You are on page 1of 12

Optimisation numrique e Mthodes du gradient conjugu linaire e e e

(Chapitre 5.1)

Daniel KAUTH Universit de Fribourg e le 5 novembre 2009

Table des mati`res e


1 La mthode du gradient conjugu linaire e e e 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Quel est le probl`me ` rsoudre ? . . . . . . . . . . . . . . . . e a e 1.3 Mthode des directions conjugues . . . . . . . . . . . . . . . e e 1.4 Proprits de base de la mthode du gradient conjugu . . . . ee e e 1.5 Une forme plus pratique de la mthode du gradient conjugu e e 1.6 La vitesse de convergence . . . . . . . . . . . . . . . . . . . . 1.7 Prconditionnement . . . . . . . . . . . . . . . . . . . . . . . e 1.8 Prconditionneurs pratiques . . . . . . . . . . . . . . . . . . . e 1 1 1 2 4 6 7 9 10

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

Chapitre 1

La mthode du gradient conjugu e e linaire e


1.1 Introduction

La mthode prsente dans ce seminaire est celle du gradient conjugu. Il ne sagit non seulee e e e ment dune des techniques les plus utiles pour rsoudre de grands syst`mes linaires, mais e e e elle peut mme tre adapte de telle mani`re ` ce quelle rsoud des probl`mes doptimisation e e e e a e e non-linaires. Ces deux variantes, reposant sur la mme ide de base, sont respectivement e e e appeles mthodes du gradient conjugu linaire et non-linaire. e e e e e La mthode analyse ci dessous est celle trouve dans les annes 50 par Hestens et Stiee e e e fel, ` savoir la mthode du gradient conjugu linaire. Cette derni`re se base sur la rea e e e e cherche de directions successives permettant datteindre la solution exacte dun syst`me e linaire de matrice symtrique et dnie positive et reprsente une alternative ` lalgorithme e e e e a dlimination de Gauss. Elle est mme souvent prfre ` cette derni`re lorsque les syst`mes e e eee a e e dquations sont grands. Dans la suite, nous allons rencontrer leet damlioration provoqu e e e par le prconditionnement du syst`me linaire ainsi quun grand nombre dautres proprits e e e ee intressantes de cette mthode. e e

1.2

Quel est le probl`me ` rsoudre ? e a e

La mthode du gradient conjugu linaire est une mthode qui rsoud deux probl`mes quivalents e e e e e e e possdant la mme solution unique. Ces probl`mes sont le syst`me dquations linaires e e e e e e Ax = b et le probl`me de minimisation suivant : e 1 (x) = xT Ax bT x. 2 Dans ces deux probl`mes, A est une matrice n n, symtrique et dnie positive. Pour la e e e bonne comprhension de la suite de ce seminaire, notons encore que le gradient de est gal e e au rsidu du syst`me linaire : e e e (x) = Ax b := r(x). 1

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE

1.3

Mthode des directions conjugues e e

Une des multiples proprits intressantes de la mthode du gradient conjugu est la cration ee e e e e conomique dune suite de vecteurs (pk )kN de n vecteurs A-conjugus, avec A une matrice e e symtrique dnie positive. Lensemble de ces vecteurs non-nuls de Rn {p0 ,p2 ,...,pn1 } est dit e e A-conjugu si e pT Apj = 0, pour tout i = j i et forme une base de Rn . Grce ` lA-conjugaison des vecteurs de direction {p0 ,p2 ,...,pn1 }, a a il est possible de minimiser (.) en seulement n pas, en minimisant (.) successivement selon les n directions. Soient x0 Rn un point de dpart quelconque et x Rn la solution exacte e dun probl`me comme prsent au point (1.1) . Dnissons la suite e e e e xk+1 = xk + k pk o` k est le scalaire minimisant (.) selon la direction xk + pk et qui est dni par u e k = rk T pk pk T Apk (1.3.2) (1.3.1)

Theor`me 1. x0 Rn , la suite {xk }, dnie par lalgorithme des directions conjugues e e e (dni par (1.3.1) et (1.3.2)), converge en au maximum n pas vers x . e Dmonstration. e pT A(x x ) Sachant que p0 , ..., pn1 engendrent Rn , dnissons k = k pT Ap 0 t.q. e k k x x0 = 0 p0 + 1 p1 + ... + n1 pn1 . Selon lalgorithme (1.3.1), nous avons que xk = x0 + 0 p0 + 1 p1 + ... + k1 pk1 . En multipliant cette expression par pT A, on voit que pT A(xk x0 ) = 0 et donc que k k pT A(x x0 ) = pT A(x xk ) = pT (b Axk ) = pT rk . k k k k Ainsi, nalement k = k , ce qui dmontre le thor`me. e e e Il est intressant de remarquer que si notre matrice A est diagonale, alors les contours de la e fonction (.) forment une ellipse dont les axes sont aligns aux directions coordonnes. Dans e e ce cas, une mani`re facile et lgante ` minimiser (.) est de trouver la solution en minimisant e ee a (.) par des minimiseurs, dune seule dimension chacun, selon les directions coordonnes. Bien e sr, on ne peut pas toujours avoir de la chance : souvent la matrice A nest pas diagonale. u Dans ce cas, les contours de (.) restent une ellipse. Mais une ellipse, dont les axes ne sont en gnral plus aligns aux directions coordonnes ei . Ainsi, la solution de Ax = b ne peut plus e e e e tre trouve en n itrations et parfois mme pas en un nombre ni ditrations. Pour proter e e e e e quand-mme du joli comportement dcrit ci-dessus, nous allons transformer la matrice A de e e telle mani`re ` ce quelle soit diagonale. Cette transformation est ralise par introduction de e a e e la variable x qui est dnie par e x = S 1 x avec S la matrice qui a comme colonnes les vecteurs A-conjugus p0 , ..., pn1 c.`.d. S := e a p0 p1 ... pn1 .

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE

x x Nous dnissons donc () := (S x) = 1 xT (S T AS) (S T b)T x. Ici, on peut facilement e 2 voir qu` cause des vecteurs colonnes A-conjugus, la matrice S T AS est eectivement diaa e gonale. A partir de ce point, nous utilisons la mme procdure quavant : nous cherchons e e par des minimiseurs, dune seule dimension chacun, selon les une solution en minimisant (.) directions coordonnes ei . Mais cette fois-ci on minimise x, au lieu de x. Chaque direction e coordonne dans l-espace correspond ` une direction pi dans lx-espace. Nous pouvons donc e x a constater, grce au Thor`me 1, que mme dans ce deuxi`me cas, on aboutit ` une solution a e e e e a apr`s au plus n pas de lalgorithme. e Remarquons encore un cas particulier intressant : lorsque notre matrice A est diagonale et e que la matrice de Hess est diagonale aussi, alors les minimiseurs ` une dimension, vus lors de a la straggie vue pour une matrice diagonale ci-dessus, dterminent chacun une composante e e de la solution. Par consquent, apr`s k minimiseurs ` une dimension, on a minimis sur e e a e un sous-espace de dimension k, par exemple span{e1 , ..., ek } avec ei un lment de la base ee canonique. Avant de passer au Thor`me 2, notons encore que e e rk+1 = rk + k Apk . Theor`me 2. Soit x0 Rn un point de dpart quelconque et soit la suite {xk } gnre par e e e e e lalgorithme des directions conjugues. e Alors T rk pi = 0 pour i = 0, ... ,k-1 (1.3.3) et xk est le minimiseur de (x) sur lensemble {x | x = x0 + span{p0 , ..., pk1 }} (1.3.4)

Dmonstration. e Nous montrons dabord quun point x minimise sur lensemble (1.3.4) si et seulement si r()T pi = 0, pour tout i = 0, 1, ..., k 1. Dnissons h() = (x0 + 0 p0 + ... + k1 pk1 ), o` x e u T . Comme h() est une fonction quadratique strictement convexe, elle a = (0 , 1 , ..., k1 ) un unique minimiseur, qui satisfait h( ) =0 i Par la r`gle de la cha e ne, ceci implique que
(x0 + 0 p0 + ... + k1 pk1 )T pi = 0 = r(xk )T pi

i = 0, 1, ..., k 1.

(1.3.5)

i = 0, 1, ..., k 1.

Ce qui nous donne le rsultat. e Ensuite, nous montrons par rcurrence que xk satisfait (1.3.3). e T p = 0, por le choix de dans (1.3.2). Ancrage : pour k = 1, on a r1 0 0 T Hypoth`se de rcurrence : rk1 pi = 0 pour i = 0, 1, ..., k-2. e e Par rk = rk1 + k1 Apk1 nous obtenons pT rk = pT rk1 + k1 pT Apk1 = 0 k1 k1 k1 Pour les autres vecteurs pi , i = 0, 1, ..., k 2, nous avons pT rk = pT rk1 + k1 pT Apk1 = 0 i i i

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE

T par lhypoth`se de rcurrence et la conjugaison de pi . Nous concluons que rk pi = 0, pour e e i = 0, 1, ..., k 1.

Le Thor`me 2 nous dit donc que le rsidu rk est orthogonal ` toutes les directions de e e e a recherche prcdentes p0 , p1 , ..., pk1 . e e Dailleurs, il y a plusieurs mthodes pour choisir les directions de recherche. On pourrait e par exemple utiliser les valeurs propres de la matrice A ou encore modier lorthogonalisation de Gram-Schmidt ` ce que cette procdure produit un ensemble de vecteurs ` directions a e a conjugus. e

1.4

Proprits de base de la mthode du gradient conjugu e e e e

La mthode du gradient conjugu est une mthode de directions conjugues qui poss`de la e e e e e proprit particuli`re de nutiliser que le vecteur pk1 et le rsidu rk pour gnrer le vecteur ee e e e e pk de lensemble des vecteurs A-conjugus. On a donc ` faire avec un algorithme tr`s bon e a e march en termes dutilisation de la mmoire. e e Dans la mthode du gradient conjugu, les directions pk sont choisies telles quelles sont e e des combinaisons linaires entre la direction de la plus grande pente (xk ) = rk et la e direction de pk1 : pk = rk + k pk1 o` k est choisi tel que lA-conjugaison entre pk et pk1 soit vrie. Apr`s multiplication par u e e e pT A, on obtient k1 rT Apk1 . k = Tk pk1 Apk1 On choisit la direction de la plus grande pente au point initial x0 comme la premi`re direction e de recherche, p0 . Voici une premi`re version dun algorithme pour la mthode du grandient e e conjugu : e Algorithme 3. Gradient Conjugu- premi`re version e e x0 soit x ; e Posons r0 Ax0 b, p0 r0 , k 0; while rk = 0 r T pk k Tk ; pk Apk xk+1 xk + k pk ; rk+1 Axk+1 b; k+1
T rk+1 Apk

pT Apk k

pk+1 rk+1 + k+1 pk ; k k + 1; end(while)

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE

Passons maintenant au Thor`me 4, qui nous dit que les directions p0 , ..., pn1 sont eece e tivement A-conjugues. Dautant plus, il nous dit que les rsidus ri sont deux ` deux orthoe e a gonaux et que chaque pk et chaque rsidu rk sont contenus dans le sous-espace de Krylov de e degr k pour r0 , dni par e e K(r0 ; k) := span{r0 , Ar0 , ..., Ak r0 }. Theor`me 4. Supposons que le k-i`me itr, gnr par la mthode du gradient conjugu, e e e e e e e e e nest pas le point x . Alors les quatre proprits suivantes sont vraies : ee
T rk ri = 0,

pour i=0, ..., k-1

span{p0 , p1 , ..., pk } = span{r0 , Ar0 , ..., Ak r0 }, pT Api = 0, k pour i = 0, 1, ..., k-1. Voil` pourquoi la squence {xk } converge vers x en au plus n pas. a e Dmonstration. Nous allons dmontrer les 3 derni`res proprits par rcurrence. Ce qui e e e ee e concerne lancrage, les proprits 2 et 3 sont trivialement vraies pour k = 0 et par construcee tion, la proprit 4 est vraie pour k = 1. Supposons que ces proprits soient vraies pour k et ee ee montrons quelles restent vraies pour k + 1. Par ces hypoth`ses, on a que e rk span{r0 , Ar0 , ..., Ak r0 } et pk span{r0 , Ar0 , ..., Ak r0 }

span{r0 , r1 , ..., rk } = span{r0 , Ar0 , ..., Ak r0 },

En multipliant cette deuxi`me expression par A et en se rappelant que rk+1 = rk + k Apk , e on voit facilement que rk+1 span{r0 , Ar0 , ..., Ak+1 r0 }. Grce ` cette constatation et au moyen de lhypoth`se de rcurrence de la deuxi`me proprit, a a e e e ee nous avons que span{r0 , r1 , ..., rk+1 } span{r0 , Ar0 , ..., Ak+1 r0 }. Par lhypoth`se de rcurrence pour la troisi`me proprit, on peut dduire que e e e ee e Ak+1 r0 = A(Ak r0 ) span{Ap0 , Ap1 , ..., Apk } Comme rk+1 = rk + k Apk , il en suit que Api =
(ri+1 ri ) i

et donc

Ak+1 r0 span{r0 , r1 , ..., rk+1 } Ensemble avec lhypoth`se de rcurrence de la deuxi`me proprit, on trouve que e e e ee span{r0 , Ar0 , ..., Ak+1 r0 } span{r0 , r1 , ..., rk , rk+1 } et donc la deuxi`me proprit est dmontre. Montrons encore que la troisi`me proprit reste e ee e e e ee vraie pour k + 1 : span{p0 , p1 , ..., pk , pk+1 } = span{p0 , p1 , ..., pk , rk+1 }, par lavant-derni`re ligne de lalgorithme e

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE = span{r0 , Ar0 , ..., Ak r0 , rk+1 }, = span{r0 , r1 , ..., rk , rk+1 },

par lhypoth`se de rcurrence de la troisi`me proprit e e e ee par la deuxi`me proprit quon vient de dmontrer e ee e par la deuxi`me proprit pour k + 1 e ee

= span{r0 , Ar0 , ..., Ak+1 r0 },

Passons ` la quatri`me proprit ` dmontrer. a e eea e Nous multiplions lavant derni`re ligne de lalgorithme avec Api , i = 0, 1, ..., k pour obtenir e
T pT Api = rk+1 Api + k+1 pT Api k+1 k

(1.4.1)

Par la quatri`me ligne de lalgorithme, nous avons que si i = k, alors pT Api = 0. e k+1 Lhypoth`se de rcurrence de la quatri`me proprit a dmontrer nous dit que p0 , ..., pk sont e e e ee` e A-conjugus et elle nous permet ainsi dutiliser le Thor`me 2. Il en suit que e e e
T rk+1 pi = 0,

pour i = 0, 1, ..., k

Ensuite, apr`s plusieurs applications de la troisi`me proprit, on trouve pour k = 0, ..., k 1 e e ee que Api A span{r0 , Ar0 , ..., Ai r0 } = span{Ar0 , A2 r0 , ..., Ai+1 r0 } span{p0 , ..., pi+1 }
T Des deux derni`res expressions trouves, nous concluons que rk+1 Api = 0, e e pour i = 0, 1, ..., k 1 Le terme de droite de (1.4.1) dispara donc pour i = 0, ..., k-1. Finalement, par le t Thor`me 2 et par rarrangement de lavant derni`re ligne de lalgorithme, nous trouvons que e e e e

pi = ri + i pi1 , tel que ri span{pi , pi1 } pour tout i = 1, ..., k 1. On conclut que la premi`re armation e du Thor`me 4 est vrie. e e e e A ce point, il est intressant de remarquer que le nom mthode du gradient conjugu e e e est mal choisi, car les gradients ri ne sont quorthogonaux alors que ce sont les directions de recherche pk qui sont A-conjugus. Un meilleur nom pour cette mthode serait donc mthode e e e des directions de recherche conjugues. e

1.5

Une forme plus pratique de la mthode du gradient conjugu e e

Dans le but de trouver un algorithme plus conomique, nous utilisons les rsultats des e e Thor`mes 2 et 4, an darriver ` une nouvelle formule pour k : e e a k = Grce ` ceci, il nous est possible dcrire a a e k+1 =
T rk+1 rk+1 T rk rk T rk rk . pT Apk k

De ce qui prc`de, on trouve un deuxi`me algoritme pour la mthode du gradient conjugu : e e e e e

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE Algorithme 5. Gradient Conjugu e x0 soit x ; e Posons r0 Ax0 b, p0 r0 , k 0; while rk = 0 k

T rk rk ; pT Apk k

xk+1 xk + k pk ; rk+1 rk + k Apk ; k+1


T rk+1 rk+1 T rk rk

pk+1 rk+1 + k+1 pk ; k k + 1; end(while) Une proprit qui rend la mthode du gradient conjugu particuli`rement intressante est ee e e e e que dans aucune tape de cet algorithme, nous avons besoin de conna les vecteurs x,r et e tre p pour plus que les deux derni`res itrations, les autres ne sont pas stocks. e e e

1.6

La vitesse de convergence

Grce ` la troisi`me proprit du Thor`me 4 et au deuxi`me pas de lAlgorithme 5, nous a a e ee e e e avons que xk+1 = x0 + 0 p0 + ... + k pk = x0 + 0 r0 + 1 Ar0 + ... + k Ak r0 .
Dnissons maintenant Pk comme tant un polynme de degr k avec les coecients 0 , 1 , ..., k . e e o e Remplaons notre polynme dans lexpression ci-dessus : c o xk+1 = x0 + Pk (A)r0

Nous allons voir maintenant que parmi toutes les mthodes possibles dont les k premiers pas e sont restreints sur le sous-espace de Krylov K(r0 ; k), lAlgorithme 5 donne le meilleur rsultat e en termes de minimisation de la distance vers la solution, si cette distance est mesure par e || . ||A , dni comme e || z ||2 = z T Az A Dapr`s cette dnition, on constate que e e 1 1 || x x ||2 = (x x )T A(x x ) = (x) (x ). A 2 2 Par consquent le Thor`me 2 nous dit que xk+1 minimise || x x ||2 sur lensemble x0 + e e e A span{p0 , ..., pk }. Comme xk+1 = x0 + Pk (A)r0 , il en suit que Pk est la solution de min || x0 + Pk (A)r0 x ||A
Pk

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE De plus, nous avons que


xk+1 x = x0 + Pk (A)r0 x = [I + Pk (A)A](x0 x ).

Soient 0 < 1 2 ... n les valeurs propres de A et v1 , ..., vn les vecteurs propres orthonorms correspondants. Nous savons bien que ces vecteurs propres engendrent Rn , donc e
n

x0 x =

i vi
i=1

et il est aussi facile ` voir que les vecteurs propres de A sont aussi des vecteurs propres de a Pk (A) pour tout polynme. Nous pouvons donc crire que Pk (A)vi = Pk (i )vi , i = 1, 2, ..., n o e et donc
n

xk+1 x =

[1 + i Pk (i )]i vi i=1

La norme dnie ci-dessus nous permet de dire que e


n

|| xk+1 x
2

||2 = A
n

min
Pk i=1

2 i [1 + i Pk (i )]2 i

min max [1 + i Pk (i )] (
Pk 1in

j=1

2 j j ) = min max [1 + i Pk (i )]2 || xo x ||2 , A Pk 1in

2 sachant que || xo x ||2 = n j j . Cette derni`re expression nous permet de quantier e j=1 A le taux de convergence de la mthode du gradient conjugu. e e

Theor`me 6. Si A a seulement r (avec r < n) valeurs propres distinctes, alors lalgorithme e du gradient conjugu arrive a la solution en au plus r itrations. e ` e Dmonstration. Soient 1 < ... < r les valeurs distinctes des valeurs propres 1 , ..., n . e Dnissons maintenant Qr () par e Qr () = (1)r ( 1 )...( r ). 1 2 ...r

Il est facile ` voir que Qr ()1 est un polynme de degr r avec une racine = 0. Dnissons a o e e

ensuite P r1 , un polynme de degr r 1 par o e P r1 () = (Qr () 1)/ En posant k = r 1 dans min max [1 + i Pk (i )]2 , nous obtenons
Pk 1in

0 min max [1 + i Pr1 (i )]2 max [1 + i Pr1 (i )]2 = max Qr (i ) = 0


Pr1 1in 1in 1in

Donc, pour k = r 1 on trouve que || xr x ||A = 0 et alors xr = x .

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE Theor`me 7. Si A a des valeurs propres 1 2 ... n , nous avons que e || xk+1 x ||2 ( A nk 1 2 ) || x0 x ||2 A nk + 1

Nous nallons pas nous occuper de cette preuve. On donne juste une ide au lecteur, e comment ce rsultat a t trouv. On choisit un polynme P k de degr k tel que le polynme e ee e o e o

Qk+1 () = 1 + P k () a comme racines les plus grandes valeurs propres n , n1,...,nk+1 et le point milieu entre 1 et nk . On peut montrer que la valeur maximale atteinte par Qk+1 sur 1 , ..., nk+1 est (nk 1 )/(nk + 1 ). Le Thor`me 7 nous permet de prdire le comportement de la mthode du gradient e e e e conjugu. Supposons par exemple que les valeurs propres de A consistent en m grandes valeurs e propres et les n m valeurs propres restantes sont situes autour de 1. Si nous dnissons e e = nm 1 , le Thor`me 7 nous dit quapr`s m+1 pas de la mthode du gradient conjugu, e e e e e nous avons que || xm+1 x ||A || x0 x ||A . Pour une petite valeur de apr`s m + 1 pas, la mthode va nous donner une bonne approxie e mation de la solution. Mais attention, le Thor`me 7 nous donne une borne suprieure. Il se e e e peut que la mthode nous donne dj` des bons rsultats apr`s les premi`res itrations. Il est e ea e e e e gnralement vrai que si les valeurs propres apparaissent en r groupes, alors la mthode du e e e gradient conjugu rsoud approximativement le probl`me apr`s r pas. e e e e Une autre expression de convergence pour la mthode du gradient conjugu est celle base e e e sur le nombre de condition spectral. Celui-ci est dni par e K =|| A ||2 || A1 ||2 = On arrive ensuite ` montrer que a || xk x ||A

n . 1

K 1 K +1

2k

|| x0 x ||A .

Cette expression est plus approximative que celle du Thor`me 7 et donne souvent dimpore e tantes surestimations de lerreur. Mais en ralit, souvent, on na pas beaucoup dinformae e tions sur A et ses valeurs propres. Cette derni`re mthode ne demande que les valeurs propres e e extrmes ou des approximations de celles-ci. e

1.7

Prconditionnement e

Pour acclrer la mthode du gradient conjugu, on peut transformer le syst`me linaire de ee e e e e telle faon ` ce que les valeurs propres de la matrice A soient mieux distribus. Le processus c a e prsent par la suite est appel le prconditionnement. Il sagit de changer la variable x en e e e e une variable x au moyen dune matrice C non-siguli`re : x = Cx. Par consquent, est e e transforme en e 1 x () = xT (C T AC 1 ) (C T b)T x x (1.7.1) 2

CHAPITRE 1. LA METHODE DU GRADIENT CONJUGUE LINEAIRE x En utilisant lAlgorithme 5 pour minimiser () ou bien pour rsoudre le syst`me linaire e e e (C T AC 1 ) = C T b, x

10

le taux de convergence dpend des valeurs propres de la matrice C T AC 1 et non de celles e de la matrice A. On pourrait donc par exemple choisir C de telle mani`re que le nombre de e T AC 1 soit plus petit que le nombre de condition de A. Une autre ide serait condition de C e de choisir C tel que les valeurs propres de C T AC 1 sont regroupes en un petit nombre r de e groupes. Ainsi on trouve une bonne approximation apr`s seulement r itrations. LAlgorithme e e 8 ci-dessous nous nest rien dautre quune application de lAlgorithme 5 au probl`me (1.7.1) e par rapport ` x. Ensuite, il transforme toutes les quations pour les exprimer par rapport a e a ` x. On remarque que lAlgorithme 8 nutilise pas explicitement C, mais plutt la matrice o M = C T C, qui est symtrique et dnie positive par construction. e e Algorithme 8. Gradient Conjugu Prconditionn e e e x0 soit x et M le prconditionneur de Ai ; e e Posons r0 Ax0 b ; Rsoudre M y0 = r0 par rapport a y0 ; Posons p0 r0 , k 0; e ` while rk = 0 r T yk k Tk ; pk Apk xk+1 xk + k pk ; rk+1 rk + k Apk ; M yk+1 rk+1 k+1
T rk rk T rk+1 yk+1

pk+1 yk+1 + k+1 pk ; k k + 1; end(while) Si dans lAlgorithme 8, nous remplaons M par I, on retombe sur lAlgorithme 5. Les c proprits de lAlgorithme 5 se gnralisent de faon intressante. Par exemple la premi`re ee e e c e e T armation du Thor`me 4, ` savoir rk ri = 0, e e a pour i = 0, ..., k 1 devient
T ri M 1 rj = 0,

pour tout i = j .

Du point de vue de lordinateur, la grande dirence entre lAlgorithme 8 et lAlgorithme 5 e est quil faut encore rsoudre des syst`mes de la forme M y = r. e e

1.8

Prconditionneurs pratiques e

Comme si souvent en numrique, il nexiste pas une meilleure stratgie de prconditionnement e e e valable pour tout type de matrices. Des prconditionneurs gnraux ont bien t proposs, e e e ee e mais leur ecacit varie fortement dun probl`me ` lautre. Les stratgies les plus importantes e e a e de ce genre sont la SSOR (symmetric successive overrelaxation), la mthode de Cholesky e incompl`te et les prconditionneurs par bande. e e

You might also like