When the algorithm of Levenberg-Marquardt is preferred when doing curve fitting?
35 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Shuangfeng Jiang
le 22 Oct 2020
Commenté : Bruno Luong
le 25 Oct 2020
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?
0 commentaires
Réponse acceptée
Bruno Luong
le 22 Oct 2020
Modifié(e) : Bruno Luong
le 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 commentaires
Bruno Luong
le 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.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Solver Outputs and Iterative Display dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!