Méthode de la puissance

La méthode de la puissance est un algorithme permettant de calculer (plutôt, d'estimer) la valeur propre de plus grand module et un vecteur propre associé d'une matrice $A$. L'idée est que, si on définit une suite $(x_n)$ de vecteurs de $\mathbb R^n$ par la relation $x_{n+1}=Ax_n$, alors les vecteurs $x_n$ vont "se tourner" dans la direction des vecteurs propres associés à la plus grande des valeurs propres. Précisément, on a le théorème suivant :

Théorème : Soit $A\in\mathcal M_n(\mathbb R)$ une matrice diagonalisable, $\lambda_1,\cdots,\lambda_n$ ses valeurs propres, et on suppose que $|\lambda_1|>\max(|\lambda_2|,\dots,|\lambda_n|)$. Soit aussi $v_1$ un vecteur propre associé à $\lambda_1$. Alors, si $x_0$ est un vecteur non orthogonal à $v_1$, et si $(x_n)$ est définie par la relation de récurrence $x_{n+1}=Ax_n$, alors $\frac{x_n}{\|x_n\|}$ converge vers un multiple de $v_1$, et de plus $\frac{\langle x_{n+1},x_n\rangle}{\|x_n\|^2_2}$ converge vers $\lambda_1$.

Pour éviter que l'algorithme ne provoque un dépassement de capacité, on calcule souvent directement une version normalisée de $x_n$. Remarquons aussi que l'hypothèse sur $x_0$ n'est pas discriminante, si on choisit le vecteur au hasard, il a une probabilité nulle d'être orthogonal à $v_1$.

L'intérêt de la méthode des puissances itérées est de ne pas nécessiter d'hypothèses très particulières sur la matrice, comme être symétrique. En revanche, elle demande une configuration particulière des valeurs propres qui n'est pas toujours vérifiée. De plus, elle ne permet de calculer qu'une seule des valeurs propres de $A$. Pour trouver les autres valeurs propres, on a besoin de la ...

Méthode de déflation

La méthode de déflation est une méthode qui permet, connaissant la valeur propre de plus grand module d'une matrice et un vecteur propre associé, de trouver la seconde valeur propre dont le module est le plus grand. Précisément, on part d'une matrice $A$ d'ordre $n$ dont les valeurs propres vérifient $|\lambda_1|>|\lambda_2|>\cdots>|\lambda_n|$. On suppose aussi dans un premier temps que la matrice $A$ est symétrique. La méthode de la puissance nous donne la plus grande valeur propre en module, $\lambda_1$ et un vecteur propre associé, $v_1$. On pose alors $$B=A-\frac{\lambda_1}{\|v_1\|^2}v_1v_1^T.$$ Alors $B$ possède pour valeurs propres $\lambda_2,\dots,\lambda_n$ ... et 0! Il suffit d'appliquer à nouveau la méthode de la puissance, mais à $B$, pour obtenir une valeur approchée de $\lambda_2$, et un vecteur propre associé. On peut ainsi recommencer l'application du couple puissances itérées/déflation pour trouver toutes les valeurs propres de A.

Lorsque la matrice $A$ n'est plus symétrique, la matrice $B$ donnée ci-dessus n'a plus de raison d'avoir $\lambda_2,\dots,\lambda_n$ et 0 pour vecteurs propres (car les vecteurs propres de $A$ n'ont plus de raison d'être orthogonaux). Il faut raisonner un peu différemment, en utilisant la transposée de $A$. En effet, $A$ et ${}^t A$ ont les mêmes valeurs propres, et si on applique la méthode de la puissance itérée à ${}^t A$, on trouve un vecteur propre $w_1$ de ${}^t A$ associé à $\lambda_1$. On pose cette fois $$B=A-\frac{\lambda_1 \overrightarrow{v_1}{}^t \overrightarrow{w_1}}{{}^t \overrightarrow{w_1} \overrightarrow{v_1}}$$ qui vérifie les mêmes propriétés que la matrice $B$ précédente.