Proceso de ortogonalización de Gram-Schmidt para niños
En álgebra lineal, el proceso de ortogonalización de Gram–Schmidt es un algoritmo para construir, a partir de un conjunto de vectores de un espacio vectorial con producto interno, otro conjunto ortonormal de vectores que genere el mismo subespacio vectorial.
El proceso se basa en un resultado de la geometría euclídea, el cual establece que la diferencia entre un vector y su proyección sobre otro vector , es perpendicular al vector . Dicho resultado constituye una herramienta para construir, a partir de un conjunto de dos vectores no paralelos, otro conjunto, conformado por dos vectores perpendiculares.
Este algoritmo recibe su nombre de los matemáticos Jørgen Pedersen Gram y Erhard Schmidt.
Contenido
Descripción del algoritmo de ortogonalización de Gram–Schmidt
El método de Gram-Schmidt se usa para hallar bases ortogonales (Espacio Euclideo no normalizado) de cualquier base no euclídea.
En primer lugar tenemos que:
Es un vector ortogonal a . Entonces, dados los vectores , se define:
Generalizando en k: |
|
A partir de las propiedades del producto escalar, es sencillo probar que el conjunto de vectores es ortogonal.
|
Demostración |
Procedemos por inducción. Supongamos que fuese
esto implica por definición de u1 que lo cual contradice la hipótesis de que es linealmente independiente. Luego, Establezcamos la hipótesis inductiva como sigue. Expresamos v1, v2, ... vk en función de los u1, u2, ... uk de la siguiente manera. En la expresión, se ve que es posible despejar uk en función de una sucesión vj de vectores, puesto que la matriz del conjunto de sistemas es triangular inferior, con todos sus elementos en la diagonal distintos de cero. Esto implica en particular que existen escalares (tantos como elementos en el triángulo inferior de la matriz inversa) tales que Supongamos que fuera uk = 0, en este caso queda y por lo tanto existen escalares, no todos nulos, que producen una combinación nula con vectores de . Esto contradice la hipótesis de que es linealmente independiente. Luego, igualdad que, por el principio de inducción, es válida para todo k natural∎ |
|
Demostración |
Sea
Debemos aplicar dos veces el principio de inducción para probar que Comencemos por probar que De la Proposición 1 se deduce que lo cual por un lado, implica que (1, 1) está en P, y por otro, permite definir el vector (1) Por la linealidad del producto interno, se tiene que, en ( ), quedafinalmente, por la homogeneidad del producto interno tenemos luego Procedemos por inducción, la hipótesis inductiva es La Proposición 1, permite definir con lo cual, análogamente al caso j = 2, se tiene Esto demuestra que es decir, todo vector en es perpendicular a u1, con excepción del mismo u1. Aplicaremos inducción sobre n, considérese la hipótesis inductiva también puede escribirse La Proposición 1 garantiza la segunda condición de la conjunción lógica, con lo cual sólo hace falta demostrar para n la primera. por lo tanto |
Los conjuntos así definidos satisfacen la siguiente relación.
|
Para obtener una base ortonormal a partir de , basta con dividir entre la norma de cada vector de la base hallada:
Ejemplos
- Dada una base de definida por
mediante el proceso de Gram-Schmidt es posible construir una base ortogonal con respecto al producto interno usual de .
.
Se calculan los vectores u1 y u2 a partir de las fórmulas.
nótese que
de hecho, dado cualquier vector y se cumple
.
- Sea el sistema definido por
Aplicamos el proceso, seleccionamos por ejemplo
y calculamos
luego
.
Análogamente se sigue para u3 que
finalmente se obtiene
que es una base ortogonal de R3 con respecto al producto escalar canónico.
Descripción formal
Una manera de expresar el algoritmo explícitamente es a través de pseudocódigo. Se construye, para ello, una función con las siguientes características.
- Tiene como entrada un conjunto no vacío de vectores linealmente independientes.
-
Recibe dos instrucciones iterativas anidadas.
- Una estructura para cada, que asigna a v un vector de la entrada, por cada iteración.
- Una estructura mientras, que asigna a u el vector ortogonal a todos los u calculados en las iteraciones previas.
En cada iteración, se ejecutan las funciones
- Proy, la cual calcula la proyección ortogonal de un vector sobre otro. Se define matemáticamente como sigue.
donde V es un espacio vectorial. - obtener, como su nombre lo indica, obtiene el elemento de un conjunto dado su ordinal.
-
Devuelve finalmente un conjunto de vectores ortogonales.
Algoritmo Gram-Schmidt |
función
|
Para obtener una base ortonormal, basta normalizar los elementos de .
Proceso de ortogonalización de Gram-Schmidt con el método de Gauss
Dada una matriz M cuyos vectores fila son los vectores de una base a ortogonalizar, si se aplica la eliminación Gaussiana por filas a la matriz .
Ejemplo
Se realiza con la eliminación de Gauss la ortogonalización de Gram-Schmidt a la base dada por las filas de :
2 | 1 | 1 |
1 | 0 | 10 |
2 | -3 | 11 |
Para ello escribimos a la derecha la matriz de su producto escalar
6 | 12 | 12 | 2 | 1 | 1 |
12 | 101 | 112 | 1 | 0 | 10 |
12 | 112 | 134 | 2 | -3 | 11 |
Y se realiza la eliminación Gaussiana
A Fila2 le restamos la Fila1 por 2
A Fila3 le restamos la Fila1 por 2
6 | 12 | 12 | 2 | 1 | 1 |
0 | 77 | 88 | -3 | -2 | 8 |
0 | 88 | 110 | -2 | -5 | 9 |
A Fila3 por 7 le restamos la Fila2 por 8
6 | 12 | 12 | 2 | 1 | 1 |
0 | 77 | 88 | -3 | -2 | 8 |
0 | 0 | 66 | 10 | -19 | -1 |
Las filas de la derecha son una base ortogonal,
* | * | * | 2 | 1 | 1 |
* | * | * | -3 | -2 | 8 |
* | * | * | 10 | -19 | -1 |
cuyos vectores son proporcionales a los que se obtuvieron anteriormente con el proceso de Gram-Schmidt.
Véase también
En inglés: Gram–Schmidt process Facts for Kids