Konisches Programm

Aus testwiki
Zur Navigation springen Zur Suche springen

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

Abstrakte Definition

Gegeben sei ein reeller Vektorraum V1 versehen mit einem Skalarprodukt ,1 und einem abgeschlossenen, spitzen und konvexen Kegel K mit nichtleerem Inneren. Des Weiteren seien B,CV1 und ein linearer Unterraum von V1. Dann heißt das Optimierungsproblem

Minimiere s(X)=C,X1unter den Nebenbedingungen X𝒦X+B

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

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 K und einen weiteren Vektorraum V2 mit einem Skalarprodukt ,2

Standardform

Ein konisches Programm in Standardform (oder Normalform) lässt sich nun wie folgt definieren: X𝒦 lässt sich auch als XK0 schreiben. Betrachtet man eine lineare Funktion L:V1V2, so lässt sich der lineare Unterraum durch diese Funktion beschreiben. Somit lässt sich auch folgende Definition eines konischen Programmes geben:

Minimiere s(X)=C,X1unter den Nebenbedingungen XK0V1L(X)b=0V2.

Hierbei ist X,CV1 und bV2.

Insbesondere sind alle auftretenden Funktionen entweder linear oder K-konvex, daher handelt es sich um ein allgemeineres konvexes Optimierungsproblem.

Ungleichungsform

Alternativ kann man den Linearen Unterraum auch als Bild einer linearen Funktion L*:V2V1 auffassen. Dies führt dann zu dem Problem

Minimiere s(x)=c,x2unter den Nebenbedingungen L*(x)BK0V1,

einem konischen Problem in Ungleichungsform. Hierbei ist x,cV2 und BV1.

Mischformen

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

Dualität

Dualität konischer Programme

Betrachtet man das Problem

Minimiere s(X)=C,X1unter den Nebenbedingungen XK0X+B

als primales Problem, so ist heißt das Problem

Minimiere s(Y)=B,Y1unter den Nebenbedingungen YKD0Y+C

das duale konische Problem. Hierbei ist KD der duale Kegel von K 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 X des primalen Problems und jeden zulässigen Punkt Y des dualen Problems, dass

C,X1+B,Y1B,C1

Ist der Optimalwert p* des primalen Problems endlich und ist die Slater-Bedingung erfüllt (siehe unten), so besitzt das duale Problem eine Optimallösung Y*, und es ist

p*+B,Y*1=B,C1.

Erfüllen sowohl das primale als auch das duale Problem die Slater-Bedingung, so existieren Optimallösungen X*,Y* mit

C,X*1+B,Y*1=B,C1.

Lagrange-Dualität

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

Minimiere s(X)=C,X1unter den Nebenbedingungen XK0V1L(X)b=0V2,

so lautet die Lagrange-Funktion

L(X,Λ,μ)=C,X1+X,Λ1+L(X)+b,μ2.

Ist L* der zu L Adjungierte Operator, so folgt mit der Linearität des Skalarproduktes

L(X,Λ,μ)=C,X1X,Λ1+b,μ2X,L*(μ)1.

Diese Funktion ist linear in X, und da Lineare Funktionen genau dann unbeschränkt sind, wenn sie konstant gleich Null sind, lautet die Zielfunktion des dualen Programms

q(Λ,μ)={b,μ2 falls CΛL*(μ)=0 sonst 

Schreibt man diese Fallunterscheidung als Nebenbedingung in das duale Problem und fasst man Λ als Schlupfvariable mit ΛK0V1 auf, so lautet das duale Problem

maximiere s(μ)=b,μ2unter den Nebenbedingungen L*(μ)CKD0V1,

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

Minimiere s(x)=c,x2unter den Nebenbedingungen L*(x)BK0V1

lautet die Lagrange-Funktion

L(x,Λ)=c,x2+L(Λ),x2Λ,B1

und mit einem analogen Vorgehen zu oben ist das duale Problem

Maximiere s(Λ)=Λ,B1unter den Nebenbedingungen ΛKD0V1L(Λ)+c=0V2,

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

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 L(Y)=0 beschrieben wird, so wird der Orthogonalraum durch den zu L adjungierten Operator L*(y) beschrieben. Damit ist die Bedingung Y+C äquivalent zu Y=L*(y)+C für yV2. Somit ist

B,Y1=B,L*(y)+C1=b,y2+B,C1,

wobei L(B)=b ist. Nun kann man anstelle von Y über y optimieren, der Term B,C1 kann ignoriert werden, da er den nur den Optimalwert, nicht aber den Optimalpunkt beeinflusst. Die neue Zielfunktion lautet nun also b,y2. Fasst man Y als Schlupfvariable mit YK auf, so ist Y=L*(y)+C äquivalent zu L*(y)KC. Somit ist das duale abstrakte Problem ein Problem in Ungleichungsform und umgekehrt.

Slater-Bedingung

Die Slater-Bedingung für konische Programme in der abstrakten Form lautet

(+B)Int(𝒦).

Hierbei ist Int das innere einer Menge. Es muss also mindestens einen Punkt geben, der sowohl im Inneren des Kegels als auch in dem affinen Raum +B 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 K ist (dies entspricht der Forderung, dass der Punkt im Inneren des Kegels liegen soll). Solche Punkte werden auch strikt zulässige Punkte genannt.

Literatur

  • 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)