de Gauss et de Householder.
Le14otobre2014
JeanRoux
Mini-oursdonné en
3 e
année de Liene de Sienes du département de GéosienesÉole normalesupérieure, Paris
Résolution des systèmes linéaires
Ax = b
, par des méthodes numériques diretes.Dans e ours on herhe à résoudre le problème linéaire suivant : étant
donnésla matrie
A ∈ R n,n
et leveteurb ∈ R n
,trouverle veteurx ∈ R n
solutiondu système
Ax = b.
(1.0.1)La résolution dessystèmes linéairess'opèrepardeux typesdeméthodes
: les méthodes diretes et les méthodes itératives. Les méthodes diretes
sont prinipalement utilisées pour les systèmes linéaires où la matrie est
pleine(peud'élémentsnuls)ousansstruturepartiulière(dutypestruture-
bande,struture-blo)et/oupropriétéd'unertaintype(matrieàdiagonale
dominante, matrie symétrique dénie positive) qui apparaît fréquemment
par ladisretisation des équations aux dérivéespartielles par desméthodes
dites des diérenes nies ou d'éléments nis. Les systèmes linéaires ave
struture ou qui possèdent peu d'éléments non nuls (systèmes reux) sont
prinipalement résolus par lesméthodesitératives.
On ne sait pas toujours a priori si la matrie
A
est inversible, 'est- à-dire si l'équation (1.0.1) a une solution unique. Il est don souhaitablede disposer de méthodes qui en déident. Les méthodes diretes exposées
i-après lepermettent.
NousallonsexaminerlesméthodesdeGaussetdeHouseholder. Laméth-
ode de Gauss peuts'utiliser lorsque lamatrie
A
est onstituée d'élémentsomplexes (
a i,j ∈ C
). Résoudre le système linéaire omplexeAz = b
oùb ∈ C n
etA ∈ C n,n
revient à trouverz ∈ C n
sous la formez = x + iy
où(x, y) ∈ R n × R n
. En déomposant la matrie sous la formeA = A 1 + iA 2
où
A 1 ∈ R n,n
etA 2 ∈ R n,n
et le seond membreb ∈ C n
sous la formeb = b 1 + ib 2
où(b 1 , b 2 ) ∈ R n × R n
, on est onduit à résoudre un systèmelinéaire réel d'ordre
2n
en les inonnuesx
ety
dont l'ériture est évidente.Onpeut aussitravailler sur l'algorithmede Gaussen onsidérant les opéra-
tionsalgébriquesdiretement surleorpsdesomplexes, naturellement plus
oûteusesque ellesfaitessurleorps desréels.
Par ailleurs la méthode de Gauss peut résoudre des systèmes linéaires
Ax = b
où la matrieA
est retangulaire, à savoir : trouverx ∈ R p
telque
Ax = b
oùA ∈ R n,p
etb ∈ R n
. Mais alors l'analyse matriielle de laméthode ne fournit pas lafameuse déompositionLU
de la matrieA
,où
L
est une matrie triangulaire inférieure ave des1
sur la diagonale etU
est une matrie triangulaire supérieure. Cette déompositionLU
étantindispensable, par exemple, à la mise en oeuvre de la méthode LR de
Rutishauser dealuldes valeurspropres
Aussi nous nous limiterons aux systèmes arrés et réels ave
A ∈ R n,n
et
b ∈ R n
. En pratique l'entiern
peutêtre très grand;pour ertains grosproblèmes lenombre
n
est del'ordre du million,voire plus.Préisonsennquelarésolutiond'unproblèmedeetypeintervientdans
de très nombreux problèmes de l'analyse numérique. L'étude desméthodes
derésolution estdon indispensable.
1.1 Conditionnement et stabilité
Un soui onstant en analyse numérique doit être la préision des valeurs
alulées. Tous les aluls étant eetués ave deserreurs d'arrondi, l'eet
de eserreurs peutêtre négligeable ou atastrophique. Maisaussi, le prob-
lème à résoudre peut présenter intrinsèquement un aratère d'instabilité.
Considéronspar exemple lesystème:
2x + 6y = 8 2x + 6.00001y = 8.00001 .
Enportantlapremièreéquationdanslaseonde,ona
8−6y+6.00001y = 8.00001
,soit0.00001y = 0.00001
d'oùy = 1
etx = 1
.Soit maintenant le systèmevoisin :
2x + 6y = 8 2x + 5.99999y = 8.00002
Demême,onamaintenant
8−6y+5.99999y = 8.00002
,soit−0.00001y = 0.00002
, d'oùy = −2
etx = 10
, qui est loin d'être voisine de la solutionpréédente. Onditd'untelsystèmequ'ilestmalonditionné. Notonsquee
onditionnement estdénipar leproduitdesnormesmatriielles
kAkkA −1 k
pour une norme matriielle (subordonnée) quelonque, e qui exige de on-
naître l'inverse
A −1
deA
. L'étude du onditionnement n'est pas abordée danse ours(voirlivre).1.2 Méthodes numériques diretes
Pour les méthodesdiretestrois idéessont à retenir.
•
Onnealule jamaisA −1
.•
Onherhe à transformerla matrie (évidemment sans hangerla so- lution dusystème) enune forme triangulairesupérieure quiest faile-mentrésolubleparuneréurrenedebasenhaut. Eneet,onalule
alorsdiretement ladernièreomposante delasolutionparladernière
lignedelamatrie,puisl'avant-dernière omposantedelasolutionpar
l'avant-dernière ligne de la matrie et, de prohe en prohe, la pre-
mière omposante de la solution par la première ligne de la matrie,
les
(n − 1)
dernières omposantesétant alulées.•
Ilestfailedeompterlenombred'opérationsélémentaires(additions et multipliations) que l'on utilise. Ces méthodes sont dites diretesarellesalulentlasolutionenunnombreni(quipeutêtregrand)et
onnu d'opérations. Il n'ya pasdetest d'arrêtde laméthode,onal-
ulediretement lasolution. Dèslorsonévaluelesperformanesd'une
méthode direte en omptant les opérations élémentaires ; on alule
ainsie quel'onappellelaomplexitédelaméthode. Naturellement il
estalorspossible(puisquel'ontravailleenarithmétiquenie)d'étudier
lasensibilitéde la solution par rapportaux données, sensibilité dueà
lapropagationauxerreurs d'arrondis.
Remarque 1.2.1. Pourquoi ne pas utiliser les formules de Cramer ? On
rappelle que
x k = det(A k )/det(A)
, oùA k
est la matrie arrée obtenue enremplaçant la
k eme
olonne deA
par le le veteurb
de (1.0.1). Ces for-mules reviennent à aluler
(n + 1)
déterminants. Or un déterminant exige(n − 1)n!
multipliationset(n! − 1)
additions. L'algorithmeseraitdon non polynomial du point de vue du nombre des opérations élémentaires (op.él.)et,paronséquent,totalement inutiledès que
n
dépasselainquantaine. Par exemplesin = 10
eladonneenviron 400millionsd'op.él.. Enomparaison, nousverrons (voir Remarque 1.2.5)que la méthodedeGaussdemande envi-ron
2n 3 /3
op.él. (etteestimationest trèsgrossière, maisellepréise l'ordredegrandeur), e qui donne seulement environ 670op.él. pour
n = 10
.1.2.1 Méthode de Gauss : desription pratique
Onsuppose,pourprésenterlaméthode,quelamatrie
A
estapriorirégulière.Onverra(voirRemarque1.2.3)quelaméthodedeGaussstatutsurlarégu-
larité de la matrie
A
. On poseA = A (1) = (a (1) ij )
. On suppose don quedet(A (1) ) 6= 0
. On souhaite quea 11 (1) 6= 0
. Si tel n'est pas le as, on pré-multiplie
A
par unematriedepermutationélémentaireP λ,µ
ad-ho, 'estlepivotage. L'introdution (éventuelle) de lamatrie
P λ,µ
n'arien à voiravelarégularitéde
A
. SoitdonA (1) = P 1,ζ 1 A (1) = (α (1) ij ).
(1.2.1)ave
α (1) 11 6= 0
. Dans la méthode de Gauss on travaille toujours ave desmatriesde permutation élémentaire, le mot élémentaire sera généralement
omisdans e qui suit. La prémultipliation de
A
par lamatrie de permu-tation
P 1,ζ 1
permute les lignes 1 etζ 1
de la matrieA
; omme la matrieA
est supposée régulière la première olonne n'est pas nulle et il est tou-jourspossible depermuter, si
a (1) 11 = 0
,laligne 1etuneligneζ 1
aratériséepar
a (1) ζ 1 ,1 6= 0
. Sia 11 (1) 6= 0
le pivotage ne semble pas néessaire a priori etl'on peutroire qu'il sut de poser
P 1,ζ 1 = I
. Mais sur ordinateur on tra-ets'il existe plusieurs éléments non nuls dans lapremière olonne on verra
que, pour desraisonsd'erreurs d'arrondis,il estnéessairede hoisir leplus
grand élément en module des éléments non nuls, e qui néessite presque
toujours de hoisir
P 1,ζ 1 6= I
. Dans le as assez rare (e qui justie notreloutionpresque toujours)où
a (1) 11
estleplusgrand élément enmoduledesélémentsdelapremièreolonne,iln'estpasnéessairedefaireunepermuta-
tiondeslignes1et
ζ 1
,equirevientmatriiellement àfaireP 1,ζ 1 = P 1,1 = I
dont ledéterminant vaut 1.
Maintenant ommene la triangulation. On s'eore d'annuler tous les
termesde lapremière olonne de
A (1)
àl'exeption du premier. SoitdonA (2) = E (1) A (1)
ave
E (1) = 1
− α
(1) 21
α (1) 11 1
.
.
.
0
...0
.
.
.
.
.
.
− α (1) n 1
α (1) 11 0 . . . 1 .
Lamatrie
E (1)
estonstruitepourannulertouslestermesdelapremièreolonne àl'exeption du premier terme. L'intérêt de l'opération estévident
envoyant (Figure 1.1)lastruture de lamatrie
A (2)
obtenue.PSfrag replaements
α (1) 11 0
0
A (2) = A ˜ (2)
Figure1.1: PremiereetapedelamethodedeGauss.
La triangulation est amorée et le proessus va pouvoir se poursuivre.
En eet
A (2) = E (1) A (1) = E (1) P 1,ζ 1 A (1)
avedet(E (1) ) = 1
ar la ma-trie
E (1)
est triangulaire inférieure ave des 1 sur la diagonale. On rap- pelle de plus, que siP
est une matrie de permutation élémentaire alorsdet(P ) = −1
(voir livre). On a dondet(A (2) ) = ± det(A (1) )
(le signe+ prenant en ompte l'éventualité d'une non permutation ave
P 1,ζ 1 = I
)et la matrie
A (2)
est régulière ar son déterminant est non nul. Commedet(A (2) ) = α (1) 11 det( ˜ A (2) )
(Figure 1.1)etomme,par onstrution,α (1) 11 6= 0
on en déduit que
det( ˜ A (2) ) 6= 0
. La matrieA ˜ (2)
est régulière, sapremièreolonne est non nulle, et on peut appliquer à ette matrie l'algorithme
préédent. L'algorithme de triangulation peut sepoursuivreave prémulti-
pliation,àhaqueétape,d'unematriedepermutationpuisparunematrie
E (k)
dont on omprend aisèment la struture (voir Figure 1.2) à partir deellede
E (1)
.0
0
0
PSfrag replaements
E (k) = 1
1
1 e ik = − α
( k ) ik
α ( kk k ) , k + 1 ≤ i ≤ n
.olonne
k
ligne
k
Figure 1.2: Struturede
E k
.Évidemment ilne fautpasoublier, àhaqueétape,depermuteraussiles
omposantes duseondmembreetde lesmultiplier par les
E (i)
. Àlandel'algorithme(en
n
étapes)on obtient un systèmedutypeU x = b (n) ,
où
U
est une matrie triangulaire supérieure. Sa résolution par réurrene estévidente ommenousl'avonsdéjà examiné.Maisl'algorithmenepeutpass'appliquertel quel: unestratègie dehoix
de pivot (on appelle pivot l'élèment non nul hoisi dans la olonne, 'est
l'élément
α (1) 11
àlapremièreétape)estnéessaire. L'exemplesuivantvanousenonvainre.
Travaillons ave un alulateur à trois hires signiatifs (en virgule
ottante), la mantisse est un nombre ompris entre 0 et 10 et on ne peut
additionnerdesnombresques'ilsontmêmeexposant. Cherhonsàrésoudre
lesystème
10 −4 x + y = 1 x + y = 2 .
La solutionexate est
x = 1, 00010 ≎ 1 y = 0, 99990 ≎ 1 ,
oùlesymbole
≎
désigne lavaleurréellementreprésentéedanslealulateur.Que faitl'algorithmesans stratégie de pivot ?
Comme
a (1) 11 = 10 −4 6= 0
nouspouvonsommener a priorilealulaveonane, sans prémultipliation par une matrie de permutation (e qui
revient à prendre
P = I
). Après multipliation par lamatrieE (1) = 1 0
−10 4 1 ,
lesystèmeinitial devient lesystèmetriangulaire supérieure suivant :
10 −4 x + y = 1
(−10 4 + 1)y = −10 4 + 2 .
Traduisons les hires en virguleottanteave troishires signiatifs
−10 4 + 1 = −1, 000 × 10 4 + 0, 0001 × 10 4 ≎ −1, 000 × 10 4
−10 4 + 2 = −1, 000 × 10 4 + 0, 0002 × 10 4 ≎ −1, 000 × 10 4 .
La deuxième équation donne alors immédiatement
y ≎ 1
, e qui estorret. Maisen reportant ette valeurdanslapremière équationon trouve
x ≎ 0
,e quiest toutà faitirréaliste !Essayons alors, en éhangeant la première ligne ave la deuxième, de
pivoter ave
a (1) 21 = 1
,lamatrieE (1)
s'éritE (1) = 1 0
−10 −4 1 ,
etlesystèmedevient (n'oublions paslapermutation préalable)
x + y = 2
(−10 −4 + 1)y = −2.10 −4 + 1 ,
ave les représentations suivantes des oeients :
1 ≎ 1, 000 × 10 0
et−10 −4 ≎ −0, 0001 × 10 0 ≎ 0
, le système est traduit en mahine par lesystème
x + y ≎ 2 y ≎ 1 ,
il vient don
y ≎ 1
d'où, en reportant dans la première équationx ≎ 1
,l'algorithmeestsauf !
Cet exemple montre lairement lanéessité d'unestratégie de pivotage.
Deuxtehniquessont utilisées enpratique
•
pivot partiel : on prend le plus grand élément sous diagonal (termediagonal inlus), en module, de la olonne dont on herhe à annuler
lestermes sous-diagonaux.
•
pivot total : on prend le plus grand élément, en module, de toutela sous-matrie
A ˜ (2)
(resp.A ˜ (k)
) à l'étape 2 (resp.k
) et on utiliselespermutationsonvenables (deslignesparprémultipliationparune
matriedutype
P
,desolonnesparpostmultipliationparunematrie depermutation du même type).Remarque1.2.2.Enpratiquelapremièretehnique(unpeumoinsoûteuse
entemps alul) est très souventsusante.
Remarque 1.2.3. A priori on ne sait pas toujours si la matrie
A
estrégulière. Observonsla onguration delatriangularisationà l'étape
k
(Fig-ure 1.3). Il est lair que
det(A (k+1) ) = Q k
i=1 α (i) ii
det( ˜ A (k+1) )
et que, dePSfragreplaements
α (1) 11
0 0
0 0 A (k+1) =
A ˜ (k+1) α (k) kk
Figure 1.3: k-ièmeétapedelaméthodedeGauss.
plus,
det(A (1) ) = (−1) l det(A (k+1) )
l'entierl
étant le nombre de permuta-tions de lignes (i.e. le nombre de pivotages) eetuées jusqu'à l'étape
k
del'algorithme. Ainsi, si la matrie
A(= A (1) )
est singulière, à une ertaine étapek
la matrieA ˜ (k+1)
sera singulière, ette singularitéapparaissantave une première olonne onstituée d'éléments nuls (en pratique le test de nul-litédu pivot estassez déliatà hoisir). L'algorithme deGausspermetdon
dedéider de la singularité d'unematrie.
Remarque 1.2.4. Dans le as où
A
est régulière on voit quedet(A) = (−1) p det(A (n) )
, lamatrieA (n)
étanttriangulairesupérieure ;det(A (n) )
estégal auproduit desesélémentsdiagonaux. C'est-à-dire que sondéterminant
est égal,au signe près, au produit des pivots. Le signe est donné par
(−1) p
,l'entier
p
étant le nombre de permutations de lignes eetuées au ours de toute la triangulation, nombre que l'on onnait par la mise en ÷uvre de laméthode. C'estunrésultatparfoisutile,unpeuimprévu,delamiseen÷uvre
de la méthode de Gauss. Ce proédé de alul du déterminant est beauoup
moins oûteux que elui des méthodes usuelles de son évaluation (voir la
Remarque 1.2.1).
1.2.2 Analyse matriielle de la méthode de Gauss
Cassimplié Onsupposedanseparagraphequelamatrie
A
estrégulièremulesgénéralesdelamultipliationde
A (k)
par lamatrieE (k)
,donnant lestermesde lamatrie
A ˜ (k+1)
(Figure 1.3).a (k+1) ij = a (k) ij +e ik a (k) kj , k+1 ≤ i, j ≤ n,
avee ik = − a (k) ik
a (k) kk , k+1 ≤ i ≤ n.
(1.2.2)
Notonsqueles
k
premièreslignesdeA (k)
sontonservéesetquelestermesdela
(k) e
-olonnedeA (k+1)
,au-dessousdea (k) kk
,sont nuls(Figure 1.3).Remarque1.2.5. Essentiellemente sontles formules (1.2.2)qui donnent
lenombre des op.él. de la méthode de Gauss. En eet la résolution du sys-
tème
U x = b (n)
oùU
est une matrie triangulaire supérieure se faitapprox- imativement enn 2
op.él. (un ordre de grandeur de moins que l'algorithme de triangulation proprement dit). Notons que les permutations d'élémentsne sont pas omptabilisées omme op.él. bien que, naturellement, dans la
reherhe duoût, ilfautprendre enompteletempsdereherhedes pivots.
Onvoitsur lesformules(1.2.2)que l'onfait,àhaque appel,uneadditionet
une multipliation. Un omptage munitieux montre qu'il faut, ennégligeant
lestermes en
n 2
et enn
(equi est légitimedès quen
estassezgrand),n 3 /3
additions et
n 3 /3
multipliations pourla mise en÷uvre deGauss. Cealul utiliselaformuleP n
k=1 k 2 = n(n+1)(2n+1)/6
. Notonsennquelaméthodenéessite a priori de l'ordre de
n 2 /2
divisions dont le temps d'exéution estsupérieur à la multipliation ;aussi dans le alul de
e ik
(voir (1.2.2))il estdon très reommandé de aluler d'abord l'inverse de
a (k) kk
(e qui néessiteautotalseulement
n
divisions)etensuitedealuler lese ik
pouri ≥ (k + 1)
par multipliation.
Inversementlepassagedel'itération
(k+ 1)
àl'itération(k)
s'éritdon:a (k) ij = a (k+1) ij − e ik a (k+1) kj , k + 1 ≤ i, j ≤ n,
ara (k+1) kj = a (k) kj .
0
0 0
PSfragreplaements
L k = 1
1
1
−e ik , k + 1 ≤ i ≤ n
olonne
k
ligne
k
Figure 1.4: Desriptionde
L k
ave−e kk = 1
.Soit matriiellement
A (k) = L k A (k+1)
, aveL k
exhibée à la gure 1.4.Deprohe en prohe
A (1) = L 1 L 2 · · · L n−1 A (n)
. On observe que le produitL 1 L 2
s'érit ommeà laFigure 1.5. La première (resp. deuxième)olonneduproduitest onstituée dela olonnede
L 1
(resp.L 2
).0 0
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
0 0 0
0 0
PSfragreplaements
L 1 =
1
1 1
1 1
1
L 2 =
L 1 × L 2 =
Figure1.5:
Remarque 1.2.6. Attention ela n'est vrai que dans et ordre (
L 2 × L 1
reste triangulaire inférieure, mais ertains éléments de ses deux premières
olonnes sont des produits des élémentsde
L 1
etL 2
).On se onvainra maintenant aisément que le produit
L = Q n−1 i=1 L i
esttriangulaireinférieure (ave des
1
surladiagonale). Finalement onaA = A (1) = LA (n) = LU,
où
U
esttriangulairesupérieure. C'est,equel'onappelle,ladéompositionLU
de lamatrieA
.Onpeutdon eetuerfailement (étant donnéles struturesdesmatri-
es)les alulssuivants:
Ly = b U x = y .
Remarque1.2.7. Enpratique, dans leas d'unseulsystème àaluler,on
résout
U x = b (n)
,aveb (n)
aluléenoursdetriangularisation. Maissil'on doitrésoudre plusieurs systèmes ave la même matrieA
mais ave des se-onds membres diérents,il est évidemment très utile de garder en mémoire
la déomposition
A = LU
qui n'est faite qu'une seule fois, et de résoudreomme indiqué les systèmes triangulaires préédents pour les diérents se-
onds membres.
Cas du pivot partiel On montre (voir livre) que la stratégie de Gauss
ave pivot partiel revient à trouver la déomposition LU d'une ertaine
matrie
P A
oùP
est une matrie de permutation de lignes. Finalement onadonàrésoudre
Ax = b
,soitP Ax = P b
aveP A = LU
. Oneetuedon,defaçon immédiate, les aluls suivants:
Ly = P b U x = y .
Notons enn que le prix, en temps mahine, de la reherhe indispens-
able du pivot à haque étape peut-être relativement oûteux. Bien que le
nombre requisd'opérationsélémentaires soit seulement de l'ordrede
2n 3 /3
,e suroût altèrelaperformane de laméthode de Gausssielle est mesurée
seulement en nombred'op. él..
Casdu pivottotal Onmontre(voirlivre) quelastratégie deGaussave
pivot total revient à trouver la déomposition LU d'une ertaine matrie
P AQ
oùP
etQ
sont desmatriesde permutation.Calulde l'inverse d'unematrie Soitladéomposition
A = LU
delamatrie
A
. Considérons lesn
systèmes linéairesAu j = e j
,1 ≤ j ≤ n
,oùe j
est le jème veteur de la base anonique de
R n
. Pourj
xé, la solutionu j
représente lejème veteur olonnede lamatrie
A −1
. ChaundessystèmesAu j = e j
esttrès rapide àrésoudresiladéompositionA = LU
estonnue.Onpeutdondirequelealulde
A −1
estfailesiladéompositionA = LU
dela matrie
A
estonnue au préalable.Terminons l'étudede laméthode de Gausspar un résultat, quireprend
enpartie laremarque 1.2.3,quiarmequel'onpeuttoujours triangulariser
une matriearrée, qu'ellesoitrégulière ounon,par laméthode deGauss.
Théorème1.2.1. Soit
A
unematriearrée, inversibleounon. Ilexiste(aumoins) une matrie inversible
M
telle que la matrieM A
soit triangulaire supérieure.Preuve : On se plae dans le adre de la méthode de Gauss ave pivot
partiel. Ce résultat est déjà démontré lorsque la matrie
A
est inversible.Supposonsquelamatrie
A
soitsingulière. Pare quipréèdeonsaitquela matrieestsingulièresietseulementsi,àuneétapek
delatriangularisation, les élémentsα (k) ik
,k ≤ i ≤ n
, sont tous nuls (voir gure 1.3). Mais alorsα (k) kk = 0
etA (k+1)
est déjà de laformeA (k+2)
; il sut don de onsidérerP (k+1) = E (k+1) = I
pour ontinuer l'algorithme de Gauss (sahant mêmeque
A
est singulière), pour nalement trouver une matrieM
inversible(ave des
1
surladiagonalelorsqueα (k) kk = 0
) tellequeM A
soit triangulaire supérieure.Ainsi,dansleasoù
A
estsingulière, lamatrieM
,ommelamatrieL
de la déomposition
LU
obtenue dans le as oùA
est régulière, a toujoursundéterminant égal à
1
. Cependant lamatrie triangulairesupérieureM A
obtenue a alors un ertain nombre
m
de zéros sur sa diagonale, qui peu-vent être onsidérés omme des pivots nuls (par extension du mot pivot,
puisqu'ildésigne essentiellement unnombre nonnul).
Remarque1.2.8. Ondémontre quelerangd'unematrie
A
('est-à-dire le rangdesesveteurs olonnes)nehange pas par les opérationsélémentairessuivantes:
•
permutation dedeux lignes,•
multipliation d'uneligne par un salaire nonnul,•
additionà une ligne d'un multiple d'uneautre ligne.Ces opérations élémentaires sont elles de la méthode de Gauss. Ce qui
veutdire que la matrie triangulaire supérieure
U
obtenueparla méthodedeGaussa même rangque la matrie
A
. Orlerang deU
est égal à n-(nombrede zéros sur sa diagonale), autrement dit lerang de la matrie
A
est égal àn moins lenombre de pivots nulsdans la mise enoeuvre de la méthode de
Gauss. Ce nombre de pivots nuls pouvant se aluler (voir la preuve du
théorème 1.2.1). C'est la méthode de alul du rang d'une matrie par la
méthode de Gauss.
1.2.3 Méthode de Householder
Pourquoiétudieretteméthode? Indépendammentdesonintérêtthéorique,
ellepossèdedesqualitésintrinsèques,maisaussielleestindispensable,àtitre
d'illustration,à lamiseen oeuvre de laméthode QR dealuldesvaleurs
propresd'unematriequelonque,nonsymétriqueparexemple. Cetteméth-
odeQR estlaplusuniversellementutilisée,equijustieaumoinsl'intérêt
que l'on porte à la méthode de Householder qui onstruit une fatorisation
QU
de la matrieA
. Notons enore que la fatorisationQU
est préalableau alul des valeurs propres d'une matrie symétrique par la méthode de
Givens-Householder.
Onsupposetoujoursquelamatrie
A
estréelle. ParprinipelaméthodedeHouseholder ne peuttravailler quesur lesmatriesréelles etarrées.
Onvautiliserunetehnique généralequipermerdepasserd'unematrie
A
sans auunepartiularité à unematrie du typede laFigure1.6.Une matrie de Hessenbergsupérieure (resp. inférieure)est unematrie
triangulairesupérieure (resp. inférieure)ave lapremière sous-(resp. sur-)
diagonalenon nulle. C'est à partirdes deuxdernières formesque l'on peut
aluler lesvaleurspropres de lamatrie
A
. Ces misesen forme sont préal-ables au alul des valeurs propres de
A
, en préisant que pour la formetridiagonaleela estvraispéiquement lorsque
A
estsymétrique. À partir dela premièreforme on peutenore résoudrelesystèmeAx = b
.Dans e quisuit 'estessentiellement laonstrution, àpartir dela ma-
trie
A
,de lamatrie triangulairesupérieure quivanousintéresser.O
O
O O
PSfragreplaements
Triangulairesupérieure Hessenbergsupérieure Tridiagonale
Figure1.6:
Prinipe de la méthode Ontravaille ave des matries élémentaires
H
ditesdeHouseholder(dunomdesoninventeur) dutype
H = I − 2uu T , u ∈ R n , u 6= 0
aveu T u = 1
soitkuk 2 = 1
. En pré-multipliant lamatrieA
pardesmatries suessivesde type
H
,on herhe à transformer lesystèmeen unsystèmetriangulaire supérieurqui luiest équivalent.Remarque 1.2.9. On vérie immédiatement que
Hu = u − 2u = −u
, equi signieque
−1
est valeurpropre simple deH
assoiée au veteurpropreu
.Lemme 1.2.1. La matrie
H
représente une symétriepar rapportà l'hyper-plan
P
orthogonal à udéni parP = {v; v T u = 0}
. De pluson adet(H) =
−1
.Preuve : On a, à la fois,
Hu = −u
et, siv ∈ P
,Hv = v − 2u(u T v) = v
.Don tout veteur de l'hyperplan
P
est onservé parH
et don1
est unevaleur propre de
H
de multipliité(n − 1)
assoié àv
, alors quele veteuru
orthogonal àP
est transformé parH
en son symétrique, à savoir queu
est un veteur propre deH
assoié à la valeur propre−1
. L'assertion du lemme est don démontrée. De surroît, e qui préède démontre quedet(H) = (−1)(1) n−1 = −1
.Propriétés de
H
• H T = H
, en eet on aH T = I − (2uu T ) T = H
, la matrieH
estsymétrique.
• HH T = I
,làenorelavériationestimmédiate. OnaHH T = H 2 = (I − 2uu T )(I − 2uu T ) = I − 4uu T + 4u(u T u)u T = I
aru T u = 1
parhypothèse.
Il en résulte que
H
est une matrie (dite élémentaire) orthogonale. On en déduit queH −1 = H T = H
, les matries inverses deH
sont aussi desmatriesde Householderélémentaires.
Construtionde la matrie
H
Lemme 1.2.2. (lemme-lefde la méthode) Soit
a ∈ R n
unveteur nonnul, ilexiste unematrie élémentaire orthogonaleH
etunnombre réelnonnulα
telsque
Ha = αe 1
, oùe 1
est lepremierveteur dela base anonique deR n
.Preuve : Supposons le problème résolu. Il existe don un veteur
u ∈ R n
et don une matrie orthogonale
H = I − 2uu T
tels quekHak 2 = kak 2
(en eet, si on note par
(., .)
désigne le produit salaire dansR n
, on akHak 2 2 = (Ha, Ha) = (H T Ha, a) = kak 2 2
arH
est orthogonale). Dès lors si le problème est résolu on a néessairementkHak 2 = kαe 1 k 2
avekHak 2 = kak 2
,ommeke 1 k 2 = 1
il vient don:|α| = kak 2 .
(1.2.3)Comme
Ha = αe 1
il vient(I − 2uu T )a = αe 1
soit,en posantµ = 2u T a
,−µu = αe 1 − a
etdonµu = a − αe 1 .
(1.2.4)Prémultiplionsenn(1.2.4)par
2a T
,en tenantomptede (1.2.3)ilvient2a T µu = µ 2 = 2α 2 − 2α(a T e 1 ).
En notant
a 1
lapremière omposante du veteura
on adonµ 2 = 2α(α − a 1 ).
(1.2.5)Alors, le veteur
a
étant donné, (1.2.3) donneα
au signe près :α =
±kak 2 .
Ensuite (1.2.5)donne lesalaireµ
(ave enoreune indéterminationdusigne). Enn(1.2.4) dénileveteur
u
.Vérions que le veteur
u
et le matrieH
ainsi onstruits ont les pro-priétésrequises. Onsupposeque
µ 6= 0
,equirevientàsupposer,leveteura
étantnonnulparhypothèse,queleveteura
possèdeuneomposantenonnulle autre que
a 1
(sinon le problème est résolu etH = I
). Alors, omptetenude (1.2.4) et(1.2.5)
kuk 2 2 = (µu) T (µu)
µ 2 = (a − αe 1 ) T (a − αe 1 ) 2α(α − a 1 ) ,
ouenore d'après(1.2.3)
kuk 2 2 = α 2 − 2αa 1 + α 2
2α(α − a 1 ) = 2α(α − a 1 ) 2α(α − a 1 ) = 1,
e quiimplique que
kuk 2 = 1
,leveteuru
alanorme requise.D'autrepart, par ladénition de
µ
,onaHa = (I − 2uu T )a = a − uµ
etdon,d'après(1.2.4),
Ha = αe 1
,lamatrieH
ainsionstruite onvient.L'algorithme delaonstrutionde
H
utilisesuessivement deuxextra- tions de raine arrée, une pourα
, l'autre pourµ
. Cet algorithme peut sesimplierenposant
ν = µ 2 /2
etv = µu
. Alors,ensupposanttoujoursµ 6= 0
,ona
H = I − vv T /ν
etl'algorithmedevient
|α| = n
P
i=1
a 2 i 1 2
ν = α(α − a 1 ) v = a − αe 1
(1.2.6)
oùon amaintenant àfaire uneseule extrationderaine arrée. L'ordrede
alulduveteur
v
etdu salaireν
est indiérent.Ilfautleverl'indéterminationsurlesignede
α
. Pourminimiserleserreursd'arrondi,ilfautquele
ν
(quiintervient audénominateur) soitleplusgrand possible en module, e qui entraîne queα
doit être du signe de−a 1
. Onprenddon
α = −sgn(a 1 )
n
X
i=1
a 2 i
! 1 2
.
(1.2.7)e quiimplique d'après(1.2.6)
ν = −α
a 1 + sgn(a 1 )
n
X
i=1
a 2 i
! 1 2
.
(1.2.8)Enrésumé,
a 1
étant,rappelons-le,lapremière omposanteduveteura
,lealulde lamatrie
H = I − vv T /ν
s'eetue par l'algorithmesuivant :
α = −sgn(a 1 ) n
P
i=1
a 2 i 1 2
ν = −α a 1 + sgn(a 1 ) n
P
i=1
a 2 i 1 2 !
v = a − αe 1
.
(1.2.9)Mise en ÷uvre de la méthode de Householder Il est néessaire
d'avoir un algorithme de alul du produit d'un veteur
d
quelonque parla matrie
H
. On posec = Hd = (I − vv T /ν)d
, alorsc = d − βv/ν
aveβ = v T d =
n
P
i=1
v i d i
,d'oùnalementc = d − γv
aveγ = β/ν
.En résumé, soit la matrie de Householder
H = I − vv T /ν
, lealul duproduitd'unveteur
d
par lamatrieH
sefaitsimplement par l'algorithme suivant
β = v T d = P n
i=1
v i d i γ = β/ν
c = Hd = d − γv
(1.2.10)
Algorithmede Householder Soit
A
une matrierégulière que l'onnoteA (1)
ave lanotation suivanteA (1) =
a (1) 11 · · · a (1) 1n
.
.
.
.
.
.
a (1) n1 · · · a (1) nn
(1.2.11)onnote
a
lepremierveteur olonne de lamatrieA (1)
.Préisons seulement la première étape de l'algorithme. On onstruit la
matrie
H (1) = I − vv T /ν
telle queH (1) a = αe 1
par l'algorithme (1.2.9).Alorsona
A (2) = H (1) A (1) =
a (2) 11 a (2) 12 · · · a (2) 1n 0 a (2) 22 · · · a (2) 2n
.
.
. .
.
.
.
.
.
0 a (2) n2 · · · a (2) nn
(1.2.12)
ave
a (2) 11 = α
et|α| = kak 2 6= 0
ar la matrieA (1)
est régulière par hy-pothèse. Dansettepremière étapetouslesélémentsdelapremièreolonne
de
A (1)
sontannulésàl'exeptiondesonpremierélément quionentretoutle poids (la norme eulidienne) du veteur assoié à la première olonne.
Enn les olonnes de
A (2)
, à partir de la deuxième, sont alulées par lesformules (1.2.10).
Soit
A (2) 22
lasous-matrie(a (2) ij ), 2 ≤ i, j ≤ n
,deA (2)
. Commedet(H (1) ) =
−1
on a dondet(A (2) ) = − det(A (1) ) 6= 0
arla matrieA (1)
est régulière.D'autre part
det(A (2) ) = a (2) 11 det(A (2) 22 )
et les assertions préédentes im-pliquentque
det(A (2) 22 ) 6= 0
. LamatrieA (2) 22
estdonrégulièreetleproessusde triangulation peut sepoursuivre sur ette matrie en onsidérant main-
tenant sa première olonne. On voit que les éléments de la première ligne
de
A (2)
ne sont plus onernés par la suite de la triangulation. L'examen du passage deA (r−1)
àA (r)
est fait dans le livre ave toutes les formulesrequises.
L'analysematriielle delaméthodede Householderest partiulièrement
simple. Ona
A (n) = H (n−1) × H (n−2) × · · · × H (1) × A (1) ,
(1.2.13)ave
A (n)
triangulaire supérieure. La matrieA (n)
estinversible siA = A (1)
estinversible.
Remarque1.2.10. Si
A = A (1)
n'estpasinversible, on trouvera unveteur nul à une étaper
; e veteur étant le premier veteur olonne d'une desmatries
A (r) 22
. Dans e as, ler ieme
terme de la diagonale est un zéro, onprend
H (r) = I
et on peut ontinuer la triangulation jusqu'à la n. La matrieA (n)
a alors la onguration dela Figure 1.7.0
PSfragreplaements
A (n) = r ieme
ligneFigure1.7:
Remarque1.2.11. LaméthodedeHouseholdereststablenumériquement,
au sens qu'elle ne dégrade pas le onditionnement initial de la matrie
A
.Elle utilise en eet des matries de Householder
H
orthogonales et on sait (Théorème 1.2 des ompléments en ligne) que le onditionnementcond 2 (A)
est invariantpar transformation unitaire.
Remarque 1.2.12. Comme pour la méthode de Gauss (voir la Remarque
1.2.4),laméthodedeHouseholder estunoutilalgorithmique d'évaluation du
déterminantd'une matrie. Il est lair,d'après (1.2.13),que l'ona :
[H (1) ] −1 × · · · × [H (i) ] −1 × · · · × [H (n−1) ] −1 A (n) = A (1) = A,
(1.2.14)omme l'inverse d'une matrie orthogonale de déterminant
−1
est une ma-trie orthogonale dedéterminant
−1
, ilvient :det(A) = (−1) n−1 det(A (n) ),
dès lors
det(A) = (−1) n−1
a (2) 11 × · · · × a (n+1) n,n
.
(1.2.15)L'algorithme deHouseholderdonne unedémonstration deladéomposi-
tion, diteQU, d'unematrie.
Théorème 1.2.2. Pour toute matrie
A
, il existe une matrie orthogonaleQ
, produit de(n − 1)
matries orthogonales élémentaires (les matries de Householder), etune matrie triangulaire supérieureU
, telles queA = QU
.Preuve : Elleest failedansleontexte. Onad'après(1.2.14)
A = A (1) = [H (1) ] −1 × · · · × [H (n−1) ] −1 A (n) .
Posons
Q = [H (1) ] −1 × · · · × [H (i) ] −1 × · · · × [H (n−1) ] −1
,noussavons(voirles propriétés de
H
àla Setion 1.2.3)que[H (i) ] −1 = H (i)
(ave éventuelle- mentH (i) = I
),alorsQ = H (1) × · · · × H (i) × · · · × H (n−1)
;posonsde plusU = A (n)
quiest triangulairesupérieure, laonlusion suit.Remarque 1.2.13. Comme pour la méthode de Gauss on peut ompter
exatement lenombre d'op. él. requises pourlamise en÷uvre delaméthode
de Householder. On vérie qu'il faut de l'ordre de
2n 3 /3
additions et de2n 3 /3
multipliations pour son fontionnement,elle est don deux fois plus hère que la méthode de Gauss. Notons aussi qu'elle néessite le alul den
raines arrées. Cependant la méthode ne demande auune stratégie depivot, on observe que son prinipe évite même toute idée de pivotement. Or
rappelonsque la reherhe dupivot est néessaire dans la méthodedeGauss,
e qui a évidemment un oût non négligeable. Armer que Householder est
deux foisplus hère que Gaussest don à nuaner.
Intérêts de ette méthode Pour omplèter la dernière remarque il est
utilederéapituler sesavantages.
•
C'est une méthode stable au sens où nous l'avons entendu à la Re-marque1.2.11.
•
Par ette méthode on peut toujours triangulariser une matrie quel- onque,singulièreou non.•
Siononstruit unematrieH
telleque,toutveteura ∈ R n
peutêtretransformé en une ombinaison linéaire de la forme
Ha = αe 1 + βe 2
,où
e 1
ete 2
sont les deux premiers veteurs de la base anonique deR n
, alors on peut transformerA
, en la prémultipliant parH
, en unematrie du type Hessenberg supérieur. L'algorithme de onstrution
d'unetellematrie
H
utilise largementles idéespréédentesetilestàpeine plusompliqué.
•
Par ette méthode on peut dès lors tridiagonaliser une matrie. Ilsutdepré-etdepost-multiplierlesmatries
A (r)
suessivespardesmatries onvenables (qui transforment tout veteur
a
en la sommeαe 1 + βe 2
),on imagineassez naturellement leproédé!Mentionnonsquelesdeuxdernièrestransformationsdelamatrie
A
sontutiliséesdansertains algorithmes dealuldesvaleurspropres de
A
. C'estune étapepréalable àe alul.