Factorización QR

Anuncio
Factorización QR
Departamento de Matemáticas, CCIR/ITESM
9 de febrero de 2011
Índice
23.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23.2. Factorización QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23.3. Algoritmo QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23.1.
1
1
2
Introducción
En esta lectura veremos el proceso para obtener la factorización QR de una matriz. Esta factorización
es utilizada para la solución por mı́nimos cuadrados y da un algoritmo numérico para determinar los valores
propios de una matriz cuadrada.
23.2.
Factorización QR
Teorema
Si A es una matriz m × n con columnas linealmente independientes, entonces A puede factorizarse
en la forma
A = QR
(1)
en la que Q es una matriz con columnas ortonormales y R es una matriz triangular superior.
Demostración
Sean a1 ,a2 ,. . . ,an las columnas de A y sean q1 ,q2 ,. . . ,qn los vectores obtenidos al ortonormalizarlas según el
proceso de Gram-Schmidt. Ası́,
Gen(a1 , a2 , . . . , an ) = Gen(q1 , q2 , . . . , qn )
Definamos
Q = [q1 q2 · · · qn ]
Como cada ai es combinación lineal de q1 ,. . . ,qn deben existir escalares rij tales que


r1i


ai = r1i q1 + · · · + rni qn = Q  ...  para i = 1, . . . , n
rni
siendo rji = 0 para j = i + 1, . . . , n y para i = 1, . . . n, de acuerdo
 


r11
 


A = [a1 · · · an ] = Q  ...  · · · Q 
0
al proceso de Gram-Schmidt. Ası́,

r1n
..  = QR
. 
rnm
Figura 1: Ejemplo 1: cálculo de la factorización QR de A.
donde R es la matriz cuyo elemento (i, j) es rij . Las matrices buscadas son las matrices Q y R: Q tiene sus
columnas ortonormales y R es triangular superior. Asimismo R debe ser invertible pues en caso contrario
Rx = 0 tendrı́a infinitas soluciones y por ende también QRx = Ax = 0 contradiciendo el hecho de que las
columnas de A son linealmente independientes.
Nota
En la práctica la matriz R se calcula mediante la fórmula:
R = QT · A
Ejemplo 23.1
Determine una factorización QR para la matriz


1 −2
1
3
2 
A =  −1
1 −1 −4
Solución
Al aplicarle el proceso de Gram-Schmidt a las columnas de A obtenemos:






√1
√2
0
3
6


 1 


q1 =  − √13  , q2 =  √2  , q3 =  √16 
√1
√1
− √16
2
3
Por tanto
y


Q=
√1
3
− √13
√1
3
 √
R = QT · A = 
0
√1
2
√1
2
√2
6
√1
6
− √16



√ 
√
3 −2 √3 − 35 √3
0
2 −2√ 3 
0
0 13 96
Los cálculos anteriores pueden hacerse en la calculadora TI. Si seleccionamos el modo exacto, definimos la
matriz A y aplicamos la rutina de factorización QR tendremos la salida de la figura 1 La figura 2 despliega
la matriz Q calculada. La figura 3 despliega la matriz R calculada. y la comprobación de que el producto
efectivamente da A. La figura 4 muestra la comprobación de que el producto efectivamente da A.
2
Figura 2: Ejemplo 1: Matriz Q de la factorización QR de A.
Figura 3: Ejemplo 1: Matriz R de la factorización QR de A.
Figura 4: Ejemplo 1: Comprobación de la factorización QR de A.
3
23.3.
Algoritmo QR
Para una matriz A n × n invertible, cuyos valores propios λ1 , . . . , λn son tales que
|λ1 | < |λ2 | < · · · < |λn |
Hacer:
1. Tomar A0 = A.
2. Para i = 0, 1, 2, . . . , k − 1 hacer:
a) Determinar la descomposición QR de Ai = Qi Ri .
b) Tomar Ai+1 = Ri Qi
Resultado: Ak se aproxima a una matriz triangular cuyos elementos diagonales son todos los valores propios
de A.
Ejemplo 23.2
Aplique el algoritmo QR a la matriz:
A=
8 7
1 2
Solución
Tomamos A0 = A. Determinamos una factorización QR de A0 :
0.9922 −0.1240
8.0622 7.1940
A 0 = Q 0 R0 =
·
0.1240
0.9922
0.0000 1.1163
Por tanto,
A 1 = R0 Q 0 =
8.8923 6.1384
0.1384 1.1076
Determinamos una factorización QR de A1 :
8.8933 6.1549
0.9998 −0.1556
·
A 1 = Q 1 R1 =
0.0000 1.0119
0.0155
0.9998
Por tanto,
A 2 = R1 Q 1 =
8.9881 6.0157
0.0157 1.0118
Determinamos una factorización QR de A2 :
0.9999 −0.0017
8.9881 6.0175
A 2 = Q 2 R2 =
·
0.0017
0.9999
0.0000 1.0013
Por tanto,
A 3 = R2 Q 2 =
8.9986 6.0107
0.0017 1.0013
Concluimos que los valores propios de A son aproximadamente 9 y 1. Las figuras 5,6 y 7 muestran la sucesión
de cálculos del algorimto QR para aproximar los valores propios de A.
4
Figura 5: Ejemplo 2: Iteración 1 del algoritmo QR.
Figura 6: Ejemplo 2: Iteraciones 2 y 3 del algoritmo QR.
Figura 7: Ejemplo 2: Iteraciones 4 y 5 del algoritmo QR.
5
Descargar