Optimization Toolbox    

Levenberg-Marquardt Method

The Levenberg-Marquardt [27],[29] method uses a search direction that is a solution of the linear set of equations

     (3-22)  

where the scalar controls both the magnitude and direction of . When is zero, the direction is identical to that of the Gauss-Newton method. As tends to infinity, tends toward a vector of zeros and a steepest descent direction. This implies that for some sufficiently large , the term holds true. The term can therefore be controlled to ensure descent even when second order terms, which restrict the efficiency of the Gauss-Newton method, are encountered.

The Levenberg-Marquardt method therefore uses a search direction that is a cross between the Gauss-Newton direction and the steepest descent. This is illustrated in Figure 3-4, Levenberg-Marquardt Method on Rosenbrock's Function. The solution for Rosenbrock's function (Eq. 3-2) converges after 90 function evaluations compared to 48 for the Gauss-Newton method. The poorer efficiency is partly because the Gauss-Newton method is generally more effective when the residual is zero at the solution. However, such information is not always available beforehand, and the increased robustness of the Levenberg-Marquardt method compensates for its occasional poorer efficiency.

Figure 3-4: Levenberg-Marquardt Method on Rosenbrock's Function


  Gauss-Newton Method Nonlinear Least-Squares Implementation