Sunteți pe pagina 1din 29

Gradieni conjugai pentru minimizarea fr restricii

Vom ncepe prezentarea noastr cu privire la algoritmii scalabili descriind metoda


gradientului conjugat pentru rezolvarea
minn f ( x)
xR

(3.1)

1 T
x Ax xT b , b este un vector-n coloan dat, iar A este o matrice n n
2
simetric pozitiv definit sau o matrice pozitiv semidefinit. Ne intereseaz n mod
special problemele cu n mare i A dispersat i condiionate n mod convenabil. Am
vzut deja n Sect. 2.2.2 c (3.1) este echivalent cu soluia unui sistem de ecuaii
liniare Ax = b, ns aici principalul nostru obiectiv nu este acela de a rezolva sisteme
mari de ecuaii liniare, ci mai degrab de a descrie instrumentul nostru de baz
pentru abordarea sistemelor liniare auxiliare care sunt generate de algoritmi pentru
rezolvarea problemelor de programare ptratic cu restricii.
Vom utiliza metoda gradientului conjugat (CG) ca metod iterativ care
genereaz mbuntirea aproximaiilor pentru soluia din fiecare etap. Costul unei
etape a metodei CG este de obicei dominat de costul nmulirii unui vector cu
matricea A, care este proporional cu numrul intrrilor nenule ale lui A. Cerinele de
memorie sunt de asemenea proporionale cu numrul intrrilor nenule ale lui A.
Pentru a dezvolta algoritmi optimi pentru mai multe probleme generale de
programare ptratic, este important ca rata de convergen a metodei gradientului
conjugat s depind de distribuirea spectrului lui A. n mod special, fiind dat un
interval pozitiv amin , amax cu spectrul lui A, se poate da o limit sub aspectul
amin / amax pentru o serie din iteraiile gradientului conjugat care sunt necesare pentru
a rezolva problema (3.1) cu un anumit grad de precizie relativ. De asemenea este
important ca numrul de etape necesare pentru obinerea unei soluii aproximative la
o problem dat s fie n mod obinuit proporional cu logaritmul preciziei prescrise,
astfel nct algoritmul s poat da o soluie de precizie redus n timp redus.
unde f ( x )

Zdenk Dostl, Optimal Quadratic Programming Algorithms,


Springer Optimization and Its Applications, DOI 10.1007/978-0-387-84806-8_3,
Springer Science+Business Media, LLC 2009

Prezentare general a algoritmilor


Primul algoritm al acestui capitol este metoda direciilor conjugate definit de cele
dou formule simple (3.6). Algoritmul presupune c ni se d o baz ortogonal A a lui
n , lsnd deschis problema modului n care se obine aceasta.
Algoritmul gradientului conjugat, Algoritmul 3.1, eroul principal al acestui
capitol, combin metoda direciei gradientului conjugat cu o construcie inteligent a
direciilor conjugate. Este cea mai bun metod deoarece exploateaz eficient toate
informaiile colectate n timpul gsirii soluiei pentru a maximiza scderea funciei de
cost. Metoda CG poate fi considerat att ca metod direct, ct i ca metod
iterativ.
O etap a metodei gradientului conjugat reluate descris n Sect. 3.4 include
un numr fix de etape ale gradientului conjugat. Un astfel de algoritm este mai
robust, ns de obicei mai puin eficient. Dac lanul de iteraii CG se reduce la o
singur iteraie, obinem metoda gradientului, cunoscut i sub denumirea de
metoda celei mai abrupte pante. Este varianta cea mai robust i mai simpl a
metodei CG reluate. A se vedea Algoritmul 3.2 pentru o descriere mai formal.
Dac putem gsi o aproximaie uor inversabil a Hessianului, o putem folosi
pentru a mbunti performana metodei CG n metoda gradientului conjugat
precondiionat descris n Sect. 3.6 ca Algoritmul 3.3. Construirea
precondiionatorilor depinde de problem. Precondiionarea printr-un proiector
conjugat descris n Sect. 3.7 ca Algoritmul 3.4 este util pentru problemele de
minimizare ce rezult din discretizarea ecuaiilor difereniale pariale eliptice i a
inegalitilor variaionale.
3.1

Direcii conjugate i minimizare

Metoda gradientului conjugat, un motor ingenios i puternic al algoritmilor notri, se


bazeaz pe observaii simple. n aceast seciune analizm prima observaie, mai
exact faptul c soluia (3.1) se poate reduce la soluia unei secvene de probleme
unidimensionale.
S permitem A R nn s fie o matrice SPD i s presupunem c exist vectori
n nenuli p1 ,K , p n astfel nct

p,p
i

pi Ap j 0
T

pentru i j

Astfel de vectori sunt denumii conjugat A sau pe scurt conjugat. Particulariznd


argumentele Sect. 1.7, rezult c p1 ,K , p n sunt independente. Astfel, p1 ,K , p n
n
formeaz baza Rxn i orice x Rx
poate fi scris sub forma
x 1 p1 L n p n
nlocuind n f i folosind rezultatele conjugrii n
T
T
1

f ( x ) 12 p1 Ap1 1bT p1 L n2 p n Ap n nbT pn f 1 p1 L f n p n


2

Astfel
f ( x ) minn f ( x) min f (1 p1 ) L min f ( n p n )
1R

xR

n R

n acest mod am reuit s descompunem problema iniial (3.1) n n probleme


unidimensionale. Avnd n vedere c
df p i
T
i p i Ap i bT p i 0 ,
d
i

soluia x din (3.1) este dat de

x 1 p1 L n p n , i bT p i / p i Ap i , i 1,K , n
T

(3.2)

Dac dimensiunea problemei (3.1) este mare, sarcina de a evalua x poate fi


prea ambiioas. n acest caz poate fi util s modificai procedura pe care tocmai am
descris-o astfel nct s poat fi folosit pentru a gsi o aproximaie x%pentru soluia
x pentru (3.1) printr-o presupunere iniial x 0 i civa vectori p1 ,K , p k , k = n . O
alegere natural pentru aproximarea x% este minimizatorul xk de f n
S k x 0 Span p1 ,K , p k . Pentru a-l gsi, se observ c orice x S k poate fi scris
sub forma
x x 0 1 p1 L k p k ,
aadar, dup ce nlocuim n f i folosim faptul c p1 ,K , p k sunt conjugate, obinem
T
T
T
1 2 1 T 1

1
1 p Ap 1 Ax o b p1 L k2 p k Ap k k Ax o b
2

f ( x) f x 0

pk

0
0
0
0
Notnd g g x f x Ax b i

f0 x
avem

1 T
x Ax xT g 0
2

f x f x 0 f 0 1 p1 L f 0 k p k

i
f x k mink f x min f 0 1 p1 L min f 0 k p k
xS

1R

k R

(3.3)

Astfel am redus din nou problema noastr la soluia unei secvene de probleme
simple unidimensionale. Aproximarea x k este dat de
x k x 0 1 p1 L k p k , i g 0 p i / p i Ap i , i 1,K , k
T

(3.4)

ca

df p i
d

i p i Ap i g 0 p i 0
T

Avnd n vedere c prin (3.3) pentru k 1


f x k mink f x f x k 1 min f 0 p k

(3.5)

x S

putem genera aproximrile x k iterativ. Metoda direciei conjugate pornete de la o


presupunere iniial arbitrar x 0 . Dac este dat x k 1 , atunci x k este generat de
formula
T
T
(3.6)
x k x k 1 p k , g 0 p i / p i Ap i
Astfel f x

k 1

atinge minimul la k i procedura garanteaz c iteraiile

succesive x k minimizeaz f peste o mulime care se extinde progresiv S k , care n


final include minimul global al lui f.
Coeficienii k pot fi evaluai prin formule alternative. De exemplu, folosind
Corolarul 2.9 i definiia lui S k , obinem
T
(3.7)
g k p i 0, i 1,K , k

Avnd n vedere c pentru i 1


g i Axi b A x i 1 i p i b Ax i 1 b i Ap i g i 1 i Ap i
obinem pentru k 1 i i = 1,..., k 1, folosind conjugarea, c

i T

Astfel

p k g i 1 p k i p i Ap k g i 1 p k
T

0 T

p k g 1 p k L g k 1 p k

o T

k T

pk
Ap k

g p

p Ap
k 1 T

k T

(3.8)

Combinnd ultima formul cu expansiunea Taylor, obinem


f xk

g k 1 T p k
1

f x k 1
T
2 p k Ap k

(3.9)

Pn la acest moment nu am discutat cum s obinem vectorii p 1,..., pn. i


putem genera eficient? Rspunsul pozitiv din urmtoarea seciune reprezint cheia
pentru succesul metodei gradientului conjugat.

3.2 Generarea direciilor conjugate i a spaiilor Krylov


S ne reamintim acum modul de generare a direciilor conjugate cu procedura
Gramm-Schmidt. S presupunem mai nti c p1 ,K , p k sunt direcii conjugate

k
1
k
nenule, 1 k n i s analizm modul de utilizare a h Span p ,K , p pentru a

genera un nou membru p k 1 sub forma


p k 1 h k k 1 p1 L kk p k

(3.10)

Avnd n vedere c p k 1 ar trebui s fie conjugat la p1 ,K , p k obinem


0 p i Ap k 1 p i Ah k k 1 p i Ap1 L kk p i Ap k
T

p i Ah k ki p i Ap i , i 1,..., k
T

Astfel

i T

ki
Evident,

i T

Ah k
Ap i

(3.11)
, i 1,..., k

Span p1 ,K , p k 1 Span p1 ,K , p k , h k

De aceea, dac sunt dai orice vectori independeni h 0 ,K , h k 1 , putem s pornim de


la p1 h 0 i s utilizm (3.10) i (3.11) pentru a construi un set de direcii reciproc A
conjugate p1 ,K , p k astfel nct
Span h 0 ,K , hi 1 Span p1 ,K , p i , i 1,K , k

Pentru h 0 ,K , h k 1 arbitrar, construcia este din ce n ce mai expansiv,


deoarece necesit att stocarea pentru vectorii p1 ,K , p k , ct i calcule dificile
inclusiv evaluarea produselor scalare k k 1 / 2 . Cu toate acestea, se pare c putem
adapta procedura astfel nct s genereze foarte eficient baza conjugat a spaiilor
Krylov
K k K k A, g 0 Span g 0 , Ag 0 ,K , Ak 1 g 0 , k 1,..., n
cu g 0 Ax 0 b definit de un vector iniial adecvat x 0 i K0 = {o}. Metoda puternic se
bazeaz din nou pe cteva observaii simple.
Mai nti se presupune c p1,..., pi formeaz o baz conjugat a Ki, i = 1,..., k,
i se observ c dac xk indic minimizatorul lui f pe x0+Kk, atunci prin Corolarul 2.9
gradientul g k f ( x k ) este ortogonal fa de spaiul Krylov Kk, adic,

k T

x0

pentru orice x K k

n mod special, dac g k 0 , atunci


gk K k .
Avnd n vedere c g k K k 1 , putem folosi (3.10) cu h k g k pentru a extinde orice
baz conjugat a lui K k la baza conjugat a lui K k 1 . Evident,

K k A, g 0 Span g 0 ,K , g k 1
Apoi se observ c pentru orice x K k 1 si k 1
Ax K k
sau pe scurt AK k 1 K k . Avnd n vedere c p i K i K k 1 , i 1,K , k 1 , avem

Ap

i T

Rezult c

ki

g k p i Ag k 0, i 1,K , k 1
T

i T

Ag k

i T

Ap i

0, i 1,K , k 1 .

Rezumnd, dac avem un set de vectori conjugai p1 ,K , p k astfel nct


Span p1 ,K , p i K i , i 1,K , k

atunci formula (3.10) aplicat la p1 ,K , p k si h k g k se simplific la


p k 1 g k k p k
cu

k kk

k T

Ag k

k T

Ap k

(3.12)

(3.13)

k
1
k
n cele din urm, se observ c ortogonalitatea g la Span p ,K , p i (3.12)
implic faptul c
(3.14)
p k 1 g k

n mod special, dac g k 1 0, atunci


definit cu condiia ca g k 1 0 .

p k 0 , astfel c formula (3.13) este bine

3.3 Metoda gradientului conjugat


n cele dou seciuni anterioare, am constatat c direciile conjugate pot fi utilizate
pentru a reduce minimizarea oricrei funcii ptratice convexe la soluia unei
secvene de probleme unidimensionale, precum i c direciile conjugate pot fi
generate foarte eficient. Renumita metod a gradientului conjugat (CG) pur i simplu
reunete aceste dou observaii.
Algoritmul pornete de la o presupune iniial x 0 , g 0 Ax 0 b, si p1 g o .
Dac sunt dai x k 1 si g k 1 , k 1 , mai nti verific dac x k 1 este soluia. Dac nu
este aceasta soluia, atunci algoritmul genereaz
x k x k 1 k p k
i

cu k g k 1 p k / p k Ap k
T

g k Ax k b A x k 1 k p k b

(3.15)

Ax k 1 b k Ap k g k 1 k Ap k

n cele din urm noua direcie conjugat p k 1 este generat de (3.12) i (3.13).
Decizia dac x k 1 este o soluie acceptabil se bazeaz de obicei pe valoarea
g k 1 , astfel c norma gradientul trebuie evaluat n fiecare etap. Se dovedete c
norma poate fi de asemenea utilizat pentru a nlocui produsele scalare care implic
gradientul n definiia k si k . Pentru a gsi formulele, s nlocuim k din (3.12) prin
k 1 i s nmulim identitatea rezultat cu g k 1 . Folosind ortogonalitatea obinem
T

k 1 T

p k g k 1 k 1 g k 1 p k 1 g k 1
2

(3.16)

astfel prin (3.8)

g k 1

k T

(3.17)

Ap k

Pentru a gsi o formul alternativ pentru k se observ c k 0


i c prin (3.15)
1
Ap k
g k 1 g k ,

k
astfel nct

k g k Ap k g k
T

k T

k T

Ag k
Ap k

gk

gk gk

k 1

k p k Ap k
T

gk
g k 1

(3.18)

2
2

Algoritmul 3.1. Metoda gradientului conjugat (CG).


Fiind dat o matrice simetric pozitiv definit A nn si b n
Etapa 0. {Iniializare.}
Se alege x 0 n stabilete g 0 Ax 0 b, p1 g 0 , k 1
Etapa 1. {Bucla gradientului conjugat.}
n timp ce g k 1 0
2

k T

Ap k

x k x k 1 k p k
g k g k 1 k Ap k
2

k g k
p

k 1

g k 1

g k p
k

k k 1

sfrit n timp ce
Etapa 2. {Gsirea soluiei.}
x x k

Ap k g k
T

k T

g k 1 0

Metoda CG complet este prezentat ca Algoritmul 3.1.

k g k 1

pentru

Ap k

Fiecare etap a metodei CG poate fi implementat cu o singur nmulire


matrice-vector. Aceast nmulire cu matricea A Hessian domin de obicei costul
etapei. O singur generare a vectorilor x k , p k , si g k este stocat de obicei, astfel c
cerinele de memorie sunt modeste.
S ne reamintim c algoritmul gsete n fiecare etap minimizatorul x k al f la
x 0 K k x 0 K k Ag 0 i extinde baza conjugat a lui K k ctre cea a lui K k 1 cu
condiia ca g k 0 . Avnd n vedere c dimensiunea lui Kk este mai mic dect sau
egal cu k, rezult c pentru unii k n
K k K k 1
Avnd n vedere c g k K k 1 i gk este ortogonal fa de Kk, Algoritmul 3.1
implementat n aritmetica exact gsete soluia x din (3.1) n maxim n etape.
Putem rezuma cele mai importante proprieti ale Algoritmului 3.1 n urmtoarea
teorem.

k
Teorema 3.1. S lsm x

s fie generat de Algoritmul 3.1 pentru a gsi soluia x

a lui (3.1) pornind de la x 0 R n . Atunci algoritmul este bine definit i exist k n


astfel nct x k x . Mai mult, urmtoarele afirmaii consider pentru i = 1,..., k:
(i)
(ii)
(iii)
(iv)

f x i min f x : x x 0 K i A, g 0
p

i 1

g g 0 pentru i j
p Ap 0 pentru i j
K A, g Span g ,K , g Span p ,K , p
i T

i T

i 1

(v)
De obicei este suficient s se gseasc x k astfel nct ||gk|| s fie mic. De
exemplu, fiind dat un 0 mic, putem considera c gk este mic dac
gk b
Atunci x% x k este o soluie aproximat care satisface relaia
1
A x% x b , x% x min A
unde min A indic valoarea proprie cea mai mic a lui A. Este uor s se verifice
dac soluia aproximat x%rezolv problema perturbat
T
1
minn f% x xT Ax b%x, b% b g k
x
2
Ce este mic depinde de problema rezolvat. Pentru a pstra caracterul general al
expunerii noastre, deseori nu vom specifica testul n cele ce urmeaz. Desigur,
g k 0 este ntotdeauna considerat mic.

3.4 CG reluat i metoda gradientului


Fiind dat o aproximaie x0 a soluiei x , putem folosi k iteraii ale gradientului
conjugat pentru a gsi o aproximare mbuntit x k. Dac repetm procedura cu x 0 =
xk, obinem metoda gradientului conjugat reluat.
1
0
Un caz special cu k 1 si p f x este de interes independent. Fiind
dat xk, metoda gradientului (denumit metoda celei mai abrupte pante) genereaz
xk+1 prin
x k 1 arg min f x k g k , g k f x k

Denumirea panta cea mai abrupt deriv din observaia c modelul liniar al f la x
obine minimul asupra setului tuturor vectorilor unitate
U d n , d 1
la d f x

f x . ntr-adevr, pentru orice d U


T
T
f x d f x d f x f x d .

Metoda complet a celei mai abrupte pante este urmtoarea:


Algoritmul 3.2. Metoda gradientului (cea mai abrupt pant).
nn
Fiind dat o matrice simetric pozitiv definit A
si b n
Etapa 0. {Iniializare}
Se alege x 0 n , se stabilete g 0 Ax 0 b, k 0
Etapa 1 {Bucla/nodul celei mai abrupte pante.}
n timp ce g k nu este mic

k g k

k T

Ag k

x k 1 x k k g k
g k 1 g k k Ag k
k k 1
sfrit n timp ce
Etapa 2. {Gsirea unei soluii (dac este posibil aproximat).}
x% x k
Se cunoate faptul c metoda gradientului converge, ns convergena sa
este pentru problemele prost condiionate considerabil mai mic dect cea a metodei
gradientului conjugat, dup cum vom vedea n urmtoarea seciune. Convergena
slab este ilustrat n Fig. 3.1.
n ciuda convergenei slabe, metoda gradientului este util deoarece este uor
de implementat i utilizeaz o direcie de descretere robust. n Fig. 3.2 este ilustrat
faptul c, chiar dac g este o perturbare relativ mare a gradientului g, vectorul
g g este nc o direcie n descretere, n timp ce o perturbaie mic p a
direciei CG p poate cauza ca p p s nu fie o direcie n descretere.

Fig. 3.1. Convergen mic a metodei celei mai abrupte pante

Fig. 3.2. Robusteea gradientului i direciile de descretere CG g i p


3.5 Rata de convergen i optimalitatea
Dei metoda gradientului conjugat gsete prin Teorema 3.1 soluia exact x din
(3.1) ntr-o serie de etape care nu depete dimensiunea problemei, se dovedete
c deseori poate produce o aproximaie suficient de exact x%a x ntr-un numr mult
mai mic de etape dect este necesar pentru finalizarea soluiei. Aceast observaie
sugereaz c metoda gradientului conjugat poate fi de asemenea considerat drept
o metod iterativ. n aceast seciune prezentm rezultatele care demonstreaz
aceast aseriune i ne ajut s identificm cazurile favorabile.
3.5.1 Estimrile minim - maxim
S notm eroarea soluiei drept
i s observm c
Rezult c

e e x x x
g x Ax b 0 .

g k Ax k b Ax k Ax A x k x Ae k ,

aadar n special
K k A, g 0 Span g 0 , Ag 0 ,K , Ak 1 g 0 Span Ae 0 ,K , Ak e0 .

Pornim analiza noastr a erorii soluiei folosind extinderea Taylor (2.5) pentru
a obine identitatea
f x f x f x x x f x
f x g x

x x

1
x x
2

2
A

f x

1
1 2
2
x x A e A
2
2
Combinnd ultima identitate cu Teorema 3.1 obinem
2
e k 2 f x k f x 0 min
2 f x k f x
k
0

x x

min
0
k

xx K ( A, g 0 )

xx K ( A , g )

2
A

min
0
k

xx K ( A, g 0 )

e x

2
A

0
k
0
Avnd n vedere c orice x x K A, g poate fi scris sub forma

x x 0 1 g 0 2 g 0 L k Ak 1 g 0 x 0 1 Ae0 L k Ak e0
rezult c

x x x 0 1 Ae0 L k Ak e 0 p A e 0
unde p indic polinomialul definit pentru orice x prin
p x 1 1 x 1 x 2 L k x k
Astfel, notnd cu P k setul tuturor polinomialelor p grad k care satisfac relaia p(0) =
1, obinem
ek

min
k

e( x )

xx K ( A, g )

2
A

mink p A e0
pP

(3.19)

2
A

Acum vom deriva o limit la expresia de pe partea dreapt a (3.19) care


depinde de spectrul lui A, dar este independent de direcia erorii iniiale e0. S lsm
o descompunere spectral a lui A s fie scris ca A = UDU T, unde U este o matrice
ortogonal i D diag 1 ,K , n este o matrice diagonal definit de valorile proprii
ale lui A. Avnd n vedere c se presupune c A este pozitiv definit, rdcina ptrat
a lui A este bine definit de
A1/2 UD1/2U T
T
Folosind p A Up D U , este uor s se verifice dac

A1/2 p A p A A1/2

Mai mult, pentru orice vector v


v

2
A

vT Av vT A1/2 A1/2v A1/2v A1/2v A1/2v


T

Folosind ultimele identiti, (3.19) i proprietile normelor, obinem


ek

2
A

mink p A e0

2
A

pP

mink p A

mink A1/2 p A e 0

mink p D

pP

A1/2 e0

pP

Avnd n vedere c

mink A1/2 A A1/2e 0


pP

pP

e0

2
A

p D max p i
i 1,K , n

putem scrie
ek

mink max p i e0
pP

i 1,K ,n

(3.20)
A

3.5.2 Estimarea numrului de condiionare


Estimarea (3.20) reduce analiza convergenei metodei CG la analiza aproximrii
funciei zero de pe spectrul lui A cu un polinomial de gradul k cu valoarea unu la
origine. Acest rezultat ne ajut s identificm cazurile favorabile cnd metoda
gradientului conjugat este eficient. De exemplu, dac spectrul lui A este strns n
jurul unui singur punct , atunci minimizarea prin CG ar trebui s fie foarte eficient
deoarece

1 x /

este mic pe lng . Vom utiliza (3.20) pentru a obine o

estimare global a ratei de convergen a metodei CG sub aspectul numrului de


condiionare al lui A.

k
Teorema 3.2. S lsm x

s fie generat de Algoritmul 3.1 pentru a gsi soluia x

a (3.1) pornind de la x 0 n . Atunci eroarea


e k x k x
satisface
e

k
A

k A 1

k A 1

(3.21)

0
A

unde k A indic numrul de condiionare spectral al lui A.


Dovad. Mai nti se observ c dac P k este setul tuturor polinomialelor p de grad
k astfel nct p 0 1 , atunci pentru orice t P k
(3.22)
min max p max t
pP k min ,max

min ,max

O alegere natural pentru t este polinomialul Chebyshev de grad k (ponderat i


decalat) pe intervalul min , max
2 max min

max min

tk Tk

min
Tk max

max min

unde Tk x este polinomialul Chebyshev de primul tip pe intervalul [-1,1] dat de


k
k
1
1
Tk x x x 2 1 x x 2 1
2
2

Se cunoate faptul c acest t k minimizeaz partea dreapt a (3.22) (a se vedea, de


k
ex., [172]). Evident, tk P , astfel c putem utiliza proprietile sale binecunoscute
pentru a obine
max

min , max

max min

max min

t 1 Tk

Manipulri simple arat atunci c


k

1
k A 1

2
k A 1

min
1

Tk max

2
max min
Astfel, pentru orice min , max

k A 1

k A
1

k A 1

pk 2
k A 1

nlocuind aceast limit n (3.20) se obine rezultatul necesar.

Estimarea (3.21) poate fi mbuntit pentru cteva distribuii speciale ale


valorilor proprii. De exemplu, dac spectrul lui A se afl n cadrul unui interval pozitiv
[amin, amax] cu excepia valorilor proprii izolate m 1 ,K , m , atunci putem utiliza
polinomiale speciale p P k m de forma

p 1 K
1

k
q , qP
m

pentru a obine estimarea


e

k m
A

k% 1

k% 1

(3.23)

0
A

unde k% amax / amin


Dac spectrul lui A este distribuit n dou intervale pozitive [amin, amax] i [amin +
d,amax + d], d > 0, atunci
k
(3.24)
k 1
k
0
e 2
e

A
A
k 1
unde k 4amax / amin aproximeaz numrul de condiionare efectiv al unei matrice A
cu spectrul n amin , amax U amin d , amax d . O caracteristic interesant a estimrilor
(3.23) i (3.24) este faptul c limita superioar este independent de valorile unor
valori proprii sau d. Dovezile celor de mai sus i alte estimri interesante se pot
regsi n lucrrile scrise de Axelsson [3] i Axelsson i Lindskg [5].

3.5.3 Rata de convergen a metodei gradientului


Observnd c prima etap a metodei gradientului definit de Algoritmul 3.2 este
numai prima etap a algoritmului CG, putem folosi rezultatele din Sect. 3.5.1 pentru a
gsi rata de convergen a metodei gradientului. Estimarea este formulat n
urmtoarea propoziie.
Propoziia 3.3. S lsm {xk} s fie generat de Algoritmul 3.2 pentru a gsi soluia x
din (3.1) pornind de la x 0 R n . Atunci eroarea
e k x k x
satisface
k
(3.25)
k A 1
k
0
e
e

A
A
k A 1
unde k A indic numrul de condiionare spectral al lui A.

Fig. 3.3. Aproximarea cea mai bun a lui zero la (A) cu polinomialul liniar cu p(0) =
1
Dovad. S lsm xk+1 s fie generat prin metoda gradientului din x k R n i s lsm
P 1 s indice setul tuturor polinomialelor liniare p astfel nct p(0) = 1. Atunci norma
k
energiei e
a erorii
A

e k x k x
este prin (3.20) redus cu un factor care poate fi estimat din
e k 1 min1 max p i e k min max 1i 1 e k
A

p p i 1,K , n

1 i 1,K , n

Folosind proprietile elementare ale funciilor liniare sau Fig. 3.3, obinem faptul c
minimizatorul 1 satisface

1min 1 1max 1 .
Rezult c

1min 2 / min max

i
e k 1

2min
1 e k
min max

max min k
e
max min

(3.26)
A

Estimarea (3.25) poate fi obinut din (3.26) prin manipulri simple.


Se observ c estimarea (3.21) pentru prima etap a metodei gradientului
conjugat poate da o limit mai slab dect estimarea (3.25) pentru metoda
gradientului, ns pentru k mare, estimarea (3.21) pentru etapa k a metodei
gradientului conjugat este mult mai bun dect estimarea (3.25) pentru etapa k a
metodei gradientului. Acest lucru este cauzat de faptul c (3.21) capteaz
performana global a metodei CG, n special capacitatea sa de a exploata
informaiile din etapele anterioare, n timp ce (3.25) se bazeaz pe analiza unei
singure etape, n acord cu informaiile ntr-o etap folosite de metoda gradientului.
3.5.4 Optimalitate
Teorema 3.2 presupune un rezultat uor al optimalitii referitor la numrul de iteraii
ale algoritmului CG. Pentru a-l formula, s lsm T s indice orice set de indici i s
presupunem c pentru orice t T este definit problema
minimizare ft(x)
1 T
X AtX btT x, At nt xnt simetric pozitiv definit, i bt , x nt . De
2
asemenea, s presupunem c valorile proprii ale oricrui At se ncadreaz n
intervalul amin , amax , 0 amin amax . Atunci numrul de iteraii CG care sunt necesare
cu

ft x

pentru a reduce eroarea cu un factor dat este mrginit uniform. Rezult uor c
0
k
algoritmul CG, pornind de la xt o gsete xt astfel nct
At xtk bt bt
la iteraii O(1). Rezult c dac matricele At au elemente O nt , atunci putem obine
soluii aproximate la operaiunile aritmetice optime O nt .
3.6 Gradieni conjugai precondiionai
Analiza seciunii anterioare arat c rata de convergen a algoritmului gradientului
conjugat depinde de distribuirea valorilor proprii ale Hessianului A din f. n mod
special, am argumentat c CG converge foarte rapid dac valorile proprii ale lui A
sunt reunite n jurul unui punct, adic, n cazul n care numrul de condiionare k(A)

este aproape de unu. Acum vom arta c putem reduce problema de minimizare la
acest caz favorabil dac avem o matrice simetric pozitiv definit M astfel nct M 1 x
s poate fi uor evaluat pentru orice x i M aproximaii A n sensul c M 1 A este
aproape de identitate.
Mai nti se presupune c M este disponibil n forma
T
%%
M LL
1 %
astfel nct M 1 A s fie similar cu L%
ALT i cea din urm matrice s fie aproape de
identitate. Atunci
T
T
1 %
1 %
T
1
T
LT x L%
ALT L%
x L%
b L%
x
2
i putem nlocui problema iniial (3.1) prin problema precondiionat pentru a gsi

f x

minn f y ,

(3.27)

T
x i stabilit
unde am nlocuit y L%
T
1
1 %
1
f y yT L%
ALT y L%
b y.
2

Soluia y a problemei precondiionate (3.27) se refer la soluia x a problemei


iniiale prin
T
x L%
y

Dac algoritmul CG este aplicat direct problemei precondiionate (3.27) cu un


y0 dat, atunci algoritmul este iniializat prin
T 0
1 %
1
1 0
y 0 L%
x , g 0 L%
ALT y 0 L%
b L%
g , si

iteraiile sunt definite de

p1 g 0 ;

T 1
2
T k
k g k 1 / p k L%
AL%
p ,

y k y k 1 k p k ,
1 %
g k g k 1 L%
ALT p k ,
k

k g

k 2

/ g k 1 ,

p k 1 g k k p k .
nlocuind
i notnd

T k
1 k
y k L%
x , g k L%
g

si

T k
p k L%
p ,

T %
z k L%
L1 g k M 1 g k
obinem algoritmul gradientului conjugat precondiionat (PGG) n variabilele originale.

Algoritmul 3.3. Metoda gradientului conjugat precondiionat (PCG).


Fiind date o matrice simetric pozitiv definit A nxn , aproximarea simetric pozitiv
definit M nxn i b n .
Etapa 0. {Iniializare}
Se alege x 0 n , stabilete g 0 Ax 0 b, z 0 M 1 g 0 , p1 z 0 , k 1
Etapa 1. {Bucla gradientului conjugat}
k 1
n timp ce g
nu este mic

k z k 1 g k 1 / p k Ap k
T

x k x k 1 k p k
g k g k 1 k Ap k
z k M 1 g k

k z k g k / z k 1 g k 1
T

p k 1 z k k p k
k k 1
Sfrit
n timp ce
Etapa 2. {Gsirea unei soluii (dac este posibil aproximat)}
x% x k
Se observ c algoritmul PCG nu exploateaz explicit factorizarea Cholesky a
precondiionatorului M. Pseudorezidualele zk se obin de obicei rezolvnd ecuaia
Mz k g k . Dac M este o aproximare bun a lui A, atunci z k este aproape de vectorul
de eroare ek. Rata de convergen a algoritmului PCG depinde de numrul de
1
1
T
condiionare al Hessianului funciei transformate f , adic la k M A k L% AL% .

Astfel, eficiena metodei gradientului conjugat precondiionat depinde n mod critic de


alegerea unui precondiionator, care ar trebui s echilibreze costul aplicrii sale cu
efectul de precondiionare. Pentru cititorii interesai facem trimitere la cri de
specialitate precum Saad [163] sau Axelsson [4] pentru informaii suplimentare.
Avnd n vedere c alegerea precondiionatorului depinde de problem, ne limitm
atenia aici la scurta discutare a ctorva strategii generale.
Cei mai simpli precondiionatori pot fi definii prin descompunerea
A = D + E + E T,
unde D este diagonala lui A i E este partea strict mai mic cu intrrile
E ij A ij pentru i j si E ij 0 n caz contrar.
Precondiionatorul Jacobi MJ = D este cel mai uor de implementat, ns
eficiena sa este foarte limitat. O aproximare mai bun a lui A poate fi obinut
alegnd precondiionatorul Jacobi block diagonal.

M BJ

A11
0

0
A22
.
0

... 0
... 0
,
... .

... Akk

(3.28)

unde Aii sunt blocuri diagonale ale lui A (a se vedea, de ex., Greenbaum [106, Sect.
k
k
10.5]). Pseudorezidualele zk se obin de obicei rezolvnd Aii zi gi .
Rezultate bune se pot obine deseori cu ajutorul precondiionatorului simetric
Gauss-Seidel
M SGS D E D 1 D E T .

Se observ c
1

L% D E D 2

este o matrice triunghiular regulat inferioar, astfel c avem factorizarea


triunghiular
T
%%
M SGS LL
gratuit.
Ca not mai general, precondiionatorii factorizai pot fi produi prin Cholesky
incomplet (IC), care neglijeaz unele elemente de completare n factorul L. Atunci
cnd elementele lui L sunt neglijate deoarece sunt mai mici dect un anumit prag,
factorizarea este denumit IC-prin-valoare, iar atunci cnd sunt omise deoarece nu
in de un anumit model cu caracter rar, avem IC-prin-poziie. A se vedea de
exemplu Axelsson [4] sau Saad [163]. Inconvenientul acestei metode este acela c
poate eua n generarea intrrilor diagonale.
3.7 Precondiionare prin proiectorul conjugat
Pn acum am presupus c precondiionatorii pentru o matrice simetric pozitiv
definit A sunt matrice nesingulare care aproximeaz A. n aceast seciune
descriem o strategie alternativ care este util atunci cnd putem gsi minimizatorul
x0 al f peste un subspaiu U al R n . Vom arta c n acest caz putem obine efectul
de precondiionare reducnd iteraiile gradientului conjugat la complementul conjugat
al U.
3.7.1 Proiectoare conjugate
Instrumentele noastre principale vor fi proiectoarele cu conjugate range and kernel.
Vom folosi relaiile de baz introduse n Sect. 1.3 i unele observaii pe care le vom
analiza n aceast subseciune.
S lsm A nn s fie o matrice simetric pozitiv definit. Un proiector P
este un proiector conjugat A sau pe scurt un proiector conjugat dac ImP este Aconjugat la KerP, sau echivalent
PT A I P PT A PT AP O.
Rezult c Q = I P este de asemenea un proiector conjugat,
PT A AP P T AP, QT A AQ QT AQ,

(3.29)

S indicm V Im Q. Dac x AV , atunci y = Qx satisface y V i


QTAQx = AQx = Ay,
astfel nct
QT AQ( AV) AV
(3.30)
T
Astfel, AV este un subspaiu invariant al Q AQ.
Urmtoarea lem arat c aplicaia/reprezentarea/transformarea care aloc
fiecrui x AV vectorul Qx V este expansiv ca n Fig. 3.4.

Fig. 3.4. Ilustrarea geometric a lemei 3.4


Lema 3.4. S lsm Q s indice un proiector conjugat la V i x AV . Atunci
||Qx||||x||.
Dovad. Pentru orice x AV , exist y n astfel nct x = AQy. Rezult c
QTx = QTAQy = AQy = x.
T
T T
Avnd n vedere c x Qx = x Q x = ||x||2, avem
IIQx||2 = xTQTQx = xT ((QT - I) + I) ((Q - I) + I)x = ||(Q - l)x||2 + ||x||2.

3.7.2 Minimizare n subspaiu


S presupunem c U este subspaiul cuprins de coloanele unei matrice de rang
complet pe coloane U nxn i s observm c UTAU este regulat. ntr-adevr, dac
UTAUx = o, atunci

Ux

2
A

xT U T AUx 0,

astfel x = o prin presupunerile c U este matricea de rang complet pe coloane i A


este SPD. Astfel putem defini
P = U(UT AU)-1 UT A.
Se poate verifica uor n mod direct dac P este un proiector conjugat pe U ca
P2 = U(UTAU)-1UTAU(UTAU)-1UTA = P
i
PTA(I - P) = AU(UTAU)-1UTA(I - U(UTAU)-1UTA) = O.
Avnd n vedere c orice vector x U poate fi scris sub forma x = Uy, y
Px = U(UTAU)-1UTAUy = Uy = x,
rezult c
U = ImP.

, i

Proiectorul conjugat P la U poate fi utilizat pentru soluia


1
min f x minm f Uy minm y TU T AUy bTUy
xU
y
y 2
Folosind argumentul cu gradiente al Propoziiei 2.1 obinem faptul c minimizatorul y 0
al celei din urm probleme satisface
UTAUy0 = UTb,
astfel nct minimizatorul x0 al f peste U satisface
x0 = Uy0 = U(UTAU)-1UTb = PA-1b.

(3.31)
(3.32)

Presupunerea noastr cu privire la abilitatea de a gsi minimul lui f peste U


ajunge efectiv la presupunerea c putem rezolva (3.31). Se observ c putem evalua
produsul PA-1b fr a rezolva orice sistem de ecuaii liniare cu matricea A.
3.7.3 Gradieni conjugai n complementul conjugat
n urmtoarea etap vom folosi proiectoarele conjugate P i Q = I P pentru a
descompune problema de minimizare (3.1) n minimizarea la U i minimizarea la V =
ImQ. Vom folosi metoda gradientului conjugat pentru a rezolva cea din urm
problem.
Sunt necesare dou observaii pentru a exploata structura special a problemei noastre. Mai nti, folosind lema 3.4, dimV = dimAV, i (1.2), obinem faptul c

aplicaia/reprezentarea/transformarea care aloc fiecrui x AV un vector Qx V


este un isomorfism, astfel nct
Q(AV) = V.
n al doilea rnd, folosind (3.29) i (3.32), obinem
(3.33)
g 0 Ax 0 b APA1b b P T b b QT b.
Folosind cele dou observaii obinem
minn f x min f y z min f y min f z
yU , zV

yU

(3.34)

zV

1 T T
x Q AQx bT Qx.
xAV 2

= f x0 min f z f x 0 min
zV

T
1 T T
x Q AQx g 0 x
xAV 2
0
unde x este determinat de (3.32).
Rmne de rezolvat problema minimizrii (3.34). Mai nti se observ c
folosind lema 3.4 obinem faptul c Q TAQ|AV este definit pozitiv. Avnd n vedere c
prin (3.33) g 0 Im QT
ImQT = Im(QTA) = Im(AQ) = AV,
(3.35)
i AV este un spaiu invariant al Q TAQ, putem utiliza procedura descris n Sect. 3.2
pentru a genera vectorii conjugai Q TAQ p1,... ,pk din

f x 0 min

K k K k QT AQ, g 0 Span g 0 , QT AQg 0 ,..., QT AQ

k 1

g0

Rezult pur i simplu faptul c


q1 Qp1 , q 2 Qp 2 ,...
sunt vectorii conjugai A ai V. Folosind (3.14), p i AV , i Lema 3.4, se poate vedea
uor c
q k p k g k 1 ,
astfel c putem genera o nou direcie conjugat q k ori de cte ori g k 1 o . Putem
rezuma cele mai importante proprieti ale algoritmului CG cu precondiionarea cu
proiectorul conjugat n urmtoarea teorem.
Teorema 3.5. Lsm x k s fie generat de Algoritmul 3.4 pentru a gsi soluia x a
(3.1) cu o matrice de rang complet pe coloane U nm . Atunci algoritmul este bine
definit i exist k n m astfel nct x k x . n plus, urmtoarele afirmaii consider
pentru i = 1, .. ., k:
f x i min f x : x U QK i QT AQ, g 0
(i)

(ii)

q i g i 1

(iii)

qi

Aq j 0 i j

(iv)

qi

Ax 0

xU

Algoritmul gradientului conjugat complet cu precondiionarea prin proiectorul


conjugat este dup cum urmeaz:

Algoritmul 3.4. Gradieni conjugai cu precondiionare prin proiector (CGPP).


Fiind dat o matrice simetric pozitiv definit A
coloane U nxm i b n .
Etapa 0. {Iniializare}

P U U T AU

nxn

, o matrice de rang complet pe

U T A, Q I P

x 0 PA1b U U T AU U T b
1

k 1, g 0 Ax 0 b, q1 Qg 0
Etapa 1. {Bucla gradientului conjugat}
i 1
n timp ce g 0

k g k 1 q k / q k Aq k
T

x k x k 1 k q k
g k g k 1 k Aq k

k g k Aq k / q k Aq k
T

q k 1 Qg k k q k
k k 1
sfrit
n timp ce
Pasul 2. {Gsirea unei soluii (posibil aproximat)}
x% x k
3.7.4 Efect de precondiionare
Aa cum am vzut n seciunea anterioar, iteraiile Algoritmului 3.4 pot fi considerate
drept iteraii ale gradientului conjugat pentru minimizarea
T
1
f 0,Q x xT QT AQx g 0 x
2
care genereaz iteraiile
x k K k QT AQx, g 0 AV

Astfel numai restricia pozitiv definit Q AQ | AV a lui QT AQ la AV ia parte la procesul


soluiei, iar rata de convergen poate fi estimat de numrul de condiionare
T
spectral k Q AQ | AV al lui QT AQ | AV .
Este destul de uor s se observe c
k QT AQ | AV k A .

ntr-adevr, indicnd prin 1 L n valorile proprii ale lui A, putem observa c dac
x AV i ||x|| = 1, atunci prin Lema 3.4
xT QT AQx Qx A Qx / Qx n
T

i
xT QT AQx xT QT AQx xT PT APx xT Ax 1

(3.36)

Pentru a vedea efectul de precondiionare al algoritmului n detaliu, s notm


prin subspaiul m-dimensional cuprins de vectorii proprii corespunztori celor mai
mici valori proprii m n m 1 L n al A, i s lsm RAU i R s indice proiectoarele
ortogonale la AU i respectiv . S lsm
RAU R
s indice distana dintre AU i . Poate fi evaluat cu condiia s avem matricele U i
E, ale cror coloane formeaz bazele ortonormale ale AU i respectiv . Se
cunoate [170] faptul c dac este valoarea cea mai puin singular a lui U TE,
atunci

1 2 1
Teorema 3.6. S lsm U, V, Q s fie cele ale Algoritmului 3.4, s lsm 1 L n
s indice valorile proprii ale lui A i s lsm min s indice valoarea proprie cea mai
puin nenul a lui QTAQ. Atunci
n

1
2

2
n m

(3.37)

2 n2 min

k QT AQ | AV

1
2

2
n m

2 n2

Dovad. S lsm x AV, x 1 , astfel nct Qx 1 prin Lema 3.4. Observnd c


Im R i Im I R sunt subspaii invariante ortogonale ale lui A, obinem c
AQx A ( I R Qx AR Qx
2

(3.38)

n2 m I R Qx n2 R Qx
2

n2 m I R Qx n2 R Qx / Qx
2

n2 m 1 2 n2 2 ,
unde Qx

R Qx . Am folosit faptul c

I R Qx

R Qx Qx .

Avnd n vedere c ImQ = V, rezult prin definiia lui R AU c RAUQ = 0 i


1
Qx R RAU Qx .
Avnd n vedere c ultima expresie din (3.38) este o funcie descresctoare a lui
pentru 0 , rezult c
2

QT AQx AQx n2 m 1 2 n2 2
Restul este o simpl consecin a lui (3.36).

Teorema de mai sus sugereaz c precondiionarea prin proiectorul conjugat


este eficient cnd U aproximeaz subspaiul cuprins de vectorii proprii care
corespund celor mai mici valori proprii ale lui A. Dac U TE este nesingular i
n n m , atunci 1 i

k QT AQ | AV k A .
Dac problema minimizrii rezult din discretizarea ecuaiilor difereniale
pariale eliptice, atunci U poate fi obinut prin agregare. Rezult c chiar i subspaiul
cu o dimensiune foarte mic poate mbunti considerabil rata de convergen. A se
vedea Sect. 3.10.1 pentru un exemplu numeric.
3.8 Gradieni conjugai pentru mai multe probleme generale
S lsm A s fie numai pozitiv semidefinit, astfel nct funcia de cost f s fie
convex dar nu strict convex i s lsm problema minimizrii fr restricii (3.1) s
fie bine pus, adic b Im A prin Propoziia 2.1.
Dac pornim algoritmul gradientului conjugat de la arbitrarul x 0 n , atunci
n
0
gradientul g0 i spaiul Krylov K A, g satisfac

g Im A si K n A, g 0 Im A
0

n
0
Avnd n vedere c metoda CG alege direciile conjugate din K A, g , rezult c

metoda funcioneaz numai la range lui A. Astfel algoritmul genereaz iteraiile x k ,


care converg ctre o soluie x cu rata de convergen ce poate fi descris prin
n
0
distribuirea spectrului restriciei A K A, g . Observnd c cea mai mic valoare
proprie a lui A | K

A, g
0

este limitat de jos de cea mai mic valoare proprie nenul

min de A , obinem estimarea erorii

e A 2
k

k A 1

k A 1

(3.39)

k
0

e A

unde k A indic numrul de condiionare regulat spectral al lui A definit de


k A k A | Im A max / min

S lsm P i Q = I P s indice proiectoarele ortogonale la ImA i respectiv


KerA, astfel nct
x Px Qx
Avnd n vedere c reducerea A|ImA este nesingular, rezult c exist o soluie
unic xLS Im A a (3.1), iar prin propoziia 2.1 orice soluie x satisface
x xLS d , d KerA
Astfel dac x este o soluie a (3.1), atunci Px xLS i
Qx Qx 0 .
Rezult c xLS este soluia cea mai puin ptratic a lui Ax = b, i pentru a o obine
prin algoritmul gradientului conjugat este suficient s se ia x 0 Im A .

Dac A este nedefinit, atunci, folosind argumentele din Sect. 3.2, se poate
verifica uor dac metoda gradientului conjugat genereaz nc direcii conjugate,

dar eueaz cnd p k

Ap k 0 . Cel din urm caz se poate ntmpla cu p k KerA ,

ca n
1 0 1
0

0 1 1
Rezult c nu exist nicio garanie c Algoritmul CG 3.1 poate, cel puin fr
modificri, s gseasc un punct staionar al lui f.

1,1

3.9 Convergena n prezena erorilor de rotunjire


Teoria matematic elegant prezentat mai sus presupune implementarea
algoritmului gradientului conjugat n aritmetica exact i capteaz bine performana
numai a unui numr limitat de iteraii ale gradientului conjugat n aritmetica
informatic. Avnd n vedere c vom folosi metoda gradientului conjugat n principal
pentru o aproximare de precizie mic a problemelor auxiliare bine condiionate, n
cele ce urmeaz ne vom baza expunerea pe aceast teorie. Cu toate acestea, este
nc util s fim contieni de posibilele efecte ale erorilor de rotunjire care nsoesc
orice implementare informatic a algoritmului gradientului conjugat.
A fost cunoscut nc de la introducerea metodei CG i a metodei Lanczos
[140], care genereaz aceleai iteraii, faptul c, atunci cnd este folosit n
aritmetica preciziei finite, vectorii generai de aceti algoritmi pot nclca grav
proprietile lor teoretice. n mod special, s-a observat c gradienii evaluai i pot
pierde ortogonalitatea dup un numr mic de iteraii de douzeci, precum i c pot fi
generate direcii conjugate aproape dependente. n ciuda acestor efecte, s-a
observat c metoda gradientului conjugat converge nc n aritmetica preciziei finite,
ns c convergena este ntrziat [105, 107].
Efectele indezirabile ale erorilor de rotunjire pot fi reduse prin reortogonalizare.
O analiz simpl dezvluie faptul c reortogonalizarea complet a gradienilor este
costisitoare i necesit o memorie mare. O cheie pentru o implementare eficient a
reortogonalizrii se bazeaz pe observaia c acumularea erorilor de rotunjire are un
model regulat, anume faptul c perturbrile de amploare ale vectorilor generai
aparine de spaiul generat de vectorii proprii ai lui A, care pot fi bine aproximai de
vectori din spaiul Krylov actual. Acest lucru a condus la implementarea eficient a
metodei gradientului conjugat bazat pe ortogonalizarea selectiv propus de Parlett
i Scott [158]. Mai multe detalii i informaii despre efectele erorilor de rotunjire i
implementarea metodei gradientului conjugat n aritmetica finit se pot regsi n
lucrarea de analiz de amploare a autorilor Meurant i Strakos [152].

3.10 Experimente numerice


Aici ilustrm performana algoritmului CG i efectul precondiionrii asupra soluiei
unui reper prost condiionat i o categorie de probleme bine condiionate. Cea din
urm categorie a fost propus pentru a semna categoriei de probleme ce rezult din
aplicarea metodelor de descompunere cu mai multe grile sau de domenii la ecuaiile
difereniale pariale eliptice. Funciile de cost f L ,h i f LW ,h introduse aici sunt folosite
n Seciunile 4.8, 5.11 i 6.12 ca repere pentru soluionarea problemelor cu restricii,
astfel nct s putem evalua complexitatea suplimentar ce rezult din
implementarea diferitelor restricii i s ne nelegem mai bine algoritmii. Mai mult,
folosirea acelorai funcii de cost n reperele noastre faciliteaz considerabil
implementarea lor.
3.10.1 CG de baz i precondiionarea
S lsm = (0,1) x (0,1) s indice un domeniu deschis cu limita i fraciunea
u 0 0,1 . S lsm H1() s indice spaiul Sobolev din prima ordine n spaiul
L2() al funciilor la ale crui ptrate sunt integrabile n sensul Lebesgue, s lsm

V u H 1 W : u 0 pe GU

i s definim pentru orice U H


2
1
f L U U x d W Ud W

2 W
Astfel putem defini problema continu cu privire la identificarea
min f L U
1

UV

(3.40)

Reperul nostru prost condiionat a fost obinut din (3.40) prin discretizarea cu
element finit folosind o gril regulat definit de parametrul de discretizare h i
elemente liniare. Condiiile Dirichlet au fost lrgite n Hessianul A L,H al funciei de cost
nxx
discretizate fL,h, astfel nct AL ,h
s fie pozitiv definit, n = p(p 1), i p = 1/h +
1. n plus, AL,H este cunoscut drept prost condiionat cu numrul de condiionare
k AL ,h h 2 . Calculele au fost efectuate cu h = 1/32, ceea ce corespunde lui n =
1056 necunoscute.
Am folosit reperul pentru a compara performana CG, CG cu precondiionare
SSOR, i CG cu precondiionarea prin proiector conjugat. Pentru a defini proiectorul
conjugat, am descompus domeniul n ptrate de 4x4 cu variabile care de obicei sunt
8x8 care au fost agregate prin matricea U cu 16 coloane.
Graficul normei gradientului (ax vertical) funcie de numrul de iteraii pentru
algoritmul CG de baz (CG), algoritmul CG cu precondiionarea SSOR (CG-SSOR),
iar algoritmul CG cu precondiionarea prin proiectorul conjugat (CG-CP) este
reprezentat n Fig. 3.5. Putem vedea c dei performana algoritmului CG este slab
dac Hessianul funciei de cost este prost condiionat, poate fi considerabil
mbuntit prin precondiionare.

iteraii
Fig. 3.5. Convergena CG, CG-SSOR, i algoritmilor CG-CP
3.10.2 Demonstraia numeric a optimalitii
Pentru a ilustra conceptul optimalitii, s considerm categoria de probleme pentru
a minimiza
1
T
f LW ,h x xT ALW ,h x bLW
,h x
2
unde
ALW ,h AL ,h 2 I , bLW ,h i 1, i=1,...,n,
n=1/h+1
Categoriei de probleme i se poate da o interpretare mecanic asociat
expansiunii sistemelor de suspensie pe modelul lui Winkler. Folosind teorema lui
Gershgorin, se poate dovedi c spectrul Hessianului ALW,h al fLW,h se afl n intervalul
[2,10], astfel nct k ALW ,h 5
.

Fig. 3.6. Optimalitatea CG pentru o categorie de probleme bine condiionate

In Fig. 3.6 putem vedea numerele iteraiilor CG k n (ax vertical) care au fost
necesare pentru a reduce norma gradientului cu 10 -6 pentru problemele cu
dimensiunea n ncadrate de la 100 la 1000000. Dimensiunea n de pe axa orizontal
este n scala logaritmic. Putem vedea c kn variaz uor o dat cu varierea lui n, n
acord cu teoria dezvoltat n Sect. 3.5. n plus, avnd n vedere c costul nmulirilor
matrice-vector este n cazul nostru proporional cu dimensiunea n a matricei ALW,h,
rezult c costul soluiei este de asemenea proporional cu n.
3.11 Comentarii i concluzii
Dezvoltarea metodei gradientului conjugat a fost precedat de metoda direciilor
conjugate [92]. Dac direciile conjugate sunt generate printr-o descompunere
adecvat a matricelor, metoda poate fi considerat variant a metodelor directe din
Sect. 1.5 (a se vedea, de ex., [169]).
De cnd a fost lansat n prima parte a anilor 1950 de ctre Hestenes i
Stiefel [117], au fost efectuate multe cercetri referitoare la dezvoltarea metodei CG,
astfel nct exist multe referine referitoare la acest subiect. Pentru cititorii interesai
facem trimitere la manualele i monografiile de cercetare realizate de Saad [163],
van der Vorst [178], Greenbaum [106], Hackbusch [110], Chen [21], i Axelsson [4]
pentru informaii suplimentare. O relatare extins a dezvoltrii metodei CG pn n
anul 1989 se poate regsi n lucrarea realizat de Golub i OLeary [102]. Majoritatea
cercetrilor se concentreaz asupra dezvoltrii i analizei precondiionatorilor.
Precondiionarea prin proiectorul conjugat prezentat n Sect. 3.7 a fost iniiat
de Dostal [39]. Aceeai precondiionare cu analiz diferit a fost prezentat
independent de Marchuk i Kuznetsov [150] precum gradieni conjugai n subspaiu
sau metoda generalizat a gradientului conjugat i de Nicolaides [154] precum
metoda deflaiei.
Identificnd n fiecare etap minimul subspaiului generat de toate direciile de
cutare anterioare, metoda gradientului conjugat exploateaz toate informaiile
colectate n timpul iteraiilor anterioare. Pentru a folosi aceast caracteristic n
algoritmii pentru rezolvarea problemelor cu restricii, este important s se genereze
secvene nentrerupte lungi ale iteraiilor gradientului conjugat. Aceast strategie
susine de asemenea exploatarea altei caracteristici unice a metodei gradientului
conjugat, anume capacitile de auto-precondiionare care au fost descrise de van
der Sluis i van der Vorst [168]. Cea din urm proprietate poate fi de asemenea
descris sub aspectul precondiionrii de proiectorul conjugat. ntr-adevr, dac Q k
indic proiectorul conjugat pe complementul conjugat V al U Span p1 ,... pk , atunci
se poate da limita pe rata de convergen a metodei gradientului conjugat pornind de
T
la xk 1 sub aspectul numrului regulat de condiionare kk k Qk AQk | V al

QkT AQk | V i se observ c kk descrete o dat cu creterea lui k.

Pentru rezolvarea problemelor de amploare, algoritmul CG de baz are cel


mai mare succes cnd este combinat cu precondiionarea care exploateaz
informaiile suplimentare despre A, obinute deseori prin urmrirea generrii sale.
Astfel precondiionatorii bazai pe mai multe grile (a se vedea, de ex., Hackbusch
[109] sau Trottenberg et al. [176]) sau FETI (a se vedea, de ex., care se bazeaz pe
Farhat, Mandel, i Roux [85], sau Toselli i Widlund [175]) pentru rezolvarea
problemelor care rezult din discretizarea ecuaiilor difereniale eliptice pariale
exploateaz informaiile despre problemele continue iniiale att de eficient, nct
problemele discretizate pot fi rezolvate la un cost proporional cu numrul de
necunoscute. Rezult c metoda gradientului conjugat trebuie s fie mai performant
dect mainile de rezolvare direct cel puin pentru unele probleme extinse.
Precondiionatorii speciali pentru sistemele singulare sau aproape singulare care duc
la optimizare au fost propui, de ex., de Hager [114].

S-ar putea să vă placă și