Benutzer:Alva2004/nlp

aus Wikipedia, der freien Enzyklopädie

In der Mathematik ist ein nicht lineares Programm der Prozess eine skalare Zielfunktion einer oder mehrerer reeller Variablen in einem eingeschränkten Bereich zu optimieren, wobei die Zielfunktion oder die Bereichsgrenzen nicht linear (nicht affin) sind. Es ist ein Teilgebiet der mathematischen Optimierung und ein Obergebiet der konvexen Optimierung. In Abgrenzung von den genannten Artikeln wird hier die Anwendung auf differenzierbare nichtlineare Zielfunktionen ohne Beschränkung auf Konvexität der Zielfunktion oder des Suchbereiches beschrieben. Für Begriffsklärung empfiehlt sich die Lektüre von Begriffe: Zielfunktion, Nebenbedingungen, zulässige Menge, lokale und globale Optimierung.

Anwendungsfelder

Nicht lineare Programme finden sich in vielfältiger Weise in der Wissenschaft und im Ingenieurswesen.

In der Wirtschaftswissenschaft kann es darum gehen die Kosten eines Prozesses zu minimieren, der Einschränkungen in der Verfügbarkeit der Mittel und Kapazitäten unterliegt. Die Kostenfunktion kann darin nicht linear sein. In der theoretischen Mechanik findet sich im Hamiltonschen Prinzip ein Extremalprinzip, dessen Lösung bei nichtlinearen Randbedingungen ein nichtlineares Programm darstellt.

Moderne Ingenieursanwendungen beinhalten oft und in komplizierter Weise Optimierungsaufgaben. So kann es darum gehen, das Gewicht eines Bauteils zu minimieren, das gleichzeitig bestimmten Anforderungen (z. B. Einschränkungen des Bauraumes, Obergrenzen für Verformungen bei gegebenen Lasten) genügen muss.

Bei der Anwendung eines mathematischen Modells kann es darum gehen die Parameter des Modells an gemessene Werte anzupassen. Nichtlineare Einflüsse der Parameter und Einschränkungen an die Parameter (z.B. dass nur positive Werte zugelassen sind) führen hier auf ein nichtlineares Programm.

In diesen Fragestellung ist oftmals nicht a priori bekannt, ob das gestellte Problem konvex ist oder nicht. Manchmal beobachtet man auch eine Abhängigkeit der gefundenen optimalen Lösung vom Startpunkt der Suche. Dann hat man lokale Optima gefunden und das Problem ist mit Sicherheit nicht konvex.

Problemdefinition

Es gibt viele mögliche Formulierungen eines nicht linearen 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 zwei mal stetig differenzierbar. Weiterhin seien die Nebenbedingungen (NB) mit und mit gegeben und einmal stetig differenzierbar.

Das Optimierungsproblem ist durch gegeben. Der zulässige Bereich wird von den Nebenbedingungen (NB) einschränkt: Für alle Werte der Parameter aus dem zulässigen Bereich () sollen die NB erfüllt sein. Zulässig ist das Problem , wenn der zulässige Bereich nicht leer ist.

Vorgehen

Das Problem wird mit unten beschriebenen Verfahren auf die Optimierung einer Hilfsfunktion ohne NB zurück geführt. Um sich die Gradienten basierten Methoden zu Nutze machen zu können, teilt man das abzusuchende Gebiet gegebenenfalls in solche auf, in denen die Zielfunktion differenzierbar ist. Wenn möglich sollten die Teilgebiete konvex sein und die Zielfunktion in ihnen auch. Dann kann man die globalen Extrema in den Teilgebieten mit den in Mathematische Optimierung und Konvexe Optimierung aufgeführten Verfahren berechnen und das optimale auswählen.

Die Konstruktion der Hilfsfunktion soll an Hand eines einfachen Beispiels erläutert werden: Zwei Kugeln in einer Mulde versuchen den tiefstmöglichen Punkt einzunehmen, dürfen sich dabei aber nicht durchdringen. Die Zielfunktion ist also die Lageenergie der Kugeln und nimmt im Gleichgewicht ein Minimum an. Die Nebenbedingung würde hier die Durchdringung der Kugeln und bezeichnen, wobei mit negativer Durchdringung ein positiver Abstand gemeint wird.

  1. Lagrange-Multiplikatoren: Die NB werden mit reellen Faktoren, den Lagrange Multiplikatoren, multipliziert und zur Zielfunktion hinzu addiert. Die Faktoren werden als Unbekannte in das Problem eingeführt und müssen ebenfalls bestimmt werden. Bei den Kugeln sind die Lagrange Multiplikatoren gerade die Kontaktkräfte, die die Kugeln bei Berührung aufeinander ausüben, so dass sie sich nicht durchdringen.
  2. Barrierefunktionen: Die NB werden mit Barrierefunktionen dargestellt, die bei Annäherung an die Grenze des Definitionsbereiches positive Werte und auf der Grenze ins Unendliche wachsen, so dass die Verletzung der NB verhindert wird. Im Kugelbild bekämen die Kugeln einen mehr oder weniger dicken Mantel, der immer steifer wird, je stärker er bei Berührung zusammen gedrückt wird. Eine Verletzung der NB wird so verhindert zu dem Preis, dass bereits die Annäherung an die Bereichsgrenze bestraft wird. Die Methode wird bei Innere-Punkte-Verfahren angewendet.
  3. Straffunktionen: Die Straffunktionen werden wie die Barrierefunktionen eingesetzt. Die NB werden mit Straffunktionen dargestellt, die im Definitionsbereich verschwinden und bei Verletzung der NB ungleich null sind. Die Straffunktionen werden mit Strafparametern multipliziert und in die Zielfunktion eingebatu so dass die Verletzung der NB bestraft wird, daher der Name. Hier werden aktive NB evtl. verletzt und die Zulässigkeit der Lösung muss geprüft werden. Im Kugel-Bild entspricht die Straffunktion der „echten“Durchdringung (die bei positivem Abstand der Kugeln verschwindet) und der Strafparameter einer Federsteifigkeit. Die Feder versucht eindringende Punkte wieder an die Oberfläche zu ziehen. Je steifer die Feder ausfällt, desto geringer wird die Eindringung sein.
  4. Erweiterte Lagrange Methode (engl. Augmented Lagrange method): Dies ist eine Kombination der vorhergehenden Methoden. Der Lagrange Multiplikator wird iterativ an Hand der Verletzung der NB bestimmt.
  5. Trivial aber doch zu erwähnen ist, dass aktive NB dazu genutzt werden können, Variable zu eliminieren. Die Variablen werden auf Werte festgelegt, derart dass eine Verletzung der NB nunmehr unmöglich ist. Im Kugel-Bild würde man Berühungspunkte der Kugeln aneinanderkoppeln (ihre Koordinaten gleichsetzen), so dass eine Durchdringung (dort) nicht mehr stattfinden kann.

Theorie der Optimierung

Isolierte Punkte

In einem nicht linearen Programm können NB den zulässigen Bereich in einigen Punkten derart einschränken, dass zwar aber kein Punkt in seiner Umgebung im zulässigen Bereich liegt. Mathematisch

.

Isolierte Punkte müssen alle einzeln, jeder für sich, auf Optimalität geprüft werden.

Regularitäts-Bedingungen, Tangenten- und Linearisierender Kegel

Beispiel eines Nicht Linearen Programms

Für die Formulierung von Optimalitätsbedingungen müssen die NB gewisse Anforderungen (CQ) erfüllen, engl. constraint qualifications. Es existieren mehrere unterschiedlich scharfe Formulierungen, welche die Erfüllung dieser Anforderungen sicherstellen. Punkte, in denen die Anforderungen erfüllt sind, heißen regulär. Irreguläre Punkte, in denen keine dieser Anforderungen greift, müssen ausgeschlossen oder gesondert betrachtet werden.

Zentral für die Formulierung der Anforderungen an die NB und der Optimalitätsbedingungen ist der Begriff Tangentenkegel und Linearisierender Kegel. Um sich diese anschaulich klar zu machen, stellt man sich an einen Punkt im zulässigen Gebiet und betrachtet alle am Standort aktiven NB als undurchsichtige Wände. Die Kegel sind dann das, was man vom zulässigen Bereich sieht wobei man sehr kurzsichtig ist. Alle NB die an Ort und Stelle nicht aktiv sind, verschwinden in der Ferne und werden übersehen. Steht man an einem Ort im zulässigen Bereich, an dem keine NB aktiv ist, hat man vollen Rundumblick. Der Tangentenkegel und linearisierende Kegel unterscheiden sich dort, wo zwei Wände am Standort parallel verlaufen und man dann sozusagen in einem Gang steht. Im linearisierenden Kegel kann man dann in beide Richtungen in den Gang sehen, er linearisiert die Wände. Wenn die zunächst parallelen Wände in einer Richtung unmittelbar ihre Parallelität verlieren und den Gang unmittelbar zumachen, kann man im Tangentenkegel nur in die offene Richtung sehen. Das ist der Unterschied. In der Grafik stimmen Tangentenkegel und Linearisierender Kegel im optimalen Punkt überein und sind rot angedeutet.

Die Anforderungen an die NB stellen sicher, dass im optimalen Punkt der Tangentenkegel und der linearisierende Kegel übereinstimmen. Beispiele für Formulierungen sind:

  • Konvexität: Die Zielfunktion und die NB sind konvex. Das ist sehr restriktiv aber wahr.
  • Slater: Es treten keine Gleichungsnebenbedingungen auf. Des Weiteren gibt es einen Punkt , so dass für alle .
  • Lineare Unabhängigkeit – Linear independence constraint qualification (LICQ): Die Gradienten der aktiven Ungleichungsbedingungen und die Gradienten der Gleichungsbedingungen sind linear unabhängig im Punkt .
  • Mangasarian-Fromovitz – Mangasarian-Fromovitz constraint qualification (MFCQ): Die Gradienten der aktiven Ungleichungsbedingungen und die Gradienten der Gleichungsbedingungen sind positiv-linear unabhängig im Punkt .
  • Konstanter Rang – Constant rank constraint qualification (CRCQ): Für jede Untermenge der Gradienten der Ungleichungsbedingungen, welche aktiv sind, und der Gradienten der Gleichungsbedingungen ist der Rang in der Nähe von konstant.
  • Konstante positive-lineare Abhängigkeit – Constant positive-linear dependence constraint qualification (CPLD): Für jede Untermenge der Gradienten, der Ungleichungsbedingungen, welche aktiv sind, und der Gradienten der Gleichungsbedingungen, und falls eine positive-lineare Abhängigkeit im Punkt vorliegt, dann gibt es eine positiv-lineare Abhängigkeit in der Nähe von .

Man kann zeigen, dass die folgenden beiden Folgerungsstränge gelten

und ,

obwohl MFCQ nicht äquivalent zu CRCQ ist. In der Praxis werden schwächere Constraint Qualifications bevorzugt, da diese stärkere Optimalitäts-Bedingungen liefern.

Optimalitätsbedingungen

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 wurden 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. Sie sind die Verallgemeinerung der notwendigen Bedingung von Optimierungsproblemen ohne Nebenbedingungen.

Notwendige Bedingung und Satz von Karush-Kuhn-Tucker

In Worten bedeutet der Satz von Karush-Kuhn-Tucker ungefähr, dass wenn ein zulässiger, regulärer und optimaler Punkt ist, sich der Gradient der Zielfunktion als positive Linearkombination der Gradienten der aktiven NB darstellen läßt, siehe auch das Bild oben.

Sei die Zielfunktion und die Funktionen mit und die Funktionen mit sind Nebenbedingungs-Funktionen. Alle vorkommenden Funktionen sollen einmal stetig differenzierbar. Es sei ein regulärer Punkt, das heißt die Regularitätsanforderung (CQ) oben ist erfüllt. Falls ein lokales Optimum ist, dann existieren Konstanten und 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

Ist ein KKT-Punkt und es gilt

für alle ,

dann ist ein lokales Minimum (bzw. Maximum). Dies ist ein hinreichendes Optimalitätskriterium erster Ordnung. Ein hinreichendes Optimalitätskriterium zweiter Ordnung für einen KKT-Punkt ist:

und für alle .

Darin ist der Tangentenkegel, siehe #Regularitäts-Bedingungen, Tangenten- und Linearisierender Kegel.

Sätze zu den Näherungsverfahren

  1. Im Grenzwert der gegen null gehenden Barriereparameter geht die mit Barrierefunktionen gefundene Lösung in die mit den Lagrange Multiplikatoren gefundene Lösung über.
  2. Im Grenzwert der gegen unendlich gehenden Strafparameter geht die mit Straffunktionen gefundene Lösung in die mit den Lagrange Multiplikatoren gefundene Lösung über.
  3. Im Grenzwert unendlich vieler Iterationen strebt die mit der erweiterten Lagrange Methode gefundene Lösung auch gegen die mit den Lagrange Multiplikatoren gefundene Lösung.

Beispiel

Fläche f(a,b) = a b

An Hand eines einfachen Beispiels sollen die oben genannten fünf Methoden der Lösung eines Problems erläutert werden. In dem Problem soll das Produkt zweier positiver reeller Zahlen maximiert werden, deren Summe höchsten vierzehn beträgt. Mathematisch formuliert heißt das: Gesucht wird

mit der NB

.

Es ist anschaulich klar, dass im Optimum die NB aktiv ist, sonst könnte leicht eine kleinere Lösung gefunden werden. Der einzige stationäre Punkt mit dieser in und linearen Funktion liegt in weswegen die Suche manchmal in diese Richtung geht. Dann muss man die NB gewissermaßen „in den Weg legen“, damit der Algorithmus sie „bemerkt“.

Eliminierung der Freiheitsgrade

Aus der als aktiv erkannten NB ermittelt man

und die Hilfsfunktion hängt nur noch von ab, so dass die Lösung mittels Kurvendiskussion berechnet werden kann:

.

Man sieht:

  1. Die Hilfsfunktion hat nur noch eine Variable.
  2. Die Lösung ist korrekt, denn es handelt sich um ein Maximum.
  3. Das Verfahren findet vor allem dann Anwendung, wenn bekannt ist, dass die NB aktiv ist, z.B. im Kontakt fest verklebter Bauteile.

Lagrange Multiplikator

Hier wird die fache NB von der Zielfunktion subtrahiert, worin der Faktor der Lagrange Multiplikator ist und wie eine zusätzliche Unbekannte behandelt wird. Die Subtraktion wird gewählt, damit die Gradienten der Zeilfunktion und der Nebenbedingung entgegengesetzt sind. Ansonsten würde sich ein negativer Lagrange Multiplikator ergeben. Die Hilfsfunktion lautet hier also:

.

Im Minimum verschwinden alle Ableitung nach allen Variablen:

.

und die Lösung ist gefunden. Wegen und ist die Karush-Kuhn-Tucker-Bedingung erfüllt. Das obige Gleichungssystem kann als Matrizengleichung geschrieben werden:

Die Methode der Lagrangeschen Multiplikatoren:

  • erfüllt die NB exakt,
  • führt zusätzliche Unbekannte () ein,
  • schleust verschwindende Diagonalelemente in das Gleichungssystem ein,
  • kann anhand des Vorzeichens von beurteilen, ob die Nebenbedingung aktiv ist oder nicht (positiv bei Aktivität).

Barrierefunktion

Mit Barrierefunktionen können Neben-Bedingungen mit Sicherheit erfüllt werden zu dem Preis, dass im Optimum die NB nicht ausgereizt wird. Bei der Suche nach einer Lösung wird zur Ziel-Funktion das -fache einer Barrierefunktion hinzu addiert, z. B.:

.

Darin ist die Barrierefunktion und der Barriereparameter. Im Extremum verschwinden wieder alle Ableitungen:

,

und daher sowie , was die Lösung

besitzt, die für die Lösungen besitzt. Bei der iterativen Suche mit dem Newton-Raphson Verfahren bekommt man die Vorschrift

für die Berechnung des Inkrements und . Die Determinante der Hesse-Matrix lautet:

.

Man sieht:

  • Die Nebenbedingung wird erfüllt.
  • Im Grenzwert erhält man die exakte Lösung.
  • Nicht für alle Werte von existiert eine Lösung. Allgemein stimmen die Höhenlinien der Hilfsfunktion nicht mit denen der Zielfunktion überein.
  • Bei Annäherung an die Lösung und mit ist die Hesse-Matrix schlecht konditioniert.
  • Bei einer Gradienten basierten Suche muss sicher gestellt werden, dass das Inkrement in den Unbekannten nicht so groß ist, dass man aus Versehen auf der falschen Seite der Barriere landet, wo die Barrierefunktion in diesem Beispiel nicht definiert ist.

Strafverfahren

Mit Straf-Verfahren können Neben-Bedingungen näherungsweise erfüllt werden. Bei der Suche nach einer Lösung wird von der Ziel-Funktion das -fache einer Straffunktion abgezogen (soll ja die Verletzung bestrafen):

.

Darin ist der Straf-Parameter und die Straffunktion. Mit nennt man die Straffunktion exakt, sie ist aber nicht differenzierbar. Hier soll benutzt werden. Im Extremum verschwinden wieder alle Ableitungen:

.

Mit bekommt man weswegen man hier im „verbotenen“ Gebiet starten muss. Dann hat man das Gleichungssystem

,

mit der Lösung

,

die für in die Lösung übergeht.

Man sieht:

  • Die Nebenbedingung wird nur näherungsweise erfüllt aber mit wachsendem Strafparameter immer besser, allerdings nur weil hier exakt gerechnet werden kann. Bei numerischer Lösung des Gleichungssystems würden Rundungsfehler mit wachsendem Strafparameter zu Fehlern führen.
  • Der Grund hierfür liegt darin, dass auch hier mit zunehmendem Strafparameter der Wert der Determinante des Gleichungssystems gegen null geht. Das Problem ist zunehmend schlecht gestellt.
  • Es muss ein Kompromiss hinsichtlich der Konditionierung des Gleichungssystems und der Genauigkeit der Erfüllung der NB gefunden werden.
  • Durch Einsetzen von und in die NB kann geprüft werden, wie stark sie verletzt wird.
  • Es werden keine verschwindenden Diagonalelemente eingeschläust und das Verfahren gilt als numerisch robust.

Erweiterte oder verallgemeinerte-Lagrange-Methode

Die erweiterte oder verallgemeinerte Lagrange-Methode (engl. augmented-Lagrange-Methode) benutzt die Strafparameter, um die Lagrangeschen Multiplikatoren näherungsweise zu berechnen. Bei der Suche nach einer Lösung wird nun von der Zielfunktion das -fache der NB und das -fache einer Straffunktion abgezogen (Strafidee):

.

Im Extremum verschwinden alle Ableitungen:

.

Mit bekommt man weswegen man auch hier im „verbotenen“ Gebiet starten muss. Dann bekommt man aus

das Gleichungssystem

,

das die Lösung

hat.

Die numerische Suche des Extremums mit der erweiterten Lagrange-Methode

  1. startet normalerweise mit und den Anfangswerten ,
  2. berechnet und (im nicht-linearen Fall Iteration bis zur Konvergenz),
  3. setzt und
  4. bricht ab, wenn ein geeignetes Konvergenzkriterium erfüllt ist oder inkrementiert und kehrt in Schritt 2 zurück.

Hier muss allerdings ein Startwert mit vorgegeben werden, damit der Punkt gefunden werden kann. Mit und ergibt sich bis zu einem Fehler folgender Iterationsverlauf:

1 7.03015075377 7.03015075377 49.4230196207 0.0603015075377
2 6.99984848867 6.99984848867 -0.425140756318 -0.000303022650945
3 7.00000076136 7.00000076136 0.00213179468975 1.52272689036e-06
4 6.99999999617 6.99999999617 -1.07126520774e-05 -7.65189511753e-09
5 7.00000000002 7.00000000002 5.38324300692e-08 3.84527965025e-11
6 7.0 7.0 -2.70524935786e-10 -1.93622895495e-13


Die erweiterte Lagrange-Methode

  • erfüllt die Neben-Bedingung beliebig genau,
  • führt weder neue Unbekannte noch große Terme in das Gleichungssystem ein,
  • benötigt dazu mehrere konvergierte Lösungen des globalen Problems (im zweiten Schritt) und
  • kann die Aktivität der Neben-Bedingung an messen.

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.
  • R. Reinhardt, A. Hoffmann, T. Gerlach: Nichtlineare Optimierung. Springer 2013. ISBN 978-3-8274-2948-3.

Weblinks

Kategorie:Optimierung