Méthodes itératives pour la résolution de systèmes linéaires - IA

- p. 1/33
Méthodes itératives pour la résolution de
systèmes linéaires
VIET HUNG NGUYEN - FABIEN RICO
EPU Pierre et Marie Curie - Science de la Terre
- p. 2/33
Pourquoi utiliser les méthodes itératives
On cherche à résoudre une équation de la forme :
Ax =b
Les méthodes directes fournissent la solution ¯xen un nombre fini
d’opérations.
Mais :
Si la taille du système est élevée, le nombre d’opérations est important,
or les erreurs de calcul dépendent directement du
nombre de calculs.
Elles utilisent des propriétés mathématiques nécessitant un calcul exact,
il est difficile de tenir compte des erreurs de calcul
dans ce processus
Donc le résultat n’est jamais rigoureusement égal à¯x.
Il peut même en être très différent.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 3/33
Méthodes itératives
Les fonctions linéaires ont de bonnes propriétés :
ce sont des fonctions très régulières (C)
elles sont linéaires
L’utilisation de la formule de TAYLOR dans l’algo-
rithme de NEWTON sert justement à « linéariser »
une fonction non linéaire
Mais on ne peut pas utiliser l’algorithme de NEWTON.
On construit une suite de vecteurs (xk)k= 0,1, ... qui tend vers
¯x.
Le point de départ est une approximation x0de ¯xobtenue par
exemple par une méthode directe.
Pour construire cette suite, on utilise la linéarité pour décomposer
la matrice A en une partie facilement inversible et un reste.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 4/33
Principe Général
On décompose la matrice A : A=MN,
de telle façon que Msoit facilement inversible.
Alors,
Ax =bMx =N x +b
On calcule la suite de vecteurs (xi)à partir d’un vecteur x0choisi
arbitrairement et de la relation :
Mxk+1 =N xk+bxk+1 =M1Nxk+M1b
C’est à dire :
(x0donné
xk+1 =M1Nxk+M1b
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 5/33
Posons le problème
Posons C=M1N, et d=M1b. Nous devons donc étudier la
suite récurrente :
(x0donné
xk+1 =Cxk+d
Avec :
¯xest point fixe de la fonction linéaire
x7→ Cx +d
cette fonction est C
il faut démontrer que c’est une fonction contractante.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 6/33
Intuitivement
Sous quelles conditions la suite va-t-elle converger ?
Cela dépend-il de Cou d?
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
peu d’algèbre linéaire - p. 7/33
Un peu d’algèbre linéaire
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 8/33
Normes matricielles
On appelle norme matricielle une norme définie sur Mn(C)qui est
compatible avec la multiplication de matrice.
C’est à dire :
k.k:Mn(C)IR+
A7→ kAk
telle que
A, B ∈ Mn(C)et λC:
Séparation : kAk= 0 A= (0),
Homogénéité : kλAk=|λ| · kAk,
Inégalité triangulaire : kA+Bk ≤ kAk+kBk,
kA·Bk ≤ kAk · kBk.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 9/33
Exemple de normes
Norme de Frobenius :
A∈ Mn(C)
kAkF=qPn
i=1 Pn
j=1 aij =ptr (tAA))
Normes induites (ou subordonnées) :
Soit k.kvune norme vectorielle définie sur Cn
la fonction qui A∈ Mn(C)associe
kAk= max
xCn,x6=0 kAxkv
kxkv
est une norme matricielle dite norme matricielle induite ou
subordonnée
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 10/33
Exemple de norme induite
Soit la norme vectorielle k.k:
xCn
kxk= max
1in|xi|
Cette norme induit la norme matricielle k.ksur Mn(C):
A∈ Mn(C)
kAk= max
1in
n
X
j=1 |aij |
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 11/33
Norme matricielle et norme vectorielle
Définition On dit qu’une norme matricielle k.kest compatible avec
une norme vectorielle k.kvsi
x
kAxkv≤ kAkkxkv
Propriétés :
Pour toute norme matricielle k.k, il existe une norme vectorielle
avec laquelle elle est compatible. Il suffit de définir :
kxkv=
x1
.
.
.
xk
.
.
.
xn
0
Toute norme matricielle induite est compatible avec sa norme
vectorielle.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 12/33
Rayon spectral
Définition Soit A∈ Mn(C), on appel rayon spectral de la matrice
Ale nombre réel :
ρ(A) = max
1in|λi|
λisont les valeurs propres de A
Remarque : ρ(.)n’est pas une norme.
Propriétés :
Pour toute norme matricielle k.ket pour toute matrice :
ρ(A)≤ kAk
A∈ Mn(C),ǫIR+,une norme matricielle induite k.ktelle
que :
ρ(A)≤ kAkρ(A) + ε
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 13/33
Convergence
Revenons sur la convergence de la suite :
(x0donné
xk+1 =Cxk+d
Théorème C∈ Mn(C), s’il existe une norme matricielle induite
k.ktelle que
kCk<1
alors :
1. L’équation x=Cx +dadmet une solution unique ¯x.
2. La suite xk¯xquelle que soit x0.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 14/33
Preuve - 1
Existence de la solution :
ρ(C)≤ kCk<1
Donc les valeurs propres λde Csont telles que kλk<1.
Cela signifie que la matrice ICest inversible
Donc il existe une solution unique à l’équation
x=Cx +d
On appel ¯xcette solution
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 15/33
Preuve - 2
Convergence :
Soit ek=xk¯x
On peut déduire une relation entre eket ek1.
Cek1=C(xk1¯x)
=C(xk1)C(¯x)
=C(xk1) + d¯x
Donc ek=Cek1pour k= 1,2,...
Nous avons alors :
ek=Cke0
Soit la norme matricielle induite k.ket sa norme vectorielle k.kvtelle
que kCk<1:
ek
v≤ kCkk
e0
v.
Donc ek0et xk¯x
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 16/33
Autres conditions
Connaissant C, comment savoir si la suite va converger ?
Cas général :
Théorème Il y a équivalence entre les propositions suivantes :
C est une matrice convergente ( i.e. Cktend vers 0)
ρ(C)<1
Il existe une norme matricielle induite telle que kCk<1
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 17/33
Cas d’une matrice symétrique
Théorème Soit Aune matrice symétrique définie positive, Si
A=MN
et si M+tNest définie positive (elle est forcement symétrique)
alors la suite
xk+1 =M1Nxk+d
est convergente
id´
ee de la preuve :
Si on considère la norme vectorielle définie par A:
kxkA=txAx
Et sa norme matricielle induite k.k, alors
M1N
<1
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Normes matricielles
Exemple de normes
Exemple de norme induite
Norme matricielle et norme
vectorielle
Rayon spectral
Convergence
Preuve - 1
Preuve - 2
Autres conditions
Cas d’une matrice symétrique
Conclusion
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
- p. 18/33
Conclusion
Soit Aune matrice, pour résoudre le système d’équations Ax =b, il
faut décomposer A=MNde tel façon que :
Msoit inversible.
l’une des deux conditions suivantes soit vérifiée
C=M1Nait un rayon spectral <1(le plus petit possible).
Si Aest symétrique définie positive,M+tNsoit aussi définie
et positive.
Comment choisir Met N?
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
Méthode de JACOBI - p. 19/33
Méthode de JACOBI
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 20/33
Exemple
1 1 0
11 1
0 1 1
×x=
0
1
2
Soit (¯x1,¯x2,¯x3)la solution. Si on connaît deux coordonnées de la
solution, il est possible de calculer la troisième
La ligne 1donne : ¯x1=01ׯx20ׯx3
1.
La ligne 2donne : ¯x2=1 + 1 ׯx11ׯx3
1.
La ligne 3donne : ¯x3=20ׯx11ׯx2
1.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 21/33
Exemple (suite)
Si on ne connaît pas de coordonnées de la solution, mais que l’on
en a des valeurs approchées :
(˜x1,˜x2,˜x3)
Il est possible d’itérer, c’est à dire de choisir une nouvelle
approximation (x1, x2, x3)plus proche du résultat par les formules :
x1=01טx20טx3
1
x2=1 + 1 טx11טx3
1
x3=20טx11טx2
1
La méthode de JACOBI consiste à itérer tant que l’on n’est pas
assez proche du résultat.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 22/33
Algorithme de JACOBI
Donn´
ees :A,b,x0,n,εet MAXITER
d´
ebut
pour i= 1 `
anfaire
xnew
ix0
i
nb 0
tant que (kAxnew bk> ε) et (nb <MAXITER) faire
nb nb+1
pour i= 1 `
anfaire
xold
ixnew
i
pour i= 1 `
anfaire
xnew
i
biX
j=1,j6=i
aij xold
j
aii
fin
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 23/33
Lien avec le chapitre précédant
Soit la matrice A, on note :
D la matrice des éléments diagonaux de A
E la matrice des éléments sous-diagonaux
F la matrice des éléments sur-diagonaux
C’est à dire :
A=
a11 ···a1n
.
.
..
.
.
an1···ann
aij D=
a11
...
ann
0
0
E=
0
...
0
aij
i>j
0
F=
0
...
0
0
aij
i<j
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 24/33
Lien avec le chapitre précédant (suite)
L’algorithme de JACOBI compose la matrice en la somme
A=MNet calcule la suite
xk+1 =M1Nxk+M1b
Avec :
(M=D
N=EF
On appel matrice de JACOBI la matrice
J=D1(EF)
=M1N
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 25/33
Conditions de convergence
D’après ce qui précède une condition nécessaire et suffisante
(CNS) est que :
Dsoit inversible
les éléments diagonaux de Adoivent être non nuls
et ρ(J)<1(la valeur propre de plus grand module est < à 1)
Remarques :
Pour un système linéaire donné, on peut inverser
l’ordre des inconnues i.e. celui des colonnes de la matrice
l’ordre des équations i.e. celui des lignes de la matrice
Cette CNS est difficile à vérifier, mais il y a deux conditions
suffisantes.
Pour les matrices à diagonale strictement dominante.
Pour les matrice symétriques.
- p. 26/33
Diagonale strictement dominante
Définition Une matrice Aest dite à diagonale strictement dominante si :
i, 1in, |aii|>
n
X
j=1,j6=i|aij |
Théorème Si A est une matrice à diagonale strictement dominante, alors la
méthode de JACOBI est convergente quel que soit le vecteur initial x0.
Preuve :
Si |aii|>Pn
j=1,j6=i|aij |.aii 6= 0
Pour démontrer la convergence, on peut prouver que kCk<1
avec C=D1(EF). Donc Cii = 0,Cij =aij
aii pour i6=j.
kCk= max
i
n
X
j=1 |Cij |= max
i
n
X
j=1 |Cij |
= max
i
n
X
j=1,j6=i
|aij |
|aii|
<1, puisque
Aest à diagonale strictement dominante.
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Exemple
Exemple (suite)
Algorithme de JAC OB I
Lien avec le chapitre précédant
Lien avec le chapitre précédant
(suite)
Conditions de convergence
Diagonale strictement
dominante
Cas des matrices symétriques
Algorithme de GAU SS-SE IDEL
- p. 27/33
Cas des matrices symétriques
Théorème Si Aet 2DAsont symétriques définies positives,
alors la méthode de JACOBI converge
preuve :
Si on pose
M=D
N=EF
=DA
alors M+tN= 2DA
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
Algorithme de
Résumé de GAUS S-SE ID EL
Condition de convergence
Méthodes SOR (Successive
Over Relaxation)
Conclusion
Algorithme de GAUSS-SEIDEL - p. 28/33
Algorithme de GAUSS-SEIDEL
Algorithme de GAUSS-SEIDEL - p. 29/33
Algorithme de
Donn´
ees :A,b,x0,n,εet MAXITER L’algorithme de GAUSS-SEIDEL
modifie l’algorithme de JACOBI
pour utiliser à chaque itération
les valeurs xk+1
idéjà calculées
d´
ebut
pour i= 1 `
anfaire
xnew
ix0
i
nb 0
tant que (kAxnew bk> ε) et (nb <MAXITER) faire
nb nb+1
pour i= 1 `
anfaire
xold
ixnew
i
pour i= 1 `
anfaire
xnew
i
bi
i1
X
j=1
aij xnew
j
n
X
j=i+1
aij xold
j
aii
fin
Pourquoi utiliser les méthodes
itératives
Méthodes itératives
Principe Général
Posons le problème
Intuitivement
Un peu d’algèbre linéaire
Méthode de JAC OB I
Algorithme de GAU SS-SE IDEL
Algorithme de
Résumé de GAUS S-SE ID EL
Condition de convergence
Méthodes SOR (Successive
Over Relaxation)
Conclusion
Algorithme de GAUSS-SEIDEL - p. 30/33
Résumé de GAUSS-SEIDEL
L’algorithme de GAUSS-SEIDEL décompose la matrice en la somme
A=MNet calcule la suite
xk+1 =M1Nxk+M1b
Avec :
(M=D+E
N=F
On appel matrice de GAUSS-SEIDEL la matrice
GS = (D+E)1(F)
=M1N
1 / 6 100%

Méthodes itératives pour la résolution de systèmes linéaires - IA

La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !