Jak napsat kód pro Marquardt Algorithm

Levenberg – Marquardt algoritmus jemetoda používaná v informatice a matematice najít místní minimum funkce vyjádřena jako součet nejmenších čtverců nelineárních funkcí . To se často používá k řešení lineární regresní problémy a najít minimum funkcí, které mohou být reprezentovány jako součet nejmenších čtverců , stejně jako pro optimalizaci pro funkce, které nemohou být rozloženy do nejmenších čtverců . Algoritmus je iterativní , což znamená, že stále opakují , dokud je splněnapodmínka zastavení , který je vzat býtoptimální řešení . Můžete napsat kód pro algoritmus Levenberg – Marquardt pomocí funkce v Matlabu , nebo pomocí funkce vystavena v řešení psané v Fortran a C + + . To, co budete potřebovat
MATLAB
C + + editor
Computer

Zobrazit další instrukce dovolená 1

Spusťte “ MatLab “ aplikace . “ MATLAB , “ nebo Matrix Laboratory , jematematická softwarová aplikace, která je zvláště užitečné pro řešení nejmenších čtverců rovnic . Slouží jako programovací jazyk pro matematické aplikace a obsahuje funkce, které jsou speciálně navrženy pro algoritmus Levenberg – Marquardt .
2

Napište kód použít funkci lsqnonlin v “ Matlab “ k řešení nelineárních nejmenších čtverců problémů pomocí algoritmu Levenberg – Marquardt . Podle dokumentace MathWorks ,syntax je : br x = lsqnonlin ( fun , x0 )

funkce začíná v bodě “ x0 “ a najde minimálně součtu čtverců funkcí popsaných v “ legrace „. Chcete-li použít tuto funkci speciálně pro algoritmus Levenberg – Marquardt , použijte volbu “ ScaleProblem “ v definici funkce .
3

Napište kód použít funkci fsolve v “ ; MATLAB “ k řešení soustav nelineárních rovnic pomocípomocí algoritmu Levenberg – Marquardt . Podle dokumentace MathWorks ,syntax je :

x = fsolve ( fun , x0 )
x = fsolve ( fun , x0 , možnosti )

funkce nalezne kořen ( nula ) systému nelineárních rovnic pomocí začíná v bodě x0 a opakované snaží řešit problémy ve funkci “ legrace „. Chcete-li použít tuto funkci speciálně pro algoritmus Levenberg – Marquardt , použijte volbu ScaleProblem v definici funkce .
4

Vytvořte si C + + editor a používat jej napsat kód pomocí funkce Levmar řešení lineárních a nelineárních problémů pomocí algoritmu Levenberg – Marquardt . Funkce Llevmar jsou volně k dispozici pod licencí GNU General Public License a byly vyvinuty , aby byla kompatibilní s “ Matlab “ a několik společné programovací jazyky . Funkce Levmar jsou psány v C + + a vystavit funkce a kód pro optimalizaci a nepodmíněnou optimalizaci . Můžete upravit kód , aby vyhovoval vašim potřebám a přizpůsobit tak, aby se vešly do implementace algoritmu Levenberg – Marquardt .

Napsat komentář