Álgebra lineal --- Gram-Schmidt, Gram-Schmidt Ortogonalización (Parte 2)

Proceso de ortogonalización de Gram-Schmidt

        Hasta ahora, hemos enfatizado repetidamente "Para el sistema de ecuaciones sin solución Ax=b, si la matriz A es una matriz ortonormal, entonces estará bien...". Porque, ya sea para encontrar la proyección o calcular la ecuación normal de los mínimos cuadrados, todos la incluyen A^{T}A. Cuando A es una matriz ortonormal Q Q^{T}Q=Yo, la solución óptima se puede obtener directamente al mismo tiempo \hat{x}=Q^{T}b. De ahora en adelante, presentaremos en detalle cómo usar el método de Gram Schmidt para construir un conjunto de bases ortonormales que son ortogonales entre sí.

Proceso de Gram-Schmidt:

        Existe un sistema de ecuaciones Ax=b, la matriz A está compuesta por tres vectores columna linealmente independientes a, b, c. Primero, construimos tres vectores mutuamente ortogonales A, B y C basados ​​en a, b y c. Una vez completada la construcción, dividimos A, B y C por sus respectivas longitudes y finalmente obtenemos un conjunto de bases ortonormales, , q_{1}que q_{2}queremos q_{3}. Sean q_{1}, q_{2}, q_{3}los tres vectores columna de la matriz respectivamente, y obtengamos la matriz ortonormal Q.

Paso 1: Haga que el vector A sea igual al vector a, obtenga el primer vector A y determine la primera dirección.

un = un

Paso 2: Dado que el conjunto de bases ortogonales que quiero construir son mutuamente ortogonales, nuestro segundo vector B debe ser perpendicular al vector A. Restamos el vector de proyección de b sobre A de b p_{b}para obtener otra componente B de b en la dirección perpendicular a A. De hecho, B es p_{b}el vector de error perpendicular al vector de proyección e_{b}.

B=b-p_{b}=b-\frac{A^{T}b}{A^{T}A}A

 Paso 3: reste la proyección de c en el subespacio (plano) generado por A y B del vector c ordenador personal}para obtener otra componente C perpendicular al subespacio. ordenador personal}Es decir, el vector de error perpendicular al vector de proyección CE}. El nuevo vector C es perpendicular tanto a A como a B.

C=c-p_{c}=c-\frac{A^{T}c}{A^{T}A}A-\frac{B^{T}c}{B^{T}B}B

Paso 4: Normalice A, B y C que sean ortogonales entre sí para obtener un conjunto de bases ortonormales q_{1}, q_{2}, , cuyo vector de longitud es 1 q_{3}.

q_{1}=\frac{A}{\izquierda\|  A \derecho \|},\;  q_{2}=\frac{B}{\izquierda\|  B \derecho \|},\;  q_{3}=\frac{C}{\izquierda \|  C \derecho \|}

        Si todavía hay d, necesita restar la proyección de d en las tres direcciones de los vectores construidos A, B y C de d (o restar la proyección de d en el espacio formado por la proyección A, B y C) , obtenga otra componente D perpendicular al vector A, B, C. 

        La idea central del proceso de ortogonalización de Gram Schmidt es: usar constantemente nuevos vectores conocidos, restar las componentes de proyección de los vectores en los vectores construidos y obtener las componentes verticales que estamos buscando.

即:viejo_vector - proyección = nuevo_vector

Ejemplo: 

Finalmente, damos un ejemplo del proceso de cálculo de ortogonalización de Gram Schmidt, al principio hay tres vectores linealmente independientes a, b, c         que no son ortogonales entre sí, donde a=[1, -1, 0], b =[2 , 0, -2], c=[3, -3, 3], como se muestra en la siguiente figura:

Utilice la idea de ortogonalización de Gram Schmidt para construir un conjunto de bases ortogonales q1, q2, q3 que contengan tres vectores columna :

 q1, q2, q3 son un conjunto de bases ortonormales, son ortogonales entre sí y su longitud es 1, como se muestra en la siguiente figura:

Este es un diagrama que contiene los resultados intermedios A, B y C. Puede verse que q1, q2 y q3 están en la misma dirección que A, B y C. La única diferencia es que A, B y C tienen no ha sido normalizado:

codigo matlab:

%% Example of CSDN 
%Original points
X=[0,0,0];
Y=[0,0,0];
Z=[0,0,0];
U=[1,2,3];
V=[-1,0,-3];
W=[0, -2, 3];
quiver3(X,Y,Z,U,V,W,0,'LineWidth',1)
axis equal
legend('a,b,c','Location','northwest')
hold on

%Orthogonal vectors
U=[1,1,1];
V=[-1,1,1];
W=[0,-2,1];
quiver3(X,Y,Z,U,V,W,0,'LineWidth',1)
axis equal
legend('a,b,c','A,B,C','Location','northwest')

%Orthonormal bases
U=[1/sqrt(2),1/sqrt(6),1/sqrt(3)];
V=[-1/sqrt(2),1/sqrt(6),1/sqrt(3)];
W=[0,-2/sqrt(6), 1/sqrt(3)];
quiver3(X,Y,Z,U,V,W,0,'LineWidth',3)
axis equal
legend('a,b,c','A,B,C','q1,q2,q3','Location','northwest')

 (texto completo)

Autor --- Panasonic J27

Referencias (gracias):

1,Introducción al álgebra lineal,Quinta edición - Gilbert Strang

2. Álgebra lineal y sus aplicaciones, Hou Zixin, Nankai University Press, 1990

(La imagen adjunta no tiene nada que ver con este artículo)

Declaración de derechos de autor: algunas imágenes, textos u otros materiales en este artículo pueden provenir de muchos sitios web y descripciones diferentes, por lo que no puedo enumerarlos aquí. Si hay alguna infracción, infórmeme y elimínela de inmediato. Todos son bienvenidos a reimprimir, pero si alguien cita o copia mi artículo, debe indicar en su artículo que las imágenes o el texto que usa provienen de mi artículo, de lo contrario, se investigará la infracción. ---- Panasonic J27

Supongo que te gusta

Origin blog.csdn.net/daduzimama/article/details/130766417
Recomendado
Clasificación