• Aucun résultat trouvé

3 e Ax = b

N/A
N/A
Protected

Academic year: 2021

Partager "3 e Ax = b"

Copied!
18
0
0

Texte intégral

(1)

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

(2)

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 leveteur

b ∈ R n

,trouverle veteur

x ∈ 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 souhaitable

de 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éments

omplexes (

a i,j ∈ C

). Résoudre le système linéaire omplexe

Az = b

b ∈ C n

et

A ∈ C n,n

revient à trouver

z ∈ C n

sous la forme

z = x + iy

(x, y) ∈ R n × R n

. En déomposant la matrie sous la forme

A = A 1 + iA 2

A 1 ∈ R n,n

et

A 2 ∈ R n,n

et le seond membre

b ∈ C n

sous la forme

b = b 1 + ib 2

(b 1 , b 2 ) ∈ R n × R n

, on est onduit à résoudre un système

linéaire réel d'ordre

2n

en les inonnues

x

et

y

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

la matrie

A

est retangulaire, à savoir : trouver

x ∈ R p

tel

que

Ax = b

A ∈ R n,p

et

b ∈ R n

. Mais alors l'analyse matriielle de laméthode ne fournit pas lafameuse déomposition

LU

de la matrie

A

,

L

est une matrie triangulaire inférieure ave des

1

sur la diagonale et

U

est une matrie triangulaire supérieure. Cette déomposition

LU

étant

indispensable, 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'entier

n

peutêtre très grand;pour ertains gros

problèmes lenombre

n

est del'ordre du million,voire plus.

(3)

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

,soit

0.00001y = 0.00001

d'où

y = 1

et

x = 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

et

x = 10

, qui est loin d'être voisine de la solution

préé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

de

A

. 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 jamais

A −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.

(4)

Ilestfailedeompterlenombred'opérationsélémentaires(additions et multipliations) que l'on utilise. Ces méthodes sont dites diretes

arellesalulentlasolutionenunnombreni(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)

,

A k

est la matrie arrée obtenue en

remplaçant la

k eme

olonne de

A

par le le veteur

b

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 exemplesi

n = 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'ordre

degrandeur), 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 pose

A = A (1) = (a (1) ij )

. On suppose don que

det(A (1) ) 6= 0

. On souhaite que

a 11 (1) 6= 0

. Si tel n'est pas le as, on pré-

multiplie

A

par unematriedepermutationélémentaire

P λ,µ

ad-ho, 'estle

pivotage. L'introdution (éventuelle) de lamatrie

P λ,µ

n'arien à voirave

larégularitéde

A

. Soitdon

A (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 des

matriesde 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 matrie

A

; omme la matrie

A

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ée

par

a (1) ζ 1 ,1 6= 0

. Si

a 11 (1) 6= 0

le pivotage ne semble pas néessaire a priori et

l'on peutroire qu'il sut de poser

P 1,ζ 1 = I

. Mais sur ordinateur on tra-

(5)

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 notre

loutionpresque toujours)où

a (1) 11

estleplusgrand élément enmoduledes

élémentsdelapremièreolonne,iln'estpasnéessairedefaireunepermuta-

tiondeslignes1et

ζ 1

,equirevientmatriiellement àfaire

P 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. Soitdon

A (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ère

olonne à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)

ave

det(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 si

P

est une matrie de permutation élémentaire alors

det(P ) = −1

(voir livre). On a don

det(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. Comme

det(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 matrie

A ˜ (2)

est régulière, sapremière

(6)

olonne 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 de

ellede

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)

. Àlande

l'algorithme(en

n

étapes)on obtient un systèmedutype

U x = b (n) ,

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'exemplesuivantvanous

enonvainre.

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.

(7)

Que faitl'algorithmesans stratégie de pivot ?

Comme

a (1) 11 = 10 −4 6= 0

nouspouvonsommener a priorilealulave

onane, sans prémultipliation par une matrie de permutation (e qui

revient à prendre

P = I

). Après multipliation par lamatrie

E (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 est

orret. 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

,lamatrie

E (1)

s'érit

E (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 le

système

x + y ≎ 2 y ≎ 1 ,

il vient don

y ≎ 1

d'où, en reportant dans la première équation

x ≎ 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 (terme

diagonal inlus), en module, de la olonne dont on herhe à annuler

lestermes sous-diagonaux.

(8)

pivot total : on prend le plus grand élément, en module, de toute

la sous-matrie

A ˜ (2)

(resp.

A ˜ (k)

) à l'étape 2 (resp.

k

) et on utilise

lespermutationsonvenables (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

est

ré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, de

PSfragreplaements

α (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'entier

l

étant le nombre de permuta-

tions de lignes (i.e. le nombre de pivotages) eetuées jusqu'à l'étape

k

de

l'algorithme. Ainsi, si la matrie

A(= A (1) )

est singulière, à une ertaine étape

k

la matrie

A ˜ (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 que

det(A) = (−1) p det(A (n) )

, lamatrie

A (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 la

mé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ère

(9)

mulesgénéralesdelamultipliationde

A (k)

par lamatrie

E (k)

,donnant les

termesde lamatrie

A ˜ (k+1)

(Figure 1.3).

a (k+1) ij = a (k) ij +e ik a (k) kj , k+1 ≤ i, j ≤ n,

ave

e ik = − a (k) ik

a (k) kk , k+1 ≤ i ≤ n.

(1.2.2)

Notonsqueles

k

premièreslignesde

A (k)

sontonservéesetquelestermes

dela

(k) e

-olonnede

A (k+1)

,au-dessousde

a (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)

U

est une matrie triangulaire supérieure se faitapprox- imativement en

n 2

op.él. (un ordre de grandeur de moins que l'algorithme de triangulation proprement dit). Notons que les permutations d'éléments

ne 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 en

n

(equi est gitimedès que

n

estassezgrand),

n 3 /3

additions et

n 3 /3

multipliations pourla mise en÷uvre deGauss. Cealul utiliselaformule

P n

k=1 k 2 = n(n+1)(2n+1)/6

. Notonsennquelaméthode

néessite a priori de l'ordre de

n 2 /2

divisions dont le temps d'exéution est

supérieur à la multipliation ;aussi dans le alul de

e ik

(voir (1.2.2))il est

don très reommandé de aluler d'abord l'inverse de

a (k) kk

(e qui essite

autotalseulement

n

divisions)etensuitedealuler les

e ik

pour

i ≥ (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,

ar

a (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

.

(10)

Soit matriiellement

A (k) = L k A (k+1)

, ave

L 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 produit

L 1 L 2

s'érit ommeà laFigure 1.5. La première (resp. deuxième)olonne

duproduitest 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

et

L 2

).

On se onvainra maintenant aisément que le produit

L = Q n−1 i=1 L i

est

triangulaireinférieure (ave des

1

surladiagonale). Finalement ona

A = A (1) = LA (n) = LU,

U

esttriangulairesupérieure. C'est,equel'onappelle,ladéomposition

LU

de lamatrie

A

.

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)

,ave

b (n)

aluléenoursdetriangularisation. Maissil'on doitrésoudre plusieurs systèmes ave la même matrie

A

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ésoudre

omme 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

P

est une matrie de permutation de lignes. Finalement on

(11)

adonàrésoudre

Ax = b

,soit

P Ax = P b

ave

P 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

P

et

Q

sont desmatriesde permutation.

Calulde l'inverse d'unematrie Soitladéomposition

A = LU

dela

matrie

A

. Considérons les

n

systèmes linéaires

Au j = e j

,

1 ≤ j ≤ n

,

e j

est le jème veteur de la base anonique de

R n

. Pour

j

xé, la solution

u j

représente lejème veteur olonnede lamatrie

A −1

. Chaundessystèmes

Au j = e j

esttrès rapide àrésoudresiladéomposition

A = LU

estonnue.

Onpeutdondirequelealulde

A −1

estfailesiladéomposition

A = 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(au

moins) une matrie inversible

M

telle que la matrie

M 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étape

k

delatriangularisation, les éléments

α (k) ik

,

k ≤ i ≤ n

, sont tous nuls (voir gure 1.3). Mais alors

α (k) kk = 0

et

A (k+1)

est déjà de laforme

A (k+2)

; il sut don de onsidérer

P (k+1) = E (k+1) = I

pour ontinuer l'algorithme de Gauss (sahant même

que

A

est singulière), pour nalement trouver une matrie

M

inversible

(ave des

1

surladiagonalelorsque

α (k) kk = 0

) telleque

M A

soit triangulaire supérieure.

Ainsi,dansleasoù

A

estsingulière, lamatrie

M

,ommelamatrie

L

de la déomposition

LU

obtenue dans le as

A

est régulière, a toujours

undéterminant égal à

1

. Cependant lamatrie triangulairesupérieure

M A

(12)

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émentaires

suivantes:

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éthodede

Gaussa même rangque la matrie

A

. Orlerang de

U

est égal à n-(nombre

de 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 matrie

A

. Notons enore que la fatorisation

QU

est préalable

au alul des valeurs propres d'une matrie symétrique par la méthode de

Givens-Householder.

Onsupposetoujoursquelamatrie

A

estréelle. Parprinipelaméthode

deHouseholder 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 forme

tridiagonaleela estvraispéiquement lorsque

A

estsymétrique. À partir dela premièreforme on peutenore résoudrelesystème

Ax = b

.

Dans e quisuit 'estessentiellement laonstrution, àpartir dela ma-

trie

A

,de lamatrie triangulairesupérieure quivanousintéresser.

(13)

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

ave

u T u = 1

soit

kuk 2 = 1

. En pré-multipliant lamatrie

A

par

desmatries 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

, e

qui signieque

−1

est valeurpropre simple de

H

assoiée au veteurpropre

u

.

Lemme 1.2.1. La matrie

H

représente une symétriepar rapportà l'hyper-

plan

P

orthogonal à udéni par

P = {v; v T u = 0}

. De pluson a

det(H) =

−1

.

Preuve : On a, à la fois,

Hu = −u

et, si

v ∈ P

,

Hv = v − 2u(u T v) = v

.

Don tout veteur de l'hyperplan

P

est onservé par

H

et don

1

est une

valeur propre de

H

de multipliité

(n − 1)

assoié à

v

, alors quele veteur

u

orthogonal à

P

est transformé par

H

en son symétrique, à savoir que

u

est un veteur propre de

H

assoié à la valeur propre

−1

. L'assertion du lemme est don démontrée. De surroît, e qui préède démontre que

det(H) = (−1)(1) n−1 = −1

.

Propriétés de

H

• H T = H

, en eet on a

H T = I − (2uu T ) T = H

, la matrie

H

est

symétrique.

• HH T = I

,enorelavériationestimmédiate. Ona

HH T = H 2 = (I − 2uu T )(I − 2uu T ) = I − 4uu T + 4u(u T u)u T = I

ar

u T u = 1

par

hypothèse.

Il en résulte que

H

est une matrie (dite élémentaire) orthogonale. On en déduit que

H −1 = H T = H

, les matries inverses de

H

sont aussi des

matriesde Householderélémentaires.

(14)

Construtionde la matrie

H

Lemme 1.2.2. (lemme-lefde la méthode) Soit

a ∈ R n

unveteur nonnul, ilexiste unematrie élémentaire orthogonale

H

etunnombre réelnonnul

α

telsque

Ha = αe 1

,

e 1

est lepremierveteur dela base anonique de

R 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 que

kHak 2 = kak 2

(en eet, si on note par

(., .)

désigne le produit salaire dans

R n

, on a

kHak 2 2 = (Ha, Ha) = (H T Ha, a) = kak 2 2

ar

H

est orthogonale). Dès lors si le problème est résolu on a néessairement

kHak 2 = kαe 1 k 2

ave

kHak 2 = kak 2

,omme

ke 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)ilvient

2a T µu = µ 2 = 2α 2 − 2α(a T e 1 ).

En notant

a 1

lapremière omposante du veteur

a

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étermination

dusigne). Enn(1.2.4) dénileveteur

u

.

Vérions que le veteur

u

et le matrie

H

ainsi onstruits ont les pro-

priétésrequises. Onsupposeque

µ 6= 0

,equirevientàsupposer,leveteur

a

étantnonnulparhypothèse,queleveteur

a

possèdeuneomposantenon

nulle autre que

a 1

(sinon le problème est résolu et

H = I

). Alors, ompte

tenude (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

,leveteur

u

alanorme requise.

D'autrepart, par ladénition de

µ

,ona

Ha = (I − 2uu T )a = a − uµ

et

don,d'après(1.2.4),

Ha = αe 1

,lamatrie

H

ainsionstruite onvient.

(15)

L'algorithme delaonstrutionde

H

utilisesuessivement deuxextra- tions de raine arrée, une pour

α

, l'autre pour

µ

. Cet algorithme peut se

simplierenposant

ν = µ 2 /2

et

v = µ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

α

. Pourminimiserleserreurs

d'arrondi,ilfautquele

ν

(quiintervient audénominateur) soitleplusgrand possible en module, e qui entraîne que

α

doit être du signe de

−a 1

. On

prenddon

α = −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 omposanteduveteur

a

,

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 par

la matrie

H

. On pose

c = Hd = (I − vv T /ν)d

, alors

c = d − βv/ν

ave

β = v T d =

n

P

i=1

v i d i

,d'oùnalement

c = d − γv

ave

γ = β/ν

.

En résumé, soit la matrie de Householder

H = I − vv T

, lealul du

produitd'unveteur

d

par lamatrie

H

sefaitsimplement par l'algorithme suivant

 

 

β = v T d = P n

i=1

v i d i γ = β/ν

c = Hd = d − γv

(1.2.10)

(16)

Algorithmede Householder Soit

A

une matrierégulière que l'onnote

A (1)

ave lanotation suivante

A (1) =

a (1) 11 · · · a (1) 1n

.

.

.

.

.

.

a (1) n1 · · · a (1) nn

(1.2.11)

onnote

a

lepremierveteur olonne de lamatrie

A (1)

.

Préisons seulement la première étape de l'algorithme. On onstruit la

matrie

H (1) = I − vv T

telle que

H (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 matrie

A (1)

est régulière par hy-

pothèse. Dansettepremière étapetouslesélémentsdelapremièreolonne

de

A (1)

sontannulésàl'exeptiondesonpremierélément quionentretout

le 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 les

formules (1.2.10).

Soit

A (2) 22

lasous-matrie

(a (2) ij ), 2 ≤ i, j ≤ n

,de

A (2)

. Comme

det(H (1) ) =

−1

on a don

det(A (2) ) = − det(A (1) ) 6= 0

arla matrie

A (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

. Lamatrie

A (2) 22

estdonrégulièreetleproessus

de 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 de

A (r−1)

à

A (r)

est fait dans le livre ave toutes les formules

requises.

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 matrie

A (n)

estinversible si

A = A (1)

estinversible.

Remarque1.2.10. Si

A = A (1)

n'estpasinversible, on trouvera unveteur nul à une étape

r

; e veteur étant le premier veteur olonne d'une des

matries

A (r) 22

. Dans e as, le

r ieme

terme de la diagonale est un zéro, on

prend

H (r) = I

et on peut ontinuer la triangulation jusqu'à la n. La matrie

A (n)

a alors la onguration dela Figure 1.7.

(17)

0

PSfragreplaements

A (n) = r ieme

ligne

Figure1.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 onditionnement

cond 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 orthogonale

Q

, produit de

(n − 1)

matries orthogonales élémentaires (les matries de Householder), etune matrie triangulaire supérieure

U

, telles que

A = 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(voir

les propriétés de

H

àla Setion 1.2.3)que

[H (i) ] −1 = H (i)

(ave éventuelle- ment

H (i) = I

),alors

Q = H (1) × · · · × H (i) × · · · × H (n−1)

;posonsde plus

U = 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 de

(18)

2n 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 de

n

raines arrées. Cependant la méthode ne demande auune stratégie de

pivot, 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 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 unematrie

H

telleque,toutveteur

a ∈ R n

peutêtre

transformé en une ombinaison linéaire de la forme

Ha = αe 1 + βe 2

,

e 1

et

e 2

sont les deux premiers veteurs de la base anonique de

R n

, alors on peut transformer

A

, en la prémultipliant par

H

, en une

matrie 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. Il

sutdepré-etdepost-multiplierlesmatries

A (r)

suessivespardes

matries onvenables (qui transforment tout veteur

a

en la somme

αe 1 + βe 2

),on imagineassez naturellement leproédé!

Mentionnonsquelesdeuxdernièrestransformationsdelamatrie

A

sont

utiliséesdansertains algorithmes dealuldesvaleurspropres de

A

. C'est

une étapepréalable àe alul.

Références

Documents relatifs

Algorithmes pour le calcul de toutes les valeurs propres d’une matrice M´ ethode de la puissance it´ er´ ee... G´ en´ eralit´ es, outils matriciels Matrices

Huvent, Toutes les mathématiques – Cours, exercices corrigés – MPSI, PCSI, PTSI, TSI, Ellipses, 2004..

Si une matrice A est diagonalisable, alors lorsqu’on la diagonalise, on obtient une matrice diagonale dont les coefficients diagonaux sont les valeurs propres de A...

COROLLAIRE : Si X n'est valeur propre d'aucun des problèmes (P) relatifs aux tronquées des matrices A et B au rang h, le nombre de changements de signe dans la suite (de Sturm)

[r]

En effet, on a vu que le rang est invariable

Repr´ esenter g´ eom´ etriquement, dans le plan muni d’un rep` ere orthonorm´ e, les points ayant pour affixes les racines n-i` emes de l’unit´ e (pour n compris entre 2

Les points ayant ces affixes forment un polygone régulier de centre 0 (segment, triangle équilatéral, carré, pentagone régulier, hexagone régulier pour n = 2,.. On peut mul-