Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5...

101
Skript zur Vorlesung Einführung in die Optimierung Christoph Buchheim und Christian Meyer

Transcript of Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5...

Page 1: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Skript zur VorlesungEinführung in die Optimierung

Christoph Buchheim und Christian Meyer

Page 2: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Stand: 31. Mai 2019

Page 3: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Inhaltsverzeichnis

Kapitel 1. Einführung 5

1 Grundbegriffe 5

2 Klassifikation und Beispiele 6

3 Notation und Wiederholung 8

Teil 1. Konvexe Optimierung 11

Kapitel 2. Konvexe Mengen und Funktionen 13

4 Konvexe Mengen 13

5 Konvexe Funktionen 20

6 Projektion auf konvexe Mengen 23

7 Trennungssätze 24

8 Farkas-Lemma 27

Kapitel 3. Konvexe Optimierungsprobleme 31

9 Variationsungleichung 31

10 KKT-Bedingungen und Lagrange-Dualität 32

11 Subgradientenverfahren 44

Teil 2. Lineare Optimierung 47

Kapitel 4. Polytope und Polyeder 49

12 Darstellungen von Polyedern 49

13 Seitenflächen, Facetten und Ecken 52

14 Satz von Weyl-Minkowski 57

Kapitel 5. Grundlagen der linearen Optimierung 63

15 Existenzaussagen 63

16 Dualitätsätze 65

Kapitel 6. Simplex-Algorithmus 71

17 Simplex-Algorithmus in primaler Form 71

18 Praktische Umsetzung des Simplex-Algorithmus 78

19 Reoptimierung 803

Page 4: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4 INHALTSVERZEICHNIS

Teil 3. Diskrete Optimierung 83

Kapitel 7. Ganzzahlige Programmierung 85

20 Ganzzahlige Polyeder 85

21 Branch-and-Bound 88

Teil 4. Nichtlineare Optimierung 91

Kapitel 8. Freie Optimierung 93

22 Existenz optimaler Lösungen 93

23 Optimalitätsbedingungen 95

24 Algorithmen der freien Optimierung 97

Literaturverzeichnis 101

Page 5: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 1

Einführung

Inhalt1 Grundbegriffe 5

2 Klassifikation und Beispiele 6

3 Notation und Wiederholung 8

§ 1 Grundbegriffe

Die mathematische Optimierung befasst sich mit Aufgaben der Formminimiere f(x)

s.t. x ∈ F ,

}(P)

wobei f : Rn → R die Zielfunktion bezeichnet, die minimiert werden soll, undF ⊂ Rn die zulässige Menge, die Restriktionen an die Optimierungsvariable x ∈ Rn

modelliert. Die Abkürzung „s.t.“ steht für „subject to“, engl. für „unter der Neben-bedingung“.

Die wesentlichen Fragestellungen bei der Diskussion von (P) sind:

• Existiert eine Lösung von (P)?• Wodurch werden Lösungen von (P) charakterisiert (Optimalitätsbedingun-gen)?• Wie kann man mit Hilfe numerischer Algorithmen Lösungen (approximativ)ausrechnen?

Zur Beantwortung dieser Fragen müssen wir uns zunächst überlegen, was wir untereiner „Lösung“ überhaupt verstehen.

Definition 1.1Ein Punkt x∗ ∈ F heißt globaler Optimierer oder globaler Minimierer von (P), falls

f(x∗) ≤ f(x) ∀x ∈ F (1.1)

gilt. Die Menge der globalen Minimierer von (P) wird mit

arg minx∈F

f(x)

bezeichnet. Wir nennen x∗ lokalen Minimierer , falls ein ε > 0 existiert, so dass

f(x∗) ≤ f(x) ∀x ∈ F ∩Bε(x∗), (1.2)

wobei Bε(x∗) die Kugel um x∗ mit Radius ε bezeichnet. Ein globaler bzw. lokaler

Minimierer heißt strikt , falls (1.1) bzw. (1.2) für x 6= x∗ mit echter Ungleichungerfüllt sind. �

5

Page 6: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6 1. EINFÜHRUNG

Bemerkung 1.2Die Betrachtung von Minimierungsaufgaben stellt keine Einschränkung dar, da Ma-ximierungsaufgaben wegen

arg maxx∈F

f(x) = arg minx∈F

(− f(x)

)und

maxx∈F

f(x) = −minx∈F

(− f(x)

)auf Minimierungsaufgaben zurückgeführt werden können. �

§ 2 Klassifikation und Beispiele

Die analytischen Methoden aber auch die numerischen Algorithmen zur Lösung von(P) hängen stark von der jeweiligen Struktur des Optimierungsproblems ab. Je nach-dem welche Struktur die Zielfunktion und die zulässige Menge besitzt, unterscheidenwir:

• Nichtlineares Programm (NLP):Hierbei ist f : Rn → R eine (glatte) nichtlineare Zielfunktion und die zuläs-sige Menge ist durch

F = {x ∈ Rn : h(x) = 0, g(x) ≤ 0}gegeben, wobei h : Rn → Rp und g : Rn → Rm, m, p ∈ N, (glatte) nichtli-neare Funktionen sind.• Diskretes Optimierungsproblem:Bei einem diskreten oder ganzzahligen Optimierungsproblem sind einigeder Optimierungsvariablen auf ganzzahlige Punktmengen beschränkt, d.h.derartige Probleme haben die Form:

minimiere f(x)

s.t. x ∈ F1, xI ∈ F2

}(DP)

mit einer Indexmenge I ⊂ {1, ..., n} und zulässigen Mengen F1 ⊂ Rn undF2 ⊂ ZI . Hierbei bezeichnet xI die Einschränkung des Vektors x auf I.• Gemischt ganzzahliges nichtlineares Programm (MINLP)1:Zusätzlich zu den Nebenbedingungen eines NLPs sollen hierbei einige Va-riablen ganzzahlig sein, d.h. die zulässige Menge ist durch

F = {x ∈ Rn : h(x) = 0, g(x) ≤ 0, xI ∈ ZI}gegeben.• Konvexes Optimierungsproblem:Hierbei sind zulässige Menge und Zielfunktion konvex.• Quadratisches Programm (QP):QPs sind Spezialfälle von NLPs, bei denen die Zielfunktion quadratisch unddie Funktionen in den Nebenbedingungen affin-linear sind. Solche Problemehaben also die Form

minimiere1

2x>Ax+ b>x+ c

s.t. H x = d, Gx ≤ e

(QP)

1engl. mixed integer nonlinear program

Page 7: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

1. KLASSIFIKATION UND BEISPIELE 7

mit Matrizen A ∈ Rn×n, H ∈ Rp×n, G ∈ Rm×n, Vektoren b ∈ Rn, d ∈ Rp,e ∈ Rm und c ∈ R.• Lineares Programm (LP):Bei solchen Aufgabenstellungen sind nicht nur die Nebenbedingungen affin-linear, sondern auch die Zielfunktion.• Gemischt-ganzzahliges lineares Programm (MILP)2:Hierbei sollen einige der Optimierungsvariablen eines LPs zudem ganzzahligsein.

Beispiel 2.1 (Transport-Problem)Ein Unternehmen hat m Fabriken F1, ..., Fm, die jeweils pro Woche ai Einheiten,i = 1, ...,m, eines bestimmten Produkts herstellen können. Verkauft wird diesesProdukt in r Filialen V1, ..., Vr. Jede Verkaufstelle Vj hat eine wöchentlichen Nach-frage von bj Einheiten. Die Kosten, um eine Einheit des Produkts von Fabrik Fi zurFiliale Vj zu transportieren, betragen cij. Wieviele Einheiten des Produkts müssenvon Fabrik Fi zu Filiale Vj transportiert werden, so dass die Nachfrage gedeckt,die Produktionskapazitäten nicht überschritten und die Transportkosten minimalsind? Wir wollen die Zahl der Einheiten, die von Fi nach Vj transportiert werden,mit xij bezeichnen. Sie sind die Optimierungsvariablen. Das zur oben genanntenFragestellung gehörige Optimierungsproblem lautet dann

minimierem∑i=1

r∑j=1

cijxij (Minimierung der Transportkosten)

s.t.r∑j=1

xij ≤ ai, i = 1, ...,m (Kapazität von Fabrik Fi einhalten)

m∑i=1

xij ≥ bj, j = 1, ..., r (Bedarf von Filiale Vj decken)

Bei dieser Aufgabe handelt es sich um ein lineares Programm. �

Beispiel 2.2 (Rucksack-Problem)Ein Einbrecher kann nur eine limitierte Menge an Gegenständen aus einem Hausentwenden, da sein Rucksack nur begrenzte Kapazität hat. Es gibt n „interessante“Gegenstände G1, ..., Gn im Haus mit einer Wertigkeit ci und einem Volumen ai,i = 1, ...n. Das Volumen des Rucksacks ist b > 0. Will der Einbrecher den Wertseiner Beute maximieren, dann muss er folgendes Problem lösen:

maximiere c>x (Maximierung des Werts der Beute)

s.t. a>x ≤ b (Kapazität des Rucksacks einhalten)xi ∈ {0, 1}, i = 1, ..., n.

Ist xi = 1, dann packt der Einbrecher den Gegenstand Gi in seinen Rucksack, isthingegen xi = 0, dann verbleibt Gi im Haus. Man beachte, dass c>x und a>x danngenau dem Wert bzw. dem Volumen der Beute entsprechen. Bei diesem Problemhandelt es sich um ein ganzzahliges lineares Programm. �

Beispiel 2.3 (Strömungstechnische Anwendung)Mit der Strömung eines Gases aus einem kugelförmigen Kessel soll eine Turbine

2engl. mixed integer linear program

Page 8: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

8 1. EINFÜHRUNG

angetrieben werden. Im Kessel liegt der Gasdruck pK vor, die Turbine wird bei Um-gebungsdruck p0 betrieben. Die Geschwindigkeit u des (idealen) Gases am Ausgangdes Kessels berechnet sich nach der Ausflußformel von Saint-Venant-Wantzel durch

u =

√√√√2γ

γ − 1

pK

ρK

(1−

( p0

pK

)(γ−1)/γ). (2.1)

Hierbei sind ρK die Dichte des Gases im Kessel und γ > 0 der Isentropenexponentdes Gases, ein konstanter Materialparameter. Die Dichte im Kessel ist durch

ρK =m

V=

3

m

r3(2.2)

gegeben, wobei m die Masse an Gas im Kessel und V das Volumen und r den Radiusdes Kessels bezeichnen. Mit Hilfe der idealen Gasgleichung kann man näherungsweiseden Kesseldruck bestimmen:

pK = ρKRTK =3

4πRTK

m

r3(2.3)

mit der universellen Gaskonstanten R und der Kesseltemperatur TK, die wir eben-falls als konstant annehmen. Setzt man (2.2) und (2.3) in (2.1) ein, erhält man einenichtlineare Abbildung u : (m, r) 7→ u(m, r). Um die Turbine effizient betreiben zukönnen, darf eine Mindestgeschwindigkeit umin am Kesselausgang nicht unterschrit-ten werden. Diese soll mit minimalem Aufwand erreicht werden, d.h. mit möglichstwenig Gas und möglichst kleinem Kessel. Das zugehörige Optimierungsproblem lau-tet dann:

minimierem,r∈R

α 4πr2 + β m (Minimierung von Kesseloberfläche und Gasmasse)

s.t. u(m, r) ≥ umin (Mindestgeschwindigkeit am Kesselausgang)m ≥ 0, r ≥ 0 (Positivität von Masse und Radius),

wobei α, β > 0 Gewichtungsfaktoren sind. Wir erhalten also ein nichtlineares Pro-gramm. �

§ 3 Notation und Wiederholung

Ist f : Rn → R eine in x ∈ Rn differenzierbare Funktion, dann bezeichnen wir mit

∇f(x) :=

∂f∂x1

(x)...

∂f∂xn

(x)

den Gradienten von f an der Stelle x. Die Ableitung von f ist f ′(x) := ∇f(x)>. Istf zweimal differenzierbar, dann bezeichnen wir mit

∇2f(x) =

∂2f

∂x1∂x1(x) · · · ∂2f

∂x1∂xn(x)

......

∂2f∂xn∂x1

(x) · · · ∂2f∂xn∂xn

(x)

∈ Rn×n

Page 9: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

1. NOTATION UND WIEDERHOLUNG 9

die Hessematrix von f in x. Ist f zweimal stetig differenzierbar, dann ist ∇2f(x)bekanntlich symmetrisch. Ist g : Rn → Rm differenzierbar, dann bezeichnet

g′(x) =

∇g1(x)>

...∇gm(x)>

∈ Rm×n

die Jacobi-Matrix von g.

Mit ‖ . ‖ bezeichnen wir die euklidische Norm eines Vektors, d.h. für a ∈ Rn

‖a‖ =

√√√√ n∑i=1

a2i .

Die MengeBρ(a) := {x ∈ Rn : ‖x− a‖ < ρ}

ist die offene Kugel um a mit Radius ρ > 0. Das Innere, den Abschluss und denRand einer Menge M ⊂ Rn bezeichnen wir mit int(M), M und ∂M = M \ int(M).Wir verstehen Mengeninklusionen der Form A ⊂ B immer als A ⊆ B.

Sind a, b ∈ Rn beliebige Vektoren, so ist die Ungleichung a ≤ b komponentenweisezu verstehen, d.h. ai ≤ bi für alle i = 1, ..., n. Entsprechend sind a ≥ b, a < b unda > b definiert. Mit Rn+ bezeichnen wir die Menge

Rn+ := {x ∈ Rn : x ≥ 0}.

Seien A ∈ Rm×n und b ∈ Rn beliebig. Für i ∈ {1, ...,m} und j ∈ {1, ..., n} bezeichnenA(i) ∈ Rn und A[j] ∈ Rm

den i-ten Zeilen- bzw. j-ten Spaltenvektor von A. Hierbei ist zu beachten, dassA(i) ∈ Rn×1 (nicht R1×n!). Für beliebige Indexmengen I ⊂ {1, ...,m}, J ⊂ {1, ..., n}bezeichnen wir mit

bJ = (bi)i∈J ∈ R|J |, A(I) = (A>(i))i∈I ∈ R|I|×n, A[J ] = (A[i])i∈J ∈ Rm×|J |

die entsprechenden Teilvektoren bzw. Teilmatrizen. Man beachte, dass(A(I))

> = (A>)[I] =: A>[I] und (A[J ])> = (A>)(J ) =: A>(J ). (3.1)

Die Einheitsmatrix des Rn bezeichnen wir mit I ∈ Rn×n. Der Vektor 1 ∈ Rn istdefiniert durch 1i = 1 für alle i = 1, ..., n.

Wir sagen im Folgenden, zwei Optimierungsprobleme sind äquivalent, falls ihre Lö-sungsmengen übereinstimmen, d.h. die Optimierungsprobleme

minimiere f1(x)

s.t. x ∈ F1

}und

{minimiere f2(x)

s.t. x ∈ F2

sind äquivalent, fallsarg minx∈F1

f1(x) = arg minx∈F2

f2(x).

Gelegentlich nennen wir zwei Optimierungsprobleme auch dann äquivalent, falls mandie Lösungsmenge des einen durch eine bijektive Transformation in die des anderenumwandeln kann.

Page 10: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 11: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Teil 1

Konvexe Optimierung

Page 12: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 13: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 2

Konvexe Mengen und Funktionen

Inhalt4 Konvexe Mengen 13

5 Konvexe Funktionen 20

6 Projektion auf konvexe Mengen 23

7 Trennungssätze 24

8 Farkas-Lemma 27

In den folgenden Abschnitten betrachten wir konvexe Optimierungsprobleme. Der-artige Aufgaben haben sehr angenehme Eigenschaften und sind i.A. wesentlich ein-facher zu diskutieren als allgemeine nichtlineare oder auch diskrete Probleme.

§ 4 Konvexe Mengen

Definition 4.1Eine Menge C ⊂ Rn heißt konvex , falls

x, y ∈ C ⇒ λx+ (1− λ)y ∈ C ∀λ ∈ [0, 1],

das bedeutet die Verbindungsstrecke zweier Punkte aus C liegt ebenfalls in C. �

Beispiel 4.2Beispiele für konvexe Mengen sind:

• Der ganze Rn und jeder lineare Unterraum.• Die Lösungsmenge {x ∈ Rn : Ax = b} eines linearen Gleichungssystemsmit Matrix A ∈ Rm×n und rechter Seite b ∈ Rm.• Die offene und die abgeschlossene Kugel Br(a) und Br(a) (mit a ∈ Rn undr > 0 beliebig).• Eine einpunktige Menge {a} (mit a ∈ Rn beliebig). �

Weitere Beispiele für konvexe Mengen sind Hyperebene und Halbraum:

Definition 4.3Seien a ∈ Rn, a 6= 0, und α ∈ R gegeben. Dann heißt die Menge

H(a, α) = {x ∈ Rn : a>x = α}von a und α induzierte Hyperebene. Eine Hyperebene H(a, α) erzeugt durch

H(a, α)≥ = {x ∈ Rn : a>x ≥ α} und H(a, α)≤ = {x ∈ Rn : a>x ≤ α}zwei (abgeschlossene) Halbräume. �

13

Page 14: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

14 2. KONVEXE MENGEN UND FUNKTIONEN

Definition 4.4Für beliebige M1,M2 ⊂ Rn und α ∈ R definieren wir

αM1 := {αx : x ∈M1} und M1 +M2 := {x1 + x2 : x1 ∈M1, x2 ∈M2} �Satz 4.5Folgende Operationen erhalten Konvexität:

(1) Sei {Cj}j∈J eine Familie konvexer Mengen. Dann ist der Durchschnitt⋂j∈J Cj

ebenfalls konvex.(2) Sind Ci ⊂ Rni , i = 1, ...,m, konvex, dann auch das kartesische Produkt

C1 × C2 × ...× Cm.(3) Ist C ⊂ Rn konvex, dann auch αC für jedes α ∈ R.(4) Sind C1 und C2 konvex, dann auch C1 + C2.(5) Abschluss und Inneres einer konvexen Menge sind ebenfalls konvex.

Beweis: (1)–(4): s. Übung.zu (5):Sei C ⊂ Rn eine beliebige konvexe Menge. Um die Konvexität des Abschlusses zusehen, seien x, y ∈ C und λ ∈ [0, 1] beliebig. Dann gibt es Folgen {xk}k∈N ⊂ C und{yk}k∈N ⊂ C mit xk → x und yk → y für k →∞. Wegen Konvexität von C ist auchλxk + (1− λ)yk ∈ C für alle k. Daraus folgt, dass

λx+ (1− λ)y = limk→∞

(λxk + (1− λ)yk

)∈ C,

was die Konvexität des Abschlusses zeigt.Seien nun x, y ∈ int(C) und λ ∈ [0, 1) beliebig. Dann gibt es ein δ > 0, so dassBδ(y) ⊂ C. Wir setzen z = λx + (1− λ)y und zeigen, dass B(1−λ)δ(z) ⊂ C, worausz ∈ int(C) und somit die Konvexität von int(C) folgt. Dazu sei v ∈ B(1−λ)δ(z)beliebig. Wir definieren w := 1/(1−λ)(v − λx). Dann folgt, dass

‖w − y‖ =1

1− λ‖v − (λx+ (1− λ)y︸ ︷︷ ︸

=z

)‖ ≤ δ ⇒ w ∈ Bδ(y) ⊂ C.

Die Konvexität von C impliziert dann, dass v = λx + (1 − λ)w ∈ C, und da v ∈B(1−λ)δ(y) beliebig war, folgt die Behauptung. �

Bemerkung 4.6Beim Beweis der Konvexität des Inneren einer konvexen Menge haben wir gar nichtausgenutzt, dass x ∈ int(C). Der Beweis zeigt also auch, dass für jedes x ∈ C undjedes y ∈ int(C) die Verbindungsstrecke zwischen x und z im Inneren von C liegt,d.h.

{λx+ (1− λ)y : 0 ≤ λ < 1} ⊂ int(C). (4.1)Mit einer leichten Modifikation des Beweises kann man zeigen, dass (4.1) sogar füralle x ∈ C und y ∈ int(C) gilt, s. [Geiger and Kanzow, 2002, Lemma 2.9]. �

Konvexität einer Menge lässt sich auch mit folgendem Begriff charakterisieren:

Definition 4.7 (Konvexkombination)Seien k ∈ N, x1, ..., xk ∈ Rn und λ1, ...., λk ∈ R mit λi ≥ 0 und

∑ki=1 λi = 1 gegeben.

Dann heißtk∑i=1

λi xi

Page 15: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. KONVEXE MENGEN 15

Konvexkombination der Vektoren x1, ..., xk. �

Lemma 4.8Eine Menge C ⊂ Rn ist genau dann konvex, wenn sie für jedes k ∈ N alle Konvex-kombinationen von Punkten x1, .., xk aus C enthält. �

Beweis: Enthält die Menge C jede Konvexkombination von k ihrer Punkte für be-liebiges k ∈ N, dann gilt dies natürlich auch für k = 2, was nach Definition 4.1 dieKonvexität von C impliziert.

Die umgekehrte Inklusion beweisen wir mittels Induktion nach k. Sei dazu C einekonvexe Menge. Für k = 2 ist die Aussage nach der Definition konvexer Mengenwahr. Als Induktionsvoraussetzung nehmen wir nun an, die Aussage sei für k ≥ 2wahr. Seien x1, ..., xk+1 ∈ C und λ1, ..., λk+1 ∈ R mit

λi ≥ 0, i = 1, ..., n, undk+1∑i=1

λi = 1

beliebig. Dann müssen wir zeigen, dass die Konvexkombination x :=∑k+1

i=1 λixi

ebenfalls in C liegt. Ist λk+1 = 1, dann folgt x = xk+1 ∈ C. Ist hingegen λk+1 6= 1,dann definieren wir

z :=k∑i=1

λi1− λk+1

xi.

Wegen

λi1− λk+1

≥ 0 ∀ i = 1, ..., k, undk∑i=1

λi1− λk+1

=1

1− λk+1

k∑i=1

λi︸ ︷︷ ︸=1−λk+1

= 1

ist z eine Konvexkombination aus k Elementen aus C, so dass z ∈ C nach Indukti-onsvoraussetzung. Nach Konstruktion gilt

x = λk+1xk+1 + (1− λk+1)z

und daher x ∈ C wegen Konvexität von C. �

Definition 4.9Die konvexe Hülle conv(A) einer Menge A ⊂ Rn ist der Durchschnitt aller konvexenMengen, die A enthalten, d.h.

conv(A) =⋂{C ⊂ Rn : C ist konvex, A ⊂ C}. (4.2)

Lemma 4.10Die konvexe Hülle einer Menge A ⊂ Rn ist die kleinste konvexe Menge, die A enthält.

Beweis: Da der Schnitt konvexer Mengen konvex ist, existiert eine kleinste konvexeMenge C ⊂ Rn, die A enthält. Die Definition von conv(A) impliziert, dass conv(A) ⊂C. Andererseits ist conv(A) nach Satz 4.5(1) konvex und enthält A nach Definition,was C = conv(A) liefert. �

Lemma 4.11Die konvexe Hülle conv(A) einer Menge A ⊂ Rn ist gleich der Menge aller Konvex-kombinationen von Punkten aus A.

Page 16: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

16 2. KONVEXE MENGEN UND FUNKTIONEN

Beweis: Wir bezeichnen die Menge aller Konvexkombinationen mit M . Sei x ∈ Mbeliebig. Dann existieren k ∈ N, x1, ..., xk ∈ A und λ1, ..., λk ∈ R+, so dass

k∑i=1

λi = 1 und x =k∑i=1

λixi. (4.3)

Wegen xi ∈ A ⊂ conv(A) für alle i = 1, ..., k und Lemma 4.8 folgt x ∈ conv(A), alsoM ⊂ conv(A).

Um die umgekehrte Inklusion zu beweisen, zeigen wir, dass M konvex ist. Seieny, z ∈ M beliebig, so dass m ∈ N, y1, ..., ym ∈ A, α1, ..., αm ∈ R+ und ` ∈ N,z1, ..., z` ∈ A, β1, ..., β` ∈ R+ existieren mit

m∑i=1

αi = 1, y =m∑i=1

αiyi und

∑i=1

βi = 1, z =∑i=1

βizi.

Sei λ ∈ [0, 1] beliebig. Dann folgt

w := λ y + (1− λ)z = λm∑i=1

αiyi + (1− λ)

∑j=1

βjzj

mit λm∑i=1

αi + (1− λ)∑j=1

βj = λ+ (1− λ) = 1,

d.h. w ist eine Konvexkombination von Punkten aus A und somit w ∈ M , wasdie Konvexität von M zeigt. Außerdem ist A ⊂ M (da sich jeder Punkt ausA trivialerweise als einelementige Konvexkombination darstellen lässt). Wäre al-so conv(A) 6⊂M , dann wäre conv(A)∩M eine kleinere konvexe Menge als conv(A),die A enthält, im Widerspruch zu Lemma 4.10. �

Bemerkung 4.12Aus den Lemmata 4.8 und 4.11 folgt sofort, dass für konvexe Mengen C ⊂ Rn gilt,dass conv(C) = C. �

Man kann die Aussage von Lemma 4.11 noch wie folgt verschärfen:

Satz 4.13 (Carathéodory)Die konvexe Hülle einer Menge A ⊂ Rn ist gleich der Menge aller Konvexkombina-tionen aus (n+ 1)-elementigen Teilmengen von A, d.h.

conv(A) ={x ∈ Rn : ∃x1, ..., xn+1 ∈ A, λ1, ..., λn+1 ∈ R+

mitn+1∑i=1

λi = 1, x =n+1∑i=1

λixi}.

(4.4)

Beweis: Wir bezeichnen die Menge auf der rechten Seite von (4.4) mit M . Zunächstgilt wegen Lemma 4.11, dass M ⊂ conv(A).

Um die umgekehrte Inklusion zu zeigen, sei x ∈ conv(A) beliebig. Wiederum nachLemma 4.11 existieren dann m ∈ N, x1, ..., xm und λ1, ..., λm, so dass

m∑i=1

λi = 1 und x =m∑i=1

λixi,

Page 17: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. KONVEXE MENGEN 17

wobei m minimal gewählt sei. Insbesondere ist also λ > 0.

Wir nehmen nun an, dass m > n+ 1 gilt, und führen dieses zum Widerspruch. DieMenge {(

x1

1

), . . . ,

(xm

1

)}⊆ Rn+1

ist dann linear abhängig, es existiert also ein γ ∈ Rm \ {0} mit∑m

i=1 γi(xi

1

)= 0. Die

Betrachtung der letzten Zeile liefert∑m

i=1 γi = 0, und wegen γ 6= 0 existiert dannein Index i mit γi > 0. Damit ist

τ := min{λiγi| γi > 0

}= λl

γl

wohldefiniert. Setze schließlich λ := λ− τγ. Dann gilt nach Konstruktion λ ≥ 0 undm∑i=1

λi =m∑i=1

λi︸ ︷︷ ︸=1

−τm∑i=1

γi︸ ︷︷ ︸=0

= 1

sowiem∑i=1

λixi =

m∑i=1

λixi

︸ ︷︷ ︸=x

−τm∑i=1

γixi

︸ ︷︷ ︸=0

= x .

Wegen λl = λl − τγl = 0 ist das ein Widerspruch zur Minimalität von m. �

Lemma 4.14Sei C ⊂ Rn eine konvexe Menge mit nichtleerem Inneren. Dann gilt:

(1) int(C) = int(C)(2) ∂C = ∂C,

d.h. bei konvexen Mengen stimmen Inneres und Rand der Menge mit Innerem undRand ihres Abschlusses überein. �

Bemerkung 4.15Die scheinbar triviale Aussage von Lemma 4.14 stimmt keineswegs immer. Betrach-tet man z.B. die MengeM = ([0, 1]∩Q)∪ [1, 2], dann ist int(M) = (1, 2) 6= int(M) =(0, 2) und ∂M = [0, 1] ∪ {2} 6= ∂M = {0, 2}. �

Beweis von Lemma 4.14: zu (1):Sei x ∈ int(C) beliebig. Dann existiert ein δ > 0 mit Bδ(x) ⊂ C ⊂ C, was x ∈ int(C)und somit int(C) ∈ int(C) beweist. Um die umgekehrte Inklusion zu zeigen, nehmenwir an, es gäbe x ∈ int(C) \ int(C). Dann gibt es ein ρ > 0, so dass Bρ(x) ⊂ C.Nach Voraussetzung existiert ein y ∈ int(C). Definiere dann

z := x+ α(x− y) mit α :=ρ

2‖x− y‖, (4.5)

so dass ‖z − x‖ ≤ ρ/2 und damit z ∈ Bρ(x) ⊂ C. Für x ergibt sich damit

x =1

1 + αz +

(1− 1

1 + α

)y, (4.6)

so dass x als Konvexkombination aus z ∈ C und z ∈ int(C) dargestellt werden kann,woraus nach Bemerkung 4.6 x ∈ int(C) folgt.

Page 18: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

18 2. KONVEXE MENGEN UND FUNKTIONEN

zu (2):Folgt wegen

∂C = C \ int(C) = C \ int(C)(1)= C \ int(C) = ∂C (4.7)

sofort aus der ersten Aussage des Lemmas. �

Neben konvexen Mengen spielen Kegel in der konvexen Analysis eine wichtige Rolle:

Definition 4.16Eine nichtleere Menge K ⊂ Rn heißt Kegel , falls

x ∈ K ⇒ αx ∈ Kfür alle α ≥ 0 gilt. �

Man beachte, dass mit dieser Definition immer 0 ∈ K gilt.

Beispiel 4.17Beispiele für Kegel sind

• K0 = Rn+• K1 = {(x1, x2) ∈ R2 : x1 ≥ 0}• K2 = {(x1, x2) ∈ R2 : x1 = x2}• K3 = {0} �

Lemma 4.18Ein Kegel K ⊂ Rn ist genau dann konvex, falls K +K = K.

Beweis: Sei K ein konvexer Kegel und x, y ∈ K beliebig. Dann folgt1

2(x+ y) =

1

2x︸︷︷︸∈K

+1

2y︸︷︷︸

∈K

∈ K ⇒ x+ y ∈ K.

Dies zeigt K +K ⊂ K. Außerdem gilt für beliebige x ∈ K, dass

x =1

2x+

1

2x ∈ K +K,

so dass K = K +K.

Sei nun K ein Kegel mit K = K +K. Seien weiter x, y ∈ K und λ ∈ [0, 1] beliebig.Dann folgt

λx︸︷︷︸∈K

+ (1− λ)y︸ ︷︷ ︸∈K

∈ K, (4.8)

also Konvexität von K. �

Definition 4.19 (Konische Kombination)Seien k ∈ N, x1, ..., xk ∈ Rn und λ1, ...., λk ∈ R mit λi ≥ 0 gegeben. Dann heißt

k∑i=1

λi xi

konische Kombination der Vektoren x1, ..., xk. �

Man beachte, dass man bei der konischen Kombination im Gegensatz zur Konvex-kombination nicht

∑i λi = 1 fordert. Analog zu Lemma 4.8 gilt:

Page 19: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. KONVEXE MENGEN 19

Lemma 4.20Eine nichtleere Menge K ⊂ Rn ist genau dann ein konvexer Kegel, falls sie für jedesk ∈ N alle konischen Kombinationen von Punkten x1, ..., xk aus K enthält.

Beweis: Enthält K für jedes k ∈ N alle k-elementigen konischen Kombinationen,dann natürlich auch für k = 1, was die Kegeleigenschaft zeigt. Da jede Konvexkom-bination natürlich auch eine konische Kombination ist, enthält K alle Konvexkom-binationen von Punkten aus K, so dass Lemma 4.8 die Konvexität von K liefert.Sei umgekehrt K ein konvexer Kegel und

x =k∑i=1

αixi mit αi ≥ 0, xi ∈ K, i = 1, ..., k

eine beliebige konische Kombination. Ist∑

i αi = 0, dann folgt x = 0 und somitx ∈ K. Im Fall

∑i αi 6= 0 ist

x :=1∑ki=1 αi

x =k∑i=1

αi∑ki=1 αi

xi (4.9)

eine Konvexkombination von Punkten ausK. Nach Lemma 4.8 liefert die Konvexitätvon K daher x ∈ K und die Kegeleigenschaft somit x =

(∑i αi)x ∈ K. �

Definition 4.21 (Konische Hülle)Sei A ⊂ Rn beliebig. Die Menge

cone(A) =⋂{K ⊂ Rn : K konvexer Kegel, A ⊂ K}. (4.10)

heißt konische Hülle von A. �

Analog zu Satz 4.5 zeigt man:

Lemma 4.22Der Durchschnitt beliebig vieler konvexer Kegel ist ebenfalls ein konvexer Kegel. �

Daraus folgt, dass auch cone(A) ein konvexer Kegel ist. Wegen A ⊂ cone(A) nachDefinition der konischen Hülle zeigt man damit völlig analog zu Lemma 4.10:

Lemma 4.23Die konische Hülle einer Menge A ⊂ Rn ist der kleinste konvexe Kegel, der A enthält.�

Lemma 4.24Sei C ⊂ Rn konvex. Dann gilt

cone(C) = {αx : α ≥ 0, x ∈ C}. (4.11)

Beweis: Wir bezeichnen die Menge auf der rechten Seite von (4.11) mitK und zeigenzunächst, dass K ein konvexer Kegel ist. Dass K ein Kegel ist, sieht man sofort. ZurKonvexität: Seien y1, y2 ∈ K und λ ∈ (0, 1) beliebig. Dann existieren x1, x2 ∈ C undα1, α2 ≥ 0, so dass yi = αix

i, i = 1, 2. Sind α1 = α2 = 0, dann ist λy1 + (1− λ)y2 =0 ∈ K. Ist hingegen α1 +α2 > 0, dann definieren wir β := λα1 + (1−λ)α2. Es folgt,dass β > 0 und λα1/β ≤ 1 und somit

z :=1

β

(λy1 + (1− λ)y2

)=λα1

βx1 +

(1− λα1

β

)x2 ∈ C

Page 20: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

20 2. KONVEXE MENGEN UND FUNKTIONEN

wegen Konvexität von C. Nach Definition von K folgt daraus aber gerade λy1 +(1−λ)y2 = β z ∈ K, was die Konvexität von K zeigt.

K ist also ein konvexer Kegel. Die Definition von K liefert zudem sofort C ⊂ K, sodass cone(C) ⊂ K aus Lemma 4.23 folgt.

Um die umgekehrte Inklusion zu zeigen, sei y ∈ K beliebig. Dann existieren x ∈ Cund α ≥ 0, so dass y = αx. Wegen C ⊂ cone(C) folgt x ∈ cone(C), und dieKegeleigenschaft impliziert y ∈ cone(C). Daraus folgt K ⊂ cone(C). �

Lemma 4.25Die konische Hülle einer Menge A ⊂ Rn ist gleich der Menge aller konischen Kom-binationen von Punkten aus A.

Beweis: Der Beweis ähnelt sehr stark dem von Lemma 4.11. Wir bezeichnen dieMenge aller konischen Kombinationen mit Z. Sei x ∈ Z beliebig, d.h.

x =k∑i=1

αixi mit αi ≥ 0, xi ∈ A, i = 1, ..., k

eine beliebige konische Kombination von Punkten aus A. Wegen xi ∈ A ⊂ cone(A)ist x auch eine konische Kombination von Punkten aus cone(A), so dass x ∈ cone(A)nach Lemma 4.20 und somit Z ⊂ cone(A).

Für die Gleichheit der Mengen zeigen wir, dass Z ein konvexer Kegel ist. Ist x ∈ Zeine beliebige konische Kombination, dann ist auch αx für beliebiges α ≥ 0 einekonische Kombination, also αx ∈ Z, was die Kegeleigenschaft beweist. Ganz ähnlichfolgt auch die Konvexität von Z: sind x, y ∈ Z beliebige konische Kombinationenund λ ∈ [0, 1] beliebig, dann ist auch die Konvexkombination z := λx + (1 − λ)yeine konische Kombination, so dass z ∈ Z, was die Konvexität zeigt. Außerdem isttrivialerweise jedes x ∈ A auch eine konische Kombination, so dass A ⊂ Z. Dacone(A) nach Lemma 4.23 aber der kleinste konvexe Kegel ist, der A enthält, folgtcone(A) = Z. �

§ 5 Konvexe Funktionen

Definition 5.1Es sei C ⊂ Rn eine konvexe Menge.

(1) Eine Funktion f : C → R heißt konvex , falls

f((1− λ)x+ λy

)≤ (1− λ)f(x) + λf(y)

für alle λ ∈ [0, 1] und alle x, y ∈ C.(2) Eine Funktion f : C → R heißt streng konvex , falls

f((1− λ)x+ λy

)< (1− λ)f(x) + λf(y)

für alle λ ∈ (0, 1) und alle x, y ∈ C mit x 6= y. �

Anschaulich bedeutet die obige Definition, dass sich die Sekante zwischen x und yoberhalb des Graphs verläuft. Ein Beispiel für eine konvexe Funktion ist in Abbil-dung ?? gezeigt. Konvexität einer Funktion lässt sich auch über den so genanntenEpigraph charakterisieren:

Page 21: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. KONVEXE FUNKTIONEN 21

Definition 5.2 (Epigraph)Sei C ⊂ Rn eine gegebene Menge. Der Epigraph einer Funktion f : C → R istdefiniert durch

epi(f) := {(x, r) ∈ C × R : f(x) ≤ r}.Man beachte, dass epi(f) ⊂ Rn+1. �

Der Epigraph ist gerade der Bereich oberhalb des Graphs einer Funktion, s. Abb.??. Aus bestimmten Eigenschaften des Epigraphs kann man Rückschlüsse auf dieFunktion selber ziehen, beispielsweise gilt:

Lemma 5.3Sei C ⊂ Rn konvex. Eine Funktion f : C → R ist genau dann konvex, wenn ihrEpigraph epi(f) konvex ist.

Beweis: Sei f : C → R konvex. Dann gilt für beliebige (x1, r1), (x2, r2) ∈ epi(f), dass

f(λx1 + (1− λ)x2) ≤ λf(x1) + (1− λ)f(x2)) ≤ λr1 + (1− λ)r2 ∀λ ∈ [0, 1],

woraus die Konvexität von epi(f) folgt. Sei andersrum der Epigraph einer beliebigenFunktion konvex, so dass (λx1 + (1 − λ)x2, λr1 + (1 − λ)r2) ∈ epi(f) für beliebige(x1, r1), (x2, r2) ∈ epi(f) ⊂ C×R und beliebige λ ∈ [0, 1]. Setzt man r1 = f(x1) undr2 = f(x2) ergibt sich daraus sofort die Konvexität von f auf C. �

Alternativ kann man konvexe Funktionen auch mit der Tangente statt der Sekan-te charakterisieren. Anhand des Beispiels in Abbildung ?? erkennt man, dass dieTangente immer unterhalb des Graphs der konvexen Funktion liegt. In der Tat gilt

Satz 5.4Seien C ⊂ Rn konvex, D ⊂ Rn mit C ⊂ D offen und f : D → R differenzierbar.Dann gilt:

(1) Die Funktion f ist genau dann konvex auf C, wenn

f(y)− f(x) ≥ ∇f(x)>(y − x) ∀x, y ∈ C. (5.1)

(2) Die Funktion f ist genau dann streng konvex auf C, wenn

f(y)− f(x) > ∇f(x)>(y − x) ∀x, y ∈ C mit x 6= y. (5.2)

Beweis: zu (1):Sei zunächst f : C → R konvex. Dann gilt nach Definition 5.1 für beliebige x, y ∈ Cund alle 0 < t ≤ 1

f(x+ t(y − x)

)− f(x) ≤ tf(y) + (1− t)f(x)− f(x) = t

(f(y)− f(x)

).

Da f diffbar ist, folgt daraus

f(y)− f(x) ≥ limt↘0

f(x+ t(y − x))− f(x)

t= ∇f(x)>(y − x)

und damit der erste Teil von (1).

Um die Rückrichtung zu zeigen, gelte (5.1) und x, y ∈ C und 0 ≤ λ ≤ 1 seienbeliebig. Wir definieren z := (1 − λ)x + λy. Dann ist Konvexität von f äquivalentzu

(1− λ)f(x) + λf(y)− f(z) ≥ 0.

Page 22: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

22 2. KONVEXE MENGEN UND FUNKTIONEN

Um dies nachzuweisen, berechnen wir unter Benutzung von (5.1)

(1− λ)f(x) + λf(y)− f(z) = (1− λ)(f(x)− f(z)

)+ λ(f(y)− f(z)

)≥ (1− λ)∇f(z)>(x− z) + λ∇f(z)>(y − z)

= ∇f(z)>((1− λ)x+ λy − z) = 0

(5.3)

und damit Konvexität von f .

zu (2):Sei f streng konvex und x, y ∈ C, x 6= y, beliebig. Aus (1) folgt dann

f(1/2x+ 1/2 y)− f(x) ≥ 1

2∇f(x)>(y − x). (5.4)

Die strenge Konvexität von f impliziert außerdemf(1/2x+ 1/2 y)− f(x) = f

((1− 1/2)x+ 1/2 y

)− f(x)

< (1− 1/2)f(x) + 1/2 f(y)− f(x) =1

2(f(y)− f(x)),

was zusammen mit (5.4) die gewünschte Aussage ergibt.

Der Nachweis der Rückrichtung in (2) folgt genau wie bei Teil (1), indem man in(5.3) die strikte Ungleichung für x 6= y und 0 < λ < 1 verwendet. �

Schließlich untersuchen wir den Zusammenhang zwischen Krümmungsverhalten, d.h.der zweiten Ableitung, und Konvexität:

Satz 5.5Es sei C ⊂ Rn eine offene konvexe Menge und f : C → R sei zweimal stetigdifferenzierbar. Dann gilt:

(1) Die Funktion f ist genau dann konvex auf C, wenn die Hessematrix ∇2fauf C positiv semidefinit ist.

(2) Ist ∇2f auf C positiv definit, dann ist f streng konvex auf C.

Beweis: zu (1):Seien f konvex auf C und x ∈ C und s ∈ Rn beliebig. Da C offen ist, gilt x + ts ∈C für t > 0 hinreichend klein. Aus Satz 5.4(1) folgt dann zusammen mit demMittelwertsatz, dass

t∇f(x)>s ≤ f(x+ ts)− f(x) = t∇f(x)>s+t2

2s>∇2f(x+ τts)s.

mit einem τt ∈ [0, t]. Daraus folgt s>∇2f(x + τts)s ≥ 0 und, da ∇f 2 nach Voraus-setzung stetig ist, können wir zur Grenze t↘ 0 übergehen und erhalten

s>∇2f(x)s = limt↘0

s>∇2f(x+ τts)s ≥ 0.

Da x ∈ C und s ∈ Rn beliebig waren, folgt daraus die positive Semidefinitheit von∇f 2 auf C.

Um die Rückrichtung zu zeigen, sei ∇2f nun positiv semidefinit auf C und x, y ∈ Cbeliebig. Wir definieren s := y − x. Wegen Konvexität von C ist dann x + ts =(1− t)x+ ty ∈ C für jedes t ∈ [0, 1] und damit s>∇2f(x+ ts)s ≥ 0 für alle t ∈ [0, 1].Der Mittelwertsatzes liefert die Existenz eines t ∈ [0, 1], so dass

f(y)− f(x) = ∇f(x)>s+1

2s>∇2f(x+ ts)s ≥ ∇f(x)>s = ∇f(x)>(y − x)

Page 23: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. PROJEKTION AUF KONVEXE MENGEN 23

Nach Satz 5.4(1) folgt daraus die Konvexität von f auf C.

zu (2):Ist ∇2f positiv definit auf C, dann ergibt sich für x, y ∈ C, x 6= y genau wie eben

f(y)− f(x) = ∇f(x)>s+1

2s>∇2f(x+ ts)s > ∇f(x)>s = ∇f(x)>(y − x)

mit einem t ∈ [0, 1]. Nach Satz 5.4(2) folgt die strenge Konvexität von f . �

Bemerkung 5.6

• Für (2) und die Rückrichtung in (1) benötigt man die Offenheit der MengeC eigentlich nicht. Man könnte die beiden Aussagen also auch für zweimalstetig diffbare Funktionen f : D → R mit einer offenen Obermenge D ⊂ Rn

von C beweisen.• Die Rückrichtung in (2) gilt i.A. nicht, wie man sich leicht am Beispiel derstreng konvexen Funktion f(x) = x4 im Punkt x = 0 überlegt. �

Der Begriff der strengen Konvexität lässt sich wie folgt verschärfen:

Definition 5.7Es sei f : Rn → R zweimal stetig differenzierbar auf einer konvexen Menge C ⊂ Rn.Dann heißt f gleichmäßig konvex , wenn ∇2f auf C gleichmäßig positiv definit ist,es also µ > 0 gibt mit

s>∇2f(x)s ≥ µ‖s‖2 ∀ s ∈ Rn, x ∈ C. �

Nach Satz 5.5(2) ist eine gleichmäßig konvexe Funktion automatisch streng konvex.Die Umkehrung gilt aber nicht, wie wir in Bemerkung 5.6 gesehen haben.

§ 6 Projektion auf konvexe Mengen

Wir betrachten nun eine erste konvexe Optimierungsaufgabe, die so genannte Pro-jektion auf eine konvexe Menge. Dazu sei eine nichtleere, abgeschlossene und konvexeMenge C ⊂ Rn und ein Punkt y ∈ Rn gegeben. Dann ist die Projektion von y auf Cals Lösung der folgenden Aufgabe definiert:

minimiere f(x) :=1

2‖x− y‖2

s.t. x ∈ C,

(6.1)

d.h. die Lösung x dieses Problems, ist genau der Punkt aus C mit minimalem Ab-stand zu y. Der folgende Satz zeigt, dass die Projektion überhaupt wohl definiertist.

Satz 6.1Sei C nichtleer, abgeschlossen und konvex und y ∈ Rn gegeben. Dann existiert eineeindeutige Lösung von (6.1), die wir mit ΠC(y) bezeichnen.

Beweis: Nach Voraussetzung existiert ein Punkt z ∈ C. Dieser habe von y den Ab-stand r = ‖z − y‖. Außerhalb der Kugel Br(y) kann die Lösung von (6.1) natürlichnicht liegen, weshalb wir uns bei der Suche nach dem globalen Minimierer von (6.1)auf die Menge Cr = C ∩ Br(y) beschränken können. Als Durchschnitt zweier abge-schlossener Mengen ist Cr selber abgeschlossen. Außerdem ist Cr nichtleer (wegen

Page 24: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

24 2. KONVEXE MENGEN UND FUNKTIONEN

z ∈ Cr) und natürlich beschränkt, folglich kompakt. Nach dem bekannten Satz vonWeierstraß nimmt einer stetige Funktion auf kompakten Mengen ihr Maximum undMinimum an, so dass ein Minimierer von (6.1) existiert.

Zur Eindeutigkeit des Minimierers: wir nehmen an, die Aussage sei falsch und es gäbezwei (globale) Minimierer x1 ∈ C und x2 ∈ C, x1 6= x2. Für die zweite Ableitungvon f finden wir ∇2f(x) = I für alle x ∈ Rn, so dass f nach Satz 5.5(2) auf ganzRn streng konvex ist. Daraus folgt

f((1/2)x1 + (1/2)x2

)<

1

2f(x1) +

1

2f(x2). (6.2)

Wegen (1/2)x1 + (1/2)x2 ∈ C ist dies aber ein Widerspruch zur Optimalität von x1

und x2. �

Satz 6.2 (Projektionssatz)Die Projektion wird eindeutig charakterisiert durch die Variationsungleichung(

ΠC(y)− y)>(

x− ΠC(y))≥ 0 ∀x ∈ C, (6.3)

d.h. jede Lösung von (6.1) löst auch (6.3) und umgekehrt.

Beweis: Es ist zu zeigen, dass ein x∗ ∈ C genau dann optimal ist für (6.1), wenn füralle x ∈ C die Ungleichung

(x∗ − y

)>(x − x∗

)≥ 0 gilt. Wir benutzen dazu jeweils

∇f(x) = x− y.

„⇐“: Da f konvex ist, folgt mit Satz 5.4 (1)

0 ≤(x∗ − y

)>(x− x∗

)= ∇f(x∗)>

(x− x∗

)≤ f(x)− f(x∗) ,

also f(x∗) ≤ f(x) für alle x ∈ C. Somit ist x∗ optimal.„⇒“: Sei x ∈ C beliebig. Für t ∈ [0, 1] gilt dann x∗+ t(x− x∗) ∈ C, da C konvex

ist. Aus der Optimalität von x∗ folgtf(x∗ + t(x− x∗)) ≥ f(x∗)

und somit(x∗ − y)>(x− x∗) = ∇f(x∗)>(x− x∗)

= limt↘0

f(x∗ + t(x− x∗))− f(x∗)

t≥ 0 .

Anschaulich bedeutet die Aussage von Satz 6.2, dass der Winkel zwischen dem Lotvon y auf die Menge C und Verbindungslinien zwischen Lotfußpunkt und beliebi-gen Punkten aus C immer stumpf sein muss, vgl. Abbildung ??. Satz 6.2 ist einSpezialfall der Sätze 9.2 und 9.4 weiter unten.

§ 7 Trennungssätze

Definition 7.1 (Trennende Hyperebene)Eine Hyperebene H(a, α) = {x ∈ Rn : a>x = α}, a 6= 0, trennt zwei MengenA,B ⊂ Rn, falls A ⊂ H(a, α)≤ und B ⊂ H(a, α)≥, wobei H(a, α)≤ und H(a, α)≥wieder die durch die Hyperebene erzeugten Halbräume bezeichnen. Die Hyperebenetrennt die beiden Mengen also genau dann, wenn

a>x ≤ a>y ∀x ∈ A, y ∈ B. (7.1)

Page 25: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. TRENNUNGSSÄTZE 25

Man bezeichnet die Trennung als strikt , wenn A und B jeweils im Inneren der beidenHalbräume liegen, d.h. wenn

a>x < α < a>y ∀x ∈ A, y ∈ B (7.2)

gilt. �

Beispiele für trennende Hyperebenen sind in Abbildung ?? zu sehen. Wir beginnenzunächst mit zwei Hilfsresultaten zur Trennung von konvexen Mengen und Punkten.

Lemma 7.2Seien C ⊂ Rn, nichtleer, abgeschlossen und konvex und x /∈ C. Dann gibt es eineHyperebene, die C und {x} strikt trennt, d.h.

∃ s ∈ Rn, s 6= 0, α ∈ R mit s>x > α > supy∈C

s>y.

Beweis: Nach den Sätzen 6.1 und 6.2 existiert eine eindeutige Projektion ΠC(x), die(6.3) erfüllt. Wegen ΠC(x) ∈ C und x /∈ C, ist s := x−ΠC(x) 6= 0. Außerdem erfüllts wegen (6.3) für alle y ∈ C, dass

0 ≥ s>(y − x+ s) = s>y − s>x+ ‖s‖2

⇒ s>y ≤ s>x− ‖s‖2 < s>x− ‖s‖2

2< s>x,

was der Aussage mit α = s>x− ‖s‖2/2 entspricht. �

Korollar 7.3Eine abgeschlossene Menge ist konvex genau dann, wenn sie Durchschnitt abge-schlossener Halbräume ist.

Im Fall nicht abgeschlossener Mengen muss man auf die Striktheit der Trennungverzichten:

Lemma 7.4Seien eine konvexe Menge C ⊂ Rn, C 6= Rn, mit nichtleerem Inneren und ein Punktx /∈ int(C) gegeben. Dann existiert eine Hyperebene, die C und {x} trennt, d.h.

∃ s ∈ Rn, s 6= 0 mit s>x ≥ supy∈C

s>y.

Beweis: Für x /∈ C folgt die Aussage sofort aus Lemma 7.2. Sei deshalb x ∈ C \int(C) = ∂C. Da C nach Voraussetzung konvex und int(C) 6= ∅ ist, gilt nach Lemma4.14, dass ∂C = ∂C und damit x ∈ ∂C. Wegen C 6= Rn, ist C 6= Rn. Daher gibt eseine Folge {xk} mit

xk /∈ C ∀ k ∈ N und xk → x für k →∞.

Wegen xk /∈ C gilt der Trennungssatz nach dem im ersten Teil bereits Bewiesenenfür xk, d.h. für jedes k ∈ N existiert ein sk, sk 6= 0 mit

(sk)>xk > (sk)>y ∀ y ∈ C.

Teilt man diese Ungleichung durch ‖sk‖ 6= 0, so erhält man mit σk := sk/‖sk‖

(σk)>xk > (σk)>y ∀ y ∈ C (7.3)

Page 26: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

26 2. KONVEXE MENGEN UND FUNKTIONEN

für alle k ∈ N. Auf Grund von ‖σk‖ = 1 für alle k ∈ N gibt es eine konvergenteTeilfolge {σkj} und ein s ∈ Rn, so dass

σkj → s für j →∞, ‖s‖ = 1.

Mit xk → x können wir daher in (7.3) mit der Teilfolge zur Grenze übergehen underhalten

s>x ≥ s>y ∀ y ∈ C.Wegen ‖s‖ = 1 ist s 6= 0, was die Aussage beweist. �

Bemerkung 7.5Die Aussage von Lemma 7.4 stimmt übrigens auch, wenn man auf die Voraussetzungint(C) 6= ∅ verzichtet. Ist nämlich int(C) = ∅, dann kann man zeigen, dass C in einerHyperebene liegen muss, womit sich die Trennungseigenschaft zeigen lässt, s. [Geigerand Kanzow, 2002, Lemma 2.21].

Satz 7.6 (Trennungssatz)Seien C1, C2 ⊂ Rn zwei nichtleere, konvexe Mengen mit C1 ∩C2 = ∅. Dann existiertein s ∈ Rn, s 6= 0, mit

supx1∈C1

s>x1 ≤ infx2∈C2

s>x2, (7.4)

d.h. es existiert eine Hyperebene, die C1 und C2 trennt.

Beweis: Wir definieren die Menge

C := C1 − C2 = {x1 − x2 : x1 ∈ C1, x2 ∈ C2}.

Man sieht leicht, dass C wegen der Voraussetzungen an C1 und C2 nichtleer ist undkonvex nach Satz 4.5. Außerdem ist 0 /∈ C, denn sonst gäbe es x1 ∈ C1 und x2 ∈ C2

mit x1 = x2 im Widerspruch zu C1 ∩ C2 = ∅. Damit ist insbesondere 0 /∈ int(C), sodass nach Lemma 7.4 und Bemerkung 7.5 ein s ∈ Rn existiert mit

0 = s>0 ≥ s>x ∀x ∈ C. (7.5)

Seien nun x1 ∈ C1 und x2 ∈ C2 beliebig. Dann ist x = x1−x2 ∈ C, so dass aus (7.5)gerade (7.4) folgt. �

Um die strikte Trennung von zwei Mengen beweisen zu können, benötigen wir dasfolgende

Lemma 7.7Seien M1 ⊂ Rn abgeschlossen und M2 ⊂ Rn kompakt. Dann ist M1 −M2 ebenfallsabgeschlossen.

Beweis: Wir definieren M := M1 −M2. Sei {xk} ⊂ M eine konvergente Folge mitGrenzwert x ∈ Rn. Wir müssen x ∈ M zeigen. Wegen xk ∈ M existieren xk1 ∈ M1

und xk2 ∈ M2 mit xk = xk1 − xk2 für alle k ∈ N. Wegen der Kompaktheit von M2

existiert eine in M2 konvergente Teilfolge von {xk2}, die wir mit {xk`2 } bezeichnen,d.h. xk`2 → x2 ∈M2 für `→∞. Daraus folgt

xk`1 = xk` + xk`2 → x+ x2 =: x1 für `→∞.

Wegen Abgeschlossenheit von M1 ist x1 ∈ M1, was schließlich x = x1 − x2 ∈ M1 −M2 = M zeigt. �

Page 27: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. FARKAS-LEMMA 27

Satz 7.8 (Strikte Trennung)Seien C1, C2 ⊂ Rn zwei nichtleere, konvexe, abgeschlossene und disjunkte Mengen.Darüber hinaus sei C2 kompakt. Dann existiert eine Hyperebene H(s, α), die C1 undC2 strikt trennt, d.h.

∃ s ∈ Rn, s 6= 0, α ∈ R mit supx1∈C1

s>x1 < α < infx2∈C2

s>x2. (7.6)

Beweis: Der Beweis verläuft wie der von Satz 7.6. Wir betrachten die Menge C :=C1 −C2. Nach Lemma 7.7 ist C abgeschlossen. Zudem ist C trivialerweise nichtleerund nach Satz 4.5 konvex. Wie im Beweis von Satz 7.6 folgt zudem 0 /∈ C, sodass sich {0} und C nach Lemma 7.2 durch eine Hyperebene H(s, β) strikt trennenlassen, d.h.

s>x < β < s>0 = 0 ∀x ∈ C. (7.7)Seien nun x1 ∈ C1 und x2 ∈ C2 beliebig. Dann ist x1 − x2 ∈ C und aus (7.7) folgt

s>x1 < s>x2 + β ∀x1 ∈ C1, x2 ∈ C2.

Wegen β < 0 nach (7.7) folgt daraus

supx1∈C1

s>x1 ≤ infx2∈C2

s>x2 + β < infx2∈C2

s>x2 +β

2︸ ︷︷ ︸=:α

< infx2∈C2

s>x2

und damit die Aussage. Man beachte, dass α > −∞, da C2 kompakt ist. �

§ 8 Farkas-Lemma

Wir kommen nun zu einem wichtigen Hilfsmittel der endlich-dimensionalen Optimie-rung, dem so genannten Farkas-Lemma, auch Alternativ-Satz von Farkas genannt.Dazu beweisen wir zunächst folgendes

Lemma 8.1Die konische Hülle von m ∈ N Vektoren a1, ..., am ∈ Rn ist ein abgeschlossener,konvexer Kegel.

Beweis: Dass cone{a1, ..., am} ein konvexer Kegel ist, folgt aus Lemma 4.23. DieAbgeschlossenheit von cone{a1, ..., am} ist vergleichsweise aufwendig zu zeigen. Wirbeweisen sie mittels Induktion nach m. Zunächst gilt nach Lemma 4.20, dass

cone{a1, ..., am} ={ m∑

i=1

λiai : λi ≥ 0, i = 1, ...,m

}.

Fürm = 1 ist die konische Hülle also durch cone{a1} = {λ1a1 : λ1 ≥ 0} gegeben und

daher eine Halbgerade. Diese ist abgeschlossen, wie man sehr einfach sieht: Dazu seiλka1 ⊂ cone{a1} eine konvergente Folge mit Grenzwert x ∈ Rn. Es gilt dann x = λa1

mit λ := limk→∞ λk und λ ≥ 0 wegen λk ≥ 0.

Sei nun m ∈ N, m > 1, beliebig. Als Induktionsvoraussetzung nehmen wir an, dieAussage gelte fürm−1, d.h. die konische Hülle vonm−1 Punkten sei abgeschlossen.Wir betrachten eine Folge {xk} ⊂ cone{a1, ..., am}, die gegen x ∈ Rn konvergiert,und müssen x ∈ cone{a1, ..., am} zeigen. Wegen xk ∈ cone{a1, ..., am} existierenFolgen {λk,i} ⊂ R+ mit

xk =m∑i=1

λk,iai. (8.1)

Page 28: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

28 2. KONVEXE MENGEN UND FUNKTIONEN

Die Menge

U ={ m∑

i=1

αiai : αi ∈ R

}ist als endlichdimensionaler Unterraum abgeschlossen. Demnach ist x ∈ U , d.h. esexistieren α1, ..., αm mit

x =m∑i=1

αiai. (8.2)

Sind alle αi ≥ 0, dann ist x ∈ cone{a1, ..., am}, und wir sind fertig. Andernfallsdefinieren wir für jedes k ∈ N

βk := min1≤i≤m

{ λk,iλk,i − αi

: αi < 0}. (8.3)

Durch Übergang auf eine Teilfolge und Umnummerieren der Vektoren a1, ..., amkönnen wir o.B.d.A. annehmen, dass das Minimum in (8.3) immer im Index mangenommen wird. Wegen λk,i ≥ 0 für alle k ∈ N und i ∈ {1, ...,m} und derRestriktion auf die Indizes mit αi < 0 folgt βk ∈ [0, 1]. Deshalb ist

zk := βkx+ (1− βk)xk

eine Konvexkombination aus x und xk, und wegen limk→∞ xk = x folgt daraus

wiederumzk → x für k →∞. (8.4)

Die Definition von zk liefert zusammen mit (8.1) und (8.2)

zk = βk

m∑i=1

αiai + (1− βk)

m∑i=1

λk,iai =

m∑i=1

(βkαi + (1− βk)λk,i︸ ︷︷ ︸

=: γk,i

)ai.

Ist αi ≥ 0, dann folgt wegen βk ∈ [0, 1], dass

βk(αi − λk,i) ≥ −βkλk,i ≥ −λk,i.

Ist hingegen αi < 0, dann ergibt sich

βk(αi − λk,i) = minαj<0

{ λk,jλk,j − αj

}(αi − λk,i︸ ︷︷ ︸

<0

) ≥ λk,iλk,i − αi

(αi − λk,i) = −λk,i,

so dass in jedem Fall γk,i ≥ 0 für alle k ∈ N und alle i = 1, ...,m folgt. Außerdemfolgt

βk(αm − λk,m) = minαj<0

{ λk,jλk,j − αj

}(αm − λk,m) =

λk,mλk,m − αm

(αm − λk,m) = −λk,m,

also γk,m = 0 und damit

zk =m−1∑i=1

γk,iai,

und damit zk ∈ cone{a1, ..., am−1} wegen γk,i ≥ 0. Da cone{a1, ..., am−1} nach In-duktionsvoraussetzung abgeschlossen ist, liefert (8.4), dass x ∈ cone{a1, ..., am−1} ⊂cone{a1, ..., am}, was die Aussage beweist. �

Man beachte die Parallelen zum Beweis des Satzes von Carathéodory (Satz 4.13).

Page 29: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

2. FARKAS-LEMMA 29

Lemma 8.2Seien A ∈ Rm×n und B ∈ Rp×n gegebene Matrizen. Dann ist die Menge

K := {x ∈ Rn : x = A>u+B>v, v ∈ Rp, u ≥ 0} (8.5)

ein abgeschlossener, konvexer Kegel.

Beweis: Dass K ein konvexer Kegel ist, rechnet man sehr leicht nach. Die Abge-schlossenheit von K zeigen wir mit Lemma 8.1. Da sich jedes x ∈ K auch als

x = A>u+B>v = A>u+B>v(+) −B>v(−)

mit v(+) :=(

max{0, vi})pi=1

und v(−) :=(

max{0,−vi})pi=1

schreiben lässt, gilt

K = {x ∈ Rn : x = (A>, B>,−B>)w, w ∈ Rm+2p, w ≥ 0}= cone{A>[1], ..., A

>[m], ..., B

>[1], ..., B

>[p],−B>[1], ...,−B>[p]},

und die Abgeschlossenheit von K folgt in der Tat aus Lemma 8.1. �

Satz 8.3 (Farkas-Lemma)Seien A ∈ Rm×n, B ∈ Rp×n und b ∈ Rn beliebig. Dann sind folgende Aussagenäquivalent:

(1) Es gibt ein u ∈ Rm, u ≥ 0, und ein v ∈ Rp, so dass A>u+B>v = b.(2) Für alle d ∈ Rn mit Ad ≤ 0 und B d = 0 gilt b>d ≤ 0.

Beweis: Um die Implikation (1) ⇒ (2) zu zeigen, gelte A>u + B>v = b mit einemu ≥ 0. Dann folgt für alle d ∈ Rn mit Ad ≤ 0 und B d = 0, dass

b>d = u>Ad+ v>B d ≤ 0,

was gerade (2) entspricht.

Für die umgekehrte Richtung argumentieren wir per Kontraposition, d.h. wir zeigen¬(1)⇒ ¬(2). Ist (1) falsch, dann ist b /∈ K mit K wie in (8.5) definiert. Da K nachLemma 8.2 eine abgeschlossene und konvexe Menge ist, können {b} und K nachLemma 7.2 deshalb durch eine Hyperebene strikt getrennt werden. (Man beachte,dass K wegen 0 ∈ K nichtleer ist.) Das bedeutet, es existiert ein s ∈ Rn, s 6= 0, undein α ∈ R mit

s>b > α > s>x ∀x ∈ K.Wegen 0 ∈ K folgt daraus sofort

s>b > 0. (8.6)

Da K außerdem ein Kegel ist, gilt für alle x ∈ K, dass

s>x <α

t∀ t > 0 ⇒ s>x ≤ lim

t→∞

α

t= 0 ∀x ∈ K.

Seien nun u ∈ Rm, u ≥ 0 und v ∈ Rp beliebig. Dann ist A>u+B>v ∈ K und daher

0 ≥ s>(A>u+B>v) = u>As+ v>B s. (8.7)

Wählen wir u = 0 und v = B s, dann folgt ‖B s‖2 ≤ 0 also B s = 0. Wählen wirv = 0 und u = ei, i = 1, ...,m, wobei ei der i-te Einheitsvektor ist, dann ergibt sichAs ≤ 0. Daraus folgt insgesamt, dass s

A s ≤ 0, B s = 0 und b>s > 0

erfüllt, so dass (2) nicht gilt, was die Aussage beweist. �

Page 30: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

30 2. KONVEXE MENGEN UND FUNKTIONEN

Bemerkung 8.4Man kann das Farkas-Lemma auch äquivalent als Alternativsatz formulieren:

Seien A ∈ Rm×n, B ∈ Rp×n und b ∈ Rn beliebig. Dann ist entweder das SystemA>u+B>v = b, u ≥ 0

lösbar, oder (exklusiv) das System

Ad ≤ 0, B d = 0, b>d > 0

hat eine Lösung. �

Aus Satz 8.3 ergibt sich mit p = 0 der folgende Spezialfall:

Korollar 8.5Für A ∈ Rm×n und b ∈ Rn sind folgende Aussagen äquivalent:

(1) Für alle d ∈ Rn mit Ad ≤ 0 gilt b>d ≤ 0.(2) Es gibt ein u ∈ Rm, u ≥ 0, so dass A>u = b. �

Es gibt auch eine „inhomogene“ Version dieses Korollars:

Satz 8.6Seien A ∈ Rm×n, b ∈ Rn, c ∈ Rm und β ∈ R gegeben. Dann sind folgende Aussagenäquivalent:

(1) Für alle d ∈ Rn mit Ad ≤ c gilt b>d ≤ β.(2) Es gibt ein u ∈ Rm, u ≥ 0, so dass

(a) A>u = b und c>u ≤ β(b) oder A>u = 0 und c>u < 0(wobei das „oder“ inklusiv gemeint ist, wie der Fall β < 0 und b = 0 zeigt.)

Beweis: Aussage (1) ist äquivalent zur Unlösbarkeit des Systems

d ∈ Rn, A d ≤ c, b>d > β,

also auch zur Unlösbarkeit des homogenen Systemst ∈ R, d ∈ Rn, t > 0, A d− t c ≤ 0, b>d− t β > 0,

und damit zur Unlösbarkeit vonε ∈ R, t ∈ R, d ∈ Rn, ε− t ≤ 0, A d− t c ≤ 0, β t+ ε− b>d ≤ 0, ε > 0.

Wir wenden nun Korollar 8.5 an auf1 −1 00 −c A1 β −b>

und

100

,

damit ist obige Unlösbarkeit äquivalent zu∃ y, v, w ≥ 0 : A>y = bv, c>y + w = βv, v + w = 1. (8.8)

Zu zeigen bleibt also, dass (8.8) äquivalent zu (2) ist.

Gelte zunächst (8.8). Falls v = 0, folgt w = 1, setze dann u := y. Damit gilt (2) (b).Andernfalls setze u := 1

vy, woraus (2) (a) folgt.

Gelte nun umgekehrt (2). Im Fall (a) gilt (8.8) mit v := 11+β−c>u , w := 1−v, y := v u,

im Fall (b) mit y := − 1c>u

u, v := 0, w := 1. �

Page 31: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 3

Konvexe Optimierungsprobleme

Inhalt9 Variationsungleichung 31

10 KKT-Bedingungen und Lagrange-Dualität 32

11 Subgradientenverfahren 44

§ 9 Variationsungleichung

Wir betrachten nun Optimierungsaufgaben, bei denen die zulässige Menge konvexist, d.h.

minimiere f(x)

s.t. x ∈ C,

}(9.1)

mit einer konvexen Menge C ⊂ Rn. Ist zusätzlich auch die Zielfunktion konvex aufC, so spricht man von einem konvexen Optimierungsproblem. Derartige Aufgabenhaben sehr vorteilhafte Eigenschaften, beispielsweise muss man nicht mehr zwischenglobalen und lokalen Minimierern unterscheiden:

Satz 9.1Seien C ⊂ Rn und f : C → R konvex. Dann gilt:

• Jeder lokale Minimierer von f auf C ist auch globaler Minimierer. Die Lö-sungsmenge von (9.1), also die Menge aller Minimierer von f auf C, istkonvex.• Ist f streng konvex auf C, existiert höchstens ein (globaler) Minimierer.

Beweis: s. Übung. �

Im Fall einer konvexen Nebenbedingung x ∈ C kann man sehr einfache Optimali-tätsbedingungen in Form einer Variationsungleichung formulieren.

Satz 9.2Seien C ⊂ Rn konvex und x∗ ein lokaler Minimierer von (9.1). Ist f : Rn → Rdifferenzierbar in x∗, dann gilt die folgende Variationsungleichung :

∇f(x∗)>(x− x∗) ≥ 0 ∀x ∈ C. (VI)

Beweis: Die Umgebung der lokalen Optimalität von x∗ sei mit Br(x∗) bezeichnet.

Sei x ∈ C beliebig. Da C konvex ist, liegt die Konvexkombination x∗ + t(x − x∗),t ∈ [0, 1], in C und für hinreichend kleine t ∈ [0, 1] in Br(x

∗). Daraus folgt

f(x∗ + t(x− x∗)

)− f(x∗)

t≥ 0

31

Page 32: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

32 3. KONVEXE OPTIMIERUNGSPROBLEME

für hinreichend kleine t > 0. Da f differenzierbar in x∗ ist, können wir zur Grenzeübergehen t↘ 0 übergehen und erhalten (VI). �

Bemerkung 9.3Der Beweis von Satz 9.2 zeigt, dass man die Differenzierbarkeit von f auf ganz Rn ei-gentlich gar nicht braucht. Es reicht zu fordern, dass f in x∗ richtungsdifferenzierbarin alle Richtungen x− x∗ mit x ∈ C ist. �

Die Konvexität von f wurde in Satz 9.2 nicht gefordert. Wenn auch noch f konvexist, ist die Variationsungleichung nicht nur notwendig, sondern auch hinreichend fürOptimalität:

Satz 9.4Sei C ⊂ Rn konvex und f : Rn → R differenzierbar und konvex auf C. Dann ist jedeLösung der Variationsungleichung (VI) ein globaler Minimierer von (9.1).

Beweis: Sei x∗ ∈ C eine Lösung von (VI) und x ∈ C beliebig. Nach Satz 5.4(1) gilt

f(x)− f(x∗) ≥ ∇f(x∗)>(x− x∗) ≥ 0,

wobei wir (VI) benutzt haben, was nach Voraussetzung erfüllt ist. Da x ∈ C beliebigwar, folgt daraus die globale Optimalität von x∗. �

Bemerkung 9.5Wie bereits oben angedeutet ist Satz 6.2 ein Spezialfall der Sätze 9.2 und 9.4. Hierbeiist zu beachten, dass f(x) = 1/2 ‖x − y‖2 natürlich konvex und differenzierbar füralle x ∈ Rn ist. �

§ 10 KKT-Bedingungen und Lagrange-Dualität

Die Variationsungleichung (VI) ist für eine numerische Bestimmung des Optimumsnur in bestimmten Fällen brauchbar. Viele Algorithmen basieren hingegen auf Opti-malitätsbedingungen, die mit Hilfe von Lagrange-Multiplikatoren, auch duale Varia-blen genannt, formuliert werden. Wir werden im Folgenden die Existenz von Lagrange-Multiplikatoren für folgendes Problem beweisen:

minimiere f(x)

s.t. x ∈ C, Φ(x) ≤ 0.

}(CP)

Hierbei seien f : Rn → R und Φ : Rn → Rs konvex und C ⊂ Rn eine konvexe Menge.

Definition 10.1Ein Punkt x ∈ C heißt Slater-Punkt , falls

Φ(x) < 0

gilt. Aufgabe (CP) erfüllt die Slater-Bedingung , falls ein Slater-Punkt existiert.

Lemma 10.2Die Slater-Bedingung sei mit einem Slater-Punkt x ∈ C erfüllt. Gilt

f ∗ := infx∈C

Φ(x)≤0

f(x) > −∞, (10.1)

dann existiert ein λ ∈ Rs, λ ≥ 0, mitf ∗ = inf

x∈C

(f(x) + Φ(x)>λ

). (10.2)

Page 33: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 33

Wird das Infimum in (10.1) von einem x∗ ∈ C angenommen (d.h. x∗ löst (CP)),dann gilt zudem

f(x∗) + Φ(x∗)>λ = infx∈C

(f(x) + Φ(x)>λ

)(10.3a)

Φ(x∗) ≤ 0, Φ(x∗)>λ = 0, λ ≥ 0. (10.3b)

Beweis: Der Beweis erfolgt in zwei Schritten. Zunächst konstruieren wir eine Hyper-ebene (α, λ) ∈ R× Rs, die die Mengen

A := {(r, y) ∈ R× Rs : ∃x ∈ C mit r > f(x), y ≥ Φ(x)}B := {(r, y) ∈ R× Rs : r ≤ f ∗, y ≤ 0}.

trennt. Danach zeigen wir mit Hilfe der Slater-Bedingung, dass α > 0, was (10.2)impliziert.Zunächst ist wegen der Slater-Bedingung C 6= ∅, so dass auch A 6= ∅. Wegen (f ∗, 0) ∈B ist auch B nichtleer. Wegen (10.1) ist zudem A ∩ B = ∅. Außerdem sind A undB konvex. Im Fall von B sieht man das sofort. Sind hingegen (ri, yi), i = 1, 2, zweiElemente von A, so dass x1, x2 ∈ C mit ri > f(xi) und yi ≥ Φ(xi) gilt, dann folgtaus der Konvexität von f , Φ und C, dass

tx1 + (1− t)x2 ∈ C,tr1 + (1− t)r2 > tf(x1) + (1− t)f(x2) ≥ f(tx1 + (1− t)x2),

ty1 + (1− t)y2 ≥ tΦ(x1) + (1− t)Φ(x2) ≥ Φ(tx1 + (1− t)x2)

und damit(tr1 +(1− t)r2, ty1 +(1− t)y2

)∈ A für alle t ∈ [0, 1], also Konvexität von

A. Daher lassen sich A und B nach dem Trennungssatz 7.6 durch eine Hyperebenetrennen, d.h. es existieren (α, λ) ∈ R× Rs, (α, λ) 6= (0, 0), mit

α r1 + λ>y1 ≥ α r2 + λ>y2 ∀ (r1, y1) ∈ A, (r2, y2) ∈ B. (10.4)Per Definition ist (f(x) + 1,Φ(x)) ∈ A und (f ∗,Φ(x)) ∈ B. Eingesetzt in (10.4)ergibt sich

α(f(x) + 1− f ∗︸ ︷︷ ︸>0, nach (10.1)

) ≥ 0 ⇒ α ≥ 0. (10.5)

Überdies gilt λ ≥ 0. Um dies zu sehen, testen wir (10.4) mit (r1, y1) = (f(x) +1,Φ(x)) ∈ A und (r2, y2) = (f ∗, z + Φ(x)) ∈ B mit beliebigem z ∈ Rs mit z ≤ 0.Dann folgt

α︸︷︷︸≥0

(f(x) + 1− f ∗︸ ︷︷ ︸≥0

) ≥ λ>z ∀ z ∈ Rs : z ≤ 0 ⇒ λ>y ≥ 0 ∀ y ∈ Rs : y ≥ 0

und damit λ ≥ 0 wie im Satz behauptet.Wir zeigen nun α > 0. Dazu nehmen wir an, dass α = 0. (Man beachte, dass derFall α < 0 wegen (10.5) sowieso ausgeschlossen ist.) Wegen (α, λ) 6= (0, 0) ist dannzunächst λ 6= 0. Außerdem folgt im Fall α = 0 aus (10.4) mit (f ∗, 0) ∈ B und(f(x) + 1,Φ(x)) ∈ A, dass

λ>Φ(x) ≥ 0. (10.6)Andererseits existiert wegen λ ≥ 0 und λ 6= 0 ein Index ` ∈ {1, ..., s} mit λ` > 0.Daraus folgt zusammen mit der Slater-Bedingung, dass

λ>Φ(x) =s∑i=1

λi︸︷︷︸≥0

Φi(x)︸ ︷︷ ︸<0

≤ λ`Φ`(x) < 0

Page 34: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

34 3. KONVEXE OPTIMIERUNGSPROBLEME

im Widerspruch zu (10.6). Also gilt α > 0, und wir nehmen o.B.d.A. an, dass α = 1(sonst argumentiere mit λ/α). Seien nun x ∈ C und ε > 0 beliebig. Aus (10.4) folgtmit (r1, y1) = (f(x) + ε,Φ(x)) ∈ A und (r2, y2) = (f ∗, 0) ∈ B (beachte, dass α = 1):

f ∗ ≤ f(x) + ε+ λ>Φ(x) ∀x ∈ C, ε > 0.

Grenzübergang ε↘ 0 liefert dann

f ∗ ≤ f(x) + λ>Φ(x) ∀x ∈ C. (10.7)

Wegen λ ≥ 0 ist λ>Φ(x) ≤ 0 für alle x mit Φ(x) ≤ 0, woraus mit (10.7)

f ∗ ≤ infx∈C

(f(x) + λ>Φ(x)

)≤ inf

x∈CΦ(x)≤0

f(x) = f ∗ (10.8)

und damit die erste Aussage (10.2) folgt.

Falls ein x∗ ∈ C existiert mit Φ(x∗) ≤ 0 und f(x∗) = f ∗, dann folgt aus (10.8), dass

f ∗ ≤ f(x∗) + λ>Φ(x∗) ≤ f(x∗) = f ∗

und somit f(x∗) + λ>Φ(x∗) = infx∈C(f(x) + λ>Φ(x)) und λ>Φ(x∗) = 0. �

Wir betrachten nun eine spezielle Menge C, nämlich

C = {x ∈ Rn : Ψ(x) ≤ 0, h(x) = 0}, (10.9)

wobei Ψ : Rn → Rt und h : Rn → Rp affin-linear seien, d.h. es gibt MatrizenH ∈ Rp×n, G ∈ Rt×n und Vektoren e ∈ Rp, d ∈ Rt, so dass

h(x) = H x− e und Ψ(x) = Gx− d.Wegen der Linearität von h und Ψ ist diese Menge natürlich konvex. Des Weiterensetzen wir

m = s+ t, g : Rn → Rm, g(x) =(Φ(x),Ψ(x)

).

Man beachte, dass g wegen der Voraussetzung an Φ und der Linearität von Ψ konvexist. In diesem Fall lautet das konvexe Optimierungsproblem (CP) dann

minimiere f(x)

s.t. g(x) ≤ 0, h(x) = 0.

}(CLP)

Darüber hinaus nehmen wir im Folgenden an, dass f und Φ (und damit auch g)differenzierbar sind.

Satz 10.3 (KKT-Bedingungen)Die Zielfunktion f : Rn → R sei differenzierbar und konvex. Darüber hinaus seih : Rn → Rp affin-linear und g : Rn → Rm bestehe aus einem konvexen Teil Φ, derdifferenzierbar sei, und einem affin-linearen Anteil Ψ. Ferner sei die Slater-Bedingungerfüllt, d.h. es existiere ein x ∈ Rn mit

h(x) = 0, Ψ(x) ≤ 0, Φ(x) < 0. (10.10)

Ist x∗ ∈ Rn ein (globaler = lokaler) Minimierer von (CLP), dann existieren Lagrange-Multiplikatoren λ∗ ∈ Rm, µ∗ ∈ Rp, so dass das folgende Optimalitätssystem erfülltist:

Zulässigkeit: h(x∗) = 0, g(x∗) ≤ 0 (10.11a)

Gradientengleichung: ∇f(x∗) + g′(x∗)>λ∗ + h′(x∗)>µ∗ = 0 (10.11b)

Komplementäre Schlupfbedingung: λ∗ ≥ 0, (λ∗)>g(x∗) = 0 (10.11c)

Page 35: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 35

Beweis: Die Hauptarbeit ist eigentlich mit dem Beweis des Farkas-Lemmas 8.3 unddem von Lemma 10.2 schon erbracht worden.

Zunächst ist zu beachten, dass (CLP) eine konvexe Optimierungsaufgabe darstellt,so dass wir nach Satz 9.1 nicht zwischen globalen und lokalen Optimierern un-terscheiden müssen. Ist x∗ ∈ Rn ein (globaler = lokaler) Minimierer, dann ist esnatürlich sowieso zulässig, was (10.11a) impliziert.

Per Konstruktion ist (CLP) ein Spezialfall von (CP). Wegen der Slater-Bedingungist Lemma 10.2 anwendbar, so dass ein λ ∈ Rs existiert mit

f(x∗) + Φ(x∗)>λ = infx∈C

(f(x) + Φ(x)>λ

)(10.12)

Φ(x∗) ≤ 0, Φ(x∗)>λ = 0, λ ≥ 0. (10.13)

Nach (10.12) löst x∗ also die Aufgabe

minimiere f(x) + Φ(x)>λ

s.t. x ∈ C.

}(10.14)

Da deren zulässige Menge C konvex ist, erfüllt jede lokale Lösung, also insbesonderex∗, nach Satz 9.2 die folgende Variationsungleichung:(∇f(x∗) + Φ′(x∗)>λ︸ ︷︷ ︸

=:−b

)>(x− x∗) ≥ 0

∀x ∈ C = {x ∈ Rn : Gx ≤ d,H x = e}.(10.15)

Wir definieren nun die Indexmenge

A∗lin := {i ∈ {1, ..., t} : Ψi(x∗) = 0} = {i ∈ {1, ..., t} : G>(i)x

∗ = di}.Des Weiteren definieren wir

l := |A∗lin|, Ga ∈ Rl×n, Ga := G(A∗lin), da ∈ Rl, da := dA∗lind.h. Ga ist die Teilmatrix aus den Zeilenvektoren von G, deren Zeilenindex in A∗linliegt. Sei nun s ∈ Rn mit H s = 0 und Ga s ≤ 0 beliebig. Dann erfüllt xτ := x∗ + τ sfür jedes τ ≥ 0 wegen der Zulässigkeit von x∗

H xτ = H x∗ + τ H s = e und Ga xτ = Ga x∗ + τ Ga s ≤ da. (10.16)

Für i /∈ A∗lin existiert ein τi > 0 hinreichend klein, so dass

G>(i)xτ = G>(i)x∗︸ ︷︷ ︸

<di

+τ G>(i)s ≤ di ∀ τ ∈ [0, τi].

Wählen wir 0 < τ ≤ mini/∈A∗lin τi, dann folgt daraus zusammen mit (10.16) schließlichxτ ∈ C, so dass xτ zulässig für die Variationsungleichung (10.15) ist. Diese impliziertdann (nach Division durch τ > 0), dass

b>s ≤ 0 ∀ s ∈ Rn : H s = 0, Ga s ≤ 0.

Mit dem Farkas-Lemma aus Satz 8.3 folgt dann die Existenz von λ ∈ Rl und µ∗ ∈ Rp,so dass

λ ≥ 0 und b = G>a λ+H>µ∗. (10.17)Definieren wir den Vektor

λ ∈ Rt, λA∗lin = λ, λi = 0 ∀ i /∈ A∗lin,dann folgt

Ψ′(x∗)>λ = G>λ = G>a λ

Page 36: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

36 3. KONVEXE OPTIMIERUNGSPROBLEME

und damit aus (10.17):

∇f(x∗) + Φ′(x∗)>λ+ Ψ′(x∗)>λ+ h′(x∗)>µ∗ = 0.

Definieren wir λ∗ = (λ, λ) ∈ Rm dann ergibt sich wegen

g′(x∗)>λ∗ =(Φ′(x∗)>,Ψ′(x∗)>

)(λλ

)= Φ′(x∗)>λ+ Ψ′(x∗)>λ

gerade die Gradientengleichung (10.11b).

Es bleibt die komplementäre Schlupfbedingung zu zeigen. Diese folgt aber sofortaus der Definition von λ∗: Zunächst ist λ ≥ 0 nach Lemma 10.2. Außerdem istλ ≥ 0 nach dem Farkas-Lemma und daher nach Konstruktion auch λ ≥ 0, wasdie Vorzeichenbedingung an den Ungleichungsmultiplikator λ∗ impliziert. Darüberhinaus gilt

g(x∗)>λ∗ = Φ(x∗)>λ︸ ︷︷ ︸=0

+Ψ(x∗)>λ = (Gax∗ − da︸ ︷︷ ︸=0

)>λ = 0,

wobei wir Lemma 10.2 und die Definition von A∗lin benutzt haben. Damit ist auchdie komplementäre Schlufbedingung bewiesen. �

Bemerkung 10.4Die Gleichungen und Ungleichungen in (10.11) werden auch als Karush-Kuhn-Tucker(KKT) Bedingungen bezeichnet. KKT-Bedingungen stellen i.A. nur unter zusätzli-chen Voraussetzungen notwendige Optimalitätsbedingungen dar. Im Fall von (CLP)sind dies die Voraussetzungen von Satz 10.3, also insbesondere die Slater-Bedingung.Derartige Voraussetzungen nennt man auch Constraint Qualifications (CQ). Untergeeigneten CQ kann man auch für Probleme der Bauart (CLP) mit allgemeinen(nichtlinearen) Funktionen f , g und h beweisen, dass (lokale) Optimierer die KKT-Bedingungen erfüllen. Die KKT-Theorie ist also nicht auf konvexe Probleme be-schränkt. Dies wird in der Vorlesung “Nichtlineare Optimierung” näher untersucht.�

Bemerkung 10.5Satz 10.3 zeigt insbesondere, dass man in dem Fall, dass alle Komponenten vong : Rn → Rm linear-affin ist, auf die Slater-Bedingung verzichten kann. In diesemFall reicht also die Existenz eines zulässigen Punktes, d.h.

∃ x ∈ Rn mit h(x) = 0, g(x) ≤ 0,

anstelle von (10.10). Im Fall linearer Nebenbedingungen ist also außer der Existenzeines zulässigen Punktes keine weitere CQ notwendig! �

Definition 10.6Ein Punkt x∗ ∈ Rn heißt KKT-Punkt oder auch stationärer Punkt von (CLP),falls Lagrange-Multiplikatoren λ∗ ∈ Rm, µ∗ ∈ Rp existieren, so dass das Optima-litätssystem (10.11) erfüllt ist. Ein Tripel (x∗, λ∗, µ∗), welches (10.11) erfüllt, heißtKKT-Tripel. �

Mit Hilfe der so genannten Lagrange-Funktion lässt sich das Optimalitätssystemkompakt aufschreiben.

Page 37: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 37

Definition 10.7 (Lagrange-Funktion)Die Funktion L : Rn × Rm × Rp → R, definiert durch

L (x, λ, µ) := f(x) + λ>g(x) + µ>h(x), (10.18)

heißt Lagrange-Funktion. �

Damit ist (10.11) äquivalent zu:

Zulässigkeit:∇µL (x∗, λ∗, µ∗) = 0

∇λL (x∗, λ∗, µ∗) ≤ 0

}(10.19a)

Gradientengleichung: ∇xL (x∗, λ∗, µ∗) = 0 (10.19b)

Komplementäre Schlupfbedingung: λ∗ ≥ 0, (λ∗)>g(x∗) = 0. (10.19c)

KKT-Tripel lassen sich im konvexen Fall nicht nur durch das Optimalitätssystemcharakterisieren, sondern auch durch die so genannte Sattelpunktseigenschaft, wiewir im Folgenden sehen werden.

Definition 10.8 (Sattelpunkt)Ein Tripel (x∗, λ∗, µ∗) ∈ Rn×Rm×Rp heißt Sattelpunkt der Lagrange-Funktion, fallsλ∗ ≥ 0 und

L (x∗, λ, µ) ≤ L (x∗, λ∗, µ∗) ≤ L (x, λ∗, µ∗) (10.20)für alle (x, λ, µ) ∈ Rn × Rm × Rp mit λ ≥ 0 gilt. �

Lemma 10.9Ein Tripel (x∗, λ∗, µ∗) ∈ Rn×Rm×Rp ist genau dann ein Sattelpunkt der Lagrange-Funktion, falls es ein KKT-Tripel von (CLP) ist.

Beweis: Sei (x∗, λ∗, µ∗) ein KKT-Tripel. Wir beweisen zunächst die rechte Unglei-chung in (10.20). Das freie Optimierungsproblem

minimierex∈Rn

L (x, λ∗, µ∗) (10.21)

ist ein konvexes Problem, denn die Zielfunktion ist wegen Konvexität von f undg, Linearität von h und Nicht-Negativität von λ∗ konvex, wie man leicht überprüft.Da (x∗, λ∗, µ∗) ein KKT-Tripel ist, gilt die Gradientengleichung (10.19b), was geradeder notwendigen Optimalitätsbedingung von (10.21) entspricht, vgl. Satz 9.2. WegenKonvexität sind die notwenigen Bedingungen auch hinreichend, s. Satz 9.4. Daherlöst x∗ die Aufgabe (10.21), was die rechte Ungleichung beweist.

Zur linken Ungleichung in (10.20): Aus der Zulässigkeit von x∗ und der komplemen-tären Schlupfbedingung folgt für alle λ ∈ Rm mit λ ≥ 0, dass

L (x∗, λ, µ)−L (x∗, λ∗, µ∗) = g(x∗)>λ− g(x∗)>λ∗︸ ︷︷ ︸=0

+h(x∗)︸ ︷︷ ︸=0

>(µ− µ∗) = g(x∗)>λ ≤ 0

was schließlich die Sattelpunktungleichung liefert.

Sei (x∗, λ∗, µ∗), λ∗ ≥ 0, nun ein Sattelpunkt der Lagrange-Funktion. Dann löst x∗ dasfreie Problem (10.21) und erfüllt somit dessen notwendige Optimalitätsbedingung,die gerade der Gradientengleichung (10.19b) entspricht. Die Zulässigkeit von x∗ folgtaus der linken Ungleichung in (10.20). Diese ist äquivalent zu

g(x∗)>(λ− λ∗) + h(x∗)>(µ− µ∗) ≤ 0 ∀µ ∈ Rp, λ ∈ Rm : λ ≥ 0. (10.22)

Page 38: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

38 3. KONVEXE OPTIMIERUNGSPROBLEME

Wählen wir λ = λ∗ ≥ 0 und µ = h(x∗) + µ∗, dann folgt ‖h(x∗)‖2 ≤ 0, also h(x∗) =0. Um die Zulässigkeit für die Ungleichungsnebenbedingungen zu zeigen, sei i ∈{1, ...,m} beliebig. Wir wählen λ = ei + λ∗ ≥ 0 und µ = µ∗ in (10.22), wobeiei ∈ Rm wieder der i-te Einheitsvektor ist. Dann folgt g(x∗)>ei = gi(x

∗) ≤ 0. Da ibeliebig war, folgt insgesamt die Zulässigkeit von x∗. Es bleibt schließlich nur nochdie komplementäre Schlupfbedingung zu zeigen. Dazu testen wir (10.22) mit λ = 0und λ = 2λ∗ ≥ 0 (und jeweils µ = µ∗). Dann ergibt sich sofort g(x∗)>λ∗ = 0, und(x∗, λ∗, µ∗) ist somit ein KKT-Tripel wie behauptet. �

Bemerkung 10.10Man beachte, dass wir für den zweiten Teil des Beweises die Konvexität von f und gund die Linearität von h gar nicht benötigt haben. Das bedeutet, Sattelpunkte sindauch für beliebige (differenzierbare) f , g und h KKT-Tripel. Die Umkehrung abergilt i.A. nur im konvexen Fall. �

Als nächstes betrachten wir eine Aufgabe, die formal genauso aussieht wie (CLP),d.h.

minimiere f(x)

s.t. g(x) ≤ 0, h(x) = 0,

}(NLP)

allerdings sind die Funktionen f : Rn → R, g : Rn → Rm und h : Rn → Rp

diesmal beliebig, d.h. insbesondere, dass f und g nicht konvex und h nicht affin-linearsein muss. Aufgabe (NLP) hat also die Struktur eines (allgemeinen) nichtlinearenProgramms.

Proposition 10.11Ist (x∗, λ∗, µ∗) ∈ Rn × Rm × Rp, λ∗ ≥ 0, Sattelpunkt der Lagrange-Funktion, dannlöst x∗ die Aufgabe (NLP).

Beweis: Die Zulässigkeit von x∗ zeigt man genauso wie im zweiten Teil des Beweisesvon Lemma 10.9. (Man beachte, dass die Konvexität von f und g und die Lineari-tät von h hierfür nicht gebraucht werden, vgl. Bemerkung 10.10). Zur Optimalitätvon x∗: Ebenfalls wie im zweiten Teil des Beweises von Lemma 10.9 zeigt man diekomplementäre Schlupfbedingung. Zusammen mit h(x∗) = 0 folgt aus dieser

f(x∗) = f(x∗) + g(x∗)>λ∗ + h(x∗)>µ∗(10.20)≤ f(x) + g(x)>λ∗ + h(x)>µ∗ ≤ f(x)

für alle x ∈ Rn mit g(x) ≤ 0 und h(x) = 0. Bei der letzten Ungleichung haben wirλ∗ ≥ 0 ausgenutzt. Damit ist x∗ global optimal für (NLP). �

Da KKT-Tripel nach Lemma 10.9 im konvexen Fall Sattelpunkte sind und diese nachProposition 10.11 globale Minimierer darstellen, erhalten wir sofort das folgende

Korollar 10.12Jeder KKT-Punkt der konvexen Aufgabe (CLP) ist ein globaler Minimierer von(CLP). �

Bemerkung 10.13Die KKT-Bedingungen sind im konvexen Fall also hinreichend für Optimalität. Manbeachte, dass sie i.A. nicht notwendig für Optimalität sind, es sei denn, eine CQ wiez.B. die Slater-Bedingung ist erfüllt, wie wir in Satz 10.3 gesehen haben. �

Page 39: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 39

Die linke Ungleichung in (10.20), d.h.L (x∗, λ∗, µ∗) = sup

λ≥0µ∈Rp

L (x∗, λ, µ)

deutet daraufhin, dass auch die Lagrange-Multiplikatoren ein Optimierungsproblemlösen und zwar ein Maximierungsproblem. Dieses bezeichnet man als duales Problem.

Definition 10.14Das primale Problem zu (NLP) ist gegeben durch

infx∈Rn

supµ∈Rp

λ≥0

L (x, λ, µ), (P)

wobei L die Lagrange-Funktion aus (10.18) ist. Das duale Problem zu (NLP) istdefiniert durch

supµ∈Rp

λ≥0

infx∈Rn

L (x, λ, µ). (D)

Die Extremwerte von (P) und (D) werden mit inf(P ), sup(D) ∈ {−∞} ∪ R ∪ {∞}bezeichnet, d.h.

inf(P ) = infx∈Rn

supµ∈Rp

λ≥0

L (x, λ, µ) und sup(D) = supµ∈Rp

λ≥0

infx∈Rn

L (x, λ, µ).

�Lemma 10.15Das primale Problem (P) ist äquivalent zu (NLP) in dem Sinn, dass lokale (unddamit auch globale) Lösungen von (P) auch (NLP) lösen und umgekehrt.

Beweis: Wegensupµ∈Rp

λ≥0

L (x, λ, µ) = supµ∈Rp

λ≥0

(f(x) + g(x)>λ+ h(x)>µ

)=∞,

falls gi(x) 6≤ 0 oder h(x) 6= 0, kommen unzulässige x ∈ Rn bei der äußeren Mini-mierung in (P) nicht in Frage. Für zulässige Punkte, d.h. x ∈ Rn mit h(x) = 0 undg(x) ≤ 0, folgt

supµ∈Rp

λ≥0

(f(x) + g(x)>λ︸ ︷︷ ︸

≤0

+h(x)︸︷︷︸=0

>µ)

= f(x),

so dasssupµ∈Rp

λ≥0

L (x, λ, µ) = f(x) ∀x ∈ Rn : g(x) ≤ 0, h(x) = 0.

Daher stimmen die Zielfunktionen von (P) und (NLP) auf der zulässigen Mengeüberein, woraus die Aussage folgt. �

Es gilt also

(P) ⇔{

minimiere f(x)

s.t. g(x) ≤ 0, h(x) = 0.

Definiert man die so genannte duale Zielfunktion q : Rm × Rp → R ∪ {−∞} durchq(λ, µ) := inf

x∈RnL (x, λ, µ),

dann lässt sich das duale Problem auch schreiben als

(D) ⇔{

maximiere q(λ, µ)

s.t. λ ≥ 0.

Page 40: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

40 3. KONVEXE OPTIMIERUNGSPROBLEME

Im Gegensatz zum primalen Problem ist das duale Problem eine Maximierungsauf-gabe. Wozu das duale Problem nützlich ist, zeigt der sogenannte starke Dualitäts-satz, den wir im Folgenden herleiten.

Lemma 10.16Für jedes Optimierungsproblem der Form (NLP) gilt:

sup(D) ≤ inf(P ) (10.23)

Beweis: Nach Lemma 10.15 gilt

inf(P ) = infx∈Rn

supµ∈Rp

λ≥0

L (x, λ, µ) = infg(x)≤0h(x)=0

f(x).

Andererseits ist für alle µ ∈ Rp, λ ∈ Rm mit λ ≥ 0

infx∈Rn

L (x, λ, µ) ≤ infg(x)≤0h(x)=0

(f(x) + g(x)>λ︸ ︷︷ ︸

≤0

+h(x)︸︷︷︸=0

>µ)≤ inf

g(x)≤0h(x)=0

f(x),

was die Aussage liefert. �

Bemerkung 10.17

• Falls (P) und (D) beide zulässig sind, folgt also inf(P ) ∈ R und sup(D) ∈ R.• Das duale Problem gibt nach Lemma 10.16 eine untere Schranke für denoptimalen Zielfunktionswert des primalen Problems an. �

Aus Lemma 10.16 folgt insbesondere, dass

f(x) ≥ inf(P ) ≥ sup(D) ≥ q(λ, µ)

für alle (λ, µ) ∈ Rm × Rp mit λ ≥ 0 und für alle x ∈ Rn, die zulässig für das primaleProblem (NLP) sind, d.h. für alle x, für die h(x) = 0 und g(x) ≤ 0 gilt. Das führtauf den so genannten Schwachen-Dualitäts-Satz:

Korollar 10.18 (Schwache Dualität)Ist x zulässig für das primale Problem und (λ, µ) zulässig für das duale Problem,dann gilt f(x) ≥ q(λ, µ).

Es gibt durchaus Optimierungsaufgaben, bei denen inf(P ) > sup(D) gilt, wie dasfolgende Beispiel zeigt:

Beispiel 10.19Betrachte das Problem

minimiere f(x)

s.t. x ≥ 0

}mit

f(x) =

{x2 − 2x, x ≥ 0

x, x < 0.

Man bestätigt leicht, dass das globale Minimum dieser Aufgabe bei x = 1 liegt, sodass inf(P ) = f(1) = −1 ist. Für die Lagrange-Funktion erhalten wir

L (x, λ) =

{x2 − (2 + λ)x, x ≥ 0

(1− λ)x, x < 0,

Page 41: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 41

so dass

q(λ) = infx∈Rn

L (x, λ) =

{−(1/4)(2 + λ)2, λ ≥ 1

−∞, λ < 1.

Daraus folgt wiederum, dass

sup(D) = supλ≥0

q(λ) = q(1) = −9/4 < −1 = inf(P ).�

Es kann also sein, dass eine so genannte Dualitätslücke auftritt, dass also inf(P ) >sup(D). Im Fall einer Dualitätslücke können keine Lagrange-Multiplikatoren exis-tieren, wie das folgende Resultat zeigt:

Proposition 10.20Ein Tripel (x∗, λ∗, µ∗) ∈ Rn × Rm × Rp mit λ∗ ≥ 0 ist genau dann Sattelpunkt derLagrange-Funktion, falls x∗ das primale Problem (P) löst, (λ∗, µ∗) das duale Problem(D) und zudem

sup(D) = inf(P ) (10.24)gilt.

Beweis: Sei (x∗, λ∗, µ∗) ein Sattelpunkt. Dann folgt zusammen mit Lemma 10.16,dass

L (x∗, λ∗, µ∗)

(10.20)= inf

x∈RnL (x, λ∗, µ∗)

≤ supµ∈Rp

λ≥0

infx∈Rn

L (x, λ, µ) = sup(D)

(10.23)≤ inf(P ) = inf

x∈Rnsupµ∈Rp

λ≥0

L (x, λ, µ)

≤ supµ∈Rp

λ≥0

L (x∗, λ, µ)(10.20)

= L (x∗, λ∗, µ∗)

und damit inf(P ) = sup(D) = L (x∗, λ∗, µ∗), was den ersten Teil der Aussage be-weist.

Um die umgekehrte Implikation zu beweisen, seien x∗ und (λ∗, µ∗) Lösungen von(P) bzw. (D). Dann folgtL (x∗, λ∗, µ∗) ≥ inf

x∈RnL (x, λ∗, µ∗)

= supµ∈Rp

λ≥0

infx∈Rn

L (x, λ, µ) = sup(D)

(10.24)= inf(P ) = inf

x∈Rnsupµ∈Rp

λ≥0

L (x, λ, µ)

= supµ∈Rp

λ≥0

L (x∗, λ, µ) ≥ L (x∗, λ∗, µ∗),

so dassL (x∗, λ∗, µ∗) = sup

µ∈Rp

λ≥0

L (x∗, λ, µ)

und L (x∗, λ∗, µ∗) = infx∈Rn

L (x, λ∗, µ∗),

Page 42: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

42 3. KONVEXE OPTIMIERUNGSPROBLEME

was die Sattelpunktseigenschaft zeigt. �

Als unmittelbare Konsequenz aus Satz 10.3, Lemma 10.9 und Proposition 10.20erhalten wir den folgenden

Satz 10.21 (Starke Dualität)Die Zielfunktion f : Rn → R sei differenzierbar und konvex. Darüber hinaus seih : Rn → Rp affin-linear und g : Rn → Rm bestehe aus einem konvexen Teil Φ, derdifferenzierbar sei, und einem affin-linearen Anteil Ψ. Ist das primale Problem lösbarund existiert ein Slater-Punkt x ∈ Rn, so dass

h(x) = 0, Ψ(x) ≤ 0, Φ(x) < 0,

dann gilt inf(P ) = sup(D) und das duale Problem besitzt ebenfalls eine Lösung.

Die Slater-Bedingung ist in der Tat entscheidend für Satz 10.21, wie das folgendeBeispiel zeigt:

Beispiel 10.22Wir betrachten die Aufgabe

minimiere − xs.t. x2 ≤ 0.

}Mit f(x) = −x und g(x) = x2 passt die Aufgabe in das allgemeine Setting von(CLP). Die zulässige Menge ist durch F = {0} gegeben, so dass inf(P ) = f(0) =0 ist. Die Slater-Bedingung ist natürlich nicht erfüllt. Für die Lagrange-Funkionerhalten wir

L (x, λ) = −x+ λx2.

Diese nimmt für positive λ ihr globales Minimum bei xλ = 1/(2λ) an. Die dualeZielfunktion ist daher

q(λ) =

L (xλ, λ) = − 1

4λ, λ > 0

−∞, λ ≤ 0.

Daher gilt zwar supλ≥0 q(λ) = 0 = inf(P ), aber dieses Supremum wird nicht ange-nommen. Es existieren also keine Lagrange-Multiplikatoren für diese Aufgabe. (Dasliegt allerdings an der selten dämlichen Beschreibung der zulässigen Menge ..) �

Einen Überblick über den Zusammenhang zwischen Sattelpunkteigenschaft, KKT-Bedingungen, Optimalität und Dualität gibt die Abbildung 10.1.

Bemerkung 10.23Sind alle Nebenbedingungen affin-linear, dann wird die Slater-Bedingung zum Be-weis von Satz 10.3 nicht benötigt, wie bereits in Bemerkung 10.5 erwähnt. Dement-sprechend gilt auch der starke Dualitätssatz im Fall affin-linearer Nebenbedingun-gen, ohne dass die Slater-Bedingung vorausgesetzt werden muss. �

Page 43: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. KKT-BEDINGUNGEN UND LAGRANGE-DUALITÄT 43

x∗ optimal

(x∗, λ∗, µ∗) KKT-Tripel

(x∗, λ∗, µ∗) Sattelpunkt

Starke Dualität

Slater-B

dg.konvex

konvex

Slater-Bdg.

Abbildung 10.1. Übersicht über Optimalitätsbedingungen in derkonvexen Optimierung. Mit „konvex“ ist hierbei gemeint, dass dasOptimierungsproblem die Form (CLP) mit konvexem f und g undlinear-affinem h haben muss. „Slater-Bdg.“ steht abkürzend für dieVoraussetzungen von Satz 10.3. Mit „Starker Dualität“ ist gemeint,dass primales und duales Problem lösbar sind und inf(P ) = sup(D)gilt. Pfeile ohne Beschriftung gelten auch im Fall von (NLP).

Page 44: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

44 3. KONVEXE OPTIMIERUNGSPROBLEME

§ 11 Subgradientenverfahren

Ziel dieses Abschnitts ist es, einen einfachen, aber sehr allgemein verwendbarenAlgorithmus zur Minimierung konvexer Funktionen ohne Nebenbedingungen zu be-schreiben. Wir betrachten also das Problem

minimiere f(x)

s.t. x ∈ Rn

}für eine konvexe Funktion f : Rn → R.

Die folgende Definition verallgemeinert den Begriff des Gradienten auf konvexe, abernicht notwenigerweise differenzierbare Funktionen.

Definition 11.1Sei f : Rn → R konvex und x0 ∈ Rn. Dann heißt s ∈ Rn Subgradient von f in x0,falls gilt:

f(x)− f(x0) ≥ s>(x− x0) ∀x ∈ Rn.

Die Menge aller Subgradienten von f in x0 heißt Subdifferential von f in x0 undwird mit ∂f(x0) bezeichnet.

Definition 11.1 wird in Abbildung ?? illustriert.

Satz 11.2Sei f : Rn → R konvex und x0 ∈ Rn. Dann ist x0 ein globaler Minimierer von fgenau dann, wenn 0 ∈ ∂f(x0).

Beweis: Nach Definition ist x0 globaler Minimierer von f genau dann, wenn

f(x)− f(x0) ≥ 0 ∀x ∈ Rn

gilt, also genau dann, wenn 0 Subgradient von f in x0 ist. �

Die Existenz von Subgradienten ist etwas schwieriger zu beweisen, sie basiert aufdem Trennungssatz für konvexe Mengen.

Satz 11.3Sei f : Rn → R konvex und x0 ∈ Rn. Dann gilt ∂f(x0) 6= ∅.

Beweis: Nach Lemma 5.3 ist der Epigraph epi(f) eine konvexe Menge. Offensichtlichgilt int(epi(f)) 6= ∅, epi(f) 6= Rn+1, und (x0, f(x0)) 6∈ int(epi(f)). Nach Lemma 7.4existiert ein c ∈ Rn+1 \ {0} mit

c>(x0, f(x0)) ≥ supz∈epi(f)

c>z.

Mit s := (c1, . . . , cn) ∈ Rn gilt also

s>(x− x0) + cn+1(y − f(x0)) ≤ 0 ∀ (x, y) ∈ epi(f). (11.1)

Aus (x0, f(x0) + 1) ∈ epi(f) folgt insbesondere cn+1 ≤ 0. Falls cn+1 = 0 gilt, lie-fert (11.1) auch s = 0, also einen Widerspruch zu c 6= 0. Wir können nach Skalierungvon c also cn+1 = −1 annehmen. Dann impliziert (11.1)

s>(x− x0) ≤ f(x)− f(x0) ∀x ∈ Rn

und somit s ∈ ∂f(x0) nach Definition. �

Page 45: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

3. SUBGRADIENTENVERFAHREN 45

Bemerkung 11.4Man kann auch die folgende Umkehrung von Satz 11.3 zeigen: Falls für eine Funktionf : Rn → R an jeder Stelle mindestens ein Subgradient existiert, so ist f konvex.Zum Beweis kann man wiederum Lemma 5.3 zusammen mit Satz 4.5 (1) verwenden.

Satz 11.5Sei f : Rn → R konvex und diffbar in x0 ∈ Rn. Dann gilt ∂f(x0) = {∇f(x0)}.

Beweis: Sei s ∈ ∂f(x0). Für alle d ∈ Rn gilt dann

∇f(x0)>d = limt→0+

f(x0 + td)− f(x0)

t≥ lim

t→0+

s>(x0 + td− x0)

t= s>d

und analog ∇f(x0)>(−d) ≥ s>(−d). Es folgt ∇f(x0)>d = s>d, insgesamt ergibtsich also ∇f(x0) = s und damit ∂f(x0) ⊆ {∇f(x0)}. Der Rest der Aussage folgtnun aus Satz 11.3 (oder direkter aus Satz 5.4). �

Algorithmus 11.6 (Subgradientenverfahren)

1: Gegeben sei eine konvexe Funktion f : Rn → R.2: Wähle x0 ∈ Rn und setze k := 0.3: Bestimme ein sk ∈ ∂f(xk).4: if sk = 0 then5: stop: xk ist Minimierer von f .6: else7: Wähle Schrittweite σk > 0.8: Setze xk+1 := xk − σk

||sk||sk und k := k + 1.

9: goto 310: end if

Satz 11.7Die Funktion f : Rn → R sei konvex und besitze einen Minimierer x∗. Angenommen,Algorithmus 11.6 stoppt nicht und die in Schritt 7 gewählten Schrittweiten erfüllen

∞∑k=0

σ2k <∞,

∞∑k=0

σk =∞ .

Außerdem gelte ||sk|| ≤ S für alle k ∈ N. Dann folgt

limk→∞

min{f(x0), . . . , f(xk)} = f(x∗) .

Beweis: Wegen sk ∈ ∂f(xk) und ||sk|| ≤ S gilt

||xk+1 − x∗||2 = ||xk − σk||sk||s

k − x∗||2

= ||xk − x∗||2 − 2 σk||sk||(s

k)>(xk − x∗) +σ2k

||sk||2 ||sk||2

≤ ||xk − x∗||2 − 2Sσk(f(xk)− f(x∗)) + σ2

k.

Rekursive Anwendung ergibt

0 ≤ ||xk+1 − x∗||2 ≤ ||x0 − x∗||2 − 2

S

k∑i=0

σi(f(xi)− f(x∗)) +k∑i=0

σ2i

Page 46: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

46 3. KONVEXE OPTIMIERUNGSPROBLEME

und damitk∑i=0

σi(f(xi)− f(x∗)) ≤ S

2

(||x0 − x∗||2 +

k∑i=0

σ2i

).

Es gilt ferner(min{f(x0), . . . , f(xk)} − f(x∗)

) k∑i=0

σi ≤k∑i=0

σi(f(xi)− f(x∗)),

also

min{f(x0), . . . , f(xk)} − f(x∗) ≤S(||x0 − x∗||2 +

∑ki=0 σ

2i

)2∑k

i=0 σi.

Nach Voraussetzung konvergiert der Zähler und der Nenner geht gegen unendlich,also konvergiert die linke Seite gegen Null. �

Bemerkung 11.8Die Folge σk := 1

k+1erfüllt die Voraussetzungen von Satz 11.7.

Bemerkung 11.9Die Aussage von Satz 11.7 bleibt auch ohne die Voraussetzung gültig, dass die Sub-gradienten beschränkt sind.

Beispiel 11.10Betrachte die Betragsfunktion f(x) = |x|. Es gilt

∂f(x0) =

{−1}, x0 < 0

{1}, x0 > 0

[−1, 1], x0 = 0.

Die Verfahren “pendelt” also um den Nullpunkt. Es stoppt nur dann, wenn xk = 0für ein k gilt und aus ∂f(xk) = [−1, 1] die Null als Subgradient gewählt wird.Andernfalls konvergiert xk gegen Null.

Page 47: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Teil 2

Lineare Optimierung

Page 48: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 49: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 4

Polytope und Polyeder

Inhalt12 Darstellungen von Polyedern 49

13 Seitenflächen, Facetten und Ecken 52

14 Satz von Weyl-Minkowski 57

§ 12 Darstellungen von Polyedern

In diesem Teil der Vorlesung behandeln wir spezielle konvexe Optimierungsprobleme,nämlich lineare Programme (LP), d.h. Probleme der Form

minimiere c>x

s.t. Ax = b, Gx ≤ d

}(12.1)

mit c ∈ Rn, A ∈ Rm×n, b ∈ Rn, G ∈ Rp×n und d ∈ Rp. Derartige Aufgaben findensich in zahlreiche Anwendungen wieder, wie beispielsweise beim Transportproblemaus Beispiel 2.1.

Wir untersuchen zunächst die zulässige Menge von (12.1) genauer. Dazu definierenwir:

Definition 12.1Eine Menge P ⊂ Rn heißt Polyeder , falls sie der Durchschnitt endlich vieler abge-schlossener Halbräume ist. Ein beschränktes Polyeder heißt Polytop. �

Beispiele für Polyeder zeigt Abbildung ??. Da Halbräume nach Definition 4.3 konvexsind, folgt aus Satz 4.5 sofort:

Korollar 12.2Jedes Polyeder ist konvex. �

Bemerkung 12.3Nach Korollar 7.3 ist jede konvexe abgeschlossene Menge Durchschnitt abgeschlosse-ner Halbräume. Polyeder zeichnen sich per Definition dadurch aus, dass der Durch-schitt nur von endlich vielen solchen Halbräumen gebildet wird.

Lemma 12.4Eine Menge P ⊂ Rn ist genau dann ein Polyeder, falls m ∈ N, A ∈ Rm×n und b ∈ Rm

existieren, so dassP = P (A, b) := {x ∈ Rn : Ax ≤ b}. (12.2)

Die Matrix A und der Vektor b sind i.A. nicht eindeutig bestimmt.49

Page 50: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

50 4. POLYTOPE UND POLYEDER

Beweis: Wegen

P (A, b) = {x ∈ Rn : A>(i)x ≤ bi ∀ i = 1, ...,m} =m⋂i=1

H(A(i), bi)≤ (12.3)

ist P (A, b) ein Polyeder. Hierbei bezeichnenA(i) wieder die Zeilen vonA undH(A(i), bi)≤den entsprechenden Halbraum, vgl. Definition 4.3. Ist andersrum P ein Polyeder,dann lässt P sich als Schnitt endlich viele Halbräume schreiben, was wegen (12.3) aufdie Darstellung (12.2) führt. Dass A und b nicht eindeutig sind, folgt beispielsweiseaus P = P ∩ {x : 0>x ≤ 1}. �

Lemma 12.5Ein Polyeder P ⊂ Rn ist genau dann ein Kegel, falls ein m ∈ N und ein A ∈ Rm×n

existieren, so dass P = P (A, 0).

Beweis: Dass P (A, 0) = {x ∈ Rn : Ax ≤ 0} ein Kegel ist, sieht man sofort. Um „⇒“zu zeigen, sei der Polyeder P ein Kegel. Nach Lemma 12.4 existieren A ∈ Rm×n undb ∈ Rm, so dass sich P in der Form P (A, b) schreiben lässt. Sei nun x ∈ P beliebig.Dann ist tx ∈ P für alle t ≥ 0, so dass

Ax ≤ 1

tbt→∞−→ 0, (12.4)

und daher P ⊂ P (A, 0) = {x ∈ Rn : Ax ≤ 0}. Da P aber ein Kegel ist, folgt 0 ∈ Pund deshalb b ≥ A0 = 0. Daher gilt für jedes x ∈ P (A, 0), dass Ax ≤ 0 ≤ b, wasx ∈ P impliziert. Daraus folgt P = P (A, 0) und damit die Aussage. �

Dieses Lemma führt auf folgende

Definition 12.6Ein Polyeder der Form P (A, 0) mit einer Matrix A ∈ Rm×n heißt polyedrischer Kegel .�

Das folgende Resultat zeigt, das die zulässige Menge von (12.1) ebenfalls ein Polyederist.

Lemma 12.7Eine Menge der Form

P = {x ∈ Rn : Ax = b, Gx ≤ d}

mit A ∈ Rm×n, b ∈ Rm, G ∈ Rp×n und d ∈ Rp ist ein Polyeder.

Beweis: Wir definieren

A :=

A−AG

∈ R(2m+p)×n und b :=

b−bd

∈ R2m+p. (12.5)

Dann ist P = {x ∈ Rn : Ax ≤ b} und nach Lemma 12.4 somit ein Polyeder. �

Bemerkung 12.8Das obige Lemma zeigt also, dass jede Menge, die durch eine endliche Zahl affin-linearer Gleichungen und Ungleichungen beschrieben wird, ein Polyeder ist. �

Page 51: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. DARSTELLUNGEN VON POLYEDERN 51

Das bedeutet, LPs entsprechen Optimierungsproblemen mit einer polyedrischen zu-lässigen Menge und einer linearen Zielfunktion. Die Lemmata 12.4 und 12.7 zeigen,dass man einen Polyeder und damit auch zugehörige LPs auf unterschiedliche Weisedarstellen kann. Eine spezielle und oft sehr nützliche Darstellung ist die so genannteStandardform.

Definition 12.9 (LP in Standardform)Ein LP der Form

minimiere c>x

s.t. Ax = b, x ≥ 0

}(LP)

heißt LP in Standardform. �

Diese Darstellung eignet sich sehr gut für numerische Verfahren wie den Simplex-Algorithmus, den wir in Kapitel 6 näher untersuchen. Das folgende Lemma zeigt,dass man jedes LP in ein LP in Standardform überführen kann.

Lemma 12.10Jedes LP der (allgemeinen) Form (12.1) kann in ein LP in Standardform überführtwerden.

Beweis: Wir wenden zunächst die Transformation der zulässigen Menge aus demBeweis von Lemma 12.7 an, so dass (12.1) äquivalent zu

minimiere c>x

s.t. A x ≤ b

}(12.6)

ist, wobei A ∈ Rq×n und b ∈ Rq mit q := 2m+ p wie in (12.5) definiert sind. Sei nunx ∈ P := {x ∈ Rn : Ax ≤ b} beliebig. Dann definieren wir

A := (A,−A, I), y1 := x(+), y2 := x(−) und y3 := b− Ax. (12.7)

Hierbei ist I ∈ Rq×q die Einheitsmatrix und x(+) :=(

max{0, xi})ni=1

und x(−) :=(max{0,−xi}

)ni=1

. Dann folgt für y := (y1, y2, y3) ∈ R2n+q, dass

y ∈ P := {y ∈ R2n+q : A y = b, y ≥ 0}.

Sei andersrum y ∈ P beliebig. Dann folgt für x := y1 − y2, dass Ax = Ay1 − Ay2 =b− y3 ≤ b, was x ∈ P zeigt, so dass

P = {x ∈ Rn : x = y1 − y2, y = (y1, y2, y3) ∈ P}.Daraus folgt

infx∈P

c>x = inf(y1,y2,y3)∈P

c>(y1 − y2),

d.h. mit c = (c,−c, 0) ist (12.1) äquivalent zu

minimiere c>y

s.t. A y = b, y ≥ 0,

}was gerade ein LP in Standardform ist. �

Bemerkung 12.11Die in (12.7) eingeführte Variable y3 wird auch Schlupfvariable genannt. �

Page 52: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

52 4. POLYTOPE UND POLYEDER

Bemerkung 12.12Bei der im Beweis von Lemma 12.10 verwendeten Transformation wird die Varia-blenzahl von n auf 2n+ q = 2n+ 2m+ p erhöht. Natürlich kann (12.1) oft einfacherin Standardform überführt werden, ohne dass die Variablenzahl so drastisch ver-größert wird. Ist G z.B. einfach zu invertieren, dann kann man (12.1) durch dieSetzung z := G−1x, A := AG und c := G>c in ein LP in Standardform (bzgl. z) derDimension p umgewandelt werden. �

Definition 12.13In Anlehnung an Definition 12.9 nennen wir einen Polyeder in der Form

P = {x ∈ Rn : Ax = b, x ≥ 0}Polyeder in Standardform. Eine Polyeder, der in Form

P = P (A, b) = {x ∈ Rn : Ax ≤ b}gegeben ist, heißt Polyeder in natürlicher Form. �

Eine weitere Darstellung von Polyedern behandelt das folgende Lemma:

Lemma 12.14Sei P = P (A, b) ein beliebiges Polyeder mit A ∈ Rm×n und b ∈ Rm. Ist 0 ∈ P , dannexistieren k, ` ∈ N ∪ {0} mit k + ` = m und Matrizen G ∈ Rk×n und H ∈ R`×n, sodass

P = {x ∈ Rn : Gx ≤ 1, Hx ≤ 0}.

Beweis: Der Beweis erfolgt über eine einfache Skalierung. Wegen 0 ∈ P folgt b ≥A0 = 0. Wir definieren I := {i ∈ {1, ...,m} : bi = 0} und setzen ` := |I| undH := A(I). Weiter definieren wir Ic = {1, ...,m} \ I, k := |Ic| und

A(j) :=1

bjA(j), j ∈ Ic, G := (A>(j))j∈Ic .

Damit ist Ax ≤ b nach Konstruktion äquivalent zu(GH

)x ≤

(10

),

was die Behauptung beweist. �

§ 13 Seitenflächen, Facetten und Ecken

Definition 13.1Sei P ⊂ Rn ein Polyeder, c ∈ Rn und δ ∈ R. Falls c>x = δ für alle x ∈ P gilt, dannheißt c>x = δ für P gültige Gleichung . Entsprechend nennen wir eine Ungleichungc>x ≤ δ gültig für P , falls c>x ≤ δ für alle x ∈ P . �

Definition 13.2 (Seitenfläche)Sei P ⊂ Rn ein Polyeder. Eine Menge F ⊂ P heißt Seitenfläche von P , falls eine fürP gültige Ungleichung c>x ≤ δ existiert mit

F = P ∩ {x ∈ Rn : c>x = δ} = {x ∈ P : c>x = δ}.Die Seitenfläche F heißt dann von c>x ≤ δ induzierte Seitenfläche. Eine SeitenflächeF heißt echt , falls F 6= ∅ und F 6= P . �

Page 53: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. SEITENFLÄCHEN, FACETTEN UND ECKEN 53

Man beachte, dass eine Seitenfläche selber wieder ein Polyeder ist. Wie schon dieDarstellung eines Polyeders selbst ist auch die einer Seitenfläche nicht eindeutig, d.h.eine Seitenfläche kann durch unterschiedliche Ungleichungen induziert werden.

Lemma 13.3Sei P ⊂ Rn ein beliebiger Polyeder. Dann ist die leere Menge eine Seitenfläche vonP .

Beweis: Die Ungleichung 0>x ≤ 1 ist natürlich gültig für P . Außerdem gilt P ∩ {x :0>x = 1} = ∅, was die Aussage beweist. �

Satz 13.4Sei P 6= ∅ ein Polyeder. Dann gilt

(1) Für jede Seitenfläche F 6= ∅ gibt es ein c ∈ Rn, so dass F gleich der Mengeder Optimallösungen des linearen Programms

maximiere c>x

s.t. x ∈ P

}(13.1)

ist.(2) Für beliebiges c ∈ Rn ist die Menge der Optimallösungen von (13.1) eine

Seitenfläche von P .

Beweis: zu (1):Da F eine nichtleere Seitenfläche ist, existieren c ∈ Rn und δ ∈ R mit

c>x ≤ δ ∀x ∈ P und c>x = δ ∀x ∈ F 6= ∅,was die Aussage wegen F ⊂ P liefert.

zu (2):Sei c ∈ Rn beliebig und L die Menge der Optimallösungen von (13.1), d.h.

L = {x ∈ P : c>x ≥ c>y ∀ y ∈ P}.Im Fall L = ∅ folgt aus Lemma 13.3 sofort, dass L eine Seitenfläche ist. Ist hingegenL 6= ∅, dann gibt es ein x∗ ∈ P mit

δ∗ := c>x∗ ≥ c>x ∀x ∈ P.Die Ungleichung c>x ≤ δ∗ ist damit gültig für P und L = {x ∈ P : c>x = δ∗} somiteine Seitenfläche. �

Bemerkung 13.5Die Aussage von Satz 13.4(2) hat weitreichende Konsequenzen. Insbesondere folgtdaraus, dass man bei der Suche nach der Lösung eines LPs nicht alle zulässigenPunkte betrachten muss, sondern nur Seitenflächen des Polyeders berücksichtigenmuss. Das ist eine der wesentlichen Grundideen des Simplex-Verfahrens aus Kapitel6 unten. �

Definition 13.6Sei M 6= ∅ eine Menge im Rn. Die Dimension dim(M) von M ist definiert durch

dim(M) = max{d ∈ N ∪ {0} : ∃x0, ..., xd ∈Mmit x1 − x0, x2 − x0, ..., xd − x0 linear unabhängig}. �

Page 54: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

54 4. POLYTOPE UND POLYEDER

Bemerkung 13.7Die Dimension einer Menge M kann äquivalent auch mit Hilfe der so genanntenaffinen Hülle definiert werden. Die affine Hülle ist definiert als der Durchschnittaller affinen Unterräume (= affin verschobene lineare Unterräume), dieM enthalten.Ähnlich wie bei der konvexen und der konischen Hülle kann man zeigen, dass dieaffine Hülle der kleinste affine Unterraum ist, der M enthält. Die Dimension von Mist dann durch die Dimension des Unterraums gegeben, der zur affinen Hülle gehört.Man kann zeigen, dass diese Definition mit der obigen übereinstimmt, s. z.B. [Jarreand Stoer, 2004, Abschnitt 7.1]. �

Lemma 13.8Ist F ⊂ P eine Seitenfläche eines Polyeders P ⊂ Rn, dann gilt entweder F = P oderdim(F ) < dim(P ).

Beweis: Wegen P = P ∩{x : 0>x = 0} ist P selbst eine Seitenfläche. Sei nun F ⊂ Pmit echter Inklusion. Dann existiert ein x ∈ P mit x /∈ F . Sei weiter c>x ≤ δ dieUngleichung, die F induziert, und d = dim(F ) die Dimension der Seitenfläche. Danngibt es (maximal) d + 1 Vektoren x0, ..., xd ∈ F , so dass xi − x0, i = 1, ..., d linearunabhängig sind. Wir nehmen an, x−x0 sei linear abhängig von xi−x0, i = 1, ..., d,d.h. es existieren Koeffizienten αi, so dass

x− x0 =d∑i=1

αi(xi − x0)

⇒ c>(x− x0) =d∑i=1

αi(c>xi︸︷︷︸

− c>x0︸︷︷︸=δ

)= 0

⇒ c>x = c>x0 = δ ⇒ x ∈ Fim Widerspruch zur Voraussetzung. Daraus folgt, dass x−x0 von xi−x0, i = 1, ..., dlinear unabhängig ist, und wegen x, x0 ∈ P folgt daraus, dass dim(P ) mindestensum Eins größer ist als d. �

Aus Definition 13.6 folgt sofort, dass M einpunktig ist, falls dim(M) = 0. Istdim(M) = 1, dann ist M in einer Geraden enthalten. Entsprechend definiert man:

Definition 13.9Eine Seitenfläche F ⊂ Rn eines Polyeders heißt:

• Ecke, falls dim(F ) = 0,• Kante, falls dim(F ) = 1,• Facette, falls dim(F ) = dim(P )− 1.

Eine in eine Richtung unbeschränkte Kante heißt Extremstrahl , d.h. ist F Extrem-strahl, dann existieren x ∈ P und a 6= 0, so dass F = {x}+ cone{a}. �

Lemma 13.10Ist F ist eine Facette, dann ist F in keiner anderen echten Seitenfläche von Penthalten.

Beweis: Sei F eine Facette, d.h. d := dim(F ) = dim(P ) − 1. Dann gibt es d + 1Vektoren x0, ..., xd ∈ F , so dass xi− x0, i = 1, ..., d linear unabhängig sind. Nehmenwir an es gäbe eine Seitenfläche G 6= P mit F ⊂ G mit echter Inklusion. Dann

Page 55: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. SEITENFLÄCHEN, FACETTEN UND ECKEN 55

existiert ein x ∈ G mit x /∈ F . Völlig analog zum Beweis von Lemma 13.8 zeigtman, dass dann x − x0 linear unabhängig von xi − x0, i = 1, ..., d ist, so dassdim(G) = d+ 1 = dim(P ). Wegen G 6= P ist dies ein Widerspruch zu Lemma 13.8.�

Bemerkung 13.11Mit Hilfe von [Padberg, 1999, 7.2(e)] kann man zeigen, dass auch die umgekehrteAussage gilt, d.h. jede echte Seitenfläche, die nicht in einer anderen echten Seiten-fläche enthalten ist, ist eine Facette. �

Wir wollen nun alternative Charakterisierungen von Ecken des Polyeders angeben.Dazu sei der Polyeder zunächst in natürlicher Form gegeben.

Satz 13.12Sei P = P (A, b) mit A ∈ Rm×n und b ∈ Rm ein Polyeder und z ∈ P gegeben. Seiferner die Indexmenge E durch

E = {i ∈ {1, ...,m} : A>(i)z = bi}definiert. Dann sind äquivalent:

(1) z ist eine Ecke von P .(2) Es gibt ein c ∈ Rn, c 6= 0, so dass z der eindeutige Optimierer von maxx∈P c

>xist.

(3) Aus z = λy + (1− λ)x mit x, y ∈ P und λ ∈ (0, 1) folgt x = y = z.(4) rang(A(E)) = n.

Beweis: Wir beweisen den Ringschluss (1)⇒ (2)⇒ (3)⇒ (4)⇒ (1).

zu (1)⇒ (2):analog zum Beweis von Satz 13.4(1): da {z} nach Definition einer Ecke eine ein-punktige Seitenfläche ist, gibt es eine für P gültige Ungleichung c>x ≤ δ mit

c>z > c>x ∀x ∈ P, x 6= z, (13.2)

was die eindeutige Optimalität von z liefert. Ist P = {z}, dann kann man c 6= 0wählen, andernfalls folgt c 6= 0 sofort aus (13.2).

zu (2)⇒ (3):Sei z die eindeutige Optimallösung von maxx∈P c

>x mit Optimalwert γ. Gilt z =λy + (1− λ)x mit x, y ∈ P , x 6= y und λ ∈ (0, 1), dann folgt

γ = c>z = c>(λy + (1− λ)x)

= λc>y + (1− λ)c>x ≤ λγ + (1− λ)γ = γ.

Daraus folgt aber c>y = c>x = γ im Widerspruch zur eindeutigen Optimalität vonz.

zu (3)⇒ (4):Wir argumentieren per Kontraposition. Sei also (4) falsch, d.h. rang(A(E)) < n. Dannexistiert ein v 6= 0 mit A(E)v = 0. Nach Definition von E folgt daraus

A(E)(z ± tv) = bE ∀ t ∈ R.

Ist i ∈ {1, ...,m} \ E , dann gilt (Ax)i < bi, so dass

A>(i)(z ± tv) ≤ bi ∀ t ∈ [0, ti],

Page 56: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

56 4. POLYTOPE UND POLYEDER

falls ti > 0 hinreichend klein gewählt wird. Daraus folgt

A(z ± tv) ≤ b ∀ t ∈ [0, t] mit t := mini/∈E

ti.

Daher liegen x := z + tv und y = z − tv in P . Andererseits gilt z = (1/2)y + (1/2)x,so dass sich z wegen x, y ∈ P und x, y 6= z als echte Konvexkombination zweierElemente aus P darstellen lässt und somit (3) nicht gilt.

zu (4)⇒ (1):Wir definieren die Seitenfläche

F := {x ∈ P : c>x = δ} mit c :=∑i∈E

A(i) und δ :=∑i∈E

bi.

Aus A(E)z = bE folgt sofort z ∈ F . Sei andererseits x ∈ F beliebig. Dann folgt∑i∈E

(Ax− b)i︸ ︷︷ ︸≤0, da x∈P

= 0 ⇒ (Ax− b)i = 0 ∀ i ∈ E ⇒ A(E)x = bE .

Da nach Voraussetzung rang(A(E)) = n, ist die Abbildung x 7→ A(E)x injektiv, sodass x = z. Weil x ∈ F beliebig war, folgt daraus F = {z}, so dass {z} in der Tateine nulldimensionale Seitenfläche, also Ecke, ist. �

Bemerkung 13.13Satz 13.12(3) zeigt, dass man Ecken alternativ als Punkte des Polyeders definie-ren kann, die sich nicht als echte Konvexkombination von anderen Punkten in Pschreiben lassen. Diese Eigenschaft einer Ecke ist unabhängig von der Darstellungdes Polyeders, gilt also auch für Polyeder in Standardform. Daher werden Ecken inder Literatur oft auch auf diese Weise definiert. Diese Definition lässt sich auch aufallgemeine konvexe Mengen übertragen, s. Padberg [1999]. �

Um die Ecken eines Polyeders in Standardform zu charakterisieren, benötigen wirdie folgende

Definition 13.14Der Träger supp(x) eines Vektors x ∈ Rn ist die Indexmenge definiert durch

supp(x) := {i ∈ {1, ..., n} : xi 6= 0} �

Satz 13.15Sei

P = {x ∈ Rn : Ax = b, x ≥ 0}ein Polyeder in Standardform und z ∈ P , z 6= 0. Dann sind äquivalent:

(1) z ist eine Ecke von P .(2) rang(A[supp(z)]) = | supp(z)|, d.h. die Spaltenvektoren vonA[supp(z)] ∈ Rm×| supp(z)|

sind linear unabhängig.

Beweis: Für den Beweis kürzen wir ab: S := supp(z), s := |S| und Sc := {1, ..., n}\S.Der Beweis verläuft ganz ähnlich zu dem von Satz 13.12. Diesmal zeigen wir (1)⇒(2)⇒ (1).

zu (1)⇒ (2):Wie im Beweis von Satz 13.12 zeigt man, dass die Ecke z sich nicht als echte Kon-vexkombination von zwei Elementen aus P darstellen kann, d.h. z = λy + (1− λ)x,

Page 57: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. SATZ VON WEYL-MINKOWSKI 57

x, y ∈ P , λ ∈ (0, 1) impliziert z = x = y.1 Wir nehmen wieder an (2) sei falsch,d.h. rang(A[S]) < s. Genau wie im Beweis von Satz 13.12 können wir dann zeigen,dass ein v ∈ Rn und ein t > 0 existieren mit z ± tv ∈ P , s. Übung. Daraus folgtz = (1/2)(z+tv)+(1/2)(z−tv), so dass z als echte Konvexkombination von Elementenaus P dargestellt werden kann, was den gewünschten Widerspruch liefert.

zu (2)⇒ (1):Auch der Beweis verläuft analog zu dem entsprechenden Teil vom Beweis von Satz13.12. Wir betrachten die Seitenfläche

F := {x ∈ P : −(1c)>x = 0},

wobei 1c ∈ Rn durch 1ci = 0, falls i ∈ S, und 1ci = 1, falls i /∈ S, definiert ist. Da−(1c)>x ≤ 0 eine gültige Ungleichung ist, ist F per Konstruktion eine Seitenflächeund z ∈ F . Sei x ∈ F beliebig. Wegen x ∈ P folgt dann xSc = 0 und

b = Ax = A[S]xS .

Nun ist rang(A[S]) = s, d.h. die Spalten von A[S] ∈ Rm×s sind linear unabhängig.Daraus folgt, dass xS 7→ ASxS injektiv ist, und daher xS = zS . Wegen xSc = zSc = 0ist x = z, so dass F = {z}. Dies beweist, dass z in der Tat eine Ecke von P ist. �

Bemerkung 13.16Wegen supp(0) = ∅ wird z = 0 nicht durch Satz 13.15 erfasst. Ist aber 0 ∈ P , dannist 0 immer eine Ecke, denn wegen P ⊂ Rn+ kann man 0 nicht als echte Konvexkom-bination von Elementen aus P darstellen. �

§ 14 Satz von Weyl-Minkowski

Polyeder wurden in Definition 12.1 als Schnitte endlich vieler affiner Halbräumedefiniert. Die Beschreibung mithilfe endlich vieler affin-linearer Ungleichungen wirdauch als äußere Beschreibung bezeichnet. Im Folgenden zeigen wir, dass Polyederebensogut durch eine innere Beschreibung definiert werden können, diese bestehtaus den Ecken und Extremalstrahlen des Polyeders. In der ganzzahligen linearenOptimierung ist diese Äquivalenz von grundlegender Bedeutung, da für konkreteOptimierungsprobleme in der Regel die innere Beschreibung bekannt ist, jedochfür die meisten Optimierungsverfahren die äußere Beschreibung benötigt wird. Derfolgende Satz, den wir in diesem Abschnitt konstruktiv beweisen, zeigt, dass diebeiden Beschreibungsformen prinzipiell ineinander überführt werden können.

Satz 14.1 (Weyl-Minkowski)Eine Menge P ⊆ Rn ist ein Polyeder genau dann, wenn endliche PunktmengenX, Y ⊆ Rn existieren mit

P = conv(X) + cone(Y ). �

Der Beweis benötigt einige Vorbereitungen.

1Man beachte, dass der zugehörige Teil des Beweises von Satz 13.12 unabhängig von derkonkreten Beschreibung von P ist und deshalb auch auf Polyeder in Standardform angewendetwerden kann.

Page 58: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

58 4. POLYTOPE UND POLYEDER

Definition 14.2 (Projektion)Sei X ⊆ Rn und k ≤ n. Die Projektion von X auf die ersten k Dimensionen istdefiniert durch

πk(X) := {x ∈ Rk : ∃ y ∈ Rn−k mit (x, y) ∈ X}. �

Satz 14.3 (Fourier-Motzkin-Elimination)Jede Projektion eines Polyeders ist wieder ein Polyeder.

Beweis: Sei P = {x ∈ Rn : Ax ≤ b}. Es reicht zu zeigen, dass

P ′ = {(x1, . . . , xn−1) ∈ Rn−1 : ∃xn ∈ R mit x = (x1, ..., xn) ∈ P}

ein Polyeder ist. Setze dazu

I+ := {j ∈ {1, . . . ,m} : ajn > 0}I− := {j ∈ {1, . . . ,m} : ajn < 0}I0 := {j ∈ {1, . . . ,m} : ajn = 0}.

Nach Division der zu I+ und I− gehörigen Ungleichungen durch |ajn| wird P durchdie folgenden Ungleichungen beschrieben:

n−1∑i=1

ajixi + xn ≤ bj für j ∈ I+

n−1∑i=1

ajixi − xn ≤ bj für j ∈ I−

n−1∑i=1

ajixi ≤ bj für j ∈ I0

mit aji := aji/ajn und bj = bj/ajn für j ∈ I+ und aji := −aji/ajn und bj = −bj/ajnfür j ∈ I−. Also gilt (x1, . . . , xn) ∈ P genau dann, wenn

(i)∑n−1

i=1 ajixi ≤ bj für alle j ∈ I0

(ii) −bj2 +∑n−1

i=1 aj2,ixi ≤ xn ≤ bj1 −∑n−1

i=1 aj1,i für alle j1 ∈ I+, j2 ∈ I−.

Damit ist (x1, . . . , xn−1) ∈ P ′ genau dann, wenn (i) gilt und

(iii)∑n−1

i=1 (aj1,i + aj2,i)xi ≤ bj1 + bj2 für alle j1 ∈ I+, j2 ∈ I−.

Da alle Ungleichungen in (i) und (iii) affin-linear sind, ist P ′ ein Polyeder, vgl.Bemerkung 12.8. �

Bemerkung 14.4Die Idee aus Satz 14.3 kann im Prinzip zur Lösung eines linearen Optimierungspro-blems verwendet werden: Das Problem

minimiere c>x

s.t. Ax ≤ b

x ∈ Rn

Page 59: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. SATZ VON WEYL-MINKOWSKI 59

ist äquivalent zuminimiere z

s.t. c>x ≤ z

Ax ≤ b

(z, x) ∈ Rn+1.

Setze dann P = {(z, x) ∈ Rn+1 : −z + c>x ≤ 0, Ax ≤ b} und bestimme dieProjektion P ′ = π1(P ) auf die erste Dimension. Dann ist P ′ ⊂ R ein Polyeder nachSatz 14.3. Als Polyeder in R ist P ′ also ein abgeschlossenes Intervall in R und dergesuchte Optimalwert ist minz∈P ′ z, also das linke Intervallende.

Dieses Verfahren ist jedoch sehr langsam und daher in der Praxis nicht zur Lösunglinearer Optimierungsprobleme geeignet. �

Lemma 14.5Seien X, Y ⊂ Rn endliche Punktmengen. Dann ist P = conv(X) + cone(Y ) einPolyeder.

Beweis: Wir setzen k = |X| und ` = |Y |, d.h. X = {x1, ..., xk} und Y = {y1, ..., y`}.Nach Definition von konvexer und konischer Hülle gilt z ∈ P genau dann, wennλ ∈ Rk und µ ∈ R` existieren mit

z −k∑i=1

λixi −∑j=1

µjyj = 0 (14.1a)

k∑i=1

λi = 1 (14.1b)

λ, µ ≥ 0. (14.1c)

Definieren wir den Polyeder

P = {w ∈ Rn+k+` : w = (z, λ, µ) erfüllt (14.1)},dann ist

πn(P ) = {z ∈ Rn : ∃λ ∈ Rk, µ ∈ R` mit (z, λ, µ) erfüllen (14.1)} = P.

Also ist P die Projektion eines Polyeders auf die ersten n Dimensionen und damitnach Satz 14.3 selbst ein Polyeder. �

Definition 14.6Sei X ⊆ Rn mit 0 ∈ X. Dann heißt

X∗ = {y ∈ Rn : x>y ≤ 1 ∀x ∈ X}die polare Menge zu X.

Lemma 14.7Für alle X ⊆ Rn mit 0 ∈ X ist X∗ konvex.

Beweis: Klar, da X∗ per Definition Schnitt affiner Halbräume ist. �

Lemma 14.8Sei C ⊂ Rn eine abgeschlossene, konvexe Menge mit 0 ∈ C. Dann gilt C∗∗ := (C∗)∗ =C.

Page 60: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

60 4. POLYTOPE UND POLYEDER

Beweis: Sei x ∈ C beliebig. Dann gilt nach Definition der polaren Menge

x>y ≤ 1 ∀ y ∈ C∗,und daher C ⊂ C∗∗ = {w ∈ Rn : w>y ≤ 1 ∀ y ∈ C∗}. Um C = C∗∗ zu zeigen,argumentieren wir per Widerspruch. Nehmen wir also an, C 6= C∗∗. Wegen C ⊂C∗∗ existiert dann ein z ∈ C∗∗ \ C. Da C nichtleer, konvex und abgeschlossen ist,existieren wegen des strikten Trennungssatzes aus Lemma 7.2 ein s ∈ Rn, s 6= 0,und α ∈ R, so dass

s>z > α > s>x ∀x ∈ C.Wegen 0 ∈ C folgt daraus α > 0, so dass wir diese Ungleichung durch α dividierenkönnen. Mit s := s/α ergibt sich dann

s>z > 1 > s>x ∀x ∈ C. (14.2)

Aus der zweiten Ungleichung folgt s ∈ C∗. Wegen z ∈ C∗∗ gilt aber z>y ≤ 1 für alley ∈ C∗ im Widerspruch zur ersten Ungleichung in (14.2). �

Lemma 14.9Sei P = {x ∈ Rn : Ax ≤ 1, Bx ≤ 0} mit A ∈ Rm×n und B ∈ Rp×n gegeben. Danngilt P ∗ = conv(A> ∪ {0}) + cone(B>), wobei die Matrizen A> und B> als Mengenvon Spaltenvektoren betrachtet werden.

Beweis: Nach Definition gilt

P ∗ = {b ∈ Rn : b>x ≤ 1 für alle x ∈ Rn mit Ax ≤ 1, Bx ≤ 0}= {b ∈ Rn : b>x ≤ 1 für alle x ∈ Rn mit Ax ≤ c}

mit

A :=

(AB

)und c :=

(10

).

Aus der inhomogenen Version des Farkas-Lemmas in Satz 8.6 folgt nun, dass b ∈ Rn

genau dann in P ∗ liegt, falls ein u ∈ Rm+p, u ≥ 0, existiert, so dass

(a) entweder A>u = b und c>u ≤ 1(b) oder A>u = 0 und c>u < 0.

Wegen c = (1, 0) ≥ 0 und u ≥ 0 kommt der Fall (b) nicht in Frage. Daher ist b ∈ P ∗genau dann, falls u = (y, z) ∈ Rm × Rp existiert mit

y, z ≥ 0, (A>, B>)

(yz

)= b,

(10

)>(yz

)≤ 1.

Daraus folgt

P ∗ = {b ∈ Rn : ∃ y ∈ Rm, z ∈ Rp mit b = A>y +B>z, y, z ≥ 0, 1>y ≤ 1}

={ m∑

i=1

A(i)yi +

p∑j=1

B(j)zj : zj ≥ 0, j = 1, ..., p, yi ≥ 0, i = 1, ...,m+ 1,m+1∑i=1

yi = 1}

= conv(A> ∪ {0}) + cone(B>)

wie behauptet. �

Lemma 14.10Sei P ⊆ Rn ein Polyeder mit 0 ∈ P . Dann ist auch P ∗ ein Polyeder mit 0 ∈ P ∗.

Page 61: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

4. SATZ VON WEYL-MINKOWSKI 61

Beweis: Nach Lemma 12.14 kann jeder Polyeder, der die Null enthält, auf die FormP = {x ∈ Rn : Ax ≤ 1, Bx ≤ 0} gebracht werden. Dann folgt die Behauptung mitLemma 14.5 sofort aus Lemma 14.9. Man beachte hierbei, dass 0 ∈ cone(B>) wegender Kegeleigenschaft. �

Wir kommen nun zum Beweis vom Satz von Weyl-Minkowski.

Beweis von Satz 14.1: Die Richtung „⇐“ entspricht gerade der Aussage von Lem-ma 14.5. Wir zeigen also „⇒“ und unterscheiden drei Fälle:

(1) P = ∅Wähle dann X = Y = ∅.

(2) 0 ∈ PNach Lemma 14.10 ist P ∗ ein Polyeder mit 0 ∈ P ∗, also gilt nach Lemma12.14, dass

P ∗ = {x ∈ Rn : Ax ≤ 1, Bx ≤ 0}für geeignete A,B. Wegen Lemma 14.8 ist P = (P ∗)∗, so dass P auf Grundvon Lemma 14.9 die gewünschte Form hat.

(3) 0 6∈ P 6= ∅Wähle t ∈ P und betrachte P := P + {−t}. Dann gilt 0 ∈ P und damitP = conv(X) + cone(Y ) für endliche Mengen X, Y ⊆ Rn wie in (2). Alsogilt P = conv(X) + cone(Y ) mit X := X + {t} und Y := Y , vgl. Übung.

Da Polytope nach Definition 12.1 beschränkte Polyeder sind, die konische Hülle einernichtleeren Menge wegen der Kegeleigenschaft aber immer unbeschränkt ist, folgtaus Satz 14.1 sofort:

Korollar 14.11Eine Menge P ⊆ Rn ist ein Polytop genau dann, wenn eine endliche PunktmengeX ⊆ Rn existiert mit P = conv(X).

Beispiel 14.12Die Kardinalität der Punktmenge X ⊂ Rn zur Darstellung eines Polytops durchP = conv(X) ist nicht notwendigerweise polynomiell in n oder m, wobei m dieAnzahl der Halbräume ist, die zur Beschreibung von P benötigt wird. Betrachtez.B. den Hyperwürfel

P := [0, 1]n = {x ∈ Rn : 0 ≤ xi ≤ 1 für i = 1, . . . , n} .Für jedes X mit P = conv(X) gilt |X| ≥ 2n, da P 2n Ecken besitzt (aber m = 2n).

Umgekehrt gilt fürX := {ei,−ei : i = 1, . . . , n} ,

dass conv(X) 2n Facetten besitzt, also keine äußere Beschreibung mit weniger als2n Ungleichungen existiert, obwohl |X| = 2n gilt.

Page 62: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 63: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 5

Grundlagen der linearen Optimierung

Inhalt15 Existenzaussagen 63

16 Dualitätsätze 65

§ 15 Existenzaussagen

Wir kehren zurück zu linearen Optimierungsproblemen der Form (12.1). O.B.d.A.nehmen wir hier und im Folgenden an, das LP habe Standardform, also

minimiere c>x

s.t. Ax = b, x ≥ 0

}(LP)

mit A ∈ Rm×n, b ∈ Rm und c ∈ Rn. Wie in Lemma 12.10 gesehen, kann jedes LP aufdiese Form gebracht werden.

Satz 15.1Die zulässige Menge P von (LP) sei nichtleer. Dann besitzt (LP) genau dann eineLösung, wenn f auf P nach unten beschränkt ist.

Beweis: Die Zielfunktion sei auf P nach unten beschränkt, d.h.

f ∗ := infx∈P

c>x > −∞.

Dann gibt es eine Infimalfolge {xn} ⊂ P mit c>xn → f ∗ für n→∞. Wir betrachtendie Folge {(c>xn, Axn − b)} ⊂ R× Rm. Da die xn zulässig sind, gilt

(c>xn, Axn − b) = (c>xn, 0)→ (f ∗, 0) für n→∞.

Darüber hinaus gilt für alle n ∈ N, dass

(c>xn, Axn−b) ∈ {(c>x,Ax−b) ∈ R×Rm : x ≥ 0} = cone

{(c>

A

)}−{(

0b

)}=: K.

Nach Lemma 8.1 ist die konische Hülle einer endlichen Punktmenge abgeschlossen,also auch die um (0, b) verschobene konische Hülle. Daraus folgt (f ∗, 0) ∈ K, d.h. esexistiert ein x∗ ∈ Rn mit x∗ ≥ 0, Ax∗ − b = 0 (und somit x∗ ∈ P ) und c>x∗ = f ∗.Da f ∗ der Infimalwert war, ist x∗ optimal.

Die umgekehrte Implikation ist klar. �

Als nächstes zeigen wir, dass das Optimum –falls existent– u.a. in einer Ecke ange-nommen wird. Dazu zeigen wir zunächst:

63

Page 64: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

64 5. GRUNDLAGEN DER LINEAREN OPTIMIERUNG

Lemma 15.2Ein nichtleerer Polyeder P = {x ∈ Rn : Ax = b, x ≥ 0} in Standardform hatmindestens eine Ecke.

Beweis: Ist 0 ∈ P , dann ist 0 nach Bemerkung 13.16 eine Ecke. Im Fall 0 /∈ P , wählenwir ein x∗ ∈ P mit minimalem Träger S∗ := supp(x∗) = {i ∈ {1, ..., n} : x∗i > 0},d.h. |S∗| sei minimal. (Wegen 0 /∈ P ist |S∗| > 0.) Wir zeigen, dass rang(A[S∗]) =|S∗|, woraus nach Satz 13.15 folgt, dass x∗ eine Ecke von P ist. Dazu argumentierenwir per Widerspruch und nehmen an, die Spalten von A[S∗] seien linear abhängig.Dann existieren Zahlen {αi}i∈S∗ , von denen mindestens eine ungleich Null ist, mit∑

i∈S∗αiA[i] = 0. (15.1)

Wir nehmen an, dass mindestens eines der αi echt kleiner Null ist (sonst multipliziere(15.1) mit −1). Weiter setzen wir

δ := maxi∈S∗{−x∗i /αi : αi < 0} = max

1≤i≤n{−x∗i /αi : x∗i > 0, αi < 0}

Mit dieser Konstruktion folgt x∗i+δαi ≥ 0 für alle i ∈ S∗ und die Existenz mindestenseines Index ` ∈ S∗, so dass

x∗` + δα` = 0. (15.2)Dann definieren wir

xi :=

{x∗i + δαi, i ∈ S∗

x∗i , i ∈ {1, ...,m} \ S∗.

Für das so konstruierte x gilt

x ≥ 0, und Ax = Ax∗ + δ∑i∈S∗

αiA[i] = b,

so dass x ∈ P . Wegen (15.2) ist aber | supp(x)| < | supp(x∗)| im Widerspruch zurVoraussetzung. �

Lemma 15.3Sei P ein Polyeder in Standardform. Dann ist die Anzahl der Ecken von P endlich.

Beweis: Nach Satz 13.15 wird jede Ecke x von P durch

rang(A[S]) = |S| mit S = supp(x) (15.3)

charakterisiert. Nach der Definition des Trägers ist xi für i ∈ {1, ..., n} \S eindeutigfestgelegt (nämlich gleich Null). Da y 7→ A[S]y wegen (15.3) injektiv ist, ist xSebenfalls eindeutig bestimmt, so dass die Ecke eindeutig durch den Träger bestimmtwird. Da die Anzahl der möglichen Träger als Teilmengen von {1, ..., n} endlich ist,ist somit auch die Zahl der Ecken endlich. �

Satz 15.4Es sei ein LP in Standardform (LP) gegeben. Ist das LP lösbar, dann wird dasMinimum auch in mindestens einer Ecke angenommen.

Beweis: Nach Voraussetzung ist

f ∗ := infx∈P

c>x > −∞.

Page 65: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

5. DUALITÄTSÄTZE 65

Wir definieren den Polyeder

P ∗ = P ∩ {x ∈ Rn : c>x = f ∗} ={x ∈ Rn :

(c>

A

)x =

(f ∗

b

), x ≥ 0

}.

Da das LP nach Voraussetzung lösbar ist, ist P ∗ 6= ∅. Nach Lemma 15.2 existiertdaher eine Ecke x∗ ∈ P ∗. Wir zeigen per Widerspruchsbeweis, dass x∗ dann aucheine Ecke von P ist. Angenommen, dass sei falsch. Nach Satz 13.12 existieren dannz, y ∈ P und λ ∈ (0, 1) mit

x∗ = λy + (1− λ)z, z, y 6= x∗. (15.4)

Da y, z ∈ P zulässig sind und f ∗ der Optimalwert des LPs ist, folgt

λ(c>y − f ∗︸ ︷︷ ︸≥0

)+ (1− λ)

(c>z − f ∗︸ ︷︷ ︸≥0

)= c>

(λy + (1− λ)z

)− f ∗ = c>x∗ − f ∗ = 0

Wegen 0 < λ < 1 impliziert dies c>y = c>z = f ∗, also y, z ∈ P ∗. Da x∗ eine Eckevon P ∗ ist, folgt wiederum nach Satz 13.12, dass x∗ = y = z im Widerspruch zu(15.4). Daher ist x∗ auch eine Ecke von P , und wegen x∗ ∈ P ∗ ⇒ c>x∗ = f ∗ ist x∗auch optimal. �

Satz 15.4 zeigt, dass die Optimallösung eines LPs –wenn sie existiert– immer in einerEcke angenommen wird. Um das LP zu lösen, könnte man also alle Ecken berechnenund ausprobieren, wo der beste Zielfunktionswert auftritt. Da die Anzahl der Eckeneines Polyeders nach Lemma 15.3 endlich ist, terminiert dieses Verfahren zwar end-lich, ist aber nicht sehr effizient und in der Praxis nicht einsetzbar. Dennoch stecktdarin der Kern eines der wichtigsten Verfahren zur Lösung linearer Probleme, desSimplexverfahrens. Man startet dabei mit einer zulässigen Ecke, die der Durchschnittvon n Hyperebenen ist, und versucht dann systematisch, die Lösung zu verbessern,indem man entlang einer Kante zu einer benachbarten Ecke wandert. Dieses Ver-fahren werden wir in Kapitel 6 noch genauer untersuchen. Zuvor jedoch wenden wirdie Ergebnisse aus Abschnitt 10 auf den Spezialfall eines LPs an, um u.a. geeigneteAbbruchbedingungen für das Simplexverfahren zu erhalten.

§ 16 Dualitätsätze

Bevor wir die Dualitätsresultate aus Abschnitt 10 auf ein LP in Standardform an-wenden, wollen wir uns überlegen, wie das zugehörige Dualproblem aussieht. Dazubetrachten wir wieder (LP) mit gegebenen A ∈ Rm×n, b ∈ Rm und c ∈ Rn.1

Satz 16.1Das Dualproblem zu einem LP in Standardform ist äquivalent zu:

maximiere b>ν

s.t. A>ν ≤ c.

}(DLP)

Bemerkung 16.2Wir beobachten, dass die zulässige Menge des Dualproblems durch einen Polyederin natürlicher Form gegeben ist. Ein LP dieser Struktur nennt man auch LP innatürlicher Form. �

1Im Gegensatz zu Abschnitt 10 ist die Dimension der Gleichungsnebenbedingungen hier m undnicht p.

Page 66: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

66 5. GRUNDLAGEN DER LINEAREN OPTIMIERUNG

Beweis von Satz 16.1: Nach Definition 11.1 lautet das duale Problem zu (LP):

supµ∈Rm

λ≥0

infx∈Rn

L (x, λ, µ). (16.1)

mit der Lagrange-Funktion

L (x, λ, µ) = c>x− λ>x+ (b− Ax)>µ

= (c− λ− A>µ)>x+ b>µ.(16.2)

Daraus folgtinfx∈Rn

L (x, λ, µ) = −∞,

falls c − λ − A>µ 6= 0. Bei der äußeren Maximierung in (16.1) müssen also nur dieλ und µ berücksichtigt werden, für die λ = c − A>µ gilt. Für diese aber ist dasInfimum von L über alle x durch b>µ gegeben, so dass

(16.1) ⇔

{maximiere b>µ

s.t. λ ≥ 0, A>µ+ λ = c.

}(16.3)

Da λ gar nicht mehr im Zielfunktional auftaucht, können wir es aus dem Problemeliminieren und erhalten mit der Substitution ν := µ gerade (DLP). �

Bemerkung 16.3Die Äquivalenz aus Satz 16.1 ist wie folgt gemeint:

Ist ν∗ ∈ Rm eine Lösung von (DLP), dann lösen µ∗ = ν∗ und λ∗ = c − A>ν∗

das Problem (16.1). Sind (µ∗, λ∗) ∈ Rm × Rn eine Lösung von (16.1), dann giltλ∗ = c− A>µ∗, und ν∗ = µ∗ löst (DLP). �

Bemerkung 16.4Wie im Beweis von Satz 16.1 gesehen gilt:

sup(D) = supµ∈Rm

λ≥0

infx∈Rn

L (x, λ, µ) = supA>µ+λ=c

λ≥0

b>µ = supA>ν≤c

b>ν = sup (DLP),

was die Gleichheit der Optimalwerte von (16.1) und (DLP) liefert. �

Bemerkung 16.5Gelegentlich wird in der Literatur auch das Problem auf der rechten Seite von (16.3)als duales LP eingeführt. Wir werden es im Zusammenhang mit dem dualen Simplex-Verfahren benötigen, bezeichnen die Optimierungsvariablen dann aber mit ν und s,d.h.

maximiere b>ν

s.t. A>ν + s = c, s ≥ 0,

}(16.4)

da s die Schlupfvariable zu ν in der Darstellung (DLP) ist. Diese Form des Dual-problems wird auch als „duale Standardform“ bezeichnet (obwohl es eigentlich keinProblem in Standardform ist). �

Das folgende Resultat zeigt, dass man im Fall der linearen Optimierung bei erneuter„Dualisierung“ wieder beim primalen Problem landet:

Proposition 16.6Das zu (DLP) duale Problem ist äquivalent zu (LP).

Page 67: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

5. DUALITÄTSÄTZE 67

Beweis: Die Argumentation ist dieselbe wie im Beweis von Satz 16.1. Zunächstschreiben wir (DLP) um in ein Minimierungsproblem:

minimiere − b>νs.t. A>ν ≤ c.

}(16.5)

(vgl. auch Bemerkung 1.2). Das zugehörige duale Problem lautet

supω≥0

infν∈Rn−b>ν + (A>ν − c)>ω. (16.6)

Das innere Infimum ist gleich −∞, falls Aω − b 6= 0. Daher kommen nur ω ∈ Rn

mit Aω = b für die äußere Maximierung in Betracht. Für diese ist die Zielfunktionin (16.6) gleich −c>ω, so dass

(16.6) ⇔

{maximiere − c>ω

s.t. Aω = b, ω ≥ 0

{minimiere c>x

s.t. Ax = b, x ≥ 0,

was gerade dem primalen Problem (LP) entspricht. �

Primale und duale Lösung hängen eng mit den KKT-Bedingungen für ein LP inStandardform zusammen:

Satz 16.7 (KKT-Bedingungen für LPs)Ein Punkt x∗ ∈ Rn ist genau dann optimal für (LP), falls ein ν∗ ∈ Rm existiert mit

Ax∗ = b, x∗ ≥ 0

A>ν∗ ≤ c

(c− A>ν∗)>x∗ = 0.

(16.7)

Umgekehrt ist ν∗ ∈ Rm genau dann optimal für das duale Problem (DLP), falls esein x∗ ∈ Rn gibt, so dass (16.7) erfüllt ist.

Zusammengefasst gilt also:

x∗ löst (LP) ⇔ (16.7) ⇔ ν∗ löst (DLP).

Beweis: Sei x∗ eine optimale Lösung von (LP). Wegen x∗ ∈ P ist die zulässige Men-ge nicht leer. Da die Nebenbedingungen linear-affin sind, ist die Slater-Bedingung(10.10) damit erfüllt, vgl. auch Bemerkung 10.5. Nach Satz 10.3 folgt daraus dieExistenz von λ∗ ∈ Rn und µ∗ ∈ Rm, so dass die folgenden KKT-Bedingungen erfülltsind:

Ax∗ = b, x∗ ≥ 0 (Zulässigkeit)

c− A>µ∗ − λ∗ = 0 (Gradientengl.)

λ∗ ≥ 0, (λ∗)>x∗ = 0 (kompl. Schlupfbdg.)(16.8)

Wieder können wir λ∗ aus dem System eleminieren und erhaltenAx∗ = b, x∗ ≥ 0

c− A>µ∗ ≥ 0

(c− A>µ∗)>x∗ = 0.

Page 68: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

68 5. GRUNDLAGEN DER LINEAREN OPTIMIERUNG

Die Substitution ν∗ = µ∗ liefert das gewünschte Ergebnis. Ist umgekehrt (x∗, ν∗) ∈Rn × Rm eine Lösung von (16.7), dann erfüllt x∗ zusammen mit µ∗ = ν∗ und λ∗ =c − A>ν∗ das KKT-System (16.8). Nach Korollar 10.12 ist x∗ damit optimal für(LP).

Die KKT-Bedingungen des dualen Problems (DLP), also

minimiere − b>νs.t. A>ν ≤ c,

}sind durch

A>ν∗ ≤ c (Zulässigkeit)−b+ Ax∗ = 0 (Gradientengl.)

x∗ ≥ 0, (x∗)>(A>ν∗ − c) = 0 (kompl. Schlupfbdg.)

gegeben, was gerade (16.7) entspricht. Nach Satz 10.3 und Korollar 10.12 sind sienotwendig und hinreichend für Optimalität, wie im Satz behauptet. �

Der obige Satz zeigt auch, dass das primale Problem genau dann lösbar ist, wenndas duale eine Lösung besitzt.

Satz 16.8 (Starke Dualität für LPs)Folgende Aussagen sind äquivalent:

(1) Die zulässige Menge des primalen Problems ist nichtleer und es gilt

infAx=b, x≥0

c>x > −∞.

(2) Die zulässige Menge des dualen Problems (DLP) ist nichtleer und es gilt

supA>ν≤c

b>ν <∞.

(3) Die zulässigen Mengen von (LP) und (DLP) sind nichtleer.(4) Das primale und das duale Problem sind lösbar und es gilt inf (LP) =

sup (DLP), d.h. die Optimalwerte stimmen überein.

Beweis: Es ist klar, dass (4) die ersten drei Aussagen impliziert. Es reicht deshalbaus zu zeigen, dass aus den ersten drei Aussagen jeweils (4) folgt.

zu (1) ⇒ (4):Gilt (1), dann ist (LP) nach Satz 15.1 lösbar. Da die Nebenbedingungen linear-affin sind, ist die Slater-Bedingung automatisch erfüllt, so dass das zugehörige dualeProblem nach Satz 10.21 ebenfalls lösbar ist und keine Dualitätslücke auftritt, vgl.auch Bemerkung 10.23. Da das Dualproblem nach Satz 16.1 äquivalent zu (DLP) ist,folgt die Behauptung. Man beachte hierbei, dass nach Satz 10.21 und Bemerkung16.4

infAx=b, x≥0

c>x = inf(P ) = sup(D) = supA>ν≤c

b>ν

gilt, was die Gleichheit der Optimalwerte liefert.

zu (3) ⇒ (4):Wir zeigen, dass (3) Aussage (1) impliziert, woraus mit dem bisher Gezeigten folgt,dass auch (4) gilt. Ist (3) erfüllt, dann existieren für (LP) bzw. (DLP) zulässige

Page 69: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

5. DUALITÄTSÄTZE 69

x ∈ Rn und ν ∈ Rm. Damit ist die zulässige Menge von (LP) nichtleer. Aus derschwachen Dualität in 10.16 folgt außerdem

infAx=b, x≥0

c>x = inf(P ) ≥ sup(D) = supA>ν≤c

b>ν ≥ b>ν > −∞.

Daraus folgt (1) und damit (4).

zu (2) ⇒ (4):Nach Lemma 12.10 lässt sich das duale Problem (DLP) in ein äquivalentes Problemin Standardform überführen, welches wegen (2) nach Satz 15.1 lösbar ist, vgl. Übung.Nach Satz 16.7 ist damit auch (LP) lösbar, so dass erst recht (1) erfüllt ist, was wiebereits bewiesen (4) impliziert. �

Page 70: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 71: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 6

Simplex-Algorithmus

Inhalt17 Simplex-Algorithmus in primaler Form 71

18 Praktische Umsetzung des Simplex-Algorithmus 78

19 Reoptimierung 80

§ 17 Simplex-Algorithmus in primaler Form

Wir wollen wie bereits angedeutet auf Basis von Satz 15.4 einen Algorithmus zur Lö-sung von LPs in Standardform designen, indem wir gezielt die Ecken des Polyeders,der die zulässige Menge beschreibt, auf Optimalität untersucht. Dazu benötigen wir:

(1) eine effiziente Beschreibung der Ecken,(2) einen Update der aktuellen Ecke, der nicht planlos eine neue Ecke sucht,

sondern eine Ecke wählt, die den Wert des Zielfunktionals verbessert,(3) eine Abbruchbedingung, die die Optimalität einer Ecke erkennt oder regis-

triert, dass die Zielfunktion auf der zulässigen Menge unbeschränkt und dasProblem somit nicht lösbar ist.

Im Folgenden sei P = {x ∈ Rn : Ax = b, x ≥ 0} mit A ∈ Rm×n, m ≤ n, und b ∈ Rm

immer ein Polyeder in Standardform. Im Fall m > n ist entweder P = ∅ (falls b nichtim Bild von A liegt), oder das Gleichungssystem Ax = b enthält mindestens m− nredundante Gleichungen, die wir bei der Beschreibung von P weglassen können.

Wir kümmern uns zunächst um eine einfache Beschreibung der Ecken. Dazu defi-nieren wir:

Definition 17.1 (Basis)Sei P = {x ∈ Rn : Ax = b, x ≥ 0} mit A ∈ Rm×n, m ≤ n, und b ∈ Rm einPolyeder in Standardform. Ferner sei B ⊂ {1, ..., n} eine Indexmenge mit |B| = m.Die „Restindexmenge“ bezeichnen wir mit N = {1, ..., n} \ B. Die Indexmenge Bheißt Basis , falls A[B] ∈ Rm×m regulär ist. Die Restmenge N nennen wir Nichtbasis .Die Matrix A[B] heißt Basismatrix . Ist B eine Basis, dann heißt der Vektor x ∈ Rn

mit xB = A−1[B]b und xN = 0 Basisvektor . Die Komponenten xj, j ∈ B, heißen

Basisvariablen, die Komponenten xk, k ∈ N , nennen wir Nichtbasisvariablen. EineBasis heißt zulässig , falls xB ≥ 0. Der zugehörige Basisvektor heißt dann ebenfallszulässig. Eine zulässige Basis wird als nicht degeneriert bezeichnet, falls xB > 0,andernfalls degeneriert. �

Bemerkung 17.2Zu einer gegebenen Basis ist der Basisvektor nach Konstruktion eindeutig bestimmt.

71

Page 72: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

72 6. SIMPLEX-ALGORITHMUS

Umgekehrt kann es zu einem gegebenen Vektor unterschiedliche Basen geben, s.Übung. �

Satz 17.3Sei P ein Polyeder in Standardform, dessen zugehörige Matrix A ∈ Rm×n vollenZeilenrang, d.h. rang(A) = m ≤ n. Dann ist x ∈ P genau dann eine Ecke von P ,falls x ein zulässiger Basisvektor ist.

Beweis: Sei x ∈ P eine Ecke und I = supp(x). Nach Satz 13.15 ist dann rang(A[I]) =|I|, d.h. die Spalten von A[I] sind linear unabhängig. Wegen rang(A) ≤ m muss|I| ≤ m sein. Ist |I| = m, dann wählen wir die Basis B = I. Andernfalls gibt eswegen rang(A) = m eine Indexmenge J ⊂ {1, ..., n} \ I mit |J | = m− |I|, so dassmit A[B] ∈ Rm×m mit B := I∪J regulär ist. (Das bedeutet, wir füllen A[I] mit linearunabhängigen Spalten A[j], j ∈ J , zu einer invertierbaren Matrix auf.)1 Damit istB in beiden Fällen nach Definition eine Basis und wegen

b = Ax = (A[B], A[N ])

(xBxN

)= (A[B], A[N ])

(xB0

)= A[B]xB

ist x der zugehörige Basisvektor. Hierbei ist N := {1, ..., n} \ B ⊂ {1, ..., n} \ I, sodass xN = 0. Wegen x ∈ P ist B zulässig.

Sei umgekehrt x ein zulässiger Basisvektor mit Basis B. Dann hat A[B] vollen Rang,also auch A[supp(x)] (wegen supp(x) ⊂ B nach Definition des Basisvektors), worausnach Satz 13.15 folgt, dass x eine Ecke von P ist. �

Bemerkung 17.4Die Bedingung rang(A) = m ist eigentlich nicht sonderlich einschränkend, da im Fallrang(A) < m entweder P = ∅ gilt oder redundante Gleichungen bei der Beschreibungvon P auftreten. In der Praxis istm jedoch häufig sehr groß, so dass die Bestimmungdes Ranges von A bzw. eine Aussortierung redundanter Gleichungen schwierig ist. �

Als nächstes überlegen wir uns, wie man ausgehend von einer Ecke zu einer besserenEcke kommt, d.h. einer Ecke mit einem kleineren Zielfunktionswert. Betrachten wirdazu das Zielfunktional für eine gegebene zulässige Basis B mit Basisvektor x. Danngilt für einen beliebigen zulässigen Punkt y ∈ P , dass

c>y = c>ByB + c>NyN

= c>B(A−1

[B]b− A−1[B]A[N ]yN

)+ c>NyN (wegen b = Ay = A[B]yB + A[N ]yN )

= c>BxB +(c>N − c>BA−1

[B]A[N ]

)yN (wegen b = Ax = A[B]xB + A[N ] xN︸︷︷︸

=0

)

= c>x+(cN − A>(N )A

−>(B)cB︸ ︷︷ ︸

=:sN

)>yN (17.1)

(vgl. (3.1) für die letzte Umformung). Den Vektor sN bezeichnen wir als reduzierteKosten. Wegen yN ≥ 0 (da zulässig) kann die Zielfunktion nur verkleinert werden,falls sj < 0 für mindestens ein j ∈ N , so dass gilt:

1Hierdurch wird auch der Fall x = 0 abgedeckt, was nach Bemerkung 13.16 eine Ecke ist. Hiergilt I = ∅, und wir können beliebige linear unabhängige Zeilen von A als Basismatrix wählen.

Page 73: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6. SIMPLEX-ALGORITHMUS IN PRIMALER FORM 73

Lemma 17.5Sei B eine zulässige Basis mit Basisvektor x. Wenn für die reduzierten Kosten

sN = cN − A>(N )A−>(B)cB ≥ 0

gilt, dann ist x eine Lösung des LPs. �

Ist sN 6≥ 0, dann wählen wir ein j ∈ N mit sj < 0. Für die nächste Ecke (mitverkleinertem Zielfunktionswert) x+ machen wir folgenden Ansatz:

x+j = γ ≥ 0, x+

i = 0 ∀ i ∈ N \ {j}.Jetzt sind γ und die verbleibenden Komponenten von x+ (also die in B) so einzu-stellen, dass x+ die gewünschten Eigenschaften hat, nämlich

(1) die Zielfunktion verringert,(2) zulässig ist,(3) eine Ecke ist.

zu (1):Nach (17.1) gilt

c>x+ = c>x+ s>Nx+N = c>x+ sjγ (17.2)

und damit eine Verbesserung der Zielfunktion für alle γ > 0.zu (2):Die Gleichungsnebenbedingungen liefern:

Ax+ != b

⇔ A[B]x+B + A[N ]x

+N

!= b

⇔ x+B

!= A−1

[B](b− γA[j])

⇔ x+B

!= xB − γ A−1

[B]A[j]︸ ︷︷ ︸=:wB

.

(17.3)

Damit werden alle Komponenten von x+ durch eine Wahl von γ festgelegt. In Ab-hängigkeit des Vorzeichens von wB verfährt man nun weiter.

Lemma 17.6Sei sj < 0 für ein j ∈ N und wB ≤ 0. Dann ist das LP unbeschränkt, also nichtlösbar.

Beweis: Wegen x+i = 0, i ∈ N \{j}, x+

j = γ ≥ 0 und x+B = xB−γwB ≥ xB ≥ 0 erfüllt

x+ für jedes γ ≥ 0 die Ungleichungsnebenbedingungen. Wegen der Konstruktion vonx+B in (17.3) sind auch die Gleichngsnebenbedingungen erfüllt, d.h. x+ ist für jedesγ ≥ 0 zulässig. Für die Zielfunktion in x+ gilt nach (17.2) aber

c>x+ = c>x+ γsj → −∞ für γ →∞,so dass die Zielfunktion auf P in der Tat nach unten unbeschränkt ist. �

Ist also wB ≤ 0 brauchen wir nicht weiter nach einer neuen Ecke zu suchen, das LPist nicht lösbar. Andernfalls ist wk > 0 für mindestens ein k ∈ B. Um in diesem Fallx+ ≥ 0 zu gewährleisten, müssen wir γ so wählen, dass

γ ≥ 0 und x+i = xi − γwi ≥ 0 für alle i ∈ B mit wi > 0

⇔ 0 ≤ γ ≤ xiwi

für alle i ∈ B mit wi > 0.(17.4)

Page 74: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

74 6. SIMPLEX-ALGORITHMUS

zu (3):Um überhaupt eine Veränderung zu erzielen müssen wir γ > 0 wählen. Dann aberverlässt der Index j wegen x+

j = γ > 0 die Nichtbasis und wird zu einem neuenBasisindex. Da eine Basis nur maximal m Elemente enthalten darf, muss ein Indexaus B die Basis verlassen. Wir müssen γ > 0 daher so einstellen, dass x+

i = 0 fürein i ∈ B. Der zugehörige Index i verlässt dann die Basis und wird neuer Nichtba-sisindex. In Anbetracht von (17.4) wählen wir γ daher als

γ := mink∈B, wk>0

xkwk. (17.5)

Dann ist x+ wegen (17.4) zulässig, und für einen Index ` ∈ B, in dem das Minimumin (17.5) angenommen wird, gilt x+

` = x` − γw` = 0, so dass er in die Nichtbasiswechseln kann. Die neue Basis ist dann

B+ = (B ∪ {j}) \ {`}. (17.6)

Damit es sich wirklich um eine neue Basis handelt, müssen wir noch zeigen, dassA[B+] regulär ist.

Lemma 17.7Sei sj < 0 für ein j ∈ N und wB 6≤ 0. Das Minimum in (17.5) werde in ` ∈ Bangenommen. Dann ist B+ = (B ∪ {j}) \ {`} eine zulässige Basis mit Basisvektor

x+i =

xi − γwi, i ∈ Bγ, i = j

0, i ∈ N \ {j},(17.7)

wobei γ wie in (17.5) gewählt wird. Daraus folgt insbesondere, dass x+` = 0.

Beweis: Seien (αi)i∈B+ so gewählt, dass

0 =∑i∈B+

αiA[i] =∑

i∈B, i 6=`

αiA[i] + αjA[j] =∑

i∈B, i 6=`

αiA[i] + αjA[B]A−1[B]A[j]

=∑

i∈B, i 6=`

αiA[i] + αjA[B]wB

=∑

i∈B, i 6=`

αiA[i] + αj∑i∈B

A[i]wi

=∑

i∈B, i 6=`

(αi + αjwi)A[i] + αjw`A[`].

Da B eine Basis ist, sind die A[i], i ∈ B, linear unabhängig, so dass αi+αjwi = 0 füralle i ∈ B \ {`} und αjw` = 0 gelten muss. Aus w` > 0 folgt aber αj = 0 und damitauch αi = 0 für alle i ∈ B\{`}. Also ist αi = 0 für alle i ∈ B+, so dass A[B+] ∈ Rm×m

regulär und B+ somit Basis ist. Aus (17.3) folgt sofort, dass

A[B+]x+B+ = A[B]x

+B + A[j] x

+j︸︷︷︸

−A[`] x+`︸︷︷︸

=0

= b.

Wegen x+N+ = 0 mit N+ := {1, ..., n} \ B+ ist x+ der zu B+ gehörige Basisvektor.

Wie in (17.3) und (17.4) gesehen, ist dieser zulässig, was schließlich die Zulässigkeitvon B+ liefert. �

Zusammenfassend haben wir mit dieser Konstruktion Folgendes erreicht:

Page 75: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6. SIMPLEX-ALGORITHMUS IN PRIMALER FORM 75

• Sind die reduzierten Kosten sN ≥ 0, dann ist der aktuelle Basisvektor eineLösung des LPs.• Sind sN 6≥ 0 und wB ≤ 0, dann besitzt das LP keine Lösung.• Sind sN 6≥ 0 und wB 6≤ 0, dann erhält man mit den in (17.5)–(17.6) be-schriebenen Setzungen eine neue Basis mit zugehörigem Basisvektor (alsoEcke), der einen kleineren Zielfunktionswert liefert.

Dies führt auf folgenden Algorithmus:

Algorithmus 17.8 (Primale Version des Simplex-Verfahrens)

1: Gegeben sei eine zulässige Basis B mit zugehörigem Basisvektor x und NichtbasisN = {1, ..., n} \ B.

2: Löse das lineare Gleichungssystem

A>(B)ν = cB. (17.8)

3: Berechne die reduzierten Kosten

sN = cN − A>(N )ν. (17.9)

4: if sN ≥ 0 then5: stop: B ist optimal, zugehöriger Basisvektor x ist Lösung des LPs.6: else7: Wähle ein j ∈ N mit sj < 0.8: Löse das lineare Gleichungssystem

A[B]wB = A[j]. (17.10)

9: if wB ≤ 0 then10: stop: LP ist unbeschränkt, also nicht lösbar.11: else12: Bestimme γ ∈ R und ` ∈ B, so dass

γ =x`w`

= mink∈B, wk>0

xkwk.

13: Update: SetzexB = xB − γ wBxj = γ

B = (B ∪ {j}) \ {`}N = {1, ..., n} \ B

14: end if15: end if16: goto 2

Bemerkung 17.9Schritt 2 wird oft auch als Backward Transformation bezeichnet. Die Schritte 3–7sind als Pricing bekannt. Schritt 8 heißt auch Forward Transformation, und Schritte9–12 nennt man Ratio-Test . �

Page 76: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

76 6. SIMPLEX-ALGORITHMUS

Satz 17.10Terminiert Algorithmus 17.8 in endlich vielen Schritten, dann liefert er das korrekteErgebnis.

Beweis: Eigentlich haben wir dieses Resultat in den vorangegangenen Lemmataschon bewiesen. Während Lemma 17.6 die Abbruchbedingung des Ratio-Tests inSchritt 9 bzw. 10 liefert, folgt die Abbruchbedingung des Princings in den Schritten4 bzw. 5 direkt aus Lemma 17.5. �

Bemerkung 17.11Alternativ kann man die Abbruchbedingung sN ≥ 0 auch mit Hilfe von Dualitäts-argumenten begründen:

Für ν ∈ Rm aus Schritt 2 gilt A>(B)ν = cB und A>(N )ν = cN − sN ≤ cN , falls sN ≥ 0,d.h. ν ist zulässig für das duale Problem (DLP). Zudem gilt

(c− A>ν)>x = (cB − A>(B)ν︸ ︷︷ ︸=0

)>xB + (cN − A>(N )ν)> xN︸︷︷︸=0

= 0,

so dass insgesamt das KKT-System (16.7) erfüllt ist und x nach Satz 16.7 damit eineLösung des LPs ist. Dieser Beweis zeigt auch, dass ebenfalls eine Lösung des dualenProblems zu (LP) gefunden ist, wenn der Algorithmus in Schritt 4 bzw. 5 terminiert.Dabei handelt es sich um das in Schritt 2 berechnete ν. Man kann zeigen, dass ν(zusammen mit den Schlupfvariablen s = c−A>ν) sogar eine optimale Basislösungfür das (in Standardform gebrachte) Problem (DLP) ist. �

Satz 17.12Alle zulässigen Basen seien nicht degeneriert. Dann bricht Algorithmus 17.8 nachendlich vielen Iterationen ab.

Beweis: Sei B die aktuelle Basis mit zugehörigem Basisvektor x. Terminiert derAlgorithmus nicht mit dieser Basis, dann folgt für γ aus Schritt 12 wegen Nicht-Degeneriertheit, d.h. xB > 0, dass

γ = mink∈B, wk>0

xkwk

> 0.

Für die nächste Iterierte x+ ergibt sich nach (17.2) damit, dass

c>x+ = c>x+ γ sj < c>x (17.11)

Nehmen wir an, der Algorithmus terminiere nicht endlich und erzeuge so eine Folge{Bk}k∈N an Basen. Wegen (17.11) ist die zugehörige Folge der Zielfunktionswertestreng monoton fallend. Deshalb kann keine Basis in der Folge zweimal auftreten.(Beachte hierbei, dass der zu einer Basis gehörige Basisvektor eindeutig definiert ist,s. Bemerkung 17.2.) Da es nach Definition einer Basis nur endlich viele Basen gibt,ist dies ein Widerspruch. �

Leider trifft dieses Resultat auf den degenerierten Fall nicht mehr zu. In diesemFall gibt es Beispiele, bei denen bestimmte Basen unendlich oft auftreten. Manspricht dann vom Kreiseln des Simplex-Verfahrens . Ein solches Beispiel wird in derÜbung vorgestellt. Die Grundversion des Simplex-Verfahrens in Algorithmus 17.8lässt jedoch bei der Wahl der Indizes j und ` in Schritt 7 bzw. 12 einige Freiheit.Wählt man diese geschickt, so kann das Kreiseln vermieden werden:

Page 77: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6. SIMPLEX-ALGORITHMUS IN PRIMALER FORM 77

Proposition 17.13Die folgenden Auswahlregeln für die Schritte 7 und 12 garantieren die Endlichkeitdes Simplex-Verfahrens:

• Regel von BlandWähle in den Schritten 7 und 12 jeweils die kleinsten in Frage kommendenIndizes j ∈ N und ` ∈ B.• Lexikographische RegelSchritt 7 bleibt unverändert, d.h. wir wählen einen beliebigen Index j ∈ Nmit sj < 0. Der Ratio-Test in Schritt 12 wird dagegen wie folgt modifi-ziert. Zunächst bezeichnen wir die Menge der Indizes i ∈ B mit xi/wi =mink∈B, wk>0(xk/wk) mit M. Dann wählt man den Index ` ∈ M so, dass(A−1

[B]A)`/w` lexikographisch minimal wird. Um diesen Begriff zu erklären, kür-zen wir wie folgt ab vi = (A−1

[B]A)i/wi, i ∈ M. Dann ist v` „lexikographischminimal“, falls für jedes i ∈M mit vi 6= v` gilt:

v`ι < viι mit ι := min{m ∈M : v`m 6= vim}. �

Beweise dieser Aussagen sind in [Geiger and Kanzow, 2002, Abschnitt 3.4] und [Jarreand Stoer, 2004, Abschnitt 3.4] zu finden. Neben den hier erwähnten gibt zahlreicheweitere Auswahlregeln, s. z.B. Chvátal [1983].

Aus praktischer Sicht stellt sich natürlich nicht nur die Frage der Endlichkeit, son-dern man benötigt auch Aussagen über das Worst-Case Verhalten des Simplex-Algorithmus. Eine negative Antwort hierfür liefert das bekannte Beispiel von Kleeund Minty:

Beispiel 17.14 (Klee-Minty-Würfel)Sei ε ∈ (0, 1/2) gegeben. Wir betrachte folgendes LP:

minimiere − xns.t. ε ≤ x1 ≤ 1

εxj−1 ≤ xj ≤ 1− εxj−1, j = 2, 3, ..., n.

(17.12)

Die zulässige Menge entspricht einem (für kleines ε) leicht verzerrten Hyperwürfel.Man kann zeigen, dass der Simplex-Algorithmus (mit der Regel von Bland) zurLösung dieser Aufgabe alle Ecken dieses verzerrten Würfels abläuft. Er benötigtalso 2n Iterationen, das heißt der Simplex-Algorithmus hat in diesem Beispiel keinepolynomiale sondern exponentielle Laufzeit. �

In der Praxis verhält sich der Simplex-Algorithmus allerdings häufig sehr viel besserals im Beispiel von Klee und Minty. Bei vielen Anwendungen zeigt er ein polyno-miales Laufzeitverhalten.

Bemerkung 17.15Man kann auch das zu (LP) duale Problem (DLP) mit dem Simplex-Algorithmuslösen, nachdem man es in die Standardform gebracht hat.

Es gibt zahlreiche Beispiele, in denen das duale Simplex-Verfahren sehr viel schnel-ler konvergiert als das primale und umgekehrt. Beispielsweise durchläuft das dua-le Simplex-Verfahren im Fall des Klee-Minty-Würfels aus Beispiel 17.14 nicht alleEcken und konvergiert daher sehr viel schneller als die primale Version. Leider kann

Page 78: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

78 6. SIMPLEX-ALGORITHMUS

man einem LP a priori aber kaum ansehen, welche Version des Simplex-Verfahrenssich besser zu seiner Lösung eignet.

Die Verwendung des dualen Simplex-Algorithmus ist außerdem vorzuziehen, wennnach dem Hinzufügen einer neuen Nebenbedingung (im primalen LP) reoptimiertwerden soll. Die dual optimale Basis bleibt dann nämlich dual zulässig und kannals Startbasis für weitere Iterationen verwendet werden. Umgekehrt sollte bei einerVeränderung der Zielfunktion primal reoptimiert werden. Siehe dazu § 19.

§ 18 Praktische Umsetzung des Simplex-Algorithmus

Der Simplex-Algorithmus lässt noch einige wesentliche Fragen offen, insbesondere:

• Wie erhält man eine zulässige Startbasis?• Wie löst man möglichst effizient die linearen Gleichunsysteme in den Schrit-ten 2 und 8?

Insbesondere eine effiziente Lösung der Gleichungssysteme ist sehr wichtig, da sie denaufwendigsten Teil einer Iteration im Simplex-Algorithmus darstellt. Wir wendenuns aber zunächst der Frage einer zulässigen Startbasis zu. Dazu betrachten wir dasfolgende Hilfsproblem:

minimiere 1>y

s.t. Ax+ y = b, x, y ≥ 0,

}(18.1)

wobei A ∈ Rm×n und b ∈ Rm die Daten von (LP) und 1 = (1, 1, ..., 1) ∈ Rm.

Satz 18.1Sei b ≥ 0. Dann gilt:

(1) B = {n+1, n+2, ..., n+m} ist eine zulässige Basis für (18.1) mit Basisvektor(x, y)> = (0, b)>.

(2) Das Hilfs-LP (18.1) ist lösbar.(3) Sei (x∗, y∗)> ein optimaler Basisvektor von (18.1). Ist y∗ 6= 0, dann ist die

zulässige Menge des Ausgangsproblems (LP) leer. Ist hingegen y∗ = 0 undrang(A) = m, dann ist x∗ eine zulässiger Basisvektor für (LP).

Bemerkung 18.2Da das Hilfs-LP (18.1) lösbar ist und man zudem eine zulässige Basis für (18.1) kenntnach Satz 18.1(1) bzw. (2), kann man das Hilfs-LP mittels des Simplex-Verfahrens lö-sen. Als Lösung erhält man die gewünschte zulässige Basis für (LP), mit der man den„eigentlichen“ Simplex-Algorithmus zur Lösung des Ausgangsproblems (LP) startenkann (falls die zulässige Menge von (LP) nichtleer ist). Man beachte, dass die Be-dingung b ≥ 0 keine wirkliche Einschränkung darstellt, denn ist bi < 0 für eini ∈ {1, ...,m}, so kann man die entsprechende Gleichung einfach mit −1 multiplizie-ren.

Die Anwendung des Simplex-Verfahrens auf das Hilfsproblem (18.1) wird oft alsPhase I des Simplex-Algorithmus bezeichnet. Die Lösung des eigentlichen Problems(LP) mit Hilfe des Simplex-Verfahrens heißt dann Phase II . �

Beweis von Satz 18.1: zu (1):Der Vektor (x, y) = (0, b) erfüllt trivialerweise die Gleichungsnebenbedingung von

Page 79: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6. PRAKTISCHE UMSETZUNG DES SIMPLEX-ALGORITHMUS 79

(18.1). Wegen b ≥ 0 sind zudem die Ungleichungsnebenbedingungen erfüllt, so dass(0, b) zulässig ist. Die Gleichungsnebenbedingung in (18.1) lässt sich auch als

(A, I)

(xy

)= b

schreiben, wobei I ∈ Rm×m die Einheitsmatrix bezeichnet. Mit B = (n + 1, n +2, ..., n + m) erhalten wir (A, I)[B] = I, so dass es sich bei B tatsächlich eine Basisist. Zudem ist (0, b) trivialerweise der passende Basisvektor. Da er wie bereits gesehenzulässig ist, ist B ebenfalls zulässig.

zu (2):Wegen der Nebenbedingung y ≥ 0 gilt für die Zielfunktion von (18.1), dass 1>y ≥ 0für alle zulässigen y. Damit ist das Zielfunktional auf der zulässigen Menge nachunten beschränkt, was nach Satz 15.1 wegen der Zulässigkeit die Existenz einerLösung impliziert.

zu (3):Sei (x∗, y∗) ein optimaler Basisvektor mit y∗ 6= 0. Der Optimalwert von (18.1) istdann f ∗ = 1>y∗ > 0. Gäbe es einen zulässigen Punkt x ∈ P des Ausgangsproblems(LP), dann wäre (x, 0) zulässig für (18.1), würde aber den Zielfunktionswert 1>0 =0 < f ∗ liefern, im Widerspruch zur Optimalität von (x∗, y∗).

Sei nun y∗ = 0 und rang(A) = m. Da (x∗, y∗) ein Basisvektor ist, gibt es einezugehörige Basis B∗ ⊂ {1, ..., n + m} mit |B∗| = m und (x∗, y∗)>B∗ = (A, I)−1

[B∗]b. Da(A, I)[B∗] regulär ist, sind die Spalten

A[i], i ∈M := {k ∈ B∗ ∩ {1, ..., n} : x∗k > 0} = B∗ ∩ supp(x∗)

linear unabhängig. Ist |M| = m , so setzen wir B =M. Andernfalls kannM wegenrang(A) = m zu einer Indexmenge B ergänzt werden, so dass |B| = m und A[B]

regulär ist. Damit ist B eine Basis für (LP). Für B gilt dann nach Konstruktionx∗N = 0 mit N = {1, ..., n} \ B und wegen y∗ = 0, dass

b = (A, I)

(x∗

y∗

)= A[M]x

∗M = A[B]x

∗B ⇔ x∗B = A−1

[B]b.

Wegen Ax∗ = b und x∗ ≥ 0 ist die Basis zulässig. �

Bemerkung 18.3Im FallM 6= B gibt es Indizes i ∈ B mit x∗i = 0, so dass B degeneriert ist, was zuden oben erwähnten Problemen führen kann (Kreiseln).

Wir kommen nun zu einer effizienten Methode, die linearen Gleichunssysteme inden Schritten 2 und 8 zu lösen. Dazu nehmen wir an, es sei gerade eine Iterationim Simplex-Verfahren mit Basis B durchgeführt worden, und der Algorithmus sei indieser Iteration nicht terminiert. Die zugehörige Basismatrix ist

A[B] = (A[B1], ..., A[Bm]),

wobei B1, ...,Bm ∈ {1, ..., n} die Indizes in der Basis seien. Der Index ` aus Schritt12, der nach dem Update in Schritt 13 die Basis verlässt, sei das i-te Element in B,d.h. ` = Bi, 1 ≤ i ≤ m. An seine Stelle tritt nun der Index j aus 7, d.h. die neueBasis B+ für die nächste Iteration ist gegeben durch

B+ = {B1, ...,Bi−1, j,Bi+1, ...,Bm}.

Page 80: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

80 6. SIMPLEX-ALGORITHMUS

Unter Beachtung der Forward-Transformation in Schritt 8 ergibt sich dann für dieneue Basismatrix:

A[B+] = (A[B1], ..., A[Bi−1], A[j], A[Bi+1], A[Bm])

= (A[B1], ..., A[Bi−1], A[B]wB, A[Bi+1], A[Bm])

= (A[B]e1, ..., A[B]ei−1, A[B]wB, A[B]ei+1, ..., A[B]em)

= A[B] (e1, ..., ei−1, wB, ei+1, ..., em)︸ ︷︷ ︸=: F

,

wobei ek der k-te Einheitsvektor ist. Sind wB1 , ..., wBm die Komponenten von wB,dann definieren wir den Vektor v ∈ Rm durch

vk =

{1wBi

, k = i

−wBkwBi

, k 6= j,k = 1, ...,m,

wobei i wie oben durch ` = Bi festgelegt ist. Man beachte hierbei, dass v wohlde-finiert ist, da wBi = w` > 0 nach Schritt 12 des Algorithmus gilt. Die Inverse vonF ∈ Rm×m ist dann durch

F−1 = (e1, ..., ei−1, v, ei+1, ..., em)

gegeben, wie man durch einfaches Nachrechnen leicht bestätigt. Damit folgt für dieInverse von A[B+], dass

A−1[B+] = F−1A−1

[B].

Ist also die Inverse von A[B] bekannt, so kann die Inverse der folgenden Basisma-trix durch eine Matrix-Multiplikation mit der dünn besetzten Matrix F−1 berechnetwerden. In der Praxis berechnet man häufig eine LU-Zerlegung der Startbasisma-trix. Die Inversen der folgenden Basismatrizen ergeben sich dann durch sukzessiveMatrixmultiplikation mit dem jeweiligen F−1. (Man beachte, dass sich w und damitauch F in jeder Iteration des Algorithmus ändert.) Um numerische Instabilitäten zuvermeiden, sollte allerdings ab und an eine neue LU-Faktorisierung vorgenommenwerden, z.B. in jeder 100sten Iteration.

Es gibt einige weitere Methoden, die Matrizen im Simplex-Algorithmus effizientzu invertieren. Für Probleme mit kleiner Dimension eignet sich das so genannteSimplex-Tableau, welches beispielsweise in [Jarre and Stoer, 2004, Kapitel 3] nä-her erläutert wird. Da dem Simplex-Tableau das Gaußsche Eliminationverfahrenzugrunde liegt, eignet es sich nicht für große n und m. Für Probleme mit großerDimension kann man alternativ zum oben beschriebenen Verfahren auch die so ge-nannte Sherman-Morrison-Formel verwenden, welche in [Geiger and Kanzow, 2002,Kapitel 3] näher beschrieben ist.

§ 19 Reoptimierung

In vielen Anwendungen verändert sich die Struktur des LPs, indem beispielsweiseeine neue Nebenbedingung hinzukommt. Im Fall des Transportproblems aus Beispiel2.1 könnte z.B. eine neue Filiale eröffnet werden, die ebenfalls beliefert werden muss.Dann vergrößert sich die Anzahl der Variablen und eine neue Nebenbedingung mussbeachtet werden. Hat man bereits das LP ohne Berücksichtigung der neuen Filialegelöst, stellt sich die Frage, inwieweit die alte Lösung für das neue Problem verwendetwerden kann. Wir untersuchen im Folgenden die Fälle:

Page 81: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

6. REOPTIMIERUNG 81

(1) Änderung des Vektors c in der Zielfunktion,(2) Änderung der rechten Seite b,(3) Hinzufügen einer neuen Nebenbedingung.

Dabei gehen wir davon aus, wir hätten bereits eine Lösung von (LP), d.h.

minimiere c>x

s.t. Ax = b, x ≥ 0

}(LP)

mit Hilfe des Simplex-Verfahrens bestimmt. Die zugehörige optimale Basis sei B∗,den Basisvektor bezeichnen wir mit x∗. Die entsprechende Nichtbasis bezeichnen wirmit N ∗ = {1, .., n} \ B∗. Die zu B∗ gehörige duale Optimallösung sei (ν∗, s∗), diesewird nach Bemerkung 17.11 ebenfalls durch den Simplex-Algorithmus berechnet.

zu (1):Angenommen, der Vektor c ändert sich zu c ∈ Rn. Da sich die Nebenbedingun-gen nicht ändern, bleibt x∗ auch für das modifizierte Problem zulässig. Ob es auchoptimal bleibt, hängt von den reduzierten Kosten ab:

sN ∗ = cN ∗ − A>(N ∗)A−>(B∗)cB∗ .

sN ∗ ≥ 0: Dann ist x∗ nach Lemma 17.5 auch eine Lösung des modifizierten Problems.sN ∗ 6≥ 0: Jetzt ist x∗ nicht mehr optimal. Da es aber zulässig ist, kann der primale

Simplex-Algorithmus mit B∗ als zulässiger Basis zur Lösung des modifizier-ten Problems gestartet werden.

zu (2):Wird b in b verändert, dann ist x∗ i.A. nicht mehr zulässig für das modifizierteprimale Problem. Das entsprechende duale Problem lautet

maximiere b>ν

s.t. A>ν + s = c, s ≥ 0

}(19.1)

und besitzt damit dieselbe zulässige Menge wie das duale Ausgangsproblem. Insbe-sondere ist die duale Lösung (ν∗, s∗) weiterhin eine zulässige Basislösung für (19.1).Durch Anwendung des Simplex-Algorithmus auf das duale Problem (vgl. Bemer-kung 17.15) kann also analog zu (1) reoptimiert werden.

zu (3):Nun wird dem primalen Problem eine zusätzliche Unleichung hinzugefügt, z.B.a>x ≤ δ mit a ∈ Rn und δ ∈ R. Durch Einführung einer Schlupfvariablen xn+1

können wir dies äquivalent schreiben als a>x+ xn+1 = δ und xn+1 ≥ 0. Das modifi-zierte LP ist dann gegeben durch:

minimiere c>x

s.t. x ∈ Rn+1, A x = b, x ≥ 0

}(19.2)

mit c = (c, 0) ∈ Rn+1, b = (b, δ) ∈ Rm+1 und

A =

(A 0a> 1

)∈ Rm+1×n+1.

Wir können nun von der neuen Basis B∗∪{n+1} ausgehen, die dual zulässig bleibt,und wie in (2) den Simplex-Algorithmus auf das duale Problem anwenden.

Page 82: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 83: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Teil 3

Diskrete Optimierung

Page 84: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 85: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 7

Ganzzahlige Programmierung

Inhalt20 Ganzzahlige Polyeder 85

21 Branch-and-Bound 88

§ 20 Ganzzahlige Polyeder

Wir interessieren uns im Folgenden für lineare Programme, bei denen zusätzlichverlangt wird, dass alle Variablen ganzzahlige Werte annehmen. Dabei gehen wirvon der natürlichen Form eines linearen Programms aus, also

minimiere c>x

s.t. Ax ≤ b

x ∈ Rn

(LP’)

und betrachten jetzt das ganzzahlige lineare Programm

minimiere c>x

s.t. Ax ≤ b

x ∈ Zn

(ILP)

Im Folgenden nehmen wir oft an, dass alle Eingabedaten ganzzahlig sind, dass alsoA ∈ Zm×n, b ∈ Zm und c ∈ Zn gilt. Durch Skalierung kann auch der Fall A ∈ Qm×n,b ∈ Qm und c ∈ Qn hierauf zurückgeführt werden, sodass die Ganzzahligkeit derEingabedaten aus praktischer Sicht keine wesentliche Einschränkung darstellt.

Dennoch ist die Lösung von (ILP) im Allgemeinen sehr viel schwieriger als dievon (LP’), was sich sogar theoretisch beweisen lässt (das ist Inhalt der Vorlesung“Diskrete Optimierung”).

In diesem Kapitel interessiert uns jedoch zunächst die Frage, unter welchen Voraus-setzungen sich das Problem (ILP) direkt auf (LP’) zurückführen lässt, sodass dieAlgorithmen aus Kapitel 6 auch zur Lösung von (ILP) eingesetzt werden können.

Nach Satz 15.4 wird das Optimum von (LP’), falls es existiert, auch immer in einerEcke des Polyeders

P = {x ∈ Rn : Ax ≤ b}angenommen. Diese Aussage lässt sich wie folgt verallgemeinern:

Satz 20.1Sei X ⊆ Rn und c ∈ Rn. Dann gilt minx∈X c>x = minx∈conv(X) c

>x.85

Page 86: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

86 7. GANZZAHLIGE PROGRAMMIERUNG

Beweis: Die Richtung “≥” ist klar, da X ⊆ conv(X) gilt. Wir zeigen also ”≤”. Seidazu x0 ∈ conv(X) beliebig gewählt. Nach Lemma 4.11 gilt dann

x0 =k∑i=1

λixi

für geeignete x1, . . . , xk ∈ X und λ1, . . . , λk ≥ 0 mit∑k

i=1 λi = 1. Damit folgt

c>x0 =k∑i=1

λic>xi .

Wegen∑k

i=1 λi = 1 folgt daraus, dass ein i ∈ {1, . . . , k} existiert mit c>xi ≤ c>x0.Mit xi ∈ X ergibt sich

minx∈X

c>x ≤ c>xi ≤ c>x0 .

Daraus folgt die Behauptung. �

Korollar 20.2Sei P = {x ∈ Rn |Ax ≤ b}. Dann stimmt der Optimalwert von Problem (ILP) mitdem Optimalwert von

min c>x

s.t. x ∈ conv(P ∩ Zn)

}(LPC)

überein.

Beweis: Die Aussage folgt sofort aus Satz 20.1 mit X := P ∩ Zn. �

Satz 20.3Sei P ein Polytop. Dann ist auch P ′ := conv(P ∩Zn) ein Polytop. Insbesondere giltP ′ = {x ∈ Rn |A′x ≤ b′} für geeignete A′ ∈ Rm

′×n und b ∈ Rm′ , m′ ∈ N.

Beweis: Als Polytop ist P nach Definition beschränkt. Damit ist die Menge P ∩ Zn

endlich, nach Korollar 14.11 ist conv(P ∩ Zn) also ein Polytop. �

Mit Korollar 20.2 und Satz 20.3 reduziert sich das Problem (ILP) – zumindest imbeschränkten Fall – im Prinzip auf (LPC), also ein lineares Optimierungsproblemüber P ′. Dabei stellen sich aber die folgenden Fragen:

(1) Wie können A′ und b′ konkret bestimmt werden?

(2) Wie groß kann (muss) m′ werden?

(3) Wann gilt P ′ = P?

Die ersten beiden Fragen sind im Allgemeinen schwer zu beantworten und werdenin der Vorlesung “Diskrete Optimierung” vertieft. An dieser Stelle widmen wir unsder letzten Frage.

Definition 20.4Ein Polyeder P heißt ganzzahlig, falls P = conv(P ∩ Zn) gilt. �

Lemma 20.5Ein Polytop ist gleich der konvexen Hülle seiner Ecken.

Page 87: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

7. GANZZAHLIGE POLYEDER 87

Beweis: Für P = ∅ ist die Aussage klar. Sei also P ein nichtleeres Polytop. Wirnehmen zuerst an, dass P in Standardform gegeben ist. Nach Lemma 15.3 hat Pendlich viele Ecken x1, ..., xr. Wegen der Konvexität von P ist conv{x1, ..., xr} ⊆ P .Für die umgekehrte Inklusion argumentieren wir per Widerspruch und nehmen an,es gäbe ein z ∈ P mit z 6∈ conv{x1, ..., xr}. Die Menge conv{x1, ..., xr} ist nachKorollar 14.11 ein Polytop und somit abgeschlossen und nach Lemma 15.2 nichtleer.Nach Lemma 7.2 lässt sich z von conv{x1, ..., xr} strikt trennen, so dass ein s ∈ Rn,s 6= 0, existiert mit

s>z > s>xi ∀ i = 1, ..., r.

Wir betrachten das LPmaxx∈P

s>x. (20.1)

Da P nichtleer und beschränkt ist, wird nach Satz 15.4 das Optimum von (20.1) ineiner Ecke x von P angenommen. Somit folgt

s>x ≥ s>z > s>xi ∀ i = 1, ..., r,

und damit der gewünschte Widerspruch.

Für ein beliebiges Polyeder P = {x ∈ Rn | Ax ≤ b} können wir wegen der Be-schränktheit P ⊆ Rn+ annehmen, also ist P = {x ∈ Rn | Ax ≤ b, x ≥ 0} isomorphzum Polyeder

{x ∈ Rn | Ax+ z = b, x, z ≥ 0}in Standardform. Da sich die Ecken dabei bijektiv entsprechen, folgt die Aussage. �

Satz 20.6Sei P = {x ∈ Rn | Ax ≤ b} ein Polytop. Dann sind die folgenden Aussagen äquiva-lent:

(i) P ist ganzzahlig(ii) Jede Ecke von P ist ganzzahlig.(iii) Für alle c ∈ Rn stimmen die Optimalwerte von (LP’) und (ILP) überein.

Beweis: Wir zeigen (ii) ⇒ (i) ⇒ (iii) ⇒ (i). Sei also jede Ecke von P ganzzahlig.Wegen P ∩ Zn ⊆ P gilt

P ′ := conv(P ∩ Zn) ⊆ conv(P ) = P,

also bleibt für (i) zu zeigen: P ⊆ P ′. Wähle dazu x ∈ P . Wegen Lemma 20.5 kann xals Konvexkombination von Ecken von P dargestellt werden, also

x =k∑i=1

λixi

mit λ1, . . . , λk ≥ 0,∑k

i=1 λi = 1 und x1, . . . , xk Ecken von P . Wegen (ii) gilt xi ∈ Zn

und somit xi ∈ P ∩ Zn für alle i = 1, . . . , k, also x ∈ conv(P ∩ Zn) = P ′.

Die Implikation (i) ⇒ (iii) folgt sofort aus Satz 20.1.

Abschließend gelte also (iii), zu zeigen ist (ii). Sei dazu {x0} Ecke von P . NachSatz 13.12 (2) existiert ein c ∈ Rn, so dass x0 eindeutige Optimallösung von

min c>x

s.t. Ax ≤ b

x ∈ Rn

Page 88: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

88 7. GANZZAHLIGE PROGRAMMIERUNG

ist. Nach (iii) existiert ein x1 ∈ Zn mit Ax1 ≤ b und c>x1 = c>x0, wegen derEindeutigkeit ist also x0 = x1 ∈ Zn. �

Bemerkung 20.7Die Frage, ob ein gegebenes Polytop ganzzahlig ist oder nicht, ist im Einzelfall oftsehr schwierig zu beantworten. Bei der Lösung von kombinatorischen Optimierungs-problemen ist das Polytop P oft als konvexe Hülle gegeben, also P = conv(X) füreine endliche Menge zulässiger Lösungen X. Gesucht sind dann eine Matrix A′ undeine rechte Seite b′ mit P = {x ∈ Rn | A′x ≤ b′}, die nach dem Satz von Weyl-Minkowski existieren müssen (wie oben bereits erwähnt). Selbst wenn A′ und b′

gegeben sind, kann der Beweis der sogenannten Vollständigkeit der polyedrischenBeschreibung, also der Beweis von conv(X) = {x ∈ Rn | A′x ≤ b′}, sehr kompliziertsein. Dabei ist es in der Regel einfach zu zeigen, dass X = {x ∈ Rn | A′x ≤ b′} ∩ Zn

gilt. In diesem Fall bleibt also noch zu beweisen, dass {x ∈ Rn | A′x ≤ b′} einganzzahliges Polytop ist, daraus folgt dann

conv(X) = conv({x ∈ Rn | A′x ≤ b′} ∩ Zn) = {x ∈ Rn | A′x ≤ b′} .Diese Überlegungen sind Gegenstand der Vorlesung “Diskrete Optimierung”. �

§ 21 Branch-and-Bound

Wir betrachten das ganzzahlige lineare Programm

minimiere c>x

s.t. Ax ≤ b

x ∈ Zn

(ILP)

und dessen sogenannte LP-Relaxierung

minimiere c>x

s.t. Ax ≤ b

x ∈ Rn .

(LPR)

Falls eine Optimallösung x∗ von (LPR) existiert, die ganzzahlig ist, ist x∗ auchoptimal für (ILP). Im Allgemeinen wird x∗ jedoch fraktional sein. Wir benötigenalso einen Algorithmus, der auch in diesem Fall eine optimale Lösung von (ILP)berechnet.

Definition 21.1Sei P = {x ∈ Rn | Ax ≤ b} und x∗ eine optimale Lösung von minx∈P c

>x. Fallsx∗i /∈ Z für ein i ∈ {1, ..., n}, heißt die Zerlegung von P in zwei Teilpolyeder

P1 = {x ∈ P | xi ≥ dx∗i e} , P2 = {x ∈ P | xi ≤ bx∗i c}ein Branching bezüglich xi.

Lemma 21.2Sei x∗ eine zulässige Lösung von minx∈P∩Zn c

>x und P1, P2 ein Branching bzgl. xi.Dann gilt x∗ ∈ P1 ∪ P2 und

minx∈P∩Zn

c>x = min

{min

x∈P1∩Znc>x, min

x∈P2∩Znc>x

}.

Beweis: Klar, da für jedes xi ∈ Z gilt: xi ≥ dx∗i e oder xi ≤ bx∗i c. �

Page 89: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

7. BRANCH-AND-BOUND 89

Beispiel 21.3Betrachte

min − x1 − 3x2

s.t − x1 + 6x2 ≤ 12, x1, x2 ≥ 0

x1 + x2 ≤ 4, x1, x2 ∈ Z.

Die Optimallösung ist(

22

), die optimale Lösung der LP-Relaxierung ist x∗ =

(127167

).

Wähle x1 als Branching-Variable, d.h.P1 = {x ∈ P | x1 ≥ dx∗1e = 2}P2 = {x ∈ P | x1 ≤ bx∗1c = 1}

Die optimale LP-Lösung für P1 ist(

22

), also ganzzahlig!

Die optimale LP-Lösung für P2 ist(

1136

), also weiteres Branching notwendig! �

Die Idee des Boundings ist nun die folgende: Falls eine zulässige Lösung x ∈ P ∩Zn

bekannt ist mit minx∈Pj c>x ≥ c>x, kann Pj keine echt bessere ganzzahlige Lösung

als x enthalten. Das Teilproblem Pj muss also bei der Suche nach der Optimallösungvon (ILP) nicht weiter betrachtet werden!Im Beispiel: Aus dem Teilproblem P1 ist x = (2, 2)> als zulässige Lösung bekanntmit c>x = −8. Im Teilproblem P2 ist der Optimalwert −15

2≥ −8. Damit ist auch

das Teilproblem P2 erledigt und x somit Optimallösung von (ILP).

Algorithmus 21.4 (Branch & Bound)Gegeben: A ∈ Rm×n, b ∈ Rm, c ∈ Rn

Gesucht: Optimallösung von (ILP)1: Setze P = {x ∈ Rn | Ax ≤ b}, L = {P}, U =∞, x undefiniert2: if L = ∅ then3: if U =∞ then4: stop: (ILP) hat keine zulässige Lösung5: else6: stop: x ist Optimallösung von (ILP) mit Wert U7: end if8: end if9: Wähle ein P ∈ L und setze L := L\{P}

10: Löse das LPmin c>x

s.t. x ∈ P(*)

11: if (∗) zulässig then12: Wähle Optimallösung x∗ von (∗) und setze c∗ := c>x∗

(Falls (∗) unbeschränkt ist: hier nicht behandelt...)13: if c∗ < U then14: if x∗ ∈ Zn then15: Setze x := x∗ und U := c∗

16: else17: Wähle i ∈ {1, ..., n} mit x∗i /∈ Z

Page 90: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

90 7. GANZZAHLIGE PROGRAMMIERUNG

18: Sei P1, P2 das Branching von P bzgl. xi19: Setze L := L ∪ {P1, P2}20: end if21: end if22: end if23: Gehe zu 2.

Bemerkung 21.5Die Anzahl der im Schritt 10 in Algorithmus 21.4 gelösten LPs ist im Allgemeinennicht polynomiell! Wichtig für eine schnelle Laufzeit des Verfahrens sind

(1) primale Heuristiken: Suche zwischendurch nach guten zulässigen Lösungen,um die Schranke U zu verbessern.

(2) eine geschickte Zerlegung des Problems: Die Wahl der Branching-Variablenin Schritt 17 ist wichtig, auch andere Arten von Zerlegungen sind möglich.

(3) eine geschickte Enumerationsstrategie: Die Wahl des jeweils nächsten Teil-problems in Schritt 9 hat einen großen Einfluss auf die Laufzeit.

(4) die schnelle Reoptimierung nach Aufteilung des Problems mithilfe des dua-len Simplexalgorithmus (siehe § 19).

(5) die geschickte Kombination mit Schnittebenenverfahren (siehe dazu die Vor-lesung “Diskrete Optimierung”).

Page 91: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Teil 4

Nichtlineare Optimierung

Page 92: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 93: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

KAPITEL 8

Freie Optimierung

Inhalt22 Existenz optimaler Lösungen 93

23 Optimalitätsbedingungen 95

24 Algorithmen der freien Optimierung 97

§ 22 Existenz optimaler Lösungen

Zum Abschluss befassen wir uns mit Aufgaben der Formminimiere f(x)

s.t. x ∈ F ,

}(22.1)

wobei F ⊆ Rn die zulässige Menge und f : Rn → R die Zielfunktion bezeichnet, vonder wir i.A. fordern, dass sie mindestens stetig auf Rn ist. Wir werden zwei Fällevon zulässigen Mengen unterscheiden, nämlich

(1) F = {x ∈ Rn : h(x) = 0, g(x) ≤ 0}, wobei h : Rn → Rp und g : Rn → Rm

gegebene, i.A. nichtlineare Funktionen sind. In diesem Fall entspricht (22.1)einem (allgemeinen) nichtlinearen Programm (NLP).

(2) F = Rn. In diesem Fall liegen keine Restriktionen vor, man spricht voneiner freien Optimierungsaufgabe.

Bevor wir im Folgenden freie Optimierungsprobleme näher untersuchen, untersuchenwir zunächst die Frage der Existenz (global) optimaler Lösungen für den allgemeinenFall (22.1). Es gilt der folgende aus der Analysis bekannte Satz:

Satz 22.1 (Weierstraß)Sei F ⊂ Rn abgeschlossen und beschränkt und f auf F stetig. Dann nimmt f seinMaximum und Minimum auf F an.

Beweis: Wir betrachten exemplarisch das Minimum und definierenm := infx∈F f(x) ∈R ∪ {−∞}, d.h. es gibt eine Infimalfolge {xk}k∈N ⊂ F mit f(xk) → m für k → ∞.Nach Voraussetzung ist F beschränkt und abgeschlossen, also nach dem Satz vonHeine-Borel kompakt. Daher existiert eine konvergente Teilfolge {xk`}`∈N mit Grenz-wert x∗ ∈ F . Aus der Stetigkeit von f folgt dann

f(x∗) = lim`→∞

f(xk`) = m, (22.2)

worausm > −∞ und wegen x∗ ∈ F außerdem f(x∗) = m und damit die Optimalitätvon x∗ folgt. �

Es stellt sich die Frage, was passiert, wenn die zulässige Menge nicht kompakt ist,wie beispielsweise im Fall der freien Optimierung. Um dies zu klären, definieren wir

93

Page 94: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

94 8. FREIE OPTIMIERUNG

Definition 22.2Sei z ∈ F gegeben. Dann heißt

Nf (z) := {x ∈ F : f(x) ≤ f(z)}Niveaumenge von f in z. �

Dann gilt für jedes z ∈ F , dass

(22.1) ⇔{

minimiere f(x)

s.t. x ∈ Nf (z),

}(22.3)

denn:

„⇒“: Löst x∗ Aufgabe (22.1), dann gilt für jedes z ∈ F , dassf(x∗) ≤ f(x) ∀x ∈ Nf (z) ⊂ F .

Diese Unleichung gilt natürlich auch für z ∈ Nf (z), woraus x∗ ∈ Nf (z)folgt. Also löst x∗ auch (22.3).

„⇐“: Ist x∗ optimal für (22.3), dann folgt zunächst x∗ ∈ Nf (z) ⊂ F , also Zuläs-sigkeit für (22.1). Außerdem gilt

f(x∗) ≤ f(x) ∀x ∈ Nf (z)

und f(x∗) ≤ f(z) < f(x) ∀x ∈ F \Nf (z),

was die Optimalität von x∗ für (22.1) impliziert.

Zusammen mit Satz 22.1 folgt daraus:

Korollar 22.3Sei f auf F stetig. Existiert ein z ∈ F , so dass Nf (z) kompakt ist, dann gibt eseinen globalen Minimierer von f auf F . �

Beispiel 22.4Als Beispiel für eine Aufgabe mit kompakter Niveaumenge betrachten wir das fol-gende freie Optimierungsproblem:

minimiere f(x) :=1

2x>Qx+ b>x+ c (22.4)

mit b ∈ Rn und c ∈ R. Zudem ist Q ∈ Rn×n ein symmetrische, positiv definiteMatrix. Ist λmin der kleinste Eigenwert von Q, dann gilt

f(x) ≥ λmin

2‖x‖2 + b>x+ c ≥

(λmin

2‖x‖ − ‖b‖

)‖x‖ − |c| ∀x ∈ Rn, (22.5)

wobei wir die Cauchy-Schwarzsche Ungleichung verwendet haben. Sei nun z ∈ Rn

beliebig. Dann folgt aus (22.5), dassf(x) > ‖x‖ − |c| ≥ f(z)

für alle x mit ‖x‖ > R := max{f(z) + |c|, (2 + 2‖b‖)/λmin}.

Daraus folgt Nf (z) ⊂ BR(0), was die Beschränktheit von Nf (z) beweist. Die Abge-schlossenheit von Nf (z) folgt sofort aus der Stetigkeit von f . �

Verallgemeinerungen von Korollar 22.3 und allgemeine hinreichende Kriterien fürkompakte Niveaumengen werden in der Vorlesung “Nichtlineare Optimierung” be-handelt. Man beachte, dass die Kompaktheit der Niveaumenge natürlich nicht not-wendig für die Existenz von Minimierern ist, wie das Beispiel minx∈R sin(x) zeigt.

Page 95: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

8. OPTIMALITÄTSBEDINGUNGEN 95

§ 23 Optimalitätsbedingungen

Wir betrachten im Folgenden freie Optimierungsaufgaben der Formminimiere

x∈Rnf(x), (23.1)

d.h. die zulässige Menge ist der ganze Raum, F = Rn. Anders als in § 11 gehen wiraber hier in der Regel davon aus, dass die Funktion f differenzierbar ist.Die notwendigen Optimalitätsbedingungen für (23.1) lassen sich sofort aus denender konvexen Optimierung ableiten.

Lemma 23.1Sei U ⊆ Rn ein linearer Unterraum und x∗ ∈ U ein lokaler Minimierer von

minimiere f(x)

s.t. x ∈ U.

}Ist f in x∗ differenzierbar, dann gilt

∇f(x∗)>h = 0 ∀h ∈ U. (23.2)

Beweis: Sei h ∈ U beliebig. Da U als linearer Unterraum konvex ist, folgt dieAussage unmittelbar aus Satz 9.2, wenn man die Variationsungleichung (VI) mitx = ±h+ x∗ ∈ U testet. �

Für lineare Unterräume als zulässige Mengen gilt also eine Variationsgleichung alsnotwendige Optimalitätsbedingung. Im Fall U = Rn erhält man die folgende Aussage(die sich im Fall einer konvexen Funktion f auch als Spezialfall von Theorem 11.2ergibt):

Satz 23.2Sei x∗ ein lokaler Minimierer von (23.1) und f : Rn → R in x∗ differenzierbar. Danngilt

∇f(x∗) = 0. (23.3)

Beweis: Nach Lemma 23.1 gilt (23.2) mit U = Rn. Setzen wir h = ∇f(x∗) in (23.2)ein, dann folgt ‖∇f(x∗)‖2 = 0 und damit die Aussage. �

Definition 23.3Die Lösungen von (23.3) heißen stationäre Punkte von f . �

Natürlich müssen stationäre Punkte keine Minimierer, sondern können auch Maxi-mierer oder Sattelpunkte sein. Lediglich im Fall einer konvexen Zielfunktion sind dienotwendigen Optimalitätsbedingungen auch hinreichend, wie wir in Satz 9.4 gese-hen hatten. Das bedeutet, ist f konvex, dann sind die Lösungen von (23.3) (lokale= globale) Minimierer von f . Ist f hingegen nicht konvex, benötigt man zusätzli-che hinreichende Optimalitätsbedingungen, die sich mit Hilfe der zweiten Ableitungformulieren lassen. Um die Güte der hinreichenden Bedingungen zu beurteilen, be-nötigen wir zunächst notwendige Optimalitätsbedingungen zweiter Ordnung :

Proposition 23.4Sei x∗ ∈ Rn ein lokaler Minimierer von (23.1) und f : Rn → R in einer UmgebungBρ(x

∗), ρ > 0, von x∗ zweimal stetig differenzierbar. Dann gilt neben ∇f(x∗) = 0,dass

s>∇2f(x∗)s ≥ 0 ∀ s ∈ Rn, (23.4)d.h. ∇2f(x∗) ist positiv semidefinit.

Page 96: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

96 8. FREIE OPTIMIERUNG

Beweis: Wir nehmen o.B.d.A. an, dass Bρ(x∗) in der Umgebung der lokalen Opti-

malität von x∗ enthalten ist. Dann ist f : Bρ(x∗)→ R zweimal stetig differenzierbar,

und es gilt f(x) ≥ f(x∗) für alle x ∈ Bρ(x∗). Sei nun s ∈ Rn beliebig. Dann ist

x+ ts ∈ Bρ(x∗) für t > 0 hinreichend klein, und der Mittelwertsatz liefert

0 ≤ f(x∗ + ts)− f(x∗) = t∇f(x∗)>s+t2

2s>∇2f(x∗ + τts)s

mit einem τt ∈ [0, t]. Nun ist ∇f(x∗) = 0 nach Satz 23.2 und daher liefert Divisiondurch t2/2 wegen Stetigkeit von ∇2f auf Bρ(x

∗), dass

s>∇2f(x∗)s = limt↘0

s>∇2f(x∗ + τts)s ≥ 0.

Da s ∈ Rn beliebig war, folgt die Aussage. �

Der nächste Satz gibt hinreichende Optimalitätsbedingungen zweiter Ordnung an.Sie unterscheiden sich von den notwendigen Bedingungen zweiter Ordnung lediglichdadurch, dass ∇2f nicht nur positiv semidefinit sondern positiv definit sein muss.Man kann in diesem Sinne sagen, die hinreichenden Bedingungen sind „scharf“, dasie sich nur minimal von den notwendigen unterscheiden.

Satz 23.5Sei f : Rn → R zweimal stetig differenzierbar auf einer offenen Menge U ⊂ Rn. Giltin x∗ ∈ U die folgende hinreichende Optimalitätsbedingung zweiter Ordnung

(1) x∗ ist stationär, d.h. ∇f(x∗) = 0

(2) ∇2f(x∗) ist positiv definit, d.h. s>∇2f(x∗)s > 0 für alle s ∈ Rn, s 6= 0,

dann existieren ε > 0 und µ > 0, so dass

f(x)− f(x∗) ≥ µ

4‖x− x∗‖2 ∀x ∈ Bε(x

∗), (23.5)

d.h. x∗ ist ein isolierter lokaler Minimierer von (23.1).

Beweis: Da ∇2f(x∗) positiv definit ist, existiert ein µ > 0 (kleinster Eigenwert), sodass

s>∇2f(x∗)s ≥ µ ‖s‖2 ∀ s ∈ Rn. (23.6)Für ε > 0 klein genug ist Bε(x

∗) ⊂ U , und die Stetigkeit von ∇2f impliziert

‖∇2f(x∗)−∇2f(y)‖ ≤ µ

2∀ y ∈ Bε(x

∗), (23.7)

falls ε > 0 hinreichend klein ist. Für jedes y ∈ Bε(x∗) folgt damit

s>∇2f(y)s = s>∇2f(x∗)s+ s>(∇2f(y)−∇2f(x∗)

)s

≥ µ ‖s‖2 − ‖∇2f(y)−∇2f(x∗)‖‖s‖2 ≥ µ

2‖s‖2 ∀ s ∈ Rn,

(23.8)

also positive Definitheit von ∇2f(y). Sei nun x ∈ Bε(x∗) beliebig. Dann folgt aus

dem Mittelwertsatz die Existenz eines t ∈ [0, 1] mit

f(x)− f(x∗) = ∇f(x∗)>(x− x∗) +1

2(x− x∗)>∇2f(x∗ + t(x− x∗))(x− x∗)

=1

2(x− x∗)>∇2f(x∗ + t(x− x∗))(x− x∗),

Page 97: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

8. ALGORITHMEN DER FREIEN OPTIMIERUNG 97

wobei wir für die letzte Gleichheit die Stationarität von x∗ benutzt haben. Ausx, x∗ ∈ Bε(x

∗) folgt aber x∗ + t(x− x∗) ∈ Bε(x∗) für alle t ∈ [0, 1] und damit wegen

(23.8) schließlichf(x)− f(x∗) ≥ µ

4‖x− x∗‖2.

Da x ∈ Bε(x∗) beliebig war, folgt die Aussage. �

Bemerkung 23.6Die Ungleichung (23.5) wird auch als quadratische Wachstumsbedingung bezeichnet.Sie garantiert lokal um x∗ mindestens ein quadratisches Anwachsen der Zielfunktion.�

§ 24 Algorithmen der freien Optimierung

Wir wollen im Folgenden einen Algorithmus zur Lösung von (23.1) konstruieren.Die Idee dabei ist, ausgehend von einer gegebenen Iterierten xk ∈ Rn, k ∈ N, einenächste Iterierte xk+1 zu bestimmen, die einen besseren, d.h. kleineren Zielfunkti-onswert liefert. Da der Gradient ∇f(xk) bekanntlich in die Richtung der steilstenSteigung von f zeigt, könnte es eine gute Idee sein, in entgegengesetzter Richtung,d.h. in Richtung −∇f(xk), nach eine neuen Iterierten xk+1 zu suchen. Das führt auffolgenden Algorithmus, der auch als Spezialisierung des Subgradientenverfahrens(siehe § 11) für den Fall differenzierbarer Funktionen betrachtet werden kann.

Algorithmus 24.1 (Gradientenverfahren)

1: Wähle Startpunkt x0 ∈ Rn, setze k = 02: while ∇f(xk) 6= 0 do3: Setze sk = −∇f(xk).4: Bestimme eine Schrittweite σk > 0, so dass

f(xk + σksk) < f(xk). (24.1)

5: Update: Setze xk+1 = xk + σk sk, k = k + 1

6: end while

Bemerkung 24.2Die Abbruchbedingung in Schritt 2 motiviert sich über die notwendige Optimalitäts-bedinung aus Satz 23.2. Terminiert Algorithmus 24.1 nach endlich vielen Schritten,hat man i.A. also nur einen stationären Punkt berechnet. Zur Überprüfung derOptimalität können die hinreichenden Bedingungen zweiter Ordnung aus Satz 23.5herangezogen werden. In der numerischen Praxis wird natürlich eine Abbruchbe-dinung der Form ||∇f(xk)|| < ε mit einer geeigneten Toleranz ε verwendet, z.B.ε ∈ [10−6, 10−4]. �

Dass sich immer eine passende Schrittweite finden lässt und Algorithmus 24.1 somitdurchführbar ist, zeigt das folgende Lemma:

Lemma 24.3Sei f : Rn → R in x ∈ Rn differenzierbar und s = −∇f(x) 6= 0. Dann existiert einσ > 0, so dass f(x + σs) < f(x), d.h. in Richtung s lässt sich ein Abstieg von ferzielen.

Page 98: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

98 8. FREIE OPTIMIERUNG

Beweis: Da f in x differenzierbar ist, folgt

limσ↘0

f(x+ σs)− f(x)

σ= ∇f(x)>s = −‖∇f(x)‖2 < 0.

Für σ > 0 hinreichend klein, folgt daraus f(x+ σs) < f(x) �

Unter verschärften Voraussetzungen an die Schrittweiten lassen sich gewisse allge-meine Konvergenzaussagen für Algorithmus 24.1 zeigen:

Satz 24.4Sei f : Rn → R stetig differenzierbar. Algorithmus 24.1 terminiere nicht endlichund erzeuge Folgen {xk}, {sk} und {σk}. Erfüllt die Schrittweitenfolge anstelle von(24.1) sogar die Bedingung

f(xk + σksk) ≤ f(xk)− θ ‖∇f(xk)‖2 ∀ k ∈ N0 (24.2)

mit einem θ > 0, dann ist jeder Häufungspunkt x∗ von {xk} stationär, d.h.∇f(x∗) =0.

Bemerkung 24.5Die Bedingung, dass Algorithmus 24.1 nicht endlich terminiert, ist rein technisch,da wir sonst nur endlich viele Iterierte haben und gar nicht über Konvergenz redenkönnen. Natürlich ist es der Idealfall, wenn der Algorithmus endlich terminiert. �

Beweis von Satz 24.4: Aus (24.2) folgt f(xk+1) < f(xk) für alle k ∈ N0, so dassdie Folge {f(xk)} streng monoton fällt. (Man beachte, dass ∇f(xk) 6= 0, da derAlgorithmus sonst terminiert wäre.) Daher gilt

limk→∞

f(xk) = f ∗ ∈ R ∪ {−∞}. (24.3)

Sei nun x∗ ∈ Rn ein beliebiger Häufungspunkt von {xk} mit zugehöriger Teilfolge{xk`}`∈N, d.h. lim`→∞ x

k` = x∗. Die Stetigkeit von f und (24.3) implizieren dann

f ∗ = limk→∞

f(xk) = lim`→∞

f(xk`) = f(x∗),

woraus f ∗ > −∞ und limk→∞ f(xk) = f(x∗), also die Konvergenz der Zielfunkti-onswerte folgt. Als konvergente Folge ist {f(xk)} eine Cauchy-Folge, so dass

0 ≤ ‖∇f(xk)‖2 =1

θ

(f(xk)− f(xk +σks

k))

=1

θ

(f(xk)− f(xk+1)

)→ 0 für k →∞,

und damit∇f(xk)→ 0 für k →∞.

Daraus folgt aber erst recht ∇f(xk`) → 0 für ` → ∞, so dass die stetige Differen-zierbarkeit von f gerade

∇f(x∗) = lim`→∞∇f(xk`) = 0,

liefert. �

Schrittweiten, die (24.2) erfüllen, heißen effizient . Ein Verfahren, das unter geeigne-ten Voraussetzungen solche Schrittweiten berechnet, ist das Armijo-Verfahren (vgl.[Alt, 2002, Satz 4.5.5]).

Algorithmus 24.6 (Armijo-Verfahren)

1: Gegeben sei ein Punkt x ∈ Rn mit s = −∇f(x)2: Wähle β ∈ (0, 1), γ ∈ (0, 1), σ(0) > 0, setze m = 0

Page 99: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

8. ALGORITHMEN DER FREIEN OPTIMIERUNG 99

3: while f(x)− f(x+ σ(m)s) < γ σ(m)‖∇f(x)‖2 do4: Setze σ(m+1) = β σ(m), m = m+ 15: end while

In der Vorlesung “Nichtlineare Optimierung” werden das Armijo-Verfahren näheranalysiert und weitere Schrittweiten-Verfahren vorgestellt.

In der numerischen Praxis stellt man schnell fest, dass das Gradientenverfahreni.d.R. nur sehr langsam konvergiert. Bessere Konvergenzeigenschaften weisen Ver-fahren auf, die neben der ersten auch die zweite Ableitung der Zielfunktion, alsoKrümmungsinformation, berücksichtigen. Beispielsweise kann man anstelle des Anti-Gradienten in Schritt 3 von Algorithmus 24.1 die so genannte Newton-Richtung alsSuchrichtung wählen:

sk = −∇2f(xk)−1∇f(xk),

wobei ∇2f(xk) ∈ Rn×n die Hesse-Matrix von f bezeichnet. Das so entstehende Ver-fahren wird globalisiertes Newton-Verfahren genannt und konvergiert unter geeigne-ten Voraussetzungen lokal quadratisch, wie in der Vorlesung “Nichtlineare Optimie-rung” gezeigt wird. Allerdings ist die Hesse-Matrix oft sehr aufwendig zu berechnenund eventuell auch nicht invertierbar. Es gibt daher eine Vielzahl von Modifikatio-nen dieses Verfahrens, die diese Probleme umgehen. Mehr dazu in der Vorlesung“Nichtlineare Optimierung” ...

Page 100: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung
Page 101: Skript zur Vorlesung Einführung in die Optimierung · Inhaltsverzeichnis Kapitel1. Einführung5 1Grundbegriffe5 2KlassifikationundBeispiele6 3NotationundWiederholung8 Teil1. KonvexeOptimierung

Literaturverzeichnis

W. Alt. Nichtlineare Optimierung – Eine Einführung in Theorie, Verfahren undAnwendungen. Vieweg, Braunschweig, 2002.

V. Chvátal. Linear Programming. Freeman, New York, 1983.C. Geiger and C. Kanzow. Theorie und Numerik restringierter Optimierungsaufga-ben. Springer, Berlin, 2002.

F. Jarre and J. Stoer. Optimierung. Springer, Berlin, 2004.M. Padberg. Linear Optimization and Extensions. Springer, Berlin, 1999.

101