Professional Documents
Culture Documents
Ninoslav Truhar
Zoran Tomljanovi
Metode optimizacije
Odjel za matematiku
Sveuilita Josipa Jurja Strossmayera
Osijek, 2012.
Sadraj
Sadraj
Uvod
.
.
.
.
5
5
6
12
15
Jednodimenzionalna minimizacija
3.1 Strogo kvazikonveksne funkcije . . . . . . . . . . . . . . . .
3.2 Metoda jednodimenzionalne minimizacije . . . . . . . . . .
19
19
22
34
36
41
49
78
79
82
88
92
92
95
96
Literatura
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
99
POGLAVLJE
Uvod
Ovaj tekst je prvenstveno namijenjen studentima Odjela za matematiku
Sveuilita J. J. Strossmayera u Osijeku za potrebe predmeta Metode optimizacije algebra M028 koji se slua u 4. semestru diplomskog studija.
Namjena mu je upoznati studente s glavnim metodama jednodimenzionalne i viedimenzionalne minimizacije sa i bez ogranienja. Posebna je
pozornost posveena metodama minimizacije nediferencijablinih funkcija. Pri tome se izbjegavalo strogo dokazivanje teorema, osim u sluajevima konstruktivnih dokaza koji sami po sebi upuuju na izgradnju ideja
ili metoda.
Pretpostavimo da je zadana funkcija f : D R, D Rn , koja na
skupu D postie svoj infimum. U okviru ovog teksta promatramo sljedee
probleme:
1. Odrediti f ? = inf f ( x );
xD
lim f ( xn ) = f ? .
no
Uvod
Primijetite takoer da je dovoljno razmatrati problem traenja lokalnog, odnosno globalnog minimuma neke funkcije f : D R, jer vrijedi
argmin f ( x ) = argmax( f ( x )).
xD
xD
Navedeni optimizacijski problemi imaju veliku primjenu u raznim dijelovima ivota. Samo kao ilustraciju navest emo nekoliko disciplina
u kojima se pojavljuju takvi problemi. Na primjer, problem oblikovanja odreenih mehanikih objekata (oblikovanje dijelova automobilskih
motora, stupova za dalekovode ili metalnih konstrukcija u visokogradnji,
itd.) se moe svesti na optimizacijski problem koji nazivamo optimizacija
oblikovanja ili engleski design optimization.
Kao drugi primjer bi mogli navesti ekonomiju koja ukljuuje tradicionalne optimizacijske teorije, ali takoer i neke aspekte teorije igara te
prouavanje ekonomskih ravnotenih stanja. Od 70-ih godina prolog
stoljea, ekonomisti su za modeliranje trita ili drugih ekonomskih pojmova poeli koristiti teoriju kontrole koja opisuje ponaanje dinamikih
sustava. Na primjer, u mikroekonomiji se u svrhu modeliranja ponaanja
trita rada koristite modeli dinamikog pretraivanja. Jo jedan primjer
upotrebe optimizacijskih metoda se moe nai u okviru operaciskih istraivanja.
Iako smo na poetku uvoda naveli da je ovaj tekst namjenjen studentima Odjela za matematiku Sveuilita J. J. Strossmayera u Osijeku, upravo
injenica da se razni problemi optimizicije pojavljuju u velikom broju u
raznim dijelovima ljudske dijelatnosti osigurava ovom tekstu iru primjenu.
Knjiga se satoji od est poglavlja kojima su poredana na sljedei nain.
U poglavlju 1. Konveksni skupovi i konveksne funkcije, obrauju se osnvni pojmovi vezani za konveksne skupove i funkcije, lokalni minimumi
i openito problemi ekstrema. U 2. poglavlju Jednodimenzionalna minimizacija prouavaju se metode jednodimenzionalne minimizacije kao
to su metoda polovljenja, metoda zlatnog reza, metoda parabole, Brentova i Newtonova metoda. U poglavlju 3. Problemi viedimenzionalne
minimizacije, prouavaju se neke od metoda viedimenzionalne minimizacije, npr. metode izbora duljine koraka, metoda najbreg spusta, te se
posebna panja posveuje izboru sjerova optimizacije. Stoga se posebno
proava princip H. CurryM. Altman, aproksimativna minimizacija i traenje nultoaka te princip A. Goldsteina. Nadalje u okviru ovog poglavlja
se prouavaju gradijentna i metoda najbreg spusta, a posljednja cijelina
44 je posveena viedimenzionalnoj minimizaciji pomou Newtonove metode. Poglavlje 5. je posveeno problemu uvjetne minimizacije u okviru
koga se bavi nunim i dovoljnim uvjetima za optimalnost, gradijentnom i
Uvod
Newtonovom metodom s projekcijom. U poglavlju 6. prouavaju se neke
osnovne metode direktnog traenja kao Nelder-Mead i MDS algoritam te
Powellova metoda u vie dimenzija.
POGLAVLJE
Konveksni skupovi i
konveksne funkcije
Konveksnost igra vrlo znaajnu ulogu pri numerikoj optimizaciji. Stoga
emo zapoeti ovaj tekst prouavanjem pojma konveksnosti skupova.
2.1
Konveksni skupovi
[0, 1].
( x1 , . . . , x n D )
1 En.:
1 , . . . , n 0,
i = 1
i =1
i xi D;
i =1
convex hull
Skup svih konveksnih kombinacija nekog skupa D Rn je konveksna ljuska tog skupa.
Definicija 2. Kaemo da je skup D Rn strogo konveksan ako
x1 , x2 D,
x1 6= x2 x1 + (1 ) x2 Int D
(0, 1).
a) D ( x0 , r ) = { x Rn : | x x0 | r }
b) ( a, l ) = { x Rn : ( a, x ) = l }
(zatvorena kugla)
(hiperravnina)
c) D = {( x, y, z) R3 : x + y 1, 2x + 3y 2z < 5}
d) D = {( x, y) R2 : y | x2 x 6| > 2}
Zadatak 3: Neka je f : Rn Rm afina funkcija f ( x ) = Ax + b, A
Rmn , b Rm i D konveksan skup. Pokaite da je tada i f ( D ) Rm
takoer konveksan skup.
2.2
Konveksne funkcije
(2.1)
x, y Rn i [0, 1].
Primjer 1:
3]:
7
n
konveksna funkcija;
ako je f konveksna na Rn , neopadajua i konveksna na R, onda je
f konveksna na Rn ;
ako su f 1 , . . . , f n konveksne funkcije, onda je sup f i ( x ) konveksna
i
funkcija;
Ako je f : D R R konveksna funkcija na konveksnom skupu
D, onda je ona neprekidna na Int D
Definicija 5. Kaemo da je funkcija f : Rn R strogo konveksna ako x, y
Rn , x 6= y vrijedi
f (x + (1 )y) < f ( x ) + (1 ) f (y),
(0, 1).
(2.2)
(2.4)
x, y R , [0, 1].
n
1
2
i = 41 , dobivamo (2.3).
(2.5)
=
=
=
1
2 (A( x + (1 ) y ), x + (1 ) y )
2
2
1
2 (A x, x ) + 2 (1 )(A y, x ) + (1 ) (A y, y )
2
2
1
(A
x,
x
)
+
2
(
1
)(A
y,
x
)
+
(
1
)
(A
y,
y
)
2
f ( x ) + (1 ) f (y) + 12 (2 )(A x, x )+
2
1 , . . . , m 0,
i = 1 vrijedi
i =1
i xi
i =1
i f ( xi )
(Jensenova nejednakost).
i =1
i xi
i =1
i =1
i
i
1 za x1 , . . . , xm > 0.
a) f ( x1 , x2 ) = 4x12 5x22 ,
b) g( x1 , x2 , x3 ) = 8x12 16x1 x2 + 8x22 + 10x3 .
Rjeenje: funkcija g je konveksna dok funkcija f nije konveksna.
Zadatak 9:
Neka je f : D Rn R. Skup
P( f ) = {( x, ) Rn+1 : x D Rn , R, f ( x ) }
nazivo epigraf, a skup
Q( g) = {( x, ) Rn+1 : x D Rn , R, g( x ) }
hypograf funkcije f . Odredite epigraf i hipograf funkcije f : [0, 2 ] R,
f ( x ) = sin x + 2. Pokaite da za proizvoljnu funkciju f : D Rn R
vrijedi:
1. ako funkcija f je konveksna, onda je P( f ) konveksan skup;
2. ako je funkcija g je konkavna, onda je Q( g) konveksan skup;
3. ako je funkcija g je konkavna, onda je ( g) konveksna funkcija.
10
(2.7)
t 0
f (x)
x j
= j f ( x ).
)T
C1 ( D )
Derivaciju funkcije f
u toki x = ( x1 , . . . , xn D oznaavat
emo s
f (x)
f (x)
f 0 ( x ) = x1 , . . . , xn = (1 f ( x ), . . . , n f ( x )),
a gradijent funkcije f C1 ( D ) u toki x s
f ( x) = 5 f ( x) = f 0 ( x)T ,
a drugu derivaciju (Hessian) funkcije f C2 ( D ) u toki x s
2
f (x)
2 f ( x )
.
.
.
x1 xn
2
x12
f (x)
f 00 ( x ) = 52 f ( x ) =
=
...
...
xi x j .
2. . .
f (x)
2 f ( x )
xn x1 . . .
2 x
n
f ( x + h) f ( x ) = f ( x ) h +
00
1
2 ( f ( x ) h, h ) +
o ( h ),
p = 1,
(2.8)
p = 2,
(2.9)
x, y D. (2.10)
(0, 1).
11
f (y) f ( x ) ( f ( x ), (y x )) ,
( f (y) f ( x ), y x ) mky x k2
2 ]
za sve x, y D.
C1 ( D )
(2.11)
je jako konveksna
m
2 ky
x k2
za sve x, y D. (2.12)
f (y) f ( x ) ( f ( x ), (y x )) +
m
2 ky
x k2
za sve x, y D, (2.13)
m
2 ky
x k2
za sve x, y D. (2.14)
odnosno
f ( x ) f (y) ( f ( x ), ( x y))
Sada iz (2.12) i (2.14) slijedi
( f 00 ( x )y, y) mkyk2
C2 ( D )
za sve x D i za sve y Rn .
(2.15)
Dokaz. Budui da je f
jako konveksna, zamjenom y x + y iz
(2.13) slijedi da za sve x, y D vrijedi
f ( x + y) f ( x ) + ( f ( x ), y) +
2
m 2
2 kyk .
(2.16)
f ( x + y) = f ( x ) + ( f ( x ), y) + 12 2 ( f 00 ( x + y)y, y) ,
to zajedno sa (2.16) povlai (2.15).
Obrat tvrdnje teorema dokaite sami.
(0, 1) ,
2.3
12
Lokalni minimum
Razmatrat emo neke nune i dovoljne uvjete da (jako) konveksna funkcija postigne svoj lokalni, odnosno globalni minimum.
Definicija 8. Neka je f : D R, D Rn proizvoljna funkcija. Kaemo
da je x ? D toka lokalnog minimuma funkcije f na skupu D ako postoji
okolina O toke x ? , tako da je f ( x ) f ( x ? ) za sve x O D. Toku
x ? zovemo toka strogog lokalnog minimuma ako postoji okolina O toke x ? ,
tako da vrijedi f ( x ) > f ( x ? ) za sve x O D \{ x ? }. Toku x ? zovemo
tokom globalnog minimuma funkcije f ako je f ( x ) f ( x ? ) za sve x D.
Definicija 9. Kaemo da je x ? D Rn stacionarna toka funkcije f :
D R ako je f ( x ? ) = 0.
Lema 3. Da bi konveksna funkcija f C1 ( D ) postigla svoj infimum na konveksnom skupu D Rn u toki x ? D nuno je i dovoljno da bude:
( f ( x ? ), x x ? ) 0
za sve x D.
(2.17)
t [0, 1] .
( f ( x ? ), x x ? ) = lim+ 1t [ f ( x ? + t( x x ? )) f ( x ? )] 0.
t 0
13
x1 + x2
2
+ y f
x1 + x2
2
2
+ (1 ) f (y) (1 )
x1 +2 x2 y
,
14
t R.
(0, 1).
15
Zbog toga je
f ( x? + d) =
f ( x ? ) + 12 d T 2 f ( x ? )d 21 d T 2 f ( x ? ) 2 f ( x ? + d) d,
f ( x ? ) + 21 k2 f ( x ? ) 2 f ( x ? + d)k d T d
16
x
x
2y
+ y.
2.4
10
T0
-4
-2
16
(b) Funkcija f
20
100
15
75
10
50
5
-4
-2
25
0
-4
-2
1 3
2x
6x + 2 4
2
Dakle, minimizacija funkcije f je problem minimizacije glatke (viestruko derivabilne) funkcije jedne varijable (polinoma 6. stupnja), pa govorimo o problemu jednodimenzionalne minimizacije. Iz slike se moe uoiti
da ova funkcija ima tri lokalna minimuma od kojih je jedan ujedno i globalni minimum.
U sljedeem primjeru promatrat emo isti problem kao i u Primjeru 5,
ali kao mjeru udaljenosti koristit emo drugu razdaljinsku funkciju.
Primjer 6: Treba izraunati l1 udaljenost toke T0 = (3, 4) do kubine
parabole q( x ) = .5x3 6x + 2 (vidi Sliku 1).
l1 udaljenost toke T0 = ( x0 , y0 ) do neke toke T = ( x, f ( x )) na grafu
funkcije q zadana je s
d1 ( x ) = d1 ( T0 ( x0 , y0 ), T ( x, q( x )) = | x x0 | + |q( x ) y0 |,
pa je odreivanje l1 udaljenosti toke T0 do grafa funkcije q zadane na
intervalu [ a, b] problem odreivanja globalnog minimuma funkcije d1 na
segmentu [ a, b] (vidi Sliku 2.3). Dakle, i u ovom primjeru radi se takoer o
17
problemu jednodimenzionalne minimizacije, ali ovaj puta je minimizirajua funkcija nediferencijabilna (ima piceve). Takoer iz slike se moe
uoiti da ova funkcija ima tri lokalna minimuma od kojih je jedan ujedno
i globalni minimum.
20
15
10
5
-4
-2
2
1
8
6
4
2
0
-2
-1
2
1
0
-1
0
-1
-2
-2 -1.5 -1 -0.5 0 0.5 1
-2
1
b ect
F (b, c) =
1
2
(b ecx
i =1
y i )2 .
18
1.0
0.8
0.6
0.4
0.2
0.5
1.0
1.5
2.0
POGLAVLJE
Jednodimenzionalna
minimizacija
Zadana je funkcija f : [ a, b] R, koja na intervalu [ a, b] postie inf f ( x ).
x [ a,b]
2. Odrediti U = {u [ a, b] : f (u) = f ? }, tj skup svih toaka iz segmenta [ a, b] u kojima se postie minimum funkcije f .
3.1
Promatrat emo jedu vanu iroku klasu funkcija koje postiu svoj infimum na segmentu [ a, b]. Od tih funkcija nee se zahtijevati derivabilnost,
pa ak ni neprekidnost (vidi primjerice [20, 29]).
Definicija 10. Kaemo da je funkcija f : [ a, b] R strogo kvazikonveksna
na intervalu [ a, b] ako postie svoj infimum f ? = inf f ( x ) u nekoj toki
x?
x [ a,b]
20
x, y D,
[0, 1].
(3.1)
21
f 3 : [1, 2] R, f 3 ( x ) = ln x,
(
x2 ,
f 4 : [0, 2] R, f 4 ( x ) =
x,
f 2 : [ a, b] R, f 2 ( x ) = | x | + x + sign x,
x [0, 1]
x [1, 2]
(
| x |, x 6 = 0
je
1, x = 0
strogo
kvazikonveksna funkcija, dok funkcija g2 : [1, 1] R, g2 ( x ) =
(
| x |, x 6 = 0
nije strogo kvazikonveksna funkcija.
1,
x=0
( x 1) + 1, x 1
Primjer 11: Funkcija f : [0, 3] R, f ( x ) = 1,
1x2
x 2 + 1, x 2
je strogo kvazikonveksna funkcija, koja postie svoj infimum u svim tokama podintervala [1, 2].
Primjer 10:
Funkcija g1 : [1, 1] R,
g1 ( x ) =
F (c) =
|ect
i =1
yi | ?
22
3.5
3.0
2.5
2.0
1.5
1.0
0.5
0.30
0.25
0.20
0.15
0.10
0.05
0.2
0.4
0.6
0.8
1.0
0.2
0.4
0.6
0.8
1.0
F (c) =
|ect
i =1
3.2
yi | ?
Navest emo nekoliko najpoznatijih metoda jednodimenzionalne minimizacije i to najprije metode kod kojih nije potrebno poznavanje derivacije
minimizirajue funkcije (Metoda polovljenja, Metoda zlatnog reza, Metoda parabole i Breentova metoda), a nakon toga Newtonovu metodu koja
pretpostavlja dovoljnu glatkost minimizirajue funkcije.
Metoda polovljenja
Zadana je strogo kvazikonveksna funkcija f : [ a, b] R. Treba odrediti
toku x ? = argmin [ a, b] s tonou > 0. U nekoliko koraka opix [ a,b]
sat emo ovu vrlo popularnu metodu za koju nije potrebno poznavanje
derivacije funkcije.
Korak 1: Definirati:
x1 := 21 ( a + b) 2 ,
x2 := 12 ( a + b) + 2 , > 0;
(
[ a, x2 ], f ( x1 ) f ( x2 )
[ a1 , b1 ] :=
.
[ x1 , b ] , f ( x1 ) > f ( x2 )
Svojstva:
x1 x2
23
(b) f ( x1 ) > f ( x2 )
x1 x2
b1 a1 = 12 (b a) +
x1? := 12 ( a1 + b1 ),
| x ? x1? | 21 (b1 a1 ) =
1
(b
22
a) +
22
<
1
(b
22
a) + .
Korak 2: Definirati:
x3 := 21 ( a1 + b1 ) 2 ,
x4 := 12 ( a1 + b1 ) + 2 ,
(
[ a1 , x4 ],
[ a2 , b2 ] :=
[ x3 , b1 ] ,
> 0;
f ( x3 ) f ( x4 )
f ( x3 ) > f ( x4 )
Svojstva:
x ? [ a2 , b2 ],
b2 a2 = 12 (b1 a1 ) +
1
(b
22
x2? := 21 ( a2 + b2 ),
1
(b
23
a) + 34 <
a) + 12 <
1
(b
23
1
(b
22
a) + ,
a) +
1
(b
2k 1
a) + ,
k 2.
Definirati:
x2k1 := 21 ( ak1 + bk1 ) 2 ,
24
Svojstva:
bk ak = 12 (bk1 ak1 ) +
<
1
(b
2k
xk? := 12 ( ak + bk ),
1
(b
2k +1
a) +
a) +
<
1
(b
2k +1
a) + .
Metodu nazivamo Metoda polovljenja jer u svakom koraku interval dijelimo gotovo na dvije polovine im je manji time je dijeljenje intervala
blie raspolavljanju. Najbolja tonost koja se moe postii je > 0. Vie o
metodi vidi u [15, 20, 29].
Primjer 12: Metodu polovljenja ilustrirat
emo na primjeru minimizacije
p
funkcije f : [0, 1.5] R, f ( x ) = 1 + 3 ( x 1)2 . U ovom sluaju je x ? = 1.
Tijek iterativnog procesa prikazan je u Tablici 3.1 i na Slici 3.3.
k
xk
x k +1
xk?
| xk? x ? |
1
2
3
4
0.625
0.9375
0.7813
0.8594
0.875
1.1875
1.0313
1.1094
1.0625
0.9063
0.9844
1.0234
0.0625
0.0938
0.0156
0.0234
p
3
0.25 0.5
1 1.25 1.5
0.25 0.5
1 1.25 1.5
0.25 0.5
1 1.25 1.5
( x 1)2
0.25 0.5
p
3
1 1.25 1.5
( x 1)2
25
Print[sl[i] = Show[{sl1,
Graphics[{PointSize[.03], Point[{{xa[[i]], f[xa[[i]]]}}]}]}]];
, {i, n}]
3 5
2 (b
a ),
x2 = a + b x1 = a +
(3.2)
51
2 (b
a ),
(3.3)
Vrijedi
x1 < x2 ,
b a
b x1
b x1
x1 a
b a
x2 a
x2 a
b x2
1+ 5
2
1.618.
x2 a
x1 a
x1 a
x2 x1 .
51
b2 a2 = x2 a1 = b1 x1 = 2 (b a)
x2? = x1 ,
x2? = x2 ;
26
xk
x k +1
xk?
| xk? x ? |
1
2
3
4
0.5729
0.9270
0.7918
0.9270
0.9271
1.1459
0.9271
1.0106
0.9271
0.9271
0.9271
1.0106
0.0729
0.0729
0.0729
0.0106
p
3
0.25 0.5
1 1.25 1.5
0.25 0.5
1 1.25 1.5
0.25 0.5
1 1.25 1.5
( x 1)2
0.25 0.5
p
3
1 1.25 1.5
( x 1)2
Metoda parabole
Razmotrit emo jo jednu jednostavnu metodu za odreivanje lokalnog
minimuma funkcije f : [ a, b] R, kod koje takoer nee biti potrebno
poznavati derivaciju funkcije. U intervalu [ a, b] izabrat emo takvu toku
c [ a, b], u kojoj funkcija f prima manju vrijednost nego na rubovima
intervala, tj.
f (c) < min{ f ( a), f (b)}.
27
Pomou tri toke ( a, f ( a)), (c, f (c)), (b, f (b)) odredit emo interpolacijski
polinom primjenom Lagrangeove formule.
P2 ( x ) = f ( a) p a ( x ) + f (c) pc ( x ) + f (b) pb ( x ),
pa (x) =
( x c) ( x b)
,
( ac) ( ab)
pc ( x ) =
( x a) ( x b)
,
(c a) (cb)
gdje je
pb ( x ) =
(3.4)
( x a) ( x c)
(b a) (bc)
2
2
2
1 a ( f (b) f (c))+c ( f ( a) f (b))+b ( f (c) f ( a))
2 a( f (b) f (c))+c( f ( a) f (b))+b( f (c) f ( a))
(3.5)
(3.6)
Toku u0 uzimamo kao poetnu aproksimaciju toke minimuma u? . Zadamo li tonost > 0 iterativni postupak nastavljamo na sljedei nain:
Ako je | f (u0 ) P2 (u0 )| < , uzimamo u? = u0 i postupak je zavren.
U suprotnom sortiramo brojeve a, c, b, u0 i potraimo onaj u kojem
funkcija f prima najmanju vrijednost (primijetite da to mogu biti
samo u0 ili c). Taj broj oznaimo s c, a s a i b oznaimo neposredne
susjede.
Postupak dalje ponavljamo. Nie je naveden program koji podrava opisanu proceduru. Izradite odgovarajui modul.
ln[1]:=While[k = k + 1;
x = {a, c, b}; y = f[x];
u0 = (c^2 (f[a]-f[b]) + a^2 (f[b]-f[c]) + b^2 (f[c]-f[a]))/
(2 (c(f[a]-f[b]) + a (f[b]-f[c]) + b (f[c]-f[a])));
Print[k, {a, c, b},{u0, f[u0], Abs[f[u0]-P[u0, x, y]]}];
Abs[f[u0] - P[u0, x, y]] > eps,
nodes = Sort[{a, c, u0, b}];
fnodes = f[nodes];
min = Min[fnodes];
imin = Position[fnodes, min][[1, 1]];
c = nodes[[imin]];
a = nodes[[imin - 1]];
b = nodes[[imin + 1]]]
28
-2
14
14
14
12
12
12
10
10
10
-1
-2
-1
2
0
-2
-1
14
12
10
8
6
4
2
-2
-1
u0
f ( u0 )
| f (u0 ) P2 (u0 )|
1
2
3
4
5
6
7
-2.
-1.
-1.
0.
0.
0.
0.3203
0.
0.
0.
0.3203
0.3203
0.3203
0.3782
2.
2.
1.25
1.25
0.6726
0.4478
0.4478
-1.
1.25
0.3203
0.6726
0.4478
0.3782
0.3771
6.
9.75
4.0391
5.7084
4.13432
3.8654
3.8687
0.75
0.375
1.5428
0.9930
0.1789
0.1833
0.0034
Zadatak 16: Primjenom metode parabole odredite aproksimaciju minimuma funkcije uz tonost = 0.005, ako je:
41
216
= 0.189815
b) u? 0.827565.
Brentova metoda
U primjenama se esto koristi tzv. Brentova metoda za jednodimenzionalnu
minimizaciju koja se zasniva na kombinaciji metode zlatnog reza i metode
parabole. Metoda zlatnog reza pogodna je i za minimizaciju funkcije u
najgorim moguim sluajevima pri emu se u minimizacijskom procesu
metoda ponaa kao da bjei od minimuma. Meutim, zato oekivati
najgore? Ako je funkcija parabolinog oblika u okolini minimuma, to
je i sluaj za dovoljno glatke funkcije, tada e metoda parabole konvergirati minimumu u svega nekoliko koraka. S druge strane, ako je funkcija
nezgodna tada je metoda zlatnog reza pouzdana metoda. Kompromis
izmeu dvije navedene metode sastoji se u tome da se koriste obadvije u
ovisnosti o tome koja metoda se u danom koraku uini pogodnija. Meutim, prilikom kombiniranja te dvije metode mora se paziti na vie stvari,
a meu njih spadaju sljedei problemi:
(i) prilikom prelaska s jedne metode na drugu treba pripaziti na nepotrebno dodatno izraunavanje vrijednosti funkcije;
(ii) posebna panja mora se posvetiti zaustavnom kriteriju,
(iii) pravilo prema kojem emo odluivati koju metodu treba primijeniti
mora biti robusno.
Metoda koja sve navedno uzima u obzir zove se Brentova metoda [6,
23]. Brentova metoda prilikom optimizacijskog procesa prati 6 toaka
(ne nuno razliitih) a, b, x, u, v i w. Minimum se nalazi unutar intervala
( a, b ); x je posljednja toka gdje je vrijednost funkcije bila najmanja; w
je sljedea toka iza x koja odgovara drugoj po veliini funkcijskoj vrijednosti; v je prethodna vrijednost od w, u je toka u kojoj je vrijednost
funkcije raunata zadnji puta; obino se u algoritmu prati i toka koja je u
sredini intervala ( a, b), ali se u njoj vrijednost funkcije ne mora raunati.
29
Newtonova metoda
Za razliku od ranije razmatranih metoda u ovom poglavlju kratko emo
opisati jednu od najee koritenih medota za odreivanje lokalnog minimum derivabilne funkcije. Kasnije emo detaljnije govoriti o ovoj metodi
prilikom traenja lokalnog minimuma derivabilne funkcije vie varijabli.
Pretpostavimo da je f C2 [ a, b] i da u toki ( a, b) postie lokalni
minimum. To znai da je f 0 ( ) = 0 i f 00 ( ) > 0. Vrijedi i obratno zakljuivanje: ako je za neki ( a, b), f 0 ( ) = 0 i f 00 ( ) > 0, onda funkcija f u
toki ( a, b) postie lokalni minimum. Toka ( a, b) za koju vrijedi
f ( ) = 0 naziva se stacionarna toka funkcije f .
30
31
Iz navedenog slijedi da se traenje lokalnog minimum derivabilne funkcije f moe svesti na traenje stacionarne toke rjeavanje jednadbe f 0 ( x ) =
0. U tu svrhu moemo primjeniti poznatu Newtonovu metodu tangenti
(vidi [26]).
Ipak, lokalni minimum derivabilne funkcije f C [ a, b]2 potrait emo
direktnom minimizacijom. Ako postoji [ a, b], prethodnom primjenom metode bisekcije moemo postii da na nekom suenom intervalu
funkcija f postie jedinstveni lokalni minimum. Zato, bez smanjenja openitosti, moemo pretpostaviti da je [ a, b] jedinstvena toka lokalnog
minimuma funkcije f .
Izaberimo x0 ( a, b) i na osnovi Taylorove formule funkciju f u okolini toke x0 aproksimiramo kvadratnom funkcijom
k1 ( x ) = f ( x0 ) + f 0 ( x0 )( x x0 ) + 21 f 00 ( x0 )( x x0 )2
y
6
x0 x1
f 0 ( x0 )
.
f 00 ( x0 )
xk
f ( xk )
f 0 ( xk )
0
1
2
3
4
4.
3.7254
3.6287
3.6169
3.6168
37.
2.7759
0.4094
0.3824
0.3825
218.
45.9025
4.5238
0.0625
0.00001
32
33
POGLAVLJE
Problem viedimenzionalne
minimizacije
Iterativni proces za traenje toke lokalnog minimuma dovoljno puta neprekidno diferencijabilne funkcije f : Rn R openito je oblika
x k +1 = x k + k p k ,
k = 0, 1, . . . ,
34
35
() (0)
= lim
f ( x +p) f ( x )
= f 0 ( x ) p.
Gradijentna metoda:
pk := f ( xk ). Vrijedi
f 0 ( xk ) pk = f 0 ( xk ) f ( xk ) = k f ( xk )k2 < 0.
(b)
| f 0 ( xk )ei | = max | f 0 ( xk )e j |.
j=1,n
Primijetite da je f 0 ( xk )ei = ( f 0 ( xk ))i . Vektor smjera kretanja pk izabrat emo izmeu {ei , ei } za koji je
f 0 ( xk ) pk < 0.
Umjesto ortonormiranih baznih vektora {e1 , . . . , en } moemo izabrati neke druge bazne vektore iz Rn .
(c)
Newtonova metoda:
pk := [ f 00 ( xk )]1 f ( xk ). Vrijedi
f 0 ( xk ) pk = f 0 ( xk )[ f 00 ( xk )]1 f 0 ( xk )T ,
to je negativno ako je f 00 ( xk ) pozitivno definitna matrica (tada je i
[ f 00 ( xk )](1) pozitivno definitna).
(c)
Kvazi-Newtonova metoda:
4.1
36
(4.2)
(4.3)
(4.4)
Ako je f strogo konveksan na D, onda jednadba (4.4) ima jedinstveno rjeenje koje se podudara s korakom dobivenim u (4.2). Primijetite da zbog
uvjeta f 0 ( xk ) pk < 0, rjeenje = 0 nije prihvatljivo. Openito jednadba
(4.4) moe imati vie rjeenja.
37
f (xk )
[h]
Z1
f 0 ( xk + tpk ) pk dt < 0,
[ f 0 ( xk + pk ) f 0 ( xk )] pk = 0.
(4.5)
x )dt.
R1
0
F 0 ( x + t(y x ))(y
38
(4.6)
(4.7)
f 0 ( xk ) pk
( pk )T f 00 ( xk ) pk
> 0.
(4.8)
f (xk + k pk )
f (xk )
39
(u2 )(u3 )
f
(u1 u2 )(u1 u3 ) 1
(u1 )(u3 )
f
(u2 u1 )(u2 u3 ) 2
(u1 )(u2 )
f ,
(u3 u1 )(u3 u2 ) 3
2 f1
(u1 u2 )(u1 u3 )
2 f2
(u2 u1 )(u2 u3 )
=
ako je
2 f3
(u3 u1 )(u3 u2 )
> 0.
Princip A. Goldsteina
Neka je f diferencijabilan u toki xk Int D i neka je f 0 ( xk ) pk < 0. Tangenta na graf funkcije () = f ( xk + pk ) u toki = 0 zadana je s
() = f ( xk ) + f 0 ( xk ) pk ,
i ima negativni koeficijent smjera f 0 ( xk ) pk < 0 (vidi Sliku 4.3).
f (xk )
7 f (xk + pk )
1
2
Jk
Jk
Jk
40
i = 1, 2
i za njih vrijedi
() < 2 () 1 (),
> 0.
2 () f ( xk + pk ) 1 ()}
(4.9)
(4.11)
41
f ( xk ) f ( xk +k pk )
,
k f 0 ( xk ) pk
(0, 1].
q00 = 0 (0),
q1 = ( t1 ),
4.2
Gradijentna metoda
Jo je A. Cauchy 1845. godine uoio da je smjer najbreg pada neprekidno derivabilne funkcije f : Rn R u toki x u smjeru antigradijenta
( f ( x )). Naime, ako za neki vektor d Rn definiramo diferencijabilnu
funkciju : R R formulom
(t) := f ( x + td),
onda zbog 0 (0) = ( f ( x ), d) vrijedi:
42
f (x)
za d := k f (x)k , vrijedi 0 (0) = k f ( x )k < 0, pa smjer antigradijenta pokazuje smjer pada funkcije f .
Na toj ideji zasniva se obina gradijentna metoda za minimizaciju funkcije f : Rn R
x k +1 = x k + k p k ,
k = 0, 1, . . . ,
(4.12)
(4.13)
43
In[3]:= n = 2;
f[x_] := 100(x[2] - x[1]^2)^2 + (1 - x[1])^2
f[x] /. {x[1] -> x1, x[2] -> x2}
d[x_] := Table[D[f[x], x[i]], {i, n}]
d[x] /. {x[1] -> x1, x[2] -> x2}
ContourPlot[f[x] /. {x[1] -> x1, x[2] -> x2}, {x1, -2, 2}, {x2, -2, 4},
Contours -> 20, ContourShading -> None];
Out[3]:= (1 - x1)^2 + 100(-x1^2 + x2)^2
{-2(1 - x1) - 400 x1(-x1^2 + x2), 200(-x1^2 + x2)}
44
4
3
2
1
0
-1
-2
-2
-1
( xk )
f ( xk )
k f ( xk )k
0
1
2
10
100
500
1000
(0.5,0.5)
(0.599609, 0.402344)
(0.621229, 0.38562)
(0.703733, 0.492322)
(0.785646, 0.615674)
(0.895571, 0.801784)
(0.984068, 0.968167)
6.5
0.343602
0.143477
0.0886257
0.0461927
0.0109123
0.000258777
51
11.0691
0.681796
0.58356
0.313171
0.114267
0.0556747
0.00195313
0.00195313
0.00195313
0.00195313
0.00195313
0.00195313
0.03125
Sljedea lema pokazuje da gradijentna metoda (4.12) osigurava konvergenciju iterativnog procesa ili prema inf f ili prema nekoj stacionarnoj toki funkcije
f.
Lema 7. Pretpostavimo da je
(i) funkcija f : Rn R ograniena odozdo,
(ii) gradijent f 0 zadovoljava Lipschitzov uvjet, tj. postoji L > 0, tako da bude
k f ( x ) f (y)k Lk x yk,
za sve x, y Rn ,
(4.14)
k f ( xk )k 0, za k
neovisno o izboru poetne aproksimacije x0 , a parametri k uvijek se mogu izabrati prethodno opisanim Algoritmom za izraunavanje duljine koraka.
45
Dokaz. Prema Lagrangeovom teoremu srednje vrijednosti postoji (0, 1), tako
da bude
f ( xk + ( x xk )) f ( xk ) = ( f ( xk + ( x xk )), x xk ).
Dodavanjem i oduzimanjem f ( xk )( x xk ) na desnoj strani, uz oznake: :=
xk + ( x xk ), f k := f ( xk ), f k0 := f ( xk ), f 0 := f ( ) ovu jednakost moemo
zapisati:
f ( x ) f k = ( f k0 , x xk ) + ( f 0 f k0 , x xk )
Za x = xk f k0 koritenjem Cauchy-Schwartzove nejednakosti i uvjeta (4.14)
dobivamo
f (x) f k
= ( f k0 , f k0 ) ( f 0 f k0 , f k0 )
k f k0 k2 + k f 0 f k0 kk f k0 k k f k0 k2 + Lk xk kk f k0 k
k f k0 k2 + Lk x xk kk f k0 k = k f k0 k2 + Lk f k0 kk f k0 k
= k f k0 k2 (L 1)
Kako je 0 < L < , za (0, 1) iz Algoritma za izraunavanje duljine koraka parametar moemo izabrati tako da bude > 0 i L 1 . Zato iz prethodne
nejednakosti dobivamo
f ( x ) f k ( f k0 , f k0 )() = f ( x ) f k ( f k0 , f k0 ),
(4.15)
f k +1 f k 0
za k .
k f k0 k2
f k f k +1
k .
Primijetimo da ni za jedan k parametar k nije jednak nuli. Naime, izbor parametra k garantira da e biti k > 0, gdje za moe posluiti bilo koja konstanta
M>m>0
za sve x, y Rn
(4.16)
Ako se niz ( xn ) definira pomou iterativnog procesa (4.12), a parametri k biraju iz uvjeta
(4.13), tada neovisno o izboru poetne aproksimacije x0 Rn vrijedi
xk x ?
f ( x k ) f ( x ? ),
46
k x x? k
gdje je C < ,
k f ( x )k
,
m
f k f ? q k ( f 0 f ? ),
k xk x ? k C q 2 , (4.17)
q (0, 1).
1
2
( f ( x ), x x ? )
f 00 ( )( x ? x ), x ? x
m
2 kx
x ? k2 ,
m
2 kx
x ? k2 .
(4.18)
x ? k2 f ( x ) f ( x ? )
M
2 kx
x ? k2 .
(4.19)
k f ( x )kk x x ? k
m
2 kx
x ? k2 f ( x ) f ( x ? )
= mk x x ? k2 k f ( x )kk x x ? k,
a odavde
k x x? k
m
2 kx
k f ( x )k
.
m
x ? k2 ,
(4.20)
k f ( x )k
m
m 2
2 M ( f (x)
f ( x ? )),
47
iz ega, slijedi
2
1
m k f ( x )k
odnsono
( f ( x ) f ( x ? )) +
k f ( x )k2 m 1 +
m
M
m
M ( f (x)
f ( x ? )) ,
( f ( x ) f ( x ? )).
(4.21)
(4.22)
= ( f k , x xk ) + 21 ( f 00 ( )( x xk ), x xk )
= k f k k2 +
2
2
( f 00 ( ) f k , f k )
k f k k2 +
2
2
2 M k f k k
= 1
M
2
k f k k2 .
f ( x ? ))
m
f k+1 f ? = ( f k+1 f k ) + ( f k f ? ) 1 k m 1 + M
( f ( xk ) f ( x ? ))
q ( f k f ? ),
uz oznaku q := 1 k m 1 +
m
M
f k f ? q k ( f 0 f ? ).
(4.23)
2(1 )
2(1)m
m
Kako je k =
1+ M
. Ako sada q
M , bit e q 1
M
shvatimo kao realnu funkciju
varijable
i
pronaemo
njezin
minimu,
dobivamo
m
m
1
qmin = 1 2M 1 + M za = 2 . Sada se vidi da je u uvjet (4.13) najbolje staviti
= 21 . To e osigurati najveu moguu brzinu konvergencije gradijentne metode.
Na kraju, iz (4.19) i (4.23) dobivamo ocjenu pogreke
k xk x ? k
q p
2
m
fk f ? q 2
q p
2
m
f 0 f ? Cq 2 .
48
k = 0, 1, . . . ,
(4.24)
In[1]:=
f[x_] := 100(x[2] - x[1]^2)^2 + (1 - x[1])^2; n=2
p[x_] := -Table[D[f[x], x[i]], {i, n}]
(* Rosenbrock *)
49
( xk )
f ( xk )
k f ( xk )k
0
1
2
10
(0.5,0.5)
(0.501683, 0.49835)
(0.503364, 0.496708)
(0.516722, 0.483858)
6.5
6.33264
6.1677
4.9362
51
50.4955
49.9871
45.7882
0.00195313
0.00235693
0.00235024
0.00229504
4.3
Newtonova metoda
Iterativniii proces za traenje toke lokalnog minimuma dovoljno puta neprekidno diferencijabilne funkcije f : Rn R openito je oblika
x k +1 = x k + k p k ,
k = 0, 1, . . . ,
(4.26)
( f ( xk ), pk ) < 0,
(4.27)
2k
2
f 00 ( k ) pk , pk ,
(0, 1)
50
( f ( x0 ), p) = ( f ( x0 ), [ f 00 ( x0 )]1 f ( x0 )) = ( f 00 ( x0 ) p, p) < 0.
h
i
( f 0 , p) = f 00 p = f 00 [ f 000 ]1 f 000 [ f 000 ]1 f 0 = p T f 000 p = ( f 000 p, p)
Ponavljajui navedeni postupak dolazimo do iterativne metode
xk+1 = xk [ f 00 ( xk )]1 f ( xk ),
k = 0, 1, . . . ,
f 00 ( xk ) p = f ( xk ).
Uzevi u obzir da kretanje od toke xk u smjeru vektora pk donosi smanjenje
vrijednosti funkcije, kao i u sluaju gradijentne metode, uvodimo duljinu koraka
k i tako definiramo Newtonovu metodu s regulacijom koraka
xk+1 = xk k [ f 00 ( xk )]1 f ( xk ),
k = 0, 1, . . . ,
(4.28)
k)p
= f ( xk ).
(4.29)
Kao i u sluaju gradijentne metode parametar duljine koraka k moemo definirati na vie naina (vidi t.4.1). Ovdje emo primijeniti specijalni sluaj Goldsteinovog principa opisanog u t.4.1, str.39, a specijalno u Primjedbi 3.
51
(4.30)
M > m > 0,
x, y Rn .
(4.31)
Prema Teoremu 2, str.12, takva funkcija je ograniena odozdo i posjeduje jedinstvenu toku minimuma.
Moe se pokazati da takoer vrijedi (vidi primjerice [15], [22])
m
k y k2
M2
(( f 00 ( x )]1 y, y)
2
1
m kyk ,
M>m>0
za sve x, y Rn .
(4.32)
( f k , pk ) = ( f k , [ f 00 ( xk )]1 f k ) Mm2 k f k k2 .
(4.33)
k x k +1 x ? k k k x k x ? k ,
(4.34)
gdje k 0 za k .
Dokaz. Za x = xk + pk , gdje je pk = [ f k00 ]1 f k , koritenjem (4.31) u Taylorovoj formuli dobivamo
2
M k pk k2
f ( x ) f ( xk ) = ( f k , pk ) + 2 f 00 ( ) pk , pk ( f k , pk ) 1 + 2( f ,p
)
k
pk = pkT f k00 pk
( f k , pk ) = ( f 00 ( xk ) pk , pk ) mk pk k2 ,
52
dobivamo
h
( f k , pk ) mk pk k2 1 +
M k pk k2
2( f k ,pk )
= 1
M k pk k2
2( f k ,pk )
f ( x ) f ( xk ) ( f k , pk ) 1
M
2m
1
M
2m
i
M
2m
(4.35)
(4.36)
slijedi f k+1 < f k , tj. niz ( f k ) je monotono padaju. Zbog uvjeta jake konveksnosti
funkcije f on je i ogranien odozdo, to znai da je konvergentan i da vrijedi
f k+1 f k . Koritenjem uvjeta (4.32) u (4.36) i injenice da je f 00 ( xk ) simetrina matrica dobivamo
f k+1 f k k ( f k , pk ) = k ([ f k00 ]1 f k , f k ) k Mm2 k f k k2 ,
a odavde
k f k k2
M2
mk
(4.37)
( f k f k +1 ) ,
1
2
( f ( x ), x x ? )
f 00 ( )( x ? x ), x ? x
m
2 kx
x ? k2 ,
53
m
2 kx
x ? k2 .
(4.38)
x ? k2 f ( x ) f ( x ? )
M
2 kx
x ? k2 .
(4.39)
k f ( x )kk x x ? k
m
2 kx
x ? k2 f ( x ) f ( x ? )
m
2 kx
x ? k2 ,
k x x? k
k f ( x )k
.
m
(4.40)
( f k , pk ) = ( f 00 ( xk ) pk , pk ) mk pk k2
Iz (4.36) slijedi ( f k , pk ) 0, stoga koristei gornju nejednakost imamo
k p k k2
( f k , pk )
0,
m
k pk k 0,
k .
(4.41)
2k
00
2 ( f k pk , pk )
dobivamo
2
= k ( f k , pk ) + 2k ( f k00 pk , pk ) + 2k ( f 00 ( ) f k00 ) pk , pk )
1) k( f 00 ( ) f k00 ) pk kk pk k
(4.41) k ( f k , pk ) 1 2k + k (
2
(1)( f k ,pk )
00
k f ( ) f k00 kk pk k2
(4.41) k ( f k , pk ) 1 2k 2k
,
m k p k2
f k +1 f k
gdje je = xk + ( xk+1 xk ),
Budui da
[0, 1].
k f 00 ( ) f 00 ( xk )k k f 00 ( ) f 00 ( x ? )k + k f 00 ( x ? ) f 00 ( xk )k,
54
1
2
k
2
1
2
k
2
00
00
k k f ( ) f k k
2
m
k x k +1 x ? k 2
=
=
(4.32)
f 00 ( )k k xk x ? k k xk+1 x ? k,
a odavde
k x k +1 x ? k k k x k x ? k ,
k =
00
1
m k fk
f 00 ( )k.
(4.42)
k f 00 ( x ) f 00 (y)k Lk x yk,
x, y Rn .
L > 0,
k = 0, 1, . . . ,
gdje se parametri k biraju iz uvjeta (4.30), konvergira prema toki minimuma x ? neovisno o izboru poetne aproksimacije x0 kvadratinom brzinom konvergencije
k x k +1 x ? k
L
m k xk
x ? k2 .
55
1
00
m k f ( xk )
f 00 ( )k
x ? ( xk x ? )k
L
m k xk
L
m k x k (1 )
<
L
m k xk
x ? (1 )k
x ? k,
k = 0, 1, . . . ,
vrijedi
Korolar 2. Neka funkcija f C2 (Rn ) zadovoljava uvjet (4.31) i neka se duljina koraka
k bira iz uvjeta (4.2).
Tada Newtonov iterativni proces (4.28) konvergira prema rjeenju x ? bez obzira na
izbor poetne aproksimacije x0 superlinearnom brzinom. Ako pored toga funkcija f zadovoljava i Lipschitzov uvjet, onda je brzina kvadratina.
Dokaz. Neka je
x k+1 = xk [ f 00 ( xk )]1 f ( xk )
xk+1 = xk k [ f 00 ( xk )]1 f ( xk ),
x
jednakost (4.39), dobivamo
2
2
? 2
m
2 k x k +1 x k
f ( x k +1 ) f ( x ? ) f ( x k +1 ) f ( x ? )
? 2
M
2 k x k +1 x k .
(4.43)
k x k +1 x ? k k k x k x ? k ,
k =
00
1
m k fk
f 00 ( )k =
00
1
m k fk
f 00 ( x ? + ( xk x ? ))k,
x
k
+
1
k
m
m k xk x k
k k x k x ? k ,
gdje k = k
M
m
0 za k .
56
x ? k, pa vrijedi
q
C = mL M
m.
k x k +1 x ? k C k x k x ? k 2 ,
L
m k xk
Zadatak 24: Newtonovom metodom odredite prve dvije aproksimacije minimuma funkcije f ( x, y) = 2x3 + xy2 + 5x2 + y2 iz Primjera 7 uz poetnu aproksimaciju x0 = [1, 1] T . Jeste li na taj nain dobili aproksimaciju toke minimuma?
Rjeenje: x2 = [1, 2.05] T . To nije aproksimacija toke minimuma, ve
aproksimacija toke u kojoj ova funkcija ima sedlastu toku.
Zadatak 25: Prethodni zadatak rijeite uz x0 = [1, 1] T . Dobivate li na taj nain
aproksimaciju toke minimuma?
Rjeenje: x2 = [0.04237, 0.06759] T . To je aproksimacija toke minimuma.
Zadatak 26: Newtonovim metodom s regulacijom koraka (prema danom algoritmu za izraunavanje duljine koraka) odredite prve dvije aproksimacije minimuma funkcije f ( x, y) = x4 + 3( x2 + 2y2 ) + 4xy + 5x + 6y + 7, uz poetnu
aproksimaciju x0 = [0.5, 1] T i tonost e = 0.5.
Rjeenje: x2 = [0.4169, 0.361] T .
QuasiNewtonove metode
Budui da problem minimizacije diferencijabilne funkcije f : Rn Rn moemo
gledati kao problem rjeavanja jednadbe
F ( x ) = 0,
F : Rn Rn
f
f1
f1
1
x
x1
x2
n
f2 f2
f2
x1 x2 xn
0
.
f = .
..
..
..
..
.
.
.
fn
fn
fn
x
x
x
n
1
57
i = 1, . . . , n,
x=
(i )
58
(4.48)
odakle slijedi
k F 0 ( x0 )1 k = k F 0 ( x0 )1 F 0 ( x ? ) F 0 ( x ? )1 k k F 0 ( x0 )1 F 0 ( x ? )k k F 0 ( x ? )1 k
1
k F 0 ( x ? )1 k 2 .
(4.49)
1 12
Pretposljednja nejednakost u gornjem izrazu je jednostavna posljedica sljedeeg
rauna. Iz (4.48) slijedi
k F 0 ( x ? ) 1 F 0 ( x 0 ) I k
1
,
2
to znai da je I F 0 ( x ? )1 F 0 ( x0 ) I = F 0 ( x ? )1 F 0 ( x0 ) regularno i vrijedi
k F 0 ( x0 )1 F 0 ( x ? )k
1
1
1
2
x 1 x ? = x 0 x ? F 0 ( x 0 ) 1 F ( x 0 )
0
= F ( x0 )
(4.50)
0
F ( x ) F ( x0 ) F ( x0 )( x x0 )
Z1
0
F 0 ( x0 + t( x ? x0 )) F 0 ( x0 ) d ( x0 + t( x ? x0 )) ,
59
k F ( x ? ) F ( x0 ) F 0 ( x0 )( x ? x0 )k L
Z1
0
tk x ? x0 k2 dt =
L ?
k x x0 k2 .
2
(4.51)
k
1
k x ? x0 k ,
2
to pokazuje da niz xk konvergira ka x ? i to superlinearnom brzinom. Prva nejednakost u gornjem izrazu je upravo (4.47). S druge strane iz (4.51) lako se pokae
da vrijedi k xk+1 x ? k Lk xk x ? k2 , odnosno da vrijedi (4.46).
Primjedba 4. Treba napomenuti da se moe dokazati i znatno openitiji teorem
koji opisuje karakteristike Newtonove metode od Teorema 7. Meutim, dokaz
takvog teorema je znatno sloeniji i dulji stoga emo ga samo navesti (dokaz vidi
u [20], str. 312)
Teorem 8. Neka funkcija F : Rn Rn zadovoljava pretpostavke (4.44). Tada postoji
otvoren skup S koji sadrava x ? , takav da je za proizvoljni x0 S niz ( xn ) definiran
Newtonovim iterativnim postupakom dobro definiran, ostaje u S i konvergira prema x ?
superlinearnom brzinom, tj. postoji nul-niz (n ), takav da je
k x k +1 x ? k k k x k x ? k ,
k = 0, 1, . . . .
Ako funkcija F dodatno zadovoljava Lipschitzov uvjet, onda je brzina konvergencije kvadratina, tj. postoji konstanta takva da je
k x k +1 x ? k k x k x ? k 2 ,
k = 0, 1, . . . .
60
k x k +1 x k k
=1
k xk x ? k
uz uvjet da je xk 6= x ? za sve k = 0, 1, . . ..
|k xk+1 xk k k xk x ? k| k xk+1 x ? k,
nakon dijeljenja s k xk x ? k i koristei k xk+1 x ? k k k xk x ? k,
dobivamo
?
k x k +1 x k k
k x k +1 x k k 0 .
1
k x x? k
?
k xk x k
k
k
Primjetite da je u Teorem 7 za k stavljeno k = 12 .
k 0,
xk+1 := xk k Hk F ( xk ).
(4.52)
( Bk F 0 ( x ? ))(k pk k)
k pk k
= 0,
p k = x k +1 x k .
(4.53)
61
k Bk pk yk k
k pk k
y k : = F ( x k +1 ) F ( x k ),
= 0,
(4.54)
(4.55)
B := Bk+1 ,
p := pk = x x,
x := xk ,
x : = x k +1
y : = y k = F ( x ) F ( x ).
(y Bp) p T
.
pT p
(4.56)
k x x ? k ,
k B F 0 ( x )k k B1 k 2 .
62
Gornja nejednakost slijedi koristeci slian raun kao u dokazu Teorema 7. Zaista,
ako izaberemo takvo da je < 1/(2), onda iz
1
k F 0 ( x ? )1 B F 0 ( x ? ) k < ,
2
vidimo da je F 0 ( x ? )1 B = I F 0 ( x ? )1 ( B F 0 ( x ? )) regularna, te vrijedi ocjena
k B1 F 0 ( x ? )k <
1
1
1
2
k B1 k = k B1 F 0 ( x ? ) F 0 ( x ? )1 k 2 .
= B01
Z1
0
F 0 ((1 t) x0 + tx ? ) B0 ( x ? x0 )dt .
k F 0 ((1 t) x0 + tx ? ) F 0 ( x0 ) + F 0 ( x0 ) B0 k Ltk x ? x0 k + .
To znai da moemo pisati
L
L ?
k x x0 k + k x ? x0 k 2
+ 1 k x ? x0 k
k x1 x ? k 2
2
2
1
k x ? x0 k .
2
Vidimo da gornja nejednakost povlai k x1 x ? k , pa ponavljajui ovaj postupak lako se dokazuje 1. Iz gornjeg razmatranja vidimo da vrijedi
L ?
?
0
k xk+1 x k 2
k x xk k + k Bk F ( xk )k k x ? xk k ,
2
to daje superlinearnu konvergenciju, odnosno pretpostavku 2. Uz dodatnu pretpostavku iz 3. da je k Bk F 0 ( xk )k C k F ( xk )k, slijedi
k Bk F 0 ( xk )k C k F ( xk ) F ( x ? )k C k xk x ? k ,
63
Broydenova metoda
Broydenova je metoda (objavio CG Broyden u 1965) vaan primjer quasi-Newtonove
metode. To je jedana od moguih generalizacija metode sekante na n-dimenzionalne
prostore. U sluaju jedne nelinearne jednadbe, metoda sekante zamjenjuje f 0 ( xi )
u Newtonovoj metodi s aproksimacijom [ f ( xi ) f ( xi1 )]/( xi xi1 ). Na taj nain dolazi se do sljedeeg iterativnog postupka: za dobivanje iteracija
x i +1 = x i
x i x i 1
f ( xi ) .
f ( x i ) f ( x i 1 )
Bz = Cz ,
za sve z takve da s T z = 0.
Broyden je 1965. godine prvi put uveo takve matrice, koje se po njemu u
literaturi nazivaju Broydenove korekcije ranga 1 i definiraju se
B = C+
(v Cs)s T
.
sT s
(4.57)
64
( si s j )
ij
!
s2i
!
s2j
= (s T s)23 .
= v konveksan, a funkcija :
Kako je skup svih B Rnn , takvih da je Bs
n
n
R
7 R, ( A) = k B Ak F strogo konveksna, matrica B na kojoj se postie
minimum je jedinstvena.
Sada smo spremni navesti Broydenovu metodu.
65
Klju uinkovitosti Broydenove metode je u tome to se matrica Bi+1 od matrice Bi razlikuje samo za matricu ranga 1. Ali, kao to e biti prikazano u sljedeem teoremu, jednom kada se efikasno izrauna djelovanje inverzne matrice na
vektor a (npr., supstitucije unaprijed i unazad, za matricu koja je rastavljena na
produkt donje i gornje trokutaste), tada se efikasno moe izraunati i inverz te
matrice promjenjene matricom ranga 1.
Teorem 13 (Sherman-Morrison-Woodbury). Neka je u, v Rn , a B Rnn
regularna matrica. Tada je B = B + uv T regularna onda i samo onda ako je =
1 + v T B1 u 6= 0. Ako je 6= 0, vrijedi
1
1
B 1 B + uv T
= B1 B1 uv T B1
(4.58)
= y, to
Dokaz. Neka je za bilo koji vektor y Rn , dan x = B 1 y, odnosno Bx
znai da
Bx + (v T x )u = y .
(4.59)
Mnoenjem gornje jednakosti s lijeva sa v T B1 dobivamo (v T x )(1 + v T B1 u) =
v T B1 y. Kako je 1 + v T B1 u 6= 0 dobivamo
vT x =
v T B 1 y
.
1 + v T B 1 u
v T B 1 y
u.
1 + v T B 1 u
y,
1 + v T B 1 u
1 + v T B 1 u
iz ega slijedi Sherman-Morrison-Woodbury-eva fromula (4.58).
Vrijedi i sljedea zanimljiva lema.
Lema 8. Za zadane v, w Rn vrijedi
det( I + vw T ) = 1 + (v, w).
Dokaz. Oznaimo P = I + vw T . Ako je v = 0, dokaz je trivijalan. Zato pretpostavimo da je v 6= 0.
Neka je svojstvena vrijednost, a x odgovarajui svojstveni vektor od P. Tada
mora biti
Px = x ( I + vw T ) x = x x + v(w T x ) = x.
Ova jednakost moe biti ispunjena ili tako da je w x ili da je v k x.
Dakle, svaki svojstveni vektor od P je ili okomit na w ili paralelan s v.
66
1. Ako je w x, onda je = 1;
i i
Primjetite da u sluaju ako su H0 i B01 jednaki, tada gornji algoritam predstavlja osnovni Broydenov algoritam.
(4.61)
67
i
Mi + 1 = Mi
1
I T si siT
si si
1
0 ?
T
.
v
F
(
x
)
s
)
s
i
i i
siT si
(4.62)
Sljedeci teorem govori o lokalnoj konveregenciji Broydenove metode, te o njenoj brzini konvergencije koja je u najgorem sluaju linearna.
Teorem 14. Neka je funkcija F diferencijabilna na kugli D oko rjeenja x ? Rn ,
(F ( x ? ) = 0), te naka F 0 Lipschitz neprekidne, tj. k F 0 ( x ) F 0 ( x ? )k Lk x x ? k,
za sve x D . Pretpostavimo da je F 0 ( x ? ) regularna, pri emu vrijedi k F 0 ( x ? )k .
Neka su xo D , i B0 Rnn izabrani tako da vrijedi
k M0 k + 2Lke0 k
1
.
8
k Bi1 k 2 ,
vi F ( x ) si =
Z1
0
F 0 ((1 t) xi + txi+1 ) F 0 ( x ? ) dtsi .
1
,
k s i k2
68
k ei k
1
,
8L
k Mi k
1
,
1
k ei +1 k k ei k .
2
L>
xk+1 := xk k Hk gk ,
gdje je sada Bk aproksimacija hessijana f 00 ( xk ), a Hk = Bk1 , pri emu duljinu koraka k moemo odrediti nekom metodom izbora duljine koraka iz t. 4.1. Budui
69
B := Bk+1
y : = y k = g k +1 g k
( zbog g( x ) = F ( x ))
(y Bp)(y Bp)T
,
(y Bp, p)
(y Bp, p) 6= 0
(4.63)
( p Hy)( p Hy) T
( p Hy,y)
(4.64)
In[1]:=
f[x_] := Exp[x[1]](4x[1]^2 + 2x[2]^2 + 4x[1]x[2] + 2x[2] + 1); n = 2;
g[x_] := Table[D[f[x], x[i]], {i, n}]
H[x_] := Table[D[g[x][[i]], x[j]], {i, n}, {j, n}]
Print["f'=", Simplify[g[x] /. {x[1] -> x1, x[2] -> x2}] // MatrixForm,
"
H=", Simplify[H[x] /. {x[1] -> x1, x[2] -> x2}] // MatrixForm]
ContourPlot[f[x] /. {x[1] -> x1, x[2] -> x2}, {x1, -2.5, 1}, {x2, -2, 1.5},
Contours -> 40, PlotPoints -> 30, ContourShading -> None];
f0 =
"
H=
,
e x1 (3 + 2x1 + 2x2 )
e x1 (3 + 2x1 + 2x2 )
e x1
70
1.5
1
0.5
0
-0.5
-1
-1.5
-2
-2.5
-2
-1.5
-1
-0.5
0.5
In[3]:= While[
p0 = -LinearSolve[B0, g0];
alpha = Korak[n, f, p0, x0];
x1 = x0 + alpha p0;
w1 = Table[x[i] -> x1[[i]], {i, n}]; g1 = g[x] /. w1;
y0 = g1 - g0;
B1 = B0+Outer[Times, (y0 - B0.p0),(y0 - B0.p0)]/((y0 - B0.p0).p0);
f1 = f[x] /. w1;
Abs[f1] > eps,
B0 = B1; g0 = g1;
x0 = x1; k = k + 1;
Print["x", k, "=", x1, " fx=", f[x] /. w1,
" grad=", g1, " alpha=", alpha] ];
Print["x", k + 1, "=", x1, " fx=",f[x] /. w1,
" grad=", g1, " alpha=", alpha]
nakon 18 itracija dobivamo
x18 = [11.43, 19.80] T ,
f ( x18 ) = 0.00479,
18 = 1.
71
cc .
cT p
( c T p )2
(4.66)
Matricom M definirana je teinska Frobeniusova norma, B je takoer simetrina matrica, koja ispunjava quasi-Newtonov uvjet Bp = y i po teinskoj Frobeniusovoj normi najmanje se razlikuje od matrice B. Formulu (4.66) zovemo
korekcija ranga 2 jer se B dobiva tako da matrici B dodamo jednu matricu ranga
2.
Zadatak 28: Dva razliita dokaza ovog teorema mogu se vidjeti u [15] i [11].
Izvedite i usporedite oba dokaza.
Pokazat emo (vidi [11]) kako se izvodi quasi-Newtonova korekcija ranga 2
zadana s (4.66) jer je to nain kako se mogu izvesti i druge poznate korekcije ranga
2. Polazimo od simetrine matrice B Rnn , te slino Broydenovoj korekciji
ranga 1 (4.57) kao mogueg kandidata za B promatramo
C1 = B +
(y Bp)c T
.
(c,p)
koji ispunjava quasi-Newtonov uvjet C1 p = y. Budui da C1 openito nije simetrina matrica, definiramo simetrinu matricu
C2 = 21 C1 + C1T .
Budui da C2 ne ispunjava quasi-Newtonov uvjet, ponovimo proceduru i tako
rekurzivno definiramo niz (Cn )
(yC p)c T
2k
C2k+1 = C2k +
,
(c,p)
T
C2k+2 = 12 C2k+1 + C2k
+1 ,
(4.67)
gdje je C0 = B. Vrijedi
Lema 9. Neka je B Rnn simetrina matrica i c, p, y Rn sa svojstvom (c, p) 6= 0..
Tada niz (Cn ) zadan rekurzivnom formulom (4.67) uz C0 = B konvergira prema B
zadanom s (4.66).
Dokaz. Dokaimo da niz (C2k ) konvergira. Uz oznaku Gk = C2k iz (4.67) dobivamo
T
(y Gk p)c T
1
T
T + c(y Gk p)
=
G
+
Gk+1 = C2(k+1) = 21 C2k+1 + C2k
+
G
k
2
+1
k
(c,p)
(c,p)
= Gk +
wk c T +cwkT
,
2(c,p)
= y Gk p
=
1
2 wk
T
T
1 wk c +cwk
2
(c,p)
T
1 c ( p wk )
2 (c,p) ,
p = wk
T
1 wk c p
2 (c,p)
T
1 cwk p
2 (c,p)
72
P=
1
2
cp T
w
(c,p) k
h
1
2
i
c
1 ( (c,p
, p) = 0
)
Pk .
k
( I P)1 = lim
i =0
k =0
k =0
Takoer vrijedi
n
( Gk+1 Gk ) = Gn+1 G0
k =0
k =0
( Gk+1 Gk ) = lim Gk B
k
k =0
Zato vrijedi
lim Gk =
B + ( Gk+1 Gk ) = B +
k =0
=
=
=
1
2(c,p)
k =0
P ) 1 ( y
T
T
1 wk c +cwk
2
(c,p)
Bp)c T
= B+
Bp) T ( I
1
2(c,p)
wk c T +
k =0
P T ) 1
1
2(c,p)
cwkT
k =0
(I
+ c(y
=
B+
n
h
h
i
i
cp T
cp T
prema Lemi 13 : I P = I 12 I (c,p) = 21 I + (c,p) ,
h
i
h
io ,
T
pc T
c
= 1 + p T (c,p
= 2, ( I P)1 = 2 I 21 (cp
, ( I P T )1 = 2 I 12 (c,p)
)
c,p)
n h
i
h
io
T
T
1 cp
1
T + c ( y Bp ) T 2 I 1 pc
B + 2(c,p
2
I
(
y
Bp
)
c
2 (c,p)
2 (c,p)
)
n
o
T
T
cp
1
T + c ( y Bp ) T 1
T 1 c ( y Bp ) T pc
B + (c,p
(
y
Bp
)
c
(
y
Bp
)
c
2 (c,p)
2
)
(c,p)
n
o
T
T
) pc
1
B + (c,p
(y Bp)c T + c(y Bp)T c(y(Bp
)
c,p)
73
.
( p, p)
( p, p)2
(4.68)
T
(y Bp)c T +c(y Bp) T
(y(cTBpp))2 p cc T
cT p
B = B + vw T + wv T ,
gdje je
v=
y Bp 1 (y Bp, p)
2
c,
(c, p)
(c, p)2
w = c.
Zbog toga je
h
(v + w)(v + w)T (v w)(v w)T = kvk2 + kwk2
i
+2vw T kvk2 + kwk2 2wv T
B = B+
1
2
74
Na taj nain smo B napisali kao zbroj od jedne pozitivno definitne matrice ( B) i
dvije simetrine matrice ranga 1. Prema Lemi 10 matrica
C = B + 12 (v + w)(v + w) T
je pozitivno definitna jer je = 12 > 0.
Nadalje, takoer prema Lemi 10, obzirom da je C > 0 i = 12 < 0 matrica
B = C 21 (v w)(v w) T
moe imati najvie jednu svojstvenu vrijednost nepozitivnu. Kako je s druge
strane
0 < det B = 1 n ,
i ta jedna svojstvena vrijednost mora biti pozitivna. Dakle, B > 0.
U cilju ispitivanje za koji c Rn e rekurzivna formula (4.66) uvati pozitivnu definitnost sljedea lema ispituje determinantu matrice B.
Lema 11. Neka je ui Rn , i = 1, 2, 3, 4. Tada vrijedi
det I + u1 u2T + u3 u4T = (1 + (u1 , u2 )) (1 + (u3 , u4 )) (u1 , u4 )(u2 , u3 ).
Dokaz. Ako trenutno pretpostavimo da je (u1 , u2 ) 6= 1, tj. da je, sukladno
Sherman-Morrisonovoj lemi, I + u1 u2T regularna matrica, onda moemo pisati
I + u1 u2T + u3 u4T = I + u1 u2T
I + ( I + u1 u2T )1 u3 u4T
Zato je det I + u1 u2T + u3 u4T = D1 D2 , gdje je
D1 = det I + u1 u2T = 1 + (u1 , u2 ),
D2 = det I + ( I + u1 u2T )1 u3 u4T .
Kako je I + ( I + u1 u2T
D2
1
(13)
= I
1
u uT ,
1+(u1 ,u2 ) 1 2
onda
u1 u2T u3 u4T
u uT
= det I + I 1+(1u 2,u ) u3 u4T = det I + u3 u4T 1+(
u1 ,u2 )
1 2
h
i
(u2 ,u3 )
T = 1 + u (u2 ,u3 ) u , u
u
u
= det I + u3 1+(
3
1
1
4
4
u ,u )
1+(u ,u )
1
= 1 + ( u3 , u4 )
(u2 ,u3 )
( u , u ),
1+(u1 ,u2 ) 1 4
75
(y Bp) T p T
cc
( c T p )2
pc T
(c,p)
i
Sada vrijedi
det B = det B det I + u1 u2T + u3 u4T
gdje je
Hy p
,
(c,p)
u2 = c,
cp T
(y Bp)
u3 = Hc,
u4 = I (c,p)
.
(c,p)
Prema Lemi 11 je det I + u1 u2T + u3 u4T = (1 + (u1 , u2 )) (1 + (u3 , u4 )) (u1 , u4 )(u2 , u3 ),
gdje je
u1 =
p
Hy
Hy
= 1 + c T Hy
= 1 + c(c,p
(cc,py) = c(c,p
(c,p)
)
)
T
Hcp
(y Bp)
1 + (u3 , u4 ) = 1 + c T H (c,p)
(c,p)
Hcp T y
Hcp T Bp
cT
= 1 + (c,p
Hy
s
+
=
)
(c,p)
(c,p)
1 + ( u1 , u2 )
= 1+
(1 + (u1 , u2 )) (1 + (u3 , u4 )) =
( u1 , u4 ) =
=
c T Hy
(c,p)
cTHcp T y
(c,p)2
1+
cTHcp T Bp
,
(c,p)2
(c,Hy)2
(c,p)2
c,Hc)( p,y)
)( p,Bp)
(c,Hy)((c,p
+ (c,Hy)((c,Hc
)3
c,p)3
yT H pT
cp T
I
(y Bp)
(c,p)
(c,p)2
y T Hy
(c,p)2
pT y
(c,p)2
y T Hcp T y
(c,p)3
y T Hcp T Bp
(c,p)3
iz ega slijedi
det I + u1 u2T + u3 u4T =
(c,Hy)2
(c,p)2
(c,Hc)(y,Hy)
(c,p)2
(c,Hc)(y,p)
(c,p)2
76
(4.71)
Jednostavan nain kako se moe zadovoljiti ova nejednakost koju uveo Davidon
(1959) (kasnije objanjeno i implementirano u radu Fletchera i Powella 1963). Naime ako su w, v (odnosno c, y), linearno zavisni, onda je (4.71) zadovoljeno ako
je (y, p) > 0. Zato se poznata Davidon-Fletcher-Powell korekcija (DFP) ranga 2
dobiva iz (4.66) uz c = y
B DGP
B+
I
=
Zadatak 29:
yp T
(y,p)
B I
T
py
(y,p)
(y Bp,p)
yy T .
(y,p)2
yy T
.
(y,p)
(4.72)
pp T
(y,p)
Hyy T H
.
(y,Hy)
(4.73)
Nadalje, ako je B > 0, onda je i B DFP > 0 onda i samo onda ako vrijedi (y, p) > 0.
Zadatak 30:
Inverzne korekcije
U prethodnim razmatranjima nastojali smo dobiti rekurzivne formule za matrice
korekcije, koje sve vie nalikuju na hesijan minimizirajue funkcije. Sada emo
pokuati definirati rekurzivne formule za matricekorekcije, koje e sve vie nalikovati na inverzni hesijan minimizirajue funkcije. Te matrice nazivat emo
inverzne korekcije.
U tu svrhu pretpostavimo da posjedujemo neku aproksimaciju inverznog hesijana H [2 f ( x )]1 i pomou nje pokuajmo pronai to bolju aproksimaciju H
inverznog hesijana [2 f ( x )]1 , gdje je x = x + p. Analogno quasi-Newtonovom
uvjetu (4.55) (Bp = y) postavimo inverzni quasi-Newtonov uvjet
Hy = p.
(4.74)
77
( p Hy)d T
,
(d, y)
za neki
d Rn ,
(d, y) 6= 0.
(4.75)
je simetrina matrica
je simetrina matrica ?
dd .
(d, y)
(d, y)2
(4.76)
py T
I
(y, p)
H
yp T
I
(y, p)
pp T
.
(y, p)
(4.77)
Bpp T B
yy T
.
(y, p) ( p, Bp)
Nadalje, ako je H > 0, onda je H BFGS > 0 onda i samo onda ako je (y, p) > 0.
Zadatak 34:
POGLAVLJE
i = 1, . . . , n.
za sve x blizu x ? .
(5.1)
Budui da je skup kompaktan, uvijek postoji rjeenje gore navedenog minimizacijskog problema [24].
Nejednakosti Li ( x )i Ui , i = 1, . . . , n zovemo ogranienjima, a rei
emo da je i-to ogranienje aktivno za x ako je ili ( x )i = Li ili ( x )i = Ui . U
suprotnom rei emo da je i-to ogranienje ne-aktivno. Skup svih indeksa i tako
da je i-to ogranienje aktivno (neaktivno) zvat emo skupom aktivnih (neaktivnih) indeksa za x i oznaavat emo ga s A( x ) (N ( x )).
78
5.1
79
U 2 poglavlju ve smo prouavali nune i dovoljne uvjete da bi toka x ? bila minimum funkcije. Posebnu panju posvetili smo konveksnim funkcijama. Ovdje
emo neke od tih rezultata generalizirati za sluaj uvjetne minimizacije.
Ako promatramo problem s ogranienjem za realnu funkciju jedne varijable tada se domena funkcije restringira na segment [ a, b]. Tada moramo nune
uvjete promijeniti tako da doputaju mogunost da se minimum x ? nalazi u jednom od krajeva. Ako je x ? = a lokalni minimum tada ne mora biti f 0 ( a) = 0,
meutim, budui da je a lokalni minimum, f ( x ) f ( a) za sve a x dovoljno
blizu a, stoga je i f 0 ( a) 0. Meutim nita ne moemo rei o f 00 . Ako je f diferencijabilna na ( a, b) tada su nuni uvjeti za sve tri mogunosti x ? = a, x ? = b i
a < x ? < b iskazani sljedeim teoremom
Teorem 19. Neka je f neprekidno diferencijabilna funkcija jedne varijable na segmentu
[ a, b]. Neka je x ? lokalni minimum funkcije f na [ a, b]. Tada je
f 0 ( x ? )( x x ? ) 0
za sve
x [ a, b].
(5.2)
f ( x ? )T ( x x ? ) 0 za sve x .
Uoimo da stacionarna toka funkcije definirana u poglavlju 2 (x je stacionarna toka ako je f ( x ) = 0) zadovoljava uvjet (5.2). tovie, u Lemi 3 pokazano da je za konveksnu funkciju f C1 (K ) (K je konveksan skup) gornji
uvjet je ekvivalentan injenici da je f ( x ? ) = 0 za x ? Int K.
Slino kao u sluaju kada nema ogranienja, moe se pokazati injenica da
optimalnost povlai stacionarnost.
Teorem 20. Neka je funkcija f neprekidno diferencijabilna na konveksnom skupu i
neka je x ? rjeenje problema (5.1). Tada je x ? stacionarna toka za problem (5.1).
Dokaz. Neka je x ? rjeenje problema (5.1) i y . Budui da je konveksan,
duina odreena tokama x ? i y je u . Stoga, funkcija
(t) = f ( x ? + t(y x ? ))
definirana je za svaki t [0, 1] i ima lokalni minimum t = 0, stoga po teoremu
19
0 0 (0)(t 0) za sve t [0, 1],
odnosno
0 0 (0) = f ( x ? ) T ( y x ? )
Da bismo ilustrirali ulogu druge derivacije promotrit emo funkciju dvije varijable. Neka je n = 2 i neka funkcija f zadovoljava Lipschitzov uvjet k f 00 ( x )
f 00 (y)k k x yk x, y = [0, 1] [0, 1]. Ako je x ? rjeenje od (5.1) i
nijedno ogranienje nije aktivno, tada je f 00 ( x ? ) pozitivno semidefinitna matrica
uz isto argumentiranje kao kada nemamo ogranienja. Meutim, ako je jedno
ili vie ogranienja aktivno tada ne moemo nita zakljuiti o pozitivnoj definitnosti martice f 00 ( x ? ). Pretpostavimo da je minimum funkcije u x ? = (, 0), gdje
je 0 < < 1. Nita ne moemo rei o 2 f ( x ? )/x22 , ali funkcija (t) = f (t, 0)
definirana na [0, 1] mora zadovoljavati
00 ( ) = 2 f ( x ? )/x12 0.
Doprinosi od drugih parcijalnih derivacija koji odgovaraju ne aktivnim ogranienjima moraju biti nenegativni, dok nita ne moemo rei o doprinosima koji
odgovaraju aktivnim ogranienjima.
Kako bismo upravo izloenu ideju preciznije iskazali, definirat emo reducirani Hessijan.
Definicija 13. Neka je f dva puta diferencijabilna u x . Reducirani Hessijan
f R00 ( x ) je matrica iji su elementi definirani s
ij ,
ako je i A( x ) ili j A( x )
( f R00 ( x ))ij =
.
( f 00 ( x ))ij , inae
Sljedei teorem daje nuni uvjet koristei pojam reduciranog Hessijana.
Teorem 21. Neka f zadovoljava Lipschitzov uvjet k f 00 ( x ) f 00 (y)k k x yk
x, y Rn i neka je x ? rjeenje problema (5.1). Tada je reducirani Hessijan f R00 ( x )
pozitivno semidefinitna matrica.
Dokaz. Pretpostavimo da ima m neaktivnih indeksa i n m aktivnih. Particioniramo x (po potrebi ispermutiramo varijable) tako da je x = (u, v) gdje u
odgovara neaktivnim indeksima, dok v odgovara aktivnim.
Tada preslikavanje (u) = f (u, v? ) ima lokalni minimum u? Rm (ako
je minimum funkcije bez ogranienja) i stoga je 00 (u ) pozitivno semidefinitna
matrica. Budui da je tada reducirani Hessijan jednak
00
(u ) 0
f R00 ( x ) =
0
I
slijedi da je i f R00 ( x ) pozitivno semidefinitna matrica.
Neka P oznaava projekciju na . To je preslikavanje koje varijabli x pridruuje najbliu toku (u l2 normi) iz skupa . Tada vrijedi
ako je ( x )i Li
Li ,
( x )i , ako je Li < ( x )i < Ui .
(P ( x ))i =
Ui ,
ako je ( x )i Ui
Jedna karakterizacija stacionarne toke dana je sljedeim teoremom.
80
81
Ovaj teorem emo dokazati u poglavlju analize konvergencije jer emo tada
imati sve tvrdnje koje su potrebne za dokaz.
U nastavku emo navesti nekoliko rezultata vezanih uz dovoljne uvjete koristei pojam reduciranog Hessijana. Ako je x ? stacionarna toka te i N ( x ? ),
tada je x ? tei za sve t dovoljno male (ei je i-ti kanonski vektor).
Budui da je
d f ( x ? tei )
= f ( x ? )ei 0
dt
stoga
( f ( x ? ))i = 0 za sve i N ( x ? ).
Pojam nedegenerirane stacionarne toke problema koristit emo u formulaciji dovoljnih uvjeta. Navedeni pojam vaan je i za definiranje zaustavnog kriterija.
Definicija 14. Toka x ? je nedegenerirana stacionarna toka problema (5.1)
ako je x ? stacionarna toka i vrijedi
( f ( x ? ))i 6= 0 za sve i A( x ? ).
Ako je x ? i rjeenje problema (5.1), tada kaemo da je x ? nedegenerirani lokalni
minimum.
Ako je S proizvoljan skup indeksa definiramo
( x )i , ako je ( x )i S
(PS x )i =
.
0,
inae
Prvo emo dokazati lemu u kojoj se koristi pojam nedegeneriranosti, a koristit emo je u nastavku poglavlja.
Lema 12. Neka je x ? nedegenerirana stacionarna toka i pretpostavimo da A( x ? ) nije
prazan. Tada postoji takav da vrijedi
f ( x ? )T ( x x ? ) = f ( x ? )T PA(x? ) ( x x ? ) kPA(x? ) ( x x ? )k
za sve x .
Dokaz. Ako je i A( x ? ) tada nedegeneriranost i stacionarnost povlai da postoji
> 0 tako da je ili
( x ? )i = Li
( f ( x ? ))i ili ( x ? )i = Ui
( f ( x ? ))i ( x x ? )i |( x x ? )i |.
( f ( x ? ))i .
Neka je e = x x ? i uoimo da je
0 (0) = f ( x ? ) T e = f ( x ? ) T (PA( x? ) e + PN ( x? ) e).
Stacionarnost toke povlai da f ( x ? ) T PN ( x? ) e = 0.
Ako je PA( x? ) e 6= 0 tada nedegeneriranost povlai da je
f ( x ? )PA(x? ) e > 0
i stoga vrijedi (i).
U suprotnom, ako je PA e = 0 tada je
00 (0) = ( x x ? ) T PN ( x? ) f 00 ( x ? )PN ( x? ) ( x x ? ) = ( x x ? ) T f R00 ( x ? )( x x ? ) > 0
stoga vrijedi (ii).
5.2
82
83
c k x x ( )k2 .
(5.3)
Pri odreivanju duljine koraka potrebno je odrebiti najmanji prirodni broj m tako
da vrijedi gornja nejednakost. Parametar c obino se stavlja na 104 [10].
Algoritam za gradijentnu metodu dan je sljedeim algoritmom.
Zaustavni kriterij
Budui da promatramo minimizaciju funkcije uz ogranienja, moramo prilagoditi zaustavni kriterij koji e ukljuiti ogranienja na odgovarajui nain. Primijetimo da f ne mora biti nula prilikom rjeavanja problema (5.1). Zaustavni
kriterij koji se namee u sluaju minimizacije funkcije s ogranienjima ukljuuje
razliku x i x (1). Ako je razlika mala, onda moemo zaustaviti iterativni proces.
Kako bismo potvrdili da je razlika x i x (1) dobra mjera za zaustavljanje, izvest
emo dovoljne uvjete koji potvruju opravdanost ovog zaustavnog kriterija.
Prisjetimo se oznake e = x x ? . Prvo emo iskazati pomoni rezultat koji
nam je potreban za dokaz teorema.
Lema 13. Neka je f dva puta neprekidno diferencijabilna na i neka je x ? nedegenerirana stacionarna toka problema (5.1). Neka je (0, 1]. Tada za x dovoljno blizu x ?
vrijedi
A( x ) A( x ? ) i ( x )i = ( x ? )i za sve i A( x ),
2. A( x ()) = A( x ? ) i ( x ())i = ( x ? )i za sve i A( x ? ).
1.
Dokaz. Neka je 1 =
i N ( x ? )
N (x? ) N (x)
84
kP ( x ) P (y)k k x yk
za sve x, y Rn . Budui da je 2 f neprekidna, postoji Lipschitzova konstanta
L za f u . Ako iskoristimo injenicu da je x ? stacionarna toka uz Teorem 22
imamo
x ? = x ? () = P ( x ? f ( x ? )).
Nadalje,
k x ? x ()k = kP ( x ? f ( x ? )) P ( x f ( x ))k
kek + k f ( x ? ) f ( x )k
(1 + L)kek.
(5.4)
(5.5)
Meutim, ako je
k x x (1)k Mkek.
85
Z 1
0
Z 1
0
e T PN ( x? ) 2 f ( x ? + te)e dt
e T PN ( x? ) 2 f ( x ? + te)PN ( x? ) e dt
k x x (1)k a + r r0 .
(5.6)
Analiza konvergencije
Za razliku od analize konvergencije za standardnu gradijentnu metodu sada moramo posebnu panju posvetiti ogranienjima. Analizu emo zapoeti lemom.
86
(y x ())T ( x () x + f ( x )) 0.
Dokaz. Koristei definiciju od P vidimo da je
k x () x + f ( x )k ky x + f ( x )k
za sve y . To znai da je t = 0 lokalni minimum funkcije
(t) = k(1 t) x () + ty x + f ( x )k2 /2
vrijedi
0 0 (0) = (y x ()) T ( x () x + f ( x ))
to je i trebalo pokazati.
Nejednakost iz prethodne leme obino emo koristiti u ekvivalentnoj formi
(5.7)
k x x ()k2 f ( x )T ( x x ()).
Moe se pokazati da, ako za duljinu koraka koristimo nejednakost (5.3) uz
pretpostavku o Lipschitz neprekidnosti, tada e duljina koraka biti pozitivan broj
to je preciznije pokazano sljedeim teoremom.
Teorem 25. Pretpostavimo da je f Lipschitz neprekidna s Lipschitzovom konstantom
L i neka je x . Tada je nejednakost za odreivanje koraka (5.3) zadovoljena za svaki
koji zadovoljava
2(1 c )
0< L .
Dokaz. Poet emo teoremom iz matematike analize. Uzmimo da je y = x
x (), tada imamo
f ( x y) f ( x ) = f ( x ()) f ( x ) =
Z 1
0
f ( x ty)T y dt.
Nadalje vrijedi
f ( x ()) = f ( x ) + f ( x ) T ( x () x )
Z 1
0
87
R1
gdje je E = 0 ( f ( x ty) f ( x )) T y dt. Ako iskoristimo Lipschitz neprekidnost dobit emo
k Ek Lk x x ()k2 /2.
Nadalje imamo
( f ( x ) f ( x ())) f ( x ) T ( x x ()) Lk x x ()k2 /2.
Ako sada iskoristimo tvrdnju iz Korolara 3 dobit emo
( f ( x ) f ( x ())) (1 L/2)k x x ()k2
iz ega slijedi tvrdnja teorema.
Prema oznakama iz algoritma za gradijentnu metodu s projekcijom moemo
zakljuiti da e odreivanje koraka biti zadovoljeno, ako ne prije, onda kada je
m
2(1 c )
L
m 1
2(1 L)
.
L
2(1c)
.
L
(5.8)
f ( x n ) T ( x n y ) = f ( x n ) T ( x n +1 y ) + f ( x n ) T ( x n x n +1 )
T
T
1
n ( x n x n +1 ) ( x n +1 y ) + f ( x n ) ( x n x n +1 ).
f ( xn ) ( xn y) k xn xn+1 k(
k xn+1 yk + k f ( xn )k).
(5.9)
(5.10)
Ako xnl x ? kao podniz { xn } tada moemo pogledati limese u gornjim njednakostima (5.9-5.10) kada l i time dokazati teorem.
Algoritam gradijentne metode s projekcijom ima vano svojstvo da, ako konvergira nedegeneriranom lokalnom minimumu, tada je aktivni skup An od xn
isti kao i A( x ? ) nakon konano mnogo iteracija.
f ( x ? )T ( x ? x ? ()) 0
i stoga x ? = x ? ().
Kako bismo dokazali obrat, pretpostavimo da je x ? = x ? () za sve 0.
To povlai da x ? ostaje isti kada primijenimo gradijentnu metodu s projekcijom.
Stoga je x ? i stacionarna toka.
Definirajmo funkciju
F ( x ) = x P ( x f ( x )).
Iz definicije aproksimacije x () imamo
F ( x ) = x x (1).
Ako u Teorem 22 uvrstimo = 1 dobit emo sljedei korolar.
Korolar 4. Neka je f Lipschitz neprekidno diferencijabilna funkcija na . Tada, ako je
x ? stacionarna, onda je F ( x ? ) = 0.
5.3
Ae ( x ) = {i : Ui ( x )i e ili ( x )i Li e}.
Slino kao u prethodnom poglavlju, neka se komplement skupa oznaava sa
N e ( x ) i zvat emo ga e-neaktivanim skupom.
88
R( x, e, 2R f ( x )) p = f ( xc ),
a odreuje duljinu koraka. Duljina koraka se odreuje kao u sluaju kod gradijentne metode s projekcijom.
Moe se pokazati da ako je 0 < e < min{(Ui Li )/2 : i = 1, 2, . . . , n} i ako
je R( x, e, 2R f ( x )) simetrina pozitivno definitna matrica tada je
f ( x ()) < f ( x ),
za dovoljno mali . tovie, u [18] je pokazano da je zadovoljen dovoljni uvjet
f ( x ()) f ( x ) C f ( x ) T ( x x ()),
za dovoljno mali .
U sljedeem algoritmu dan je formalan opis Newtonovog algoritma s projekcijom. Napomenimo da ako je poetna aproksimacija x0 daleko od x ? i reducirani hessijan nije simetrina pozitivno definitna matrica tada odabir duljine
koraka (stoga i cjelokupni iterativni proces) moe biti problem. Algoritam koristi
injenicu da je
R( x, e, 2R f ( x )) = R( x, e, 2 f ( x ))
89
A( xc ) = A( x+ ) = A( x ? )
to povlai da
PA(xc ) ec = PA(xc ) e+ = 0.
kek ? /M,
gdje je M konstanta iz Teorema 24. Tada Teorem 24 moemo primjeniti da bismo
zakljuili da je ec < ? i kec k < ? . Tada svaki indeks i Aec ( xc ) takoer mora
biti i u A( xc ) = A( x ? ).
Stoga
Aec ( xc ) = A( xc ) = A( x ? ).
Iz ega slijedi da je
R( xc , ec , 2R f ( xc )) = 2R f ( xc ).
90
91
f ( xc ) = f ( x ? ) + 2 f ( xc )ec + E1 ,
(5.11)
gdje je
E1 =
Z 1
0
(2 f ( x ? + tec ) 2 f ( xc ))ec dt
PN (x) f ( x ? ) = PN (x? ) f ( x ? ) = 0.
(5.12)
PA(xc ) ec = 0.
=P ( x ? E2 ).
(5.13)
POGLAVLJE
6.1
Nelder-Mead algoritam
Nelder-Mead simpleks algoritam u pojedinom koraku algoritma formira simpleks S koji kao svoje vrhove sadri aproksimacije oko optimalne toke. Simpleks, u N dimenzija, je geometrijska figura od N + 1 toke i svih spojnica toaka,
poligonijalnih strana, itd... Na primjer u dvije dimenzije simpleks je trokut, a u
tri dimenzije tetraedar.
Kod Nelder-Mead simpleks algoritma vrhovi x1 , x2 , . . . , x N +1 su sortirani u
odnosu na vrijednosti funkcije f , odnosno
f ( x 1 ) f ( x 2 ) f ( x N +1 ).
(6.1)
x1 zovemo najboljim vrhom, a vrh x N +1 zovemo najloijim vrhom. Ukoliko je vrijednost funkcije u nekim vrhovima jednaka vrijednosti funkcije u x1 tada najbolji
vrh nije jedinstveno odreen.
U danom koraku algoritma cilj je zamijeniti najloiji vrh x N +1 sa novim vrhom oblika
(6.2)
x ( ) = (1 + ) x x N +1 ,
pri emu je x centroid konveksne ljuske podataka ( x )1 , . . . , ( x ) N , odnosno
x=
1
N
( x )i .
(6.3)
i =1
92
{ r , e , vk , uk } = { 1, 2, 1/2, 1/2 }.
Slika 6.1 pokazuje mogue transformacije opisane u navedenom algoritmu u sluaju dvije dimenzije (N = 2). Vrhovi poetnog simpleksa numerirani su sa 1, 2 i
3.
93
94
6.2
95
MDS algoritam
x2
x3
x3
c2
c3
c3
x1
x1
e2
c2
x2
e3
e2
e3
Slino kao kod Nelder-Mead algoritma imamo parametre ekspanzije i kontrakcije (e i k ). Tipine vrijednosti tih parametara su 2 i 1/2.
6.3
96
97
ii) Ovaj pristup nema svojstvo kvadratine konvergencije, ali cilj je pokuati
pronai nekoliko dobrih smjerova koji vode u minimum umjesto N nuno
konjugiranih smjerova. Osnovna ideja je modificirati Powellovu metodu
s tim da i dalje uzimamo novi smjer PN P0 . Promjena je u tome da odbacujemo stari smjer u smjeru kojeg je funkcija imala najvei pad. Ta injenica ini se paradoksalnom, budui da je taj smjer bio najbolji u prethodnoj iteraciji. Meutim, to je vjerojatno glavna komponenta u novom
smjeru. Stoga, ako zaboravimo navedeni smjer izbjei emo linearnu zavisnost. Postoje neke iznimke u toj osnovnoj metodi, a vie o tome moe
se pronai u [23].
98
Literatura
[1]
M. Ali, G. Nogo, Optimizacija: Uvod u teoriju nunih i dovoljnih uvjeta ekstrema, Odjel za matematiku, Sveuilite u Osijeku, Osijek, 2004.
[2]
M. Avriel, Nonlinear Programming: Analysis and Methods 2ed., Dover Publications, Inc. Mineola, New York, 2003.
[3]
[4]
J. F. Bonnans, J.C. Gilbert, C. Lemarchal, C.A. Sagastizbal, Numerical Optimization. Theoretical and Practical Aspects, Springer-Verlag, Berlin, 2006.
[5]
[6]
R. P. Brent, Algorithms for Minimization without Derivatives, Dover Publications, New York, 1973.
[7]
[8]
[9]
[10] J. E. Dennis, Jr, R. B. Schnabel, Numerical Methods for Unconstrained Optimization and Nonlinear Equations, SIAM, Philadelphia, 1996
[11] J. E. Dennis Jr., J. J. More, Quasi-Newton methods, motivation and theory, SIAM
Review, 19(1977), 46-89
[12] Douglas N. Arnold, A Concise Introduction to Numerical Analysis, School of Mathematics, University of Minnesota, Minneapolis, MN 55455,
http://umn.edu/ arnold/
99
Literatura
[13] P. E. Gill, W. Murray and M. H. Wright, Practical Optimization, Academic
Press, 1981
[14] J. B. Hiriart-Urruty, C. Lemarchal, Fundamentals of Convex Analysis,
Springer-Verlag, Berlin - Heidelberg, 2001.
[15] F. Jarre, J. Stoer Optimierung, Springer Verlag, Berlin Heidelberg, 2004.
[16] D. Juki, R. Scitovski, Metode optimizacije predavanja, Tuzla, 2005.
[17] D. Kincaid,W. Cheney, Numerical Analysis, Brooks/cole Publishing company, New York, 1996.
[18] C. T. Kelley, Iterative Methods for Optimization, SIAM, Philadelphia, 1999
[19] P. Lancaster, K. alkauskas, Curve and Surface Fitting: An Introduction, Academic Press, London, 1986.
[20] J. M. Ortega,W. C. Rheinboldt, Iterative Solution of Nonlinear Equations in Several Variables, Academic Press, New York, 1970. (postoji i ruski prijevod)
[21] R. Plato, Concise Numerical Mathematics, Providence: American Mathematical Society, 2003.
[22] B.N.Psheniyni, Yu.M.Danilin, Chislennye metody v ekstremaljnyh zadachah, Nauka, Moskva, 1975
[23] W. H. Press, B. P. Flannery, S. A. Teukolsky, W. T. Vetterling, Numerical
Recipesin C, Cambridge University Press, Cambridge, 1989
[24] W. Rudin, Principles of Mathematical Analysis, McGraw-Hill, New York, 1953
[25] A. Ruszczynski, Nonlinear Optimization, Princeton University Press, Princeton and Oxford, 2006
[26] R. Scitovski, Numerika matematika, Odjel za matematiku, Sveuilite u Osijeku, Osijek, 2004
[27] R. Scitovski, . Ungar, D. Juki, Approximating surfaces by moving total least
squares method, Applied Mathematics and Computation 93(1998) 219-232
[28] J. Stoer, R. Bulirsch, Introduction to Numerical Analysis, Springer-Verlag, New
York, 1993
[29] F. P. Vasiljev, Lekcii po metodam resheniya ekstremalnyh zadach, Moskovski univerzitet, Moskva, 1974.
[30] S. Wolfram, The Mathematica Book, Wolfram Media, Champaign, 2011.
[31] S. Zlobec, J. Petri, Nelinearno programiranje, Nauna knjiga, Beograd, 1989.
100