Die Komplementaritätsbedingung, auch komplementärer Schlupf genannt (englisch complementary Slackness), ist eine Aussage der mathematischen Optimierung, die eine Verbindung zwischen den Optimalpunkten zweier Optimierungsprobleme knüpft, die zueinander dual bezüglich der Lagrange-Dualität sind. Die Komplementaritätsbedingung ist ein notwendiges Optimalitätskriterium und findet Anwendung bei Innere-Punkte-Verfahren und den Karush-Kuhn-Tucker-Bedingungen.
Aussage
Allgemeiner Fall
Problemstellung
Gegeben seien zwei Optimierungsprobleme wie in der nachfolgenden Tabelle:
Primales Problem |
Duales Problem
|
|
|
Dabei ist
die duale Funktion und
Aussage
Die Komplementaritätsbedingung lautet nun
für zulässige . Eine alternative Formulierung in Vektorschreibweise mit und ist
- .
Ist der -te Lagrange-Multiplikator (die -te Ungleichungsrestriktion) ungleich Null, so muss die -te Ungleichungsrestriktion (der -te Lagrange-Multiplikator) folglich gleich Null sein:
- .
Es muss also stets mindestens einer der beiden Faktoren null sein. Dies folgt daraus, dass und gilt, da beide dual bzw. primal zulässig sind.
Gültigkeit
Gilt die starke Dualität (d. h. sind der Optimalwert des primalen und des dualen Problems gleich), wird der Optimalwert in und angenommen und ist er endlich, so gilt die Komplementaritätsbedingung.
Alternativ findet sich auch im Rahmen der KKT-Bedingungen die Formulierung, dass wenn optimal für das primale Problem ist, endlich ist und gewisse Regularitätsbedingungen (auch constraint qualifications genannt) gelten, so existieren , so dass für die Komplementaritätsbedingung gilt. Die Regularitätsbedingungen garantieren die starke Dualität (meist nur im Punkt ) und ermöglichen damit die Ergänzung der primalen Optimallösung um die duale Optimallösung.
Für lineare Programme
Problemstellung
Handelt es sich bei den Optimierungsproblemen um lineare Programme, so nehmen das primale und das duale Problem eine besondere Form an und der komplementäre Schlupf vereinfacht sich.
Primales Problem |
Duales Problem
|
|
|
Dabei ist und .
Aussage
Bezeichne die i-te Komponente des Vektors .
Dann lautet die Komplementaritätsbedingung für zulässige
- .
Damit folgt
- .
Ist das duale Problem mit einer Schlupfvariable formuliert, lauten die Nebenbedingungen also
so lautet die Komplementaritätsbedingung
und
- .
Dies erklärt die Namensgebung als komplementärer Schlupf: Entweder die Schlupfvariable ist null oder die primale Variable ist null.
Gültigkeit
Die Formulierung der Komplementaritätsbedingung basiert auf der Tatsache, dass für lineare Programme starke Dualität gilt und der Optimalwert endlich ist, genau dann, wenn sowohl das primale als auch das duale Problem einen zulässigen Punkt besitzen.
Die Formulierung lautet also, dass falls das primale und das duale Problem zulässige Lösungen besitzen, zulässige Lösungen (bzw. je nach Formulierung ) existieren, die die Komplementaritätsbedingung erfüllen. Die sind dann Optimallösungen des primalen und dualen Problems.
Umgekehrt erfüllt jedes endliche primal-duale Optimalpaar die Komplementaritätsbedingung.
Beispiel
Wir betrachten das primale lineare Programm
und das zugehörige duale Programm
Beide Probleme besitzen einen zulässigen Punkt, somit gilt starke Dualität. Der optimale duale Zielfunktionswert ist .
Aus der starken Dualität folgert man wegen , dass ist.
Der komplementäre Schlupf liefert nun
und damit .
Somit liefert hier der komplementäre Schlupf den vollständigen primalen Optimalpunkt. Umgekehrt kann man auch bei gegebenen primalen und dualen Punkten überprüfen, ob diese Optimalpunkte sind: Wenn sie optimal sind, müssen sie den komplementären Schlupf erfüllen.
Herleitung
Sei primal optimal und dual optimal. Dann ist und , da die Optimalpunkte zulässig sind. Somit ist . Wegen der starken Dualität ist
Die erste geschweifte Klammer folgt aus der oben gezeigten Identität, die zweite aus der Tatsache, dass , da zulässig ist. Ist nun endlich, so gilt in der Ungleichung Gleichheit und es folgt
- ,
was die Behauptung impliziert, da jeder der Summanden kleinergleich null ist.
Verallgemeinerungen
Der komplementäre Schlupf lässt sich auch allgemeiner formulieren für Abbildungen zwischen vollständigen reellen Vektorräumen, die mit Skalarprodukt versehen sind und auf denen eine verallgemeinerte Ungleichung bzw. ein Ordnungskegel definiert ist. Die Funktionen bilden in den Vektorraum versehen mit dem Skalarprodukt ab, ebenso bilden die Funktionen in den Vektorraum versehen mit dem Skalarprodukt ab. Das primale und duale Problem lauten dann
Primales Problem |
Duales Problem
|
|
.
|
Dabei ist
die duale Funktion und der duale Kegel zu .
Gilt starke Dualität und sind die Punkte sowie optimal und ist der Zielfunktionswert endlich, so gilt
- .
Daraus folgt
Die Herleitung für diesen allgemeinen Fall ist größtenteils analog zur obigen Vorgehensweise unter Ausnutzung der Tatsache, dass wenn ist, folgt, dass .
Formuliert man das Problem mit Ordnungskegeln, sind also die Ungleichungsrestriktionen von der Form bzw. , so gilt genauso wie oben
- .
Die Aussage
gilt aber nur, wenn der Kegel ein nichtleeres Inneres hat. Analog gilt
nur, wenn das Innere von nicht leer ist.
Literatur
- Boyd, Stephen; Vandenberghe, Lieven (2004). Convex Optimization. Cambridge University Press. ISBN 978-0-521-83378-3. (online)
- C. Geiger, C. Kanzow: Theorie und Numerik restringierter Optimierungsaufgaben. Springer, 2002. ISBN 3-540-42790-2.