Benutzer:Alva2004/KonvexeOptimierung

aus Wikipedia, der freien Enzyklopädie

Die konvexe Optimierung ist ein Teilgebiet der mathematischen Optimierung und nichtlinearen Optimierung.

Es ist eine bestimmte Größe zu minimieren, die sogenannte Zielfunktion, welche von einem Parameter, welcher mit bezeichnet wird, abhängt. Außerdem sind bestimmte Nebenbedingungen einzuhalten, das heißt die Werte , die man wählen darf, sind gewissen Einschränkungen unterworfen. Diese sind meist in Form von Gleichungen und Ungleichungen gegeben. Sind für einen Wert alle Nebenbedingungen eingehalten, so sagt man, dass zulässig ist. Man spricht von einem konvexen Optimierungsproblem oder einem konvexen Programm, falls sowohl die Zielfunktion als auch die Menge der zulässigen Punkte konvex ist. Viele Probleme der Praxis sind konvexer Natur. Oft wird zum Beispiel auf Quadern optimiert, welche stets konvex sind, und als Zielfunktion finden oft quadratische Formen Verwendung, die unter bestimmten Voraussetzungen ebenfalls konvex sind (siehe Definitheit). Ein anderer wichtiger Spezialfall ist die Lineare Optimierung, bei der eine lineare Zielfunktion über einem konvexen Polyeder optimiert wird.

Eine wichtige Eigenschaft der konvexen Optimierung im Unterschied zur nicht-konvexen Optimierung ist, dass jedes lokale Optimum auch ein globales Optimum ist. Anschaulich bedeutet dies, dass eine Lösung, die mindestens so gut ist wie alle anderen Lösungen in einer Umgebung, auch mindestens so gut ist wie alle zulässigen Lösungen. Dies erlaubt es, einfach nach lokalen Optima zu suchen.

Geschichte

Carl Friedrich Gauß

Die Disziplin der konvexen Optimierung entstand unter anderem aus der konvexen Analysis. Die erste Optimierungs-Technik, welche als Gradientenverfahren bekannt ist, geht auf Gauß zurück. Im Jahre 1947 wurde das Simplex-Verfahren durch George Dantzig eingeführt. Des Weiteren wurden im Jahr 1968 erstmals Innere-Punkte-Verfahren durch Fiacco und McCormick vorgestellt. In den Jahren 1976 und 1977 wurde die Ellipsoid-Methode von David Yudin und Arkadi Nemirovski und unabhängig davon von Naum Schor zur Lösung konvexer Optimierungsprobleme entwickelt. Narendra Karmarkar beschrieb im Jahr 1984 zum ersten Mal einen polynomialen potentiell praktisch einsetzbaren Algorithmus für lineare Probleme. Im Jahr 1994 entwickelten Arkadi Nemirovski und Yurii Nesterov Innere-Punkte-Verfahren für die konvexe Optimierung, welche große Klassen von konvexen Optimierungsproblemen in polynomialer Zeit lösen konnten.

Bei den Karush-Kuhn-Tucker-Bedingungen wurden die notwendigen Bedingungen für die Ungleichheits-Einschränkung zum ersten Mal 1939 in der Master-Arbeit (unveröffentlicht) von William Karush aufgeführt. Bekannter wurden diese jedoch erst 1951 nach einem Konferenz-Paper von Harold W. Kuhn und Albert W. Tucker.

Vor 1990 lag die Anwendung der konvexen Optimierung hauptsächlich im Operations Research und weniger im Bereich der Ingenieure. Seit 1990 boten sich jedoch immer mehr Anwendungsmöglichkeiten in der Ingenieurwissenschaft. Hier lässt sich unter anderem die Kontroll- und Signal-Steuerung, die Kommunikation und der Schaltungsentwurf nennen. Außerdem entstanden neue Problemklassen wie semidefinite und Kegel-Optimierung 2. Ordnung und robuste Optimierung.

Definitionen

Konvexes Programm

Es gibt viele mögliche Formulierungen eines konvexen Programms. An dieser Stelle soll eine möglichst allgemeine Form gewählt werden. Der Eingabeparameter sei aus dem , das heißt das Problem hängt von Einflussparametern ab die im Vektor eingelagert sind. Die Zielfunktion sei konvex. Weiterhin seien die konvexen Funktionen mit und die affinen Funktionen mit gegeben. Hierbei ist eine konvexe Teilmenge des .

Konvexes Programm:

Minimiere mit unter den Nebenbedingungen (NB)

Eine Restriktion mit bezeichnet man als aktiv. Die Funktionen stellen die sogenannten Ungleichungsnebenbedingungen und die Funktionen stellen die sogenannten Gleichungsnebenbedingungen dar.

Lagrange Funktion

Die Lösung wird erreicht, indem das Problem auf die Optimierung der zugehörigen Lagrange Funktion ohne NB zurück geführt wird. Die Lagrange Funktion lautet:

Darin ist der Spaltenvektor der Lagrange Multiplikatoren:

.

Fasst man auch die NB in einem Spaltenvektor zusammen

,

kann man die Lagrange Funktion kompakt als Matrixprodukt schreiben:

.

Sattelpunkt

Ein Punkt heißt Sattelpunkt von auf , falls

für alle und .

Beispiel

Konvexes Optimierungsproblem

Als Beispiel wird ein eindimensionales Problem ohne Gleichungsnebenbedingungen und mit nur einer Ungleichungsnebenbedingung betrachtet:

Minimiere

mit

unter der Nebenbedingung:

Der zulässige Bereich ist gegeben durch die konvexe Menge

,

denn für Werte größer 1 ist nicht erfüllt. Der Zeichnung kann entnommen werden, dass für den Optimalwert annimmt.

Konvexität

Bei einem konvexen Gebiet liegen alle Punkte auf der Verbindungslinie zweier beliebiger Punkte im Gebiet ebenfalls vollständig im Gebiet. Mathematisch:

Beispiele für konvexe Gebiete sind Kreise, Ellipsen, Dreiecke und Quadrate.

Die Zielfunktion ist konvex, wenn alle Werte der Zielfunktion von Punkten auf der Geraden, die zwei Punkte im Gebiet verbinden, unter dieser Geraden liegen und konkav, wenn alle Punkte über dieser Geraden liegen. Mathematisch:

dann ist konvex,

oder

dann ist konkav.

Die zu Beginn dieses Artikels gezeigte parabelförmige Optimierungsaufgabe hat eine konvexe Zielfunktion.

Bei konvexen Problemen ist jedes Optimum auch globales Optimum. Sind die Punkte optimal, dann sind alle Punkte „zwischen“ diesen Punkten optimal. Mathematisch:

Optimalitätsbedingungen

Zunächst werden notwendige Optimalitätsbedingungen vorgestellt. Dies sind Kriterien, die auf jeden Fall im Optimum erfüllt sein müssen. Danach werden hinreichende Optimalitätsbedingungen formuliert. Diese zeigen, dass eine Lösung wirklich optimal ist.

Fritz-John-Bedingungen

Sei optimal für das obige konvexe Programm. Dann gibt es Multiplikatoren , die nicht sämtlich den Wert haben, mit den folgenden Eigenschaften:

  • (Complementary slackness condition)
  • für alle

Die Fritz-John-Bedingungen sind ein notwendiges Optimalitätskriterium. Für sind sie hinreichend. In diesem Fall darf man sogar setzen. Die complementary slackness condition wird im Deutschen auch Bedingung vom komplementären Schlupf genannt. Hierbei kann man beweisen, dass falls für alle gilt, dass dann alle Multiplikatoren für alle sein müssen. Diese Bedingung ist somit für den Aufbau und den Entwurf von Algorithmen von hoher Bedeutung.

Regularitäts-Bedingung von Slater

Für die obige notwendige Bedingung darf das duale Skalar gleich Null sein. In solchen Fällen spricht man von degeneriert oder abnormal. Dann spielt die notwendige Bedingung keine Rolle für die Eigenschaften der Funktion, nur die Geometrie der Nebenbedingungen ist relevant.

Die Bedingung von Slater stellt sicher, dass die Lösung nicht-degeneriert ist, das heißt . Sie fordert: Es gibt es einen Punkt , so dass für alle nicht linearen Funktionen mit .

Karush-Kuhn-Tucker-Bedingungen

Die Karush-Kuhn-Tucker-Bedingungen (auch bekannt als die KKT-Bedingungen) sind notwendig für die Optimalität einer Lösung in der nichtlinearen Optimierung. Sie sind die Verallgemeinerung der notwendigen Bedingung von Optimierungsproblemen ohne Nebenbedingungen..

Sei die Zielfunktion und die konvexen Funktionen mit und die affinen Funktionen mit sind einmal differenzierbare Nebenbedingungs-Funktionen. Es sei ein zulässiger Punkt in dem die Slater-Bedingung zutrifft. Falls ein lokales Minimum ist, dann existieren Konstanten , mit und mit so dass

,
für alle ,
für alle .

Jeder Punkt, in dem diese Bedingungen erfüllt sind, heißt Karush-Kuhn-Tucker-Punkt ( kurz: KKT-Punkt).

Ist ein innerer Punkt des zulässigen Gebietes, in dem also keine NB aktiv sind, insbesondere keine Gleichheitsnebenbedingungen vorliegen, dann sind wegen alle und die obigen Bedingungen reduzieren sich auf die bekannte notwendige Bedingung unrestringierter Probleme .

Hinreichende Bedingungen

Sei die Zielfunktion und die konvexen Funktionen mit und die affinen Funktionen mit sind Nebenbedingungs-Funktionen. Es sei ein zulässiger Punkt, das heißt es gilt . Des Weiteren nimmt man an, dass die aktiven Gradienten und die Gradienten linear unabhängig sind. Falls ein lokales Minimum ist, dann existieren Konstanten , mit und mit so dass

für alle

dann ist der Punkt ein globales Minimum.

Konkretes Vorgehen

Lagrange-Funktion

Zunächst wird die folgende abkürzende Schreibweise eingeführt:

,

wobei der Vektor aus allen Multiplikatoren ist.

Lagrangesche Multiplikatorenregel für das konvexe Problem

Vergleiche hierzu auch mit Lagrangesche Multiplikatorenregel. Konkretes Vorgehen:

  • Überprüfe, ob alle auftretenden Funktionen stetig partiell differenzierbar sind. Falls nein, ist diese Regel nicht anwendbar.
  • Gibt es einen zulässigen Punkt , für den gilt: ? Falls ja, dann ist optimal. Sonst fahre mit dem nächsten Schritt fort.
  • Bestimme den Gradienten der Lagrange-Funktion.
  • Löse das System , wobei kein Multiplikator negativ sein darf. Falls eine Restriktion nicht aktiv ist, muss der zugehörige Multiplikator sogar gleich sein. Findet man eine Lösung , so ist diese optimal.

Literatur

  • Avriel, Mordecai: Nonlinear Programming: Analysis and Methods. Dover Publishing, 2003, ISBN 0-486-43227-0.
  • R. Andreani, J. M. Martínez, M. L. Schuverdt: On the relation between constant positive linear dependence condition and quasinormality constraint qualification. Journal of optimization theory and applications, vol. 125, no2, 2005, pp. 473–485.
  • Florian Jarre, Josef Stoer: Optimierung. Springer, Berlin 2003, ISBN 3-540-43575-1.

Weblinks

Kategorie:Optimierung