- Théorème de Perron-Frobenius
-
Pour les articles homonymes, voir Perron.
En algèbre linéaire et en théorie des graphes, le théorème de Perron-Frobenius, prouvé par Oskar Perron et Ferdinand Georg Frobenius, a d'importantes applications en théorie des probabilité (chaînes de Markov), en théorie des systèmes dynamiques, en économie (analyse entrée-sortie[1]), en théorie des graphes et dans l'aspect mathématique du calcul des pagerank de google[2].
Théorème de Perron Frobenius pour une matrice positive irréductible
Théorème de Perron Frobenius — Soit une matrice positive irréductible.
- Le rayon spectral ρ de A est une valeur propre simple de A et le sous-espace propre associé est une droite vectorielle engendrée par un vecteur (colonne) strictement positif.
- Si s et S sont respectivement le minimum et le maximum des sommes des éléments de chaque ligne de A on a .
Si alors ρ > 0. - Soit h le nombre de valeurs propres (complexes) de module ρ. Le spectre de A dans le plan complexe est invariant par la rotation de centre O et d'angle 2π / h.
En outre si h > 1 il existe une matrice de permutation S telle que [3] où les blocs diagonaux (nuls) sont carrés.
Démonstration(Dans toute la démonstration nous identifions naturellement ou à l'espace des matrices colonne réelles ou complexes)
- Désignons par S l'ensemble des vecteurs de non nuls et par S0 l'ensemble de ces vecteurs (colonne) strictement positifs.
Définissons l'application r de S dans par . On voit aisément qu'on a également .
- l'application r admet un point de maximum sur S.
L'application r est continue sur S0 puisqu'il s'agit alors simplement du minimum d'une famille finie d'applications continues . Cependant on ne peut affirmer la continuité sur S. Par ailleurs S et S0 ne sont pas compacts... La solution sera de montrer l'existence d'un point de maximum sur une partie compacte K de S0 et de vérifier ensuite que ce point réalise aussi le maximum sur S. Il suffira pour cela de montrer que (en fait égalité, évidemment).
La première chose consiste à remarquer que r est constante sur chaque demi-droite (ouverte) d'origine 0 incluse dans S. On peut par conséquent se limiter à travailler sur la partie D de S formée des vecteurs colonne de norme 1 (nous prendrons la norme ).
D est compact, mais on n'a pas encore la continuité de r sur D. C'est maintenant qu'intervient l'irréductibilité de A.
Montrons que l'ensemble K = (A + I)n − 1D satisfait à notre objectif ( K compact, r continue sur K et ).
Tout d'abord K est compact comme image du compact D par une application (linéaire) continue. Ensuite voyons que K est inclus dans S0, ce qui montrera bien la continuité de r sur K. En effet on sait que (A + I)n − 1 > 0 et il en résulte immédiatement que . Par conséquent r possède un point de minimum sur K. Enfin pour achever montrons que . En effet ce qui montre que r(W) est majoré par . Ainsi on a bien
Nous désignerons désormais par ρ la valeur maximale de r(X) trouvée ci-dessus et par vecteur extrémal tout vecteur X réalisant le maximum de r sur S.
- Tout vecteur extrémal est vecteur propre de A associé à la valeur propre ρ. Réciproquement tout vecteur propre positif relatif à ρ est extrémal.
Soit X un vecteur extrémal.Par définition . Supposons que . Posons Y = (A + I)n − 1X. Puisque et on a An − 1(AX − ρX) > 0, soit encore AY − ρY > 0, c'est-à-dire ρY < AY. On peut trouver ε > 0 tel que , ce qui contredit la maximalité de ρ.
Réciproquement si le vecteur positif X vérifie AX = ρX, en écrivant d’une part on voit que et d’autre part montre que . Ainsi r(X) = ρ et X est extrémal.
- Pour toute valeur propre (complexe) λ de est le rayon spectral de A.
En effet de AZ = λZ on tire . Donc .
- Tout vecteur extremal est strictement positif.
En effet si X est extrémal posons Z = (A + I)n − 1X. Comme et A irréductible on a Z > 0. Comme X est vecteur propre de A relatif à ρ (cf. ci-dessus) on a Z = (ρ + 1)n − 1X d'où on tire X = (ρ + 1)1 − nZ > 0.
- Pour tout vecteur propre (complexe) Z de A relatif à une valeur propre λ de module ρ, le vecteur | Z | (vecteur dont les composantes sont les modules de celles de Z) est un vecteur extrémal (et est donc strictement positif ). Il en résulte que chaque vecteur propre de A (éventuellement complexe) relatif à λ vérifiant | λ | = ρ a toutes ses composantes non nulles.
En effet de AZ = λZ on déduit immédiatement , ce qui entraîne par maximalité de ρ. D’où le résultat.
- Le sous-espace propre de A relatif à la valeur propre ρ est une droite vectorielle.
Supposons en effet que X et Y soient 2 vecteurs propres linéairement indépendants. On sait (cf. ci-dessus) que ces 2 vecteurs ont toutes leurs composantes non nulles. Il est possible de former une combinaison linéaire non nulle ayant par exemple la première composante nulle. Cette combinaison est ainsi un vecteur propre de A ayant une composante nulle, ce qui est contradictoire.
- ρ est une valeur propre simple de A.
Désignons par B(λ) la comatrice transposée de λI − A. Remarquons tout d'abord que le sous-espace propre relatif à étant de dimension 1 il en résulte que ρI − A est de rang n − 1 et que par suite il y a au moins un cofacteur non nul, ce qui montre que . De plus on sait que (λI − A)B(λ) = det(λI − A)I. En particulier (ρI − A)B(ρ) = 0, ce qui montre que les colonnes non nulles de B(ρ) sont des vecteurs propres de A relatives à ρ et par suite que ces colonnes non nulles sont toutes multiples de l'une d'entre elles et ont toutes leurs composantes non nulles et de même signe. Mais on a aussi B(ρ)(ρI − A) = 0, soit en transposant . Or tA est aussi une matrice positive irréductible puisque . Le raisonnement précédent appliqué à tA permet ainsi de montrer que les colonnes non nulles de tB(ρ) et donc les lignes non nulles de B(ρ) ont tous leurs éléments non nuls et de même signe. Finalement on en déduit facilement que B(ρ) a tous ses éléments non nuls et de même signe. En effet soient Bi,j(ρ) et Bk,l(ρ) deux éléments quelconques de B(ρ). Si Bi,j(ρ) = 0 toute sa ligne est nulle, donc Bi,l(ρ) = 0, par suite toute la colonne l est nulle et ainsi Bk,l(ρ) = 0. Finalement on en déduit que B(ρ) = 0, ce qui est exclu. D'autre part le signe de Bi,j(ρ) est celui de Bi,l(ρ) et finalement celui de Bk,l(ρ). Tous les éléments de B(ρ) sont bien non nuls et de même signe.
Posons Π(λ) = det(λI − A) (polynôme caractéristique). On a . En effet désignons par Ai(λ) la i_ème colonne de la matrice λI − A.
On a . Mais Ai'(λ) a tous ses éléments nuls sauf le i_ème qui est égal à 1. Le résultat s'ensuit immédiatement. On a donc puisque tous les éléments de B(ρ) sont non nuls et de même signe . Ceci montre bien que ρ est valeur propre simple de A[4].
- l'application r admet un point de maximum sur S.
- Soit X > 0 un vecteur propre relatif à ρ. On a donc . Soit q l'indice d'une composante Xj maximale. On a et en simplifiant par Xq > 0 on obtient . La démonstration est symétrique pour s en considérant cette fois l'indice d'une composante Xj minimale.
Si alors s > 0 (sinon il y aurait une ligne nulle, soit la j-ème et la matrice ne serait pas irréductible pusque dans le sommet j ne pourrait être l'origine d'un chemin aboutissant à un autre sommet). Donc dans ce cas .
- Disposition des valeurs propres dans le plan complexe.
- Démontrons d'abord l'équivalence entre les propositions suivantes:
(i) γ = ρeiϕ est une valeur propre de A.
(ii) Il existe une matrice D vérifiant | D | = I (unité) telle que D − 1AD = eiϕA.
(i) (ii). Soit Y un vecteur propre relatif à γ. On a vu ci-dessus (cf. (1)) que | Y | était un vecteur extremal et donc un vecteur propre relatif à ρ. On peut écrire Y = D | Y | où D est une matrice diagonale dont tous les éléments diagonaux sont de module 1. Par ailleurs on peut poser γ = ρeiϕ. On a donc AD | Y | = ρeiϕD | y | d'où e − iϕD − 1AD | Y | = ρ | Y | = A | Y | . Mais l'égalité e − iϕD − 1AD | Y | = A | Y | entraîne e − iϕD − 1AD = A. En effet Posons W = e − iϕD − 1AD. On voit immédiatement que . En écrivant l'égalité W | Y | = A | Y | pour la ligne et en tenant compte de | Wi,j | = Ai,j et | Y | > 0 on obtient le résultat demandé.
(ii) (i). Soit X un vecteur extrémal de A et posons Y = DX. On a AY = ADX = eiϕDAD − 1DX = eiϕDAX = eiϕDρX = eiϕρY = γY.
- Soit h le nombre de valeurs propres de A de module ρ. Considérons l'ensemble des nombres où γ est valeur propre de module ρ et montrons que cet ensemble est un sous-groupe du groupe multiplicatif des complexes de module 1. En effet si et sont 2 éléments de , en appliquant le préliminaire ci-dessus il existe D1 et D2 tels que et , ce qui entraîne soit , ce qui montre que qui est bien un sous-groupe du groupe des complexes de module 1. En fait ce sous-groupe étant d'ordre h et donc formé de racines h-ième de 1, il coïncide avec l'ensemble de ces racines h-ième.
Il existe donc D telle que . Si Π(λ) désigne le polynôme caractéristique de A qui est aussi celui de D − 1AD on peut écrire . Ceci montre bien l'invariance de l'ensemble des valeurs propres de A par la rotation de centre O et d'angle . En outre si γ est une valeur propre, la valeur propre est de même ordre de multiplicité que γ. En particulier toutes les valeurs propres de module ρ sont simples.
Supposons maintenant h > 1 et soit X un vecteur extrémal. D'après ce qui précède il existe une matrice diagonale Δ vérifiant | Δ | = I telle que ΔX soit vecteur propre relatif à et est défini à un facteur près, la valeur propre étant simple et le sous-espace propre étant par conséquent une droite vectorielle. Nous pouvons donc décider de choisir Δ de manière que sa première composante soit 1, ce qui assure l'unicité. Mais de la même manière ΔhX est vecteur propre relatif à , ce qui implique ΔhX = X et donc Δh = I puisque X > 0 et Δ diagonale. Il en résulte que les éléments diagonaux de Δ sont des racines h-ième de l'unité. Il existe donc une matrice de permutation
[3] telle que
avec étant des matrices unités. On a évidemment .
En posant de même on trouve .
Partitionnons suivant le même schéma que :
.
Nous allons montrer par récurrence que .
L'égalité est vraie pour k = 0. Supposons qu'elle le soit jusque k − 1 < s − 1. L'égalité donne en ce qui concerne la ligne de blocs N°. Comme les ne sont pas tous nuls puisque la matrice est irréductible , soit nl − 1 = k + ph. Mais comme et on en déduit p = 0 par élimination des cas p < 0 et p > 0.
Donc nl − 1 = k = (k − 1) + 1 = nk − 1 + 1. Ceci ne peut se réaliser que si nl − 1 est le successeur immédiat de nk − 1 dans la suite croissante des nj. Donc l − 1 = k − 1 + 1 = k et nl − 1 = nk = k, ce qui achève la récurrence.
D'autre part montre que si l − k n'est pas congru à 1 modulo h on a .
Il reste à prouver que s = h. Or en considérant la dernière ligne de blocs on ne peut avoir nl − 1 = l − 1 = s + ph que si p = − 1. En effet si on a l > s, ce qui est impossible et si également exclu. Donc l − 1 = s − h soit l = s − h + 1. Mais 0 < l = s − h + 1 et donc s > h − 1 soit . Comme on a évidemment on a s = h, ce qui a achève la démonstration.
Le théorème de Perron Frobenius est donc complètement démontré.
- Démontrons d'abord l'équivalence entre les propositions suivantes:
Applications pratiques
- Ce théorème permet de montrer, sous certaines conditions, qu'une chaîne de Markov sur un espace d'états fini converge en loi vers son unique mesure invariante.
- Le vecteur de Google utilisé lors du calcul des pagerank de google est un vecteur de Perron-Frobenius[5].
Notes et références
- Carl Meyer, Matrix analysis and applied linear algebra, SIAM (ISBN 0-89871-454-0) [lire en ligne]8.3.6 p. 681)
- Bachir Bekka, Le théorème de Perron-Frobenius, les chaînes de Markov et un célèbre moteur de recherche
- tSAS = S − 1AS s'obtient à partir de A en effectuant la permutation σ associée à sur les lignes et les colonnes.
- Π'(ρ) = Tr(B(ρ)) et ρ est la plus grande racine réelle (c'est une racine simple) du polynôme réel Π(λ) qui vérifie . On voit que B(ρ) est strictement positive
- Bachir Bekka, Le théorème de Perron-Frobenius, les chaînes de Markov et un célèbre moteur de recherche
Catégories :- Matrice
- Théorème de mathématiques
Wikimedia Foundation. 2010.