Im heutigen Artikel tauchen wir in die faszinierende Welt von Levenberg-Marquardt-Algorithmus ein. Dieses Thema war im Laufe der Geschichte Gegenstand von Interesse und Debatten, weckte große Neugier und erregte die Aufmerksamkeit von Experten und Amateuren gleichermaßen. Seit seiner Einführung hat Levenberg-Marquardt-Algorithmus unzählige Fragen und Theorien aufgeworfen, die dazu beigetragen haben, unser Wissen zu diesem Thema zu bereichern. In diesem Artikel werden wir seine Ursprünge, seine Auswirkungen auf die Gesellschaft sowie die neuesten Forschungsergebnisse und Entdeckungen untersuchen, die einen Meilenstein im Verständnis von Levenberg-Marquardt-Algorithmus markiert haben. Machen Sie sich also bereit für eine spannende Reise, um alles zu erfahren, was Sie über Levenberg-Marquardt-Algorithmus wissen müssen.
Der Levenberg-Marquardt-Algorithmus, benannt nach Kenneth Levenberg und Donald Marquardt, ist ein numerischer Optimierungsalgorithmus zur Lösung nichtlinearer Ausgleichs-Probleme mit Hilfe der Methode der kleinsten Quadrate. Das Verfahren kombiniert das Gauß-Newton-Verfahren mit einer Regularisierungstechnik, die absteigende Funktionswerte erzwingt.
Der Levenberg-Marquardt-Algorithmus ist deutlich robuster als das Gauß-Newton-Verfahren, das heißt, er konvergiert mit einer hohen Wahrscheinlichkeit auch bei schlechten Startbedingungen, allerdings ist auch hier Konvergenz nicht garantiert. Ferner ist er bei Anfangswerten, die nahe dem Minimum liegen, oft etwas langsamer.
Für die nichtlineare Funktion soll das Kleinste-Quadrate-Minimierungsproblem (mit einer kleineren Anzahl von unabhängigen Variablen gegenüber der Zahl der Funktionskomponenten)
ausgehend von einer Startnäherung gelöst werden.
Wie beim Gauß-Newton-Verfahren wird F(x) in jedem Schritt durch eine Linearisierung ersetzt und das Ersatzproblem:
betrachtet. Dabei ist J die Jacobi-Matrix der Funktion F.
Der Standard Gauß-Newton-Schritt berechnet den neuen Punkt als Lösung eines linearen Gleichungssystems mit der Koeffizientenmatrix . Wenn diese Matrix schlecht konditioniert oder singulär ist, kann der Algorithmus nur einen suboptimalen (d. h. die Zielfunktion wird nicht verbessert) bzw. gar keinen Schritt machen. Besonders bei schlecht konditionierten und „fast singulären“ Matrizen ergeben sich zudem erhebliche numerische Schwierigkeiten. Der Levenberg-Marquardt-Algorithmus umgeht diese Probleme, indem er die Koeffizientenmatrix des linearen Gleichungssystems auf die Form erweitert, wobei eine Diagonalmatrix ist die sicherstellt, dass der gesamte Term positiv definit ist.
Der vollständige Levenberg-Marquardt-Iterationsschritt lautet
wobei eine Schrittweite ist.
Eine weit verbreitete Form für die Diagonalmatrix ist , mit und der Einheitsmatrix. Diese Form wurde auch in den originalen Artikeln von Levenberg und Marquardt vorgeschlagen. Für den Fall reduziert sich der Levenberg-Marquardt Iterationsschritt zum Gauß-Newton Schritt. Im Fall dominiert hingegen die Einheitsmatrix gegenüber dem Term , und der Levenberg-Marquardt-Iterationsschritt reduziert sich zu einem Gradientenschritt. Mit der Wahl von kann somit stufenlos zwischen Gradientenschritt und Gauß-Newton Schritt gewählt werden.
Eine alternative Sichtweise ergibt sich aus der Beobachtung, dass das linearisierte Ersatzproblem nur in einer kleinen Umgebung des Linearisierungspunkts eine gute Annäherung an das Originalproblem darstellt. Eine unrestringierte Minimierung macht jedoch unter Umständen sehr große Schritte, die diese kleine Umgebung verlassen. Aus diesem Grund ersetzt man die unrestringierte Optimierung durch die restringierte Optimierung mit , d. h. man beschränkt die Optimierung auf eine kleine Nachbarschaft um den Linearisierungspunkt. Aus diesem Grund werden Methoden dieser Art häufig Trust-Region-Verfahren genannt. Man kann zeigen, dass die restringierte Optimierung genau auf die Form für die Koeffizientenmatrix des linearen Gleichungssystems führt.
Das Levenberg-Marquardt-Verfahren geht lokal in das Gauß-Newton-Verfahren über. Damit ist die Konvergenz lokal linear und nahe dem Optimum sogar quadratisch.
Frei verfügbare Implementierungen des Levenberg-Marquardt-Algorithmus: