Handling bound constraints by the Levenberg-Marquardt algorithm

26 vues (au cours des 30 derniers jours)
Igor
Igor le 29 Jan 2019
Modifié(e) : Xingwang Yong le 27 Avr 2021
Hello,
Could anyone please tell me why the Levenberg-Marquardt algorithm embedded in "lsqnonlin" does not handle bound constraints, while the other one ("trust-region-reflective") does?
There are implementations of the Levenberg-Marquardt algorithm that do accept bound constraints, so what is the principle limitation explaining why this has not been implemented in "lsqnonlin"?
Thank you!
Igor.

Réponse acceptée

Matt J
Matt J le 29 Jan 2019
Modifié(e) : Matt J le 29 Jan 2019
The theory of Levenberg-Marquardt does not define a way to handle bound constraints. If, as you claim, there are modifications of classical LM that support bounds, I surmise that they involve manipulations similar in spirit to what is done in the trust-region algorithm.
  3 commentaires
Matt J
Matt J le 29 Jan 2019
Trust region methods are a very large family, but I don't know of a widely accepted term for Matlab's specific implementation. Maybe you should just cite Coleman and Li.
Igor
Igor le 30 Jan 2019
Ok. Thank you!

Connectez-vous pour commenter.

Plus de réponses (1)

Xingwang Yong
Xingwang Yong le 27 Avr 2021
Modifié(e) : Xingwang Yong le 27 Avr 2021
In matlab2020b, the doc of lsqcurvefit() has removed "The Levenberg-Marquardt algorithm does not handle bound constraints". So it support bound constraints in LM, can be seen in release notes and doc.

Community Treasure Hunt

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

Start Hunting!

Translated by