Cálculo de valores propios de matrices Curso 2016-17 1 Cálculo de valores propios: principio básico» λ 1 0 λ 2 Teorema de Schur: U AU T...... fl 0 0 λ n Si ppλq λ 5 p 1 λ 4 p 2 λ 3 p 3 λ 2 p 4 λ p 5» 0 1 0 0 0 0 0 1 0 0 A 0 0 0 1 0 0 0 0 0 1 fl ñ p Apλq detpλi 5 Aq ppλq. p 5 p 4 p 3 p 2 p 1 Abel: Hay polinomios de grado 5 cuyas raíces no son expresables como sumas, productos y radicales de los coecientes. Ñ No hay forma de llevar cualquier matriz a la forma de Schur mediante transformaciones elementales. Consecuencia: Los métodos para calcular valores propios deben ser iterativos. 2
Método general para calcular valores propios 1 Emplear reflexiones de Householder para reducir A a una matriz H rh ij s en forma Hessenberg superior: h ij 0 para i ą j ` 1.» h 11 h 12 h 13 h 1n 2 h 1n 1 h 1n h 21 h 22 h 23 h 2n 2 h 2n 1 h 2n 0 h 32 h 33 h 3n 2 h 3n 1 h 3n H...................... 0 0 0 h n 1n 2 h n 1n 1 h n 1n fl 0 0 0 0 h nn 1 h nn 2 Aplicar iteraciones para conseguir una sucesión de matrices Hessenberg superiores que converja a una forma de Schur de A. 3 Reducción a forma Hessenberg 1 Eĺıjase Q 1, reflexión» de Householder, tal que» x x x x x x x x x x x x x x x Q 1 A 0 x x x x 0 x x x xfl y A x x x x x 1 Q 1 AQ 1 0 x x x x 0 x x x xfl 0 x x x x 0 x x x x 2 Eĺıjase Q 2, reflexión» de Householder, tal que» x x x x x x x x x x x x x x x Q 2 A 1 0 x x x x 0 0 x x xfl y A x x x x x 2 Q 2 A 1 Q 2 0 x x x x 0 0 x x xfl 0 0 x x x 0 0 x x x 3 Eĺıjase Q 3, reflexión» de Householder, tal que» x x x x x x x x x x x x x x x Q 3 A 2 0 x x x x 0 0 x x xfl Ñ Q x x x x x 3A 2 Q 3 0 x x x x 0 0 x x xfl 0 0 0 x x 0 0 0 x x 4
Algoritmo de reducción a forma Hessenberg (Householder) Dato: A P F nˆn Objetivo: Forma Hessenberg superior de A mediante transformaciones de Householder, y la correspondiente Q. H A, Q I n for k 1 : n 2 x Hpk ` 1 : n, kq u signpx 1 q}x} 2 e 1 ` x u }u} 2 u Hpk ` 1 : n, k : nq Hpk ` 1 : n, k : nq 2upu Hpk ` 1 : n, k : nqq Hp1 : n, k ` 1 : nq Hp1 : n, k ` 1 : nq 2pHp1 : n, k ` 1 : nququ Qp1 : n, k ` 1 : nq Qp1 : n, k ` 1 : nq 2pQp1 : n, k ` 1 : nququ end for Denición Coste: 10 3 n3 (sin Q) o 14 3 n3 (con Q) Una matriz Hessenberg superior es irreducida si todos los elementos en la subdiagonal son distintos de cero. 5 Reducción parcial a forma Hessenberg Métodos Iterativos: n muy grande Ñ reducción parcial. Objetivo: Encontrar q 1, q 2,..., q r`1 ortonormales y» h 11 h 12 h 1n h 21 h 22 rh r....... h n,n 1 h nn h n`1,n tales que Para i 1, 2,..., r Q r Q hkkkkkkkkkkikkkkkkkkkkj hkkkkkkkkkkkkkkkikkkkkkkkkkkkkkkj r`1 A q1 q 2 q r q1 q 2 q r q rhr r`1 fl Aq i h 1i q 1 ` h 2i q 2 ` h ii q i ` h i`1i q i`1 6
El algoritmo de Arnoldi (compárese con el algoritmo clásico de Garm-Scmidt) Dato: A P F nˆn y un entero r, 0 ă r ă n Objetivo: Forma Hessenberg parcial de A y la correspondiente Q. b arbitario q 1 b }b} 2 for k 1 : r v Aq k for j 1 : k h jk q j v v v h jk q j end for h k`1k }v} 2 q k`1 v end for h k`1k hkkkkkkkkkkkkkkkkikkkkkkkkkkkkkkkkj Krylov Subspace tq 1, q 2,..., q r u=base ortonormal de K j pa, bq ă b, Ab, A 2 b,..., A r 1 b ą. 7 Sucesiones de Krylov Dada A P F nˆn y x P F n la sucesión ta k xu 8 k 0 es una sucesión de Krylov: x, Ax, A 2 x, A 3 x,... No tiene por qué: A Convergencia? j j 0 1 1, x 1 0 1 Pero ă A k x ą converge Ñ convergencia de subespacios Grassmanniana: Gr d pf n q tx Ă F n : X subespacio de dimensión du F R o C. 8
Método de las potencias y convergencia de subespcios Método de las potencias (primera aproximación): Dada A P F nˆn y x 0 P F n, se construye la sucesión (de Krilov) ta j x 0 u j 0,1,2,.... Lema (a) Sea tx j u j 1,2,... una sucesión de vectores de F n y x P F n. Entonces, ă x j ąñă x ą si y sólo si para j 1, 2,... existe α j P F tal que α j x j Ñ x. (b) Sea tq j u j 1,2,... una sucesión de vectores unitarios de F n y q P F n un vector unitario. Entonces, ă q j ąñă q ą si y sólo si para j 1, 2,... existe α j P F con α j 1 tal que α j q j Ñ q. Teorema Si ă A j x 0 ąñă y ą con y 0 entonces y es un vector propio de A. 9 Algoritmo del Método de las Potencias (Primera Versión) Dada A P R nˆn Paso 1: Eĺıjase x 0 P F nˆ1 (F R o C) Paso 2: x 0 x 0 }x 0 } Paso 3: for j 0, 1, 2, 3,... hasta convergencia y j`1 Ax j x j`1 y j`1 y j`1 λ j`1 x j`1 Ax j`1 (vector propio unitario aproximado) (valor propio aproximado) end for. 10
Teorema Método de las potencias: convergencia Sea q 0 P F n un vector unitario y A P F nˆn una matriz diagonalizable con λ 1,..., λ n como valores propios. Sea tv 1,..., v n u una base de vectores propios unitarios de A (Av i λ i v i y }v i } 2 1, i 1,..., n) y supongamos que q 0 α 1 v 1 ` ` α n v n. Supongamos también que λ 1 ą λ 2 ě λ 3 ě ě λ n (1) Entonces ă q j ąñă v 1 ą si y sólo si α 1 0. Más aún, en tal caso, para j 0, 1, 2,... existen números complejos z j de módulo 1 tales que }z j q j v 1 } 2 O ˇˇˇ λ 2 j ˇ ˇ. λ 1 11 Un criterio de terminación del algoritmo Teorema Sea A P C nˆn, x P C n un vector unitario y µ P C. Sea r Ax µx. Existe una matriz E P C nˆn tal que E F }r} 2 y pa ` Eqx µx. Observación: }E} F }A} F }r} 2 }A} F. Criterio de terminación: que el error relativo }E} F }A} F sea pequeño. Fijaremos ɛ ą 0 y las iteraciones acabarán cuando }r} 2 }A} F ă ɛ (o cuando el número de iteraciones sea demasiado grande ). 12
Método de las potencias (versión nal) Datos: A P F nˆn, x 0 P F n, ɛ ą 0 e itermax Objetivo: calcular un par pλ, xq valor-vector propio aproximado de A. x x 0 }x 0 } 2 res=1 iter=0 norma=}a} F while res ą ɛ norma e iter ă itermax y Ax (siguiente potencia) λ x y (valor propio aproximado) res=}y λx} 2 (residuo) x y (normalización) }y} 2 iter=iter+1 end while 13 Método de iteración inversa Datos: A P F nˆn, x 0 P F n, σ, ɛ ą 0 e itermax Objetivo: calcular un par pλ, xq valor-vector propio aproximado de A. x x 0 }x 0 } 2 res=1 iter=0 norma=}a} F while res ą ɛ norma e iter ă itermax y pa σi n qzx (ô pa σi n qy x) x y }y} 2 λ x Ax res=}ax λx} 2 iter=iter+1 end while 14
Denición Cociente de Rayleigh Sea A P F nˆn. El cociente de Rayleigh de A en x P F n (x 0) es Teorema Rpxq x Ax x x Si A es simétrica entonces λ 0 P ΛpAq y x 0 es un vector propio de A correspondiente a λ 0 si y sólo si Rpx 0 q 0 y Rpx 0 q λ 0 Rpxq Rpx 0 q Rpx 0 qpx x 0 q ` Op}x x 0 } 2 q ñ ĺım xñx0 Rpxq Rpx 0 q }x x 0 } 2 0 Convergencia cuadrática 15 Método del cociente de Rayleigh Teorema (Teorema de minimización) Si A P F nˆn y x P F n entonces Rpxq es la solución del problema de mínimos cuadrados mín αpc }xα Ax} 2. Datos: A P F nˆn, x 0 P F n Objetivo: calcular un par pλ, xq valor-vector propio aproximado de A. x 0 x 0 }x 0 } 2 λ 0 x 0 Ax 0 (cociente de Rayleigh) for j 1, 2,... hasta convergencia y j pa λ j 1 I n qzx j 1 y j x j }y j } 2 λ j x j Ax j end for (nuevo cociente de Rayleigh) 16
Algoritmo QR con desplazamiento expĺıcito Dada A P F nˆn A 0 A for k 0, 1, 2,... Eĺıjase un desplazamiento σ k Calcúlese la descomposición QR de A k σ k I n : A k σ k I n Q k R k Reviértanse los factortes: A k`1 R k Q k ` σ k I n end for Por qué calcula valores propios de A? (a) Construye matrices unitariamente semejantes a A (b) Forma elegante del método de iteración inversa (c) Generalización del método de las potencias Lema A k y A k`1 son unitariamente semejantes. 17 Lema Algoritmo QR e iteración inversa Para cada k el algoritmo QR aplica el método de iteración inversa (por las) con vector inicial en T y desplazamiento σ k Consecuencias Si σ k «λ n y λ n λ i el algoritmo QR converge produciendo una matriz Q cuya última la es un vector propio unitario por la izquierda de A. Como ann piq es un valor propio por la izquierda aproximado de A i 1 (y por lo tanto de A y A i ), en T es un vector propio aproximado por la izquierda de A i. El residuo es: e T n A i e T n a piq nn A i pn, 1 : n 1q El Teorema de minimización sugiere σ k a pkq nn : El algoritmo QR implementa el método de Rayleigh. 18
El desplazamiento de Wilkinson Suposición: H en forma Hessenberg Qué desplazamiento?: Problema abierto en general. El cociente de Rayleigh (σ h nn ) proporciona convergencia cuadrática local. Desplazamiento de Wilkinson: valor propio de j Hpn 1, n 1q Hpn 1, nq Hpn, n 1q Hpn, nq más próximo a Hpn, nq (o cualquiera de los dos en caso de empate). Cuidado con la forma de calcularlo: estabilidad Observación importante: El desplazamiento de Wilkinson permite la entrada de desplazamientos complejos incluso en el caso real. 19 El desplazamiento de Wilkinson j a b Dato: B c d Objetivo: calcular el valor propio, σ, de B más próximo a d. σ d s a ` b ` c ` d if s 0 q b c s s if q 0 p 1 ˆa 2 s d s r a p 2 ` q if Reppq Reprq ` Imppq Imprq ă 0 r r end if end if end if σ σ s q p ` r 20
Forma de Schur: deflación Dada A P F nˆn 1 Reducir A a forma Hessenberg; H. 2 Para j 1,..., n 1 aplicar a la submatriz Hp1 : n j ` 1, 1 : n j ` 1q el algoritmo QR con desplazamiento de Wilkinson hasta que hpn j ` 1, n jq sea menor que un ε previamente jado. 3 Si hay convergencia, el proceso proporciona una forma de Schur de A. Pasar de una submatriz principal a otra con una la y columna menos cuando hpn j ` 1, n jq ă ε se conoce con el nombre de deflación. 21 Una etapa del algoritmo QR Datos: H P F nˆn, ɛ ą 0 e itermax, H matriz en forma Hessenerg Objetivo: Obtener una matriz T, semejante a A, cuyos elementos en la última la sean todos cero excepto el de la diagonal, y la matriz unitaria de semejanza Q. normh=}h} F T H, Q I n d T pn, n 1q, iter=0 while }d} 2 ą ɛ normh e iter ă itermax s deswilkpt pn 1 : n, n 1 : nqq, (desplazamiento de Wilkinson) T si n Q 1 R 1 (factorización QR de T si n ) T R 1 Q 1 ` si n (revertimos los factores) d T pn, n 1q (nuevos elemento no diagonal) Q QQ 1 (actualizamos la matriz unitaria de paso) iter=iter+1 end while if iterăitermax T pn, 1 : n 1q 0 end if (para que quede bonito) 22
Teorema Convergencia y Estabilidad Supongamos que el algoritmo QR (con o sin desplazamiento) se aplica a una matriz A P F nˆn y que sus valores propios cumplen: λ 1 ą λ 2 ą ą λ n. Supongamos también que su matriz S de vectores propios (S 1 AS Diagpλ 1,..., λ n q) cumpla la propiedad de que todos sus menores principales son no nulos (det Sp1 : k, 1 : kq 0, k 1,..., n). Entonces la sucesión A k Q k AQ k de matrices que produce el algoritmo QR, así como la de matrices unitarias Q k, convergen linealmente a una forma de Schur de A: Q AQ T. La convergencia es lineal con constante Teorema máx 1ďjďn 1 λ j`1 λ j. El algoritmo QR con reflexiones de Householder ( o rotaciones de Givens) cuando se implementa en un ordenador que cumple los dos axiomas fundamentales de la aritmética en punto flotante de la Lección 5 es estable hacia atrás. 23