29.04.2014 Aufrufe

Kapitel 9 Quadratische Optimierung

Kapitel 9 Quadratische Optimierung

Kapitel 9 Quadratische Optimierung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Kapitel</strong> 9<br />

<strong>Quadratische</strong> <strong>Optimierung</strong><br />

Ein Grundprinzip bei der numerischen Lösung von nichtlinearen Problemen ist, das Ausgangsproblem<br />

durch eine Folge von leichter zu handhabenden Problemen zu ersetzen. In<br />

der freien <strong>Optimierung</strong> waren dies quadratische <strong>Optimierung</strong>sprobleme, die relativ einfach<br />

zu lösen waren (Lineares Gleichungssystem). In der nichtlinearen <strong>Optimierung</strong> mit Nebenbedingungen<br />

spielen quadratische <strong>Optimierung</strong>sprobleme eine ähnliche Rolle, sind aber<br />

(durch die Ungleichungsrestriktionen) nicht mehr so einfach zu lösen. Wir betrachten das<br />

folgende quadratische <strong>Optimierung</strong>sproblem<br />

(QP )<br />

min<br />

x∈R n q(x)<br />

a T i x = b i , i ∈ I 1<br />

a T i x ≤ b i , i ∈ I 2<br />

mit q(x) := 1 2 xT Gx + d T x, G symmetrische n × n Matrix, d ∈ R n , a i ∈ R n , b i ∈ R,<br />

i ∈ I 1 ∪ I 2 . Falls zulässige Punkte existieren, erreicht man stets (eventuell durch Streichen<br />

überflüssiger Gleichungen), dass die Vektoren a i , i ∈ I 1 linear unabhängig sind.<br />

9.1 Gleichungsrestriktionen<br />

Es sei I 1 = {1, 2, . . . , m}, I 2 = ∅. Dann wird (QP) zu<br />

(QP ′ )<br />

min q(x)<br />

x∈R n<br />

A T x = b<br />

mit A = (a 1 , . . . , a m ), b = (b 1 , . . . , b m ) T , Rg(A) = m. Wir analysieren zuerst den Zulässigkeitsbereich<br />

und verwenden die gewonnenen Resultate dann, um ein freies quadratisches<br />

<strong>Optimierung</strong>sproblem zu erhalten.<br />

77


9.1.1 Lösung linearer Gleichungen<br />

Wir betrachten ein Gleichungssystem<br />

A T x = b<br />

wobei A eine n × m Matrix sei, m ≤ n, Rg(A) = m, b ∈ R m , x ∈ R n .<br />

Aus der linearen Algebra ist bekannt, dass sich jede Lösung eines linearen Gleichungssystems<br />

durch eine spezielle Lösung und eine Lösung des zugehörigen homogenen Systems<br />

darstellen lässt.<br />

1. Lösung des homogenen Systems: Da nach Voraussetzung Rg(A) = m, ist die Lösungsmenge<br />

N(A T ) := {x ∈ R n | A T x = 0}<br />

des homogenen Gleichungssystems (Nullraum von A T ) ein n − m dimensionaler<br />

Teilraum ⇒ es gibt n − m linear unabhängige Vektoren z i ∈ R n mit A T z i = 0,<br />

i = 1, . . . , n − m (Basis für N(A T )). Für die n × (n − m) Matrix Z := (z 1 , . . . , z n−m )<br />

gilt dann<br />

Rg(Z) = n − m, A T Z = 0, (A T x = 0 ⇐⇒ ∨<br />

p∈R n−m x = Zp)<br />

2. Spezielle Lösung des inhomogenen Systems: Aus Rg(A) = m folgt wiederum, dass<br />

eine (im allgemeinen nicht eindeutig bestimmte) n × m Matrix S mit A T S = I<br />

(Rechtsinverse) existiert (z.B. die sogenannte Pseudoinverse S = A(A T A) −1 ). Dann<br />

ist x 0 := Sb eine Lösung von Ax = b<br />

3. Allgemeine Lösung des inhomogenen Systems: Sei x ∈ R n , Z und S wie oben bestimmt.<br />

Dann gilt<br />

Ax = b ⇐⇒<br />

∨<br />

x = Sb + Zp<br />

p∈R n−m<br />

Da die n×n Matrix (S . Z) regulär ist (Sb+Zp = 0 ⇒ A T (Sb+Zp) = b = 0 ⇒ p = 0)<br />

ist der Vektor p eindeutig bestimmt.<br />

Wir diskutieren nun 2 Möglichkeiten, um die Matrizen S und Z tatsächlich auszurechnen:<br />

1. Direkte Elimination: Da RgA = m existieren m linear unabhängige Spalten<br />

von A T . O.B.d.A. seien die ersten m Spalten von A T linear unabhängig, d.h. A T =<br />

(A T 1 . A T 2 ), wobei A T 1 die von den ersten m Spalten von A T gebildete reguläre m × m<br />

Matrix, A T 2 die durch die ( restlichen ) Spalten gebildete m ×(n −m) Matrix ist. Analog<br />

x1<br />

partitionieren wir x = mit x<br />

x 1 ∈ R m , x 2 ∈ R n−m . Dann gilt A T x = b<br />

2<br />

⇐⇒ A T 1 x 1 + A T 2 x 2 = b ⇐⇒<br />

78<br />

(<br />

x1<br />

)<br />

=<br />

x 2<br />

(<br />

A<br />

−T<br />

1 b − A −T<br />

1 A 2 p<br />

p<br />

)


Für die direkte Elimination gilt also<br />

⎛ ⎞ ⎛<br />

S = ⎝ A−T 1<br />

· · · ⎠ , Z = ⎝ −A−T 1 A T 2<br />

· · ·<br />

0<br />

I n−m<br />

⎞<br />

⎠<br />

2. Orthogonale Faktorisierung: Wir bilden eine Zerlegung von A der Form A = QR,<br />

wobei Q eine orthogonale n×n Matrix, d.h. Q T Q = I, und R eine n×(n−m) rechte<br />

obere Dreiecksmatrix ist (z.B. Householderzerlegung). Wir partitionieren Q bzw. R<br />

in<br />

Q =<br />

( m n − m ⎛<br />

Q 1 . Q 2<br />

), R = ⎝ R 1<br />

wobei R 1 eine reguläre m × m rechte obere Dreiecksmatrix ist. Da Q orthogonal, ist<br />

Q T 1 Q 1 = I m , Q T 1 Q 2 = 0, Q T 2 Q 1 = 0 und Q T 2 Q 2 = I n−m . Damit folgt<br />

⎛ ⎞<br />

⎛<br />

A T Q 2 = R T Q T Q 2 = (R1<br />

T . 0) ⎝ QT 1<br />

· · · ⎠ Q 2 = (R T<br />

Q T 1 . 0) ⎝ 0<br />

⎞<br />

· · · ⎠ = 0<br />

⎛ ⎞2<br />

⎛I n−m<br />

A T Q 1 R1 −T = (R1<br />

T . 0) ⎝ QT 1<br />

· · · ⎠ Q 1 R −T<br />

Q T 1 = (R1<br />

T . 0) ⎝ I ⎞<br />

m<br />

· · · ⎠ R1<br />

−T<br />

2<br />

0<br />

= R1 T R1 −T = I m<br />

Für die orthogonale Faktorisierung gilt also S = Q 1 R −T<br />

1 , Z = Q 2 . Einige weitere<br />

Eigenschaften der orthogonalen Faktorisierung:<br />

(a) S T Z = R1 −1 Q T 1 Q 2 = 0<br />

(b) Sei x = Sb + Zp die allgemeine Lösung des Gleichungssystems Ax = b. Dann<br />

gilt<br />

‖x‖ 2 = ‖Sb‖ 2 + 2 (Sb) T Zp<br />

} {{ }<br />

b T S T Zp=0<br />

+ ‖Zp‖ 2<br />

} {{ }<br />

p T Q T 2 Q<br />

} {{ } 2<br />

I n−m<br />

p<br />

· · ·<br />

0<br />

⎞<br />

⎠<br />

= ‖Sb‖ 2 + ‖p‖ 2<br />

d.h. Sb ist unter allen Lösungen des Gleichungssystems Ax = b diejenige mit<br />

der kleinsten Norm (bestapproximierende Lösung). Weiters folgt<br />

A(A T A) −1 = QR(R T Q T Q R)<br />

} {{ }<br />

= QR(R1 T R 1 ) −1<br />

=<br />

I<br />

⎛<br />

n<br />

(Q 1 . Q 2 ) ⎝ R ⎞<br />

1<br />

· · · ⎠ R1 −1 R1 −T = Q 1 R1 −T = S<br />

0<br />

(d.h. S ist die Pseudoinverse von A T )<br />

79


9.1.2 Lösung von (QP’) mit der verallgemeinerten Eliminationsmethode<br />

Es seien nun S,Z wie im letzten Abschnitt beschrieben, x 0 eine spezielle Lösung von A T x =<br />

b. Da<br />

A T x = b ⇐⇒ x = x 0 + Zp, p ∈ R n−m<br />

folgt<br />

∧<br />

x∈R n<br />

Ax=b<br />

q(x) = q(x 0 + Zp) =: ψ 0 (p)<br />

Wir zeigen nun, daß das freie <strong>Optimierung</strong>sproblem, die Funktion ψ 0 (p) bezüglich p ∈ R n−m<br />

zu minimieren, äquivalent mit (QP ′ ) ist. Nach der Kettenregel folgt<br />

∇ p ψ 0 (p) = Z T ∇ x q(x) = Z T g(x) (reduzierter Gradient),<br />

∇ 2 pψ 0 (p) = Z T (∇ 2 xq(x))Z = Z T GZ (reduzierte Hessematrix).<br />

Lemma 9.1 1. ¯x = x 0 + Z ¯p ist genau dann ein stationärer Punkt für (QP ′ ), wenn ¯p<br />

stationärer Punkt von ψ 0 ist (d.h. ∇ p ψ 0 (¯p) = 0).<br />

2. ¯x ist genau dann lokales Minimum für (QP ′ ), wenn es auch globales Minimum ist. ¯p<br />

ist genau dann lokales Minimum von ψ 0 , wenn es auch globales Minimum ist.<br />

3. ¯x = x 0 + Z ¯p ist genau dann lokales Minimum von (QP ′ ), wenn ¯p lokales Minimum<br />

von ψ 0 ist.<br />

Bestimmung von ¯p: Notwendige Bedingung ∇ p ψ 0 (¯p) = Z T g = 0 ⇒<br />

Z T (d + G¯x) = Z T (d + G(x 0 + Zp)) = Z T (d + Gx 0 ) + Z T GZ ¯p = 0 ⇒<br />

Bestimmung der Lagrangemultiplikatoren ¯λ<br />

Z T GZ ¯p = −Z T g 0<br />

A¯λ = −g ⇒ ¯λ = S T A¯λ = −S T g<br />

Numerische Realisierung im Falle der orthogonalen Faktorisierung:<br />

Zur Berechnung von<br />

x 0 = Sb<br />

¯p<br />

ist durchzuführen<br />

x 0 = Q 1 y, wobei y durch Lösen von R1 T y = b gefunden<br />

wird<br />

Bestimmen von Z T GZ und Z T g 0 mit Z = Q 2 , Lösen<br />

des Gleichungssystems<br />

Z T GZ ¯p = −Z T g 0<br />

¯x<br />

¯λ<br />

durch LDL T –Zerlegung, dabei kann gleichzeitig festgestellt<br />

werden, ob Z T GZ positiv (semi) definit ist.<br />

¯x = x 0 + Z ¯p<br />

Lösen von R 1¯λ = −Q<br />

T<br />

1 g<br />

80


9.1.3 Lösen von (QP’) mit der Lagrange-Methode<br />

Die Lösung von (QP ′ ) läßt sich durch Lösen der Kuhn–Tuckerbedingungen 1. Ordnung<br />

direkt bestimmen: L(x, λ) = 1 2 xT Gx + d T x + λ T (A T x − b) ⇒<br />

Kuhn-Tuckerbedingungen 1.Ordnung: G¯x + d + A¯λ = 0<br />

also ( ) ( )<br />

G A<br />

A T =<br />

0<br />

¯x¯λ<br />

( )<br />

−d<br />

b<br />

A T ¯x − b = 0<br />

Lemma 9.2 Sei Z eine Matrix, deren Spalten eine Basis für N(A T ) bilden. Dann gilt:<br />

( )<br />

(<br />

)<br />

G A<br />

A T regulär ⇔ Rg(A) = m ∧ Z T GZ regulär<br />

0<br />

Bei Regularität ist die Inverse gegeben durch<br />

( ) −1 ( )<br />

G A H U<br />

A T =:<br />

0 U T T<br />

mit<br />

Damit gilt<br />

H = Z(Z T GZ) −1 Z T<br />

U = S − Z(Z T GZ) −1 Z T GS<br />

T = S T GZ(Z T GZ) −1 Z T GS − S T GS<br />

¯x = −Hd + Ub<br />

¯λ = −U T d + T b<br />

Etwas einfacher wird die Darstellung, wenn ein zulässiger Punkt x 0 , z.B. x 0 = Sb bekannt<br />

ist. Dann gilt ( ) ( ) ( )<br />

G A ¯x − x<br />

0 −g<br />

0<br />

A T =<br />

0 ¯λ 0<br />

also<br />

¯x = x 0 − Hg 0 , ¯λ = −U T g 0<br />

9.2 Aktive–Indexmengen–Strategie zur Lösung<br />

von (QP)<br />

Für eine beliebige Indexmenge A ⊂ I 1 ∪ I 2 definieren wir uns ein quadratisches <strong>Optimierung</strong>sproblem<br />

QP (A) mit Gleichungsrestriktionen<br />

QP (A)<br />

min q(x)<br />

81<br />

a T i x = b i , i ∈ A


Die Idee der aktiven Indexmengenstrategie besteht nun darin, die Lösung von (QP ) mittels<br />

der Lösung von QP (Ã) mit geeignet gewählter Indexmenge à zu bestimmen.<br />

Satz 9.3 In (QP) seien (a i ) i∈I1 linear unabhängig. Ist ¯x ein stationärer Punkt für (QP),<br />

dann gibt es eine Indexmenge à soadss<br />

1. I 1 ⊂ Ã ⊂ A(¯x) und (a i) i∈ Ã<br />

∨ ∧<br />

2. λ i = 0,<br />

λ∈¯Λ i∈I 2 \Ã<br />

linear unabhängig.<br />

und somit ist ¯x auch stationärer Punkt für QP (Ã). Ist ¯x lokales Minimum für (QP), so<br />

gibt es auch eine solche Indexmenge Ã, sodass ¯x auch lokales Minimum von QP (Ã) ist.<br />

9.2.1 Positiv definite quadratische <strong>Optimierung</strong><br />

Voraussetzung: G sei positiv definit.<br />

Folgerungen: Die Zielfunktion q ist strikt konvex, jeder stationäre Punkt von (QP )<br />

bzw. von QP (A) für beliebiges A ist damit auch globales Minimum für das betreffende<br />

Problem. Falls der Zulässigkeitsbereich nicht leer ist, besitzen (QP ) und QP (A) eine<br />

eindeutig bestimmte Lösungen.<br />

Sei ¯x eine Lösung von (QP). Wir konstruieren schrittweise nun eine Indexmenge Ã<br />

gemäss Satz 9.3, sodass ¯x auch globale Lösung von QP (Ã). ist<br />

Wir betrachten den k–ten Iterationsschritt. Sei x k zulässig für (QP) und A k eine Indexmenge<br />

mit I 1 ⊂ A k ⊂ A(x k ), sodaß die Vektoren (a i ) i∈A k linear unabhängig sind. Wir<br />

unterscheiden 2 Fälle<br />

1. x k ist keine Lösung von QP (A k ): Wir konstruieren eine Richtung s k durch<br />

s k := Z k p k mit Z kT GZ k p k = −Z kT g k<br />

(Zur Bezeichnung: Die Matrizen S und Z für Problem QP (A k ) werden mit S k und<br />

Z k bezeichnet). Da G positiv definit, ist auch Z kT GZ k positiv definit und x k + αs k<br />

mit α = 1 ist Lösung von QP (A k ). Wir werden nun eine Schrittweite α k ≥ 0 so<br />

bestimmen, daß wir in der Zielfunktion einen möglichst großen Abstieg erhalten und<br />

der Punkt x k + α k s k zulässig für (QP) ist. Aus der Zulässigkeitsforderung folgt<br />

∧<br />

i∉A k a T i x k + α k a T i s k ≤ b i ⇒<br />

∧<br />

i∉A k<br />

a T i sk >0<br />

α k ≤ b i − a T i x k<br />

a T i sk<br />

d.h.<br />

α k ≤ α k := min{ b i − a T i x k<br />

a T i sk | a T i s k > 0, i ∈ I 2 \ A k }<br />

82


Aus der Abstiegsforderung ergibt sich für die obige spezielle Wahl von s k die Forderung<br />

α k ≤ 1, wir werden also α k := min{α k , 1} setzen. Der Punkt x k+1 := x k + α k s k<br />

ist dann zulässig für (QP ), als neue aktive Indexmenge werden wir<br />

{ A<br />

k<br />

falls α k = 1, sonst<br />

A k+1 :=<br />

A k ∪ {j}<br />

für ein j ∉ A k mit a T j s k > 0 und α k = b j−a T j xk<br />

a T j sk<br />

setzen. Es bleibt allerdings noch zu zeigen, dass die Vektoren (a i ) i∈A k+1 wiederum<br />

linear unabhängig sind. Annahme: Die Vektoren (a i ) i∈A k+1 sind linear abhängig ⇒<br />

∨ ∑<br />

A k+1 = A k ∪ {j} ∧<br />

λ i a i = 0 ⇒<br />

i∈A k+1<br />

λ∈R Ak+1<br />

λ j ≠0<br />

0 = ∑<br />

λ i a T i s k = λ j a T j s k<br />

}{{} }{{}<br />

i∈A k+1 ≠0 >0<br />

+ ∑ λ i a T i s k ≠ 0<br />

}{{}<br />

i∈A k =0<br />

und dies ist offensichtlich ein Widerspruch.<br />

Bemerkung: Falls A k ≠ A(x k ) ist unter Umständen möglich, daß α k = 0 ist. In<br />

diesem Fall ist x k+1 = x k , es ändert sich aber die Indexmenge: A k+1 ≠ A k<br />

2. x k ist Lösung von QP (A k ): Seien λ k ∈ R Ak die zu x k gehörenden Lagrangemultiplikatoren<br />

für Problem QP (A k ). Gilt λ k i ≥ 0 für alle i ∈ A k ∩I 2 , ist x k = ¯x und wir sind<br />

fertig. Andernfalls gibt es jedoch einen Index l ∈ I 2 ∩ A k mit λ k l < 0. Dann ist jedoch<br />

x k keine Lösung von QP (A k \ {l}) mehr, da auf Grund der linearen Unabhängigkeit<br />

der Vektoren a i , i ∈ A k die notwendigen Bedingungen 1.Ordnung nicht mehr erfüllbar<br />

sind. Wir beachten nun noch die folgende Beziehung: Ist s ∈ R n eine beliebige<br />

Richtung mit a T i s = 0 für alle i ∈ A k \ {l}, dann gilt<br />

g kT s = − ∑ i∈A k λ k i a T i s = −λ k l a T l s (9.1)<br />

Setzen wir nun A k := A k \{l}, so sind wir wieder in der Situation von Fall 1. In diesem<br />

Fall gilt jedoch zwangsläufig dann A k ≠ A(x k ) (l ∈ A(x k ) \ A k !), d.h. α k = 0 wäre<br />

prinzipiell möglich. Wir zeigen nun, dass dann auf jeden Fall l ∉ A k+1 gilt (Ansonsten<br />

könnte man immer zwischen den beiden Fällen hin und herspringen, einmal in Fall<br />

2. den Index l aus der Indexmenge entfernen und im nächsten Schritt unter Fall 1<br />

wieder dazunehmen). Sei dazu s k die Abstiegsrichtung die wir unter 1. konstruieren.<br />

Wegen λ k l < 0 folgt aus (9.1), daß a T l sk < 0, d.h. l ist nicht unter den möglichen<br />

Indizes, die wir bei der Bildung von A k+1 in Betracht ziehen.<br />

Die Analyse dieser beiden Fälle ist in Algorithmus 9.1 zusammengefaßt.<br />

Satz 9.4 1. Für die durch Algorithmus 9.1 erzeugten Indexmengen gilt I 1 ⊂ A k ⊂<br />

A(x k ) und (a i ) i∈A k linear unabhängig und die erzeugte Folge von Funktionswerten<br />

(q(x k )) k∈N ist monoton fallend. Weiters gilt α k ≠ 0 ⇔ q(x k+1 ) < q(x k ).<br />

83


Algorithmus 9.1 (Alg. für (QP) mit positiv definiter Hessematrix G)<br />

Input: (QP) mit positiv definiter Hessematrix G und linear unabhängigen Gleichungsrestriktionen,<br />

zulässiger Punkt x 0 , Indexmenge A 0 mit I 1 ⊂ A 0 ⊂ A(x 0 ) und (a i ) i∈A 0 linear<br />

unabhängig.<br />

Output: globales Minimum ¯x für (QP)<br />

{ k := 0, loop = true;<br />

while loop do<br />

{ while x k nicht Lösung von QP (A k ) do<br />

{ Bestimme p k durch Lösen des Gleichungssystems Z kT GZ k p k = −Z kT g k ;<br />

}<br />

}<br />

s k := Z k p k , α k := min{ b i−a T i xk<br />

| a T a T i sk i s k > 0};<br />

α k := min{α k , 1}, x k+1 := x k + α k s k ;<br />

if α k = 1 then<br />

A k+1 := A k ;<br />

else<br />

{ Bestimme j ∈ I 2 \ A k mit a T j s k > 0 und b j−a T j xk<br />

= α k ;<br />

a T j sk<br />

A k+1 := A k ∪ {j};<br />

}<br />

k := k + 1;<br />

}<br />

λ k := −S kT g k ;<br />

if λ k i ≥ 0, ∀i ∈ A k ∩ I 2 then<br />

¯x := x k , loop = false;<br />

else<br />

Bestimme l ∈ A k ∩ I 2 mit λ k l < 0, A k := A k \ {l};<br />

2. Sind in jedem Iterationsschritt die Vektoren (a i ) i∈A(x k ) (Gradienten der aktiven Restriktionen)<br />

linear unabhängig, liefert Algorithmus 9.1 nach endlich vielen Iterationsschritten<br />

die exakte Lösung ¯x.<br />

In der Situation, dass die Gradienten der aktiven Restriktionen linear abhängig sind, spricht<br />

man von Entartung. Ist x k Lösung von QP (A k ) und ist x k entartet, so entfernen wir<br />

zunächst einen Index l k von A k und bestimmen dann eine Suchrichtung s k für das resultierende<br />

Problem. Für s k kann aber die resultierende Schrittweite α k gleich 0 sein, d.h. es kann<br />

auf Grund der Entartung einen Index j ∈ I 2 \ A k geben, für den a T j s k > 0 und a T j x k = b j<br />

gilt. Ist dies der Fall, so ist x k = x k+1 , es ändert sich nur die Indexmenge: A k ≠ A k+1 .<br />

Um auch in dieser Situation Endlichkeit von Algorithmus 9.1 zu garantieren, muss man<br />

garantieren, dass keine ”Zyklen” auftreten (d.h. es ist unendlich oft hintereinander α k = 0,<br />

es ändert sich jeweils nur die Indexmenge A k und nach einer gewissen Anzahl von Iterationen<br />

erreicht man wieder eine Indexmenge, die schon in einem früherene Iterationsschritt<br />

84


etrachtet wurde). Das Vermeiden von Zyklen kann durch spezielle Auswahlregeln für die<br />

Indizes, die zur Indexmenge A k hinzugefügt bzw. von ihr entfernt werden, erreicht werden.<br />

Eine einfache Strategie, die solche Zyklen im Falle von Entartung vermeidet, lautet<br />

folgendermaßen:<br />

1. Ist x k Lösung von QP (A k ), so wähle den Index l k , der die Indexmenge A k verlässt,<br />

gemäß<br />

l k := min{l ∈ I 2 ∩ A k | λ k l < 0}<br />

2. Ist x k nicht Lösung von QP (A k ), so wähle den Index j k , um den die Indexmenge A k<br />

erweitert wird, als<br />

j k := min{j ∈ I 2 \ A k | a T j s k > 0 ∧ b j − a T j x k<br />

a T j sk = α k }<br />

Der Nachweis, dass bei Verwendung dieser Auswahlregel keine Zyklen auftreten können,<br />

ist relativ kompliziert.<br />

9.2.2 Allgemeine quadratische <strong>Optimierung</strong><br />

Falls x k nicht Lösung von QP (A k ) war, wurde in Algorithmus 9.1 die Suchrichtung s k =<br />

Z k p k so gewählt, daß x k +s k globale Lösung von QP (A k ) ist. Im allgemeinen Fall kann nicht<br />

mehr garantiert werden, dass QP (A k ) eine globale Lösung besitzt (insbesonders ist dies<br />

der Fall, wenn Z kT GZ k indefinit ist), damit ist die Suchrichtung s k nicht mehr definiert.<br />

Wir wollen nun Algorithmus 9.1 geeignet modifizieren:<br />

1. Bestimmung einer geeigneten Suchrichtung, falls x k nicht Lösung von QP (A k ) ist:<br />

(a) Z kT GZ k ist positiv semidefinit und das Gleichungssystem<br />

Z kT GZ k p = −Z kT g k (9.2)<br />

besitzt eine Lösung: Wir wählen s k = Z k p k mit p k Lösung von (9.2). Dann<br />

ist x k + s k Lösung von QP (A k ), wir sind dann wieder in der Situation von<br />

Algorithmus 9.1.<br />

(b) Z kT GZ k ist positiv semidefinit und das Gleichungssystem (9.2) besitzt keine<br />

Lösung: Wir wählen s k = Z k p k mit p kT Z kT g k = s kT g k < 0 und p kT Z kT GZ k p k =<br />

s kT Gs k = 0.<br />

(c) Z kT GZ k ist nicht positiv semidef.: Wir wählen s k = Z k p k mit p kT Z kT g k =<br />

s kT g k ≤ 0 und p kT Z kT GZ k p k = s kT Gs k < 0 (Richtung negativer Krümmung).<br />

85


2. Bestimmung einer geigneten Schrittweite α k : Prinzipiell wollen wir α k ≥ 0 so bestimmen,<br />

dass der Zielfunktionswert entlang der Suchrichtung möglichst weit fällt und<br />

der Punkt x k + α k s k für (QP) zulässig bleibt.<br />

Haben wir die Suchrichtung s k gemäß (a) bestimmt, verläuft die Bestimmung von<br />

α k so wie in Algorithmus 9.1 beschrieben. Bestimmen wir die Suchrichtung jedoch<br />

gemäß (b) oder (c), ist die Beschränkung α k ≤ 1 nicht sinnvoll, da<br />

q(x k + αs k ) = q(x k ) + α g kT s<br />

} {{ }<br />

k + α2<br />

2 skT } {{ Gs}<br />

k −→ −∞<br />

≤0<br />

≤0<br />

für α −→ ∞<br />

(einer der beiden nichtpositiven Terme ist negativ). Gilt in diesem Fall daher a T i s k ≤<br />

0, i ∈ I 2 \ A k , besitzt (QP) keine globale Lösung (stationäre Punkte und lokale<br />

Lösungen können aber existieren), wir werden den Algorithmus daher mit einer Fehlermeldung<br />

abbrechen lassen. Gibt es jedoch einen Index i ∈ I 2 \ A k mit a T i s k > 0,<br />

so werden wir α k = α k setzen.<br />

Mit diesen Modifikationen gelten wieder die Aussagen von Satz 9.4, allerdings mit der<br />

Einschränkung, dass der Algorithmus (wenn er nicht vorher mit einer Fehlermeldung über<br />

die Unlösbarkeit abbricht) nur eine Lösung x k von QP (A k ) mit λ k i ≥ 0, i ∈ A k ∩ I 2<br />

berechnet. Setzt man λ k i = 0 für i ∉ A k , dann erfüllen zwar x k , λ k := (λ k i ) i∈I1 ∪I 2<br />

die Kuhn–<br />

Tucker–Bedingungen 1. Ordnung für (QP), es sind aber nur die notwendigen Bedingungen<br />

2.Ordnung für QP (A k ) erfüllt:<br />

s T Gs ≥ 0 für alle s mit a T i s = 0, i ∈ A k<br />

Daraus folgt im allgemeinen aber noch nicht, daß x k lokales Minimum für (QP) ist.<br />

Gilt jedoch λ k i > 0 für alle i ∈ A k ∩ I 2 , dann ist x k auch lokales Minimum für (QP),<br />

denn:<br />

s ∈ C(x k ) =⇒ 0 ≥ g kT s = − ∑ λ k i a T i s −<br />

∑<br />

λ k i a T i s ≥ 0<br />

}{{} }{{} }{{}<br />

i∈I 1 =0 i∈A k ∩I 2 >0 ≤0<br />

=⇒ ∧<br />

a T i s = 0 =⇒ s T Gs ≥ 0<br />

i∈A k<br />

d.h. die notwendigen Bedingungen 2.Ordnung sind für (QP) erfüllt. Für quadratische Probleme<br />

sind die notwendigen Bedingungen für ein lokales Minimum auch hinreichend.<br />

Bei der numerischen Durchführung nutzt man vorteilhaft aus, dass sich die Indexmenge<br />

A k jeweils nur in einem Schritt ändert. Die für die einzelnen Berechnungsschritte erforderlichen<br />

Matrizen S k , Z k bzw. eine Choleskyzerlegung von Z kT GZ k muss nicht immer neu<br />

berechnet werden, sondern können ohne großen Rechenzeitaufwand aus den Vorgängermatrizen<br />

mittels ”Update-Formeln” bestimmt werden. Im indefiniten bzw. positiv semidefiniten<br />

Fall trachtet man dabei danach, den Startpunkt x 0 so zu wählen, daß die Matrix<br />

Z 0T GZ 0 positiv definit ist. Dies ist z.B der Fall, wenn |A 0 | = n gilt, da dann die reduzierte<br />

86


Hessematrix die Dimension 0 besitzt. Es kann dann leicht gezeigt werden, dass für alle in<br />

den nachfolgenden Schritten auftretenden reduzierten Hessematrizen eine LDL T -Zerlegung<br />

existiert, wobei höchstens ein Element von D (und zwar immer das letzte) nicht positiv<br />

ist. In dieser Konstellation ist die LDL T -Zerlegung numerisch stabil (obwohl sie für nicht<br />

positiv definite Matrizen im allgemeinen numerisch instabil ist).<br />

Für den Spezialfall, dass G = 0 ist, also ein lineares <strong>Optimierung</strong>sproblem vorliegt,<br />

und für den Startpunkt |A 0 | = n gilt, ist Algorithmus 9.1 äquivalent mit dem sogenannten<br />

Simplexverfahren der linearen <strong>Optimierung</strong>. Man kann sich dann leicht überlegen, dass<br />

für alle nachfolgenden Iterationspunkte |A k | = n gilt.<br />

9.3 Lösung von (QP) mit Inneren–Punkt–Methoden<br />

9.3.1 Der zentrale Pfad<br />

Lemma 9.5 In (QP) sei G positiv semidefinit und es existiere ein x 0 mit<br />

a T i x 0 { = bi , i ∈ I 1<br />

< b i , i ∈ I 2<br />

Besitzt (QP) eine nichtleere und beschränkte Lösungsmenge, so ist für alle µ > 0 das<br />

<strong>Optimierung</strong>sproblem<br />

QP (µ)<br />

min<br />

x∈R n q(x) − µ ∑ i∈I 2<br />

ln(b i − a T i x)<br />

a T i x = b i , i ∈ I 1<br />

a T i x < b i , i ∈ I 2<br />

konvex und besitzt eine eindeutige Lösung x(µ). Weiters ist q(x(µ)) ≤ ¯q + µ|I 2 |, wobei ¯q<br />

den optimalen Zielfunktionswert von (QP) bezeichnet.<br />

Notwendig und hinreichend für die Lösung von QP (µ) ist natürlich, dass die Kuhn-Tucker-<br />

Bedingungen 1.Ordnung erfüllt sind, d.h.<br />

Gx + d − µ ∑ i∈I 2<br />

−a i<br />

b i − a T i x + ∑ i∈I 1<br />

λ i a i = 0<br />

a T i x = b i , i ∈ I 1<br />

a T i x < b i , i ∈ I 2<br />

Sind die Vektoren a i , i ∈ I 1 linear unabhängig, so sind die Multiplkatoren λ i , i ∈ I 1<br />

eindeutig bestimmt. Setzen wir noch λ i = µ/(b i − a T i x) für i ∈ I 2 , so folgt der folgende<br />

Satz:<br />

87


Satz 9.6 In (QP) sei G positiv semidefinit, die Vektoren a i , i ∈ I 1 seien linear unabhängig,<br />

es existiere ein x 0 mit a T i x 0 = b i , i ∈ I 1 und a T i x 0 < b i , i ∈ I 2 und die Lösungsmenge<br />

von (QP) sei nicht leer und beschränkt. Dann gibt es für alle µ > 0 genau eine Lösung<br />

(x, λ) ∈ R n × R I 1∪I 2<br />

des Systems<br />

Gx + d +<br />

∑ λ i a i = 0<br />

i∈I 1 ∪I 2<br />

a T i x = b⎫<br />

i ,<br />

a T i x < b i , ⎬<br />

i ∈ I 1<br />

(9.3)<br />

λ i > 0,<br />

λ i (b i − a T ⎭ i ∈ I 2,<br />

i x) = µ<br />

die im folgenden mit (x(µ), λ(µ)) bezeichnet wird, wobei x(µ) die eindeutige Lösung von<br />

QP (µ) ist. Die Kurve µ → (x(µ), λ(µ)) wird auch als zentraler Pfad bezeichnet.<br />

9.3.2 Ein Prädiktor-Korrektor Algorithmus<br />

Ignorieren wir kurzfristig die strikten Ungleichungen λ i > 0 bzw. a T i x < b i , so handelt es<br />

sich bei System 9.3 um ein von einem positiven Parameter µ abhängendes nichtlineares<br />

Gleichungssystem.<br />

Zur Lösung von nichtlinearen Gleichungssystemen der Form F (x) = 0, F : R n → R n<br />

kann das Newtonverfahren herangezogen werden: Ausgehend von einem Iterationspunkt x k<br />

wird eine Korrektur δx k := −DF (x k ) −1 F (x k ) mit F (x k + δx k ) ≈ F (x k ) + DF (x k )δx k = 0<br />

gesucht, der neue Iterationspunkt x k+1 ergibt sich dann als x k+1 = x k + δx k (Newtonverfahren).<br />

Dieses Newtonverfahren besitzt lokal superlineare Konvergenzeigenschaften:<br />

Ist F stetig differenzierbar und ist ¯x eine Nullstelle von F , in der die Jacobimatrix<br />

DF (¯x) regulär ist, so existiert eine Umgebung U ∈ U(¯x), sodass für alle Startpunkte x 0 ∈ U<br />

das Newtonverfahren superlinear gegn ¯x konvergiert.<br />

Die Konvergenzeigenschaften können durch die Verwendung einer Schrittweite α k ∈<br />

(0, 1] und der Iterationsvorschrift x k+1 = x k + α k δx k (”gedämpftes Newtonverfahren”)<br />

noch verbessert werden.<br />

In unserer Situation nehmen wir nun an, dass wir für µ > 0 eine Näherung (x, λ) für<br />

(x(µ), λ(µ)) kennen, die folgende Eigenschaften erfüllt:<br />

λ i > 0, a T i x − b i < 0, i ∈ I 2 ; a T i x = b i , i ∈ I 1 ; Gx + d + ∑<br />

λ i a i = 0.<br />

i∈I 1 ∪I 2<br />

Wir suchen nun eine bessere Näherung der Form (x+δx, λ+δλ) für den Punkt (x(µ), λ(µ))<br />

auf dem zentralen Pfad (x(µ), λ(µ)). Das Newtonverfahren ergibt als Vorschrift<br />

Gδx + ∑<br />

i∈I 1 ∪I 2<br />

δλ i a i = 0<br />

a T i δx = 0<br />

−λ i a T i δx + (b i − a T i x)δλ i = µ − λ i (b i − a T i x), i ∈ I 2<br />

88


und die Lösung dieses Systems bezeichnen wir mit (δx c , δλ c ) (Newtonkorrektor. Jetzt sind<br />

wir aber gar nicht so sehr an (x(µ), λ(µ)) interessiert, sondern vielmehr an der Situation<br />

µ = 0, denn (x(0), λ(0)) ergibt eine Lösung von (QP). Linearisierung ergibt für µ = 0<br />

Gδx + ∑<br />

i∈I 1 ∪I 2<br />

δλ i a i = 0<br />

a T i δx = 0<br />

−λ i a T i δx + (b i − a T i x)δλ i = −λ i (b i − a T i x), i ∈ I 2<br />

und die Lösung dieses Systems bezeichnen wir mit (δx p , δλ p ). Für einen neuen Wert µ(θ) =<br />

(1 − θ)µ verwenden wir als Näherung (x(θ), λ(θ)) := (x + θδx p , λ + θδλ p ) für den zentralen<br />

Pfad (Prädiktor).<br />

Auf Grund der relativ einfachen Struktur der vorkommenden Systeme kann die Konvergenz<br />

des Newtonverfahrens sehr genau analysiert werden. Wir definieren für α > 0 die<br />

folgende Umgebung V α des zentralen Pfads<br />

V α =<br />

{<br />

(x, λ, µ) ∈ R n × R I 1∪I 2<br />

× R |<br />

µ > 0; λ i > 0, b i − a T i x > 0, i ∈ I 2<br />

a T i x = b i , i ∈ I 1 ; Gx + d + ∑ }<br />

i∈I 1 ∪I 2<br />

λ i a i = 0<br />

∑i∈I 2<br />

( λ i(b i −a T i x) − 1) 2 ≤ α 2 µ<br />

Dann weiß man z.B., falls (x, λ, µ) ∈ V α mit α ∈ (0, 1 2 ], dass (x + δxc , λ + δλ c , µ) ∈ V α/<br />

√<br />

8<br />

.<br />

Algorithmus 9.2 (Prädiktor–Korrektorverfahren)<br />

Input: (QP), µ ∞ > 0, α ∈ (0, 1], 2 (x0 , λ 0 , µ 0 ) ∈ V α<br />

{ k := 0;<br />

while µ k > µ ∞ do<br />

{ (x, λ, µ) := (x k , λ k , µ k );<br />

Bestimme (δx c , δλ c );<br />

(x, λ) := (x + δx c , λ + δλ c );<br />

Bestimme (δx p , δλ p );<br />

(x(θ), λ(θ), µ(θ)) := (x + θδx p , λ + θδλ p , (1 − θ)µ)<br />

Berechne größtes θ p ∈ (0, 1] mit (x(θ, λ(θ), µ(θ)) ∈ V α , ∀θ ∈ [0, θ p ];<br />

(x k+1 , λ k+1 , µ k+1 ) := (x(θ p ), λ(θ p ), µ(θ p )), k := k + 1;<br />

}<br />

}<br />

Satz 9.7 Sind für (QP) die Voraussetzungen von Satz 9.6 erfüllt, so stoppt Algorithmus<br />

9.2 nach höchstens √ 2|I 2 |/α ln(µ 0 /µ ∞ ) Iterationen. Existiert weiters eine strikt komplementäre<br />

Lösung (¯x, ¯λ) (d.h. ¯λ i > 0 ∨ b i − a T i ¯x > 0, i ∈ I 2 ) und ist µ ∞ = 0, so konvergiert<br />

die Folge µ k quadratisch gegen 0.<br />

Für Details und weitere Varianten sei auf die umfangreiche Literatur zu Inneren–Punkt–<br />

Methoden verwiesen. Insbesonders ergeben sich für lineare <strong>Optimierung</strong>sprobleme oft bedeutende<br />

Vereinfachungen (z.B. existiert immer eine strikt komplementäre Lösung).<br />

Innere–Punkt–Methoden gelten vor allem für große, dünnbesetzte quadratische Probleme<br />

der aktiven Indexmengenstrategie als überlegen.<br />

89


<strong>Kapitel</strong> 10<br />

Allgemeine <strong>Optimierung</strong>sprobleme<br />

10.1 Das Newtonverfahren<br />

10.1.1 Gleichungsrestriktionen<br />

Zur Motivation betrachten wir ein Problem, bei dem nur Gleichungsrestriktionen vorkommen<br />

(I 1 := {1, . . . , m}, I 2 = ∅, c : R n → R m , a i (x) := ∇c i (x))<br />

(P1 ′ ) min f(x)<br />

c(x) = 0<br />

Für ¯x ∈ R n sei Rg(Ā) = m, wobei Ā = (a i (¯x)) i=1,...,m . Aus Satz 8.5 und Satz 8.14<br />

folgt, dass ¯x genau dann ein stationärer Punkt für (P1 ′ ) ist, wenn Lagrangemultiplikatoren<br />

¯λ ∈ R m existieren, sodass die Kuhn–Tuckerbedingungen 1.Ordnung erfüllt sind. Die<br />

Kuhn–Tuckerbedingungen 1.Ordnung lassen sich aber als nichtlineares Gleichungssystem<br />

F (x, λ) = 0 formulieren, wobei<br />

F : R n+m −→ R n+m<br />

(x, λ) −→ F (x, λ) :=<br />

( )<br />

∇x L(x, λ)<br />

c(x)<br />

Zur Lösung dieses nichtlinearen Gleichungssystems kann das Newtonverfahren herangezogen<br />

werden. Dazu sei W k := ∇ 2 xL(x k , λ k ), ¯W := ∇<br />

2<br />

x L(¯x, ¯λ), A k := (a i (x k ) i=1,...,m , usw. ¯Z<br />

bzw. Z k bezeichnen n×(n−m) Matrizen, deren Spalten eine Basis für N(ĀT ) bzw. N(A kT )<br />

bilden. Für die lokale Konvergenz des Newtonverfahrens benötigen wir die Voraussetzung,<br />

dass DF (¯x, ¯λ) regulär ist: Es gilt<br />

⎛<br />

⎞<br />

¯W<br />

DF (¯x, ¯λ)<br />

. Ā<br />

= ⎝ · · · · · · ⎠<br />

Ā T . 0<br />

Nach Lemma 9.2 ist DF (¯x, ¯λ) genau dann regulär, wenn Rg(Ā) = m und ¯Z T ¯W ¯Z regulär<br />

ist. Analog ergibt sich, dass DF (x k , λ k ) genau dann regulär ist, wenn Rg(A k ) = m und<br />

Z kT W k Z k regulär ist.<br />

90


Als nächstes untersuchen wir die Newtonkorrektur. Wegen ∇ x L(x k , λ k ) = g k + A k λ k<br />

folgt<br />

( )<br />

x<br />

F (x k , λ k ) + DF (x k , λ k )<br />

k+1 − x k<br />

λ k+1 − λ k = 0<br />

⇐⇒<br />

⎛<br />

⎝ ∇ xL(x k , λ k )<br />

· · ·<br />

c k<br />

⎞ ⎛<br />

⎠ + ⎝ W ⎞ ⎛ ⎞<br />

k . A k<br />

· · · · · · ⎠ ⎝ xk+1 − x k<br />

· · · ⎠ =<br />

A kT . 0 λ k+1 − λ k<br />

⇐⇒ gk + A k λ k + W k (x k+1 − x k ) + A k (λ k+1 − λ k ) = 0<br />

c k + A kT (x k+1 − x k ) = 0<br />

⇐⇒ W k s k + g k +A k λ k+1 = 0<br />

A kT s k + c k = 0<br />

⎛<br />

⎝ 0<br />

· · ·<br />

0<br />

⎞<br />

⎠<br />

(10.1)<br />

wobei s k := x k+1 − x k . (10.1) kann nun als Kuhn–Tuckerbedingungen 1.Ordnung für ein<br />

quadratisches <strong>Optimierung</strong>sproblem interpretiert werden: s k ist stationärer Punkt mit zugehörigem<br />

Lagrangemultiplikator λ k+1 für<br />

(P1 ′k ) min<br />

1<br />

2 sT W k s + g kT s<br />

A kT s + c k = 0<br />

An Stelle der Newtoniteration könnten wir also einen stationären Punkt s k von (P1 ′k ) bestimmen<br />

und x k+1 = x k + s k setzen, λ k+1 ergibt sich als zugehöriger Lagrangemultiplikator<br />

zu s k . Wir betrachten nun (P1 ′k ). Wir sehen, dass wir die Restriktionen einfach durch Linearisierung<br />

der nichtlinearen Restriktionen erhalten haben. Auf den ersten Blick ist jedoch<br />

etwas überraschend, dass die Zielfunktion nicht die quadratische Taylorentwicklung von f<br />

ist, sondern dass die Hessematrix ∇ 2 xf(x k ) durch die Hessematrix der Lagrangefunktion<br />

∇ 2 xL(x k , λ k ) ersetzt wird.<br />

Nun sind wir aber nicht so sehr an stationären Punkten interessiert, sondern vielmehr<br />

an einem Minimum (z.B. ist für (P1 ′ ) ein lokales Maximum ebenfalls ein stationärer<br />

Punkt). Ist ¯x ein lokales Minimum von (P1 ′ ) mit Rg(Ā) = m, so folgt aus den notwendigen<br />

Bedingungen 2.Ordnung<br />

∧<br />

∧<br />

s T ¯W s ≥ 0 ⇔<br />

s∈R n<br />

Ā T s=0<br />

p∈R n−m p T ¯ZT ¯W ¯Zp ≥ 0 ⇔ ¯ZT ¯W ¯Z ist positiv semidefinit<br />

Für die Durchführung des Newtonverfahrens ist andererseits erforderlich, dass ¯Z T ¯W ¯Z regulär<br />

ist, d.h. für die Anwendung des Newtonverfahrens muss ¯Z T ¯W ¯Z positiv definit sein<br />

(hinreichende Kuhn–Tuckerbedingungen 2.Ordnung). Für Iterationspunkte (x k , λ k ) hinreichend<br />

nahe bei (¯x, ¯λ) ist dann auch Z kT W k Z k positiv definit ist ⇒ s k ist Minimum von<br />

(P1 ′k ). Ist umgekehrt Z kT W k Z k nicht positiv definit, können wir nicht erwarten, dass das<br />

Newtonverfahren zu einem lokalen Minimum von (P1 ′ ) konvergiert.<br />

91


10.1.2 Gleichungs– und Ungleichungsrestriktionen<br />

Die Verallgemeinerung der Überlegungen des vorangehenden Abschnitts ist naheliegend:<br />

Seien x k , λ k Näherungen für ¯x, ¯λ. Wir bestimmen eine Lösung s k des Problems<br />

(P1 k ) min<br />

1<br />

2 sT W k s + g kT s<br />

a k i<br />

T<br />

s + c<br />

k<br />

i = 0, i ∈ I 1<br />

a k i<br />

T<br />

s + c<br />

k<br />

i ≤ 0, i ∈ I 2<br />

und erhalten neue Näherungen x k+1 = x k + s k , λ k+1 als Lagrangemultiplikator zu s k . Dies<br />

ist das sogenannte Wilson-Verfahren (1963)<br />

Satz 10.1 Sei f, c ∈ C 3 und ¯x ein lokales Minimum für (P1), in dem die Gradienten der<br />

aktiven Restriktionen linear unabhängig und die hinreichenden Kuhn-Tucker-Bedingungen<br />

2.Ordnung erfüllt sind, ¯λ sei der zu ¯x gehörende eindeutige Lagrangemultiplikator. Dann<br />

gibt es eine Umgebung U ⊂ R n × R I 1∪I 2<br />

von (¯x, ¯λ), eine Umgebung S ⊂ R n von 0 und eine<br />

Zahl β > 0, sodass für alle (x k , λ k ) ∈ U gilt:<br />

1. Das Problem (P1 k ) besitzt mindestens ein lokales Minimum s k ∈ S.<br />

2. Für jeden stationären Punkt s k ∈ S für (P1 k ) mit zugehörigem Lagrangemultiplikator<br />

λ k+1 gilt (x k+1 , λ k+1 ) ∈ U (x k+1 := x k + s k ) und<br />

max{‖x k+1 − ¯x‖, ‖λ k+1 − ¯λ‖} ≤ β‖x k − ¯x‖ max{‖x k − ¯x‖, ‖λ k − ¯λ‖}<br />

≤ β max{‖x k − ¯x‖, ‖λ k − ¯λ‖} 2<br />

Satz 10.1 ergibt die lokale quadratische Konvergenz des Wilsonverfahrens, vorausgesetzt<br />

wir kennen einen Startpunkt (x 0 , λ 0 ) hinreichend nahe bei (¯x, ¯λ) und wir finden die ”richtigen”<br />

Lösungen (in S) für Problem (P1 k ). Problem (P1 k ) ist normalerweise ein indefinites<br />

quadratisches Problem und muss keine eindeutige Lösung besitzen, weiters können auch<br />

Lösungen existieren, die nicht in S liegen. Eine weitere Einschränkung ist, dass nicht nur<br />

ein Startpunkt x 0 hinreichend nahe bei ¯x bekannt sein muss, sondern auch Lagrangemultiplikatoren<br />

λ 0 hinreichend nahe bei ¯λ. Diese beiden Schwierigkeiten können allerdings<br />

zumindest theoretisch relativ leicht umgangen werden.<br />

Entscheidende Nachteile des Wilsonverfahrens liegen jedoch im<br />

1. Fehlen von globalen Konvergenzeigenschaften<br />

2. hohen numerischen Aufwand bei der Bestimmung der Hessematrix der Lagrangefunktion<br />

In der Praxis wird das Wilson–Verfahren nur mehr für sehr spezielle Probleme verwendet.<br />

Für allgemeine Probleme ist ein Quasi–Newtonverfahren vorzuziehen, das beide Nachteile<br />

vermeiden. Bevor wir jedoch zu den Quasi–Newtonverfahren kommen, benötigen wir noch<br />

andere Methoden.<br />

92


10.2 Allgemeine Strafmethoden<br />

Den Strafmethoden (penalty methods) ist gemeinsam, dass Verletzungen in den Nebenbedingungen<br />

durch einen Zusatzterm zum Zielfunktional bestraft werden. Dadurch sind nur<br />

mehr freie <strong>Optimierung</strong>sprobleme zu lösen.<br />

10.2.1 Straf– und Barrieremethoden<br />

Wir betrachten für (P1) die Straffunktion<br />

Φ(x, σ) := f(x) + 1 2 σ ( ∑<br />

i∈I 1<br />

c i (x) 2 + ∑ i∈I 2<br />

(c + i (x))2 )<br />

mit σ > 0. Wir erwarten, dass, wenn wir Φ(x, σ) für großes σ bezüglich x minimieren, das<br />

Minimum x(σ) in der Nähe einen Minimums für (P1) liegt. Der genaue Sachverhalt wird<br />

in folgendem Satz präzisiert:<br />

Satz 10.2 1. Sei f, c i ∈ C 1 , (σ k ) k∈N ↑ ∞, (x k ) k∈N eine Folge von stationären Punkten<br />

für Φ(x, σ k ) mit lim sup Φ(x k , σ k ) < ∞,<br />

{<br />

λ k σ<br />

:=<br />

k c k i für i ∈ I 1<br />

σ k (c k i ) + für i ∈ I 2<br />

Dann gilt für jeden Häufungspunkt ¯x der Folge (x k ), wobei (x k j<br />

) eine gegen ¯x konvergente<br />

Teilfolge ist:<br />

(a) ¯x ist zulässig für (P1) und Λ 0 (¯x) ≠ ∅ (d.h. die notwendigen Bedingungen für<br />

das Vorliegen eines stationären Punktes sind erfüllt). Besitzt die Teilfolge (λ k j<br />

)<br />

einen Häufungspunkt ¯λ, so ist ¯λ ∈ Λ(¯x) ≠ ∅ (d.h. ¯x ist stationärer Punkt)<br />

(b) Ist in ¯x eine der 3 Bedingungen aus Satz 8.5 erfüllt, so ist ¯x stationärer Punkt.<br />

(c) Ist in ¯x die Mangasarian–Fromovitzbedingung erfüllt, so ist die Teilfolge (λ k j<br />

)<br />

beschränkt.<br />

(d) Sind in ¯x die Mangasarian–Fromovitzbedingung und die starken hinreichenden<br />

Kuhn-Tucker-Bedingungen 2. Ordnung erfüllt, so gilt<br />

d((x k j<br />

, λ k j<br />

), {¯x} × Λ(¯x)) = O( 1<br />

σ k j )<br />

∑i∈I 1<br />

|c i (x k j<br />

| + ∑ i∈I 2<br />

c + i (xk j<br />

) = O( 1<br />

σ k j )<br />

2. Sei ¯x ein striktes lokales Minimum für (P1). Dann gibt es für jede Umgebung U von<br />

¯x ein σ U , sodass für alle σ > σ U die Funktion Φ(x, σ) ein lokales Minimum in U<br />

besitzt.<br />

93


Die praktische Durchführung der Strafmethode erfolgt folgendermaßen: Man gibt sich<br />

eine Folge von Strafparametern (σ k ) ↑ ∞ vor und ermittelt sich jeweils mit einem geeigneten<br />

Verfahren (z.B Quasi–Newtonverfahren) einen stationären Punkt x k der Funktion<br />

Φ(x, σ k ). Als Startpunkt nimmt man dabei zweckmäßigerweise den vorangegangenen Punkt<br />

x k−1 her. Theoretisch muss man überprüfen, dass lim sup Φ(x k , σ k ) < ∞. Ist ein für (P1)<br />

zulässiger Punkt y bekannt, so kann dies durch Φ(x k , σ k ) ≤ Φ(y, σ k ) = f(y) geschehen.<br />

(Ist diese Forderung verletzt, wird mit dem Startpunkt y die Funktion Φ(x, σ k ) neu minimiert).<br />

Ist kein zulässiger Punkt bekannt, kann man z.B. den Abstieg in der Verletzung<br />

der Nebenbedingungen prüfen. Ein sinnvolles Kriterium wäre z.B<br />

Φ(x k , σ k ) − f k ≤ µ(Φ(x k−1 , σ k−1 ) − f k−1 )<br />

mit 0 < µ < inf{ σk | k ≥ 1}. Das Verfahren wird abgebrochen, wenn die Nebenbedingungen<br />

hinreichend genau erfüllt sind.<br />

σ k−1<br />

Die Funktion Φ(x, σ) ist nicht zweimal stetig differenzierbar für Punkte mit c i (x) = 0<br />

für ein i ∈ I 2 . Dies ist bei einem Quasi–Newtonverfahren nicht so problematisch, viel<br />

schwerwiegender ist der Umstand, dass für großes σ die Hessematrix schlecht konditioniert<br />

ist, d.h. es wird immer schwieriger, die Funktion Φ(x, σ k ) zu minimeren.<br />

Den Umstand, dass Φ ∉ C 2 , kann man durch sogenannten Barriere–Methoden vermeiden.<br />

Allerdings muss ein Startpunkt x 0 bekannt sein, der die Ungleichungsrestriktionen strikt<br />

erfüllt: c i (x 0 ) < 0, i ∈ I 2 . Bei den Barrieremethoden wird nun am Rand des durch die<br />

Ungleichungen beschriebenen Zulässigkeitsbereichs eine Barriere errichtet, d.h. man fügt<br />

zum Zielfunktional einen Strafterm hinzu, der unendlich wird, wenn man sich dem Rand<br />

des Bereichs nähert. Ein Beispiel für Barrierefunktionen (nur für Ungleichungen):<br />

Φ(x, σ) := f(x) − 1 ∑<br />

ln(−c i (x))<br />

σ<br />

i∈I 2<br />

Dies ist die Barrierefunktion, die wir bereits bei der quadratischen <strong>Optimierung</strong> bei den<br />

Inneren–Punkt–Methoden kennengelernt haben.<br />

10.2.2 Exakte Straffunktionen<br />

Ein Nachteil bei den Straffunktionen war, dass der Strafparameter σ gegen ∞ gehen muss,<br />

um Problem (P1) zu lösen (schlechte Kondition). Bei exakten Straffunktionen wird dieser<br />

Nachteil vermieden, d.h. für hinreichend großes, aber endliches σ ist ein stationärer Punkt<br />

(Minimum) von (P1) auch stationärer Punkt (Minimum) der Straffunktion. Ein Beispiel<br />

für eine solche Straffunktion ist<br />

Φ(x, σ) = f(x) + ( ∑ i∈I 1<br />

σ i |c i (x)| + ∑ i∈I 2<br />

σ i c + i (x)), σ ∈ RI 1∪I 2<br />

Satz 10.3<br />

1. Sei ¯x zulässig für (P1). Dann gilt<br />

Λ(¯x) ≠ ∅ ⇐⇒ ∨¯σ≥0<br />

∧<br />

¯x ist stationärer Punkt von Φ(x, σ)<br />

σ≥¯σ<br />

94


2. Sei ¯x ∈ Ω ein lokales Minimum von Φ(x, σ) für ein σ > 0. Dann ist ¯x ein lokales<br />

Minimum für (P1).<br />

3. Sei ¯x ∈ Ω ein striktes lokales Minimum, in dem Λ(¯x) ≠ ∅ und die hinreichenden<br />

Bedingungen 2. Ordnung aus Satz 8.19 erfüllt sind. Dann gibt es ein ¯σ ≥ 0, sodass<br />

¯x ein striktes lokales Minimum von Φ(x, ¯σ) ist.<br />

Bemerkung: Die Aussage 1. ist für ¯σ i := |λ i | mit λ ∈ Λ(¯x) richtig.<br />

Wir sehen, dass bei Regularitätsvoraussetzungen an die Nebenbedingungen der Parameter<br />

σ nicht gegen ∞ gehen muss, allerdings auf Kosten der Differenzierbarkeit der<br />

Straffunktion. Zur Minimierung von Φ(x, σ) kann nicht so ohne weiteres eines der bekannten<br />

Verfahren der nichtlinearen freien <strong>Optimierung</strong> herangezogen werden, allerdings werden<br />

wir diese Straffunktion später zur Liniensuche verwenden.<br />

10.2.3 Multiplikator–Methode<br />

(Engl.: augmented Lagrangian method, multiplier penalty method) Bei der Multiplikator–<br />

Methode wird ebenfalls eine in einem gewissen Sinne exakte Straffunktion verwendet:<br />

Φ(x, λ, σ) : = f(x) + 1 ∑<br />

σ i (c i (x) + λ i<br />

) 2 + 1 ∑<br />

2<br />

σ i 2<br />

i∈I<br />

⎧<br />

1<br />

1<br />

⎪⎨ σ 2 ic i (x) 2 für i ∈ I 1<br />

1<br />

= L(x, λ) + 2<br />

⎪⎩<br />

σ ic i (x) 2 für i ∈ I 2 und c i (x) ≥ − λ i<br />

σ i<br />

−λ i c i (x) − 1 λ 2 i<br />

2 σ i<br />

für i ∈ I 2 und c i (x) < − λ i<br />

σ i<br />

i∈I 2<br />

σ i ((c i (x) + λ i<br />

σ i<br />

) + ) 2 − 1 2<br />

∑ λ 2 i<br />

σ i<br />

i∈I 1 ∪I 2<br />

wobei λ ∈ S := {λ ∈ R I 1∪I 2<br />

| λ i ≥ 0, i ∈ I 2 }, σ ∈ R I 1∪I 2<br />

+ . Die Funktion Φ ist nun stetig<br />

differenzierbar bezüglich x und zweimal stetig differenzierbar mit Ausnahme von Punkten<br />

x mit c i (x) = − λ i<br />

σ i<br />

für ein i ∈ I 2 . Es gilt der folgende Satz:<br />

Satz 10.4<br />

1. Sei ¯x zulässig für (P1). Dann gilt<br />

Λ(¯x) ≠ ∅ =⇒ ∧<br />

¯x ist stationärer Punkt von Φ(x, ¯λ, σ)<br />

¯λ∈Λ(¯x)<br />

σ>0<br />

2. Sei ¯x ein striktes lokales Minimum für (P1). Dann gibt es für jede beschränkte Menge<br />

Λ und für jede Umgebung U von ¯x ein ¯σ > 0, sodass für alle λ ∈ Λ ∩ S und alle<br />

σ > ¯σ die Funktion Φ(x, λ, σ) ein lokales Minimum in U besitzt.<br />

3. Sei ¯x ein lokales Minimum von (P1), in dem die Mangasarian–Fromovitzbedingung<br />

und die starken hinreichenden Kuhn-Tucker-Bedingungen 2.Ordnung erfüllt sind.<br />

Dann gibt es eine (beschränkte) Umgebung U von ¯x, sodass für die Funktion<br />

ψ : S × R I 1∪I 2<br />

+ → R, ψ(λ, σ) := min{Φ(x, λ, σ) | x ∈ cl U} (globales Minimum)<br />

95


und für jede beschränkte Menge Λ ⊂ S mit Λ(¯x) ⊂ Λ gilt:<br />

∨ ∧ ∧<br />

ψ(λ, σ) < ψ(¯λ, σ) = f(¯x)<br />

¯σ>0<br />

λ∈Λ\Λ(¯x)<br />

σ≥¯σ<br />

¯λ∈Λ(¯x)<br />

(d.h. für alle ¯λ ∈ Λ(¯x) ist ¯λ globales Maximum der Funktion ψ über Λ ∩ S). Weiters<br />

ist für alle ¯λ ∈ Λ(¯x) und alle σ ≥ ¯σ ¯x ein striktes globales Minimum der Funktion<br />

Φ(x, ¯λ, σ) in U.<br />

Die Grundidee bei der numerischen Durchführung der Multiplikator–Methode beruht<br />

nun darauf, die Funktion ψ(λ) zu maximieren. Grundlage für einen solchen Algorithmus<br />

ist der folgende Satz:<br />

Satz 10.5 Sei ¯x ein lokales Minimum von (P1), in dem die Gradienten der aktiven Restriktionen<br />

linear unabhängig und die hinreichenden Kuhn-Tucker-Bedingungen 2. Ordnung<br />

erfüllt sind. Dann gibt es eine Umgebung U von ¯x, eine Konstante β > 0 und für jeden<br />

Startpunkt λ 0 ∈ S ein ¯σ > 0, sodass für alle σ ≥ ¯σ die Iterationsvorschrift<br />

x k ∈ U ist stationärer Punkt von Φ(x, λ k , σ)<br />

λ k+1<br />

i :=<br />

{<br />

λ<br />

k<br />

i + σc i (x k ) für i ∈ I 1<br />

(λ k i + σc i (x k )) + für i ∈ I 2<br />

wohldefiniert ist, lim x k = ¯x, lim λ k = ¯λ und<br />

max{‖x k − ¯x‖, ‖λ k+1 − ¯λ‖} ≤ β σ ‖λk − ¯λ‖<br />

Bemerkung: Ist in ¯x sogar die strikte Komplentarität erfüllt, so kann man für λ hinreichend<br />

nahe bei ¯λ und σ hinreichend groß nachweisen, dass Φ(x, λ, σ) in einer Umgebung<br />

U von ¯x strikt konvex ist. Der in Satz 10.5 gesuchte stationäre Punkt x k ∈ U ist dann<br />

eindeutig bestimmt. Weiters ergibt sich, dass die Funktion ψ(λ, σ) stetig differenzierbar<br />

bezüglich λ ist, es gilt<br />

∂ψ<br />

∂λ i<br />

(λ k , σ) =<br />

{<br />

ci (x k ) für i ∈ I 1<br />

max{c i (x k ), − λk i<br />

σ i<br />

} für i ∈ I 2<br />

Die Iterationsvorschrift bezüglich λ in Satz 10.5 lautet dann<br />

λ k+1<br />

i = λ k i + diag(σ)∇ λ ψ(λ k , σ)<br />

und kann als ”Aufstiegsverfahren” zur Maximierung von ψ interpretiert werden.<br />

Obwohl mittels der Multiplikatormethode relativ leistungsfähige Algorithmen zur Lösung<br />

von (P1) entwickelt werden können, wollen wir hier nicht näher ins Detail gehen.<br />

96


10.3 Quasi–Newtonverfahren<br />

Die hier vorgestellten Quasi–Newtonverfahren werden auch als ”SQP–Verfahren” (Sequential-Quadratic-Programming)<br />

bezeichnet. Wir wollen das Wilson–Verfahren so modifizieren,<br />

dass sowohl globale als auch lokal superlineare Konvergenzeigenschaften vorliegen,<br />

andererseits der numerische Aufwand möglichst gering ist. Zum Erreichen von globalen<br />

Konvergenzeigenschaften ist erforderlich, dass wir in jedem Iterationsschritt das quadratische<br />

Teilproblem lösen können. Dazu ist einmal mindestens erforderlich, dass der Zulässigkeitsbereich<br />

nicht leer ist, zum anderen sollte die Matrix in der Zielfunktion positiv definit<br />

sein. In einem Iterationpunkt (x k , λ k ) ersetzen wir daher das Problem (P1) durch das<br />

Problem<br />

min<br />

(s,δ)∈R n ×R<br />

1<br />

2 sT B k s + g kT s + ρ k ( 1 2 δ2 + δ)<br />

(1 − δ)c k i + a k T<br />

i s = 0, i ∈ I1<br />

(1 − δ)c k i + a k T<br />

i s ≤ 0, i ∈ I<br />

k+<br />

2 (10.2)<br />

c k i + a k T<br />

i s ≤ 0, i ∈ I<br />

k0<br />

2<br />

0 ≤ δ ≤ 1<br />

wobei I k+<br />

2 := {i ∈ I 2 | c k i ≥ 0}, I k0 := I 2 \ I k+<br />

2 , ρ k > 0 und B k positiv definit ist. Da<br />

s = 0, δ = 1 zulässig, B k positiv definit und ρ k > 0 ist, besitzt 10.2 eine eindeutige Lösung<br />

(s k , δ k ), die wir mit Algorithmus 9.1 ohne Probleme bestimmen können. Einen zugehörigen<br />

Lagrangemultiplikator bezeichnen wir mit µ k ∈ R I 1∪I 2<br />

, η k ∈ R.<br />

Lemma 10.6 1. Sind die Gradienten der Gleichungsrestriktionen (a k i ) i∈I1 linear unabhängig<br />

und gibt es eine Richtung ¯s mit<br />

a k i<br />

{<br />

T = 0, i ∈ I1<br />

¯s<br />

< 0, i ∈ I 2 , c k i ≥ 0<br />

so gibt es eine Konstante ¯ρ k , sodass δ k < 1 für alle ρ k > ¯ρ k gilt<br />

2. Besitzt das Problem 10.2 einen zulässigen Punkt (s, 0), so gibt es eine Konstante ¯ρ k ,<br />

sodass δ k = 0 für alle ρ k > ¯ρ k gilt.<br />

Bemerkung: Es ist nicht unbedingt erstrebenswert, dass δ k = 0 gilt. Erstens einmal würde<br />

ein zu großes ρ k eine schlechte Kondition bewirken, zweitens bedeutet ein großes ρ k ,<br />

dass die Nebenbedingungen Regularitätsvoraussetzungen verletzen und die Lagrangemultiplikatoren<br />

µ k groß werden. Dagegen ist wichtig, dass δ k < 1 gilt, d.h. dass entlang<br />

der Suchrichtung zumindest lokal die Verletzung der Nebenbedingungen reduziert wird,<br />

falls der betrachtete Punkt x k nicht zulässig ist.<br />

Ein weiterer wichtiger Punkt zur Globalisierung ist die Durchführung einer Liniensuche.<br />

Dazu benötigen wir eine geeignete Liniensuchfunktion. Eine Möglichkeit ist die Verwendung<br />

97


einer exakten Straffunktion<br />

φ k (α) := f(x k + αs k ) + ∑ i∈I 1<br />

σ k i |c i (x k + αs k )| + ∑ i∈I 2<br />

σ k i c + i (xk + αs k )<br />

Zur Durchführung der Liniensuche ist zu beachten, dass die Straffunktion nicht differenzierbar<br />

ist. In 1. Näherung gilt für diese Straffunktion<br />

φ k (α) = f k + αg kT s k + ∑ i∈I 1<br />

σ k i |c k i + αa k i<br />

T<br />

s k | + ∑ i∈I 2<br />

σ k i (c k i + αa k i<br />

T<br />

s k ) + + O(α‖s k ‖)<br />

=: ˆφk (α) + O(α‖s k ‖)<br />

Weiters gilt<br />

B k s k + g k + ∑<br />

i∈I 1 ∪I 2<br />

µ k i a k i = 0<br />

∧<br />

∧<br />

µ k i (β i c k i + a k T<br />

i s k ) = 0 =⇒<br />

i∈I 1 ∪I 2<br />

g kT s k = −s kT B k s k + ∑<br />

i∈I 1 ∪I 2<br />

µ k i β i c k i<br />

≤ −s kT B k s k + ∑ i∈I 1<br />

β i |µ k i | |c k i | + ∑ i∈I 2<br />

µ k i β i (c k i ) +<br />

wobei<br />

{<br />

1 − δ<br />

k<br />

für i ∈ I<br />

β i :=<br />

1 ∪ I2<br />

k+<br />

1 für i ∈ I2<br />

k0<br />

Durch mehrere Fallunterscheidungen überlegt man sich, dass<br />

Damit ist<br />

r k : = ˆφ k (1) − ˆφ k (0)<br />

|c k i + a k i<br />

T<br />

s k | − |c k i | = −β i |c k i |<br />

(c k i + a k T<br />

i s k ) + − (c k i ) + ≤ −β i (c k i ) +<br />

= g kT s k + ∑ i ∈ I 1<br />

σ k i (|c k i + a k i<br />

T<br />

s k | − |c k i |) + ∑ i∈I 2<br />

σ k i (max{c k i + a k i<br />

T<br />

s k , 0} − max{c k i , 0})<br />

≤ −s kT B k s k − ∑ i∈I 1<br />

β i (σ k i − |µ k i |)|c k i | − ∑ i∈I 2<br />

β i (σ k i − |µ k i |) max{c k i , 0}<br />

≤ −s kT B k s k < 0<br />

vorausgesetzt, dass x k kein stationärer Punkt ist, der die Kuhn–Tuckerbedingungen 1.Ordnung<br />

erfüllt (dann wäre s k = 0) und σ k ≥ |µ k | und δ k < 1 (ist δ k < 1 nicht möglich, sind<br />

die in x k verletzten Nebenbdingungen degeneriert.)<br />

98


Die Funktion ˆφ k (α) ist konvex bezüglich α, da die Hintereinanderausführung und die<br />

Summe von konvexen Funktionen wieder konvex ist. Daher ist<br />

∧<br />

ˆφ k (α) ≤ (1 − α) ˆφ k (0) + α ˆφ k (1) = ˆφ k (0) + αr k < ˆφ k (0) = φ k (0)<br />

0 0 so bestimmen, dass der tatsächliche Abstieg in der Liniensuchfunktion<br />

von der gleichen Größenordnung wie der zu erwartende Abstieg ist, andererseits aber<br />

α k nicht zu klein ist. Für den zu erwartenden Abstieg könnte man entweder die Funktion<br />

ˆφ k (α)− ˆφ k (0) oder aber die etwas gröbere Abschätzung αr k heranziehen. Beide Möglichkeiten<br />

bieten gewisse Vor- bzw. Nachteile, wir wollen uns hier für unseren Konvergenzbeweis<br />

auf die letztere Variante festlegen. Die einfachste Methode, um eine geeignete Schrittweite<br />

α k > 0 zu bestimmen, ist die folgende: Für eine streng monoton gegen 0 fallende Folge<br />

γ j mit γ 0 = 1, τ 1 ≤ γ j+1<br />

γ j<br />

≤ τ 2 , wobei 0 < τ 1 < τ 2 < 1 fest vorgegebene Parameter sind,<br />

bestimmt man<br />

α k := max{γ j | φ k (γ j ) ≤ φ k (0) + ξγ j r k }<br />

wobei ξ < 1. Die Folge γ j könnte man einfach durch γ j := τ j festlegen, andererseits<br />

könnte man die Folge γ j auch durch Interpolationstechniken während der numerischen<br />

Durchführung bestimmen. Den neuen Iterationspunkt bestimmen wir dann durch x k+1 :=<br />

x k + α k s k , λ k+1 := λ k + α k (µ k − λ k ). Für die Durchführung des Verfahrens noch kritisch<br />

ist die Bestimmung der Strafparameter σ k . Einerseits wissen wir, dass σ k > µ k gelten soll,<br />

damit s k garantiert eine ”Abstiegsrichtung” ist. Für einen Konvergenzbeweis benötigen wir<br />

aber auch noch, dass σ k eine konvergente Folge bildet. Die folgende Festlegung sichert uns<br />

(unter gewissen Voraussetzungen) Konvergenz:<br />

wobei σ 0 > 0, 1 < ζ 1 < ζ 2 .<br />

{<br />

σi k ζ2 |µ<br />

=<br />

k i | falls σ k−1<br />

i < ζ 1 |µ k i |<br />

sonst<br />

σ k−1<br />

i<br />

Satz 10.7 Seien f, c i ∈ C 1 . Werden für eine beschränkte Folge von Matrizen B k und eine<br />

Folge von Parametern ρ k und Startpunkte σ 0 , x 1 , λ 1 die Folgen s k , δ k , µ k , σ k , α k , x k<br />

und λ k wie oben beschrieben erzeugt, sind die Folgen x k , s k und µ k beschränkt und gilt<br />

δ k ≤ ¯δ < 1 für alle k, so ist jeder Häufungspunkt ¯x der Folge x k ein stationärer Punkt, für<br />

den Λ(¯x) ≠ ∅. Ist x k i<br />

eine gegen ¯x konvergente Teilfolge, so ist jeder Häufungspunkt der<br />

Teilfolge µ k i<br />

Lagrangemultiplikator zu ¯x.<br />

Wir überlegen nun eine geeignete Wahl für die Matrix B k unter dem Aspekt der Konvergenzgeschwindigkeit.<br />

Einerseits sollte B k eine gute Approximation für die Matrix ∇ 2 xL k<br />

sein, andererseits sollte B k auch positiv definit sein. Von den notwendigen (hinreichenden)<br />

99


Bedingungen 2.Ordnung wissen wir, dass die Hessematrix der Lagrangefunktion im allgemeinen<br />

nur auf dem Kegel der kritischen Richtungen positiv (semi-)definit sein wird, aber<br />

nicht auf dem gesamten R n , d.h. ∇ 2 xL k kann im allgemeinen nicht durch positiv definite<br />

Matrizen B k approximiert werden. Es kann aber nun gezeigt werden, dass für Erreichen einer<br />

hohen Konvergenzgeschwindigkeit auch wirklich nur die Approximation auf dem Kegel<br />

der kritischen Richtungen entscheidend ist. Zur Konstruktion der Matrizen B k kann nun<br />

eine modifizierte BFGS–Formel herangezogen werden: Mit<br />

y ′ := ∇ x L(x k+1 , λ k+1 ) − ∇ x L(x k , λ k+1 ),<br />

η := x k+1 − x k<br />

wird die Matrix B k+1 folgendermaßen konstruiert:<br />

{ 1 falls η T y ′ ≥ 0.1η T B k η<br />

θ :=<br />

sonst<br />

0.9η T B k η<br />

η T B k η−η T y ′<br />

y := θy ′ + (1 − θ)B k η<br />

B k+1 := B k + yyT<br />

y T η − Bk ηη T B k<br />

η T B k η<br />

Falls B k positiv definit ist, ist dann sicher auch B k+1 positiv definit, da y T η ≥ 0.1η T B k η ><br />

0. Mit dieser Konstruktion kann gezeigt werden: Sind f, c i ∈ C 3 , konvergiert die Folge x k<br />

gegen ein lokales Minimum ¯x, in dem die starken hinreichenden Bedingungen 2. Ordnung<br />

erfüllt sind und gilt ab einem Iterationsindex stets δ k = 0 und α k = 1, so ist die Konvergenz<br />

2–Schritt–superlinear, d.h.<br />

‖x k+1 − ¯x‖<br />

‖x k−1 − ¯x‖ → 0<br />

Für die superlineare Konvergenz ist die Akzeptanz einer Schrittweite α k = 1 von besonderer<br />

Bedeutung. Nun kann man sich aber überlegen, dass falls x k ”nahezu” zulässig<br />

ist, durchaus φ k (1) > φ k (0) gelten kann, d.h. die Schrittweite α k = 1 wird von der Liniensuchfunktion<br />

nicht akzeptiert (”Maratos–Effekt”). Für Möglichkeiten zur Vermeidung<br />

dieses Effekts sei auf die Literatur verwiesen.<br />

Die praktische Konvergenzgeschwindigkeit hängt sehr stark von der Wahl der Strafparameter<br />

σ k ab. Für ein gutes Funktionieren des Algorithmus ist entscheidend, dass σ k nicht<br />

zu groß wird, d.h. dass x k nicht immer sehr nahe dem Zulässigkeitsbereich sein muss. Bei<br />

unserer Konstruktion ist die Folge der Strafparameter monoton steigend und immer größer<br />

als µ k . Insbesonders heißt dies, dass, wenn einmal µ k groß ist (z.B. in den ersten Iterationsschritten),<br />

die Strafparameter immer groß bleiben und das Verhalten des Algorithmus<br />

negativ beeinflussen. Insbesonderes Augenmerk ist daher auch einer richtigen Wahl der Parameter<br />

ρ k zu schenken. Großes ρ k forciert zwar ein kleines δ k , aber im allgemeinen auch<br />

große Lagrangemultiplikatoren µ k . Deshalb ist es günstig, ρ k zuerst relativ klein zu wählen,<br />

das quadratische Teilproblem zu lösen und dann, solange δ k = 1, ρ k durch Multiplikation<br />

mit einem konstanten Faktor zu erhöhen.<br />

Es sei noch erwähnt, dass neben der exakten Straffunktion auch noch andere Liniensuchfunktionen<br />

verwendet werden können,z.B. die Straffunktion aus der Multiplikatormethode.<br />

100


Literaturverzeichnis<br />

[1] J. F. Bonnans, J. C. Gilbert, C. Lemaréchal, C. A. Sagastizábal, Numerical<br />

optimization, Springer, Berlin–Heidelberg–New York, 2003.<br />

[2] R. Fletcher, Practical methods of optimization. Vol I: Unconstrained optimization,<br />

John Wiley, Chichester–New York–Brisbane–Toronto, 1980.<br />

[3] R. Fletcher, Practical methods of optimization. Vol II: Constrained optimization,<br />

John Wiley, Chichester–New York–Brisbane–Toronto, 1981.<br />

[4] C. Geiger, C. Kanzow, Numerische Verfahren zur Lösung unrestringierter <strong>Optimierung</strong>saufgaben,<br />

Springer, Berlin–Heidelberg–New York, 1999.<br />

[5] C. Geiger, C. Kanzow, Theorie und Numerik restringierter <strong>Optimierung</strong>saufgaben,<br />

Springer, Berlin–Heidelberg–New York, 2002.<br />

[6] P. E. Gill, W. Murray, M. H. Wright, Practical optimization, Academic Press,<br />

London–New York–Toronto–Sydney–San Francisco, 1981<br />

101


Inhaltsverzeichnis<br />

1 Einleitung 1<br />

1.1 Allgemeine Problemstellung und Beispiele . . . . . . . . . . . . . . . . . . 1<br />

1.2 Klassifizierung von <strong>Optimierung</strong>sproblemen . . . . . . . . . . . . . . . . . 4<br />

1.3 Lösungsbegriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

1.4 Literatur und Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

1.5 Ergänzende Grundlagen und Bezeichnungen . . . . . . . . . . . . . . . . . 9<br />

1.5.1 Topologische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . 9<br />

1.5.2 Differenzierbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

1.5.3 Verwendung der Symbole O und O . . . . . . . . . . . . . . . . . . 12<br />

1.5.4 Verwendete Normen . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />

1.5.5 Konvergenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />

I Freie nichtlineare <strong>Optimierung</strong> 16<br />

2 Theoretische Grundlagen 18<br />

2.1 Existenz von Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />

2.2 Notwendige und hinreichende Bedingungen . . . . . . . . . . . . . . . . . . 18<br />

3 Ein grundlegender Modellalgorithmus 22<br />

3.1 Der Liniensuchalgorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br />

3.2 Abstiegsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />

3.3 Algorithmen zur Liniensuche . . . . . . . . . . . . . . . . . . . . . . . . . . 26<br />

4 Das Verfahren des steilsten Abstiegs 30<br />

102


5 Newtonähnliche Verfahren 32<br />

5.1 Das Newtonverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />

5.1.1 Lokale Konvergenzeigenschaften . . . . . . . . . . . . . . . . . . . . 32<br />

5.1.2 Die modifizierte Choleskyzerlegung . . . . . . . . . . . . . . . . . . 33<br />

5.1.3 Trust–Region–Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 36<br />

5.1.4 Levenberg–Marquardt–Methode . . . . . . . . . . . . . . . . . . . . 39<br />

5.2 Quasi–Newtonverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40<br />

5.2.1 Konvergenzgeschwindigkeit . . . . . . . . . . . . . . . . . . . . . . . 45<br />

5.2.2 Globale Konvergenzeigenschaften . . . . . . . . . . . . . . . . . . . 45<br />

5.2.3 Limited Memory Quasi–Newton Verfahren . . . . . . . . . . . . . . 46<br />

6 Die Methode der konjugierten Gradienten 48<br />

6.1 <strong>Quadratische</strong> Probleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br />

6.2 Nichtlineare Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53<br />

6.2.1 ”Truncated” Newton–Methode . . . . . . . . . . . . . . . . . . . . 53<br />

6.2.2 Nichtlineares CG–Verfahren . . . . . . . . . . . . . . . . . . . . . . 53<br />

7 Praktische Hinweise 55<br />

7.1 Skalierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55<br />

7.2 Abbruchkriterien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56<br />

II Nichtlineare <strong>Optimierung</strong> mit Nebenbedingungen 60<br />

8 Theoretische Grundlagen 61<br />

8.1 Tangentialkegel, Kegel der Abstiegsrichtungen . . . . . . . . . . . . . . . . 61<br />

8.2 Theorie der linearen <strong>Optimierung</strong> . . . . . . . . . . . . . . . . . . . . . . . 64<br />

8.3 Die Kuhn-Tucker Bedingungen . . . . . . . . . . . . . . . . . . . . . . . . . 70<br />

9 <strong>Quadratische</strong> <strong>Optimierung</strong> 77<br />

9.1 Gleichungsrestriktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77<br />

9.1.1 Lösung linearer Gleichungen . . . . . . . . . . . . . . . . . . . . . . 78<br />

9.1.2 Lösung von (QP’) mit der verallgemeinerten Eliminationsmethode . 80<br />

9.1.3 Lösen von (QP’) mit der Lagrange-Methode . . . . . . . . . . . . . 81<br />

9.2 Aktive–Indexmengen–Strategie zur Lösung<br />

von (QP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81<br />

9.2.1 Positiv definite quadratische <strong>Optimierung</strong> . . . . . . . . . . . . . . 82<br />

9.2.2 Allgemeine quadratische <strong>Optimierung</strong> . . . . . . . . . . . . . . . . 85<br />

9.3 Lösung von (QP) mit Inneren–Punkt–Methoden . . . . . . . . . . . . . . . 87<br />

9.3.1 Der zentrale Pfad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br />

9.3.2 Ein Prädiktor-Korrektor Algorithmus . . . . . . . . . . . . . . . . . 88<br />

103


10 Allgemeine <strong>Optimierung</strong>sprobleme 90<br />

10.1 Das Newtonverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90<br />

10.1.1 Gleichungsrestriktionen . . . . . . . . . . . . . . . . . . . . . . . . . 90<br />

10.1.2 Gleichungs– und Ungleichungsrestriktionen . . . . . . . . . . . . . . 92<br />

10.2 Allgemeine Strafmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . 93<br />

10.2.1 Straf– und Barrieremethoden . . . . . . . . . . . . . . . . . . . . . 93<br />

10.2.2 Exakte Straffunktionen . . . . . . . . . . . . . . . . . . . . . . . . . 94<br />

10.2.3 Multiplikator–Methode . . . . . . . . . . . . . . . . . . . . . . . . . 95<br />

10.3 Quasi–Newtonverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97<br />

Literaturverzeichnis 101<br />

104

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!