Kapitel 8
Penalty- und Augmented
Lagrangian-Verfahren
Ziel: uberfuhre Minimierung unter Nebenbedingungen in eine Minimierungsauf-
gabe ohne Nebenbedingungen
Techniken:
1. (quadratische) Strafverfahren: einfachste Klasse, typischerweise glatte un-
restringierte Minimierungsaufgabe, aber schlecht konditioniert, wenn der
Strafparameter→ ∞
2. exakte Strafverfahren: Strafparameter bleibt endlich. Allerdings: unrestrin-
gierte Aufgabe nicht C2. Genaue Wahl der Stafparameters nicht ganz klar.
3. augmented Lagrangian-Verfahren: s.u.
8.1 Quadratische Strafverfahren
Betrachte
Minimiere f unter den Nebenbedingungen hi(x) = 0, i = 1, . . . , p. (8.1)
Bemerkung 8.1:
Ungleichungsnebenbedinugungen gi(x) ≤ 0 konnen als Gleichungsnebenbedin-
gung
max{0, gi(x)} = 0
formuliert werden. Damit reicht es, (8.1) zu betrachten. Allerdings sind Funktio-
nen von der Form x 7→ max{0, gi(x)} typischerweise nicht besser als lipschitzste-
tig.
80
Das (quadratische) Strafverfahren besteht nun darin, die Funktion
Q(x;α) := f (x) +α
2
p∑
i=1
|hi(x)|2 (8.2)
fur gewahltes α > 0 zu minimieren.
Algorithmus 8.2:
[Penalty-Verfahren (SUMT= Sequential Unconstrained Minimization Technique)]
% input x0, α0 > 0, k := 0
while (Abbruchbed. nicht erfullt) do{
• Bestimme Minimierer xk ∈ Rn von Q(x;αk)
• if hi(xk) = 0 fur alle i: STOP
• wahle αk+1 > αk. Setze k := k + 1}
Algorithmus 8.2 konvergiert:
Satz 8.3:
Seien f , hi ∈ C(Rn;R) und αk → ∞. Sei die zulassige Menge nicht leer. Dann ist
jeder Haufungspunkt der von Alg. 8.2 erzeugen Folge eine Losung von (8.1).
Beweis: Man bemerke, daß die Existenz von (globalen) Minimierern von Q(·;α)
gefordert wird. Eigentlicher Beweis: Ubung. Siehe z.B. [NW06, Thm. 17.1], [GK01,
Satz 5.6]. 2
Alg. 8.2 ist idealisiert, da das globale Minimum xk in jedem Schritt gefunden wird.
Realistischer ist es anzunehmen, daß Alg. 8.2 fur eine Nullfolge (τk)k eine Folge
(xk)k erzeugt, die der Bedingung
‖∇Q(xk;αk)‖ ≤ τk (8.3)
genugt. Es gilt dann:
81
Satz 8.4:
Seien f , hi ∈ C1. Gelte τk → 0 und αk →∞. Sei (xk)k eine Folge, die (8.3) erfullt.
Sei x∗ Haufungspunkt von (xk)k. D.g.:
(i) Falls x∗ nicht zulassig ist, dann ist es ein Stationarpunkt von∑
i |hi(x)|2 (d.h.
Gradient verschwindet).
(ii) Falls die ∇hi(x∗) l.u. sind, dann ist x∗ ein KKT-Punkt. Weiters ist fur jede
Teilfolge (xk′)k′ mit xk′ → x∗
limk′αk′hi(xk′) = µ∗i , i = 1, . . . , p, (8.4)
wobei µ∗i
die zum KKT-Punkt gehorigen Lagrangemultiplikationen sind.
Beweis: 1. Schritt: Aus
∇xQ(x;αk) = ∇ f (x) + αk
∑
i
hi(x)∇hi(x) (8.5)
folgt mit (8.3)
‖∑
i
hi(xk)∇hi(xk)‖ ≤ α−1k
[‖∇ f (xk)‖ + ‖Q(xk;αk)‖
]≤ α−1
k
[τk + ‖∇ f (xk)‖
].
Sei (xk′) TF mit xk′ → x∗. Dann folgt wegen αk → ∞ und τk → 0
0 =∑
i
hi(x∗)∇hi(x∗). (8.6)
Damit ist x∗ Stationarpunkt von x 7→∑
i |hi(x)|2.
2. Schritt: Seien die∇hi(x∗) l.u.. Dann impliziert (8.6), daß hi(x∗) = 0, i = 1, . . . , p,
d.h. x∗ ist zulassiger Punkt. Um zu zeigen, daß x∗ KKT-Punkt ist, zeigen wir, daß
die µ∗i
aus (8.4) existieren und die Bedingung
∇ f (x∗) +∑
i
µ∗i∇hi(x∗) = 0 (8.7)
erfullen. Definiere die Matrix
A(x)⊤ := (∇hi(x))i=1,...,p (8.8)
und den Vektor µk := αkh(xk), wobei h(x) = (h1(x), . . . , hp(x))⊤. Aus (8.5) folgt
A(xk)⊤µk= ∇xQ(xk;αk) − ∇ f (xk) ‖Q(xk;αk)‖ ≤ τk.
82
Fur xk hinreichend nahe bei x∗ hat nach Annahme A(xk)⊤ vollen Rang. Fur diese
k gilt dann
µk= (A(xk)A(xk)⊤)−1A(xk)
[∇xQ(xk;αk) − ∇ f (xk)
]
und damit
limk′µk′= µ∗ := −(A(x∗)A(x∗)⊤)−1A(x∗)∇ f (x∗).
Aus
∇ f (xk′) +∑
i
µk′
i︸︷︷︸→µ∗
i
∇hi(xk′) = ∇xQ(xk′ ;αk′)→ 0
folgt schließlich die gewunschte Beziehung
∇ f (x∗) + A(x∗)⊤µ∗ = 0.
2
Ein Nachteil von (quadratischen) Strafverfahren ist, daß die entstehenden Ma-
trizen schlecht konditioniert sind, wenn der Strafparameter αk groß ist (siehe
Ubung 8.5). Dies laßt langsame Konvergenz von Newtonartigen (oder CG-artigen)
Verfahren erwarten. Dies deshalb, weil Newtonartige Verfahren darauf basieren,
daß ein quadratisches Modell (der Lagrangefunktion) lokal eine gute Approxima-
tion ist. Dies wird durch den Strafparameter gestort.
Die folgende Ubung illustriert dies:
Ubung 8.5:
Sei n > p. Seien f , hi ∈ C2(Rn;R). Zeigen Sie: Mit der Matrix A(x) aus (8.8) ist
∇2xxQ(x;αk) = ∇
2 f (x) + αk
∑
i
hi(x)∇2hi(x) + αkA(x)⊤A(x).
Uberlegen Sie sich, daß fur x nahe x∗ aus den Aussagen von Satz 8.4 folgt, daß
∇2 f (x)+αk
∑i hi(x)∇2hi(x) eine gut konditionierte Matrix ist (unabhangig von k).
Uberlegen Sie sich, daß A(x)⊤A(x) eine Rang-p-Matrix ist.
8.2 Exakte Strafverfahren
Ziel: Strafverfahren, bei denen nicht αk →∞ notig ist. Weiters sollten Minimierer
des ursprunglichen Problems Minimierer des Straffunktionals sein.
Wir betrachten das allgemeine Problem
Min. f unter N.B. gi(x) ≤ 0, i = 1, . . . ,m, h j(x) = 0, j = 1, . . . , p.
(8.9)
83
Die zugehorige ℓ1-Straffunktion ist
Φ1(x;α) := f (x) + α
∑
i
[gi(x)]+ +∑
j
|h j(x)|
, (8.10)
wobei gi(x)+ := max{0, gi(x)} gesetzt wurde.
Bemerkung 8.6:
Offensichtliche Verallgemeinerungen sind die ℓq-Strafverfahren fur q ∈ [1,∞]:
Φq(x;α) := f (x) + α
(∑i max{0, gi(x)}q +
∑j |h j(x)|q
)1/qq ∈ [1,∞)
max{0, g1(x), . . . , gm(x), |h1(x)|, . . . , |hp(x)|} q = ∞.
Definition 8.7 (exakte Strafverfahren):
Ein Straffunktional Φ(·, ;α) heißt exakt in einem lokalen Minimum x∗ von (8.9),
wenn es ein α > 0 gibt, so daß fur alle α > α der Punkt x∗ auch ein (lokales)
Minimum von x 7→ Φ(x;α) ist.
Bemerkung 8.8:
Es wird in [GK01, Satz 5.10] gezeigt, daß wenn Φq exakt ist fur ein q ∈ [1,∞],
dann ist Φq fur jedes q ∈ [1,∞] exakt.
Das ℓ1-Strafverfahren ist zumeist exakt:
Satz 8.9:
Sei x∗ ein Minimierer von (8.9), an dem LICQ gilt. Seien λ∗i und µ∗i die zugehorigen
Lagrangemultiplikatoren. D.g.: x∗ ist ein Minimierer von Φ1(·, ;α) fur alle
α ≥ α := maxi, j{λ∗i , |µ
∗j |}
Beweis: Siehe [GK01, Satz 5.14], [NW06, Thm. 17.3]. Wir zeigen den Satz fur
den Fall eines konvexen Problems. Setze
L(x, λ, µ) := f (x) +∑
i
λigi(x) +∑
j
µ jh j(x).
84
Es gilt (Satz 5.24) die Sattelpunkteigenschaft
L(x∗, λ∗, µ∗) ≤ L(x, λ∗, µ∗) ∀x. (8.11)
Es ist:
Φ1(x∗;α) = f (x∗) + α
∑
i
max{0, gi(x∗)} +∑
j
|h j(x∗)|
x∗ zulassig= f (x∗)
KKT= f (x∗) +
∑
i
λ∗i gi(x∗)︸ ︷︷ ︸=0
+
∑
j
µ∗j h j(x∗)︸︷︷︸=0
= L(x∗, λ∗, µ∗)
Sattelpunkt
≤ L(x, λ∗, µ∗) = f (x) +∑
i
λ∗i︸︷︷︸≥0
gi(x) +∑
j
µ∗jh j(x)
≤ f (x) +∑
i
λ∗i max{0, gi(x)} +∑
j
|µ∗j ||h j(x)|
≤ f (x) + α∑
i
max{0, gi(x)} +∑
j
|h j(x)|
≤ f (x) + α∑
i
max{0, gi(x)} +∑
j
|h j(x)| = Φ1(x, α),
d.h. x∗ ist ein globales Minimum von Φ1(·;α). 2
Es gilt auch ein partielle Umkehrung von Satz 8.9. Obwohl x 7→ Φ1(x;α) nicht
differenzierbar ist, hat es doch Richtungsableitungen: fur jede Richtung p ∈ Rn \
{0} existiert
D(Φ1(x;α), p) := limt→0+
Φ1(x + tp;α) − Φ1(x;α)
t
Ubung 8.10:
Sei h ∈ C1(Rn;R) und p , 0. Dann ist die Richtungsableitung
D(|h(x)|, p) =
∇h(x) · p h(x) > 0
−∇h(x) · p h(x) < 0
|∇h(x) · p| h(x) = 0.
Rechnen Sie weiters nach: fur a, b gilt max{a, b} = 12
[(a + b) + |a − b|].
Definition 8.11 (Stationarpunkte von Φ1):
x ist ein Stationarpunkt von Φ1(·, ;α), falls
D(Φ1(x;α), p) ≥ 0 ∀p ∈ Rn \ {0}.
85
Satz 8.12:
Sei x ein Stationarpunkt von Φ1(·;α). D.g.: Falls x ein zulassiger Punkt ist, dann
existieren Lagrangemultiplikatoren, so daß die KKT-Bedingungen gelten.
Beweis: Sei A(x) die Menge der Indizes der aktiven Ungleichungen. Fur jedes
p ∈ Rn \ {0} ist, weil x zulassig ist,
D(Φ1(x;α), p) = ∇ f (x) · p + α∑
i∈A(x)
(∇gi(x) · p)+ + α∑
j
|∇h j(x) · p|
Fur d ∈ Tlin(x) ist∑
j
|∇h j(x) · d| +∑
i∈A(x)
(∇gi(x) · d)+ = 0.
Damit folgt aus der Bedingung D(Φ1(x;α), d) ≥ 0, daß
∇ f (x) · d ≥ 0 ∀d ∈ Tlin(x).
Genau wie im Beweis von Satz 5.14 folgt dann mittels des Farkas-Lemmas die
Existenz von Lagrangemultiplikatoren. 2
Die Funktion Φ1 ist nicht differenzierbar. Das ist typisch fur exakte Penaltyfunk-
tionen:
Satz 8.13:
Betrachte ein Optimierungsproblem der Form
Φ(x;α) := f (x) + αr(x),
wobei r mit der zulassige Menge X die Bedingungen
r(x) ≥ 0 ∀x ∈ Rn,
r(x) = 0⇐⇒ x ∈ X
erfullt. D.g.: Sei x∗ ein lokales Minimum des Optimierungsproblems min{ f (x) | x ∈
X} und ∇ f (x∗) , 0. Sei Φ exakt bei x∗. Dann ist r nicht bei x∗ differenzierbar.
Beweis: Annahme: r ist bei x∗ differenzierbar. Weil Φ als exakt angenommen
wird, gilt fur α1 , α2 hinreichend groß, daß x∗ Stationarpunkt von Φ(·;α1) und
Φ(·;α2) ist. Damit:
∇ f (x∗) + α1∇r(x∗) = ∇xΦ(x∗;α1) = 0 = ∇xΦ(x∗;α2)∇ f (x∗) + α2∇r(x∗).
86
Wegen α1 , α2 folgt ∇r(x∗) = 0 und damit ∇ f (x∗) = 0, was im Widerspruch zur
Voraussetzung ist. 2
8.3 Merit functions, Filter, Maratos-Effekt
Penaltyfunktionen spielen auch eine wichtige Rolle bei der Definition von Ab-
bruchkriterien und Globalisierungsstrategien. Bei unrestringierten Optimierungs-
aufgaben wurde oft die Schrittweite so gewahlt, daß ein “hinreichender” Abstieg
fur das “naturliche” Zielfunktional f erzielt wird. Bei restringierten Minimie-
rungsaufgabe kann diese Aufgabe eine Straffunktion ubernehmen, z.B.
Φ1(x, α) = f (x) + α
∑
i
[gi(x)]+ +∑
j
|h j(x)|
,
wobei der Parameter α fest, aber hinreichend groß gewahlt ist. Man beachte, daß
Φ1 eine exakte Straffunktion ist (Satz 8.9), so daß die gesuchte Losung tatsachlich
beim Minimum von Φ1 ist.
Etwas verbluffend ist der sog. Maratos-Effekt: Es kann passieren, daß die Forde-
rung nach Abstieg fur eine Bewertungsfunktion schnelle (quadratische oder su-
perlineare) Konvergenz verhindet.
Beispiel 8.14:
Betrachte
minimiere f (x1, x2) := 2(x21 + x2
2 − 1) − x1 unter der N.B. x21 + x2
2 − 1 = 0
Die Losung ist x∗ = (1, 0)⊤ mit zugehorigem Lagrangemultiplikator µ = 3/2. Sei
xk= (cos θ, sin θ)⊤ (θ , 0). Der Punkt xk ist zulassig. Betrachte einen Algorith-
mus, der eine Schritt
pk=
(sin2 θ
− sin θ cos θ
)
vorschlagt, welcher auf
xk+1= xk+ pk
=
(cos θ + sin2 θ
sin θ(1 − cos θ)
),
fuhrt (Skizze with in [NW06, p. 441] pk ist Tangential an der constraint). Man
rechnet nach:
‖xk+1 − x∗‖2 = 2 sin2(θ/2), ‖xk − x∗‖2 = 2| sin θ/2|,
87
so daß‖xk+1 − x∗‖2
‖xk − x∗‖22
=1
2,
d.h. quadratische Konvergenz. Jedoch:
f (xk+1) = sin2 θ − cos θ > − cos θ = f (xk)
h(xk+1) = sin2 θ > h(xk) = 0.
Somit wurde dieser Schritt von Φ1 abgelehnt, weil sowohl f als auch h vergroßert
werden. Man beachte, daß dies kein “praasymptotisches” Verhalten ist: Fur jedes
(kleine) θ > 0 wurde es zur Ablehnung kommen.
Bemerkung 8.15:
Anstelle von Bewertungsfunktionen kann man auch mit Filtern arbeiten, um zu
bewerten, ob hinreichend viel Abstieg gemacht wurden. Siehe [NW06, Sec. 15.4]
fur Details.
8.4 Augmented Lagragian
8.4.1 Gleichungsrestringierte Probleme
Ziel: Unrestringierte Minimierungen mit glatten Funktionalen, bei denen der Straf-
parameter nicht gegen∞.
Wir betrachten wieder die Minimierungsaufgabe (8.1). Nach Satz 8.4 kann man
fur die Iterierten xk die Beziehung h j(xk) ≈ µ∗j/αk erwarten. Um die Zulassigkeits-
bedingung h j(x∗) = 0 zu erfullen muß deshalb αk → ∞. Um nicht αk → ∞wahlen
zu mussen, fuhren wir die augmentierte Lagrangefunktion
LA(x, µ;α) := f (x) +
p∑
j=1
µ jh j(x) +1
2α
p∑
j=1
|h j(x)|2 (8.12)
ein. Die Funktion ist so glatt wie f und h j es zulassen.
Alg. 8.16 unten wird fur festes µk ein Minimierer xk+1 von LA(·, µk;α) gesucht
und anschließend µk zu µk+1 aufdatiert. Um die Updateformel fur µ zu motivieren
betrachten wir die Minimierung von LA(·, µk;α):
0!= ∇xLA(xk+1, µk;α) = ∇ f (xk+1) +
∑
j
µkj∇h j(xk+1) + α
∑
j
h j(xk+1)∇h j(xk+1)
88
In einem KKT-Punkt x∗ des ursprunglichen Problems mit Lagrangemultiplikator
µ∗ gilt
0 = ∇xL(x∗, µ∗) = ∇ f (x∗) +∑
j
µ∗j∇h j(x∗)
Nimmt man xk+1 ≈ x∗ an, so erkennt man, daß µkj+ α∇h j(xk+1) ≈ µ∗
jsein sollte.
Das motiviert die “Hestenes-Powell”-Updateformel
µk+1j := µk
j + αh j(xk+1). (8.13)
Wir erhalten
Algorithmus 8.16 (augmented Lagrangian method—equality constraints):
% input µ0, τ0 > 0, x0s
for k = 0, 1, . . . , do{
• Mittels Startwert xks bestimme (approximativen) Minimierer von LA(·, µk;αk)
s.d. ‖∇xLA(xk, µk;αk)‖ ≤ τk
• if (xk erfullt Abbruchbedingung) stop.
• Definiere µk+1 mittels (8.13)
• wahle Penaltyparameter αk+1 ≥ αk.
• wahle Startpunkt xk+1s .
• wahle τk+1
}
Das folgende Resultat untermauert, warum Alg. 8.16 auch fur vergleichsweise
kleine Werte von αk funktionieren sollte:
Satz 8.17:
Sei (x∗, µ∗) KKT-Punkt von (8.1). Es sei ∇2xL(x∗, µ∗) positiv definit1 auf {d | ∇h j(x∗)·
d = 0, j = 1, . . . , p}. Dann existiert ein α > 0, so daß x∗ fur jedes α ≥ α ein
striktes lokales Minimum von x 7→ LA(x, µ∗;α) ist.
1diese Bedingung ist in der Lit. bekannt als “sufficicient second order condition”
89
Beweis: Wir zeigen: fur α ≥ α gilt:
∇xLA(x∗, µ∗;α) = 0 und ∇2xxLA(x∗, µ∗;α) ist positiv definit. (8.14)
1. Schritt: Aus der KKT-Bedingungen, welche am Punkt (x∗, µ∗) erfullt sind, folgt,
weil x∗ zulassig ist,
∇xLA(x∗, µ∗;α) = ∇ f (x∗) +∑
j
(µ∗j + α h j(x∗)︸︷︷︸=0
)∇h j(x∗) = ∇xL(x∗, µ∗)KKT= 0
2. Schritt: Mit der ublichen Langrangefunktion L ist
∇2xxLA(x, µ;α) = ∇2
xxL(x, µ) + α
∑
j
h j(x)∇2h j(x) + ∇h j(x)∇h j(x)⊤
Mit der Matrix A = (∇h1(x∗), . . . ,∇hp(x∗))⊤ ergibt sich
∇2xxLA(x∗, µ∗;α) = ∇2
xxL(x∗, µ∗) + αA⊤A
Falls ∇2xxLA(x∗, µ∗;α) nicht positiv definit ware fur hinreichend große α, dann gabe
es eine Folge (wk)k mit ‖wk‖ = 1 und
0 ≥ wk · ∇2xxLA(x∗, µ∗; k)wk
= wk · ∇2xxL(x∗, µ∗)wk
+ k‖Awk‖2. (8.15)
Damit
‖Awk‖2 ≤ −1
kwk · ∇2
xxL(x∗, µ∗)wk → 0 fur k → ∞.
Weil die Einheitskugel kompakt ist, konvergiert also eine TF wk′ → w mit ‖w‖ = 1
und Aw = 0. Aus (8.15) schließen wir ebenfalls
0 ≥ −k′‖Awk′‖2 ≥ wk′ · ∇2xxL(x∗, µ∗)wk′ → w · ∇2
xxL(x∗, µ∗)w.
Dies zusammen mit Aw = 0 widerspricht der positiven Definitheitsannahme an
∇2xxL(x∗, µ∗). 2
8.4.2 UngleichungsnebenbedingungenBemerkung 8.18:
Wir folgen [GK01, Abschnitt 5.4.2]—alternative Zugange finden sich [NW06, Sec. 17.4].
Wir schreiben das Minimierungsproblem (8.9) als
Min. f unter N.B. h j(x) = 0, j = 1, . . . , p, gi(x)+s2i = 0 i = 1, . . . ,m.
(8.16)
90
Die zugehorige Augmented Lagrangian Funktion ist
LA(x, s, µ, λ;α) = f (x)+µ⊤h(x)+1
2α‖h(x)‖2+
m∑
i=1
λi(gi(x)+s2i )+
1
2α∑
i
(gi(x)+s2i )2
Das Vorgehen bei Gleichheitsbedingungen ist, die Funktion LA bei festem µ, λ zu
minimieren. Es stellt sich heraus, daß fur festes x die Minimierung bzgl. s explizit
moglich ist: Minimierung von
s 7→ LA(x, s, µ, λ)
ist aquivalent dazu, fur jedes i
si 7→ λi(gi(x) + s2i ) +
1
2α∑
i
(gi(x) + s2i )2
zu minimieren. Die quadratrische Funktion
z 7→ λi(gi(x) + z) +1
2α∑
i
(gi(x) + z)2
ist konvex. Der Minimierer (Bild!) unter der NB z ≥ 0 ist
z∗i := max
{0,−λi
α+ gi(x)
},
was auf
s∗i =
(max
{0,−λi
α+ gi(x)
})1/2
fuhrt. Setzt man diese s∗i in LA(x, s, µ, λ;α) ein, so ergibt sich
LA(x, µ, λ;α) := LA(x, s∗, µ, λ;α)
= f (x) + µ⊤h(x) +1
2α‖h(x)‖2
+
∑
i
λi
(gi(x) +max{0,−
λi
α+ gi(x)}
)+
1
2α∑
i
(gi(x) +max{0,−
λi
α+ gi(x)}
)2
= · · · = f (x) + µ⊤h(x) +1
2α‖h(x)‖2 +
1
2α
∑
i
(max{0, λi + αgi(x)})2− λ2
i
Dies ist die augmented Lagrangefunktion, die man in Algorithmus 8.16 verwen-
den wird. Die Aufdatierungsformeln werden durch Vergleich von ∇xL mit ∇xLA
motiviert:
µk+1 := µk+ αh(xk)
λk+1i := max{0, λk
i + αgi(xk+1)}, i = 1, . . . ,m.
91
Kapitel 9
Quadratische Programme
Betrachte:
Min. f (x) :=1
2x⊤Qx + c⊤x unter N.B. (9.1a)
b⊤j x = β j, j = 1, . . . , p, (9.1b)
a⊤i x ≤ αi, i = 1, . . . ,m. (9.1c)
fur eine symmetrische Matrix Q.
Bemerkung 9.1:
Quadratische Programme treten u.a. als Teilprobleme bei SQP auf.
Ubung 9.2:
Die KKT-Bedingungen sind:
Qx + A⊤λ + B⊤µ = −c (9.2a)
λ ≥ 0 (9.2b)
λ⊤(Ax − α) = 0, (9.2c)
Ax − α ≤ 0, (9.2d)
Bx − β = 0, (9.2e)
wobei
B =
b⊤1...
b⊤p
, A =
a⊤1...
a⊤m
(9.3)
92
einige Techniken:
1. nur Gleichheitsbedingungen: Lose KKT-Bedingungen
2. “aktive Mengen” Strategien
3. interior point methods
4. gradient projection methods (insb. wenn nur Box constraints vorliegen)
9.1 Techniken fur Gleichungsrestriktion
Im Fall, daß nur Gleichungsrestriktionen vorliegen, d.h. man (9.1a), (9.1b) be-
trachtet, versucht man, die KKT-Bedingungen zu losen, welche ein LGS (siehe
Ubung 9.3) sind. Bei kleinen Problemen direkt, bei großen Problemen iterativ.
Naheres: [NW06, 16.1–16.3].
Ubung 9.3:
Zeigen Sie: die KKT-Bedingungen fur das gleichungsrestringierte Optimierungs-
problem (9.1a), (9.1b) ist(
Q B⊤
B 0
) (x∗
µ∗
)=
(−c
β
), (9.4)
wobei B ∈ Rp×n gegeben ist durch (9.3).
Ubung 9.4:
Zeigen Sie, daß (9.4) eindeutig losbar ist, wenn Q positiv definit ist und B vollen
(Zeilen-)Rang hat (d.h. die Gradienten der NB sind l.u.).
9.2 Aktive Mengen Strategien
Beobachtung: falls die aktiven Indizes A(x∗) am KKT-Punkt bekannt sind, dann
ist (9.1) ein gleichungsrestringiertes Problem, welches gelost werden kann. Glei-
chungsrestriktionen sind einfacher handhabbar als Ungleichungsrestriktionen.
Idee: Erzeuge Folge von gleichungsrestringierten Problemen, wobei die Index-
mengenWk (“working set”) die Gleichungsnebenbedingungen darstellen.
wesentliche Bedingung: Die Vektoren ai, i ∈ Wk, b j, j = 1, . . . , p sind fur alle
(relevanten) k l.u.
Vorgehen:
93
1. geg. zulassiges xk undWk, so daß xk die NB aTi
xk= αi, i ∈ Wk erfullt.
2. Bestimme eine Suchrichtung ∆xk, indem ∆xk 7→ f (xk+∆xk) unter den Glei-
chungsnebenbedingungen b⊤j (xk+∆xk) = β j und aT
i (xk+∆xk) = αi, i ∈ Wk
minimiert wird. D.h.: ∆xk ist die Losung von:
Minimiere1
2zT Qz + g⊤k z, gk := Qxk
+ c (9.5a)
bTj z = 0 j = 1, . . . , p, (9.5b)
aTi z = 0 i ∈ Wk. (9.5c)
~ f (xk+ z) = 1
2zT Qz + gkz + f (xk) �
Als LGS:
Q A⊤Wk B⊤
AWk
B
∆xk
λWk
µ
=
−∇ f (xk)
0
0
(9.6)
Hier ist AWk = (a⊤i )i∈Wk und entsprechend λWk ein Vektor der Lange |Wk|.
3. Schrittlangenwahl: Falls ∆xk , 0 wahle tk ∈ [0, 1] moglichst groß, so daß
xk+1 := xk+ tk∆xk zulassig ist. ~ vergl. Ubung 9.5 �
Beobachtung, weil xk zulassig:
b⊤j (xk+ t∆xk) = β j ∀ j, ∀t ≥ 0
a⊤i (xk+ t∆xk) ≤ αi ∀t ≥ 0 ∀i ∈ Wk,
a⊤i (xk+ t∆xk) ≤ αi ∀t ≥ 0 ∀i <Wk s.d. a⊤
i∆xk ≤ 0.
Beschrankungen an tk ergeben sich also fur i <Wk mit a⊤i∆xk > 0. Wahle
tk moglichst groß:
tk := min
{1, min
i<Wk : a⊤i∆xk>0
αi − a⊤i ∆xk
a⊤i∆xk
}(9.7)
4. Die Indizes i, fur die das Minimum in (9.7) angenommen wird, heißen
blocking indices. ~ Beachte: tk = 0 ist moglich! �
5. Falls tk < 1, dann setze Wk+1 := Wk ∪ {r}, wobei r einer der blocking
indices ist.
6. Wiederhole Schritte 1-5, bis man einen Minimierer xk von
Minimiere f unter den N.B. (9.8a)
b⊤j xk= β j, j = 1, . . . , p, (9.8b)
a⊤i xk= αi, i ∈ Wk (9.8c)
94
gefunden hat. ~ das ist einfach zu prufen: ∆xk= 0, Ubung! �
7. Konstruiere Lagrangemultiplikatoren: Aus (9.6) und ∆xk= 0 ergibt sich mit
µk := µ
Qxk+ A⊤
WkλWk + B⊤µk= Qxk − ∇ f (xk) = −c,
AWk xk= αWk .
Setzt man also
λki :=
λWk,i i ∈ Wk
0 i <Wk(9.9)
so ergibt sich
Qxk+ A⊤λk
+ B⊤µk= −c,
λk · (Axk − α) = 0,
d.h. die KKT-Bedingungen (9.2a), (9.2c). Weil xk zulassig ist, gelten auch
(9.2d), (9.2e). Wir haben also eine Losung der KKT-Bedingung (9.2) mit
Ausnahme von (9.2b) gefunden. Falls λ ≥ 0, dann ist man fertig. Falls
λi < 0 fur (mindestens) ein i, dann wahlt man ein neues Wk+1. Genauer:
Wk+1 :=Wk \ {i}, wobei i ∈ Wk s.d. λi ≤ λ j fur alle j ∈ Wk.
Beginne bei 1.
Ubung 9.5:
Sei Q positiv definit. Zeigen Sie: Mit der Wahl ∆xk im 2. Schritt ist t 7→ f (xk+
t∆xk) auf [0, 1] monoton fallend. Deshalb will man tk moglichst groß wahlen.
Algorithmus 9.6 (active set strategy for quadratic programs):
bestimme einen zulassigen Startpunkt x0
W0 := A(x0)
for k = 0, 1, . . . , do {
Bestimme Losung ∆xk von (9.5)
if ∆xk= 0 then
bestimme Lagrangemultiplikatoren λ, µ mittels (9.6), (9.9)
if λ ≥ 0 then stop ~ gesuchte Losung ist xk �
else
bestimme i mit λi ≤ λ j fur alle j
xk+1 := xk;Wk+1 :=Wk \ {i}
95
end(if)
else
bestimme tk mittels (9.7)
xk+1 := xk+ tk∆xk
if (∃i ∈ Menge der blocking indices) thenWk+1 :=Wk ∪ {i}
end(if)
end(for)
Bemerkung 9.7: • Die Bestimmung eines zulassigen Startpunktes erfordert ei-
gene Algorithmen. z.B. wie bei der Bestimmung des Startvektors beim Sim-
plexalg. Siehe Literatur.
• Die Wahl des “leaving index” i durch λi ≤ λ j fur alle j ist keineswegs
zwingend. Man erhofft damit großtmoglichen Abstieg. Allerdings hangt die
Große der λ j von der Skalierung der N.B. ab.
Damit Alg. 9.6 funktionieren kann, sollten 2 Dinge sichergestellt sein: a) die Vek-
toren {ai, b j | i ∈ Wk, j = 1, . . . , p} sollten l.u. sein (fur Losbarkeit von (9.6))
und Abstieg von f sollte moglich sein:
Satz 9.8: (i) Sei Q SPD und die Vektoren ai, i ∈ Wk, b j, j = 1, . . . , p l.u. D.g.:
das LGS (9.6) ist eindeutig losbar.
(ii) Sind die Vektoren ai, i ∈ Wk, b j, j = 1, . . . , p l.u. und Alg. 9.6 bricht nicht
ab, dann sind die neuen Vektoren ai, i ∈ Wk+1, b j, j = 1, . . . , p ebenfalls l.u.
(iii) Sei Q SPD. Falls ∆xk , 0 so ist ∇ f (xk) · ∆xk < 0, d.h. ∆xk ist Abstiegsrich-
tung.
Beweis: ad (i): Ubung.
ad (ii): Es konnen zwei Falle auftreten: Wk+1 ⊂ Wk und Wk+1 ⊃ Wk. Fur
Wk+1 ⊂ Wk ist die Aussage klar. Der Fall Wk+1 ⊃ Wk tritt in Alg. 9.6 nur
auf, wenn ein blocking index r zugefugt wird. Es gilt a⊤r ∆xk > 0. Annahme: Die
Vektoren ar, ai, i ∈ Wk, b j sind l.a. Dann gibt es γi, δ j mit
ar =
∑
i∈Wk
γiai +
∑
j
δ jb j
96
woraus folgt
a⊤r ∆xk=
∑
i∈Wk
γi a⊤i ∆xk
︸︷︷︸=0wg. (9.6)
+
∑
j
δ j b⊤j ∆xk
︸︷︷︸=0wg. (9.6)
= 0,
was den gewunschten Widerspruch erzeugt.
ad (iii): Aus (9.6) folgt
−∆xk · ∇ f (xk) = ∆xk ·(Q∆xk
+ A⊤WkλWk + B⊤µ
)
= ∆xk · Q∆xk
︸ ︷︷ ︸>0 wg. ∆xk , 0
+∆xk · A⊤WkλWk︸ ︷︷ ︸
=0 wg. (9.6)
+∆xk · B⊤µ︸ ︷︷ ︸=0 wg. (9.6)
2
Bemerkung 9.9:
Satz 9.8 garantiert nicht, daß Alg. 9.6 abbricht. Z.B. sind Zyklen moglich, bei
denen dieselben Indizes entfernt und zugefugt werden.
9.3 Interior Point Methods
siehe Literatur
9.4 Gradient Projection Methods
Ausgangspunkt: Aktive Mengen Strategien verandern die Menge Wk nur sehr
langsam (typischerweise nur einen Index pro Iteration!)→ Falls die gesuchte ak-
tive Menge A(x∗) groß ist und man keinen guten Startwert hat, muß man mit
langsamer Konvergenz rechnen.
Gradient Projection Methods funktionieren am besten, wenn keine Gleichungs-
nebenbedingungen vorliegen und die Projektion auf die zulassige Menge einfach
ist.
Betrachte:
Minimiere f (x) =1
2x⊤Qx + c⊤x unter N.B. (9.10a)
l ≤ x ≤ u, (9.10b)
wobei l und u ∈ Rn und Q symmetrisch ist.
97
Bemerkung 9.10:
Nebenbedingungen von der Form (9.10b) heißen box constraints.
9.4.1 Gradient Projection Methods im allgemeinen Fall
Sei X , ∅ eine abgeschlossene, konvexe Menge. Betrachte die Minimierungsauf-
gabe
Minimiere f unter N.B. x ∈ X. (9.11)
Wir benotigen die Projektion PX auf die zulassige Menge:
Ubung 9.11:
Zeigen Sie: Fur jedes x ∈ Rn existiert ein eindeutiges PXx ∈ X mit ‖x − PXx‖ℓ2 ≤
‖x − y‖ℓ2 ∀y ∈ X (cf. [GK01, Sec. 2.1.3]).
Fur die Minimierung von f gilt (vgl. Satz 5.5):
Lemma 9.12: (i) Sei x∗ ein lokales Minimum von (9.11). D.g.:
∇ f (x∗) · (x − x∗) ≥ 0 ∀x ∈ X (9.12)
(ii) Ist f konvex und gilt ∇ f (x∗) · (x − x∗) ≥ 0 ∀x ∈ X, so ist x∗ ein lokales =
globales Minimum von (9.11).
Beweis: ad (i): Annahme, es gibt x ∈ X mit ∇ f (x∗) · (x − x∗) < 0. Dann ist
d := x−x∗ Abstiegsrichtung und f (x∗+td) < f (x∗) fur alle t > 0 hinreichend klein.
Wegen Konvexitat von X ist x∗+ td ∈ X. Das widerspricht der Voraussetzung, daß
x∗ lokales Minimum ist.
ad (ii): Ubung. Verwende Ubung 5.23. 2
Ubung 9.13:
Zeigen Sie mittels Lemma 9.12:
x∗ = PXx ⇐⇒ (x∗ − x, y − x∗)2 ≥ 0 ∀y ∈ X.
98
Der folgende Satz zeigt, daß im Fall von konvexem f der gesuchte Minimierer x∗
von (9.11) einer Fixpunktgleichung genugt.
Satz 9.14:
Sei f ∈ C1(Rn;R), X , ∅ abgeschlossen, konvex. Sei t > 0. D.g.:
∇ f (x∗) · (x − x∗) ≥ 0 ∀x ∈ X ⇐⇒ x∗ = PX(x∗ − t∇ f (x∗))
Beweis:
x∗ = PX(x∗ − t∇ f (x∗))Ub. 9.13⇐⇒ (x∗ − (x∗ − t∇ f (x∗)), x − x∗)2 ≥ 0 ∀x ∈ X
⇐⇒ t∇ f (x∗) · (x − x∗) ≥ 0 ∀x ∈ X
⇐⇒ ∇ f (x∗) · (x − x∗) ≥ 0 ∀x ∈ X
2
Eine Verallgemeinerung des klassischen Gradientenverfahren ist der Algorith-
mus 9.15 unten. Hierzu definieren wir die Kurve t 7→ xk(t) fur t > 0 durch
xk(t) = PX(xk − t∇ f (xk)), (9.13)
d.h. die Projektion der Geraden des steilsten Abstiegs auf die zulassige Menge.
Der folgende Algorithmus wahlt nun einen Schritt ∆t so, daß hinreichend viel
Abstieg fur die Funktion t 7→ f (x(t)) erzielt wird:
Algorithmus 9.15:
% Wahle x0 ∈ X, β ∈ (0, 1), σ ∈ (0, 1)
for k = 0, 1, . . . , do {
bestimme Schrittweite tk = max{βℓ | ℓ = 0, 1, . . . , } mit
f (xk(tk)) ≤ f (xk) − σ∇ f (xk) · (xk − xk(tk))
setze xk+1 := xk(tk)
}
Im unrestringierten Fall ist Alg. 9.15 gerade das Gradientenverfahren mit der Ar-
mijoregel. Dies zeigt insbesondere, daß wir im allgemeinen mit relativ langsamer
Konvergenz rechnen mussen. Wenn f und die Nebenbedinungen Struktur haben,
99
kann der Algorithmus verfeinert werden. Man kann die Iteration xk+1= xk(tk) als
Fixpunktiteration verstehen, wobei tk in jedem Schritt geeignet gewahlt wird.
Jede Auswertung von xk(t) erfordert die Auswertung von PX. Fur spezielle zulassig
Mengen wie den box constraints ist PX einfach berechenbar:
Ubung 9.16:
Sei die zulassige Menge X gegeben durch (9.10b). Dann gilt:
PX(x)i :=
li falls xi < li
xi falls li < xi < ui
ui falls xi > ui.
(9.14)
9.4.2 Gradient Projection Methods im quadratischen Fall
Im quadratischen Fall (9.10) mit box constraints besteht ein Schritt einer Gradient
Projection Method besteht aus 2 Teilschritten:
1. zu xk wird das Minimium von t 7→ f (xk(t)) explizit bestimmt. Der zugehori-
ge Punkt xc heißt Cauchypunkt. Das ist moglich, denn es handelt sich um
die Minimierung eines stuckweise quadratischen Polynoms, und die “break
points” konnen bestimmt werden (Ubung; [NW06, Kapitel 16.7]).
2. Sei A(xc) die Menge der aktiven Indizes am Cauchypunkt xc. Der zweite
Teilschritt besteht im (approximativen) Losen von
Minimiere f unter N.B. (9.15a)
xi = xci ∀i ∈ A(xc) (9.15b)
li ≤ xi ≤ ui ∀i < A(xc). (9.15c)
Die Minimierung im 2. Teilschritt muß nicht exakt durchgefuhrt werden. Man
begnugt sich, ein zulassiges x+ zu finden mit f (x+) ≤ f (xc) (Extremfall: man
wahlt einfach xc). Im Fall von großen Systemen wird man einige (vorkonditio-
nerte) CG-Schritte machen. Beachte, daß ein CG-Verfahren unter Gleichungsne-
benbedingungen hier moglich ist, da die NB so einfach ist, daß der Kern explizit
bestimmt werden kann.
100
Top Related