Académique Documents
Professionnel Documents
Culture Documents
1.1 Introduction
dénition 1. On notera,
1. Rm×n : l'ensemble des matrices de taille m × n (à m lignes et n colonnes) à
coecients réels.
2. Rn×n : l'ensemble des matrices carrées de taille n × n.
3. Rn : l'ensemble des vecteurs de taille n à coecients réels.
Dénition 2. Soit A une matrice de Rn×n . A est dite inversible ou régulière
si il existe une matrice B telle que AB = BA = In . In désigne la matrice identité
1
de Rn×n :
1 0 0
0 1 .
In =
. . . .
. . 0
0 0 1
La matrice B est alors notée A−1 et appelée inverse de A.
1.3 Normes
k • k : E −→ R+
x −→ kxk
et elle vérie les propriétés suivantes :
1. kxk ≥ 0
2. kxk = 0 ⇐⇒ x = 0
3. kλxk = |λ|kxk
4. kx + yk ≤ kxk + kyk
2
Exemple E = Rn :
n
X
kxk1 = |xi |,
i=1
s
X n
kxk2 = x2i ,
i=1
n
1
|xi |p ) p ,
X
kxkp = (
i=1
kxk∞ = sup {|xi |}
i=1,...,n
On a les inégalités importantes suivantes :
Inégalité de Minkowski :
n
1 n
1 n
1
|xi + yi |p ) p ≤ ( |xi |p ) p + ( |yi |p ) p
X X X
(
i=1 i=1 i=1
Inégalité de Holder :
n
X
|xi yi | ≤ kxkp kykq ,
i=1
1 1
où + = 1.
p q
En particulier l'inégalité de Cauchy-Schwarz :
n n 1 n 1
X X X
2 2 2 2
|xi yi | ≤ ( xi ) ( yi )
i=1 i=1 i=1
n
X
< x, y >= xi y i = y T x
i=1
3
1.3.2 Normes matricielles
4
Remarque :
si A est une matrice carrée symétrique n × n, alors
kAk2 = ρ(A)
5
résoudre le problème suivant : trouver une matrice B telle que AB = In , c'est-à-
dire à résoudre un système linéaire de n2 équations à n2 inconnues !, ou à résoudre
n système linéaires chacun d'ordre n. En tout cas c'est très coûteux numériquement.
Dans les paragraphes qui suivent on discutera des techniques numériques qui
consistent à transformer le problème original en un problème ayant une forme par-
ticulière, pour laquelle la solution devient triviale ou très simple.
Exemple :
6
D'une manière générale, on peut trouver toutes les valeurs de xi par la méthode
itérative suivante (la remontée) :
bn
xn =
,
an,n
n
(1.2)
X
bi − ai,j xj
j=i+1
, pour i = n − 1, ..., 1,
xi =
ai,i
Exemple :
7
D'une manière générale, on peut trouver toutes les valeurs de xi par la méthode
itérative suivante (la descente) :
b1
x1 = ,
a1,1
i−1
(1.3)
X
bi − ai,j xj
j=1
, pour i = 2, ..., n,
xi =
ai,i
Dans de nombreuses méthodes, l'objectif est de transformer A pour la rendre
triangulaire, inférieure ou supérieur, et en suite calculer les solutions en utilisant
une remontée ou une descente.
8
x1 + 2x2 + 2x3 = 2 L1 ,
x1 + 3x2 − 2x3 = −1 L2 , (1.4)
3x1 + 5x2 + 8x3 = 8 L3 ,
On conserve la ligne L1 , qui sert de pivot pour éliminer l'inconnue x1 des autres
lignes ; pour cela, on retire L1 à L2 , et 3 fois L1 à L3 . On obtient :
x1 + 2x2 + 2x3 = 2 L1 ,
x2 − 4x3 = −3 L2 ← L2 − L1 , (1.5)
−x2 + 2x3 = 2 L3 ← L3 − 3L1 ,
9
Description
Décrivons la méthode : on suppose que a1,1 soit non nul ; la ligne L1 est la ligne
pivot qu'on va retrancher (avec un coecient) aux lignes suivantes de façon à faire
aparaître des zéros en première colonne à partir de la ligne 2.
donne
10
(k)
On recommence ainsi de proche en proche : à l'étape k on suppose que ak,k est
non nul (quitte à permuter avec les lignes en dessous). Si on ne peut pas trouver de
coecient diagonal non nul à ce stade c'est que la matrice A n'est pas inversible.
Détaillons l'étape k
11
On eectue les opérations suivantes sur les lignes se trouvant en dessous de Lk :
(k)
ak+i,k
Lk+i ←− Lk+i − (k)
∗ Lk i = 1, ..., n − k
ak,k
12
Une fois que le système matrice a été mis sous forme triangulaire supérieur on
n'a plus qu'à résoudre un système triangulaire par la méthode de la remontée.
Algorithme de Gauss
Pour k = 1, . . . , n
Pour i = k + 1, . . . , n
(k)
ai,k (k) (k) (k)
wi,k = (k) ; bi = [bi − wi,k bk ];
ak,k
Pour j = k, . . . , n
(k+1) (k) (k)
ai,j = [ai,j − wi,k ak,j ]
Fin(j) ;
Fin(i) ;
Fin(k) ;
(n)
bn
xn = (n)
an,n
Pour i = n − 1, . . . , 1
X n
bi − ai,j xj
j=i+1
xi = ,
ai,i
Fin(i).
13
1.5.4 La décomposition L U
A = LU
telles que L une matrice triangulaires inférieure avec des 1 sur la diagonale, et U
une matrice triangulaire supérieure.
Ax = (LU )x = L(U x) = b.
Que l'on peut décomposer en deux étapes, avec une variable intermédiaire :y
1. Résoudre Ly = b.
2. Résoudre U x = y .
Intérêt de la méthode : Si on connaît L et U, les étapes (1) et (2) se résolvent
simplement :
en appliquant pour (1) une descente (L est triangulaire inférieur)
en appliquant pour (2) une remontée (U est triangulaire supérieur)
Théorème 1. Si au cours de l'élimination de Gauss sur la matrice A, les pivots
sont non nuls, alors il existe une matrice triangulaire inférieure L et une matrice
triangulaire supérieure U, telle que : A = L U. Si de plus on impose à L d'avoir
les éléments diagonaux égaux à un alors la factorisation est unique.
14
Idée : Au lieu de garder les 0 dans la nouvelle matrice , on conserve dans ces
cases le coecient par lequel on a multiplié L1 .
15
1 0 0
L= 4 1 0
2
2 1
5
et
1 2 1
U = 0 −5 −3 .
11
0 0
5
Vous pourrez vérier que A = LU .
L'algorithme de la décomposition L U :
L = In (Initialisation de la matrice L)
Pour k = 1, . . . , n
Pour i = k + 1, . . . , n
(k)
ai,k
wi,k = (k) ; li,k = wi,k ;
ak,k
Pour j = k, . . . , n
(k+1) (k) (k)
ai,j = [ai,j − wi,k ak,j ]
Fin(j) ;
Fin(i) ;
Fin(k) ;
16
U=A
On utilise la descente pour résoudre Ly = b
On utilise la remontée pour résoudre U x = y
Pour des systèmes de grande taille, les méthodes directes, peuvent s'avérer
trop coûteuses en temps de calcul ou en place mémoire. L'idée est alors de ne plus
chercher à résoudre exactement le système linéaire mais d'approcher sa solution
par une suite de vecteurs construite à l'aide d'une formule de récurrence simple.
Soit un système linéaire
Ax = b (S)
où
A est une matrice carrée inversible, x et b ∈ Rn . Le principe des méthodes itératives
présentées ici est d'écrire A comme la diérence de deux matrices :
A=M −N
où
1. M est inversible
2. le système linéaire M y = c peut être résolu simplement, avec un coût de
calcul faible : typiquement M sera diagonale.
On va alors approcher la solution de (S) par la suite (x(k) ) dénie par récur-
rence à partir de x(0) qu'on choisit au début comme solution initiale, et de
la formule suivante :
x(k+1) = M −1 (b + N x(k) )
Remarque. On n'a pas besoin de calculer M −1 , mais juste de savoir calculer
la solution du système :
M x(k+1) = (b + N x(k) ) (1.8)
On appelle cette construction méthode itérative basée sur la décomposition régu-
lière (M,N).
Remarque. Si (x(k) )k converge vers x alors (1.8) donne par passage à la limite
M x = N x + b et donc (M − N )x = b c'est à dire Ax = b.
Ainsi, si (x(k) )k converge alors, la suite converge vers la solution du système linéaire
17
Ax = b.
Remarque. On ne connaît pas e(k) mais il est facile de calculer r(k) à chaque
itération. La méthode est convergente ssi lim e(k) = 0 ou lim r(k) = 0.
k→∞ k→∞
e(k) = x(k) − x
= (M −1 N x(k−1) + M −1 b) − (M −1 N x + M −1 b)
= M −1 N (x(k−1) − x)
= M −1 N e(k−1)
Il en découle que e(k) = (M −1 N )k e(0) . Alors e(k) converge vers 0 lorsque k tend
vers l'inni ssi (M −1 N )k converge vers 0 lorsque k tend vers l'inni, c.a.d ssi
ρ(M −1 N ) < 1.
Description de la méthode :
18
a1,1 x1 + a1,2 x2 + ... + a1,n xn = b1 ,
a2,1 x1 + a2,2 x2 + ... + a2,n xn = b2 ,
.
.
an,1 x1 + an,2 x2 + ... + an,n xn = bn ,
(k−1) (k−1)
(k) b1 − a2,1 x2 − ... − a1,n xn
x1 = ,
a1,1
(k−1) (k−1) (k−1)
b2 − a2,1 x1 − a2,3 x3 − ... − a2,n xn
(k)
x2 = ,
a2,2 (1.10)
.
.
(k−1) (k−1) (k−1)
bn − an,1 x1 − an,2 x2 − ... − an,n−1 xn−1
(k)
xn = ,
an,n
Algorithme de Jacobi :
Tant que kb − Ax(k) k2 > ε
n
X (k−1)
bi − ai,j xj
(k) j=1,j6=i
xi = , i = 1, . . . , n
ai,i
Fin
19
Dénition. une matrice carrée A est dite à diagonale strictement dominante
si et seulement si :
n
|ai,j | pour i = 1, . . . , n
X
|ai,i | >
j=1,j6=i
Exemple :
5 3 −1
A = 4 −9 3 .
−3 1 10
Proposition. Si A est à diagonale strictement dominante alors la méthode de
Jacobi converge pour tout choix de x(0) .
Description de la méthode :
On considère toujours le système suivant :
b1 − a2,1 x2 − ... − a1,n xn
x1 = ,
a1,1
b2 − a2,1 x1 − a2,3 x3 − ... − a2,n xn
x2 = ,
a2,2
(1.11)
.
.
bn − an,1 x1 − an,2 x2 − ... − an,n−1 xn−1
xn = ,
an,n
Le principe de la méthode de Gauss-Seidel est de considérer le système équi-
valent suivant :
20
(k−1) (k−1)
(k) b1 − a2,1 x2 − ... − a1,n xn
x1 = ,
a1,1
(k) (k−1) (k−1)
b2 − a2,1 x1 − a2,3 x3 − ... − a2,n xn
(k)
x2 = ,
a2,2 (1.12)
.
.
(k) (k) (k)
bn − an,1 x1 − an,2 x2 − ... − an,n−1 xn−1
x(k) = ,
n
an,n
Algorithme de Gauss-Seidel :
Tant que kb − Ax(k) k2 > ε
i−1
X n
X
(k) (k−1)
bi − ai,j xj − ai,j xj
(k) j=1 j=i+1
xi = , i = 1, . . . , n
ai,i
Fin
21