Premium
LMA: A generic and efficient implementation of the Levenberg–Marquardt Algorithm
Author(s) -
Ramadasan Datta,
Chevaldonné Marc,
Chateau Thierry
Publication year - 2017
Publication title -
software: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.437
H-Index - 70
eISSN - 1097-024X
pISSN - 0038-0644
DOI - 10.1002/spe.2497
Subject(s) - solver , levenberg–marquardt algorithm , computer science , implementation , algorithm , code (set theory) , compiler , minification , mathematical optimization , artificial intelligence , programming language , mathematics , set (abstract data type) , artificial neural network
Summary This paper presents an open‐source, generic and efficient implementation of a very popular nonlinear optimization method: the Levenberg–Marquardt algorithm (LMA). This minimization algorithm is well known and hundreds of implementations have already been released. However, none of them offer at the same time a high level of genericity, a friendly syntax and a high computational performance. In this paper, we propose a solution to gather all those advantages in one library named LMA. The main challenge is to implement an efficient solver for every encounter problem. To overcome this difficulty, LMA uses compile time algorithms to design a code specific to the given optimization problem. The features of LMA are presented and the performances are compared with the state‐of‐the‐art best alternatives through extensive benchmarks on different kind of problems. Copyright © 2017 John Wiley & Sons, Ltd.