¨ t Berlin Technische Universita Fakult¨at II – Institut fu¨r Mathematik
Nichtlineare Optimierung Vorlesung im Winterse...
156 downloads
1015 Views
1MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
¨ t Berlin Technische Universita Fakult¨at II – Institut fu¨r Mathematik
Nichtlineare Optimierung Vorlesung im Wintersemester 05/06 Dietmar Ho¨mberg
Im WS 01/0.2 gehalten von F. Tr¨oltzsch. Grundlage der Vorlesung ist das Buch von Prof. Dr. Walter Alt, Universit¨at Jena. Das Skript ist nur f¨ ur den internen Gebrauch w¨ahrend dieser Vorlesung bestimmt.
Inhaltsverzeichnis 1 Optimierungsaufgaben
1
1.1
Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Grundlagen und Begriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.3
Existenz von L¨osungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.4
Konvexe Optimierungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . .
7
1.5
Weitere wichtige Beispiele von Optimierungsaufgaben . . . . . . . . . . . . 10
1.6
Numerische L¨osung von Optimierungsaufgaben
1.7
Optimierungs-Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.7.1
Programmbibliotheken . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7.2
Interaktive Programmsysteme . . . . . . . . . . . . . . . . . . . . . 13
2 Ableitungsfreie Verfahren 2.1
. . . . . . . . . . . . . . . 13
14
Simplexverfahren von Nelder und Mead . . . . . . . . . . . . . . . . . . . . 14 2.1.1
Grundkonstruktionen . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2
Ablauf des Verfahrens . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2
Mutations-Selektions-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3
Anwendung: Nichtlineare Regression . . . . . . . . . . . . . . . . . . . . . 19
3 Probleme ohne Restriktionen – Theorie 3.1
3.2
20
Optimalit¨atsbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.1.1
erster Ordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.2
Notwendige Bedingungen zweiter Ordnung . . . . . . . . . . . . . . 22
3.1.3
Hinreichende Bedingungen zweiter Ordnung . . . . . . . . . . . . . 23
Konvexe Optimierungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . 25
4 Probleme ohne Restriktionen – Verfahren
29
4.1
Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2
Das Newton-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3
Abstiegsverfahren – allgemeine Aussagen . . . . . . . . . . . . . . . . . . . 34
4.4
4.3.1
Effiziente Schrittweiten . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3.2
Gradientenbezogene Richtungen . . . . . . . . . . . . . . . . . . . . 35
4.3.3
Allgemeine Konvergenzs¨atze . . . . . . . . . . . . . . . . . . . . . . 38
Schrittweitenverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4.1
Exakte Schrittweite . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4.2
Schrittweite nach Armijo . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.3
Schrittweite nach Powell . . . . . . . . . . . . . . . . . . . . . . . . 44
4.5
Das Gradientenverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.6
Ged¨ampftes Newton-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.7
4.8
4.6.1
Das Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.6.2
Interpretation der Newton-Richtung . . . . . . . . . . . . . . . . . . 47
4.6.3
Konvergenz des Verfahrens . . . . . . . . . . . . . . . . . . . . . . . 48
Variable Metrik- und Quasi-Newton-Verfahren . . . . . . . . . . . . . . . . 49 4.7.1
Allgemeine Verfahrensvorschrift . . . . . . . . . . . . . . . . . . . . 49
4.7.2
Globale Konvergenz von Variable-Metrik-Verfahren . . . . . . . . . 50
4.7.3
Quasi-Newton-Methoden . . . . . . . . . . . . . . . . . . . . . . . . 50
4.7.4
BFGS-Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.5
Das BFGS-Verfahren f¨ ur quadratische Optimierungsprobleme . . . 53
4.7.6
Das BFGS-Verfahren f¨ ur nichtlineare Optimierungsaufgaben . . . . 55
Verfahren konjugierter Richtungen
. . . . . . . . . . . . . . . . . . . . . . 55
4.8.1
CG-Verfahren f¨ ur quadratische Optimierungsprobleme . . . . . . . 55
4.8.2
Analyse des CG-Verfahrens . . . . . . . . . . . . . . . . . . . . . . 58
4.8.3
Vorkonditionierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.8.4
CG-Verfahren f¨ ur nichtlineare Optimierungsprobleme . . . . . . . . 60
5 Probleme mit linearen Restriktionen – Theorie
61
5.1
Ein Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.2
Optimalit¨atsbedingungen erster Ordnung . . . . . . . . . . . . . . . . . . . 62
5.3
Optimalit¨atsbedingungen zweiter Ordnung . . . . . . . . . . . . . . . . . . 68
5.4
5.5
5.3.1
Notwendige Bedingungen . . . . . . . . . . . . . . . . . . . . . . . . 68
5.3.2
Hinreichende Bedingungen . . . . . . . . . . . . . . . . . . . . . . . 69
Gleichungsnebenbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.4.1
Optimalit¨atsbedingungen erster Ordnung . . . . . . . . . . . . . . . 73
5.4.2
Bedingungen zweiter Ordnung bei Gleichungsrestriktionen . . . . . 74
5.4.3
Nullraum-Matrizen . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4.4
Quadratische Optimierungsprobleme . . . . . . . . . . . . . . . . . 79
5.4.5
Dynamische Optimierungsprobleme . . . . . . . . . . . . . . . . . . 80
Affine Ungleichungsnebenbedingungen . . . . . . . . . . . . . . . . . . . . 85
5.6
5.5.1
Problemdefinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.5.2
Notwendige Optimalit¨atsbedingungen . . . . . . . . . . . . . . . . . 85
5.5.3
Hinreichende Optimalit¨atsbedingungen . . . . . . . . . . . . . . . . 90
5.5.4
Strikte Komplementarit¨at . . . . . . . . . . . . . . . . . . . . . . . 92
5.5.5
Probleme mit Variationsbeschr¨ankungen (box constraints) . . . . . 93
Lineare Optimierungsprobleme . . . . . . . . . . . . . . . . . . . . . . . . . 95
6 Probleme mit linearen Restriktionen-Verfahren 6.1
97
Quadratische Optimierungsprobleme . . . . . . . . . . . . . . . . . . . . . 97 6.1.1
Aufgaben mit Gleichungsrestriktionen . . . . . . . . . . . . . . . . . 97
6.1.2
Aufgaben mit Ungleichungsrestriktionen . . . . . . . . . . . . . . . 100
6.2
Gleichungsnebenbedingungen nichtquadratischer Zielfunktion . . . . . . . . 109
6.3
Ungleichungsnebenbedingungen – nichtquadratische Zielfunktionen . . . . . 112
7 Probleme mit nichtlinearen Restriktionen – Theorie
115
7.1
Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.2
Notwendige Optimalit¨atsbedingungen erster Ordnung . . . . . . . . . . . . 116
7.3
Optimalit¨atsbedingungen zweiter Ordnung . . . . . . . . . . . . . . . . . . 129
8 Probleme mit nichtlinearen Restriktionen-Verfahren
131
8.1
Das Lagrange-Newton-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 131
8.2
Sequentielle quadratische Optimierung . . . . . . . . . . . . . . . . . . . . 133
1
Optimierungsaufgaben
1.1
Literatur
1. Alt, W., Nichtlineare Optimierung. Vieweg, Braunschweig/Wiesbaden 2002. 2. Gill, P.E., Murray, W., and M.H. Wright, Practical Optimization. Academic Press, London 1981. 3. Kelley, C.T., Iterative Methods for Optimization. SIAM, Philadelphia 1999. 4. Nocedal, J. and Wright, S.J., Numerical Optimization. Springer, New York 1997. 5. Spelluci, P., Numerische Verfahren der nichtlinearen Optimierung. Birkh¨auser, Basel 1993. 6. Luenberger, D.G., Optimization by Vector Space Methods. Wiley, 1969. 7. Luenberger, D.G., Linear and Nonlinear Programming. Addison Wesley, London 1984. 8. Großmann, C. und Terno, J, Numerik der Optimierung. Teubner-Verlag, Stuttgart 1993. 9. Mor´e, J.J. and Wright, S.J., Optimization Software Guide. SIAM, Philadelphia 1993.
1.2
Grundlagen und Begriffe
Wir untersuchen in diesem Kurs die Aufgabe, ein Minimum einer gegebenen Funktion f : Rn → R zu berechnen. Dazu einige Beispiele und Grundbegriffe: Beispiel 1.2.1 • f (x) = x2 , f : R → R hat genau ein Min bei x˜ = 0. • f (x) = x, f : R → R ist nicht nach unten beschr¨ankt; die Minimumaufgabe ist unl¨osbar. Beispiel 1.2.2 f (x1 , x2 ) = 21 (x21 + x22 ) − cos(x21 ) − cos(x22 ), f : R2 → R hat ein (strenges) globales Minimum und mehrere (strenge) lokale Minima und Maxima.
1
25 20 15 10 5 0 −5 5
0 5 0 −5
−5
Abb. 9.1 und Text Text und Abb. 9.1 Bezeichnungen: F¨ ur x ∈ Rn heißt µ n ¶1/2 P 2 xi kxk =
euklidische Norm
i=1
B(x, r) = {y ∈ Rn | ky − xk < r}
B(x, r) = cl B(x, r)
xi x(k)
offene Kugel
abgeschlossene Kugel
i-te Komponente von x ¡ ¢∞ k-tes Glied einer Folge von Vektoren x(k) k=1
Im Weiteren sei D ⊂ Rn eine fest gegebene offene Menge, eine Menge F ⊂ D sowie f : D → R. Wir betrachten das Optimierungsproblem (P)
min f (x) x∈F
Man nennt f - Zielfunktion F - zul¨ assiger Bereich oder zul¨assige Menge
Im Fall F = D heißt (P ) unrestringierte oder freie Optimierungsaufgabe (wie etwa in Bsp. 1.2.1). Das mutet f¨ ur eine echte Teilmenge D ⊂ Rn etwas eigenartig an, l¨asst sich aber leicht einsehen. Ist F durch Nebenbedingungen gegeben, so heißt (P )
2
Optimierungsproblem mit Nebenbed. oder restringiertes Opt.-problem. In der Regel ist F durch Gleichungen und Ungleichungen definiert. Die Elemente von F heißen zul¨ assige Punkte. Beispiel 1.2.3
min x3
(x∈R)
bei x ≥ 1 Es handelt sich um eine Aufgabe mit einer linearen Ungleichungsrestriktion, D = R, F = [1, ∞), die L¨osung ist x˜ = 1. Definition 1.2.1 Ein Punkt x˜ ∈ F heißt • lokales Minimum von f auf F oder lokale L¨ osung von (P ), wenn ∃ r > 0, so dass f (x) ≥ f (˜ x)
∀ x ∈ F ∩ B(˜ x, r)
• analog strenges lokales Min., wenn entsprechend f (x) > f (˜ x)
∀ x ∈ F ∩ B(˜ x, r),
x 6= x˜
• analog globales Min. bzw. globale L¨ osung, wenn f (x) ≥ f (˜ x)
∀x ∈ F
• strenges globales Min. bzw. strenge globale L¨osung, wenn f (x) > f (˜ x)
∀ x ∈ F,
x 6= x˜
gilt. Bei nichtlinearen Optimierungsaufgaben k¨o¡nnen ¢ viele lokale oder globale Minima auftre1 ten, wie etwa bei f (x) = sin x, f (x) = x sin x . Bemerkung: Wir entwickeln unsere Theorie f¨ ur den Fall der Minimierung von f . Den Fall der Suche nach Maxima x˜, f (x) ≤ f (˜ x)
∀x ∈ F
¨ f¨ uhren wir wegen der Aquivalenz zu −f (x) ≥ −f (˜ x) auf die Minimierung von f˜ := −f zur¨ uck.
3
Beispiel 1.2.4 (Lineare Regression) Gesucht ist eine lineare Funktion η(ξ) = x1 ξ + x2 mit unbekannten Koeffizienten x1 , x2 , welche am besten zu gegebenen Wertepaaren (ξi , ηi ), i = 1, . . . , m (z.B. Messwerten) passt. Wir setzen η(ξ) = g (x1 , x2 , ξ) = x1 ξ + x2 und wollen x1 , x2 so w¨ahlen, dass die Zielfunktion f (x) = f (x1 , x2 ) = =
m P
(ηi − g (x1 , x2 , ξi ))2
i=1 m P
(ηi − x1 ξi − x2 )2
i=1
minimiert wird. f ist ein Polynom zweiten Grades in x1 , x2 , also eine quadratische Zielfunktion. η
(η 6 ,ξ6 )
(η ,ξ ) 3
(η 5 ,ξ 5 )
3
(η ,ξ ) 4
4
(η ,ξ ) 1
1
(η ,ξ ) 2
2
ξ
Folgende Fragestellungen werden wir in der Vorlesung vor allem untersuchen: • Existenz und Eindeutigkeit von L¨osungen • Notwendige Optimalit¨atsbedingungen • Hinreichende Optimalit¨atsbedingungen • Numerische Verfahren zur L¨osung von Optimierungsaufgaben.
1.3
Existenz von L¨ osungen
Grundlage f¨ ur die meisten Existenzbeweise ist der bekannte
4
Satz 1.3.1 (Weierstraß) Ist f : Rn ⊃ D → R stetig und K ⊂ D kompakt, dann nimmt f auf K sein Infimum (bzw. sein Supremum) an, d. h., es existiert ein globales Minimum (bzw. Maximum) von f auf K. Definition 1.3.1 f : D → R, D ⊂ Rn , α ∈ R. Die Mengen N (f, α) = {x ∈ D α} heißen Niveaumengen von f .
|
f (x) ≤
f(x)
α
x N(f,α )
Satz 1.3.2 D ⊂ Rn , f : D → R stetig und F ⊂ D abgeschlossen. F¨ ur mindestens ein w ∈ F sei die Niveaumenge N (f, f (w)) = {x ∈ D | f (x) ≤ f (w)} kompakt. Dann gibt es (mindestens) ein globales Minimum von f auf F. Beweis: Es sei α = inf x∈F f (x). Offenbar gilt α ≤ f (w). F ∩ N (f, f (w)) ist kompakt, und nur in dieser Menge k¨onnen Elemente von F liegen, deren Funktionswerte kleiner oder gleich f (w) sind. Somit α=
inf
x∈F ∩N (f,f (w))
f (x) = f (˜ x) ,
wobei x˜ ∈ F nach dem Satz von Weierstraß existiert. Typische Anwendungen dieses Prinzips sind die folgenden zwei Aussagen:
5
2
Folgerung 1.3.1 D, F wie in Satz 1.2.1, f : Rn → R stetig. Zus¨atzlich habe f die Eigenschaft lim f (x) = ∞ .
kxk→∞
Dann besitzt die Aufgabe min f (x) x∈F
mindestens eine globale L¨osung. ¨ Beweis: Wegen limkxk→∞ f (x) = ∞ sind alle Niveaumengen N (f, α) kompakt (Ubungsaufgabe). Der Rest ist Folgerung aus dem letzten Satz. 2
Eine (n, n)-Matrix H heißt positiv semidefinit, wenn xT Hx ≥ 0 f¨ ur alle x ∈ Rn gilt, sowie positiv definit, wenn xT Hx > 0 ∀x ∈ Rn , x 6= 0 Man zeigt mit einem Kompaktheitsschluss, dass positive Definitheit ¨aquivalent ist zur Existenz eines α > 0, so dass xT Hx ≥ αkxk2
∀x ∈ Rn
¨ (Ubungsaufgabe). Offenbar gilt dann xT Hx → ∞, kxk → ∞. Beispiel 1.3.1 (Unrestringierte quadratische Optimierungsaufgabe) Wir betrachten (QU)
min f (x) = 12 xT Hx + bT x
x∈Rn
mit gegebenem b ∈ Rn und positiv definiter (n, n)-Matrix H. Sie zeigen leicht, dass ¨ limkxk→∞ f (x) = ∞ gilt (Ubungsaufgabe). Wegen Folgerung 1.3.1 hat (QU) damit mindestens eine globale L¨osung. Beispiel 1.3.2 (Lineare Regression aus Bsp 1.2.4) Ausmultiplizieren der Zielfunktion ergibt
6
f (x)
= =
m P
(ηi − (x1 ξi + x2 ))2
i=1 m X
ηi2
|i=1{z }
−2
m X i=1
|
c
mit
ηi (ξi x1 + x2 ) {z
}
+
m X
(x1 ξi + x2 )2
|i=1
{z
= 21 xT Hx + bT x + c P m m P 2 ξ ξi 1 i 1 H = 2 P m ξi m 1
}
1 T x Hx 2
bT x
P m ξi ηi b = −2 1P . m ηi 1
¨ Sind mindestens zwei der ξi verschieden, so ist H positiv definit (Ubungsaufgabe). Damit ist die Aufgabe der linearen Regression in diesem Fall l¨osbar. Sind alle ξi gleich, so ist sie auch nicht sinnvoll gestellt!
1.4
Konvexe Optimierungsaufgaben
Unter allen Optimierungsaufgaben haben konvexe die sch¨onsten Eigenschaften! Es gibt dazu auch eine gut ausgebaute konvexe Analysis (z. B. siehe Webster, R., Convexity. Oxford University Press 1994, oder Rockafellar, R.T., Convex Analysis. Princeton University Press 1970). Definition 1.4.1 Eine Menge C ⊂ Rn heißt konvex, falls f¨ ur je 2 beliebige x, y ∈ C auch die Strecke [x, y] = {z = (1 − t)x + ty | 0 ≤ t ≤ 1} in C enthalten ist: x, y ∈ C ⇒ [x, y] ⊂ C. x
x C
C
y y
konvexe Menge
nicht konvexe Menge
Definition 1.4.2 Sei C ⊂ Rn konvex und nichtleer, C ⊂ D. Eine Funktion f : D → R heißt konvex auf C, wenn
7
f ((1 − t)x + ty) ≤ (1 − t)f (x) + tf (y)
∀x, y ∈ C, ∀t ∈ [0, 1]
Gilt die versch¨arfte Beziehung f ((1 − t)x + ty) < (1 − t)f (x) + tf (y) ∀x, y ∈ C, x 6= y ∀t ∈]0, 1[ , so heißt f strikt oder streng konvex auf C.
f
f
konvexe Funktion
nicht konvexe Funktion
f(y)
f(y)
f(x)
f(x)
y
x
x
y
Beispiel 1.4.1 f (x) = x ist konvex, f (x) = x2 streng konvex.
Definition 1.4.3 Nun betrachten wir f : D → R, D ⊂ Rn offen, nichtleer, F ⊂ D. Ist f konvex auf F, so heißt das Problem min f (x) x∈F
(P)
konvexe Optimierungsaufgabe. Schon der n¨achste Satz zeigt, welche sch¨onen Eigenschaften konvexe Probleme haben. Satz 1.4.1 Die obige Aufgabe (P) sei eine konvexe Optimierungsaufgabe. Dann ist jedes lokale Minimum von (P) auch ein globales. Die Menge aller L¨osungen von (P) ist konvex. Beweis: (i) Es sei x˜ lokale L¨osung, d. h., mit einem r > 0 gilt f (x) ≥ f (˜ x) ∀x ∈ F ∩ B(˜ x, r) . Zu zeigen ist
8
(∗)
f (y) ≥ f (˜ x) ∀y ∈ F. Wir w¨ahlen ein y ∈ F und betrachten x˜ + t(y − x˜) f¨ ur kleine t > 0. Es gilt x˜ + t(y − x˜) ∈ F
∀t ∈ [0, 1]: Denn
x˜ + t(y − x˜) = (1 − t)˜ x + ty ∈ F, da F konvex. Es gilt auch x˜+t(y−˜ x) ∈ B(˜ x, r) f¨ ur alle hinreichend kleinen t, d. h. t ∈ [0, t0 ], t0 > 0. Deshalb wegen (∗) f (˜ x)≤f ((1 − t)˜ x + ty) ≤ (1 − t)f (˜ x) + tf (y). ↑
(∗)
Durch Umstellen ergibt sich f (˜ x) ≤ f (y). (ii) Nun seien x und x˜ L¨osungen, d.h. f (˜ x) = f (x) = α ˜ = min f. Dann f ((1 − t)˜ x + tx) ≤ (1 − t)f (˜ x) + tf (x) = α ˜ = min ⇒ auch (1 − t)˜ x + tx ist L¨osung.
2
Satz 1.4.2 D ⊂ Rn , F ⊂ D konvex, F 6= ∅, f : D → R streng konvex. Hat (P) eine L¨osung x˜, dann ist x˜ eindeutig bestimmt und ein strenges Minimum von f in F. Beweis: Es seien x, y zwei Minima von f , also nach dem letzten Satz globale Minima. Damit gilt f (x) = f (y) = α = min f (x) . x∈F
Angenommen, es gilt x 6= y. Dann liefert z = 21 (x + y) einen kleineren Wert als α, denn µ f (z) = f
1 1 x+ y 2 2
¶ < ↑
strenge Konvexit¨ at
1 1 1 1 f (x) + f (y) = α + α = α. 2 2 2 2
Außerdem gilt z ∈ F und insgesamt widerspricht das der Optimalit¨at von x, y. Damit x = y, strenges Minimum 2 Beispiel 1.4.2 f (x) = 21 xT Hx + bT x ¨ Ist H positiv definit, so ist f streng konvex (Ubungsaufg.). Folgerung: Sind zwei der Werte ξi verschieden, so ist das Zielfunktional bei der Aufgabe der linearen Regression streng konvex und daher die L¨osung eindeutig bestimmt.
9
1.5
Weitere wichtige Beispiele von Optimierungsaufgaben
Beispiel 1.5.1 (Nichtlineare Regression) Bei der linearen Regression war eine affin-lineare Funktion η(ξ) = x1 ξ + x2 zu bestimmen. Allgemeiner kann η eine nichtlineare Funktion von ξ sein, gegeben durch einen nichtlinearen Ansatz η(ξ) = g(x1 , x2 , ξ) oder allgemeiner η(ξ) = g(x1 , . . . , xn , ξ) mit einem unbekannten Vektor x ∈ Rn , z. B. g = x1 eξx2 + x3 . ⇒ Minimierung von
f (x) =
m P
(ηi − g(x, ξi ))2
i=1
Typ:
f (x) =
m X
(fi (x))2
fi = ηi − g(·, ξi ) .
i=1
Nun betrachten wir noch einige ber¨ uhmte pathologische Testfunktionen, an denen gern Algorithmen getestet werden. Beispiel 1.5.2 Rosenbrock-Funktion ( Banana shaped valley“) ” f (x1 , x2 ) = 100(x2 − x21 )2 + (1 − x1 )2 | {z } | {z } definiert kippt leicht das Tal an (Parabel)
10
10
5 −1 0 0 −5
1
2 1
2 0 −1
3 −2 −3
11
4
Beispiel 1.5.3 (Himmelblau) f (x1 , x2 ) = (x21 + x2 − 11)2 + (x1 + x22 − 7)2 4 lokale Minimalstellen, die zugleich globale Minimalstellen mit Funktionswert 0 sind; 4 Sattelpunkte und ein lokales Maximum bei (−0.270845, −0.923039)T .
900 800 700 600 500 400 300 200 100 0 5 5 0 0 −5
−5
Beispiel 1.5.4 (Bazaraa-Shetty) f (x1 , x2 ) = (x1 − 2)4 + (x1 − 2x2 )2 Globales Min. bei (2, 1). Die Hesse-Matrix ist an dieser Stelle singul¨ar, was bei manchen Algorithmen zu Problemen f¨ uhren kann.
1.4 1.2 1 0.8 0.6 0.4 0.2 0 1.3 1.2
2.6 1.1
2.4 2.2
1 2
0.9
1.8 0.8
1.6
Beispiel 1.5.5 f (x1 , · · · , x5 ) = 2x21 + 2x22 + x23 + x24 + 12 x25 − 4(x1 + x2 ) − 2(x3 + x4 ) − x5 + 6.5 ¨ Globales Min. bei x˜ = (1, 1, 1, 1, 1)T , f (˜ x) = 0 (Ubungsaufgabe).
12
Beispiel 1.5.6 (Dixon) 2
2
f (x1 , · · · , x10 ) = (1 − x1 ) + (1 − x10 ) +
g X
(x2i − xi+1 )2
i=1
Globales Minimum bei x˜ = (1, · · · , 1)T .
1.6
Numerische L¨ osung von Optimierungsaufgaben
Wir werden die in der Vorlesung zu untersuchenden Optimierungsverfahren numerisch l¨osen durch iterative Verfahren, die teilweise nach endlich vielen Schritten eine L¨osung ermitteln oder einem Grenzwert zustreben: lim x(k) = x˜.
k→∞
Dabei werden wir Optimierungsaufgaben verschiedener Struktur untersuchen (z. B. linearquadratische Aufgaben, nichtlineare Funktionale mit linearen Restriktionen, allgemeine nichtlineare Probleme, nicht jedoch lineare oder diskrete Optimierungsaufgaben.)
1.7
Optimierungs-Software
1.7.1
Programmbibliotheken
Empfehlenswert und bei uns verf¨ ugbar: • NAG-Library
(Numerical Algorithms Group) Fortran Codes
• minpack
(ist public domain software)
1.7.2
Interaktive Programmsysteme
• MATLAB
(MATrix LABoratory)
kommerziell
• Scilab
(SCIentific, LABoratory) kostenlos von INRIA, Paris www.inria.fr
Entscheidungshilfe im Internet: Hans D. Mittelmann, http://plato.la.asu.edu/guide.html Software-Guide: Mor´e and Wright, [9]
13
2
Ableitungsfreie Verfahren
Oft ist die Berechnung der Ableitung von f so aufwendig oder – bei nicht differenzierbarem f – unm¨oglich, so dass man Verfahren entwickelt hat, die ohne Ableitungen auskommen. Wir behandeln hier kurz zwei davon, um die unrestringierte Aufgabe min f (x)
(PU)
x∈Rn
numerisch zu l¨osen.
2.1 2.1.1
Simplexverfahren von Nelder und Mead Grundkonstruktionen
Bemerkung: Das Verfahren hat nichts mit der Simplexmethode der linearen Optimierung zu tun! Der Name kommt von Definition 2.1.1 x0 , . . . , xn ∈ Rn seien affin unabh¨angig, d. h. xi − x0 , i = 1, . . . , n sind linear unabh¨angig. Die konvexe H¨ ulle der Punkte x0 , . . . , xn ( S=
n X
λi xi | λi ≥ 0, i = 0, . . . , n,
i=0
n X
) λi = 1
i=0
heißt (n-dimensionales) Simplex mit den Ecken x0 , . . . , xn .
• Beim Start des Verfahrens wird ein Simplex vorgegeben. • Man ermittelt die (bzw. eine) Ecke mit dem gr¨oßten Funktionswert, © ª f (xm ) = max f (x0 ), . . . , f (xn ) • Danach wird ein neuer Punkt ermittelt, der einen kleineren Funktionswert ergibt und xm ersetzt. Dazu werden folgende Konstruktionen benutzt:
Def.
sj =
1 n
n P
xi
Schwerpunkt der (anderen) Ecken bzgl. xj
i=0 i6=j
14
j
x
x
n=2: S
j
x
j
x
j j S −x
n=2: S
Konstruktionsprinzipien:
j
xr xe
γ=1/2 γ : Reflektionskonstante
• Reflektion von xj an sj xr = sj + γ(sj − xj ), 0 < γ ≤ 1
• Dieses eben konstruierte xr kann weiter nach außen bewegt werden: Expansion von xr in Richtung sj − xj (d. h. in Richtung xr − sj ) xe = sj + β(xr − sj ), β > 1 Expansionskonstante j
x
x j− Sj xc S
j
• Kontraktion (3 Typen) (i) Partielle Kontraktion innen xc = sj +α(xj −sj )
0 < α < 1 Kontraktionskonstante
(ii) Partielle Kontraktion außen xc = sj + α(xr − sj ) j
x
j
S
x j − Sj
(iii) Totale Kontraktion Ersetze alle xi außer xj durch xˆi = xi + 21 (xj − xi ) = 12 (xi + xj )
15
xc xr
j
x
16
2.1.2
Ablauf des Verfahrens
Die einfachste Variante l¨auft so ab: Vorab werden gew¨ahlt α ∈ (0, 1) β>1 γ ∈ (0, 1]
Kontraktionskonstante Expansionskonst. Reflexionskonstante
Folgende Schritte laufen ab: 1. Wahl eines Startpunkts x0 ∈ Rn , Festlegung der anderen n Ecken des Startsimplexes durch xj = x0 + ej , j = 1, . . . , n , wobei ej den j-ten Standardeinheitsvektor bezeichnet. 2. Bestimme (die) Ecken mit maximalem und minimalem Funktionswert: xm , xl mit © ª f (x ) = max f (x0 ), . . . , f (xn ) © ª f (xl ) = min f (x0 ), . . . , f (xn ) m
und bestimme den Schwerpunkt der Ecken bez¨ ugl. xm n P xi sm = n1
x 2= x m angenommene Situation: e2
S
i=0
i6=m
x1 = xl
e1
x0
3. Reflektion von xm am Schwerpunkt sm
m
xm Reflektion und Expansion
xr = sm + γ(sm − xm ) 4. Aufbau des neuen Simplexes Dazu eine Fallunterscheidung
m
S
(i)
xl
x0
f (xr ) < f (xl )
xr
Dann war die Richtung gut, und man probiert noch etwas mehr: Expansion von xr xe = sm + β(xr − sm ) Man ersetzt xm durch den besseren der beiden Punkte: ½ e ¾ x , f (xe ) < f (xr ) m x˜ = xr , f (xr ) ≤ f (xe ) xm := x˜m
xe
Neues Simplex
17 xl
x0 xm
(ii)
xm l
r
Partielle innere Kontraktion
j
f (x ) ≤ f (x ) ≤ max {f (x ), j 6= m} Nichts gewonnen, nichts verloren – ersetze xm durch xr xm := xr
xc
(iii)
m
r
S
j
f (x ) > max {f (x ), j 6= m} • Wenn f (xr ) ≥ f (xm ) : Partielle innere Kontraktion
xl
x0 xm
Partielle äußere Kontraktion
xc = sm + α(xm − sm ) • Wenn f (xr ) < f (xm ) : Partielle ¨außere Kontraktion xc = sm + α(xr − sm ) c
m
m
• Wenn f (x ) < f (x ), dann ersetze x durch x m
x := x
m
S
c
c
xl
x0 xc
• Wenn f (xc ) ≥ f (xm ), dann f¨ uhre eine totale Kontraktion bez¨ uglich xl aus: xr Neues Simplex
¡ ¢ x := xi + xl , i 6= l i
1 2
5. Gehe mit dem neu ermittelten Simplex (Ecken {x0 , . . . , xn }) zu Schritt 2. Das Verfahren erzeugt Eckenfolgen {x(k,0) , . . . , x(k,n) }∞ k=1 und stellt sicher, dass ¡ (k+1,l) ¢ ¡ (k,l) ¢ f x ≤f x gilt. In gewissem Sinne kann man x(k,l) als den aktuellen Iterationspunkt bezeichnen. Allgemeine Konvergenzs¨atze gibt es nicht. Empirische Untersuchungen zeigen 0.4 ≤ α ≤ 0.6, 2 ≤ β ≤ 3, γ = 1 sind zu empfehlen. Verf¨ ugbare Codes:
EO4CCF (NAG) fmins (MATLAB 5) fminsearch (MATLAB 6)
Das Verhalten des Verfahrens wird am Beispiel der Rosenbrock-Funktion deutlich: Startpunkt: (−1.9, 2)T
EO4CCF: fmins:
stoppt nach 186 Funktionsauswertungen bei (1.000011, 1.000023)T nach 210 Auswertungen bei (1.00002, 1.00003)T
18
2.2
Mutations-Selektions-Verfahren
• Zuf¨allige “Mutation” der aktuellen Iterierten • Auswahl der “brauchbaren” Iterierten Diese Verfahren geh¨oren zur Klasse von Methoden der stochastischen Suche. Verfahrensgrundprinzip: 1. W¨ahle Startpunkt x(0) ∈ Rn k := 0 ¨ 2. Berechne neuen Punkt v (k) durch zuf¨allige Anderung von x(k) (Zufallszahlen), z. B. (k)
vi
³ ´ (k) (k) = xi + δk ri − 0.5
i = 1, · · · , n
(k)
ri : Zufallszahlen aus [0, 1] δk : Schrittweiten 3.
½ x
Numerisches Resultat:
2.3
(k+1)
=
¡ ¢ ¡ ¢ v (k) falls f v (k) < f xk x(k) sonst
F¨ ur Beispiel 1.5.2 (Rosenbrock) werden 2776 Schritte ben¨otigt.
Anwendung: Nichtlineare Regression
(Siehe Beispiel 1.5.1) 10 Messwertpaare ξi ηi
1 1
Ansatz:
2 3 4 5 6 7 8 9 10 1.1 1.2 1.35 1.55 1.75 2.5 3 3.7 4.5 η(ξ) = g(x, ξ) = x1 eξx2 (P)
min f (x) = f (x1 , x2 ) =
Anwendung der MATLAB-Implementierung gibt µ x˜ =
0.632067 0.195061
P10 ¡ i=1
fmins
ηi − x1 eξi x2
des Nelder-Mead-Verfahrens er-
¶ f (˜ x) = 0.19041
¨ Weitere Beispiele werden in den Ubungen diskutiert.
19
¢2
3 3.1
Probleme ohne Restriktionen – Theorie Optimalit¨ atsbedingungen
3.1.1
erster Ordnung
Im gesamten Kapitel 3 wird vorausgesetzt: D ⊂ Rn offen, nichtleer f : D → R mit gewissen Differenzierbarkeitsannahmen Wir betrachten die unrestringierte Aufgabe (PU)
min f (x) x∈D
Satz 3.1.1 (Fermat) f besitze in x˜ ∈ D ein lokales Minimum und sei an der Stelle x˜ differenzierbar. Dann gilt ∇f (˜ x) = 0
Notwendige Bedingung 1. Ordnung
Beweis: Grundwissen aus der Analysis.
(3.1) 2
Bemerkung: Bei uns sind Vektoren stets Spaltenvektoren. Deshalb ist f 0 (x) ein Zeilenvektor und ∇f (x) ein Spaltenvektor. Es gilt ∇f (x) = f 0 (x)T . Beispiel 3.1.1 f (x) = 21 xT Hx + bT x
H ∈ R(n,n) , b ∈ Rn
symmetrisch
Hier gilt ∇f (x) = Hx + b . Eine L¨osung der Aufgabe min f (x)
x∈Rn
muss also die Gleichung Hx = −b erf¨ ullen. Ist H außerdem positiv definit, so hat das 2 Effekte. Erstens existiert eine L¨osung (Bsp 1.3.1). Außerdem ist unser Gleichungssystem eindeutig l¨osbar. Damit ist x˜ = −H −1 b die eindeutig bestimmte L¨osung. Anwendung: Lineare Regression (Fortsetzg. Bsp 1.3.2)
20
Wir hatten
P m m P ξi2 ξi 1 1 H = 2 P , m ξi m 1
P m ξi ηi b = −2 1P m ηi 1
erhalten. Ist H positiv definit, dann ergibt sich f¨ ur die L¨osung der Regressionsaufgabe das Gleichungssystem µm ¶ µm ¶ m P 2 P P ξi x1 + ξi x2 = − ξi ηi 1
m P
1
ξi x1
+
1
m
x2 = −
m P
ηi .
1
1
Bestimmen Sie die L¨osung! Definition 3.1.1 Ist f in x˜ ∈ D differenzierbar und gilt ∇f (˜ x) = 0, so heißt x˜ station¨ arer Punkt von f . Bemerkung: Optimierungsalgorithmen berechnen in der Regel station¨are Punkte. Diese m¨ ussen keineswegs lokale oder globale Minima (Maxima) ergeben. Bsp: f (x) = x3 bei x = 0. Beispiel 3.1.2 Rosenbrock-Funktion: Hat genau einen station¨aren Punkt bei x˜ = µ ¶ −400 x1 (x2 − x21 ) − 2(1 − x1 ) ∇f (x) = . 200(x2 − x21 )
¡1¢ 1
Ist die Zielfunktion f differenzierbar, so heißt (PU) glatte oder differenzierbare Optimierungsaufgabe. Bei vielen Anwendungen ist f nicht u ¨berall differenzierbar, ein typisches Beispiel ist f (x) = kxk bei x = 0. Mit nichtglatter Optimierung werden wir uns kaum befasssen. Allerdings geben wir folgendes n¨ utzliches Resultat an. Definition 3.1.2 f heißt in x ∈ D in Richtung h ∈ Rn richtungsdifferenzierbar, wenn die Richtungsableitung f 0 (x, h) := lim t↓0
f (x + th) − f (x) t
existiert. Gilt dies f¨ ur alle Richtungen h, so heißt f richtungsdifferenzierbar an der Stelle x. Satz 3.1.2 Ist x˜ ein lokales Minimum von (PU) und ist f an der Stelle x˜ ∈ D richtungsdifferenzierbar, dann gilt f 0 (˜ x, h) ≥ 0 ∀h ∈ Rn
“Variationsungleichung”
21
(3.2)
Beweis: D ist offen, damit ∃ r > 0: f (x) ≥ f (˜ x) ∀x ∈ B(˜ x, r). Sei h ∈ Rn beliebig, aber fest. Dann gilt x˜ + th ∈ B(˜ x, r) f¨ ur betragsm¨aßig kleine t, somit f (˜ x + th) − f (˜ x) ≥ 0 ⇒
f (˜ x+th)−f (˜ x) t
≥0
⇒
f 0 (˜ x, h) ≥ 0 2
(3.2) ist intuitiv einleuchtend. In x˜ liegt ein lok. Minimum vor, also kann keine Richtung existieren, in der es abw¨arts geht! Beispiel 3.1.3 f (x) = | x | hat lokales Min. bei x˜ = 0. f(x)=|x|
f ist bei x˜ = 0 nicht differenzierbar, aber die Richtungsableitung existiert: f (th)−f (0) t 0
x
3.1.2
⇒ f (0, h)
= | tht | = | h |, t > 0 = | h | ≥ 0 ∀h ⊂ R.
Notwendige Bedingungen zweiter Ordnung
Satz 3.1.3 f sei in einer Umgebung von x˜ ∈ D zweimal stetig differenzierbar. Ist x˜ lokales Minimum von (PU), so muss neben der notwendigen Bedingung erster Ordnung auch hT f 00 (˜ x)h ≥ 0 ∀h ∈ Rn
(3.3)
erf¨ ullt sein, d. h., f 00 (˜ x) muss positiv semidefinit sein. Beweis: Bekannt aus der Analysis. Skizze: Wir setzen f¨ ur bel. aber festes h, F (t) = f (˜ x + th). F hat lokales Minimum bei t = 0 und ist vom Typ C 2 . Taylorentwicklung: F (t) = F (0) + F 0 (0)t + 12 F 00 (ϑt)t2 | {z } ⇒ 0≤
F (t)−F (0) t2
=
=0 1 00 F (ϑt) 2
t ↓ 0, Stetigkeit von F 00 ⇒ F 00 (0) = hT f 00 (˜ x)h ≥ 0.
22
2
Beispiel 3.1.4
f (x) = 21 xT Hx + bT x f 00 (x) = H
Soll (PU) f¨ ur dieses f eine L¨osung haben, dann muss H positiv semidefinit sein. Beispiel 3.1.5 Rosenbrock-Funktion −400 x1 (x2 − x21 ) − 2 (1 − x1 ) 200 (x2 − x21 ) −400 (x2 − x21 ) + 800 x21 + 2 f x2 x1 = −400 x1 200 µ ¶ 802 −400 00 ⇒ f (1, 1) = positiv definit nach Satz von Sylvester. −400 200 f x1 f x2 f x 1 x1 f x 1 x2 f x 2 x2
3.1.3
= = = = =
Hinreichende Bedingungen zweiter Ordnung
Aus der G¨ ultigkeit von notwendigen Bedingungen erster und zweiter Ordnung kann man bekanntlich nicht auf lokale Optimalit¨at schließen (Bsp: f (x) = x3 bei x = 0). Dazu zieht man nach M¨oglichkeit hinreichende Bedingungen 2. Ordnung zu Rate. Im Weiteren sagen wir “f ist in U aus der Klasse C 2 ”, kurz “aus C 2 ”, wenn f zweimal stetig differenzierbar in U ist. Satz 3.1.4 f sei aus C 2 in einer Umgebung von x˜ ∈ D. Die notwendige Bedingung ∇f (˜ x) = 0 sowie hT f 00 (z)h ≥ 0 ∀h ∈ Rn
(3.4)
sei erf¨ ullt f¨ ur alle z ∈ B(˜ x, δ) mit einem δ > 0. Dann ist x˜ lokales Minimum von (PU). Beweis: Sei x ∈ B(˜ x, δ) beliebig. Dann f (x) − f (˜ x)
= f 0 (˜ x)(x − x˜) + 21 (x − x˜) f 00 (˜ x − ϑ(x − x˜))(x − x˜), ϑ ∈ (0, 1) | {z } | {z } ≥ 0
wegen (3.4).
h
z
⇒ x˜ lokales Min. 2 Beispiel 3.1.6 Lineare Regression Hier h¨angt f 00 (x) = H nicht von x ab. Ist H nur positiv semidefinit und erf¨ ullt x˜ die notwendige Bedingung H x˜ + b = 0, dann ist x˜ lokales Min. Sind zwei der Messpunkte ξi verschieden, dann ist H positiv definit, und wir haben Existenz und Eindeutigkeit.
23
Beispiel 3.1.7 (i) f (x) ≡ 0 ∀x ∈ Rn Jedes x ∈ Rn ist lokales Minimum f(x)
(ii) f (x) = max{0, |x| − 1} Alle x ∈ [−1, 1] sind lokale Minima, x = −1, x = 1 passen nicht in die Theorie . . . −1
1
x
Solche etwas pathologischen F¨alle schließt man durch etwas sch¨arfere Bedingungen aus, die strenge lokale Minima implizieren: Satz 3.1.5 f sei aus C 2 in einer Umgebung von x˜ ∈ D, es gelte ∇f (˜ x) = 0, und f 00 (˜ x) sei positiv definit, d. h. hT f 00 (˜ x)h > 0 ∀h ∈ Rn , h 6= 0. (3.5) Dann existieren r > 0, α > 0, so dass f (x) ≥ f (˜ x) + αkx − x˜k2
∀x ∈ B(˜ x, r)
“quadratische Wachstumsbedingung”
Damit ist x˜ strenges lokales Minimum von (PU). Beweis: Vorlesung Analysis! Skizze: • Man zeigt mit einem wichtigen Kompaktheitsschluss, der leider nur im Rn funktio¨ niert, die Aquivalenz von (3.5) mit hT f 00 (˜ x)h ≥ α ˜ khk2
∀h ∈ Rn ,
α > 0. • Dann f (x) = f (˜ x) + ∇f (˜ x)T (x − x˜) + 21 (x − x˜)T f 00 (˜ x + ϑ(x − x˜)) (x − x˜), | {z }
ϑ ∈ (0, 1)
=0
1 x)(x − x˜) + 12 (x − x˜)T [f 00 (˜ = f (˜ x) + (x − x˜)T f 00 (˜ x + ϑ(x − x˜)) − f 00 (˜ x)](x − x˜) | {z } 2 | {z } ˜ ≤α , wenn kx−˜ xk klein 4
≥ 12 αkx−˜ ˜ xk2 2
≥ f (˜ x) + α4˜ kx − x˜k α :=
(f ∈ C 2 !)
α ˜ 4
2
Offenbar gilt hier hT f 00 (z)h ≥ 0 ∀h, ∀z ∈ B(˜ x, r), also impliziert (3.5) die Bedingung (3.4). Beispiel 3.1.8 Lineare Regression mit positiv definitem H
24
Beispiel 3.1.9 Rosenbrock-Funktion bei x˜ = [1, 1]T . µ 00
f (1, 1) =
802 −400 400 200
¶ ist positiv definit, also ist x˜ strenges lokales Minimum.
Beispiel 3.1.10 f (x) = x2p ,
p ∈ N,
x ∈ R.
x˜ = 0 ist lokales Minimum, aber die g¨angige Formel 00 f 0 (˜ x) = 0 ∧ f 00 (˜ x) > 0 ⇒ lokales 00 Minimum funktioniert nur bei p = 1 f 0 (x) = 2p x2p−1 f 00 (x) = 2p(2p − 1)x2p−2
⇒ f 0 (0) = 0 ⇒ f 00 (0) > 0 f 00 (0) = 0
falls falls
p=1 p>1
Satz 3.1.5 ist nur f¨ ur p = 1 anwendbar, Satz 3.1.4 stets.
3.2
Konvexe Optimierungsaufgaben
Wir untersuchen f¨ ur die konvexe Aufgabe (P)
min f (x) x∈F
f : D → R konvex (D offen) F ⊂D
konvex, 6= ∅, nicht notwendig offen
Jede lokale L¨osung von (P) ist damit eine globale. Charakterisierung der Konvexit¨at von f durch Ableitungen: Satz 3.2.1 f sei differenzierbar in D. Dann ist f genau dann konvex auf F, wenn f (y) ≥ f (x) + f 0 (x)(y − x)
∀x, y ∈ F
Beweis: Siehe Fachb¨ ucher (ist sehr einfach).
2
Illustration f¨ ur n = 1: f(y)
f(x)+f ’(x)(y−x)
x
25
(3.6)
y
Satz 3.2.2 f sei differenzierbar in D und x˜ ∈ F. Dann ist x˜ genau dann L¨osung der konvexen Optimierungsaufgabe (P), wenn f 0 (˜ x)(x − x˜) ≥ 0 ∀x ∈ F
Variationsungleichung
(3.7)
Beweis: (i) Ist x˜ lokales Minimum, dann wissen wir f 0 (˜ x)(x − x˜) ≥ 0 (Satz 3.1.2: f 0 (˜ x, h) ≥ 0 0 0 mit h = x − x˜ f (˜ x, h) = f (˜ x)(x − x˜).) (ii) Gilt (3.7), so wegen Konvexit¨at und (3.6) f (y) − f (˜ x) ≥ f 0 (˜ x)(y − x˜) ≥ 0 2 Strenge Konvexit¨at kann man auch so charakterisieren: Satz 3.2.3 D offen, F ⊂ D nichtleer und konvex, f : D → R differenzierbar auf D. Dann ist f genau dann streng konvex auf F, wenn f (y) > f (x) + f 0 (x)(y − x)
∀x, y ∈ F, x 6= y.
(3.8)
Beweis: (i) f sei strikt konvex. Dann ist f insbesondere konvex und f (y) ≥ f (x) + f 0 (x)(y − x).
(∗)
Nehmen wir an, (3.8) gilt nicht. Dann gibt es ein Paar (x, y), x 6= y, so dass in (∗) Gleichheit gilt. Wegen strikter Konvexit¨at von f , µ ¶ 1 1 1 1 f x + y < f (y) + f (x) |{z} 2 2 2 2 = rechte Seite von (∗) wegen Gleichheit 1 1 1 = f (x) + f 0 (x)(y − x) + f (x) 2 2 µ 2¶ 1 1 = f (x) + f 0 (x) y+ x−x 2 µ ¶2 1 1 ≤ f (x) + f x + y − f (x), wegen Satz 3.2.1 2¶ 2 µ 1 1 x+ y im Widerspruch zur Annahme. =f 2 2 (ii) Die andere Richtung zeigt man analog wie Satz 3.2.1. Geometrisch ist die Aussage sehr einleuchtend.
26
2
Satz 3.2.4 Sei f differenzierbar auf D und streng konvex auf F sowie x˜ ∈ F. Dann gilt: x˜ ist genau dann strenges lokales Minimum von (P) und damit auch strenges globales Minimum wenn die Variationsungleichung f 0 (˜ x)(x − x˜) ≥ 0 ∀x ∈ F erf¨ ullt ist. Beweis: (i) ⇒: Nat¨ urlich muss die Variationsungl. erf¨ ullt sein. (ii) ⇐: aus der Variationsungl. und der strengen Konvexit¨at folgt f (x) > f (˜ x) + f 0 (˜ x)(x − x˜) ≥ f (˜ x) | {z } ↑ (3.8)
∀x ∈ F ,
≥0 Var.-ungl.
x 6= x˜ 2 Man kann Konvexit¨at “f 00 (x) > 0 ⇒ f konvex”
auch
u ¨ber
zweite
Ableitungen
charakterisieren:
Satz 3.2.5 D ⊂ Rn offen, F ⊂ D konvex, 6= ∅; f : D → R aus C 2 . Dann gilt (i) Ist f 00 (x) positiv semidef. ∀x ∈ F, so ist f konvex auf F. Ist F offen, so gilt auch die Umkehrung (ii) Ist f 00 (x) positiv definit ∀x ∈ F, so ist f streng konvex auf F. Beweis: Es seien x, y ∈ F. Dann gilt mit einem ϑ ∈ (0, 1) 1 f (y) − f (x) − f 0 (x)(y − x) = (y − x)T f 00 (x + ϑ(y − x))(y − x) . 2
(∗)
(i) Wegen pos. Semidefinitheit gilt dann, dass die rechte Seite von (∗) nichtnegativ ist. Das heißt aber Konvexit¨at nach Satz 3.2.1. Umgekehrt: Es sei F offen, x ∈ F beliebig. Wir zeigen die positive Semidefinitheit von f 00 (x). Dazu sei d ∈ Rn beliebig, t ∈ R, | t | hinreichend klein. Dann gilt wegen der Charakterisierung der Konvexit¨at durch erste Ableitung
f (x + td) ≥ f (x) + f 0 (x)(td) f (x) ≥ f (x + td) + f 0 (x + td)(−td). Addition ⇒ [f 0 (x + td) − f 0 (x)](td) ≥ 0
27
⇒ dT f 00 (x)d = lim 1t [f 0 (x + td) − f 0 (x)] d t→0 1 = lim 2 [f 0 (x + td) − f 0 (x)](td) ≥ 0 t→0 t {z } |{z} | ≥0
≥0
(ii) Ist f 00 (x) positiv definit, so entsteht in (∗) f¨ ur y 6= x sofort eine (streng) positive rechte Seite. Nach Satz 3.2.3 ist damit f streng konvex. Eine weitere Versch¨arfung des Begriffs der Konvexit¨at ist: Definition 3.2.1 Eine Funktion f heißt gleichm¨ aßig konvex auf einer konvexen Menn ge F ⊂ D ⊂ R , wenn mit einem α > 0 gilt (1 − λ)f (x) + λf (y) ≥ f ((1 − λ)x + λy) + λ(1 − λ)αkx − yk2 ∀x, y ∈ F, λ ∈ [0, 1]. Damit kann man zeigen: • Gleichm¨aßige Konvexit¨at ist bei differenzierbarem f ¨aquivalent zu f (y) − f (x) ≥ f 0 (x)(y − x) + αkx − yk2
∀x, y ∈ F
• F¨ ur f ∈ C 2 folgt gleichm¨aßige Konvexit¨at aus der gleichm¨aßigen positiven Definitheit, d.h. hT f 00 (x)h ≥ βkhk2 ∀h ∈ Rn , wobei β > 0 nicht von x ∈ F abh¨angt. Ist F offen, dann folgt umgekehrt aus der gleichm¨aßigen Konvexit¨at von f auf F, dass f 00 gleichm¨aßig positiv definit ist.
28
4 4.1
Probleme ohne Restriktionen – Verfahren Grundlagen
Wir untersuchen im gesamten Kapitel numerische Verfahren zur L¨osung der Aufgabe (PU)
min f (x)
x∈Rn
Da wir wissen, dass an der Stelle einer L¨osung x˜ die Gleichung ∇f (˜ x) = 0
(4.9)
erf¨ ullt sein muss, k¨onnen wir diese Gleichung numerisch l¨osen, etwa mit dem NewtonVerfahren. Dieses liefert aber “nur” eine L¨osung dieser Gleichung, welche nicht notwendig ein Minimum ergibt. Deshalb interessiert man sich f¨ ur numerische Verfahren, welche (4.9) l¨osen und gleichzeitig die Minimierung in (PU) ber¨ ucksichtigen. Dazu geh¨oren Abstiegsverfahren, iterative Verfahren, welche schrittweise den Funktionswert von f verkleinern. Definition 4.1.1 f : Rn → R sei differenzierbar an der Stelle x. Ein Vektor d ∈ Rn heißt Abstiegsrichtung von f im Punkt x, wenn ∇f (x)T d < 0 ist.
d π/2 < ϕ < 3/2 ϕ
ϕ grad f
Der Sinn dieser Definition ist klar, er wird erh¨artet durch Lemma 4.1.1 f sei differenzierbar an der Stelle x und d eine Abstiegsrichtung. Dann existiert σ ¯ > 0 mit f (x + σd) < f (x) ∀x ∈ [0, σ ¯] Beweis: Wegen
f (x + σd) − f (x) 0 die Beziehung f (x + σd) < f (x) erf¨ ullt sein.
2
Beispiele von Abstiegsrichtungen: Beispiel 4.1.1 • Gilt ∇f (x) 6= 0 in x, so ist der Antigradient −∇f (x) Abstiegsrichtung denn: F¨ ur d = −∇f (x) gilt f 0 (x)d = ∇f (x) · (−∇f (x)) = −k∇f (x)k2 < 0. • Ist A positiv definite (n, n)-Matrix, dann ist −A−1 ∇f (x) Abstiegsrichtung Das liegt daran, dass mit A auch A−1 positiv definit ist. Verfahren 4.1.1 (Allgemeine Form von Abstiegsverfahren) 1. W¨ahle Startpunkt x(0) ∈ Rn , k := 0. 2. Abbruch, falls ∇f (x(k) ) = 0 3. Berechne Abstiegsrichtung d = d(k) und Schrittweite σ = σk > 0, so dass ¡ ¢ ¡ ¢ f x(k) + σk d(k) < f x(k) , xk+1 := x(k) + σk d(k) 4. k := k + 1, gehe zu 1. Bemerkungen: • Das Abbruchkriterium ist ¡nur theoretisch anwendbar. Numerisch arbeitet man mit ¢ ¢ ¡ (k) ¡ (k) ¢ (k+1) | < ε1 ∧ kx(k+1) − x(k) k < ε2 , wobei −f x k < ε oder |f x k∇f x ε, ε1 , ε2 positive Abbruchschranken sind. • Alternativ: ¢ ¡ ¢ ¢ ¡ ¡ f x(k+1) − f x(k) ≈ σk f 0 x(k) d(k) < ε1 und k x(k+1) − xk k∞ = σk k d(k) k∞ < ε2 • Oft ist die Wahl von σ das Hauptproblem
30
4.2
Das Newton-Verfahren
Das Newton-Verfahren zur L¨osung der Gleichung ∇f (x) = 0 ist ein g¨angiges Mittel zur Bestimmung lokaler Extrema. Setzen wir F (x) := ∇f (x), so ist F : Rn → Rn gegeben und das bekannte Newton-Verfahren auf die Gleichung F (x) = 0 anzuwenden. Die Grundidee des Verfahrens ist schnell wiederholt. Ist x(k)¡ bereits ¡ ¢ ¢ ¡ be-(k) ¢ (k) (k) 0 (k) stimmt, so verh¨alt sich F (x) nahe bei x in erster N¨aherung wie F x +F x x−x , so dass wir von dieser Funktion eine Nullstelle x suchen. Wir l¨osen also ¡ ¢ ¡ ¢¡ ¢ F x(k) + F 0 x(k) x − x(k) = 0
lineares Gleichungssystem!
(4.10)
¡ ¢ und erhalten als neue N¨aherung x =: x(k+1) . Ist F 0 x(k) invertierbar, so folgt ¡ ¢−1 ¡ (k) ¢ F x . x(k+1) = x(k) − F 0 x(k)
(4.11)
F¨ ur die Konvergenzanalysis des Verfahrens ben¨otigen wir folgende Voraussetzungen: (i) F : Rn ⊃ D → Rn ist differenzierbar in D, D offen, und hat in D eine Nullstelle x˜. (ii) F 0 ist Lipschitz-stetig in D, d. h. ∃ L > 0: k F 0 (x) − F 0 (y) k ≤ L k x − y k ∀x, y ∈ D (iii) ∃ F 0 (˜ x)−1 Der Konvergenzbeweis des Newton-Verfahrens beruht auf folgenden bekannten und mit relativ geringem Aufwand beweisbaren Fakten: Lemma 4.2.1
(i) k F (x) − F (y) − F 0 (y)(x − y) k ≤ ∀x, y ∈ D
L 2
k x − y k2
(Folgt aus dem Mittelwertsatz, angewendet auf ϕ(t) = F (x + t(x − y)))). Lemma 4.2.2 Ist A eine nichtsingul¨are n, n-Matrix, S eine Matrix gleichen Typs und k A−1 k k S k < 1, dann existiert (A + S)−1 und k (A + S)−1 k ≤
k A−1 k 1 − k A−1 k k S k
31
¯ x, r) → Rn eine Kontraktion, d. h. in B(˜ ¯ x, r) Lipschitz-stetig Lemma 4.2.3 Sei G : B(˜ ¯ x, r). mit Konstante L < 1. Ist x˜ ein Fixpunkt von G, dann ist es der einzige in B(˜ (0) Ausgehend von jedem beliebigen Startpunkt x in dieser Kugel konvergiert die Folge x(k) ¡ ¢ x(k+1) = G x(k) gegen x˜ und k x(k) − x˜ k ≤ Lk k x(0) − x˜ k. (Folgt aus dem Banachschen Fixpunktsatz.) Satz 4.2.1 (Konvergenz des Newton-Verfahrens) Unter den obigen Voraussetzungen (i) - (iii) gibt es δ > 0, c > 0, so dass das NewtonVerfahren f¨ ur jeden Startpunkt x(0) ∈ B(˜ x, δ) eine gegen x˜ konvergente Folge x(k) definiert, wobei gilt k x(k+1) − x˜ k ≤ c k x(k) − x˜ k2
(quadratische Konvergenz)
(4.12)
Beweisskizze a) Mit Lemma 4.2.2 zeigt man k F 0 (x)−1 k ≤ 2 k F 0 (˜ x)−1 k ∀x ∈ B(˜ x, δ1 ) b) Das wendet man an und findet k F 0 (x)−1 − F 0 (y)−1 k = k F 0 (x)−1 (F 0 (y) − F 0 (x)) F 0 (y)−1 k | {z } | {z } | {z } kk≤2kF (˜ x)−1 k
≤Lkx−yk
≤ 4L k F 0 (˜ x)−1 k2
≤2kF (˜ x)−1 k
kx − yk
ur c) Aus Formel (4.11) wird klar – das Newton-Verfahren ist Fixpunktiteration f¨ G(x) := x − F 0 (x)−1 F (x). G ist Kontraktion in B(˜ x, δ): G(x) − G(y) =
−F 0 (x)−1 F (x) + F 0 (y)−1 F (y)
x−y | {z } =F 0 (x)−1 F 0 (x)(x−y)
=
F 0 (x)−1 | {z }
{F (y) − F (x) − F 0 (x)(x − y)} | {z }
beschr. wegen a)
≤ L kx−yk kx−yk
¢2 0 −1 0 −1 + F (y) − F (x) {z } | ¡
≤ckx−yk wegen b)
· F (y) | {z }
klein, wenn y nahe an x ˜
Man sch¨atzt ab und findet z. B. k G(x) − G(y) k ≤
1 k x − y k in B(˜ x, δ) 2
f¨ ur ein δ ≤ δ1 klein genug gew¨ahlt. 32
d) Nun wird das Kontraktionslemma 4.2.3 benutzt. Die Iterationsfolge konvergiert gegen x˜. Die quadratische Konvergenz folgt aus ¡ ¢−1 ¡ (k) ¢ k x(k+1) − x˜ k = k x(k) − F 0 x(k) F x − x˜ k ¡ ¡ ¢ © ¢ ¡ ¢¡ ¢ª −1 F (˜ x) − F x(k) − F 0 x(k) x˜ − x(k) k = k F 0 x(k) {z }| {z } | ≤2kF 0 (˜ x)−1 k
≤L k˜ x−x(k) k2 2
≤ c k x(k) − x˜ k2
mit
c = L k F 0 (˜ x)−1 k 2
Das Newton-Verfahren konvergiert lokal quadratisch. Umgesetzt f¨ ur das freie Optimierungsproblem (PU) bedeutet das F (x) := ∇f (x). Wir fordern daher • f 00 ist Lipschitz-stetig in einer Umgebung eines lokalen Minimums x˜ von f • f 00 (˜ x) ist positiv definit (Das sichert die Existenz von F 0 (˜ x)−1 = f 00 (˜ x)−1 und passt zur Minimum- Eigenschaft.) Satz 4.2.2 Unter obigen Voraussetzungen konvergiert das Newton-Verfahren ¡ ¢ ¡ ¢−1 ∇f x(k) x(k+1) = x(k) − f 00 x(k)
(4.13)
lokal quadratisch gegen x˜.
In der numerischen Umsetzung invertiert man nat¨ urlich f 00 (x(k) ) nicht, sondern man l¨ost das Gleichungssystem ¡ ¢¡ ¢ ¡ ¢ f 00 x(k) x(k+1) − x(k) = −∇f x(k) , d. h. man bestimmt eine Richtung d(k) aus ¡ ¢ ¡ ¢ f 00 x(k) d(k) = −∇f x(k) und setzt x(k+1) := x(k) + d(k) . F¨ ur d(k) gilt
¡ ¢−1 d(k) = f 00 x(k) | {z } pos. definit
33
¡ ¡ ¢¢ −∇f x(k) | {z } Antigradient
Daher ist nach Bsp 4.1.1 d(k) Abstiegsrichtung, die sogenannte Newton-Richtung. Damit wird das Newton-Verfahren aber nicht automatisch ein Abstiegsverfahren, denn es w¨ahlt immer die Schrittweite σ = 1, und die kann zu groß sein! Deshalb wendet man eine ge¨anderte Verfahrensvorschrift an ¡ ¢−1 ¡ ¢ x(k+1) = x(k) − σk f 00 x(k) ∇f x(k) (ged¨ ampftes Newton-Verfahren (vgl. Abschnitt 4.6)). Bemerkung: Wir k¨onnen das Newton-Verfahren auch anders interpretieren: Die Verfahrensvorschrift (4.13) bedeutet ¡ ¢¡ ¢ ¡ ¢ f 00 x(k) x(k+1) − x(k) + ∇f x(k) = 0. Das ist gerade die notwendige Optimalit¨atsbedingung f¨ ur L¨osungen der quadratischen Optimierungsaufgabe (Q)k , minn
x∈R
¡ ¢T ¡ ¢ ¡ ¢T ¡ ¢¡ ¢ ∇f x(k) x − x(k) + 12 x − x(k) f 00 x(k) x − x(k) .
(Q)k
Ist f 00 (x(k) ) positiv definit, so besitzt diese, wie wir inzwischen wissen, genau eine L¨osung. Diese ist gerade x(k+1) . Damit ist das Newton-Verfahren ¨aquivalent zur L¨osung einer Folge quadratischer Optimierungsaufgaben, wenn f 00 (˜ x) positiv definit ist. Es ist damit ein sequentiell-quadratisches Optimierungsverfahren – SQP-Verfahren (von Sequential Quadratic Programming). Man schreibt (Q)k so auf: ¡ ¢T ¡ ¢ min ∇f x(k) z + 12 z T f 00 x(k) z und
4.3 4.3.1
x(k+1) := x(k) + z (k)
Abstiegsverfahren – allgemeine Aussagen Effiziente Schrittweiten
Ist d(k) eine Abstiegsrichtung und σk hinreichend klein, so gilt f (x(k) + σk d(k) ) < f (x(k) ). Das muss aber keineswegs zur Konvergenz des Abstiegsverfahrens in ein lokales Minimum f¨ uhren, wie folgendes Beispiel zeigt: Beispiel 4.3.1 f (x) = x2 , d(k) = −1 f¨ ur alle k ≥ 0, x(0) = 1, und ¡ 1 ¢k+2 , k = 0, 1, . . . σk = 2 (k) Die Folge {x } strebt gegen 21 , die Schrittweiten sind zu klein. Startet unser Abstiegsverfahren bei x(0) , so entstehen nur noch kleinere Funktionswerte. Deshalb liegen die weiteren Iterierten stets in N (f, f (x(0) )).
34
Definition 4.3.1 Es sei x aus N (f, f (x(0) )) und d ∈ Rn eine Abstiegsrichtung. Eine Schrittweite σ heißt effizient, falls ³ f (x + σd) ≤ f (x) − c
∇f (x)·d kdk
´2
(4.14)
mit einer von x ∈ N (f, f (x(0) )) und d unabh¨angigen Konstante c > 0 gilt. ur d = −∇f (x) ist das Quadrat am gr¨oßten, der Abstieg am st¨arksten. Erl¨auterung: F¨ F¨ ur d ⊥ ∇f (x) ergibt sich differentiell Abstieg Null. Die Konstante c bedeutet eine Mindestrate. Beachte: d/ k d k ist Einheitsvektor. Sind Folgen {x(k) }, {d(k) } mit ∇f (x(k) )T d(k) < 0 und effiziente Schrittweiten σk gegeben, dann ist (4.14) mit einer von k unabh¨angigen Konstante c > 0 erf¨ ullt. Eine spezielle Form der Effizienz ist das Prinzip des hinreichenden Abstiegs: Man verlangt von x und d unabh¨angige Konstanten c1 , c2 > 0, so dass f (x + σd) ≤ f (x) + c1 σ∇f (x)T d (hinreichend schneller Abstieg)
(4.15)
und σ ≥ −c2
∇f (x)T d k d k2 (Mindestschrittweite)
(4.16)
Aus diesen beiden Bedingungen folgt (4.14), Effizienz, mit c = c1 c2 , denn µ f (x + σd) ≤ f (x) + c1
∇f (x)T d −c2 k d k2
¶
µ T
∇f (x) d = f (x) − c1 c2
∇f (x)T d kdk
¶2
Bemerkung: Man kann unter Voraussetzung der Lipschitz-Stetigkeit von f 0 auf N (f, f (x(0) )) die Existenz effektiver Schrittweiten beweisen, vgl. Lemma 4.3.4 in [1]. 4.3.2
Gradientenbezogene Richtungen
Ist N (f, f (x(0) )) kompakt, so ist die Folge der Funktionswerte {f (x(k) )} (nach unten) beschr¨ankt. Ist die Schrittweitenfolge {σk } effizient, dann gilt ¡
f x
¢ (k+1)
¡
≤f x
¢ (k)
à −c
35
!2 ¢T ¡ ∇f x(k) d(k) k d(k) k
¡ ¡ ¢ ¡ ¢¢ Aus der Monotonie folgt die Konvergenz der Funktionswerte, so dass f x(k+1) − f x(k) → 0, k → ∞ folgen muss, d. h. ¡ ¢T ∇f x(k) d(k) → 0, k → ∞. (4.17) k d(k) k Man will nun die Richtungen so w¨ahlen, dass daraus folgt ¡ ¢ ∇f x(k) → 0,
k → ∞.
(4.18)
Beziehung (4.17) kann ohne (4.18) gelten, wenn die Richtung d(k) in der Grenze orthogonal zu ∇f (x(k) ) wird. Das muss man ausschließen und gleichm¨aßig gr¨oßer als der rechte Winkel zu ∇f (x(k) ) bleiben. Nun gilt ¡ ¢T ¡ ¢ ∇f x(k) d(k) (k) (k) cos ∇f (x ), d = =: βk k ∇f (x(k) ) k k d(k) k ¡ ¢T ¡ (k) ¢ ∇f x(k) d(k) ⇒ βk k ∇f x k = k d(k) k | {z } →0 bei Effizienz Daraus folgt ∇f (x(k) ) → 0, falls −βk ≥ c > 0 ∀k. Definition 4.3.2 Seien x ∈ N (f, f (x(0) ), d ∈ Rn . Die Richtung d heißt gradientenbezogen in x, wenn −∇f (x)T d ≥ c3 k∇f (x) k kd k (4.19) mit einer von x und d unabh¨angigen Konstanten c3 > 0 gilt. Sie heißt streng gradientenbezogen, wenn zus¨atzlich c4
k ∇f (x) k ≥ k d k ≥
1 k ∇f (x) k c4
(4.20)
mit einer von x und d unabh¨angigen Konstante c4 > 0 gilt. Beispiel 4.3.2 Der Antigradient d = −∇f ist streng gradientenbezogen, denn −∇f (x)T d = k ∇f (x) k2 (>)
k ∇f (x) k = k d k
= (>)
=
1 · k ∇f (x) k k d k k ∇f (x) k
d.h. c3 = c4 = 1.
Illustration der Gradienten-Bezogenheit:
Mindestabstand zum rechten Winkel mit −∇f (x) garantiert hinreichenden Abstieg (wenn nicht k dk → 0).
Min
d
−grad f
36
Wir wollen nun skizzieren, dass auch die Newton-Richtung streng gradientenbezogen ist. Dazu braucht man folgende Voraussetzung:
37
(VLK) (Lokal gleichm¨aßige Konvexit¨at) Sei f : Rn → R, N (f, f (x(0) )) ⊂ D, 6= ∅, offen, konvex, f ∈ C 2 auf D. Mit α1 > 0 gelte hT f 00 (x)h ≥ α1 k h k2 ∀h ∈ Rn , ∀x ∈ D, d. h. gleichm¨aßige positive Definitheit von f 00 auf D. Ohne Beweis folgern mir aus (V LK): Lemma 4.3.1 • N (f, f (x(0) )) konvex und kompakt • hT f 00 (x)h ≥ α2 k h k ∀h ∈ Rn ,
∀x ∈ N (f, f (x(0) ))
• k f 00 (x) k ≤ α2
−00 −
• k f 00 (x)(−1) k ≤ β2 := 1/α1
−00 −
• β1 k h k2 ≤ hT f 00 (x)(−1) h ≤ β2 k h k2 ,
∀h ∈ Rn , −00 −
• f ist gleichm¨aßig konvex auf D. Beispiel 4.3.3 (Newton-Richtung) (V LK) sei erf¨ ullt, x ∈ N (f, f (x(0) )),
⇒ Und
d = −f 00 (x)(−1) ∇f (x) −∇f (x)T d = ∇f (x)T f 00 (x)(−1) ∇f (x) ≥ β1 k ∇f (x) k
k d k = k − f 00 (x)(−1) ∇f (x) k ≤ β2 k ∇f (x) k k ∇f (x) k = k − f 00 (x)d k ≤ α2 k d k
−00 − −00 −
¾
d.h. strenge Gradienten-Bezogenheit. (4.19) folgt aus oben β1 −∇f T d ≥ β1 k ∇f k k∇f k ≥ k ∇f k k d k. | {z } β2 ≥ β1 kdk 2
4.3.3
Allgemeine Konvergenzs¨ atze
Folgende Voraussetzungen werden im Weiteren oft ben¨otigt: (VNK) F¨ ur ein gegebenes x¢(0) ∈© Rn ist die Niveaumenge ¡ ª N f, f (x(0) ) = x|f (x) ≤ f (x(0) ) kompakt. (VFD) f ∈ C 1 auf konvexer, offener Menge D0 ⊃ N (f, f (x(0) )). Damit l¨aßt sich zun¨achst zeigen:
38
⇒ (4.20)
Satz 4.3.1 (VNK) und (VFD) seien erf¨ ullt, die Suchrichtungen d(k) des allgemeinen Abstiegsverfahrens 4.1.1 seien gradientenbezogen in x(k) , die Schrittweiten σk effizient. Stoppt das Verfahren nicht nach endlich vielen Schritten, dann gilt ∇f (x(k) ) → 0, k → ∞ und {x(k) } besitzt einen H¨aufungspunkt x˜. F¨ ur jeden solchen H¨aufungspunkt gilt ∇f (˜ x) = 0. Dass {x(k) } einen H¨aufungspunkt besitzt, n¨ utzt numerisch herzlich wenig. Man m¨ochte (k) haben: x → x˜. In der Tat gilt Satz 4.3.2 Zus¨atzlich zu den Voraussetzungen von Satz 4.3.1 sei im allgemeinen Abstiegsverfahren 4.1.1 • d(k) streng gradientenbezogen, • Schrittweitenfolge {σk } beschr¨ankt, • die Menge aller Nullstellen von ∇f in N (f, f (x(0) )) endlich. Stoppt das Verfahren nicht nach endlich vielen Schritten, dann konvergiert x(k) gegen eine Nullstelle von ∇f . Beweisidee: Strenge Gradientenbezogenheit, (4.20) ⇒ ¡ ¢ k x(k+1) − x(k) k = k σk d(k) k ≤ c¯ σ k ∇f x(k) k |{z} {z } | ≤¯ σ
(∗)
→0,Satz 4.3.1
Wegen (VNK) ist H, Menge aller H¨aufungspunkte von x(k) nichtleer. Außerdem gilt f¨ ur den Abstand d(x(k) , H) < ε ∀k > k0
(∗∗)
Sei x˜ irgendein HP von x(k) . Da die Menge der HP endlich ist, gibt es eine Kugel B(˜ x, ρ) mit H ∩ B(˜ x, ρ) = {˜ x}. Also existiert nach (∗∗) ein l0 mit k x(l0 ) − x˜ k < ε Wegen (∗) und ∇f (x(k) ) → 0 gilt auch k x(l0 +1) − x(l0 ) k < ε ⇒ k x(l0 +1) − x˜ k < 2ε
0, j := 0 (i) Gilt G1 (σ0 ) ≥ δ und G2 (σ0 ) ≤ β: Fertig! σp := σ0 (ii) Liegt σ0 in I1 a0 := σ0 b0 := 2l σ0 mit minimalem l ∈ N, so dass G1 (b0 ) > δ Gehe zu 2. (iii) Liegt σ0 in I3 b0 = σ0 a0 = 2−l σ0 mit minimalem l ∈ N, so dass G2 (a0 ) > β und G1 (a0 ) ≥ δ b) Mittelwert σj := 21 (aj + bj ) (i) Liegt σj in I2 : Fertig, σp := σj (ii) Liegt σj in I1 : Dann aj+1 = σj , bj+1 = bj (iii) Liegt σj in I3 : aj+1 = aj , bj+1 = σj c) j := j + 1, goto 2. Das Powell-Verfahren kann die Schrittweite auch vergr¨oßern, ausgehend von der Startschrittweite σ0 , daher kann σ0 an sich beliebig sein. Typische Wahlen von β und δ sind z. B. δ = 0.1 und β = 0.9. Bemerkungen: • σp wird (unter entsprechenden Voraussetzungen) in endlich vielen Schritten berechnet (vgl. [1, Satz 4.5.10]) • Unter den Voraussetzungen (VNK), (VFD), (VFL) gilt folgendes allgemeines Konvergenzresultat: Wird Schrittweite σk exakt, nach Armijo oder Powell gew¨ahlt, dann ist {σk } Folge effizienter Schrittweiten
45
4.5
Das Gradientenverfahren
Es wird auch als ”Verfahren des steilsten Abstiegs” bezeichnet. Als Richtung w¨ahlt man hier ¡ ¢ d(k) = −∇f x(k) • Sehr einfach zu implementieren • Am Ende aber zu langsam Verfahren 4.5.1 a) Startvektor x(0) , k := 0, Abbruchkriterium ε > 0. b) Wenn k ∇f (x(k) ) k < ε: Fertig c) Berechne ¡ ¢ d(k) = −∇f x(k) σk als effiziente Schrittweite (z. B. Armijo) x(k+1) := x(k) + σk d(k) k := k + 1, goto 2. 2 Unter den entsprechenden Voraussetzungen gelten die allgemeinen Konvergenzs¨atze. Verfahrensnachteil: Die ersten Schritte sind noch schnell, aber “dann zieht sich’s” Begr¨ undung: Benutzt man die exakte Schrittweite, was ja an sich nicht schlecht ist, dann ¡ ¢ ¡ ¢T ∂ 0 = ∂σ f x(k) + σd(k) |σ=σE = ∇f x(k+1) d(k) | {z } x(k+1)
= −d(k+1) dk
d(k+1) ⊥ dk
⇒
In schmalen T¨alern f¨ uhrt das zu sehr langsamer Konvergenz!
x1
1 0
d0 x0
d1
1 0 2 0 d 1
1 0
Ausweg: Bessere Beachtung der Niveaulinien!
46
4.6 4.6.1
Ged¨ ampftes Newton-Verfahren Das Verfahren
Abstiegsrichtung = Newton-Richtung ¡ ¢−1 ¡ ¢ d(k) = −f 00 x(k) ∇f x(k) Verfahren 4.6.1
a) Startpunkt x(0) ∈ Rn , k := 0
b) Wenn ∇f (x(k) ) = 0. Fertig c) Berechne d(k) aus
¡ ¢ ¡ ¢ f 00 x(k) d(k) = −∇f x(k)
Schrittweite σk : effizient (z. B. Armijo o. Powell) x(k+1) := x(k) + σk d(k) k := k + 1, goto 2. 4.6.2
Interpretation der Newton-Richtung
Setzen A = f 00 (x); A sei positiv definit. Neues Skalarprodukt, Norm in Rn : hx, yiA : = xT Ay p ¡ ¢1/2 k x kA : = hx, xiA = xT A x Man zeigt nun: Lemma 4.6.1 Die Richtung −A(−1) ∇f (x) d¯ = k A(−1) ∇f (x) k l¨ost unter der Voraussetzung ∇f (x) 6= 0 die Aufgabe min ∇f (x)T d bei k d kA = 1,
(4.30)
liefert also den steilsten Abstieg in der Norm k · kA .
Der Vorteil der Wahl von −A(−1) ∇f anstelle der Gradientenrichtung −∇f erschließt sich aus einer Betrachtung der quadratischen Funktion f (x) =
1 T x Hx, 2 47
¡ ¢ z. B. bei H = a0 0b mit a, b > 0. Die Niveaulinien von f (x) sind dann Ellipsen der Form ax21 + bx22 = r2 . Das Gradientenverfahren liefert eine Richtung, die am Nullpunkt – der L¨osung der Aufgabe min f (x) – vorbeigeht. Hingegen liefert −f 00 (x)−1 ∇f (x) = −H −1 Hx = −x genau die Richtung zur L¨osung. x2
−x
x 11111111111111111111111111111111111111111111111 00000000000000000000000000000000000000000000000
x1 − grad f (x)
Folgerung: Bei der quadratischen Funktion w¨ urde das ged¨ampfte Newton-Verfahren bei exakter Wahl der Schrittweite in genau einem Schritt konvergieren. 4.6.3
Konvergenz des Verfahrens
Es sei die gem. Konvexit¨atsbedingung (V LK) sowie die gem. Lipschitzstetigkeit von f 00 in N (f, f (x(0) )) erf¨ ullt, d. h. k f 00 (x) − f 00 (y) k ≤ L k x − y k ∀x, y ∈ N (. . .). (VL2) Damit sind die verwendeten Matrizen f 00 (x(k) positiv definit, und das Verfahren ist durchf¨ uhrbar. Nach dem allgemeinen Konvergenzsatz 4.3.3 konvergiert das ged¨ampfte Newton-Verfahren wie eine linear konvergente Folge. Aber es gilt mehr: Satz 4.6.1 (V LK) sei erf¨ ullt und die Schrittweiten σk nach Armijo oder Powell gew¨ahlt, wobei als Startschrittweite in jedem Schritt des ged¨ampften Newton-Verfahrens σk , 0 = 1 gew¨ahlt wird. Weiter sei 0 < δ < 1/2. Dann gilt f¨ ur alle hinreichend großen k die Bedingung σk = 1. Daher superlineare Konvergenz. Gilt zus¨atzlich (VL2), dann quadratische Konvergenz. Beweis: Langwierig. Siehe [1, Satz 474]. Folgerung: Nach endlich vielen Schritten geht das ged¨ampfte Newton-Verfahren in das unged¨ampfte u ¨ber. Von da ab konvergiert es wie dieses, n¨amlich quadratisch, wenn (VL2) erf¨ ullt ist, und sonst superlinear. Definition 4.6.1 {x(k) } konvergiert superlinear gegen x˜, wenn k x(k+1) − x˜ k =0 n→∞ k x(k) − x ˜k lim
48
Beispiel: xk = q k , | q | < 1, konvergiert nur linear gegen Null, nicht superlinear. Aber k xk = qk! konvergiert superlinear, denn q k+1 qk q / = → 0, k → ∞. (k + 1)! k! k+1 Verwendet man die exakte Schrittweite, dann gilt σ k → 1, k → ∞, und man kann quadratische Konvergenz zeigen (vgl. [1, Satz 4.6.4]). Bemerkung: (Modifikation des Verfahrens) • W¨ahlt man f 00 (x(0) ) anstelle f 00 (x(k) ) (vereinfachtes Newton-Verfahren), ergibt sich globale aber nur lineare Konvergenz. • Nach jeweils n Schritten Neuberechnung (einer Approximation) von f 00 (x(k) ) f¨ uhrt zu superlinearer Konvergenz. • Verwendet man Differenzenkoeffizienten zur Approximation der Ableitung, ergibt sich superlineare Konvergenz, falls die Diskretisierung fein genug ist.
4.7
Variable Metrik- und Quasi-Newton-Verfahren
Sinn der Verfahren: Ausgehend von Informationen u ¨ber f 00 (x) (oder solchen, die dem nahekommen), wird eine Norm k · kA benutzt, welche die Kr¨ ummung der Niveaulinien ber¨ ucksichtigt – wie bereits bei der quadratischen Funktion diskutiert. 4.7.1
Allgemeine Verfahrensvorschrift
Verfahren 4.7.1 (Variable Metrik) a) Start x(0) ∈ Rn , k := 0 b) Wenn ∇f (x(k) ) = 0 : Fertig c) Berechne: • positiv definite symmetrische Matrix A(k) • d(k) = −(A(k) )(−1) ∇f (x(k) ) • effiziente Schrittweite σk • x(k+1) := x(k) + σk d(k) • k := k + 1, goto 2. Spezialf¨alle:
A(k) ≡ I: Gradientenverfahren A(k) = f 00 (x(k) ): ged¨ampftes Newton-Verfahren
In jedem Schritt wird die steilste Richtung bez¨ uglich der Norm k · kA(k) gew¨ahlt. 49
4.7.2
Globale Konvergenz von Variable-Metrik-Verfahren
Grundlegende Voraussetzung ist dabei gleichm¨aßige positive Definitheit und Beschr¨anktheit der Matrizen A(k) . Definition 4.7.1 Eine Matrizenfolge {A(k) } von symmetrischen (n, n)-Matrizen heißt gleichm¨aßig positiv definit und beschr¨ankt, wenn Konstanten 0 < α1 < α2 existieren, so dass α1 k x k2 ≤ xT A(k) x ≤ α2 k x k2 ∀x ∈ Rn f¨ ur alle k ∈ N gilt. (k) ¨ (Aquivalent dazu: Kleinster Eigenwert λ1 ≥ α1 , gr¨oßter ≤ α2 bzw.: kleinster EW. von (Ak )−1 ≥ α2−1 , gr¨oßter ≤ α1−1 ) Im Vergleich mit den S¨atzen u ¨ber allgemeine Abstiegsverfahren ist es relativ plausibel, dass bei gleichm¨aßiger positiver Definitheit und Beschr¨anktheit der gew¨ahlten Matrixfolge {A(k) } gilt: • (VNK), (VFD) ⇒ Richtungen d(k) streng gradientenbezogen • Analoge Konvergenzaussagen wie bei den S¨atzen 4.3.1 (H¨aufungspunkt von x(k) mit ∇f = 0), 4.3.2 (Konvergenz gegen Nullstelle von ∇f ) sowie 4.3.3 (lineare Konvergenz) 4.7.3
Quasi-Newton-Methoden
In diesem Abschnitt behandeln wir zun¨achst die entsprechende Grundidee. Nachteil des ged¨ampften Newton-Verfahrens: Aufw¨andige Berechnung von f 00 (x(k) ) f¨ ur jeden neuen Schritt. Im Gegensatz dazu m¨ochte man an Stelle von f 00 (x(k) ) eine Folge von Matrizen {A(k) } aufbauen mit: ¨ • Ubergang von A(k) zu A(k+1) ist einfach • A(k) approximiert f 00 (x(k) ) und nat¨ urlich sollen alle positiv definit und symmetrisch sein. Zur Motivation betrachten wir eine quadratische Funktion 1 f (x) = xT Hx + bT x. 2 Hier gilt f 00 (x) = H und deshalb ¡ ¢¡ ¢ ¡ ¢ f 00 x(k+1) x(k+1) − x(k) = H x(k+1) − x(k) ± bT ¡ ¢ ¡ ¢ = ∇f x(k+1) − ∇f x(k) , k = 0, 1, 2 . . .
50
Kennen wir H nicht, sondern nur die Gradienten von f und die Vektoren x(0) , . . . , x(n−1) , so bestimmen die n Gleichungssysteme ¡ ¢ ¡ ¢ ¡ ¢ H x(k+1) − x(k) = ∇f x(k+1) − ∇f x(k) , k = 0, . . . , n − 1 die Matrix H eindeutig. Demgem¨aß fordert man von den A(k) , ausgehend von A(0) , einer positiv definiten symmetrischen Startmatrix ¡ ¢ ¡ ¢ ¡ ¢ A(k+1) x(k+1) − x(k) = ∇f x(k+1) − ∇f x(k) .
(4.31)
(4.31) heißt 4.7.4
BFGS-Update
Die L¨osung der Quasi-Newton-Gleichung ist nicht eindeutig bestimmt. Man hat nun Formeln entwickelt, bei denen A(k+1) recht einfach berechnet werden kann. Am bekanntesten: BFGS-Formel (nach Broyden, Fletcher, Goldfarb, Shanno). Man definiert: x(k+1) − x(k) =: s(k) ¡ ¢ ¡ ¢ ∇f x(k+1) − ∇f x(k) =: y (k) Ausgehend von A(k) wird A(k+1) in zwei Schritten bestimmt: • Zuerst T
(A(k) s(k) )(A(k) s(k) ) A˜(k) := A(k) − T (s(k) ) A(k) s(k)
(4.32)
Ist A(k) bereits symmetrisch und positiv definit gewesen, so ist A˜(k) auch symmetrisch und zumindest positiv semidefinit. Außerdem gilt A˜(k) s(k) = 0, damit erf¨ ullt A˜k allein nicht die Quasi-Newton-Gleichg. Es gilt offenbar ¢T ¢¡ ¡ rang Ak s(k) A(k) s(k) = 1, deshalb heißt (4.32) symmetrische Rang 1-Modifikation. • Durch eine zweite Rang-1-Modifikation versucht man, eine positiv definite Matrix zu bekommen: ¡ ¢T A(k+1) = A˜(k) + γk w(k) w(k) und gleichzeitig die Quasi-Newton-Gl. zu erf¨ ullen.
51
Quasi-Newton-Gleichung: ∈R , =: γ1
A(k+1) s(k)
z }| k { (k) T (k) (!) (k) (k) ˜(k) (k) =A | {zs } +γk w (w ) s = y =0
⇒ w(k) muss Vielfaches von y (k) sein, w¨ahlen w(k) = y (k) und γk =
1 T (y (k) )
s(k)
Positive Definitheit: Zumindest muss dann f¨ ur die spezielle Richtung s(k) gelten ¡ ¢T ¡ ¢T 0 < s(k) A(k+1) s(k) = s(k) y (k)
(4.33)
Man kann zeigen, dass die Bedingung (s(k) )T y (k) > 0 hinreichend f¨ ur positive Definitheit (k+1) (k) von A ist, wenn A positiv definit war [1, Lemma 4.8.5]. Insgesamt: T
T
A(k+1) = A(k) −
A(k) s(k) (A(k) s(k) ) T
(s(k) )
A(k) s(k)
+
y (k) (y (k) ) T
(y(k) )
(4.34)
s(k)
Da die Summe von zwei Rang 1-Matrizen in der Regel vom Rang 2 ist, spricht man von einer Rang-2-Modifikation. Bemerkung: (4.33) ist f¨ ur eine quadratische Funktion erf¨ ullt, falls H positiv definit ist: 1 f (x) = xT Hx 2
∇f = Hx
¡ ¢T ¡ ¡ ¢ ¡ ¢¢T ¡ (k+1) ¢ ⇒ y (k) s(k) = ∇f x(k+1) − ∇f x(k) x − x(k) ¡ ¡ ¢¢T ¡ (k+1) ¢ = H x(k+1) − x(k) x − x(k) ≥ α k x(k+1) − x(k) k2 > 0. 2 Nebenrechnungen: • Zeige A˜(k) s(k) = 0 (ohne Index k) T ˜ = As − (As)(As) s As sT As 1 ¡ T ¢ = T [ s As As − As s As
52
s|T {z AT s}
]
=sT As, da A symmetrisch
• Zeige Matrix vom Typ ssT hat Rang 1: s1 s1 s1 s2 . . . s2 s1 s2 s2 . . . ssT = (si sj ) = .. . sn s1 sn s2 . . . s1 = s1 ... , s2 sn
s1 sn s2 sn sn sn s1 .. , . . . , s n . sn
s1 .. . sn
Spalten sind Vielfache von s ⇒ Rang 1. 4.7.5
Das BFGS-Verfahren fu ¨ r quadratische Optimierungsprobleme
Wir wissen bereits: Bei quadratischer Funktion f ist σE =
−∇f (x)T d dT Hd
die Formel f¨ ur exakte Schrittweite. Die wenden wir an. Verfahren 4.7.2 (BFGS f¨ ur (QU)) a) W¨ahle Startvektor x(0) , symmetrische positiv definite Startmatrix A(0) , k := 0. b) Wenn ∇f (x(0) ) = 0: Fertig. c) Berechne ¡ ¢(−1) ¡ ¢ d(k) = − A(k) ∇f x(k) ¡ ¢T −∇f x(k) d(k) σk = T (d(k) ) Hd(k) x(k+1) = x(k) + σk d(k) s(k) = x(k+1) − x(k) ¢ ¢ ¡ ¡ y (k) = ∇f x(k+1) − ∇f x(k) A(k+1) als BFGS-Update k := k + 1, goto 2. Dabei werden in der Praxis die Matrizen A(k+1) etwas anders berechnet als direkt nach der Formel. Besonders wichtig ist nun
53
Definition 4.7.2 (H-Orthogonalit¨at). Sei H symmetrische und positive definite (n, n)-Matrix. Die Vektoren d(0) , . . . , d(k) , k < n, heißen zueinander konjugiert bzw. orthogonal bez¨ uglich H, wenn sie nicht Null sind und ¡ (i) ¢T Hd(j) = 0, 0≤i<j≤k d gilt. Genau das tritt beim BFGS-Verfahren ein: Satz 4.7.1 H sei symmetrisch und positiv definit. Dann berechnet das BFGS-Verfahren f¨ ur (QU) in m ≤ n Schritten das Minimum x˜ von f . Ist m = n, dann gilt A(n) = H. Beweisidee: Sei ∇f (x(0) ) 6= 0 (sonst fertig). Nun werden x(1) , y (1) , s(1) mit A(0) wie im Verfahren berechnet. Dann wird A(1) berechnet und ist nach [1, Lemma 4.8.5] positiv definit. ¡ (1) ¢ ¡ (0) ¢ (1) (0) (0) (0) x − x = σ d , Hs = ∇f x − ∇f x = y (0) 0 | {z } s¡(0) ¢ ¡ ¢ ¡ ¢ ⇒ ∇f x(1) = ∇f x(0) + Hs(0) = ∇f x(0) + σ0 Hd(0) ¡ ¢ ¡ ¢ ¡ ¢T d(0) = 0 (∗) ⇒ ∇f x(1) d(0) = ∇f x(0) d(0) + σ0 d(0) H {z } | =−∇f (x(0) )d(0) nach Def. von σ0 Wegen oben folgt d(0) = σ0−1 s0 , also T
¡ (0) ¢T 1 ¡ (0) ¢T d Hd(1) = Hs σ0 | {z } T
y (0) s. o.
d(1) |{z} (−A(1) )−1 ∇f (BFGS-Verf.)
(s(0) ) : Quasi-N. z }| { ¡ (0) ¢T ¡ (1) ¢−1 ¡ ¢ y A ∇f x(1) =− σ0
Nun kommt die Quasi-Newton-Gl. f¨ ur A(1) ins Spiel: ¡ ⇒ ¡
A(1)
¢−1
y (0) = s(0)
¡ (1) ¢ ¡ (0) ¢T ¢ ¢T ¡ ∇f x s T d(0) Hd(1) = − = −∇f x(1) d(0) = 0. ((∗)) σ0
Damit f¨ ur k = 1 erhalten: ¢T ¡ (i) ∇f x(k) d(i) = 0 ¡ ¢−1 (i) y = s(i) (ii) A(k) ¡ (i) ¢T Hd(k) = 0 (iii) d 54
f¨ ur 0 ≤ i < k
Induktion k → k + 1 . . . liefert die Behauptung.
2
Bemerkungen: • Der Satz gilt nur bei exakter Rechnung und bei exakter Schrittweite • alternativ k¨onnte man gleich das Gleichungssystem H x˜ + b = 0 l¨osen – mit dem Cholesky-Verfahren. • Ein Schritt BFGS entspricht im Rechenaufwand dem des ganzen Cholesky-Verfahrens. D.h. BFGS f¨ ur quadratische Aufgaben lohnt sich nicht. Es ist auch mehr f¨ ur nichtlineare Probleme gedacht (z. B. so in MATLAB oder NAGLIB implementiert). 4.7.6
Das BFGS-Verfahren fu ¨ r nichtlineare Optimierungsaufgaben
Das Verfahren verl¨auft analog zum quadratischen Fall. Nur haben wir jetzt nicht mehr die exakte Schrittweite σE zur Verf¨ ugung, die sich im quadratischen Fall so gut berechnen l¨asst. Man kann beweisen • Lineare Konvergenz bei Verwendung effizienter Schrittweiten unter Voraussetzung (V LK) [1, Satz 4.8.12]. • Gilt zus¨atzlich noch (V2L) und werden die Schrittweiten nach Armijo oder Powell gew¨ahlt, dann tritt superlineare Konvergenz ein. Die erzeugten Matrizen A(k) sind gem. positiv definit und beschr¨ankt [1, Satz 4.8.13]. Es gilt nicht notwendig A(k) → f 00 (˜ x), sondern ¡ ¢ k A(k) − f 00 (˜ x) d(k) k → 0. lim k→∞ k d(k) k
4.8 4.8.1
Verfahren konjugierter Richtungen CG-Verfahren fu ¨ r quadratische Optimierungsprobleme
Beim BFGS-Verfahren sind die erzeugten Richtungen zueinander H-orthogonal und man hat Konvergenz nach h¨ochstens n Schritten. Nachteil: Die Matrizen A(k) m¨ ussen abgespeichert werden. Bei hoher Dimension n ist das ein Problem: Bei 10000 Unbekannten m¨ ussen 100 · 106 Elemente abgespeichert und berechnet werden. Außerdem hat eine Matrix h¨aufig eine besondere Struktur, die es erlaubt, Matrix-VektorProdukte effizient auszuf¨ uhren, ohne daf¨ ur die Matrix aufbauen zu m¨ ussen. Die Hilbert-
55
Matrix z.B. ist definiert als 1 , d.h., es gilt i+j+1 n X vj [Hv]i = Hij vj = . i+j+1 j=1 Hij =
Die Idee der CG-Verfahren (Conjugate Gradient) ist es, H-orthogonale Richtungen ohne Ak -update zu generieren. Betrachte (QU)
minn f(x) =
x∈R
1 T x Hx + bT x , 2
H symmetrisch, positiv definit
Lemma 4.8.1 Seien d0 , d1 , ..., dn−1 konjugierte Richtungen. F¨ ur jedes x0 ∈ Rn liefert xk+1 = xk + σk dk σk = −
∇f (xk )T dk (dk )T Hdk
(exakte Schrittweite)
nach h¨ochstens n Schritten die L¨osung xn = −H −1 b. Beweis. x˜ − x0 =
n−1 X
σi di
(Mult. von links mit (di )T ) · H
i=0 k T
⇒
(d ) H(˜ x − x0 ) (dk )T (Hx0 + b) σk = =− (dk )T Hdk (dk )T Hdk (dk )T ∇f (xk ) (dk )T (Hxk + b) = − ··· = − (dk )T Hdk (dk )T Hdk 2
Korollar 4.1 xk minimiert f nicht nur auf {xk−1 + σdk−1 |σ ∈ R} sondern auch auf x0 + Vk , mit Vk = span{d0 , ..., dk−1 }. Insbesondere gilt dTi ∇f (xk ) = 0
f¨ ur
i < k.
(∗)
Beweis. Es gen¨ ugt, (∗) zu zeigen. ur Es gilt dTi ∇f (xi+1 ) = dTi (Hxi+1 + b) = dTi (Hxi + b) +σi dTi Hdi = 0 d.h. (∗) wahr f¨ | {z } =∇f (xi ) k+1
k = 1 und f¨ ur i = k − 1 falls k > 1. Es gilt ∇f (x i T ⇒ (d ) (∇f (xk+1 ) − ∇f (xk )) = 0 f¨ ur k > i
56
) − ∇f (xk ) = H(xk+1 − xk ) = σk Hdk 2
Verfahren 4.8.1 (Konjugierte Richtungen) a) W¨ahle x0 , berechne d0 = −∇f (x0 ) = −(Hx0 + b) k := 0 b) Wenn ∇f (xk ) = 0
→
fertig
c) Berechne σk =
∇f (xk )T ∇f (xk ) (dk )T Hdk
xk+1 = xk + σk dk ∇f (xk+1 ) = Hxk+1 + b = ∇f (xk ) + σk Hdk βk =
k∇f (xk+1 )k2 k∇f (xk )k2
dk+1 = −∇f (xk+1 ) + βk dk . Bemerkung: σk entspricht der exakten Schrittweite, denn σE = −
∇f (xk )T dk ∇f (xk )T (−∇f (xk ) + βk−1 dk−1 ) = − (dk )T Hdk (dk )T Hdk ∇f (xk )T ∇f (xk ) = (dk )T Hdk
Satz 4.8.1 (Eigenschaften des CG-Verfahrens). Solange ∇f (xk−1 ) 6= 0 gelten folgende Aussagen: (1) dk−1 6= 0 (2) Vk : = span{∇f(x0 ), H∇f(x0 ), ..., Hk−1 ∇f(x0 )} = span{∇f(x0 ), ..., ∇f(xk−1 )} = span{d0 , ..., dk−1 } (3) d0 , ..., dk−1 sind paarweise konjugiert (4) f (xk ) = min f (x0 + z) z∈Vk
Beweis. F¨ ur k = 1 okay, Behauptung gelte f¨ ur k − 1. Zur Abk¨ urzung definieren wir k k g := ∇f (x ). Dann g k = g k−1 + σk−1 Hdk−1 ⇒ g k ∈ Vk+1
und span{g0 , ..., gk } ⊂ Vk+1 .
57
Nach Induktionsvoraussetzung sind d0 , ..., dk−1 konjugiert. Folgerung 4.1 ⇒ (di )T g k = 0 f¨ ur i < k
(∗)
g k 6= 0 ⇒ {d0 , ..., dk−1 , g k } und damit auch {g 0 , ..., g k−1 , g k } sind linear unabh¨angig mit Dimension k + 1 ⇒ span{g 0 , ..., g k } = Vk+1 . Es gilt g k + dk = βk−1 dk−1 ∈ Vk ⇒ Vk+1 = span{d0 , ..., dk } ⇒ (2). Wegen g k + dk ∈ Vk folgt dk 6= 0 falls g k 6= 0 ⇒ (1). (3) ergibt sich durch l¨angeres rumrechnen unter Ausnutzung von (*) und (2). (4) folgt aus Lemma 4.8.1. 4.8.2
2
Analyse des CG-Verfahrens
F¨ ur symmetrische, positiv definite (n, n) - Matrizen H mit Eigenwerten λ1 < . . . < λn ist die Kondition definiert durch λn . κ(H) = λ1 Wendet man das Gradientenverfahren mit exakter Schrittweite auf unser quadratisches Optimierungsproblem an, so ergibt sich f¨ ur den Fehler in der Energienorm kxkH := √ T x Hx (vgl. z.B. [7]): µ ¶k κ(H) − 1 k+1 k˜ x − x kH ≤ k˜ x − x0 kH . κ(H) + 1 F¨ ur das Verfahren der Konjugierten Gradienten ergibt sich folgende, bessere Absch¨atzung: Satz 4.8.2 Der Approximationsfehler von x˜ −xk im CG-Verfahren l¨asst sich in der Enerp gienorm kykH = y T Hy absch¨atzen durch Ãp !k κ(H) − 1 k˜ x − xk k H ≤ 2 p k˜ x − x0 k H κ(H) + 1 Beweis. Nach Satz 4.8.1 gilt k˜ x − xk k ≤ k˜ x − yk ∀y ∈ Vk .
(∗)
Ebenfalls nach Satz 4.8.1 l¨aßt sich y ∈ Vk als Linarkombination von Potenzen von H angewendet auf g 0 schreiben. D.h. es gibt ein Polynom Pk−1 vom Grad k − 1 so dass y = x0 + Pk−1 (H)g 0 = x0 + Pk−1 (H)(Hx0 + b) = x0 + HPk−1 (H)(x0 − x˜) ⇒ x˜ − y = x − x0 − HPk−1 (H)(x0 − x˜) = (I + HPk−1 (H))(˜ x − x0 ) | {z } =:Qk (H)
58
mit einem Polynom Qk ∈ Pk vom Grad k mit Qk (0) = 1. Sei {z1 , ..., zn } ein Orthonormalsystem System aus Eigenvektoren von H, dann gilt 0
x˜ − x = ⇒ x˜ − y =
n X j=1 n X
cj zj cj Qk (H)zj =
j=1
⇒ k˜ x−
yk2H
= =
" n X
n X j=1
#T cj Qk (λj )zj
cj Qk (λj )zj Ã
H
n X
! cj Qk (λj )zj
j=1
j=1 n X
λj c2j Q2k (λj )
j=1
≤
min Qk ∈Pk Qk (0)=1
max |Qk (λ)| λ
2
n X
λj c2j .
j=1
| {z } =k˜ x−x0 k2H
W¨ahlt man als Polynome die Chebyshev-Polynome vom Grad ≤ k so erh¨alt man nach Transformations des Definitionsbereichs auf [λ1 , λn ] die Absch¨atzung α :=
min Qk ∈Pk Qk (0)=1
µ√ ¶k κ−1 max |Qk (λi )| ≤ 2 √ 1≤i≤n κ+1
mit κ = κ(H) = 4.8.3
λn . λ1
Vorkonditionierung
Der letzte Satz besagt, dass f¨ ur das CG-Verfahren gute Konvergenz zu erwarten ist, falls die Kondition der Matrix klein ist. Die Idee der Vorkonditionierung besteht darin, das Problem so zu modifizieren, dass die Kondition der resultierenden Systemmatrix klein ist, d.h. die H¨ohenlinien von f sollen so gut wie m¨oglich Kreise approximieren. Im folgenden w¨ahlen wir eine positiv definite Matrix B und betrachten das Problem ¯ x¯ = −b , H
¯ =H ·B. mit x¯ = B −1 x und H
¯ = H · B nicht selbstadjungiert bzgl. des euklidischen Skalarprodukts aber Achtung: H bzgl. (., .)B = denn (x, HBy)B = xT BHBy = (HBx)T By = (HB, y)B Die wesentliche Idee des vorkonditionierten CG - Verfahrens ist, das obige Ersatzproblem zu l¨osen, wobei das euklidische Skalarprodukt (., .) durch (., .)B ersetzt werden muss. Details finden sich z. B. im Buch von Deuflhard und Hohmann.1 1
Deuflhard/Hohmann:Numerische Mathematik 1. de Gruyter, Berlin 1993.
59
F¨ ur den Approximationsfehler kann man dann zeigen: Ãp k
k˜ x − x kH ≤ 2
κ(H · B) − 1
p
κ(H · B) − 1
!k k˜ x − x0 k A .
Die praktische Aufgabe der Vorkonditionierung besteht nun darin eine positiv definite symmetrische Matrix B zu finden so dass einerseits Produkte By einfach auszuwerten sind und andererseits die Kondition κ(HB) klein“ ist. ” Typische Beispiele sind (i) B = D−1 , wobei D = diag(H) die Diagonalmatrix mit den Diagonalelementen von H ist. (ii) Unvollst¨andige Cholesky-Zerlegung von H. 4.8.4
CG-Verfahren fu ¨ r nichtlineare Optimierungsprobleme
Das Verfahren wurde zuerst von Fletcher und Reeves untersucht, deshalb wird es auch als Fletcher-Reeves-Verfahren bezeichnet. Es verl¨auft v¨ollig analog zum letzten Verfahren. Unter der (theoretischen) Annahme exakter Schrittweiten σk = σE kann man Konvergenz zeigen (vgl. z.B. [1, Satz 4.9.4]).
60
5
Probleme mit linearen Restriktionen – Theorie
5.1
Ein Beispiel
Wir nehmen als Beispiel ein Lagerhaltungsproblem • Firma verkauft Produkt • Verkauf wird zu diskreten Zeitpunkten t0 < t1 < . . . < tN beobachtet • Betrieb eines Lagers, Belieferung am Anfang jeder Periode [ti , ti+1 ] Ziel: Steuerung der Lagerhaltung des Produkts, um minimale Gesamtkosten zu haben • Gr¨oßen: zi ri ui z0
Lagerbestand bei ti vor Neulieferung Nachfrage nach Produkt in [ti , ti+1 ] Liefermenge zum Zeitpunkt ti = a ≥ 0 ist vorgegeben (Anfangsbestand)
Lagerbilanzgleichung zi+1 = zi − ri + ui
i = 0, . . . , N − 1.
Gegeben angenommen: r1 , . . . , rN . Gesuchte Variablen: z = (z1 , . . . , zN )T , u = (u0 , . . . , uN −1 )T µ ¶ z x := . u Kosten: fi (zi , ui ) (Liefern, Einkaufen, Lagern) Zielfunktion: 2 f (z, u) = ρzN +
N −1 X
fi (zi , ui )
i=0
minimaler Endbestand Wichtungsfaktor ρ ≥ 0 Am Ende ergibt sich folgendes Problem: 2 min f (z, u) = ρzN bei (LH1) 0 ≤ ui ≤ bi zi+1 = zi − ri + ui zi ≥ 0
+
NP −1
fi (zi , ui )
i=0
i = 0, . . . , N − 1 Kapazit¨atsschranken i = 0, . . . , N − 1 Lagerbilanz i = 1, . . . , N Nichtnegativit¨at
Dabei ist z0 = a vorgegeben.
61
Das Problem hat die allgemeine Form min f (x),
(P)
x∈F ,
mit der zul¨assigen Menge © ¡ ¢ ª F = x = uz | z ≥ 0, 0 ≤ u ≤ b, zi+1 = zi − ri + ui , a = 0, . . . , N − 1 Verallgemeinerung: Bisher waren zi , ui reelle Variablen. Bei mehreren Produkten k¨onnen das Vektoren sein. Das ergibt schließlich die Aufgabe (LH2) min f (z, u) = ρ k zN k2 +
NP −1
fi (zi , ui )
i=0
0 ≤ ui ≤ bi zi+1 = Ai zi + Bi ui − ri zi ≥ 0
mit zi ∈ Rn , ui ∈ Rn , ri ∈ Rn und entsprechenden Matrizen Ai , Bi .
5.2
Optimalit¨ atsbedingungen erster Ordnung
Wir brauchen zun¨achst einige Grundlagen und Hilfsmittel der konvexen Analysis. Definition 5.2.1 (Kegel) Eine nichtleere Teilmenge K ⊂ Rn heißt Kegel, wenn x ∈ K ⇒ αx ∈ K Beispiel 5.2.1
• {x ∈ Rn | xi > 0
∀α > 0,
∀i }
• {x ∈ Rn | xi ≥ 0 ∀i } analog abgeschlossen (nichtnegativer Orthant) • {x ∈ R2 | x1 ≥ 0 ∧ x2 = 0 oder x1 = 0 ∧ x2 ≥ 0} Bezeichnungen: a) x ≥ 0 ⇔ xi ≥ 0 ∀i = 1, . . . , n b) A, B ⊂ Rn seien Mengen, α, β ∈ R αA + βB := {αa + βB | a ∈ A, b ∈ B} Lemma 5.2.1 (Konvexit¨atskriterium) Ein Kegel K ⊂ Rn ist genau dann konvex, wenn K +K ⊂K ¨ Beweis: U.A.
62
Beispiel 5.2.2 Ein nichtkonvexer Kegel f¨ ur den offenbar gilt K + K = R2 6⊂ K K
K
Nach dieser allgemeinen Kegelei kommen nun die Kegel, welche f¨ ur die Optimierungstheorie von ausschlaggebender Bedeutung sind: Definition 5.2.2 (Konische H¨ ulle) Es sei S ⊂ Rn und x ∈ S fest. K(S, x) = {α(s − x) | s ∈ S, α > 0} heißt der von s − x erzeugte Kegel oder konische Hu ¨ lle von s − x. Andere Schreibweise:
[
α(S − x)
α>0
.
Lemma 5.2.2 Ist C ⊂ Rn konvex sowie x ∈ C, dann ist auch K(C, x) konvex. Beispiel 5.2.3
a)
S K(S,x) x=0
63
b) S = {(1, 0)T , (0, 1)T , (1, 1)T }
1
K(S,X)
1
c)
K(C,x)
C
x
d) n K(C,x) =R x C
e) Auch bei abgeschlossener Menge C muss K(C, x) nicht abgeschlossen sein: µµ ¶ ¶ 0 ¯ C=B ,1 , 1
µ ¶ 0 x= 0 ½µ ¶¾ © ª 0 K(C, x) = y ∈ R2 | y2 > 0 ∪ 0 64
C
x
f ) C = R+ = {x | x ≥ 0}, x ∈ C ⇒ K(C, x) = {d ∈ Rn | di ≥ 0, wenn xi = 0} g) ai ∈ Rn , i = 1, . . . , m, m ≤ n, b ∈ Rm fest C = {x ∈ Rn | hai , xi = bi , i = 1, . . . , m} aT1 W¨ahlen wir A = ... , so amT C = {x | Ax = b} Hier gilt
¨ (Ubungsaufgabe)
K(C, x) = {y | Ay = 0}, falls x ∈ C
Definition 5.2.3 ( Normalenkegel) Sei C ⊂ Rn konvex, x ∈ C. Ein Vektor s ∈ Rn heißt Normalenrichtung von C in x, wenn hs, y − xi ≤ 0 ∀y ∈ C. Die Menge N (C, x) = {s | s ist Normalenrichtg.} heißt Normalenkegel von C in X.
C x N(C,x)
65
Bemerkung: • N (C, x) ist stets abgeschlossen. • x ∈ intC ⇒ N (C, x) = {0} Definition 5.2.4 (Dualkegel) K ⊂ Rn sei konvexer Kegel. Dann heißt K ∗ = {s ∈ Rn | hs, xi ≤ 0 ∀x ∈ K} Dual- oder Polarkegel zu K. Bemerkung: • 0 ∈ K ⇒ K ∗ = N (K, 0) (s. oben) • K1 , K2 konvexe Kegel ⇒ K1∗ ⊃ K2∗ • K ∗ ist immer konvex und abgeschlossen Satz 5.2.1 Ist C ⊂ Rn konvex und x ∈ C, so gilt N (C, x) = K(C, x)∗ . Beweis: (i)
00
⊂00 : Sei s ∈ N (C, x), d. h. hs, y − xi ≤ 0 ∀y ∈ C ⇒ hs, α(y − x)i ≤ 0 ∀y ∈ C, α > 0 ⇒ hs, zi ≤ 0 ∀z ∈ K(C, x)
(∗)
und damit s ∈ K(C, x)∗ . (ii)
00
⊃00 : Sei s ∈ K(C, x)∗ , d. h. (∗) gilt. Damit insbesondere f¨ ur z = 1 · (y − x) ⇒ s ∈ N (C, x). 2
Unscheinbar, aber dennoch grundlegend ist wiederum Satz 5.2.2 F sei nichtleer und konvex, f in x˜ ∈ F differenzierbar und x˜ lokales Minimum von (P). Dann gilt ∇f (˜ x)T (x − x˜) ≥ 0 ∀x ∈ F
66
(Variationsungleichung)
(5.35)
Beweis: Folgt aus Satz 3.1.2 wie die Variationsungleichung (3.7)
2
Alternative Darstellung von (5.35): Setze s = ∇f (˜ x). Dann gilt hs, x − x˜i ≥ 0 ∀x ∈ F, also h−s, x − x˜i ≤ 0. Damit ¯ N (F, x˜) ∇f (˜ x ∈ N (F, x˜) oder ∇f (˜ x)∈ oder
0 ∈ ∇f (˜ x) + N (F, x˜)
(Verallgemeinerung von 0 = ∇f )
(5.36)
oder auch ∇f (˜ x) ∈ −K(F, x˜)∗ . Bemerkung: Ist f auch konvex, so ist (P) eine konvexe Optimierungsaufgabe. ur Optimalit¨at. Dann ist (5.36) auch hinreichend f¨ Beispiel 5.2.4 (Vorzeichenbedingungen) Wir betrachten das Problem min f (x),
(PV)
x≥0
x∈Rn
Die lokale L¨osung sei x˜ ∈ F = R+ . n o ⇒ K(F, x˜) = d ∈ Rn | di ≥ 0, falls x˜i = 0 n N (F, x˜) = s ∈ Rn | si ≤ 0, wenn x˜i = 0, si = 0, wenn
o x˜i > 0
Aus Satz 5.2.2 folgt also −∇f (˜ x)i ≤ 0, ∇f (˜ x)i = 0,
wo x˜i = 0 wo x˜i > 0.
Das h¨atten wir aber auch direkt aus der Variationsungleichung herleiten k¨onnen: T
∇f (˜ x) (x − x˜) ≥ 0 ⇔
n X
∇f (˜ x)i (xi − x2i ) ≥ 0
i=1
und wegen Unabh¨angigkeit der Komponenten ∇f (˜ x)i (xi − x˜i ) ≥ 0 ∀xi ≥ 0 ∀i d. h. ∇f (˜ x)i · x˜i ≤ ∇f (˜ x)i · x ∀x ≥ 0 Damit muss x˜i das Minimum der rechten Seite annehmen unter allen x ≥ 0. Damit ¾ ∇f (˜ x)i ≥ 0 , falls x˜i = 0 Kann numerisch ∇f (˜ x)i = 0 , falls x˜i > 0 als Abbruchkrit. genutzt werden. Es folgt auch: ∇f (˜ x)i > 0 ⇒ x˜i = 0.
67
Beispiel 5.2.5 Lineare Gleichungsnebenbedingungen min f (x),
x∈Rn
∀x = b .
A : (m, n) − Matrix
(PLG)
Hier: F = {x | Ax = b} Wir hatten bereits erw¨ahnt, dass hier gilt K(F, x˜) = {x | Ax = 0} = U
linearer Unterraum
Offenbar gilt dann K(F, x˜)∗ = N (F, x˜) = U ⊥ . Wegen U = ker A folgt U ⊥ = im {AT λ | λ ∈ Rm } Wegen der Variationsungleichung in der Form (5.36): −∇f (˜ x) ∈ N (F, x˜) folgt
−∇f (˜ x) ∈ im AT −∇f (˜ x) = AT λ 0 = ∇f (˜ x) + AT λ
(Klassische Multiplikatorenregel nach Lagrange mit Lagrange Multiplikator λ. Wird sp¨ater noch allgemeiner diskutiert!)
5.3 5.3.1
Optimalit¨ atsbedingungen zweiter Ordnung Notwendige Bedingungen
Wir beweisen nun ein Analogon zum entsprechenden Satz f¨ ur unrestringierte Aufgaben. Satz 5.3.1 Es sei x˜ ∈ F lokales Minimum von (P) und F konvex. Dann gilt neben der notwendigen Bedingung 1. Ordnung auch die notwendige Bedingung 2. Ordnung (x − x˜)T f 00 (˜ x)(x − x˜) ≥ 0 ∀x ∈ F mit ∇f (˜ x)T (x − x˜) = 0
(5.37)
Beweis: Wir setzen d = x − x˜ und fordern ∇f (˜ x)T d = 0. Dann gilt x˜ + td ∈ F f¨ ur alle t ∈ [0, 1] und f (˜ x + td) − f (˜ x) ≥ 0 f¨ ur t hinreichend klein x)d + o(t2 ) ⇒ 0 ≤ ∇f (˜ x)td + 1 t2 dT f 00 (˜ | {z } 2
| : 21 t2
=0
o(t2 ) 0 ≤ d f (˜ x)d + 2 2 t } | {z T
00
t ↓ 0 ergibt die Behauptung
→0, t↓0
2
68
Bemerkung: Man kann offenbar (5.37) auch so schreiben: dT f 00 (˜ x)d ≥ 0 ∀d ∈ K(F, x˜) mit ∇f (˜ x)T d = 0.
(5.38)
(man multipliziere (5.37) mit α > 0 durch) Beispiel 5.3.1 (Gleichungsnebenbedingungen) Wir wissen: Hier gilt K(F, x˜) = U ⇒ dT f 00 (˜ x)d ≥ 0
(5.39)
∀d ∈ U mit ∇f (˜ x)T d = 0.
Außerdem wissen wir −∇f ∈ N (F, x˜) = U ⊥ , damit gilt automatisch ∇f (˜ x)T d = 0 und somit dT f 00 (˜ x)d ≥ 0
f¨ ur alle d ∈ U,
d. h. f¨ ur alle d mit
Ad = 0
⇒ f 00 (˜ x) muss auf dem linearen Unterraum U positiv semidefinit sein. 5.3.2
Hinreichende Bedingungen
Satz 5.3.2 Die Funktion f sei in x˜ ∈ F zweimal stetig differenzierbar und die notwendige Bedingung 1. Ordnung sei erf¨ ullt. Zus¨atzlich gelte dT f 00 (˜ x)d ≥ α k d k2
(5.40)
f¨ ur alle d ∈ cl K(F, x˜) mit ∇f (˜ x)T d = 0 mit einem α > 0. Dann existiert zu jedem β ∈ (0, α/2) ein % > 0, so dass f (x) > f (˜ x) +
β kx − x˜k2 2
(quadratische Wachstumsbedingung)
f¨ ur alle x ∈ F ∩ B(˜ x, %), x 6= x˜. Damit ist x˜ striktes lokales Minimum. Beweis: (Indirekt). Die Behauptung sei falsch. Dann existiert ein β ∈ (0, α/2) und eine Folge {xi } ⊂ F mit xi → x˜, xi 6= x˜ ∀i ∈ N und f (xi ) ≤ f (˜ x) +
β i kx − x˜k2 2
∀i ∈ N .
(∗)
Wir zeigen, dass daraus β ≥ α folgt, also ein Widerspruch. i
−˜ x • Folge di = kxxi −˜ durchl¨auft die (kompakte) Einheitskugeloberfl¨ache. Daher existiert xk eine Teilfolge – o.B.d.A. sei das di selbst – mit di → d. Dann gilt kdk = 1.
69
• Außerdem gilt die Variationsungleichung f¨ ur x˜, also h∇f (˜ x), xi − x˜i ≥ 0 ,
daher h∇f (˜ x), di i ≥ 0 und so ∇f (˜ x)T d ≥ 0 .
Außerdem d ∈ cl K(F, x˜), da xi − x˜ ∈ K ∀i. Andererseits muss die Ungleichung ∇ (˜ x)T d ≤ 0 gelten, denn mit Taylorentwicklung in (∗): f (˜ x) +
β i kx − x˜k2 ≥ f (xi ) 2 = f (˜ x) + ∇f (˜ x)T (xi − x˜) + r1 (xi − x˜) .
Wir teilen durch kxi − x˜k, vorher streichen wir f (˜ x) auf beiden Seiten. Dann β xi − x˜ r1 (xi − x˜) + kxi − x˜k ≥ ∇f (˜ x)T i 2 | {z } kx − x˜k kxi − x˜k | {z } | {z } →0 →d
→0 , xi →˜ x
⇒ ∇f (˜ x)T d ≤ 0. Damit ∇f (˜ x) T d = 0 .
(5.41)
• Nun gehen wir nochmals in (∗), entwickeln aber bis Ordnung 2, f (˜ x) +
β i kx − x˜k2 ≥ f (xi ) 2
1 = f (˜ x) + ∇f (˜ x)T (xi − x˜) + (xi − x˜)T f 00 (˜ x)(xi − x˜) + r2 (xi −˜ x) | {z } 2 ≥ 0 , Variationsungleichung
Wir teilen durch kxi − x˜k2 , β i 2 1 i T 00 r2 (xi − x˜) kd k ≥ (d ) f (˜ x)di + i 2 2 kx − x˜k2 | {z } →0
i→∞⇒ β 1 α kdk2 ≥ dT f 00 (˜ x)d ≥ kdk2 2 2 2 nach Voraussetzung der hinreichenden Bedingung, denn wir haben d ∈ clK(F, x˜) und ∇f (˜ x)T d = 0 wegen 5.41. Außerdem gilt kdk = 1 ⇒β≥α ein Widerspruch!
2
70
z x
C
Beispiel 5.3.2 (Projektion auf eine konvexe Menge) Sei C ⊂ Rn nicht leer, konvex, und z ∈ / C fest gew¨ahlt. Wir suchen das Element x˜ ∈ C kleinsten Abstands zu z. Wir betrachten also die Aufgabe min f (x) = kx − yk2 . x∈C
Es gilt f (x) = hx − y, x − yi , ∇f (x)T d = 2hx − y, di (d1 )T f 00 (x)(d2 ) = 2hd1 , d2 i • Notwendige Bedingung 1. Ordnung f¨ ur L¨osung x˜: h˜ x − y, x − x˜ ≥ 0 ∀x ∈ Ci
Charakterisierung der Projektion eines Punktes auf eine konvexe Menge
(∗)
• Hinreichende Bedingung 2. Ordnung: Wir erhalten ganz einfach dT f 00 (˜ x)d = 2hd, di = 2kdk2 . Positive Definitheit auf dem ganzen Raum! Nach unserem letzten Satz ist damit jedes x˜, welches (∗) erf¨ ullt, lokales striktes Minimum. Wegen Konvexit¨at sogar das globale. Als wichtige Grundlage f¨ ur die Optimierung beweisen wir damit einen Trennungssatz.
z
s
x x
C
E
Satz 5.3.3 (Trennungssatz). Es sei C ⊂ Rn nichtleer, abgeschlossen und konvex, z 6∈ C. Dann gibt es eine Hyperebene, welche C und {z} strikt trennt, d. h., es existiert ein s 6= 0 ∈ Rn mit hs, zi > suphs, xi . x∈C
71
(5.42)
Bevor wir (5.42) beweisen, schreiben wir das Ganze etwas einleuchtender auf: hs, zi ≥ c + hs, xi ∀x ∈ C mit einem gewissen c > 0, hs, z − xi ≥ c ∀x ∈ C . Damit trennt die Hyperebene E = {x|hs, z − xi = c} die Menge C und {z}. Beweis: Geometrisch motivierte Annahme: s = z − x˜. Wir setzen also s = z − x˜. Dann hz − x˜, x − x˜i ≤ 0 ∀x ∈ C hz| {z − x˜}, x − z + |z {z − x˜}i ≤ 0 ∀x ∈ C s
s
hs, x − zi + ksk2 ≤ 0 das ist dem Obigen ¨aquivalent. |{z} C
2 Beispiel 5.3.3 (Gleichungsnebenbedingung). Betrachten wir die Aufgabe min f (x) , Ax = b . Hier muss positive Definitheit von f 00 (˜ x) gefordert werden auf K(F, x˜) ∩ {d|∇f (˜ x)T d = 0} = U | {z } | {z } U erf¨ ullt wegen ∇f ∈U ⊥ also erhalten wir folgende hinreichende Bedingung 2. Ordnung:
f¨ ur alle d mit
dT f 00 (˜ x)d ≥ αkdk2 Ad = 0 .
Positive Definitheit von f auf dem von den linearisierten Nebenbedingungen erzeugten ” Unterraum“ Beispiel 5.3.4 min f (x) = −(x1 x2 + x2 x3 + x1 x3 ) bei x1 + x2 + x3 − 3 = 0 Notwendige Bedingung (Variations(un)gleichung) x2 + x3 ∇f T d = 0 ∇f = − x1 + x3 x2 + x1 f¨ ur alle d mit d1 + d2 + d3 = 0 . Wir zeigen: x˜ = (1, 1, 1)T ist lokales Minimum: d1 T • ∇f (1, 1, 1) d = −2(1, 1, 1) · d2 = −2(d1 + d2 + d3 ) = 0 falls d1 + d2 + d3 = 0 d3 72
⇒ notwendige Bedingung erf¨ ullt 0 1 1 f 00 (1, 1, 1) = − 1 0 1 1 1 0 • f 00 ist offenbar nicht positiv definit (det f 00 = −2). Dennoch ist die hinreichende Bedingung 2. Ordnung erf¨ ullt, denn: d1 + d2 + d3 d2 + d3 d1 d1 f 00 (˜ x) d2 − d1 + d3 − d1 + d2 + d3 + d2 = +d d1 + d2 + d3 d1 + d2 d3 d3 | {z } = 0 falls d1 + d2 + d3 = 0 ⇒ dT f 00 (˜ x)d = dT d = kdk2
falls d1 + d2 + d3 = 0.
Positive Definitheit auf Unterraum ⇒ x˜ ist lokales Minimum.
5.4
Gleichungsnebenbedingungen
Wir untersuchen nun detaillierter A : (m, n) Matrix mit m ≤ n
min f (x) , Ax = b
(PLG)
Hier ist F = {x|Ax = b} konvex und abgeschlossen. 5.4.1
Optimalit¨ atsbedingungen erster Ordnung
Satz 5.4.1 (Multiplikatorenregel) Ist x˜ lokales Minimum von (P LG) und f in x˜ differenzierbar, dann existiert ein λ ∈ Rm , so dass ∇f (˜ x) + AT λ = 0 .
(5.43)
Hat A vollen Rang, dann ist λ eindeutig bestimmt. Beweis: (5.43) haben wir schon bewiesen (Beispiel 5.2.5). Eindeutigkeit von λ: (5.43) heißt λ1 a1 + . . . + λm am = −∇f , wobei (ai )T die Zeilenvektoren von A sind, also die Spalten von AT . Hat A vollen Rang, dann sind a1 , ..., am wegen m ≤n linear unabh¨angig ⇒ λ eindeutig bestimmt. 2 So sollte man aber nicht versuchen, sich den Satz einzupr¨agen. Sehr pr¨agnant werden alle unsere weiteren Optimalit¨atsbedingungen durch Einf¨ uhrung einer Lagrange-Funktion. Generell: Lagrange-Funktion = f + angehangene Nebenbedingungen. Hier:
73
Definition 5.4.1 (Lagrange-Funktion) L(x, λ) = f (x) + λT (Ax − b) Der Vektor λ heißt Lagrangescher Multiplikator oder (wenn man etwas pr¨aziser sein will) Vektor der Lagrangeschen Multiplikatoren. Dann ergibt sich die Bedingung des letzten Satzes ganz einfach als ∇x L(˜ x, λ) = 0 denn ∇x L(˜ x, λ) = ∇f (˜ x) + AT λ . Aber zu den notwendigen Bedingungen geh¨ort nat¨ urlich auch die Nebenbedingung Ax = b selbst. Diese bekommt man, wie man sofort sieht, aus ∇λ L(˜ x, λ) = 0 . Insgesamt erhalten wir folgendes Optimalit¨atssystem: ∇f (x) + AT λ = 0 Ax − b =0
oder
∇x L(x, λ) = 0 ∇λ L(x, λ) = 0
(5.44)
Definition 5.4.2 Jedes x ∈ Rn , welches mit einem λ ∈ Rm das Optimalit¨atssystem (5.44) erf¨ ullt, heißt station¨arer Punkt unserer Optimierungsaufgabe. Nicht jeder station¨are Punkt ist eine (lokale) L¨osung, aber es gilt: Satz 5.4.2 Ist f konvex, dann ist jeder station¨are Punkt x˜ globale L¨osung von (PLG), d. h., hier ist (5.44) nicht nur notwendige sondern auch hinreichende Optimalit¨atsbedingung. 5.4.2
Bedingungen zweiter Ordnung bei Gleichungsrestriktionen
Aus den allgemeinen Betrachtungen vorher erhalten wir als Spezialfall Satz 5.4.3 Sei f ∈ C 2 in x˜, die notwendige Bedingung (5.44) erf¨ ullt und es gelte dT f 00 (˜ x)d ≥ αkdk2 f¨ ur alle d ∈ Rn mit Ad = 0. Dann ist x˜ striktes lokales Minimum f¨ ur (PLG).
74
(5.45)
Beispiel 5.4.1 Wir schauen uns nochmals die Aufgabe bei
min f (x) = −(x1 x2 + x2 x3 + x1 x3 ) x1 + x2 + x3 = 3
an. • Lagrange-Funktion: L(x, λ) = −(x1 x2 + x2 x3 + x1 x3 ) + λ(x1 + x2 + x3 − 3) • Notwendige Bedingung 1. Ordnung 1 x2 + x3 ∇x L = − x1 + x3 + λ 1 = 0 x1 + x2 1
3 Gleichungen f¨ ur 4 Unbekannte. Die vierte ist die Nebenbedingung.
• Hinreichende Bedingung zweiter Ordnung: dT f 00 (˜ x)d ≥ αkdk2
∀d : d1 + d2 + d3 = 0
• Das hatten wir bereits alles f¨ ur x˜ = (1, 1, 1)T nachgewiesen. Bemerkungen: (i) Die Bedingung (5.45) is ¨aquivalent zu dT L00x (˜ x, λ)d = 0 ∀d : Ad = 0 , denn hier gilt wegen Linearit¨at der Nebenbedingungen L00x = f 00 . So sollte man sich (5.45) merken (ii) Anstelle von Ad = 0 k¨onnen wir nat¨ urlich eleganter schreiben d ∈ ker A . 5.4.3
Nullraum-Matrizen
Die folgenden Beobachtungen werden sp¨ater f¨ ur numerische Verfahren gebraucht. Es gilt Rn = ker A ⊕ (ker A)T , d. h. es gibt eine eindeutige Zerlegung x = u + v, wobei u die Projektion von x auf ker A und v diejenige auf (ker A)T ist. Es gilt u = P x = (I − AT (AAT )−1 A)x | {z }
75
(5.46)
¨ falls A vollen Rang hat (Ubungsaufgabe). Wir fassen nun ein System von l Vektoren, die ker A aufspannen, zu einer (l, n)-Matrix Z zusammen. Dann gilt im Z = ker A, d. h. d ∈ ker A ⇔ d = Zz
mit z ∈ Rl .
Durchl¨auft z als Parameter ganz Rl , so durchl¨auft d ganz ker A. Die Matrix Z heißt Nullraum-Matrix. Aus der linearen Algebra ist bekannt: Die allgemeine L¨osung von Ax = b setzt sich zusammen aus einer speziellen L¨osung w und der allgemeinen L¨osung des homogenen Systems. Damit F = {x|Ax = b} = w + ker A = w + imZ , F = w + {Zz|z ∈ Rl } Durchl¨auft z ganz Rl , so durchl¨auft x = w + Zz ganz F. Damit ist Problem (PLG) ¨aquivalent zu min F (z) = f (w + Zz). z∈Rl
(5.47)
Das ist ein unrestringiertes Problem mit l ≤ n Variablen. Damit verbundene Verfahren heißen Reduktionsverfahren (variable-reduction methods). Beispiel 5.4.2 Die Projektionsmatrix P von oben ist eine Nullraum-Matrix. Allerdings ist dort l = n (P enth¨alt z.B. In als Anteil). (P LG) ⇔ minn F (z) = f (w + P z) z∈R
Beispiel 5.4.3 A habe vollen Rang. Dann o.B.d.A. die ersten m Spalten linear unabh¨angig und A = (A1 , A2 ) Ad = 0 ⇔ A1 d1 + A2 d2 = 0
A1 : m × m invertierbar A2 : “Rest” µ 1¶ →∈ Rm d . mit d = d2 →∈ Rn−m
Nun kann man nach d1 aufl¨osen, und nur noch d2 spielt als jetzt freie Variable eine Rolle: 2 Eliminationsmethode d1 = −A−1 1 A2 d ¶ µ −1 2 −A1 A2 d liegt in ker A . ⇒d= d2
Insgesamt ist µ Z=
−A−1 1 A2 In−m 76
¶
damit Nullraummatrix. (PLG) ist ¨aquivalent mit µ µ ¶ ¶ −A−1 1 A2 z min F (z) = min f w + In−m z∈Rn−m nur
l = n − m Variablen .
Berechnung von ∇F (z): F 0 (z) = f (w + Zz)0 = f 0 (w + Zz) ◦ Z
Kettenregel
⇒ ∇F (z) = Z T · ∇f (w + Zx) = Z T ∇f (x)
reduzierter Gradient
Berechnung von F 00 (z): F 0 (z)h1 =: ϕ(z) = f 0 (w + Zz) ◦ Zh1 = (f 0 (w + Zz)T , Zh1 ) = (Z T f 0 (w + Zz)T , h1 ) ⇒ (F 00 (z)h1 )h2 = ϕ0 (z)h2
=
(Z T f 00 (w + Zz)T ◦Zh2 , h1 ) | {z } 00 = f (...), wegen Symmetrie
Somit (F 00 (z)h1 )h2 = (Z T f 00 (w + Zz)Zh2 , h1 ) F 00 (z) = Z T f 00 (x)Z
reduzierte Hesse-Matrix
Man kann nun die Optimalit¨atsbedingungen auch in reduzierter Form aufschreiben, n¨amlich: Satz 5.4.4 ∇f (˜ x) + A T λ = 0
⇔
∇F (˜ z) = 0
mit
x˜ = w + Z z˜
Beweis: (i) ⇒: Sei mit λ ∈ Rm erf¨ ullt ∇f (˜ x) = −AT λ . Dann folgt wegen obiger Darstellung ∇F (˜ z ) = Z T ∇f (˜ x) = −Z T AT λ ⇒ ∇F (˜ z )T h = (−Z T AT λ, h) = −(AT , |{z} Zh ) = 0 ∀h ∈ker A
d. h. ∇F = 0 . (ii) Sei ∇F (˜ z ) = Z T ∇f (˜ x) = 0. Wir w¨ahlen d ∈ ker A beliebig. Dann gilt d = Zz und ∇f (˜ x)T d = ∇f (˜ x)T Zz = 0 ⇒ ∇f (˜ x) ⊥ ker A. Lineare Algebra: ∇f ∈ Im AT , also ∇f = AT µ . Setzen λ := −µ . 2 Analog vereinfachen sich die hinreichenden Bedingungen zweiter Ordnung:
77
Satz 5.4.5 Es sei f zweimal stetig in x˜ differenzierbar, Z eine Nullraum-Matrix von A und x˜ = w + Z z˜. Dann ist die positive Definitheit der reduzierten Hesse-Matrix F 00 (z) = Z T f 00 (˜ x)Z ¨aquivalent zur Existenz von α > 0 mit dT f 00 (˜ x)d ≥ αkdk2
∀d ∈ ker A .
(*)
Beweis: (i) ⇒: F 00 sei positiv definit und d ∈ ker A, also d = Zz. Dann dT f 00 (˜ x)d = (Zz)T f 00 (˜ x)Zz = z T Z T f 00 (˜ x)Z z | {z } F 00 (z) 2
≥ βkzk ≥ βkZk | {z }
−2
kdk
2
=α
(wegen positiver Definitheit von F 00 und
kdk ≤ kZk kzk ⇒ kzk ≥ kZk−1 kdk
(ii) ⇐: (*) sei erf¨ ullt, d.h. mit d = Zz (Zz)T f 00 (˜ x)Zz = z T Z T f 00 (˜ x)Z z ≥ αkdk. | {z } =F 00 (˜ z)
Daraus erzielt man leicht die positive Definitheit von F 00 . Beispiel 5.4.4 min f (x) = x21 + 2x22 + 3x3 bei x1 + 2x2 + 3x3 = 6 . Durch eine Nebenbedingung k¨onnen wir offenbar die Dimension um 1 reduzieren. A = (1, 2, 3 ) ↑ |{z} A1 A2
d1 + 2d2 + 3d3 = 0 m
d1 = −2d2 − 3d3
−2d2 −3d3 −2 −3 µ ¶ d = 1 0 2 d ∈ ker A ⇔ d = d2 d3 d3 0 1 | {z } Z
Spezielle L¨osung der inhomogenen Gleichung: 6 w = 0 . 0 Reduziertes freies Problem: min F (z1 , z2 ) = f (w + Zz) = f (6 − 2z1 − 3z2 , z1 , z2 ) = (6 − 2z1 − 3z2 )2 + 2z12 + z2
78
2
(entspricht ganz einfach der Elimination von x1 ). Station¨arer Punkt, d. h. ∇F (˜ z ) = 0, µ z˜ =
¶ 1/2 . 3/2
1/2 Wegen Satz 5.4.4 ⇒ x˜ = w + Zz = 1/2 l¨ost die notwendigen Bedingungen der 3/2 Lagrange Multiplikatorenregel. Konvexit¨at von f ⇒ x˜ ist L¨osung. Wir h¨atten aber auch einfach 2 00 4 f (x) = 0 µ −2 1 00 F (ˆ z) = −3 0
die hinreichende Bedingung nachpr¨ ufen k¨onnen: 0 0 ¶ 2 0 0 −2 3 0 0 4 0 1 0 1 0 0 0 0 1 ¶ µ µ ¶ −2 −3 12 12 −4 4 0 1 0 = positiv definit! = 12 18 −6 0 0 0 1
5.4.4
Quadratische Optimierungsprobleme
Als Spezialfall von (PLG) betrachten wir 1 min f (x) = hQx, xi + hq, xi 2 bei Ax = b mit (n, n)-Matrix Q, q ∈ Rn . Klar ist: Satz 5.4.6 Ist Q positiv definit auf ker A, d. h. dT Qd ≥ αkdk2
∀d ∈ ker A ,
dann hat (QG) genau eine L¨osung. Denn: f ist strikt konvex auf F! Besonders sch¨on ist hier das Optimalit¨ atssystem • ∇f = Qx + q
falls Q symmetrisch!
⇒ Qx + q + AT λ = 0 , Ax = b.
79
(QG)
Anders aufgeschrieben µ ¶µ ¶ µ ¶ −q Q AT x = A 0 λ b
Optimalit¨atssystem .
(5.48)
Jede L¨osung dieses Systems ist bei positiv definierter Matrix Q auf ker A und Matrix A mit vollem Rang eine L¨osung von (QG) (Konvexit¨at!). Wegen Satz 5.4.6 gibt es h¨ochstens eine. Umgekehrt existiert dann genau eine L¨osung des Optimalit¨atssystems, d.h. es gilt Lemma µ ¶5.4.1 Wenn m ≤ n, rang A = m, Q positiv definit auf ker A, dann ist die Matrix T Q A invertierbar. A 0 5.4.5
Dynamische Optimierungsprobleme
Probleme dieser Art sind sehr wichtig f¨ ur viele Probleme in Wissenschaft und Technik. Eigentlich kommen sie her von Optimalsteuerungsproblemen bei gew¨ohnlichen Differentialgleichungen.
ϕ 00 11 00 11 00 11
Beispiel 5.4.5 Optimale Steuerung eines schwingenden Pendels in die Ruhelage: Zeitraum: Auslenkung: Winkelgeschwindigkeit: Angreifende, steuerbare Kraft: Bewegungsgleichung:
t ∈ [0, T ] ϕ = ϕ(t) w = w(t) u = u(t)
ϕ(0) = ϕ0 w(0) = w0
w = ϕ˙
ϕ(t) ¨ = −c sin(ϕ(t)) + u(t) ϕ(0) = ϕ0 ϕ(0) ˙ = w0
c steht f¨ ur Verh¨altnis von Masse und Gravitation. Umformung als System 1. Ordnung w˙ = −c sin(v) + u ϕ˙ = w
µ z(t) :=
ϕ(t) w(t)
¶
Optimierungsziel: Ruhelage bei t = T , d.h. wir erhalten das Optimierungsproblem 1 min kz(T )k2 + ν 2 80
Z
T 0
u2 (t)dt
bei
µ
¶ µ ¶ w(t) 0 z(t) ˙ = + −c sin(v(t)) u(t) µ ¶ ϕ0 z(0) = = z0 . w0
Der zweite Term in der Zielfunktion misst die Energiekosten. Bei kleinen Schwingungen: sin ϕ ≈ ϕ Linearisierung, dann ergibt sich folgendes Optimalsteuerungsproblem Z T 1 2 u(t)2 dt min kz(T )k + ν 2 0 µ ¶ µ ¶ 0 0 1 z(t) + u(t) z(t) ˙ = −c 0 1 | {z } |{z} A
B
z(0) = z0 Dieses Optimalsteuerungsproblem kann theoretisch im Funktionenraum gut behandelt werden. Dies wollen wir hier nicht tun, sondern stattdessen eine diskretisierte Variante behandeln! Sei dazu 0 = t0 < t1 < . . . < tN = T eine ¨aquidistante Zerlegung von [0, T ] mit ti = τ · i, 0 ≤ i ≤ N und τ = T /N . Wir setzen z(t) als vektorwertige st¨ uckweise lineare Funktion an, u(t) als Treppenfunktion u(t) ≡ ui auf [ti , ti+1 ] z(ti ) = zi in ti , i = 0, . . . , N Approximation der Ableitung z(ti+1 ) − z(ti ) τ ⇒ z(ti+1 ) = z(ti ) + τ Az(ti ) + τ Bui = (I + τ A) z(ti ) + |{z} τ B ui | {z }
z ∈ R2
z(t ˙ i) ≈
i = 0, . . . , N − 1
˜ B
˜ A
Insgesamt ergibt sich die diskretisierte Schwingungsgleichung ˜ i + Bu ˜ i zi+1 = Az
i = 0, . . . , N − 1 .
Wegen Z
T
2
u(t) dt = 0
N −1 Z ti+1 X 0
ti
u2i dt
=τ
n−1 X 0
erhalten wir als Zielfunktional, welches zu minimieren ist, N −1
X 1 f (z, u) = kzN k2 + τ νu2i . 2 i=0
81
u2i
Diese Aufgabe geh¨ort zum Typ der dynamischen Optimierungsprobleme, deren allgemeine Version folgende Form hat (vgl. [1,S. 202ff]): N −1
X 1 T QzN + fi (zi , ui ) min f (z, u) = zN 2 i=0 bei zi+1 = Ai zi + Bi ui + ci i = 0, . . . , N − 1 .
(DLG)
Hier ist z0 ∈ Rn fest vorgegeben, Q eine symmetrische (n × n)-Matrix, Ai sind (n × n)Matrizen, Bi (n × m)-Matrizen, ci ∈ Rn , ui ∈ Rm und xT = (z T , uT ), x ∈ RN (m+n) . Wir k¨onnen uns das als N -stufigen Entscheidungsprozess vorstellen: f0 (z0 , u0 ) z0 →
0
f1 (z1 , u1 ) → z1 →
↑
1
fN −1 (. . .) → z2 → . . . → zN −1 →
↑
u0
N −1
→ zN
uN −1
u1
Entscheidungen: ui . Herleitung der notwendigen Optimalit¨ atsbedingungen: Minimumprinzip Wir schreiben die Nebenbedingungen von (DLG) etwas anders auf: −Ai zi + zi+1 − Bi ui = ci
i = 0, . . . , N − 1
und beachten, dass f¨ ur i = 0 die Variable z0 fest vorgegeben ist, also spielt diese Gleichung eine Sonderrolle: z1 − B0 u0 = c0 + A0 z ⇒ Nebenbedingungen
Ax = b
A0 z0 + c0 c1 mit b = ∈ RnN .. . cN −1
N (n+m) x∈R µ ¶ z x= u
A = (A1 , A2 )
I −A1 I ... A1 = −A2 I ... ... −AN −1 I
,
A2 =
−B0
... −BN −1
hier ist I = In . A1 ist auf alle F¨alle invertierbar, weil untere Dreiecksmatrix mit I in Hauptdiagonale (l¨asst sich von Anfang zum Ende durchl¨osen). Damit hat A vollen Rang. Offenbar gilt daher F = {x|Ax = b} 6= φ.
82
¡ ¢ Nun sei x˜ = uz˜˜ eine (lokale) L¨osung von (DLG). Weil A vollen Rang hat, existiert ˜ ∈ RN n , λ ˜ = (λ ˜T , . . . , λ ˜ T )T mit ∇f (˜ ˜ = 0, genau ein Lagrangescher Multiplikator λ x)+AT λ 1 N d. h. ˜ = 0. ∇f (˜ z , u˜) + AT λ Leider passt dieses Pluszeichen oben nicht in die allgemeine Theorie der Optimalsteuerung. Deshalb setzen wir ˜, λ := −λ um die Gleichung ∇f (˜ z , u˜) − AT λ = 0 zu erhalten. Wir transponieren die Gleichung und betrachten µ ¶ µ ¶ z z T =0 ∀ ∈ RN (n+m) fz (˜ z , u˜)z + fu (˜ z , u˜)u − λ A u u (fz bezeichnet die partielle Ableitung von f nach z, nicht den partiellen Gradienten!) Jetzt heißt es, kr¨aftig zu rechnen, um alles in eine anwendbare Form zu bringen. fz z = fu u =
N −1 X i=1 N −1 X
T fi,z · zi + z˜N QzN
(keine Abh¨angigkeit von z0 !)
fi,u · ui
0
z1 z2 − A1 z1 .. .
−B0 u0 −B1 u1
← Sonderrolle µ ¶ z ← ab 2. Komp. = λT (A1 z + A2 u) = (λT1 , . . . , λTN ) λT A normal u zN − AN −1 zN −1 −BN −1 uN −1 Einsetzen in die notwendige Bedingung T z˜N QzN
+
N −1 X i=1
−
N −1 X i=1
fi,z zi +
N −1 X
fi,u ui
i=0
µ ¶ z T T λi+1 [zi+1 − Ai zi − Bi ui ] − λ1 [z1 − B0 u0 ] = 0 f¨ ur alle . u
Nun kann man z, u beliebig passend einsetzen, um Gleichungen f¨ ur λ zu erhalten. • u = 0, z1 , . . . , zN −1 = 0, nur zN frei ⇒ T (˜ zN Q − λTN )zN = 0 ∀zN
⇒
λN = Q˜ zN
(Q ist symmetrisch!)
D.h. wir bekommen eine Endbedingung f¨ ur λ.
83
(5.49)
Damit sind jetzt alle mit zN verbundenen Terme Null. • W¨ahlen jetzt zi beliebig, die restlichen Null, auch die u’s ⇒ fi,z − λTi zi + λTi+1 Ai zi = 0 ∀zi also fi,z − λTi + λTi+1 Ai = 0
i ∈ {1, . . . , N − 1}
oder
λTi = λTi+1 A − Ai + fi,z
oder, noch sch¨oner, λi = ATi λi+1 + ∇z fi (˜ zi , u˜i ) i = N − 1, . . . , 1 λN = Q˜ zN
(5.50)
Definition 5.4.3 (5.50) heißt adjungierte Gleichung mit Endbedingung. Nun werten wir noch die ui ’s aus: Setzen alle zj Null und alle uj außer ui . Dann [fi,u + λTi+1 Bi ]ui = 0 ∀ui , also BiT λi+1 + ∇u fi (˜ z , u˜) = 0 .
Minimumprinzip
Interpretation: Wir betrachten gi (u) = fi (˜ z , u) + BiT λ · u. Dann steht oben, dass u˜i die notwendige Bedingung f¨ ur die Aufgabe min gi (u) erf¨ ullt (was nicht heißt, dass u˜i diese u
Minimumaufgabe auch wirklich l¨ost. Die muss nicht einmal l¨osbar sein!). Bemerkung. Wir haben adjungierte Gleichung und Minimumprinzip aus der Lagrangeschen Multiplikatorenregel ∇f (˜ x) + AT λ = 0 hergeleitet. Diese Herangehensweise ist zu ¨ wenig praktikabel. Aquivalent ist das Arbeiten mit der Lagrange-Funktion: L(z, u, λ) = f (z, u) – herangehangene Gleichungen ˜ (wegen λ := −λ), also N −1
X 1 T QzN + fi (zi , ui ) L(z, u, λ) = zN 2 i=0 −
N −1 X
λTi+1 [zi+1 − Ai zi − Bi ui − ci ] − λT1 [z1 − Bu0 − z0 ] .
i=1
Dann gilt: Die notwendigen Bedingungen sind ¨aquivalent mit ∇zi L(˜ z , u˜, λ) = 0 , ∇ui L(˜ z , u˜, λ) = 0 ,
i = 1, . . . , N → i = 0, . . . , N − 1 →
adjungierte Gleichung Minimumbedingung
(Gleich mit L beginnen, um (5.49) zu bekommen!) ¨ So sollte man sich das merken. Im Ubrigen stellt (5.49) genau dieses System dar. D. h., ausgehend von L(z, u), kommt man direkt zu (5.49).
84
5.5 5.5.1
Affine Ungleichungsnebenbedingungen Problemdefinition
Wir betrachten nun die etwas allgemeinere, n¨amlich durch Ungleichungsrestriktionen erweiterte Aufgabe min f (x)
(PLU)
bei hai , xi = bi , i = 1, . . . , m hg j , xi ≤ rj , j = 1, . . . , p oder in entsprechend abgek¨ urzter Schreibweise:
F = {x|Ax = b , Gx ≤ r} ,
a1 A = ... , am
g1 G = ... gm
somit min f (x) bei Ax = b , Gx ≤ r
(PLU)
Beispiel 5.5.1 Konvexe Linearkombination kleinster Norm Gegeben: Vektoren sj ∈ Rn , j = 1, . . . , p p 1 X αj sj k2 min f (α) = k α∈Rp 2 j=1
bei
p X j=1
αj = 1 , αj ≥ 0, | {z }
j = 1, . . . , p
Nichtnegativit¨atsforderungen 5.5.2
Notwendige Optimalit¨ atsbedingungen
Bisher waren die notwendigen Optimalit¨atsbedingungen f¨ ur eine L¨osung x˜ aus der Analysis bekannt. Das ist jetzt anders, jetzt wird Neuland betreten! Definition 5.5.1 (aktive Ungleichungen). Es sei x ∈ F. J(x) = {j ∈ {1, . . . , p}|hg j , xi = rj } heißt Indexmenge der aktiven Ungleichungs-Restriktionen. Nun sei x˜ eine L¨osung der Aufgabe (P LU ).
85
Definition 5.5.2 (Linearisierender Kegel). L(F, x˜) = {d ∈ Rn |Ad = 0 , hg j , di ≤ 0
∀j ∈ J(˜ x)} .
Lemma 5.5.1 F¨ ur x˜ ∈ F gilt K(F, x˜) = L(F, x˜) . Insbesondere ist damit K(F, x˜) abgeschlossen (weil das f¨ ur L offensichtlich ist). Beweis: (i) K ⊂ L. Sei d ∈ K(F, x˜), d. h. d = α(x − x˜) mit x ∈ F, α ≥ 0. ⇒ Ax = A˜ x = b ⇒ Ad = 0. Das war einfach. Außerdem ⇒
hg j , xi ≤ rj = hg j , x˜i ∀j ∈ J(˜ x) j j hg , di = αhg , x − x˜i ≤ 0 .
Insgesamt also d ∈ L(F, x˜). (ii) L ⊂ K: Sei d ∈ L(F, x˜). F¨ ur j 6= J(˜ x) gilt hg j , x˜i < rj j ⇒ hg , x˜ + tdi < rj ∀t ∈ [0, t¯] , ∀j ∈ 6 J(˜ x) mit einem t¯ > 0. Von d wissen wir wegen d ∈ L: Ad = 0 und hg j , di ≤ 0 j ∈ J(˜ x) ⇒ A(˜ x + td) = A˜ x + t |{z} Ad = A˜ x=b 0
hg , x˜ + t¯di = hg j , x˜i + t¯hg j , di ≤ rj |{z} |{z} j
=rj
∀j ∈ J(˜ x) .
≤0
Deshalb x˜ + t¯d ∈ F, also t¯d ∈ F − x˜, damit d ∈ K(F, x˜).
2
Nun brauchen wir aber auch noch den Normalenkegel N . Dazu ben¨otigen wir: Lemma 5.5.2 Sei K ⊂ Rn konvexer abgeschlossener Kegel und x 6∈ K. Dann existiert ein s ∈ Rn mit hs, xi > 0 = maxhs, yi . y∈K
Beweis: Trennungssatz 5.3.3 ⇒ ∃s ∈ Rn : hs, xi > suphs, yi
(∗)
y∈K
→ Fall 1: hs, yi ≤ 0 ∀y ∈ K . Dann ist das Supremum Null (wegen 0 ∈ K) . → Fall 2: ∃z ∈ K mit hs, zi > 0 . Dann ist das Supremum unendlich (man nehme α · z, mit α → ∞).
86
Fall 2 kann wegen (∗) nicht eintreten, nur Fall 1, d. h. hs, xi > 0 = maxhs, yi . y∈K
2 ¨ Außerdem gilt: Ist K ⊂ Rn abgeschlossener konvexer Kegel, dann (K ∗ )∗ = K (Ubungsaufgabe). Nun k¨onnen wir N (F, x˜) angeben: Lemma 5.5.3 ( N (F, x˜) =
m X
i
λi a +
i=1
X
) j
m
µj g |λ ∈ R , µj ≥ 0
j∈J(˜ x)
Beweis: Wir wollen die rechte Seite, d. h. {...}, mit N (A, G, x˜) bezeichnen. (i) “⊃”: Sei s ∈ N (A, G, x˜), d. h. X X s= λi ai + µj g j , µ j ≥ 0 . J
Multiplizieren skalar mit d ∈ K(F, x˜) durch. Dann gilt wegen K = L (Form von K!) X X hs, di = λi hai , di + µj hg j , di ≤ 0 ∀d ∈ K(F, x˜) . |{z} |{z} =0
J
≤0
Damit nach Def. s ∈ K(F, x˜)∗ = N (F, x˜) (ii) “⊂”: Aus Lemma 5.5.1 folgt N (A, G, x˜)∗ ⊂ K(F, x˜). ⇒ N (F, x˜) = K(F, x˜)∗ ⊂ (N (A, G, x˜))∗∗ = N (A, G, x˜) .
2 Nun haben wir alles bereit zum Aufstellen der notwendigen Bedingungen f¨ ur x˜: Wir wissen wegen −∇f (˜ x) ∈ N (F, x˜) , d. h. wegen dem eben Bewiesenen −∇f (˜ x) =
m X
λi ai +
i=1
X j∈J(˜ x)
87
µj g j , µ j ≥ 0
oder 0 = ∇f (˜ x) +
m X
λi ai +
i=1
X
µj g j , µ j ≥ 0 .
(∗)
j∈J(˜ x)
Das k¨onnen wir noch versch¨onern. Wir setzen f¨ ur j ∈ / J(˜ x) einfach µj = 0. Dann gilt • µj ≥ 0 ∀j ∈ {1, ..., p} • µj (hg j , x˜i − rj ) = 0 ∀j ∈ {1, ..., p} | {z } denn das ist Null f¨ ur j ∈ J(˜ x). Außerdem nimmt (∗) die Form ∇f (˜ x) + AT λ + GT µ = 0 an. Definition 5.5.3 λ ∈ Rm und µ ∈ Rp heißen Lagrangesche Multiplikatoren zu x˜ ∈ F, wenn ∇f (˜ x) + AT λ + GT µ = 0 µ ≥ 0 sowie hµ, G˜ x − ri = 0
(5.51) (5.52)
“komplement¨are Schlupfbedingung”. Wir haben bewiesen: Satz 5.5.1 Ist x˜ lokales Minimum von (P LU ) und f in x˜ differenzierbar, dann existieren Lagrangesche Multiplikatoren λ ∈ Rm und µ ∈ Rp zu x˜. Sind die Vektoren ai , i = 1, ..., m sowie g j , j ∈ J(˜ x), linear unabh¨angig, so sind λ und µ eindeutig bestimmt. Bemerkungen zu diesem Satz: (i) Historie: Die Multiplikatorenregel f¨ ur Gleichungsrestriktionen stammt von Lagrange. Verallgemeinerung auf Ungleichungsrestriktionen: 1951, Kuhn und Tucker; unabh¨angig davon auch von Karush. Deshalb auch Bezeichnung Karush-Kuhn-TuckerSystem oder KKT-System f¨ ur das Optimalit¨atssystem Ax = b , Gx ≤ r , ∇f + AT λ + GT µ = 0 , µ ≥ 0 , hµ, G˜ x − ri = 0 . (ii) Verwendung der L-Funktion: L = f (x) + hλ, Ax − bi + hµ, Gx − ri . Dann bedeutet (5.51) wieder ∇x L(˜ x, λ, µ) = 0 . Die Nichtnegativit¨atsforderungen an µ und die komplement¨are Schlupfbedingung muss man sich zus¨atzlich merken.
88
(iii) Geometrische Interpretation (reine Ungleichungsrestriktionen). −∇f = µ1 g 1 + µ2 g 2 , d.h. −∇f ist positive Linearkombination von g 1 und g 2 , liegt also im von g 1 und g 2 aufgespanten Kegel. 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111 0000000000 11 00 1111111111111111111111 0000000000000000000000 1111111111 0000000000 11 00 1 0 1111111111111111111111 0000000000000000000000 1111111111 0000000000 1 0 11 00 1 0 1111111111111111111111 0000000000000000000000 1111111111 0000000000 1 0 11 00 1 0 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 1 0 1 0 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 1 0 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 0000000000000000 1111111111111111 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 0000000000000000 1111111111111111 1111111111111111111111 0000000000000000000000 1111111111 0000000000 111111111111 000000000000 0000000000000000 1111111111111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 0000000 1111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 0000000 1111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 0000000 1111111 1111111111111111111111 0000000000000000000000 111111111111 000000000000 0000000000000000 1111111111111111 0000000 1111111 1111111111111111111111 0000000000000000000000 0000000000000000 1111111111111111 0000000 1111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000000000000 1111111111111111 0000000 1111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000000000000 1111111111111111 1 0 0000000 1111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 1 0 1 0 0000000000000000 1111111111111111 1 0 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 1 0 1 0 0000000000000000 1111111111111111 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 0 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 1 0 1 0 0000000000000000 1111111111111111 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 0 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 1 01 0 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 1111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 0000000 1111111 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 111111111111111 000000000000000 1111111111111111111111 0000000000000000000000 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 00 11 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 00 11 11111111 00000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 00 11 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1111111111111111111111 0000000000000000000000 2 1 0 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 0 1111111111111111111111 0000000000000000000000 1 0 1 0 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 0 0 1111111111111111111111 0000000000000000000000 1 0 1 01 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 0 1 0 1111111111111111111111 0000000000000000000000 1 01 0 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 01 0 1111111111111111111111 0000000000000000000000 1 01 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 1 0 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 2 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1 0 1111111111111111111111 0000000000000000000000 1 0 1111111111111111111111 0000000000000000000000 1 0 1 0 1111111111111111111111 0000000000000000000000 1 0 1 0 1111111111111111111111 0000000000000000000000 1 0 1 0 1111111111111111111111 0000000000000000000000 1 0 1 0 1111111111111111111111 0000000000000000000000 1 0 1111111111111111111111 0000000000000000000000 1 0 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1111111111111111111111 0000000000000000000000 1 1111111111111111111111 0000000000000000000000
F
g
− f
g
g
g
(iv) Bei Konvexit¨at sind die Bedingungen wieder hinreichend f¨ ur (globale) Optimalit¨at von x˜. Beispiel 5.5.2 1√ 1 x1 − x 2 2 2 bei xi ≥ 0 , i = 1, 2 x1 +x2 ≤ 1
−x1 ≤ 0 ⇔ −x2 ≤ 0 x1 + x2 − 1 ≤ 0
min f (x) = −
Aufstellen des Optimalit¨atssystems: L(x, λ, µ) = L(x, µ) = −
1√ 1 x2 − x2 − µ1 x1 − µ2 x2 + µ3 (x1 + x2 − 1) 2 2
r 1 −1/4 x1 − µ1 + µ3 (!) ∇x L = =0 1 − − µ2 + µ3 2
89
⇒ Optimalit¨atssystem 1 − √ − µ 1 + µ3 = 0 4 x1 1 −µ2 + µ3 = 2
Eine L¨osung:
x1 ≥ 0 , i = 1, 2 µj ≥ 0 , j = 1, 2, 3 µ1 x 1 = 0 µ2 x 2 = 0 µ3 (x1 + x2 − 1) = 0 . x˜1 = 1/4 x˜2 = 3/4
µ ˜1 = µ ˜2 = 0 µ ˜3 = 1/2 .
Wie kommt man drauf ? Geometrisch oder numerisch! 5.5.3
Hinreichende Optimalit¨ atsbedingungen
Allgemein wissen wir, wie diese aussehen (Satz 5.3.2) dT f 00 (˜ x)d ≥ αkdk2
∀d ∈ K(F, x˜) mit ∇f (˜ x)T d = 0 .
Andererseits haben wir f¨ ur (P LU ) den Kegel K bereits berechnet, K = {d|Ad = 0 , hg j , di ≤ 0 ∀j ∈ J(˜ x)} . Nun erf¨ ullt aber x˜ auch die notwendigen Bedingungen, also X µj g j ∇f (˜ x) = −AT λ − j∈J(˜ x)
Multiplikation mit d ∈ K(F, x˜) mit ∇f (˜ x)d = 0 ⇒ 0 = h∇f (˜ x), di = h−λ, Adi − | {z } = 0 wenn d∈K also 0=
X
X
µj
hg j , di , |{z} ≤ 0 wenn d∈K
µj hg j , di .
j∈J(˜ x) j
Wenn alle Skalarprodukte hg , di ≤ 0, und alle µj ≥ 0 sind, kann nur gelten: Wo µj > 0, dort muss h, i = 0 sein, d. h., wir erhalten als zus¨atzliche Bedingung zu d ∈ K(F, xˆ) : hg j , di = 0 falls µj > 0 . Damit ergibt sich als hinreichende Optimalit¨atsbedingung: dT f 00 (˜ x)d ≥ αkdk2 f¨ ur alle d ∈ Rn Ad j hg , di hg j , di
mit =0 ≤ 0 f¨ ur j ∈ J(˜ x) mit µj = 0 = 0 f¨ ur j ∈ J(˜ x) mit µj > 0
90
(5.53)
Definition 5.5.4 Die f¨ ur x˜ aktiven Restriktionen mit µ ˜j > 0 heißen streng aktive Restriktionen. Satz 5.5.2 (Hinreichende Bedingung). Es sei f in x˜ vom Type C 2 , und x˜ erf¨ ulle die notwendigen Optimalit¨atsbedingungen (Satz 5.5.1). Weiter seien die hinreichenden Bedingungen (5.53) erf¨ ullt. Dann ist x˜ striktes lokales Minimum von (P LG). Beispiel 5.5.3 (Fortsetzung Beispiel 5.5.2). 1√ 1 x1 − x2 2 2 x1 ≥ 0 , x 1 + x2 ≤ 1
min f (x) = −
Wir wissen bereits:
1 3 1 , x˜2 = , µ1 = µ2 = 0 , µ3 = 4 4 2 erf¨ ullen die notwendigen Kuhn-Tucker-Bedingungen. x˜1 =
Hinreichende Bedingung: Letzte Ungleichung ist streng aktiv, daher dT f 00 (˜ x)d ≥ αkdk2 f 00 (x) : Nur fx1 x1 6= 0;
µ 00
f (˜ x) =
1 0 0 0
∀d : d1 + d2 = 0 .
1 −1/2 fx1 = − x1 4 µ ¶−3/2 1 −3/2 1 1 fx1 x1 = x˜1 = =1 8 8 4
¶ ist nicht positiv definit auf R2 aber auf dem Unterraum, welcher den streng aktiven Ungleichungen zugeordnet ist, denn d1 + d2 = 0 ⇒ d21 = d22 µ ¶ 1 1 1 0 T ⇒d d = d21 = d21 + d21 0 0 2 2 1 1 1 = d21 + d22 = kdk2 . 2 2 2
Hinreichende Bedingung ist erf¨ ullt mit α = 12 . Bemerkung: Man sieht, dass die Verifizierung der hinreichenden Bedingungen schwierig sein kann. (5.53) ist i.A. nur numerisch nachpr¨ ufbar. Dabei enth¨alt diese Bedingung die Forderung j hg , di ≤ 0 f¨ ur j ∈ J mit µj = 0. Diese Bedingung l¨asst sich schwer verarbeiten. Man l¨asst diese Einschr¨ankung deshalb einfach weg und hofft damit, die st¨arkere hinreichende Bedingung dT f 00 (˜ x)d ≥ αkdk2
91
(5.52)’
bei Ad = 0 , hg j , di = 0 ∀j ∈ J(˜ x) mit µj > 0 verifizieren zu k¨onnen. Dazu bilden wir die Matrix T a1 .. . T am j B = B(˜ x) = . . . mit allen g ∈ J mit µj > 0 . (g j )T ... ⇒ dT f 00 (˜ x)d ≥ αkdk2
∀d ∈ ker B .
(5.54)
Nun bestimmt man eine Nullraum-Matrix zu B(˜ x), dies sei Z(˜ x). Hat man diese, dann T 00 ist (5.54) ¨aquivalent zur positiven Definitheit von Z(˜ x) f (˜ x)Z(˜ x). Ein weiteres Beispiel Beispiel 5.5.4 (Nichtkonvexe quadratische Optimierung) min f (x) = −x2 + 1 x ≥ −1 , x ≤ 12 Globales Min: x = −1 Lokales Min: x = 21 Wir untersuchen x˜ =
1 2
n¨aher: µ 2
L(x, µ1 , µ2 ) = −x + 1 + µ1 (−1 − x) + µ2
1 x− 2
¶ .
Offenbar muss µ1 = 0 sein bei x˜ = 21 . Kuhn-Tucker-Bedingung ⇒ Lx = −2˜ x + µ2 = 0 Hinreichende Bedingung: dLxx d ≥ αd2
⇒ µ2 = 1 .
∀d ∈ R mit d = 0.
Erf¨ ullt f¨ ur jedes α. Damit ist (5.53) erf¨ ullt, aber, wie wir gesehen haben, x˜ = optimal. 5.5.4
1 2
nur lokal
Strikte Komplementarit¨ at
ur (PLU) bleibt nur Manche numerischen Verfahren und manch theoretische Aussage f¨ richtig bei strikter Komplementarit¨at. Was heißt das?
92
Definition 5.5.5 In x˜ ∈ F ist die Bedingung der strikten Komplementarit¨at erf¨ ullt, wenn gilt j ∈ J(˜ x ) ⇒ µj > 0 , d. h., wenn alle aktiven Ungleichungsrestriktionen streng aktiv sind. Folgerung: Hier gilt hg j , x˜i = rj ⇒ µj > 0 µj = 0 ⇒ hg j , xi < rj
j = 1, ..., p .
In diesem Falle sind dann die hinreichenden Bedingungen (5.53) und (5.52)’ ¨aquivalent. Wir bilden µ T ¶ ai i ∈ 1, ..., m B(˜ x) = j T (g ) j ∈ J(˜ x) und fordern dT f 00 (˜ x)d ≥ αkdk2
∀d ∈ ker B(˜ x) .
(5.55)
Eine weitere Bedingung f¨ ur sp¨atere Zwecke ist die Voraussetzung Lineare Unabh¨angigkeit der Gradienten der aktiven Restriktionen • a1 , ..., am , {g j }j∈J(˜x) seien linear unabh¨angig. Dann gilt:
f 00 (˜ x) AT G(˜ x)T 0 0 A= A G(˜ x) 0 0
ist invertierbar
mit G(˜ x) = ((g j )T )j∈J(˜x) 5.5.5
Probleme mit Variationsbeschr¨ ankungen (box constraints)
In diesem Falle ist der zul¨assige Bereich F ein Quader in Rn , F = {x ∈ Rn |vi ≤ xi ≤ wi , i = 1, ..., n} . Wir untersuchen also die (sehr oft auftretende) Aufgabe minx∈Rn f (x) v ≤ x ≤ w. Dabei seien v < w Vektoren der unteren und oberen Schranken. Die allgemeine, bisher entwickelte Theorie liefert hier sehr einfach Beziehungen.
93
(PB)
(i) Umformung in die allgemeine Form v≤x≤w
−x ≤ −v ⇔ ⇔ x ≤w
µ ¶ µ ¶ −I −v x≤ I w | {z } | {z } r
G
Gx ≤ r
−1 G= 1
.. .
−1 .. . 1
(ii) Lineare Unabh¨angigkeit der aktiven Gradienten Ist erf¨ ullt, denn obere und untere Restriktionen k¨onnen wegen v < w nie gleichzeitig aktiv sein (siehe auch die Form von G). ⇒ die Multiplikatoren µj sind eindeutig bestimmt. Aber das bekommen wir alles noch direkter: (iii) Notwendige Optimalit¨atsbedingungen L = L(x, µ) = f (x) +
n X
µui (−xi
+ vi ) +
i=1
∂L =0 ∂xi
n X
µoi (xi − wi )
i=1
∂f − µui + µoi = 0 , µui , µoi ≥ 0 ∂xi
⇔
µui : Multiplikatoren zu den unteren Schranken µoi : Multiplikatoren zu den oberen Schranken Zusatzinformation: Genau einer der Multiplikatoren darf positiv sein (muss aber nicht). Einer ist immer Null. ⇒
∂f =0 ∂xi
⇒
µui = µoi = 0
∂f >0 ∂xi
⇒
µui =
∂f 0 ⇒ x˜i = vi In diesen F¨allen ist x˜i durch die notwendigen ∂xi ∂f Bedingungen bei Kenntnis von ∇f festgelegt! < 0 ⇒ x˜i = wi ∂xi ∂f ∂f = 0 : keine Aussage (außer eben = 0). ∂xi ∂xi
∂f Bei den Komponenten mit ∂x = 0 brauchen wir also zus¨atzliche Informationen. Die i holen wir uns aus hinreichenden Bedingungen 2. Ordnung. Wir fordern (etwas zu stark)
dT f 00 (˜ x)d ≥ αkdk2 n
f¨ ur alle d ∈ R
mit di = 0 falls
Numerisch kann das so bewerkstelligt werden: Z := diag (ci )i=1,...,n
mit ci =
(
¯ ¯ ¯ ∂f ¯ ¯ ¯ ¯ ∂xi ¯ 6= 0 .
¯ ¯ ¯ ∂f ¯ 1 ¯ ∂x ¯=0 i 0 sonst
.
Dann ist obige Bedingung ¨aquivalent zur positiven Definitheit von Z T f 00 (˜ x)Z .
5.6
Lineare Optimierungsprobleme
Wir betrachten die Aufgabe, ein lineares Funktional f bei linearen Restriktionen zu minimieren min f (x) = cT x bei Ax = b x ≥ 0.
95
(LP)
(LP) heißt lineare Optimierungsaufgabe. Zur Herleitung der Kuhn-Tucker-Bedingungen schreiben wir F, die zul¨assige Menge, wieder um: F = {x|Ax = b , Gx ≤ 0} mit G = −I . Wegen ∇f = c erhalten wir die notwendigen Bedingungen c + AT λ + GT µ = 0 µ ≥ 0 , hGx, µi = 0 also c = µ − AT λ, und wenn wir y = −λ setzen A T y + µ = c , µ ≥ 0 , µ i xi = 0 .
(∗)
Beachte, dass (LP) eine konvexe Aufgabe ist. ⇒ Satz 5.6.1 x˜ ist genau dann (globales) Minimum von (LP), wenn µ ≥ 0 und y ∈ Rm existieren mit (∗). Bemerkung: Hier kann man die Lagrangeschen Multiplikatoren als L¨osung einer dualen Optimierungsaufgabe erhalten. Diese konstruiert man leicht mit folgendem Trick als Lagrange-duale Aufgabe: L(x, λ) = f (x) + hλ, Ax − bi = hc, xi + hλ, Ax − bi . Die ¨einfachenRestriktionen x ≥ 0 nehmen wir am besten nicht in die Lagrange-Funktion. Dann folgt ³ ´ (LP) ⇔ min max (f (x) + hλ, Ax − bi ) x≥0 λ∈Rm | {z } falls Ax − b 6= 0, so bekommt man max = +∞ als Ergebnis, und diese x fallen bei der Minimierung raus. Das Dualproblem (DP) erh¨alt man durch Vertauschen von min und max: ³ ´ max min f (x) + hλ, Ax − bi x≥0 λ∈Rm ´ ³ T = max min hc + A λ, x i − hb, λi x≥0 λ∈Rm | {z } = −∞ , falls c + AT λ 6≥ 0 falls c + AT λ ≥ 0
= 0, ⇒ (DP)
⇔
maxλ∈Rm −hb, λi bei AT λ + c ≥ 0
Umformulierung: Setze AT λ + c = µ, λ := −y, dann ( maxhb, yi (DP) bei AT y + µ = c → das ist genau die Form von Satz 5.6.1.
96
6
Probleme mit linearen Restriktionen-Verfahren
6.1
Quadratische Optimierungsprobleme
Am einfachsten laufen die Dinge (wie generell) bei reinen Gleichungsrestriktionen 6.1.1
Aufgaben mit Gleichungsrestriktionen
Wir betrachten 1 minn hx, Qxi + hq, xi x∈R 2 bei Ax = b
(QG)
Q : symmetrisch, (n, n), A : (m, n), m ≤ n. Voraussetzung: • rang A = m (voller Rang) • dT Qd ≥ αkdk2 ∀d ∈ ker A Damit hat (QG) genau eine L¨osung x˜ und genau einen zugeh¨origen Lagrangeschen Mul˜ (Satz 5.4.6). Beide erf¨ tiplikator λ ullen zusammen das System ¶ µ µ ¶ µ ¶ −q x˜ Q AT (6.56) mit A = = A A 0 b λ A ist invertierbar (Lemma 5.4.1). Damit braucht man nur“ A−1 zu berechnen. Das ist ” aber in der Regel zu teuer! Bessere Idee: Finden einer Nullraum-Matrix zu A und dadurch Elimination der Nebenbedingung Ax = b. Dazu 3 Schritte: 1. Nullraum-Matrix bestimmen 2. x˜ als L¨osung eines freien“ Optimierungsproblems berechnen ” 3. λ ausrechnen. Schritt 1: QR-Zerlegung von AT Finde unit¨are Matrix H und obere Dreiecksmatrix R mit µ ¶ R HA = 0
H : (n, n) R : (m, m)
T
Wir spalten H wie folgt auf: µ T¶ Y } m Zeilen H= T } n − m Zeilen Z
Spalten von Y : erste m Zeilen von H, von Z: letzte (n − m) Zeilen.
97
Sowohl Y als auch Z m¨ ussen Vollrang haben, weil rang H = n. Damit spannen die Spalten von Y und Z gemeinsam den ganzen Rn auf. Jedes x ∈ Rn hat damit als eindeutige Darstellung µ ¶ T xy x = Y xy + Zxz = H . xz Das gilt speziell f¨ ur alle x = d ∈ ker A, und deshalb µ ¶ µ ¶ d T dy T 0 = Ad = A(Y dy + Zdz ) = AH = (R , 0) y = RT dy . dz dz Deshalb erh¨alt man alle d ∈ ker A durch d = Zdz , dz ∈ Rn−m beliebig . ⇒ Das oben konstruierte Z ist eine Nullraum-Matrix. Wir hatten oben x in der Form dargestellt: x = Y xy + |{z} ⇒ ∈(ker A)⊥
Zx |{z}z ∈ ker A .
Schritt 2a: x˜ sei die unbekannte L¨osung. Einen Teil davon k¨onnen wir nun sofort berechnen: ⇒
x˜ = Y x˜y + Z x˜z b = A˜ x = AY x˜y + 0 b = AY x˜y = RT x˜y
RT x˜y = b
⇒ x˜y = (RT )−1 b (was man durch einfaches Aufl¨osen des Gleichungssystems RT x˜y = b bewerkstelligt.) Schritt 2b: 00 F = spezielle L¨osung von Ax + b plus allgemeine von Ax = 000 Spezielle Lo ¨sung: Y x˜y =: w. Dann gilt Aw = b. Somit: x∈F m x = w + Zz , z ∈ Rn−m . Allgemeine Lo ¨sung: Zz, z ∈ Rn−m ⇒ Reduziertes Problem: 1 min f (w + Zz) = (w + Zz)T Q(w + Zz) + q T (Zz + w) . n−m z∈R 2 Durch Ausmultiplizieren vereinfacht sich das, wobei wir den konstanten Term 21 wT Qw weglassen k¨onnen: f=
1 T T z Z QZ z + hZ T qw, zi + hZ T q, z i | {z } 2 | {z } ˜ Q
=˜ qT z
98
⇒ neue Form min F (z) = n−m
z∈R
1 T˜ z Qz + q˜T z 2
(QG)r
˜ := Z T QZ mit Q q˜ := Z T Qw + Z T q . ˜ positiv definit, damit ist das Problem eindeutig Unter unseren Voraussetzungen ist Q l¨osbar. Notwendige Bedingung f¨ ur z˜: ∇F (˜ z) = 0
⇔
˜ z = −˜ Q˜ q,
dabei spielt z˜ die Rolle von x˜z oben, also Z T QZ x˜z = −Z T q − Z T Qw = −Z T q − Z T QY x˜y . Wie berechnet man g¨ unstig die L¨osung dieses Systems? Anstelle von Z T QZ und Z T q betrachten wir zun¨achst das Ganze f¨ ur die gr¨oßere, Z T enthaltene Matrix H: • Bilde µ ¶ h1 ← Rm −Hq =: =: h h2 ← Rm−n • Berechne µ ¶ B11 B12 B := HQH = B21 B22 T
........................................................................................ NR: µ
¶ µ T¶ µ T ¶ YT Y Y QY Y T QZ HQH = Q(Y, Z) = (QY, QZ) = ZT ZT Z T QY Z T QZ ........................................................................................ T
⇒ B11 = Y T QY
B12 = Y T QZ
B21 = Z T QY
B22 = Z T QZ ˜ =Q
und h1 = −Y T q h2 = −Z T q .
Wir haben somit alle f¨ ur die obige Gleichung f¨ ur x˜z interessanten Terme in H stecken: Die Gleichung lautete Z T QZ x˜z = −Z T q −Z T QY x˜y | {z } | {z } | {z } B22
h2
99
B21
und liest sich nun als B22 x˜z = h2 − B21 x˜y L¨osung z.B. mit Cholesky-Zerlegung. ⇒
haben am Ende x˜z , x˜y und dann x˜ := Y x˜y + Z x˜z .
Schritt 3: Bestimmung des Multiplikators λ Q˜ x + AT λ = −q . Wir setzen x˜ in der obigen Form ein, n¨amlich µ ¶ ˜y T x x˜ = H x˜z und multiplizieren die Gleichung von links mit H. ⇒
µ ¶ T x˜y + |{z} HA λ = −Hq HQH | {z } | {z } x˜z B h (R0 ) T
d. h.
µ
B11 B12 B21 B22
⇒
¶µ ¶ µ ¶ µ ¶ x˜y R h1 + λ= xz 0 h2
Rλ = h1 − B11 x˜y − B12 x˜z .
einfach zu l¨osen, da R obere Dreiecksmatrix. Damit ist alles gel¨ost! 6.1.2
Aufgaben mit Ungleichungsrestriktionen
Wir betrachten 1 minn hx, Qxi + hq, xi x∈R 2 bei Ax = b und Gx ≤ r
(QLU)
mit Q : symmetrisch, (n, n), A : (m, n), m ≤ n, G : (p, n). Die zul¨assige Menge ist F = {x ∈ Rn | Ax = b, Gx ≤ r}. Definition 6.1.1 Ein Vektor d heisst zul¨assige Richtung, wenn Ad = 0 und hg j , di ≤ 0 ∀j ∈ J(˜ x). Die Menge aller zul¨assigen Richtungen wird mit K(F, x˜) bereichert,
100
Nach Lemma 5.5.1 gilt f¨ ur den Kegel der zul¨assigen Richtungen K(F, x˜) = L(F, x˜) = {d ∈ Rn |Ad = 0 , hg j , di ≤ 0 ∀j ∈ J(˜ x)} . Wir schreiben das noch etwas anders auf: Wir fassen wie fr¨ uher alle Vektoren g i , i ∈ J(x), der aktiven Ungleichungen zu einer Matrix G(x) zusammen (sie enth¨alt als Zeilen die Vektoren (g i )T ). Dann gilt
d ist zul¨assige Richtung im Punkt x
⇔
Ad = 0 , G(x)d ≤ 0
Geometrische Illustration: (3 Ungleichungsrestriktionen hg i , xi ≤ ri , i = 1, 2, 3)
x 1 0
1
g
g2
d
g3
hg 1 , xi = r1 hg 2 , xi = r2 hg 3 , xi < r3
¾ aktiv o inaktiv
J(x) = {1, 2} µ 1 T¶ (g ) G(x) = (g 2 )T
Anschaulich ist klar: Damit x + td f¨ ur kleine t zul¨assig bleibt, muss gelten hg 1 , di ≤ 0
∧
hg 2 , di ≤ 0 .
Die dritte Nebenbedingung – die inaktive – hat darauf keinen Einfluss. Bevor wir nun zur mathematischen Beschreibung des numerischen Verfahrens – Verfahren zul¨assiger Richtungen mit aktiver Mengen-Strategie – kommen, wollen wir uns dessen grundlegenden Ideen geometrisch klar machen. Wir betrachten folgende Konstellation:
101
−f d
00 11 00 11 00 11
3
x3
− f
d2
00 11 00 11 00 11
g1
x
4
x2 00 11 00 11 00 11
d1 11 00 00 11 00 1 11 x f
F
g2
Schritt 1: Startpunkt x1 liegt im Inneren von F, es k¨onnen zuerst beide Restriktionen ignoriert und mit einem Verfahren der freien Optimierung gestartet werden, bis eine (oder mehrere) Restriktionen aktiv werden. Schritt 2: Unser Verfahren hat im Punkt x2 den Rand von F erreicht – die Restriktion Nr. 2 ist aktiv geworden. • W¨are g 2 ||∇f , dann w¨ urde gelten ∇f + µg 2 = 0 , in diesem Falle, falls µ ≥ 0: Fertig. In unserem Bild gilt das nicht, ∇f ist keine Linearkombination von g 2 . • Wir suchen daher im Unterraum mit hg 2 , di = 0 weiter, d. h. in x2 + {d|hg 2 , di = 0} Schritt 3: In unserem Fall gelangt das Verfahren schließlich in x3 zu einem Punkt, in dem eine weitere Restriktion aktiv wird, n¨amlich hg 1 , xi. • Offenbar ist x3 noch nicht optimal, denn (∗)
− ∇f = µ1 g 1 + µ2 g 2 mit µ1 > 0 aber µ2 < 0 0 = ∇f + µ1 g 1 + µ2 g 2
• In welcher Richtung sollte weiter gesucht werden? Die Richtung d muss erf¨ ullen: ¾ hg 1 , di ≤ 0 um zul¨assig zu bleiben hg 2 , di ≤ 0 h∇f, di < 0 l
um einen Abstieg zu erzielen . h−∇f, di > 0. 102
(∗) ⇒ h−∇f, di = µ1 hg 1 , di + µ2 hg 2 , di |{z} |{z} |{z} |{z} >0
≤0
0, und die Optimalit¨atsbedingungen sind erf¨ ullt
³
0 = ∇f + µ1 g 1 + 0 · g 2 hg 1 , x4 i = r1 , hg 2 , x4 i < r2 hg 2 , x4 i − r1 ) · 0 = 0 .
Fazit: • Stop, wenn die notwendigen Bedingungen mit µi ≥ 0 erf¨ ullt sind • Aktivierung von Nebenbedingungen, auf die das Verfahren trifft • Deaktivierung, wenn Multiplikatoren negativ werden (wird noch pr¨azisiert). • Ansonsten Suche in affin-linearen Unterr¨aumen, d. h. Optimierung bei Gleichungsnebenbedingungen. Wir kommen nun zur mathematischen pr¨azisen Formulierung des Verfahrens • Aktueller Iterationspunkt: xk Jk := J(xk ): Menge der aktiven Indizes (hier gilt hg j , xi i = ri , i ∈ Jk ) pk = |J(xk )| : Zahl der aktiven Indizes k Gk = G(x Matrix der g i , i ∈ Jk (genauer: mit Zeilen giT ) ¡ A ¢ ): Bk = G k : Beschreibt das zur Zeit aktive lineare Gleichungssystem • Ausgehend von xk wird ein im n¨achsten Schritt zu l¨osendes quadratisches Optimierungsproblem aufgestellt (mit Gleichungsrestriktionen) 1 minn hQd, di + hQxk + q, di d∈R 2 bei Bk d = 0
(Qk )
Bemerkung: Bis auf eine von xk abh¨angige Konstante ist die Zielfunktion von (Qk ) gerade f (xk + d). Ergebnis:
103
• Richtung dk • Multiplikatoren µkj , j ∈ Jk ; λki (f¨ ur Gleichungsrestriktionen) • Wir erg¨anzen diese durch µkj = 0, j 6∈ Jk Insgesamt: λk ∈ Rm k
pk
µ ∈R
(m Gln.) bzw. µ ˜k ∈ Rp (durch Nullen aufgef¨ ullt)
Voraussetzungen fu ¨ r das Verfahren: • Bk hat immer vollen Rang (Lineare Unabh¨angigkeit des Systems ai , i = 1, ..., m; g j , j ∈ Jk ) • Positive Definitheit von Q auf ker Bk . Durch diese Voraussetzungen ist (Qk ) eindeutig l¨osbar, und die Multiplikatoren λk , µk sind eindeutig bestimmt. Zul¨assige Menge von (Qk ): Fk = {d ∈ Rn |Ad = 0 , Gk d = 0} ⊂ L(F, xk ) . Damit ist jedes d ∈ Fk automatisch eine zul¨assige Richtung. Der n¨achste Verfahrensschritt ergibt sich nun durch Auswertung der notwendigen Optimalit¨ atsbedingungen fu ¨ r (Qk ): ∇f (xk + dk ) + AT λk + GTk µk = 0 d. h. Q(dk + xk ) + q + AT λk + GTk µk = 0 .
(†)
Aus diesem System ergeben sich λk , µk wegen linearer Unabh¨angigkeit eindeutig. Nun Fallunterscheidung: Fall 1
dk = 0
und
µk ≥ 0 .
Dann gilt ∇f (xk ) + AT λk + GTk µk = 0, und xk erf¨ ullt die Kuhn-Tucker-Bedingungen. Wegen Konvexit¨at sind diese hinreichend f¨ ur Optimalit¨at: xk ist die L¨osung der Aufgabe (QU ): Stop Fall 2
dk = 0
aber
µk 6≥ 0 .
Hier gibt es mindestens ein j ∈ Jk mit µkj < 0. Wie in unserem Illustrationsbeispiel sollte dann eine Nebenbedingung deaktiviert werden. Am lohnendsten: W¨ahle ein j ∈ Jk mit µkj = min{µki , i ∈ jk } Die Deaktivierung erfolgt durch Neufestsetzung der aktiven Menge: J˜k := Jk \{j} .
104
˜ k ) aufgestellt und gel¨ost. Das Verfahren wird dabei sichern, Nun wird entsprechend (Q dass die deaktivierte Restriktion nicht verletzt (d. h. in der falschen Richtung verlassen) wird. ˜k Ergebnis: d˜k , µ ˜k , λ ˜k bleibt, obwohl man ja Bk nicht kennt, wird der (Damit Q positiv definit auf ker B Einfachheit halber positive Definitheit auf dem gr¨oßten Unterraum ker A vorausgesetzt.) Wir zeigen: d˜k 6= 0 . Denn: Es galt dk = 0 ⇒ Qxk + q + AT λk + GTk µk = 0 ˜k + G ˜T µ Qd˜k + Qxk + q + AT λ ˜k = 0 k
W¨are d˜k = 0, so k ˜k + G ˜T µ AT λk + GTk µk = AT λ k˜
⇒
µj g j =
Linearkombination der anderen auftretenden ai , g i
⇒
wegen µj 6= 0 gilt Gleiches f¨ ur g j Widerspruch.
Somit haben wir noch zu diskutieren: Fall 3
dk 6= 0 . Dann ist dk Abstiegsrichtung.
Beweis: Aus den notwendigen Bedingungen (†) f¨ ur xk folgt ∇f (xk ) = Qk xk + q = −Qdk − AT λk − GTk µk µ k¶ k T λ = −Qd − Bk / · dk µk *µ ¶ + k λ ⇒ h∇f (xk ), dk i = −hdk , Qdk i − , Bk dk | {z } µk | {z } 0} . τk := ∞ falls Ik = φ (keine Beschr¨ankung n¨otig) . Insgesamt:
σk = min(1, τk ) .
Damit ist das Verfahren vollst¨andig beschrieben. Es gilt Satz 6.1.1 ur alle x ∈ F habe die Matrix ¡ A Es ¢ sei Q positiv definit auf ker A und f¨ B(x) = G(x) vollen Rang. Dann berechnet das Verfahren die L¨osung des Problems (QU ) in endlich vielen Schritten. Beweis: Die Durchf¨ uhrbarkeit des Verfahrens haben wir bereits diskutiert. Im Verlauf des Verfahrens sind jeweils quadratische Optimierungsprobleme der Form min f (x) bei Ax = b , hg j , xi = ri
107
∀i ∈ J
(1)
von Bedeutung, wobei J eine beliebige Teilmenge von {1, ..., p} ist, die f¨ ur m¨ogliche aktive Ungleichungsrestriktionen steht. Wir l¨osen im Verfahren nicht direkt (1), aber es treten Optimalit¨atssysteme von (1) auf, n¨amlich die Gleichungen Qx + q + AT λ + G(x)T µ = 0 ,
(2)
wobei x jeweils f¨ ur die eindeutig bestimmt L¨osung von (1) steht. Es gibt nur endlich viele m¨ogliche Teilmengen J, damit nur endlich viele verschiedene Probleme (1), also auch nur endlich viele solche L¨osungen x und damit nur endlich viele M¨oglichkeiten, solche Systeme (2) zu erzeugen. Wir nehmen nun an, dass das Verfahren im Schritt k noch nicht zu Ende ist, d. h., wir f¨ uhren den Schritt 5 mit dk 6= 0 durch. Dann: (i) Ik = ∅. Hier gilt σk = 1, also
xk+1 = xk + dk
und wir wissen dann wegen (†) k Q(x + d}k ) + q + AT λk + GTk µk = 0 , | {z xk+1
so dass xk+1 =: x das System (2) erf¨ ullt (λk und µk ergeben sich daraus eindeutig). Das heißt nicht, dass xk+1 optimal ist, denn µk 6≥ 0 kann eintreten. Damit ist xk+1 eine der endlich vielen L¨osungen von (1). (ii) Ik 6= ∅. Hier betrachten wir 2 “Unterf¨alle”: • τk ≥ 1: Dann gilt σk = min(1, τk ) = 1. Fall wie eben – d. h. xk+1 ist eine der L¨osungen von (1) • τk < 1: Alle aktiven Restriktionen bleiben aktiv, aber es kommt mindestens eine neue hinzu, so dass die Kardinalzahl der aktiven Restriktionen w¨achst. Voraussetzung war: Das System der {ai }i=1,...,m ∪ {g j }, j ∈ Jk ist stets linear unabh¨angig. Es k¨onnen also h¨ochstens n − m solcher Zuwachsf¨alle auftreten (am Anfang waren es mindestens m linear unabh¨angige Vektoren, und jedes Mal kommt ein neuer hinzu). ⇒ nach maximal n − m Iterationen gilt Ik+i = φ oder τk+i ≥ 1 ⇒ neue L¨osung von (2). Außerdem ist dk eine Abstiegsrichtung, also gilt auf alle F¨alle f (xk+j ) < f (xk ) . Damit sind die auftretenden xk+j alle verschieden, und wegen Endlichkeit der M¨oglichkeiten f¨ ur (1) bzw. (2) muss das Verfahren damit nach endlich vielen Schritten stoppen. 2
108
6.2
Gleichungsnebenbedingungen nichtquadratischer Zielfunktion
Hier besteht die gleiche Grundidee wie bei quadratischer Zielfunktion: Man “eliminiert” die Gleichungsrestriktion mit Hilfe einer Nullraummatrix. Wir betrachten die Aufgabe min f (x) Ax = b
(PLG)
mit f : Rn → R, jetzt nicht mehr notwendig quadratisch. Also min f (x) mit F = {x ∈ x∈F
Rn /Ax = b}. Es sei wieder w ∈ F eine spezielle L¨osung von Ax = b und Z : Rl → ker A eine Nullmatrix. Dann wird die unrestringierte Aufgabe min F (z) := f (w + Zz) z∈Rl
(6.1)
gel¨ost. Die Bestimmung einer Nullraummatrix h¨angt nicht von f ab, nur von F, erfolgt also genauso, wie bereits beschrieben (QR-Zerlegung etc.). Die freie Optimierungsaufgabe (6.1) kann nun (bei entsprechender Glattheit von f ) mit jedem Verfahren der unrestringierten Optimierung behandelt werden. Damit k¨onnten wir diesen Abschnitt abschließen, wenn es nicht noch einige interessante Nebenaspekte g¨abe! Diese bestehen in der Parallelit¨at der Minimierung von f und der von F . Nehmen wir an, wir untersuchen ein normales Abstiegsverfahren. F u¨r
f : xk+1 = xk + σk dk F : z k+1 = z k + σk v k
Ist z.B. v k eine Abstiegsrichtung f¨ ur F in z k , dann gilt f¨ ur das Bild dk := Zv k ∇f (xk )T dk = ∇f (xk )T Zv k = (Z T ∇f (xk ))T v k = ∇F (z k )T v k < 0 , damit ist auch dk eine Abstiegsrichtung, aber f¨ ur f . Ferner k Zv k = xk + σk dk . xk+1 = w + Zz k+1 = w | +{zZz} +σk |{z} dk
xk
Folgerung: Man kann das Verfahren im Raum der x-Variablen durchf¨ uhren und muss die z-Variablen eigentlich gar nicht verwenden. Verfahren 6.2.1 (Reduziertes Abstiegsverfahren) 1. Berechne x0 ∈ F, Nullraum-Matrix Z, k := 0. 2. Wenn Z T ∇f (xk ) = 0: Stop. | {z } reduzierter Gradient
109
3. Ansonsten berechne Abstiegsrichtung dk := Zv k , effiziente Schritweite σk und xk+1 := xk + σk dk k := k + 1 , goto 2. Man braucht dazu Z, v k sowie die Korrespondenzen F (z k ) , F (z k + σk v k ) , ∇F (z k ) , m m m k k k T f (x ) f (x + σk d ) Z ∇f (xk )
∇F (z k + σk v k ) , m T Z ∇f (xk + σk dk )
Noch sieht es so aus, als w¨ urde man bei der Berechnung von dk = Zv k zumindest den k Vektor v brauchen und nicht nur im x-Raum arbeiten k¨onnen. Bei konkreten Verfahren sieht der aber anders aus! Beispiel 6.2.1 Reduziertes Gradientenverfahren: v k := −∇F (z k ) = −Z T ∇f (xk ) ⇒
dk = Zv k = −ZZ T ∇f (xk )
Spezialfall: Z = P , Projektionsmatrix auf ker A , ⇒ Projiziertes Gradientenverfahren:
Z=P
dk = −ZZ T ∇f (xk ) = −ZZ∇f (xk ) dk = −Z∇f (xk ) Variable-Metrik-Verfahren (reduziert): Folge {A(k) } positiv definierter Matrizen; v k = −(A(k) )−1 ∇F (z k ) = −(A(k) )−1 Z T ∇f (xk ) ⇒
dk = Zv k = −Z(A(k) )−1 Z T ∇f (xk )
Speziell: reduziertes Newton-Verfahren: A(k) := F 00 (z k ) =
⇒
Z T f 00 (xk )Z | {z } reduzierte Hesse-Matrix
dk = −Z(Z T f 00 (xk )Z)−1 Z T ∇f (xk ) .
Analoge Betrachtungen gibt es f¨ ur das reduzierte BFGS-Verfahren. Eine sch¨one Anwendung der nichtlinearen Optimierung mit linearen Gleichungsrestriktionen:
110
Nichtlineare Regression mit Splines 3. Ordnung Messwerte Ansatz Gesucht
(ξi , ηi ), i = 1, ..., m η(ξ) = g(x, ξ) Vektor x und vorher aber: geeigneter Ansatz g. Idee: Splines mit Koeffizienten x.
Sei ξ1 < ξ2 < ... < ξm . Wir u ¨berdecken das Intervall [ξ1 , ξm ] durch Knotenpunkte τ0 < τ1 < ... < τN , τ0 ≤ ξ1 , ξm ≤ τN . Forderungen: • Auf [τi , τi+1 ] ist g =: gi (x, ξ) Polynom dritten Grades in ξ • g(x, ·) ∈ C 2 [τ0 , τN ] ⇒ g, g 0 , g 00 m¨ ussen in den Knotenpunkten stetig sein. Man definiert auf [τi , τi+1 ] gi (x, τ ) =
1 (γi+1 (τ − τi )3 + γi (τi+1 − τ )3 ) + βi (τ − τi ) + αi τi+1 − τi γ0 = γ N = 0 γi = gi00 (x, τi )/6 “Momente” i = 1, ..., N − 1 .
Durch diese Wahl ist g 00 automatisch stetig. Das heißt nicht, dass auch g und g 0 stetig sein m¨ ussen. Diese Forderung ergibt zus¨atzliche Bedingungen an x = (α0 , ..., αN −1 , β0 , ..., βN −1 , ..., γ1 , ..., γN −1 ) . N¨amlich: Stetigkeit von g 0 :
∆τi := τi+1 − τi
0 gi0 (x, τi ) = gi−1 (x, τi ) 3γi ∆τi + βi = βi−1 + 3γi ∆τi−1 ⇒ βi = βi−1 + 3γi (∆τi−1 − ∆τi )
⇒ Eigentlich ist nur β0 wirklich frei. Stetigkeit von g:
gi (x, τi ) = gi−1 (x, τi ) γi (∆τi )2 + αi = γi (∆τi−1 )2 + αi−1 + βi−1 ∆τi−1 ⇒ αi = αi−1 + γi ((∆τi−1 )2 − (∆τi )2 ) + βi−1 ∆τi−1 .
111
Auch hier ist eigentlich wieder nur α0 frei. Insgesamt ergibt sich die Aufgabe min f (x) =
m X (ηi − g(x, ξi ))2 i=1
bei βi = βi−1 + 3γi (∆τi − ∆τi−1 ) 2 αi = αi−1 + βi−1 ∆τi−1 + γi (∆τi−1 − ∆τi2 ) i = 1, ..., N − 1 . Diese Aufgabe kann man reduzieren auf eine freie Optimierungsaufgabe in den Variablen: (α0 , β0 , γ1 , ..., γN −1 )T .
6.3
Ungleichungsnebenbedingungen – nichtquadratische Zielfunktionen
Jetzt ist eine Aufgabe der Bauart min f (x) Ax = b , Gx ≤ r gegeben. Grundidee: Taylorapproximation von f bis zur zweiten Ordnung ; quadratische Zielfunktion, L¨osung der Aufgabe mit der vorn eingef¨ uhrten Methode und dann neue Approximation von f : SQP-Verfahren. Zur Einstimmung ein kurzer Exkurs zur einfachsten Idee des SQP-Verfahrens: Wir betrachten dazu parallel zwei simple Optimierungsaufgaben min f (x)
min f (x) .
x∈Rn
x∈F
F: konvexe Menge. Die notwendigen Bedingungen 1. Ordnung f¨ ur eine L¨osung x∗ lauten: ∇f (x∗ ) = 0
h∇f (x∗ ), x − x∗ i ≥ 0 ∀x ∈ F .
Die linke Beziehung ist ein lineares Gleichungssystem. Wir wissen, wie wir so etwas l¨osen k¨onnen – z.B. mit dem Newton-Verfahren. Rechts steht eine Variationsungleichung – da haben wir erst einmal keine Idee. Schreiben wir deshalb zun¨achst das Newton-Verfahren links auf: (∗)
∇f (xk ) + f 00 (xk )(x − xk ) = 0 .
Die L¨osung ist x = xk+1 . Rechts haben wir noch keine Entsprechung. Offenbar ist aber (∗) gerade die notwendige Bedingung 1. Ordnung f¨ ur die Optimierungsaufgabe (∗∗)
1 minn hx − xm , f 00 (xkn )(x − xk )i + h∇f (xk ), x − xk i . x∈R 2
112
Es ist also egal, ob wir die Aufgabe (∗∗) oder die Gleichung (∗) l¨osen. W¨ahrend aber (∗) keine Entsprechung f¨ ur die beschr¨ankte Optimierungsaufgabe hat, ist das bei (∗∗) kein Problem: Wir nehmen einfach nur die Beschr¨ankung x ∈ F mit hinzu: 1 minh∇f (xk ), x − xk i + hx − xk , f 00 (xkn )(x − xk )i . x∈F 2 L¨osung: x = xn+1 . Und genau das macht man f¨ ur (PLU)! Hier ist F = {x ∈ Rn | Ax = b , Gx ≤ r} konvex. Wir iterieren wie folgt: xk sei berechnet. Man stellt dann auf: min h∇f (xk ), x − xk i + 21 hx − xk , f 00 (xk )(x − xk )i bei Ax = b , Gx ≤ r
(QPk )
L¨osung: xk+1 . Dann k := k + 1, und wir iterieren neu. Ganz umsonst gibt es aber auch hier die Konvergenz nicht, wie auch beim NewtonVerfahren f¨ ur (∗): Dort muss f 00 (xk ) stets invertierbar sein, was man durch f ∈ C 2 und 00 ∗ f (x ) regul¨ar sichert. Da es aber um ein Minimum geht, muss f 00 (x∗ ) noch dazu positiv semidefinit sein. Zusammen mit der Regularit¨at muss somit f 00 (x∗ ) positiv definit sein! Genau das aber hilft in (QPK ) auch: Wenn detf 00 (x∗ ) > 0, so auch detf 00 (xk ) f¨ ur xk nahe ∗ bei x , und damit hat (QPk ) genau eine L¨osung! Bei der numerischen Umsetzung schreibt man das Verfahren ein wenig anders auf: Man setzt d = x − xk
⇔
x = xk + d .
Wegen Axk = b muss gelten Ad = 0, und insgesamt
(QPk )
⇔
minh∇f (xk ), di + 21 hd, f 00 (xk )di bei Ad = 0 , Gxk + Gd ≤ r .
Diese Aufgabe dient also der Berechnung einer Suchrichtung d. Man kann nun ”voll” in die Richtung d gehen, d. h. xk+1 = xk + dk setzen (Newton-Verfahren) oder eine Schrittweitensteuerung verwenden. Bemerkung: Anstelle von f 00 (xk ) kann man wie beim Variable-Metrik-Verfahren auch entsprechende Matrizen A(k) nutzen – siehe z.B. [1]. Wir bleiben bei f 00 . Voraussetzungen f¨ ur die Durchf¨ uhrbarkeit des Verfahrens • f 00 (xk ) soll jeweils positiv definit auf ker A sein ⇒ Existenz genau einer L¨osung von (QPk ) 113
• B(x) =
¡
¢
A G(x)
habe immer vollen Rang
⇒ Multiplikatoren λ, µ sind eindeutig bestimmt. Optimalit¨atsbedingung f¨ ur (QPk ): f 00 (xk )dk + ∇f (xk ) + AT λk+1 + GT µk+1 = 0 µk+1 ≥ 0 , hµk+1 , Gxk + Gdk − ri = 0 .
(6.2) (6.3)
Bei der L¨osung von (QPk ) gibt es nun zwei F¨alle: Fall 1 dk = 0. ¨ Keine Anderung, xk m¨ usste optimal gewesen sein. In der Tat, (6.2–6.3) ergeben dann ∇f (xk ) + AT λk+1 + GT µk+1 = 0 , µk+1 ≥ 0 hµk+1 , Gxk − ri = 0 . ⇒ xk erf¨ ullt die Optimalit¨atsbedingungen ⇒ STOP (Optimalit¨at folgt aus den hinreichenden Bedingungen). Fall 2 dk 6= 0. Dann ist dk Abstiegsrichtung, denn ∇f (xk ) = −f 00 (xk )dk − AT λk+1 − GT µk+1 | · dk k k+1 k h∇f, dk i = −hdk , f 00 dk i − hAd , µk+1 i |{z}, λ i − hGd | {z } | {z } =0
>0
0 f¨ ur den entsprechenden Multiplikator (Bedingung der strengen Komplementarit¨at) Bemerkung dazu: Immer gilt µ ˜i > 0 ⇒ hg i , x˜i = ri . Strenge Komplementarit¨at bedeutet die Umkehrung. Satz 6.3.1 Unter den Voraussetzungen (i)-(v) konvergiert unser SQP-Verfahren lokal quadratisch, d. h. ˜ + kµk+1 − µ kxk+1 − x˜k + kλk+1 − λk ˜k ¡ k ¢ ˜ 2 + kµk − µ ≤ c kx − x˜k2 + kλk − λk ˜ k2
7 7.1
Probleme mit nichtlinearen Restriktionen – Theorie Grundlagen
Nun behandeln wir den allgemeinsten Fall von Aufgaben unserer Vorlesung, n¨amlich voll nichtlineare Aufgaben des Typs min f (x) hi (x) = 0 i = 1, ..., m gj (x) ≤ 0 j = 1, ..., p , d. h. in vektorieller Form min f (x) h(x) = 0 g(x) ≤ 0
h : Rn → Rm g : Rn → Rp .
Hier gilt F = {x ∈ Rn | h(x) = 0 , g(x) ≤ 0}.
115
(PNU)
Illustration f¨ ur n = 2:
h1=0
F g1=0 g1=0
x
F
g2=0
Ist x˜ lokale L¨osung, dann muss −∇f in dem von ∇g1 , ∇g2 aufgespannten Kegel liegen. Unter der Voraussetzung, dass x˜ das linearisierte Problem l¨ost, gilt also 0 = ∇f (˜ x) +
m X i=1
λi ∇hi (˜ x) +
p X
µj ∇gj (˜ x) mit µj := 0 j 6∈ J(˜ x)
j=1
oder 0 = ∇f (˜ x) + h0 (˜ x)T λ + g 0 (˜ x)T µ µ ≥ 0 und µj gj (˜ x) = 0 ∀j
(7.4) (7.5)
Definition 7.2.2 λ und µ mit den Eigenschaften (7.4-7.5) heißen Lagrangesche Multiplikatoren zu x˜ ∈ F . Satz 7.2.1 Ist x˜ ∈ F und l¨ost x˜ die linearisierte Aufgabe (7.1) (f, g, h seien differenzierbar in x˜), dann existieren Lagrangesche Multiplikatoren λ, µ zu x˜.
118
Bemerkungen: 1. Dieser Satz war insofern schon klar, weil (7.1) eine differenzierbare Aufgabe mit linearen Restriktionen ist, und daf¨ ur kennen wir ja schon die Lagrangesche Multiplikatorenregel. Wie bisher, k¨onnen wir diese Regel wie folgt aufschreiben: L = L(x, λ, µ) := f (x) + hh(x), λi + hg(x), µi . Lagrange-Funktion. Dann gilt ∇Lx (˜ x, λ, µ) = 0 , µ ≥ 0 , hg(˜ x), µi = 0 . 2. Ist f und F konvex, dann ist diese Optimalit¨atsbedingung auch hinreichend f¨ ur Optimalit¨at. Wir haben Satz 7.2.1 aber nur unter der Bedingung gezeigt, dass x˜ die linearisierte Aufgabe l¨ost. Wann gilt das? Dazu m¨ ussen wir etwas weiter ausholen, vorher aber rechnen wir zur Illustration noch ein Beispiel. Beispiel 7.2.2 min f (x) = |x|2 , x ∈ R3 bei 2x1 − x2 + x3 ≤ 5 x1 + x2 + x3 = 3 . Wir wollen annehmen, dass die Multiplikatorenregel gilt. L = x21 + x22 + x33 + µ(2x1 − x2 + x3 − 5) + λ(x1 + x2 + x3 − 3) Lx1 = 0 Lx2 = 0 Lx3 = 0
⇒ 2x1 + 2µ + λ = 0 ⇒ 2x2 − µ + λ = 0 ⇒ 2x3 + µ + λ = 0 .
(∗)
Außerdem muss gelten µ(2x1 − x2 + x3 − 5) = 0, µ ≥ 0. Nehmen wir an, µ > 0. Dann muss gelten 2x1 − x2 + x3 = 5. Aus (∗) folgt λ 2 λ − 2 λ − . 2
x1 = −µ − µ 2 µ x3 = − 2 x2 = +
119
(∗∗)
Einsetzen in die aktiven Nebenbedingungen µ ¶ µ ¶ µ ¶ λ µ λ µ λ 5 = 2 −µ − − − + − − = −3µ − λ 2 2 2 2 2 µ ¶ µ ¶ µ ¶ λ µ λ µ λ 3 3 = −µ − + − + − − = −µ − λ 2 2 2 2 2 2 15 9 3 − = µ+ λ 9 7 2 2 2 ⇒− = µ 3 2 2 3 = −µ − λ 2 9 µ=− Widerspruch zu 7
µ > 0.
Also nehmen wir µ = 0 an. Dann m¨ ussen wegen (∗∗) alle xi gleich sein und wegen x1 + x2 + x3 = 3 folgt x1 = x2 = x3 = 1, λ = −2. 1 ullt die Optimalit¨atsbedingungen “kritischer Punkt”. Ist x L¨osung? Ja, ⇒ x = 1 erf¨ 1 denn • f (x) → ∞, |x| → ∞. • Daher k¨onnen wir das in einer beschr¨ankten Menge suchen Minimum )! Ã( 1 x ∈ F| |x|2 ≤ f 1 . 1 • Nach dem Satz von Weierstraß existiert das Minimum unserer Aufgabe. • Dieses muss die notwendigen Bedingungen erf¨ ullen. 1 ⇒ x = 1 ist die L¨osung. 1 Bemerkung: Alles unter der Annahme, dass unsere Multiplikatorenregel hier wirklich gelten muss! Wir setzen nun unsere theoretischen Untersuchungen fort. Dazu f¨ uhren wir ein: Definition 7.2.3 (Tangentenkegel). Es sei S ⊂ Rn eine beliebige Menge (z.B. F). Vektor d ∈ Rn heißt Tangentialrichtung an S in x, x ∈ S, wenn es eine Folge {xk } ⊂ S mit xk → x, k → ∞ und {tk } ⊂ R, tk > 0 mit tk ↓ 0 gibt, so dass xk − x = d. k→∞ tk lim
Die Menge aller Tangentialrichtungen an S in x heißt Tangentialkegel T (S, x).
120
Es gilt immer 0 ∈ T (S, x). Außerdem ist T (S, x) ein Kegel. Man kann zeigen (vgl. [1, Lemma 7.2.10,11,13]): • x ∈ S ⇒ T (S, x) ist abgeschlossen • x ∈ S ⇒ T (S, x) ⊂ clK(S, x) • x ∈ S, S konvex ⇒ T (S, x) = clK(S, x). • Im Falle linearer Gleichungen und Ungleichungen ist K(F, x) abgeschlossen und konvex, d. h. es gilt T (F, x) = K(F, x) = L(F, x). Im Fall der Nichtlinearit¨at gilt das nicht, aber es gilt immer bei Differenzierbarkeit ohne weitere Voraussetzungen: Lemma 7.2.2 Es sei F die zul¨assige Menge von (PNU), g und h an der Stelle x differenzierbar. Dann gilt T (F, x) ⊂ L(F, x) . Beweis: Siehe [1, Lemma 7.2.15]. Man zeigt: Gilt d ∈ T (F, x) dann h0 (x)d = 0 sowie ∇g i (x)d ≤ 0 ∀i ∈ J(x) . Das heißt d ∈ L(F, x).
2
Beispiele • F = {x ∈ R2 | g(x) = x21 + x22 − 1 ≤ 0} a) x = 0 ⇒ g(x) < 0 inaktiv ⇒ L(F, 0) = R2 . Außerdem auch T (F, 0) = R2 , da x = 0 ein innerer Punkt von F ist k = d ∀k > k0 ). (setze xk = x + tk d; dann xk ∈ F f¨ ur kleine tk ⇒ x t−x k ⇒ bei x = 0 gilt L(F, 0) = T (F, 0). µ ¶ 0 b) x = −1 L(F, x) = {d | g 0 (x)d ≤ 0} ¾ ½ µ ¶µ ¶ d1 x1 ≤0 = d|2 d2 x2 = {d | − 2d2 ≤ 0} ⇒ d2 ≥ 0 . Analog findet man T (F, x) = {d | d2 ≥ 0} auch hier: T (F, x) = L(F, x) . • F = {x ∈ R2 | − x31 + x2 ≤ 0 , −x2 ≤ 0} (unser altes Beispiel).
121
Im Nullpunkt gilt mit g1 = −x31 + x2 , g2 = −x2 , L(F, 0) = {d | − 3 · 02 d1 + d2 ≤ 0 , −d2 ≤ 0} = {d | d2 = 0} . F¨ ur den Tangentenkegel ergit sich (siehe geometrische Illustration) T (F, 0) = {d | d1 ≥ 0 , d2 = 0}
x2
F
x1
0
T(F ,0)
Der negative Teil von R kommt bei der Bildung von T (F, 0) nicht zum Zuge! Hier gilt wirklich nur die Inklusion T (F, 0) ⊂ L(F, 0) . Der Vorteil des Tangentialkegels ist, dass man mit ihm einen vern¨ unftigen Ersatz unserer nur bei Konvexit¨at g¨ ultigen Variationsungleichung bekommt. Es gilt n¨amlich der Satz 7.2.2 Sei S ⊂ Rn nichtleer, f : S → R, x˜ ∈ S ein lokales Minimum von f und f in x˜ differenzierbar. Dann gilt h∇f (˜ x), di ≥ 0 ∀d ∈ T (S, x˜) . Beweis: Wir w¨ahlen d ∈ T (S, x˜) beliebig aus. Dann gilt xk − x˜ k→∞ tk
d = lim
mit xk ∈ S, xk → x˜, tk → 0. Also mit rk → 0 tk (d + rk ) = xk − x˜ xk = x˜ + tk (d + rk ) .
122
Da x˜ lokales Minimum und xk → x˜, folgt f¨ ur hinreichend großes k 0 ≤ f (xk ) − f (˜ x) = h∇f (˜ x), tk (d + rk )i + o(tk (d + rk )) | : tk ⇒ 0 ≤ h∇f (˜ x), d + rk i +
o(tk (d + rk )) t | {zk } o(tk (d + rk )) = k · |d + rk | k |t (d + r )|
f¨ ur k → ∞ strebt rk gegen Null und auch tk (d + rk ) gegen Null. Insgesamt 0 ≤ h∇f (˜ x), di . 2 Wir wissen nun also h∇f, di ≥ 0 ∀d ∈ T (F, x˜) und h¨atten gern h∇f, di ≥ 0 ∀d ∈ L(F, x˜) , denn Letzteres ergibt – wie wir gesehen haben – die Lagrangesche Multiplikatorenregel. Dazu br¨auchten wir aber, dass x˜ die linearisierte Aufgabe l¨ost... Was liegt n¨aher als die Forderung T (F, x˜) = L(F, x˜)
?
Definition 7.2.4 x˜ ∈ F heißt regul¨ ar, wenn T (F, x˜) = L(F, x˜) gilt. Folgerung aus dem Bisherigen: Satz 7.2.3 Ist x˜ ∈ F regul¨ar und lokales Minimum f¨ ur (PNU), dann existieren Lagrangesche Multiplikatoren λ und µ ≥ 0. Sind zus¨atzlich die Gradienten der aktiven Restriktionen, d. h. ∇hi (˜ x) , i = 1, ..., m sowie ∇gj (˜ x) , j ∈ J(˜ x) linear unabh¨angig, dann sind λ und µ eindeutig bestimmt. Bevor wir die Regularit¨atsbedingungen weiter diskutieren, bemerken wir noch: T (F, x) h¨angt nicht von der konkreten Darstellung von F ab, w¨ahrend L(F, x) davon abh¨angen kann!
123
x2
Beispiel 7.2.3 •
1
F1 = {x|g1 (x) = x1 + x2 − 1 ≤ 0 g2 (x) = −x1 ≤0 g3 (x) = −x2 ≤0}
F1 1
0
x1
• Andere Darstellung von F1 : F2 = {x|(x1 + x2 − 1)3 ≤ 0 −x1 ≤ 0 −x2 ≤ 0 } .
Offenbar
F1 = F2 .
Wir betrachten den Punkt µ x˜ =
Hier gilt:
¶ 1/2 . 1/2
T (F1 , x˜) = T (F, x˜) = {d | d1 + d2 ≤ 0} (geometrisch klar) L(F1 , x˜) = {d | d1 + d2 ≤ 0} = T (F, x˜) (g1 war affin linear, g2 , g3 inaktiv) . µ ¶ E D 2 1 L(F2 , x˜) = d | h∇g1 (˜ x), di = 3 (˜ x + x˜ − 1) , d = h0, di ≤ 0 | 1 {z2 } 1 =0
⇒
L(F2 , x˜) = R2 ⊃ T (F2 , x˜) .
Man kann zeigen, dass f¨ ur entsprechende Optimierungsaufgaben im zweiten Fall keine Lagrangeschen Multiplikatoren existieren m¨ ussen (vgl. [1]). Wir widmen uns nun dem Problem der Regularit¨at. Wann gilt T (F, x˜) = L(F, x˜)? Fall reiner Ungleichungsrestriktionen Wir betrachten F = {x ∈ Rn | g(x) ≤ 0} , g : Rn → Rp differenzierbar. Ein x˜ ∈ F erf¨ ulle folgende Regularit¨atsbedingung: ¯ < 0 ∀j ∈ J(˜ ∃d¯ ∈ Rn : h∇gj (˜ x), di x) . Dann ist x˜ regul¨ar, d. h. T (F, x˜) = L(F, x˜).
124
Beweis: Da stets T ⊂ L gilt, m¨ ussen wir die andere Inklusion zeigen. Dazu sei d ∈ L(F, x˜) beliebig gegeben. Wir setzen ¯ x(t) = x˜ + t(d + αd) mit α > 0. Dann ist x(t) ∈ F f¨ ur hinreichend kleine t: F¨ ur die inaktiven Restriktionen ¯ → gj x˜ < 0, t ↓ 0. Bei den aktiven gilt j 6∈ J(˜ x) ist das klar, denn gj (˜ x) + t(d + αd)) ¯ + o(t) gj (x(t)) = gj (˜ x) +h∇gj (˜ x), t(d + αd)i | {z } =0 o(t) ¯ + x), di = t h∇gj (˜ x), di +t α h∇gj (˜ | {z } t | {z } |{z} k0 und nach Konstruktion xk − x˜ = d + αd¯. tk ⇒ d + αd¯ ∈ T (F, x˜) ∀α > 0. T (F, x˜) ist abgeschlossen. Damit gilt auch d = lim d + αd¯ ∈ α↓0
T (F, x˜).
2
¯ ≤ 0 ausreicht. Man kann zeigen, dass f¨ ur die affin-linearen Restriktionen sogar h∇gj , di Insgesamt folgt dann Satz 7.2.4 Sei x˜ ∈ F und g differenzierbar in x˜. Gibt es ein d¯ ∈ Rn mit ¾ ¯ ≤ 0 f¨ h∇gj (˜ x), di ur alle affin-linearen aktiven Restriktionen ¯ < 0 f¨ h∇gj (˜ x), di ur alle anderen aktiven Restriktionen, dann ist x˜ regul¨ar. Hinreichend f¨ ur (7.6): ∃d¯ ∈ Rn : g(˜ x) + g 0 (˜ x)d¯ < 0
Lokale (d. h. von x˜ abh¨angige Slater-Bedingung.
Im Falle konvexer Funktionen gj ist hinreichend f¨ ur (7.6) ∃¯ v ∈ F : gj (¯ v) < 0
∀j ∈ J(˜ x), nichtlinear gj
(Slater-Bedingung)
¯ 0; sonst: Wegen Konvexit¨at denn f¨ ur v¯ = x˜ gilt (7.6) mit d = x) ≥ h∇gj (˜ x), v| {z − x˜}i gj (v) − gj (˜ d
also
x) h∇gj (˜ x), di ≤ gj (¯ v ) − gj (˜ | {z } | {z } 1. 2 ⇒
Maximum bei Minimum bei
7.3
2−1/4 ¡|x01 |¢= |x2 | = ¡±1 ¢ und ±1 0
(4 Punkte) (4 Punkte)
Optimalit¨ atsbedingungen zweiter Ordnung
Analog zu den Aufgaben mit oder ohne lineare Restriktionen kann man nun wieder mit hinreichenden Bedingungen 2. Ordnung u ufen, ob wirklich ein lokales Minimum ¨berpr¨ vorliegt. Dazu braucht man die zweite Ableitung der Lagrange-Funktion, 00
Lxx (x, λ, µ) = f (x) +
m X
λi h00i (x)
+
m X
i=1
µj gj00 (x) .
j=1
Es gilt Satz 7.3.1 Es gelte f, h, g ∈ C 2 , x˜ sei regul¨ar, und λ, µ ≥ 0 seien die entsprechenden Lagrangeschen Multiplikatoren. Es existiere ein α > 0, so dass dT Lxx (˜ x, λ, µ)d ≥ kdk2
(7.9)
gilt f¨ ur alle d ∈ L(F, x˜) mit der zus¨atzlichen Eigenschaft h∇f (˜ x)T , di = 0. Dann existieren %, β > 0, so dass die quadratische Wachstumsbedingung f (x) ≥ f (˜ x) + βkx − x˜k2 gilt f¨ ur alle x ∈ F ∩ B(˜ x, %). Damit ist x˜ striktes lokales Minimum von (PNU).
129
Diese Bedingung kann man etwas anders aufschreiben: x˜ erf¨ ullt nach Voraussetzung die Kuhn-Tucker-Bedingungen mit Multiplikatoren λ und µ. Folglich ∇f (˜ x) = −h0 (˜ x)T λ − g 0 (˜ x)T µ , also h∇f (˜ x), di = 0
⇔
h−h0 (˜ x)T λ, di − hg 0 (˜ x)T µ, di
=0
m hλ, h0 (˜ x)di + hg 0 (˜ x)d, µi = 0 .
(∗)
Ist d ∈ L(F, x˜), so gilt automatisch h0 (˜ x)d = 0. Außerdem gilt h∇gj (˜ x), di ≤ 0 f¨ ur alle j ∈ J(˜ x) (aktive Restriktionen). Wegen (∗) muss noch gefordert werden h∇gj (˜ x), diµj = 0 ∀j = 1, ..., p . F¨ ur die inaktiven Restriktionen gilt das automatisch, weil µj = 0. F¨ ur die aktiven mit µj = 0 auch (also keine zus¨atzliche Bedingung). Also bleiben noch die aktiven mit µj > 0. Hier muss also noch gelten h∇gj (˜ x), di = 0. ¨ ⇒ Aquivalente Form der hinreichenden Bedingung: • x˜ ∈ F erf¨ ullt die Kuhn-Tucker-Bedingungen und • (7.9) gilt f¨ ur alle d mit h0 (˜ x)d = 0 h∇gj (˜ x), di = 0 ∀j ∈ J(˜ x) mit µj > 0 ‘‘streng aktive Restriktionen’’ h∇gj (˜ x), di ≤ 0 ∀j ∈ J(˜ x) mit µj = 0 .
130
8
Probleme mit nichtlinearen Restriktionen-Verfahren
8.1
Das Lagrange-Newton-Verfahren
Wir betrachten wieder die Aufgabe minf (x) h(x) = 0 g(x) ≤ 0
(PNU)
wie im letzten Kapitel. Dabei setzen wir jetzt generell voraus: • f, g, h ∈ C 2 • x˜ ist eine regul¨are lokale L¨osung ˜ µ • λ, ˜ sind zugeh¨orige Lagrangesche Multiplikatoren. ˜ µ Wir finden x˜, λ, ˜ aus den Kuhn-Tucker-Bedingungen, die unter anderem fordern: ˜ + g 0 (˜ ∇f (˜ x) + h0 (˜ x)T λ x)T µ ˜=0 h(˜ x) = 0 g˜(˜ x) = 0 . Dabei stecken in g˜ nur die aktiven Ungleichungen, d. h. g˜(x) = (gj (x))j∈J(˜x) . Die nicht aktiven interssieren in einer Umgebung von x˜ nicht, sie k¨onnen lokal als Neben˜ µ bedingungen vernachl¨assigt werden. Durch L¨osen dieses Systems sollen x˜, λ, ˜ bestimmbar sein. Um das System kurzfassen zu k¨onnen, definieren wir x ∇f (x) + h0 (x)λ + g˜0 (x)ν z = λ , F (z) = h(x) ν g˜(x) ˜ T , ν˜T ) mit ν = (µj )j∈J(˜x) . ν˜ := (˜ µj )j∈J(˜x) . Dann gilt also mit z˜ = (˜ xT , λ F (˜ z) = 0 . Was liegt n¨aher, als darauf das Newton-Verfahren anzuwenden, um z˜ numerisch zu bestimmen. Als Vorabinformation muss man aber wissen, welche Indizes zur Menge J(˜ x) geh¨oren, also die aktiven Ungleichungen kennen! F¨ ur die Konvergenz des Verfahrens brauchen wir • (8.1.2)
f, g, h ∈ C 2,1 und F 0 (˜ z ) ist nichtsingul¨ar. Die Matrix F 0 (z) hat die Form Lxx (x, λ, ν) h0 (x)T g˜0 (x)T h0 (x) 0 0 . F 0 (z) = 0 g˜ (x) 0 0
131
Dies ist eine Matrix vom Typ µ A=
Q AT A 0
¶ ,
f¨ ur welche in Lemma 5.4.1 gezeigt wurde: Ist Q positiv definit auf ker A und hat A vollen Rang, dann ist A invertierbar. Hier gilt µ 0 ¶ h (x) , Q = Lxx , A = g 0 (x) also ist F 0 (˜ z ) nichtsingul¨ar, wenn • (8.1.3)
Die Gradienten ∇hi (˜ x), ∇gj (˜ x) der aktiven Restriktionen linear unabh¨angig,
• (8.1.5)
und eine hinreichende Optimalit¨atsbedingung 2. Ordnung erf¨ ullt ist: ˜ µ dT Lxx (˜ x, λ, ˜)d ≥ αkdk2
f¨ ur alle d mit h0 (˜ x)d = 0 und g˜0 (˜ x)d = 0. Weiter brauchen wir sp¨ater noch: • (8.1.4) Es liegt strenge Komplementarit¨at vor: gj (˜ x) = 0 ⇒ µj > 0. Damit sind die Voraussetzungen erf¨ ullt, welche die lokal-quadratische Konvergenz des Newton-Verfahrens garantieren: Ausgehend vom Startvektor z 0 = (x0 , λ0 , ν 0 ) berechnet man z k+1 = z k − F 0 (z k )−1 F (z k ) , d. h., man l¨ost das lineare System F 0 (z k )(z − z k ) = −F (z k ) f¨ ur z k+1 . Das sieht so aus: x − xk L˜xx (xk , λk , ν k ) h0 (xk )T g˜0 (xk )T λ − λk h0 (xk ) 0 0 0 k ν − νk g˜ (x ) 0 0 ∇f (xk ) + h0 (xk )T λk + g˜0 (xk )T ν k . = − h(xk ) g˜(xk ) Einiges hebt sich hier auf, so dass am Ende bleibt ∇f (xk ) + L˜xx (xk , λk , ν k )(x − xk ) + h0 (xk )T λ + g˜0 (xk )T ν = 0 h(xk ) + h0 (xk )(x − xk ) = 0 k
0
k
k
g˜(x ) + g˜ (x )(x − x ) = 0 . 132
(8.10)
Im Prinzip sind das die notwendigen Optimalit¨atsbedingungen f¨ ur eine L¨osung der linearquadratischen Aufgabe 1 (x − xk )T Lxx (...)(x − xk ) x 2 bei h(xk ) + h0 (xk )(x − xk ) = 0 min ∇f (xk )T (x − xk ) +
(Q1)k
g(xk ) + g 0 (xk )(x − xk ) ≤ 0 , wenn wir zeigen k¨onnen, dass die inaktiven Restriktionen j 6∈ J(˜ x) auch hier nicht aktiv sind, also bedeutungslos bleiben. In gewissem Sinne sind also das Newton-Verfahren (8.10) und das SQP-Verfahren (Q1)k ¨aquivalent. Nun f¨ uhren wir wieder die Richtung d = x − xk ein und erhalten so: minn
d∈R
1 hd, Lxx (xk , λk , µk )di + h∇f (xk ), di 2 bei h(xk ) + h0 (xk )d = 0
(Q2)k
g(xk ) + g 0 (xk )d ≤ 0 und als L¨osung dk = xk+1 − xk mit neuen Multiplikatoren µk+1 , λk+1 . So erhalten wir Verfahren 8.1.1 Lagrange-Newton-Verfahren f¨ ur (PNU) 1. k := 0, z 0 = (x0 , λ0 , µ0 ) 2. L¨ose (Q2)k → dk ; λk+1 , µk+1 3. STOP bei dk = 0 4. xk+1 = xk + dk , goto 2. Bemerkungen: 1. Das Verfahren konvergiert lokal quadratisch! Das ist plausibel, weil es eigentlich unter entsprechenden Voraussetzungen ¨aquivalent zum Newton-Verfahren ist (wenn man die aktiven Restriktionen kennt und strenge Komplementarit¨at gilt. Strenge Komplementarit¨at: Aktive Restriktionen bleiben in der entsprechenden Umgebung aktiv, weil die Multiplikatoren dort positiv bleiben). 2. Die Iterierten dieses Verfahrens sind in der Regel wegen der Nichtlinearit¨at der Restriktionen unzul¨assig, d. h. xk 6∈ F . Außerdem haben wir nur lokale Konvergenz. Deshalb sind Modifikationen angebracht!
8.2
Sequentielle quadratische Optimierung
Wie erw¨ahnt, ist das reine Langrange-Newton-Verfahren nur lokal konvergent. Außerdem kann die Berechnung von Lxx teuer werden. Deshalb modifiziert man das Verfahren • Verwendung von Approximationen A(k) fu ¨ r Lxx (xk , λk , µk ) Man verwendet, wie bei Variable-Metrik-Verfahren, symmetrische und positiv definite
133
Matrizen A(k) und bestimmt in der Richtungssuche: 1 hd, A(k) di d 2 bei h(xk ) + h0 (xk )d = 0 minh∇f (xk ), di +
(QP)k
g(xk ) + g 0 (xk )d ≤ 0 . Wir wollen annehmen, dass die entsprechende zul¨assige Menge Fk nicht leer ist. Eine hinreichende Bedingung gibt [1,Satz8.2.1] an (hi affin-linear, lineare Unabh¨angigkeit der Gradienten, Slater-Typ-Bedingung). Unter nat¨ urlichen Bedingungen kann dann die Existenz genau einer L¨osung von (QP)k sowie die gleichm¨aßige Beschr¨anktheit der Folgen dk , αk , µk bewiesen werden [1,Satz8.2.2]. • Schrittweitensteuerung Wir gehen nicht den gesamten Newtonschritt, sondern setzen xk+1 = xk + σdk . Man muss dabei beachten: a) Die erzeugten xk m¨ ussen f¨ ur (PNU) nicht zul¨assig sein. b) dk ist in der Regel keine Abstiegsrichtung. (Es k¨onnte theoretische passieren, dass xk einen zu guten Wert liefert, weil unzul¨assig. Dann k¨onnten theoretisch ansteigende Funktionswerte eintreten.) Deshalb benutzt man zur Schrittweitensteuerung sogenannte Merit-Funktionen Definition 8.2.1 φ heißt Merit-Funktion, wenn gilt: • Ist x˜ ∈ F lokale L¨osung von (PNU), dann ist x˜ lokales (freies) Minimum von φ. • Richtung dk ist Abstiegsrichtung f¨ ur φ. Praktisch bew¨ahrt haben sich Merit-Funktionen des Typs φ = φ(x; β, γ) := f (x) +
p X
βj gj (x)+ +
j=1
m X
γi |hi (x)|
i=1
mit Konstanten βj ≥ 0, γi ≥ 0. φ ist nicht differenzierbar! gj (x)+ := max{0, gj (x)} =
gj (x) + |gj (x)| . 2
Wenn x ∈ F, so gilt gj (x) ≤ 0, also gj (x)+ = 0 sowie hi (x) = 0, also |hi (x)| = 0. Damit x ∈ F ⇒ f (x) = φ(x; β, γ) .
134
F¨ ur x 6∈ F gilt φ > f . In diesem Sinne sind Σβj (gj )+ und Σγi |hi | Strafterme, welche eine Verletzung der Nebenbedingungen bestrafen: m X
γi |hi (x)| +
i=1
|
p X
βj gj (x)+ .
j=1
{z } Penalty-Term γi , βj Penalty-Parameter
Die Funktion φ heißt (exakte) Penalty-Funktion. Es gilt der wichtige Satz 8.2.1 Unter den Bedingungen 8.1.2–8.1.5 gilt: Ist x˜ lokales Minimum von (PNU) und βj > µj , γi > |λi | j = 1, ..., p, i = 1, ..., m, dann ist x˜ striktes lokales Minimum von φ(i; β, γ). Hier sind λ, µ die Lagrangeschen Multiplikatoren von x˜. Durch relativ aufwendige Absch¨atzungen kann man letztlich folgendes zeigen: Man gibt ε > 0 und δ ∈ (0, 1) vor. Sind die Parameter βj und γi hinreichend groß gew¨ahlt, dann gilt (k+1) (k+1) β j ≥ µj + ε , γi ≥ |λi | + ε, und f¨ ur hinreichend kleines σ > 0 erh¨alt man £ ¤ φ(xk + σdk , β, γ) ≤ φ(xk ; β, γ) − σδ hdk , A(k) dk i + εkg(xk )+ k1 + εkh(xk )k1 , d. h., die Merit-Funktion kann wirklich verkleinert werden. Außerdem gilt |hi (xk + σdk )| ≤ (1 − δσ)|hi (xk )| k
k
k
gj (x + σd ) ≤ (1 − δσ)gj (x )
i = 1, ..., m j = 1, ..., p ,
d. h., die Unzul¨assigkeit wird in jedem Schritt geringer. Darauf basiert eine Grundversion des SQP-Verfahrens, auf deren ausf¨ uhrliche Darstellung wir verzichten. Wir verweisen auf [1, Abschnitt 8.2.3].
135