Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 1 Einführung (1.1) Sei M ⊂ Rn und f : M → R. Betrachte (P ) Minimiere f (x) unter der Bedingung x ∈ M. a) M heißt die Menge der zulässigen Punkte. b) (P ) heißt zulässig, falls M 6= ∅. c) x∗ ∈ Rn heißt Lösung von (P ), wenn i) x∗ zulässig ist, d.h. x∗ ∈ M , und ii) x∗ optimal ist, d.h. f (x∗) ≤ f (x) für alle x ∈ M . In diesem Fall heißt (P ) lösbar, und wir setzen min(P ) = min f (x) = f (x∗). x∈M d) Im Allgemeinen defininieren wir ( inf f (x) falls M = 6 ∅ inf (P ) = x∈M +∞ falls M = ∅. 1 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 2.1 Konvexe Mengen und Polyeder – Konvexe Mengen (2.1) a) Eine Menge V ⊂ Rn heißt linearer Teilraum / Unterraum, wenn x, y ∈ V, λ, µ ∈ R =⇒ λx + µy ∈ V. b) Eine Menge V ⊂ Rn heißt affiner Teilraum, wenn x, y ∈ V, λ ∈ R =⇒ (1 − λ)x + λy ∈ V. c) Eine Menge M ⊂ Rn heißt konvex, wenn x, y ∈ M, λ ∈ [0, 1] =⇒ (1 − λ)x + λy ∈ M. d) Eine Menge K ⊂ Rn heißt Kegel, wenn x ∈ K, λ ≥ 0 =⇒ λx ∈ K. (2.2) a) V ⊂ Rn ist genau dann ein linearer Teilraum, wenn (i) x ∈ V, λi ∈ R, i = 1, . . . , m, m beliebig =⇒ b) V ⊂ Rn ist genau dann ein affiner Teilraum, wenn m X λi = 1 x(i) ∈ V, λi ∈ R, i = 1, . . . , m, m beliebig, i=1 c) M ⊂ Rn ist genau dann konvex, wenn m X x(i) ∈ M, λi ≥ 0, i = 1, . . . , m, m beliebig, λi = 1 i=1 d) K ⊂ Rn ist genau dann ein konvexer Kegel, wenn x(i) ∈ K, λi ≥ 0, i = 1, . . . , m, m beliebig =⇒ m X λi x(i) ∈ V. i=1 =⇒ =⇒ m X i=1 m X λi x(i) ∈ V. λi x(i) ∈ M. i=1 m X i=1 λi x(i) ∈ K. 2 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 2.1 Konvexe Mengen und Polyeder – Konvexe Mengen (2.5) a) Ein konvexer Kegel K ⊂ Rn heißt endlich erzeugt, wenn eine endliche Teilmenge S = {u(1), ..., u(m)} ⊂ Rn existiert mit m nX o (i) K = cone(S) = λiu : λi ≥ 0 = {U λ : λ ≥ 0} . (1) i=1 (m) Dabei ist U = (u , ..., u ) ∈ Rn,m. b) Eine Menge E = x ∈ Rn : aT x = γ mit a ∈ Rn, a 6= 0, und γ ∈ R heißt (Hyper-)Ebene im Rn, n T c) Eine Menge H = x ∈ R : a x ≤ γ mit a ∈ Rn, a 6= 0, und γ ∈ R heißt abgeschlossener Halbraum. d) Eine Menge M ⊂ Rn heißt polyedral (oder auch Polyeder ), wenn sie als Durchschnitt von endlich vielen abgeschlossenen Halbräumen darstellbar ist, d. h. wenn es eine Matrix A ∈ Rm,n und einen Vektor b ∈ Rm gibt mit M = x ∈ Rn : Ax ≤ b . e) Beschränkte Polyeder M ⊂ Rn heißen Polytope. 3 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 2.2 Konvexe Mengen und Polyeder – Satz von Weyl und Lemma von Farkas (2.6) Jeder endlich erzeugte konvexe Kegel K = {U λ : λ ≥ 0} ist polyedral und von der Form K = {x ∈ Rn : Ax ≤ 0}. Insbesondere sind endlich erzeugte konvexe Kegel abgeschlossen. (2.8) Sei K ⊂ Rn eine konvexe, abgeschlossene Menge, K 6= ∅, und x ∈ / K. Dann existiert eine Hyperebene, die x und K trennt, d. h. es existiert a ∈ Rn, a 6= 0, und γ ∈ R mit aT z ≤ γ < aT x für alle z ∈ K . Ist K sogar ein konvexer Kegel, so kann γ = 0 gewählt werden. (2.9) Seien A ∈ Rm,n und b ∈ Rm gegeben. Dann gilt genau eine der beiden folgenden Aussagen: (i) {x ∈ Rn : Ax = b, x ≥ 0} = 6 ∅ (ii) {y ∈ Rm : AT y ≤ 0, bT y > 0} = 6 ∅ 4 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 2.3 Konvexe Mengen und Polyeder – Hauptsatz der Polyedertheorie (2.10) M ⊂ Rn sei beliebige konvexe Menge. a) x ∈ M heißt Ecke / Extremalpunkt von M , wenn sich x nicht als echte Konvexkombination zweier verschiedener Punkte von M darstellen lässt, d. h., wenn gilt: y, z ∈ M , λ ∈ (0, 1) , x = λy + (1 − λ)z =⇒ y = z. b) Ein Vektor u ∈ Rn, u 6= 0, heißt freie Richtung von M , wenn es x ∈ M gibt, so dass der ganze Strahl {x + tu : t ≥ 0} zu M gehört. c) Eine freie Richtung u ∈ Rn, u 6= 0, heißt extremale Richtung von M , wenn sie sich nicht als echte Konvexkombination zweier linear unabhängiger freier Richtungen schreiben lässt, d. h., wenn gilt: v, w freie Richtungen, λ ∈ (0, 1) , u = λv + (1 − λ)w =⇒ v, w linear abhängig . Strahlen der Form S = {x + tu : t ≥ 0} ⊂ M mit Ecke x ∈ M und extremaler Richtung u heißen Extremalstrahlen. Mit extrP(M ) bezeichnen wir die Menge aller Extremalpunkte von M . Mit extrS(M ) bezeichnen wir die Vereinigung aller Extremalstrahlen von M . 5 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 2.3 Konvexe Mengen und Polyeder – Hauptsatz der Polyedertheorie (2.11) Ein Polyeder M = {x ∈ Rn : Ax ≤ b} hat nur endlich viele Ecken. (2.12) Sei I ⊂ {1, ..., m}, I 6= ∅. Dann heißt MI = {x ∈ M : (Ax)i = bi für i ∈ I} eine Seite von M . (2.13) Es gilt extrP(MI ) ⊂ extrP(M ) und extrS(MI ) ⊂ extrS(M ). (2.15) Für den relativen Rand ∂relM = {x ∈ Rn : Bε(x) ∩ M 6= ∅ und Bε(x) ∩ (affine M \ M ) 6= ∅ für alle ε > 0} eines Polyeders gilt o [ n MI : I ⊂ {1, ..., n}, dim MI < dim M . ∂relM ⊂ (2.16) Sei M ⊂ Rn konvex, M 6= ∅. Dann ist das relative Innere intrelM = {x ∈ M : es exisitert ein ε > 0 mit Bε(x) ∩ affine M ⊂ M } nicht leer. (2.19) Sei M ⊂ Rn konvex, M 6= ∅ und M geradenfrei. Dann gilt M ⊂ conv ∂relM . n Sei M ⊂ R ein geradenfreies Polyeder. Dann ist M = conv extrP(M ) ∪ extrS(M ) . (2.20) Jedes (nichtleere) Polytop M ist die konvexe Hülle seiner Ecken. (2.21) Ein (nichtleerer) Polyeder M ist genau dann geradenfrei, wenn er Ecken besitzt. (2.18) 6 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 3 Existenz- und Dualitätstheorie für Lineare Programme (3.1) Seien A ∈ Rm,n, b ∈ Rm und c ∈ Rn gegeben. Betrachte Minimiere cT x auf M := {x ∈ Rn : Ax = b, x ≥ 0} . > ∗ Wenn µ := inf c x : x ∈ M > −∞, dann gilt: (P ) a) Wenn (P ) zulässig ist (d.h. M 6= ∅), dann ist (P ) auch lösbar. b) Falls (P ) lösbar ist, so existiert auch eine Ecke als Lösung. Das duale Problem zu (P ) lautet (D) Maximiere bT y auf N := y ∈ Rm : A>y ≤ c . (3.4) Sei x ∈ M und y ∈ N . Dann gilt bT y ≤ cT x. (3.7) a) Sind (P ) und (D) zulässig, so sind (P ) und (D) lösbar und es gilt min(P ) = max(D). b) Ist (P ) zulässig und (D) nicht zulässig, so gilt inf (P ) = −∞. c) Ist (D) zulässig und (P ) nicht zulässig, so gilt sup(D) = ∞. (3.9) Ist (D) zulässig, so gilt: (D) ist lösbar ⇐⇒ es existiert keine freie Richtung u ∈ Rm in N mit bT u > 0 . 7 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 4 Das Simplex-Verfahren zur Lösung von Linearen Programmen (4.1) Sei A ∈ Rm,n, rang(A) = m ≤ n, b ∈ Rm. Ein Paar (x̂, ̂) mit x̂ ∈ Rn, ̂ = (j1, . . . , jm) ∈ {1, . . . , n}m heißt Basislösung zu Ax = b, falls Ax̂ = b und die Spalten {a∗jk : k = 1, . . . , m} linear unabhängig sind, sowie x̂` = 0 für alle ˆ Hier haben wir mit dem großen Buchstaben Jˆ die (ungeordnete) Menge der Indizes `∈ / J. bezeichnet, also Jˆ = {j1, . . . , jm}. Eine Basislösung heißt zulässig, falls x̂ ≥ 0 gilt. Sie heißt nicht entartet, wenn x̂jk > 0 für alle k = 1, . . . , m gilt (dann ist also Jˆ = {` ∈ {1, . . . , n} : x̂` > 0}). Phase I Konstruiere eine zulässige Basislösung ẑ, ̂ zu Ax = b, einen Vektor ĉ ∈ Rn und eine Darstellung M = {x ∈ Rn : Âx = b̂, x ≥ 0} von M mit folgenden Eigenschaften: a) Ist ̂ = (j1, . . . , jm), so ist â∗jk = e(k) für k = 1, . . . , m (e(k) k−te Einheitsvektor in Rm), b) ĉjk = 0 für alle k = 1, . . . , m (also auch ĉT ẑ = 0), und b̂ ≥ 0, c) f (x) = ĉT x + f (ẑ) für alle x mit Ax = b. Ferner ist γ̂ = f (ẑ). 8 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 4 Das Simplex-Verfahren zur Lösung von Linearen Programmen Phase II Wähle j mit ĉj < 0 und i mit b̂i/âij = min b̂k /âkj : k ∈ {1, . . . , m}, âkj > 0 . 1 Setze ̃k = jk , k 6= i, ̃i := j, (ãi∗, b̃i) = (âi∗, b̂r ), (ãl∗, b̃l ) = (âl∗, b̂l ) − âlj (ãi∗, b̃i), l 6= i, âij (c̃∗, −γ̃) = (ĉ∗, −γ̂) − ĉj (ãi∗, b̃i), z̃` := 0, ` 6∈ {̃1, . . . , ̃m}, z̃̃k = b̃k , k = 1, . . . , m . (4.2) 1) Ist ĉ ≥ 0, so ist cT x ≥ cT ẑ für alle x ∈ M , d.h. ẑ ist optimal. 2) Ist ĉj < 0 und â∗j ≤ 0, so ist cT x auf M nicht beschränkt, d.h. inf (P ) = −∞. 3) Für jedes x gilt: Ãx = b̃ ⇐⇒ Âx = b̂ ⇐⇒ Ax = b. 4) ĉT x + γ̂ = c̃T x + γ̃ für alle x ∈ Rn mit Ax = b. 5) z̃, ̃ ist zulässige Basislösung zu Ãx = b̃, für die a), b), c) erfüllt sind. Es ist ãrs = 1 und γ̃ = cT z̃ = f (z̃). Insbesondere ist (P ) äquivalent zu (P̂ ) Minimiere ĉT x + γ̂ auf M = {x ∈ Rn : Âx = b̂ , x ≥ 0} , c̃T x + γ̃ auf M = {x ∈ Rn : Ãx = b̃ , x ≥ 0} . und dies äquivalent zu (P̃ ) Minimiere 6) f (z̃) = cT z̃ = γ̃ = ĉj b̂i/âij + γ̂ ≤ γ̂ = cT ẑ = f (ẑ). 9 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 4 Das Simplex-Verfahren zur Lösung von Linearen Programmen Pivotregel von Bland a) Pivotspalte ist die Spalte j = min k : ĉk < 0 . b) Pivotzeile ist die Zeile i ∈ I + := {i : âij > 0} mit ji = min jk : k ∈ I + , (4.2) b̂k âkj ≤ b̂l âlj , l ∈ I+ . Das Simplexverfahren mit der Pivotregel von Bland wiederholt kein Tableau. Phase I (PI ) Sei e = (1, 1, . . . , 1)> ∈ Rm, und sei o.E. b ≥ 0. Minimiere eT (b − Ax) unter Ax ≤ b , x ≥ 0 , Es gilt: (PI ) ist zulässig, und (P ) ist genau dann zulässig, wenn min(PI ) = 0. − m P ai1 − m P ai2 · · · − i=1 i=1 c1 a11 ... am1 c2 a12 ... am2 m P ain 0 · · · 0 − ··· cn a1n ... amn bi i=1 i=1 ··· ··· m P 0 1 ... 0 ··· ··· ... ··· 0 0 ... 1 0 b1 ... bm 10 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 4.4 Das revidierte Simplex-Verfahren zur Lösung von Linearen Programmen (4.5) Sei ẑ, ̂ aktuelle Basislösung des Simplexverfahrens. Sei k̂ ein Komplement von ̂, d. h. k̂ ∈ {1, . . . , n}n−m mit {j1, . . . , jm} ∪ {k1, . . . , kn−m} = {1, . . . , n}. Dann gilt: ẑ(̂) = A(̂)−1b, ẑ(k̂) = 0. T b) ĉ(k̂) = c(k̂) − A(̂)−1A(k̂) c(̂), c(̂) = 0 und â∗j = A(̂)−1a∗j . a) A(̂) ∈ Rm×m ist regulär, Phase II 1) Starte mit ẑ(̂) = A(̂)−1b, ẑ(k̂) = 0, γ̂ = c(̂)T A(̂)−1b. Speichere A(̂)−1 ∈ Rm,m. 2) Setze y := A(̂)−T c(̂). Falls A(k̂)T y ≤ c(k̂), ist ẑ bereits optimal. T 3) Bestimme Index j ∈ {k1, . . . , kn−m} mit A(k̂) y j > cj . 4) Berechne w = A(̂)−1a∗j . Falls w ≤ 0, ist inf (P ) = −∞. 5) Bestimme i ∈ {1, . . . , m} mit ẑi/wi = min ẑl /wl : wl > 0 . 6) Setze ̃ = (j1, . . . , ji−1, j, ji+1, . . . , jm), bestimme Komplement k̃ von ̃ und setze (i) (i) T ẑi (w − e )(e ) −1 −1 −1 T A(̃) = I − A(̂) , z̃(̃) = A(̃) b , z̃(k̃) = 0 , γ̃ = γ̂ + cj −(A(k̂) y)j wi wi 7) Update ̂ = ̃ und weiter mit Schritt 2. 11 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 5 Netzwerkflussoptimierung (5.1) a) Eine Kapazitätsmatrix C = (cij ) ∈ Rn,n mit cij ≥ 0 beschreibt einen Graphen mit Knoten 1, ..., n und Kanten {(i, j) : cij > 0} mit den Eigenschaften 1) cij cji = 0, cii = 0 2) ci1 = 0, cnj = 0 n n X X 3) cij > 0, j = 2, ..., n und cij > 0, i = 1, ..., n − 1 i=1 j=1 b) Ein Fluss X = (xij ) ∈ Rn,n zu C ist eine Matrix mit 0 ≤ xij ≤ cij und n X i=1 (5.2) xij = n X xjk für alle j = 2, . . . , n − 1 . k=1 Für einen Fluss gilt n P j=1 n P x1j = xkn (=: W (X) Wert des Flusses). k=1 Netzwerksflussoptimierungsproblem Maximiere den Fluss W (X) = n X k=1 xkn unter 0 ≤ xij ≤ cij und n X i=1 xij = n X k=1 xjk , j = 2, ..., n − 1. 12 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 5 Netzwerkflussoptimierung (5.3) Ein Schnitt (J −, J +) ist eine Zerlegung J + ∪ J − = {1, . . . , n} mit J + ∩ J − = ∅, 1 ∈ J −, n ∈ J +. P − + Die Kapazität eines Schnittes ist K(J , J ) := cij . (i,j)∈J − ×J + (5.4) Für jeden Schnitt (J −, J +) und jeden Fluss X gilt X X W (X) = xij − xji ≤ K(J −, J +) . (i,j)∈J − ×J + (i,j)∈J − ×J + (5.5) Es gilt: max W (X) : X Fluss = min K(J −, J +) : (J −, J +) Schnitt ( Max-Flow-Min-Cut). (5.6) Ein ungesättigter Pfad P vom Knoten j zum Knoten k ist ein Indexvektor P = (p1, . . . , pm) mit pi ∈ {1, . . . , n}, i = 1, . . . , m, p1 = j, pm = k, und für jedes i = 1, . . . , m − 1 gilt: a) xpipi+1 < cpipi+1 , falls cpipi+1 > 0, (5.7) b) xpi+1pi > 0, falls cpipi+1 = 0 . Sei X ein maximaler Fluss, und setze − J := {1} ∪ k ∈ {2, . . . , n} : es gibt ungesättigten Pfad von 1 nach k . Dann gilt: n 6∈ J −, (J −, J +) mit J + = {1, ..., n} \ J − ist ein Schnitt, und W (X) = K(J −, J +). 13 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 6.1 Konvexe Optimierung – Konvexe Funktionen (6.1) Sei D ⊂ Rn konvex. a) Eine Funktion f : D → R heißt konvex, wenn für alle x, y ∈ D und λ ∈ [0, 1] gilt f λx + (1 − λ)y ≤ λf (x) + (1 − λ)f (y) . b) f heißt strikt konvex, wenn für alle x, y ∈ D, x 6= y und alle λ ∈ (0, 1) gilt: f λx + (1 − λ)y < λf (x) + (1 − λ)f (y) . c) f heißt gleichmäßig konvex, wenn es c0 > 0 gibt, so dass für alle x, y ∈ D, λ ∈ [0, 1] gilt f λx + (1 − λ)y + c0λ(1 − λ)kx − yk2 ≤ λf (x) + (1 − λ)f (y) . (6.2) Sei D ⊂ Rn offen und konvex, f : D → R zweimal stetig differenzierbar. Dann gilt: f ist gleichmäßig konvex auf D ⇐⇒ ⇐⇒ ⇐⇒ (1) (2) (3) Es gibt c0 > 0 mit Es gibt c0 > 0 mit Es gibt c0 > 0 mit f (x) − f (y) ≥ Df (y)(x − y) + c0 kx − yk2 ∀x, y ∈ D Df (x) − Df (y) (x − y) ≥ 2c0 kx − yk2 ∀x, y ∈ D z T D2f (x) z ≥ 2c0 kzk2 ∀x ∈ D , z ∈ Rn 14 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 6.2 Konvexe Optimierung – Das duale Problem Seien K ⊂ Rn konvex, f : K −→ R, gi : K −→ R konvex (i = 1, . . . , p), A ∈ Rm×n, b ∈ Rm. (P ) Minimiere f (x) auf M := x ∈ Rn : x ∈ K, g(x) ≤ 0, Ax = b . p m Definiere Λ := (f (x) + r, g(x) + z, Ax − b) ∈ R × R × R : r ≥ 0, z ≥ 0p, x ∈ K . (P̃ ) Minimiere φ(β, u, v) := β unter (β, u, v) ∈ Λ ∩ R × {0p} × {0m} . Definiere den Halbraum H +(γ, u, v) := (t, w, z) ∈ R × Rp × Rm : t + uT w + v T z ≥ γ . Maximiere ψ(γ, u, v) := γ unter Λ ⊂ H +(γ, u, v) . T T Setze F (u, v) = inf f (x) + u g(x) + v (Ax − b) . (D̃) x∈K (D) Maximiere F (u, v) auf N := (u, v) ∈ Rp × Rm : u ≥ 0 , F (u, v) > −∞ . 15 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 6.3 Konvexe Optimierung – Existenz und Eindeutigkeit (6.7) Sei M ⊂ Rn konvex, f : M → R konvex und x∗ ein lokales Minimum von f auf M , d.h. es existiert ε > 0 mit f (x∗) ≤ f (x) für alle x ∈ M mit kx − x∗k ≤ ε. Dann ist x∗ sogar globales Minimum, d.h. f (x∗) ≤ f (x) für alle x ∈ M . (6.8) Es sei M 6= ∅, inf (P ) > −∞ und Λ := (f (x) + r, g(x) + z, Ax − b) ∈ R × Rp × Rm : r ≥ 0, z ≥ 0, x ∈ K sei abgeschlossen. Dann besitzt (P ) eine Lösung. (6.9) Ist M 6= ∅ und f strikt konvex, so besitzt (P ) höchstens eine Lösung. (6.10) Sei D ⊂ Rn offen und konvex, und sei f : D −→ R konvex. Dann ist f stetig. (6.11) Sei M 6= ∅, M abgeschlossen, sei und f stetig und gleichmäßig konvex. Dann ist (P ) eindeutig lösbar. 16 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 6.4 Konvexe Optimierung – Dualitätssätze (6.12) Für alle x ∈ M und (u, v) ∈ N gilt f (x) ≥ F (u, v) . Ist f (x∗) = F (u∗, v ∗) für x∗ ∈ M und (u∗, v ∗) ∈ N , so sind x∗ und (u∗, v ∗) optimal in (P ), (D). (6.13) Es sei K = Rn, f, g seien stetig, und es gelte die (verallgemeinerte) Slaterbedingung (SB): (i) rang A = m ≤ n, und (ii) es gibt x̂ ∈ Rn mit Ax̂ = b und gi(x̂) < 0 für alle i = 1, . . . , p . Das Problem (P ) sei lösbar durch x∗ ∈ M . Dann gibt es auch eine Lösung (u∗, v ∗) ∈ N von (D) und f (x∗) = F (u∗, v ∗). Ferner gilt u∗j gj (x∗) = 0 für alle j = 1, . . . , p. (6.14) Lagrangefunktion L(x, u, v) := f (x) + uT g(x) + v T (Ax − b) , (6.15) a) Sei x∗ ∈ M optimal für (P ). Dann existieren u∗ ∈ Rp, v ∗ ∈ Rn mit u∗T g(x∗) = 0 und L(x∗, u, v) ≤ L(x∗, u∗, v ∗) ≤ L(x, u∗, v ∗) x ∈ Rn , u ∈ Rp , v ∈ Rm für alle x ∈ Rn, u ∈ Rp≥0, v ∈ Rm. b) Falls (x∗, u∗, v ∗) ∈ Rn × Rp≥0 × Rm ein Sattelpunkt von L ist, so ist x∗ Lösung von (P ) und (u∗, v ∗) Lösung von (D). (6.17) Es seien f : Rn → R, gi : Rn → R, i = 1, . . . , p, konvex und differenzierbar, und die Slaterbedingung (SB) sei erfüllt. x∗ ∈ M ist genau dann eine Lösung von (P ), wenn es u∗ ∈ Rp≥0 und v ∗ ∈ Rm gibt mit Df (x∗) + u∗T Dg(x∗) + v ∗T A = 0 und u∗j gj (x∗) = 0 für alle j = 1, . . . , p . 17 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 7.1 Quadratische Optimierung – Existenz und Dualität Seien Q ∈ Rn,n, A ∈ Rm,n, c ∈ Rn, b ∈ Rm. Betrachte (P ) Minimiere f (x) := xT Qx + cT x auf M := x ∈ Rn : x ≥ 0, Ax = b . (7.1) Sei (P ) zulässig und inf (P ) > −∞. Dann ist (P ) lösbar. (7.2) Betrachte das lineare Optimierungsproblem (mit Q = 0). Dann existiert y ∗ ∈ Rm mit i) (7.3) ii) (c + AT y ∗)T x∗ = 0 . a) Sei x∗ ∈ M Lösung von (P ). Dann gibt es y ∗ ∈ Rm mit i) (7.4) c + AT y ∗ ≥ 0, 2Qx∗ + c + AT y ∗ ≥ 0 ii) (2Qx∗ + c + AT y ∗)T x∗ = 0 . b) Sei Q symmetrisch und positiv semidefinit, x∗ ∈ M , und es gebe y ∗ ∈ Rm mit i), ii). Dann ist x∗ Lösung von (P ). T T n (P2) Minimiere f (x) := x Qx + c x auf M := x ∈ R : Ax ≤ b . a) Sei x∗ ∈ M Lösung von (P2). Dann gibt es u∗ ∈ Rm mit u∗ ≥ 0 und i) 2Qx∗ + c + AT u∗ = 0 ii) (b − Ax∗)T u∗ = 0 . b) Sei Q symmetrisch und positiv semidefinit, x∗ ∈ M , und es gebe u∗ ∈ Rm mit u∗ ≥ 0 und 18 i), ii). Dann ist x∗ Lösung von (P2). Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 7.2 Quadratische Optimierung – Der Algorithmus von Goldfarb-Idnani Seien Q ∈ Rn,n sym. pos. def., A ∈ Rm,n, c ∈ Rn, b ∈ Rm, I ⊂ {1, ..., m}. Betrachte (PI ) Minimiere f (x) := 21 xT Qx + cT x auf M := x ∈ Rn : (Ax)i ≤ bi, i ∈ I . Voraussetzung (V): xk ∈ MI k sei optimal für (PI k ) mit zugehörigem Multiplikator uk ≥ 0, für a := ap und β := bp gelte aT xk > β, und {ai : i ∈ I k } seien linear unabhängig. k (A0) Setze θ := 0, f := f (xk ), x := xk , I := I k , u := uk ∈ R|I |. (A1) ATI := ai1 , ..., aiq für I = {i1, . . . , iq }. (A2) Berechne d := (AI Q−1ATI )−1AI Q−1a (falls I 6= ∅, sonst d := 0), z := Q−1(a − ATI d) und (falls z 6= 0) setze t1 := (aT x − β)/(aT z). (A3a) Falls u − t1d ≥ 0 oder I = ∅, so setze xk+1 := x − t1z , uk+1 I k+1 := I ∪ {p} , f k+1 u − t1d := ∈ R|I|+1, θ + t1 := f + t1(θ + t1/2) aT z . (A3b) Falls u − t1d 6≥ 0 und I 6= ∅, setze t2 := min{ui/di : di > 0, i ∈ I} = u`/d` mit ` ∈ I und x := x − t2z , I := I \ {`} , ui := ui − t2di für i ∈ I , f := f + t2(θ + t2) aT z , θ := θ + t2/2 . 19 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 8.1 Differenzierbare Optimerungsprobleme – Lagrangesche Multiplikatoren (8.1) Sei h : Rn → Rm stetig differenzierbar und h(x̂) = 0. Die Funktionalmatrix Dh(x̂) ∈ Rm,n habe den Rang m (also insbesondere m ≤ n). Sei ferner z ∈ Rn mit Dh(x̂)z = 0. n Dann existiert δ > 0 und eine stetig differenzierbare Funktion r : (−δ, δ) → R mit r(0) = 0 und Dr(0) = 0 und h x̂ + tz + r(t) = 0 für alle t ∈ (−δ, δ). (8.2) Sei D ⊂ Rn offen, f : D −→ R, g : D −→ Rp, h : D −→ Rm stetig differenzierbar, und sei x∗ ein (lokales) Minimum von f auf der Menge M = x ∈ D : g(x) ≤ 0 , h(x) = 0 . Es gelte die constraint qualification (CQ1) (i) Rang Dh(x∗) = m ≤ n , (ii) es gibt ẑ ∈ Rn mit g(x∗) + Dg(x∗)ẑ < 0 und Dh(x∗)ẑ = 0 . Dann gibt es u∗ ∈ Rp, u∗ ≥ 0, und v ∗ ∈ Rm mit DxL(x∗, u∗, v ∗) = Df (x∗) + (u∗)T Dg(x∗) + (v ∗)T Dh(x∗) = 0 . Ferner ist u∗j gj (x∗) = 0 für alle j = 1, . . . , p. 20 Universität Karlsruhe (TH) Optimierungstheorie Prof. Dr. C. Wieners 8.2 Differenzierbare Optimerungsprobleme – Bedingungen zweiter Ordnung (8.3) Sei x∗ ∈ M optimal, und sei I(x∗) = i ∈ {1, . . . , p} : gi(x∗) = 0 die Menge der aktiven Indizes mit q = |I|. Dann folgt (CQ1) aus DgI (x∗) (CQ2) Rang = q+m. Dh(x∗) (8.4) Notwendige Optimierungsbedingung 2. Ordnung: Sei x∗ lokales Minimum von f auf M , und sei (CQ2) erfüllt. Es seien zusätzlich f , g und h zweimal stetig differenzierbar in x∗. Dann existiert u∗ ∈ Rp, v ∗ ∈ Rm, u∗ ≥ 0, mit a) DxL(x∗, u∗, v ∗) = 0. b) u∗i gi(x∗) = 0 für alle i = 1, . . . , p. n ∗ ∗ ∗ c) Auf dem Unterraum V = z ∈ R : Dh(x )z = 0 , Dgi(x )z = 0 für alle i ∈ I(x ) gilt z >∇2xL(x∗, u∗, v ∗) z ≥ 0 für alle z ∈ V . (8.5) Hinreichende Optimierungsbedingung 2. Ordnung: Zusätzlich zu a) und b) sei auf dem n ∗ ∗ + ∗ + Kegel K = z ∈ R : Dh(x )z = 0 , Dgi(x )z = 0 für i ∈ I , Dgi(x )z ≤ 0 für i ∈ I \ I z >∇2L(x∗, u∗, v ∗)z > 0 für alle z ∈ K , z 6= 0 , wobei I + = i ∈ I(x∗) : u∗i > 0 . Dann ist x∗ striktes lokales Minimum von f auf M . 21