You are on page 1of 105

Algebra Lineal Numerica

Marcos Raydan

Departamento de Computo Cientfico y Estadstica


Universidad Simon Bolvar
Caracas, Venezuela

Abril - Julio 2012

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 1 / 101


Parte I

Conceptos basicos

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 2 / 101


Preliminares de Algebra Lineal (notacion)
Rn espacio vectorial de vectores (columnas) reales de dimension n.
x Rn es una matriz con n filas y una sola columna.
x T es una matriz con una fila y n columnas.
Sea A Rmn una matriz con m filas y n columnas. El producto
y = Ax produce y como combinacion lineal de las columnas de A:
n
X
y = Ax = xj Aj
j=1

Equivalente
n
X
yi = aij xj .
j=1

Si x, y Rn , x T y es un escalar; xy T es una matriz n n de rango 1.


Si z Rn , (xy T )z = (y T z)x.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 3 / 101
Preliminares de Algebra Lineal (notacion)
alc(A) = {y Rm : Ax = y para x Rn }; rango(A) = dim alc(A).
nulo(A) = {x Rn : Ax = 0}
alc(A) = subespacio vectorial expandido por las columnas de A.

rango(A) + dim nulo(A) = n.

A Rnn es invertible o no singular si rango(A) = n. Equivalente:


(a) Existe A1 tal que AA1 = A1 A = I,
(b) las filas de A son linealmente independientes,
(c) el sistema Ax = b tiene una unica solucion por cada b Rn ,
(d) alc(A) = Rn ,
(e) la unica solucion de Ax = 0 es x = 0,
(f) nulo(A) = {0},
(g) el escalar 0 no es un autovalor de A,
(h) det(A) 6= 0.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 4 / 101
Preliminares de Algebra Lineal
A Rnn , x Rn , x 6= 0 es un autovector de A, y C su autovalor
asociado, si
Ax = x.
Autovectores asociados a autovalores distintos son linealmente
independientes (LI).
Si existe un conjunto de n autovectores LI, tenemos la
descomposicion matricial A = X X 1 , = diag(i ), X = [x1 , . . . , xn ]
Dos propiedades:
n
Y
det(A) = j ,
j=1
n
X
traza(A) = j ,
j=1
Pn
donde traza(A) = j=1 ajj .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 5 / 101
Preliminares de Algebra Lineal

Se dice que x, y Rn son ortogonales si x T y = 0.


Q Rnn es ortogonal si Q T = Q 1 i.e., si Q T Q = QQ T = I.

(a) (Qx)T (Qy) = x T y.


(b) kQxk2 = kxk2 ,
(c) (Pitagoras) si x es ortogonal a y , kx + yk22 = kxk22 + kyk22 ,
(d) (Desigualdad de Cauchy-Schwarz) |x T y| kxk2 kyk2 ,
(e) (Ley del paralelogramo) kx + yk22 + kx y k22 = 2kxk22 + 2ky k22 .

Coseno del angulo entre x, y


xT y
cos (x, y) = .
kxk2 ky k2

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 6 / 101


Preliminares de Algebra Lineal

A Rnn es simetrica si aij = aji AT = A. En ese caso:

Teorema
A posee n autovalores reales 1 , , n , y un conjunto
asociado de autovectores x1 , , xn que forman una base
ortonormal de Rn .

Si ademas, x T Ax > 0 para todo vector x 6= 0, entonces se dice que A


es definida positiva (DP).
semidefinida Positiva si x T Ax 0 para todo vector x Rn .
(semi) definida Negativa (DN) si A es (semi) definida positiva.
Indefinda si no es ni semi DP ni semi DN.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 7 / 101


Preliminares de Algebra Lineal

Teorema
Dada A Rnn simetrica, las siguientes condiciones son equivalentes:
(a) x T Ax > 0 para todo vector x 6= 0,
(b) todos los autovalores de A son numeros reales positivos,
(c) existe W Rnn no singular tal que A = W T W ,
(d) existe B Rnn definida positiva tal que A = B 2 ,
(e) para toda matriz X no singular, X T AX es definida positiva,
(f) todas las submatrices principales de A son definidas positivas.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 8 / 101


Normas de vectores
Una norma es una funcion k k : Rn R que asigna un numero real
no negativo (tamano) a cada vector.
Sean x, y Rn y escalar , tenemos:

(1) kxk 0, y kxk = 0 solo si x = 0,


(2) kxk = ||kxk,
(3) kx + y k kxk + ky k.
Tres normas de vectores importantes en optimizacion:
n
X
kxk1 = |xi |,
i=1
n
!1/2
X p
kxk2 = xi2 = x T x,
i=1
kxk = max |xi |.
1in

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 9 / 101


Normas inducidas de matrices
Si k k es una norma en Rn , la norma k k de matrices inducida por
ella, viene definida por

kAxk
kAk = sup = max kAxk.
x6=0 kxk kxk=1

kAk1 = max kAj k1 , (columnas)


1jn

kAk = max kaiT k1 , (filas)


1im
q
kAk2 = max (AT A).
Propiedad de normas inducidas:

kAxk kAkkxk.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 10 / 101


Norma de Frobenius
Una famosa norma no inducida es la norma de Frobenius:
1/2
m X
X n
kAkF = aij2 .
i=1 j=1
1/2
Xn
kAkF = kAj k2 .
j=1
q q
kAkF = traza(A A) = traza(AAT ).
T

No es inducida, pero:

kAxk2 kAkF kxk2 .

kABkF kAkF kBkF .


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 11 / 101
Parte II

Factorizaciones Matriciales Directas

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 12 / 101


Factorizaciones Directas (No iterativas)
Caractersticas:
Complejidad (operaciones punto flotante) finita, y no revelan los
autovalores de la matriz.

(1) Si A Rnn es no-singular, existen P de permutacion , U triangular


superior, y L triangular inferior con 1s en la diagonal, tal que PA = LU.
Complejidad: n3 /3 + O(n2 ). P es crucial para la estabilidad.

(2) Cholesky: Si A Rnn es simetrica (AT = A), y DP, existe L no


singular con Lii > 0 tal que A = LLT . Complejidad: n3 /6 + O(n2 ).
Estable.

(3) Factorizacion QR: Si A Rnn existen Q ortogonal y R triangular


superior tal que A = QR. Complejidad: 2n3 /3 + O(n2 ). No requiere
que A sea no-singular. Extendible de forma natural al caso
rectangular. Estable en todos los casos.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 13 / 101
Factorizacion de Cholesky: A = LLT


a11 a12 a1n l11 0 0 l11 l12 l1n
a12 a22 a2n l12 l22 0 0 l22 l2n
=
. . . . . . . . . . . .
a1n a2n ann l1n l2n lnn 0 0 lnn

De forma explcita:
2 l
a11 = l11 11 = a11 , l11 l1j = a1j for j = 2 . . . n, etc.

Algoritmo (1910)
For k = 1, 2, . . . , n Do
q
lkk akk k1 2
P
j=1 lkj

For i = k + 1, . . . , n Do
lik (aik k1
P
j=1 lij lkj )/lkk
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 14 / 101
Transformadas de Householder (Reflectores)

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 15 / 101


Transformadas de Householder (Reflectores)
Ilustracion en R2 :
Sea v , R, v R2 y v 6= 0, una recta que pasa por el (0 0)T . Y
sea u R2 , kuk2 = 1, y u T v = 0.
Como u y v forman una base en R2 , para todo x R2 , y :
x = u + v

Problema
Encontrar la matriz Q tal que Qx sea el reflejo de x
con respecto a la recta (el espejo) v .

Claramente Qx = u + v Qu = u y Qv = v .

Respuesta
Q = I 2uu T

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 16 / 101


Transformadas de Householder (Reflectores)
Ahora u Rn , u 6= 0. Definamos
uu T
Q =I2
uT u

Mas Propiedades
Propiedades
(d) (ortogonal) Q T = Q 1
(a) Qu = u
(e) (autoinversa) Q 1 = Q
(b) Si u T v = 0, Qv = v
(f) (preserva la norma)
(c) (simetrica) Q = Q T
x Rn , kQxk2 = kxk2 .

Teorema Clave
Sean x, y Rn , x 6= y , pero kxk2 = kyk2 , entonces existe una unica
transformada de Householder Q tal que Qx = y .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 17 / 101


Transformadas de Householder (Reflectores)
Ahora u Rn , u 6= 0. Definamos
uu T
Q =I2
uT u

Mas Propiedades
Propiedades
(d) (ortogonal) Q T = Q 1
(a) Qu = u
(e) (autoinversa) Q 1 = Q
(b) Si u T v = 0, Qv = v
(f) (preserva la norma)
(c) (simetrica) Q = Q T
x Rn , kQxk2 = kxk2 .

Teorema Clave
Sean x, y Rn , x 6= y , pero kxk2 = kyk2 , entonces existe una unica
transformada de Householder Q tal que Qx = y .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 17 / 101


Transformadas de Householder (Reflectores)
Ahora u Rn , u 6= 0. Definamos
uu T
Q =I2
uT u

Mas Propiedades
Propiedades
(d) (ortogonal) Q T = Q 1
(a) Qu = u
(e) (autoinversa) Q 1 = Q
(b) Si u T v = 0, Qv = v
(f) (preserva la norma)
(c) (simetrica) Q = Q T
x Rn , kQxk2 = kxk2 .

Teorema Clave
Sean x, y Rn , x 6= y , pero kxk2 = kyk2 , entonces existe una unica
transformada de Householder Q tal que Qx = y .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 17 / 101


Transformadas de Householder (Reflectores)
Ahora u Rn , u 6= 0. Definamos
uu T
Q =I2
uT u

Mas Propiedades
Propiedades
(d) (ortogonal) Q T = Q 1
(a) Qu = u
(e) (autoinversa) Q 1 = Q
(b) Si u T v = 0, Qv = v
(f) (preserva la norma)
(c) (simetrica) Q = Q T
x Rn , kQxk2 = kxk2 .

Teorema Clave
Sean x, y Rn , x 6= y , pero kxk2 = kyk2 , entonces existe una unica
transformada de Householder Q tal que Qx = y .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 17 / 101


Factorizacion QR usando Reflectores

Sea A Rmn . Para factorizar A usaremos Reflectores:

Q = I ww T

donde = 2/(w T w).

Problema Modelo
Dado z Rm y un ndice k {1, 2, . . . , m}
Encontrar Q tal que:
(1) (Qx)i = xi para todo i {1, 2, . . . , k 1} y x
(2) (Qz)i = 0 para todo i {k + 1, 2, . . . , m}

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 18 / 101


Factorizacion QR usando Reflectores

Forzar (Qx)i = xi para todo i {1, 2, . . . , k 1} y x implica que


wi = 0 para todo i {1, 2, . . . , k 1}.

Forzar (Qz)i = 0 para todo i {k + 1, 2, . . . , m} suponiendo que


(w T z) = 1, implica que
wi = zi para todo i {k + 1, 2, . . . , m}.

Falta definir wk ?
Forzando (w T z) = 1 ( 2w T z = w T w) y resolviendo la cuadratica,
obtenemos: v
u m
uX
wk = zk + signo(zk )t zi2
i=k

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 19 / 101


Factorizacion QR usando Reflectores
Se resuelve el Problema Modelo (n 1 veces) sistematicamente, una
vez por cada columna de A, donde z es la columna en turno, y k es el
ndice de la columna, y as obtenemos:
Qn1 Q2 Q1 A = R
donde R es triangular superior. De forma equivalente:
A = QR
donde
Q = Q1 Q2 Qn1
es ortogonal.

Clave
En la mayora de las aplicaciones Q no se necesita de forma explcita.
Basta con guardar los ws.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 20 / 101


Factorizacion QR usando Reflectores
Se resuelve el Problema Modelo (n 1 veces) sistematicamente, una
vez por cada columna de A, donde z es la columna en turno, y k es el
ndice de la columna, y as obtenemos:
Qn1 Q2 Q1 A = R
donde R es triangular superior. De forma equivalente:
A = QR
donde
Q = Q1 Q2 Qn1
es ortogonal.

Clave
En la mayora de las aplicaciones Q no se necesita de forma explcita.
Basta con guardar los ws.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 20 / 101


Parte III

Factorizaciones Matriciales que


Revelan Autovalores
(Iterativas)

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 21 / 101


Factorizacion de Schur (caso real)
Teorema
Sea A Rnn . Existen Q Rnn ortogonal y T Rnn
triangular superior en bloques tal que

A = Q T TQ.

Cada Tii es un escalar (autovalor de A) o una matriz 2 2,


cuyos autovalores son un par conjugado de autovalores de A.

Corolario
Sea A Rnn simetrica. Existen Q Rnn
ortogonal y D Rnn diagonal tal que

A = Q T DQ.

Los dii son los autovalores de A. Las columnas de


Q son autovectores de A.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 22 / 101


Descomposicion en Valores Singulares (SVD)
Teorema (SVD version full)
Sea A Rmn . Existen U Rmm ortogonal, V Rnn
ortogonal, y Rmn diagonal rectangular tal que

A = UV T .

= diag(1 , 2 , . . . , p ), y se cumple que


1 2 p 0, donde p = min(m, n).

Teorema (SVD version reducida)


Sea A Rmn (spdg m n). Existen U Rmn con columnas
ortonormales, V Rnn ortogonal, y Rnn diagonal tal que

A = UV T .

= diag(1 , 2 , . . . , n ), y se cumple que


1 2 n 0.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 23 / 101


Descomposicion en Valores Singulares (SVD)
Observacion geometrica:

La imagen de la esfera unitaria en Rn por la aplicacion de una matriz


A Rmn es un hiper-elipse en Rm .

Sean {1 u1 , 2 u2 , . . . , m um } los semi-ejes principales del hiper-elipse,


donde kui k2 = 1, y las longitudes de los semi-ejes, i , son
no-negativas. Estos semi-ejes son ortogonales entre si: uiT uj = 0 si
i 6= j, y uiT ui = 1.

El Teorema (SVD) afirma que las preimagenes de los semi-ejes del


hiper-elipse tambien son ortogonales entre si en Rn . Es decir, si
{v1 , v2 , . . . , vn } son las preimagenes de los semi-ejes en la esfera
unitaria, entonces viT vj = 0 si i 6= j, y viT vi = 1. De forma vectorial
(1 j n):
Avj = j uj

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 24 / 101


Descomposicion en Valores Singulares (SVD)

Todos juntos, Avj = j uj , en forma matricial:



| |
| |
| |
1
A v1 vn =
u1 un

.
| | | | n
| |

AV = U A = UV T
Se obtiene la SVD reducida. Los i son los valores singulares, los ui
son los vectores singulares por la izquierda, y los vi son los vectores
singulares por la derecha.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 25 / 101


Propiedades de la SVD
Ya sabemos que:
Avj = j uj
Ademas, AT = V U T AT U = V , y entonces:
AT uj = j vj
Por lo tanto:     
0 A uj uj
= j
AT 0 vj vj

Observacion: j es autovalor de una matriz simetrica y por lo tanto un


numero real.

Clave
Algunos metodos numericos eficientes para obtener la SVD se basan
en esta propiedad. Y en la que sigue ...

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 26 / 101


Propiedades de la SVD

AT uj = j vj AAT uj = j Avj = j2 uj
De forma similar:

Avj = j uj AT Avj = j AT uj = j2 vj

Por lo tanto:
j2 es autovalor de AT A y de AAT .

Corolario
Si A es simetrica, j (A) = |j (A)|, j. Y si, ademas, A es PD,
j (A) = j (A), j.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 27 / 101


Propiedades Practicas de la SVD
Todos los subespacios estan a la vista
Sea A Rmn (m n). A = UV T . Si

1 2 r > r +1 = = n = 0,

entonces rango(A) = r ,
nulo(A) = exp{vr +1 , . . . , vn }
alc(A) = exp{u1 , . . . , ur }

Y todos los valores claves estan a la vista


kAk2 = 1
kAk2F = 12 + 22 + + n2
|det(A)| = ni=1 i
Q

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 28 / 101


Mas Propiedades Practicas de la SVD
A = suma de matrices de rango 1
Sea A Rmn (m n). A = UV T . Si

1 2 r > r +1 = = n = 0,

entonces
r
X
A = Ur r VrT = i ui viT
i=1

Propiedad optima muy poderosa en la practica


Si k < r = rango(A), y Ak := ki=1 i ui viT , entonces
P

min kA Bk2 = kA Ak k2 = k+1


rango(B)=k

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 29 / 101


Pseudoinversa de A
Sea A Rmn . A = UV T . Se define la pseudoinversa:

A = V U T

donde = diag(1/1 , 1/2 , . . . , 1/r , 0, . . . , 0), y


r = rango(A) min{m, n}.

Propiedades de la pseudoinversa
(A ) = A
AA A = A
A AA = A
x = A b es la solucion cuadrados mnimos de Ax b, de
mnima norma.

Si A es rango completa por columnas, entonces A = (AT A)1 AT


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 30 / 101
Descomposicion Polar

Teorema sorprendente
Toda matriz A Rnn se puede escribir como

A = QS

donde Q es ortogonal y S es simetrica y semidefinida positiva. Si,


ademas, A es no-singular, S es PD.

Prueba: Insertar V T V = I en la SVD.

A = UV T = U(V T V )V T = (UV T )(V V T ) = QS.

Ejemplo:     
1 2 0 1 3 1
=
3 1 1 0 1 2
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 31 / 101
Parte IV

Funciones cuadraticas

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 32 / 101


Funciones cuadraticas

Polinomios en n variables con terminos hasta de segundo orden.


Ejemplo en 3 variables:

q(x1 , x2 , x3 ) = x12 3x32 + 2x1 x2 5x2 x3 + x1 x3 4 ,

Localmente, via Taylor, aproximan funciones generales.


Minimizar cuadraticas es subproblema auxiliar en metodos que
resuelven problemas complejos.
Toda cuadratica se puede escribir como:

1 t
q(x) = x Ax bt x + c,
2
donde A Rnn es una matriz simetrica, los vectores x, b Rn y la
constante c R.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 33 / 101


Funciones cuadraticas

Para el ejemplo

q(x1 , x2 , x3 ) = x12 3x32 + 2x1 x2 5x2 x3 + x1 x3 4 ,

se obtiene que

2 2 0 1
A= 2 0 5 , b = 0 , c = 4 .
0 5 6 1

Se obtienen c, b, y A calculando el gradiente y la Hessiana de q(x).

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 34 / 101


Puntos crticos de cuadraticas

Gradiente y Hessiana de cuadraticas


Si q(x) = 12 x t Ax bt x + c, donde AT = A, entonces
q(x) = Ax b y la matriz 2 q(x) = A para todo x Rn .

Los puntos estacionarios o crticos x (i.e., f (x ) = 0) de la


cuadratica son las soluciones del sistema lineal

Ax = b.

Siempre existen puntos crticos?

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 35 / 101


Puntos crticos de cuadraticas

Teorema de existencia y unicidad


El problema de minimizar q(x), sin restricciones, admite
algun punto estacionario si, y solamente si,
b alc(A).
Y admite un unico punto estacionario si, y solamente si,
A es no singular.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 36 / 101


Clasificacion de Puntos crticos de cuadraticas

El sistema Ax = b puede tener una, ninguna o infinitas soluciones.

Si b
/ alc(A) entonces q(x) no posee puntos estacionarios, es decir,
el gradiente no se anula para ningun x Rn .

Si A es no singular, entonces q(x) posee un unico punto estacionario


x = A1 b, el cual puede ser un maximizador, un minimizador o un
punto de ensilladura.

Si el sistema posee infinitas soluciones, entonces q(x) tiene infinitos


puntos estacionarios, y todos son del mismo tipo.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 37 / 101


Convexidad

Un conjunto en un espacio vectorial es convexo si

(1 )x + y

siempre que x , y y 0 < < 1.


Una funcion f definida sobre un convexo es convexa si para todo
x, y , y [0, 1], se cumple que

f (x + (1 )y ) f (x) + (1 )f (y).

Si para todo (0, 1) y x 6= y la desigualdad se cumple en forma


estricta, entonces se dice que f es estrictamente convexa. Se dice
que f es concava si f es convexa.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 38 / 101


Clasificacion de Puntos crticos de cuadraticas

Caso convexo
Si A es semidefinida positiva y x es punto estacionario de
q(x), entonces x es minimizador global de q(x).
Y si A es PD entonces es un minimizador global aislado
(unico).

En efecto, si A es semidefinida positiva entonces q es una funcion


convexa.

Si A es semidefinida negativa, entonces los puntos estacionarios son


maximizadores, y si A es indefinida, son puntos de ensilladura.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 39 / 101


Cuadratica estrictamente convexa (n = 2)

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 40 / 101


Punto de ensilladura (n = 2)

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 41 / 101


Curvas de nivel

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 42 / 101


Conjuntos de nivel

Convexidad
Si f es una funcion convexa y M [, +], entonces
los conjuntos de nivel {x : f (x) < M} y {x : f (x) M}
son convexos.

El recproco no es cierto: si una funcion posee conjuntos de nivel


convexos para todo M [, +], esa funcion no es
necesariamente convexa. Ejemplo: f (x) = x 3 .

si f es una cuadratica y A es PD, los conjuntos de nivel son elipsoides


concentricos que poseen al unico minimizador de la cuadratica como
centro comun. Los ejes principales son los autovectores de A.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 43 / 101


Cuadratica estrictamente convexa (1 = 2 y 2 = 7)

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 44 / 101


Parte V

Metodos iterativos: sin restricciones

minn f (x)
xR

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 45 / 101


Direcciones de descenso

Sea f : Rn R. Se dice que una direccion d Rn es de descenso a


partir de un punto x Rn si

f (x)t d < 0.

El coseno es negativo el angulo entre f (x) y d es mayor a 900 .

El valor de f disminuye en d
Sean f : Rn R, f C 1 (Rn ), x Rn tal que f (x) 6= 0, y d Rn tal
que f (x)t d < 0. Entonces existe > 0 tal que
f (x + d) < f (x) para todo (0, ].

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 46 / 101


Metodos de descenso

Familia de metodos iterativos para encontrar mnimos:

xk+1 = xk + k dk ,

dk es una direccion de descenso


k es una longitud de paso que garantiza descenso en f .
Diferentes formas de escoger dk y diferentes polticas de descenso en
f producen diferentes metodos.

Opcion siempre disponible: dk = f (xk ) (Cauchy, 1847).


Conocida como la direccion de gradiente negativo, es la que garantiza
mas rapido descenso local de f .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 47 / 101


Metodos clasicos de descenso

Metodo de Cauchy o mnimo descenso:

xk+1 = xk k f (xk ),

donde
k = argmin>0 f (xk f (xk )).

Metodo de Newton: dk se obtiene resolviendo el sistema

2 f (xk )dk = f (xk ).

Para asegurar que la direccion dk de Newton es de descenso, es


suficiente suponer que la Hessiana en xk es PD:

f (xk )t dk = f (xk )t 2 f (xk )1 f (xk ) < 0.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 48 / 101


Newton para cuadraticas

Si aplicamos Newton:

xk+1 = xk k 2 f (xk )1 f (xk ),

y f es una cuadratica estrictamente convexa, se obtiene la solucion


exacta en la primera iteracion (usando 0 = 1), desde cualquier
iterado incicial x0 dado:

x1 = x0 A1 (Ax0 b) = A1 b = x .

Requiere invertir una matriz o resolver un sistema lineal.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 49 / 101


Cauchy para cuadraticas
Cauchy en el caso cuadratico estrictamente convexo:
xk+1 = xk k gk ,
donde gk = f (xk ) = Axk b.
La longitud de paso optima viene dada por
gkt gk
k = .
gkt Agk
Se cumple:
 2
max (A) min (A)
E(xk+1 ) E(xk ),
max (A) + min (A)
donde
1
(x x )t A(x x ).
E(x) =
2
Esto garantiza convergencia a x desde cualquier x0 .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 50 / 101
Cauchy para cuadraticas

 2
max (A) min (A)
E(xk+1 ) E(xk ).
max (A) + min (A)
Equivalente
2 (A) 1
kxk x kA kxk1 x kA ,
2 (A) + 1

donde 2 (A) = max /min , y kzk2A = z t Az.

Si min no esta muy cercano a max la velocidad es muy lenta.


Ademas, para todo k
t
gk+1 gk = 0.
Ambas verdades producen el comportamiento de zig-zag.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 51 / 101


Taxonoma de velocidades de convergencia

Si {xk } converge a x , nos interesa monitorear ek = xk x .


Se dice que {ek } converge a 0 q-orden p si existen c > 0 y k0 N, tal
que
kek+1 k 6 ckek kp , k > k0 .
Si p = 1, se llama convergencia q-lineal (0 < c < 1).
Ejemplo: {101 , 102 , 103 , 104 , 105 , . . . }
Si p = 2, se llama convergencia q-cuadratica. Ejemplo:
{101 , 102 , 104 , 108 , 1016 , . . . }

Se dice que {ek } converge a 0 r-orden p si existen {bk } y k0 N, tal


que

kek k 6 kbk k, k > k0 y {bk } converge a 0 q-orden p .

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 52 / 101


Taxonoma de velocidades de convergencia
Casos especiales:
Se dice que {ek } converge a 0 q-superlinealmente si
kek+1 k 6 ck kek k, k > k0 ,
y {ck } converge a 0. Ejemplo: {101 , 102 , 103 , 105 , 108 , . . . }

Se dice que {ek } converge a 0 r-superlinealmente si existen {bk } y


k0 N, tal que
kek k 6 kbk k, k > k0 y {bk } converge a 0 q-superlinealmente .

Se dice que {ek } converge a 0 q-sublinealmente si


kek+1 k 6 ck kek k, k > k0 ,
y {ck } converge a 1.
Ejemplo q-sublineal: {1/k }.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 53 / 101
Variante aleatoria de Cauchy para cuadraticas

Convergencia del metodo de Cauchy: q-lineal (lento, zig-zag).


Problema de Cauchy: longitud optima en direccion optima
t
gk+1 gk = 0. (Akaike, 1959).

Variante: Cauchy relajado (k (0, 2) random)

xk+1 = xk k k gk ,

Si k = 1 tenemos Cauchy clasico.


Si k = 2, f (xk+1 ) = f (xk ).

Rompe el zig-zag !

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 54 / 101


Cauchy Vs. Cauchy random, n = 1000

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 55 / 101


Parte VI

Metodos tipo Krylov para sistemas


lineales
Caso SPD

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 56 / 101


Gradientes Conjugados: caso cuadratico

1 t
q(x) =x Ax x t b + c
2
Minimizar q es equivalente a resolver Ax = b si A es PD.

Suposicion hipotetica: {u1 , u2 , . . . , un } dados tal que

uit Auj = 0 si i 6= j.

Se llama A-conjugancia. Metodo hipotetico:

xk = xk1 + k uk ,

donde k es optimo en uk :
r (x)t u
argmin>0 q(x + u) = ,
u t Au
donde r (x) = g(x) = b Ax.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 57 / 101
Gradientes Conjugados: caso cuadratico

Teorema (Terminacion finita)


Sea {u1 , u2 , . . . , un } un conjunto A-conjugado de vectores no ceros. Si
x0 (arbitrario) es dado y

xk = xk1 + k uk para 1 k n,

donde k se escoge de forma optima, entonces


Axn = b.

Ademas, rkt uj = 0 para todo 1 j k .

(ukt rk1 )2
q(xk ) = q(xk1 ) ,
2ukt Auk

Como A es PD, entonces uk es de descenso si ukt rk1 6= 0.


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 58 / 101
Gradientes Conjugados: caso cuadratico

Motivados por
(ukt rk1 )2
q(xk ) = q(xk1 ) ,
2ukt Auk
Escoger uk como el vector mas cercano a rk1 :
Minimizar ku rk1 k2 preservando la A-conjugancia con los vectores
{u1 , . . . , uk1 }.

Respuesta: uk = rk1 + k uk1 ,


t
donde k se escoge tal que uk1 Auk = 0.

k+1 = ukt Ark /(ukt Auk )

Garantiza A-conjugancia con todos los anteriores.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 59 / 101


Gradientes Conjugados: caso cuadratico
Algoritmo (version cruda de GC)
Dado x0 Rn , asignar u1 = r0 = b Ax0 y k = 0.

mientras rk 6= 0 hacer
k =k +1
t
k = rk1 uk /(ukt Auk )
xk = xk1 + k uk
rk = b Axk
k+1 = ukt Ark /(ukt Auk )
uk+1 = rk + k+1 uk
fin

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 60 / 101


Gradientes Conjugados: caso cuadratico

Mejoras al algoritmo:
rk = rk1 k Auk .
Se cumple que

exp{r0 , . . . , rk1 } = exp{u1 , . . . , uk } = exp{r0 , Ar0 , . . . , Ak1 r0 }.

Ademas,

t
k = rk1 rk1 /(ukt Auk )

t t
k = rk1 rk1 /(rk2 rk2 )

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 61 / 101


Gradientes Conjugados: caso cuadratico
Algoritmo (version eficiente de GC)
Dado x0 Rn , asignar u1 = r0 = b Ax0 y k = 0.

mientras rk 6= 0 hacer
k =k +1
t
k = rk1 rk1 /(ukt Auk )
xk = xk1 + k uk
rk = rk1 k Auk
k+1 = rkt rk /(rk1
t rk1 )
uk+1 = rk + k+1 uk
fin

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 62 / 101


Gradientes Conjugados: caso cuadratico
GC, n = 10
5
10

0
10

5
10
Error

10
10

15
10

20
10
1 2 3 4 5 6 7 8 9 10
Iterations

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 63 / 101


Gradientes Conjugados: caso cuadratico
GC, n = 1000
4
10

2
10

0
10

2
10

4
10
error

6
10

8
10

10
10

12
10

14
10

16
10
0 50 100 150 200 250 300
Iterations

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 64 / 101


Gradientes Conjugados: caso cuadratico

Teorema (Terminacion finita)


Si A = I + B es PD y el rango de B es p < n, entonces el
metodo GC termina en, a lo sumo, p iteraciones.

Teorema (velocidad de convergencia)


El k-esimo iterado del metodo GC satisface
p !k
2 (A) 1
kxk x kA 2 p kx0 x kA .
2 (A) + 1

Meta-teorema: Si 2 (A) es pequena, o los autovalores de A estan


agrupados en pocos intervalos pequenos, entonces GC converge
en pocas iteraciones.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 65 / 101
Gradientes Conjugados (Version Precondicionada)
Idea: En lugar de minimizar
1 t
q(x) = x Ax x t b + c
2
minimizamos
1 t
q(y ) = y Ay y t b + c
2
donde E es no-singluar,

A = E 1 AE T , b = E 1 b, y = E T x.

Observacion: Sea C = EE T , la trasnformacion de similaridad

E T AE T = E T E 1 A = C 1 A

revela que para todo i


i (A) = i (C 1 A)
y la convergencia de GC aplicado a q esta determinada por la ubicacion de
los autovalores de C 1 A. Opcion: C A
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 66 / 101
Gradientes Conjugados (Version Precondicionada)
Algoritmo (version eficiente de GCP)
Dado x0 Rn , r0 = b Ax0 , resolver Ch0 = r0 , u1 = h0 y k = 0.

mientras rk 6= 0 hacer
k =k +1
k = rkt 1 hk1 /(ukt Auk )
xk = xk 1 + k uk
rk = rk1 k Auk
resolver Chk = rk
k+1 = rkt hk /(rkt 1 hk1 )
uk+1 = hk + k+1 uk
fin

Como conseguir C conveniente? Mezcla de arte y ciencia !!


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 67 / 101
Parte VII

Metodos tipo Krylov para sistemas


lineales
Caso general no simetrico

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 68 / 101


Metodos de Krylov (caso general)

El exito de GC en el caso SPD se debe a la A-conjugancia de


{u1 , u2 , . . . , un }. Por ser A SPD, esta propiedad se logra
automaticamente al imponer la A-ortogonalidad entre uk y uk 1 , k.
Equivalente: rkt uj = 0 para todo 1 j k.
Y se cumple que

exp{r0 , . . . , rk1 } = exp{u1 , . . . , uk } = exp{r0 , Ar0 , . . . , Ak1 r0 }.

Idea: En el caso general FORZAR la ortogonalidad entre rk y el


subespacio de Krylov Kk (A, r0 ), donde

Kk (A, r0 ) = exp{r0 , Ar0 , . . . , Ak1 r0 }

Clave: El espacio de busqueda se conoce antes de empezar !

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 69 / 101


Metodos de Krylov (caso general)

Esquema: Dado x0 , primero generar una base ortogonal de Km (A, r0 )


de una dimension prefijada m. Conseguir un proximo iterado xm tal
que rm sea ortogonal a esa base. Si rm es suficientemente pequeno,
parar; sino, repetir a partir de x0 xm .

Escoger xm ortogonal a Kk (A, r0 )


Sea V la matriz cuyas columnas son la base ortogonal de Km (A, r0 ).
Quiero xm = x0 + Vy con (Axm b)V

V T (Axm b) = 0 V T (A(x0 + Vy ) b) = 0

V T (r0 + AVy ) = 0 V T AVy = V T r0

Como construir la matriz V ? Metodo de Arnoldi!

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 70 / 101


Metodos de Krylov (caso general)
Algoritmo (Arnoldi) Usa Gram-Schmidt
Escoger v1 tal que kv1 k2 = 1

para j = 1, 2, . . . , m hacer
wj = Avj
hij = viT wj para i = 1, 2, . . . , j
Pj
wj = wj i=1 hij vi
hj+1,j = kwj k2
si hj+1,j = 0, parar
sino vj+1 = wj /hj+1,j
fin

Costo: un producto Avj por iteracion.


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 71 / 101
Metodos de Krylov (caso general)
Algoritmo (Arnoldi) Usa Gram-Schmidt modificado
Escoger v1 tal que kv1 k2 = 1
para j = 1, 2, . . . , m hacer
wj = Avj
para i = 1, 2, . . . , j hacer
hij = viT wj
wj = wj hij vi
fin
hj+1,j = kwj k2
si hj+1,j = 0, parar
sino vj+1 = wj /hj+1,j
fin

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 72 / 101


Metodos de Krylov (caso general)
Teorema: V es ortonormal
Si el proceso de Arnoldi no para antes de m iteraciones, entonces
{v1 , v2 , . . . , vm } forman una base ortonormal del subespacio de Krylov

Km (A, r0 ) = exp{r0 , Ar0 , . . . , Am1 r0 }

Teorema: Reduccion de A a forma de Hessenberg


Sea Vm Rnm de Arnoldi, y sea H b m R(m+1)m con forma de
Hessenberg, y hij s generados en Arnoldi; y sea Hm Rmm obtenida
eliminando la ultima fila de Hb m . Entonces

AVm = Vm+1 H
bm

VmT AVm = Hm

Resolver V T AVy = V T r0 resolver Hm y = V T r0


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 73 / 101
Full Orthogonalization Method (FOM) [Saad, 1981]
Dado x0 Rn , Asignar r0 = b Ax0 , = kr0 k2 , y v1 = r0 /
para j = 1, 2, . . . , m hacer
wj = Avj
para i = 1, 2, . . . , j hacer
hij = viT wj
wj = wj hij vi
fin
hj+1,j = kwj k2
si hj+1,j = 0, j m, y parar
sino vj+1 = wj /hj+1,j
fin
(m)
Resolver Hm ym = V T r0 = V T v1 = e1
xm = x0 + Vm ym
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 74 / 101
Generalized Minimum Residual (GMRES) [Saad & Schulz, 1986]
Dado x0 Rn , Asignar r0 = b Ax0 , = kr0 k2 , y v1 = r0 /
para j = 1, 2, . . . , m hacer
wj = Avj
para i = 1, 2, . . . , j hacer
hij = viT wj
wj = wj hij vi
fin
hj+1,j = kwj k2
si hj+1,j = 0, j m, y parar
sino vj+1 = wj /hj+1,j
fin
b m y e(m+1) k2
ym = argminy kH 1 2

xm = x0 + Vm ym
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 75 / 101
Parte VIII

Estimacion de autovalores y
autovectores

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 76 / 101


Estimacion de autovalores-autovectores
Nos interesa resolver la siguiente ecuacion (no lineal!)

Ax = x,

donde A Rnn , x Cn , x 6= 0, y C. El escalar es un autovalor


de A, y el vector x es un autovector de A.
Autovectores asociados a autovalores distintos son linealmente
independientes (LI).
Si existe un conjunto de n autovectores LI, tenemos la
descomposicion matricial A = X X 1 , = diag(i ).

Teorema: Raices del polinomio caracterstico


es autovalor de A si y solo si es raz del polinomio caracterstico

Pn () = det(I A)

Ax = x (I A)x = 0 A es singular det(I A) = 0.


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 77 / 101
Estimacion de autovalores-autovectores
Por el Teorema Fundamental del Algebra Pn () tiene una unica
factorizacion

det(I A) = Pn () = ( 1 )( 2 ) ( n ).

Teorema: Existencia y unicidad


A Rnn posee n autovalores contando multiplicidad en las raices del
polinomio caracterstico. Los autovalores y sus multiplicidades son unicas.

Propiedades que se desprenden:


det(A) = nj=1 j , traza(A) = nj=1 j
Q P

Si = (a + bi) es autovalor, entonces = (a bi) es autovalor.


Si n es impar, al menos un autovalor es real.
Si A es triangular entonces i (A) = aii .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 78 / 101
Estimacion de autovalores-autovectores (A = AT )

Factorizacion de Schur (caso simetrico)


Sea A Rnn simetrica. Existen Q Rnn ortogonal y diagonal tal que

A = Q T Q.

Los i R son los autovalores de A, y Las columnas de Q los autovectores.

Cociente de Rayleigh

x T Ax
(x) =
xT x
x, min (x) max . Si v es un autovector, (v ) = v .
Si x = v + e, con kek2 = , (x) = v + O(2 ).

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 79 / 101


Metodo de las potencias (A = AT )
Dado w Rn , Asignar x0 = w/kwk2

para i = 0, 1, . . . hacer
yi+1 = Axi
xi+1 = yi+1 /kyi+1 k2
T
i+1 = xi+1 Axi+1
fin

Apartando la normalizacion, el metodo genera {Ax0 , A2 x0 , A3 x0 , . . . }.

Teorema: Convergencia
Si |1 | > |2 | |3 | |n | asociados a {v1 , v2 , . . . , vn }, y si v1T x0 6= 0,
entonces {xi } converge a v1 q-lineal con factor |2 /1 |. Y {i } converge a 1
q-lineal con factor (2 /1 )2 .

Si |2 /1 | 1 el metodo es MUY lento!


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 80 / 101
Metodo de las potencias inverso con shift (A = AT )
Dados R, y w Rn , Asignar x0 = w/kwk2

para i = 0, 1, . . . hacer
resolver (A I)yi+1 = xi
xi+1 = yi+1 /kyi+1 k2
T
i+1 = xi+1 Axi+1
fin

Tres verdades claves


Si es autovalor de A, entonces 1/ es autovalor de A1 .
Si es autovalor de A, entonces ( ) es autovalor de (A I).
Si k entonces (k )1 es gigante comparado con (j )1 para
j 6= k.

Si k el metodo es MUY rapido.


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 81 / 101
Metodo del Cociente de Rayleigh (A = AT )

Dado w Rn , Asignar x0 = w/kwk2 , 0 = (x0 )

para i = 0, 1, . . . hacer
resolver (A i I)yi+1 = xi
xi+1 = yi+1 /kyi+1 k2
T
i+1 = xi+1 Axi+1
fin

Requiere resolver un sistema lineal por iteracion.


Dependiendo de x0 se puede converger a autovalores intermedios.
La convergencia es q-cubica !

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 82 / 101


Metodo QR (A = AT )
Asignar A0 := A
para i = 0, 1, . . . hacer
factorizar Ai =: Qi Ri
Ai+1 := Ri Qi
fin

Obs: Ai+1 = Ri Qi = QiT Qi Ri Qi = QiT Ai Qi .

Teorema: Convergencia
Todas las matrices en la sucesion {Ai } son similares ( poseen los
mismos autovalores), y

lim Ai = D
i

donde D es diagonal.
En el lmite se obtiene la factorizacion de Schur.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 83 / 101


Implementacion eficiente del Metodo QR (A = AT )
Complejidad del metodo QR: O(n3 ) por iteracion!
Idea: Usando (n 2) Reflectores de Householder, por derecha e
izquierda, llevar A a forma tridiagonal antes de empezar.

Asignar H0 := Q0T AQ0 (tridiagonal)


para i = 0, 1, . . . hacer
factorizar Hi =: Qi Ri
Hi+1 := Ri Qi
fin

Verdades
Todas las matrices en la sucesion {Hi } son similares, preservan la forma
tridagonal y limi Hi = D.
Complejidad de esta variante: O(n3 ) una vez, y O(n) por iteracion!

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 84 / 101


Implementacion eficiente del Metodo QR (A = AT )
Otra noticia: Las subdiagonales pueden desaparecer de forma lenta!
Idea: Usar desplazamientos!

Dado 0 R, Asignar H0 := Q0T AQ0 (tridiagonal)

para i = 0, 1, . . . hacer
factorizar Hi i I =: Qi Ri
Hi+1 := Ri Qi + i I
fin

Verdades
Todas las matrices en la sucesion {Hi } son similares, preservan la forma
tridagonal y limi Hi = D.
Escoger i = hn,n produce convergencia q-cubica al menor, y luego deflatar.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 85 / 101


Divide y Venceras: T = T T y tridiagonal


a1 b1 |
. .
b1 . . . .


|

..
. am1 bm1


|

bm1 am | bm
T =




bm |am+1 bm+1

. ..
|bm+1 . .


.

| bn1
| bn1 an

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 86 / 101


Divide y Venceras: T = T T y tridiagonal


a1 b1 |
. .
b1 . . . .


|

..
. am1 bm1


|

bm1 am bm | 0
T
b =




0 |am+1 bm bm+1

.. ..

|bm+1 . .

| bn1
| bn1 an

 
T T1 0
T =T
b + ww = + ww T
0 T2
donde w = em + em+1 y = bm .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 87 / 101
Divide y Venceras: T = T T y tridiagonal
Supongamos que ya tenemos la factorizacion de Schur de T1 y T2
(pensamiento recursivo):
T1 = Q1 1 Q1T y T2 = Q2 2 Q2T

Q1 1 Q1T
 
0
T = + ww T
0 Q2 2 Q2T

Q1T
     
Q1 0 1 0 T 0
T = + uu
0 Q2 0 2 0 Q2T
donde
Q1T
 
0
u= w
0 Q2T
Entonces los autovalores de T son los autovalores de (D + uu T )
donde D es diagonal con los autovalores de T1 y T2 .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 88 / 101
Divide y Venceras: T = T T y tridiagonal
Como se calculan los autovalores de (D + uu T ) con D diagonal?
Cuentas:
det(D + uu T I) = det[(D I)(I + (D I)1 uu T )].
Quiero: det(I + (D I)1 uu T ) = 0
n
1 T T 1
X ui2
det(I + (D I) uu ) = 1 + u (D I) u =1+
di
i=1

Teorema: Raices de la funcion secular


Los autovalores de (D + uu T ) son las raices de
n
X ui2
f () = 1 +
di
i=1

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 89 / 101


Divide y Venceras: T = T T y tridiagonal

Funcion secular f () para un problema de dimension 4. Los polos de


f () son los autovalores de D, y las raices de f () son los autovalores
de D + uu T .
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 90 / 101
Divide y Venceras: T = T T y tridiagonal
n
X ui2
f () = 1 +
di
i=1

La derivada:
n
X ui2
f 0 () =
(di )2
i=1

Observaciones:
f es monotona entre cada dos polos consecutivos.
Existe una raz en cada intervalo (di , di+1 ).
f () 1 cuando , y entonces existe otra raz mayor que dn si
> 0, y menor que d1 si < 0. Eso completa n raices.
Muy conveniente usar el Metodo de Newton (en paralelo) para calcular
esas n raices. Se sigue un proceso recursivo.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 91 / 101
Metodo de Lanczos (A = AT )
Es el metodo de Arnoldi cuando A = AT ; pero Lanczos aparece en
1950 y Arnoldi en 1951 (i.e., Arnoldi extiende Lanczos).

Propiedad clave de Arnoldi


Sea Vm Rnm de Arnoldi, y sea H
b m R(m+1)m con forma de
mm
Hessenberg, y sea Hm R obtenida eliminando la ultima fila de
Hm . Entonces
b

AVm = Vm+1 H
bm

VmT AVm = Hm

Hm = VmT AVm es Hessenberg pero A = AT , entonces


Hm es simetrica y por lo tanto tridiagonal!
Notacion:
Tm = VmT AVm
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 92 / 101
Metodo de Lanczos (A = AT )

1 1
. .
1 . . . .


Tm =
..


. m1 m1
m1 m
Algoritmo (Lanczos) modificado
Escoger v1 tal que kv1 k2 = 1, 0 = 0, v0 = 0.
para j = 1, 2, . . . , m hacer
wj = Avj j1 vj1
j = vjT wj
wj = wj j vj
j = kwj k2
vj+1 = wj /j
fin
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 93 / 101
Metodo de Lanczos (A = AT )
Como se usa Lanczos para estimar autovalores de A?
Si m = n, Tm y A poseen los mismos autovalores (similaridad).
Si m < n los autovalores de Tm aproximan los de A. Para calcular
los autovalores de Tm se usan las ideas anteriores (facil).

Definiciones
Sea (j , sj ) un par autovalor-autovector de Tm . El escalar j se conoce como
un valor de Ritz, y el vector yj = Vm sj como el vector de Ritz asociado a j .

Teorema
Sea rj = Ayj j yj , j = 1, 2, . . . , m. Entonces en cada intervalo
[j krj k2 , j + krj k2 ] existe un autovalor j de A. Es decir, krj k2 mide
con que precision j aproxima a j . Ademas,

krj k2 = |m ||(sm )j |

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 94 / 101


Metodo de Lanczos (A = AT )

Convergencia de los valores de Ritz a los autovalores de A, usando Lanczos.


La matriz A R2929 posee autovalores i = i desde i = 1 hasta i = 29.
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 95 / 101
Ideas de optimizacion para n muy grande (A = AT )
Problema (autovalores extremos)
Encontrar x Rn y min R tal que
Ax = min x
A es simetrica y PD
(min o max )

Enfoque de optimizacion
Funcion objetivo : Cociente de Rayleigh

x T Ax
(x) =
xT x
2
(x) = (Ax (x)x)
xT x
Se puede usar Cauchy y sus variantes, secante, Newton, etc.
( 100 papers!)
Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 96 / 101
Estimacion de autovalores-autovectores (A 6= AT )
Caso NO simetrico:
El metodo de las potencias y sus variantes quedan igual, salvo que la
convergencia de las iteraciones del Cociente de Rayleigh es
q-cuadratica en lugar de q-cubica.
El metodo QR y sus variantes ahora emulan la Factorizacion:

Teorema: Factorizacion de Schur (general)


Sea A Rnn . Existen Q Rnn ortogonal y T Rnn triangular superior en
bloques tal que

A = Q T TQ.

Cada Tii es un escalar (autovalor de A) o una matriz 2 2, cuyos autovalores


son un par conjugado de autovalores de A.

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 97 / 101


Implementacion eficiente del Metodo QR (A 6= AT )
Idea: Usando (n 2) Reflectores de Householder, por derecha e
izquierda, llevar A a forma Hessenberg antes de empezar.

Asignar H0 := Q0T AQ0 (Hessenberg)

para i = 0, 1, . . . hacer
factorizar Hi =: Qi Ri
Hi+1 := Ri Qi
fin

Verdades
Todas las matrices en la sucesion {Hi } son similares, preservan la forma
Hessenberg y limi Hi = T .
Complejidad de esta variante: O(n3 ) una vez, y O(n2 ) por iteracion!

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 98 / 101


Implementacion eficiente del Metodo QR (A 6= AT )
Idea: Para acelerar, usar desplazamientos!

Dado 0 R, Asignar H0 := Q0T AQ0 (Hessenberg)


para i = 0, 1, . . . hacer
factorizar Hi i I =: Qi Ri
Hi+1 := Ri Qi + i I
fin

Verdades
Todas las matrices en la sucesion {Hi } son similares, preservan la forma
Hessenberg y limi Hi = T .
Escoger i como el autovalor del bloque 2 2 de la esquina mas abajo y a la
derecha de Hi , mas cercano a hnn , produce convergencia q-cuadratica al
menor, y luego deflatar.

Otras opciones: Desplazamiento implcito, doble desplazamiento.


Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 99 / 101
Metodos de Krylov para n grande (A 6= AT )
Algoritmo (Arnoldi) modificado
Escoger v1 tal que kv1 k2 = 1
para j = 1, 2, . . . , m hacer
wj = Avj
para i = 1, 2, . . . , j hacer
hij = viT wj
wj = wj hij vi
fin
hj+1,j = kwj k2
si hj+1,j = 0, parar
sino vj+1 = wj /hj+1,j
fin

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 100 / 101
Metodos de Krylov para n grande (A 6= AT )

Teorema: Reduccion de A a forma de Hessenberg


Sea Vm Rnm de Arnoldi, y sea Hb m R(m+1)m con forma de
mm
Hessenberg, y sea Hm R obtenida eliminando la ultima fila de
Hb m . Entonces

VmT AVm = Hm

Para calcular los autovalores de Hm , que aproximan los de A, se usa


QR y sus variantes.
No es tan eficiente como Lanczos: Investigacion activa!

Raydan (USB) Algebra Lineal Numerica Abril - Julio 2012 101 / 101

You might also like