Bestimmt anhand des Levenberg-Marquardt-Algorithmus die Parameter, die die Eingangspaare (X, Y) und damit eine nichtlineare Funktion des Typs y = f(x,a) am besten erfüllen (a sind die Parameter). Die polymorphe Instanz muss manuell ausgewählt werden.


icon

Dieses VI berechnet mithilfe der Levenberg-Marquardt-Methode die Parameter für beste Anpassung, mit denen der mittlere gewichtete Fehler zwischen beobachteten Y-Werten und Beste nichtlineare Anpassung minimiert wird. Das Kurvenmodell wird durch folgende Gleichung bestimmt:

y[i] = f(x[i], a0, a1, a2, …)

wobei a0, a1, a2, … die Parameter sind.

Für die Levenberg-Marquardt-Methode wird y nicht für eine lineare Beziehung mit den Parametern benötigt.

Die Hesse-Matrix wird häufig für numerische Optimierungen wie die Newton-Methode eingesetzt. Um die Schwäche der singulären Hesse-Matrix zu vermeiden, wird mit der Levenberg-Marquardt-Methode der Hesse-Matrix eine positive definite Diagonalmatrix hinzugefügt. Diese positive definite Diagonalmatrix ist der Hauptunterschied zwischen der Levenberg-Marquardt- und der Gauß-Newton-Methode. Weitere Informationen zur Levenberg-Marquardt-Methode finden Sie unter Numerische Optimierung im Hilfethema Literaturhinweise zur Mathematik.

Das nichtlineare Levenberg-Marquardt-Verfahren funktioniert sowohl für lineare als auch für nichtlineare Kurven. Zur Anpassung an lineare Kurven ist das VI Allgemeine lineare Anpassung jedoch besser geeignet. Da die Richtigkeit der Ergebnisse beim Levenberg-Marquardt-Verfahren nicht immer garantiert werden kann, müssen Sie die Ergebnisse nachprüfen.

Beispiele

Die folgenden Beispieldateien sind in LabVIEW enthalten.

  • labview\examples\Mathematics\Fitting\Ellipse fit.vi
  • labview\examples\Mathematics\Fitting\Sum of 3 Gaussians with offset fit.vi
  • labview\examples\Mathematics\Fitting\Gaussian surface with offset fit.vi