You are on page 1of 101

Rudolf Scitovski

Ninoslav Truhar
Zoran Tomljanovi

Metode optimizacije

Odjel za matematiku
Sveuilita Josipa Jurja Strossmayera
Osijek, 2012.

Sadraj
Sadraj

Uvod

Konveksni skupovi i konveksne funkcije


2.1 Konveksni skupovi . . . . . . . . . . . . .
2.2 Konveksne funkcije . . . . . . . . . . . . .
2.3 Lokalni minimum . . . . . . . . . . . . . .
2.4 Primjeri koji vode na probleme ekstrema .

.
.
.
.

5
5
6
12
15

Jednodimenzionalna minimizacija
3.1 Strogo kvazikonveksne funkcije . . . . . . . . . . . . . . . .
3.2 Metoda jednodimenzionalne minimizacije . . . . . . . . . .

19
19
22

Problem viedimenzionalne minimizacije


4.1 Metode izbora duljine koraka . . . . . . . . . . . . . . . . .
4.2 Gradijentna metoda . . . . . . . . . . . . . . . . . . . . . . .
4.3 Newtonova metoda . . . . . . . . . . . . . . . . . . . . . . .

34
36
41
49

Problem uvjetne minimizacije


5.1 Nuni i dovoljni uvjeti za optimalnost . . . . . . . . . . . .
5.2 Gradijentna metoda s projekcijom . . . . . . . . . . . . . . .
5.3 Newtonova metoda s projekcijom . . . . . . . . . . . . . . .

78
79
82
88

Metode direktnog traenja


6.1 Nelder-Mead algoritam . . . . . . . . . . . . . . . . . . . . .
6.2 MDS algoritam . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Powellova metoda u vie dimenzija . . . . . . . . . . . . . .

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

2. Ako funkcija f postie svoj infimum na D, odrediti argmin f ( x ), tj.


xD

odretiti toku x ? D u kojoj funkcija f postie svoj infimum;


3. Ako se inf f ( x ) ne postie na D, odrediti niz ( xn ) D za koji je
xD

lim f ( xn ) = f ? .
no

Primijetite da u opem sluaju argmin f ( x ) ne mora biti jedna toka, ve


xD

vie toaka ili itav podskup u D.

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

Definicija 1. Kaemo da je skup D Rn konveksan ako za bilo koje dvije


toke x1 , x2 D takoer sadri i segment odreen tim tokama, tj.
x1 , x2 D x1 + (1 ) x2 D

[0, 1].

Ako je D Rn neki skup, onda najmanji konveksni skup koji sadrava


skup D zovemo konveksna ljuska1 skupa D. Primjerice, ako se skup D sastoji od tri razliite toke iz Rn , onda je njegova konveksna ljuska trokut s
vrhovima u tim tokama. Moe se pokazati da vrijedi:
Konveksan skup D R sadri svaku konveksnu kombinaciju od
konano svojih toaka, tj.
!
n

( x1 , . . . , x n D )
1 En.:

1 , . . . , n 0,

i = 1

i =1

i xi D;

i =1

convex hull

2.2. Konveksne funkcije

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).

Definicija 3. Kaemo da je skup D Rn jako konveksan ako postoji takva


konstanta > 0, tako da

( x1 , x2 D ) kyk k x2 x1 k2 = x1 +2 x2 + y D.
Zadatak 1:

Dokaite sljedee tvrdnje:

1. Presjek konveksnih skupova je konveksan skup. Mora li unija dva


konveksna skupa biti konveksan skup ?
2. Ako su A, B konveksni skupovi, onda su i A, A + B, A B konveksni skupovi.
Zadatak 2:

Provjerite konveksnost slijedeih skupova:

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

Definicija 4. Kaemo da je funkcija f : Rn R konveksna ako vrijedi


f (x + (1 )y) f ( x ) + (1 ) f (y)

(2.1)

x, y Rn i [0, 1].
Primjer 1:
3]:

Navedimo neka elementarna svojstva konveksnih funkcija [2,

2.2. Konveksne funkcije

7
n

ako su f 1 , . . . , f n konveksne funkcije i 1 , . . . , n 0, onda je i f i


i =1

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)

Definicija 6. Kaemo da je funkcija f : Rn R jako konveksna2 ako postoji


takav realni broj > 0 da vrijedi


x +y
(2.3)
12 ( f ( x ) + f (y)) k x yk2 , x, y Rn .
f
2
Primjedba 1. Moe se pokazati da je funkcija f : Rn R jako konveksna
ako postoji realan broj > 0 tako da bude
f (x + (1 )y) f ( x ) + (1 ) f (y) (1 )k x yk2 ,

(2.4)

x, y R , [0, 1].
n

Naime, ako u (2.4) stavimo =

1
2

i = 41 , dobivamo (2.3).

Primjer 2: Neka je A : Rn Rn simetrini linearni operator. Tada je


kvadratna forma f : Rn R+ , f ( x ) := 21 (A x, x ) konveksna funkcija onda
i samo onda ako je oprator A semidefinitan (A 0), tj. ako su sve njegove
svojstvene vrijednosti nenegativne: oznaimo ih s 1 n 0. Kako
je (vidi primjerice [14], [15])
n k x k2 (A x, x ) 1 k x k2 za sve x Rn ,

(2.5)

moe se pokazati da vrijedi


f (x + (1 )y) f ( x ) + (1 ) f (y) 12 n (1 )k x yk2 . (2.6)
2 En.:

strogo konveksna funkcija = strictly convex function;


= strongly convex function

jako konveksna funkcija

2.2. Konveksne funkcije

Dakle, ako je A pozitivno definitan linearan operator (n > 0), funkcija f


je jako konveksna funkcija.
Pokaimo da iz (2.5) slijedi (2.6). Iz definicije kvadratne forme f ( x ) slijedi da
je
f (x + (1 )y) =

=
=
=

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

2(1 )(Ay, x ) + ((1 ) (1 ))(Ay, y) .

Dakle, vidimo da vrijedi


f (x + (1 )y) = f ( x ) + (1 ) f (y) 12 (1 ) ((A( x y), ( x y))) ,
to zajedno sa (2.5) povlai (2.6).
Navedimo jo neke primjere konvesnih odnosno jako konveksnih funkcija.
Primjer 3: Funkcija f : R2 R, f ( x1 , x2 ) = x12 + x22 je jako konveksna funkcija, a funkcija g : R2 R, g( x1 , x2 ) = x12 je konveksna, ali nije
jako konveksna. Napiite matrice kvadratnih formi f i g i definirajte odgovarajue linearne operatore. to su njihove svojstvene vrijednosti? Kako
izgledaju plohe ovih funkcija?
Zadatak 4: Pokaite da je svaka jako konveksna funkcija ujedno i konveksna, ali da obrat ne vrijedi.
Zadatak 5: Provjerite jesu li sljedee funkcije konveksne, strogo konveksne ili jako konveksne funkcije:
a) f ( x ) = 3x 4,
b) f ( x ) = 6 5x 2x2 + x3 ,
c) f ( x ) = 3x2 + 2x 3,
d) f ( x ) = e x+1 + 5.
Rjeenje: konveksne su funkcije pod a), c), d), strogo konveksne su pod
c), d), a jako je konveksna funkcije pod c).

2.2. Konveksne funkcije

Zadatak 6: Neka je f konveksna funkcija, f : D R,gdje je D Rn


konveksan skup. Tada za svaki izbor toaka x1 , x2 , . . . , xm D i skalara
m

1 , . . . , m 0,

i = 1 vrijedi

i =1

i xi

i =1

i f ( xi )

(Jensenova nejednakost).

i =1

Nadalje, koristei Jensenovu nejednakost dokaite da vrijedi


!
!
m

i xi

i =1

i =1

i
i

1 za x1 , . . . , xm > 0.

Zadatak 7: Neka su g, h : D R konveksne funkcije, D konveksan te


neka su , pozitivni realni brojevi. Dokaite da je tada i f = g + h
konveksna funkcija.
Zadatak 8:

Provjerite konveksnost sljedeih funkcija

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.

2.2. Konveksne funkcije

10

Definicija 7. [20] Kaemo da funkcija f : D R, D Rn u toki


x Int D Gteauxdiferencijabilna (Gdiferencijabilna) ako postoji a Rn ,
takav da za svaki h Rn vrijedi
lim 1t | f ( x + th) f ( x ) ta T h| = 0.

(2.7)

t 0

Ako za h redom uzmemo j-ti koordinatni vektor e j , dobivamo


lim 1t | f ( x + te j ) f ( x ) ta j | = 0.
t 0

Dakle, komponente vektora a su parcijalne derivacije a j =

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

Ako je f C p ( D ), x + h D za [0, 1], onda vrijedi Taylorova


formula
f ( x + h) f ( x ) = f 0 ( x )T h + o (|h|),
0

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)

Lema 1. Ako je f C1 ( D ) konveksna funkcija na konveksnom skupu D, onda


vrijedi

( f (y), x y) f ( x ) f (y) ( f ( x ), x y),

x, y D. (2.10)

Dokaz. Oduzimajui f (y) na obje strane nejednakosti (2.1) dobivamo


f (y + ( x y)) f (y) ( f ( x ) f (y)).
Primijenjujui na lijevoj strani Lagrangeov teorem o srednjoj vrijednosti,
dobivamo
f (y + ( x y)) f (y) = ( f (y + ( x y)), ( x y)),

(0, 1).

2.2. Konveksne funkcije

11

Nakon dijeljenja nejednakosti s i stavljanja +0, dobivamo lijevu


stranu traene nejednakosti.
Desna strana nejednakosti dokazuje se na slian nain. Zaista, lijeva
strana nejednakosti (2.10) glasi
f ( x ) f (y) ( f (y), ( x y)) ,

to nakon zamjene x y, daje

f (y) f ( x ) ( f ( x ), (y x )) ,

a nakon dijeljenja s (1) dobivamo desnu stranu nejednakosti (2.10).


Lema 2. Neka je D Rn konveksan skup. Funkcija f C1 ( D ) je jako konveksna onda i samo onda ako postoji m > 0 takav da je

( f (y) f ( x ), y x ) mky x k2
2 ]

Dokaz. Prema [1, Lema 1.1.


funkcija f
onda i samo onda postoji m > 0 takvo da je

za sve x, y D.
C1 ( D )

(2.11)

je jako konveksna

f ( x ) f (y) ( f (y), ( x y)) +

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)

S druge strane ako u prethodnoj jednakosti zamjenimo x y slijedi da je


f konveksna funkcija ako i samo ako

odnosno
f ( x ) f (y) ( f ( x ), ( x y))
Sada iz (2.12) i (2.14) slijedi

( f (y), ( x y)) + m2 ky x k2 ( f ( x ), ( x y)) m2 ky x k2 ,

za sve x, y D, to povlai (2.11).

Teorem 1. Neka je D Rn konveksan skup takav da je Int D 6= . Funkcija


f C2 ( D ) je jako konveksna onda i samo onda ako postoji m > 0 takav da je

( 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)

S druge strane Taylorova fromula u okolini toke x daje


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. Lokalni minimum

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.

Teorem 2. Ako je f : D R, D Rn jako konveksna neprekidna funkcija


na zatvorenom konveksnom skupu D, onda vrijedi:
(i) funkcija f je ograniena odozdo na D, tj. f ? := min f ( x ) > ;
(ii) postoji jedinstvena toka x ? D, takva da bude f ( x ? ) = f ? ;
(iii) skup M (y) = { x D : f ( x ) f (y)} je ogranien za svaki y D.
Dokaz. Za dokaz ekvivalencije (i) i (ii) vidi na primjer [1, Teorem 2.1]. Ekvivalencija (i) i (iii) slijedi iz injenica da je f zbog jake konveksnosti neprekidna na D, pa je stoga i svaki skup M (y) = { x D : f ( x ) f (y)}
neprazan i ogranien (vidi primjerice [1, Korolar 1.1]).

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)

Ako je x ? Int D, onda je ovaj uvjet ekvivalentan jednakosti f ( x ? ) = 0.


Dokaz. Pretpostavimo da konveksna funkcija f postie svoj infimum u
toki x ? D. Tada za svaki x D i svaki t [0, 1] vrijedi x ? + t( x x ? ) =
tx + (1 t) x ? D, pa je f ( x ? ) f ( x ? + t( x x ? )), odnosno
f ( x ? + t( x x ? )) f ( x ? ) 0,

t [0, 1] .

Koristei svojstva derivacije sloene funkcije, slijedi

( f ( x ? ), x x ? ) = lim+ 1t [ f ( x ? + t( x x ? )) f ( x ? )] 0.
t 0

Drugi smjer i ekvivalentnost uvjeta (2.17) i jednakosti f ( x ? ) = 0 za x ?


Int D, dokaite sami.

2.3. Lokalni minimum

13

Lema 4. Neka je x0 Rn proizvoljna toka i f C2 (Rn ) jako konveksna


funkcija. Tada je skup Y = { x Rn : f ( x ) f ( x0 )} zatvoren, ogranien i jako
konveksan.
Dokaz. Prema (2.4) slijedi da postoji > 0 takvo da
f

x1 + x2
2


+ y f

x1 + x2
2


2
+ (1 ) f (y) (1 ) x1 +2 x2 y ,

x, y Rn i [0, 1]. Za bilo koje x1 , x2 Y, i y Y takav da je


kyk k x1 x2 k2 , budui je (1 ) 0, imamo


f x1 +2 x2 + y f x1 +2 x2 + (1 ) f (y)

12 ( f ( x1 ) + f ( x2 )) k x1 x2 k2 + (1 ) f (y)

21 ( f ( x0 ) + f ( x0 )) + (1 ) f ( x0 ) = f ( x0 ) ,
x2 + y Y, odnosno Y je jako konveksan skup.
to znai da je x1 +
2
Primjer 4:

Razmotrimo kvadratnu funkciju f : R2 R,


f ( x1 , x2 ) = x12 + x1 x2 + x22 .

Ovu funkciju moemo promatrati


kao kvadratnu
formu kojoj je pri

1 1/2
druena simetrina matrica A =
. Ovoj matrici u bazi (e1 , e2 )
1/2 1
pridruen je jedinstveni simetrini linearni operator A sa svojstvenim vrijednostima 1 = 12 , 2 = 32 . Prema Primjeru 2 ova funkcija je jako konveksna na itavom podruju definicije, a prema Lemi 3 i Teoremu 2 postoji
jedinstvena toka minimuma x ? , koja se moe pronai tako da rijeimo
jednadbu f ( x ) = 0. Matrica drugih derivacija (Hessijan) funkcije f
u toki x ? mora biti pozitivno definitna. Lako s moe vidjeti da je toka
minimuma ove funkcije x ? = (0, 0).
Nadalje, ako pretpostavimo da je f : D R, D Rn dovoljno puta
diferencijabilna funkcija definirana na otvorenom skupu D Rn , onda
moemo koristiti jednostavne nune i dovoljne uvjete egzistencije lokalnog minimuma, koji su dobro razraeni u elementarnoj analizi. Toku
x ? D za koju vrijedi f ( x ? ) = 0 zvat emo stacionarna toka funkcije f .
Sljedei teorem daje nune uvjete lokalnog minimuma u tom sluaju.
Teorem 3. Neka je f C1 ( D ) neprekidno diferencijabilna funkcija definirana
na otvorenom skupu D Rn i neka je x ? toka lokalnog minimuma od f . Tada
vrijedi
(i) x ? je stacionarna toka funkcije f , tj. f ( x ? ) = 0,

2.3. Lokalni minimum

14

(ii) ako je f C2 ( D ), njezin hesijan 2 f ( x ? ) u toki x ? je pozitivno semidefinitna matrica.


Dokaz. (i) Pretpostavimo da je f C1 ( D ) i da x ? nije stacionarna toka
funkcije f , tj. f ( x ? ) 6= 0 i definirajmo funkciju
(t) := f ( x ? t f ( x ? )) ,

t R.

Za maleni |t|, t R funkcija je neprekidno diferencijabilna funkcija za


koju vrijedi
0 (0) = f ( x ? )T f ( x ? ) = k f ( x ? )k22
Dako je f ( x ? ) 6= 0, mora biti 0 (0) < 0. Zato postoji e > 0, takav
da bude (e) < (0). To znai da f ( x ? e f ( x ? )) < f ( x ? ), odnosno
x ? nije toka lokalnog minimuma od f , to je u suprotnosti s polaznom
pretpostavkom.
(ii) Pretpostavimo da je f C2 ( D ) i da 2 f ( x ? ) nije pozitivno semidefinitna matrica. To znai da postoji vektor d Rn , d 6= 0, takav da
je d T 2 f ( x ? )d < 0. Prema Taylorovom teoremu, a zbog injenice da je
f ( x ? ) = 0, za maleni t > 0 postoji (0, t), takav da bude
f ( x ? td) = f ( x ? ) + 21 t2 d T 2 f ( x ? d)d.
Odavde za dovoljno maleni t > 0 zbog neprekidnosti od 2 f vrijedi
f ( x ? td) < f ( x ? ). To bi znailo da x ? nije toka lokalnog minimuma
od f , to je u suprotnosti s polaznom pretpostavkom.
Sljedei teorem daje dovoljne uvjete lokalnog minimuma.
Teorem 4. Neka je f C2 ( D ), D Rn otvoren skup, a x ? D stacionarna
toka od f u kojoj je hesijan 2 f ( x ? ) pozitivno definitan. Tada je x ? toka strogog
lokalnog minimuma funkcije f .
Dokaz. Kako je x ? Int D i f ( x ? ) = 0, prema Taylorovom teoremu za
svaki dovoljno maleni vektor d Rn vrijedi
f ( x ? + d) = f ( x ? ) + 12 d T 2 f ( x ? + d)d,

(0, 1).

Kako je 2 f ( x ? ) pozitivno definitan, postoji > 0, takav da za sve d Rn


vrijedi
d T 2 f ( x ? )d d T d.

2.4. Primjeri koji vode na probleme ekstrema

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

pri emu je koritena Cauchyjeva nejednakost i svojstvo kompatibilnosti


vektorskih i matrinih normi. Zbog > 0 i neprekidnosti od 2 f , postoje
dovoljno maleni vektori d takvi da k2 f ( x ? ) 2 f ( x ? + d)k > 0, iz
ega slijedi da je f ( x ? + d) > f ( x ? ) za sve dovoljno malene vektore d 6= 0.
Po Definiciji 8 to znai da je x ? toka strogog lokalnog minimuma funkcije
f.
Zadatak 10: Odredite toke lokalnog minimuma funkcije
a) f ( x, y) = 2 2x + x2 + 12y + 2y2 ,
b) f ( x, y) =

16
x

x
2y

+ y.

Rjeenje: a) minimum je u toki (1, 3), b) minimum je u toki (8, 2).

2.4

Primjeri koji vode na probleme ekstrema

Navest emo nekoliko primjera u kojima se prirodno pojavljuje problem


optimizacije funkcije jedne ili vie varijabli. Ovi primjeri kasnije e nam
posluiti kao test-primjeri kod raznih metoda minimizacije.
Primjer 5: Treba izraunati l2 udaljenost toke T0 = (3, 4) do kubine
parabole q( x ) = 0.5x3 6x + 2 (vidi Sliku 2.1).
30
20

10

T0
-4

-2

Slika 2.1: Udaljenost toke T0 do grafa kubne parabole


l2 udaljenost toke T0 = ( x0 , y0 ) do neke toke T = ( x, f ( x )) na grafu
funkcije q zadana je s
q
d2 ( x ) := d2 ( T0 ( x0 , y0 ), T ( x, q( x )) = ( x x0 )2 + (q( x ) y0 )2 ,

2.4. Primjeri koji vode na probleme ekstrema

16

pa je odreivanje udaljenosti toke T0 ( x0 , y0 ) do grafa funkcije q zadane


na intervalu [ a, b] problem odreivanja globalnog minimuma funkcije d2
na segmentu [ a, b] (vidiSliku 2.2a).
Budui da je x 7 x monotono rastua funkcija, onda na problem
moemo svesti na odreivanje globalnog minimuma jednostavnije funkcije
f ( x ) = ( x x0 )2 + ( q ( x ) y0 )2 .
(2.18)
(a) Funkcija d2

(b) Funkcija f

20
100

15

75
10
50
5

-4

-2

25
0

-4

-2

Slika 2.2: l2 i LS udaljenost toke T0 do grafa kubine parabole


Kako je q( x ) = 0.5x3 6x + 2 iz (2.18) dobivamo (vidi Sliku 2.2b)
f ( x ) = ( x 3)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

2.4. Primjeri koji vode na probleme ekstrema

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

Slika 2.3: l1 udaljenost toke T0 do grafa kubine parabole


Primjer 7: Funkcija f ( x1 , x2 ) = 2x13 + x1 x22 + 5x12 + x22 ima etiri stacionarne toke: T1 = (0, 0), T2 = ( 35 , 0), T3 = (1, 2), T4 = (1, 2).
Moe se pokazati da je T1 toka minimuma, T2 toka maksimuma, a da
su T3 i T4 sedlaste toke. Na Slici 4 prikazana je ploha i ContourPlot ove
funkcije.
(b) ContourPlot funkcije

(a) Grafploha funkcije

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

Slika 2.4: Funkcija f ( x1 , x2 ) = 2x13 + x1 x22 + 5x12 + x22


Primjer 8: Zadani su podaci mjerenja (ti , yi ) i = 1, . . . , m, yi > 0. Treba
odrediti optimalne parametre b? , c? eksponencijalne model-funkcije f (t; b, c) =
b ect , tako da suma kvadrata izmjerenih od teoretskih vrijednosti bude minimalna (vidi Sliku 2.5).
Optimalne parametre b? , c? eksponencijalne model-funkcije f (t; b, c) =
potrait emo tako da minimiziramo funkcional

b ect

F (b, c) =

1
2

(b ecx

i =1

y i )2 .

2.4. Primjeri koji vode na probleme ekstrema

18

1.0
0.8
0.6
0.4
0.2
0.5

1.0

1.5

2.0

Slika 2.5: Podaci i najbolja LS eksponencijalna model-funkcija


Moe se pokazati da uvijek postoji toka (b? , c? ) R2 u kojoj se postie globalni minimum ove funkcije. Primijetite da se u ovom sluaju radi
o problemu minimizacije glatke (viestruko derivabilne) funkcije dviju
varijabli, pa govorimo o problemu viedimenzionalne minimizacije.

POGLAVLJE

Jednodimenzionalna
minimizacija
Zadana je funkcija f : [ a, b] R, koja na intervalu [ a, b] postie inf f ( x ).
x [ a,b]

Promatramo sljedee probleme:


1. Odrediti x ? = argmin f ( x ) i f ? = 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

Strogo kvazikonveksne funkcije

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]

[ a, b] i ako postoje , [ a, b], a b takvi da je


(i) funkcija f strogo monotono padajua na [ a, ) (ako je a <
b);

(ii) funkcija f strogo monotono rastua na ( , b] (ako je a < b);


19

3.1. Strogo kvazikonveksne funkcije

20

(iii) f (u) = f ? za svaki u (, ) (ako je a < b).


Termin strogo kvazikonveksna funkcija u literaturi moe se pronai
i pod nazivom strogo unimodalna funkcija (vidi primjerice [15]).
Pojam kvazikonveksne, odnosno strogo kvazikonveksne funkcije moe
se definirati i na drugi nain (vidi primjerice [20, 29]), pri emu taj pojam moemo definirati za realnu funkciju definiranu na nekom skupu
D Rn .
Definicija 11. Funkcija f : D R, D Rn je kvazikonveksna na D ako
vrijedi
f (x + (1 )y) max{ f ( x ), f (y)}

x, y D,

[0, 1].

(3.1)

Ako u (3.1) vrijedi stroga nekednakost za (0, 1) i x 6= y, onda kaemo


da je f strogo kvazikonveksna na D.
Primjedba 2. Svaka konveksna funkcija je kvazikonveksna, ali obrat ne vrijedi. Ako su funkcije f i , i = 1, . . . , m kvazikonveksne na D, onda je i funkcija f ( x ) = max f i ( x ) takodjer kazikonveksna na D.
i =1,...,m

Lema 5. ([20, 9]) Funkcija f : D R je kvazikonveksna na D onda i samo


onda ako je za svaki R nivo-skup (level set) D = { x D : f ( x ) }
konveksan.
Dokaz. (Nunost) Pretpostavimo da je funkcija f : D R kvazikonveksna
i dokaimo da je za proizvoljni R skup D konveksan. Neka su x, y
D . To znai da je f ( x ) i f (y) . Kako je f kvazikonveksna, za
proizvoljni [0, 1] vrijedi
f ( x + (1 )y) max{ f ( x ), f (y)} = ,
iz ega zakljuujemo da je x + (1 )y D .
(Dovoljnost) Pretpostavimo da je za proizvoljni R skup D konveksan i dokaimo da je tada funkcija f : D R kvazikonveksna. Za proizvoljne x, y D definirajmo 0 = max{ f ( x ), f (y)}. Tada su x, y D0 ,
a kako je D0 konveksan, onda je x + (1 )y D0 , [0, 1], iz
ega slijedi
f ( x + (1 )y) 0 = max{ f ( x ), f (y)}.

3.1. Strogo kvazikonveksne funkcije

21

Primjer 9: Navedimo nekoliko primjera strogo kvazikonveksnih funkcija:


f 1 : [ a, b] R, f 1 ( x ) = x2 ,

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 ) =

Zadatak 11: Kako treba proiriti funkciju f ( x ) = 1/u12 u toki x0 = 0,


e
+1
da bi bila strogo kvazikonveksna na (a) [0, 1], (b) [1, 1], (c) [1, 0]?

x, x > 0
Zadatak 12: Kako treba proiriti funkciju f ( x ) =
u
x + A, x < 0
toki x0 = 0, da bi bila strogo kvazikonveksna na (a) [0, 1], (b) [1, 0],
(c) [1, 1], (d) [ a, b] na R ? Razmotrite sluajeve: A = 0, +1, 1.
Zadatak 13: Ako su f 1 , f 2 kvazikonveksne funkcije na [ a, b], jesu li takve
f
i funkcije: f 1 + f 2 , f 1 f 2 , f 1 f 2 , f12 ?
Zadatak 14: Pokaite da zbroj dvije strogo kvazikonveksne funkcije ne
mora biti strogo kvazikonveksna funkcija. Primjerice, za podatke (ti , yi ), i =
1, . . . , m, funkcija c 7 |ecti yi | je kvazikonveksna, ali funkcija
m

F (c) =

|ect

i =1

yi | ?

ne mora biti strogo kvazikonveksna funkcija. Pokuajte pronai podatke


koji potvruju ovu tvrdnju.

3.2. Metoda jednodimenzionalne minimizacije

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

Slika 3.1: Eksponencijalna regresija


Zadatak 15: Je li zbroj dvije kvazikonveksne funkcije takoer kvazikonveksna funkcija ? Za podatke (ti , yi ), i = 1, . . . , m, funkcija c 7 |ecti yi |
je kvazikonveksna. Je li i sljedea funkcija kvazikonveksna
m

F (c) =

|ect

i =1

3.2

yi | ?

Metoda jednodimenzionalne minimizacije

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:

3.2. Metoda jednodimenzionalne minimizacije


(a) f ( x1 ) < f ( x2 )

x1 x2

23

(b) f ( x1 ) > f ( x2 )

x1 x2

Slika 3.2: Metoda polovljenja


x ? [ a1 , b1 ],

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 ),

| x ? x2? | 21 (b2 a2 ) <

1
(b
23

a) + 34 <

a) + 12 <

1
(b
23

1
(b
22

a) + ,

a) +

Korak k: Neka je poznat interval [ ak1 , bk1 ] koji sadrava x ? i neka je


bk 1 a k 1 <

1
(b
2k 1

a) + ,

k 2.

Definirati:
x2k1 := 21 ( ak1 + bk1 ) 2 ,

x2k := 21 ( ak1 + bk1 ) + 2 , > 0;



[ ak1 , x2k ], f ( x2k1 ) f ( x2k )
[ a k , bk ] : =
.
[ x2k1 , bk1 ] , f ( x2k1 ) > f ( x2k )

3.2. Metoda jednodimenzionalne minimizacije

24

Svojstva:
bk ak = 12 (bk1 ak1 ) +

<

1
(b
2k

xk? := 12 ( ak + bk ),

| x ? xk? | 12 (bk ak ) <

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

Tablica 3.1: Metoda polovljenja za funkciju f ( x ) = 1 +

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

Slika 3.3: Metoda polovljenja za funkciju f ( x ) = 1 +

( x 1)2

0.25 0.5

p
3

1 1.25 1.5

( x 1)2

Nie je naveden kratki Mathematicaprogram za Metodu polovljenja.


In[1]:=f[x_] := 1 + ((x - 1)^2)^(1/3)
In[2]:=a = 0; b = 1.5; xz = 1; d = .25; n = 5; xa = Table[0, {i, n}];
In[3]:=Do[
x1 = (a + b - d)/2;
x2 = (a + b + d)/2;
If[f[x1] <= f[x2], b = x2, a = x1];
xa[[i]] = (a + b)/2;
Print[i, " ", {x1, x2}, " ", u = xa[[i]], " ", Abs[u - xz]];

3.2. Metoda jednodimenzionalne minimizacije

25

Print[sl[i] = Show[{sl1,
Graphics[{PointSize[.03], Point[{{xa[[i]], f[xa[[i]]]}}]}]}]];
, {i, n}]

Metoda zlatnog reza


Jedna korekcija prethodno pokazane metode polovljenja sastoji se u tome
da toke oko polovita intervala biramo u smislu omjera zlatnog reza:
x1 = a +

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.

Primijetite takoer da x1 ini zlatni rez na [ a, x2 ]:


x2 x1 < x1 a = b x2 ;

x2 a
x1 a

x1 a
x2 x1 .

Metodu zlatnog reza opist emo u nekoliko koraka


1. [ a1 , b1 ] = [ a, b];
Definirati x1 , x2 kao u (3.2-3.3);
f ( x1 ) f ( x2 ) = [ a2 , b2 ] = [ a1 , x2 ];
f ( x1 ) > f ( x2 ) =
[ a2 , b2 ] = [ x1 , b1 ];

51
b2 a2 = x2 a1 = b1 x1 = 2 (b a)

x2? = x1 ,
x2? = x2 ;

2. Simetrino s x2? izabrati toku x3 = a2 + b2 x2? , koja takoer ini


zlatni rez intervala [ a2 , b2 ].
Usporeujui f ( x3 ) i f ( x2? ) dobivamo novi interval [ a3 , b3 ];
 2
51
b3 a3 = x3 a2 = b2 x2? =
(b a)
2
Vie o metodi vidi u [15, 20, 29].
Primjer 13: Metodu zlatnog reza ilustrirat emo takoer na primjeru
minimizacije
funkcije iz Primjera 12: f : [1, 2] R, f ( x ) = 1 +
p
3
2
( x 1)
Tijek iterativnog procesa prikazan je u Tablici 3.2 i na Slici 3.4.
Nie je naveden kratki Mathematicaprogram za Metodu zlatnog reza.

3.2. Metoda jednodimenzionalne minimizacije

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

Tablica 3.2: Metoda zlatnog reza za funkciju f ( x ) = 1 +

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

Slika 3.4: Metoda zlatnog reza za funkciju f ( x ) = 1 +

( x 1)2

0.25 0.5

p
3

1 1.25 1.5

( x 1)2

In[1]:=f[x_] := 1 + ((x - 1)^2)^(1/3)


In[2]:=a = 0; b = 1.5; xz = 1; n = 5; xa = Table[0, {i, n}];
In[3]:=Do[
x1 = a + (3 - Sqrt[5.]) (b - a)/2;
x2 = a + (Sqrt[5.] - 1) (b - a)/2;
If[f[x1] <= f[x2], b = x2; xa[[i]] = x1, a = x1; xa[[i]] = x2];
Print[i, " ", {x1, x2}, " ", u = xa[[i]], " ", Abs[u - xz]];
Print[sl[i] = Show[{sl1,
Graphics[{PointSize[.03], Point[{{xa[[i]], f[xa[[i]]]}}]}]}]];
, {i, n}]

Primjer 14: Zadana je funkcija f : [2, 2] R, f ( x ) = 5| x + 1| |3x +


2| + |5x 2| (vidi Sliku 3.5a). Metodom polovljenja i metodom zlatnog
reza odredite njene toke lokalnih minimuma i maksimuma.

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)}.

3.2. Metoda jednodimenzionalne minimizacije

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)

Polinom P2 aproksimira funkciju f na intervalu [ a, b] (vidi Sliku 3.5a).


Zato emo umjesto traenja minimuma funkcije f potraiti minimum interpolacijskog polinoma drugog stupnja. Lako dobivamo stacionarnu toku
kvadratne funkcije (3.4) (provjerite!)
u0 =

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)

Jo je vano znati postie li P2 u toj toki minimu. To moemo ustanoviti


provjerom druge derivacije polinoma P2 u toki u0 (provjerite!)
P20 (u0 ) = 2

a( f (c) f (b))+c( f (b) f ( a))+b( f ( a) f (c))


( ab)( ac)(bc)

(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]]]

3.2. Metoda jednodimenzionalne minimizacije

28

Primjer 15: Za funkciju f : R R, f ( x ) = 5| x + 1| |3x + 2| + |5x 2|


iz Primjera 14 primjenom metode parabola odredit emo toku minimuma
funkcije f na intervalu [2, 2] uz tonost = .005.

-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

Slika 3.5: Metoda parabole za funkciju f ( x ) = 5| x + 1| |3x + 2| + |5x 2|


Tijek iterativnog postupka prikazan je u Tablici 3.3 i na Slici 3.5. Ulazne
podatke zadat emo na sljedei nain
ln[2]:=a=-2.; b=2.; eps=.00005; k=0;
c =(a+b)/2; If[f[c] = Min[f[a], f[b]], Print["Biraj novi c"]];
f[x_] := 5 Abs[x + 1] - Abs[3 x + 2] + Abs[5 x - 2];
slf = Plot[f[x], {x, a, b}, AxesOrigin -> {-2, 0},
ImageSize -> 200]
x = {a, c, b}; y = f[x];
slP = Plot[P[u, x, y], {u, -2, 2}, PlotRange -> {0, 20}];
Show[slP, slf]

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

Tablica 3.3: Iterativni proces Metode parabola

Zadatak 16: Primjenom metode parabole odredite aproksimaciju minimuma funkcije uz tonost = 0.005, ako je:

3.2. Metoda jednodimenzionalne minimizacije


1
a) f : [2, 1] R, f ( x ) = x 3 xx
2 .

b) f : [2, 2] R, f ( x ) = ( x + 2)3 4( x ) ln( x + 5).


Rjeenje: a) u?

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

3.2. Metoda jednodimenzionalne minimizacije


Navest emo pojedine principe koji su korisni. Interpolacija parabolom
radi se kroz toke x, v i w, a da bi korak dobiven metodom parabole bio
prihvatljiv mora biti zadovoljeno sljedee:
(i) Sljedea aproksimacija mora biti unutar intervala ( a, b);
(ii) Udaljenost potencijalne sljedee aproksimacije do x mora biti manja
od polovine udaljenosti zadnje dvije aproksimacije;
Pravilo (ii) osigurava da metoda parabole konvergira ka nekoj toki, umjesto
da je ula u neki ne konvergentni cikliki krug aproksimacija. U najgorem
moguem sluaju, gdje su aproksimacije dobivene metodom parabole prihvatljive, ali beskorisne, metoda e priblino alternirati s metode parabole
na metodu zlatnog reza, a konvergirat e zbog metode zlatnog reza. Usporeivanje udaljenosti izmeu zadnjih aproksimacija ini se nuno jer
iskustvo pokazuje da je bolje ne kanjavati algoritam za jedan lo korak, ako se u sljedeem koraku situacija moe popraviti. Nadalje, ako je
u danoj toki vrijednost funkcije poznata tada se u tokama, koje su unutar okoline radijusa e > 0, vrijednost funkcije ne rauna ponovno jer e
u vrijednosti funkcije tada dominirati pogreka pri njenom raunanju. U
tom sluaju uvode se dodatne modifikacije za dobivanje potencijalne nove
toke. Tipini zaustavni kriterij za Brentovu metodu je da su a i b udaljeni
2 x e.
Detaljniji opis Brentove metode moe se pronai u [6, 13], takoer u
[23] moe se nai cijeli algoritam Brentove metode.

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

3.2. Metoda jednodimenzionalne minimizacije

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

Slika 6.5. Newtonova metoda


Sljedeu aproksimaciju x1 traene toke birat emo tako da odredimo
minimum kvadratne funkcije k1
x1 = x0

f 0 ( x0 )
.
f 00 ( x0 )

Ponavljajui postupak dobivamo niz x0 , x1 , ..., xn , ... zadan rekurzivnom


formulom
f 0 (x )
xn+1 = xn f 00 (xnn ) , n = 0, 1, . . .
koji uz neke uvjete (vidi primjerice [10]) konvergira prema . Ovo je tzv.
obina Newtonova metoda minimizacije. Primijetite da se ona formalno podudara s Newtonovom metodom tangenti za rjeavanje jednadbe f 0 ( x ) =
0.

3.2. Metoda jednodimenzionalne minimizacije


Nie navodimo jednostavni Mathematica-modul za Newtonova metoda
minimizacije. Iterativni proces zaustavit emo kada | f 0 ( x )| < .
In[1]:= NewtonMin1[f_, x0_, eps_, it_] := Module[{x = N[x0], k = 0},
While[Print[k, ": ", {x, f[x], f'[x]}];
Abs[f'[x]] > eps && k < it,
x = x - f'[x]/f''[x];
k = k + 1
];
If[f''[x] < 0, Print["Pronadjena je stacionarna tocka"]];
{x,f[x]} ];

Primjer 16: Razmotrimo problem odreivanja euklidske udaljenosti toke


T0 = (3, 4) do kubne parabole q( x ) = .5x3 6x + 2 (vidi Primjer 5). Problem se svodi na minimizaciju derivabilne funkcije f ( x ) = ( x 3)2 +
(q( x ) 4)2 na intervalu [3, 4].
k

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

Tablica 3.4: Newtonova metoda

Uz poetnu aproksimaciju x0 = 4 (za x0 = 3 proces ne konvergira!) i


tonost = .005 tijek iterativnog procesa prikazan je u Tablici 3.4. To znai
da je udaljenost toke T0 do grafa kubne parabole q( x ) = .5x3 6x + 2
p
jednaka d( T0 , q) = f ( x ? ) = 0.618416, pri emu se taj minimum postie
u toki T ? ( x ? , q( x ? )) = (3.61676, 3.95472).
Pokuajte odgovarajuim izborom poetne aproksimacije pronai druge
lokalne minimume.
Lokalni minimum iste funkcije uspjeno moemo potraiti direktnom
primjenom Mathematica-modula: FindMinimum ili NMinimize. Primjena
Mathematica-modula: NMinimize ne daje globalni minimum funkcije f .
Zadatak 17: Odredite l2 udaljenost toke T0 = (2, 1) do funcije q( x ) =
x3 + x2 2x pomou Newtonove metode tangenti uz toleranciju e = 0.05.

32

3.2. Metoda jednodimenzionalne minimizacije


Rjeenje: x ? 1.27278, aproksimacija l2 udaljenosti je 0.739872.
Zadatak 18: Prethodni zadatak rjeite tako da metodom zlatnog reza
odredite l1 udaljenost uz e = 0.05.
Rjesenje: x ? 1.23607, aproksimacija l1 udaljenosti je 0.81966.

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, . . . ,

gdje je x0 poetna aproksimacija, pk vektor smjera kretanja od toke xk u toku


xk+1 , a k > 0 duljina koraka u smjeru vektora pk .
Kretanje od toke xk u toku xk+1 treba ostvariti tako da se postigne
smanjenje vrijednosti funkcije, tj. tako da bude f ( xk+1 ) < f ( xk ). To se
moe postii tako da vektor pk izaberemo tako da bude (vidi primjerice
[15])
( f ( xk ), pk ) < 0,
(4.1)
gdje je f ( xk ) gradijent funkcije f u toki xk .
Lema 6. [20] Neka je funkcional f : D Rn R, Gdiferencijabilan u nekoj
toki x Int ( D ) i neka je f 0 ( x ) p < 0 za neki p Rn . Tada postoji > 0,
takav da je
f ( x + p) < f ( x ), (0, ).

34

Problem viedimenzionalne minimizacije

35

Dokaz. Definiram pomonu funkciju : [0, +i R, () = f ( x + p),


za koju je
0 (0) = lim

() (0)

= lim

f ( x +p) f ( x )

= f 0 ( x ) p.

Kako je f 0 ( x ) p < 0 postoji > 0, takav da je x + p D i 1 ( f ( x + p)


f ( x )) < 0 za sve (0, ).
Navedimo nekoliko primjera.
(a)

Gradijentna metoda:

pk := f ( xk ). Vrijedi

f 0 ( xk ) pk = f 0 ( xk ) f ( xk ) = k f ( xk )k2 < 0.
(b)

Pokoordinatna relaksacija: izaberemo onaj bazni vektor ei {e1 , . . . , en }


za koji je

| 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:

pk := B1 f ( xk ), gdje je B > 0 pozitivno definitna matrica koja nalikuje na f 00 ( xk )


f 0 ( xk ) pk = f 0 ( xk ) B1 f 0 ( xk )T < 0.

4.1. Metode izbora duljine koraka

4.1

36

Metode izbora duljine koraka

Prema Lemi 6, ako je vektor smjera kretanja iz toke xk u toku xk dobro


definiran ( f 0 ( xk ) pk < 0), onda se u iterativnom procesu
x k +1 = x k + k p k ,
uvijek moe odabrati duljina koraka k > 0, tako da bude f ( xk+1 ) < f ( xk )
[4, 20]. Navest emo nekoliko najpoznatijih metoda izbora duljine koraka.

Metoda najbreg spusta


Optimalni izbor duljine koraka dobiven postupkom jednodimenzionalne
minimizacije
f ( xk + k pk ) = min{ f ( xk + pk ) : xk + pk D },
>0

(4.2)

potjee jo od Cauchyja, a nazivamo ga Metoda najbreg spusta.

Princip H. CurryM. Altman


Definiramo funkciju : [0, +i R,
() = f ( xk + pk ),

(4.3)

i potraimo njene stacionarne toke rjeavanjem jednadbe po


f 0 ( xk + pk ) pk = 0.

(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.

4.1. Metode izbora duljine koraka

37

f (xk )

[h]

Slika 4.1: Princip CurryAltman


Prema Principu Curry ako je f 0 ( xk ) pk < 0 za duljinu koraka k treba
izabrati najmanji pozitivni korijen jednadbe (4.4). Naime, za (0, )
vrijedi
0 () = f 0 ( xk + pk ) pk < 0 (0, ).
Nadalje, prema teoremu o srednjoj vrijednosti1
f ( xk + pk ) f ( xk ) =

Z1

f 0 ( xk + tpk ) pk dt < 0,

zbog f 0 ( xk + pk ) pk < 0 za sve [0, ).


Prema Principu M. Altman za neki fiksni [0, 1] za k treba izabrati
najmanji pozitivni korijen jednadbe

[ f 0 ( xk + pk ) f 0 ( xk )] pk = 0.

(4.5)

Ako je = 0, princip se svodi na princip Curry. Ako je > 0, duljina


koraka k je prvi pozitivni broj > 0 za kojeg je f 0 ( xk + pk ) pk jednak
-tom dijelu svoje poetne veliine f 0 ( xk ) pk . Princip Altmana ima praktino znaenje, ali i vano teorijsko znaenje jer se moe iskoristiti kod
ispitivanja drugih metoda izbora duljine koraka.

Aproksimativna minimizacija i traenje nultoaka


I kod metode najbreg spusta i prilikom inplementacije principa Curry
Altmana nemamo tono, ve aproksimativno rjeenje dobiveno nekim
jednodimenzionalnim itertivnim postupkom.
1 Ako je F 0 ( x + t ( y x )) neprekidna po t, vrijedi F ( y ) F ( x )

x )dt.

R1
0

F 0 ( x + t(y x ))(y

4.1. Metode izbora duljine koraka

38

Prema (2.9) za svaki x D vrijedi


f ( x ) = f ( xk ) + f 0 ( xk )( x xk ) + 12 ( x xk )T f 00 ( xk )( x xk ) + o (k x xk k2 )
Zato sljedei kvadratni funkcional dobro aproksimira funkcional f u okolini toke x ?
f k ( x ) = f ( xk ) + f 0 ( xk )( x xk ) + 12 ( x xk )T f 00 ( xk )( x xk ).

(4.6)

Primjenjujui ovu formulu na funkciju (4.3) dobivamo


() = f ( xk + pk ) f ( xk ) + f 0 ( xk ) pk + 12 2 ( pk )T f 00 ( xk ) pk .

(4.7)

Ako je ( pk )T f 00 ( xk ) pk > 0, onda je k korektno odredjen iz formule


k =

f 0 ( xk ) pk
( pk )T f 00 ( xk ) pk

> 0.

(4.8)

f (xk + k pk )
f (xk )

Slika 4.2: Aproksimacija minimuma


Budui da je veliine f 0 ( xk ), f 00 ( xk ) esto teko izraunati, umjesto minimzacije funkcije (4.7), moemo definirati interpolacijski polinom drugog reda, koji se s funkcijom (4.3) podudara u tri toke: u1 , u2 , u3 (obino
se uzima u1 = 0) i k odreuje kao toka minimuma ovog interpolacijskog
polinoma.
Kao sto se vidi na Slici 4.2, vrijednost duljine koraka (4.8) ne mora osiguravati smjer spusta. Ali zato prema Lemi 6 moemo izabrati parametar
k > 0, tako da bude
f ( x k + k k p k ) < f ( x k ).

4.1. Metode izbora duljine koraka

39

Zadatak 19: ([20], str. 254) Pokaite da interpolacijski polinom drugog


reda koji se s funkcijom () = f ( x + p) podudara u tri razliite toke
u1 , u2 , u3 ima oblik
() =

(u2 )(u3 )
f
(u1 u2 )(u1 u3 ) 1

(u1 )(u3 )
f
(u2 u1 )(u2 u3 ) 2

(u1 )(u2 )
f ,
(u3 u1 )(u3 u2 ) 3

gdje je f i = f ( x + ui p), i = 1, 2, 3. Pokaite takoer da postie lokalni


minimum u toki
1
2

(u22 u23 ) f 1 +(u23 u21 ) f 2 +(u21 u22 ) f 3


(u2 u3 ) f 1 +(u3 u1 ) f 2 +(u1 u2 ) f 3

2 f1
(u1 u2 )(u1 u3 )

2 f2
(u2 u1 )(u2 u3 )

=
ako je

2 f3
(u3 u1 )(u3 u2 )

> 0.

Napiite izraze za i za specijalne sluajeve: (a) u1 = 0, u3 = 2u2 , (b)


u2 = 0, u1 = u3 . Testirajte ovaj princip na nekoliko primjera uz primjenu
gradijentne metode.

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

Slika 4.3: Princip Goldsteina


Definirajmo dvije sekante tako da prolaze tokom (0, f ( xk )), a za > 0
nalaze se iznad tangente. Ako izaberimo 0 < 1 2 < 1, onda su

4.1. Metode izbora duljine koraka

40

mogue sekante zadane sa


i () = f ( xk ) + i f 0 ( xk ) pk ,

i = 1, 2

i za njih vrijedi
() < 2 () 1 (),

> 0.

Naime zbog f 0 ( xk ) pk < 0 i 0 < 1 2 < 1 za koeficijente smjerova


vrijedi
1 f 0 ( x k ) p k 2 f 0 ( x k ) p k > f 0 ( x k ) p k .
Definirajmo sada skup
Jk = { > 0 : [ xk , xk + pk ] D,

2 () f ( xk + pk ) 1 ()}

Primijetite da za Jk zbog 1 () f ( xk + pk ) 2 () vrijedi


0 < 1 f 0 ( xk ) pk f ( xk ) f ( xk + pk ) 2 f 0 ( xk ) pk .
Specijalno lijevi dio nejednakosti pokazuje da se za proizvoljni izbor
Jk postie snienje vrijednosti minimizirajueg funkcionala f .
Primijetite da se skup Jk smanjuje kako se razlika 2 1 smanjuje, a
specijalno za 1 = 2 =: sekante se podudare, a k zadovoljava jednakost
f ( xk + k pk ) k f 0 ( xk ) pk = f ( xk ).
Prvobitno je Goldsteinov princip predloen u sljedeoj formi: Neka su
0 < 1 2 < 1 fiksne konstante. Ako je za neki k > 0,
f ( x k ) f ( x k + k p k ) 1 k f 0 ( x k ) p k .

(4.9)

onda kao sljedeu aproksimaciju biramo toku xk+1 = xk + k pk . Ako


(4.9) nije ispunjeno, izaberemo parametar k tako da bude
0 < 1 k k f 0 ( x k ) p k f ( x k ) f ( x k + k k p k ) k k f 0 ( x k ) p k .
(4.10)
i kao sljedeu aproksimaciju biramo toku xk+1 = xk + k k pk .
Ovakav parametar k uvijek se moe izabrati. Naime, ako (4.9) nije
ispunjeno, tj. ako za neki 1 (0, 1) vrijedi
f ( x k ) f ( x k + k p k ) < 1 k f 0 ( x k ) p k ,

(4.11)

4.2. Gradijentna metoda

41

definiramo funkciju : [0, 1] R, (0) = 1,


( ) =

f ( xk ) f ( xk +k pk )
,
k f 0 ( xk ) pk

(0, 1].

Funkcija je neprekidna na [0, 1] jer primjenom LHpitalovog pravila


dobivamo lim ( ) = 1. Zbog (4.11), (1) < 1 , a tada zbog neprekid 0

nosti funkcije ona na [0, 1] prima sve vrijednosti izmedju 1 i 1. Kako je


0 < 1 2 < 1, postoji k (0, 1), takav da bude 1 (k ) 2 , a
to je nejednakost (4.10).
 
Primjedba 3. Brojeve k mogue je birati kao lanove niza q1j , q > 1
i o tome postoji posebno razraena analiza. Ovu metodu izbora duljine
koraka primijenit emo kod Newtonove metode u t. 4.3.
Zadatak 20: Neka je funkcional f : D Rn R, Gdiferencijabilan u
nekoj toki xk Int ( D ) i neka je f 0 ( xk ) pk < 0 za neki pk Rn .
Neka je nadalje () = f ( xk + pk ) i t1 > 0. Poznavajui
q0 = (0),

q00 = 0 (0),

q1 = ( t1 ),

(uoite da je q00 < 0) odredite kvadratnu funkciju q(t) = at2 + bt + c, tako


da je
q(0) = q0 , q0 (0) = q00 , q(t1 ) = q1 .
Uz koji uvjet se postie minimum dobivene kvadratne funkcije q ? Odredite minimizator kvadratne funkcije q. Poznavajui ovu kvadratnu funkciju konstruirajte algoritam odabira duljine koraka k .

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:

4.2. Gradijentna metoda

42

f (x)

za d := k f (x)k , vrijedi 0 (0) = k f ( x )k > 0, pa smjer gradijenta


pokazuje smjer porasta funkcije f ;
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)

gdje je k > 0 duljina koraka u smjeru vektora smjera kretanja pk = f ( xk ),


koji oigledno zadovoljava uvjet (4.1). Duljinu koraka k raunamo sljedeim algoritmom (koji e biti opravdan u dokazu Leme 7 i Teorema 5):
Algorithm 1 Algoritam za izraunavanje duljine koraka
Korak 0. Izabrati 0 < < 1 i stavi = 1;
Korak 1. Izraunati x = xk + k pk i provjeriti uvjet
f ( x ) f ( xk ) ( f ( xk ), pk ))

(4.13)

Korak 2. Ako je uvjet (4.13) ispunjen, staviti k = ; inae staviti :=


h, h (0, 1) i prijei na Korak 1.
Najprije emo sagraditi Mathematica-modul Korak[n,f,d,pk,xk], koji
e izraunavati duljinu koraka k iz toke xk ) u smjeru vektora pk ). Pri
tome je n broj varijabli, f ime minimizirajue funkcije, a d njezin gradijent.
In[1]:= Korak[n_, f_, pk_, xk_] :=
Module[{epsilon = .5, h = .5, f0, f1, fd},
al = 1;
w = Table[x[i] -> xk[[i]], {i, n}];
d[x_] := Table[D[f[x], x[i]], {i, n}];
f0 = f[x] /. w;
fd = d[x] /. w;
While[f1 = f[x] /. Table[x[i] -> xk[[i]] + al pk[[i]], {i, n}];
f1 - f0 > epsilon al Apply[Plus, fd pk], al = h al];
al]

4.2. Gradijentna metoda

43

Gradijentnu metodu implementirat emo u Mathematica-modulu kao


proceduru MinGrad[n,f,d,x0,eps,it], gdje je x0 poetnu aproksimaciju, eps traenu tonost, a it maksimalno dozvoljen broj iteracija. Modul
MinGrad poziva modul Korak, a iterativni postupak zavrava onda ako je
k f ( xk )k < eps za neki k ili ako je k > it.
In[2]:=
MinGrad[n_, f_, x0_, eps_, it_]:= Module[{k = 0, xs = x0, xn, gr, w},
w = Table[x[i] -> x0[[i]], {i, n}];
d[x_] := Table[D[f[x], x[i]], {i, n}];
While[ w = Table[x[i] -> xs[[i]], {i, n}]; grad = Max[Abs[d[x] /. w]];
grad > eps && k < it,
pk = -d[x] /. w;
alpha = Korak[n, f, pk, xs];
Print["x", k, "=", xs, "
f=", f[x] /. Table[x[i] -> xs[[i]], {i, n}],
"
|grad|=", grad, "
alpha=", alpha];
xn = xs + alpha pk;
xs = xn; k = k + 1;
];
{xn, f[x] /. Table[x[i] -> xn[[i]], {i, n}]}]
Modul MinGrad testirati emo na poznatoj Rosenbrockovoj test funkciji koja postie minimum u toki x ? = (0, 0) i za koju emo odmah definiradi gradijent i
nacrtati nivo krivulje u okolini minimuma, a djelomine rezultate izvoenja programa za x0 = (.5, .5) dati u Tablici 4.1.

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)}

4.2. Gradijentna metoda

44

4
3
2
1
0
-1
-2
-2

-1

Slika 4.4: Rosenbrockova funkcija f ( x1 , x2 ) = (1 x1 )2 + 100( x12 + x2 )2


k

( 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

Tablica 4.1: Tijek gradijentne metode za Rosenbrockovu funkciju

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)

(iii) parametri k biraju se iz uvjeta (4.13).


Tada za gradijentnu metodu (4.12) vrijedi

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.

4.2. Gradijentna metoda

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)

to je upravo uvjet (4.13). Drugim rijeima uvjet (4.13) bit e ispunjen za 1


L .
Ako stavimo x := xk+1 , onda prethodna nejednakost pokazuje da je f k+1 <
f k za svaki k = 0, 1, . . . uz uvjet da je k f k0 k 6= 0, tj niz ( f n ) je monotono padaju.
Kako je po pretpostavci funkcija f ograniena odozdo, onda to znai da je i niz
( f n ) ogranien odozdo. Dakle, niz ( f n ) je konvergentan, a onda i Cauchyjev, pa
moemo zakljuiti da vrijedi

f k +1 f k 0

za k .

Iz nejednakosti (4.15) slijedi f k+1 f k k f k0 k2 , odnosno

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

manja ili jednaka 1


L .
Teorem 5. Neka je f C2 (Rn ) i
mkyk2 ( f 00 ( x )y, y) M kyk2 ,

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 ? ),

4.2. Gradijentna metoda

46

gdje je x ? Rn jedinstvena toka minimuma funkcije f . Pri tome vrijede ocjene:

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).

Dokaz. Prema Teoremu 1 lijevi dio nejednakosti (4.16) ekvivalentan je injenici da


je f jako konveksna funkcija. Nadalje, prema Teoremu 2 to znai da je funkcija f
ograniena odozdo i postoji jedinstvena toka minimuma x ? Rn . Zato jo treba
dokazati da niz ( xn ) konvergira prema x ? neovisno o izboru poetne aproksimacije x0 Rn i dokazati ocjene (4.17).
Pokaimo najprije da niz ( xn ) konvergira prema x ? . Primjenom Taylorove
formule za funkciju f u okolini toke x, za x ? dobivamo

f ( x ? ) = f ( x ) + ( f ( x ), x ? x ) + 21 f 00 ( )( x ? x ), x ? x
a odavde koritenjem (4.16) dobivamo
f ( x ) f ( x ? ) =( f ( x ), x x ? )

1
2

( f ( x ), x x ? )

f 00 ( )( x ? x ), x ? x
m
2 kx

x ? k2 ,

to uz primjenu Cauchyjeve nejednakosti daje


f ( x ) f ( x ? ) k f ( x )kk x x ? k

m
2 kx

x ? k2 .

(4.18)

Primjenom Taylorove formule za funkciju f u okolini toke x ? i koritenjem


injenice da je f ( x ? ) = 0, dobivamo

f ( x ) f ( x ? ) = 21 f 00 ( )( x x ? ), x x ? .
Koristei ovdje (4.16) dobivamo
m
2 kx

x ? k2 f ( x ) f ( x ? )

M
2 kx

x ? k2 .

(4.19)

Iz (4.18) i (4.19) slijedi

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)

Desna strana ove nejednakosti za x = xk prema Lemi 7 konvergira prema nuli,


to znai da k xk x ? k 0 za k , tj. xk x ? .
Uvrtavanjem nejednakosti (4.19) i (4.20) u (4.18) dobivamo
f ( x ) f ( x ? ) k f ( x )k

k f ( x )k
m

m 2
2 M ( f (x)

f ( x ? )),

4.2. Gradijentna metoda

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)

Uvrtavanjem (4.21) u nejednakost (4.15) za x = xk f k dobivamo


(prisjetimo se da (4.15) glasi f ( x ) f ( xk ) k f k k2 )

m
f k+1 f k k m 1 + M
( f ( xk ) f ( x ? )).

(4.22)

S druge strane primjenom Taylorove formule za funkciju f u okolini toke xk ,


za x = xk f k dobivamo
f ( x ) f ( xk )

= ( f k , x xk ) + 21 ( f 00 ( )( x xk ), x xk )
= k f k k2 +

2
2

( f 00 ( ) f k , f k )

Primjenom (4.16) na gornju jednakost dobivamo:


f ( x ) f ( xk )

k f k k2 +

2
2
2 M k f k k


= 1

M
2

k f k k2 .

Ako > 0 izaberemo tako da bude 1 M


2 > , onda iz prethodne nejednakosti
dobivamo uvjet (4.13) pomou kojeg biramo duljinu koraka k
f ( x ) f ( xk ) k f k k2 .
2(1 )
M .
m
M ( f ( xk )

Dakle uvjet (4.13) bit e ispunjen za k =


Iz (4.22) slijedi
f k+1 f k k m 1 +


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

, to vie puta primijenjeno daje

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 .

4.2. Gradijentna metoda

48

Zadatak 21: Uz primjenu gradijentne metode odredite aproksimaciju minimuma


funkcije f ( x1 , x2 , x3 ) = ( x1 4)4 + ( x2 3)2 + 4( x3 + 5)4 uz poetnu aproksimaciju x0 = [3, 2, 5] T i tonost e = 0.5.
Rjeenje: x ? [3.7072, 2.78125, 5] T .
Zadatak 22: Koristei Matlab uz primjenu gradijentne metode odredite aproksimaciju minimuma funkcije f ( x, y) = 2x3 + xy2 + 5x2 + y2 uz poetnu aproksimaciju [1, 1] T i tonost e = 0.005.
Rjeenje: x ? [0.0003, 0.0018] T .
Zadatak 23: Pokaite da niz aproksimacija dobiven gradijentnom metodom za
funkciju f ( x1 , x2 ) = 19x1 + 4x12 + 16x2 3x1 x2 + 5x22 konvergira neovisno o
izboru poetne aproksimacije x0 .

Metoda najbreg spusta


Iterativnu metodu
x k +1 = x k + k p k ,

k = 0, 1, . . . ,

(4.24)

gdje duljina koraka k > 0 u smjeru vektora smjera kretanja pk = f ( xk )


definiramo kao
k = argmin f ( xk + f ( xk )) ,
(4.25)
0

nazivamo Metoda najbreg spusta2 . Jednodimenzionalnu minimizaciju u (4.25)


moemo provesti nekom od metoda za jednodimenzionalnu minimizaciju (metoda zlatnog reza, metoda parabole, Brentova metoda).
Metodu emo testirati nie navedenim programom uz koritenje Rosenbrockove test funkcije. Djelomini rezultati vide se u Tablici 4.2.

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 *)

In[2]:= x0 = {-.05, .05};


Print["x0= ", x0, ", f[x]= ", f[x] /. Table[x[i] -> x0[[i]], {i, n}]];
Do[
Korak[al_] := Module[{pp}, pp=p[x]/.Table[x[i] -> x0[[i]], {i,n}];
f[x] /. Table[x[i] -> x0[[i]] + al pp[[i]], {i, n}] ];
Brent[Korak, .0001, 1, .5, .01, 50]; alpha = XMIN;
pp = p[x] /. Table[x[i] -> x0[[i]], {i, n}];
npp = Sqrt[Sum[pp[[i]]^2, {i, n}]];
x1 = x0 + alpha pp/npp; x0 = x1;
2 En.:

Steepest Descent Method

4.3. Newtonova metoda

49

w = Table[x[i] -> x0[[i]], {i, n}];


fx = f[x] /. w; grad = Max[Abs[p[x] /. w]];
Print["x", k, "= ", x1, ", f[x]= ", fx, " grad=", grad,
" alpha=", alpha], {k, 10}]

( 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

Tablica 4.2: Metoda najbreg spusta za Rosenbrockovu funkciju

Metoda najbreg spusta, kao i gradijentna metoda imaju iskljuivo teorijsko


znaenje i rijetko se koriste u praktinim primjenama zbog niske brzine konvergencije, to potvruje i navedeni jednostavni primjer s Rosenbrockovom funkcijom.

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)

gdje je x0 poetna aproksimacija, pk vektor smjera kretanja od toke xk u toku xk+1 ,


a k > 0 duljina koraka u smjeru vektora pk .
Kretanje od toke xk u toku xk+1 treba ostvariti tako da se postigne smanjenje
vrijednosti funkcije, tj. tako da bude f ( xk+1 ) < f ( xk ). To se moe postii tako da
vektor pk izaberemo tako da bude (vidi primjerice [15], [22])

( f ( xk ), pk ) < 0,

(4.27)

gdje je f ( xk ) gradijent funkcije f u toki xk . Naime, ako za funkciju f napiemo


Taylorovu formulu u okolini toke xk

f ( x ) = f ( xk ) + ( f k , x xk ) + 21 f 00 ( xk + ( x xk )) ( x xk ), x xk , (0, 1)
i stavimo x = xk + k pk , uz oznaku k = xk + ( x xk ) dobivamo
f ( xk + k pk ) = f ( xk ) + k ( f k , pk ) +

2k
2


f 00 ( k ) pk , pk ,

(0, 1)

Ako je ( f k , pk ) < 0, onda za male vrijednosti parametara k vrijedi f ( xk+1 ) :=


f ( x k + k p k ) < f ( x k ).

4.3. Newtonova metoda

50

Pretostavimo da je promatrana funkcija f strogo konveksna i dovoljno glatka


i da je na neki nain izabrana poetna aproksimacija x0 . Analogno Newtonovoj
metodi za jednodimenzionalnu minimizaciju u okolini toke x0 funkciju f aproksimirat emo kvadratnom funkcijom dobivenom iz Taylorove formule
( x ) = f ( x0 ) + ( f ( x0 ), x x0 ) + 12 ( f 00 ( x0 )( x x0 ), x x0 )
Funkcija je strogo konveksna i njezin minimum postie se u toki x1 = x0
[ f 00 ( x0 )]1 f ( x0 ), koju emo smatrati sljedeom aproksimacijom. Primijetite da
smo iz toke x0 u toku x1 doli preko vektora smjera kretanja definiranog s
p = [ f 00 ( x0 )]1 f ( x0 ). Ovaj vektor definira smjer spusta iz toke x0 jer zbog
konveksnosti funkcije f ispunjava uvjet spusta (4.27)

( 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, . . . ,

koja se u literaturi obino naziva obina Newtonova ili Newton-Raphsonova metoda


(vidi primjerice [10], [13], [15], [18], [20], [22], [28]). Pri tome u implementaciji
metode raunanje inverzne matrice [ f 00 ( xk )]1 izbjegava se tako da umjesto toga
u svakom koraku rjeavamo jedan sustav linearnih jednadbi. Iterativni postupak definiramo kao
x k +1 = x k + p k ,

(gdje je pk rjeenje sustava)

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)

koju u implementaciji definiramo kao


x k +1 = x k + k p k ,
f 00 ( x

k)p

(gdje je pk rjeenje sustava)

= 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.

4.3. Newtonova metoda

51

Algorithm 2 Algoritam za izraunavanje duljine koraka


Korak 0. Staviti = 1 i izabrati 0 < < 12 ;
Korak 1. Izraunati x = xk + k pk i provjeriti uvjet
f ( x ) f ( xk ) ( f ( xk ), pk );

(4.30)

Korak 2. Ako je uvjet (4.30) ispunjen, staviti k = ; inae staviti :=


h, h (0, 1) i prijei na Korak 1.

Konvergencija Newtonove metode


Pretpostavit emo da je promatrana funkcija f : Rn R dvostruko neprekidno
diferencijabilna i jako konveksna, tj.
mkyk2 ( f 00 ( x )y, y) Mkyk2 ,

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)

iz ega slijedi ocjena

( f k , pk ) = ( f k , [ f 00 ( xk )]1 f k ) Mm2 k f k k2 .

(4.33)

Teorem 6. Neka funkcija f C2 (Rn ) zadovoljava uvjet (4.31) i neka se parametri


duljine koraka k biraju iz uvjeta (4.30).
Tada, neovisno o izboru poetne aproksimacije x0 , iterativni proces (4.28) konvergira
prema jedinstvenoj toki minimuma x ? superlinearnom brzinom

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

Kako je s druge strane


h
( f k , pk ) = ( f k )T pk = ( f k )T [ f k00 ]1 f k00

pk = pkT f k00 pk

( f k , pk ) = ( f 00 ( xk ) pk , pk ) mk pk k2 ,

4.3. Newtonova metoda

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

Izaberimo > 0 tako da bude


1

M
2m

(4.35)

Mnoenjem ove nejednakosti s negativnim brojem ( f k , pk ) < 0 dobivamo




( f k , pk ) ( f k , pk ) 1 M
f ( x ) f ( x k ).
2m
Dakle, uvjet (4.30) bit e ispunjen ako je ispunjen uvjet (4.35), odnosno ako je
2(1 ) m
=
. Time je opravdan nain izbora duljine koraka k .
M
Kako je ( f k , pk ) < 0 za k f k k 6= 0 iz uvjeta
f k+1 f k k ( f k , pk )

(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 ) ,

iz ega slijedi k f k k 0. Time je pokazano da su rezultati analogni rezultatima


Leme 7 ostali sauvani.
Nadalje, slino kao u dokazu Teorema 5 pokazat emo da niz definiran s (4.28)
konvergira prema toki minimuma x ? . Budui da je f jako konveksna funkcija,
postoji jedinstvena toka minimuma x ? Rn . Pokaimo jo da niz ( xn ) konvergira prema x ? neovisno o izboru poetne aproksimacije x0 Rn .
Primjenom Taylorove formule za funkciju f u okolini toke x, za x ? dobivamo

f ( x ? ) = f ( x ) + ( f ( x ), x ? x ) + 12 f 00 ( )( x ? x ), x ? x .
Nadalje, koritenjem uvjeta jake konveksnosti (4.31)
i
h
( f 00 ( )( x ? x ), ( x ? x )) mk x ? x k2
dobivamo
f ( x ) f ( x ? ) =( f ( x ), x x ? )

1
2

( f ( x ), x x ? )

f 00 ( )( x ? x ), x ? x
m
2 kx

x ? k2 ,

4.3. Newtonova metoda

53

to uz primjenu Cauchyjeve nejednakosti daje


f ( x ) f ( x ? ) k f ( x )kk x x ? k

m
2 kx

x ? k2 .

(4.38)

Primjenom Taylorove formule za funkciju f u okolini toke x ? i koritenjem


injenice da je f ( x ? ) = 0, dobivamo

f ( x ) f ( x ? ) = 21 f 00 ( )( x x ? ), x x ? .
Koristei ovdje uvjet jake konveksnosti (4.31) dobivamo
m
2 kx

x ? k2 f ( x ) f ( x ? )

M
2 kx

x ? k2 .

(4.39)

Iz (4.38) i (4.39) slijedi

k f ( x )kk x x ? k

m
2 kx

x ? k2 f ( x ) f ( x ? )

m
2 kx

x ? k2 ,

a odavde [mk x x ? k2 k f ( x )kk x x ? k]

k x x? k

k f ( x )k
.
m

(4.40)

Kao to smo ranije utvrdili desna strana ove nejednakosti za x = xk konvergira


prema nuli, to znai da k xk x ? k 0 za k , tj. xk x ? .
Prijeimo sada na dokaz ocjene brzine konvergencije (4.34). U tu svrhu najprije se primijetimo da vrijedi

( 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)

Pokaimo nadalje da su u opoj Newtonovoj metodi (4.31), poevi od neke


iteracije, svi parametri k jednaki 1. Koristei Taylorovu formulu, te dodavanjem
i oduzimanjem broja

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,

4.3. Newtonova metoda

54

i k xk x ? k 0, odnosno k x k 0 za k , takoer zbog neprekidnosti


funkcije f 00 vrijedi k f 00 ( ) f 00 ( xk )k 0 za k . Zbog toga za proizvoljni
1
0<
h < 2 postoji prirodan broj N0 () i N takav da za svaki k N0 () vrijedi
k 1 2k 12 1
1

1
2

k
2

1
2

k
2

00
00
k k f ( ) f k k
2
m

uz uvjet da je k 1. Budui da je k u uvjetu (4.30) biran tako da bude k 1, to


znai da e u svim iteracijama, ijije redni broj vei ili jednak
 N0 (), biti k = 1.
Dakle, za k N0 () vrijedi
xk+1 = xk [ f k00 ]1 f k


( xk+1 x ? , xk+1 x ? ) = xk x ? [ f k00 ]1 f k , xk+1 x ? .
Ako na desnoj strani ove jednakosti iskoristimo Lagrangeovu formulu uz
[ f ( x ? ) = 0] dobit emo


[ f k00 ]1 f k , xk+1 x ? = [ f k00 ]1 ( f k f ( x ? )), xk+1 x ?

= [ f k00 ]1 f 00 ( )( xk x ? ), xk+1 x ?
gdje je = x ? + ( xk x ? ),

k x k +1 x ? k 2

=
=

(4.32)

(0, 1), dobivamo




I [ f k00 ]1 f 00 ( ) ( xk x ? ), xk+1 x ?


[ f k00 ]1 f k00 f 00 ( ) ( xk x ? ), xk+1 x ?
1
00
m k fk

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)

Budui da k f k00 f 00 ( )k 0 za k , teorem je dokazan.


Korolar 1. Neka funkcija f C2 (Rn ) zadovoljava uvjet (4.31) i Lipschitzov uvjet

k f 00 ( x ) f 00 (y)k Lk x yk,

x, y Rn .

L > 0,

Tada niz (4.28)


xk+1 = xk k [ f 00 ( xk )]1 f ( xk ),

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 .

4.3. Newtonova metoda

55

Dokaz. Koristei Lipschitzov uvjet broj k iz nejednakost (4.42) moemo pisati


[ = x ? + ( x k x ? ), 0 < < 1]
k =

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,

to daje traenu ocjenu.


Ako duljinu koraka k biramo iz uvjeta (4.2)
k := arg min f ( xk + pk ) ,
>0

tada za Newtonovu metodu (4.28)


xk+1 = xk k [ f 00 ( xk )]1 f ( xk ),

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 ),

gdje je k izabran iz uvjeta (4.2).


i neh Budui da je f ( xk+1 ) f ( x k+1 ), koristei
m
? k2 f ( x ) f ( x ? ) M k x x ? k2
k
x

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)

Za x k+1 = xk [ f 00 ( xk )]1 f ( xk ) moemo primijeniti nejednakost (4.42)

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,

gdje k 0 za k . Ako ovu nejednakost iskoristimo u (4.43), dobivamo


q
q
M
M
?k
?
k x k +1 x ? k
k
x

x
k
+
1
k
m
m k xk x k

k k x k x ? k ,
gdje k = k

M
m

0 za k .

4.3. Newtonova metoda

56
x ? k, pa vrijedi
q
C = mL M
m.

Ako jo vrijedi i Lipschitzov uvjet, onda je k

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

gdje je F ( x ) = f 0 ( x ), gdje je F Jacobijeva matrica funkcije f . Ako je f ( x ) =


( f 1 ( x ), . . . , f n ( x ))T , x = ( x1 , . . . , xn )T tada se Jacobijeva matrica sastoji od parcijalnih derivacija funkcija f i , preciznije:

f
f1
f1
1
x
x1
x2
n
f2 f2
f2

x1 x2 xn
0
.
f = .
..
..
..
..
.
.
.

fn
fn
fn
x
x
x
n
1

Najprije emo razmotriti problem rjeavanja sustava nelinearnih jednadbi.


Openito se sustav nelinearnih jednadbi, kao i problem minimizacije funkcije
vie varijabli rjeava iterativnim metodama. Smatra se da je klasu novih "quasiNewtonovih" metoda za rjeavanje problema minimizacije funkcije vie varijabli
bez ogranienja uveo Davidon (1959), a za rjeavanje sustava nelinearnih jednadbi Broyden (1965). U literaturi su za klasu ovih metoda koriteni razni nazivi: quasi-Newton, variable metric, variance, secant, update, modification methods.

4.3. Newtonova metoda

57

Sustavi nelinearnih jednadbi


Za funkciju F : Rn Rn promatramo problem rjeavanja jednadbe F ( x ) = 0,
odnosno sustava nelinearnih jednadbi
f i ( x1 , . . . , xn ) = 0,

i = 1, . . . , n,

gdje su funkcije f i komponente vektorske funkcije F ( x ) = ( f 1 ( x ), . . . , f n ( x )) T ,


( x1 , . . . , xn )T . Pretpostavimo da funkcija F ima sljedea svojstava

x=

F je neprekidno diferencijabilna na otvorenom konveksnom skupu D ,


tj. F C1 (D) ,
(ii ) postoji x ? D tako da bude F ( x ? ) = 0, i da je pri tome
F 0 ( x ? ) nesingularna matrica;
(4.44)
Dodatno, uz uvjete (4.44) moemo zahtijevati i ispunjenje jaeg Lipschitzovog
uvjeta
(iii ) k F 0 ( x ) F 0 ( x ? )k Lk x x ? k,
x D.
(4.45)

(i )

Primijetite da ako je D dovoljno malen, onda je ovaj uvjet ispunjen za dvostruko


neprekidno diferencijabilnu funkciju u x ? .
Uz pretpostavku da imamo k-tu aproksimaciju xk rjeenja x ? , sljedeu (k +
1)-u aproksimaciju kod obine Newtonove metode dobit emo tako da funkciju
F u okolini toke xk pomou Taylorove formule aproksimiramo linearnim aproksimandom
L( x ) = F ( xk ) + F 0 ( xk )( x xk )
i rijeimo linearni sustav L( x ) = 0. Tako dobivamo Newtonov iterativni postupak za rjeavanje jednadbe F ( x ) = 0
x k +1 = x k F 0 ( x k ) 1 F ( x k ).
Za praktinu implementaciju obino koristimo sljedei algoritam
Korak 1 za poznati xk izraunati F ( xk ); ako je xk prihvatljiv, stop. U protivnom
izraunati F 0 ( xk ) i prijei na Korak 2
Korak 2 rijeiti sustav F 0 ( xk ) p = F ( xk ) za p, staviti pk := p i izraunati xk+1 =
xk + pk .

Newtonova metoda poboljava se uvoenjem parametra duljine koraka 0 <


k 1
x k +1 = x k k F 0 ( x k ) 1 F ( x k ).
Karakteristike Newtonove metode dane su sljedeim teoremom.
Teorem 7. Neka funkcija F : Rn Rn zadovoljava pretpostavke (4.44). Nadalje pretpostavimo da je F 0 Lipschitz neprekidna, tj. neka vrijedi (4.45) pri emu je D kugla oko
x ? , polumjera r. Takoer pretpostavimo da je k F 0 ( x ? )1 k . Ako poetnu iteraciju x0

4.3. Newtonova metoda

58

izaberemo tako da k x0 x ? k min{r, 1/(2L)}, tada niz ( xn ) definiran Newtonovim


iterativnim postupakom dobro definiran i konvergira prema x ? kvadratinom brzinom,
tj.
k xk+1 x ? k Lk xk x ? k2 ,
k = 0, 1, . . . .
(4.46)
Ako funkcija F 0 nezadovoljava Lipschitzov uvjet, onda je brzina konvergencije superlineara
1
k = 0, 1, . . . .
(4.47)
k x k +1 x ? k k x k x ? k ,
2

Dokaz. Prvo emo pokazati da pretpostavke da je F 0 Lipschitz neprekidna, te da


je F 0 ( x ? ) regularna i da je k F 0 ( x ? )1 k povlae da je F 0 ( x0 ) regularno za sve
x0 za koji vrijedi da je k x0 x ? k min{r, 1/(2L)}.
Zaista,

1
k F 0 ( x ? )1 F 0 ( x0 ) F 0 ( x ? ) k Lk x0 x ? k ,
2

(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

Ovim smo pokazali da je F 0 ( x0 ) regularno za sve x0 za koji vrijedi da je k x0


min{r, 1/(2L)}, odnosno da je za svako takvo x0 dobro definirano x1 =
x0 F 0 ( x0 )1 F ( x0 ). Za tako definiran x1 vrijedi
x? k

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 )

Da bi omeili normu gornjeg izraza iskoritit cemo jedankost


F ( x ? ) F ( x0 ) F 0 ( x0 )( x ? x0 ) =

Z1
0


F 0 ( x0 + t( x ? x0 )) F 0 ( x0 ) d ( x0 + t( x ? x0 )) ,

4.3. Newtonova metoda

59

i injenicu da F 0 ispunjava Lipschitzov uvjet, to nam zajedno daje

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

Koristei gornju ocjenu iz (4.50) i (4.49) slijedi


L
k x1 x ? k 2 k x ? x0 k2 = Lk x0 x ? k2 .
2

(4.51)

Pokaimo sada da niz xk+1 = xk k F 0 ( xk )1 F ( xk ), k = 0, 1, 2 . . . konvergira ka


x ? . Koristeci da je k x0 x ? k 1/(2L), iz (4.51) slijedi da je
1
k x1 x ? k k x ? x0 k ,
2
to povlai da je k x1 x ? k 1/(2L). Nastavimo li s istom argumentacijom
vidimo da
 2
1
1
k x ? x0 k ,
k x2 x ? k k x ? x1 k
2
2
odnosno
1
k x k +1 x ? k k x k x ? k . . .
2

 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, . . . .

4.3. Newtonova metoda

60

Primjedba 5. Moe se pokazati (vidi [11]) da za niz ( xn ), koji superlinearnom


brzinom konvergira prema x ? , vrijedi
lim

k x k +1 x k k
=1
k xk x ? k

uz uvjet da je xk 6= x ? za sve k = 0, 1, . . ..

Zaista da bi to pokazali iskoristit cemo nejednakost ||| | || | |. Iz

|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,

Na osnovi Primjedbe 5 pored kriterija k F ( xk )k < 1 za zaustavljanje procesa


ima smisla koristiti dodatni kriterij k xk+1 xk k < 2 k xk k
Prethodnim teoremom iskazane su dvije osnovne prednosti Newtonove metode:
postoji podruje prihvaanja S Newtonove iterativne metode,
visoka brzina konvergencije u podruju prihvaanja S .
Nedostaci Newtonove metode su
potreba izbora dobre poetne aproksimacije x0 ,
u svakom koraku treba raunati matricu parcijalnih derivacija reda n.
U cilju prevladavanja naroito posljednjeg navedenog nedostatka, matricu
F 0 ( xk ) (odnosno matricu [ F 0 ( xk )]1 ) zamijenit emo nekom matricom Bk (odnosno matricom Hk ), koja se lako rauna, a nalikuje na matricu F 0 ( xk ) (odnosno
matricu [ F 0 ( xk )]1 ). Tako promatramo iterativne procese
xk+1 := xk k Bk1 F ( xk ),
odnosno

xk+1 := xk k Hk F ( xk ).

(4.52)

Vrijedi sljedei teorem (vidi [11])


Teorem 9. Neka funkcija F : Rn Rn zadovoljava uvjete (4.44), a niz ( Bk ) neka je
niz regularnih matrica. Pretpostavimo nadalje da za neki x0 D niz ( xn ) definiran s
(4.52) ostaje u D, xk 6= x ? za sve k = 0, 1, . . . i konvergira prema x ? . Tada niz ( xn )
konvergira superlinearno prema x ? onda i samo onda ako
lim

( Bk F 0 ( x ? ))(k pk k)
k pk k

= 0,

p k = x k +1 x k .

(4.53)

4.3. Newtonova metoda

61

Uvjet (4.53) zahtijeva da niz matrica ( Bn ) konvergira prema F 0 ( x ? ) u smjeru


vektora kretanja
p k = x k +1 x k .

Primjedba 6. Uvjet (4.53) ekvivalentan je uvjetu (vidi primjerice [15])


lim

k Bk pk yk k
k pk k

y k : = F ( x k +1 ) F ( x k ),

= 0,

(4.54)

to znai da uvjet Bk pk yk takoer garantira superlinearnu konvergenciju.

Ne moe se oekivati da bude Bk pk = yk , ali zato emo matricu Bk+1 brati


tako da bude ispunjen tzv. quasi-Newtonov uvjet
Bk+1 pk = yk .

(4.55)

i da je za poznate pk , yk , Bk lako izraunati Bk+1 . Iterativna metoda (4.52) pri


emu niz matrica ( Bn ) ispunjavaju quasi-Newtonov uvjet naziva se quasi-Newtonova
metoda. Radi pojednostavljivanja uvedimo sljedee oznake:
B := Bk ,

B := Bk+1 ,

p := pk = x x,

x := xk ,

x : = x k +1

y : = y k = F ( x ) F ( x ).

Uz ove oznake quasi-Newtonov uvjet glasi


B p = y.
Prvi puta je 1965. godine [7] uveo takav niz matrica, u literaturi poznat pod nazivom Broydenova korekcija ranga 1
B = B+

(y Bp) p T
.
pT p

(4.56)

U dokazima teorema koji slijede, zbog jednostavnosti emo pretpostavit da


je k = 1, za sve k. Vrijedi sljedei teorem
Teorem 10. Neka funkcija F : Rn Rn zadovoljava uvjete (4.44) i (4.45).

1. Tada postoji > 0 takvo da ako k Bk F 0 ( xk )k i k x0 x ? k , niz


definiran sa xk+1 = xk Bk1 F ( xk ) je dobro definiran i konvergira ka x ? .

2. Ako pri tome vrijedi da k Bk F 0 ( xk )k 0, tada je konvergencija superlinearna.


3. Ako postoji konstanta C takva da k Bk F 0 ( xk )k C k F ( xk )k, tada je konvergencija kvardatina.

Dokaz. Uvedimo oznaku = k F 0 ( x ? )1 k < . Izaberemo li dovoljno malo


moemo postii:

k x x ? k ,

k B F 0 ( x )k k B1 k 2 .

4.3. Newtonova metoda

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

Sada sve zajedno daje

k B1 k = k B1 F 0 ( x ? ) F 0 ( x ? )1 k 2 .

Neka je L Lipshitzova konstanta za F 0 . Dodatnim smanjivanjem moemo postii da je ispunjena nejednakost




1
L
+1 .
2
2
2
Pretpostavimo nadalje da smo B0 i x0 izabrali u skladu sa gore izabranim . Tada
x1 x ? = x0 x ? B01 F ( x0 ) = B01 ( F ( x ? ) F ( x0 ) B0 ( x ? x0 ))

= B01

Z1
0


F 0 ((1 t) x0 + tx ? ) B0 ( x ? x0 )dt .

Koristeci, Lipshitzovo svojstvo funkcije F 0 , nejednakost trokuta i uvijet na B0 vrijedi

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 ,

to povlai kvadratnu konvergenciju.

4.3. Newtonova metoda

63

Neki primjeri Quasi-Newtonovih metoda:


Zamjenimo Fi ( x )/x j sa podjeljenom razlikom [ Fi ( x + he j ) Fi ( x )]/h za
neko malo h ili u zamjeni koristimo neki drugi diferencijalni kvocijent. Iz
prethodnog teorema slijedi da e konvergencija biti osigurana za dovoljno
male h.
Koristimo jednom izraunatu derivaciju (Jacobian) F 0 u vie iteracijskih koraka. Ili kao u nekim metodama, poput Broydenove koju cemo prikazati u
sljedecem poglavlju, koristimo odreenu proceduru pomocu koje adekvatno mijenjamo prethodni Jacobian.
Izaberemo Bi = i F 0 ( xi ) + (1 i ) I, tada konvergencija metode ovisi o i i
to metoda konvergira ako je i dovoljno blizu 1, te je brzina konvergencija
superlinearna ako i 1.

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 )

Naravno, ova se ideja ne moe izravno generalizirati na Rn , buduci da u Rn ne


moemo dijeliti sa vektorom xi xi1 . Umjesto toga, moemo uzeti u obzir jednadbu
Bi ( xi xi1 ) = F ( xi ) F ( xi1 ) .
Meutim, ta jednadba ne odreuje matricu Bi , nego samo njeno djelovanje na
xi xi1 . Stoga, da bi u poptunosti odredili Bi , Broydenova metoda odreuje
djelovanje i na vektore ortogonalne na xi xi1 i to tako da je ona jednaka Bi1 .
Broydenova metoda je tzv. metoda auriranja to jest nova matrica Bi se odreuje
(aurira) koritenjem prethodne Bi1 .
U svrhu definiranja Broydenove metode trebat e nam rezultat sljedeeg teorema:
Teorem 11. Neka su zadani vektori s 6= 0 i v Rn , i matrica C Rnn , tada postoji
jedinstvena matrica B Rnn , takva da je
Bs = v ,

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)

4.3. Newtonova metoda

64

Vano je primjetiti da matricu B dobivamo pomou C dodavanjem matrice


ranga 1. Nadalje, kao to emo pokazati u sljedeem teoremu matrica B je na
odreeni nain najblia matrici C od svih matrica koje x prebacuju u v.
Teorem 12. Za danu matricu C Rnn , i vektore s 6= 0 i v Rn matrica B definirana
sa (4.57) je jedinstveno rjeenje problema minimizacije


=v ,
min k B C k F : Bs
B

gdje je k k F Frobenijusova norma.


za koju vrijedi quasiDokaz. Naprije primijetimo da za proizvoljnu matricu B,
= v vrijedi
Newtonov uvjet Bs




( B C )ss T
(v Cs)s T




=
kB CkF =

sT s F
sT s
F
ss T

k B C k F
sT s
F
= k B C k F
U posljednjoj jednakosti smo iskoristili

T
ss =
F

( 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.

Algorithm 3 Broydenova metoda


Izabrati x0 Rn , B0 Rnn
for i:= 0, 1, . . . do
xi+1 = xi Bi1 F ( xi );
s i = x i +1 x i ;
v i = F ( x i +1 ) F ( x i );
Bi+1 = Bi + sT1s (vi Bi si )siT ;
end for

Primjedba 7. Uobiajeno je za B0 uzeti F 0 ( x0 ). U jednodimenzionalnom sluaju,


Broydenova metoda se svodi na metodu sekante.
3 Ovdje

dodati zadatak: dokaite da je kss T k = s T s, koristeci simetriju matrice ss T

4.3. Newtonova metoda

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

Kombinacijom gornjeg izraza sa (4.59) slijedi


Bx = y

v T B 1 y
u.
1 + v T B 1 u

Sada mnoenjem gornje jednakosti sa lijeva s B1 , i koritenjem x = B 1 y, dobivamo




v T B 1 y
B1 uv T B1
1
1
B 1 y x = B1 y
B
u
=
B

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.

4.3. Newtonova metoda

66

1. Ako je w x, onda je = 1;

2. Ako je v k x, tj. x = v, tada je


v + vw T v = v v(1 + w T v) = v = 1 + (v, w).
Budui da moe postojati samo jedan svojstveni vektor kolinearan s v, to znai da
matrica P ima jednu svojstvenu vrijednost 1 + (v, w), dok su preostalih (n 1)
jenake 1. Time je lema dokazana.
Stoga da bi odredili umnoak B 1 s nekim vektorom treba nam samo umnoak B1 s tim vektorom, te skalarni produkt vektora v s tim vektorom.
Dobar nain implementacije Sherman-Morrison-Woodbury-eve fromule u Broyde.
novoj metodi se moe dobiti spremanjem Hi = Bi1 , to je efikasnije nego spremanje Bi . Algoritam tada postaje:

Algorithm 4 Modificirana Broydenova metoda


Izabrati x0 Rn , H0 Rnn
for i:= 0, 1, . . . do
xi+1 = xi Hi F ( xi );
s i = x i +1 x i ;
v i = F ( x i +1 ) F ( x i );
Hi+1 = Hi + sT H1 v (si Hi vi )siT Hi ;
end for

i i

Primjetite da u sluaju ako su H0 i B01 jednaki, tada gornji algoritam predstavlja osnovni Broydenov algoritam.

Konvergencija Broydenove metode


Oznaimo sa x ? rjeenje nelinearnog sustava opisanog sa F ( x ) = 0, i neka xi i Bi
oznaavaju vektor i matricu koje su odreene i-tim korakom Broydenove metode.
Oznaimo sa
ei = x i x ? ,
Mi = Bi F 0 ( x ? ) .
(4.60)
Grubo govorei, za konvergenciju Broydenove metode kljune su sljedece dvije
injenice
(1) ei+1 e biti malo u odnosu na ei , u sluaju da Mi nije preveliko,
(2) Mi+1 nee biti puno vei nego Mi , ako su ei mali.
Preciznije objanjenje se temelji na sljedecim jednakostima, koje slijede izravno
iz defnicija oznaka uvedenih sa (4.60) i definicije Bi ,


ei+1 = Bi1 F ( xi ) F ( x ? ) F 0 ( x ? )( xi x ? ) + Bi1 Mi ei , ,

(4.61)

4.3. Newtonova metoda

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

Tada su nizovi xi i Bi odreeni Broydenovim algoritmom 3 dobro definirani, a za niz


greaka vrijedi
1
i = 0, 1, 2, . . . .
k ei +1 k k ei k ,
2
Dokaz. Da bi mogli dokazati teorem trebat e nam sljedee tvrdnje:
Tvrdnja 1. Pokaimo da ako su nizovi xi i Bi odreeni Broydenovim algoritmom 3 dobro definirani i da je k Mi k 1/(2), da s tada Bi regularne matrice
(odnosno xi+1 je dobro definiran), te da je

k Bi1 k 2 ,

kei+1 k ( Lkei k + 2k Mi k) kei k .

Zaista, F 0 ( x ? )1 Bi = I + F 0 ( x ? )1 Mi , a kako je k Mi k 1/(2), k F 0 ( x ? )1 Mi k


1/(2), vidimo da je Bi invertibilma pri emu vrijedi k Bi1 k 2. Stoga slijedi da
je xi+1 dobro definiran. Ocjena za kei+1 k se dobiva pomou ocjene k Bi1 k 2
i (4.61).
Primjetite, da iz pretpostavki teorema i gore navedenog slijedi da je x1 dobro
definiran i da vrijedi ke1 k 1/2ke0 k.
Tvrdnja 2. Ako su B0 , . . . , Bi dobro definirane i invertibilne, onda vrijedi

k Mi+1 k k Mi k + max{kei k, kei+1 k} .


Gornju ocjenu emo dokazati koristei (4.62). Prvi dio na desnoj strani u (4.62) je
umnoak Mi sa ortogonlanim projektorom (na ortogonalni komplement od si ),
tako da je u bilo kojoj unitarno invarijantoj normi taj produkt omeen sa k Mi k.
Uoimo da se dio drugog lana moe izraziti kao
0

vi F ( x ) si =

Z1 
0


F 0 ((1 t) xi + txi+1 ) F 0 ( x ? ) dtsi .

Kako je k F 0 ((1 t) xi + txi+1 ) F 0 ( x ? )k L max{kei k, ke(i+1) k}, slijedi da je

kvi F 0 ( x ? )si k L max{kei k, kei+1 k}ksi k2

1
,
k s i k2

4.3. Newtonova metoda

68

to znai da je drugi dio u izrazu (4.62) omeen sa


L max{kei k, kei+1 k} ,
ime je dokazana i tvrdnja 2.
Ostaje nam dokazati teorem. Koristei indukciju po i pokazat emo da je niz
x0 , . . . , xi+1 dobro definiran i da vrijedi:

k ei k

1
,
8L

k Mi k

1
,

1
k ei +1 k k ei k .
2

Gornje ocjene oito vrijede za i = 0. Pretpostavimo da su istinite i za sve indekse


manje ili jednake i. Zamjenom i sa i + 1 direktno iz pretpostavke indukcije slijedi
1
kei+1 k 8L
.
Uzastopnom primjenom tvrdnje 2., uzimajui u obzir kei+1 k kei k . . .
imamo

k Mi+1 k k M0 k + L (ke0 k + ke1 k + . . . + kei+1 k)


1
1
k M0k + Lke0 k(1 + + . . .) = k M0k + 2Lke0 k
,
2
8
to odgovara drugoj nejednakosti. Konano primjenom tvrdnje 1. slijedi trea
nejednakost ime je teorem dokazan.

Minimizacija glatke funkcije


Promatrajmo sada problem minimizacije bez ogranienja za dovoljno glatku funkciju f : Rn R. Pretpostavimo da je x ? njen lokalni minimum. Prema Teoremu 3
tada je f 0 ( x ? ) = 0, a f 00 ( x ? ) je pozitivno definitna Hesseova matrica. Uz oznaku
F ( x ) := f 0 ( x ), analogno uvjetima (4.44) i (4.45) definirat emo uvjete na funkciju
f : Rn R:
(i) f je dvostruko neprekidno diferencijabilna na otvorenom konveksnom skupu
D, tj. f C2 ( D );

(ii) postoji x ? D tako da bude f 0 ( x ? ) = 0, a f 00 ( x ? ) je pozitivno definitna


matrica;
(iii) f 00 u x ? zadovoljava Lipschitzov uvjet k f 00 ( x ) f 00 ( x ? )k Lk x x ? k,
0, x D.

L>

Uz oznake g( x ) := f 0 ( x ) i gk = g( xk ) iterativna procedura (4.52) postaje


xk+1 := xk k Bk1 gk ,
odnosno

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

4.3. Newtonova metoda

69

da matrice Bk trebaju aproksimirati hessijan f 00 ( xk ), za njih se mora pretpostaviti


simetrinost. Slino kao i ranije uvedimo oznake
B := Bk ,
p : = p k = x k +1 x k

B := Bk+1

y : = y k = g k +1 g k

( zbog g( x ) = F ( x ))

Jedna mogunost za definiranje korekcije ranga 1 je simetrina formula ranga


1 koju je uveo Davidon (1959) (vidi [8]):
B = B+

(y Bp)(y Bp)T
,
(y Bp, p)

(y Bp, p) 6= 0

(4.63)

Zadatak 27: Pokaite da ako postoje matrice: H := B1 i H := B1 i ako je B


simetrina, tada vrijedi
H = H+
Primjer 17:

( p Hy)( p Hy) T
( p Hy,y)

(4.64)

Potraimo lokalni minimum funkcije




f ( x1 , x2 ) = e x1 4x12 + 2x22 + 4x1 x2 + 2x2 + 1

Gradijent, hessijan i ContourPlot dobit emo na sljedei nain

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 (1 + 4x12 + 6x2 + 2x22 + 4x1 (2 + x2 ))


e x1 (2 + 4x1 + 4x2 )


,

e x1 (9 + 4x12 + 10x2 + 2x22 + 4x1 (4 + x2 ))

e x1 (3 + 2x1 + 2x2 )

e x1 (3 + 2x1 + 2x2 )

e x1

4.3. Newtonova metoda

70
1.5
1
0.5
0

-0.5
-1
-1.5
-2
-2.5

-2

-1.5

-1

-0.5

0.5

Slika 4.5: ContourPlot funkcije f ( x1 , x2 ) = e x1 4x12 + 2x22 + 4x1 x2 + 2x2 + 1

Zadavanjem ulaznih podataka

In[2]:= n = 2; x0 = {1., 1}; k = 0; eps = 0.005;


w = Table[x[i] -> x0[[i]], {i, n}]; B0 = IdentityMatrix[n];
B0 = H[x] /. w
g0 = g[x] /. w
i koritenjem modula Korak (str.48) za odreivanje duljine koraka

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,

f 0 ( x18 ) = [0.0047, 0.00038] T ,

18 = 1.

Slino Teoremu 12, vrijedi


Teorem 15. Neka je M Rnn simetrina regularna matrica, y, p Rn ( p 6= 0) i
c := M2 p. Ako je B simetrina matrica, tada je rjeenje problema minimizacije
n
o
=y ,
min k M ( B B) M k F : B = B T , Bp
(4.65)
B

4.3. Newtonova metoda


zadano s
B = B+

71

(y Bp)c T + c(y Bp)T (y Bp)T p T

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)

gdje je wk = y Gk p. Koristei dobivenu jednakost dobivamo


wk+1 = y Gk+1 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)

4.3. Newtonova metoda

72

to moemo pisati kao


wk+1 = Pwk ,

P=

1
2

cp T
w
(c,p) k

Prema Lemi 8 matrica P ima jednu svojstvenu vrijednost 0

h 
1
2


i
c
1 ( (c,p
, p) = 0
)

i svojstvenu vrijednost 12 kratnosti (n 1). Dakle, spektralni radijus matrice P je


( P) = 21 < 1. Prema Neumannovoj lemi (vidi primjerice [20], str. 45) tada postoji
matrica ( I P)1 i vrijedi
k

Pk .
k

( I P)1 = lim

i =0

Kako je s druge strane


wk = Pwk1 = = Pk w0 = Pk (y Bp),
onda imamo

k =0

k =0

wk = Pk (y Bp) = ( I P)1 (y Bp).

Takoer vrijedi
n

( Gk+1 Gk ) = Gn+1 G0

k =0

( Gk+1 Gk ) = lim ( Gn+1 G0 )


n

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)

iz ega neposredno slijedi (4.66).

4.3. Newtonova metoda

73

Specijalno za c = p dobiva se PowellBroydenova simetrina korekcija (Powell


Symetric Broyden - PSB)
B PSB = B +

(y Bp) p T + p(y Bp)T ((y Bp), p) pp T

.
( p, p)
( p, p)2

(4.68)

Korekcije koje uvaju pozitivnu definitnost


Do sada smo promatrali korekcije ranga 1 ili 2 koje su uvale simerinost matrice
B i zadovoljavale quasi-Newtonov uvjet. Dodatni zahtjev koji se postavlja bit e
uvanje pozitivne definitnosti. Quasi-Newtonov uvjet zajedno s uvjetom uvanja
pozitivne definitnosti matrice B poblie odreuje kut izmeu vektora p i y:


Bp=y
(y, p) > 0.
(y, p) = ( Bp, p)
U cilju ispitivanja nasljednosti pozitivne definitnosti koristit emo sljedeu
lemu (vidi primjerice [11])
Lema 10. Neka je A Rnn simetrina matrica sa svojstvenim vrijednostima
1 2 n ,

i neka je A T = A + uu T za neki u Rn . Ako je 0, onda A T ima svojstvene


vrijednosti iT , takve da je
1 1T 2 n nT ,

a ako je 0, onda A T ima svojstvene vrijednosti iT , takve da je


1T 1 2T nT n .

Teorem 16. Neka je B Rnn simetrina pozitivno definitna matrica i neka su c, p, y


Rn takvi da je (c, p) 6= 0. Tada je B definiran s (4.66) pozitivno definitna matrica onda
i samo onda ako je det B > 0.
Dokaz. Ako je B > 0, onda je iz ope teorije poznato da je det B > 0. Za dokaz
obrata, matricu B napiimo najprije u obliku
B = B+

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

4.3. Newtonova metoda

B = B+

1
2

74

(v + w)(v + w)T (v w)(v w)T

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

iz ega slijedi traena jednakost.

4.3. Newtonova metoda

75

Primjenom Leme 11 na (4.66) uz pretpostavku da je postoji B1 i oznaku H :=


B1 , dobivamo
i
h

(4.69)
det B = det B (c, Hy)2 (c, Hc)(y, Hy) + (c, Hc)(y, p) (c,p1 )2 .
U svrhu dokaza ove formule najprije emo (4.66)
B = B+

(y Bp)c T +c(y Bp) T


cT p

(y Bp) T p T
cc
( c T p )2

napisati u obliku [ (y Bp) T p je broj pa ga moemo staviti unutar cc T ]


h

i
T
1
B = B + (c,p
(y Bp)c T + c(y Bp)T I (pc
)
c,p)
Uvoenjem oznake H := B1 , dobivamo
h

H (y Bp)
(y Bp) T
B = B I + (c,p) c T + Hc (c,p)
I

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

4.3. Newtonova metoda

76

i traena formula (4.69).


Ako pretpostavimo da je B > 0, onda je i H := B1 > 0, pa moemo definirati v = H 1/2 y i w = H 1/2 c. Time (4.69) postaje
i
h

(4.70)
det B = det B (v, w)2 kvk2 kwk2 + kwk2 (y, p) (c,p1 )2 .
Na osnovi Teorema 16 zakljuujemo da je B > 0 onda i samo onda ako vrijedi

kwk2 (y, p) > kvk2 kwk2 (v, w)2 .

(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

(y Bp)y T +y(y Bp) T


(y,p)

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)

Provjerite valjanost formula (4.72)!

Vrijedi sljedei teorem


Teorem 17. Neka je B Rnn regularna simetrina matrica i neka je B DFP Rnn
definiran sa (4.72) za neke vektore y, p Rn , koji zadovoljavaju (y, p) 6= 0.
Tada je B DFP regularna onda i samo onda ako je (y, Hy) 6= 0, gdje je H := B1 .
1

Ako je B DFP regularna, tada se H DFP := B DFP moe zapisati kao


H DFP = H +

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:

Provjerite valjanost formula (4.72) i dokaite Teorem 17!

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)

4.3. Newtonova metoda

77

Odmah je jasno da opa inverzna korekcija ranga 1, koja zadovoljava inverzni


quasi-Newtonov uvjet (4.74) mora biti oblika
H = H+

( p Hy)d T
,
(d, y)

za neki

d Rn ,

(d, y) 6= 0.

(4.75)

Zadatak 31: Pokaite da korekcija ranga 1 zadana s (4.57) i inverzna korekcija


ranga 1 zadana s (4.75) reprezentiraju istu korekciju ako je c = B T d.
Kao i u sluaju prethodno razmatranih korekcija koje aproksimiraju hesijan
(2 f ( x )) i ovdje se najprije postavlja pitanje uvanja nasljea simetrinosti, tj.
vrijedi li
H

je simetrina matrica

je simetrina matrica ?

Zadatak 32: Pokaite da je inverzna korekcija ranga 1 koja zadovoljava inverzni


quasi-Newtonov uvjet (4.74) i uva simetrinost takoer zadana formulom (4.64).
Zadatak 33: Slino kao u dokazu Leme 9 izvedite formulu za inverznu quasiNewtonovu korekcija ranga 2
H = H+

( p Hy)d T + d( p Hy)T ( p Hy)T y T

dd .
(d, y)
(d, y)2

(4.76)

Najvaniju varijantu inverzne quasi-Newtonove korekcije ranga 2 (4.76), koja


pri tome uva i pozitivnu definitnost, nezavisno su napravili Broyden, Fletcher,
Goldfarb i Shano 1970. godine, pa se ona u literaturi naziva BroydenFletcher
GoldfarbShano korekcija ili skraeno BFGS-korekcija. Dobiva se tako da u (4.76)
stavimo d = p. Moe se pokazati da u tom sluaju vrijedi

H BFGS =

py T
I
(y, p)


H

yp T
I
(y, p)

pp T
.
(y, p)

(4.77)

kao i sljedei teorem


Teorem 18. Neka je H Rnn regularna simetrina matrica i neka je H BFGS Rnn
definirana sa (4.77) za neke vektore y, p Rn , (y, p) 6= 0.
Tada je H BFGS regularna onda i samo onda ako je ( p, Bp) 6= 0, gdje je B = H 1 .
1

Ako je H BFGS regularna, onda se B BFGS := H BFGS moe zapisati kao


B BFGS = B +

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:

Provjerite valjanost formule (4.77) i dokaite Teorem 18!

POGLAVLJE

Problem uvjetne minimizacije


U ovom poglavlju pokazat emo kako se tehnike iz prethodnih poglavlja mogu
primijeniti na optimizacijske probleme uvjetne minimizacije.
Do sada nam je xk uglavnom predstavljalo xk -tu aproksimaciju, a tu oznaku
emo koristiti i u ovom poglavlju, a budui da emo u ovom poglavlju esto raunati i s komponentama k-te aproksimacije, oznaka ( xk )i predstavljat e nam i-tu
koordinatu k-te aproksimacije.
Kod uvjetne minimizacije pretpostavit emo da su ogranienja jednostavna.
U tu svrhu neka su L1 , L2 , . . . , Ln i U1 , U2 , . . . , Un realni brojevi takvi da vrijedi

< Li < Ui < +,

i = 1, . . . , n.

Problem uvjetne minimizacije je problem odreivanja lokalnog minimuma


x ? funkcije f sa n varijabli pri emu je zadano ogranienje:
x ? = { x Rn : Li ( x )i Ui }.
Odnosno, zahtjevamo da je x ? takav da vrijedi
f (x? ) f (x)

za sve x blizu x ? .

Problem se obino zapisuje kao


min f ( x ).
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. Nuni i dovoljni uvjeti za optimalnost

5.1

79

Nuni i dovoljni uvjeti za optimalnost

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)

Nadalje, ako je f dva puta neprekidno diferencijabilna na [ a, b], tada vrijedi


f 00 ( x )( x ? a)(b x ? ) 0.
Izraz (5.2) posluit e nam kao motivacija za sljedeu definiciju stacionarnosti.
Definicija 12. Toka x ? je stacionarna za problem (5.1) ako je

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 ? )

to smo i trebali pokazati.

5.1. Nuni i dovoljni uvjeti za optimalnost

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

5.1. Nuni i dovoljni uvjeti za optimalnost

81

Teorem 22. Neka je f dva puta diferencijabilna. Toka x ? je stacionarna za problem


(5.1) ako i samo ako je
x ? = P ( x ? f ( x ? )),
za sve 0.

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

Ako je x tada za sve i A( x ? )

( f ( x ? ))i ( x x ? )i |( x x ? )i |.

( f ( x ? ))i .

5.2. Gradijentna metoda s projekcijom


Budui da je k x k1 k x k vrijedi nejednakost

f ( x ? )T PA(x? ) ( x x ? ) kPA(x? ) ( x x ? )k,


to je i trebalo pokazati.
Iskazat emo teorem koji daje dovoljan uvjet, a slian je pripadnom teoremu
iz sluaja kada nemamo ogranienja.
Teorem 23. Neka je x ? nedegenerirana stacionarna toka problema (5.1). Neka je f
dva puta diferencijabilna u okolini toke x ? i pretpostavimo da je reducirani Hessijan u x ?
pozitivno definitna matrica. Tada je x ? rjeenje problema (5.1) (stoga je i nedegenerirani
lokalni minimum).
Dokaz. Neka je x . Definirajmo funkciju s (t) = f ( x ? + t( x x ? )). Pokazat emo tvrdnju tako da pokaemo da je
ili

(i ) 0 (0) > 0 ili (ii) 0 (0) = 0, 00 (0) > 0.

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

Gradijentna metoda s projekcijom

U ovom poglavlju definirat emo algoritam gradijentne metode s projekcijom


koji je prirodna primjena gradijentne metode na problem uvjetne minimizacije.
Ako imamo aproksimaciju xc tada je nova aproksimacija dana s
x+ = P ( xc f ( xc )),
gdje je duljina koraka odreena algoritmom, slino kao u sluaju kada nema
ogranienja. U ovom poglavlju, radi jednostavnosti zapisivanja, za > 0 uvodimo x () koji oznaava sljedeu aproksimaciju ako je duljina koraka . U sluaju
gradijentne metode imamo
x () = P ( x f ( x )).

82

5.2. Gradijentna metoda s projekcijom

83

Duljinu koraka odreivat emo iz uvjeta


f ( x ()) f ( x )

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.

Algorithm 5 Algoritam gradijentne metoda sa projekcijom


Izabrati x0 Rn , B0 Rnn
for i:= 1, . . . , nmax do
izraunaj f i f ; provjeri zaustavni kriterij
odredi najmanji prirodni broj m tako da vrijedi nejednakost (5.3) za
= m
x = x ()
end for
if n = nmax i zaustavni kriterij nije zadovoljen then
Ispii: "Algoritam nije odredio zadovoljavajuu aproksimaciju";
end if
U nastavku emo uvesti zaustavni kriterij.

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 =

min {(Ui ( x ? )i ), ( x ? )i Li , (Ui Li )/2}. Ako je i

i N ( x ? )

N ( x ? ) i kek < 1 tada Li < ( x )i < Ui . Stoga,

N (x? ) N (x)

5.2. Gradijentna metoda s projekcijom

84

ime smo dokazali tvrdnju da je A( x ) A( x ? ). tovie,kako je i A( x )


A( x ) ( x )i = Li ili xi = Ui zbog injenice da je

kek < 1 min{(Ui Li )/2},


imamo ( x )i = ( x ? )i za sve i A( x ) ime smo dokazali tvrdnju 1.
Neka je i A( x ? ). Prema Lemi 12 i zbog neprekidnosti od f postoji 2 tako
da ako je kek < 2 . Tada

( f ( x ? + e))i ( x x ? )i > | x x ? |i /2.


Stoga, ako je

kek < 3 < min{/2, 2 }

tada je i A( x ()) i ( x ())i = ( x ? )i , ime smo dokazali da je A( x ? ) A( x ()).


Stoga, treba jo pokazati da A( x ? ) A( x ()).
Iz definicije od projekcije P imamo

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)

Ako bi postojao i A( x ()) N ( x ? ), tada bi vrijedilo

k x ? x ()k 1 = min {(Ui ( x ? )i ), (( x ? )i Li )}.


i N ( x ? )

(5.5)

Meutim, ako je

kek < 4 = min(3 , 1 /(1 + L)),


tada nejednakost (5.4) povlai da (5.5) ne moe vrijediti, stoga je pretpostavka da
je i A( x ()) N ( x ? ) kriva. Znai, ako je i A( x ()), onda je i A( x ? ) ime
smo dokazali obrnutu inkluziju.
Teorem 24. Neka je f dva puta neprekidno diferencijabilna na , neka je x ? nedegenerirana stacionarna toka problema (5.1) i neka A( x ? ) nije prazan skup. Tada postoje i
M tako da ako je kek < i A( x ) = A( x ? ) te vrijedi
kek
M

k x x (1)k Mkek.

5.2. Gradijentna metoda s projekcijom

85

Dokaz. Neka je L Lipschitzova konstanta od f u . Koristei stacionarnost


imamo

k x x (1)k = ke ( x (1) x ? (1))k


kek + kP ( x f ( x )) P ( x ? f ( x ? ))k
2kek + k f ( x ) f ( x ? )k (2 + L)kek.
Stoga, uz konstantu M 2 + L desna nejednakost vrijedi.
Kako bismo dokazali lijevu nejednakost primijenit emo Lemu 13. Neka je 1
takav da je kek < 1 , tada lema 13 vrijedi za = 1. Pomou leme dobivamo

( f ( x ))i , ako je i N ( x ? )
( x x (1))i =
.
(ei ) = 0,
ako je i A( x ? )
Ostaje nam provjeriti sluaj kada je i N ( x ) = N ( x ? ). Dovoljni uvjeti povlae
da postoji > 0 tako da vrijedi
u T PN ( x? ) 2 f ( x ? )PN ( x? ) u kPN ( x? ) uk2
za sve u Rn . Stoga postoji 2 tako da je kek < 2 . Tada vrijedi
u T PN ( x? ) 2 f ( x )PN ( x? ) u kPN ( x? ) uk2 /2
za sve u Rn . Nadalje, budui da je e = PN ( x? ) e, imamo

kPN (x? ) ( x x (1))k2 =


=

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

kPN (x? ) ek2 /2.


p
Stoga vrijedi da je k x x (1)k min{1, /2}kek. Ako odaberemo M = max{2 +
p
L, 1, 2/}, tada su zadovoljene obje nejednakosti.
Zaustavni kriterij definirat emo tako da u sebi sadri relativnu i apsolutnu
mjeru stacionarnosti k x x (1)k. Neka je r0 = k x0 x0 (1)k, a relativna i apsolutna tolerancija neka su dane sa r i a , respektivno. Tada se u algoritmu
gradijentne metode s projekcijom za zaustavni kriterij uzima nejednakost

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.

5.2. Gradijentna metoda s projekcijom

86

Lema 14. Za sve x, y

(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

( x x ())T (y x ()) f ( x )T (y x ()).

(5.7)

Ako u prethodni izraz uvrstimo y = x dobit emo sljedei korolar.


Korolar 3. Za sve x i 0 vrijedi

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

( f ( x ty) f ( x ))T y dt.

Nakon sreivanja prethodni izraz moe se zapisati kao


( f ( x ) f ( x ())) = f ( x ) T ( x x ()) + E,

5.2. Gradijentna metoda s projekcijom

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

Stoga je donja granica za duljinu koraka


=

2(1c)
.
L

(5.8)

Teorem 26. Pretpostavimo da je f Lipchitz neprekidna s konstantom L. Neka je { xn }


niz generiran gradijentnom metodom s projekcijom. Tada je svaka toka limesa niza stacionarna toka.
Dokaz. Budui da je { f ( xn )} padajui niz, a funkcija f ograniena je odozdo na
, f ( xn ) ima limes limk f ( xk ) = f ? . Zbog donje ograde za duljinu koraka
(5.8) imamo

k xn xn+1 k2 ( f ( xn ) f ( xn+1 ))/c ( f ( xn ) f ( xn+1 ))/c 0


kada n .
Neka je y i n 0. Koristei nejednakost (5.7) slijedi

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 ).

Ponovno zbog donje ograde za duljinu koraka (5.8) imamo

f ( xn )T ( xn y) k xn xn+1 k(n1 k xn+1 yk + k f ( xn )k),


T

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.

5.3. Newtonova metoda s projekcijom


Teorem 27. Pretpostavimo da je f Lipschitz neprekidno diferencijabilna i da aproksimacije { xn } dobivene gradijentnom metodom s projekcijom konvergiraju nedegeneriranom
lokalnom minimumu x ? . Tada postoji n0 tako da je A( xn ) = A( x ? ) za sve n n0 .
Dokaz. Neka je donja ograda za duljinu koraka. Neka je takav da vrijede
tvrdnje iz Leme 13 za sve = (stoga i za sve ). Neka je n0 takav da je
ken k < za sve n n0 1, tada vrijede tvrdnje teorema.
Na kraju ovog poglavlja, budui da smo pripremili sve potrebne rezultate,
dokazat emo Teorem 22:
Dokaz. Korolar 3 daje nejednakost
0 k x ? x ? ()k2 f ( x ? ) T ( x ? x ? ()).
Ako u definiciju stacionarnosti uvrstimo x = x ? () imamo

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

Newtonova metoda s projekcijom

Prvo emo definirati Ae ( x ), e-aktivan skup u x sa

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

5.3. Newtonova metoda s projekcijom


Neka je dan e takav da je 0 e < min{(Ui Li )/2 : i = 1, 2, . . . , n}, xc i
hessijan u toki c (oznaen sa Hc ) tada moemo uvesti reducirani hessijan Rc kao
matricu definiranu s

Rc = PAe (x) ( xc ) + PN e (x) ( xc ) Hc PN e (x) ( xc )



ij ,
ako je i Ae ( xc ) ili j Ae ( xc )
=
.
( Hc )ij , inae.
Kada je vana eksplicitna ovisnost o xc , e = ec , Hc reducirani hessijan oznaavat
emo sa R( xc , ec , Hc ).
Primijetimo da je 2R f ( xc ) = R( xc , 0, 2 f ( xc )).
Ako je poetna iteracija x0 dovoljno blizu nedegeneriranom lokalnom minimumu x ? , tada e Newtonova metoda s projekcijom raditi s korakom duljine 1,
odnosno = 1. Nadalje, ako se en odabere paljivo, tada e niz aproksimacija
konvergirati q-kvadratino ka x ? .
Jedna preporuka za e u n-tom koraku (en ) je [18]
en = min{k xn xn (1)k, (Ui Li )/2}.
Ako imamo aproksimaciju xc , ako je R( x, e, 2R f ( x )) simetrina pozitivno
definitna matrica, tada je nova aproksimacija dobivena s Newtonovim algoritmom s projekcijom dana s
x () = P ( x + p),
gdje je p dobiven kao rjeenje sustava

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 ))

koja slijedi iz injenice da je A( x ) Ae ( x ).


Sljedeim teoremom pokazat emo da, ako smo blizu minimuma, onda je
brzina konvergencije kao kod standardne Newtonove metode.

89

5.3. Newtonova metoda s projekcijom


Algorithm 6 Newtonova metoda s projekcijom
Ulazni parametri: x, f , nmax, .
for i:= 0, 1, . . . ,nmax do
(a) izraunaj f i f ; provjeri zaustavni kriterij (5.6);
(b) e = k x x (1)k;
(c) Izraunaj R = R( x, e, 2R f ( x )). Ako R nije simetrina pozitivno
definitna matrica tada prekini optimizacijski proces;
(d) Rijei sustav R p = f ( xc );
(e) odredi najmanji prirodni broj m tako da vrijedi nejednakost (5.3)
za = m ;
(f) x = x ().
end for
if n = nmax i zaustavni kriterij nije zadovoljen then
Ispii: "Algoritam nije odredio zadovoljavajuu aproksimaciju";
end if
Teorem 28. Neka je x ? nedegenerirani lokalni minimum. Ako je x0 dovoljno blizu x ?
i A( x0 ) = A( x ? ) tada e Newtonova metoda sa projekcijom (uz en = k xn xn (1)k)
konvergirati kvadratinom brzinom.
Dokaz. Naa je pretpostavka da je aktivni skup identificiran, odnosno

A( xc ) = A( x+ ) = A( x ? )
to povlai da

PA(xc ) ec = PA(xc ) e+ = 0.

Stoga da bismo dokazali rezultat moramo procjeniti PN ( xc ) e+ .


Neka je
? = min {|( x )i Ui |, |( x )i Li |} > 0.
i N ( x ? )

Pogreku e uzimamo tako da je

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 ).

Stoga za kec k dovoljno mali, Newtonova metoda sa projekcijom daje


x+ = P ( xc (2R f ( xc ))1 f ( xc )).

90

5.3. Newtonova metoda s projekcijom

91

Koristei fundamentalni teorem matematike analize imamo

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

i tada je k E1 k K1 kec k2 za neku konstantu K1 > 0.


Iz nunih uvjeta imamo

PN (x) f ( x ? ) = PN (x? ) f ( x ? ) = 0.

(5.12)

Iz injenice da je N ( xc ) = N ( x ? ) dobivamo ekvivalentne tvrdnje


ec = PN ( xc ) ec

PA(xc ) ec = 0.

Nadalje, uzimajui u obzir (5.11), (5.12) i (5.13) imamo

PN (xc ) f ( xc ) =PN (xc ) 2 f ( xc )PN (xc ) ec + PN (xc ) E1

=PA(xc ) ec + PN (xc ) 2 f ( xc )PN (xc ) ec + PN (xc ) E1


=2R f ( xc )ec + PN (xc ) E1 .

Sada koristei definiciju od 2R dobivamo

PN (xc ) (2R f ( xc ))1 f ( xc ) = (2R f ( xc ))1 PN (xc ) f ( xc ) = ec + E2 ,


gdje je k E2 k K2 kec k2 za neku konstantu K2 > 0.
Budui da je PN ( xc ) P w = P PN ( xc ) w za sve w Rn

PN (xc ) x+ =PN (xc ) P ( xc (2R f ( xc ))1 f ( xc ))


=P PN (xc ) ( xc (2R f ( xc ))1 f ( xc ))

=P ( x ? E2 ).

Stoga e+ K2 kec k2 to je i trebalo pokazati.

(5.13)

POGLAVLJE

Metode direktnog traenja


U ovom poglavlju prouavat emo metode direktnog traenja. To su metode koje
kreu od vrijednosti funkcije f u tokama koje su na poetku zadane nakon ega
se iz tih podataka odreuje sljedea toka u cilju minimizacije funkcije. Obradit
emo metode koje eksplicitno ne koriste aproksimaciju gradijenta.

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

6.1. Nelder-Mead algoritam


Vrijednost se nalazi u sljedeim intervalima

1 < uk < 0 < vk < r < e .


Vrijednost odreuje kakav e se korak algoritma izvravati danom koraku algoritma. U sljedeem je algoritmu je opisano o kojim se koracima radi. Ova
formulacija algoritma doputa kraj algortima ako je f ( x N +1 ) f ( x1 ) dovoljno
malo (manje od unaprijed zadane tolerancije e > 0) ili je broj pozivanja funkcije
f preao odreeni, unaprijed zadani broj. Oznaimo ga sa k max .
Jedan mogui odabir vrijednosti je

{ 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.

Slika 6.1: Novi vrhovi kod Nelder-Mead simpleks algoritma


Za Nelder-Mead algoritam ne moe se garantirati konvergencija, ak ni za
glatke funkcije. Meutim performanse Nelder-Mead algoritma u praksi su vrlo
dobre.
Sluaj kada Nelder-Mead algoritam ne konvergira je sluaj kada dolazi do
stagnacije u neoptimalnoj toki. Tada je potrebno pokrenuti algoritam na novom
skupu toaka pri emu se od prijanjih toaka zadri jedino najbolja toka. Vie
o kriteriju prepoznavanja stagnacije i algoritmima koji opisuju novi skup toaka
moe se nai u [18].

93

6.1. Nelder-Mead algoritam


Algorithm 7 Algoritam Nelder
Ulaz: S-poetni simpleks, f , e > 0, k max
Izraunaj vrijednost funkcije f u vrhovima simpleksa S i sortiraj vrhove
tako da vrijedi (6.1), f br = N + 1
while f ( x N +1 ) f ( x1 ) > e do
Izraunaj x prema (6.3), x (r ) prema (6.2), f r = f ( x (r )), f br = f br + 1
(a) Refleksija:
if f br = k max then; exit; end if
if f ( x1 ) f r < f ( x N ) then
zamijeni x N +1 sa x (r ) i idi na korak (f)
end if
(b) Ekspanzija:
if f br = k max then; exit; end if
if f r < f ( x1 ) then
izraunaj f e = f ( x (e )), f br = f br + 1
end if
if f e < f r then
zamjeni x N +1 sa x (e ) ; else zamjeni x N +1 sa x (r ) i idi na korak (f)
end if
(c) Vanjska kontrakcija:
if f br = k max then; exit; end if
if f ( x N ) f r < f ( x N +1 ) then
izraunaj f k = f ( x (vk )), f br = f br + 1
end if
if f k f r then
zamjeni x N +1 sa x (vk ) i idi na korak (f); else idi na korak (e)
end if
(d) Unutarnja kontrakcija:
if f br = k max then; exit; end if
if f r f ( x N +1 ) then
izraunaj f k = f ( x (uk )), f br = f br + 1
end if
if f k < f ( x N +1 ) then
zamjeni x N +1 sa x (uk ) i idi na korak (f); else idi na korak (e)
end if
(e) Stezanje:
if f br k max N then, exit, end if
for i = 2, . . . , N + 1 do
xi = x1 ( xi x1 )/2, izraunaj f ( xi ), f br = f br + 1
end for
(f) Sortiraj vrhove od S tako da vrijedi (6.1)
end while

94

6.2. MDS algoritam

6.2

95

MDS algoritam

U cilju sprijeavanja loe kondicije Nelder-Mead algoritma u MDS algoritmu


(eng. multidirectional search) zahtjeva se da je novi simpleks konguentan polaznom simpleksu.
Slika 6.2 pokazuje, u sluaju dimenzije 2, dva tipa simpleksa koji se pojavljuju
u ovom algoritmu. Poevi sa ureenim simpleksom Sc s vrhovima x1 , x2 , x3 ako
primjenimo korak refleksije dobit emo simpleks Sr s vrhovima x1 , r2 i r3 . Ako je
najbolja vrijednost funkcije u vrhovima simpleksa Sr bolja od najbolje vrijednosti
f ( x1 ) u S0 tada se Sr privremeno prihvaa i nastavlja se s korakom ekspanzije.
Slika 6.2 pokazuje i korake ekspanzije te kontrakcije koji se koriste u algoritmu.
Korak ekspanzije u ovom sluaju razlikuje se od ekspanzije u Nelder-Mead
algoritmu jer se u MDS algoritmu dobiva N novih toaka, dobiva se vei simpleks koji je slian polaznom. Simpleks dobiven ekspanzijom Se , na slici 6.2,
ima vrhove x1 , e2 , e3 i prihvaa se umjesto simpleksa Sr ako je najbolja vrijednost
funkcije u vrhovima Se bolja od najbolje vrijednosti funkcije u vrhovima Sr .
U sluaju da najbolja vrijednost funkcije u vrhovima Sr nije bolja od najbolje
vrijednosti funkcije u vrhovima Sc tada se na simpleks primjenjuje korak kontrakcije, a vrhove novog simpleksa oznait emo sa x1 , c2 , c3 . Nakon to je novi
simpleks generiran vrhovi se numeriraju tako da je simpleks ureen. Kod novog
simpleksa vrhovi se ponovo urede, to nam daje novi simpleks S+ .

x2
x3

x3

c2

c3

c3

x1

x1
e2

c2

x2

e3

e2

e3

Slika 6.2: Novi vrhovi kod MDS algoritma


Ako su vrhovi simpleksa Sc poznati, onda potreban broj dodatnih evaluacija
da se izrauna S+ iznosi 2N.

6.3. Powellova metoda u vie dimenzija

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

Powellova metoda u vie dimenzija

Za sluaj jednodimenzionalne minimizacije razvijene su razne metode, stoga u


sluaju viedimenzionalne minimizacije mogu se generirati metode koje rjeavaju problem viedimenzionalne minimizacije koristei niz jednodimenzionalnih minimizacija. Razliite metode razlikuju se u injenici kako u svakom slijedeem koraku biraju smjer n u kojem trae minimum. Sve metode toga tipa
podrazumijevaju postojanje "rutine" koja rjeava problem jednodimenzionalne
minimizacije.
U ovom poglavlju prouavat emo metode koje biraju uzastopne smjerove
tako da eksplicitno ne raunaju gradijent funkcije. Gore navereni algoritam jednodimenzionalne minimizacije moe, ali ne mora koristiti gradijent, meutim
ako se gradijent koristi ve u algoritmu jednodimenzionalne minimizacije bilo bi
poeljno da se koristi i u odabiru smjerova.
Jednostavan primjer takvog odabira smjerova su jedinini kanonski vektori:
e1 , e2 , . . . , e N . U tom e sluaju metoda, koristei algoritam jednodimenzionalne
minimizacije, prvo odrediti minimum u smjeru prvog smjera, tada iz dobivene
toke trai se minimum u drugom smjeru itd., kruei po cijelom skupu smjerova
sve dok se funkcija ne prestane smanjivati. Za velik broj funkcija ova metoda je
dosta dobra, ali za odreene funkcije ova metoda nije efikasna. U cilju dobivanja
to bolje metode cilj je odrediti smjerove koji e biti bolji od smjerova ei .
Metode koje se temelje na skupu smjerova sadre pravilo kako kreiraju sljedei smjer i njihov skup smjerova ili (i) sadri pojedine smjerove koji vode minimumu funkcije ili (ii) sadri odreeni broj smjerova koji se ne "podudaraju" s
dodatim svojstvom da se moe izbjei beskonano kruenje kroz smjerove.
U Powellovoj kvadratino konvergentnoj metodi kreira se N meusobno konjugiranih smjerova. Metoda je opisana sljedeom "osnovnom procedurom":
U navedenom algoritmu dolazi do izbacivanja vektora u1 u cilju dodavanja
vektora PN P0 time se dolazi do smjerova koji postaju linearno zavisni to je
problem u navedenom algoritmu. Kada se to dogodi algoritam e odrediti minimum funkcije f na nekom potprostoru N dimenzionalnog prostora to moe
rezultirati netonim minimumom. Stoga se gore navedeni algoritam mora popraviti.
U cilju izbjegavanja linearne zavisnosti kod Powellovog algoritma mogu se
koristiti sljedee metode:
i) Moe se napraviti ponovna inicijalizacija smjerova ui tako da im se pridrue vektori ei nakon svakih N ili N + 1 iteracija osnovne procedure.
ii) Skup smjerova moe se izjednaiti sa stupcima odreene ortogonalne matrice. Umjesto da se postojee informacije, vezane uz konjugirane smjerove, odbace u ovom sluaju kreira se matrica iji stupci nakon ortogonalizacije ine nove smjerove.

96

6.3. Powellova metoda u vie dimenzija

Algorithm 8 Algoritam MDS


Ulaz: S-poetni simpleks, f , e > 0, k max
Izraunaj vrijednost funkcije f u vrhovima simpleksa S i sortiraj vrhove
tako da vrijedi (6.1), f br = N + 1
while f ( x N +1 ) f ( x1 ) > e do
(a) Refleksija:
if f br = k max then
exit
end if
for j = 2, . . . , N + 1 do
r j = x1 ( x j x1 ), izraunaj f (r j ), f br = f br + 1
if f ( x1 ) > min j { f (r j )} then
idi na korak (b)
else
idi na korak (c).
end if
end for
(b) Ekspanzija:
for j = 2, . . . , N + 1 do
e j = x1 e ( x j x1 ), izraunaj f (e j ), f br = f br + 1
end for
if min j { f (r j )} > min j { f (e j )} then
for j = 2, . . . , N + 1 do
xj = ej
end for
else
for j = 2, . . . , N + 1 do
xj = rj
end for
end if
idi na korak (d)
(c) Kontrakcija:
for j = 2, . . . , N + 1 do
x j = x1 + k ( x j x1 ), izraunaj f ( x j ), f br = f br + 1
end for
Sortiraj vrhove tako da vrijedi (6.1)
end while

97

6.3. Powellova metoda u vie dimenzija


Algorithm 9 Algoritam jednodimenzionalna minimizacija
Ulaz: vektori P i n, funkcija f
Odredi skalar koji minimizira f ( P + n)
Zamjeni P sa P + n
Zamjeni n sa n
Algorithm 10 Powellov algoritam minimizacije
Ulaz: poetni smjerovi ui = ei , i = 1, . . . , N
Poetnu poziciju oznai sa P0
for i = 1, . . . , N do
pomakni Pi1 u minimum po smjeru ui i dobivenu toku oznai sa
Pi ;
end for
for i = 1, . . . , N 1 do
u i = u i +1 ;
u N = PN P0
pomakni PN u minimum po smjeru u N i dobivenu toku oznai sa P0
end for

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]

M. S. Bazaraa, H. D. Sherali, C. M. Shetty, Nonlinear Programming. Theory and


Algorithms. 3rd Edition, Wiley, New Jersey, 2006.

[4]

J. F. Bonnans, J.C. Gilbert, C. Lemarchal, C.A. Sagastizbal, Numerical Optimization. Theoretical and Practical Aspects, Springer-Verlag, Berlin, 2006.

[5]

S. Boyd, L. Vandenberghe, Convex Optimization, Cambridge University


Press, New York, 2004.

[6]

R. P. Brent, Algorithms for Minimization without Derivatives, Dover Publications, New York, 1973.

[7]

Broyden, A class of methods for solving nonlinear simultaneous equation, Math.


Comput., 19(1965), 577-593

[8]

W.C.Davidon, Variable metric method for minimization, Rep. ANL-5990 Rev,


Argonne National Laboratories, Argonne, Ill., 1959.

[9]

V. F. Demjanov, F. P. Vasilev, Nedifferenciruemaja optimizacija, Nauka, Moskva, 1981.

[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

You might also like