|
Das LBFGS-Verfahren |
|
- Das Limited Memory BFGS-Verfahren ist eine Methode zur Lösung
unrestringierter
Minimierungsaufgaben mit mindestens stetig differenzierbarer Zielfunktion.
Das heißt, zu einer Funktion
F in C1 ist ein
xopt gesucht, für das F(xopt) <=
F(x) für alle x aus einer Umgebung von xopt gilt.
- Wie der Name des Verfahrens schon zeigt, baut dieses Verfahren auf dem
gleichen Vorgehen auf wie das BFGS-Verfahren.
Hier "merkt" man sich jedoch für die Darstellung von
Ak
nur eine begrenzte Anzahl zurückliegender Richtungen und speichert
Ak nicht als n*n Matrix, und daher ist das LBFGS-Verfahren
auch für große Probleme geeignet.
- Als Schrittweitenverfahren wird die fortgesetzte quadratische bzw. kubische
Interpolation in Kombination mit dem Powell-Wolfe Abstiegskriterium
verwendet, mit den fest eingestellten Parametern kappa=0.9
und delta=0.01.
|
|
|
Die Eingaben |
|
- Sie haben die Wahl zwischen 14 vorgegebenen Funktionen, zu denen Sie auch
eine genauere Beschreibung
nachlesen können. Oder Sie geben eine eigene Funktion f,
abhängig von n Variablen x(1),...,x(n),
und die Startwerte zu diesen Variablen an.
- Sie können entweder Standardabbruchkriterien wählen oder
eigene Kriterien angeben.
(Standardabbruch: ||grad f|| <= eps und
||x-xprev|| <= eps*(||x||+1), eps=1.0e-7)
Eigene Kriterien bedeutet dann noch die Angabe einer
Abbruchtoleranz eps für den Gradienten und die Änderung in
x, sowie die Anzahl der dargestellten Schritte
und die Länge des Gedächtnisses, also die Anzahl der berücksichtigten
zurückliegenden Schritte.
Das Verfahren bricht außerdem auch dann ab, wenn
die relative Änderung in F kleiner als 1.E-12 ist.
- Für die festeingestellten Funktionen ist noch eine Angabe der
Startwerte der Variablen möglich, wobei Sie auch hier eine
Standardinitialisierung wählen können.
Sie finden die jeweilige Anzahl n der Variablen bei den Kurzbeschreibungen
oben im Eingabeformular.
- Des weiteren haben Sie die Wahl, ob Sie einen Höhenlinienplot als
Ausgabe möchten. Wenn ja, dann wird noch die beiden Indices der Variablen,
bezüglich derer das Bild geplottet werden soll, sowie entsprechende
Intervallangaben benötigt. Bei der Berechnung der Höhenlinien
werden die anderen Variablen auf den berechneten Optimalwert gesetzt.
|
|
|
Die Ausgaben |
|
- CPU-Zeit.
- Den Grund des Rechnungsabbruchs.
- Die berechnenten Optimalwerte f(xopt) und
x(1)opt,...,x(n)opt.
- Die Anzahl der Funktionsaufrufe.
- Zwei logarithmische Plots des Fehlers f - fopt
sowie der Norm des Gradienten von f.
- Und den Höhenlinienplot, falls Sie diesen gewünscht hatten.
|
|
|
|
|
|
|