/** * Result of `nelderMead` and `gradientDescent`: the best point `x`, * its value `fx`, the iteration count, and a convergence flag. */ export interface OptimizeResult { x: number[]; fx: number; iterations: number; converged: boolean; } /** * Nelder–Mead downhill-simplex minimization of `f: ℝⁿ → ℝ` from `x0`. Derivative-free. * Matches `scipy.optimize.minimize(method='Nelder-Mead')` to the requested tolerance. */ export declare function nelderMead(f: (x: number[]) => number, x0: readonly number[], opts?: { maxIter?: number; tol?: number; step?: number; }): OptimizeResult; /** * Gradient-descent minimization with optional backtracking line search. `grad` may * be supplied; otherwise a central-difference gradient is used. */ export declare function gradientDescent(f: (x: number[]) => number, x0: readonly number[], opts?: { grad?: (x: number[]) => number[]; rate?: number; maxIter?: number; tol?: number; }): OptimizeResult; /** * Result of `levenbergMarquardt`: the solution `x`, the residual norm, the iteration * count, and a convergence flag. */ export interface LMResult { x: number[]; residualNorm: number; iterations: number; converged: boolean; } /** * Levenberg–Marquardt nonlinear least squares: minimize ½‖r(x)‖² for a vector * residual `r`. Numeric Jacobian; damped normal equations `(JᵀJ + λI)δ = Jᵀr` * solved via the matrix `inv`. Mirrors `scipy.optimize.least_squares(method='lm')`. */ export declare function levenbergMarquardt(residual: (x: number[]) => number[], x0: readonly number[], opts?: { maxIter?: number; tol?: number; }): LMResult; //# sourceMappingURL=optimization-extra.d.ts.map