Niveau : moyen. Durée estimée : 90 min. 8 exercices avec corrections détaillées.
Rappel des notions clés
Devant une matrice $A$ à coefficients positifs ou nuls, tu fais trois tests dans l'ordre : son graphe dit si elle est irréductible, ses puissances disent si elle est primitive, puis le théorème de Perron-Frobenius te donne sa plus grande valeur propre et un vecteur propre à composantes strictement positives. Exemple : $A=\begin{pmatrix}1&2\\2&1\end{pmatrix}$ a pour valeurs propres $3$ et $-1$. Son rayon spectral, le plus grand module de ses valeurs propres complexes, vaut $\rho(A)=3$ ; il a pour vecteur propre $(1, 1)$, et l'autre valeur propre est plus petite en module.
On suit la convention française : $A\geq 0$ (positive) quand tous ses coefficients sont positifs ou nuls, $A > 0$ (strictement positive) quand ils sont tous strictement positifs. Le graphe de $A$ a un sommet par indice et un arc $i\to j$ quand $a_{ij} > 0$. Il est fortement connexe si tout sommet mène à tout autre par un chemin d'arcs. Énoncés d'après le TD d'agrégation de l'université Côte d'Azur et le cours de Manchester.
Formules à retenir :
- Irréductible : graphe fortement connexe. Primitive : il existe $k\geq 1$ avec $A^k > 0$. Strictement positive $\Rightarrow$ primitive $\Rightarrow$ irréductible.
- $A\geq 0$ irréductible : $\rho(A) > 0$ est une valeur propre simple, avec un vecteur propre $v > 0$ unique à un facteur près (le vecteur de Perron).
- Si de plus $A$ est primitive : $|\lambda| < \rho(A)$ pour toute autre valeur propre $\lambda$.
- Toute $A\geq 0$ (forme faible) : $\rho(A)$ est valeur propre, avec un vecteur propre $\geq 0$.
Piège classique : irréductible ne veut pas dire primitive. La matrice $\begin{pmatrix}0&1\\1&0\end{pmatrix}$ est irréductible, mais ses valeurs propres $1$ et $-1$ ont le même module. L'inégalité stricte $|\lambda| < \rho(A)$ exige la primitivité.
Exercices : niveau facile
Exercice 1 : On pose $A=\begin{pmatrix}1&2\\3&4\end{pmatrix}$ et $B=\begin{pmatrix}2&0&1\\0&3&0\\1&0&4\end{pmatrix}$.
a) Pour chacune, dis si elle est positive, strictement positive, irréductible, en t'appuyant sur son graphe.
b) Vérifie que $(1, 0, 1+\sqrt{2})$ est un vecteur propre de $B$. Pour quelle valeur propre ? Que manque-t-il par rapport au théorème de Perron-Frobenius ?
Correction :
On lit les zéros, puis les arcs absents du graphe.
a) $A > 0$, donc $A$ est primitive, donc irréductible. $B\geq 0$ mais $b_{12}=0$. Son graphe a les arcs $1\to 3$, $3\to 1$ et des boucles, mais aucun arc entre $\{1, 3\}$ et $2$ : depuis $1$, on n'atteint jamais $2$.
$A$ est irréductible ; $B$ est positive mais réductible.
b) $B\,(1, 0, 1+\sqrt{2})^T=(3+\sqrt{2}, 0, 5+4\sqrt{2})^T$ et $(3+\sqrt{2})(1+\sqrt{2})=5+4\sqrt{2}$. Le bloc $\begin{pmatrix}2&1\\1&4\end{pmatrix}$ des indices $1$ et $3$ donne les valeurs propres $3\pm\sqrt{2}$, l'indice $2$ donne $3$ : on a donc trouvé $\rho(B)$.
$\rho(B)=3+\sqrt{2}$, mais son vecteur propre a une composante nulle : sans irréductibilité, seule la forme faible tient.
Exercice 2 : Soit $C=\begin{pmatrix}0&1&0\\0&0&1\\1&0&0\end{pmatrix}$.
a) Calcule $C^2$ et $C^3$.
b) Montre que $C$ est irréductible mais pas primitive.
c) Calcule ses valeurs propres et compare leurs modules à $\rho(C)$.
Correction :
On suit le graphe, puis les puissances.
a) $C^2=\begin{pmatrix}0&0&1\\1&0&0\\0&1&0\end{pmatrix}$ et $C^3=I_3$.
b) Le graphe est le cycle $1\to 2\to 3\to 1$, fortement connexe : $C$ est irréductible. Comme $C^3=I_3$, ses puissances valent $C$, $C^2$ ou $I_3$, qui ont toutes des zéros : $C$ n'est pas primitive.
c) $\det(C-\lambda I_3)=1-\lambda^3$, donc les valeurs propres sont $1$, $j=e^{2i\pi/3}$ et $j^2$, toutes de module $1$. Le vecteur de Perron est $(1, 1, 1)$.
$C$ est irréductible, non primitive, et ses trois valeurs propres ont le module $\rho(C)=1$.
Exercice 3 : Soit $A=\begin{pmatrix}3&1\\1&2\end{pmatrix}$. Calcule ses valeurs propres, puis $\rho(A)$ et un vecteur de Perron. Vérifie les conclusions du théorème.
Correction :
On factorise le polynôme caractéristique, puis on cherche le noyau de $A-\rho(A)I_2$.
$\chi_A(\lambda)=(3-\lambda)(2-\lambda)-1=\lambda^2-5\lambda+5$, de discriminant $5$ : $\lambda_1=\frac{5+\sqrt{5}}{2}\approx 3{,}618$ et $\lambda_2=\frac{5-\sqrt{5}}{2}\approx 1{,}382$.
La première ligne de $(A-\lambda_1 I_2)v=0$ donne $\frac{1-\sqrt{5}}{2}x+y=0$, soit $y=\frac{\sqrt{5}-1}{2}x$. Avec $x=2$, on obtient $v=(2, \sqrt{5}-1)$, à composantes strictement positives.
$\rho(A)=\frac{5+\sqrt{5}}{2}$, vecteur de Perron $(2, \sqrt{5}-1)$, et $|\lambda_2| < \rho(A)$ comme prévu pour $A > 0$.
Exercices : niveau moyen
Exercice 4 : Soit $A\geq 0$ de taille $n$ et $r_i=\sum_j a_{ij}$ la somme de sa ligne $i$.
a) Montre que toute valeur propre $\lambda$ de $A$ vérifie $|\lambda|\leq\max_i r_i$.
b) Déduis-en $\rho(M)$, sans polynôme caractéristique, pour $M=\begin{pmatrix}1&2&0\\0&1&2\\2&0&1\end{pmatrix}$.
c) Que vaut $\rho(P)$ pour une matrice stochastique $P$, c'est-à-dire positive avec chaque ligne de somme $1$ ?
Correction :
On regarde la ligne où le vecteur propre atteint son plus grand module.
a) Soit $x\neq 0$ avec $Ax=\lambda x$, et $i$ tel que $|x_i|=\max_j|x_j|$. Alors $|\lambda||x_i|=\left|\sum_j a_{ij}x_j\right|\leq\sum_j a_{ij}|x_i|=r_i|x_i|$, d'où $|\lambda|\leq r_i\leq\max_k r_k$.
b) Chaque ligne de $M$ a pour somme $3$, donc $M(1, 1, 1)^T=3(1, 1, 1)^T$ : $3$ est valeur propre, et a) borne le module de toutes les valeurs propres par $3$.
$\rho(M)=3$, de vecteur propre $(1, 1, 1)$.
c) Même raisonnement avec le vecteur $(1, \dots, 1)$ : $\rho(P)=1$.
Exercice 5 : Données fictives : des vélos en libre-service circulent entre la gare (état 1) et le campus (état 2). Chaque jour, un vélo de la gare part au campus avec probabilité $0{,}5$, sinon il reste ; un vélo du campus part à la gare avec probabilité $0{,}2$, sinon il reste. La ligne $i$ de la matrice de transition $P$ correspond à l'état de départ.
a) Écris $P$ et justifie qu'elle est primitive.
b) Trouve la loi stationnaire, c'est-à-dire le vecteur ligne $\pi=(\pi_1, \pi_2)$ tel que $\pi P=\pi$ et $\pi_1+\pi_2=1$.
c) Quelle part de la flotte se trouve au campus à long terme ?
Correction :
On cherche un vecteur propre à gauche de $P$ pour la valeur propre $1$.
a) $P=\begin{pmatrix}0{,}5&0{,}5\\0{,}2&0{,}8\end{pmatrix} > 0$, donc primitive. Elle est stochastique, donc $\rho(P)=1$ (exercice 4).
b) La première coordonnée de $\pi P=\pi$ donne $0{,}5\pi_1+0{,}2\pi_2=\pi_1$, soit $2\pi_2=5\pi_1$. Avec $\pi_1+\pi_2=1$ : $\pi_1=\frac{2}{7}$ et $\pi_2=\frac{5}{7}$.
c) Comme $P > 0$, la loi d'un vélo converge vers $\pi$ quel que soit son point de départ (théorème 7 du cours de Manchester).
$\pi=\left(\frac{2}{7}, \frac{5}{7}\right)$ : à long terme, $\frac{5}{7}$ de la flotte, environ 71 %, est au campus.
Erreur à éviter : résoudre $Pv=v$, qui donne $(1, 1)$ pour toute matrice stochastique. La loi cherchée est vecteur propre de $P^T$.
Exercice 6 : Données fictives : une population d'oiseaux compte des jeunes et des adultes. À chaque saison, un jeune produit en moyenne $1$ jeune et un adulte $1{,}5$ ; la moitié des jeunes devient adulte, et aucun adulte ne survit. Le vecteur $x_n$ (jeunes, adultes) de la saison $n$ vérifie donc $x_{n+1}=Lx_n$, avec la matrice de Leslie $L=\begin{pmatrix}1&1{,}5\\0{,}5&0\end{pmatrix}$.
a) Montre que $L$ est primitive.
b) Calcule $\rho(L)$ et un vecteur de Perron.
c) On part de $x_0=(100, 100)$. Exprime $x_n$, puis donne la répartition entre jeunes et adultes à long terme.
Correction :
On teste une puissance de $L$, puis on décompose $x_0$ sur les vecteurs propres.
a) $L$ a un zéro, mais $L^2=\begin{pmatrix}1{,}75&1{,}5\\0{,}5&0{,}75\end{pmatrix} > 0$ : $L$ est primitive.
b) $\chi_L(\lambda)=\lambda^2-\lambda-0{,}75=(\lambda-1{,}5)(\lambda+0{,}5)$, donc $\rho(L)=1{,}5$ et $|-0{,}5| < 1{,}5$. La seconde ligne de $(L-1{,}5I_2)v=0$ donne $0{,}5v_1=1{,}5v_2$, d'où $v=(3, 1)$.
c) Pour $-0{,}5$, on trouve $u=(1, -1)$. On écrit $x_0=50v-50u$, d'où $x_n=50\times 1{,}5^n\,(3, 1)-50\times(-0{,}5)^n\,(1, -1)$. Le second terme devient négligeable devant le premier.
À terme, la population est multipliée par $1{,}5$ à chaque saison, avec $\frac{3}{4}$ de jeunes et $\frac{1}{4}$ d'adultes.
Exercices : niveau difficile
Exercice 7 : Soit $A\geq 0$ irréductible et $v$ un vecteur à composantes strictement positives tel que $Av=\lambda v$.
a) Justifie que $A^T$ est irréductible et que $\rho(A^T)=\rho(A)$.
b) Montre que $\lambda=\rho(A)$.
c) Déduis-en que $v$ est proportionnel au vecteur de Perron de $A$.
d) Dans l'exercice 1, $(0, 1, 0)$ est un vecteur propre positif de $B$ pour la valeur propre $3\neq\rho(B)$. Pourquoi n'est-ce pas une contradiction ?
Correction :
On multiplie à gauche par le vecteur de Perron de $A^T$.
a) Retourner les arcs garde le graphe fortement connexe, et $A^T$ a le même polynôme caractéristique que $A$.
b) Le théorème appliqué à $A^T$ donne $w > 0$ tel que $A^Tw=\rho(A)w$, soit $w^TA=\rho(A)w^T$. Alors $w^TAv=\lambda\,w^Tv=\rho(A)\,w^Tv$. Or $w^Tv=\sum_i w_iv_i > 0$, donc $\lambda=\rho(A)$.
c) $\rho(A)$ est simple : son sous-espace propre est la droite du vecteur de Perron.
d) $B$ est réductible et $(0, 1, 0)$ n'est pas strictement positif : aucune des deux hypothèses n'est remplie.
Un vecteur propre strictement positif d'une matrice positive irréductible est toujours un vecteur de Perron.
Exercice 8 : Soit $A$ et $B$ de taille $n$ avec $0\leq A\leq B$ coefficient par coefficient. On admet la formule de Gelfand : $\rho(M)=\lim_{k\to+\infty}\|M^k\|^{1/k}$ pour toute norme matricielle. On prend $\|M\|_\infty=\max_i\sum_j|m_{ij}|$.
a) Montre par récurrence que $0\leq A^k\leq B^k$ pour tout $k\geq 1$.
b) Déduis-en que $\rho(A)\leq\rho(B)$.
c) Dans l'exercice 6, la fécondité des jeunes passe de $1$ à $1{,}2$. Le taux de croissance peut-il baisser ?
Correction :
On compare les puissances, puis on applique la formule de Gelfand.
a) Vrai pour $k=1$ ; si $0\leq A^k\leq B^k$, alors $(A^{k+1})_{ij}=\sum_l (A^k)_{il}a_{lj}\leq\sum_l (B^k)_{il}b_{lj}=(B^{k+1})_{ij}$, car tous les facteurs sont positifs.
b) D'après a), $\|A^k\|_\infty\leq\|B^k\|_\infty$. On prend la racine $k$-ième, croissante, et on passe à la limite : $\rho(A)\leq\rho(B)$.
c) La nouvelle matrice $L'$ vérifie $0\leq L\leq L'$, donc $\rho(L')\geq 1{,}5$ : le taux de croissance ne peut pas baisser. Le calcul donne d'ailleurs $\rho(L')=0{,}6+\sqrt{1{,}11}\approx 1{,}65$.
Bilan et conseils
Ce qu'il faut retenir : avant d'appliquer le théorème, vérifie ses hypothèses dans l'ordre : positive, irréductible (le graphe), primitive (une puissance sans zéro). Pour une matrice stochastique, $\rho=1$ se lit sur le vecteur $(1, \dots, 1)$, et la loi stationnaire se cherche à gauche, avec $\pi P=\pi$.
Refais les démonstrations sans regarder les corrections : elles tiennent en deux gestes, lire le graphe et multiplier par un vecteur positif bien choisi, comme $(1, \dots, 1)$ ou le vecteur de Perron de $A^T$.
Sources
- Université Côte d'Azur, TD « Théorèmes de Perron-Frobenius », M2 Agrégation : définitions, formes faible et forte du théorème.
- Université de Manchester, cours MATH36001 « Perron-Frobenius Theory », 2015, en anglais (« positive » y veut dire strictement positive) : critère du graphe, cas irréductible, chaînes de Markov.