Factorización QR

En álgebra lineal, la descomposición o factorización QR de una matriz es una descomposición de la misma como producto de una matriz ortogonal por una triangular superior.

La descomposición QR es la base del algoritmo QR utilizado para el cálculo de los vectores y valores propios de una matriz.

Entonces Naturalmente, utilizamos los ais de A para obtener: Ahora estas ecuaciones pueden ser escritas en forma matricial de esta manera: El producto de cada fila con cada columna de las matrices de arriba, nos da la respectiva columna de A con la que comenzamos y, por tanto, dada la matriz A, la hemos factorizado en una matriz ortogonal Q (la matriz de eks), aplicando el proceso de Gram-Schmidt, y la matriz resultante triangular superior es R. Alternativamente, la matriz

puede calcularse de la siguiente manera: Recordemos que:

mediante Gram-Schmidt como sigue: Por lo tanto, tenemos Una transformación de Householder o reflexión de Householder es una transformación que refleja el espacio con respecto a un plano determinado.

Esta propiedad se puede utilizar para realizar la transformación QR de una matriz si tenemos en cuenta que es posible elegir la matriz de Householder de manera que un vector elegido quede con una única componente no nula tras ser transformado (es decir, premultiplicando por la matriz de Householder).

un vector columna arbitrario m-dimensional tal que ||

|| = |α|, donde α es un escalar; (si el algoritmo se implementa utilizando aritmética de coma flotante, entonces α debe adoptar el signo contrario que

el vector (1,0,...,0)T, y ||·|| la norma euclídea, se define:

es un vector unitario perpendicular al plano de reflexión elegido.

es una matriz de Householder asociada a dicho plano.

Esta propiedad se puede usar para transformar gradualmente los vectores columna de una matriz A de dimensiones m por n en una matriz triangular superior.

En primer lugar se multiplica A con la matriz de Householder Q1 que obtenemos al elegir como vector

Esto proporciona una matriz QA con ceros en la primera columna (excepto el elemento de la primera fila).

el procedimiento se puede repetir para A′ (que se obtiene de Q1A eliminando la primera fila y columna), obteniendo así una matriz de Householder Q′2.

Para conseguir que esta matriz opere con Q1A en lugar de A′ es necesario expandirla hacia arriba a la izquierda, completando con un uno en la diagonal, o en general: Tras repetir el proceso

Este método tiene una estabilidad numérica mayor que la del método de Gram-Schmidt descrito arriba.

Una pequeña variación de este método se utiliza para obtener matrices semejantes con la forma de Hessenberg, muy útiles en el cálculo de autovalores por acelerar la convergencia del algoritmo QR reduciendo así enormemente su coste computacional.

Vamos a calcular la descomposición de la matriz En primer lugar necesitamos encontrar una reflexión que transforme la primera columna de la matriz A, vector

usando la expresión, y en nuestro caso : Por lo tanto Ahora observamos: con lo que ya casi tenemos una matriz triangular.

Tomando la submatriz bajo el (1, 1) y aplicando de nuevo el proceso a Mediante el mismo método que antes obtenemos la matriz de Householder Finalmente obtenemos La matriz Q es ortogonal y R es triangular superior, de forma que A = QR es la descomposición QR buscada.

En la práctica, las rotaciones de Givens no se utilizan en la actualidad para construir una matriz completa y realizar un producto de matrices.

Calculemos la descomposición de Primero, necesitamos formar una matriz de rotación tal que hagamos cero el elemento más inferior a la izquierda,

Construimos esta matriz empleando el método de la rotación de Givens y llamamos la matriz resultante

, representándolo a lo largo del eje X.

Procedemos análogamente con las matrices de Givens

es formada a partir del producto en cadena de todas las matrices de Givens

Es posible utilizar la descomposición QR para encontrar el valor absoluto del determinante de una matriz.

Suponiendo que una matriz se descompone según

Entonces se tiene Puesto que Q es unitaria,