WikiDer > Nelder-Mead-Methode
Das Nelder-Mead-Methode ist ein Algorithmus zur Bestimmung des Minimums von a Funktion in mehreren Variablen. Es wurde 1965 von den Briten John Nelder und Roger Mead eingeführt.[1]
Die Methode findet das Minimum einer Funktion von nein Variablen durch Vergleich der Funktionswerte in der (nein 1) Ecken eines Generals Simplex. Es ist ein Simplex konvexe Schale von nein 1 unabhängige Punkte in der nein-dimensionaler Raum; zum Beispiel ein Dreieck in der zweidimensionalen Ebene oder ein Tetraeder im dreidimensionalen Raum. In jedem Iterationsschritt wird der Scheitel mit dem höchsten Funktionswert durch einen neuen Punkt ersetzt. Der Simplex passt sich somit der Form der Funktion an und zieht sich schließlich um das Minimum zusammen.
Die Methode verwendet nur Funktionswerte, nicht zuerst oder höher Derivate. Es eignet sich daher zur Minimierung von Funktionen, deren analytische Form unbekannt ist, deren Funktionswerte aber das Ergebnis einer Messung oder eines (eventuell teuren) Experiments sind. Die einzigen Annahmen sind, dass die Funktion kontinuierlich und hat ein eindeutiges Minimum im gesuchten Bereich.
Beschreibung der Methode
Die Methode beginnt mit einem anfänglichen Simplex, das durch (nein 1) Punkte in dem nein-dimensionaler Raum. Die entsprechenden Funktionswerte sind . Wir bezeichnen mit der Punkt mit dem höchsten Funktionswert , und mit der Punkt mit dem niedrigsten Funktionswert . Es Schwerpunkt aller Punkte außer wird bezeichnet mit .
In einem Iterationsschritt wird durch einen neuen Punkt ersetzt. Dazu werden drei Operationen verwendet: Reflexion, Kontraktion und Erweiterung.
Das Reflexion von ist ein neuer Punkt , deren Koordinaten durch die Gleichung gegeben sind:
Das Reflexionsfaktor ist eine vorbestimmte positive Konstante. steht auf der linie und verbindet quer relativ zu .
Wenn nun der Funktionswert im liegt zwischen und , dann ersetzen wir durch und beginnen Sie mit dem neuen Simplex von vorne.
Wenn jedoch , wir haben ein neues Minimum. Dann versuchen wir es Erweiterung umsetzen von zu :
- .
Das Ausdehnungskoeffizient eine Konstante und größer als 1 ist. Wenn ist die Erweiterung erfolgreich und ersetzen wir durch und beginnen Sie mit dem neuen Simplex von vorne. Im anderen Fall brachte die Erweiterung keine Verbesserung; wir ersetzen dann durch und fang von vorne an.
Wenn es nach der Reflexion endlich so aussieht, als ob für alle , dann bleibt der maximale Funktionswert, wenn wir wird ersetzt durch . Für den Fall, dass wir ersetzen durch ; sonst halten wir . Wir bilden dann
und berechnen .
Das Kontraktionskoeffizient ist eine Konstante zwischen 0 und 1. Wenn die Kontraktion erfolgreich ist (), wir ersetzen durch und neu starten. Wenn die Kontraktion fehlgeschlagen ist, d. h. der Punkt ist nicht besser als , dann ersetzen wir alle Tschüss und neu starten.
Der Algorithmus stoppt, wenn das Minimum innerhalb einer vorgegebenen Genauigkeit erreicht ist. Als Kriterium dafür haben Nelder und Mead den „Standardfehler“ der Funktionswerte genommen:
Der Algorithmus stoppt, wenn dieser Wert kleiner als ein vorbestimmter Wert wird. Sie haben dieses Kriterium verwendet, weil es für statistische Probleme nützlich ist.
Neben dem Abbruchkriterium müssen daher vorab drei Konstanten bestimmt werden: , der Kontraktionskoeffizient und der Ausdehnungskoeffizient . Die Wahl dieser Konstanten hat einen Einfluss auf die Konvergenzgeschwindigkeit; die beste Strategie war laut Nelder und Mead . Die Wahl des Anfangssimplex ist ebenfalls wichtig. In einigen Fällen kann das Verfahren zu einem Punkt konvergieren, der nicht das Minimum ist.
Beispiel
Die rechte Abbildung veranschaulicht den Ablauf der Methode bei der Suche nach dem Minimum der Funktion:
Diese nichtkonvexe Funktion wurde 1960 von Howard Rosenbrock als Testfunktion für Optimierungsalgorithmen vorgeschlagen. Sie ist bekannt als die Tal von Rosenbrock oder der Bananenfunktion von Rosenbrock. Das globale Minimum liegt in einem langen, schmalen, flachen, parabolischen Tal am Punkt . Man sieht, wie sich der Simplex (hier ein Dreieck) zum Talgrund bewegt und sich dann langsam am Talboden zum Minimum entwickelt.
Quellen, Anmerkungen und/oder Verweise
|