An implementation of the Levenberg-Marquardt algorithm
|Latest on Hackage:||184.108.40.206|
This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.
The Levenberg-Marquardt algorithm is an iterative technique that finds a local minimum of a function that is expressed as the sum of squares of nonlinear functions. It has become a standard technique for nonlinear least-squares problems and can be thought of as a combination of steepest descent and the Gauss-Newton method. When the current solution is far from the correct one, the algorithm behaves like a steepest descent method: slow, but guaranteed to converge. When the current solution is close to the correct solution, it becomes a Gauss-Newton method.
Optional box- and linear constraints can be given. Both single and double precision floating point types are supported.
The actual algorithm is implemented in a
C library which is
bindings-levmar which this package depends on.
A note regarding the license:
This library depends on
bindings-levmar which is bundled together
with a C library which falls under the GPL. Please be aware of this
when distributing programs linked with this library. For details see
the description and license of