Implementations
The oldest implementation still in use is lmdif, from MINPACK, in Fortran, in the public
domain. See also:
lmfit, a translation of lmdif into C/C++ with an easy-to-use wrapper for curve fitting, public domain.
The GNU Scientific Library library has a C interface to MINPACK.
C/C++ Minpack includes the Levenberg–Marquardt algorithm.
Several high-level languages and mathematical packages have wrappers for the MINPACK routines, among them:
Python library scipy, module scipy.optimize.leastsq,
IDL, add-on MPFIT.
R (programming language) has the minpack.lm package.
levmar is an implementation in C/C++ with support for constraints, distributed under the GNU General Public License.
levmar includes a MEX file interface for MATLAB
Perl (PDL), python and Haskell interfaces to levmar are available: see PDL::Fit::Levmar, PyLevmar and HackageDB levmar.
sparseLM is a C implementation aimed at minimizing functions with large, arbitrarily sparse Jacobians. Includes a MATLAB MEX interface.
InMin library contains a C++ implementation of the algorithm based on the eigen C++ linear algebra library. It has a pure C-language API as well as a Python binding
ALGLIB has implementations of improved LMA in C# / C++ / Delphi / Visual Basic. Improved algorithm takes less time to converge and can use either Jacobian or exact Hessian.
Метод Левенберга—Марквардта
07.11.2012