Optimierungstheorie - KIT · 1 Einfuhrung¨ 1.1 Beispiele (1) Eine Bank habe 100 Millionen Euro zum...

101
Universit¨ at Karlsruhe (TH) Mathematisches Institut II Prof. Dr. Andreas Kirsch Optimierungstheorie Skript zur Vorlesung im Sommersemester 2005 Dozent: Prof. Dr. Andreas Kirsch Tel. 608 2050, Zimmer 208.2 Sprechstunde: Donnerstags, 8.30 – 10.30 Uhr email: [email protected] ¨ Ubungen: Frau PD Dr. Natalia Grinberg Tel. 608 7574, Zimmer 204.2 Sprechstunde: Montags 10.30 - 11.30 Uhr email: [email protected] http://www.mathematik.uni-karlsruhe.de/mi2kirsch/de 1

Transcript of Optimierungstheorie - KIT · 1 Einfuhrung¨ 1.1 Beispiele (1) Eine Bank habe 100 Millionen Euro zum...

�� @@

@@ ��pppppppppppppppppppppppppp

ppppppppppppp��

@@��

@@

Universitat Karlsruhe (TH)Mathematisches Institut IIProf. Dr. Andreas Kirsch

Optimierungstheorie

Skript zur Vorlesung im Sommersemester 2005

Dozent: Prof. Dr. Andreas Kirsch

Tel. 608 2050, Zimmer 208.2

Sprechstunde: Donnerstags, 8.30 – 10.30 Uhr

email: [email protected]

Ubungen: Frau PD Dr. Natalia Grinberg

Tel. 608 7574, Zimmer 204.2

Sprechstunde: Montags 10.30 - 11.30 Uhr

email: [email protected]

http://www.mathematik.uni-karlsruhe.de/mi2kirsch/de

1

Literatur:

• E. Blum, W. Oettli: Mathematische Optimierung. Springer, 1975.

• J.C.G. Boot: Quadratic Programming. North-Holland, 1964.

• L. Brickman: Mathematical Introduction to Linear Programming and Game Theory.Springer, 1989.

• V. Chvatal: Linear Programming. Freeman, 1983.

• L. Collatz, W. Wetterling: Optimierungsaufgaben. Heidelberger Taschenbuch. Sprin-ger 1966.

• J. Franklin: Methods of Mathematical Economics. Springer, 1980.

• D. Gale: The Theory of Linear Economic Models. McGrawHill, 1960.

• C. Geiger. C. Kanzow: Theorie und Numerik restringierter Optimierungsaufgaben.Springer, 2003.

• K. Glashoff, S.-A. Gustafson: Einfuhrung in die lineare Optimierung. Wiss. Buch-gesellschaft, Darmstadt, 1978.

• G. Hadley: Linear Programming. Addison-Wesley, 1962.

• G. Hammerlin, K.-H. Hoffmann: Numerische Mathematik. Grundwissen Mathema-tik 7, Springer, 1989.

• H.W. Hamacher, K. Klamroth: Lineare und Netzwerk-Optimierung. Vieweg, 2002

• R. Henn, H.P. Kunzi: Einfuhrung in die Unternehmensforschung II. HeidelbergerTaschenbuch, Springer 1968.

• J. Jahn: Introduction to the theory of Nonlinear Optimization. (2nd edition) Sprin-ger 1996.

• F. Jarre, J. Stoer: Optimierung. Springer, 2000.

• D. Jungnickel: Optimierungsmethoden. Springer, 2003.

• D.G. Luenberger: Introduction to Linear and Nonlinear Programming. Addison-Wesley, 1965.

• K.G. Murty: Linear and Combinatorical Programming. J. Wiley, 1976.

• F. Nozicka, J. Guddat, H. Hollatz: Theorie der linearen Optimierung. Akademie-Verlag, 1972.

• G. Owen: Spieltheorie. Springer, 1971.

• R. Reemtsen: Lineare Optimierung. Shaker 2001.

• G. Schmeißer, H. Schirmeier: Praktische Mathematik. de Gruyter, 1976.

• A. Schrijver: Theory of Linear and Integer Programming. Wiley, 1986.

• H.R. Schwarz: Numerische Mathematik. Teubner, 1986.

• W.A. Spivey, R.M. Thrall: Linear Optimization. Holt, Rinehart and Winston, 1970.

• W. Vogel: Lineares Optimieren. Akademische Verlagsgesellschaft, 1967.

• H.H. Weber: Lineare Programmierung. Studientext. Akademische Verlagsgesellschaft,1973.

• H.H. Weber: Einige Erweiterungen der linearen Programmierung. Studientext. Aka-demische Verlagsgesellschaft, 1975.

• J. Werner: Optimization: Theory and Applications. Vieweg, 1984.

• J. Werner: Numerische Mathematik 2. Vieweg, 1992.

2

Inhaltsverzeichnis

1 Einfuhrung 41.1 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Problemstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Konvexe Mengen und Polyeder 112.1 Konvexe Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2 Der Satz von Weyl und das Farkas Lemma . . . . . . . . . . . . . . . . . . 132.3 Der Hauptsatz der Polyedertheorie . . . . . . . . . . . . . . . . . . . . . . 16

3 Existenz- und Dualitatstheorie fur lineare Optimierungsaufgaben 223.1 Ein Existenzsatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2 Das duale Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3 Die Dualitatssatze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4 Anwendungen in der Graphen- und Spieltheorie 294.1 Das Max-Flow-Min-Cut-Theorem der Flussmaximierung . . . . . . . . . . 294.2 Der Algorithmus von Ford-Fulkersen . . . . . . . . . . . . . . . . . . . . . 354.3 Ausflug in die Spieltheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5 Das Simplexverfahren fur lineare Optimierungsaufgaben 485.1 Das Gauß-Jordan Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 485.2 Idee des Simplexverfahrens am speziellen Beispiel . . . . . . . . . . . . . . 505.3 Das Simplexverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6 Konvexe Optimierung 666.1 Konvexe Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666.2 Existenz und Eindeutigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . 686.3 Das duale Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706.4 Die Dualitatssatze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

7 Das quadratische Problem 797.1 Ein Existenzsatz und der Satz von Kuhn-Tucker . . . . . . . . . . . . . . . 797.2 Das Verfahren von Goldfarb-Idnani . . . . . . . . . . . . . . . . . . . . . . 84

8 Differenzierbare Optimierungsprobleme 898.1 Der Satz von Lyusternik . . . . . . . . . . . . . . . . . . . . . . . . . . . . 898.2 Die Lagrangesche Multiplikatorenregel . . . . . . . . . . . . . . . . . . . . 918.3 Notwendige und hinreichende Bedingungen zweiter Ordnung . . . . . . . . 98

3

1 Einfuhrung

1.1 Beispiele

(1) Eine Bank habe 100 Millionen Euro zum Anlegen. Ein Teil wird in Darlehen angelegt(L Millionen Euro, L wie loan), ein Teil in Wertpapieren (S Millionen, S wie securities).Darlehen erzielen hohe Rendite (z.B. 10%), sind aber langfristig angelegt, Wertpapiereerreichen z.B. 5% Verzinsung. Die Bank erhalt also jahrlich 0,1L + 0,05S an Zinsen.Diese Große ist unter Berucksichtigung gewisser Nebenbedingungen zu maximieren.

1. Vorzeichenbedingungen: L ≥ 0, S ≥ 0

2. Beschrankung des angelegten Geldes: L+ S ≤ 100

3. Liquiditatsbeschrankung: Angenommen, die Bank will (oder muss) wenigstens 25%des angelegten Geldes als Wertpapiere halten, d.h. S ≥ 0, 25 (L+S) oder L−3S ≤ 0

4. Mindestdarlehensanlage: Bestimmte Großkunden wollen Darlehensanlagen, z.B. L ≥30.

Ein Paar (L, S), welches die Nebenbedingungen 1. - 4. erfullt, heißt zulassige Anlage.Gesucht ist diejenige zulassige Anlage, die die Große 0,1L+0,05S maximiert. Wir konnendieses Problem graphisch losen:

0 20 40 60 80 1000

10

20

30

40

50

60

70

80

90

100

L

S

P

L−3S=0

L+S=100

Welcher Punkt im Dreieck ist optimal?

Wir zeichnen die Geraden 110L + 1

20S = constant, d.h. die Geraden 2L + S = c fur

verschiedene Konstanten c > 0. Die Gerade mit Steigung −2 ist offensichtlich optimal,wenn sie durch P geht. Damit ist P = (L∗, S∗) optimal!

4

P ist charakterisiert durch das Gleichungssystem

L∗ + S∗ = 100

L∗ − 3S∗ = 0

, also

L∗ = 75, S∗ = 25 mit Gewinn 8,75 Millionen Euro.

(2) Im Jahr 1945 erschien eine Arbeit von George Stigler: The Cost of Subsistence (DieKosten des Lebensunterhalts) in: The Journal of Farm Economics.Was sind die minimalen Kosten einer ausgewogenen Ernahrung?Angenommen, man kann sich durch n Nahrungsmittel ernahren. xj sei die Menge desj-ten Nahrungsmittels. Ein Diatplan ist ein n-Tupel (x1, . . . , xn). Naturlich muss gelten:xj ≥ 0, j = 1, . . . , n. Die Kosten seien cj pro Einheit. Dann betragen die Gesamtkostenn∑

j=1

cjxj, und dies ist zu minimieren. Zusatzliche Nebenbedingungen konnen sein: Jede

Diat muss eine bestimmte Mindestmenge an Nahrstoffen und Vitaminen enthalten. EineEinheit des j-ten Nahrungsmittels enthalte aij Einheiten des Nahrstoffs i. Die Gesamtheit

des aufgenommenen Nahrstoffs i ist alson∑

j=1

aijxj. Damit lautet die Nebenbedingung:

n∑j=1

aijxj ≥ bi fur jedes i = 1, . . . ,m, wobei bi die Mindestmenge des Nahrstoffes i sei.

1945 konnte man solche Probleme fur große n,m noch nicht losen, die Computer warennoch nicht gut genug!

(3) Transportproblem: m Raffinerien R1, . . . , Rm einer Olgesellschaft beliefern n Tank-lager T1, . . . , Tn. Die Raffinerie Ri kann hochstens ri Einheiten liefern, das Lager Tj

benotigt mindestens tj Einheiten. Der Transport von Ri nach Tj kostet Cij Euro proEinheit. Gesucht ist die Anzahl Xij von Einheiten, die von Ri nach Tj geschafft werden.

(Xij) ist zulassig, fallsn∑

j=1

Xij ≤ ri fur alle i = 1, . . . ,m, undm∑

i=1

Xij ≥ tj fur alle

j = 1, . . . , n. Außerdem muss naturlich gelten: Xij ≥ 0 fur alle i, j. Die Gesamtkostenm∑

i=1

n∑j=1

Cij Xij sind zu minimieren!

(4) Diskrete Tschebyscheffapproximation: Gegeben sei ein uberbestimmtes Gleichungs-system

n∑j=1

aij xj!= bi , i = 1, . . . ,m,

wobei aij, bi ∈ R gegeben seien mit m > n. Dann besitzt dieses Gleichungssystem i.A.keine Losung x ∈ Rn.Abhilfe: Wir wollen die Fehler ∣∣∣∣∣

n∑j=1

aij xj − bi

∣∣∣∣∣moglichst klein machen fur alle i = 1, . . . ,m. Eine Moglichkeit, den Fehler im Gleichungs-system zu messen, ist durch die Maximumnorm gegeben:

(P1) Minimiere maxi=1,...,m

∣∣∣∣∣n∑

j=1

aij xj − bi

∣∣∣∣∣ uber alle x ∈ Rn !

5

Wir konnen dies folgendermaßen umformulieren:(P2) Minimiere x0 ∈ R unter den Nebenbedingungen

−x0 ≤n∑

j=1

aij xj − bi ≤ x0 fur alle i = 1, . . . ,m.

Es ist eine einfache Ubung zu zeigen, dass (P1) und (P2) aquivalent sind, d.h. genauer:Ist x∗ Losung von (P1), so ist (x∗0, x

∗) Losung von (P2), wobei

x∗0 : = maxi=1,...,m

∣∣∣∣∣n∑

j=1

aij x∗j − bi

∣∣∣∣∣ .Ist (x∗0, x

∗) Losung von (P2), so ist x∗ Losung von (P1).Diese Umformulierung von (P1) geht auf E. Stiefel (≈ 1960) zuruck!

(5) Ausgleichsproblem mit Nebenbedingung: Wir betrachten dasselbe uberbestimm-te Gleichungssystem wie oben:

n∑j=1

aij xj!= bi , i = 1, . . . ,m,

suchen aber jetzt nicht-negative Losungen xj ≥ 0 fur alle j = 1, . . . , n. Eine Moglichkeitbesteht in der Minimierung von

m∑i=1

(n∑

j=1

aij xj − bi

)2

unter den Nebenbedingungen xj ≥ 0 , j = 1, . . . , n .

Dies ist ein quadratisches Problem, wie wir spater sehen werden. Dieses Problem ohnedie Vorzeichenbedingungen wurde schon von Gauß (≈ 1800) behandelt und ist unter demNamen

”Methode der kleinsten Quadrate“ bekannt.

1.2 Problemstellung

Die Beispiele 1–4 des letzten Abschnitts lassen sich auf folgende Form bringen:

(P1)

Minimiere

n∑j=1

cj xj unter den Nebenbedingungen

x ∈ Rn undn∑

j=1

aij xj ≤ bi, i = 1, . . . ,m .

Daneben betrachten wir noch Optimierungsprobleme der Gestalt

(P2)

Minimiere

n∑j=1

cj xj unter den Nebenbedingungen

xj ≥ 0 , j = 1, . . . , n , undn∑

j=1

aij xj = bi, i = 1, . . . ,m .

6

(P1) und (P2) nennt man lineare, endlichdimensionale Probleme, da sowohl die Ziel-funktion, als auch die Nebenbedingungen durch endlich viele lineare Funktionale be-schrieben werden.

Formulierung in der Matrix-Vektor Schreibweise:Vektoren a, b, c, x, y, z ∈ Rn schreiben wir immer als Spaltenvektoren!(m×n)−Matrizen bezeichnen wir mit großen lateinischen Buchstaben, etwaA = (aij)i=1,...,m

j=1,...,n∈

Rm×n. Dann ist A> = (aji)j=1,...,ni=1,...,m

∈ Rn×m die transponierte Matrix. Wir fassen den Vektor

x ∈ Rn auch als (n× 1)−Matrix auf, dann ist x> gerade der Zeilenvektor in R1×n.

Die verschiedenen Moglichkeiten, Vektoren zu multiplizieren, sind dann Spezialfalle derMatrizenmultiplikation AB ∈ Rm×p fur A ∈ Rm×n und B ∈ Rn×p.

Das Skalarprodukt ist x>y =n∑

j=1

xjyj fur x = (xj), y = (yj) ∈ Rn ,

Das dyadische Produkt ist x y> = (xiyj)i=1,...,mj=1,...,n

fur x ∈ Rm und y ∈ Rn .

Fur x, y ∈ Rn fuhren wir die Halbordnung ein:

x ≤ y ⇐⇒ xj ≤ yj fur alle j = 1, . . . , n ,

sowie die Normen ‖ · ‖2 und ‖ · ‖∞ durch

‖x‖2 :=√x>x =

√√√√ n∑j=1

x2j , ‖x‖∞ := max

j=1,...,n|xj| .

Damit konnen wir (P1) und (P2) schreiben als:

(P1) Minimiere c>x unter x ∈ Rn , Ax ≤ b ,

(P2) Minimiere c>x unter x ≥ 0 , Ax = b ,

wobei c ∈ Rn, A ∈ Rm×n, b ∈ Rm gegeben sind und x ∈ Rn gesucht ist.

Bezeichnung:

Mit M bezeichnen wir im folgenden immer die Menge der zulassigen Punkte, d.h.

M = {x ∈ Rn : Ax ≤ b} bzw. M = {x ∈ Rn : x ≥ 0, Ax = b} .

Definition 1.1 Sei (P) eines der Probleme (P1) oder (P2). Das Problem heißt zulassig,falls M 6= ∅. Der Vektor x∗ ∈ Rn heißt Losung von (P), falls:

(i) x∗ zulassig ist, d.h. x ∈M , und

(ii) x∗ optimal ist, d.h. c>x∗ ≤ c>x fur alle x ∈M .

In diesem Fall heißt das Problem losbar.

7

Ferner setzen wir

inf(P ) :=

inf{c>x : x ∈M} , falls M 6= ∅ ,

+∞ , falls M = ∅ ,

undmin(P ) = min{c>x : x ∈M} = c>x∗ ,

falls (P ) losbar ist mit Losung x∗ ∈M . Naturlich kann auch inf(P ) = −∞ sein!

Beide Probleme (P1) und (P2) sind aquivalent im folgenden Sinn:

(i) Sei x ∈ Rn zulassig fur (P1), d.h. Ax ≤ b. Sei uj := max{xj, 0}, vj := max{−xj, 0} =−min{xj, 0} und y := b− Ax. Dann ist u ≥ 0, v ≥ 0, y ≥ 0, x = u− v, und

[A | −A | I

][ uvy

]= b ,

d.h.

[uvy

]ist zulassig fur ein Problem in der Form (P2). Hier haben wir die Block-

schreibweise fur Matrizen und Vektoren benutzt. Die Zielfunktion ist jetzt c>u− c>v =

[c>| − c>| 0]

[uvy

]. Ist x∗ optimal fur (P1), so ist das zugehorige

[u∗v∗y∗

]optimal fur (P2).

(ii) Andererseits lasst sich (P2) auch schreiben in der Form: Minimiere c>x unter denNebenbedingungen

x ∈ Rn , Ax ≤ b , −Ax ≤ −b , −x ≤ 0 ,

d.h. unter A

−A

−I

x ≤b

−b

0

.Dies ist in der Form (P1).

Uberfuhrt man ein Problem in der Form (P1) in ein aquivalentes in der Form (P2), sofuhrt man also die Schlupfvariablen y = b − Ax ein, vergroßert also die Anzahl derUnbekannten. Umgekehrt vergroßert man die Zahl der Restriktionen, wenn man (P2)in (P1) uberfuhrt!

Beispiel 1.2

Minimiere x1 + 3x2 + 4x3 unter x2 ≥ 0 , x3 ≥ 0 und

x1 + 2x2 + x3 = 5

2x1 + 3x2 + x3 ≥ 6

8

Umformulierung auf (P1): Setze c = (1, 3, 4)> und x = (x1, x2, x3)> und

A =

1 2 1

−1 −2 −1

−2 −3 −1

0 −1 0

0 0 −1

, b =

5

−5

−6

0

0

.

Dann ist das Problem, c>x zu minimieren unter Ax ≤ b.

Umformulierung auf (P2):

1. Moglichkeit:

Setze y := 2x1 + 3x2 + x3 − 6 , x1 = u− v , c = (1,−1, 3, 4, 0)>

A =

1 −1 2 1 0

2 −2 3 1 −1

, b =

5

6

Mit z := (u, v, x2, x3, y)

> ∈ R5 haben wir dann das Problem:

Minimiere c>z unter z ≥ 0 und Az = b .

2. Moglichkeit: (besser!) Lose in einer Gleichungsnebenbedingung nach einer Variablenauf, die nicht vorzeichen-beschrankt ist und eliminiere diese aus dem System: Es istx1 = 5− 2x2 − x3. Damit lautet unser reduziertes Problem:

Minimiere x2 + 3x3 + 5 unter

−x2 − x3 ≥ −4 , x2 ≥ 0 , x3 ≥ 0 .

Wir setzen

c := (1, 3, 0)>, y := 4− x2 − x3 , A = (1 1 1) , b = 4

und haben:

Minimiere c>

x2

x3

y

unter x2 ≥ 0, x3 ≥ 0, y ≥ 0 , A

x2

x3

y

= b .

Wir konnen also unser Optimierungsproblem immer in der Form (P1) oder (P2) schreiben,je nachdem, was uns gerade besser gefallt! Bei praktischen Rechnungen kann eine Formvorteilhafter sein!

9

Wir betrachten noch einmal Beispiel 4 und schreiben es in die Form (P1) um. Wir fuhrenwieder eine zusatzliche Variable x0 ∈ R ein und haben:

Minimiere x0 unter ‖Ax− b‖∞ = maxi=1,...,m

∣∣∣∣∣bi −n∑

j=1

aij xj

∣∣∣∣∣ ≤ x0 .

Hier haben wir die Schreibweise ‖ · ‖∞ fur die Maximumnorm benuzt. Damit ist c =(1, 0, . . . , 0)> ∈ Rn+1, und die Nebenbedingungen haben die Form

−n∑

j=1

aij xj − x0 ≤ −bi , i = 1, . . . ,m,

n∑j=1

aij xj − x0 ≤ bi , i = 1, . . . ,m .

Damit haben wir das Problem, c>x zu minimieren unter den Nebenbedingungen x ∈ Rn+1

mit

−1 −a11 · · · −a1n

......

...

−1 −am1 · · · −amn

−1 a11 · · · a1n

......

...

−1 am1 · · · amn

x0

x1

...

xn

−b1...

−bmb1...

bm

Dieses Problem hat n+ 1 Unbekannte und 2m Nebenbedingungen.

Das Beispiel 5 ist ein typisches quadratisches Optimierungsproblem. Die Zielfunktion ist

f(x) =m∑

i=1

(n∑

j=1

aij xj − bi

)2

=m∑

i=1

[n∑

j,k=1

aij aik xj xk − 2n∑

j=1

aij xj bi + b2i

]

=n∑

j,k=1

xj xk

m∑i=1

aij aik − 2n∑

j=1

xj

m∑i=1

aij bi +m∑

i=1

b2i .

Man definiere jetzt Q ∈ Rn×n, c ∈ Rn und β ∈ R durch

Qjk :=m∑

i=1

aij aik , cj :=m∑

i=1

aij bi , j, k = 1, . . . , n, β :=m∑

i=1

b2i ,

also Q = A>A, c = A>b, β = b>b, und erhalt:

f(x) = x>Qx − 2 c>x + β .

Eine solche Funktion nennt man quadratisches Funktional!

10

2 Konvexe Mengen und Polyeder

2.1 Konvexe Mengen

Die Restriktionenmengen der Optimierungsprobleme (P1) und (P2) haben eine spezielleForm, sie sind z.B. konvex. Die meisten der folgenden Begriffe sind wahrscheinlich schonbekannt:

Definition 2.1 (a) Eine Menge V ⊆ Rn heißt linearer Teilraum oder Unterraum,wenn mit x, y ∈ V und λ, µ ∈ R auch λx+ µy ∈ V gilt.

(b) Eine Menge V ⊆ Rn heißt affiner Teilraum, wenn mit x, y ∈ V und λ ∈ R auch(1− λ)x+ λy ∈ V gilt.

(c) Eine Menge M ⊆ Rn heißt konvex, wenn mit x, y ∈ M und λ ∈ [0, 1] auch(1− λ)x+ λy ∈M gilt.

(d) Eine Menge K ⊆ Rn heißt Kegel, wenn mit x ∈ K und λ ≥ 0 auch λx ∈ K gilt.

Man skizziere jeweils Beispiele und Gegenbeispiele fur diese Begriffe im R2! Wir bemerken,dass bei uns Kegel immer die

”Spitze“ im Ursprung haben. Kegel mit Spitze in p ∈ Rn

beschreiben wir durch p + K = {p + x : x ∈ K}. Das folgende Lemma gibt aquivalenteDefinitionen fur die Begriffe der Definition an:

Lemma 2.2 (a) V ⊆ Rn ist genau dann ein linearer Teilraum, wenn fur alle x(i) ∈ Vund alle λi ∈ R, i = 1, . . . ,m, m beliebig, auch

∑mi=1 λi x

(i) ∈ V gilt.

(b) V ⊆ Rn ist genau dann ein affiner Teilraum, wenn fur alle x(i) ∈ V und alle λi ∈ R,i = 1, . . . ,m, m beliebig, mit

∑mi=1 λi = 1 auch

∑mi=1 λi x

(i) ∈ V gilt.

(c) M ⊆ Rn ist genau dann konvex, wenn fur alle x(i) ∈M und alle λi ≥ 0, i = 1, . . . ,m,m beliebig, mit

∑mi=1 λi = 1 auch

∑mi=1 λi x

(i) ∈M gilt.

(d) K ⊆ Rn ist genau dann ein konvexer Kegel, wenn fur alle x(i) ∈ K und alleλi ≥ 0, i = 1, . . . ,m, m beliebig, auch

∑mi=1 λi x

(i) ∈ K gilt.

Beweis: Insgesamt mussen acht Richtungen bewiesen werden. Drei davon sind trivial,denn gilt (a), (b), (c) des Lemmas, so auch (a), (b), (c) der Definition (man setze m = 2).Gilt (d) des Lemmas, so ist K ein Kegel (setze m = 1) und auch konvex (setze m = 2 undwahle λi ∈ [0, 1]). Die vier Ruckrichtungen werden mit vollstandiger Induktion bewiesen.Wir fuhren das nur fur die Konvexitat durch. Sei also M konvex. Fur m = 2 reduziert sichdie Aussage des Lemmas auf die Definition, ist also richtig. Sei die Aussage des Lemmasalso jetzt fur m und beliebige x(i) ∈M und λi ≥ 0, i = 1, . . . ,m, mit

∑mi=1 λi = 1 gultig.

Es seien jetzt x(1), . . . , x(m+1) ∈M und λ1, . . . , λm+1 ≥ 0 mit∑m+1

i=1 λi = 1 gegeben. OhneEinschrankung konnen wir sogar λi > 0 annehmen. Wir setzen µ :=

∑mi=1 λi und erhalten

m+1∑i=1

λi x(i) =

m∑i=1

λi x(i) + λm+1x

(m+1) = µ

m∑i=1

λi

µx(i)

︸ ︷︷ ︸∈ M

+ (1− µ)x(m+1) ∈ M .

2

11

Fur eine gegebene (endliche oder unendliche) Teilmenge S ⊆ Rn konnen wir den kleinstenlinearen Raum (bzw affinen Raum, oder konvexe Menge, oder konvexen Kegel) bestimmen,der S enthalt. Dieser ist definiert als Durchschnitt aller linearer Raume (bzw, ...), die Senthalten. Diese Großen heißen dann lineare Hulle bzw. affine Hulle bzw. konvexeHulle bzw konvexe Kegelhulle von S, werden mit spanS, affineS, convS bzw. coneSbezeichnet und konnen wie folgt charakterisiert werden:

Lemma 2.3 Sei S ⊆ Rn eine beliebige Menge.

(a) spanS =

{m∑

i=1

λi x(i) : x(i) ∈ S , λi ∈ R , m ∈ N

},

(b) affineS =

{m∑

i=1

λi x(i) : x(i) ∈ S , λi ∈ R ,

m∑i=1

λi = 1 , m ∈ N

},

(c) convS =

{m∑

i=1

λi x(i) : x(i) ∈ S , λi ≥ 0 ,

m∑i=1

λi = 1 , m ∈ N

},

(d) coneS =

{m∑

i=1

λi x(i) : x(i) ∈ S , λi ≥ 0 , m ∈ N

}.

Wir verzichten auf den einfachen Beweis. Als Beispiel betrachten wir den Fall, dass S ausendlich vielen Punkten u(1), . . . , u(p) ∈ Rn besteht. Dann ist z.B.

cone{u(1), . . . , u(p)

}=

{p∑

i=1

λi u(i) : λi ≥ 0

}={Uλ : λ ≥ 0

},

wobei wir die λi in den Spaltenvektor λ =(λ1, . . . , λp

)> ∈ Rp und die Vektoren u(i) in die

Matrix U =[u(1) · · ·u(p)

]∈ Rn×p zusammengefasst haben. Solche Kegel heißen

”endlich

erzeugt“:

Definition 2.4 (a) Ein konvexer Kegel K ⊆ Rn heißt endlich erzeugt, wenn es eineMatrix U ∈ Rn×m gibt mit

K ={Uλ : λ ≥ 0

}=

{m∑

i=1

λi U∗i : λi ≥ 0 fur alle i = 1, . . . ,m

},

wobei wir hier mit U∗i ∈ Rn, den i−ten Spaltenvektor von U bezeichnet haben.Wir halten uns damit an die Schreibweise, wie sie z.B. in der ProgrammierspracheMatlab benutzt wird.

(b) Eine Menge E ⊆ Rn heißt (Hyper-)Ebene im Rn, wenn E die Form

E ={x ∈ Rn : a>x = γ

}hat mit einem Vektor a ∈ Rn, a 6= 0, und γ ∈ R.

(c) Eine Menge H ⊆ Rn heißt abgeschlossener Halbraum, wenn H die Form

H ={x ∈ Rn : a>x ≤ γ

}hat mit einem Vektor a ∈ Rn, a 6= 0, und γ ∈ R. Analog wird der offene Halbraumerklart.

12

(d) Eine Menge M ⊆ Rn heißt polyedral (oder auch Polyeder), wenn sie als Durch-schnitt von endlich vielen abgeschlossenen Halbraumen darstellbar ist, d.h. wenn eseine Matrix A ∈ Rm×n und einen Vektor b ∈ Rm gibt mit M =

{x ∈ Rn : Ax ≤ b

}.

(e) Beschrankte Polyeder M ⊆ Rn heißen Polytope.

Wir erkennen sofort: Ebenen und Polyeder sind abgeschlossen und konvex. Ebenen sindsogar affine Raume, Polytope kompakte konvexe Mengen. Unsere RestriktionenmengenM der Optimierungsprobleme sind also Polyeder, aber nicht unbedingt Polytope.

2.2 Der Satz von Weyl und das Farkas Lemma

Zunachst wollen ein beruhmtes Ergebnis von H. Weyl zeigen, welches besagt, dass je-der endlich erzeugte konvexe Kegel polyedral ist. Bevor wir den Satz beweisen konnen,benotigen wir einen Hilfssatz:

Hilfssatz 2.5 Fur gegebene a(j) ∈ Rn \ {0}, j = 1, . . . ,m, (m ≥ 2) definiere die Mengen

Ki := cone{a(1), . . . , a(m),−a(i)

}=

{m∑

j=1

λj a(j) : λj ≥ 0 fur j 6= i

},

i = 1, . . . ,m. Dann gilt eine der beiden folgenden Aussagen:

(a) cone{a(1)}

= · · · = cone{a(m)

}, d.h. alle a(j) sind positive Vielfache von a(1), oder

(b) cone{a(1), . . . , a(m)

}=

m⋂i=1

Ki.

Beweis: Wir beweisen die Aussage durch vollstandige Induktion nach m. Dazu indizierenwir die Menge Ki zusatzlich durch m, d.h. wir schreiben

K(m)i :=

{m∑

j=1

λj a(j) : λj ≥ 0 fur j 6= i

}, i = 1, . . . ,m .

Sei zunachst m = 2 und a(1) kein positives Vielfaches von a(2). Da die Richtung”⊆“

immer gilt, brauchen wir nur die Richtung K(2)1 ∩K

(2)2 ⊆ cone

{a(1), a(2)

}zu zeigen. Dies

beweisen wir indirekt. Annahme, es gibt x ∈ K(2)1 ∩K

(2)2 mit x /∈ cone

{a(1), a(2)

}. Dann

gibt es Zahlen λij, i = 1, 2, j = 1, 2, mit

x = λ11 a(1) + λ12 a

(2) = λ21 a(1) + λ22 a

(2) ,

wobei λ12 ≥ 0 und λ21 ≥ 0. Es ist λ11 < 0 und λ22 < 0, da ja sonst x ∈ cone{a(1), a(2)

}gelten wurde. Umsortierung dieser Gleichung liefert

(λ21 − λ11)︸ ︷︷ ︸>0

a(1) = (λ12 − λ22)︸ ︷︷ ︸>0

a(2) ,

und dies ist ein Widerspruch zur Annahme, dass a(2) kein positives Vielfache von a(1) ist.Damit ist der Fall m = 2 bewiesen.

13

Sei die Aussage des Satzes jetzt fur alle Mengen von m− 1 Vektoren richtig. Es seien mVektoren

{a(1), . . . , a(m)

}gegeben, die nicht alle durch positive Vielfache von a(1) hervor-

gehen. Durch Umnummerierung konnen wir annehmen, dass schon a(1), . . . , a(m−1) nichtalle positive Vielfache von a(1) sind. Dann gilt nach Induktionsvoraussetzung:

cone{a(1), . . . , a(m−1)

}=

m−1⋂i=1

K(m−1)i . Wir zeigen die Gleichheit cone

{a(1), . . . , a(m)

}=

m⋂i=1

K(m)i . Die Richtung

”⊆“ gilt trivialerweise. Um die andere Richtung zu zeigen, nehmen

wir an, es gebe x ∈m⋂

i=1

K(m)i mit x /∈ cone

{a(1), . . . , a(m)

}. Dann gibt es Zahlen λij,

i, j = 1, . . . ,m, mit

x =m∑

j=1

λij a(j) und λij ≥ 0 fur alle j 6= i . (2.2)

Ferner ist λii < 0 fur jedes i, denn sonst ware ja x ∈ cone{a(1), . . . , a(m)

}. Sei i ∈

{1, . . . ,m−1} festgehalten. Wir multiplizieren (2.2) fur i = m, namlich x =∑m

j=1 λmj a(j),

mit λim und (2.2) mit λmm, subtrahieren die beiden Gleichungen voneinander und divi-dieren durch λim − λmm > 0. Dann erhalten wir

x =m∑

j=1

λmjλim − λijλmm

λim − λmm

a(j) =m−1∑j=1

µij a(j) mit µij =

λmjλim − λijλmm

λim − λmm

.

Dann ist µij ≥ 0 fur i, j = 1, . . . ,m− 1, i 6= j. Daher ist

x ∈m−1⋂i=1

K(m−1)i \ cone

{a(1), . . . , a(m−1)

},

ein Widerspruch zur Induktionsvoraussetzung. 2

Wir konnen jetzt den Satz von Weyl zeigen:

Satz 2.6 (Weyl)

Jeder endlich erzeugte konvexe Kegel ist polyedral, sogar von der Form {x ∈ Rn : Ax ≤ 0}.Damit sind endlich erzeugte konvexe Kegel insbesondere auch abgeschlossen.

Beweis: Sei m ≥ 1 und K = cone{a(1), . . . , a(m)

}ein endlich erzeugter Kegel. Wir zeigen

die Behauptung wiederum durch Induktion nach m.

Sei m = 1, d.h. K = cone {a} mit a 6= 0. Wir konnen a zu einer Orthogonalbasis{a, b(2), . . . , b(n)

}des Rn erganzen. Insbesondere ist dann span {a} =

{x ∈ Rn : x>b(j) =

0 fur j = 2, . . . , n}

und daher

cone {a} = {λa : λ ≥ 0} ={x ∈ Rn : x>a ≥ 0 , x>b(j) = 0 fur j = 2, . . . , n

}.

Durch Umschreiben der Gleichungen in zwei Ungleichungen erkennen wir, dass cone {a}polyedral ist.

Sei die Behauptung jetzt richtig fur alle Mengen von m− 1 Vektoren.Sei K = cone

{a(1), . . . , a(m)

}, und wir nehmen ohne Einschrankung an, dass nicht alle a(j)

14

positive Vielfache von a(1) sind (sonst folgt Behauptung nach dem soeben Bewiesenen).Nach Lemma 2.5 gilt

cone{a(1), . . . , a(m)

}=

m⋂i=1

cone{a(1), . . . , a(m),−a(i)

}.

Da der Durchschnitt polyedraler Kegel offenbar wieder polyedral ist, so reicht es zu zeigen,dass cone

{a(1), . . . , a(m),−a(i)

}polyedral ist. Halte also i ∈ {1, . . . ,m} fest und setze zur

Abkurzung a = a(i). Der Projektor

P = I − 1

‖a‖22a a>

projiziert x orthogonal auf das orthogonale Komplement von a (Skizze!), denn Px− x ∈span {a} und a>Px = 0 fur alle x ∈ Rn. Wir setzen ferner a(j) = Pa(j), j = 1, . . . ,m.Dann ist a(i) = 0 und (zeigen Sie dies!)

cone{a(1), . . . , a(m),−a(i)

}={x ∈ Rn : Px ∈ cone {a(1), . . . , a(i−1), a(i+1), . . . , a(m)}

}.

Nach Induktionsvoraussetzung ist cone {a(1), . . . , a(i−1), a(i+1), . . . , a(m)} polyedral, also

cone {a(1), . . . , a(i−1), a(i+1), . . . , a(m)} ={y ∈ Rn : V y ≤ 0

},

alsocone

{a(1), . . . , a(m),−a(i)

}={x ∈ Rn : V Px ≤ 0

}.

2

Des weiteren benotigen wir den strikten Trennungssatz:

Satz 2.7 Sei K ⊆ Rn eine konvexe, abgeschlossene Menge, K 6= ∅, und x /∈ K. Dannexistiert eine Hyperebene, die x und K trennt, d.h. es existiert a ∈ Rn, a 6= 0, und γ ∈ Rmit

a>z ≤ γ < a>x fur alle z ∈ K .

(Skizze!) Ist K sogar ein konvexer Kegel, so kann γ = 0 gewahlt werden.

Beweis: Der Beweis benutzt den Projektionssatz in der folgenden Form (siehe Ubung):

Sei K eine konvexe abgeschlossene Menge. Zu jedem x /∈ K existiert (genau ein) x ∈ Kmit ‖x − x‖2 ≤ ‖z − x‖2 fur alle z ∈ K. Dieser Projektionspunkt x ist charakterisiert

durch (i) x ∈ K und (ii)(x− x

)>(z − x

)≤ 0 fur alle z ∈ K.

Wir setzen jetzt a = x − x 6= 0 und γ = a>x. Dann ist wegen (ii) a>z ≤ a>x = γ undwegen a>

(x− x

)= |a|2 > 0 auch γ = a>x < a>x. Sei jetzt K zusatzlich ein Kegel. Dann

konnen wir z = 0 wahlen und erhalten γ ≥ 0, also a>x > 0. Angenommen, es gebe z ∈ Kmit a>z > 0. Fur z = tz, t > 0, ware dann z ∈ K, also γ ≥ a>z = t a>z →∞ fur t→∞,ein Widerspruch. Also ist a>z ≤ 0 fur alle z ∈ K. 2

Schließlich beweisen wir jetzt noch das wichtige Lemma von Farkas:

Lemma 2.8 (Farkas)

Seien A ∈ Rm×n und b ∈ Rm gegeben. Dann gilt genau eine der beiden folgenden Aussagen:

15

(i) Ax = b, x ≥ 0, ist losbar durch ein x ∈ Rn.

(ii) A>y ≤ 0, b>y > 0, ist losbar durch ein y ∈ Rm.

Beweis: (a) Angenommen, beide Aussagen wurden gelten. Dann:

0 < y>b = y>Ax = (A>y)>x ≤ 0 ,

ein Widerspruch.

(b) Jetzt nehmen wir an, (i) gelte nicht. Dies bedeutet, dass

b /∈ K :={Ax : x ∈ Rn , x ≥ 0

}.

Nach dem Satz von Weyl ist K ein konvexer polyedraler Kegel, insbesondere also auchabgeschlossen. Daher konnen wir b undK trennen. Es gibt also y ∈ Rm, y 6= 0, mit y>Ax ≤0 < y>b fur alle x ≥ 0. Setzt man fur x nacheinder die Koordinateneinheitsvektoren ein,so erhalt man A>y ≥ 0, und das Lemma ist bewiesen. 2

Die folgenden Plots skizzieren die Aussage des Farkas Lemmas fur die beiden Falle: SeiA = [A∗,1, A∗,2] ∈ R2×2 und b ∈ R2.

- A∗,1

�A∗,2

��������1 b

In diesem Fall ist Ax = b, x ≥ 0 losbar.

In diesem Fall ist Ax = b mit x ≥ 0 nichtlosbar, jedoch A>y ≤ 0, b>y > 0.

2.3 Der Hauptsatz der Polyedertheorie

Wir wollen jetzt eine Art Umkehrung des Satzes von Weyl beweisen, namlich dass sichjedes geradenfreies Poyeder als konvexe Hulle seiner Ecken und konvexe Kegelhulle seinerextremalen Richtungen schreiben lasst. Diese Begriffe werden in der folgenden Definitionerklart:

Definition 2.9 M ⊆ Rn sei beliebige konvexe Menge.

(a) x ∈ M heißt Ecke oder Extremalpunkt von M , wenn sich x nicht als echteKonvexkombination zweier verschiedener Punkte von M darstellen lasst, d.h., wenngilt:

y, z ∈M , λ ∈ (0, 1) , x = λy + (1− λ)z =⇒ y = z .

16

(b) Ein Vektor u ∈ Rn, u 6= 0, heißt freie Richtung von M , wenn es x ∈ M gibt, sodass der ganze Strahl {x+ tu : t ≥ 0} zu M gehort.

(c) Eine freie Richtung u ∈ Rn, u 6= 0, heißt extremale Richtung von M , wenn siesich nicht als echte Konvexkombination zweier linear unabhangiger freier Richtungenschreiben lasst, d.h., wenn gilt:

v, w freie Richtungen, λ ∈ (0, 1) , u = λv + (1− λ)w =⇒ v, w linear abhangig .

Strahlen der Form s = {x + tu : t ≥ 0} ⊆ M mit Ecke x ∈ M und extremalerRichtung u heißen Extremalstrahlen.

Mit extrP(M) bzw. extrS(M) bezeichnen wir die Menge aller Extremalpunkte bzw. Verei-nigung aller Extremalstrahlen von M .

Der folgende Satz charakterisiert Ecken und extremale Richtungen fur Polyeder. Dazubenotigen wir die Menge der aktiven Indizes.

Satz 2.10 Sei M = {x ∈ Rn : Ax ≤ b} und fur x ∈ M sei I(x) :={i ∈ {1, . . . ,m} :

(Ax)i = bi}

die Menge der aktiven Indizes. Dann gilt:

(a) x ∈ M ist genau dann Ecke von M , wenn span{A>i∗ : i ∈ I(x)

}= Rn, wobei

A>i∗ ∈ Rn die i−te Zeile (als Spaltenvektor aufgefasst) von A ist.

(b) M besitzt hochstens endlich viele Ecken.

(c) u ∈ Rn, u 6= 0, ist genau dann freie Richtung fur M , wenn Au ≤ 0.

(d) u ∈ Rn, u 6= 0, ist genau dann extremale Richtung fur M , wenn Au ≤ 0 und es keinvon u linear unabhangiges v ∈ Rn, v 6= 0, gibt mit Av ≤ 0 und (Av)i = 0 fur alle imit (Au)i = 0.

Beweis: (a) Setze V = span{A>i∗ : i ∈ I(x)

}.

Sei zunachst V $ Rn. Dann gibt es z ∈ Rn, z 6= 0, mit z ⊥ V , d.h. (Az)i = 0 fur allei ∈ I(x). Wir schreiben x = 1

2(x + εz) + 1

2(x− εz). Fur i ∈ I(x) ist (Ax)i ± ε(Az)i = bi.

Fur i /∈ I(x) ist (Ax)i < bi, fur hinreichend kleine ε > 0 ist also (Ax)i ± ε(Az)i ≤ bi.Damit kann x keine Ecke sein.

Sei jetzt V = Rn und x = λy + (1 − λ)z mit Ay ≤ b, Az ≤ b, λ ∈ (0, 1). Dann gilt furi ∈ I(x) die Ungleichungskette bi = (Ax)i = λ(Ay)i +(1−λ)(Az)i ≤ bi, also gilt Gleicheitund daher (Ay)i = (Az)i = bi fur alle i ∈ I(x). Daher steht y− z senkrecht auf V . WegenV = Rn ist y − z = 0. Daher ist x Ecke.

(b) Wenn x eine Ecke ist, so folgt nach Teil (a), dass es eine Indexmenge I ⊆ I(x)gibt mit n Elementen, so dass die Matrix AI∗ = (Aij)i∈I

j=1,...,nvollen Rang hat und damit

invertierbar ist. Aus AI∗x = bI folgt dann x = A−1I∗ bI . Hier ist bI naturlich der Vektor mit

Komponenten in I. Daher liegen alle Ecken in der endlichen Menge{x = A−1

I∗ bI : I ⊆{1, . . . ,m}, AI∗ invertierbar}.(c) Dieser Teil ist sehr einfach und verbleibt als Ubung.

(d) Sei u extremal, v 6= 0 mit Av ≤ 0 und (Av)i = 0 fur alle i ∈ J , wobei J := {i :(Au)i = 0}. Fur i ∈ J ist dann (Au)i ± ε(Av)i = 0. Fur i /∈ J ist dagegen (Au)i < 0, fur

17

hinreichend kleine ε > 0 ist also (Au)i ± ε(Av)i ≤ 0. Daher sind u± εv freie Richtungenund u = 1

2(u+εv)+ 1

2(u−εv). Da u extremal ist, mussen u+εv und u−εv linear abhangig

sein und damit auch u und v.

Es gebe jetzt umgekehrt kein von u linear unabhangiges v mit (Av) ≤ 0 und (Av)i = 0fur i ∈ J . Sei u = λv+ (1− λ)w mit λ ∈ (0, 1) und freien Richtungen v und w. Fur i ∈ Jist 0 = (Au)i = λ(Av)i + (1 − λ)(Aw)i ≤ 0, also (Av)i = (Aw)i = 0 fur i ∈ J . NachVoraussetzung sind daher sowohl v als auch w Vielfache von u. Daher sind auch v und wlinear abhangig. 2

Man kann sich an einer Skizze schnell uberlegen, dass Polyeder uberhaupt keine Eckenoder Extremalstrahlen besitzen mussen.

Sei M = {x ∈ Rn : Ax ≤ b} ein nichtleeres Polyeder. Der Rand ∂M von M ist jedenfallsenthalten in der Menge

{x ∈M : (Ax)i = bi fur wenigstens ein i

}. Wir setzen

Mi ={x ∈M : (Ax)i = bi

}, i = 1, . . . ,m .

Dann ist Mi wieder ein Polyeder, wir haben ja nur eine Ungleichung in Ax ≤ b durcheine Gleichung ersetzt, d.h. eine weitere Ungleichung hinzugefugt. Nichtleere Mengen derForm

⋂{Mi : i ∈ I

}mit I ⊆ {1, . . . ,m} heißen Seiten des Polyeders M . Naturlich

sind die Seiten des Polyeders als Durchschnitt endlich vieler Polyeder wieder Polyeder.Fur ein beliebiges Polyeder P definieren wir die Dimension von P als die Dimensionvon affineP . (Die Dimension eines affinen Raumes V ist naturlich die Dimension deszugehorigen Unterraumes V − z fur z ∈ V .) Damit haben wir fur das Polyeder M :

∂M =n⋃

k=0

⋃S Seite von M

dim S=k

S .

Fur den Beweis des Polyedersatzes benotigen wir einige vorbereitende Satze, z.B. denfolgenden einfachen Hilfssatz:

Hilfssatz 2.11 Sei M = {x ∈ Rn : Ax ≤ b} ein Polyeder und S ⊆M eine Seite von M .Dann gilt:

(a) Jede Ecke von S ist auch Ecke von M .

(b) Jeder Extremalstrahl von S ist auch Extremalstrahl von M .

Beweis: (a) Sei x Ecke von S und y, z ∈M , λ ∈ (0, 1) mit x = λy+(1−λ)z. Die Seite Shabe die Darstellung S =

⋂{Mi : i ∈ I

}. Dann ist bi = (Ax)i = λ(Ay)i+(1−λ)(Az)i ≤ bi

fur i ∈ I und daher Gleichheit (Ay)i = (Az)i = bi fur i ∈ I. Dies bedeutet y, z ∈ S. Da xeine Ecke von S ist, so folgt y = z.

(b) Sei {x + tu : t ≥ 0} ein Extremalstrahl von S, d.h. x ist Ecke von S und u istextremale Richtung von S. Nach (a) ist x auch Ecke von von M . Zu zeigen bleibt, dassu auch extremale Richtung von M ist. Der Beweis dieser Aussage geht fast genauso wieder zu (a) und verbleibt als Ubung. 2

Wir benotigen die Begriffe des relativen Inneren int relM und des relativen Randes ∂relMeiner Menge M . Sei dafur wieder U(x, ε) =

{y ∈ Rn : ‖x− y‖2 < ε

}die Kugel um x mit

18

Radius ε > 0. Wir definieren

x ∈ int relM ⇐⇒ es gibt ε > 0 mit U(x, ε) ∩ affineM ⊆ M ,

x ∈ ∂relM ⇐⇒ fur jedes ε > 0 gilt U(x, ε) ∩M 6= ∅ und U(x, ε) ∩ (affineM \M) 6= ∅ .

Dann gilt:

Hilfssatz 2.12 Sei M = {x ∈ Rn : Ax ≤ b} ein nichtleeres Polyeder mit k = dimM .Dann gilt

∂relM ⊆k−1⋃j=0

⋃S Seite von M

dim S=j

S . (2.3)

Beweis: Sei x ∈ ∂relM mit zugehoriger Menge I(x) ={i : (Ax)i = bi

}von aktiven

Indizes. Setze

S ={x ∈M : (Ax)i = bi fur alle i ∈ I(x)

}=

⋂i∈I(x)

Mi .

Dann ist S eine Seite von M und dimM ≤ k. Es ist sogar x ∈ int relS. Das sieht manfolgendermaßen. Zunachst ist affineS ⊆

{x ∈ Rn : (Ax)i = bi fur alle i ∈ I(x)

}wegen

S ⊆{x ∈ Rn : (Ax)i = bi fur alle i ∈ I(x)

}. Wahle nun ε > 0 so, dass (Ax)i ≤ bi fur alle

i /∈ I(x) und alle x ∈ Rn mit ‖x − x‖2 ≤ ε. Dies ist moglich wegen (Ax)i < bi fur allei /∈ I(x). Fur x ∈ U(x, ε)∩ (affineS) ist daher (Ax)i = bi fur alle i ∈ I(x) und (Ax)i ≤ bifur alle i /∈ I(x), also x ∈ S, also U(x, ε) ∩ (affineS) ⊆ S.

Ware dimS = k, so affineS = affineM , also U(x, ε) ∩ (affineM) ⊆ S ⊆ M , d.h. x ∈int relM . Dies widerspricht x ∈ ∂relM . Also ist dimS ≤ k − 1. 2

Satz 2.13 Sei M ⊆ Rn konvex und nicht leer. Dann ist int relM 6= ∅, d.h. es gibt x ∈Mund ε > 0 mit U(x, ε) ∩ affineM ⊆M .

Beweis: Wir wahlen z ∈ M beliebig und setzen M = M − z. Dann ist 0 ∈ M undV = affine M = span M . Wir zeigen int relM 6= ∅. Setze dazu m = dimV . Ist m = 0,so ist M = {z} = affineM , und daher auch int relM = {z}. Ist m > 0 so wahle linearunabhangige b(1), . . . , b(m) ∈ M . Also liegt das Simplex S = conv

{0, b(1), . . . , b(m)

}in M .

Der bijektive Homomorphismus (Koordinatenabbildung) ψ : Rm → span M , definiertdurch

ψ(α1, . . . , αm) =m∑

j=1

αj b(j) ,

bildet das Standardsimplex conv{0, e(1), . . . , e(m)

}auf S ab.1 Dieses Standardsimplex hat

naturlich innere Punkte (z.B. den Schwerpunkt), also auch S (relativ zu V ), also auch M(relativ zu V ). 2

Satz 2.14 Sei M ⊆ Rn konvex, nicht leer und geradenfrei (d.h. es gibt keine Geradeg = {z + tp : t ∈ R} mit g ⊆ M). Dann ist M ⊆ conv ∂relM , also enthalten in derkonvexen Hulle des relativen Randes.

1Hier bezeichnen e(j) mit e(j)k = δjk, j, k = 1, . . . ,m, die Koordinateneinheitsvektoren im Rm.

19

Beweis: Es ist ∂relM 6= ∅, da sonst M = affineM und dies der Geradenfreiheit wi-dersprache. Ohne Beschrankung konnen wir 0 ∈ ∂M annehmen (nur Verschiebung desKoordinatensystems). Dann ist affineM = spanM , und wir nehmen spanM = Rn an.(Sonst mussten wir uns im Folgenden auf den Unterraum spanM beschranken und alletopologischen Begriffe wir Inneres oder Randpunkt relativ zu diesem Unterraum nehmen.)

Als erstes zeigen wir, dass ∂M nicht konvex ist. Annahme, ∂M ist konvex. Da das Innerevon ∂M leer ist, so folgt nach Satz 2.13, dass span ∂M $ Rn. Also existiert ein z ∈ Mmit z /∈ span ∂M (denn sonst ware M ⊆ span ∂M , d.h. Rn = spanM ⊆ span ∂M $ Rn,ein Widerspruch). Insbesondere muss z ∈ intM sein. Sei jetzt a ∈ span ∂M , a 6= 0, undg = {z + ta : t ∈ R} die Gerade durch z langs a. Da M geradenfrei ist, so g 6⊆ M . Diesbedeutet, dass es t ∈ R gibt mit z+ ta ∈ ∂M ⊆ span ∂M . Hieraus folgt z ∈ span ∂M , einWiderspruch. Damit ist gezeigt, dass ∂M nicht konvex sein kann.

Also gibt es u, v ∈ ∂M mit [u, v] ∩ intM 6= ∅ (denn sonst ware [u, v] ⊆ M \ intM =∂M fur alle u, v ∈ ∂M , was die Konvexitat von ∂M bedeuten wurde). Hier ist [u, v] ={λu + (1 − λ)v : 0 ≤ λ ≤ 1

}die Strecke zwischen u und v. Sei y ∈ [u, v] ∩ intM ,

d.h. y = λu + (1 − λ)v fur ein λ ∈ (0, 1). Ferner sei ε > 0 so klein, dass die KugelU(y, ε) :=

{x ∈ Rn : ‖x− y‖2 < ε

}um y mit Radius ε in intM liegt. Sei jetzt x ∈ intM

beliebig. Wir zeigen x ∈ conv ∂M . (Dann ware der Beweis beendet, denn ∂ ⊆ conv ∂Mgilt sowieso).

Wir zeigen dafur, dass die Strahlen

S± :={x+ t(u− v) : t ≷ 0

}den Rand ∂M schneiden mussen. Annahme S+ ⊆M . Wir zeigen, dass u eine Darstellungder Form u = ρw + (1 − ρ)z hat mit einem ρ ∈ (0, 1), einem z ∈ U(y, ε) und einemw ∈ S+. Mit w = x+ t(u− v) ∈ S+ und daher u = ρ

[x+ t(u− v)

]+ (1− ρ)z muss z die

Form haben

z =1− ρ t1− ρ

u +ρ t

1− ρv − ρ

1− ρx , also

z − y =

(1− ρ t1− ρ

− λ)u +

(ρ t

1− ρ− 1 + λ

)v − ρ

1− ρx

=

(1− ρ t1− ρ

− λ)

(u− v) +ρ

1− ρ(v − x) .

Wahle nun ρ ∈ (0, 1) so klein, dass ρ1−ρ‖v − x‖2 < ε und bestimme dann t aus der

Gleichung 1−ρ t1−ρ−λ = 0, d.h. t = 1−λ(1−ρ)

ρ> 0. Mit dieser Wahl von ρ und t ist ‖z− y‖2 =

ρ1−ρ‖v−x‖2 < ε, also z ∈ U(y, ε). Damit ist die Darstellung u = ρw+(1− ρ)z mit einem

ρ ∈ (0, 1), einem z ∈ U(y, ε) und einem w ∈ S+ gezeigt. Es liegt also u echt zwischen wund z, damit u ∈ intM , ein Widerspruch.

Daher ist S+ ∩ ∂M 6= ∅. Genauso zeigt man, dass auch S− ∩ ∂M 6= ∅. Mit y± ∈ S± ∩ ∂Mfolgt dann x ∈ [y−, y+] ⊆ conv ∂M , und der Beweis ist endlich beendet. 2

Damit konnen wir schließlich den Hauptsatz der Polyedertheorie beweisen:

Satz 2.15 Sei M ⊆ Rn ein geradenfreies Polyeder. Dann ist

M = conv{extrP(M) ∪ extrS(M)

}. (2.4)

In anderen Worten: M ist konvexe Hulle seiner Ecken und Extremalstrahlen.

20

Beweis: Wir fuhren einen Induktionsbeweis uber m = dimM .

m = 1: Dann ist affineM eine Gerade und M kann als konvexe Menge nur ein Intervall[u, v] auf der Geraden oder ein Strahl sein. In beiden Fallen ist die Aussage des Satzesrichtig.

Es gelte (2.4) jetzt fur alle geradenfreien Polyeder M ′ mit dimM ′ ≤ m − 1, und es seiM ein geradenfreies Polyeder der Form M =

{x ∈ Rn : Ax ≤ b

}mit dimM = m.

Da die Inklusion”⊇“ von (2.4)) trivial ist, muss wegen Satz 2.14 und (2.3) nur gezeigt

werden, dass jede Seite S von M mit dimS ≤ m − 1 in conv{extrP(M) ∪ extrS(M)

}liegt. Da S ebenfalls ein geradenfreies Polyeder ist, folgt nach Induktionsvoraussetzungund Hilfssatz 2.11

S = conv{extrP(S) ∪ extrS(S)

}⊆ conv

{extrP(M) ∪ extrS(M)

}.

Damit ist der Satz bewiesen. 2

Da ein Polytop als beschrankte Menge keine Extremalstrahlen besitzt, folgt sofort:

Korollar 2.16 Jedes (nichtleere) Polytop M ist die konvexe Hulle seiner Ecken.

Die Voraussetzung der Geradenfreiheit ist quivalent zur Existenz von Ecken:

Satz 2.17 Sei M ⊆ Rn ein nichtleeres Polyeder. M besitzt genau dann Ecken, wenn Mkeine Gerade enthalt, also geradenfrei ist.

Beweis: Ist M geradenfrei, so liefert der Hauptsatz 2.15 insbesondere auch die Existenzvon Ecken. Umgekehrt besitze jetzt M eine Ecke x, und wir nehmen an, M enthalte aucheine Gerade g = {z+ tu : t ∈ R}. Dann gilt Ax ≤ b und A(z+ tu) ≤ b fur alle t ∈ R. Ausder letzten Ungleichung folgt Au = 0 (weshalb?) und daher A(x+ tu) ≤ b. Daher liegt diegesamte Gerade durch x mit Richtung u in M , ein Widerspruch dazu, dass x Ecke ist. 2

In diesem Kapitel haben wir uns an Skripten und das Lehrbuch von J. Werner (Optimiza-tion Theory and Applications) gehalten sowie in Abschnitt 2.3 an die Vorlesungsmitschriftvon meinem Kollegen W. Weil aus dem WS 2000/2001, dem ich dafur danke.

21

3 Existenz- und Dualitatstheorie fur lineare Opti-

mierungsaufgaben

3.1 Ein Existenzsatz

Am Anfang des ersten Kapitels haben wir gesehen, dass es gleichgultig ist, ob wir dasOptimierungsproblem in der Form (P1) oder (P2) vorliegen haben – oder in einer allge-meineren Form mit Gleichungen und Ungleichungen und Vorzeichenbedingungen nur fureinige Komponenten. Wir konnen es immer auf eine der beiden Standardformen transfor-mieren. Wir gehen jetzt von der Normalform (P2) aus, d.h. betrachten das Problem:

(P) Minimiere c>x auf M = {x ∈ Rn : Ax = b, x ≥ 0} ,

wobei A ∈ Rm×n, b ∈ Rm und c ∈ Rn gegeben sind. Zunachst bemerken wir, dass naturlichauch dieses M ein Polyeder ist. Es hat aber die zusatzliche Eigenschaft, geradenfrei zusein. M ist ja enthalten im Polyeder {x ∈ Rn : x ≥ 0}, welches keine Gerade enthalt.Nach Satz 2.17 besitzt M also Ecken. Außerdem ist der Hauptsatz der Polyedertheorieanwendbar.

Wir fragen jetzt nach der Existenz einer Losung. Einfache geometrische Uberlegungen(vielleicht besser fur Probleme in der Form (P1)) zeigen, dass nicht immer eine Losungexistieren muss. Falls M beschrankt ist, so existiert jedenfalls eine Losung, da dann Mkompakt und die Zielfunktion stetig ist. Die Voraussetzung der Beschranktheit ist aberzu stark. Es gilt die folgende wichtige Existenzaussage:

Satz 3.1 (Existenzsatz)

Es sei das Problem (P) gegeben, und es sei

µ∗ := inf{c>x : x ∈M

}> −∞ .

(a) Falls (P) uberhaupt zulassig ist, d.h. falls M 6= ∅, so ist (P) auch losbar, d.h. esexistiert ein x∗ ∈M mit c>x∗ = µ∗, d.h. c>x∗ ≤ c>x fur alle x ∈M .

(b) Falls (P) losbar ist, so existiert auch eine Ecke als Losung.

Beweis: (a) Wir definieren die folgende Menge Λ ⊆ R × Rm, die uns auch spater nochbei der Herleitung des dualen Problems begegnen wird:

Λ :={(c>x,Ax− b) ∈ R× Rm : x ∈ Rn , x ≥ 0n

}.

Hier haben wir der Deutlichkeit halber 0n fur den Nullvektor im Rn geschrieben. Diese

Menge Λ ist ein endlich erzeugter konvexer Kegel in Rm+1 mit Spitze im Punkt[ 0−b

],

denn wir konnen Λ schreiben in der Form

Λ =

[0

−b

]+ Λ0 mit Λ0 =

{[c>

A

]x : x ∈ Rn , x ≥ 0n

}⊆ Rm+1 .

Als endlich erzeugter konvexer Kegel ist Λ0 polyedral, also abgeschlossen (Satz von Weyl).Damit ist auch Λ abgeschlossen. Sei jetzt (xk) eine Folge in M mit c>xk → µ∗ fur k →∞.

22

Bezeichnen wir mit 0m den Nullvektor im Rm, so ist(c>xk, 0m

)∈ Λ und

(c>xk, 0m

)−→(

µ∗, 0m

)fur k → ∞. Wegen der Abgeschlossenheit von Λ ist auch (µ∗, 0m) ∈ Λ, d.h. es

gibt x∗ ≥ 0n mit µ∗ = c>x∗ und 0m = Ax∗ − b. Damit ist x∗ optimal!

(b) Sei x∗ ∈M optimal. Da M geradenfrei ist, so konnen wir den Hauptsatz 2.15 anwen-den. Es gibt also bj ∈ extrP(M) ∪ extrS(M) und λj ≥ 0, j = 1, . . . , p, mit

∑pj=1 λj = 1

und x∗ =∑p

j=1 λjb(j). Ohne Beschrankung konnen wir λj > 0 fur alle j annehmen. Daher

ist

c>x∗ =

p∑j=1

λj c>b(j)︸ ︷︷ ︸≥c>x∗

≥p∑

j=1

λj c>x∗ = c>x∗ .

Hieraus folgt (Widerspruchsargument) c>b(j) = c>x∗ fur alle j = 1, . . . , p. Tritt unterden b(j) eine Ecke auf, sind wir fertig. Ist b(j) ein Element aus einem Extremalstrahls = {z + tu : t ≥ 0} mit Ecke z und extremaler Richtung u, so folgt c>u ≥ 0 wegenc>x∗ ≤ c>(z + tu) fur alle t ≥ 0. Ist nun b(j) = z + tu fur ein t ≥ 0, so folgt

c>x∗ = c>b(j) = c>z + t c>u ≥ c>z ≥ c>x∗

und daher Gleichheit c>z = c>x∗. Also ist die Ecke z optimal. 2

Bemerkung: Naturlich gilt der Existenzteil (a) des Satzes auch fur alle anderen Formenvon linearen Optimierungsproblemen, da sie ja auf die Form (P) transformierbar sind.Insbesondere benotigt man fur Maximierungsaufgaben, dass sup{c>x : x ∈ M} < +∞.Allerdings erfordert der Teil (b) wirklich die Existenz einer Ecke von M (der Hauptsatzmuss anwendbar sein!). Man uberlege sich (graphisch) ein Beispiel eines linearen Opti-mierungsproblems, das losbar ist, ohne dass die zulassige Menge Ecken besitzt.

3.2 Das duale Problem

Es sei wieder das Problem (P) gegeben:

(P) Minimiere c>x auf M = {x ∈ Rn : Ax = b, x ≥ 0} .

Wir nennen (P) das primale Problem und wollen zunachst das duale Problem moti-vieren und herleiten. Dazu erinnern wir noch einmal an den endlich erzeugten konvexenKegel

Λ ={(c>x,Ax− b) ∈ R× Rm : x ∈ Rn , x ≥ 0n

}(3.1)

und betrachten das folgende Problem (siehe Skizze):

(P’) Minimiere ρ unter (ρ, y) ∈M ′ := Λ ∩(R× {0m}

)und zeigen den Zusammenhang mit (P):

Lemma 3.2 Es gilt:

(a) Es ist x ∈M genau dann, wenn (x, 0m) ∈M ′.

(b) x∗ ∈M ist genau dann Losung von (P) mit Wert µ∗ = c>x∗, wenn (µ∗, 0m) Losungist von (P’) mit Wert µ∗.

In diesem Sinn sind also (P) und (P’) aquivalent.

23

Der Beweis verbleibt als Ubung (siehe analogen Beweis von Lemma 3.3)!

In der Skizze besteht das Problem (P’) also darin, den Punkt auf der R−Achse zu finden,der am weitesten links in Λ liegt. Den selben Punkt konnen wir auch folgendermaßenfinden: Wir betrachten alle Hyperebenen H(z, γ) im R×Rm (in der Skizze also Geraden),die die R−Achse in genau einem Punkt schneiden und die Λ im nicht-negativen Halb-raum H+ enthalten. Von diesen Hyperebenen suchen wir diejenige, die die R−Achse amweitesten rechts schneidet. Dieses sei das verbal formulierte duale Problem.Wir wollen dies nun ubersetzen. Hyperebenen in R× Rm haben die Form(t, y) ∈ R× Rm :

[t

y

]> [s

z

]= γ

={(t, y) ∈ R× Rm : t s + y>z = γ

}fur gegebenen Vektor (s, z) ∈ R × Rm und Zahl γ ∈ R. Diese Hyperebene schneidetR × {0m} genau dann in genau einem Punkt, wenn s 6= 0 ist. Nach Division durch skonnen wir s = 1 annehmen, also haben die zugelassenen Hyperebenen die Form

H(z, γ) :={(t, y) ∈ R× Rm : t + y>z = γ

}.

Der Schnittpunkt mit R× {0m} ist gerade (γ, 0m), und der nicht-negative Halbraum hatdie Form

H+(z, γ) :={(t, y) ∈ R× Rm : t + y>z ≥ γ

}.

Damit konnen wir das vorlaufige duale Problem (D’) formulieren als:

(D’) Maximiere γ unter Λ ⊆ H+(z, γ) fur ein z ∈ Rm .

Analog zu Lemma 3.2 gilt:

Lemma 3.3 Es gilt:

(a) Λ ⊆ H+(z, γ) ist aquivalent zu

A>z + c ≥ 0n und b>z + γ ≤ 0 . (3.2)

24

(b) Ist (γ, z) ∈ R×Rm zulassig fur (D’), so ist y = −z zulassig fur das folgende Problem,das wir (D) nennen:

(D) Maximiere b>y auf N ={y ∈ Rm : A>y ≤ c

}Ist (γ∗, z∗) ∈ R × Rm Losung von (D’) mit Wert γ∗, so ist y∗ := −z∗ Losung von(D) mit Wert γ∗.

(c) Ist y zulassig fur (D), so ist (γ,−y) zulassig fur (D’) fur alle γ ≤ b>y. Ist y∗ optimalfur (D), so ist (b>y∗,−y∗) optimal fur (D’).

In diesem Sinn sind also (D) und (D’) aquivalent.

Beweis: (a) Λ ⊆ H+(z, γ) ist aquivalent zu c>x+ (Ax− b)>z ≥ γ fur alle x ≥ 0n, d.h.(c+ A>z

)>x ≥ γ + b>z fur alle x ≥ 0n . (3.3)

Wir bemerken zunachst, dass (3.2) die Bedingungen (3.3) implizieren. Es gelte umgekehrt(3.3). Fur x = 0n folgt hieraus erst einmal γ+b>z ≤ 0. Es verbleibt A>z+c ≥ 0n zu zeigen.Angenommen, dies gelte nicht. Dann gibt es Index j0 ∈ {1, . . . , n} mit

(A>z

)j0

+ cj0 < 0.

Setze xj = 0 fur j 6= j0 und xj0 = t fur ein t > 0. Dann ist nach (3.3):

t(A>z + c

)j0≥ γ + b>z .

Fur t→∞ liefert dies jedoch einen Widerspruch.

(b) Sei (γ, z) ∈ R×Rm zulassig fur (D’), d.h. Λ ⊆ H+(z, γ). Nach (a) ist A>z+c ≥ 0n undb>z+γ ≤ 0. Fur y = −z gilt dann A>y ≤ c und b>y ≥ γ. Daher ist y zulassig fur (D). Istjetzt (γ∗, z∗) ∈ R× Rm optimal fur (D’), so ist y∗ = −z∗ zulassig fur (D) und b>y∗ ≥ γ∗.Fur beliebiges y ∈ N ist (b>y,−y) zulassig fur (D’). Daher ist b>y ≤ γ∗ ≤ b>y∗. Daherist y∗ optimal fur (D).

(c) Ist y zulassig fur (D), so ist offenbar (γ,−y) zulassig fur (D’) fur jedes γ ≤ b>y. Ist y∗

optimal fur (D), so ist (b>y∗,−y∗) zulassig fur (D’). Ist (γ, z) ebenfalls zulassig fur (D’),so ist −z zulassig fur (D) und b>z + γ ≤ 0, also γ ≤ −b>z ≤ b>y∗. Dies bedeutet genau,dass (b>y∗,−y∗) optimal fur (D’) ist. 2

Dieses lineare Optimierungsproblem (D) liegt in der zweiten Normalform vor. Wir wollenzunachst das duale Problem zu (D) ermitteln: Daher schreiben wir wie gewohnt y =y+ − y− mit y+, y− ≥ 0, und fuhren Schlupfvariable z = c − A>y ≥ 0 ein. Damit lautet(D):

Minimiere

−b

b

0n

>

y+

y−

z

unter den Nebenbedingungen

y+

y−

z

≥ 02m+n und[−A> | A> | −In

]y+

y−

z

= −c .

25

Das dazu duale Problem lautet:

Maximiere (−c)>x unter den Nebenbedingungen−A

A

−In

x ≤−b

b

0n

, also Ax = b und x ≥ 0n .

Daher ist das duale Problem zu (D) wieder (P).

3.3 Die Dualitatssatze

In diesem Abschnitt wollen wir Beziehungen zwischen (P) und (D) aufstellen. Wir formu-lieren noch einmal die beiden Probleme:

(P) Minimiere c>x auf M = {x ∈ Rn : Ax = b, x ≥ 0} ,

(D) Maximiere b>y auf N ={y ∈ Rm : A>y ≤ c

}Wir beginnen mit einem ersten ganz einfachen, aber sehr wichtigen Satz.

Satz 3.4 (schwacher Dualitatssatz)

Die Probleme (P) und (D) seien beide zulassig, d.h. M 6= ∅ und N 6= ∅. Dann gilt:

(a) Sind x ∈ M und y ∈ N , so ist b>y ≤ c>x. Dies bedeutet, dass die Zielfunktionswertedes dualen Problems immer unterhalb der des primalen Problems liegen.(b) Beide Probleme (P) und (D) besitzen Losungen.(c) Gilt ferner fur x∗ ∈M und y∗ ∈ N , dass b>y∗ = c>x∗, so ist x∗ eine Losung von (P)und y∗ eine Losung von (D).

Beweis: (a) Sei x ∈M , y ∈ N . Dann ist

b>y = (Ax)>y = x>︸︷︷︸≥0

(A>y)︸ ︷︷ ︸≤c

≤ x>c .

(b) Dies folgt aus dem Existenzsatz 3.1, denn mit (a) ist ja inf(P ) ≥ b>y > −∞ fur jedesy ∈ N . Genauso schliesst man fur (D).(c) Ist etwa x ∈ M beliebig, so ist nach (a): c>x ≥ b>y∗ = c>x∗. Dies bedeutet, dass x∗

optimal ist. Genauso schliesst man fur (D). 2

Folgerung: Mit diesem Satz konnen wir die primalen Kosten sofort nach unten abschatzen.Er liefert uns auch einen Test auf Optimalitat.

Satz 3.5 (starker Dualitatssatz)

Gegeben seien (P) und (D). Dann gilt:

(1) Sind (P) und (D) zulassig (d.h. M 6= 0 und N 6= 0), so besitzen (P) und (D)optimale Losungen x∗ ∈M und y∗ ∈ N und b>y∗ = c>x∗, d.h. min(P ) = max(D).

26

(2) Ist (P) zulassig, (D) nicht zulassig, so ist inf(P ) = −∞.

(3) Ist (D) zulassig, (P) nicht zulassig, so ist sup(D) = +∞.

Beweis: (1) Die Existenz von Losungen von (P) und (D) folgt aus dem schwachen Dua-litatssatz 3.4. Außerdem liefert er max(D) ≤ min(P ). Wir nehmen max(D) < min(P ) an.Dann ist

(max(D), 0m

)/∈ Λ, wobei wir wieder den Kegel Λ von (3.1) benutzen. Da die-

ser ja abgeschlossen ist, konnen wir wieder den Trennungssatz anwenden und den Punkt(max(D), 0m

)∈ R× Rm von Λ trennen. Es existiert also (s, z) ∈ R× Rm und γ ∈ R mit

s c>x + z>(Ax− b) ≥ γ > s max(D) fur alle x ≥ 0n .

Fur x ∈ M erhalten wir Ax = b, also s c>x > s max(D) und hieraus s > 0 mit demschwachen Dualitatssatz. Nach Division durch s konnen wir ohne Einschrankung s = 1annehmen. Wir haben also(

c+ A>z)>x − z>b ≥ γ > max(D) fur alle x ≥ 0n .

Wie in der Herleitung von (D) erhalten wir hieraus c + A>z ≥ 0 und −z>b > max(D).Daher ist y := −z ∈ N und y>b > max(D), ein Widerspruch. Daher ist max(D) =min(P ).

(2) Sei jetzt (P) zulassig, also M 6= ∅, und (D) nicht zulassig, also N = ∅. Letzteresbedeutet, dass es kein y ∈ Rm gibt mit A>y ≤ c. Dies impliziert, dass es keine Vektoreny+, y− ∈ Rm, z ∈ Rn gibt mit y+ ≥ 0m, y− ≥ 0m, z ≥ 0n und A>(y+ − y−) + z = c. Diesbedeutet, dass das System

[A> | −A> | In

]y+

y−

z

= c ,

y+

y−

z

≥ 02m+n ,

keine Losung besitzt. Das Farkas-Lemma 2.8 liefert die Existenz einer Losung z ∈ Rn vonA

−A

In

z ≤ 02m+n , c>z > 0 .

Dies bedeutet, dass Az = 0m und z ≤ 0n, sowie c>z > 0. Sei nun x ∈ M beliebig. Dannist auch xt := x− tz ∈M fur alle t > 0 und c>xt = c>x− t c>z −→ −∞, t→ +∞. Alsoist inf(P ) = −∞.

(3) Dies folgt genauso wie (2). Damit ist alles bewiesen. 2

Folgerung: Sind x∗ ∈ M und y∗ ∈ N optimal, so gilt die Komplementaritatsbedin-gung:

x∗j = 0 oder (A>y∗)j = cj fur jedes j = 1, . . . , n .

Dies folgt aus der Gleichungskette

0 = c>x∗ − b>y∗ = c>x∗ − x∗>A>y∗ = x∗>[c− A>y∗]

und x∗ ≥ 0 sowie c− A>y∗ ≥ 0.

27

Beispiel 3.6 (Diskretes Tschebyscheff-Problem)

Es seien A ∈ Rm×n und b ∈ Rm, wobei wir m > n annehmen. Wir wollen das uberbe-stimmte Gleichungssystem Ax ≈ b losen. Als Ersatzproblem betrachten wir:

Minimiere ‖Ax− b‖∞ auf Rn !

Dies schreiben wir in bekannter Weise als lineares Optimierungsproblem in der Form

Minimiere x0 unterAx− b ≤ x0 e ,

−Ax+ b ≤ x0 e ,

wobei wieder e = (1, . . . , 1)> ∈ Rm. Dies konnen wir aquivalent umformen zu:

(D) Maximiere c>x unter

−e A

−e −A

x ≤ b

−b

,

wobei x = (x0, x1, . . . , xn)> ∈ Rn+1 und c = −(1, 0, . . . , 0)> ∈ Rn+1. Dieses ist das dualeProblem zu

(P ) Minimiere b>y − b>z unter y ≥ 0 , z ≥ 0 ,

−e> −e>

A> −A>

yz

= c ,

d.h.

Minimiere b>(y − z) unter y, z ≥ 0 und e>(y + z) = 1 sowie A>(y − z) = 0 .

Offenbar sind (P) und (D) zulassig, also losbar mit inf(P ) = sup(D). Wir machendie zusatzliche Voraussetzung, dass das uberbestimmte Gleichungssystem Ax = b kei-ne Losung besitzt. Dies bedeutet x∗0 > 0. Aus der Komplementaritatsbedingung folgt

y∗i = 0 oder (Ax∗ − b)i = x∗0 fur jedes i = 1, . . . ,m ,

z∗i = 0 oder (Ax∗ − b)i = −x∗0 fur jedes i = 1, . . . ,m .

Setzen wir I± :={i ∈ {1, . . . ,m} : (Ax∗ − b)i = ±x∗0

}, so ist I+ ∩ I− = ∅ und

y∗i = 0 fur alle i /∈ I+ und z∗i = 0 fur alle i /∈ I− .

Definiere ui fur i ∈ I := I+ ∪ I− durch

ui :=

{y∗i , i ∈ I+ ,

z∗i , i ∈ I− .

Dann ist ui ≥ 0 und∑

i∈I ui = 1 und y∗i − z∗i = sign[(Ax∗ − b)i

]ui fur alle i ∈ I. Die

Bedingung A>(y∗ − z∗) = 0 hat dann die Form∑i∈I

ui sign[(Ax∗ − b)i

]a>i∗ = 0 , also 0 ∈ conv

{σia

>i∗ : i = 1, . . . ,m

}mit σi = sign

[(Ax∗−b)i

]fur i = 1, . . . ,m. Aus diesen Bedingungen kann man dann einen

Algorithmus basteln, der das Ausgleichsproblem lost. (Im kontinuierlichen Fall ist diesder beruhmte Remez-Algorithmus der Approximationstheorie.) Allerdings liefert dies derSimplexalgorithmus in einfacherer Weise.

28

4 Anwendungen in der Graphen- und Spieltheorie

4.1 Das Max-Flow-Min-Cut-Theorem der Flussmaximierung

Wir betrachten jetzt gerichtete und bewertete Graphen. Wir stellen uns vor, die Kan-ten seien Ol-Pipelines, die an gewissen Punkten zusammenstoßen und sich verzweigen.Bei Q (wie Quelle) werde Ol gefordert, zur Ecke S (wie Senke) soll so viel wie moglichtransportiert werden. Dabei mussen Kapazitatsbeschrankungen der Kanten berucksichtigtwerden. Solch ein Graph konnte etwa so aussehen:

•Q

��

��

��

m4•

@@

@@

@@R

m3

?

m5 •�

��

���

m3

??

m2•

@@

@@

@@R

m2

m2•�

��

���

@@

@@

@@R

m4 m1-

m6•

?

m4HH

HHHHY m2 ������� m4

•S

JJ

JJ

JJ

JJJ

m4 m5

Dieser Graph wird durch die Kapazitatsmatrix C ∈ Rn×n beschrieben. Die Ecken (oderKnoten) des Graphen entsprechen den Punkten 1, . . . , n, und cij gibt an, wieviel maximalvon Knoten i nach Knoten j transportiert werden kann. Naturlich setzen wir cij ≥ 0 furalle i, j voraus. cij = 0 bedeutet hierbei, dass es uberhaupt keine Kante von i nach jgibt. Die Ecken seien so nummeriert, dass i = 1 die Quelle und i = n die Senke ist. Wirsetzen voraus, dass keine Kanten in die Quelle hinein und keine Kanten aus der Senkeherausfuhren, d.h. ci1 = cni = 0 fur alle i = 1, . . . , n. Wir setzen auch voraus, dass 1bzw. n die einzige Quelle bzw. Senke ist, d.h.

∑ni=1 cij > 0 fur alle j = 2, . . . , n, und∑n

j=1 cij > 0 fur alle i = 1, . . . , n − 1. Außerdem sei cii = 0 fur alle i = 1, . . . , n. Diesbedeutet, dass die Knoten selbst keine Kapazitaten haben sollen. Schließlich setzen wirnoch cijcji = 0 voraus fur alle i, j, d.h. auf jeder Kante kann der Fluss hochstens in eineRichtung fließen. Eine Matrix C = (cij) ∈ Rn×n mit diesen Eigenschaften nennen wir eineKapazitatsmatrix.

Jetzt konnen wir definieren:

29

Definition 4.1 Sei C = (cij) ∈ Rn×n eine Kapazitatsmatrix. Ein Fluss ist eine MatrixX = (xij) ∈ Rn×n mit 0 ≤ xij ≤ cij fur alle i, j = 1, . . . , n und

n∑i=1

xij =n∑

k=1

xjk fur alle j = 2, . . . , n− 1 . (4.1)

Die Bedingung (4.1) bedeutet, dass alles, was in den Knoten j hineinfließt, auch wiederhinausfließt. Zunachst zeigen wir, dass alles bei der Senke

”ankommt“, was aus der Quelle

hinausfließt:

Lemma 4.2 Es giltn∑

j=1

x1j =n∑

k=1

xkn .

Diese Große heißt der Wert des Flusses X und wird mit W (X) bezeichnet.

Beweis: Wir summieren (4.1) auf und beachten, dass xnj = xj1 = 0 ist fur alle j:

n−1∑j=2

[x1j +

n−1∑i=2

xij

]=

n−1∑j=2

[xjn +

n−1∑k=2

xjk

].

Die Doppelsummen sind gleich und heben sich weg, also

n−1∑j=2

x1j =n−1∑j=2

xjn .

Addition von x1n und x11 = 0 und xnn = 0 auf beiden Seiten liefert die Behauptung. 2

Damit konnen wir das Fluss-Optimierungsproblem formulieren:

(P) Maximiere W (X) =n∑

k=1

xkn unter

0 ≤ xij ≤ cij fur alle i, j = 1, . . . , n undn∑

i=1

xij =n∑

k=1

xjk fur alle j = 2, . . . , n− 1 .

Jetzt kommen wir zur Definition eines Schnittes.

Definition 4.3 Sei C = (cij) ∈ Rn×n eine Kapazitatsmatrix. Ein Schnitt (J−, J+) isteine Zerlegung J+ ∪ J− = {1, . . . , n} mit J+ ∩ J− = ∅ und 1 ∈ J− und n ∈ J+. DieKapazitat eines Schnittes (J−, J+) sei definiert durch

K(J−, J+) :=∑i∈J−

j∈J+

cij .

Dann konnen wir zeigen:

30

Satz 4.4 Sei C = (cij) ∈ Rn×n eine Kapazitatsmatrix. Fur jeden Schnitt (J−, J+) undjeden Fluss X gilt:

W (X) =∑i∈J−

j∈J+

xij −∑i∈J−

j∈J+

xji ≤ K(J−, J+) . (4.2)

Beweis: Da xi1 = 0 und n /∈ J−, so ist mit (4.1):

∑j∈J−

n∑i=1

xij =∑

j∈J−\{1}

n∑i=1

xij =∑

j∈J−\{1}

n∑k=1

xjk =∑j∈J−

n∑k=1

xjk −n∑

k=1

x1k︸ ︷︷ ︸= W (X)

,

also

W (X) =∑j∈J−

n∑k=1

xjk −∑j∈J−

n∑i=1

xij

=∑

j,k∈J−

xjk +∑j∈J−

k∈J+

xjk −∑

j,i∈J−

xij −∑j∈J−

i∈J+

xij

=∑j∈J−

k∈J+

xjk −∑j∈J−

i∈J+

xij

≤∑j∈J−

k∈J+

cjk = K(J−, J+) .

2

Damit haben wir einen schwachen Dualitatssatz bewiesen: Der Maximierung des Flus-ses steht die Minimierung der Kapazitat des Schnittes gegenuber. Unser Ziel ist es, denentsprechenden starken Dualitatssatz zu beweisen, d.h.

max{W (X) : X Fluss

}= min

{K(J−, J+) : (J−, J+) Schnitt

}.

Dies geschieht durch Anwendung des starken Dualitatssatzes der linearen Optimierung.Um das Fluss-Maximierungsproblem als lineares Optimierungsproblem in der Standard-form zu schreiben, fassen wir die Matrizen C undX als Vektoren c und x im Rn2

auf, indemwir die Spalten untereinander schreiben. Wir setzen also xi+(j−1)n = xij fur i, j = 1, . . . , n

und genauso c. Mit d ∈ Rn2, definiert durch

d =(0, . . . , 0|0, . . . , 0| · · · |0, . . . , 0|1, . . . , 1

)>,

ist W (X) =n∑

k=1

xkn = d>x. Hier haben wir eine offensichtliche Blockschreibweise benutzt.

31

Die Matrizen A,B ∈ R(n−2)×n2seien definiert durch

A =

0 · · · 0 1 · · · 1 0 · · · 0 0 · · · 0 0 · · · 0

0 · · · 0 0 · · · 0 1 · · · 1 0 · · · 0 0 · · · 0...

...... · · · ...

...

0 · · · 0 0 · · · 0 0 · · · 0 1 · · · 1 0 · · · 0

B =

0 1 0 · · · 0 0 0 1 0 · · · 0 0 0 1 0 · · · 0 0

0 0 1 · · · 0 0 0 0 1 · · · 0 0 0 0 1 · · · 0 0...

... · · · ...

0 0 0 · · · 1 0 0 0 0 · · · 1 0 0 0 0 · · · 1 0

Dann ist das Fluss-Maximierungsproblem (P) aquivalent zu

(P) Maximiere d>x unter x ≥ 0 , x ≤ c , (A−B)x = 0 .

Wir wollen das duale Problem herleiten. Dazu mussen wir das vorliegende Problem mitHilfe von Schlupfvariablen z = c− x auf Standardform transformieren:

Minimiere

−d0

> x

z

unter

x

z

≥ 0 ,

I I

A−B 0

x

z

=

c

0

Die Variablen des dualen Problems bezeichne ich mit y ∈ Rn2und u ∈ Rn−2. Dann ist

das duale Problem:

Maximiere y>c unter

I A> −B>

I 0

y

u

≤ −d

0

, d.h.

Maximiere y>c unter y + (A> −B>)u ≤ −d , y ≤ 0 ,

d.h. nach Ersetzung von y durch −y,

(D) Minimiere y>c unter (A> −B>)u+ d ≤ y , y ≥ 0 .

32

Wir berechnen jetzt v = (A> −B>)u+ d ∈ Rn2. Zunachst ist

A> =

0 0 · · · 0...

......

0 0 · · · 0

1 0 · · · 0...

......

1 0 · · · 0

0 1 · · · 0...

......

0 1 · · · 0...

0 0 · · · 1...

......

0 0 · · · 1

0 0 · · · 0...

......

0 0 · · · 0

, B> =

0 0 · · · 0

1 0 · · · 0

0 1 · · · 0...

......

0 0 · · · 1

0 0 · · · 0...

0 0 · · · 0

1 0 · · · 0

0 1 · · · 0...

......

0 0 · · · 1

0 0 · · · 0

=

H...

H

mit H =

0 0 · · · 0

1 0 · · · 0

0 1 · · · 0...

......

0 0 · · · 1

0 0 · · · 0

.

Die Komponenten des Vektors u ∈ Rn−2 bezeichnen wir mit u2, . . . , un−1 und fuhren denVektor e := (1, . . . , 1)> ∈ Rn ein. Damit ist

v =

−Hu

u2e−Hu...

un−1e−Hu

e−Hu

.

Jetzt erganzen wir u durch Setzen von u1 = 0 und un = 1 zu einem Vektor im Rn underganzen H durch Einfugen einer ersten Nullspalte und einer letzten Nullspalte zu einerMatrix H ∈ Rn×n. Dann ist

v =

u1e− Hu

...

une− Hu

Jetzt schreiben wir den Vektor v ∈ Rn2

wieder als Matrix V ∈ Rn×n:

V =[u1e− Hu | · · · |une− Hu

].

33

Damit ist

Vij =

uj − ui , fur i = 1, . . . , n− 1 ,

uj , fur i = n ,und j = 1, . . . , n .

Damit konnen wir das duale Problem wieder in Matrizenform schreiben. Die Matrix Y ∈Rn×n entsteht naturlich aus y indem die Blocke von y als Spalten in Y gespeichert werden.Dann ist (D) aquivalent zu:

(D) Minimieren∑

i,j=1

cij yij unter yij ≥ uj − ui und yij ≥ 0 fur i, j = 1, . . . , n ,

und u1 = 0, un = 1 .

Man beachte, dass wir hier ausgenutzt haben, dass die Summation bzgl. i wegen cnj = 0nur bis n− 1 geht (d.h. der Wert von ynj ist uninteressant).

Der starke Dualitatssatz liefert die Existenz von Losungen X∗ des primalen und (Y ∗, u∗) ∈Rn×n×Rn des dualen Problems mit max(P ) = W (X∗) = min(D). Wir konstruieren jetzteinen optimalen Schnitt. Dazu benotigen wir entscheidend die Komplementaritatsbedin-gung vom Kapitel 3. Diese besagt in unserem Fall, formuliert zunachst in Vektorform mitSchlupfvariablen: xi = 0 oder vi = yi fur jedes i, und zi = 0 oder yi = 0 fur jedes i.Umgeschrieben in die Matrizenform bedeutet dies:

x∗ij = 0 oder u∗j − u∗i = y∗ij fur i = 1, . . . , n− 1, j = 1, . . . , n, (4.3a)

x∗ij = cij oder y∗ij = 0 fur jedes i, j = 1, . . . , n . (4.3b)

Wir definieren nun den Schnitt (J−, J+) durch J− = {i : u∗i ≤ 0} und J+ = {i : u∗i > 0}.Dann ist 1 ∈ J− und n ∈ J+ und (J−, J+) ein Schnitt. Zur Berechnung seiner Kapazitatsei i ∈ J− und j ∈ J+ sowie cij > 0. Ware x∗ij < cij, so nach (4.3b) y∗ij = 0, alsou∗j−u∗i ≤ y∗ij = 0, ein Widerspruch zu i ∈ J− und j ∈ J+. Also ist x∗ij = cij fur alle i ∈ J−und j ∈ J+ mit cij > 0. Daher ist

K(J−, J+) =∑i∈J−

j∈J+

cij>0

cij =∑i∈J−

j∈J+

x∗ij = W (X∗) +∑i∈J−

j∈J+

x∗ji .

Wir zeigen schließlich, dass die letzte Summe verschwindet. Sei wieder i ∈ J− und j ∈ J+.Ware x∗ji > 0, so ware nach (4.3a) u∗i − u∗j = y∗ji ≥ 0, also u∗i ≥ u∗j , ein Widerspruch zui ∈ J− und j ∈ J+. Daher ist x∗ji = 0 fur alle i ∈ J− und j ∈ J+. Damit ist das folgendeMax-Flow-Min-Cut-Theorem bewiesen:

Satz 4.5 Es gilt:

max{W (X) : X Fluss

}= min

{K(J−, J+) : (J−, J+) Schnitt

}.

34

4.2 Der Algorithmus von Ford-Fulkersen

Dieser Abschnitt wird in der Vorlesung aus Zeitgrunden weggelassen.

Wir beginnen mit einem kleinen Beispiel, an dem wir den Algorithmus erlautern. DieZahlen in den Kreisen beschreiben die Kapazitaten der Kanten.

Man beginne mit einem (kleinen) Fluss.

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m2 m3

m1 m2m2 m1

1

1

1

Hier ist 1 =Q und 5 =S. Ich schicke zunachst einen Fluss mit Wert 1 von 1 uber 2 und

3 nach 5 und markiere ihn, indem ich die 1 an die Kante auf der Seite der Kapazitatschreibe. Diesen merke ich mir und zeichne einen neuen Graphen, in dem ich außer demFluss nur noch die Uberschusskapazitaten eintrage (oberhalb bzw. rechts vom Pfeil):

35

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m1 m3

m0 m2m2 m0

1

1

1

Ich versuche jetzt, einen weiteren Fluss durch das Netzwerk zu schicken, etwa der Starke1 von 1 uber 2 nach 5 . Auch diesen merke ich mir und zeichne einen neuen Graphen:

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m0 m3

m0 m2m1 m0

2

1

11

Wie geht es weiter? Ich kann versuchen, einen Fluss von 1 uber 4 nach 3 zu schicken.Dann geht es aber nicht weiter. Wir haben bisher noch keine Moglichkeit, eine fruhergetroffene Entscheidung ruckgangig zu machen. Von 2 kommt ja ein Fluss der Starke

1. Ich kann diesen”ubernehmen“, also meinen neuen Fluss von 1 uber 4 und 3 nach

5 zu schicken und den alten von 1 uber 2 und 3 nach 5”umzuleiten“. Dies wird

in systematischer Weise anders realisiert. Wir betrachten allgemein eine Kante von A

nach B mit der ursprunglichen Kapazitat 3. Ich kann dann der Kante von B nach A

36

die Kapazitat 0 zuordnen (von B nach A darf ja nichts fließen). Es sei jetzt ein Fluss

der Starke 2 vorhanden. Dann ist die Uberschusskapazitat der Kante von A nach B

gerade 3-2=1. Die Uberschusskapazitat der entgegengesetzten Kante von B nach A ist

jetzt 0+2=2, denn ich kann ja einen zusatzlichen Fluss bis zur Starke 2 von B nach Aschicken, indem ich den ursprunglichen entsprechend reduziere. Im folgenden Graphenzeichne ich die Uberschusskapazitaten der entgegengesetzten Kanten unterhalb bzw. linksein:

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m0 m2 m3m0m0m1

m2m0m1m1 m0m1

2

1

11

Ich kann jetzt einen Fluss der Starke 1 von 1 uber 4 und 3 und 2 nach 5 schickenund erhalte:

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m0 m2 m2m1m1m0

m1m1m0m2 m0m1

2 1

1

1

1

21

37

Die Flusse zwischen 2 und 3 heben sich auf, und wir erhalten

1

2 3 4

5

@@

@@

@@

@@R

��

��

��

��

@@

@@

@@

@@R

- �

?

m0 m2 m2m1m1m0

m1m1m0m2 m0m1

2 1

1

21

Dieser Fluss ist optimal, da der Schnitt durch die Kanten 25 und 35 die Kapazitat 3 hat.Damit haben wir den Algorithmus von Ford-Fulkerson beschrieben.

Wir wollen dies jetzt formalisieren.

Definition 4.6 Sei X ein Fluss. Ein ungesattigter Pfad P vom Knoten j zumKnoten k ist ein Indexvektor P = (p1, . . . , pm) ∈ Nm mit pi ∈ {1, . . . , n}, i = 1, . . . ,m,p1 = j, pm = k, und fur jedes i = 1, . . . ,m− 1 gilt:

• xpipi+1< cpipi+1

, falls cpipi+1> 0, und

• xpi+1pi> 0, falls cpipi+1

= 0.

Jetzt konnen wir beweisen:

Satz 4.7 (Ford-Fulkerson) Es gilt:

max{W (X) : X Fluss

}= min

{K(J−, J+) : (J−, J+) Schnitt

}.

Beweis: Sei X ein maximaler Fluss. Definiere die Menge

J− := {1} ∪{k ∈ {2, . . . , n} : es gibt ungesattigten Pfad von 1 nach k

}.

Wir zeigen zunachst n /∈ J−. Annahme, n ∈ J−. Dann gibt es also einen ungesattigtenPfad P = (p1, . . . , pm) von 1 nach n. Mit I1 und I2 bezeichnen wir die

”Vorwarts-“ und

die”Ruckwartskanten“, d.h.

I1 :={i ∈ {1, . . . ,m− 1} : cpipi+1

> 0}, und

I2 :={i ∈ {1, . . . ,m− 1} : cpipi+1

= 0}.

38

Dann ist I1 ∪ I2 = {1, . . . ,m− 1} und I1 ∩ I2 = ∅. Setze

d := min

({cpipi+1

− xpipi+1: i ∈ I1

}∪{xpi+1pi

: i ∈ I2})

.

Dann ist d > 0. Definiere einen neuen Fluss X durch

xk` :=

xpipi+1

+ d , falls k = pi und ` = pi+1 fur ein i ∈ I1 ,

xpi+1pi− d , falls k = pi+1 und ` = pi fur ein i ∈ I2 ,

xk` , sonst

Dann ist X wirklich ein Fluss, denn fur k ∈ {2, . . . , n − 1} konnen die folgenden Falleauftreten:

• 1. Fall: k /∈ {p1, . . . , pm}. Dann ist xk` = xk` fur alle ` = 1, . . . , n, also

n∑`=1

xk` =n∑

`=1

xk` =n∑

`=1

x`k =n∑

`=1

x`k .

• 2. Fall: k = pi fur ein i ∈ {2, . . . ,m− 1}. Es ist

xpipi−1+ xpipi+1

= xpipi−1+ xpipi+1

+ ρi ,

wobei

ρi :=

d , falls i, i− 1 ∈ I1 ,

−d , falls i, i− 1 ∈ I2 ,

0 , sonst

undxpi−1pi

+ xpi+1pi= xpi−1pi

+ xpi+1pi+ ρi ,

alson∑

`=1

xpi` =n∑

`=1

xpi` + ρi =n∑

`=1

x`pi+ ρi =

n∑`=1

x`pi.

Also gilt auch in diesem Fall die Gleichgewichtsbedingung.

Schließlich ist

W (X) =n∑

`=1

x1` = xp1p2 +n∑

` 6=p2

x1`

= xp1p2 + d +n∑

` 6=p2

x1` = W (X) + d

> W (X) ,

da xp1p2 = xp1p2 + d wegen 1 ∈ I1 und 1 /∈ I2. (Sonst ware cp1p2 = 0, also xp21 = xp2p1 > 0,und dies geht nicht.) Also ist X nicht maximal, ein Widerspruch. Also ist n /∈ J−.

39

Definiere J+ := {1, . . . , n} \ J−. Dann ist (J−, J+) ein Schnitt. Sei k ∈ J− und ` ∈ J+.Wir behaupten, dass sowohl xk` = ck` als auch x`k = 0 ist. Ware namlich xk` < ck`

oder x`k > 0, so konnen wir den Pfad P = (p1, . . . , pm) von 1 nach k durch pm+1 := `verlangern: Im Fall ck` = 0 kann nur x`k > 0 sein, und im Fall ck` > 0 ist c`k = 0, alsokann nur xk` < ck` auftreten. Dies sind die Bedingungen fur einen ungesattigten Pfad.Damit ist nach der ersten Gleichung im schwachen Dualitatssatz:

W (X) =∑k∈J−

`∈J+

[xk` − x`k

]=∑k∈J−

`∈J+

ck` = K(J−, J+) .

Dies ist zu zeigen 2

Wir beschreiben jetzt den am Beispiel erlauterten Algorithmus. Dazu werden den im Laufedes Verfahrens erreichten Ecken i gewisse Marken (ai, bi) zugordnet. ai ist die Nummerdes Vorgangers der Ecke i, und bi der Wert des bis Ecke i durchgeschickten Flusses.

40

Wahle Fluss X, z.B. X = 0Setze eij := cij − xij ∀i, j

?

M := {1}, a1 := 0, b1 :=∞

?

STOPX maximal

nein

JJJ

JJJ

∃j ∈M, k 6∈M mit ejk > 0?

?

ja

M ←M ∪ {k}, ak = j

bk = min{ejk, bj}

?

JJ

JJ

?ja

n ∈M?nein

-

6�

Erzeuge einen Pfad (p1, . . . , pm) ∈ Nm

mit p1 = 1, pm = n, api+1= pi, i = 1, . . . ,m− 1

?

Ersetze xpipi+1und epipi+1

und epi+1pidurch

xpipi+1+ bn, epipi+1

− bn, epi+1pi+ bn, falls cpipi+1

> 0

xpipi+1− bn, epipi+1

+ bn, epi+1pi− bn, falls cpipi+1

= 0

?

Ersetze fur pi, pi+1 mit xpipi+1> 0 und xpi+1pi

> 0:

xpipi+1durch max{xpipi+1

− xpi+1pi, 0}

xpi+1pidurch max{xpi+1pi

− xpipi+1, 0}

epipi+1durch epipi+1

+ min{xpipi+1, xpi+1pi

}epi+1pi

durch epipi+1+ min{xpipi+1

, xpi+1pi}

-

6�

41

4.3 Ausflug in die Spieltheorie

In diesem Abschnitt betrachten wir Anwendungen der Optimierungstheorie in der Spiel-theorie, speziell auf 2-Personen-Nullsummenspiele (Matrix-Spiele).

Spielsituation: Spieler P1 hat Alternativen a1, . . . , an, Spieler P2 die Alternativen b1, . . . , bm.Wahlt P1 die Aktion aj und P2 die Aktion bi, so ergibt ich die Auszahlung aij von P1 anP2. Damit ist das Spiel vollstandig durch die Matrix

A =

a11 · · · a1n

......

am1 · · · amn

beschrieben, daher der Name Matrix-Spiel. (Die Zahlung aij von P1 an P2 ist das, was P2

erhalt, daher der Name Nullsummenspiel. Es werden keine Zahlungen von außen getatigt.)aij < 0 bedeutet, P2 zahlt −aij an P1.

Als Beispiel betrachten wir als erstes das bekannte Knobelspiel”Stein, Schere, Papier“.

Wir konnen es durch die folgende Tabelle darstellen:

P2 \ P1 Stein Schere Papier

Stein 0 1 –1

Schere –1 0 1

Papier 1 –1 0

Dies bedeutet offensichtlich: Spielt der Spieler P1 etwa”Papier“, und der Spieler P2 ”

Sche-re“ so zahlt P1 an P2 eine Einheit (

”Schere schneidet Papier“). Die Tabelle liefert also

die Auszahlungsmatrix von P1 an P2

A =

0 1 −1

−1 0 1

1 −1 0

.

Spiele sind fur okonomische Anwendungen interessant, wenn sie vielfach in gleichartigerWeise gespielt werden. Wie soll man sich dann langfristig (im Mittel) vernunftig verhalten?

Dazu wahlen P1 und P2 Strategien

x = (x1, . . . , xn)> , y = (y1, . . . , ym)> ,

mit xj ≥ 0,∑n

j=1 xj = 1 und analog yi ≥ 0,∑m

i=1 yi = 1. Die Zahl xj gibt die relativeHaufigkeit (Wahrscheinlichkeit) dafur an, mit der die Aktion xj eingesetzt wird. Die Stra-tegie x = (0, . . . , 0, 1, 0, . . . , 0)> =: e(j) (also j−ter Einheitsvektor) bedeutet, dass immeraj benutzt wird (reine Strategie, die allgemeinen Vektoren heißen entsprechend gemischteStrategien). Die Zahl

Φ(x, y) := y>Ax =m∑

i=1

n∑j=1

aij yi xj

42

gibt die erwartete (mittlere) Auszahlung an, die P1 an P2 zahlt, wenn die Strategien xund y benutzt werden.

Beispiel Knobeln (s.o.): Hier stellt man schnell fest (als Spieler), dass x∗ =(

13, 1

3, 1

3

)>und y∗ =

(13, 1

3, 1

3

)>”vernunftige“ Strategien sind. Es ist Φ(x∗, y∗) = 0.

Wie soll sich P1 optimal verhalten? P1 sollte eine Strategie x ∈ Rn suchen mit x ≥ 0,∑nj=1 xj = 1 und minimalem

maxy≥0

y>e=1

y>Ax ,

d.h. er mochte die großtmogliche Auszahlung an P2 minimieren. Hier ist e = (1, 1, . . . , 1)> ∈Rm. Die Existenz des Maximums ist naturlich gesichert, da die Restriktionenmenge kom-pakt und die Zielfunktion stetig ist. Umgekehrt will der Spieler P2 die kleinstmoglicheEinnahme von P1 maximieren, also das Problem losen:

maximiere minx≥0

x>e=1

y>Ax unter y ≥ 0 , y>e = 1 .

Hier ist e = (1, 1, . . . , 1)> ∈ Rn. Wir haben also die folgenden beiden Optimierungspro-bleme:

(P1) Minimiere maxy≥0

y>e=1

y>Ax unter x ≥ 0 , x>e = 1 ,

(P2) Maximiere minx≥0

x>e=1

y>Ax unter y ≥ 0 , y>e = 1 .

Man konnte versuchen, (P1) als lineare Minimierungsaufgabe in der folgenden Form zuschreiben:

Minimiere x0 unter x ≥ 0 , x>e = 1 und

(A>y)>x − x0 ≤ 0 fur alle y ∈ N ,

wobei N := {y ∈ Rm : y ≥ 0 , y>e = 1}. In dieser Form ist dies ein semifinites linearesOptimierungsproblem, da es endlich viele Unbekannte, aber unendliche viele Nebenbe-dingungen hat. Wir fuhren es auf ein finites lineares Optimierungsproblem zuruck undzeigen:

Lemma 4.8 Sei A ∈ Rm×n.

(a) Fur festes x ∈ Rn istmaxy≥0

y>e=1

y>Ax = maxi=1,...,m

(Ax)i .

(b) Fur festes y ∈ Rm ist

minx≥0

x>e=1

y>Ax = minj=1,...,n

(A>y)j .

43

Beweis nur von (b): Fur festes y ∈ Rm ist die linke Seite eine lineare Optimierungsaufgabein Standardform:

Minimiere (A>y)>x unter x ≥ 0 , x>e = 1 .

Wir wissen, dass der Minimalwert in einer Ecke angenommen wird. Die Ecken des Simplex{x ∈ Rn : x ≥ 0, e>x = 1

}sind aber gerade die Einheitsvektoren{

e∗j ∈ Rn : j = 1, . . . , n}

(weshalb?). Wegen (A>y)>e∗j = (A>y)j ist die Behauptung (b)gezeigt. (a) verlauft analog. 2

Daher konnen wir (P1) und (P2) umschreiben in

(P1) Minimiere maxi=1,...,m

(Ax)i unter x ≥ 0 , e>x = 1 ,

(P2) Maximiere minj=1,...,n

(A>y)j unter y ≥ 0 , e>y = 1 ,

oder auch

(P ∗1 ) Minimiere x0 unter x ≥ 0 , e>x = 1 , Ax ≤ x0e ,

(P ∗2 ) Maximiere y0 unter y ≥ 0 , e>y = 1 , A>y ≥ y0e .

Durch die Einfuhrung von Schlupfvariablen bringen wir (P ∗1 ) in die Normalform:

z = x0e− Ax und x0 = x+0 − x−0 mit x±0 ≥ 0 liefert:

Minimiere x+0 − x−0 unter

(x+

0 , x−0 , x, z

)≥ 0 ,

0 0 e>n 0

−em em A Im

x+

0

x−0

x

z

=

1

0m

.

Hier ist also c = (1,−1, 0, . . . , 0)> ∈ R2+n+m. Das hierzu duale Problem ist

Maximiere y0 unter

0 −e>m0 e>m

en A>

0 Im

y0

y

1

−1

0n

0m

,

d.h. mit y = −y:

Maximiere y0 unter y>e = 1 , y ≥ 0 , A>y ≥ y0e ,

und dies ist genau das Problem (P ∗2 ). Damit sind (P1) und (P2) zueinander dual, und wir

haben mit dem starken Dualitatssatz:

44

Satz 4.9 (Hauptsatz der Matrixspiele)

Es gibt x∗ ∈ Rn und y∗ ∈ Rm mit e>x∗ = 1 und e>y∗ = 1 und

y∗>Ax∗ = minx≥0

e>x=1

maxy≥0

e>y=1

y>Ax = maxy≥0

e>y=1

minx≥0

e>x=1

y>Ax =: v .

Diese Große v heißt der Wert des Matrixspiels. Das Matrixspiel heißt fair, wenn derWert Null ist.

Beweis: Die Existenz von optimalen Losungen x∗ und y∗ sowie die Gleichheit der Werteliefert der starke Dualitatssatz. Es bleibt das erste Gleichheitszeichen in der Formel zuzeigen. Es ist

y∗>Ax∗ ≤ maxy≥0

e>y=1

y>Ax∗ = maxi=1,...,m

(Ax∗)i = v ,

y∗>Ax∗ ≥ minx≥0

e>x=1

y∗>Ax = minj=1,...,n

(A>y∗)j = v .

Damit gilt Gleichheit. 2

Eine aquivalente Formulierung liefert den Gleichgewichtssatz von Nash, fur den er1994 den Nobelpreis erhalten hat (

”Beautiful Mind“): Jedes Matrixspiel A besitzt einen

Gleichgewichtspunkt (x∗, y∗) in gemischten Strategien, d.h. es gilt:

Φ(x∗, y) ≤ Φ(x∗, y∗) ≤ Φ(x, y∗) fur alle Strategien x, y .

(Eigentlich besteht seine Leistung in einer Verallgemeinerung dieser Aussage.) Zu Sattel-punktsatzen kommen wir noch im Rahmen der konvexen Optimierung.

Fur eine bestimmte Klasse von Problemen konnen wir sofort sagen, dass sie fair sind.

Satz 4.10 Ist A ∈ Rn×n schiefsymmetrisch, d.h. A> = −A (insbesondere muss A qua-dratisch sein), so ist der Wert des Spiels 0.

Beweis: Es istv = min

x∈Mmaxy∈M

y>Ax = maxy∈M

minx∈M

y>Ax ,

wobei M = {z ∈ Rn : z ≥ 0, e>z = 1}. Ferner ist

y>Ax = x>A>y = −x>Ay ,

alsov = min

x∈Mmaxy∈M

(−x>Ay

)= −max

x∈Mminy∈M

x>Ay = −v

wegen minx

(−f(x)

)= −max

xf(x) und max

x

(−f(x)

)= −min

xf(x). Also ist v = −v, d.h.

v = 0. 2

Als Beispiel betrachten wir das”Stein, Schere, Papier Spiel“:

45

Beispiel 4.11

A =

0 1 −1

−1 0 1

1 −1 0

Da diese Matrix schiefsymmetrisch ist, ist das Knobelspiel fair.

Als zweites Beispiel betrachten wir das Skinspiel:2 P1 und P2 haben je drei Karten undzwar: P1 die Karten Pik As, Karo As, Pik 2, und P2 die Karten Pik As, Karo As undKaro 2. Beide Spieler legen gleichzeitig eine Karte auf den Tisch. P2 gewinnt, wenn dieKarten gleiche Farbe haben, andernfalls P1. Ein As hat den Wert 1, eine Zwei den Wert2. Es wird durch die folgende Tabelle beschrieben:

P2 \ P1 ♦ As ♠ As ♠ 2

♦ As 1 −1 −2

♠ As −1 1 1

♦ 2 2 −1 −2

und hat die Auszahlungsmatrix A =

1 −1 −2

−1 1 1

2 −1 −2

Das Spiel sieht unfair aus, da die Auszahlungsmatrix 5 negative und nur 4 positive Ein-trage hat. Wir werden auf dieses Skinspiel im nachsten Kapitel zuruckkommen.

Besonders einfach sind die sogenannten Sattelpunktspiele.

Definition 4.12 Ein Spiel, beschrieben durch die Matrix A = (aij) ∈ Rm×n, heißt Sat-telpunktspiel, wenn

minj=1,...,n

maxi=1,...,m

aij = maxi=1,...,m

minj=1,...,n

aij .

Weder das Knobelspiel”Stein, Schere, Papier“

A =

0 1 −1

−1 0 1

1 −1 0

noch das Skinspiel

A =

1 −1 −2

−1 1 1

2 −1 −2

sind Sattelpunktspiele, denn es ist fur das Knobelspiel

minj=1,...,3

maxi=1,...,3

aij = min{1, 1, 1} = 1 und maxi=1,...,3

minj=1,...,3

aij = max{−1,−1,−1} = −1 ,

2Nach Kuhn, 1957. Kuhn war Kollege von Nash.

46

und analog fur das Skinspiel. Dagegen beschreibt etwa die Auszahlungsmatrix

A =

3 1 4

2 0 1

−1 −2 −2

ein Sattelpunktspiel.

Satz 4.13 Fur jedes Sattelpunktspiel gibt es optimale Losungen x∗ und y∗, die aus reinenStrategien bestehen. Das bedeutet, dass x∗ und y∗ Einheitsvektoren sind. Genauer gilt:Ist

ai0j0 = maxi=1,...,m

minj=1,...,n

aij ,

so sind x∗ und y∗ mit x∗j = δjj0 und y∗i = δii0 Losungen.

Beweis: Nach Lemma 4.8 ist

minx≥0

x>e=1

maxy≥0

y>e=1

y>Ax = minx≥0

x>e=1

maxi=1,...,m

(Ax)i ≤ minj=1,...,n

maxi=1,...,m

aij

= maxi=1,...,m

minj=1,...,n

aij ≤ maxy≥0

y>e=1

minj=1,...,n

(A>y)j

= maxy≥0

y>e=1

minx≥0

x>e=1

y>Ax .

Der Hauptsatz impliziert uberall Gleichheit. Also ist der Optimalwert

v = maxi=1,...,m

minj=1,...,n

aij = minj=1,...,n

maxi=1,...,m

aij = ai0j0 .

Schließlich sind x∗ und y∗ optimal wegen ai0j0 = y∗>Ax∗. 2

47

5 Das Simplexverfahren fur lineare Optimierungsauf-

gaben

Das Simplexverfahren ist zugeschnitten fur Probleme in der zweiten Normalform, d.h.

(P ) Minimiere f(x) := c>x auf M = {x ∈ Rn : Ax = b , x ≥ 0}.

Hierbei sind c ∈ Rn, A ∈ Rm×n und b ∈ Rm mit m ≤ n gegeben.

Bemerkungen: (i) Jede lineare Optimierungsaufgabe kann in eine aquivalente Form derGestalt (P ) gebracht werden (Einfuhrung von Schlupfvariablen und Ersetzung von nicht-vorzeichenbeschrankten Variablen xj durch uj − vj mit uj ≥ 0, vj ≥ 0).(ii) Ist RangA < m, so sind die Gleichungen

”redundant“, und durch Weglassen geeigneter

Gleichungen wird die Matrix auf vollen Rang gebracht. Vom theoretischen Gesichtspunkther kann man also ohne Beschrankung RangA = m annehmen.

5.1 Das Gauß-Jordan Verfahren

Das Gleichungssystem Ax = b ist zu losen, wobei wieder A ∈ Rm×n und b ∈ Rm gegebensind und x ∈ Rn gesucht ist. Es seim ≤ n. Wir fordern nicht unbedingt, dass RangA = mund ignorieren auch die Vorzeichenbedingung x ≥ 0..Fur Ax = b fuhrt man die abkurzende Schreibweise uber Gauß-Jordan Tableausein:

a11 a12 · · · a1n b1...

......

...

am1 am2 · · · amn bm

Das Gauß-Jordan Verfahren besteht aus:

(i) Pivotwahl: Hier kann jedes von 0 verschiedene Element links von der b−Spalte ge-nommen werden.

(ii)”Leerraumen“ der pivotisierten Spalte (ober- und unterhalb des Pivotelements) und

Normierung des Pivotelements auf 1.

(iii) neuer Pivotwahl unter allen Zeilen, die noch kein Pivotelement enthalten. Sind alleZeilen pivotisiert oder bestehen nur aus Nullen, so STOP.

(iv) weiter mit (ii).

Beispiel 5.1 Bestimme die allgemeine Losung des Gleichungssystems

x1 + x2 + x3 − x4 = 1

4x1 + 5x2 + 5x3 + 2x4 = 0

x1 − 2x2 − 5x4 = 5

48

Wir erhalten die Folge von Tableaus:

1 1 1 −1 1

4 5 5 2 0 5∗ 1. Gl. abziehen!

1 −2 0 −5 5

1 1 1 −1 1 2. Gl. addieren!

−1 0 0 7 −5

1 −2 0 −5 5 2. Gl. addieren!

0 1 1 6 −4

−1 0 0 7 −5 ∗(−1)

0 −2 0 2 0 : (−2)

0 1 1 6 −4 3. Zeile abziehen

1 0 0 −7 5

0 1 0 −1 0

0 0 1 7 −4

1 0 0 −7 5

0 1 0 −1 0

Jetzt sind wir fertig. Ausgeschrieben heißt das Gleichungssystem:

x3 + 7x4 = −4

x1 − 7x4 = 5

x2 − x4 = 0

Damit kann die allgemeine Losung angegeben werden. Als Parameter nimmt man hier dieVariable x4. Diese heißt auch freie Variable im Gegensatz zu den abhangigen Variablenx1, x2 und x3. Damit ist x = (5 + 7t, t,−4 − 7t, t)> ∈ R4, t ∈ R, die allgemeine Losungund

dim KernA = 1 und RangA = 3 .

Allgemein ist r = RangA die Anzahl der Pivotelemente und n− r die Anzahl der freienVariablen.

Interessant ist die spezielle Losung, die man erhalt, wenn man alle freie Variablen auf 0setzt. Fur unser Beispiel ware dies: x = (5, 0,−4, 0)>. Wie erhalt man sie

”mechanisch“?

49

Die Variablen xj, die zu den unpivotisierten Spalten des Tableaus gehoren, setze man auf0. In den anderen Variablen steht die rechte Seite b

”geeignet“ permutiert.

Obwohl wir mit dem Gleichungssystem fertig sind, konnen wir trotzdem noch weitermachen und weitere

”spezielle“ Losungen suchen, etwa:

0 0 1 7 −4

1 0 0 −7 5

0 1 0 −1 0

0 0 1/7 1 −4/7

1 0 1 0 1

0 1 1/7 0 −4/7

Jetzt erhalten wir als spezielle Losung x3 = 0 und x1 = 1, x2 = −4/7, x4 = −4/7.

Das Simplexverfahren (in der Phase II) sucht diese sogenannten Basislosungen ab!

5.2 Idee des Simplexverfahrens am speziellen Beispiel

Maximiere 20x1 + 60x2 unter den Nebenbedingungen1 1

5 10

2 10

(x1

x2

)≤

120

700

520

,

(x1

x2

)≥(

0

0

).

Zunachst transformieren wir dieses Problem auf die Normalform durch Einfuhrung vonSchlupfvariablen x3, x4, x5. Außerdem schreiben wir die Maximierungsaufgabe in eine Mi-nimierungsaufgabe um. Wir mussen also −20x1 − 60x2 mimimieren unter den Nebenbe-dingungen:

x ∈ R5 , x ≥ 0 ,

1 1 1 0 0

5 10 0 1 0

2 10 0 0 1

x =

120

700

520

.

Wir sehen, dass das Gleichungssystem Ax = b bereits auf Gauß-Jordan Endform gebrachtworden ist. Es ist RangA = 3. Die Variablen x1 und x2 sind die freien Variablen, x3, x4, x5

die abhangigen. Die zugehorige Basislosung istz = (0, 0, 120, 700, 520)> ∈ R5.Wir schreiben die Gleichung c>x = η dazu (η ist ein Parameter), also

−20 −60 0 0 0 η

1 1 1 0 0 120

5 10 0 1 0 700

2 10 0 0 1 520

(5.1)

Dieses Tableau heißt Simplextableau. Die Basislosung z = (0, 0, 120, 700, 520)> lostauch die erste Gleichung fur den Parameter η = 0. Die Basislosung z ist zulassig, dab ≥ 0!

50

Wir gehen jetzt zu einem anderen Tableau uber, indem wir die markierte 10 als Pivotele-ment wahlen:

−8 0 0 0 6 η + 3120

45

0 1 0 − 110

68

3 0 0 1 −1 180

15

1 0 0 110

52

(5.2)

Jetzt sind x1, x5 die freien Variablen, x2, x3, x4 die abhangigen. Die zugehorige Basislosungist z = (0, 52, 68, 180, 0)>. Wir haben Gluck gehabt, denn auch z ≥ 0.z ist Losung des gesamten Gleichungssystems (5.2) fur η + 3120 = 0, also η = −3120.Da wir nur aquivalente Umformungen gemacht haben, ist z auch Losung von (5.1) furη = −3120. Daher hat z einen kleineren Zielfunktionswert als z, ist also

”besser“!

Bemerkungen:

(A) Was passiert, wenn man im letzten Beispiel statt a32 jetzt etwa a12 als Pivotelementnimmt? Dann erhalt man

40 0 60 0 0 η + 60 · 120

1 1 1 0 0 120

−5 0 −10 1 0 −500

−8 0 −10 0 1 −680

mit der Basislosung (0, 120, 0,−500,−680)>. Diese ist nicht zulassig, da einige Kom-ponenten negativ sind. Der Simplexschritt geht offensichtlich gut, falls das Pivot-element ars positiv und br/ars minimal ist.

(B) Wann bekommt man rechts oben etwas > η ? Naturlich genau dann, wenn cs < 0und br/ars > 0.

Wir setzen das Beispiel fort und betrachten (5.2): Wir mussen das Pivotelement in der 1.Spalte suchen (da nur dort in der ersten Zeile ein negativer Eintrag steht):

−8 0 0 0 6 η + 3120

45

0 1 0 − 110

68

3 0 0 1 −1 180

15

1 0 0 110

52

0 0 0 83

103

η + 3600

0 0 1 − 415

16

20

1 0 0 13−1

360

0 1 0 − 115

16

40

51

Die zugehorige Basislosung ist x∗ = (60, 40, 20, 0, 0)> ∈ M . Diese lost auch c>x∗ = η furη+3600 = 0, d.h. η = −3600. Hier ist c der

”aktuelle Kostenvektor“, d.h. die erste Zeile im

aktuellen Tableau. Daher lost x∗ auch das Ausgangssystem (5.1) fur η = −3600. Jetzt sindwir fertig, da die aktuelle Kostenzeile nichtnegativ ist. Jeder weitere Simplexschritt wurdeη nur wieder vergroßern. Wir konnen jetzt die Schlupfvariablen x3, x4, x5 wieder vergessenund haben einen optimalen Vektor (60, 40)> ∈ R2 als Losung des Ausgangsproblemsgefunden.

Damit ist der zweite Teil (Phase II) des Simplexverfahrens praktisch schon vollstandigbeschrieben worden. Phase I beschaftigt sich mit dem Problem, ein beliebiges Problemin Normalform in die Form zu bringen, mit der Phase II begonnen werden kann. In derpraktischen Rechnung fuhrt man η nicht mit und auch die Einheitsmatrix nicht. Furunsere

”Handrechnungen“ ist es jedoch viel ubersichtlicher!

5.3 Das Simplexverfahren

Wir benotigen zur Beschreibung einige Bezeichnungen und Definitionen. Ist A ∈ Rm×n

eine (m× n)−Matrix, so bezeichnen wir wieder mit a∗j ∈ Rm die j−te Spalte der Matrix(als Spaltenvektor) fur j = 1, . . . , n.

Definition 5.2 Sei A ∈ Rm×n, RangA = m ≤ n, b ∈ Rm. Ein Paar (x, ) mit x ∈ Rn, = (j1, . . . , jm) ∈ {1, . . . , n}m heißt Basislosung zu Ax = b, falls Ax = b und die Spalten{a∗jk

: k = 1, . . . ,m} linear unabhangig sind, sowie x` = 0 fur alle ` /∈ J .

Hier haben wir mit dem großen Buchstaben J die (ungeordnete) Menge der Indizes be-zeichnet, also J = {j1, . . . , jm}. Diese Konvention werden wir auch in Zukunft beibehalten.

Eine Basislosung heißt zulassig, falls x ≥ 0 gilt. Sie heißt nicht entartet, wenn xjk> 0

fur alle k = 1, . . . ,m gilt (dann ist also J = {` ∈ {1, . . . , n} : x` > 0}).

Fur jede zulassige Basislosung (x, ) ist x Ecke von M . Dies folgt aus folgendem Satz:

Satz 5.3 Sei M ={x ∈ Rn : Ax = b , x ≥ 0

}und sei fur x ∈ M die Menge der

aktiven Indizes definiert durch j(x) ={j ∈ {1, . . . , n} : xj > 0

}. Es ist x ∈M genau eine

Ecke von M , wenn die Menge{a∗j : j ∈ J(x)

}der Spalten zu den aktiven Indizes linear

unabhangig sind.

Beweis: (a) Sei{a∗j : j ∈ J(x)

}linear unabhangig und x = λy + (1− λ)z mit λ ∈ (0, 1)

und y, z ∈M .Fur j /∈ J(x) ist 0 = λyj+(1−λ)zj ≥ 0, also yj = zj = 0 = xj. Daher ist

∑j∈J(x) xj a∗j = b

und genauso∑

j∈J(x) yj a∗j = b =∑

j∈J(x) zj a∗j. Aus der linearen Unabhangigkeit folgthieraus y = z = x. Dies bedeutet, dass x eine Ecke ist.

(b) Sei umgekehrt x eine Ecke und zj ∈ R, j ∈ J(x), mit∑

j∈J(x) zj a∗j = 0. Wir erganzen

z zu einem Vektor z ∈ Rn, indem wir die Komponenten zj = 0 setzen fur z /∈ J(x). Danngilt Az = 0. Schreibe x als x = 1

2(x − εz) + 1

2(x + εz) und wahle ε > 0 so klein, dass

(x ± εz)j > 0 fur alle j ∈ J(x). Dann ist x ± εz ≥ 0 und A(x ± εz) = Ax = b, alsox ± εz ∈ M . Da x eine Ecke ist, so folgt x ± εz = x, d.h. z = 0. Daher sind die Spalten{a∗j : j ∈ J(x)

}linear unabhangig. 2

Wegen J(x) ⊆ J sind insbesondere die Spalten{a∗j : j ∈ J(x)

}linear unabhangig. Dies

bedeutet nach diesem Satz, dass x eine Ecke ist.

52

Wir betrachten wieder das Optimierungsproblem:

(P ) Minimiere f(x) = c>x auf M := {x ∈ Rn : Ax = b, x ≥ 0} .

Das Simplexverfahren besteht aus zwei Phasen:

Phase I: Man konstruiert eine zulassige Basislosung(z, )

zu Ax = b, einen Vektor c ∈ Rn

und eine Darstellung M = {x ∈ Rn : Ax = b, x ≥ 0} von M mit folgenden Eigenschaften:

(a) Ist = (j1, . . . , jm), so ist a∗jk= e∗k fur k = 1, . . . ,m, wobei e∗k der k−te Einheits-

vektor im Rm ist,

(b) cjk= 0 fur alle k = 1, . . . ,m (also auch c>z = 0), und b ≥ 0,

(c) f(x) = c>x+ f(z) fur alle x mit Ax = b. Ferner sei γ = f(z).

Phase II: Diese setzt voraus, dass eine zulassige Basislosung (z, ) zu Ax = b, ein Vektorc ∈ Rn und obige Darstellung von M gefunden wurde, so dass (a), (b), (c) gelten.Es wird versucht, eine andere zulassige Basislosung (z, ) zu Ax = b, einen Vektor c undA, b zu finden mit den Eigenschaften (a),(b),(c), so dass f(z) < f(z) gilt.Dann ersetzt man z u.s.w. durch z u.s.w. und hofft, dass eine so gefundene Folge

(zk)

vonBasislosungen gegen eine Optimallosung konvergiert – oder sogar abgebrochen wird miteiner optimalen Losung oder der Information, dass inf(P ) = −∞.

Das Flussdiagramm auf der folgenden Seite beschreibt die Phase II des Simplexverfahrens.Der folgende Satz liefert die theoretische Grundlage fur die Durchfuhrung.

Satz 5.4 Sei (P ), A, b, c, γ sowie eine Basislosung(z, )

mit (a), (b), (c) gegeben. A,

b, c, γ sowie(z, )

seien wie im Flussdiagramm konstruiert. Dann gilt:

(i) Ist c ≥ 0, so ist c>x ≥ c>z fur alle x ∈M , d.h. z ist optimal.

(ii) Ist cs < 0 und a∗s ≤ 0, so ist c>x auf M nicht beschrankt, d.h. inf(P ) = −∞.

(iii) Fur jedes x gilt: Ax = b⇐⇒ Ax = b⇐⇒ Ax = b.

(iv) c>x+ γ = c>x+ γ fur alle x ∈ Rn mit Ax = b.

(v)(z, )

ist zulassige Basislosung zu Ax = b, fur die (a), (b), (c) erfullt sind. Es istars = 1 und γ = c>z = f(z). Insbesondere ist (P ) aquivalent zu

(P ) Minimiere c>x+ γ auf M = {x ∈ Rn : Ax = b , x ≥ 0} ,

und dies aquivalent zu

(P ) Minimiere c>x+ γ auf M = {x ∈ Rn : Ax = b , x ≥ 0} .

mit gleichem Zielfunktionswert.

(vi) f(z) = c>z = γ = cs br/ars + γ ≤ γ = c>z = f(z).

53

Phase II des Simplexverfahrens

Gegeben sei (P ) mit zulassiger Basislosung(z, ), die den Bedingungen (a),(b),(c) genuge.

Sei = (j1, . . . , jm) und J = {j1, . . . , jm}.

?

c ≥ 0?�jaz Losung von (P )

γ = inf (P ), STOP

?

nein

Wahle s /∈ J mit cs < 0

?

a∗s ≤ 0?ja

�(P ) besitzt keine Losung,inf(P ) = −∞, STOP

?nein

Bestimme r ∈ {1, . . . ,m} mit

br/ars = min{bi/ais : i ∈ {1, . . . ,m}, ais > 0

}?

Neue Basisindizes: k = jk, k 6= r, r := s,d.h. = (j1, . . . , jr−1, s, jr+1, . . . , jm)

?

Neues A, b, c und γ:

(ar1, · · · , arn|br) = 1ars

(ar1, · · · , arn|br)

(ai1, · · · , ain|bi) = (ai1, · · · , ain|bi)− ais (ar1, · · · , arn|br), i 6= r

(c1, · · · , cn| −γ) = (c1, · · · , cn| −γ)− cs (ar1, · · · , arn|br)

?

Neue zulassige Basislosung:z` := 0, ` 6∈ {1, . . . , m},zk

= bk, k = 1, . . . ,m

-

6

update:˜:=ˆ

6�

54

Beweis: Sei wieder = (j1, . . . , jm) und J = {j1, . . . , jm}.(i) Sei x ∈M beliebig. Dann ist wegen (c) und (b):

c>x = f(x) = c>x+ f(z) ≥ f(z) = c>z .

(ii) Fur t ≥ 0 definiere man x(t) ∈ Rn durch

xjk(t) = bk − t aks (k = 1, . . . ,m) , xs(t) = t , x`(t) = 0 (` 6∈ {j1, . . . , jm, s}) .

Dann ist x(t) ≥ 0 wegen a∗s ≤ 0. Ausserdem ist wegen a∗jk= e∗k:

A x(t) =n∑

`=1

x`(t) a∗` = t a∗s +m∑

k=1

(bk − t aks

)e∗k = b ,

d.h. x(t) ∈M fur jedes t ≥ 0. Schließlich folgt wegen (b), (c) und cs < 0:

f(x(t)

)= f(z) + c>x(t) = f(z) +

m∑k=1

cjkxjk

(t) + t cs = f(z) + t cs −→ −∞

fur t→∞.

(iii) Dies ist trivial, da A und b aus A und b durch einen Gauss-Jordan Schritt entstehen.

(iv) Wir rechnen aus:

c>x + γ = c>x + γ − cs

[n∑

`=1

x` ar` − br

]= c>x + γ , da Ax = b .

(v) Wegen =(j1, . . . , jr−1, s, jr+1, . . . , jm

)ist zu zeigen:

a∗jk= e∗k fur k 6= r und a∗s = e∗r .

Sei zunachst k 6= r. Dann ist

arjk=

1

ars

arjk= 0

undaijk

= aijk− ais arjk

= aijk= δik fur i 6= r .

Also ist a∗jk= e∗k fur k 6= r. Ferner ist ars = 1 und

ais = ais − ais ars = 0 fur i 6= r ,

also a∗s = e∗r. Analog ist br = br/ars ≥ 0, und

bi = bi −ais

ars

br = ais

(biais

− brars

)≥ 0 , i 6= r ,

nach Wahl von r (da ais > 0). Also ist (z, ) eine zulassige Basislosung, die (a) erfullt.

Fur ` ∈ J \ {jr} ist c` = 0 und ar` = 0, also c` = 0. Fur ` = s ist cs = cs − csars = 0, daars = 1. Also ist auch Voraussetzung (b) erfullt.

55

Um (c) fur z und γ zu zeigen, benutzen wir (c) fur z und γ und Teil (iv). Fur x = z folgt

f(z) = c>z + f(z) = c>z + γ = c>z + γ = γ .

Mit (iv) folgt dann fur x ∈ Rn mit Ax = b

f(x) = c>x + f(z) = c>x + γ = c>x + γ = c>x + f(z) .

(vi) Schließlich ist

γ = γ + cs br = γ + csbrars

≤ γ ,

da br ≥ 0, ars > 0 und cs < 0. Damit ist alles bewiesen! 2

Beispiel 5.5 Maximiere x1+2x2+4x3 unter den Nebenbedingungen 0 ≤ x1 ≤ 2, x2, x3 ≥0, und

x1 + x2 + 2x3 ≤ 4

3x2 + 4x3 ≤ 6

Nach Umschreiben auf eine Minimierungsaufgabe und Einfuhrung von Schlupfvariablenx4, x5, x6 erhalten wir die folgenden Tableaus. Hier haben wir rechts oben jeweils nur z.B.0 statt wie fruher γ + 0 geschrieben. Dort steht im Tableau also das Negative vom Wertder aktuellen Basislosung, also −γ.

−1 −2 −4 0 0 0 0

1 0 0 1 0 0 2

1 1 2 0 1 0 4

0 3 4 0 0 1 6

z = (0, 0, 0, 2, 4, 6)> ∈ R6 , γ = 0 .

0 −2 −4 1 0 0 2

1 0 0 1 0 0 2

0 1 2 −1 1 0 2

0 3 4 0 0 1 6

z = (2, 0, 0, 0, 2, 6)> , γ = −2 ,

0 0 0 −1 2 0 6

1 0 0 1 0 0 2

0 1 2 −1 1 0 2

0 0 −2 3 −3 1 0

z = (2, 2, 0, 0, 0, 0)> , γ = −6 , = (1, 2, 6) .

56

Dies ist eine entartete Ecke, da b3 = 0. Trotzdem geht es weiter:

0 0 −23

0 1 13

6

1 0 23

0 1 −13

2

0 1 43

0 0 13

2

0 0 −23

1 −1 13

0

z = (2, 2, 0, 0, 0, 0)> , = (1, 2, 4) .

Hier erhalten wir das gleiche z, verkleinern also unseren Zielfunktionswert nicht, habenaber jetzt ein anderes , namlich = (1, 2, 4). Wir machen weiter:

0 12

0 0 1 12

7

1 −12

0 0 1 −12

1

0 34

1 0 0 14

32

0 12

0 1 −1 12

1

z = (1, 0, 3/2, 1, 0, 0)> , γ = −7 .

Damit sind wir fertig, da alle cj ≥ 0. Eine Losung des Ausgangsproblems ist x∗ =(1, 0, 3/2)> mit Optimalwert 7.

Bemerkungen:

(a) Probleme der Form

Minimiere c>x unter den Nebenbedingungen Ax ≤ b , x ≥ 0

mit b ≥ 0 konnen sofort auf ein Starttableau gebracht werden durch Einfuhrungvon Schlupfvariablen.

(b) Ist (z, ) nicht entartet, d.h. z` > 0 fur alle ` ∈ J , so ist b > 0 und daher f(z) < f(z),d.h. es tritt eine echte Zielfunktionsverkleinerung ein, und die Basislosung (z, ) kannin den folgenden Schritten nicht mehr erreicht werden. Ist keine durch das Simplex-verfahren erhaltene Basislosung entartet, so muss daher das Simplexverfahren nachendlich vielen Schritten abbrechen, da es insgesamt nur endlich viele verschiedeneSimplextableaus zu (P ) gibt. (Jedes Simplextableau enthalt die m Koordinatenein-heitsvektoren des Rm unter den n Spalten. Fur deren Stellen gibt es nur endlich vieleMoglichkeiten, selbst nach Permutation der Stellen. Außerdem sind zwei Tableausgleich, wenn die Stellen der Koordinatenvektoren ubereinstimmen.) Das Simplex-verfahren bricht ab mit einer Losung oder mit der Information, dass keine solcheexistiert.

(c) Ist (z, ) entartet, so ist br = 0 und daher b = b, also z = z, aber 6= . Beieinem Schritt des Simplexverfahrens bleibt man also in ein und derselben Losungstehen und verandert nur die Basisdarstellung. Es kann vorkommen (allerdings nurbei konstruierten Beispielen, siehe Beispiel 5.6 unten), dass man einige Schritte langnur die Basisdarstellung verandert und schließlich wieder zu derselben Darstellungzuruckkommt. Dann spricht man von einem Zyklus. Ohne eine Zusatzregel, dieZyklen vermeidet, kann also nicht die Endlichkeit des Verfahrens bewiesen werden.

57

Das folgende Beispiel stammt von Beale (1955):

Beispiel 5.6 Minimiere −34x1 + 20x2 − 1

2x3 + 6x4 unter xj ≥ 0, j = 1, 2, 3, 4 und

14x1 − 8x2 − x3 + 9x4 ≤ 0 ,

12x1 − 12x2 − 1

2x3 + 3x4 ≤ 0 ,

x3 ≤ 1 .

Als Auswahlregel wird vereinbart:Pivotspalte sei die Spalte j mit minimalem cj (und davon die mit minimalem j)Pivotzeile sei die mit kleinstem Quotienten und, wenn es eine Auswahl gibt, die mitkleinster Zeilenzahl i.Damit ergibt sich ein Zyklus (siehe Ubung, das 7. Tableau stimmt mit dem ersten uberein).

Die obige Auswahlregel ist schlecht, wie man sieht. Es gibt mehrere bessere, die Zyklenvermeiden. Eine benutzt die lexikographische Ordnung von Vektoren (siehe Collatz-Wetterling, S. 21, oder Werner, Numerische Mathematik 2), eine elegantere stammt vonBland (New finite pivoting rules for the simplex method, Math. Oper. Res. 2 (1977),103–107).

Pivotregel von Bland:

(a) Pivotspalte ist die Spalte s mit cs < 0 und, wenn davon es mehrere gibt, die mitkleinster Spaltennummer, also

s = min{j : cj < 0

}.

(b) Pivotzeile ist die Zeile r mit kleinstem Quotienten bi/ais und, falls es davon mehreregibt, die mit kleinstem ji. Hier ist wieder = (j1, . . . , jm). Also ist genauer mitI+ := {i : ais > 0}:

r ∈ I+ und jr = min

{jk : k ∈ I+ ,

bkaks

≤ biais

fur alle i ∈ I+

}.

Satz 5.7 Das Simplexverfahren mit der Pivotregel von Bland stoppt immer und wiederholtkein Tableau.

Beweis: Wir halten uns an das Buch: C.H. Papadimitriou, K. Steiglitz, CombinatorialOptimization. Prentice Hall, 1982, S. 53. Angenommen, es gabe einen Zyklus

A(`), b(`), c(`), γ(`), z(`), (`), ` = 1, . . . , L .

Dann haben wir schon gesehen, dass γ(`) = γ, b(`) = b, z(`) = z konstant sind undbr = 0 fur alle auftretenden Pivotzeilen r. Wir streichen jetzt alle Reihen und Spalten,die wahrend des Zyklus kein Pivotelement enthalten. Dann bekommen wir ein neuesOptimierungsproblem, das ebenfalls einen Zyklus hat. Außerdem ist dort b(`) = 0, ` =1, . . . , L. Gewisse Variablen xj kommen wahrend der Zyklen in die Basislosung hinein,andere hinaus und manche bleiben vielleicht die ganze Zeit drin. Sei xq die Variable mit

58

dem großten Index, die wahrend der Zyklen hineinkommt. Irgendwann muss sie wiederhinaus: T1 und T2 seien die Tableaus direkt vor dem Reinkommen und Rausgehen. xp

komme fur xq hinein. Dann ist p < q nach Definition von q.

Tableau T1:(z, ), A, c

q 6∈ J , kommt aber imnachsten Tableau in die Ba-sislosung.

q rein ↓

· · · ≥ 0 · · · cq < 0 · · · 0 · · · −γ

0...

0

Tableau T2:(z, ), A, c

p 6∈ J , q ∈ Jp kommt im nachstenTableau fur q hinein.

p rein ↓ q raus ↑

· · · cp < 0 · · · 0 · · · 0 · · · −γ...

· · · arp > 0 · · · 1 · · · 0 ← r...

0

Es muss p < q sein nach Wahl von xq. Ausserdem ist wegen der Wahl der Pivotspalte q:

c` =

≥ 0 fur ` < q,

< 0 fur ` = q,

= 0 fur ` > q.

(Fur ` > q bleiben die x` wahrend des ganzen Zyklus in der Basis, und daher verschwindetc` fur solche `.)

Sei = (j1, . . . , jm). Setze

y` :=

1, falls ` = p,

−akp, falls ` = jk , k = 1, . . . ,m,

0, sonst.

Dann ist Ay = 0 = b, denn

Ay =n∑

`=1

y` a∗` = a∗p −m∑

k=1

akp a∗jk︸︷︷︸= e∗k

= a∗p − a∗p = 0 ,

und c>y = cp < 0, da p die nachste Pivotspalte ist. Es ist nicht unbedingt y ≥ 0. Trotzdemfolgt mit (iv) von Satz 5.4 (beachte, dass γ = γ):

c>y = c>y = cp < 0 .

59

Nach Wahl der Pivotzeile ist

y` =

{−arp < 0 fur ` = jr = q,

0, 1 oder − akp ≥ 0 fur ` < q

(Ware namlich ein akp > 0 fur ein ` = jk < q = jr, so musste man nach der Regel Zeile knehmen!). Dies fuhrt wegen

c>y =∑`<q

c` y` + cq yq > 0

zu einem Widerspruch. 2

Wir haben gesehen, dass wir die beschriebene Phase II direkt auf Optimierungsproblemevon folgendem Typ anwenden konnen:

Minimiere c>x unter Ax ≤ b , x ≥ 0 ,

wenn wir b ≥ 0 haben. Sei aber jetzt wieder der allgemeine Fall gegeben:

(P ) Minimiere c>x auf M := {x ∈ Rn : Ax = b, x ≥ 0} .

Nach eventueller Multiplikation einer Zeile mit −1 konnen wir o.B.d.A. b ≥ 0 vorausset-zen.

Wir beschreiben jetzt die Phase I des Simplexverfahren. Es ist die Aufgabe, eine zulassigeBasislosung von Ax = b zu konstruieren, so dass damit die Phase II gestartet werden kann.Man betrachte dazu die Hilfsaufgabe:

(PI) Minimiere e>(b− Ax) unter den Nebenbedingungen Ax ≤ b , x ≥ 0 ,

wobei e = (1, 1, . . . , 1)> ∈ Rm.Wir sehen: Wegen e ≥ 0 und b − Ax ≥ 0 fur zulassige x ist e>(b − Ax) ≥ 0, unde>(b − Ax) = 0 genau dann, wenn Ax = b. Außerdem ist (PI) zulassig, da x = 0 einzulassiger Vektor ist. (Beachte, dass b ≥ 0 vorausgesetzt ist.)Die Zielfunktion von (PI) hat die Form

f(x) = e>(b− Ax) = −(A>e)>x + e>b = d>x + α

mit d := −A>e und α = e>b. Das Minimieren von d>x + α ist naturlich aquivalent zurMinimierung von d>x allein. Daher hat (PI) genau die Form, auf die man Phase II direktanwenden kann. Wegen inf(PI) ≥ 0 muss das Simplexverfahren mit der Blandschen Regelmit einer optimalen Losung von (PI) abbrechen.

Wir starten daher mit dem Simplextableau, nehmen aber die Kostenzeile(c1, c2, . . . , cn, 0) fur das ursprungliche Problem (P ) mit auf. Man beachte, dass f(0) =

α =∑m

i=1 bi und dj = −m∑

i=1

aij. Daher hat die”Kostengleichung“ fur das Hilfsproblem die

60

Form d>x = γ − α = γ −∑m

i=1 bi. Wir starten also rechts oben mit −∑m

i=1 bi!

−m∑

i=1

ai1 −m∑

i=1

ai2 · · · −m∑

i=1

ain 0 · · · 0 −m∑

i=1

bi

c1 c2 · · · cn 0 · · · 0 0

a11 a12 · · · a1n 1 · · · 0 b1...

......

.... . .

......

am1 am2 · · · amn 0 · · · 1 bm

Da (PI) losbar ist, so liefert die oben beschriebene Phase II als Losung eine zulassigeBasislosung (z, ). Von z sind die letzten m Komponenten Schlupfvariable. Dann sinddrei Falle moglich:

1. Fall: min(PI) > 0. Dann ist Az 6= b, und Ax = b, x ≥ 0, besitzt keine Losung, d.h.M = ∅. Wir konnen also mit der Phase I testen, ob ein Gleichungssystem Ax = beine nichtnegative Losung x besitzt.

2. Fall: min(PI) = 0 und J ⊆ {1, . . . , n}. Dann ist Az = b, z ≥ 0, also z ∈ M , und istBasislosung von Ax = b mit a∗jk

= e∗k, k = 1, . . . ,m, falls = (j1, . . . , jm). Streichtman die erste Zeile des Endtableaus von Phase I und die letzten m Spalten (vor derb-Spalte), so kann man gleich mit Phase II weitermachen. Dies ist der angenehmeFall!

3. Fall: min(PI) = 0, aber J∩{n+1, . . . , n+m} 6= ∅. In diesem Fall sind Schlupfvariablein der Basislosung, etwa zjs mit js > n. In diesem Fall ist die Losung sicher entartet,da wegen min(PI) = 0 die Schlupfvariable den Wert 0 haben mussen. Wir eliminierendiese Variable, indem wir sie mit einem ` ∈ {1, . . . , n} \ J mit as` 6= 0 austauschen(Simplexschritt). Dadurch andert sich die b−Spalte nicht. Findet man kein ` mitas` 6= 0, so ist s-te Zeile Nullzeile und kann weggelassen werden. Dies kann abernur passieren, wenn der Rang von A echt kleiner als m ist und kann daher zurPrufung der Rangvoraussetzung dienen. Diese Austauschschritte werden solangedurchgefuhrt, bis alle Schlupfvariablen aus der Basis eliminiert sind!

Beispiele 5.8 (A) Minimiere 3x1 + x2 − x3 unter den Nebenbedingungen

−5x1 + 2x2 − 3x3 = 2 ,

x1 + x2 + 2x3 = 1 ,xj ≥ 0 , j = 1, 2, 3 .

Tableaus fur Phase I:

4 −3 1 0 0 −3

3 1 −1 0 0 0

−5 2 −3 1 0 2

1 1 2 0 1 1

7 0 7 0 3 0

2 0 −3 0 −1 −1

−7 0 −7 1 −2 0

1 1 2 0 1 1

61

(Nach der Blandschen Regel mussten wir im ersten Tableau eigentlich a12 = 2 alsPivotelement nehmen. Mit a22 = 1 lasst sich aber besser rechnen.) Damit ist diePhase I abgeschlossen, z = (0, 1, 0, 0, 0)>, = (4, 2), also J 6⊆ {1, 2, 3}. Daher liegtder 3. Fall vor, und wir mussen z4 eliminieren. Wir wahlen a11 = −7 als Pivotelementund erhalten:

0 0 0 1 1 0

0 0 −5 2/7 −11/7 −1

1 0 1 −1/7 2/7 0

0 1 1 1/7 5/7 1

Jetzt ist z = (0, 1, 0, 0, 0)>, J = {1, 2} ⊆ {1, 2, 3}.Damit erhalten wir das Starttableau fur Phase II:

0 0 −5 −1

1 0 1 0

0 1 1 1

und dann

5 0 0 −1

1 0 1 0

−1 1 0 1

x∗ = (0, 1, 0)> ist optimal mit Minimalwert 1.

(B) Minimiere −x1 + 2x2 + 3x3 unter den Nebenbedingungen

(P )

x1 + 3x2 − 2x3 ≤ 10 ,

3x1 − 2x2 − 3x3 ≤ −5 ,

4x1 − 2x2 = 4 ,

x1 ≥ 0, x2 ≥ 0.

Um dieses Problem auf Normalform zu transformieren, ersetzen wir x3 durch x3−x4

mit x3 ≥ 0, x4 ≥ 0 und fuhren die Schlupfvariablen x5, x6 fur die beiden Unglei-chungen ein. Multiplikation der 2. Gleichung mit −1 liefert die Aufgabe:

Minimiere −x1 + 2x2 + 3x3 − 3x4 unter den Nebenbedingungen

(PN)

x1 + 3x2 − 2x3 + 2x4 + x5 = 10

−3x1 + 2x2 + 3x3 − 3x4 − x6 = 5

4x1 − 2x2 = 4

Das Tableau fur Phase II sieht so aus (Versuch!):

−1 2 3 −3 0 0 0

1 3 −2 2 1 0 10

−3 2 3 −3 0 −1 5

4 −2 0 0 0 0 4

62

Den ersten Einheitsvektor haben wir in der 5. Spalte. Er gehort zur ersten Unglei-chung. Die beiden anderen Gleichungen liefern uns keine Einheitsvektoren. Dahermuss auf diese die Phase I angewandt werden. Es seien x7 und x8 die Schlupfvaria-blen in Phase I fur diese beiden Gleichungen. Wir erhalten die Tableaus:

−1 0 −3 3 0 1... 0 0 −9

−1 2 3 −3 0 0... 0 0 0

1 3 −2 2 1 0... 0 0 10

−3 2 3 −3 0 −1... 1 0 5

4 −2 0 0 0 0... 0 1 4

−4 2 0 0 0 0... 1 0 −4

2 0 0 0 0 1... −1 0 −5

−1 13/3 0 0 1 −2/3... 2/3 0 40/3

−1 2/3 1 −1 0 −1/3... 1/3 0 5/3

4 −2 0 0 0 0... 0 1 4

0 0 0 0 0 0... 1 1 0

0 1 0 0 0 1... −1 −1/2 −7

0 23/6 0 0 1 −2/3... 2/3 1/4 43/3

0 1/6 1 −1 0 −1/3... 1/3 1/4 8/3

1 −1/2 0 0 0 0... 0 1/4 1

und z = (1, 0, 8/3, 0, 43/3, 0, 0, 0)> ∈ R8 und = (5, 3, 1).

Damit ist die Phase I abgeschlossen, und es liegt der 2. Fall vor. Wir erhalten dasStarttableu fur Phase II durch Streichen der erste Zeile und der letzten zwei Spaltenvor der b−Spalte (nur diese sind die Schlupfvariablen fur Phase I):

0 1 0 0 0 1 −7

0 23/6 0 0 1 −2/3 43/3

0 1/6 1 −1 0 −1/3 8/3

1 −1/2 0 0 0 0 1

und z = (1, 0, 8/3, 0, 43/3, 0)> ∈ R6. Diese Basislosung z ist schon optimal, da dieKostenzeile nichtnegativ ist. Damit ist (1, 0, 8/3, 0, 43/3, 0)> ∈ R6 Losung von (PN),und daher ist x∗ = (1, 0, 8/3)> ∈ R3 Losung von (P ) mit Minimalwert f(x∗) = 7.

63

Abschließend wollen wir noch kurz auf das revidierte Simplexverfahren eingehen, dasmeistens programmiert wird. Dazu zeigen wir zunachst wichtige Beziehungen zwischenden aktuellen Tableaus und den Ausgangsdaten des Problems.Wir wollen eine praktische Notation einfuhren. Sei m ≤ n. Fur jeden Multiindex =(j1, . . . , jm) ∈ {1, . . . , n}m, jeden Vektor x ∈ Rn und jede Matrix A ∈ Rm×n definierenwir den

”Untervektor“ x() ∈ Rm und die Untermatrix A() ∈ Rm×m durch

x() :=(xj1 , . . . , xjm

)>und A() :=

[a∗j1 , . . . , a∗jm

].

Ist k ∈ {1, . . . , n}n−m ein zweiter Multiindex mit {j1, . . . , jm}∪{k1, . . . , kn−m} = {1, . . . , n},so sind alle ji und k` paarweise verschieden und

c>x = c()>x() + c(k)>x(k) sowie Ax = A()x() + A(k)x(k) .(x(), x(k)

)enthalten also alle Komponenten von x, nur permutiert. Wir nennen ein

solches k ein Komplement von .

Schauen wir uns ein Simplextableau mit aktueller Basislosung (z, ) an, so haben wiroffenbar A()z() = b.

Lemma 5.9 Sei(z, )

aktuelle Basislosung des Simplexverfahrens. (Wir schreiben derKurze fur .) Sei k ein Komplement von , d.h. k ∈ {1, . . . , n}n−m mit {j1, . . . , jm} ∪{k1, . . . , kn−m} = {1, . . . , n}.3 Dann gilt:

(a) A() ∈ Rm×m ist regular und z() = A()−1b sowie z(k) = 0.

(b) c(k) = c(k)−(A()−1A(k)

)>c() und a∗s = A()−1a∗s.

Beweis: (a) Die MatrixA() ist regular, da sie nach aquivalenten Gauss-Jordan-Umformungenin die Einheitsmatrix gebracht werden kann. Die weitere Aussage ist klar, da wegenA()z() = b auch A()z() = b gilt.

(b) Sei x ∈ Rn mit Ax = b, d.h. A()x() + A(k)x(k) = b, also x() + A()−1A(k)x(k) =A()−1b = z(), also

c>x = c(k)>x(k)+c()>[z()−A()−1A(k)x(k)

]= c>z+

[c(k)−

(A()−1A(k)

)>c()]>x(k)

und daher [c(k)−

(A()−1A(k)

)>c()]>x(k) = c>x− c>z

Wegen Eigenschaft (c) des Algorithmus ist

c>x− c>z = c>x = c(k)>x(k) .

Hier haben wir c() = 0 benutzt. Daher folgt[c(k)−

(A()−1A(k)

)>c()]>x(k) = c(k)>x(k) .

Dies gilt fur alle x(k) ∈ Rn−m, denn dann setze x() = A()−1[b−A(k)x(k)]. Hieraus folgtdie Behauptung.

Genauso geht es mit der zweiten Gleichung: Sei w := A()−1a∗s, also A()w = a∗s, alsoA()w = a∗s, also w = a∗s, da A() = I. 2

Damit berechnet das Simplexverfahren (Phase II) folgende Schritte, wobei wir mit einerBasislosung (z, ) starten, die aus Phase I stammt. Es sei k ein Komplement von .

3k enthalt also die Indizes der freien Variablen. Sie konnen z.B. der Große nach geordnet sein.

64

1. Starte mit z() = A()−1b und z(k) = 0, sowie Kosten γ = c()>A()−1b. Speicheredie Matrix A()−1 ∈ Rm×m.

2. Setze y := A()−>c(). Teste, ob A(k)>y ≤ c(k). Falls ja, so STOP. (Der Vektor zist optimal.) Andernfalls fahre mit Schritt 3 fort.

3. Bestimme Index s ∈ {k1, . . . , kn−m} mit(A(k)>y

)s> cs (Blandsche Regel).

4. Berechne w = A()−1a∗s. Falls w ≤ 0, so STOP. (Es ist inf(P ) = −∞.) Andernfallsfahre mit Schritt 5 fort.

5. Bestimme r ∈ {1, . . . ,m} mit zr/wr = min{zi/wi : wi > 0

}(Blandsche Regel).

6. Setze = (j1, . . . , jr−1, s, jr+1, . . . , jm), bestimme Komplement k von und setze

A()−1 =

(I − (w − e∗r)e>∗r

wr

)A()−1 ,

z() = A()−1b , z(k) = 0 ,

γ = γ +zr

wr

[cs − (A(k)>y)s

]7. Updateˆ=˜und weiter mit Schritt 2.

Die Form der Inversen A()−1 erhalt man aus A()−1 mit der Darstellung

A() = A() +(a∗s − a∗r

)e>∗r = A()

[I + (w − e∗r) e>∗r

]und der Sherman-Morrison-Formel:

Lemma 5.10 Es seien u, v ∈ Rm mit u>v 6= −1. Dann ist die Matrix I + u v> ∈ Rm×m

regular und (I + u v>

)−1= I − u v>

1 + u> v.

Der Beweis verbleibt als Ubung!

Wir sehen, dass man nur A ∈ Rm×n, b ∈ Rm, c ∈ Rn fest gespeichert halten muß, undA()−1 ∈ Rm×m, y ∈ Rm, w ∈ Rm in jedem Schritt neu berechnen und speichern muß.Dieses Version nennt man revidiertes Simplexverfahren!

65

6 Konvexe Optimierung

In diesem Kapitel behandeln wir Optimierungsprobleme mit konvexer Zielfunktion undkonvexen Nebenbedingungen. Der erste Abschnitt befasst sich mit Charakterisierungenkonvexer Funktionen.

6.1 Konvexe Funktionen

Definition 6.1 Sei D ⊆ Rn konvex.

a) Eine Funktion f : D → R heißt konvex, wenn fur alle x, y ∈ D und λ ∈ [0, 1] gilt

f(λx+ (1− λ)y

)≤ λf(x) + (1− λ)f(y) .

b) f heißt strikt konvex, wenn fur alle x, y ∈ D, x 6= y und alle λ ∈ (0, 1) gilt:

f(λx+ (1− λ)y

)< λf(x) + (1− λ)f(y) .

c) f heißt gleichmaßig konvex, wenn es c0 > 0 gibt, so dass fur alle x, y ∈ D,λ ∈ [0, 1] gilt

f(λx+ (1− λ)y

)+ c0λ(1− λ)‖x− y‖2 ≤ λf(x) + (1− λ)f(y) .

Naturlich gilt: f gleichmaßig konvex ⇒ f strikt konvex ⇒ f konvex.

Beispiele 6.2 a) f(x) = c>x, x ∈ Rn, ist konvex, aber nicht strikt konvex.

b) f(x) = 1/(1+x), x ≥ 0, ist strikt konvex, aber nicht gleichmaßig konvex, (Aufgabe)

c) Sei Q ∈ Rn×n symmetrisch und positiv semi-definit (bzw. positiv definit), sowiec ∈ Rn. Dann ist f(x) = x>Qx+ c>x konvex (bzw. gleichmaßig konvex).

Als nachstes wollen wir eine Charakterisierung der Konvexitat uber Ableitungen beweisen.Dazu erinnern wir an den Gradienten ∇f(x) ∈ Rn und die Hesse-Matrix ∇2f(x) ∈Rn×n der (hinreichend glatten) Funktion f : Rn → R in x ∈ Rn:

∇f(x) =

(∂f(x)

∂x1

, . . . ,∂f(x)

∂xn

)>und ∇2f(x) =

(∂2f(x)

∂xi∂xj

)i,j=1,...,n

Satz 6.3 Sei D ⊆ Rn offen und konvex, f : D → R zweimal stetig differenzierbar. Danngilt

(a) f ist genau dann gleichmaßig konvex auf D, wenn eine der folgenden aquivalentenBedingungen gilt:

(∗) Es gibt c0 > 0 mit f(x)− f(y) ≥ ∇f(y)>(x− y) + c0‖x− y‖2 ∀x, y ∈ D

(∗∗) Es gibt c0 > 0 mit[∇f(x)−∇f(y)

]>(x− y) ≥ 2c0‖x− y‖2 ∀x, y ∈ D

(∗ ∗ ∗) Es gibt c0 > 0 mit z>∇2f(x)z ≥ 2c0‖z‖2 ∀x ∈ D , z ∈ Rn

66

(b) f ist genau dann strikt konvex, falls in (a) uberall c0 = 0 gesetzt und”≥“ durch

”>“ fur x 6= y und fur z 6= 0 ersetzt wird.

(c) f ist genau dann konvex, falls in (a) uberall c0 = 0 gesetzt wird.

Beweis nur von (a):

(i) Sei f gleichmaßig konvex mit Konstante c0 > 0, also

f(y + λ(x− y)

)≤ f(y) + λ

[f(x)− f(y)

]− c0λ(1− λ)‖x− y‖2

fur alle x, y ∈ D, und λ ∈ [0, 1]. Dann ist

f(y + λ(x− y)

)− f(y)

λ≤ f(x)− f(y)− c0(1− λ)‖x− y‖2 .

Fur λ→ 0 folgt ∇f(y)>(x− y) ≤ f(x)− f(y)− c0‖x− y‖2.(ii) Es gebe c0 > 0 mit f(x) − f(y) ≥ ∇f(y)>(x − y) + c0‖x − y‖2 fur alle x, y ∈ D.Vertauschung von x und y und Addition liefert

0 ≥[∇f(x)−∇f(y)

]>(y − x) + 2c0‖x− y‖2 , d.h[

∇f(x)−∇f(y)]>

(x− y) ≥ 2c0‖x− y‖2.

(iii) Es gebe c0 > 0 mit (∗∗). Sei z ∈ Rn und t 6= 0 so klein, dass x := y + tz ∈ D. Dannist wegen (∗∗):

2c0t2‖z‖2 ≤ t

[∇f(y + tz)−∇f(y)

]>z, also

2c0‖z‖2 ≤1

t

[∇f(y + tz)>z −∇f(y)>z

]=

n∑j=1

zj

(∂f(y + tz)

∂xj

− ∂f(y)

∂xj

)1

t.

Fur t→ 0 folgt

2c0‖z‖2 ≤n∑

j=1

zj∇∂f(y)

∂xj

>

z = z>∇2f(y)z .

(iv) Es gelte schließlich (∗ ∗ ∗). Wir setzen

ψ(λ) = f(x) + λ[f(y)− f(x)

]− f

(x+ λ(y − x)

)− c0λ(1− λ)‖y − x‖2

fur λ ∈ [0, 1]. Dann ist ψ(0) = ψ(1) = 0 und

ψ′(λ) = f(y)− f(x)−∇f(x+ λ(y − x)

)>(y − x)− c0(1− 2λ)‖y − x‖2 ,

ψ′′(λ) = −(y − x)>∇2f(x+ λ(y − x)

)(y − x) + 2c0‖y − x‖2 ≤ 0 .

Also ist ψ′ monoton nicht steigend. Mit ψ(0) = ψ(1) = 0 folgt ψ(λ) ≥ 0 fur alle λ ∈ [0, 1].(Widerspruchsbeweis: Andernfalls existiert λ ∈ (0, 1) mit ψ(λ) < 0 und ψ′(λ) = 0. Dannist auch ψ′(λ) ≤ 0 fur λ ∈ [λ, 1], also auch ψ(1) < 0, ein Widerspruch.) Daher ist fgleichmaßig konvex. 2

Bemerkung: Die Charakterisierungen von (∗) und (∗∗) gelten auch fur einmal stetigdifferenzierbare Funktionen.

67

6.2 Existenz und Eindeutigkeit

Bevor wir auf die Dualitatstheorie eingehen, mochten wir einiges zur Existenz beitragen.Wir erinnern uns: Fur lineare Optimierungsprobleme reicht schon fur Existenz aus, dassM 6= ∅ und inf(P ) > −∞ (d.h. inf

x∈Mf(x) > −∞). Fur allgemeine konvexe Probleme reicht

dies nicht aus. Betrachte etwa

f(x) =1

xauf M = [1,∞) .

Dann ist infx∈M

f(x) = 0, aber f(x) > 0 fur alle x ∈M . Man braucht also mehr Vorausset-

zungen. Wir betrachten wieder das allgemeine konvexe Problem:

(P ) Minimiere f(x) auf M = {x ∈ K : g(x) ≤ 0, Ax = b},

wobei K ⊆ Rn eine konvexe Menge ist, f : K → R, g : K → Rp konvexe Funktionen,A ∈ Rm×n und b ∈ Rm.Zunachst bemerken wir, daß jedes lokale Minimum x∗ schon ein globales Minimum ist:

Lemma 6.4 Sei M ⊆ Rn konvex, f : M → R konvex und x∗ ein lokales Minimum von fauf M , d.h. es existiert ε > 0 mit f(x∗) ≤ f(x) fur alle x ∈ M mit ‖x − x∗‖ ≤ ε. Dannist x∗ sogar globales Minimum, d.h. f(x∗) ≤ f(x) fur alle x ∈M .

Beweis: Sei x ∈ M beliebig. Wahle dann λ ∈ (0, 1) so klein, dass λ‖x − x∗‖ ≤ ε. Dannist f(x∗) ≤ f(x∗ + λ(x − x∗)) ≤ f(x∗) + λ

[f(x) − f(x∗)

], also f(x) − f(x∗) ≥ 0. Daher

ist x∗ globales Minimum. 2

Wir erinnern an die Menge

Λ ={(f(x) + r, g(x) + z, Ax− b

)∈ R× Rp × Rm : r ≥ 0, z ≥ 0, x ∈ K

}.

Dann konnen wir zeigen:

Satz 6.5 Es sei M 6= ∅, inf(P ) > −∞ und Λ sei abgeschlossen. Dann besitzt (P ) eineLosung.

Bemerkung: In unserem Beispiel ist

Λ =

{1

x+ r : x ≥ 1 , r ≥ 0

}= (0,∞) ,

und dies Intervall ist nicht abgeschlossen!

Beweis: Wir zeigen, daß(inf(P ), 0, 0

)∈ Λ. Nach Definition von inf(P ) existiert eine

Folge (xk) in M mit f(xk)→ inf(P ). Es ist(f(xk), 0, 0

)∈ Λ, da

f(xk) = f(xk) + rk mit rk = 0 ,

0 = g(xk) + zk mit zk = −g(xk) ≥ 0 ,

0 = Axk − b .

Ferner konvergiert(f(xk), 0, 0

)gegen

(inf(P ), 0, 0

). Wegen der Abgeschlossenheit von Λ

ist auch(inf(P ), 0, 0

)∈ Λ. Also existiert x∗ ∈ K, r ≥ 0, z ≥ 0 mit inf(P ) = f(x∗)+r sowie

68

g(x∗)+z = 0 und Ax∗−b = 0. Also ist x∗ ∈M . Wegen f(x∗) ≥ inf(P ) = f(x∗)+r ≥ f(x∗)muss r = 0 sein, also f(x∗) = inf(P ). Daher ist x∗ optimal. 2

Wir sehen uns noch einmal das lineare Problem an:

Minimiere c>x auf M = {x : x ≥ 0, Ax = b} .

Dann istΛ =

{(c>x+ r, Ax− b) ∈ R× Rm : x ≥ 0, r ≥ 0

}.

Wir schreiben Λ in der Form

Λ =

c> 1

A 0m

xr

:

xr

≥ 0

−0

b

.

Also ist die Menge wieder ein endlich erzeuter Kegel und daher nach dem Satz von Weyl(Satz 2.6) abgeschlossen. Die zusatzliche Voraussetzung der Abgeschlossenheit von Λ istbei linearen Problemen also immer erfullt.

Fur lineare Probleme konnen wir keine Eindeutigkeit erwarten (weshalb nicht?), daherauch nicht fur konvexe Probleme. Wir haben aber:

Satz 6.6 Ist M 6= ∅ und f strikt konvex, so besitzt (P ) hochstens eine Losung.

Beweis: Waren x∗1, x∗2 ∈ M optimal und x∗1 6= x∗2, so ware f(x∗1) = f(x∗2) = inf(P ),

also inf(P ) = 12f(x∗1) + 1

2f(x∗2) > f

(12x∗1 + 1

2x∗2)

und x := 12x∗1 + 1

2x∗2 ∈ M . Dies ist ein

Widerspruch zur Optimalitat von x∗1 und x∗2. 2

Schießlich zeigen wir noch:

Satz 6.7 Ist M 6= ∅ und f stetig und gleichmaßig konvex, so ist (P ) eindeutig losbar.

Beweis: Wegen des letzten Satzes ist nur die Existenz zu zeigen, da jede gleichmaßigkonvexe Funktion strikt konvex ist.Halte x ∈ M fest und definiere M := {x ∈ M : f(x) ≤ f(x)}. Jedes Minimum von f aufM ist auch Minimum von f auf M , denn fur x ∈M \M gilt ja f(x) > f(x) ≥ min

{f(y) :

y ∈ M}. Wir zeigen, dass M beschrankt ist. Dann ist M kompakt, und f besitzt auf M

sicher ein Minimum.Wahle δ > 0 mit |f(x)− f(x)| ≤ 1 fur ‖x − x‖ ≤ δ. Dann gilt f(x) ≥ f(x)− 1 =: γ furalle x ∈ M , ‖x− x‖ ≤ δ. Sei jetzt x ∈ M , x 6= x, beliebig, setze λ := δ/‖x− x‖.1. Fall: λ ≥ 1/2. Dann ist ‖x− x‖ ≤ 2 δ.2. Fall: λ ≤ 1/2. Dann ist 1− λ ≥ 1/2, also

f(x) ≥ λf(x) + (1− λ)f(x) ≥ f(λx+ (1− λ)x

)+ c λ(1− λ)‖x− x‖2

≥ γ + c λ(1− λ)‖x− x‖2 = γ + c δ (1− λ)‖x− x‖

≥ γ +cδ

2‖x− x‖ ,

da ‖(λx+ (1− λ)x

)− x‖ = λ‖x− x‖ ≤ δ.

Also ist zusammen

‖x− x‖ ≤ max

{2δ ,

2[f(x)− γ

]c δ

}fur alle x ∈ M .

2

69

6.3 Das duale Problem

Sei jetzt eine konvexe Menge K ⊆ Rn, konvexe Funktionen f : K −→ R und gi : K −→ R,i = 1, . . . , p, sowie eine Matrix A ∈ Rm×n und ein Vektor b ∈ Rm gegeben. In diesemKapitel behandeln wir Probleme der Form:

(P ) Minimiere f(x) auf M :={x ∈ Rn : x ∈ K, g(x) ≤ 0, Ax = b

}.

Die Menge M ist konvex (klar?).

Beispiele 6.8 und Spezialfalle:

(a) f(x) = c>x mit c ∈ Rn, K = {x ∈ Rn : x ≥ 0}, und Funktionen gi treten nicht auf.Dies liefert das lineare Optimierungsproblem in der zweiten Normalform (P2) vonSeite 5 im Skript. Ist K = Rn, g(x) = Ax− b, so erhalten wir die erste Normalform(P1).

(b) Ist c ∈ Rn, Q ∈ Rn×n symmetrisch und positiv semidefinit, so setzen wir

f(x) := x>Qx+ c>x , x ∈ Rn .

Dann ist f konvex. Am einfachsten sieht man dies, wenn man die Charakterisierungder Konvexitat uber die zweite Ableitung benutzt: Eine zweimal stetig differenzier-bare Funktion f : Rn ⊇ K → R ist genau dann konvex auf K, wenn die Hesse-Matrix ∇2f(x) in allen Punkten x ∈ K positiv semidefinit ist. Fur unser Beispielist ∇2f(x) = 2Q fur jedes x ∈ Rn, und diese Matrix ist nach Voraussetzung positivsemidefinit.

Wir formen (P ) so um, dass wir es graphisch veranschaulichen und dann genau wie beilinearen Problemen ein duales Problem formulieren konnen. Betrachte dazu die Menge

Λ :={(f(x) + r, g(x) + z, Ax− b) ∈ R× Rp × Rm : r ≥ 0, z ≥ 0p, x ∈ K

}und Λ0 := Λ ∩

(R× {0p} × {0m}

), sowie das Problem:

(P ) Minimiere ϕ(β, u, v) := β unter (β, u, v) ∈ Λ0 .

Die Menge Λ ist konvex. Dies sieht man so: Es seien λ ∈ [0, 1], rj ≥ 0, zj ≥ 0p und xj ∈ Kgegeben, j = 1, 2. Dann sind

(f(xj) + rj, g(xj) + zj, Axj − b

)∈ Λ fur j = 1, 2. Setze dann

x0 := λx1 + (1− λ)x2 ∈ K ,

r0 := λf(x1) + (1− λ)f(x2) − f(x0) + λr1 + (1− λ)r2 ≥ 0 ,

z0 := λg(x1) + (1− λ)g(x2) − g(x0) + λz1 + (1− λ)z2 ≥ 0 .

Dann ist

λ[f(x1) + r1] + (1− λ)[f(x2) + r2] = f(x0) + r0 ,

λ[g(x1) + z1] + (1− λ)[g(x2) + r2] = g(x0) + z0 ,

λ[Ax1 − b] + (1− λ)[Ax2 − b] = Ax0 − b .

70

Dies beweist die Konvexitat Es ist

(β, u, v) ∈ Λ0 ⇐⇒ ∃r ≥ 0 , z ≥ 0 , x ∈ K mit β = f(x) + r , 0 = g(x) + z , 0 = Ax− b .⇐⇒ ∃x ∈ K , β ≥ f(x) mit g(x) ≤ 0 und Ax = b

⇐⇒ ∃x ∈M , β ≥ f(x) .

Also ist (P ) aquivalent zu (P ).

Das duale Problem soll darin bestehen, unter allen Hyperebenen in R × Rp × Rm,die nicht parallel zu R × {0} × {0} sind und Λ im nichtnegativen Halbraum enthalten,diejenige zu finden, deren Schnitt mit R × {0} × {0} maximal ist. Solche Hyperebenenwerden beschrieben durch

H(γ, u, v) :={(t, w, z) ∈ R× Rp × Rm : t+ u>w + v>z = γ

}mit zugehorigem Halbraum

H+(γ, u, v) :={(t, w, z) ∈ R× Rp × Rm : t+ u>w + v>z ≥ γ

}.

Das duale Problem kann also formuliert werden als:

(D) Maximiere ψ(γ, u, v) := γ unter Λ ⊆ H+(γ, u, v) .

Es ist

Λ ⊆ H+(γ, u, v) ⇐⇒ f(x) + r + u>(g(x) + z) + v>(Ax− b) ≥ γ

fur alle x ∈ K , z ≥ 0 , r ≥ 0

⇐⇒[f(x) + u>g(x) + v>(Ax− b)

]+ u>z ≥ γ

fur alle x ∈ K , z ≥ 0 . (∗)

Setzen wir speziell z = 0, so erhalten wir

f(x) + u>g(x) + v>(Ax− b) ≥ γ fur alle x ∈ K .

71

Wir zeigen, dass diese Bedingung zusammen mit u ≥ 0 sogar aquivalent zu (∗) ist. Dazumussen wir offenbar zeigen, dass u ≥ 0 aus der Formel (∗) folgt. Ware dies nicht der Fall,so wurde ein k existieren mit uk < 0. Halten wir dann ein x ∈ K fest und setzen

zj =

{0, j 6= k ,

α, j = kfur α > 0 ,

so ist αuk ≥ γ − [f(x) + u>g(x) + v>(Ax − b)]. Fur α → ∞ konvergiert die linke Seitegegen −∞, ein Widerspruch.Also ist u ≥ 0 und daher

Λ ⊆ H+(γ, u, v) ⇐⇒ u ≥ 0 und[f(x) + u>g(x) + v>(Ax− b)

]≥ γ fur alle x ∈ K .

Wir definieren die Funktion

F (u, v) := infx∈K

[f(x) + u>g(x) + v>(Ax− b)

]und haben dann, dass (D) aquivalent ist zu:

(D) Maximiere F (u, v) auf N :={(u, v) ∈ Rp × Rm : u ≥ 0 , F (u, v) > −∞

}Wie sieht (D) in den Spezialfallen aus?

(a) Sei zunachst f(x) = c>x und M = {x ∈ Rn : x ≥ 0 , Ax = b}. Dann hat (D) dieForm

(D) Maximiere F (v) = infx≥0

[c>x+ v>(Ax− b)

]= inf

x≥0

[(c+ A>v)>x

]− v>b

auf N = {v ∈ Rm : F (v) > −∞}. Es ist genau dann F (v) > −∞, wenn c+A>v ≥ 0(klar?), und in diesem Fall ist F (v) = (−v)>b. Setzen wir y = −v, so erhalten wirdas Problem, y>b zu maximieren unter der Nebenbedingung A>y ≤ c. Dies ist dasduale Problem, das wir schon kennen!

(b) Sei jetzt f(x) = c>x mit M = {x ∈ Rn : Ax− b ≤ 0}. Es verbleibt als Aufgabe, dieAquivalenz von (D) mit dem dualen Problem dieses linearen Problems zu zeigen.

(c) Jetzt betrachten wir das quadratische Problem:

(P ) Minimiere x>Qx+ c>x unter Ax = b , x ≥ 0 ,

mit positiv semidefiniter Matrix Q ∈ Rn×n. Wir setzen K = Rn und g(x) = −x underhalten

F (u, v) = infx∈Rn

[x>Qx+ c>x− u>x+ v>(Ax− b)

]= inf

x∈Rn

[x>Qx+ (c− u+ A>v)>x

]− v>b ,

sowieN =

{(u, v) ∈ Rn × Rm : u ≥ 0 , F (u, v) > −∞

}.

72

Wir benotigen

Lemma 6.9 Sei Q symmetrisch und positiv semidefinit, d ∈ Rn. Dann ist

infx∈Rn

[x>Qx+ d>x] =

{−z>Qz, falls es z gibt mit 2Qz + d = 0 ,

−∞, sonst, d.h. falls d /∈ W (Q) .

Beweis: (i) Es gebe z mit 2Qz + d = 0. Die binomische Formel liefert:

[x>Qx+ d>x]− [z>Qz + d>z] = 2 z>Q(x− z) + d>(x− z) + (x− z)>Q(x− z)︸ ︷︷ ︸≥ 0

≥ (2Qz + d)>(x− z) = 0 .

Also ist x>Qx+ d>x ≥ z>Qz + d>z = −z>Qz.(ii) Es gebe kein z mit 2Qz+ d = 0. Dies bedeutet, dass d 6∈ W (Q). Zerlege d = d+ d mitd ∈ W (Q) und d ⊥ W (Q). Setze xt := −td fur t ≥ 0. Es ist d 6= 0, da d /∈ W (Q). Dannist, da Qd ∈ W (Q),

x>t Qxt + d>xt = t2 d>Qd− t d>d = −t‖d‖2 −→ −∞ , t→∞.

Also ist infx∈Rn

[x>Qx+ d>x] = −∞. 2

Wenden wir dieses Lemma auf

F (u, v) = infx∈Rn

[x>Qx+ (c− u+ A>v)>x] − v>b

an, so ist

F (u, v) > −∞ ⇐⇒ es gibt z ∈ Rn mit 2Qz + c− u+ A>v = 0 ,

und in diesem Fall istF (u, v) = −z>Qz − v>b .

Also ist (D) aquivalent zu:

(D) Maximiere − z>Qz − b>v auf N :={(z, v) ∈ Rn × Rm : 2Qz + c+ A>v ≥ 0

}.

Ersetzen wir v durch −y, so erhalten wir die endgultige Form:

(D) Maximiere b>y − z>Qz auf N ={(z, y) ∈ Rn × Rm : 2Qz + c− A>y ≥ 0

}.

Wir erkennen wieder, dass im Fall Q = O (Nullmatrix) dieses duale Problem genau dieForm des dualen Problems fur lineare Optimierungsaufgaben besitzt.

Beispiel 6.10 Gegeben seien a∗j ∈ Rn, j = 1, . . . ,m. Gesucht ist der Umkreis mit demkleinsten Radius. Dies formulieren wir so:

(P1) Finde minimales r, so daß ‖a∗j − x‖ ≤ r fur alle j .

Die Nebenbedingung ist aquivalent zu ‖a∗j‖2 − 2 a>∗jx+ ‖x‖2 ≤ r2.

73

Die Zielfunktion ist in diesem Beispiel linear, namlich f(x, r) = r, die Nebenbedingungist quadratisch, aber nicht konvex:

gj(x, r) := ‖x‖2 − 2 a>∗j x − r2 + ‖a∗j‖2 , j = 1, . . . ,m .

Wir transformieren das Problem auf eins mit quadratischer Zielfunktion und linearenNebenbedingungen:Setze x0 := ‖x‖2 − r2. Dann ist r2 = ‖x‖2 − x0, also haben wir:(P2)Minimiere f(x0, x) = ‖x‖2 − x0 unter x0 − 2 a>∗j x ≤ −‖a∗j‖2 fur j = 1, . . . ,m .

(P2) ist ein quadratisches Optimierungsproblem mit linearen Ungleichungen als Neben-bedingungen. (Stellen Sie die Matrix Q und den Vektor c auf!) Wir haben:

Lemma 6.11 Die Probleme (P1) und (P2) sind aquivalent in dem folgende Sinn:

(a) Ist (x, r) zulassig (bzw. optimal) fur (P1), so ist (x, x0) mit x0 = ‖x‖2 − r2 zulassig(bzw. optimal) fur (P2).

(b) Ist (x, x0) zulassig (bzw. optimal) fur (P2), so ist ‖x‖2 ≥ x0 und (x, r) mit r =√‖x‖2 − x0 ist zulassig (bzw. optimal) fur (P1).

Beweis: (a) ist klar, fur (b) ist nur ‖x‖2 ≥ x0 zu zeigen:Aus x0−2 a>∗j x ≤ −‖a∗j‖2 folgt ‖a∗j‖2−2 a>∗j x ≤ −x0, d.h. mit quadratischer Erganzung0 ≤ ‖a∗j − x‖2 ≤ ‖x‖2 − x0. 2

Auf dieses Beispiel kommen wir spater noch zuruck.

6.4 Die Dualitatssatze

In diesem Abschnitt sei K = Rn. Damit haben wir das Optimierungsproblem:

(P ) Minimiere f(x) auf M := {x ∈ Rn : g(x) ≤ 0, Ax = b} ,

und

(D) Maximiere F (u, v) := infx∈Rn

[f(x) + u>g(x) + v>(Ax− b)

]auf

N ={(u, v) ∈ Rp × Rm : u ≥ 0, F (u, v) > −∞

}.

Schon hier fuhren wir die Lagrangefunktion L : Rn × Rp × Rm → R ein:

L(x, u, v) := f(x) + u>g(x) + v>(Ax− b) , x ∈ Rn , u ∈ Rp , v ∈ Rm .

Dann ist F (u, v) = inf{L(x, u, v) : x ∈ Rn}. Die dualen Variablen u und v heißen auchLagrangesche Multiplikatoren. Wir hangen einfach an die Zielfunktion f die Neben-bedingungen mit den Multiplikatoren an. Darauf werden wir noch genauer im nachstenKapitel eingehen.

Einfach ist wieder der Nachweis des schwachen Dualitatssatzes:

74

Satz 6.12 (schwacher Dualitatssatz)

Gegeben seien (P ) und (D). Dann gilt:

f(x) ≥ F (u, v) fur alle x ∈M und (u, v) ∈ N .

Ist f(x∗) = F (u∗, v∗) fur ein x∗ ∈ M und ein Paar (u∗, v∗) ∈ N , so sind x∗ und (u∗, v∗)optimal fur (P ) bzw. (D).

Der Beweis ist trivial wegen der Ungleichungskette

F (u, v) ≤ f(x) + u>g(x)︸ ︷︷ ︸≤0

+ v>(Ax− b︸ ︷︷ ︸=0

) ≤ f(x) .

2

Fur den starken Dualitatssatz benotigen wir zwei Zusatzvoraussetzungen. Diese fasst manzusammen und nennt sie (verallgemeinerte) Slaterbedingung:

(SB) (i) RangA = m ≤ n, und

(ii) es gibt x ∈ Rn mit Ax = b und gi(x) < 0 fur alle i = 1, . . . , p.

Satz 6.13 (starker Dualitatssatz)

f, g seien stetig, das Problem (P ) sei losbar durch x∗ ∈ M und die Slaterbedingung (SB)gelte. Dann gibt es auch eine Losung (u∗, v∗) ∈ N von (D) und f(x∗) = F (u∗, v∗). Fernergilt u∗j gj(x

∗) = 0 fur alle j = 1, . . . , p.

Beweis: Ahnlich wie oben betrachten wir die Mengen

Λ` :={(f(x) + r, g(x) + z, Ax− b) ∈ R× Rp × Rm : r ≥ 0, z ≥ 0, ‖x‖ ≤ `

}.

Diese Mengen sind nicht leer, konvex und abgeschlossen. Die Konvexitat von Λ` haben wiroben bei der Konvexitat von Λ schon gezeigt. (Man setze dort namlich nur K =

{x ∈ Rn :

‖x‖ ≤ `}.) Um die Abgeschlossenheit von Λ` zu zeigen, betrachten wir irgendeine Folge(

f(xk) + rk, g(xk) + zk, Axk − b)

in Λ`, die gegen ein (α, u, v) ∈ R×Rp×Rm konvergiert.Dann ist ‖xk‖ ≤ `, rk ≥ 0 und zk ≥ 0 fur alle k ∈ N. Es gibt daher eine konvergenteTeilfolge xk → x und ‖x‖ ≤ `. Wegen f(xk) + rk → α und g(xk) + zk → u konvergierenalso auch rk → r und zk → z mit r ≥ 0 und z ≥ 0, also α = f(x) + r, u = g(x) + z undauch Ax− b = v. Damit ist die Abgeschlossenheit von Λ` gezeigt.

Es ist(f(x∗) − 1/`, 0, 0

)6∈ Λ`, denn sonst wurde es x ∈ Rn, r ≥ 0 und z ≥ 0 geben

mit f(x∗) − 1/` = f(x) + r, 0 = g(x) + z und 0 = Ax − b. Diese wurde x ∈ M undf(x) = f(x∗)− 1/`− r < f(x∗) bedeuten, ein Widerspruch zur Optimalitat von x∗.

Also liegt gehort der Punkt(f(x∗)−1/`, 0, 0

)nicht zur konvexen, abgeschlossenene Menge

Λ`. Daher kann ich den Trennungssatz im Raum R×Rp×Rm anwenden: Fur jedes ` ∈ Nexistiert (λ`, u`, v`) ∈ R× Rp × Rm und γ` ∈ R mit λ2

` + ‖u`‖2 + ‖v`‖2 = 1 und

λ`

[f(x) + r

]+ u>`

[g(x) + z

]) + v>` [Ax− b] ≥ γ` ≥ λ`

[f(x∗)− 1

`

](∗)

75

fur alle x mit ‖x‖ ≤ ` und alle r ≥ 0, z ≥ 0. Dies gilt fur jedes `. Es gibt konvergenteTeilfolgen λ` → λ, u` → u und v` → v wegen λ2

` + ‖u`‖2 + ‖v`‖2 = 1. Wegen (∗) ist dannauch (γ`) beschrankt, also γ` → γ (fur eine weitere Teilfolge). Fur festes x ∈ Rn, r ≥ 0,z ≥ 0, konnen wir ` gegen ∞ gehen lassen, erhalten ‖x‖ ≤ ` und dann aus (∗):

λ[f(x) + r

]+ u>

[g(x) + z

]+ v>[Ax− b] ≥ γ ≥ λf(x∗) . (∗∗)

Dies gilt fur alle x ∈ Rn, r ≥ 0 und z ≥ 0. Außerdem ist λ2 + ‖u‖2 + ‖v‖2 = 1.Es ist λ ≥ 0 und u ≥ 0 (bekannte Schlussweise). Wir zeigen sogar λ > 0. Annahmeλ = 0. Dann setzen wir z = 0 und x = x (aus der Slaterbedingung) und erhaltenu>︸︷︷︸≥0

g(x)︸︷︷︸<0

+ v>(Ax− b︸ ︷︷ ︸=0

) ≥ γ ≥ 0, also u = 0. Damit hatten wir v>(Ax − b) ≥ 0 fur alle

x ∈ Rn, also (A>v)>x ≥ v>b fur alle x ∈ Rn. Hieraus folgt A>v = 0 und, da A> injektivwegen der Slaterbedingung, v = 0. Dies widerspricht λ2 +‖u‖2 +‖v‖2 = 1. Also ist λ > 0.Setze schließlich u∗ := u/λ ≥ 0 und v∗ := v/λ. Dann folgt aus (∗∗) fur r = 0 und z = 0:

f(x) + u∗>g(x) + v∗>(Ax− b) ≥ f(x∗) fur alle x ∈ Rn . (∗ ∗ ∗)

Nimmt man das Infimum uber x, so erhalt man F (u∗, v∗) ≥ f(x∗), also Gleichheit nachdem schwachen Dualitatssatz. Nimmt man x = x∗ in (∗ ∗ ∗), so erhalt man u∗>g(x∗) = 0,also u∗j gj(x

∗) = 0 fur alle j = 1, . . . , p. 2

Wir konnen nun einen weiteren Hauptsatz beweisen.

Satz 6.14 (Sattelpunktsatz)

Es sei das konvexe Optimierungsproblem (P ) gegeben mit K = Rn. Die Slaterbedingung(SB) sei erfullt. Definiere wieder die Lagrangefunktion durch

L(x, u, v) := f(x) + u>g(x) + v>(Ax− b) , x ∈ Rn , u ∈ Rp , v ∈ Rm .

(a) Sei x∗ ∈M optimal fur (P ). Dann existieren u∗ ∈ Rp, v∗ ∈ Rn mitu∗>g(x∗) = 0 und

L(x∗, u, v) ≤ L(x∗, u∗, v∗) ≤ L(x, u∗, v∗) (6.1)

fur alle x ∈ Rn, u ∈ Rp mit u ≥ 0 und alle v ∈ Rm.

Dies bedeutet, dass L in (x∗, u∗, v∗) einen Sattelpunkt besitzt: x∗ ist Minimum vonL(·, u∗, v∗) auf Rn, und (u∗, v∗) ist Maximum von L(x∗, ·, ·) auf Rp

≥0 × Rm.

(b) Falls es (x∗, u∗, v∗) ∈ Rn × Rp × Rm mit (6.1) gibt, so ist x∗ Losung von (P ) und(u∗, v∗) Losung von (D).

Beweis: (a) Sei u∗, v∗ wie im starken Dualitatssatz. Fur x ∈ Rn u ∈ Rp und v ∈ Rm istdann

L(x∗, u, v) = f(x∗) + u>︸︷︷︸≥0

g(x∗)︸ ︷︷ ︸≤0

+ v>(Ax∗ − b︸ ︷︷ ︸=0

) ≤ f(x∗) = L(x∗, u∗, v∗)

≤ f(x) + u∗>g(x) + v∗>(Ax− b) = L(x, u∗, v∗) .

76

(b) Aus der Ungleichung

L(x∗, u, v) = f(x∗) + u>g(x∗) + v>(Ax∗ − b) ≤ L(x∗, u∗, v∗)

fur alle u ≥ 0 und v ∈ Rm folgt Ax∗ = b und g(x∗) ≤ 0, also x∗ ∈ M . Fur u = 0 folgtweiter f(x∗) ≤ f(x∗)+u∗>g(x∗) ≤ f(x∗), also u∗>g(x∗) = 0. Aus der rechten Ungleichungfolgt

L(x∗, u∗, v∗) = f(x∗) ≤ L(x, u∗, v∗) = f(x) + u∗>g(x) + v∗>(Ax− b)

fur alle x ∈ Rn, also

f(x∗) ≤ F (u∗, v∗) = infx∈Rn

[f(x) + u∗>g(x) + v∗>(Ax− b)

].

Der schwache Dualitatssatz liefert wieder die Behauptung. 2

Schon im Vorgriff auf das nachste Kapitel konnen wir aus dem Sattelpunktsatz eine La-grangesche Multiplikatorenregel ableiten. Dazu benotigen wir die folgende notwendigeOptimalitatsbedingung, die fur n = 1 schon aus der Schule bekannt ist:

Lemma 6.15 Sei U ⊆ Rn offen (!), f : U → R differenzierbar, und x∗ ∈ U ein lokalesMinimum von f auf U . Dann ist ∇f(x∗) = 0.

Beweis: Sei h ∈ Rn ein beliebiger, festgehaltener Einheitsvektor. Setze ψ(t) := f(x∗+th),|t| ≤ ε, wobei ε > 0 so klein gewahlt ist, dass zum einen x∗ + th ∈ U und zum anderenf(x∗) ≤ f(x∗ + th) fur alle |t| ≤ ε gilt. Daher ist t = 0 Minimum von ψ auf dem Intervall[−ε, ε] ⊆ R. Also ist ψ′(0) = 0, also (Kettenregel!) ∇f(x∗)>h = 0. Da dies fur alleEinheitsvektoren h gilt, so folgt ∇f(x∗) = 0. 2

Angewandt auf die Lagrangefunktion haben wir:

Korollar 6.16 Es seien f : Rn → R, gi : Rn → R, i = 1, . . . , p, konvex und differenzier-bar, und die Slaterbedingung (SB) sei erfullt. Es ist x∗ ∈M genau dann eine Losung von(P ), wenn es u∗ ∈ Rp mit u∗ ≥ 0 und v∗ ∈ Rm gibt mit

∇f(x∗) +

p∑j=1

u∗j∇g(x∗) + A>v∗ = 0 (6.2a)

undu∗jgj(x

∗) = 0 fur alle j = 1, . . . , p . (6.2b)

Beweis: Ist x∗ ∈ M eine Losung, so besagt der Sattelpunktsatz, dass x∗ ein Minimumvon L(·, u∗, v∗) auf Rn ist. Also ist nach dem vorigen Lemma ∇xL(x∗, u∗, v∗) = 0, d.h.(6.2a).Es gebe jetzt umgekehrt ein u∗ ∈ Rp mit u∗ ≥ 0 und ein v∗ ∈ Rm mit (6.2a) und (6.2b).Dies impliziert ∇xL(x∗, u∗, v∗) = 0. Nach Satz 6.3 gilt, da L(·, u∗, v∗) konvex ist:

L(x, u∗, v∗) ≥ L(x∗, u∗, v∗) + ∇xL(x∗, u∗, v∗)>︸ ︷︷ ︸=0

(x− x∗)

= L(x∗, u∗, v∗) = f(x∗)

≥ f(x∗) + u>︸︷︷︸≥0

g(x∗)︸ ︷︷ ︸≤0

+ v> (Ax∗ − b)︸ ︷︷ ︸=0

= L(x∗, u, v) fur alle x ∈ Rn , u ≥ 0 , v ∈ Rm .

77

Mit dem Sattelpunktsatz folgt die Behauptung. 2

Beispiel 6.17 400 m3 Kies sollen von einem Ort zu einem anderen transportiert werden.Dies geschehe durch mehrmaligen Transport in einer oben offenen Box der Lange t1, derBreite t2 und der Hohe t3. Der Boden und die beiden Langsseiten mussen aus einem Ma-terial hergestellt werden, das zwar nichts kostet, von dem aber nur 4 m2 zur Verfugungsteht. Das Material fur die beiden Querseiten kostet 200 DM pro m2. Ein Transportder Box kostet 1 DM. Wie hat man die Box zu konstruieren? Losung: Damit in die zukonstruierende Box uberhaupt etwas hineingetan werden kann, hat man die Nebenbedin-gungen t1, t2, t3 > 0. Dadurch, dass von dem Material fur den Boden und fur die beidenLangsseiten nur 4 m2 zur Verfugung stehen, hat man noch die Restriktion t1t2 +2t1t3 ≤ 4.Die Herstellung einer Box der Lange t1, der Breite t2 und der Hohe t3 (in Metern) kostet400 t2 t3 (in DM), als Transportkosten hat man ferner 400 t−1

1 t−12 t−1

3 (in DM), denn so oftmuss man fahren! Insgesamt ist also das Optimierungsproblem zu losen:

Minimiere t−11 t−1

2 t−13 + t2 t3 unter den Nebenbedingungen

1

4t1t2 +

1

2t1t3 ≤ 1 und t1, t2, t3 > 0 .

Probleme solcher Form nennt man auch geometrische Probleme. Diese kann man um-formen, indem man tj = exp(xj) setzt. Dann erhalten wir

Minimiere e−x1−x2−x3 + ex2+x3 unter ex1+x2 + 2 ex1+x3 ≤ 4 .

Die Zielfunktion und die Restriktionsfunktion

f(x) := e−x1−x2−x3 + ex2+x3 und g(x) := ex1+x2 + 2 ex1+x3 − 4

sind beide konvex, da x 7→ exp(a>x) konvex ist fur jedes a ∈ R3!

Die Lagrangefunktion hat die Form:

L(x, u) = e−x1−x2−x3 + ex2+x3 + u(ex1+x2 + 2 ex1+x3 − 4

).

Wir mussen jetzt also die Bedingungen ∇xL(x, u) = 0 und u g(x) = 0 ausschlachten. Wirrechnen diese Bedingungen aus:

−e−x1−x2−x3 + u(ex1+x2 + 2 ex1+x3

)= 0 (6.3a)

−e−x1−x2−x3 + ex2+x3 + u ex1+x2 = 0 (6.3b)

−e−x1−x2−x3 + ex2+x3 + 2u ex1+x3 = 0 (6.3c)

u(ex1+x2 + 2 ex1+x3 − 4

)= 0 . (6.3d)

Aus (6.3a) folgt u 6= 0, also reduzieren sich (6.3d) und (6.3a) auf

ex1+x2 + 2 ex1+x3 = 4 und 4u = e−x1−x2−x3 . (6.3e)

Subtraktion von (6.3b) und (6.3c) liefert ex2 = 2 ex3 . Dies wieder eingesetzt in die erste

Gleichung von (6.3e) liefert ex1+x2 = 2. Eingesetzt in (6.3a) liefert 4u = u(2 + 2ex1+x3

),

d.h. ex1+x3 = 1, d.h. x3 = −x1. Damit liefert die zweite Gleichung von (6.3e) 4u = e−x2 ,

und (6.3b) hat die Form 4u = ex2−x1 + 2u, d.h. 2u = ex2−x1 . Die eingerahmten Formelnliefern schnell u = 1/4, x1 = −x3 = ln 2 und x2 = 0, d.h. (t1, t2, t3) = (2, 1, 1/2).

78

7 Das quadratische Problem

In diesem Kapitel betrachten wir das folgende quadratische Optimierungsproblem:

(P ) Minimiere f(x) := x>Qx + c>x auf M ={x ∈ Rn : x ≥ 0, Ax = b

},

wobei Q ∈ Rn×n eine beliebige quadratische Matrix ist, c ∈ Rn, A ∈ Rm×n und b ∈ Rm.

Bemerkungen: (a) Wegen x>Qx = x>Q>x ist

f(x) = x>Qx+ c>x =1

2x>(Q+Q>)x+ c>x = x>Qsymx+ c>x ,

und Qsym = 12(Q+Q>) ist offenbar symmetrisch. Also konnen wir uns ohne Einschrankung

auf symmetrische Matrizen Q beschranken.

(b) Ist Q symmetrisch und positiv semidefinit, so ist die Zielfunktion konvex, und wirhaben einen Spezialfall eines konvexen Problems vor uns. Fur diesen gelten naturlich alleAussagen fur den konvexen Fall. Es gilt aber mehr bzw. unter schwacheren Voraussetzun-gen, wie wir gleich sehen werden.

(c) Restriktionenmengen der Form{x ∈ Rn : Ax ≤ b

}konnen wieder durch Aufspaltung

x = x+−x− mit x± ≥ 0 und Einfuhrung von Schlupfvariablen in die Form vonM gebrachtwerden.

7.1 Ein Existenzsatz und der Satz von Kuhn-Tucker

Der folgende Existenzsatz kommt ohne eine Forderung an die Menge Λ aus und gilt auchohne die Voraussetzung der Definitheit. Er entspricht genau dem Existenzsatz 3.1 derlinearen Optimierung.

Satz 7.1 Sei (P ) zulassig und inf(P ) > −∞. Dann besitzt (P ) eine Losung.

Beweis: Da M 6= ∅, so existiert ρ0 > 0 mit Mρ :={x ∈M : ‖x‖ ≤ ρ

}6= ∅ fur alle ρ ≥ ρ0.

Die Probleme

(Pρ) Minimiere f(x) auf Mρ

sind fur ρ ≥ ρ0 alle losbar, da Mρ kompakt ist. Es ist min(Pρ) monoton nichtsteigendund lim

ρ→∞min(Pρ) = inf(P ) (man versuche dies zu beweisen). Sei xρ ∈ Mρ die Losung

mit minimaler euklidischer Norm von (Pρ) (diese existiert, da die Menge der optimalenLosungen kompakt ist. Man beweise dies.) Wir zeigen jetzt:

(1) Es gibt ρ∗ ≥ ρ0 mit ‖xρ‖ < ρ fur alle ρ ≥ ρ∗

(2) min(Pρ) = inf(P ) fur ein ρ ≥ ρ∗, d.h. xρ ist Losung von (P ).

Beweis von (1): Andernfalls gabe es Folge ρk → ∞ mit ‖xρk‖ = ρk fur jedes k. Setzeyk := xρk/ρk fur k ∈ N. Dann gibt es wegen ‖yk‖ = 1 eine konvergente Teilfolge von (yk),o.B.d.A: yk → y, k → ∞, und y ≥ 0, ‖y‖ = 1, Ay = 0, da Ayk = 1

ρkb → 0. Außerdem

folgt y>Qy = 0, denn:

−∞ < inf(P ) ≤ f(xρk) =1

2ρ2

k (yk)>Qyk + ρk c>yk ≤ f(xρ0)

79

fur k ∈ N (da Mρ0 ⊆ Mρkund xρk optimal fur (Pρk

) ist). Division durch ρ2k liefert

y>Qy = 0. Daher ist fur jedes k ∈ N und t > 0 zunachst xρk + ty ∈M und dann

f(xρk + ty) = f(xρk) + t[2 y>Qxρk + c>y

].

Es ist 2 y>Qxρk + c>y ≥ 0 fur alle k (sonst ware f(xρk + ty) → −∞, t → +∞, einWiderspruch). Wir zeigen jetzt, dass auch folgendes gilt:

(i) xρk − ty ∈M ,

(ii) ‖xρk − ty‖ < ‖xρk‖,

(iii) f(xρk − ty) = f(xρk)

fur große k und kleine t > 0. Dies ware dann ein Widerspruch zur Wahl von xρk .

Zu (i): Es ist A(xρk − ty) = b wegen Ay = 0. Sei J ={j ∈ {1, . . . , n} : yj = 0

}. Fur j ∈ J

ist (xρk − ty)j ≥ 0 fur alle k ∈ N und t ≥ 0. Sei ε := min{yj : j 6∈ J} ∈ (0, 1]. Wahle k sogroß, dass yk

j ≥ ε2

fur alle j 6∈ J . Dann gilt

(xρk − ty)j = ρk ykj − tyj ≥ ρk

ε

2− t ≥ 0 fur alle t ∈

(0,ε

2ρk

).

Zu (ii): Wahle außerdem k so, dass y>yk ≥ 12. Dann ist

‖xρk − ty‖2 = ‖xρk‖2 − t[2ρk y

>yk − t‖y‖2]< ‖xρk‖2 fur kleine t > 0 .

Zu (iii): Da xρk − ty ∈Mρk, so fur diese k und t > 0:

f(xρk) ≤ f(xρk − ty) = f(xρk) − t[2 y>Qxρk + c>y

]≤ f(xρk) ,

also Gleichheit!Damit sind (i), (ii), (iii) bewiesen und damit die Behauptung (1).

Beweis von (2): Angenommen, inf(P ) < min(Pρ) fur alle ρ ≥ ρ∗. Wegen min(Pρ) ↘inf(P ), ρ → ∞), existiert ρ2 > ρ1 ≥ ρ∗ mit f(xρ1) > f(xρ2) > inf(P ) und ‖xρj‖ < ρj

fur j = 1, 2. Dann ist ρ1 < ‖xρ2‖ < ρ2, denn sonst ware xρ2 ∈ Mρ1 mit kleineremFunktionswert. Setze ρ := ‖xρ2‖ ∈ (ρ1, ρ2). Dann ist ‖xρ‖ < ρ und f(xρ2) ≤ f(xρ), daxρ ∈Mρ2 .1. Fall: f(xρ2) = f(xρ), d.h. xρ ist optimal fur (Pρ2). Dies ist ein Widerspruch wegen‖xρ‖ < ρ = ‖xρ2‖.2. Fall: f(xρ2) < f(xρ). Es ist xρ2 ∈Mρ, also ein Widerspruch zur Optimalitat von xρ.Damit ist der Beweis schließlich beendet. 2

Wir kommen jetzt zu dem Satz von Kuhn-Tucker fur quadratische Probleme. Bei linea-ren und konvexen Problemen ist dieser Teil der starken Dualitatssatze und kann auch alsLagrangesche Multiplikatorenregel bezeichnet werden. Wir formulieren diese nocheinmal als eigenstandige Satze.

Satz 7.2 Sei x∗ ∈M Losung des linearen Problems

(LP ) Minimiere c>x auf M = {x ∈ Rn : Ax = b, x ≥ 0} .

Dann existiert ein Lagrange Multiplikator, d.h. y∗ ∈ Rm mit c+A>y∗ ≥ 0. Außerdemgilt die Gleichgewichtsbedingung (c+ A>y∗)>x∗ = 0.

80

Beweis: Aus der Existenz von x∗ folgt insbesondere, dass (LP ) zulassig ist und dassinf(LP ) > −∞. Aus Teil (ii) des starken Dualitatssatzes 3.5 folgt die Zulassigkeit desdualen Problems, also aus Teil (i) auch die Existenz y einer Losung des dualen Problems.Die Zulassigkeit liefert c+A>y ≥ 0. Die Folgerung aus Satz 3.5 liefert die Gleichgewichts-bedingung (A>y − c)>x∗ = 0. Mit y∗ = −y folgt die Behauptung. 2

Wir erinnern an das Korollar 6.16:

Sei x∗ ∈M Losung des konvexen Problems

(KP ) Minimiere f(x) auf M = {x ∈ Rn : g(x) ≤ 0, Ax = b} ,

und die Slaterbedingung (SB) sei erfullt. Es ist x∗ ∈M genau dann eine Losung von (P ),wenn es u∗ ∈ Rp mit u∗ ≥ 0 und v∗ ∈ Rm gibt mit

∇f(x∗) +

p∑j=1

u∗j∇gj(x∗) + A>v∗ = 0 , d.h. ∇f(x∗) + g′(x∗)>u∗ + A>v∗ = 0

und g(x∗)>u∗ = 0. Hier ist g′(x∗) ∈ Rp×n die Funktionalmatrix von g an der Stelle x∗.

Fur quadratische Probleme kommt er ohne die Slaterbedingung aus.

Satz 7.3 (Kuhn-Tucker)

Gegeben sei das quadratische Optimierungsproblem (P ).

(a) Sei x∗ ∈M Losung von (P ). Dann gibt es y∗ ∈ Rm mit

(i) 2Qx∗ + c+ A>y∗ ≥ 0 und

(ii) (2Qx∗ + c+ A>y∗)>x∗ = 0.

(b) Sei Q symmetrisch und positiv semidefinit, x∗ ∈ M , und es gebe y∗ ∈ Rm mit (i),(ii). Dann ist x∗ Losung von (P ).

Bemerkung: (x∗, y∗) ist dann jeweils die Losung von (D), denn aus (ii) folgt

2x∗>Qx∗ + c>x∗ = x∗>A>y∗ = b>y∗

alsof(x∗) = x∗>Qx∗ + c>x∗ = b>y∗ − x∗>Qx∗

und (x∗, y∗) ∈ N .

Beweis: fur beliebige x, x∗ ∈ Rn gilt die”binomische Formel“ in der Form

[x>Qx+ c>x]− [x∗>Qx∗ + c>x∗]

= 2x∗>Q(x− x∗) + c>(x− x∗) + (x− x∗)>Q(x− x∗) ,

alsof(x) = f(x∗) + [2Qx∗ + c]>(x− x∗) + (x− x∗)>Q(x− x∗) . (∗)

81

(a) Wir gehen so vor wie auch spater im allgemeinen nichtlinearen Fall und linearisierendas Problem. Fur x ∼ x∗ ist der letzte Teil

”quadratisch klein“. Betrachte daher die

linearisierte Aufgabe:

(LP ) Minimiere [2Qx∗ + c]>h unter Ah = 0 und hj ≥ 0 fur alle j ∈ J ,

wobei J ={j ∈ {1, . . . , n} : x∗j = 0

}die Menge der aktiven Indizes ist. Wir zeigen, dass

h∗ = 0 optimal fur (LP ) ist. Naturlich ist h∗ zulassig. Sei h ∈ Rn mit Ah = 0 und hj ≥ 0fur alle j ∈ J und [2Qx∗ + c]h < 0. Fur kleine t > 0 ist x∗ + th ∈M (unterscheide j ∈ Jund j /∈ J !)und wegen (∗) fur x = x∗ + th ist

f(x∗ + th) = f(x∗) + t[(2Qx∗ + c)>h︸ ︷︷ ︸

<0

+ t h>Qh].

Fur hinreichend kleine t ist f(x∗ + th) < f(x∗), ein Widerspruch zur Optimalitat vonx∗. Also ist h∗ = 0 optimal fur (LP ). Nun besagt der starke Dualitatssatz der linearenTheorie, dass es es eine Losung y∗ ∈ Rm des dualen Problems zu (LP ) gibt. Wie erhaltenwir das duale Problem? Ist J = {j1, . . . , jq}, so setzen wir = (j1, . . . , jq) und wahlenein Komplement k ∈ {1, . . . ,m}n−q. Wir zerlegen wieder A, h, c u.s.w. bezuglich und k.Insbesondere zerlegen wir h(k) = h+(k) − h−(k) mit h±(k) ≥ 0. Das Problem (LP ) hatdann die Form

Minimiere[(2Qx∗ + c)()> | (2Qx∗ + c)(k)> | − (2Qx∗ + c)(k)>

]

h()

h+(k)

h−(k)

unter

h()

h+(k)

h−(k)

0

0

0

und[A() |A(k) | − A(k)

]

h()

h+(k)

h−(k)

= 0 .

Der Satz 7.2 von Kuhn-Tucker der linearen Theorie liefert dann die Existenz von y ∈ Rm

mit A()>

A(k)>

−A(k)>

y ≤

(2Qx∗ + c)()

(2Qx∗ + c)(k)

−(2Qx∗ + c)(k)

,d.h.

A()>y ≤ 2(Qx∗)() + c() und A(k)>y = 2(Qx∗)(k) + c(k)

sowie der Gleichgewichtsbedingung[2Qx∗ + c − A>y

]>x∗ = 0. Mit y∗ = −y folgt die

Behauptung!

(b) Aus (∗) folgt fur beliebiges x ∈M (mit (i) und x ≥ 0 und (ii)):

f(x) ≥ f(x∗) + [2Qx∗ + c]>x − [2Qx∗ + c]>x∗

≥ f(x∗) − [A>y∗]>x + [A>y∗]>x∗

= f(x∗) −[A(x− x∗)

]>y∗ = f(x∗) .

Damit ist der Satz bewiesen. 2

82

Beispiel 7.4 Unter einem linearen Komplementaritatsproblem versteht man beigegebenen c ∈ Rn, Q ∈ Rn×n die folgende Aufgabe:

(P ) Bestimme x ∈ Rn mit x ≥ 0 , c+Qx ≥ 0 , und x>(x+Qx) = 0 .

Wir zeigen: Ist Q ∈ Rn×n symmetrisch und positiv semidefinit und existiert ein x ∈ Rn

mit c+Qx ≥ 0, so hat das lineare Komplementaritatsproblem (P ) eine Losung.

Beweis: Man betrachte das quadratische Problem

(P0) Minimiere f(x) := c>x+1

2x>Qx unter x ≥ 0 .

Nach Satz 7.1 besitzt (P0) eine Losung, falls (P0) zulassig (dies ist trivial) und inf(P0) >−∞ ist. Wir mussen also diese letzte Bedingung zeigen.Sei x ≥ 0 beliebig und x ∈ Rn ein nach Voraussetzung existierendes Element mit c+Qx ≥0. Dann ist

f(x)− f(x) = c>x +1

2x>Qx − c>x − 1

2x>Qx

= (c+Qx)>︸ ︷︷ ︸≥0

(x− x) +1

2(x− x)>Q(x− x)︸ ︷︷ ︸

≥0

≥ −(c+Qx)>x .

Daher ist inf(P ) ≥ f(x)− (c+Qx)>x > −∞, und (P0) besitzt Losung x∗. Der Satz vonKuhn-Tucker liefert also

c+Qx∗ ≥ 0 und x>(c+Qx∗) = 0 .

2

Als Abschluss dieses Abschnitts wollen wir noch die entsprechenden Satze fur das qua-dratische Optimierungsproblem in zweiter Standardform erwahnen. Sei also jetzt (P2)gegeben als:

(P2) Minimiere f(x) := x>Qx + c>x auf M ={x ∈ Rn : Ax ≤ b

},

mit den gleichen Voraussetzungen wie fur (P ). Der Existenzsatz 7.1 ist wortlich zu uber-nehmen. Der Satz von Kuhn-Tucker hat die Form:

Satz 7.5 (Kuhn-Tucker)

Gegeben sei das quadratische Optimierungsproblem in der Form (P2).

(a) Sei x∗ ∈M Losung von (P2). Dann gibt es u∗ ∈ Rm mit u∗ ≥ 0 und

(i) 2Qx∗ + c+ A>u∗ = 0 sowie

(ii) (b− Ax∗)>u∗ = 0.

(b) Sei Q symmetrisch und positiv semidefinit, x∗ ∈M , und es gebe y∗ ∈ Rm mit y∗ ≥ 0und (i), (ii). Dann ist x∗ Losung von (P2).

83

7.2 Das Verfahren von Goldfarb-Idnani

Wir betrachten jetzt das Problem

(P ) Minimiere f(x) := x>Qx+ c>x auf M ={x ∈ Rn : Ax ≤ b

}und machen die Voraussetzungen: Q ∈ Rn×n sei symmetrisch und positiv definit (d.h. esgibt γ > 0 mit x>Qx ≥ γ‖x‖2 fur alle x ∈ Rn), c ∈ Rn, A ∈ Rm×n und b ∈ Rm.

ai∗ seien jetzt wieder die Zeilenvektoren von A, also A =

a1∗...

am∗

.

Dann ist A>y =∑m

i=1 yia>i∗.

Das Verfahren von Goldfarb-Idnani ist ein duales Verfahren, d.h. es erzeugt dual-zulassigePaare (xk, uk), wobei xk aber nicht primal-zulassig sind (d.h. es gilt nicht Axk ≤ b).Nach Aufgabe 29 werden dual-zulassige Paare (xk, uk) beschrieben durch uk ≥ 0 und2Qxk + c+ A>uk = 0.

Man startet mit dem unrestringierten Problem, lost dieses und nimmt nach und nachweitere Restriktionen hinzu. Fur die genauere Beschreibung benotigen wir die folgendenHilfsprobleme:

Sei I ⊆ {1, . . . ,m} eine beliebige Teilmenge. Betrachte dann

(PI) Minimiere f(x) = x>Qx+ c>x auf MI :={x ∈ Rn : (Ax)i ≤ bi ∀i ∈ I

}.

Die Probleme (P ) und (PI) sind alle eindeutig losbar nach Satz 6.7. Wegen der Satze vonKuhn und Tucker sind x∗ ∈ M und x ∈ MI die optimalen Losungen von (P ) bzw. (PI)genau dann, wenn es u∗ ∈ Rm bzw. u ∈ R|I| gibt mit

u∗ ≥ 0 , c+ 2Qx∗ + A>y∗ = 0 , u∗i[(Ax∗)i − bi

]= 0 fur alle i = 1, . . . ,m ,

bzw. u ≥ 0 , c+ 2Qx+∑i∈I

uia>i∗ = 0 , ui

[(Ax)i − bi

]= 0 fur alle i ∈ I .

Wir nennen u∗ und u in Zukunft wieder Multiplikatoren.

Das Verfahren startet mit I0 = ∅ und erzeugt eine Folge (Ik) so, dass min(PIk) <min(PIk+1) (aber nicht notwendig Ik ⊆ Ik+1). Es halt den zugehorigen Multiplikatornichtnegativ. Wegen der Vergroßerung des Minimalwertes kann kein Problem zweimalangelaufen werden, und das Verfahren muss daher nach endlich vielen Schritten stoppen.

84

Algorithmus von Goldfarb-Idnani:

Sei I0 := ∅, x0 := −12Q−1c, k := 0

?xk Losung von (P )

STOPxk ∈M?�

ja

?

nein

Bestimme p ∈ {1, . . . ,m} \ Ik

mit ap∗xk > bp

?

MIk∪{p} = ∅?�ja(P ) ist nicht zulassig,

STOP

?

nein

ap∗ ∈ span {ai∗ : i ∈ Ik}?�ja

?

Reduziere Ik so, dass

ap∗ 6∈ span {ai∗ : i ∈ Ik}Alg. (B) -

?

nein

Bestimme xk+1, Ik+1 ⊆ Ik ∪ {p}mit f(xk+1) > f(xk).Alg. (A)

-

6

k ← k + 1

6�

Bevor wir mit der Beschreibung von Algorithmus (A) beginnen, formulieren wir die fol-gende Voraussetzung (V), die nach der Bestimmung von p vorliegt:

(V): xk ∈MIk sei optimal fur (PIk) mit zugehorigem Multiplikator uk ≥ 0. Ferner sei diep-te Restriktion verletzt, d.h. mit a := a>p∗ und β := bp gelte a>xk > β. Schließlich seiendie Zeilen {ai∗ : i ∈ Ik} linear unabhangig.

Im Fall k = 0 ist diese Voraussetzung sicher erfullt.

Fur den Algorithmus (A) sei zusatzlich noch

(VA) a 6∈ span {a>i∗ : i ∈ Ik}

vorausgesetzt. Betrachte jetzt den Algorithmus (A):

85

(A0) Setze θ := 0, f := f(xk), x := xk, I := Ik, u := uk ∈ R|Ik|.

(A1) Schreibe I in der Form I = {i1, . . . , iq} mit q = |I| und definiere AI ∈ R|I|×n durch

A>I :=[a>i1∗, . . . , a

>iq∗]∈ Rn×|I| .

(A2) Berechne d := (AIQ−1A>I )−1AIQ

−1a (falls I 6= ∅, sonst d := 0), z := 12Q−1(a−A>I d)

und t1 := (a>x− β)/(a>z).

(A3a) Falls u− t1d ≥ 0 oder I = ∅, so setze

xk+1 := x− t1z , uk+1 :=

u− t1dθ + t1

∈ R|I|+1,

Ik+1 := I ∪ {p} , fk+1 := f + t1(θ + t1/2) a>z,

und weiter im außeren Algorithmus mit k ← k + 1 .

(A3b) Falls u − t1d 6≥ 0 und I 6= ∅, so setze t2 := min{ui/di : di > 0, i ∈ I} = u`/d` mitd` > 0 und ` ∈ I, und

x− := x− t2z , I− := I \ {`} ,

u−i := ui − t2di fur i ∈ I− , f− := f + t2(θ + t2/2) a>z ,

θ− := θ + t2 .

(A4) Update (x, u, f, θ, I) := (x−, u−, f−, θ−, I−) und weiter mit (A1).

Lemma 7.6 Es gelte die Voraussetzungen (V ) und (VA). Dann ist der Algorithmus (A)wohldefiniert und liefert in endlich vielen Schritten die Losung xk+1 von (PIk+1) mit Mul-tiplikator uk+1 ≥ 0. Ferner ist f(xk+1) = fk+1 > f(xk), und RangAIk+1 = |Ik+1|.

Beweis: Der Algorithmus (A) ist ebenfalls iterativ aber endlich, da man im Schritt (A3b)von I nur endlich oft ein Element entfernen kann. Wir nehmen an, dass4 in einem Schrittdes Algorithmus folgendes gelte:(∗)AIx ≤ bI , a>x > β , c+ 2Qx+ A>I u+ θa = 0 , u ≥ 0 , θ ≥ 0 , f = f(x) .

Beim Start von Algorithmus (A) ist dies nach den Voraussetzungen (V) fur θ = 0 erfullt!Außerdem ist a von den Zeilen {a>i∗ : i ∈ I} linear unabhangig.

Es ist z 6= 0, da sonst a = A>I d, und wurde ja bedeuten, dass a doch von den Zeilen{a>i∗ : i ∈ I} linear abhangig ware. Außerdem ist im Fall I 6= ∅: AIz = 1

2

[AIQ

−1a −AIQ

−1A>I d]

= 0, und daher z>(a − 2Qz) = z>A>I d = 0, also ist z>a = 2z>Qz > 0. IstI = ∅, so ist d = 0, d.h. 2Qz = a und ebenfalls z>a = 2z>Qz > 0. Daher sind die Schritte(A1) und (A2) wohldefiniert und t1 > 0.

4mit den Bezeichnungen im Algorithmus

86

Setze x(t) := x − tz. Dann ist AIx(t) = AIx − tAIz ≤ bI , und a>x(t) = a>x − ta>z =β + (t1 − t)a>z. Ferner ist c + 2Qx(t) = c + 2Qx − 2tQz = −A>I u − θa − t[a − A>I d] =−A>I (u− td)− (θ + t)a und (nachrechnen!)

f(x− tz) = f(x)− t(c+ 2Qx)>z + t2 z>Qz︸ ︷︷ ︸= 1

2z>a

= f(x) + tz>(A>I u+ θa) +t2

2z>a

= f(x) + t(θ + t/2) z>a .

Fall (A3a): Ist u − t1d ≥ 0, so ist (benutze obige Formeln fur t = t1): x − t1z ∈ MI ,a>(x − t1z) = β, t1 + θ > 0 und c + 2Q(x − t1z) + A>I (u − t1d) − (θ + t1)a = 0, also

ist

x− t1z,u− t1dt1 + θ

ein Kuhn-Tucker Paar fur (PI∪{p}) d.h. mit xk+1 = x − t1z

ist xk+1 Losung von (PIk+1) mit Multiplikator

u− t1dt1 + θ

≥ 0. Außerdem ist f(xk+1) =

f(xk) + t1(θ + t1/2)z>a > f(xk).

Fall (A3b): Ist ui− t1di < 0 fur ein i ∈ I, so muss di > 0 sein, d.h. t2 ist wohldefiniert und0 ≤ t2 < t1. Es ist dann u− t2d ≥ 0 und u` − t2d` = 0 nach Definition von `. Außerdemist (x− t2z)>a = x>a− t2z>a > x>a− t1z>a = β. Mit den obigen Formeln fur t = t2 sindx−, u−, f−, θ− und I− wohldefiniert und genugen wieder der Ausgangssituation (∗). 2

Der Algorithmus (B) behandelt den Fall, dass ap∗ von den Zeilen der Matrix AI linearabhangig ist. Wir setzen jetzt also zusatzlich zu (V) voraus, dass a> = ap∗ von den Zeilender Matrix AI abhangig ist. Getestet wird dies im Schritt (A2) des Algorithmus (A),siehe den Anfang des Beweises von Lemma 7.6. Ist namlich z = 0, so ist a = A>I d mitd = (AIQ

−1A>I )−1AIQ−1a. Wir betrachten also jetzt den folgenden Algorithmus, wobei

wieder a := a>p∗, β := bp und a>xk > β gelte:

(B0) Setze x := xk, f := fk, I := {i ∈ Ik : (Ax)i = bi}, u := ukI .

(B1) Berechne d := (AIQ−1A>I )−1AIQ

−1a .

(B2) Ist d ≤ 0, so ist (PI∪{p}) und damit auch (P ) nicht zulassig, STOP. Andernfalls:

(B3) Bestimme ` ∈ I mit d` > 0 und

t2 := min

{ui

di

: i ∈ I, di > 0

}=

u`

d`

≥ 0 .

Setze x− := x, I− := I \ {`}, u−i := ui − t2di, i ∈ I−, θ := t2.

(B4) Update: (x, u, I) := (x−, u−, I−) und weiter mit (A1).

Lemma 7.7 Unter den obigen Voraussetzungen gilt:(a) Ist d ≤ 0, so ist MI∪{p} = ∅.(b) Ist di > 0 fur ein i, so liefert der Algorithmus (B) ein 5-Tupel (x, u, f, θ, I), welchesdie Voraussetzungen (∗) erfullt mit θ = t2.

87

Beweis: Es ist a = A>I d, denn: Wegen a ∈ span {a>i∗ : i ∈ I} existiert d mit a = A>I d.

Dann ist aber AIQ−1A>I d = AIQ

−1a = AIQ−1A>I d, also d = d.

(a) Angenommen, es gabe z ∈ Rn mit x + z ∈ MI∪{p}. Dann muss AIz ≤ 0 wegenAIx = bI gelten und außerdem a>z ≤ β − a>x < 0. Andererseits ist aber a = A>I d, alsoz>a = z>A>I d = (AIz)

>d ≥ 0, und dies ist ein Widerspruch!

(b) Es ist AI−x− = bI− und c + Qx− + A>I−u

− + θa = c + Qx + A>I (u − t2d) + θa =θa − t2A>I d = (θ − t2)a = 0. Außerdem ist u−i ≥ 0, ∀i ∈ I− und a>x− > β sowie θ ≥ 0.Schließlich ist a =

∑i∈I− dia

>i∗ + d`a

>`∗ mit d` 6= 0. Ware a ∈ span {a>i∗ : i ∈ I−}, so wurde

auch a>`∗ ∈ span {a>i∗ : i ∈ I−} sein, d.h. RangAI ≤ |I| − 1 gelten, ein Widerspruch! 2

Bemerkungen:(a) z ist die orthogonale Projektion von Q−1a auf Kern A unter dem Skalarprodukt〈u, v〉 := u>Qv fur u, v ∈ Rn. Dies gibt die Moglichkeit, stabile und effiziente Verfahrenzur Berechnung von z zu benutzen.(b) Wir haben uns in diesem Abschnitt auf die Originalarbeit (D. Goldfarb, A. Idnani: ANumerical Stable Dual Method for Solving Strictly Convex Quadratic Programs. Math.Progr. 27 (1983), 1–33.) gehalten.

88

8 Differenzierbare Optimierungsprobleme

Jetzt wollen wir Probleme studieren der Form:

(P ) Minimiere f(x) auf M :={x ∈ Rn : g(x) ≤ 0 , h(x) = 0

},

wobei f : Rn → R, g : Rn → Rp, h : Rn → Rm stetig differenzierbar seien.Ziel dieses Kapitels ist der Beweis der Lagrangeschen Multiplikatorenregel. Wir gehen indrei Schritten vor: Sei x∗ ∈M eine (lokale) Losung von (P ).

(A) Wir linearisieren (P ) um x∗. Dies fuhrt auf eine lineare Optimierungsaufgabe (LP )vom Typ, wie wir sie im ersten Kapitel behandelt haben.

(B) Wir zeigen, dass 0 eine Losung von (LP ) ist.

(C) Wir wenden den Satz von Kuhn-Tucker auf (LP ) mit Losung 0 an.

Die Losung (u∗, v∗) des dualen Problems zu (LP ) enthalt dann gerade die LagrangeschenMultiplikatoren. Schritt (B) ist der schwierigste und benotigt eine Form des Satzes uberdie implizite Funktion. Darauf gehen wir im ersten Abschnitt ein.

8.1 Der Satz von Lyusternik

Wir erinnern an die Definition der Differenzierbarkeit von Funktionen g : Rn → Rp imPunkt x ∈ Rn: Es gibt eine Matrix g′(x) ∈ Rp×n mit

g(x+ z) = g(x) + g′(x)z + g(x, z) fur alle z ∈ Rn und limz→0

g(x, z)

‖z‖= 0 .

Hierfur benutzt man auch das Landausymbol und schreibt

g(x+ z) = g(x) + g′(x)z + o(‖z‖) , z → 0 .

Eine solche Darstellung gilt analog auch fur f und h. Die Matrizen f ′(x) ∈ R1×n, g′(x) ∈Rp×n, h′(x) ∈ Rm×n heißen die Funktionalmatrizen und bestehen aus den partiellenAbleitungen, etwa

g′(x) =

(∂gi(x)

∂xj

)i=1,...,pj=1,...,n

∈ Rp×n .

Es ist f ′(x) = ∇f(x)>, wobei ∇f(x) ∈ Rn der Gradient (=Spaltenvektor!) von f bei xist.

Ist x∗ ∈ M (optimal oder nicht), so konnen wir das zu (P ) um x∗ linearisierte Problemaufstellen. Man ersetze f(x) durch f(x∗) + f ′(x∗)z usw. und erhalt:

(LP ) Minimiere f ′(x∗)z unter z ∈ Rn , g(x∗) + g′(x∗)z ≤ 0 , h′(x∗)z = 0 .

Um zu zeigen, dass 0 Losung von (LP ) ist, falls x∗ Losung von (P ) ist, mussen wirzu jedem fur (LP ) zulassigen z in der Lage sein, ein dicht bei x∗ gelegenes x ∈ M zukonstruieren. Fur die Gleichungsnebenbedingungen ist dies nicht so einfach. Wir benotigeneine Anwendung des folgenden Satzes uber implizite Funktionen:

89

Satz 8.1 (uber implizite Funktionen)

Sei H : Rm × R −→ Rm eine stetig differenzierbare Funktion, H(y, t) = 0 und

∂H(y, t)

∂y:=

(∂Hi(y, t)

∂yj

)i,j=1,...,m

∈ Rm×m

sei regular. Dann existiert δ > 0 und eine stetig differenzierbare Funktionγ :(t− δ, t+ δ

)→ Rm mit γ(t) = y und H

(γ(t), t

)= 0 fur alle t ∈

(t− δ, t+ δ

).

Die Ableitung γ′ erhalt man uber die Kettenregel:

∂H(y, t)

∂yγ′(t) +

∂H(y, t)

∂t= 0 , also γ′(t) = −

[∂H(y, t)

∂y

]−1∂H(y, t)

∂t.

Damit konnen wir zeigen:

Satz 8.2 (Lyusternik)

Sei h : Rn → Rm stetig differenzierbar und h(x) = 0. Die Funktionalmatrix h′(x) ∈ Rm×n

habe den Rang m (also insbesondere m ≤ n). Sei ferner z ∈ Rn mit h′(x)z = 0. Dannexistiert δ > 0 und eine stetig differenzierbare Funktion r : (−δ, δ) → Rn mit r(0) = 0

und r′(0) = limt→0r(t)

t= 0 und h

(x+ tz + r(t)

)= 0 fur alle t ∈ (−δ, δ).

Beweis: Es sei V :=(Kernh′(x)

)⊥ ⊆ Rn das orthogonale Komplement des Kerns derMatrix h′(x) ∈ Rm×n. Es ist dimV = m, da m = Rang h′(x) (Dimensionssatz fur Matri-zen!). Sei

{v1, . . . , vm

}⊆ V eine Basis von V und B = [v1 · · · vm] ∈ Rn×m die von ihnen

gebildete Matrix. Definiere jetzt die Funktion H : Rm × R −→ Rm durch

H(y, t) := h(x+ tz +By) , y ∈ Rm , t ∈ R .

Dann ist H(0, 0) = h(x) = 0 und

∂H(y, t)

∂y= h′(x+ tz +By)︸ ︷︷ ︸

∈ Rm×n

B︸︷︷︸∈Rn×m

∈ Rm×m ,

90

also ∂H(0, 0)/∂y = h′(x)B. Diese quadratische Matrix ist regular: h′(x)By = 0 impliziert

By ∈ Kernh′(x). Es ist aber auch By ∈ V =(Kernh′(x)

)⊥, also By = 0 und daher y = 0

(da RangB = m). Daher ist der Satz uber implizite Funktionen anwendbar. Es existiertalso δ > 0 und eine stetig differenzierbare Funktion γ : (−δ, δ) → Rm mit γ(0) = 0 undh(x+ tz +Bγ(t)

)= 0 fur alle t ∈ (−δ, δ). Setze r(t) := Bγ(t) ∈ Rn fur t ∈ (−δ, δ). Dann

ist r stetig differenzierbar, r(0) = 0 und

r′(0) = −B[h′(x)B

]−1h′(x)z︸ ︷︷ ︸

=0

= 0 ,

da ∂H(y, t)/∂t = h′(x+ tz +By)z. 2

8.2 Die Lagrangesche Multiplikatorenregel

Nach diesen Vorbereitungen konnen wir jetzt die Lagrangesche Multplikatorenregel be-weisen:

Satz 8.3 (Lagrangesche Multplikatorenregel)

Sei K ⊆ Rn offen, f : K −→ R, g : K −→ Rp, h : K −→ Rm stetig differenzierbar undx∗ ein (lokales) Minimum von f auf der Menge

M ={x ∈ K : g(x) ≤ 0 , h(x) = 0

}.

Es gelte die constraint qualification

(CQ1)(i) Rangh′(x∗) = m ≤ n ,

(ii) es gibt z ∈ Rn mit g(x∗) + g′(x∗)z < 0 und h′(x∗)z = 0 .

Dann gibt es u∗ ∈ Rp, u∗ ≥ 0, und v∗ ∈ Rm mit

∇f(x∗) +

p∑j=1

u∗j ∇gj(x∗) +

m∑j=1

v∗j ∇hj(x∗) = 0 .

Ferner ist u∗jgj(x∗) = 0 fur alle j = 1, . . . , p. Mit der Lagrangefunktion

L(x, u, v) = f(x) + u>g(x) + v>h(x) , (x, u, v) ∈ Rn × Rp × Rm ,

konnen wir dies auch so ausdrucken:

∇xL(x∗, u∗, v∗) = 0 .

Beweis: Wir betrachten das linearisierte Problem:

(LP ) Minimiere f(x∗) +∇f(x∗)>z unter den Nebenbedingungen

g(x∗) + g′(x∗)z ≤ 0 und h′(x∗)z = 0 .

Wir zeigen, dass z∗ = 0 eine Losung dieses linearen Optimierungsproblems ist. Annahme,es gebe ein z ∈ Rn mit g(x∗) + g′(x∗)z ≤ 0 und h′(x∗)z = 0 und ∇f(x∗)>z < 0. Setzezε := (1− ε)z + εz. Dann ist h′(x∗)zε = 0 und

g(x∗) + g′(x∗)zε = (1− ε)[g(x∗) + g′(x∗)z

]+ ε

[g(x∗) + g′(x∗)z

]< 0

91

fur alle ε ∈ (0, 1). Außerdem ist

∇f(x∗)>zε = (1− ε) ∇f(x∗)>z︸ ︷︷ ︸<0

+ ε∇f(x∗)>z .

Wahle ε > 0 so klein, dass ∇f(x∗)>zε < 0, und halte im folgenden dieses ε fest.Der Satz von Lyusternik liefert die Existenz einer Abbildung r : (−δ, δ) −→ Rn mit

h(x∗ + tzε + r(t)

)= 0 fur alle |t| < δ und r(0) = 0 und r′(0) = lim

t→0

r(t)

t= 0 .

Wahle δ so klein, dass xt := x∗ + tzε + r(t) ∈ K fur |t| < δ.Um xt ∈ M zu zeigen, mussen wir nur noch g(xt) ≤ 0 beweisen. Wegen der Differenzier-barkeit von g existiert g mit

g(xt) = g(x∗) + g′(x∗)[t zε + r(t)

]+ g(t) und lim

t→0

g(t)

‖tzε + r(t)‖= 0 .

Wir schreiben daher

g(xt) = t

[(g(x∗) + g′(x∗)zε

)︸ ︷︷ ︸<0

+

(g′(x∗)

r(t)

t+g(t)

t

)]+ (1− t) g(x∗)︸ ︷︷ ︸

≤0

.

Fur hinreichend kleine t > 0 ist also xt ∈M . Ganz analog ist

f(xt) = t

[∇f(x∗)>zε︸ ︷︷ ︸

<0

+

(∇f(x∗)>

r(t)

t+f(t)

t

)]+ f(x∗) < f(x∗)

fur hinreichend kleine t > 0. Dies ist ein Widerspruch zur Optimalitat von x∗.

Damit haben wir gezeigt, dass z∗ = 0 eine Losung des linearen Optimierungsproblems(LP ) ist. Wir schreiben dies in der Standardform als:

Minimiere ∇f(x∗)>z unter

g′(x∗)

h′(x∗)

−h′(x∗)

z ≤−g(x∗)

0

0

.Der Satz von Kuhn-Tucker fur diese Standardform (z.B. Satz 7.5 fur Q = 0) liefert dieExistenz von u∗ ∈ Rp, y+, y− ∈ Rm mit u∗ ≥ 0, y+ ≥ 0, y− ≥ 0 und

∇f ′(x∗) + g′(x∗)>u∗ + h′(x∗)>y+ − h′(x∗)>y− = 0 ,

also mit v∗ = y+ − y−:

∇f ′(x∗) + g′(x∗)>u + h′(x∗)>v = 0 .

Dies ist gerade die Behauptung. 2

Wir wollen jetzt die Lagrangesche Multiplikatonregel geometrisch veranschaulichen, zunachstfur eine Gleichungs-, dann fur eine Ungleichungsrestriktion. Sei also zunachst n = 2,

92

m = 1, und Ungleichungsrestriktionen treten nicht auf. Wir haben also das Problem, funter h(x) = 0 zu minimieren, wobei f, h : R2 → R. Sei x∗ eine (lokale) Losung. Wirzeichnen die Niveaulinien f(x) = c∗ := f(x∗) und h(x) = 0 auf:

Das Minus- bzw. Pluszeichen gibt an, wo f(x) < c∗ bzw. f(x) > c∗ ist. So wie in diesemBild kann es nicht aussehen, da man sicher kleinere zulassige Funktionswerte bekommt,etwa fur x. Offenbar mussen sich im Optimum die Hohenlinien tangential beruhren, alsoso:

Der Gradient∇f(x∗) steht bekanntlich senkrecht auf der Hohenlinie und zeigt in Richtungder großten Steigung, also in die

”+“–Menge. Wir erkennen, dass ∇f(x∗) und ∇h(x∗)

kollinear sein mussen. Dies bedeutet, dass es λ ∈ R geben muss mit ∇f(x∗) = λ∇h(x∗).Dies ist die Aussage der Multiplikatorenregel.

Jetzt betrachten wir den Fall einer Ungleichung, also das Problem, f unter g(x) ≤ 0 zuminimieren, wobei jetzt f, g : R2 → R. Wiederum zeichen wir die Niveaulinien f(x) =c∗ := f(x∗) und g(x) = 0 auf und markieren die

”+“– und

”−“–Mengen.

93

Wir erkennen, dass ∇f(x∗) und ∇g(x∗) wieder kollinear sind, aber in entgegengesetzteRichtungen zeigen. Das heißt, es gibt λ ≥ 0 mit ∇f(x∗) = −λ∇g(x∗), und dies ist wiederdie Aussage der Multiplikatorenregel.

Beispiele 8.4 (a) Es seien reelle Zahlen t1, . . . , tn > 0 mit∑n

j=1 tj = 1 gegeben. Danngilt die Ungleichung vom geometrisch-arithmetrischen Mittel, d.h.

n∏j=1

xtjj ≤

n∑j=1

tj xj fur alle xj ≥ 0 .

Beweis: Wir betrachten die Maximierungsaufgabe:

Maximieren∏

j=1

xtjj unter xj ≥ 0 und

n∑j=1

tj xj = 1 .

Es gibt eine Losung x∗, da die zulassige Menge kompakt und die Zielfunktion stetig ist.Es ist sicher x∗j > 0 fur alle j = 1, . . . , n, da der Zielfunktionswert sonst 0 und damit nichtmaximal ware. Damit verschwinden alle Lagrangemultiplikatoren zu den Ungleichungenx ≥ 0. Die constraint qualification ist erfullt, denn mit

h(x) =n∑

j=1

tj xj − 1 ist ∇h(x∗) = (t1, . . . , tn)> 6= 0 .

Die Zielfunktion logarithmieren wir, betrachten also das Problem,

f(x) := −n∑

j=1

tj lnxj

zu minimieren unter x > 0 und h(x) = 0. Anwendung der Multiplikatorenregel liefert dieExistenz von v ∈ R mit ∇f(x∗) + v∇h(x∗) = 0, also

− tjx∗j

+ v tj = 0 fur alle j = 1, . . . , n .

Hieraus folgt x∗j = 1/v fur alle j. Wegen∑n

j=1 tj x∗j = 1 folgt v = 1, also x∗j = 1 fur alle j.

Daher istn∏

j=1

xtjj ≤ 1 fur alle x ≥ 0 mit

n∑j=1

tj xj = 1 ,

und Gleichheit tritt genau fur x = (1, . . . , 1)> ein.Ist nun x ≥ 0 beliebig, so setzen wir xj = xj [

∑nk=1 tk xk]

−1. Dann ist x zulassig fur das

Optimierungsproblem, also∏n

j=1 xtjj ≤ 1, d.h.

∏nj=1 x

tjj ≤

∑nj=1 tj xj. 2

(b) Sei A ∈ Rn×n eine symmetrische Matrix. Betrachte das Problem:

Maximiere x>Ax unter g(x) := x>x − 1 ≤ 0 .

Es existiert eine Losung x∗, da die Einheitskugel kompakt und die Zielfunktion stetig ist.Es ist mit f(x) = −x>Ax:

∇f(x) = −2Ax und ∇g(x) = 2x .

94

Die constraint qualification lautet: Es gibt x ∈ Rn mit ‖x∗‖2 + 2 x>x∗ < 1. Dies ist z.B.fur x = −1

2x∗ erfullt.

Also existiert λ∗ ≥ 0 mit ∇f(x∗) + λ∗∇g(x∗) = 0, d.h. −Ax∗ + λ∗x∗ = 0. Daher istentweder x∗ = 0 oder λ∗ ein Eigenwert von A mit zugehorigem Eigenvektor x∗. Damithaben wir gezeigt:

max‖x‖≤1

x>Ax = max{λ : λ ist Eigenwert von A

}∪ {0} .

(c) Man bestimme den kurzesten Abstand zwischen der Ellipse x2+y2/4 = 1 und der Kur-ve y = 3 cos x. Der Abstand zwischen den Punkten (x, y) und (w, z) ist

√(x− w)2 + (y − z)2.

Also haben wir f(x, y, w, z) := (x−w)2 + (y − z)2 zu minimieren unter den Nebenbedin-gungen

h1(x, y, w, z) := x2 +y2

4− 1 = 0 und

h2(x, y, w, z) := z − 3 cosw = 0 .

Die Menge M := {(x, y, w, z) ∈ R4 : hj = 0, j = 1, 2} ist nicht beschrankt, also nichtkompakt. Trotzdem existiert eine Losung (nicht nur aus anschaulichen, sondern auchaus mathematischen Grunden). Man braucht sich fur die Suche nach einem Minimum janur auf Teilmengen der Form M :=

{(x, y, w, z) ∈ M : f(x, y, w, z) ≤ f(x, y, w, z)

}fur

irgendein (x, y, w, z) ∈M zu beschranken. Jedes Minimum von f auf M ist naturlich auchMinimum auf M , denn jedes (x, y, w, z) ∈M \M hat sicher einen großeren Funktionswert.Setzt man in unserem Fall etwa (x, y, w, z) = (1, 0, π/2, 0) ∈ M , so ist M beschrankt, daaus (x − w)2 + (y − z)2 = f(x, y, w, z) ≤ f(x, y, w, z) = f(1, 0, π/2, 0) = (1 − π/2)2 undder Beschranktheit von M bzgl. x und y sicher auch die Beschranktheit bzgl. w und zfolgt. Also existiert eine Losung, die wir mit (x, y, w, z) bezeichnen.Wir rechnen aus:

∇f(x, y, w, z) = 2

x− w

y − z

w − x

z − y

,

und

∇h1(x, y, w, z) = 2

x

y/4

0

0

, ∇h2(x, y, w, z) =

0

0

−3 sinw

1

.

Die constraint qualification ist im optimalen Punkt erfullt, denn ∇h1(x, y, w, z) und∇h2(x, y, w, z) sind fur (x, y, w, z) 6= 0 linear unabhangig. Also existieren Multiplikatorenλ, µ ∈ R mit

∇f(x, y, w, z) + λ∇h1(x, y, w, z) + µ∇h2(x, y, w, z) = 0 ,

95

d.h.

x− w + λx = 0

y − z + λy/4 = 0

−2(x− w) − 3µ sinw = 0

−2(y − z) + µ = 0

Zu diesen vier Gleichungen fur die 6 Unbekannten x, y, w, z, λ, µ kommen noch die zweiGleichungen x2 + y2/4 = 1 und z = 3 cosw. Also erhalten wir ein nichtlineares Systemvon 6 Gleichungen und 6 Variablen. Man muss dieses System numerisch losen, etwa mitdem Newtonverfahren. Startwerte fur x, y, w, z sind leicht zu erhalten, indem man sich dieSkizze ansieht. Wir starten mit (x0, y0, w0, z0) = (1, 0, π/2, 0). Schwieriger ist es, Start-werte fur die Multiplikatoren zu finden. Man kann aber die erste und die vierte Gleichungnach λ bzw. µ auflosen und dann λ0 = w0/x0 − 1 = π/2 − 1 sowie µ0 = 2(y0 − z0) = 0nehmen. Mit diesen Startwerten erhalten wir:

k xk yk wk zk λk µk ||F (xk)||

1 1.000 0.000 1.571 0.000 0.571 0.000 5.7079633e− 01

2 1.000 0.706 1.302 0.806 0.302 −0.201 1.3396653e− 01

3 0.839 1.263 1.107 1.361 0.316 −0.196 1.0550283e− 01

4 0.805 1.190 1.120 1.306 0.388 −0.233 3.7674328e− 03

5 0.804 1.190 1.120 1.308 0.394 −0.234 1.1061641e− 05

6 0.804 1.190 1.120 1.308 0.394 −0.234 5.7518120e− 10

(d) (Pferdewette)

Wir benutzen die folgenden Bezeichnungen bei einer Pferdewette mit n Pferden:

x0: Gesamteinsatz (fest gewahlt)

xi: Einsatz auf Pferd Nummer i

pi: Wahrscheinlichkeit dafur, dass Pferd i gewinnt

si: Wettbetrag aller anderen Wetter auf Pferd i

c ∈ (0, 1): ausgezahlter Teil des Gesamteinsatzes

Der Gesamtwettbetrag ist dann x0+∑n

i=1 si. Damit ist der ausgeschuttete Gewinn: c(x0+∑n

i=1 si

). Der mir ausgezahlte Betrag, wenn Pferd i gewinnt, ist

c

(x0 +

n∑j=1

sj

)xi

si + xi

.

Der zu erwartende Reingewinn ist

R(x) := c

(x0 +

n∑j=1

sj

) n∑i=1

pi xi

si + xi

− x0 .

96

Das Optimierungsproblem besteht also darin, R(x) zu maximieren unter den Nebenbe-dingungen x ≥ 0 und h(x) :=

∑ni=1 xi − x0 = 0. Statt R(x) zu maximieren kann man

genauso gut

f(x) := −n∑

i=1

pi xi

si + xi

minimieren. Es ist g(x) := −x. Die Existenz einer Losung x∗ ist klar, da die Menge M derzulassigen Punkte kompakt ist. Auch die constraint qualification ist erfullt. Wir mussenzeigen, dass es x ∈ Rn gibt mit x∗ + x > 0 und e>x = 0. (Hier ist e = (1, . . . , 1)> ∈ Rn.)Dies ist gleichbedeutend mit der Forderung, dass es x > 0 gibt mit e>x = x0. Setzex = x0

ne, also x = x0/n e− x∗. Schließlich ist

∂f(x)

∂xi

= − pi

si + xi

+pi xi

(si + xi)2= − si pi

(si + xi)2.

Also ist die Multiplikatorenregel anwendbar und liefert die Existenz von u ∈ Rn, u ≥ 0,und λ ∈ R mit

(∗) − si pi

(si + x∗i )2− ui + λ = 0 und uix

∗i = 0 .

Wie konnen wir diese Gleichungen zur Berechnung von x∗ ausnutzen? Das folgende Vor-gehen ist typisch fur viele Anwendungen. Wir betrachten zunachst λ ∈ R als Parameter.Fur jedes i = 1, . . . , n machen wir eine Fallunterscheidung:1. Fall: pi/si > λ. Ware x∗i = 0, so wurde aus (∗) folgen, dass

ui = λ − pi

si

< 0 ,

ein Widerspruch. Also ist x∗i > 0, also ui = 0, also

(si + x∗i )2 =

si pi

λ, also λ > 0 also

x∗i =

√si pi

λ− si .

2. Fall: pi/si ≤ λ. Ware x∗i > 0, so ui = 0, also (si + x∗i )2 = si pi/λ, also λ > 0 und

x∗i =

√si pi

λ− si =

si√λ

[√pi

si

−√λ

]≤ 0 ,

ein Widerspruch. Also ist x∗i = 0.

Damit haben wir x∗i = ρi(λ), wobei

ρi(λ) :=

√si pi/λ − si , falls pi/si > λ ,

0 , falls pi/si ≤ λ .

Der Parameter λ ist schließlich aus der Gleichung∑n

i=1 ρi(λ) = x0 zu bestimmen. Dieskann etwa mit der Regula Falsi geschehen.

97

8.3 Notwendige und hinreichende Bedingungen zweiter Ord-nung

Wir betrachten das gleiche Problem wie im letzten Abschnitt. Wir benotigen fur dasfolgende eine starkere constraint qualification. Sei dazu wieder x∗ ∈ M ein lokales Mini-mum von f auf M . Definiere wieder die Menge der aktiven Indizes durch I(x∗) =

{i ∈

{1, . . . , p} : gi(x∗) = 0

}.

(CQ2) Die Vektoren{∇gi(x

∗) : i ∈ I(x∗)}∪{∇hj(x

∗) : j = 1, . . . ,m}

seien linear unabhangig.

Ist also I = I(x∗) = {i1, . . . , iq} mit 1 ≤ i1 < · · · < iq ≤ p und gI(x) :=(gij(x)

)j=1,...,q

∈Rq, so bedeutet (CQ2) genau, dass

Rang

gI′(x∗)

h′(x∗)

= q +m.

Insbesondere kann dies nur fur q +m ≤ n der Fall sein. (CQ2) ist starker als (CQ1):

Lemma 8.5 Sei x∗ ∈M optimal. Ist (CQ2) erfullt, so auch (CQ1).

Beweis: Bedingung (i) ist naturlich erfullt. Fur (ii) mussen wir zeigen, dass es z ∈ Rn

gibt mitgI′(x∗)z < 0 und h′(x∗)z = 0 (8.1)

sowie gi(x∗) +∇gi(x

∗)>z < 0 fur alle i /∈ I .

Da die Matrix

gI′(x∗)

h′(x∗)

∈ R(q+m)×n den Rang q + m hat, so existiert z ∈ Rn mit

∇gi(x∗)>z = −1 fur alle i ∈ I und h′(x∗)z = 0. Setze z = tz fur noch zu bestimmendes

t > 0. Dann ist ∇gi(x∗)>z = −t < 0 fur alle i ∈ I und h′(x∗)z = 0. Fur i /∈ I ist

gi(x∗) + ∇gi(x

∗)>z = gi(x∗) + t∇gi(x

∗)>z. Wegen gi(x∗) < 0 fur alle i /∈ I gilt fur

hinreichend kleines t > 0 auch gi(x∗) +∇gi(x

∗)>z < 0. 2

Satz 8.6 (notwendige Optimierungsbedingung 2. Ordnung)Sei x∗ lokales Minimum von f auf M , und sei (CQ2) erfullt. Es seien zusatzlich f , g undh zweimal stetig differenzierbar in x∗. Dann existiert u∗ ∈ Rp, v∗ ∈ Rm, u∗ ≥ 0, mit

(a) ∇xL(x∗, u∗, v∗) = 0, wobei wieder

L(x, u, v) = f(x) + u>g(x) + v>h(x) , x ∈ Rn , u ∈ Rp, v ∈ Rm ,

die Langrangefunktion ist.

(b) u∗i gi(x′) = 0 fur alle i = 1, . . . , p.

98

(c) Definiere den Unterraum

V ={z ∈ Rn : h′(x∗)z = 0 , ∇gi(x

∗)>z = 0 fur alle i ∈ I(x∗)}.

Dann giltz>∇2

xL(x∗, u∗, v∗) z ≥ 0 fur alle z ∈ V ,

d.h. ∇2xL(x∗, u∗, v∗) ist auf V positiv semidefinit.

Beweis: Es ist nur (c) zu zeigen.

Sei z ∈ V festgehalten. Wende jetzt den Satz von Lyusternik auf die Funktion h : Rn →Rq+m, definiert durch

h(x) =

gI(x)

h(x)

, x ∈ Rn ,

an, wobei wieder I = I(x∗) = {i1, . . . , iq}. Dies ist moglich wegen h′(x∗)z = 0 und (CQ2)und liefert δ > 0 und r : (−δ, δ)→ Rn mit r(0) = r′(0) und

gi

(x∗ + tz + r(t)

)= 0 fur i ∈ I(x′) und

h(x∗ + tz + r(t)

)= 0

fur alle t ∈ (−δ, δ). Fur i 6∈ I ist gi(x∗) < 0. Daher konnen wir δ > 0 so klein wahlen, dass

außerdem gi

(x∗ + tx+ r(t)

)≤ 0 gilt fur i 6∈ I(x∗) und t ∈ (−δ, δ). Setze zur Abkurzung

γ(t) = x∗ + tz + r(t) , |t| < δ.

Dann ist γ(t) ∈M und (f ◦ γ) : (−δ, δ)→ R hat in t = 0 ein lokales Minimum. Die zwei-malige Differenzierbarkeit von g und h liefert, dass auch γ zweimal stetig differenzierbarist. Fur die Formeln d

dt

(f ◦ γ

)(0) = 0 und d2

dt2

(f ◦ γ

)(0) ≥ 0 benotigen wir die erste und

zweite Ableitung (Kettenregel!):

d

dt

(f ◦ γ

)(t) = ∇f

(γ(t)

)>(z + r′(t)

),

d2

dt2(f ◦ γ

)(t) =

(z + r′(t)

)>∇2f(γ(t)

)(z + r′(t)

)+ ∇f

(γ(t)

)>r′′(t) .

Fur t = 0 erhalten wir

∇f(x∗)>z = 0 und (8.2a)

z>∇2f(x∗)z + ∇f(x∗)>r′′(0) ≥ 0 . (8.2b)

Jetzt definieren wir

ψ(t) =∑i∈I

u∗i gi

(γ(t)

)+

m∑i=1

v∗i hi

(γ(t)

), |t| < δ .

99

Dann ist nach Konstruktion von r(t) gerade ψ(t) = 0 fur alle t. Daher konnen wir ψ(t) = 0zweimal differenzieren und erhalten

ψ′(t) =

[∑i∈I

u∗i ∇gi

(γ(t)

)+

m∑i=1

v∗i ∇hi

(γ(t)

)]> (z + r′(t)

),

ψ′′(t) =(z + r′(t)

)> [∑i∈I

u∗i ∇2gi

(γ(t)

)+

m∑i=1

v∗i ∇2hi

(γ(t)

)] (z + r′(t)

)+

+

[∑i∈I

u∗i ∇gi

(γ(t)

)+

m∑i=1

v∗i ∇hi

(γ(t)

)]>r′′(t) .

Fur t = 0 erhalten wir

z>

[∑i∈I

u∗i ∇2gi(x∗) +

m∑i=1

v∗i ∇2hi(x∗)

]z +

+

[∑i∈I

u∗i ∇gi(x∗) +

m∑i=1

v∗i ∇hi(x∗)

]>r′′(0) = 0 . (8.3)

In der letzten Gleichung durfen wir I durch {1, . . . , p} ersetzen, da u∗i = 0 fur i /∈ I.Summation von (8.2b) und (8.3) liefert

z>

[∇2f(x∗) +

p∑i=1

u∗i ∇2gi(x∗) +

m∑i=1

v∗i ∇2hi(x∗)

]z +

+

[∇f(x∗) +

p∑i=1

u∗i ∇gi(x∗) +

m∑i=1

v∗i ∇hi(x∗)

]>r′′(0) ≥ 0 .

Die zweite Klammer verschwindet, und damit ist die Behauptung gezeigt. 2

Naturlich ist dieser Satz einer Verallgemeinerung der wohlbekannten Aussage, dass f ′(x∗) =0 und f ′′(x∗) ≥ 0 sein muss, falls x∗ ∈ R ein (lokales) Minimum von f auf R ist. Die Bedin-gungen f ′(x∗) = 0 und f ′′(x∗) > 0 sind hinreichend dafur, dass x∗ ein lokales Minimum ist.Das wollen wir nun auch ubertragen. Dazu definieren wir die Menge der

”stark aktiven“

Indizes durchI+ = I+(x∗, u∗) =

{i ∈ I(x∗) : u∗i > 0

}.

Dann haben wir:

Satz 8.7 (hinreichende Optimierungsbedingung 2. Ordnung)Sei (x∗, u∗, v∗) ∈ Rn × Rp × Rm ein Kuhn-Tucker Punkt, d.h. x∗ ∈ M und u∗ ≥ 0 undu∗i gi(x

∗) = 0 fur alle i = 1, . . . , p sowie ∇xL(x∗, u∗, v∗) = 0. Wieder seien f , g und hzweimal stetig differenzierbar in x∗. Außerdem sei ∇2

xL(x∗, u∗, v∗) auf dem Kegel

K ={z ∈ Rn : h′(x∗)z = 0 , ∇gi(x

∗)>z = 0 fur i ∈ I+ , ∇gi(x∗)>z ≤ 0 fur i ∈ I(x∗)\I+

}strikt positiv definit, d.h.

z>∇2L(x∗, u∗, v∗)z > 0 fur alle z ∈ K , z 6= 0 .

Dann ist x∗ striktes lokales Minimum von f auf M .

100

Beweis: Angenommen, dies sei nicht der Fall. Dann existiert eine Folge xk ∈ M mitf(xk) ≤ f(x∗) und xk → x∗, xk 6= x∗. Wir schreiben xk in der Form xk = x∗ + tkzk mit‖zk‖ = 1 und tk → 0. Es gibt eine konvergente Teilfolge von zk, wir schreiben einfachzk → z, k → ∞, fur ein ‖z‖ = 1. Nun benutzen wir die zweimalige Differenzierbarkeit,z.B. von gi, i ∈ I(x∗):

0 ≥ gi(xk)− gi(x∗)︸ ︷︷ ︸

=0

= tk∇gi(x∗)>zk +

1

2t2k z

>k ∇2gi(x

∗)zk + gi(tkzk) (8.4)

mit g(tkzk)/t2k → 0, k → ∞. Division der Ungleichung durch tk und k → ∞ liefert

∇gi(x∗)>z ≤ 0 fur alle i ∈ I. Genauso ist h′(x∗)z = 0 und ∇f(x∗)>z ≤ 0. Wir wollen

noch ∇gi(x∗)>z = 0 fur alle i ∈ I+ zeigen. Dies folgt aber genau aus der Gleichunng

0 = ∇xL(x∗, u∗, v∗)>z = ∇f(x∗)>z +∑i∈I+

u∗i ∇gi(x∗)>z + v∗>h′(x∗)z ≤ 0 ,

da alle Summanden ≤ 0 sind.

Also ist z ∈ K und daher z>∇2L(x∗, u∗, v∗)z > 0. Nun nutzen wir die zweite Ableitungaus, also (8.4) und analog

0 = hi(xk)− hi(x∗) = tk∇hi(x

∗)>zk +1

2t2k z

>k ∇2hi(x

∗)zk + hi(tkzk) , i = 1, . . . ,m ,

0 ≥ f(xk)− f(x∗) = tk∇f(x∗)>zk +1

2t2k z

>k ∇2f(x∗)zk + f(tkzk) .

Nun dividieren wir diese Ungleichungen durch tk und multiplizieren sie mit den Lagran-gemultiplikatoren und summieren auf:

0 ≥

[∇f(x∗) +

∑i∈I

u∗i ∇gi(x∗) +

m∑i=1

v∗i ∇hi(x∗)

]>zk +

+1

2tk z

>k

[∇2f(x∗) +

∑i∈I

u∗i ∇2gi(x∗) +

m∑i=1

v∗i ∇2hi(x∗)

]zk + o(tk) .

Die erste Klammer [· · · ] verschwindet. Weitere Division durch tk und k → 0 liefertz>∇2L(x∗, u∗, v∗)z ≤ 0, ein Widerspruch. 2

101