Algorithme de Gram-Schmidt

algorithme permettant, dans un espace euclidien, de construire une base orthonormée à partir d'une base quelconque de cet espace
(Redirigé depuis Procédé de Gram-Schmidt)

En algèbre linéaire, dans un espace préhilbertien (c'est-à-dire un espace vectoriel sur le corps des réels ou celui des complexes, muni d'un produit scalaire), le procédé ou algorithme de Gram-Schmidt[1] est un algorithme pour construire, à partir d'une famille libre finie, une base orthonormée du sous-espace qu'elle engendre. On peut aussi utiliser le procédé de Gram-Schmidt sur une famille infinie dénombrable de vecteurs. Ceci permet de démontrer l'existence d'une base hilbertienne si l'espace est séparable.

Énoncé

modifier

Précisément, en notant N = {0,...,p} avec p dans ℕ :

Théorème — Si (xn)n∈N est une famille libre d'un espace préhilbertien, il existe une et une seule famille orthonormée (en)n∈N telle que :

  • Vect(e0,…,en)=Vect(x0,…,xn) pour tout n
  • les produits scalaires (en|xn) sont strictement positifs pour tout n

On oublie souvent la seconde condition, qui assure l'unicité. Elle permet de parler de la famille orthonormalisée de Gram-Schmidt associée à (xn)n∈N.

L'étape générale de l'algorithme consiste à soustraire au vecteur vj+1 son projeté orthogonal sur le sous-espace engendré par v0,...,vj. On s'appuie sur la famille orthonormale déjà construite pour le calcul de ce projeté.

Cette méthode a été publiée par Jørgen Pedersen Gram en 1883 et reformulée par Erhard Schmidt en 1907, mais on la trouve déjà dans des travaux de 1816 de Laplace[2].

Applications

modifier

Procédé de Gram-Schmidt

modifier

Nous définissons l'opérateur de projection orthogonale sur une droite vectorielle dirigée par le vecteur u par[4] :

proj𝐮(𝐯)=⟨𝐮,𝐯⟩⟨𝐮,𝐮⟩𝐮.

Le procédé de Gram-Schmidt est alors :

Les deux premières étapes du procédé de Gram–Schmidt.
𝐮1=𝐯1, 𝐞1=𝐮1‖𝐮1‖
𝐮2=𝐯2−proj𝐮1(𝐯2), 𝐞2=𝐮2‖𝐮2‖
𝐮3=𝐯3−proj𝐮1(𝐯3)−proj𝐮2(𝐯3), 𝐞3=𝐮3‖𝐮3‖
⋮ ⋮
𝐮k=𝐯k−∑j=1k−1proj𝐮j(𝐯k), 𝐞k=𝐮k‖𝐮k‖

Avec :

  • ⟨⋅,⋅⟩, le produit scalaire dans l'espace considéré
  • v1, ..., vk, un ensemble de vecteurs non liés
  • u1, ..., uk, un ensemble de vecteurs orthogonaux deux à deux
  • e1, ..., ek, l'ensemble de vecteurs orthonormaux deux à deux recherché

Notes et références

modifier
(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Gram–Schmidt process » (voir la liste des auteurs).
  1. ↑ Mathématiques Tout-en-un. 2e année MP, Paris, Dunod, , 2e éd., 1279 p. (ISBN 978-2-10-007576-8, BNF 39237416), p. 569
  2. ↑ (en) Gram-Schmidt orthogonalization, dans Earliest Known Uses of Some of the Words of Mathematics (G)
  3. ↑ A. Quarteroni, R. Sacco, F. Saleri, Méthodes numériques pour le calcul scientifique, Programmes en Matlab, éd. Springer, 2000, p. 83 et suiv. Lire en ligne
  4. ↑ La convention choisie pour le produit scalaire hermitien étant ici : linéarité à droite et semi-linéarité à gauche.