3.4. Restringierte Optimierung#
In diesem Abschnitt kehren wir zum allgemeinen restringierten Optimierungsproblem (3.1) zurück.Auch hier beginnen wir zunächst mit der Formulierung von Optimalitätsbedingungen, die uns bei der Konstruktion effizienter Optimierungsalgorithmen als Orientierung dienen sollen. Um uns etwas Schreibarbeit zu sparen, nehmen wir in diesem Kapitel, falls nicht ausdrücklich anders gesagt, stets an, dass die Funktionen \(f,g,h\) stetig differenzierbar sind.
Wir stellen allerdings schnell fest, dass Optimalitätsbedingungen im restringierten Fall deutlich anders aussehen, als im unrestringierten Fall, wie das folgende Beispiel zeigt:
Beispiel 3.4
Wir betrachten das restringierte Optimierungsproblem
Dieses Problem besitzt das globale Minimum \(x^\ast=\tfrac{3\pi}{2}\), für das \(f^\prime(x^\ast)=0\) gilt. Diese Minimum ist also, wie aus der unrestringierten Optimierung bekannt, ein stationärer Punkt. Allerdings ist auch \(\overline{x}=0\) ein lokales Minimum des Problems, denn \(\sin(x)\ge0\) für alle \(x\in[0,\varepsilon)\), \(\varepsilon>0\). Hier gilt jedoch \(f^\prime(\overline{x})=1\neq0\). Das bedeutet, in restringierten Optimierungsproblemen können Minima auch an Stellen auftreten, an denen der Gradient der Zielfunktion nicht verschwindet.
Wir erinnern uns zurück an die Optimalitätsbedingungen für unrestringierte Optimierungsprobleme. Hier haben wir mithilfe einer Taylor-Entwicklung der Zielfunktion gezeigt, dass \(x_k\in\R^n\) mit \(\nabla f(x_k)\neq0\) kein lokales Minimum sein kann, weil wir entlang der Richtung \(-\nabla f(x_k)\) kleinere Funktionswerte erreichen können. In Beispiel 3.4 sehen wir, dass für die restringierte Optimierung eine interessante Konstellation entstehen kann: Der Gradient von \(f\) ist zwar nicht Null, zeigt aber aus der zulässigen Menge heraus. Auf diese Art erhalten wir ein lokales Minimum, in dem der Gradient der Zielfunktion nicht verschwindet.
Um diesen Gedanken formal festhalten zu können, brauchen wir die folgende
Definition 3.11
Eine Menge \(K\subseteq\R^n\) heißt Kegel, wenn
Für eine nichtleere Menge \(\Omega\subseteq\R^n\) bezeichnen wir mit
den Tangentialkegel an \(\Omega\) im Punkt \(x\).
Bemerkung 3.13
Für \(x\in\partial\Omega\) können wir \(T(\Omega,x)\) als Menge aller Richtungen auffassen, die von \(x\) gesehen in \(\Omega\) hinein zeigen, oder tangential zu \(\Omega\) verlaufen (daher der Name Tangentialkegel). Diese Anschauung deckt sich mit der Beobachtung, dass \(T(\Omega,x)=\R^n\) für \(x\in\operatorname{int}(\Omega)\).
Mithilfe des Tangentialkegels erhalten wir unsere erste Optimalitätsbedingung.
Satz 3.12
Ist \(x^\ast\in X\) ein lokales Minimum von (3.1), dann gilt
Proof. Seien \((x_k)_{k\in\N}\), \((t_k)_{k\in\N}\) wie in Definition 3.11 und
Weil \(x^\ast\) ein lokales Minimum von \(f\) auf \(X\) ist, gilt \(f(x_k)\ge f(x^\ast)\) für \(k\in\N\) groß genug. Eine Taylor-Entwicklung liefert demnach
◻
Dieses Kriterium ist leider überhaupt nicht praxistauglich, da wir den Tangentialkegel nur in den wenigsten Fällen wirklich konstruieren können. Wir hätten lieber eine etwas anschaulichere Bedingung, die auch die Funktionen \(g\) und \(h\) explizit mit einbezieht.
Definition 3.12 (Aktive und inaktive Ungleichungen)
Für \(x\in X\) definieren wir die Indexmenge der aktiven Ungleichungsnebenbedingungen \(\mathcal{A}(x)\) und die Indexmenge der inaktiven Ungleichungsnebenbedingungen \(\mathcal{I}(x)\) als
Bemerkung 3.14
Ersetzen wir für den Punkt \(\overline{x}\in X\) die Nebenbedingungen in (3.1) durch Taylor-Approximationen 1. Ordnung (sog. Linearisierungen), so erhalten wir die polyedrische Menge
Für diese Menge lässt sich der zugehörige Tangentialkegel \(T(X_l(\overline{x}),\overline{x})\) direkt bestimmen:
Definition 3.13 (Linearisierter Tangentialkegel)
Für \(x\in X\) bezeichnen wir mit
den linearisierten Tangentialkegel.
Es ist äußert wichtig, dass wir im Hinterkopf behalten, dass der linearisierte Tangentialkegel, im Gegensatz zum tatsächlichen Tangentialkegel, von der Darstellung der Menge \(X\) durch \(g\) und \(h\) abhängig ist. Eine Optimalitätsbedingung, die \(T_l\) statt \(T\) benutzt kann also nur dann sinnvoll sein, wenn wir bei der Wahl der Funktionen \(g\) und \(h\) nicht zu viel falsch machen. Dies führt auf den Begriff der Constraint Qualification, den wir hier nur anreißen können.
Definition 3.14 (Polarkegel und GCQ)
Für einen nichtleeren Kegel \(K\subseteq\R^n\) definieren wir den Polarkegel als
Wir sagen, dass für einen Punkt \(x\in X\) die Guignard Constraint Qualification gilt, wenn
Bemerkung 3.15
Es gibt unzählige praxistaugliche Anforderungen an \(g\) und \(h\), die (3.37) implizieren. Zu den bekanntesten zählen z.B. die Positive Linear Independence Constraint Qualification (PLICQ) oder die Mangasarian-Fromowitz Constraint Qualification (MFCQ). Wir verweisen an dieser Stelle auf die Nichtlineare Optimierung, in der CQ genauer untersucht werden und beschränken uns im Folgenden der Einfachheit halber auf die Nutzung von (3.37).
Korollar 3.2
Ist \(x^\ast\in X\) ein lokales Minimum von (3.1) in dem (3.37) erfüllt ist. Dann gilt
Proof. Aus Satz 3.12 wissen wir, dass
was äquivalent ist zu \(-\nabla f(x^\ast)\in T(X,x^\ast)^\circ\). Wegen (3.37) haben wir also
was wiederum äquivalent zu der zu zeigenden Aussage ist. ◻
Wir haben mittlerweile eingesehen, dass lokale Minimalstellen für restringierte Optimierungsprobleme keine stationären Punkte der Zielfunktion sein müssen, weil wir bei diesem Ansatz die Nebenbedingungen ignorieren würden. Wenn wir Zielfunktion und Nebenbedingungen jedoch geschickt in einer Funktion kombinieren, können wir aber vielleicht wieder eine Stationaritätsaussage treffen. Dieser Gedanke führt uns auf die folgende
Definition 3.15
Die Funktion \(\mathcal{L}:\R^n\times\R^m\times\R^p\to\R\) mit
heißt Lagrange-Funktion für Problem (3.1).
Die Lagrange-Funktion liefert eine elegante Möglichkeit, Problem (3.1) zu reformulieren, denn
Das bedeutet, (3.1) ist äquivalent zu
Bevor wir mithilfe von \(\mathcal{L}\) eine finale Optimalitätsbedingung angeben können, brauchen wir noch ein Hilfsresultat.
Lemma 3.5 (Alternativlemma)
Seien \(A\in\R^{n\times m}\), \(B\in\R^{n\times p}\) und \(c\in\R^n\). Dann sind folgende Aussagen äquivalent:
Für alle \(d\in\R^n\) mit \(A^\top d\le 0\) und \(B^\top d=0\) gilt \(c^\top d\le0\).
Es gibt \(u\in\R^m_{\ge0}\) und \(v\in\R^p\) mit \(c=Au+Bv\).
Proof. Übung. ◻
Damit haben wir alles zusammen, um die wohl bekannteste Form der Optimalitätsbedingungen für restringierte Optimierungsprobleme zu beweisen.
Satz 3.13 (KKT-Bedingungen)
Sei \(x^\ast\in X\) ein lokales Minimum von (3.1), in der (3.37) erfüllt ist. Dann gelten die Karush-Kuhn-Tucker-Bedingungen, d.h. es existieren Lagrange-Multiplikatoren \(\lambda^\ast\in\R^m\) und \(\mu^\ast\in\R^p\) mit
\(\nabla f(x^\ast) + \nabla g(x^\ast)\lambda^\ast + \nabla h(x^\ast)\mu^\ast = 0\) (Stationarität)
\(g(x^\ast)\le 0\), \(h(x^\ast)=0\) (Zulässigkeit)
\(\lambda^\ast\ge0\), \(\langle\lambda^\ast,g(x^\ast)\rangle = 0\)(Komplementarität)
In diesem Fall bezeichnen wir \((x^\ast,\lambda^\ast,\mu^\ast)\) als KKT-Tripel.
Proof. Die Zulässigkeitsbedingung ist klar. Weiterhin wissen wir aus Korollar 3.2, dass
also für alle \(d\in\R^n\), die
und
erfüllen. Wählen wir im Alternativlemma jetzt \(c=-\nabla f(x^\ast)\), \(A=\nabla g_{\mathcal{A}(x^\ast)}(x^\ast)\) und \(B=\nabla h(x^\ast)\) so folgt, dass \(u\in\R^m_{\ge0}\) und \(v\in\R^p\) existieren mit \(c=Au+Bv\). Setzen wir
erhalten wir die Stationaritätsbedingung. Die Komplementaritätsbedingung ist durch diese Wahl von \(\lambda^\ast\) ebenfalls erfüllt. ◻
Die Stationaritätsbedingung lässt sich mithilfe der Lagrange-Funktion auch kompakt als \(\nabla_x\mathcal{L}(x^\ast,\lambda^\ast,\mu^\ast)=0\) formulieren. Nutzen wir nun die Komplementaritätsbedingung aus, so stellen wir fest, dass
Anschaulich gesehen bedeutet das, dass der negative Gradient der Zielfunktion in dem Kegel liegt, der von den Gradienten aktiver Nebenbedingungen aufgespannt wird.
Beispiel 3.5
Wir suchen alle KKT-Tripel des folgenden Optimierungsproblems:
In diesem Beispiel ist (3.37) in jedem \(x\in X\) erfüllt. Der zulässige Bereich \(X\) ist in Abb. 3.5 dargestellt. Wir suchen die KKT-Tripel systematisch anhand der Anzahl aktiver Ungleichungsbedingungen.
Keine Ungleichung ist aktiv, also \(\mathcal{A}=\emptyset\). Wegen
\[\begin{split}\nabla f(x,y) = \begin{pmatrix}1\\1\end{pmatrix} \neq 0\quad \forall (x,y)\in\R^2\end{split}\]gibt es in diesem Fall kein KKT-Tripel.
Eine Ungleichung ist aktiv.
\(\mathcal{A}=\{1\}\). Aus der Stationaritätsbedingung
\[\begin{split}\begin{pmatrix}1\\1\end{pmatrix}+\lambda_1\begin{pmatrix}2x\\2y \end{pmatrix} = \begin{pmatrix}0\\0\end{pmatrix}\end{split}\]folgt damit \(x=y\). Eingesetzt in die Nebenbedingung \(x^2+y^2=4\) (aktiv!) liefert also die Kandidaten \(x=y=\pm\sqrt{2}\). Das Vorzeichen von \(\lambda_1\) (Komplementarität) schließt \(x,y>0\) aber aus, womit wir in diesem Fall genau ein KKT-Tripel \(\big((-\sqrt{2},-\sqrt{2}),(\tfrac{1}{2\sqrt{2}},0),-\big)\) erhalten (beachte: dieser Punkt ist zulässig!).
\(\mathcal{A}=\{2\}\). In diesem Fall gilt
\[\cos\left(\tfrac{\pi}{2}(x+y)\right) = 0 \quad \Longrightarrow \quad \sin\left(\tfrac{\pi}{2}(x+y)\right) = \pm 1.\]Kombinieren wir die Stationaritätsbedingung
\[\begin{split}\begin{pmatrix}1\\1\end{pmatrix}-\frac{\pi\lambda_2}{2}\begin{pmatrix}\sin\left(\tfrac{\pi}{2}(x+y)\right)\\\sin\left(\tfrac{\pi}{2}(x+y)\right) \end{pmatrix} = \begin{pmatrix}0\\0\end{pmatrix}\end{split}\]mit der Komplementarität, also \(\lambda_2\ge0\), so folgt \(\sin\left(\tfrac{\pi}{2}(x+y)\right) = 1\). Schränken wir diese Bedingung auf den zulässigen Bereich ein, so folgt sofort \(x+y=1\) und \(x^2+y^2\le4\). Alle diese Punkte sind KKT-Punkte mit einheitlichem Multiplikator \(\lambda=(0,\tfrac{2}{\pi})\).
Alle NB sind aktiv, also \(\mathcal{A}=\{1,2\}\). In Abb. 3.5 sehen wir, dass es genau vier solcher Punkte gibt. Zwei davon haben wir bereits als KKT-Punkte identifiziert (Ecken des oberen Kreissegments). Bei den beiden anderen Punkten kann es sich nicht um KKT-Punkte handeln, denn dazu müsste \(\lambda\ge0\in\R^2\) existieren mit
\[\begin{split}\begin{pmatrix}1\\1\end{pmatrix}+\lambda_1\begin{pmatrix}2x\\2y \end{pmatrix}-\frac{\pi\lambda_2}{2}\begin{pmatrix}\sin\left(\tfrac{\pi}{2}(x+y)\right)\\\sin\left(\tfrac{\pi}{2}(x+y)\right) \end{pmatrix} = \begin{pmatrix}0\\0\end{pmatrix}.\end{split}\]Aus unseren Überlegungen zu \(\vert\mathcal{A}\vert=1\) wissen wir bereits, dass in diesen beiden Punkten \(\sin\left(\tfrac{\pi}{2}(x+y)\right)=-1\) gilt. In Abb. 3.5 sehen wir weiterhin, dass \(x>0,y<0\) oder \(x<0,y>0\) gilt. Somit kann die Stationaritätsbedingung nicht für erfüllt werden, wenn wir \(\lambda\ge0\) fordern.
Geometrisch betrachtet erscheinen unsere Ergebnisse offensichtlich: Da der negative Gradient der Zielfunktion konstant in Richtung \((-1,-1)^\top\) zeigt, sind KKT-Punkte genau die Stellen, an denen dieser Vektor senkrecht auf dem Rand der zulässigen Menge steht und nach außen zeigt (bzw. im Polarkegel liegt, falls wir uns in einer Ecke befinden).
Abb. 3.5 Der zulässige Bereich für Beispiel 3.5.#