When the algorithm of Levenberg-Marquardt is preferred when doing curve fitting?

15 views (last 30 days)
I would like to do a curve fitting, and there're 2 algorithms in the curve fitting toolbox. The trust-region is default,and it can provide me with satisfying fitting as shown below. However, I am now sure when the other algorithm (Levenberg-Marquardt) is preferred, though I've checked the help page (https://uk.mathworks.com/help/optim/ug/equation-solving-algorithms.html) of those 2 algorithm, where only the basic principles are explained without the applicable conditions of them. Could anyone please explain the differeces and the applicable conditions of the 2 algrithms?

Accepted Answer

Bruno Luong
Bruno Luong on 22 Oct 2020
Edited: Bruno Luong on 23 Oct 2020
Trust region is more robust if you have strong non-linearity. This effect is "amplified" depends also how far the starting point from the true solution.
The downside is it project the "Hessian" on a small subspace (2nd dimension), so it will not converge rapidly if the function is convex but with large difference of the amplitude of the curvatures. But it can deal with with local negative curvatures.
Levenberg-Marquardt requires to evaluate the Jacobian, which can only effectively computed in small/middle scaled problem. As I said, it's approximate the Hessian with J'*J, so it's more accurate for problem with medium non-linearity.
In short: Trust region more robust, used for large scale, strong non-linearity. (typo EDIT)
Levenberg-Marquardt , less robust, used for medium scale, medium linearity, or the first guess is well estimated.
  5 Comments
Bruno Luong
Bruno Luong on 25 Oct 2020
well not necessary "medium linearity ~= medium non-linearity", but all these notions of "medium", "strong" "large scale" is emperical in maths I must confest.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by