Académique Documents
Professionnel Documents
Culture Documents
tulo 10
10.1.
Introduccin
o
e
simtricas y herm
e
ticas pero para stas hay, adems, otros algoritmos espec
e
a
cos.
e
el clculo de valores y vectores propios con un signicado diferente a los anteriores.
a
Los primeros buscan obtener todos los valores propios y (opcionalmente) los vectores
215
216
10.2.
El objetivo del mtodo de las potencias es calcular un vector propio de una matriz
e
dada A Fnn . Es extremadamente simple: Dado un vector no nulo x Fn se construye la sucesin tAk xu, k 1, 2, . . .. Esta sucesin de vectores puede no converger
o
o
a un vector, pero frecuentemente la sucesin de los subespacios generados por sus
o
elementos,t Ak x u, s Recordemos que para cada valor propio no hay un vector
.
propio determinado un
vocamente, sino todo un subespacio de ellos (exceptuando
el vector cero que no es un vector propio). Por lo tanto, lo que nos interesa es buscar un subespacio propio de A y despus escoger un vector propio particular; por
e
ejemplo, un vector propio unitario. As pues, debemos estudiar la convergencia de
10.2.1.
Convergencia de subespacios
Fn : S subespacio de dimensin du
o
Para poder hablar de convergencia de subespacios, debemos dotar a Grd pFn q de una
estructura topolgica. Hay dos formas clsicas de hacerlo que producen la misma
o
a
topolog denir una distancia entre subespacios, llamada distancia gap, o identia:
car el conjunto de subespacios de dimensin d con un conjunto cociente de matrices
o
y denir en ste la topolog cociente. Aunque la primera forma de proceder es ms
e
a
a
apropiada para el anlisis numrico porque proporciona cotas cuantitativas en el
a
e
anlisis del error, es tambin la ms larga. Como, adems, no haremos un anlisis
a
e
a
a
a
del error muy riguroso, adoptaremos la segunda aproximacin, que es ms rpida.
o
a a
217
Mn,d pFq
Gld pFq
pFq
n,d
donde Gld pFq representa el conjunto de clases de equivalencia por la relacin que
o
acabamos de denir. En concecuencia, dada una matriz X Mn,d pFq denotaremos
por X Grd pFq el subespacio generado por las columnas de X.
Ahora, Mn,d pFq es un conjunto abierto de Fnd que podemos considerar dotado de
la topolog relativa. En este caso, U Mn,d pFq es abierto en Mn,d pFq si lo es
a
en Fnd . Con esta topolog en Mn,d pFq podemos dotar a Grd pFn q de la topolog
a
a
Mn,d pFq
cociente en Gld pFq : Si
: Mn,d pFq
X
GrdpFnq
X
a
a a
una aplicacin continua. Tenemos adems
o
a
Lema 10.1 es una aplicacin abierta.
o
Demostracin.- Hay que probar que si U Mn,d pFq es abierto entonces pU q
o
es abierto en Grd pFn q. Y, de acuerdo con la denicin de la topolog denida
o
a
n
1 p pU qq es abierto en Mn,d pFq. Ahora bien, Y
en Grd pF q, esto signica que
218
Y X para
U y P GldpFqu
(i) Si Mn,d pFq es el subconjunto de Mn,d pFq de matrices cuyas columnas son
ortonormales y Ud pFq representa el grupo matrices unitarias (ortogonales si
F R) de tamao d d entonces Mn,d pFq{ Gld pFq y Mn,d pFq{Ud pFq son
n
La prueba de que Mn,d pFq{ Gld pFq y Mn,d pFq{Ud pFq son homeomorfos se puede
obtener como consecuencia de que los factores Q y R en la factorizacin QR
o
de A (recordemos que por ser A de rango completo es unica) son funciones
continuas de A.
(ii) Si V
Mn,dpFq entonces
r r
1 p pV qq tQZ : Q V y Z Ud pFqu,
r
y se demuestra igual que en el Lema 10.1 que es una aplicacin abierta.
o
219
(iii) Ya hemos dicho que a Grd pFn q se le puede dotar de una estructura de espacio
mtrico con la llamada mtrica gap. Somos ahora un poco ms precisos en
e
e
a
n
este punto: Dados dos subespacios S1 , S2 Grd pF q se dene la distancia gap
entre S1 y S2 como
pS1 , S2 q }P1 P2 }2
siendo Pi la proyeccin ortogonal sobre Si . Esta denicin es una generalizacin
o
o
o
de un hecho bastante natural para subespacios de dimensin 1. Si dim S1
o
dim S2 1 entonces S1 x y S2 y , digamos, con x $ 0, y $ 0.
En este caso resulta (aunque no es trivial demostrarlo) que }P1 P2 }2 sen
siendo el angulo agudo que forman x, y. Es claro que en este caso pS1 , S2 q
(v) Se demuestra fcilmente que Mn,d pFq es cerrado y acotado; por lo tanto coma
pacto (por ser subespacio de Fnd y F R o C). Como la proyeccin cannica
o
o
r
: Mn,d pFq
pq
n
p q es continua, Grd pF q es compacto.
Mn,d F
Ud F
220
El rec
proco se demuestra igual. Si VS es un entorno abierto de S entonces UX
1 pVS q es un entorno abierto de X. Si existen matrices invertibles Pk tales que
Xk Pk X entonces existe un entero positivo N 0 tal que si k N se tiene que
Xk Pk UX pero VS pUX q. Por lo tanto, para k N se tiene que Sk pXk Pk q
VS . Es decir, Sk S.
r
Usando que es abierta, la demostracin del siguiente resultado es igual que la del
o
Teorema 10.2
Teorema 10.3 Sea tSk uk0,1,2,... Grd pFn q una sucesin de subespacios y S
o
Grd pFq. Sea Q Mn,d pFq una matriz base ortonormal de S y, para k 0, 1, 2, . . .
Qk una matriz base ortonormal de Sk . Entonces Sk S si y slo si para cada
o
k 0, 1, 2, . . . existe una matriz unitaria d d Zk tal que Qk Zk Q.
a
deducir que AS S. En efecto, si x S entonces x Y y Ax AY AY
S.
10.2.2.
221
Este resultado es la base del mtodo de las potencias cuya primera versin es la
e
o
siguiente:
222
qi
A
}Aiqq0}
0 2
Ak q0
Es decir, el algoritmo construye la sucesin
o
}Ak q0}2 del Corolario 10.6. Por
lo tanto, si esta sucesin converge lo hace a un vector propio unitario de A. No
o
obstante, esta sucesin puede no converger y sin embargo s hacerlo la sucesin
o
o
Ak q0
de subespacios
}Ak q0}2 . Esto es lo importante. En tal caso, de acuerdo con
el Corolario 10.6, obtendremos un subespacio propio de A como l
mite.
2. Se usa provisionalmente la expresin hasta convergencia para indicar que,
o
en caso de que la sucesin de subespacios converja, la rutina for se realio
zar un nmero suciente de veces. Ms adelante estudiaremos un criterio de
a
u
a
terminacin de esta rutina.
o
223
3. El algoritmo calcula vectores unitarios qj que cuando qj q proporcionan un vector propio unitario, q, de A. Por eso llamamos vectores propios
aproximados a los vectores qj .
u
4. Con cada vector qj se calcula qj Aqj que es un nmero en F. Si qj fuera un
Aqj ser un valor propio exacto. En efecto:
a
vector propio exacto entonces qj
Aqj
qj qjAqj qjqj
j
Por eso le llamamos valor propio aproximado. Adems, si A es real y x0 es
a
real, entonces todo se realiza en aritmtica real. Es decir, los vectores y valores
e
propios aproximados calculados son reales.
5. An cuando la sucesin qj no converja, si qj converge lo hace a un subesu
o
pacio propio y los vectores qj seguirn siendo vectores propios aproximados.
a
En consecuencia, si qj converge, la sucesin j converger a un valor proo
a
pio de A. Es decir, si el algoritmo converge (en el sentido que qj converge)
se obtiene un vector propio unitario y un valor propio tan aproximados como
se quiera (dentro de la aritmtica en punto otante que se utilice) de A. Pero
e
dado que los vectores propios pueden cambiar de direccin, los criterios para
o
terminar el algoritmo debern tener en cuenta tanto a los vectores propios
a
como a los valores propios.
10.2.3.
(10.1)
224
}zj qj v1}2
Recurdese que la expresin }zj qj
e
o
2 j
O .
v1}2
2 j
O 1 signica que para j sucien-
}zj qj v1}2
j
2
K .
1
Por lo tanto, la segunda parte del Teorema nos dice que, cuando hay convergencia,
4 B
2 j
sta se produce a la misma velocidad a la que la sucesin 1 converge a 0.
e
o
Demostracin.- Es fcil ver que si Avi i vi entonces Aj vi j vi y, en conseo
a
i
cuencia,
Aj q0 1 Aj v1 n Aj vn 1 j v1 n j vn .
1
n
Si 1
As j
j
$ 0, como 1 $ 0 porque |1| |2| 0, podemos denir j }A q0j}2 .
$ 0 y recordando que qj
j qj
v1
Como por hiptesis 2
o
1
2
1
1 1
Aj q0
}Aj q0}2 tenemos que
2
1
j
1, tenemos
concluimos que qj v1 .
v2
n
1
que l j qj
m
j
n
1
j
vn .
(10.2)
Rec
procamente, supongamos qj v1 . Por el Teorema 10.2 existen nmeros
u
j tales que j qj v1 . Sea P la proyeccin sobre v1 a lo largo de v2 , . . . , vn .
o
Entonces P pj qj q P v1 v1 . Pero
P pj qj q
j
j
j
j
P pAj q0 q
P p1 j v1 2 j v2 n j vn q
1
2
n
}Aj q0}2
}Aj q0}2
}Aj q0}2 11v1.
225
j
1 j v1 v1 . Como v1 $ 0 debe ser 1 $ 0. A la proyeccin sobre v1
o
jq }
}A 0 2 1
a lo largo de v2 , . . . , vn se le llama proyeccin espectral sobre el subespacio
o
propio v1 .
As
}xj }2
La sucesin
o
j
2 2
v2
1 j 1
2 2
1,
j
3 3
v3
2
1 j 1
3 3
j
n n
vn
2
1
1
j
n n
j
3 3
j
n n
} }
2
1
} }
} }2
j
}xj }2 K 2 .
1
Por otra parte, como j qj v1 xj y l xj 0 tenemos que l j qj v1 .
m
m
j
A q0 2
1
j
1 1
1 j
A q0
1 dado que
226
1
pv1 xj q 1 1x } pv1 xj q
|j |
}j2
}xj }2 v 1 x .
1
1
j
1 }xj }2
1 }xj }2
1,
}zj qj v1}2 1 2}xjx}2}
} j 2
Para j sucientemente grande 1 }xj }2 1 , por lo que
2
}zj qj v1}2 4}xj }2.
j
2
mos que
K , conclu
1
}zj qj v1}2
j
2
4K
1
227
que escogido un vector al azar, ste sea colineal con uno de los vectores dados.
e
De la misma forma, si escogemos x0 al azar es casi seguro que su componente en
la direccin del subespacio propio asociado al valor propio dominante sea no nula.
o
Una buena prctica consiste en no tomar x0 un vector con estructura (por ejemplo,
a
x0 p1, 0, . . . , 0q) sino al azar.
Si la matriz tiene valores propios complejos an cuando sus valores propios sean
u
distintos pueden tener igual mdulo. esto es claro si la matriz es real con valores
o
propios complejos, pero puede suceder, incluso, con matrices complejas. Por ejemplo,
la matriz
A =
1.0000 + 1.0000i
0
0 - 1.0000i
0 + 2.0000i
1.0000 - 1.0000i
-3.0000
0
0
1.0000
228
eik 1 v1 2 v2 3
3
2
k
v3 n
n
2
k
vn
u
s
2
2
k
o
tal que p entonces hay t subsucesiones en la sucesin de subespacios A x
que convergen, cada una de ellas, a los subespacios generados por los vectores
e
2ksi
t
1 v1 2 v2 ,
En el ejemplo de arriba 1 i e
2i
4
1, . . . , t.
Hay otros casos en los que no cumplindose la condicin (10.1) todav se puede
e
o
a
asegurar la convergencia. Recordemos que A es diagonalizable y supongamos que 1
es un valor propio semisimple pero 1 2 r |r1 | con r n
o 1 n con |n | 0 (el caso A diagonalizable y i 0 para i 1, . . . , n
implica que A 0). En estas condiciones
Ak x k
1
i vi
i 1
i r 1
i
1
k
vi
i 1
i vi
0) tales que k Ak x
i 1
i vi . Es decir,
Ak x
i 1
i vi
. Pero
valor propio 1 .
229
e
se da. Tal y como comentamos antes de la demostracin del Teorema 10.7, la seo
gunda parte de ste nos indica que cuando se dan las condiciones de convergencia,
e
la velocidad a la que los subespacios Aj x0 convergen al subespacio propio correspondiente al valor propio de mayor mdulo es aproximadamente la misma que
o
2 j
la velocidad de convergencia de la sucesin . Si el cociente |2 |{|1 | es prximo
o
o
1
a 1 debemos esperar una convergencia lenta y cuanto ms pequeo sea esta razn,
a
n
o
la convergencia ser ms rpida. En cualquier caso se trata de una razn de convera a a
o
gencia lineal porque depende del cociente |2 |{|1 | y no de su cuadrado, o su cubo,
etc.
Cuando se pretende calcular un unico valor y vector propio, el mtodo de las potencia
e
puede ser una primer algoritmo para conseguir en unas pocas iteraciones un vector
y un valor propio aproximados que puedan servir como valores iniciales para otros
mtodos que convergen ms rpidamente.
e
a a
10.2.4.
Recordemos que al escribir el algoritmo fuimos muy imprecisos sobre cuando deber
a
terminar. Dec
amos que se ejecutar un bucle para calcular los sucesivos vectores
a
unitarios propios aproximados y los correspondientes valores propios aproximados
hasta la convergencia(cuando la haya). Ahora vamos a ser ms precisos.
a
Un posible criterio de nalizacin del algoritmo podr ser cuando la distancia entre
o
a
dos subespacios prximos propios aproximados sea menor que una cantidad previao
mente especicada. Para ello bastar almacenar los vectores propios aproximados
a
calculados en dos pasos sucesivos, digamos qj y qj 1 , y calcular la distancia entre
ellos utilizando la mtrica gap. Esto es sencillo porque sabemos que si Xj qj
e
y Xj 1 qj 1 entonces
pXj , Xj 1 q }PXj
PX }2
j 1
qj qj
y PX j 1
qj1qj1.
As pues, slo habr que modicar el algoritmo para que se ejecutara el clculo de qj
o
a
a
qj 1 q }2 fuera menor que una cantidad previamente especicada.
hasta que }qj qj
j 1
230
Nosotros, sin embargo, utilizaremos otro criterio para terminar el algoritmo de las
potencias y todos los que se derivan de l. Este criterio tiene su fundamento en el
e
siguiente resultado:
Proposicin 10.8 Sea A Fnn , x Cn un vector unitario y C. Sea r
o
Ax x. Existe una matriz E Cnn tal que E F }r}2 y pA E qx x.
Podemos interpretar este resultado como una especie de estabilidad hacia atrs.
a
En efecto, esta proposicin dice que los valores-vectores propios aproximados de A
o
son valores-vectores propios exactos de matrices prximas a A.
o
Demostracin.- La matriz E que se necesita es de rango 1:
o
E
rx
pA E qx Ax rxx Ax r x
porque r
Ax x. Adems
a
}E }2 trpEE q trprxxrq trprrq }r}2,
F
2
}E }F }r}2
}A}F }A}F
El clculo del residuo r es muy fcil en el proceso que dene el algoritmo de las
a
a
}F
potencias y consideraremos obtenida la convergencia cuando el error relativo }E}F
}A
sea menor que una cantidad predeterminada. Es decir, cuando hayamos calculado
r
un valor-vector propio exactos de una matriz A tan prxima a A como necesitemos.
o
Dado que puede no haber convergencia, habr que tomar las precauciones necesarias
a
por si el error relativo nunca alcanza a ser menor que la cantidad prejada.
En conclusin, jaremos un 0 y un nmero mximo de iteraciones y el algoritmo
o
u
a
terminar cuando el error relativo sea menor que o cuando se sobrepase el nmero
a
u
de iteraciones mximo.
a
Con todo esto en mente, la versin nal del algoritmo de las potencias es la siguiente:
o
231
x0
}x0}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)
y
(normalizacin)
o
x
}y}2
iter=iter+1
end while
10.3.
0v y Aj v j0v.
232
1
, . . . n
1
| 1 |
j
usar este vector propio para calcular directamente el valor propio de A: i v1 Av1 .
En otras palabras, modicaremos el mtodo de las potencias para, haciendo uso de
e
los vectores propios unitarios aproximados qj , obtener valores propios aproximados
de A en la forma qj Aqj .
Hay otra modicacin en la implementacin del mtodo de iteracin inversa respecto
o
o
e
o
del de las potencias. El primer paso en el algoritmo del mtodo de las potencias
e
233
qu?
e
La respuesta a esta cuestin est en el anlisis del error en el algoritmo que se emplee
o
a
a
para resolver los sistemas linales. Si este algoritmo es estable hacia atrs (como por
a
ejemplo lo es para casi todas las matrices el de la eliminacin gaussiana), la solucin
o
o
calculada para el sistema (pIn Aqy x es la solucin exacta de algn sistema
o
u
pIn A E qy x conde el error relativo }E }F {}A}F es del orden del epsilon de
la mquina. Si el valor-vector propio (exacto) que estamos buscando est bien
a
a
condicionado, ser muy parecido al de pIn A E q y la sucesin de valores-vectors
a
o
propios calculados seguir convergiendo hacia una valor-vector propio de In A.
a
Dicho de otra manera ms intuitiva, la mayor parte de las veces la propagacin del
a
o
error juega a nuestro favor porque cuando est muy cerca de un valor propio de
a
A, el vector y se calcula, en efecto, de manera inexacta pero, tal y como vimos en
la demostracin del Teorema 10.7,
o
234
x0
}x0}2
res=1
iter=0
normA=}A}F
while res normA e iter itermax
y pIn Aqzx ( pA In qy x)
y
x
}y}2 (vector propio unitario aproximado)
x Ax
(valor propio aproximado)
res=}x Ax}2
(nuevo residuo)
iter=iter+1
end while
De esta forma
pIn Aq1x
p
x
y
}y}2 .
p
pIn Aqx pIn y Aqy }yx}
}}
2
Pongamos w
}yx}
235
. Entonces
p p
p
p
x Ax x pIn Aqx
con
p
p p
x pIn Aqx x w.
Finalmente el residuo es
r
x Ax pIn Aqx x w x.
p
p
p
p
p
Con todo esto en mente el algoritmo de iteracin inversa queda como sigue:
o
x0
}x0}2
res=1
iter=0
normA=}A}F
while res normA e iter
y pIn Aqzx
x
w
}y}2
y
x
}y}2
x w
res=}w x}2
iter=iter+1
end while
10.4.
itermax
236
}x Ax}
xAx
Ax
xxx
x Ax
x x
a
Teorema 10.10 Si A Fnn y x Fn entonces el cociente de Rayleigh de A en x
es el nmero donde se alcanza el mnimo del residuo }x Ax}2 . Es decir
u
m }x Ax}2
n
}Rpxqx Ax}2.
237
x0
}x0}2
x Ax
res=1
iter=0
normA=}A}F
while res normA e iter
y pIn Aqzx
x
w
}y}2
y
x
}y}2
x w
res=}w x}2
iter=iter+1
end while
itermax
x w
p
238
En los ejercicios veremos que, en general, la convergencia del mtodo del cociente de
e
Rayleigh sigue siendo lineal, pero si la matriz es simtrica es, al menos, cuadrtica.
e
a
Ello es debido al siguiente resultado, que se conoce con el nombre de propiedad
estacionaria de los vectores propios de las matrices simtricas.
e
Teorema 10.11 Sea A Rnn una matriz simtrica. Entonces p0 , x0 q es un valore
vector propio de A si y slo si x0 es un punto estacionario o crtico de Rpxq y
o
ajk xj xk ,
j,k 1
as que
n
n
fpxT Axq a x a x .
ik k
ji j
f xi
j 1
k1
Como A es simtrica, aji aij y entonces
e
n
fpxT Axq 2 a x 2pAxq
ij j
i
f xi
j 1
x2 y
j
j 1
fpxT xq 2x .
i
f xi
239
Por lo tanto
por ser x0 un vector propio de A. Esto implica que para k sucientemente grande
Rpk qk q Rpx0 q Op}qk x0 }2 q. Como qk converge a x0 linealmente
(al menos), el residuo converge a cero, a partir de ese k sucientemente grande,
cuadrticamente (al menos).
a
10.5.
Todos los algoritmos tienen como objetivo ultimo reducir una matriz dada A
o
correspondiente a los valores y vectores propios. La nalidad de los que hemos visto
240
hasta ahora era obtener un vector propio unitario (siempre que se den las condiciones
apropiadas) y a partir de ah usando el cociente de Rayleigh, el correspondiente valor
,
propio. Este es el primer paso para obtener la forma de Schur compleja porque, tal
y como mostramos en la demostracin del Teorema de Schur, una vez obtenidos,
o
%
r , para
digamos p1 , q1 q, se puede construir una matriz unitaria, digamos Q q Q
la que
&
AQ 1 b .
Q
0 B
A continuacin se aplica el algoritmo correspondiente a B y as sucesivamente. Este
o
Dada A Fnn
A0 A
for k 0, 1, 2, . . . hasta convergencia
El
jase un desplazamiento k
Calclese la descomposicin QR de Ak k In : Ak k In
u
o
Revirtanse los factortes: Ak1 Rk Qk k In
e
end for
Qk Rk
241
Rk Qk k In Q pAk k In qQk k In
k
Q Ak Qk k Q Qk k In Q Ak Qk ,
k
k
k
1, 2, . . .
Ak Q1 Ak1 Qk1 Q1 Q2 Ak2 Qk2 Qk1 Q1 Q A0 Q0 Qk1
k
k
k
k
0
10.5.1.
Para ver que el algoritmo QR converge en las mismas condiciones que el algoritmo
del cociente de Rayleigh vamos a ver que ambos son esencialmente lo mismo. En
242
2. Resolver el sistema yj pA j In q x1 ,
j
3. Normalizar xj
}yyj}
j 2
sivamente.
Supongamos ahora que hacemos una sola iteracin del algoritmo del cociente de
o
. El desplazamiento inicial ser
Rayleigh por las con vector inicial x0 en
a
e Aen
n
.
Sea q el vector unitario que obtenemos al aplicar esta iteracin (quitamos los sub
o
ndices porque slo hablamos de una iteracin y por comodidad):
o
o
q
A I 1
}eenppA I nqq1}
n
(10.3)
2
QR.
e Aen.
n
Entonces
y
Q
e Q
n
243
RpA Inq1
r
Ahora bien, e Q es la ultima la de Q . Denotmosla por q . Este vector es unitario
e
n
y acabamos de ver que
r
q rnn e pA In q1 .
n
u
reales positivos)
1
rnn
}enpA Inq1}2 ,
y en consecuencia, comparando con (10.3)
q q.
o
e Aen coincide con el vector propio por la izquierda unitario aproximado, q, de
n
A que calcula el mtodo del cociente de Rayleigh cuando se emplea e como vector
e
n
inicial en la primera iteracin . Es decir,
o
r
Q Q q
(10.4)
r
Q
&
r
A Q q
r
r r
Q AQ Q Aq
r
q AQ q Aq
'
244
r
r
Ahora bien, q Aq y q A r q . Por ello, teniendo en cuenta que q es
r
ortogonal a todas las columnas de Q,
r
r r r
r
q AQ r Q q Q r Q
r
r
rr
}qAQ}2 }rQ}2 rQQr.
(10.5)
2
2
r
Nuestro objetivo es demostrar que }q AQ}2 }r }2 . Para ello debemos recordar
r
el Teorema 10.10. De acuerdo con este Teorema, es la solucin del problema de
o
m
nimos cuadrados consistente en calcular el nmero complejo, , que hace m
u
nima
la distancia q q A. Es decir,
r
}r}2 }q qA}2 mC }q qA}2.
n
y C
r
caso, debe suceder que r q q A pIm q qu o equivalentemente q r 0. Es
r
r
decir, r Im Q. Con esto en mente, podemos demostrar que }q AQ}2 }r }2 . En
efecto, por (10.5)
r
rr
}qAQ}2 rQQr,
2
rr
r
r
rr
pero QQ es la proyeccin ortogonal sobre Im Q y r Im Q; por lo tanto QQ r
o
AQ}2 r r }r }2 tal y como desebamos demostrar. En denitiva
r
a
y }q
2
2
p
A
r
r r
Q AQ Q Aq
r
r
q AQ
r
'
r
r
y }q AQ}2 }r }2 siendo r q A q es el residuo del algoritmo del cociente
de Rayleigh aplicado por las a la matriz A con vector inicial e . En conclusin
o
n
pk1q
pkq pk1q
Q1 Ak1 Qk1 y qn
es la ultima la de Qk1 entonces pann , qn
q es el valork
vector propio unitario por la izquierda aproximados que produce el algoritmo del
cociente de Rayleigh aplicado a Ak1 con vector inicial e . Adems la norma del
a
n
%
pkq apkq
vector an1
nn1 es igual a la norma del residuo producido por el algoritmo
del cociente de Rayleigh.
245
Este resultado nos indica que si el algoritmo del cociente de Rayleigh converge para
cito el
la matriz A con vector inicial e entonces usando como desplazamiento expl
n
elemento en la posicin pn, nq de la matriz obtenida en cada iteracin, el algoritmo
o
o
QR con estos desplazamientos produce una sucesin de matrices que converge a una
o
matriz con la forma
B c
0
&
siendo un valor propio de A. Adems , el vector formado por los elementos diaa
gonales de la ultima la de la matriz producida en cada iteracin tiene la misma
o
norma que el residuo producido por el algoritmo del cociente de Rayleigh. Podemos
usar como criterio para terminar el proceso iterativo que la norma de este vector
sea menor que una cantidad previamente especicada. Una vez obtenido un vector
sucientemente pequeo sustituir
n
amos los elementos no diagonales de la ultima la
246
if iteritermax
T pn, 1 : n 1q 0
end if
10.5.2.
p
A In
B In1
h
g
&
p
p
B In1
h
p
p
&
P f
e
&
S r
0
S r
0
&
&
QR.
(10.6)
&
P f
.
e
(10.7)
p
El objetivo es acotar g en funcin de g.
o
En primer lugar, como Q es unitaria, la norma de cada una de sus las y columnas
es 1. En particular, }e}2 | |2 }f }2 | |2 , de donde concluimos que
2
2
}e}2 }f }2.
Por otra parte, en (10.6)
eS.
Suponiendo que S es no singular y }S 1 }2 , tenemos que
}e}2 }g}2.
Ahora como Q es unitaria, despejando R en (10.6) obtenemos
&
S r
0
P e
f
&
&
B In1
h
.
g
247
|| }g}2}h}2 | |.
p
Finalmente de (10.7) obtenemos g e . Poniendo todo junto y teniendo en cuenta,
otra vez, que }e}2 }g }2 conclu
mos
p
}g}2 2}h}2}g}2 | |}g}2,
2
o, con los sub
ndices restaurados,
2
}gk1}2 k }hk }2}gk }2 k |k k |}gk }2.
2
Notemos nalmente que para todo k 1, 2, . . . }hk }2 }A}2 . En efecto, todas las
matrices Ak que se van construyendo mediante el algoritmo QR son unitariamente
semejantes (Ak1 Q Ak Qk ), de modo que }Ak }2 }A}2 . Pero
k
Entonces
2
}gk1}2 k }gk }2 k |k k |}gk }2.
2
(10.8)
Lo primero que sugiere esta expresin es, tal y como ya hemos deducido al comparar
o
los algoritmos QR y cociente de Rayleigh, que el desplazamiento apropiado en cada
iteracin es k k porque esta eleccin proporciona una cota de gk1 en trminos
o
o
e
del cuadrado de }gk }2 . En tal caso, la cota queda
2
}gk1}2 k }gk }2
2
Vamos a suponer que existe un nmero real 0 tal que para todo k 1, 2, . . .
u
}Sk 1}2 .
248
para todo k, la norma de gk1 est acotada por una cantidad que es proporcional
a
al cuadrado de la norma de gk . Se dice que la sucesin t}gk }2 u converge cuadrticao
a
mente, al menos, a cero.
cuadrtica. Al principio puede no serlo, pero llegar un momento en el que lo ser con
a
a
a
seguridad. Se dice que la convergencia del algoritmo QR es localmente cuadrtica.
a
La convergencia cuadrtica es muy conveniente porque, una vez que empieza, es
a
muy rpida. Para hacernos una idea, si 2 1 y }g0 }2 101 , entonces
a
}g1}2 102
}g2}2 104
}g3}2 108
}g4}2 1016
Cuatro iteraciones bastan para reducir el error por debajo de la unidad de redondeo
para la doble precisin.
o
Si A fuera herm
tica, entonces tambin lo ser cada una de las Ak (Recordemos
e
an
Ak1 Qk1 ). En particular tendr
que Ak Qk1
amos que hk gk , de modo que
podemos reemplazar por }gk }2 y la acotacin ser
o
a
stica del comportamiento del algoritmo QR se puede explicar, al menos parcialmente, por la relacin entre este algoritmo y el del mtodo de
o
e
iteracin ortogonal o simultnea que no abordaremos en este curso.
o
a
10.6.
249
Consideraciones nales
Hay muchas ms cosas que decir sobre el algoritmo QR. En particular, su relacin
a
o
con el algoritmo de iteracin simultnea, que es una generalizacin del mtodo de
o
a
o
e
las potencias, es muy importante porque sirve para establecer condiciones sucientes
de convergencia. Otro aspecto importante es la relacin entre el algoritmo QR y la
o
reduccin a forma Hessenberg y, en general, la implementacin prctica del algoritmo
o
o
a
QR (algoritmo QR con desplazamiento impl
cito). Tambin es importante la eleccin
e
o
de los desplazamientos y la reduccin a forma de Schur real cuando la matriz es real.
o
Genricamente las matrices complejas tienen valores propios distintos en mdulo,
e
o
pero esto no es verdad para las matrices reales en las que cuando aparecen valores
propios complejos stos vienen conjugados a pares. Es por eso que la reduccin a
e
o
forma de Schur real es tan importante para estas matrices.
De vez en cuando surgen tipos de matrices para las que el algoritmo QR con los
desplazamientos conocidos no converge. Lo habitual en tales casos es aadir nuevos
n
desplazamientos a la lista de los ya conocidos. Sin embargo, por ahora no hay un
algoritmo universal eciente para todas las matrices.
Finalmente, los algoritmos para el clculo de los valores propios no terminan con
a
el algoritmo QR aunque ste sea el algoritmo de propsito general que ms se utie
o
a
liza. Para matrices con estructura existen algoritmos especiales. Por ejemplo, para
matrices simtricas o herm
e
ticas que son unitariamente diagonalizables adems del
a
algoritmo QR existen otros que aprovechan la estructura de estas matrices. Otro
caso es el de las matrices con muchos elementos iguales a cero (sparse matrices en
ingls). Los algoritmos para el clculo de valores propios han sido y sigue siendo un
e
a
campo de mucha actividad investigadora.
250