Chapitre 5 Calcul des valeurs propres et des vecteurs propres 5.1 Introduction Une méthode de calcul des valeurs propres d une matrice est nécessairement une méthode itérative. En effet, tout polynôme peut être considéré comme le polynôme caractéristique de la matrice compagnon qui lui est associée. Donc s il était possible d avoir une méthode directe de calcul des valeurs propres, ceci signifierait que l on peut extraire toutes les racines d un polynôme de degré arbitraire en un nombre fini d opérations ce qui est impossible grâce notamment à la célèbre théorie de Galois. Une première classe de méthode itérative de calcul de valeurs propres d une matrice A, consiste à déterminer une suite de matrices inversibles {P k } k=1 telle que A k = P 1 k AP k R, qui converge vers une matrice R pour laquelle il est facile de calculer ses valeurs propres. Par exemple, il peut s agir d une matrice diagonale ou d une matrice triangulaire. Etant donné que les matrices sont tous semblables à la matrice originale A, ils admettent tous 59
Calcul des valeurs propres 60 le même polynôme caractétistique P A. P Ak = P A P R = P R = P A car la suite des P Ak voir par la suite. est constante. C est l idée de base de toutes les méthodes que nous allons Une deuxième classe de méthodes s applique à la recherche de certaines valeurs propres particulières comme la plus grande en module ou la plus petite. Ce sont les méthodes de puissance. 5.2 Méthode de Jacobi On fait l hypothèse que la matrice A est symétrique réelle, donc ceci assure des valeurs propres réelles. L idée consiste à trouver une suite de matrices orthogonales {O k } k=1 de sorte que la suite A k+1 = O t kao k D converge vers une matrice diagonale D qui va contenir, selon l introduction 5.1, les valeurs propres de A. A chaque étape, O k est choisie de façon à augmenter les termes diagonaux, i.e. la diagonale de A k+1 sera plus grande que celle de A k dans un sens qui reste à préciser. Voici le choix de la matrice de rotation O I 0 0 0 0 O = p 0 cos θ 0 sin θ 0 0 0 I 0 0 0 sin θ 0 cos θ 0 q 0 0 0 0 I
Calcul des valeurs propres 61 Par exemple, avec n = 5, p = 2 et q = 4 1 0 0 0 0 0 cos θ 0 sin θ 0 0 0 1 0 0 0 sin θ 0 cos θ 0 0 0 0 0 1 Posons B = O t AO. Pour calculer les entrées de B, interchangeons les lignes et les colonnes correspondant aux indices p et q. On obtient I 0 0 0 0.. I 0 0 0 0 0 I 0 0 0 Â pq a pi a qi 0 I 0 0 0 0 0 I 0 0.. 0 0 I 0 0 0 0 0 cos θ sin θ 0 a pp a pq 0 0 0 cos θ sin θ 0 0 0 sin θ cos θ 0 0 0 sin θ cos θ où Âpq désigne la sous-matrice extraite de A en retranchant les colonnes et lignes p, q. a pq a qq La multiplication par blocs conduit à b pp b pq = cos θ sin θ b pq b qq sin θ a pp cos θ a pq a pq a qq cos θ sin θ sin θ cos θ L identification des composantes donne b pp = a pp cos 2 θ + a qq sin 2 θ a pq sin 2θ b qq = a pp sin 2 θ + a qq cos 2 θ + a pq sin 2θ aussi b pq = a pq cos 2θ + a pp a qq 2 sin 2θ b ij = a ij b pi = a pi cos θ a qi sin θ i p, q b qi = a pi sin θ + a qi cos θ
Calcul des valeurs propres 62 Or, si a pq 0 il existe toujours un angle θ compris entre π/4 < θ π/4 définie par Cette valeur de θ rend b pq = 0 de sorte que cot 2θ = a qq a pp 2a pq = b 2 pp + b 2 qq = a 2 pp + a 2 qq + 2a 2 pq n b 2 ii = b 2 ii + b 2 pp + b 2 qq i=1 i p,q = a 2 ii + a 2 pp + a 2 qq + 2a 2 pq = i p,q n a 2 ii + 2a 2 pq > n i=1 i=1 a 2 ii Revenons à la méthode de Jacobi. Supposons que A k a déjà été calculé. Comment choisir la matrice unitaire O k de sorte que A k+1 = Ok t A ko k Méthode de Jacobi classique : on choisit le couple (p, q) tel que a (k) pq = max Méthode de Jacobi cyclique : on fait un balayage cyclique des éléments hors diagonaux. i j a(k) ij (1, 2), (1, 3),..., (1, n), (2, 3),..., (2, n),..., (n 1, n) Montrons la convergence de la méthode dans le cas classique. Pour cela, posons A k = D k + B k où D k représente la diagonale de A k. Montrons que B k 0. Considérons la norme de Frobenius B k E de B k et posons ɛ k = B k 2 E = i j a (k) ij 2
Calcul des valeurs propres 63 Or A k+1 E = A k E car la norme de Frobenius est invariante sous l action des matrices unitaires. Ceci se traduit par i,j ɛ k+1 + i a (k+1) ij 2 = i,j a (k) ij 2 a (k+1) ii 2 = ɛ k + i a (k) ii 2 Or on a que i a (k+1) ii 2 = i a (k) ii 2 + 2 a (k) pq 2 = ɛ k+1 = ɛ k 2 a (k) pq 2 De plus, par le choix du couple (p, q), on a l inégalité Mais 1 2 n(n 1) ɛ k n(n 1) a (k) pq 2 = < 1, d où le résultat. n(n 1) 2 (ɛ k ɛ k+1 ) = ɛ k+1 (1 2 n(n 1) )ɛ k Nous allons diviser la preuve en plusieurs étapes. Montrons que la suite D k est bornée. On a que D k E A k E A E Ainsi il existe au moins une sous-suite D nk convergente vers la matrice diagonale D. Or D nk D B nk 0 Or le polynôme caractéristique de A nk = A nk D est le même que celui de la matrice originale A, i.e. P A = P Ank P D ce qui entraîne que P D = P A, donc D contient les valeurs propres de A. Ceci montre aussi qu il y a un nombre fini de valeurs d adhérence de la suite D k. Montrons que D k+1 D k 0. On introduit la notation D k = (a (k) ii ). Selon la formule ci-dessus, on a que 0 i p, q a (k+1) ii a (k) ii = tan θ k a (k) pq i = p tan θ k a (k) pq i = q
Calcul des valeurs propres 64 Aussi a (k) pq B k E 0 et tan θ k 1 car π/4 θ k π/4. Donc a k+1 ii a k ii 0 i Si on a une telle suite D k possédant les propriétés suivantes : 1. D k est bornée, 2. D k possède un nombre fini de valeurs d adhérence, 3. D k+1 D k 0 alors la suite D k converge vers la matrice diagonale D formée des valeurs propres de A. Consulter Ciarlet [1] pour la preuve. Ce qui implique que toute la suite A k converge vers D car = A k = D k + B k D 0 = A k 0 Passons à la convergence des vecteurs propres par la méthode de Jacobi classique. Le résultat sera démontré que sous l hypothèse que toutes les valeurs propres sont distinctes. Par construction de la suite A k, on a que A k+1 = Ok t A ko k = Ok t Ot k 1 A k 1O k 1 O k =. = Ok t Ot k 1... Ot 2O1AO t 1 O 2... O k 1 O k = Ω t k AΩ k avec la notation Ω k = O 1 O 2... O k 1 O k. La suite Ω k vérifie les propriétés suivantes : La suite Ω k est bornée. Ω k E = I E = n k La suite Ω k possède un nombre fini de valeurs d adhérence.
Calcul des valeurs propres 65 En effet, la suite Ω k admet une sous-suite Ω nk qui converge vers Ω. Donc A nk = Ω t n k AΩ nk Ω t k AΩ k Ω t AΩ D = D = Ω t AΩ Ceci signifie que la matrice unitaire Ω contient les vecteur propres. Finalement, montrons que Ω k+1 Ω k 0. Le choix de l angle θ k est fournie par la relation tan 2θ k = a (k) qq 2a(k) pq a (k) pp Or a (k) pq 2 ɛ k B k 2 E 0. Ceci entraîne que a(k) pq 0. Aussi A k D = a (k) qq a (k) pp > δ k avec le choix de δ = 1 2 min i j λ i λ j. Donc θ k 0 et O k I. Or Ω k+1 Ω k = Ω k O k+1 Ω k = Ω k (O k+1 I) Ω k+1 Ω k 2 Ω k 2 O k+1 I 2 = O k+1 I 2 0 La suite Ω k vérifie toutes les hypothèses pour conclure à la convergence de la suite Ω k Ω où la matrice Ω contient les vecteurs propres. 5.3 Méthode de Givens-Householder L idée de la méthode consiste à trouver une matrice orthogonale P telle que P t AP soit tridiagonale. Cette étape constitue la méthode de Householder de réduction d une matrice symétrique à la forme tridiagonale.
Calcul des valeurs propres 66 Théorème 22 Etant donné une matrice A carrée symétrique, il existe une matrice P inversible produit de n 2 matrices de Householder telle que P t AP soit une matrice tridiagonale. Passons à la méthode de Givens pour calculer les valeurs propres d une matrice tridiagonale symétrique de la forme b 1 c 1 0.............. c 1 b 2 c 2 0.......... 0 c B = 2 b 3 c 3.............................. 0............ b n 1 c n 1 0............ c n 1 b n Supposons que les c i sont tous différents de zéros, i.e. c i 0 i. Si un des c i = 0, on peut partitionner la matrice en blocs diagonaux telles que l hypothèse c i 0 soit vérifiée. Le polynôme caractéristique de B vérifie des identités remarquables. Théorème 23 Les polynômes caractéristiques p i (λ) P Bi (λ) i = 0, 1,..., n vérifient : 1. On pose p 0 = 1. On a que p 1 = b 1 λ et la relation de récurrence p i (λ) = (b i λ)p i 1 (λ) c 2 i 1p i 2 (λ) i = 2, 3,..., n 2. 3. lim p i(λ) = λ i = 1, 2,..., n p i (λ 0 ) = 0 = p i 1 (λ 0 )p i+1 (λ 0 ) < 0 i = 1, 2,..., n 1 4. Le polynôme p i possède i racines réelles distinctes qui séparent les i + 1 racines de p i+1 pour tous les i = 1, 2,..., n 1.
Calcul des valeurs propres 67 Preuve de (1) : b 1 λ c 1 0......... c 1 b 2 λ c 2 0...... 0 c 2 b 3 λ c 3...................... 0.................. b i 1 λ c i 1 0.................. c i 1 b i λ = (b i λ) b 1 λ c 1 0......... c 1 b 2 λ c 2 0...... 0 c 2 b 3 λ c 3...................... 0.................. b i 2 λ c i 2 0.................. c i 2 b i 1 λ c i 1 b 1 λ c 1 0...... 0 c 1 b 2 λ c 2 0...... 0 c 2 b 3 λ c 3...................... 0.................. b i 2 λ 0 0.................. c i 2 c i 1 = (b i λ)p i 1 (λ) c 2 i 1p i 2 (λ) Preuve de (2) : par induction sur i. Le terme dominant λ i de p i est ( 1) i λ i λ = λ i λ i i pair i impair Preuve de (3) : Si p i (λ 0 ) = 0 = p i+1 (λ 0 ) = (b i+1 λ 0 )p i (λ 0 ) c 2 i p i 1 (λ 0 ) = p i+1 (λ 0 ) = c 2 i p i 1 (λ 0 )
Calcul des valeurs propres 68 donc de signes opposées. De plus. si p i+1 (λ 0 ) = 0, on aura p i+1 (λ 0 ) = p i (λ 0 ) = p i 1 (λ 0 ) = 0. Ce qui implique que p i 2 (λ 0 ) = 0 et ainsi de suite jusqu à p 0 (λ 0 ) = 0. Ceci est en contradiction avec le fait que p 0 1. Preuve de (4) : est une conséquence de (2) et (3). En fait la propriété (4) permet de trouver un intervalle [a, b] tel que p i (a)p i (b) < 0 ce qui nous assure l existence d une racine dans ]a, b[ du polynôme p i. Pour calculer cette racine, on peut utiliser la méthode de la bissection. 5.4 Méthode QR Cette méthode s applique aux matrices quelconques. Voici le principe de base de cette méthode. Posons A 1 = A. On écrit la factorisation QR de A 1 A 1 = Q 1 R 1 et on forme A 2 = R 1 Q 1 = Q t 1A 1 Q 1 A l étape k, A k = Q k R k on pose A k+1 = R k Q k = Q t ka k Q k Par induction, on obtient A k+1 = (Q 1 Q 2... Q k ) t A(Q 1 Q 2... Q k ) ce qui montre que A k+1 est semblable à A donc admet les mêmes valeurs propres. Théorème 24 convergence de la méthode QR
Calcul des valeurs propres 69 Soit A une matrice carrée inversible et ayant des valeurs propres différentes en module. C està-dire qu il existe une matrice P inversible vérifiant λ 1 P 1 AP =... et λ 1 > λ 2 >... > λ n > 0 λ n De plus, on fait l hypothèse que la matrice P 1 admet une factorisation LU, alors la suite A k telle que définie ci-dessus vérifie (A k ) ii λ i (A k ) ij 0 i = 1, 2,..., n j < i Remarques : 1. On ne peut rien dire sur la convergence de la partie supérieure j > i. 2. Si A est réelle et que les valeurs propres sont différentes en module, ceci entraîne que les valeurs propres sont tous réelles car sinon les valeurs propres complexes apparaissent par paires de racines conjuguées, donc de même module ce qui est exclu par hypothèse du théorème. Preuve : Posons Ω k = Q 1 Q 2... Q k et R k = R k... R 2 R 1. On a que A k+1 = Ω t kaω k L idée de la preuve consiste à étudier le comportement asymptotique de la suite Ω k. Pour cela, on va utiliser le fait qu on a déjà une factorisation QR de la matrice A k A... A (k fois) fournit par A k = Ω k R k En effet Ω 1 R 1 = Q 1 R 1 = A Ω 2 R 2 = Q 1 Q 2 R 2 R 1 = Q 1 R 1 Q 1 R 1 = AA = A 2 Ω 3 R 3 = Q 1 Q 2 (Q 3 R 3 )R 2 R 1 = Q 1 Q 2 (R 2 Q 2 )R 2 R 1 = Q 1 (Q 2 R 2 )(Q 2 R 2 )R 1 = (Q 1 R 1 )(Q 1 R 1 )(Q 1 R 1 ) = A 3
Calcul des valeurs propres 70 et ainsi de suite. Maintenant,nous allons chercher une autre factorisation QR avec R ii > 0 de sorte qu on pourra utiliser l unicité pour déduire le résultat final. λ 1 Posons P 1 = LU, P = QR et Λ =... λ n. Ceci entraîne que A k = P Λ k P 1 = QRΛ k LU = QR(Λ k LΛ k )Λ k U Or (Λ k LΛ k ) ij = k,l = λ k 1 i δ ik L kl δ λ k lj = ( λ i ) k L ij l λ j 0 i < j 1 i = j ( λ i λ j ) k L ij i > j car la matrice L est triangulaire inférieure et L ii = 1. = Λ k LΛ k I par hypothèse sur les λ i Λ k LΛ k = I + F k où F k 0 = RΛ k LΛ k = (I + RF k R 1 )R Les matrices I + RF k R 1 admettent une factorisation QR avec R ii > 0 car R est inversible I + RF k R 1 = Q k Rk La suite Q k étant borné, ceci implique l existence d une sous-suite convergente. Par abus de langage, on notera de nouveau cette suite par Q k Q. Donc, R k R avec Rii > 0
Calcul des valeurs propres 71 et I = Q R. Par unicité de la factorisation QR, on a que Q = R = I. On notera que toutes les sous-suites convergent vers la matrice identité I. Donc la suite entière converge vers I. Revenons à l expression de A k A k = Q(RΛ k LΛ k )Λ k U = Q( Q k Rk R)Λ k U = (Q Q k )( R k RΛ k U) qui est une autre factoristion QR de la matrice A k. Toutefois, rien garantie que le facteur R vérifie R ii > 0. Pour cela, intercalons une matrice diagonale D k avec (D k ) ii = 1 de sorte que la matrice triangulaire supérieure (D k Rk RΛ k U) ii > 0, i = 1,..., n. On peut donc conclure par unicité que Q Q k D k = Ω k Passons à l étape finale qui consiste à étudier la suite A k. On a car A = P ΛP 1 et P = QR. Or dont le résultat est de la forme A k+1 = Ω t ka k Ω k = (D k Q kq )(QRΛR 1 Q 1 )(Q Q k D k ) = D k Q krλr 1 Qk D k D k Q krλr 1 Qk RΛR 1 λ 1......... 0 λ RΛR 1 = 2...... 0......... 0...... λ n
Calcul des valeurs propres 72 D autre part (DkD k D k ) ij = [D k Q krλr ] 1 Qk D k Cette égalité se traduit par les relations ij = ( D k ) ii (D k ) jj (D k ) ij i = j (D k D kd k ) ii = (D k ) ii (RΛR 1 ) ii = λ i i = j (D k D kd k ) ij = ( D k ) ii (D k ) jj (D k ) ij 0 Remarques : 1. Dans le cas où plusieurs valeurs propres ont le même module (cas des valeurs propres complexes pour une matrice réelle), moyennant une hypothèse de factorisation LU par blocs par P 1, on peut montrer que le comportement asymptotique des matrices A k a l allure suivante. Par exemple λ 1 = λ 2 = λ 3 > λ 4 > λ 5 > λ 6 = λ 7 = λ 8 x x x x x x x x x x x x x x x x x x x x x x x x 0 0 0 x x x x x 0 0 0 0 x x x x 0 0 0 0 x x x x 0 0 0 0 x x x x 0 0 0 0 x x x x Les (A k ) ij ne converge pas nécessairement mais les valeurs propres de chaque sous-matrices convergent vers les valeurs propres du module considéré. 2. Dans la pratique, on commence par mettre la matrice A sous une forme plus simple dite
Calcul des valeurs propres 73 de Hessenberg x x...... x x x...... x A = 0 x.................. 0... 0 x x Cette mise préliminaire s effectue avec des matrices de Householder d une façon analogue à la réduction à la forme tridiagonale dans le cas symétrique. L avantage provient du fait que la suite A k reste sous la forme de Hessenberg. 5.5 Méthodes de puissance Supposons que l on désire calculer un seul vecteur propre correspondant à une valeur propre λ déjà connue. La méthode des itérations inverses est définie par u 0 = donné u k+1 = (A λi) 1 u k (5.1) où λ est une valeur proche de λ. Le calcul de u k+1 s obtient en résolvant le système linéaire (A λi)u k+1 = u k. Notons que la matrice A λi n est pas inversible si λ est une valeur propre de A. Voici comment la suite des u k peut être utilisé pour approcher un vecteur propre correspondant à la valeur propre λ. Théorème 25 Convergence de la méthode des itérations inverses Soit A une matrice carrée diagonalisable et λ une valeur propre de A. On se donne un nombre complexe λ vérifiant λ λ et λ λ < λ µ µ sp(a) \ {λ} (5.2)
Calcul des valeurs propres 74 De plus, supposons que le vecteur initial u 0 n est pas contenu dans le sous-espace propre associé à λ, alors est un vecteur propre lié à λ. (λ lim λ) k u k λ λ k u k = q Preuve : soit B = {p i } n i=1 une base de vecteurs propres de A associée aux valeurs propres {λ i } n i=1. On a que u 0 = n α i p i = α i p i + α i p i λ i =λ λ i λ i=1 = p + λ i λ α i p i Par hypothèse, p 0. u k = (A λi) 1 u k 1 (λ 1 λ) k 0... 0 = u k = (A λi) 0 (λ k u 0 = 2 λ) k 0........... k 0...... (λ n λ) n u k = (λ i λ) k α i p i i=1 = (λ λ) k u k = p + λ i λ = λ λ k u k p = (λ λ) k λ λ k u k u k u k = (λ i λ) k α i p i + i λ i =λ λ i λ(λ λ) k α i p i p u k = (λ λ) + α i p i k (λ λ i λ i λ) k p p = q (λ λ) k (λ i λ) k α ip i p et q fait partie du sous-espace propre associé à λ. B α 1 α n.. B
Calcul des valeurs propres 75 A noter que si λ > λ, on a que u k u k q. Sinon λ < λ, on a que ( 1) k u k u k Remarques : q. 1. En pratique, on ne sait pas si λ > λ ou λ < λ. Il faut étudier la convergence des deux suites u k u k ou bien ( 1) k u k u k 2. On sait qu il faut prendre λ λ. Par contre, selon l expression de (λ λ) k u k ci-dessus, il est préférable de prendre λ aussi voisin que possible de λ pour accélérer la convergence. Toutefois, la matrice A λi devient mal conditionné. 3. Si on choisit λ = 0, l hypothèse (5.2) devient λ < µ µ sp(a) \ {λ} ce qui revient à dire que la méthode itérative va converger vers le vecteur propre correspondant à la plus faible valeur propre en module. Algorithme de puissance inverse : u 0 = donné Au k+1 = u k 4. Prenons A 1 au lieu de A et aussi λ = 0. L hypothèse (5.2) s écrit maintenant 1 λ < 1 µ µ sp(a) \ {λ} ce qui est équivalent à µ < λ µ sp(a) \ {λ} donc l algorithme converge vers le vecteur propre de plus grand module. L algorithme s écrit. Algorithme de puissance ordinaire : u 0 = donné u k+1 = Au k
Calcul des valeurs propres 76 5. Pour calculer la valeur propre correspondant au vecteur propre q, il suffit de calculer son quotient de Rayleigh λ k = (Aq k, q k ) (q k, q k ) Si q k est une bonne approximation de q, alors λ k sera une bonne appproximation λ. 6. Finalement, l hypothèse sur u 0 est en général satisfaite car il est peu probable que la composante de u dans l espace propre correspondant à λ soit égal à zéro.