Passer au contenu principal
Tangente
AlgèbreMéthode · Glossaire

méthode de Gréville

La méthode de Gréville calcule récursivement le pseudo-inverse de Moore-Penrose d'une matrice en incorporant ses colonnes une à une et en mettant à jour le résultat. Elle s'applique aussi aux matrices rectangulaires ou singulières, et donne l'inverse ordinaire lorsque la matrice est carrée et inversible.
Colonnes dépendantes dans l'exemple de Gréville Le vecteur a deux, de coordonnées deux zéro, est exactement deux fois le vecteur a un, de coordonnées un zéro. Leur résidu est nul. Colonnes dépendantes a₁ = (1,0) a₂ = 2a₁ = (2,0) c₂ = (0,0)
La seconde colonne reste sur la direction de la première : elle n'ajoute aucune composante, donc le résidu c₂ est nul.
Sommaire

Ce que vous allez apprendre

  • Identifier le rôle du résidu lors de l'ajout d'une colonne.
  • Appliquer la branche de la récurrence correspondant à un résidu nul.
  • Vérifier un pseudo-inverse exact sur une matrice singulière.
  • Distinguer pseudo-inverse de Moore-Penrose, inverse ordinaire et inverse généralisé quelconque.

En clair

Imaginez une matrice dont les colonnes arrivent une à une. Au lieu de reprendre tout le calcul à chaque arrivée, la méthode de Gréville met à jour le résultat déjà obtenu. Elle mesure d'abord ce que la nouvelle colonne apporte réellement par rapport aux précédentes.
Si la colonne apporte une direction nouvelle, l'algorithme l'intègre. Si elle répète une combinaison des autres, il emploie une autre mise à jour. Le résultat est le pseudo-inverse, même lorsque la matrice est rectangulaire ou singulière et ne possède donc pas d'inverse ordinaire.

Définition

La méthode de Gréville construit le pseudo-inverse de Moore-Penrose d'une matrice en ajoutant ses colonnes successivement. Pour une matrice réelle A de m lignes et n colonnes, ce pseudo-inverse, noté A+A^+, possède n lignes et m colonnes. Si A est carrée et inversible, il coïncide avec l'inverse ordinaire. Il reste défini lorsque A est rectangulaire ou singulière.
À chaque étape, l'algorithme compare la nouvelle colonne à l'espace engendré par celles déjà traitées. Le résidu est nul lorsque cette colonne en dépend, et non nul lorsqu'elle ajoute une direction. Chacun de ces deux cas possède sa propre formule de mise à jour. Bien que les colonnes soient ajoutées, le pseudo-inverse gagne une ligne à chaque étape.
Le résultat est l'unique matrice qui satisfait les quatre relations de Moore-Penrose, où la lettre T indique la transposition :
AA+A=A,A+AA+=A+,(AA+)T=AA+,(A+A)T=A+AAA^+A=A,\quad A^+AA^+=A^+,\quad (AA^+)^T=AA^+,\quad (A^+A)^T=A^+A
Pour des matrices complexes, la transposée est remplacée par la transposée conjuguée.

Le principe

On commence par la première colonne a1. Si elle est non nulle, A1+=a1T/(a1Ta1)A_1^+=a_1^T/(a_1^Ta_1) ; si elle est nulle, son pseudo-inverse est une ligne de m zéros, où m est le nombre de lignes de A.
Soit Ak la matrice formée des k premières colonnes, et ak la colonne ajoutée à Ak−1. À partir du pseudo-inverse de Ak−1, on calcule le vecteur de coefficients dk, puis le résidu ck :
dk=Ak1+ak,ck=akAk1dkd_k=A_{k-1}^+a_k,\qquad c_k=a_k-A_{k-1}d_k
Si ck n'est pas nul, la ligne bkT vaut ckT/(ckTck)c_k^T/(c_k^Tc_k). S'il est nul, elle vaut (1+dkTdk)1dkTAk1+(1+d_k^Td_k)^{-1}d_k^TA_{k-1}^+. La mise à jour est alors :
Ak+=(Ak1+dkbkTbkT)A_k^+=\begin{pmatrix}A_{k-1}^+-d_kb_k^T\\b_k^T\end{pmatrix}
Après la dernière colonne, An+ est le pseudo-inverse recherché.

Quand l'utiliser

La méthode s'applique à toute matrice réelle finie, carrée ou rectangulaire, de rang plein ou non. Il faut connaître ses colonnes dans un ordre fixé et disposer du produit scalaire usuel. Pour une matrice complexe, chaque transposée des formules doit être comprise comme une transposée conjuguée.
À chaque ajout, deux contrôles sont indispensables. Le résidu ck doit être calculé avant de choisir la formule de bkT. Le dénominateur ckTck ne peut être utilisé que si ce résidu est non nul.
Une colonne qui est une combinaison exacte des précédentes donne ck = 0. La formule du cas indépendant provoquerait alors une division par zéro ; il faut employer la branche dépendante fondée sur dk. C'est précisément ce qui permet de poursuivre avec une matrice singulière.

Un exemple, pas à pas

On traite la matrice réelle A et le vecteur de données y. Les deux colonnes de A sont a1 = (1, 0)T et a2 = (2, 0)T ; la seconde vaut exactement deux fois la première.
A=(1200),y=(53)A=\begin{pmatrix}1&2\\0&0\end{pmatrix},\qquad y=\begin{pmatrix}5\\3\end{pmatrix}
1. Pour la première colonne non nulle, son pseudo-inverse est la ligne A1+=(10)A_1^+=\begin{pmatrix}1&0\end{pmatrix}.
2. Pour la seconde colonne, le coefficient et le résidu sont :
d2=A1+a2=2,c2=a2A1d2=(00)d_2=A_1^+a_2=2,\qquad c_2=a_2-A_1d_2=\begin{pmatrix}0\\0\end{pmatrix}
Le résidu nul impose la branche des colonnes dépendantes.
3. La nouvelle ligne vaut :
b2T=(1+d2Td2)1d2TA1+=(2/50)b_2^T=(1+d_2^Td_2)^{-1}d_2^TA_1^+=\begin{pmatrix}2/5&0\end{pmatrix}
4. La mise à jour donne exactement :
A+=(1/502/50)A^+=\begin{pmatrix}1/5&0\\2/5&0\end{pmatrix}
Le contrôle est refaisable : A+y=(1,2)TA^+y=(1,2)^T, puis AA+y=(5,0)TAA^+y=(5,0)^T. Le second vecteur est la projection de y sur les colonnes de A, et (1, 2)T est la solution de norme minimale parmi celles qui produisent cette projection.

En pratique

Pour résoudre un système qui n'a pas de solution exacte, on multiplie les données par le pseudo-inverse. On obtient une solution de moindres carrés ; parmi les solutions ex æquo, celle-ci a la plus petite norme.
Lorsque des variables sont ajoutées une à une, la mise à jour de Gréville réutilise le pseudo-inverse courant. Elle est naturelle si l'on veut suivre cette construction incrémentale, plutôt que recalculer conceptuellement le problème depuis le début.
Pour une matrice carrée dont l'inversibilité est établie, une méthode directe de résolution peut suffire. Gréville devient surtout utile lorsque la forme rectangulaire, la dépendance des colonnes ou la recherche explicite du pseudo-inverse fait partie du problème.

À ne pas confondre

Inverse ordinaire. Une matrice A possède un inverse ordinaire lorsque A est carrée et inversible, avec AA−1 = A−1A = I. La matrice de l'exemple est singulière : elle n'a pas d'inverse ordinaire, mais elle possède un pseudo-inverse.
Inverse généralisé quelconque. Une matrice G peut seulement vérifier AGA = A sans être unique. Le pseudo-inverse de Moore-Penrose impose quatre relations, dont deux symétries, qui le rendent unique. Ainsi, vérifier une seule identité ne suffit pas à identifier le résultat de Gréville.

Limites et pièges

Résidu nul ou presque nul. En calcul exact, ck = 0 est le cas charnière entre les deux formules. En virgule flottante, tester une égalité stricte peut choisir la mauvaise branche. Il faut comparer la norme du résidu à une tolérance liée à la précision machine et aux normes des données, sans seuil universel.
Construction « ligne par ligne ». Les données de A sont incorporées colonne par colonne ; c'est le pseudo-inverse qui reçoit une nouvelle ligne à chaque mise à jour. Intervertir ces deux rôles conduit à des dimensions incompatibles.
Transposition dans le cas complexe. Les formules écrites avec T valent pour des matrices réelles. Avec des coefficients complexes, utiliser la transposée simple détruit en général les propriétés de Moore-Penrose ; il faut prendre la transposée conjuguée.

Pour aller plus loin

Les quatre relations de Moore-Penrose offrent un prolongement naturel : elles permettent de contrôler indépendamment le résultat d'une construction de Gréville. Elles relient aussi le pseudo-inverse aux projections orthogonales AA+ et A+A, puis aux solutions de moindres carrés et de norme minimale.
Continuez avec Tangente

Explorez les mathématiques autrement

Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.

Découvrir les offres