2012-05-13 9 views
-2

関数を最適化するためのニュートンの方法に対するLevenberg-Marquardtの修正を伴う.m(matlab)ファイルの場所を誰でも知っていますか?Levenberg-Marquardt最適化

おかげ

+2

[Matlab File Exchange](http://www.mathworks.com/matlabcentral/fileexchange/)で検索しましたか? –

答えて

3

私はいつもfile exchangeの検索で始まります。見つけたLMF nonlinear solution。 The optimization toolboxにはlsqnonlin関数があるようです。もちろん、これはコストがかかり、コードの移植性を制限します(私は最近Pythonを使用する多くの理由の1つです)。

+0

ありがとう;)これは私の問題です。次の点はx '= x + dであり、変位dは方程式Hd = -gradfの線形集合から解く – Monique

+0

ありがとう;)、ここに私の問題があります。次の点はx '= x + dであり、変位dは方程式Hd = -gradf(Hはヘッセ行列)の線形集合から解かれるが、ヘッセ行列<0なら何が起こるのか、点f(x ')> f(x)と関数を最小化するためにtriyingしているので、x'は機能しません。そこには、ルーチンを安定させるためにLevenberg-Marquardtメソッドを使うべきだと思う。私はヘッセ行列の固有値(E = eig(H))を計算し、(H + a diag(E))d = -grad fを解くべきだと思います。これは私のコード – Monique

2

MATLAB MEX versionCMPFITの場合は、目的に合ったものをお試しください。

+0

^これです、またはWindowsのMatlabで.NET interopを使用し、CSMPFITを呼び出してください:https://csmpfit.codeplex.com/ –