Konisches Programm
Ein konisches Programm ist in der mathematischen Optimierung ein bestimmtes Problem, bei dem in der Formulierung der zulässigen Punkte auch ein Kegel verwendet wird, was zu dieser Namensgebung führte. Einige Problemklassen lassen sich als konische Programme formulieren.
Definition
[Bearbeiten | Quelltext bearbeiten]Abstrakte Definition
[Bearbeiten | Quelltext bearbeiten]Gegeben sei ein reeller Vektorraum versehen mit einem Skalarprodukt und einem abgeschlossenen, spitzen und konvexen Kegel mit nichtleerem Inneren. Des Weiteren seien und ein linearer Unterraum von . Dann heißt das Optimierungsproblem
ein konisches Programm oder konisches Optimierungsproblem. Gesucht wird also ein Element eines Vektorraumes, das sowohl in einem Kegel als auch in einem affinen Unterraum liegt und minimal bezüglich des Skalarproduktes ist.
Konvexe Definition
[Bearbeiten | Quelltext bearbeiten]Analog zu den Linearen Programmen kann man konische Programme auch in einer Standardform und einer Ungleichungsform angeben. Dazu betrachtet man die von dem Kegel induzierte verallgemeinerte Ungleichung und einen weiteren Vektorraum mit einem Skalarprodukt
Standardform
[Bearbeiten | Quelltext bearbeiten]Ein konisches Programm in Standardform (oder Normalform) lässt sich nun wie folgt definieren: lässt sich auch als schreiben. Betrachtet man eine lineare Funktion , so lässt sich der lineare Unterraum durch diese Funktion beschreiben. Somit lässt sich auch folgende Definition eines konischen Programmes geben:
- .
Hierbei ist und .
Insbesondere sind alle auftretenden Funktionen entweder linear oder K-konvex, daher handelt es sich um ein allgemeineres konvexes Optimierungsproblem.
Ungleichungsform
[Bearbeiten | Quelltext bearbeiten]Alternativ kann man den Linearen Unterraum auch als Bild einer linearen Funktion auffassen. Dies führt dann zu dem Problem
- ,
einem konischen Problem in Ungleichungsform. Hierbei ist und .
Mischformen
[Bearbeiten | Quelltext bearbeiten]Allgemeiner werden Optimierungsprobleme mit linearer Zielfunktion, die eine Linear-affine Gleichungsnebenbedingung sowie eine Linear-affine Ungleichungsnebenbedingung mit verallgemeinerter Ungleichung enthalten als konische Optimierungsprobleme bezeichnet. Dies entspricht einer Mischung aus Standardform/Normalform und Ungleichungsform.
Beispiele
[Bearbeiten | Quelltext bearbeiten]- Jedes lineare Optimierungsproblem ist ein konisches Optimierungsproblem. Dazu wählt man als Vektorraum den und als Kegel , den sogenannten positiven Orthanten. Die verallgemeinerte Ungleichung ist dann das „komponentenweise größer als“. Als Skalarprodukt wählt man das Standardskalarprodukt und als affinen Unterraum die Lösungsmenge der Gleichung .
- Semidefinite Programme sind konische Programme auf dem Vektorraum der symmetrischen Matrizen versehen mit dem Frobenius-Skalarprodukt. Der Kegel ist die Menge der positiv semidefiniten Matrizen , der affine Raum wird auch über das Frobenius-Skalarprodukt definiert.
- Die SOCPs (Second Order Cone Program) verwenden den second-order cone, der auch Lorentz-Kegel genannt wird.
Dualität
[Bearbeiten | Quelltext bearbeiten]Dualität konischer Programme
[Bearbeiten | Quelltext bearbeiten]Betrachtet man das Problem
als primales Problem, so ist heißt das Problem
das duale konische Problem. Hierbei ist der duale Kegel von und der Orthogonalraum von . Insbesondere ist das duale Programm des dualen Programms wieder das primale Programm.
Es gilt dann für jeden zulässigen Punkt des primalen Problems und jeden zulässigen Punkt des dualen Problems, dass
Ist der Optimalwert des primalen Problems endlich und ist die Slater-Bedingung erfüllt (siehe unten), so besitzt das duale Problem eine Optimallösung , und es ist
- .
Erfüllen sowohl das primale als auch das duale Problem die Slater-Bedingung, so existieren Optimallösungen mit
- .
Lagrange-Dualität
[Bearbeiten | Quelltext bearbeiten]Nicht mit der obigen Dualität zu verwechseln ist die Lagrange-Dualität, angewandt auf die konvexe Form eines konischen Problems. Ist ein konisches Problem in Normalform gegeben durch
- ,
so lautet die Lagrange-Funktion
- .
Ist der zu Adjungierte Operator, so folgt mit der Linearität des Skalarproduktes
- .
Diese Funktion ist linear in , und da Lineare Funktionen genau dann unbeschränkt sind, wenn sie konstant gleich Null sind, lautet die Zielfunktion des dualen Programms
Schreibt man diese Fallunterscheidung als Nebenbedingung in das duale Problem und fasst man als Schlupfvariable mit auf, so lautet das duale Problem
- ,
was ein konisches Programm in Ungleichungsform ist. Ein Minimierungsproblem erhält man, indem man das Vorzeichen der Zielfunktion umkehrt.
Für ein konisches Problem in Ungleichungsform
lautet die Lagrange-Funktion
und mit einem analogen Vorgehen zu oben ist das duale Problem
- ,
was wieder ein konisches Programm in Normalform ist. Duale Probleme von konischen Problemen sind also stets wieder konische Probleme. Bildet man außerdem das duale Problem eines dualen Problems, so gelangt man wieder zum Ausgangsproblem
Gilt die Slater-Bedingung (siehe unten), so gilt starke Dualität, das heißt die Optimalwerte des primalen und des dualen Problems stimmen überein. Ein schwächeres Ergebnis ist, dass der Zielfunktionswert des dualen Problems stets kleiner als der Zielfunktionswert des primalen Problems ist. Diese Aussage ist auch als schwache Dualität bekannt.
Zusammenhang der Dualitätsbegriffe
[Bearbeiten | Quelltext bearbeiten]Die beiden obigen Dualitätsbegriffe sind nicht identisch, hängen aber sehr eng zusammen. Betrachtet man zum Beispiel einen linearen Unterraum , der durch die Lösung der linearen Gleichung beschrieben wird, so wird der Orthogonalraum durch den zu adjungierten Operator beschrieben. Damit ist die Bedingung äquivalent zu für . Somit ist
- ,
wobei ist. Nun kann man anstelle von über optimieren, der Term kann ignoriert werden, da er den nur den Optimalwert, nicht aber den Optimalpunkt beeinflusst. Die neue Zielfunktion lautet nun also . Fasst man als Schlupfvariable mit auf, so ist äquivalent zu . Somit ist das duale abstrakte Problem ein Problem in Ungleichungsform und umgekehrt.
Slater-Bedingung
[Bearbeiten | Quelltext bearbeiten]Die Slater-Bedingung für konische Programme in der abstrakten Form lautet
- .
Hierbei ist das innere einer Menge. Es muss also mindestens einen Punkt geben, der sowohl im Inneren des Kegels als auch in dem affinen Raum liegt.
Für konische Programme in der konvexen Form ist die Slater-Bedingung erfüllt, wenn es einen Punkt gibt, der die Gleichungsrestriktion erfüllt, und der zulässig bezüglich der von den Kegel induzierten strikten Ungleichung ist (dies entspricht der Forderung, dass der Punkt im Inneren des Kegels liegen soll). Solche Punkte werden auch strikt zulässige Punkte genannt.
Literatur
[Bearbeiten | Quelltext bearbeiten]- Florian Jarre, Josef Stoer: Optimierung. Springer, Berlin 2004, ISBN 3-540-43575-1.
- Boyd, Stephen; Vandenberghe, Lieven (2004). Convex Optimization. Cambridge University Press. ISBN 978-0-521-83378-3. (online)