-1

Anyone knows where I cand find an .m (matlab ) file with the Levenberg-Marquardt moditication to the Newton's method to optimize a function?

Thanks

Oliver Charlesworth
  • 252,669
  • 29
  • 530
  • 650
Monique
  • 31
  • 1
  • 3

3 Answers3

3

I always start with a search on file exchange. Found a LMF nonlinear solution. It also seems that there is a lsqnonlin function in The optimization toolbox. Of course that costs a small fortune and limits the portability of your code (one of many reasons I use Python these days).

Carl F.
  • 5,771
  • 3
  • 25
  • 41
  • Thank you ;) , This is my problem. The next point is x'=x+d , the displacement d is solved from the linear set of equation Hd=-gradf – Monique May 13 '12 at 16:22
  • Thank you ;) , Here is my problem. the next point is x'=x+d , the displacement d is solved from the linear set of equation Hd=-gradf , (H is the Hessian) , but there is a problem, What happend if the Hessian<0 , the point x' can't work , because f(x')>f(x) and i'm triying to minimize the function intead maximize. Therefero I think I should use the Levenberg-Marquardt method to stabilize the routine. I think I should compute the eigenvalues of the Hessian (e.g. E=eig(H) ) And solve (H +a diag(E))d= -grad f ,Perhaps should i replace diag(E) by the unit matrix?, this is my code – Monique May 13 '12 at 16:28
2

You can try using the MATLAB MEX version of CMPFIT, if that fits your purpose.

Juhl
  • 463
  • 3
  • 16
0

Try it here: http://people.cas.uab.edu/~mosya/cl/MATLABcircle.html

This is a web-page from proffesor Chernov, who published some papers and a book on the matter. There are also c and matlab sources.

Michael W.
  • 89
  • 8