Re: [eigen] How far along is the sparse module? |

[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]

In data mercoledì 09 settembre 2009 11:17:58, bp ha scritto:
> I'm implementing the Levenberg-Marquardt algorithm using Eigen and
> I've come to the point where I need to optimize the central piece of
> the update:
> (see http://www.ics.forth.gr/~lourakis/levmar/levmar.pdf appendix for
> pseudo-code)
>
> Scalar mu; //damping factor
> MatrixNxM J; //Jacobian
> MatrixNxN H = 2*J*J.transpose();//pseudo Hessian
> static const MatrixNxN I = MatrixNxN::Identity();
>
> MatrixNxN H_i;
> (H+mu*I).computeInverse(&H_i);// TODO: something more intelligent
>
> I need to take advantage of the fact that H is sparse, symmetric and
> positive definite.
Hi,
You might have noticed that i'm working on porting (c)minpack to eigen, and
this includes a Levenberg-Marquardt algorithm which works pretty well even in
corner cases.
It is not yet available for sparse matrices/vectors, but i think it will be
generic enough when finished to handle those.
see my previous mail "port of (c)minpack to eigen : status" for more
information.
best wishes,
Thomas
--
Thomas Capricelli <orzel@xxxxxxxxxxxxxxx>
http://www.freehackers.org/thomas