32
Cours de Calcul numérique MATH 031 G. Bontempi, A. da Silva Soares, M. De Wulf Département d'Informatique Boulevard du Triomphe - CP212 http://www.ulb.ac.be/di

Cours de Calcul numérique MATH 031 - ulb.ac.be · • Si A est réelle et symétrique, la convergence de la suite νk vers 1 est quadratique par rapport a | 2 / 1 | . • La méthode

Embed Size (px)

Citation preview

Cours de Calcul numér ique MATH 031

G. Bontempi,

A. da Silva Soares,

M. De Wulf

Département d'Informatique

Boulevard du Triomphe - CP212

http://www.ulb.ac.be/di

2

• Valeurs propres en pratique.

• Localisation.

• Méthode de la puissance.

3

Compressed image. Size=29280 Normalised=0.18541

50 100 150 200 250 300

50

100

150

200

250

300

350

400

450

Compression d’ image (PCA)

» s_pca

Original uncompressed image. Size=157920 Normalised=1

50 100 150 200 250 300

50

100

150

200

250

300

350

400

450

4

PCA: Pr incipal component analysis1. Image comme une matrice A(N�n) de pixels.2. Normalisation de la matrice A� A*.3. Calcul de la matrice de corrélation C(n�n) = (A*)T A*

4. Calcul des valeurs et de la matrice V(n�n) des vecteurs propres de C.

5. Mise en ordre décroissante des valeurs propres et des vecteurs propres correspondants.

6. Sélection d’un sous-ensemble de h<n valeurs/vecteurs propres.

7. Transformation de la matrice A* dans une matrice

compressée de taille (N�h).

T

hnhn VVAA )()(

*^

*

××=

5

x1

x2

Les valeurs propres �1 et �2 mesurent la variation des données dans les directions représentées par les vecteurs propres x1 et x2

N=18, n=2

6

Valeurs propres

Un nombre (réel ou complexe) � est une valeur propred’une matrice A et un vecteur non nul x est le vecteur propre correspondant ssi

xAx λ=

Propr iété. � est une valeur propre de A ssi elle est un zéro du polynôme caractéristique pA(λ)=det(λI-A)

Si A a une taille (n�n) , le polynôme est d’ordre n et par conséquent A a n valeurs propres complexes.

7

Quotient de Raylegh

Si le vecteur propre x est connu, la valeur propre �correspondante est donnée par

2

2xAxx

xxAxx T

T

T

==λ

8

Approximation des valeurs propres• Nous aborderons l’approximation des valeurs et des

vecteurs propres d’une matrice réelleA(n�n) .• Le racines du polynôme caractéristique

pA(λ)=det(λI-A)sont calculables analytiquement seulement pour n<5.

• Les méthodes numériques pour calculer le racines de pA(λ) sont typiquement mal conditionnées.

• Donc, il est conseilléd’utiliser des méthodes itératives pour l’estimation des valeurs propres.

• Afin d’accélérer la convergence de ces méthodes, il est utile avoir une idée de leur localisation.

9

Localisation|λ| ≤ ρ(A) ≤ ||A|| pour toute norme matricielle consistante. (voir TP)

– toutes les valeurs propres sont contenues dans un disque de rayon ||A|| centréà l’origine du plan complexe.

Théorème des disques de Gershgor in. Si A est une matrice (n×n) , alors

�≠==

≤−∈=⊆n

ijjijiii

n

ii

aazzRRA,11

|}|||:{,)( ��σ

ou les ensembles Ri sont appelés disques (ligne) de Gershgorin.

10

Etant σ(A) = σ(AT) , on a aussi

�≠==

≤−∈=⊆n

jiiijiii

n

ii

aazzCCA,11

|}|||:{,)( ��σ

ou les ensembles Ci sont appelés disques (colonne) de Gershgorin. Il ensuit

Théorème. (premier théorème de Gershgor in)

����

���

���

��∈∈∀

==�� �n

ii

n

ii

CRA11

),( λσλ

11

Théorème (second théorème de Gershgor in). Soient 1≤m ≤n et

Si S1� S2=�, alors S1 contient exactement mvaleurs propres de A, chacune étant comptée avec sa multiplicité algébrique, les autres valeurs propres sont dans S2.

� �m

i

n

miii

RSRS1 1

21,

= +===

12-15 -10 -5 0 5 10 15-15

-10

-5

0

5

10

15

Re(z)

Im(z

)

Noir: norme. Rouge: disques lignes. Verte: disques colonnes

Exemple localisation

���

���

−−=310

121

3210

A 0.6928i} 2.6562 9.6876,{)( ±=Aσ

���������

» s_ger s

13

Méthodes numér iques• Méthodes partielles

– calcul approché des valeurs propres extrémales

– utiles dans beaucoup d’applications• réseau électrique, mécanique quantique, sismologie

• analyse des méthodes itératives

– Exemple: méthode de la puissance

• Méthodes globales– calcul approché de tout le spectre.

– elles sont basée sur une séries de transformations de la matriceA.

– Exemple: méthode QR.

• Méthodes ad hoc pour matrices symétriques.

14

Valeurs et vecteurs propres

• Certaines méthodes de calcul des valeurs propres permettent également le calcul des vecteurs propres.– méthode de la puissance

• D’autres méthodes requièrent une étape supplémentaire.– méthode QR.

15

Matr ice diagonalisableSur base de la définition de valeur propre

nixAx iii ,...,1, ==λ

on obtient

Λ=− AXX 1

[ ]����

����

=Λ=

n

nxxxX

λ

λλ

0

0

et,...,, 2

1

21 �

Si les vecteurs propres sont linéairement indépendants, alors X est non singulière et

et A est dite diagonalisable (condition suffisante).

La propriété est aussi nécessaire.

oùΛ=XAX

16

Autres propr iétés• Si x est un vecteur propre de A, cx avec c∈� est encore un vecteur propre.

• Si A(n�n) est réelle et symétrique, alors ses valeurs propres sont réelles et la matrice X des vecteur propres est orthogonale.

• Si A(n�n) est symétrique et définie positive alors ses valeurs propres sont positives.

• Les vecteurs propres correspondants à des valeurs propres distinctes sont linéairement indépendants.

– A est diagonalisablessi ses valeurs propres sont distinctes.

• Si λ est une valeur propre de A, alors λ-1 est une valeur propre de A-1

.

• Si x est un vecteur propre de A, alors il est aussi un vecteur propre de de A-1

.

17

Méthode de la puissanceProcédure itérative pour trouver la valeur propre dominanted’une matrice A.Soit A(n×n) une matrice diagonalisableet soit X∈�n×n la matrice de ses vecteurs propres xi, i=1,…,n. Supposons les valeurs propres ordonnées de la façon suivante

nλλλλ ≥≥> ...

321

où λ1 a multiplicitéalgébrique égale à1. Idée: convertir la relation de base Ax=�x dans une procédure itérative.

18

Méthode de la puissance: version simplifiée

Soit q(0)=[1,…,1] T la valeur approchée initiale du vecteur propre x, alors on calcule l’approximation suivante par

)1()( −= kk Aqz

L’ idée de la méthode est d’ itérer jusqu’à la convergence. Etant donné qu’un vecteur propre est défini à une constante multiplicative près, on peut normaliser z(k)

)()()( / k

m

kk zzq =

où zm(k) est le composant de z(k) ayant le plus grand module.

Par conséquence qm(k) aura module 1.

19

Soit q(k-1) le vecteur normalisé qui approche le vecteur propre dominant à l’étape k-1 de la méthode. On calcule

)1()1()( −− == kkk qAqz λ

et zm(k)/ qm

(k-1) est une approximation ν (k) de la valeur propre.

)(

)()(

)1(

)()(

)1()(

k

m

kk

k

m

k

mk

kk

zzq

qz

Aqz

=

=

=

ν approximation de la valeur propre dominante

approximation du vecteur propre dominant

20

Exemple

[ ] 24111

2044

775

1721

1

)0( ==���

���

−= λTqA

[ ] [ ]Tm

T qzAqz 74.070.01,27201927 )1()1()1()0()1( ===== ν

[ ]TAqz 1611.1518.25)1()2( ==

[ ]63.060.01,18.25 )2()2()2( === qzmν

[ ]TAqz 42.1397.1231.24)2()3( ==

[ ]55.053.01,31.24 )3()3()3( === qzmν

��

21

Méthode de la puissance: version avancée

Soit A(n×n) une matrice diagonalisableet soit X∈�n la matrice de ses vecteurs propres xi, i=1,…,n. Supposons les valeurs propres ordonnées de la façon suivante

où λ1 a multiplicitéalgébrique égale à1.

Etant donné un vecteur initial q(0) ∈�n de norme euclidienne égale à1, la version complète de la méthode de la puissance est

( ) )()()(

2

)()()(

)1()(

/kTkk

kkk

kk

Aqq

zzqAqz

=== −

ν

nλλλλ ≥≥> ...

321

22

Analyse de la méthode de la puissance

On peut montrer que2

)0(

)0()(

qAqAq k

kk =

Etant A diagonalisableet ses vecteurs propres xi linéairement indépendantes, on peut écrire �

==

n

iiixq

1

)0( α

2,1~ )(

112 11

111

)0(

2111

1 1

)0(

==���

����

����

���+=⇔

⇔+===

�� �

=

== =

kqxxqA

xxxxAqA

kkn

ii

k

iikk

n

ii

k

ii

kn

i

n

ii

k

iii

k

i

k

λαλλ

ααλα

λαλαλαα

Le vecteur q(k) s’aligne le long de la direction du vecteur propre x1 quand k�∞

i

k

ii

k

iii xxAxAx λλ =⇔=Notons que

23

Analyse de la méthode de la puissance

Théorème. Soit A(n×n) une matrice diagonalisableavec les valeurs propres ordonnées de la façon suivante

1~lim xq

kk=

∞→

( ) ( ) ( ) ( ) )()()(2

2

)(

)()(

~~~

kkTk

k

kTk

qAqq

qAq ν== 1

)(lim λν =∞→

k

k

En supposant α1≠0, on peut montrer que

nλλλλ ≥≥> ...

321

Grâce au quotient de Raylegh

24

Convergence de la méthode de la puissance

• La convergence est d’autant plus rapide que le quotient

|�2 | / | �1| est petit.

• Si |�2|≈| �1| la méthode est très lente. Elle n’est alors typiquement utilisée que pour avoir une estimation initiale.

• Si A est réelle et symétrique, la convergence de la suite νk

vers �1 est quadratique par rapport a |�2/ �1| .

• La méthode ne converge pas si les deux valeurs propres dominantes �1 et �2 sont complexes conjuguées.

25

Méthode de la puissance inverseSoit A(n×n) une matrice diagonalisableet soit X∈�n×n la matrice de ses vecteurs propres xi, i=1,…,n.

Soit (Mµ)-1=(A-µI)-1. Etant donnéque

),...,(diag)(1

11 µµµIXµIAXXMXnµ−−=−Λ=−= −− λλ

la matrice Mµ est aussi diagonalisableet ses valeurs propres sont ξi=(λi-µ). De plus, Mµ et A ont les mêmes vecteurs propres.

Donc les valeurs propres de (Mµ)-1 sont ξi=(λi-µ)-1.

La quantité µ est appelée shift.

Supposons qu’ il existe un entier m tel queminiµµ

im≠=∀−<− et,...,1λλ

26

Si λm est la valeur propre la plus proche de µ et λm a multiplicité1, alors ξm a multiplicité 1 et est la valeur propre de Mµ

-1 de plus grand module.

µλξ −=m

m1

Trouver la valeurs propres dominante de (Mµ)-1 permet le calcul de la valeur propre de A la plus proche a µ.

Sur la base de la propriétésus-mentionnée, la méthode de la puissance est capable d’estimer ξm et par conséquence λm.

Si µ=0, trouver la valeur propre dominante de (M0)-1 permet le calcul de la valeur propre la plus petite de A.

27

Méthode de la puissance inverse

( ) )()()(

2

)()()(

)1()(

/)(

kTkk

kkk

kk

Aqq

zzqqzµIA

==

=− −

σ

On doit résoudre à chaque itération k, un système linéaire de matrice Mµ.

En réalité, on calcule une seule fois la factorisation LU de Mµ et àchaque étape on n’a qu’à résoudre 2 systèmes triangulaires.

Notons que q(k) est une approximation du vecteur propre de Mµ-1qui est

associéà la valeur propre ξm. Mais, ayant Mµ-1 , Mµ et A les mêmes

vecteurs propres, on peut appliquer le quotient de Raylegh directement à la matrice A pour obtenir une approximation de λm.

approximation de la valeur propre λm

28

Propr iétés– La méthode de la puissance inverse est plus coûteuse que la

méthode directe.

– Elle peut converger vers n’ importe quelle valeur propre de A.

– Une fois µ fixé, la méthode de la puissance inverse converge vers la valeur propre de A la plus proche a µ.

– La convergence est d’autant plus rapide que λm est proche de µ.

– Si µ=0 la méthode de la puissance inverse converge vers la plus petite valeur propre de A.

– La méthode peut être utile pour raffiner une solution approchée et pour calculer le vecteur propre associé.

29

Code Quar teroni

• Méthode directe– f unct i on [ nu1, x1, ni t er , er r ] =power m( A, z0, t ol , nmax)

• où nu1 et x1 contient l’approximation de la valeur propre et du vecteur propre.

• Méthode inverse– f unct i on

[ si gma, x, ni t er , er r ] =i nvpower ( A, z0, mu, t ol , nmax)

30

Exemple ��

2 4 6 8 10 12 14 160

5

10

15

20

25

Iterations

Ext

rem

es e

igen

valu

es

� s_power

[ ] 824111

2044

775

1721

31

)0( ===���

���

−= λλqA

31

Conditionnement du problèmeSoit A une matrice diagonalisable et X la matrice des vecteurs propres. En ce qui concerne l’analyse de stabilité a priori, on a le théorème suivant:

Théorème Bauer-Fike. Si µ est une valeur propre de la matrice A+E, alors

ppAEµ κλ

σλ≤−

∈ )(min

ou κp(X)=||X||p||X-1||p est le conditionnement du problème aux valeurs propresde la matrice A.

Si X est orthogonale, le problème est bien conditionné.

32

Sommaire et références

• Définition de valeur/vecteur propre– TP et Chap. 1 (page 10-11)

• Localisation– par. 5.1

• Méthode de la puissance– par. 5.3

• Théorème Bauer-Fike– par. 5.2