Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Objectifs
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
1 Le but est d'appliquer des méthodes itératives pour le calcul
du vecteur x .
2 Un des points essentiels dans l'ecacité des méthodes
envisagées concerne la taille des systèmes à résoudre comparé
aux méthodes directes (dépassement de capacité mémoire,
temps de résolution élevé...).
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Exemple : Approximation (diérences nies) d'un problème
aux limites linéaire
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Application de la méthode des diérences nies
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Résoudre ce problème revient exactement à chercher U tel que
AU = f~,
où U = u · · · uN T , f~ = f (x ) · · · f (xN ) T et
1 1
2+c h −1 0
2
1
1 ... ...
−1
A= ... ...
.
h2 −1
0 −1 2 + cN h 2
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Principe des méthodes itératives
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Rappels : Matrices carrées
Denition
Une matrice carrée est une matrice avec le même nombre des
colonnes que des lignes.
Dénition
Soit A une matrice carrée.
(a)i,j = 0 pour i 6= j.
(a)i,j = (a)j,i .
Dénition
Soient A, B ∈ IR n×n deux matrices carrées. Elle sont dites inverses
l'une de l'autre si et seulement si
AB = I et BA = I .
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
La matrice inverse d'une matrice carrée A est notée A− . 1
(A−1 )−1 = A,
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Déterminant d'une matrice carrée
Proposition
1 si une ligne de A est nulle, alors det(A) = 0
2 det(αA) = αn det(A) pour A ∈ IR n×n
3 le déterminant d'une matrice diagonale est égal au produit des
éléments sur la diagonale
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Voici quelque propriétés algèbriques du déterminant.
1 Si A ∈ IR n×n , alors
A est inversible ⇔ det(A) 6= 0.
2 Si A, B ∈ IR n×n , alors
det(AB) = det(A) det(B).
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Rappels sur les valeurs propres
Dénition
Si T est une matrice de Mn , on dénit le polynôme caractéristique
de T par :
p(λ) = dét(T − λI )
où I est la matrice identité.
Dénition
Les racines du polynôme caractéristique de T sont appelées valeurs
propres de T.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Remarque
Si λ est une valeur propre, la matrice T − λI est singulière (puisque
son déterminant est nul) et le système
(T − λI )x = 0
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Dénition
Une solution non nulle du système (T − λI )x = 0 est appelée
vecteur propre de T associé à la valeur propre λ.
Dénition
Le rayon spectral d'une matrice T est déni par :
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Dénition
une norme vectorielle est une application
k.k : IR n → IR +
telle que
1 kxk = 0 ⇔ x = 0, xk = |λ|kxk,
2 ∀x, y ∈ IR n , kx + y k ≤ kxk + ky k(inégalité triangulaire).
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Exemple
i=1
2 La norme 1 : n
X
kxk1 = |xi |
i=1
3 La norme ∞ :
kxk∞ = max |xi |
1 ≤i≤n
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
et en général, pour 1 ≤ p < ∞, on dénit la norme p par :
n
X 1
kxkp = ( |xi |p ) p .
i=1
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Normes matricielles
Dénition
Une norme matricielle est une application, qui à une matrice A
associe un nombre réel positif ou nul, telle que :
1 kAk = 0 ⇔ A = 0,
2 ∀λ ∈ Cl , ∀A ∈ IR n , kλAk = |λ|kAk,
3 ∀A, B ∈ IR n , kA + Bk ≤ kAk + kBk(inégalité triangulaire),
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Une norme matricielle et une norme vectorielle sont dites
compatibles si et seulement si :
∀A ∈ IR n×n , ∀x ∈ IR n , kAxkV ≤ kAkM kxkV .
A partir de toute norme vectorielle kkV , on peut dénir une norme
matricielle kkM compatible, dite la norme matricielle subordonnée à
la norme vectorielle par
kAxkV
kAkM = sup .
x∈IR n \0 kxkV
m
X
kAk∞ = sup |aij |.
1 ≤i≤n 1
kAxk2 »
kAk2 = sup = ρ(AT A).
x6=0 kxk2
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Notons que si la matrice A est symétrique, alors
» »
kAk2 = ρ(At A) = ρ(A2 ) = ρ(A)
car
kAxk22 hAx, Axi hx, At Axi hx, A2 xi
kAk22 = sup = = = = ρ(A2 ) = ρ(A)
x6=0 kxk2
2
hx, xi hx, xi hx, xi
Proposition
Soit k.k une norme matricielle et A une matrice inversible.Alors
ρ(A) ≤ kAk
kAk ≤ ρ(A) + ε.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Conditionnement
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Exemple
On considère le système linéaire suivant :
2x 6y 8
ß
+ =
2x + 6, 00001y = 8, 00001
dont la solution est donnée par x =1 et y = 1.
Si par contre on considère le système linéaire obtenu en
perturbant très légèrement notre système :
2x 6y 8
ß
+ =
2x 5, 99999y
+ = 8, 00002
on trouve x = 10 et y = −2 !
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Dénition
Soit k.k une norme matricielle subordonnée et A une matrice
inversible. Le nombre
Cond(A) = kAkkA−1 k
Théorème
Soit A une matrice inversible, b et δb deux éléments de IR n avec
b 6= 0IR n , et soient x et x + δx les solutions des systèmes linéaires :
Ax = b et A(x + δx) = b + δb
on a alors
kδxk kδbk
≤ Cond(A)
kxk kbk
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Soit le système
Ay = b + δb avec y = x + δx
Le but est de mesurer l'erreur relative commise sur x , i.e kδxk
kxk en
fonction des données du problème : kδbk
kbk .
A(x + δx) = b + δb
Ax + Aδx = b + δb or Ax = b
Aδx = δb
δx = A−1 δb
kδxk = kA−1 δbk ≤ kA−1 kkδbk
kδxk kδbk
≤ kA−1 k
kxk kxk
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Comme Ax = b, kbk ≤ kAkkxk, on obtient :
kδxk kδbk kδbk
≤ kAkkA−1 k = Cond(A)
kxk kbk kbk
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Théorème
Soit A et δA deux matrices de Mn (R) avec A une matrice
inversible, b un élément de IR n avec b 6= 0IR n , et soient x et x + δx
les solutions des systèmes linéaires :
Ax = b et (A + δA)(x + δx) = b
on a alors
kδxk kδAk
≤ Cond(A)
kx + δxk kAk
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Remarques
1 Cond(A) = Cond(A−1 ),
2 Cond(αA) = Cond(A)∀α ∈ IR ∗ ,
3 1 = kI k = kAA− 1
k ≤ kAkkA−1 k = Con(A),
4 La matrice identité est la matrice la mieux conditionnée :
kAA−1 k = kI k = 1.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
principe des méthodes itératives
x (k+1) = M −1 Nx (k) + M −1 b
..
.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Cette suite est représentée par la relation itérative suivante :
x (0) donnée
®
x (k+1) = Tx (k) + V
où
T = M −1 N et V = M −1 b.
Dénition
On dit qu'une méthode itérative
x (k+1) = Tx (k) + V
lim x (k) = x ∗ .
n→+∞
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Nous ne pouvons pas savoir si le vecteur estimé se dirige vers la
solution x ∗ du système si un critère de convergence n'est pas
dénie. Pour cela, le vecteur d'erreur est établie par la relation :
e (k) = x (k) − x ∗
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Etude de la convergence
e (k) = x (k) − x ∗
donc
e (k) = Te (k−1)
car
e (k) = x (k) − x ∗ = Tx (k−1) + V − Tx ∗ − V = T (x (k−1) − x ∗ )
Dénition
Une matrice T est dite convergente si :
lim T n = 0
n→∞
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Théorème
Les quatres assertions suivantes sont équivalentes :
lim T k x = 0
n→∞
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
preuve
1⇒ 2 Cette implication est immédiate puisque pour une
norme matricielle subordonnée k.k :
∀x ∈ IR n , kT k xk ≤ kT k kkxk
alors
lim T k x 6= 0
n→∞
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
3⇒ 4 d'après le théorème du rappel, pour tout > 0 il
existe une norme matricielle subordonnée k.k telle que
kT k ≤ ρ(T ) +
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Etant donnée la méthode itérative de départ :
x (k+1) = Tx (k) + V .
et donc
e (k) = T k e (0) , k = 0, 1, · · ·
Notre méthode itérative sera alors convergente lorsque l'erreur e (k)
tend vers 0, ce qui revient à montrer que la matrice T est
convergente ou encore que ρ(T ) < 1 (voir théorème précédent).
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Parmis les méthodes itératives les plus populaires, on peut citer
trois grandes méthodes itératives de résolution de systèmes
linéaires, la méthode de Jacobi, la méthode de Gauss-Seidel et la
méthode de Relaxation.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Méthode de Jacobi
0 ··· ··· 0
a11
..
.
0 .. ... 0 .
.. . . . ..
...
. .
aii
..
. 0 ... ...
0
0 ··· ··· 0 ann
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
L est une matrice inférieure :
0 0 ··· 0
···
. .. ... ..
0 .
−a 21
.. ..
... 0 ...
. .
..
0 ... ...
. 0
−an1 · · · ··· −ann−1 0
U est une matrice supérieure :
0
−a12 · · · ··· −a1n
... ... ..
0 0 .
.. ..
... .
0 ..
. .
..
... ...
. 0
−an−1n
0 ··· ··· 0 0
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
La méthode de Jacobi écrit le système (1) sous la forme itérative
suivante :
Dx (k+1) = (L + U)x (k) + b
ou
x (k+1) = D −1 (L + U)x (k) + D −1 b
Autrement dit : Le système de départ s'écrit :
a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
a21 x1 + a22 x2 + a23 x3 + · · ·
+ a12n xn = b2
.. .. ..
. . .
an1 x1 + an2 x2 + an3 x3 + · · · + ann xn = bn
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Comme dans toute méthode itérative, nous partons d'une
approximation initiale de la solution que nous noterons x ( ) et nous 0
.. ..
. .
Ñ é
1
n−1
(k+1) (k)
X
x = bn − anj xj
n
ann
j=1
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Il est inutile de rappeler que les pivots doivent être non nuls, dans
le cas contraire il sut d'intervertir les lignes pour remplir la
condition nécessaire.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Exemple
Soit le système :
3x1 + 2
x2 − x3 =
1
x + 5x 2 + 2x 3 = 17
2x1 − x2 − 6x 3 = −18
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Dénition
Une matrice A est dite à diagonale strictement dominante si
n
X
|aii | > |aij |, ∀i
j=1,j6=i
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Preuve
Soit x la solution du système, on a
(k) −1 X (k−1)
xi − xi = aij (xj − xj )
aii
j6=i
alors
(k) 1 X (k−1)
|xi − xi | ≤ |aij | max |xj − xj |
|aii | j
j6=i
On pose
1 X
Li = |aij |
|aii |
j6=i
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
donc
kx (k) − xk∞ ≤ Lkx (k−1) − xk∞
alors
kx (k) − xk∞ ≤ Lk kx (0) − xk∞
et puisque L < 1 donc la méthode de Jacobi converge.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Méthode de Gauss-Seidel
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Il sut de constater que le calcul de xi(k+ ) nécessite l'utilisation de
1
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
qui peut s'écrire matriciellement sous la forme itérative suivante :
(D − L)x (k+1) = Ux (k) + b
ou
x (k+1) = (D − L)−1 Ux (k) + (D − L)−1 b
Là encore, on rappelle que les pivots doivent être non nuls, dans le
cas contraire il sut d'intervertir les lignes pour remplir la condition
nécessaire.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Exemple
Soit le système :
3x 1 + x2 − x3 = 2
x1 + 5x 2 + 2x 3 = 17
2x1 − x2 − 6x 3 = −18
1Ä
(k+1)
2 − x (k) + x (k)
ä
x1 =
3 2 3
1Ä
(k+1)
17 − x (k+ ) − 2x (k)
1
ä
x2 =
5 1 3
1Ä
− −18 − 2x
(k+1) (k+ ) (k+ )
ä1 1
x3 = +x
6 1 2
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Théorème (Condition susante de convergence )
Si la matrice A est à diagonale strictement dominante, alors les
méthodes de Gauss Seidel converge.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Montrons que ρ(TGS ) < 1.
Raisonnons par l'absurde en supposant qu'il existe une valeur
propre λ de TGS avec |λ| ≥ 1,
on a
− 1 − 1
1
det(λI − (D − L) U) = det(λ(D − L) ((D − L) − U) =
λ
1
λn det((D − L)−1 ) det((D − L) − U)
λ
On va montrer que pour |λ| ≥ 1, la matrice (D − L) − λ U est à 1
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
et puisque la matrice A est à diagonale strictement dominante et
|λ| ≥ 1 :
X X X X X aij
|aii | > |aij | = |aij | + |aij | ≥ |aij | +
λ
j6=i j<i j>i j<i j>i
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
La méthode de relaxation
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Remarques
1 Pourv ω = 1, on retrouve la méthode de Gauss-Seidel.
Proposition
La méthode de relaxation diverge pour tout ω dans
] − ∞, 0] ∪ [2, +∞[.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
preuve puisque la matrice I − ωD − L − est triangulaire inférieure
1
1
det(TR ) = (1 − ω)n
Par ailleurs
det(TR ) ≤ ρ(TR )
puisque le déterminant d'une matrice est égal au produit de ses
valeurs propres comptées avec leur ordre de multiplicité. On en
déduit que si det(TR ) > 1 alors ρ(TR ) > 1
donc la méthode est divergente lorsque
ω ∈] − ∞, 0] ∪ [2, +∞[.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Condition d'arrêt
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires
Une autre technique consiste à utiliser un autre test d'arrêt basé
sur : (k+ ) 1 (k)
kx −x k
≤ ε.
kx (k) k
Mais lorsque la solution exacte est voisine de 0, on se contante
alors du critère d'arrêt suivant :
kx (k+1) − x (k) k ≤ ε.
Mme M.El Kyal Chapitre 1 Méthodes itératives pour les systèmes linéaires