Vous êtes sur la page 1sur 45

Méthodes itératives pour la solution d’un

système linéaire

Stéphane Canu et Gilles Gasso


{stephane.canu, gilles.gasso}@litislab.eu

ASI 3 - Calcul numérique pour l’ingénieur

November 19, 2016


Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 2 / 42
Exemple introductif
On cherche à résoudre le système suivant :

 2x1 +4x2 −2x3 −6x4 = −6
1x1 +3x2 −6x4 =0
 3x1 −x2 +x3 −6x4 =8
−x2 +2x3 −6x4 =6

Si nous connaissons un vecteur x ∗ 1 , x ∗ 2 , x ∗ 3 , x ∗ 4 "proche" de la solution, on peut


calculer une nouvelle approximation de la solution
 −6 − 4x ∗ 2 + 2x ∗ 3 + 6x ∗ 4
 x1 =
 2
0 − 1x ∗ 1 − 0x ∗ 3 + 6x ∗ 4


 x2 =
3
8 − 4x ∗ 1 + x ∗ 2 + 6x ∗ 4
 x3 =
 1
6 − 4x ∗ 1 + x ∗ 2 − 2x ∗ 3


x4 =

−6

et ainsi de suite jusqu’à convergence.

La politique des « petits » pas...


on cherche à créer une suite de vecteurs {x (k) , k ∈ IN} qui converge vers xe
solution de Ae
x =b
Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 4 / 42
Trois méthodes itératives
x = b avec A ∈ Rn×n , xe, b ∈ Rn
Système à résoudre : Ae
Trois méthodes itératives
(k)
Jacobi : {xJ , k ∈ IN}
(k)
Gauss Seidel {xGS , k ∈ IN}
(k)
Relaxation {xR , k ∈ IN}
A chaque itération ... le vecteur d’erreurs : e (k) = x (k) − xe doit diminuer

comment choisir ?
il existe plein d’autres méthodes...
la question centrale : quand convergent-elles ?
question corollaire : à quelle vitesse convergent-elles ?

parmi celles qui convergent on prend celle qui converge le plus vite !

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 5 / 42
La méthode de Jacobi
i−1
X n
X
Ax = b ⇐⇒ Aij xj + Aii xi + Aij xj = bi ∀ i = 1, n
j=1 j=i+1

Fonction x ← Jacobi(A, b, x)
Tant que (on a pas convergé) faire
Pour i = 1, n faire
bi − i−1
P Pn
j=1 Aij xj − j=i+1 Aij xj
yi =
Aii
Fin Pour
Pour i = 1, n faire
xi = yi
Fin Pour
Fait

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 6 / 42
Exemple : méthode de Jacobi
     
3 1 −1 1 0
(0)
A= 1 2 0  avec b = 1 et x = 0
−1 1 4 1 0
Itération 1
b1 −A12 ∗x(2)−A13 ∗x(3) 1−0+0 1
y1 = A11 = 3 = 3 !
1/3
b2 −A21 ∗x(1)−A23 ∗x(3) 1−0−0 1 (1)
y2 = A22 = 2 = 2 →x = 1/2
b3 −A31 ∗x(1)−A32 ∗x(2)
1/4
1+0−0 1
y3 = A33 = 4 = 4

Itération 2

b1 −A12 ∗x(2)−A13 ∗x(3) 1−1/2+1/4 3


y1 = A11 = 3 = 12 !
3/12
b2 −A21 ∗x(1)−A23 ∗x(3) 1−1/3−0 1
y2 = A22 = 2 = 3 → x(2) = 1/3
b3 −A31 ∗x(1)−A32 ∗x(2) 1+1/3−1/2
5/24
5
y3 = A33 = 4 = 24

norm(A ∗ x0 − b) = 1.7321
 
0.2500 0.2941
norm(A ∗ x1 − b) = 0.4488
 
x2 A\b = 0.3333 0.3529
norm(A ∗ x2 − b) = 0.1718 0.2083 0.2353
Les itérations de Gauss Seidel

Fonction x ← Gauss_Seidel(A, b, x)

Tant que (on a pas convergé) faire


Pour i = 1, n faire
bi − i−1
P Pn
j=1 Aij xj − j=i+1 Aij xj
xi = ;
Aii
Fin Pour
Fait

plus « simple », mais non parallélisable

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 8 / 42
Exemple : méthode de Gauss-Seidel
     
3 1 −1 1 0
(0)
A= 1 2 0  avec b = 1 et x = 0
−1 1 4 1 0
Itération 1
b1 −A12 ∗x(2)−A13 ∗x(3) 1−0+0 1
x1 = A11 = 3 = 3 !
1/3
b2 −A21 ∗x(1)−A23 ∗x(3) 1−1/3−0 1 (1)
x2 = A22 = 2 = 3 →x = 1/3
b3 −A31 ∗x(1)−A32 ∗x(2) 1+1/3−1/3
1/4
1
x3 = A33 = 4 = 4

Itération 2

b1 −A12 ∗x(2)−A13 ∗x(3) 1−1/3+1/4 11


x1 = A11 = 3 = 36 !
11/36
b2 −A21 ∗x(1)−A23 ∗x(3) 1−11/36−0 25
x2 = A22 = 2 = 72 → x(2) = 25/72
b3 −A31 ∗x(1)−A32 ∗x(2) 1+11/36−25/72
69/288
69
x3 = A33 = 4 = 288

norm(A ∗ x0 − b) = 1.7321
 
0.3056 0.2941
norm(A ∗ x1 − b) = 0.0833
 
x2 A\b = 0.3472 0.3529
norm(A ∗ x2 − b) = 0.0852 0.2212 0.2353
Les itérations de relaxation

Fonction x ← Relaxation(A, b, x, ω)

Tant que (on a pas convergé) faire


Pour i = 1, n faire
bi − i−1
P Pn !
j=1 Aij xj − j=i+1 Aij xj
xi = ω + (1 − ω)xi
Aii
Fin Pour
Fait

pour ω = 1 c’est Gauss Seidel

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 10 / 42
Quand s’arrêter ?
kxnew − xold k < ε
un nombre maximal d’itérations est atteint

Fonction y ← Gauss_Seidel(A, b, x, ε, n_ite_max)


Pour i = 1, n faire
yi = xi xi = yi + 2 ∗ ε
Fin Pour
n_ite = 0
Tant que (kx−yk > ε ET n_ite < n_ite_max) faire
Pour i = 1, n faire x = xold
xi = yi
Fin Pour y = xnew
Pour i = 1, n faire
bi − i−1
P Pn
j=1 Aij yj − j=i+1 Aij xj
yi =
Aii
Fin Pour
n_ite = n_ite + 1
Fait

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 11 / 42
Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 12 / 42
Formulation matricielle des itérations
Soit {x (k) ∈ Rn , k ∈ IN} la suite de vecteurs générés par une des 3
méthodes itératives.
On veut établir que chaque itération k correspond à la relation
matricielle
Mx(k+1) = Nx(k) + b
où M et N sont des matrices carrées de taille n et b un vecteur de Rn
On peut réécrire cette relation matricielle sous la forrme :

x(k+1) = M −1 N x(k) + M −1 b
= C x(k) + d

Chaque méthode itérative (Jacobi, Gauss-Seidel ou relaxation) admet


sa matrice C = M −1 N et son vecteur d = M −1 b
La convergence des méthodes itératives dépend de la matrice C
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 13 / 42
Décomposition d’une matrice

Revenons au système Ax = b. Nous pouvons décomposer la matrice A

 A  =  D  +  U  +  L 
a11 a12 a13 a11 0 0 0 a12 a13 0 0 0
a21 a22 a23  =  0 a22 0  + 0 0 a23  + a21 0 0
a31 a32 a33 0 0 a33 0 0 0 a31 a32 0
diagonale triangulaire sup triangulaire inf

 Ax  =  Dx  +  (L + U)x 
a11 x1 + a12 x2 + a13 x3 a11 x1 +0 +0 0 +a12 x2 +a13 x3
a21 x1 + a22 x2 + a23 x3  =  0 +a22 x2 +0  + a21 x1 +0 +a23 x3 
a31 x1 + a32 x2 + a33 x3 0 +0 +a33 x3 a31 x1 +a32 x2 +0

Ax = Dx + Lx + Ux

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 14 / 42
Décomposition d’une matrice

Revenons au système Ax = b. Nous pouvons décomposer la matrice A

De manière générale : A = D + L + U avec :


D = diag (a11 , a22 , ..., ann )
0 0 ... ... 0
 
a21 0 ... ... 0
L = a31 a32 ... ... 0
 
 ... 0 0
an1 an2 ... an,n−1 0
0 a12 a13 ... a1n
 
0 0 ... ... a2n 
0 ... ...
 
U=

... a a

 n−2,n−1 n−2,n 
... 0 an−1,n 
0 0 ... 0 0

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 15 / 42
Les itérations de Jacobi : forme matricielle

Le point fixe
Ax =b
(D + L + U)x =b
Dx + (L + U)x =b
Dx = −(L + U)x + b

Les itérations de Jacobi


Dx(k+1) = −(U + L)x(k) + b

x(k+1) = −D −1 (U + L) x(k) + |D{z


−1
b}
| {z }
CJ dJ

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 16 / 42
Les itérations de Jacobi s’écrivent alors

Fonction x ← Jacobi(A, b, x)

Tant que (on a pas convergé) faire


Pour i = 1, n faire
i−1
X n
X Fonction x ← Jacobi(A, b, x)
bi − Aij xj − Aij xj
j=1 j=i+1 Tant que (on a pas convergé)
 faire
yi =
Aii x = D\ b − (L + U)x
Fin Pour Fait
Pour i = 1, n faire
xi = yi
Fin Pour
Fait

x(k+1) = CJ x(k) + dJ
|{z} |{z}
−D −1 (U+L) D −1 b=D\b

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 17 / 42
Gauss Seidel et la relaxation
les itérations de Gauss Seidel s’écrivent

(D + L)x(k+1) = −Ux(k) + b
x(k+1) = (D + L)−1 (−U) x(k) + (D + L)−1 b
| {z } | {z }
CGS dGS

et les itérations de relaxation s’écrivent

(D + ωL)x(k+1) = (1 − ω)D − ωU x(k) + ωb 




x(k+1) = ((D + ωL))−1 (1 − ω)D − ωU x(k) +


| {z }
Cr
((D + ωL))−1 (ωb)
| {z }
dr

Pour w = 1, on retrouve bien l’équivalence des formulations des méthodes


de Gauss Seidel et de la relaxation

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 18 / 42
Condition suffisante de convergence
x(k+1) = C x(k) + d
Si xe est solution du problème, on a xe = C xe + d et donc
x(k+1) − xe = C (x(k) − xe)
= C 2 (x(k−1) − xe)
...
= C k+1 (x(0) − xe)
Si maintenant on raisonne en norme :
erreur à l’étape k+1
z }| {
kx(k+1) − xek = kC k+1 (x(0) − xe)k
≤ kC k+1 kkx(0) − xek ≤ kC kk+1 kx(0) − xek
| {z } | {z }
→0 ? erreur initiale

ce faisant, nous avons démontré le résultat suivant :


Theorem (convergence d’une suite vectorielle)
S’il existe une norme matricielle telle que kC k < 1 alors la suite x(k)
converge vers xe = (I − C )−1 d
Normes matricielles d’opérateur
C’est une norme construite à partir d’une norme vectorielle et définie par :
kC xk
kC k = sup
x6=0 kxk

Par construction on a bien :

kABxk ≤ kAkkBxk ≤ kAkkBkkxk ⇒ kABk ≤ kAkkBk

Exemples (théorèmes) :
X
kC k1 = max |Cij |
j
i
X
kC k∞ = max |Cij |
i
j
kC k2 =

I max µi où µi est valeur propre de C >C .
i √
I pour C symétrique : max |λi | λi = µi est val. propre de C .
i
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 20 / 42
démonstrations : de manière générale nous allons montrer les deux inégalités
suivantes
φ(C ) ≤ kC k ≤ φ(C )
Cas de la norme kC k1 : on commence par trouver une borne sur cette norme :

kC xk
kC k1 = sup
x6=0 kxk
P P
i j Cij xj

= sup
x6=0 P Pkxk
i j |Cij ||xj |
≤ sup
x6=0 kxk
X X  |xj |
≤ sup |Cij |
x6=0 j i
kxk
X X  |xj |
≤ sup max |Cij |
x6=0 j j
i
kxk
X  X |xj |
≤ sup max |Cij |
x6=0 j kxk
X i j
|xj |
≤ max |Cij | car kxk
≤1
j
i

en choisissant le vecteur ej = (0, . . . , 0, 1, 0, . . . , 0)> , on atteint la borne


Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 21 / 42
Le cas de la norme 2
on passe par le système des vecteurs propres : C > C vi = µi vi
X X
x= ξi vi ⇔ x = Pξ ; kxk2 = ξ > P > Pξ = ξi2
i i
kC xk2
kC k22 = sup 2
x6=0 kxk
x> C > C x
= sup
x6=0 kxk2
x> C > C
P 
i ξi vi
= sup
x6=0 kxk2 
x>
P
i ξi µi vi
= sup
x6=0 P kxk2
ξ 2 µi
= sup i i 2 ≤ max µi
x6=0 kxk i

Là encore, en choisissant le vecteur propre associé, on atteint la borne :

kC vi k2
= vi C > C vi = µi
kvi k2

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 22 / 42
Illustration 2d...
kAxk
kAk = sup = sup kAxk
x6=0 kxk kxk=1

Definition
rayon spectral

ρ(A) = max |λi |


1≤i≤n

Propriétés des normes (Op) Propriétés des normes


P
kAk > 0 si A 6= 0 kAk1 = maxj i |Aij |
P
kAk = 0 ⇔ A = 0 kAk∞ = maxi j |Aij |
kkAk = |k|kAk A sym. : kAk2 = ρ(A)
kA + Bk ≤ kAk + kBk A sym. : ρ(A) ≤ kAk
p
kABk ≤ kAkkBk kAk2 ≤ |Ak1 |Ak∞
Résumons nous (normes matricielles ?)
1 on cherche à résoudre Ax = b
2 on utilise une méthode itérative : x(k+1) = C x(k) + d
3 l’erreur... e(k) = C k e(0)
4 ... peut être contrôlée : ke(k) k ≤ kC kk ke(0) k
5 si l’on trouve une norme telle que kC k < 1 la suite converge
6 définir une norme telle que kC k k ≤ kC kk
kC xk
7 définition : kC k = supx6=0 kxk
8 théorèmes (bien pratiques...):
X
I kC k1 = max |Cij |
j
i
X
I kC k∞ = max |Cij |
i
j

I kC k2 = max µi
i
9 on teste les différentes normes pour avoir kC k < 1

A quelles conditions sur A, la méthode itérative converge ?


Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 25 / 42
Le cas des matrices à diagonale dominante
Definition
Une matrice carrée A est à diagonale dominante si
n
X
. ∀i = 1, n |Aii | > |Aij |
j=1,j6=i

Theorem
Si A est à diagonale dominante alors les méthodes de Jacobi et de Gauss
Seidel convergent

Démonstration :
1 X
Jacobi : kC k∞ = kD −1 (L + U)k∞ = max |Aij | < 1
i |Aii |
j6=i
Gauss Seidel : on montre que si Gauss P Seidel diverge,Palors A n’est pas
à diagonale dominante : 1 < maxi |Aii | i−1
1
j=1 |Aij | +
n
j=i+1 |Aij |. Les
détails de la preuve ne sont pas évidents...
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 26 / 42
Exemple : la matrice est-elle à diagonale
dominante ?

  
 2 −1 0
 0 −9 3 1 −1
3 −1 1 −1 2 −1 0  1 2 0 0
A1 = 1 −2 0 ; A2 = 
 0 −1 2 −1 ; A3 = −1
  
1 8 −5
1 1 4
0 0 −1 2 −2 1 4 6

Remarques :
toute matrice à diagonale dominante est régulière
on retrouve ce type de matrice dans les méthodes à éléments finis
(cf meca/EP)

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 27 / 42
Le cas des matrices positives

Definition (rappel)
Une matrice carrée A est définie positive si elle est symétrique et si
∀x 6= 0 ∈ IRn x> Ax > 0

Theorem
Si A est strictement symétrique définie positive alors la méthode de Gauss
Seidel converge et la méthode de la relaxation converge pour 0 < ω < 2

Démonstration : GVL page 512 théorème 10.1.2

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 28 / 42
Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 29 / 42
Étude des perturbations (ou des erreurs)
     
10 7 8 7 32 1
7 5 6 5 23  1
A=  ; b =   admet comme solution x =  
8 6 10 9  33  1
7 5 9 10 31 1

   
32, 1 9, 2
22, 9 −12, 6
b + δb = 
33, 1
 admet comme solution x + δx =  
 4, 5 
30, 9 1, 1

Pour la norme infinie :


kδb k∞ kδx k∞
= 0, 003 = 13, 6
kbk∞ kxk∞

C’est la nature de la matrice A qui est en cause :


comment mesurer cet effet ?
Étude des perturbations (ou des erreurs)
     
10 7 8 7 32 1
7 5 6 5 23  1
A=  ; b =   admet comme solution x =  
8 6 10 9  33  1
7 5 9 10 31 1

   
32, 1 9, 2
22, 9 −12, 6
b + δb = 
33, 1
 admet comme solution x + δx =  
 4, 5 
30, 9 1, 1

Pour la norme infinie :


kδb k∞ kδx k∞
= 0, 003 = 13, 6
kbk∞ kxk∞

C’est la nature de la matrice A qui est en cause :


comment mesurer cet effet ?
Conditionnement d’un système linéaire

Ax = b A(x + δx ) = b + δb

1 kAk
kbk = kAxk ≤ kAk kxk ≤ ⇒
kxk kbk
kδx k = kA δb k ≤ kA k kδb k ⇒ kδx k ≤ kA−1 k kδb k
−1 −1

kδx k kδb k
≤ kA−1 kkAk
kxk kbk

cond(A) : conditionnement de A
|λ1 |
cond(A) = kA−1 kkAk =
|λn |

cond(A) proche de 1 : stable


cond(A) grand devant 1 : instable
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 31 / 42
Illustration en 2 d
 
a11 x1 + a12 x2 = b1
Ax = b
a21 x1 + a22 x2 = b2

cond(A) proche de 1 : stable cond(A) grand devant 1 : instable

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 32 / 42
Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 33 / 42
A définie positive : les méthodes de gradient
Theorem (Formulation variationnelle)
Si A est une matrice définie positive de taille n, alors :
1 >
Ax = b ⇐⇒ minn x Ax − b> x
x∈IR 2
| {z }
J(x)

Démonstration :
1
J(x + εd) = 2 (x + εd)>A(x + εd) − b> (x + εd)
1
= 2 (x> Ax + εd>Ax + εx>Ad + ε2d> Ad) − b> x + εb> d
1
= 2 x> Ax − b> x + ε d>Ax − d> b + ε2 d> Ad
2
= J(x) + εd> (Ax − b) + ε2 d> Ad

pour x = A−1 b, J(x + εd) ≥ J(x)

Ici ε est un scalaire réel et d ∈ IRn un vecteur quelconque.


Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 34 / 42
Algorithme d’optimisation

Ax = b ⇐⇒ min 1 x>Ax − b> x


x∈IRn 2
1 >
J(x) = x Ax − b> x
2

x(k+1) = x(k) + ρd

d : direction de descente
ρ : pas de descente

J(x(k+1) ) < J(x(k) )

lim x(k) = A−1 b


k→∞

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 35 / 42
calcul du pas optimal
d connu : x(k+1) = x(k) + ρd
ρ2 >
J(x(k+1) ) = J(x(k) + ρd) = J(x(k) ) + ρd> (Ax(k) − b) + d Ad
2
∂J(x(k+1) )
= d> (Ax(k) − b) + ρd> Ad
∂ρ
∂J(x(k+1) ) d> (Ax(k) − b)
=0 ⇔ ρ=−
∂ρ d> Ad

Tant que (on n’a pas convergé) faire


d =direction_de_descente(A, b, x)
>
ρ = − d d(Ax−b)
> Ad
x = x + ρd
Fait

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 36 / 42
Illustration 2d
1 >
J(x) = x Ax − b> x
2
lignes d’iso cout : {x ∈ IR2 | J(x) = Cte }

on choisit l’opposé de la direction du gradient : d = −(Ax − b)


Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 37 / 42
Illustration 2d
1 >
J(x) = x Ax − b> x
2
lignes d’iso cout : {x ∈ IR2 | J(x) = Cte }

on choisit l’opposé de la direction du gradient : d = −(Ax − b)


Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 37 / 42
Algorithme du gradient à pas optimal

Fonction x ← gradient_pas_optimal(x, ε)

x = initialisation
d = b − Ax
Tant que (norm(d) > ε) faire
>d
ρ = dd> Ad
x = x + ρd
d = b − Ax
Fait

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 38 / 42
Autres algorithmes de gradient

Gradient conjugué : converge exactement en n itérations

à chaque itération on se rapproche de la cible...

variantes pour les matrices non définies positives...

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 39 / 42
Plan
1 Principe des méthodes itératives
Motivations
2 Les méthodes de Jacobi, de Gauss Seidel et de la relaxation
Les itérations de Jacobi
Les itérations de Gauss Seidel
Les itérations de relaxation
Critères de convergence
3 Convergence des méthodes itératives
Formulation matricielle des itérations
Condition suffisante de convergence
Normes matricielles
Théorèmes de convergence
4 Etude des perturbations : notion de conditionnement
5 Les méthodes de gradient
6 Conclusion
Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 40 / 42
Conclusion

3 méthodes itératives (Jacobi, Gauss Seidel, relaxation)

chaque itération ≤ O(n2 ) : produit matrice vecteur


I encore mieux si A est sparse (creuse)
I peut s’appliquer à des matrices par blocs

convergent à certaines conditions sur A

pour comprendre : il faut connaitre la notion de norme matricielle


I l’importance des valeurs propres

il existe des méthodes plus sophistiquées


I à chaque itération on se rapproche de la cible...

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 41 / 42
Différents types de matrices

quelconque : n lignes p colonnes . . . . . . . . QR


I petite, moyenne, grande
I pleine, creuse, par blocks
I complexe, réelle, binaire

carrée : n lignes n colonnes


I quelconque (carrée) . . . . . . . . . . . . . . . . . . . . . LU
I symétrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . LDL’
I symétriques positive . . . . . . Cholesky : LL’, GS
I diagonale dominante . . . . . . . . . . . . . . . . . Jacobi
I triangulaire . . . . . . . . . . . . . . . . tri_sup et tri_inf
I diagonale

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 42 / 42
Différents types de matrices

quelconque : n lignes p colonnes . . . . . . . . QR


I petite, moyenne, grande
I pleine, creuse, par blocks
I complexe, réelle, binaire

carrée : n lignes n colonnes


I quelconque (carrée) . . . . . . . . . . . . . . . . . . . . . LU
I symétrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . LDL’
I symétriques positive . . . . . . Cholesky : LL’, GS
I diagonale dominante . . . . . . . . . . . . . . . . . Jacobi
I triangulaire . . . . . . . . . . . . . . . . tri_sup et tri_inf
I diagonale

Canu & Gasso (INSA Rouen - ASI) iter November 19, 2016 42 / 42

Vous aimerez peut-être aussi