Ap Algnum
Ap Algnum
Ap Algnum
DE INGENIERÍA INFORMÁTICA
Apuntes de
ÁLGEBRA NUMÉRICA
para la titulación de
INGENIERÍA INFORMÁTICA
Curso 2002-2003
por
DEPARTAMENTO DE
MATEMÁTICA APLICADA I
Contenido
1 Ecuaciones no lineales 1
1.1 Errores y condicionamiento en problemas numéricos . . . . . . 2
1.2 Método y algoritmo de la bisección: análisis de errores . . . . 4
1.2.1 Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Punto fijo e iteración funcional . . . . . . . . . . . . . . . . . . 8
1.3.1 Cota del error “a posteriori” . . . . . . . . . . . . . . . 9
1.4 Análisis del método de Newton-Raphson . . . . . . . . . . . . 12
1.4.1 Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.2 Análisis de la convergencia: Regla de Fourier . . . . . . 15
1.4.3 Método de Newton para raı́ces múltiples . . . . . . . . 18
1.5 Un problema mal condicionado: ceros de un polinomio . . . . 20
1.5.1 Sucesiones de Sturm . . . . . . . . . . . . . . . . . . . 23
1.5.2 Algoritmo de Horner . . . . . . . . . . . . . . . . . . . 26
1.6 Sistemas de ecuaciones no lineales . . . . . . . . . . . . . . . . 28
1.6.1 Método de Newton . . . . . . . . . . . . . . . . . . . . 30
1.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 33
i
ii Contenido
Índice 139
1. Ecuaciones no lineales
1
2 Ecuaciones no lineales
Dado que cualquier algoritmo puede cometer errores, no sólo por el algoritmo
en sı́, sino porque los datos pueden venir afectados de algún tipo de error
(redondeo, etc.) es muy importante el estudio de los distintos tipos de error
que puedan cometerse con vista a la fiabilidad de los resultados.
Se denomina error absoluto de un número x que aproxima a otro x a la
distancia entre ellos. Ası́, por ejemplo, en el caso real vendrá dado por |x − x|,
es decir, por el valor absoluto de la diferencia entre ambos.
Obsérvese que si sólo disponemos del dato de que el error es, por ejemplo,
de 1m. no sabemos nada acerca de la fiabilidad del resultado, ya que no es lo
mismo decir que se ha cometido un error de un metro al medir la altura de
una persona que al medir la distancia entre dos galaxias.
Debemos reflejar de alguna manera “lo que se está evaluando” en el dato del
error. Para ello se utiliza el denominado error relativo que es el cociente entre
el error absoluto y el objeto evaluado, es decir, en el caso real
x−x
.
x
En el caso x = 0 sólo se utiliza el error absoluto. En la mayorı́a de los procesos
numéricos utilizaremos como error el error absoluto ya que lo que nos interesa
conocer es el número de cifras decimales exactas que posee.
Evidentemente cualquier algoritmo que trabaje con unos datos afectados de
algún tipo de error nos proporcionará unos resultados que también vendrán
afectados de errores. Estos errores pueden depender sólo de los datos iniciales
o también del proceso que se ha realizado.
Supongamos que, queremos evaluar f (x) y damos un dato aproximado x. Es
evidente que, en general, si x 6= x será f (x) 6= f (x).
Dado que f (x) − f (x) ' (x − x)f 0 (x), se tiene que
por lo que aunque el error del dato sea muy pequeño, si la derivada f 0 (x) es
muy grande, el resultado obtenido f (x) puede diferir mucho del valor exacto
f (x). Además el problema no está en el algoritmo que se aplique para evaluar
f (x) sino en el propio problema a resolver.
Diremos que un problema está mal condicionado si pequeños errores en los
datos producen grandes errores en los resultados.
Se trata entonces de definir algún número que nos indique el condiciona-
miento del problema. A éste número lo llamaremos número de condición del
problema y lo denotaremos por κ. En el ejemplo anterior es evidente que
κ(x) = |f 0 (x)|
a+b b−a
a) Tomamos α0 = y ε= .
2 2
b) Si f (α0 ) = 0 entonces FIN. α = α0 es la raı́z exacta.
Si f (α0 ) > 0 entonces hacemos b = α0 .
Si f (α0 ) < 0 entonces hacemos a = α0 .
a+b b−a
Se repite el paso 1, es decir, hacemos α0 = y ε= .
2 2
Método y algoritmo de la bisección: análisis de errores 5
El error cometido, tomando como raı́z de la ecuación el punto medio del inter-
b−a
valo obtenido en la en la iteración n-ésima, viene dado por εn = n+1 , por lo
2
1 −3
que si b − a = 1 y n = 9 se tiene que ε9 < 10 < 10 , es decir, en 9 iteraciones
2
obtenemos tres cifras decimales exactas.
1.2.1 Algoritmo
ai + b i
Para i = 0, 1, 2, . . . , n, . . ., Ii = [ai , bi ] y mi = (punto medio del
2
intervalo Ii ) con
[ai , mi ] si sig(f (ai )) 6= sig(f (mi ))
I0 = [a, b] y Ii+1 =
[m , b ] si sig(f (b )) 6= sig(f (m ))
i i i i
Input: a, b, ε, f (x)
Output: m
• Si son f (c) y f (b) los que tienen signos contrarios, la raı́z está en el
intervalo [c, b].
Input: a, b, ε, f (x)
Output: c
c←a
while absf (c) > ε
b−a
c ← b − f (b) ·
f (b) − f (a)
if f (c) = 0
a←c
b←c
end if
if signf (a) = signf (c)
a←c
end if
if signf (b) = signf (c)
b←c
end if
end
print c
con c ∈ (xn−1 , xn ) (xn , xn−1 ) y, por tanto, en [a, b], por lo que
es decir
|x2 − x1 | ≤ q |x1 − x0 |
|x3 − x2 | ≤ q |x2 − x1 | ≤ q 2 |x1 − x0 |
...................................
|xn+1 − xn | ≤ q n |x1 − x0 |
Punto fijo e iteración funcional 9
Si construimos la serie
por lo que
(x − x0 )(1 − ϕ0 (c)) = 0
y dado que el segundo paréntesis es no nulo, se tiene que x = x0 .
En la Figura 1.2 puede observarse que el método converge si |ϕ0 (x)| ≤ q < 1,
mientras que si |ϕ0 (x)| > 1 el método es divergente.
En los casos (a) y (b), en los que |ϕ0 (x)| ≤ q < 1 el método converge
monótonamente en (a) y de forma oscilatoria o en espiral en (b).
En los casos (c) y (d), en los que |ϕ0 (x)| > 1 el método diverge de forma
monótona en (a) y de forma oscilatoria en (b).
(a) (b)
x0 x0
(c) (d) ?
x0 x0
Figura 1.2: Esquema de la convergencia para el teorema del punto fijo.
|x226 − 3|
ε26 < = 4.884981308350688 · 10−15 < 10−14
2
√
es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas.
f (xn )
f (x) ' f (xn ) + h · f 0 (xn ) ⇒ h ' −
f 0 (xn )
por lo que
f (xn )
x ' xn −
f 0 (xn )
obteniéndose la denominada fórmula de Newton-Raphson
f (xn )
xn+1 = xn − (1.1)
f 0 (xn )
f (lim xn )
lim xn+1 = lim xn − ⇒ f (lim xn ) = 0
f 0 (lim xn )
x!
!
x2 x1 x0
f (xn ) f (xn ) f (xn )
εn+1 = x − xn+1 = x − xn − 0 = (x − xn ) + 0
= εn + 0
f (xn ) f (xn ) f (xn )
por lo que
|f 00 (t)| 2
|εn+1 | = ε ≤ k · ε2n (1.2)
2 |f 0 (xn )| n
|f 00 (x)|
donde k ≥ máx siendo [a, b] cualquier intervalo, en caso de existir,
x∈[a,b] 2|f 0 (x)|
que contenga a la solución x y a todas las aproximaciones xn .
Esta última desigualdad podemos (no queriendo precisar tanto) modificarla
para escribir
máx |f 00 (x)|
k≥ con x ∈ [a, b] y f 0 (x) 6= 0
2 mı́n |f 0 (x)|
o lo que es lo mismo:
1 n
|εn | ≤ · |k · ε0 |2
k
donde es necesario saber acotar el valor de ε0 = x − x0 .
Es decir, si existe un intervalo [a, b] que contenga a la solución y a todas
las aproximaciones xn se puede determinar a priori una cota del error, o lo
que es lo mismo, se puede determinar el número de iteraciones necesarias para
obtener la solución con un determinado error.
1
Evidentemente, el proceso convergerá si |k · ε0 | < 1, es decir, si |ε0 | < . En
k
caso de ser convergente, la convergencia es de segundo orden como puede verse
en la ecuación (1.2).
1.4.1 Algoritmo
Una vez realizado un estudio previo para ver que se cumplen las condiciones
que requiere el método, establecer el valor inicial x0 y calcular el valor de
m = mı́n |f 0 (x)|, el algoritmo es el siguiente
x∈[a,b]
Input: a, b, x0 , ε, f (x), m
Output: x
x ← x0
e ← abs( f(x)/m)
while e > ε
f (x)
x←x−
f 0 (x)
e ← abs( f(x)/m)
end
print x
x0 =2
x1 = 1.75000000000000
x2 = 1.73214285714286
x3 = 1.73205081001473
x4 = 1.73205080756888
|f (xn )|
El error vendrá dado, al igual que en el Ejercicio 1.2 por εn < ,
mı́n |f 0 (x)|
x∈[1,2]
por lo que
|x24 − 3|
ε4 < = 4.884981308350688 · 10−15 < 10−14
2
√
es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas.
1 A
Nota: La fórmula xn+1 = xn + es conocida como fórmula de Heron
2 xn
ya que este matemático la utilizaba para aproximar la raı́z cuadrada de un
número real positivo A hacia el año 100 a.C. pues sabı́a que si tomaba un
valor inicial x0 y éste fuese mayor que la raı́z buscada, necesariamente A/x0
serı́a menor que su raı́z y viceversa, por lo que la media entre ambos debı́a ser
una mejor aproximación que x0 . En otras palabras, en cada iteración tomaba
como aproximación de la raı́z la media aritmética entre el valor xn anterior y
el cociente A/xn .
9
r
x
0
b
b
r
b
b
x0
c) Un valor inicial cercano a una raı́z puede converger a otra raı́z muy
distante de la anterior como consecuencia de encontrarse pendientes
cercanas a cero. Una pendiente nula provoca una división por cero
(geométricamente, una tangente horizontal que jamás corta al eje de
abscisas).
Análisis del método de Newton-Raphson 17
#
# Z -
@ #
I # r r Z
Z
@ x0 x0
Teorema 1.4 [Regla de Fourier] Sea f (x) una función continua y dos
veces derivable [a, b]. Si sig f (a) 6= sig f (b) y sus dos primeras derivadas f 0 (x)
y f 00 (x) no se anulan en [a, b] existe una única raı́z de la ecuación f (x) = 0 en
dicho intervalo y se puede garantizar la convergencia del método de Newton-
Raphson tomando como valor inicial x0 el extremo del intervalo en el que la
función y su segunda derivada tienen el mismo signo.
18 Ecuaciones no lineales
a a b b
b b a a
6
y=x
y = sen x
-1
-
0 1
de Newton.
xn − sen xn sen xn − xn cos xn
xn+1 = xn − =
1 − cos xn 1 − cos xn
x0 = 1
.....................
0
f (x10 ) = 00 0001 . . .
x10 = 00 016822799 . . . f 00 (x10 ) = 00 016 . . .
000
f (x10 ) = 00 9998 . . .
.....................
0
f (x20 ) = 00 00000001 . . .
x20 = 00 0000194 . . . f 00 (x20 ) = 00 0019 . . .
000
f (x20 ) = 00 9999 . . .
Como la convergencia es muy lenta, hace pensar que se trata de una raı́z
múltiple. Además, como la primera y la segunda derivadas tienden a cero y
la tercera lo hace a 1, parece que nos encontramos ante una raı́z triple, por lo
que aplicamos el método generalizado de Newton.
xn − sen xn
xn+1 = xn − 3
1 − cos xn
que comenzando, al igual que antes, por x0 = 1 se obtiene:
x0 =1
x1 = −00 034 . . .
x2 = 00 000001376 . . .
x3 = 00 00000000000009 . . .
20 Ecuaciones no lineales
Pn (x) = a0 (x − x1 )(x − x2 ) · · · (x − xn )
A
|x| < 1 + con |x| > 1
|a0 |
Es evidente que esta cota también la verifican las raı́ces x con |x| < 1.
• Si fi (c) = 0 entonces fi−1 (c) y fi+1 (c) tienen signos opuestos, es decir,
fi−1 (c) · fi+1 (c) < 0. (Engloba al apartado anterior).
f0 (x)
• Si f0 (c) = 0 con c ∈ [a, b] entonces pasa de negativa a positiva
f1 (x)
en c. (Está bien definida en c por ser f1 (c) 6= 0 y es creciente en dicho
punto).
Teorema 1.5 [Teorema de Sturm]. Sea f0 (x), f1 (x), . . . , fn (x) una sucesión
de Sturm en el intervalo [a, b] y consideremos las sucesiones
sig[f0 (a)] sig[f1 (a)] · · · sig[fn (a)]
sig[f0 (b)] sig[f1 (b)] · · · sig[fn (b)]
teniendo en cuenta que si alguna de las funciones se anula en uno de los
extremos del intervalo [a, b] pondremos en su lugar, indistintamente, signo +
o - y denotemos por N1 al número de cambios de signo de la primera sucesión
y por N2 al de la segunda (siempre es N1 ≥ N2 ).
En estas condiciones, el número de raı́ces existentes en el intervalo [a, b] de
la ecuación f0 (x) = 0 viene dado por N1 − N2 .
24 Ecuaciones no lineales
Para determinar las demás funciones de la sucesión vamos dividiendo fi−1 (x)
entre fi (x) para obtener
Ejemplo 1.6 Vamos a construir una sucesión de Sturm que nos permita se-
parar las raı́ces de la ecuación x4 + 2x3 − 3x2 − 4x − 1 = 0.
f0 (x) = x4 + 2x3 − 3x2 − 4x − 1. f00 (x) = 4x3 + 6x2 − 6x − 4.
Un problema mal condicionado: ceros de un polinomio 25
f2 (x) = 9x2 + 9x + 2.
f3 (x) = 2x + 1.
f4 (x) = 1.
−∞ −3 −2 −1 0 1 2 +∞
f0 (x) = x4 + 2x3 − 3x2 − 4x − 1 + + − − − − + +
f1 (x) = 2x3 + 3x2 − 3x − 2 − − ± + − ± + +
f2 (x) = 9x2 + 9x + 2 + + + + + + + +
f3 (x) = 2x + 1 − − − − + + + +
f4 (x) = 1 + + + + + + + +
cambios de signo 4 4 3 3 1 1 0 0
Sabemos, por ello, que existe una raı́z en el intervalo (−3, −2), dos raı́ces en
el intervalo (−1, 0) y una cuarta raı́z en el intervalo (1, 2).
26 Ecuaciones no lineales
Si, una vez eliminadas las raı́ces múltiples y separadas las raı́ces, queremos
resolver la ecuación, utilizaremos (excepto en casos muy determinados como el
del Ejemplo 1.4) el método de Newton-Raphson. Al aplicarlo nos encontramos
con que tenemos que calcular, en cada paso, los valores de P (xn ) y P 0 (xn ) por
lo que vamos a ver, a continuación, un algoritmo denominado algoritmo de
Horner que permite realizar dichos cálculos en tiempo lineal.
Sea
P (x) = a0 xn + a1 xn−1 + · · · + an−1 x + an .
P (x) − P (x0 )
= Q(x) = b0 xn−1 + b1 xn−2 + · · · + bn−2 x + bn−1
x − x0
Un problema mal condicionado: ceros de un polinomio 27
se tiene que
b 0 = a0
b 1 = a1 + x 0 b 0
b 2 = a2 + x 0 b 1
..
.
bn−1 = an−1 + x0 bn−2
r = P (x0 ) = an + x0 bn−1
a0 a1 a2 ··· an−1 an
x0 x0 b0 x0 b1 · · · x0 bn−2 x0 bn−1
b0 b1 b2 ··· bn−1 P (x0 )
se tiene que
P 0 (x0 ) = Q(x0 )
y el cálculo de Q(x0 ) es análogo al que hemos realizado para P (x0 ), es decir,
aplicando el algoritmo de Horner a Q(x) obtenemos
Si utilizamos la regla de Ruffini sólo tenemos que volver a dividir por x0 como
se muestra a continuación.
por lo que
P (2) = 31 y P 0 (2) = 68
f2 (x1 , x2 , . . . , xm ) = 0
..
.
fm (x1 , x2 , . . . , xm ) = 0
f : D ⊂ Rm → Rm
Como hemos transformado nuestro sistema en una ecuación del tipo f (x) = 0,
parece lógico que tratemos de resolverla por algún método paralelo a los estu-
diados para ecuaciones no lineales como puedan ser la utilización del teorema
del punto fijo o el método de Newton.
Si buscamos un método iterado basado en el teorema del punto fijo, debe-
mos escribir la ecuación f (x) = 0 de la forma x = F (x) (proceso que puede
realizarse de muchas formas, la más sencilla es hacer F (x) = x + f (x)) para,
partiendo de un vector inicial x0 construir la sucesión de vectores
x1n+1 = F1 (x1n , x2n , . . . , xm
n)
x2 = F2 (x1 , x2 , . . . , xm )
n+1 n n n
xn+1 = F (xn )
..
.
m
xn+1 = Fm (x1n , x2n , . . . , xm n)
y la sucesión
x0 , x1 , . . . , xn , . . .
converge a la única raı́z de la ecuación x = F (x) en la bola considerada
(intervalo de Rm ).
Es importante observar que:
b) Se ha utilizado una versión del teorema del valor medio para varias va-
riables al decir que
x = xn + h
Sistemas de ecuaciones no lineales 31
de donde
h ' −f 0−1 (xn )f (xn )
y, por tanto
x ' xn − f 0−1 (xn )f (xn ).
Esta aproximación es que utilizaremos como valor de xn+1 , es decir
f1 (x)
t 1
t
-1 1
-2 2
-0’5
f2 (x)
-1
obteniéndose el sistema
−00 25 −1 h12 −00 0625
=
0 2 0
−0 5 8 h2 −0 0625
h12 00 022561 . . .
cuya solución es h2 = = y, por tanto
0
h22 −0 006 . . .
−00 227439 . . .
x2 = x1 + h2 =
00 994 . . .
Ejercicio 1.2 Probar que la ecuación x2 + ln x = 0 sólo tiene una raı́z real y
hallarla, por el método de Newton, con 6 cifras decimales exactas.
Ejercicio 1.4 Dada la ecuación 8x3 − 4x2 − 18x + 9 = 0, acotar y separar sus
raı́ces reales.
b) Probar, mediante una sucesión de Sturm, que P (x) sólo posee una raı́z
real y determinar un intervalo de amplitud 1 que la contenga.
Ejercicio 1.6 Aplicar el método de Sturm para separar las raı́ces de la ecuación
y obtener la mayor de ellas con seis cifras decimales exactas por el método de
Newton.
34 Ecuaciones no lineales
a) Probar, mediante una sucesión de Sturm, que posee una única raı́z en el
intervalo (6, 7).
Fig. 1 Fig. 2
c) ¿Cuál de los extremos del intervalo [a, a + 1] debe tomarse como valor
inicial para asegurar la convergencia del método de Newton?
a) Acotar las raı́ces y construir una sucesión de Sturm para probar que sólo
posee dos raı́ces reales, una positiva y otra negativa, dando intervalos de
amplitud 1 que las contengan.
c) Aplicar Fourier para determinar el valor inicial que debe tomarse para
garantizar la convergencia del método de Newton en el cálculo de la raı́z
negativa. ¿Tenemos las tres cifras exactas si tomamos como raı́z -4.646 ?
a) Utilizar una sucesión de Sturm para probar que el polinomio p(x) sólo
tiene una raı́z α ∈ R y que ésta se encuentra en el intervalo I = [0, 3].
a) ¿Puede carecer de raı́ces reales? ¿y tener dos y sólo dos raı́ces reales?
b) Utilizar el método de Sturm para probar que tiene una única raı́z real
si, y sólo si, k < 0 o k > 4, y que sólo tiene raı́ces múltiples si k = 0 o
k = 4 no existiendo, en ningún caso, una raı́z triple.
c) Para k = −4 admite una única raı́z real en el intervalo [0, 1]. Si tomamos
como valor aproximado de la raı́z x = 00 3553 ¿de cuántas cifras decimales
exactas disponemos?
d) Si, en el caso anterior en que k = −4, aplicamos el método de Newton
para hallar la raı́z del polinomio, ¿cuál de los extremos del intervalo [0, 1]
deberı́amos tomar como valor inicial x0 para garantizar la convergencia?
y ¿qué valor obtendrı́amos para x2 ?
2. Sistemas de ecuaciones linea-
les
kx · yk ≤ kxk kyk
39
40 Sistemas de ecuaciones lineales
d(x, y) = 0 ⇐⇒ kx − yk = 0 ⇐⇒ x − y = 0 ⇐⇒ x = y.
• d(x, y) = kx − yk = kx − z + z − yk ≤ kx − zk + kz − yk =
= d(x, z) + d(z, y).
Normas vectoriales y matriciales 41
lim kvk − vk = 0
k→∞
Esta definición coincide con la idea intuitiva de que la distancia de los vectores
de la sucesión al vector lı́mite v tiende a cero a medida que se avanza en la
sucesión.
kAxk ≤ kAkkxk
cualquiera que sea el vector x del espacio. (Obsérvese que no es lo mismo que
la propiedad multiplicativa de una norma, ya que aquı́ se están utilizando dos
normas diferentes, una de matriz y otra de vector).
Ası́ pues, definiremos
kAxk
kAk = máx = máx{kAxk : kxk = 1}
x∈V −{0} kxk
de tal forma que a cada norma vectorial se le asociará, de forma natural, una
norma matricial.
• Norma-1
Si utilizamos la norma-1 de vector obtendremos
n
X
Dado que Ax = y =⇒ yi = aik xk se tiene que
k=1
n X
X n
kAk1 = máx{ |aik xk | : kxk1 = 1}.
i=1 k=1
• Norma euclı́dea
Utilizando la norma euclı́dea de vector se tendrá que
√ √
kAk2 = máx{ x∗ A∗ Ax : x∗ x = 1}
Descargando ahora el peso en los autovectores de la matriz A∗ A obtene-
mos que
p √ p
kAk2 = máx{ x∗ λi x : x∗ x = 1} = máx λi = máx σi
i i i
Como ahora se dará el máximo en un vector que tenga todas sus coor-
denadas iguales a 1, se tiene que
n
X
kAk∞ = máx |aij |.
i
j=1
Tenemos pues, que las normas asociadas (algunas veces llamadas subordina-
das) a las normas de vector estudiadas anteriormente son:
n
X
Norma-1 kAk1 = máx kAxk1 = máx |aij |.
kxk1 =1 j
i=1
n
X
Norma infinito kAk∞ = máx kAxk∞ = máx |aij |.
kxk∞ =1 i
j=1
Normas vectoriales y matriciales 43
U ∗U = U U ∗ = I
es decir, si U ∗ = U −1 .
Demostración.
kAxk2
Demostración. Dado que kAk2 = máx si U es unitaria, se tiene
x∈V −{0} kxk2
que:
44 Sistemas de ecuaciones lineales
kU xk2 kxk2
kU k2 = máx = máx = 1.
x∈V −{0} kxk2 x∈V −{0} kxk2
Es decir, si U es unitaria kU k2 = kU ∗ k2 = 1.
Si B = U ∗ AU tenemos: kBk2 ≤ kU ∗ k2 kAk2 kU k2 = kAk2
Como A = U BU ∗ , es: kAk2 ≤ kU k2 kBk2 kU ∗ k2 = kBk2
De ambas desigualdades se deduce que kBk2 = kAk2 .
Teorema 2.3 El radio espectral de una matriz es una cota inferior de todas
las normas multiplicativas de dicha matriz.
Por otra parte sabemos que kAxi k ≤ kAk kxi k. Por tanto:
|λi | kxi k ≤ kAk kxi k siendo kxi k 6= 0 por tratarse de autovectores. Se obtiene
entonces que |λi | ≤ kAk para cualquiera que sea i = 1, 2, . . . , r, de donde
máx |λi | ≤ kAk, es decir: ρ(A) ≤ kAk.
i
a) Su tamaño
b) Su estructura
0 0 a43 a44
a11 a12 a13 a14
0 a22 a23 a24
• Triangulares superiores: 0
0 a33 a34
0 0 0 a44
a11 0 0 0
a12 a22 0 0
• Triangulares inferiores:
a31 a32 a33 0
a) Métodos directos
b) Métodos iterados
en la solución un error del mismo orden, mientras que diremos que el sistema
está mal condicionado si el error que producen en la solución del sistema es de
orden superior al de los datos. Es decir:
A−A <ε kx − xk ' ε sistema bien condicionado
=⇒
b−b <ε
kx − xk ε sistema mal condicionado
3x + 4y = 7
x
1
de solución =
3x + 4.00001y = 7.00001 y 1
3x + 4y = 7
x
7.6̄
de solución =
3x + 3.99999y = 7.00004 y −4
3x + 4y = 7
x
1
de solución =
4x − 3y = 1 y 1
kIk
Si kI − Ak < 1 entonces kA−1 k ≤ . En efecto:
1 − kI − Ak
A · A−1 = I =⇒ [I − (I − A)]A−1 = I =⇒
A−1 − (I − A)A−1 = I =⇒ A−1 = I + (I − A)A−1 =⇒
kA−1 k = kI + (I − A)A−1 k ≤ kIk+k(I − A)A−1 k ≤ kIk+kI − Ak kA−1 k ⇒
kA−1 k − kI − Ak kA−1 k ≤ kIk =⇒ (1 − kI − Ak) kA−1 k ≤ kIk =⇒
kIk
A−1 ≤
1 − kI − Ak
Es decir:
kIk
κ(A) ≤ kAk · k con k=
1 − kI − Ak
Debemos tener cuidado con esta acotación ya que si tenemos una matriz casi
regular, es decir, con det(A) ' 0, quiere decir que tiene un autovalor próximo
a cero, por lo que la matriz I − A tiene un autovalor próximo a 1 y será el
mayor de todos. En este caso kI − Ak ' 1, por lo que k → ∞ y darı́a lugar a
un falso condicionamiento, ya que A no tiene que estar, necesariamente, mal
condicionada.
3x + 4y = 7
3x + 4.00001y = 7.00001
Se tiene que
3 4
A= =⇒ det(A) = 0.00003
3 4.00001
−1 1 4.00001 −4
A =
0.00003 −3 3
n
X
Utilizando la norma infinito kAk∞ = máx |aij | se tiene que
i
j=1
kAk∞ = 7.00001
56
8.00001 =⇒ κ∞ (A) ' · 105 > 1.8 · 106
kA−1 k∞ = 3
0.00003
Se trata pues, de un sistema mal condicionado.
50 Sistemas de ecuaciones lineales
n
X
Si utilizamos la norma-1 kAk1 = máx |aij | obtenemos:
j
i=1
kAk1 = 8.00001
56
7.00001 =⇒ κ1 (A) ' · 105 > 1.8 · 106
kA−1 k1 =
3
0.00003
obteniéndose, también, que se trata de un sistema mal condicionado.
a) Dado que kxk = kIxk ≤ kIkkxk, se verifica que kIk ≥ 1, cualquiera que
sea la norma utilizada. Como, por otra parte AA−1 = I se tiene que
q
kAk2 = máx λi (A∗ A) = σn
i
q q
kA−1 k2 = máx λi (A−1 )∗ A−1 = máx λi (A∗ )−1 A−1 =
i i
r r
q
∗ −1 1 1
= máx λi (AA ) = máx ∗
= =
i i λi (AA ) mı́ni λi (AA∗ )
Sistemas de ecuaciones lineales 51
r r
1 1
= = =⇒
mı́ni λi (A∗ A) mı́ni σi2
1
A−1 2
=
σ1
⇐) A = zU =⇒ κ2 (A) = 1. En efecto:
A = zU =⇒ A∗ A = zU ∗ zU = |z|2 U ∗ U = |z|2 I =⇒
λi (A∗ A) = |z|2 cualquiera que sea i = 1, 2, . . . , n y, por tanto,
σ1 = σ2 = · · · = σn = |z|
por lo que
σn
κ2 (A) = =1
σ1
⇒) κ2 (A) = 1 =⇒ A = zU .
En efecto: sabemos que si A es diagonalizable existe una matriz
regular R tal que R−1 AR = D con D = diag(λi ) (R es la matriz
de paso cuyas columnas son los autovectores correspondientes a los
52 Sistemas de ecuaciones lineales
R−1 A∗ AR = σ 2 I
Entonces
A∗ A = R(σ 2 I)R−1 = σ 2 (RIR−1 ) = σ 2 I
Ahora bien
1 ∗ 1
A A =I
σ σ
1 1
Llamando U = A se tiene que U ∗ = A∗ , ya que σ ∈ R ⇒ σ = σ.
σ σ
∗ 1 ∗ 1
Se tiene entonces que A = σU con U U = A A = I, es
σ σ
decir, con U unitaria.
Los sistemas mejor condicionados son aquellos que tienen sus filas o columnas
ortogonales y mientras mayor sea la dependencia lineal existente entres ellas
peor es el condicionamiento del sistema.
Al ser κ(AU ) = κ(U A) = κ(A) trataremos de buscar métodos de resolución
de sistemas de ecuaciones lineales que trabajen con matrices unitarias que
no empeoren el condicionamiento del sistema como lo hace, por ejemplo, el
método de Gauss basado en la factorización LU . Sin embargo, dado que ha
sido estudiado en la asignatura de Álgebra Lineal, comenzaremos estudiando
dicho método aunque pueda alterarnos el condicionamiento del problema.
Empezaremos estudiando pues, como métodos directos, los basados en la
factorización LU y la de Cholesky.
Factorización LU 53
2.3 Factorización LU
Al aplicar el método de Gauss al sistema Ax = b realizamos transformaciones
elementales para conseguir triangularizar la matriz del sistema. Si este proceso
puede realizarse sin intercambios de filas, la matriz triangular superior U obte-
nida viene determinada por el producto de un número finito de transformacio-
nes fila Fk Fk−1 · · · F1 aplicadas a la matriz A. Llamando L−1 = Fk Fk−1 · · · F1
(ya que el determinante de una transformación fila es ±1 y, por tanto, su pro-
ducto es inversible) se tiene que L−1 A = U , o lo que es lo mismo, A = LU .
Además, la matriz L es una triangular inferior con unos en la diagonal.
Esta factorización es única ya que de existir otra tal que A = L0 U 0 = LU
se tendrı́a que L−1 L0 = U U 0−1 . Como L−1 también es triangular inferior
con unos en la diagonal, el producto L−1 L0 también es una matriz del mismo
tipo. Análogamente, el producto U U 0−1 resulta ser una triangular superior. El
hecho de que L−1 L0 = U U 0−1 nos dice que necesariamente L−1 L0 = I, ya que
es simultáneamente triangular inferior y superior y su diagonal es de unos. Ası́
pues L−1 L0 = I, por lo que L = L0 y, por tanto U = U 0 es decir, la factorización
es única.
Debido a la unicidad de la factorización, ésta puede ser calculada por un
método directo, es decir, haciendo
1 0 0 ··· 0 u11 u12 u13 · · · u1n
l21 1 0 · · · 0 0 u22 u23 · · · u2n
l31 l32 1 · · · 0 0 0 u33 · · · u3n
A=
.. .. .. . . .. .. .. .. .. .
. ..
. . . . . . . .
ln1 ln2 ln3 · · · 1 0 0 0 · · · unn
y calculando los valores de los n2 elementos que aparecen entre las dos matrices.
3 1 2
Ası́, por ejemplo, para A = 6 3 2 tenemos
−3 0 −8
3 1 2 1 0 0 u11 u12 u13
6 3 2 = l21 1 0 0 u22 u23 =
−3 0 −8 l31 l32 1 0 0 u33
u11 u12 u13
= l21 u11 l21 u12 + u22 l21 u13 + u23
l31 u11 l31 u12 + l32 u22 l31 u13 + l32 u23 + u33
por lo que de la primera fila obtenemos que
u11 = 3 u12 = 1 u13 = 2
54 Sistemas de ecuaciones lineales
es decir:
3 1 2 1 0 0 3 1 2
6 3 2 = 2 1 0 0 1 −2
−3 0 −8 −1 1 1 0 0 −4
Teorema 2.4 Una matriz regular A admite factorización LU si, y sólo si, sus
matrices fundamentales Ai (i = 1, 2, . . . , n) son todas regulares.
(2)
donde a1i = a1i para i = 1, 2, . . . , n.
a21
Si nos fijamos ahora en a222 = a22 − a12 podemos ver que es no nulo, ya
a11
que de ser nulo serı́a
n
X
b) Por columnas: si |aii | > |aki | i = 1, 2, . . . , n
k=1
k 6= i
3 1 1
Ası́, por ejemplo, la matriz A = 0 2 1 es de diagonal dominante
2 −1 5
por filas pero no por columnas.
α1 α2 αn
ak1 + ak2 + · · · + akk + · · · + akn = 0 =⇒
αk αk αk
α1 αk − 1 αk + 1 αn
akk = −ak1 − · · · − ak k−1 − ak k+1 − · · · − akn =⇒
αk αk αk αk
n n
X αi X
|akk | ≤ |aki | ≤ |aki |
i=1
αk i=1
i 6= k i 6= k
Otro tipo de matrices de las que se puede asegurar que admiten factorización
LU son las hermı́ticas definidas positivas, ya que las matrices fundamentales de
éstas tienen todas determinante positivo, por lo que el Teorema 2.4 garantiza
la existencia de las matrices L y U .
Es conocido que toda matriz hermı́tica y definida positiva tiene sus autova-
lores reales y positivos y, además, en la factorización LU todos los pivotes son
reales y positivos.
superior.
Como A es hermı́tica, BC = A = A∗ = C ∗ B ∗ , por lo que (C ∗ )−1 B = B ∗ C −1 ,
y dado que (C ∗ )−1 B es triangular inferior y B ∗ C −1 es triangular superior,
ambas han de ser diagonales.
Por otra parte, B = LD y C = DR, por lo que C ∗ = R∗ D∗ = R∗ D y, por
tanto, (C ∗ )−1 = D−1 (R∗ )−1 . Ası́ pues, (C ∗ )−1 B = D−1 (R∗ )−1 LD.
Como las matrices diagonales conmutan,
(C ∗ )−1 B = D−1 D(R∗ )−1 L = (R∗ )−1 L.
Al ser (R∗ )−1 L triangular inferior con diagonal de unos y (C ∗ )−1 B diagonal,
podemos asegurar que (R∗ )−1 L = I o, lo que es lo mismo, R∗ = L. Además,
B ∗ C −1 = I, por lo que C = B ∗ , luego A = BB ∗ donde B = LD.
La unicidad de las matrices L y U implica la unicidad de la matriz B y, por
tanto, ésta puede ser calculada por un método directo.
2 0 0 y1 0
Haciendo ahora −i 1 0 y2 = 0 , se obtiene
2−i 1 2 y3 −4
y1 0
y2 = 0
y3 −2
y de aquı́, que
2 i 2+i x1 0
0 1 1 x2 = 0
0 0 2 x3 −2
de donde obtenemos que la solución del sistema es
x1 = 1 x2 = 1 x3 = −1
Hemos visto que toda matriz hermı́tica y definida positiva admite factori-
zación de Cholesky, pero podemos llegar más lejos y enunciar el siguiente
teorema (que no probaremos).
Teorema 2.9 Una matriz hermı́tica y regular A es definida positiva si, y sólo
si, admite factorización de Cholesky.
xn+1 − x = 2(xn − x)
x∗ − x = 2(x∗ − x) =⇒ x∗ − x = 0 =⇒ x∗ = x
kxn+1 − xk = 2kxn − xk
xn+1 = Kxn + c
en los que K será la que denominemos matriz del método y que dependerá de
A y de b y en el que c es un vector que vendrá dado en función de A, K y b.
Demostración.
x∗ − x = K(x∗ − x) + c − (I − K)A−1 b
por lo que
(I − K)(x∗ − x) = c − (I − K)A−1 b (2.2)
Métodos iterados 61
c = (I − K)A−1 b.
(I − K)(x∗ − x) = 0
Demostración.
= K(xn − x) + (I − K)(A−1 b − x)
y dado que A−1 b − x = 0 obtenemos que xn+1 − x = K(xn − x).
Reiterando el proceso se obtiene:
Pasando al lı́mite
lim K n = 0
n→∞
62 Sistemas de ecuaciones lineales
lim (xn − x) = 0
n→∞
o lo que es lo mismo,
lim xn = x
n→∞
Teorema 2.12 Si para alguna norma matricial es kKk < 1, el proceso xn+1 =
Kxn + c, donde x0 ∈ Rn es un vector cualquiera, converge a la solución de la
ecuación x = Kx + c que existe y es única.
Demostración.
La matriz
Teorema 2.15 Una condición necesaria para que converja el método de rela-
jación es que ω ∈ (0, 2).
q(x) = h x, Ax i − 2h x, b i
tk v (k) - (k)
v
-
"3
"
"
x(k)
"
"
"
" x(k+1)
"
"
"
"
"
input x, A, b, n
for k = 1, 2, 3 . . . , n do
v ← b − Ax
t ← h v, v i/h v, Av i
x ← x + tv
output k, x
end
Este método resulta, en general, muy lento si las curvas de nivel de la forma
cuadrática están muy próximas, por lo que no suele utilizarse en la forma
descrita.
Sin embargo, utilizando condiciones de ortogonalidad en las denominadas
direcciones conjugadas, puede ser modificado de forma que se convierta en un
método de convergencia rápida que es conocido como método del gradiente
conjugado.
input x, A, b, n, ε, δ
r ← b − Ax
v←r
c ← h r, r i
for k = 1, 2, 3 . . . , n do
if h v, v i1/2 < δ then stop
z ← Av
t ← c/h v, z i
x ← x + tv
r ← r − tz
d ← h r, r i
if d2 < ε then stop
v ← r + (d/c)v
c←d
output k, x, r
end
Ejercicio 2.7 Resolver por los métodos de Jacobi, Gauss-Seidel y SOR con
ω = 1.2, el sistema:
10x1 − x2 + 2x3 = 6
−x1 + 11x2 − x3 + 3x4 = 25
2x1 − x2 + 10x3 − x4 = −11
3x2 − x3 + 8x4 = 15
c) Para los valores anteriores que hacen que la sucesión sea convergente,
¿con cuál lo hace más rápidamente?
x0 0.5
d) Comenzando con el vector = , aproximar iteradamente
y0 0.5
el lı́mite de la sucesión utilizando el valor de α que acelere más la con-
vergencia.
d) Comprueba que ||Ax||∞ = ||A||∞ para la solución x = (1, 1)T del sistema
Ax = b.
¿Cuál es el máximo valor que puede tomar ||Ax||∞ , cuando x es un
vector unitario para la norma || ||∞ ?
73
74 Sistemas inconsistentes y sistemas indeterminados
• Si aii = 0 se tiene que a0ji = aji cos α y si queremos anularlo aji cos α = 0.
Dado que suponemos que aji 6= 0, basta con hacer cos α = 0, es decir:
α = π/2.
• Si aii 6= 0 tendremos que hacer −aii sen α + aji cos α = 0, por lo que
aji
t = tg α = y, por tanto,
aii
t 1
sen α = √ cos α = √
1 + t2 1 + t2
76 Sistemas inconsistentes y sistemas indeterminados
Obsérvese además que los únicos elementos que se alteran en la matriz Qji A
son los correspondientes a la filas y columnas i y j.
Podemos, por tanto, mediante rotaciones, anular todos los elementos subdia-
gonales y llegar a una matriz R triangular superior
Qk · · · Q2 Q1 A = R ⇐⇒ Q∗ A = R con Q∗ = Qk · · · Q2 Q1
a) H es hermı́tica (H ∗ = H).
b) H es unitaria (H ∗ H = HH ∗ = I).
c) H 2 = I o lo que es lo mismo, H −1 = H.
Transformaciones de Householder 77
Demostración.
∗
∗ 2 ∗ ∗ 2 2
a) H = I − ∗ vv =I − ∗
(vv ∗ )∗ = I − ∗ vv ∗ = H
v v v v v v
Obsérvese que v ∗ v = h v, v i = kvk2 ∈ R, por lo que v ∗ v = v ∗ v
2
∗ 2 ∗ 2 ∗ 4 ∗ 2
b) HH = HH = I − ∗ vv I − ∗ vv = I− ∗ vv + ∗ vv ∗ vv ∗ =
v v v v v v v v
4 4 4 4
= I− ∗ vv ∗+ ∗ 2 v(v ∗ v)v ∗ = I− ∗ vv ∗+ ∗ 2 (v ∗ v)vv ∗ = I.
v v (v v) v v (v v)
c) Basta observar que, por los apartados anteriores, H 2 = HH = HH ∗ = I.
k
Q
6Q y x 36
y + λv Q
Q
x − λv
Q
−v Q
Q
v
Q-
-
λv −λv
Figura 3.1: x y su transformado.
3.4.2 Householder en Cn
Sean v un vector de Cn y H la transformación de Householder asociada a él:
2
H=I− vv ∗
v∗v
• Si x = λv con λ ∈ C entonces
2 2λ
Hx = I − ∗ vv λv = λv − ∗ vv ∗ v = −λv = −x
∗
v v v v
por ser Hv unitaria, ambos vectores x e y han de tener igual norma, es decir,
ha de verificarse que |y1 | = kxk2 o lo que es lo mismo, y1 = kxk2 eiα con α ∈ R.
Tomemos un vector v unitario, es decir, tal que |x1 |2 + |x2 |2 + · · · + |xn |2 = 1.
Entonces
p
a11 a211 + · · · + a2n1 r11
a21 0 0
Sean x1 = e y1 = = .
.. .. ..
. . .
an1 0 0
x 1 − y1
Sea H1 la transformación de Householder asociada al vector v1 = ,
kx1 − y1 k
por lo que H1 x1 = y1 . Tenemos entonces que
(1) (1)
r11 a12 · · · a1n
(1) (1)
0 a22 · · · a2n (1) (1)
(1)
H1 A = .. .. . . .
= a
1 a 2 · · · a n
. . . ..
(1) (1)
0 an2 · · · ann
(1)
en la que ai representa la columna i-ésima de la matriz H1 A.
Busquemos ahora otro vector v2 tal que la transformación de Householder
(1) (1)
H2 asociada a él, deje invariante al vector a1 y transforme al vector a2 en
otro de la forma (r12 , r22 , 0, . . . , 0).
(1)
Como se quiere que deje invariante al vector a1 , v2 ha de ser ortogonal a él,
es decir, debe ser de la forma (0, u2 , . . . , un ).
(1) (1)
a21 a21
q
(1) (1) 2 (1) 2
a22 (a22 ) + · · · + (an2 )
(1) (1)
Tomando x2 = a2 = a32 e y2 = , la
0
..
..
. .
(1)
an2 0
x2 − y2
transformación H2 asociada al vector v2 = deja invariante al vector
kx2 − y2 k
(1) (1)
a1 y transforma x2 = a2 en y2 .
Reiterando al procedimiento se puede triangularizar la matriz A llegar a una
matriz triangular superior R. Llegados a ese paso se tiene que
de donde
A = QR.
Hk Hk−1 · · · H1 Ax = Hk Hk−1 · · · H1 b ⇐⇒ Rx = b0
1
1 0 0 3
− 13 1
3
1
3
2
3
− 23
−
1 1
= 0 2 −3 − 3 = 23
1 1 2
1 0 3 3 3
1 1 1
0 0 1 3
−3 3
− 23 2
3
1
3
1 2
3 3
− 23 1 −1 −1 3 −5 − 31
H1 A = 2 1 2 1
1 = 0
3 3 3
2 0 4 3
− 23 2
3
1
3
−2 7 1 0 3 5
3
−5 −5 −5
√
Ahora son x2 = 4 e y2 = 42 + 32 = 5 , por lo que
3 0 0
Transformaciones de Householder 83
0
x2 − y2 1
v2 = = √ −1
kx2 − y2 k 10
3
0 1 0 0
2 ∗ 2
H2 = I − ∗ v2 v2 = I − −1 0 −1 3 = 0 4 3
v2 v2 10 5 5
3
3 0 5
− 45
1 0 0 3 −5 − 13 3 −5 − 13
H2 H1 A = 0
4 3
1 = 0
19
5 5
0 4 3
5 15
3
0 5
− 45 0 3 5
3
0 0 − 17
15
a11 a12 · · · a1n
a21 a22 · · · a2n
Si partimos de una matriz A = . y tomamos
.. .. ..
. . . ..
an1 an2 · · · ann
T
x 1 = a1 = a11 a21 · · · an1
kxk
1± |a11 |
a11
definimos el vector v1 =
a21 , obteniéndose que
..
.
an1
(1) (1)
α11 a12 ··· a1n
(1) (1)
· · · a2n
0 a21
H1 A = .. .. .. .
. ..
. .
(1) (1)
0 an2 · · · ann
84 Sistemas inconsistentes y sistemas indeterminados
(1)
y a12
1
(1)
a22 y2
Buscamos ahora otro vector v2 tal que H2 a(1) 0 y de tal forma
=
32
.. ..
. .
(1)
an2 0
T
que mantenga invariante al vector α11 0 · · · 0 . Bastará coger, para
T
ello, v2 = 0 v2 · · · vn , que es ortogonal a él.
En este caso, la transformación de Householder viene dada por
0 0 0 ··· 0
· · · v2 vn
v2 0 v2 v2
H2 = I − 2 . 0 v 2 · · · vn = I − 2
.. .. ... .. =
.. . . .
vn 0 vn v2 · · · vn vn
1 0 ··· 0 1 0 ··· 0
0 1 − 2v2 v2 · · · −2v2 vn
0
= .. .. ... ..
=
..
H
. . . .
0 −2vn v2 · · · 1 − 2vn vn 0
(1) (1) (1) (1)
1 0 ··· 0 1 a12 · · · a1n 1 a12 ··· a1n
0 0 0
=
.. ..
=
..
H A1 HA1
. . .
0 0 0
Sistemas superdeterminados. Problema de los mı́nimos cuadrados 85
Decir
queel sistema no posee solución equivale a decir que el vector
b a 1
1 1
b = b2 no pertenece al espacio columna de la matriz A = a2 1 .
b3 a3 1
Se define un sistema superdeterminado como aquel sistema de ecuaciones
lineales Ax = b en el que A ∈ Km×n , x ∈ Kn y b ∈ Km , donde K = R ó C.
86 Sistemas inconsistentes y sistemas indeterminados
b̃ = (h b, a1 i, h b, a2 i, . . . , h b, an i}
α1 h a1 , a1 i + · · · + αn h a1 , an i = h b̃, a1 i = h b, a1 i
.................................................
.................................................
α1 h an , a1 i + · · · + αn h an , an i = h b̃, an i = h b, an i
que equivale a
a∗1 a1 ··· a∗1 an α a∗1 b
1
.. .. .. ..
...
. =
. . .
a∗n a1 ∗
· · · an an αn ∗
an b
es decir
a∗1 α a∗1
1
.. .. ..
. a1 · · · an . = . b
∗ ∗
an αn an
o, lo que es lo mismo:
α1
.
A∗ A .. = A∗ b
αn
b01
..
. b01
∗ ..
Es fácil comprobar que T ∗ 0 = T . , por lo que el
Θ bn
..
b0n
.
0
bm
cálculo de la seudosolución del sistema superdeterminado Ax = b se hace
resolviendo el sistema
b01
∗ ..
∗
T Tx = T .
b0n
y dado que estamos suponiendo que A tiene rango máximo, la matriz T posee
inversa y por tanto T ∗ , por lo que la solución es la misma que la del sistema
triangular
b0
1
.
T x = .. ⇐⇒ T x = b̃
0
bn
Una vez calculada la seudosolución, la norma del error está representada por
la distancia b − b̃ que viene dada por
b01
b01
b0 ..
..
1 . .
..
.
0
b0n+1
0
T
bn bn
.
b0n =
x − − ..
=
0
Θ ..
0 bn+1
. ..
..
b0m
. .
b0m
0
0 bm
C(A), todas ellas representan diferentes coordenadas del vector b̃ respecto del
sistema generador de C(A) dado por las columnas de A. Sin embargo, el error
cometido b − b̃ es el mismo para todas las seudosoluciones del sistema.
vi∗ vj = σi−1 (Aui )∗ σj−1 (Auj ) = (σi σj )−1 (u∗i A∗ Auj ) = (σi σj )−1 (u∗i σj2 uj ) = δij
Descomposición en valores singulares y seudoinversa de Penrose 91
A = P DQ
a) AXA = A
b) XAX = X
c) (AX)∗ = AX
d) (XA)∗ = XA
92 Sistemas inconsistentes y sistemas indeterminados
X = XAX (b)
= XAY AX (a)
= XAY AY AY AX (a)
= (XA)∗ (Y A)∗ Y (AY )∗ (AX)∗ (d) y (c)
= A ∗ X ∗ A ∗ Y ∗ Y Y ∗ A∗ X ∗ A ∗
= (AXA)∗ Y ∗ Y Y ∗ (AXA)∗
= A ∗ Y ∗ Y Y ∗ A∗ (a)
= (Y A)∗ Y (AY )∗
= Y AY AY (d) y (c)
= Y AY (b)
= Y (b)
Razonamientos análogos nos permiten probar que D+ verifica las otras tres
propiedades de Penrose.
Si nos fijamos ahora en A+ , se tiene que
x = A+ b. (3.4)
A+ = (A∗ A)−1 A∗ .
4x + 5y = 13
3x + 5y = 11
Se pide:
(10 1, 5), (1, 50 1), (2, 70 3), (10 8, 60 9), (10 5, 60 1), (3, 80 8), (30 1, 9) y (20 9, 90 1)
d) ¿Qué relación hay entre las soluciones obtenidas en los apartados ante-
riores?
Si se obtienen las soluciones en mı́nimos cuadrados del sistema Ax = b,
escalonando previamente la matriz A, ¿se debe obtener mismo resultado
que en alguno de los apartados anteriores?
2 3 4
−
3 25 25
e) Probar que la matriz P = 1 3 4 es la pseudoinversa de A,
3 25 − 25
1
3
0 0
verificando las propiedades de Penrose. (Hacer la comprobación sólo con
dos de ellas).
De entre todas las soluciones en mı́nimos cuadrados del sistema Ax = b,
hallar la de menor norma euclı́dea.
100 Sistemas inconsistentes y sistemas indeterminados
Ejercicio 3.17
d) Probar que si una matriz real B tiene sus columnas linealmente inde-
pendientes, entonces B T B es definida positiva.
103
104 Autovalores y autovectores
λ = λ1 =⇒ λn1 + a1 λn−1
1 + · · · + an−2 λ21 + an−1 λ1 + an = det(λ1 I − A)
λ = λ2 =⇒ λn2 + a1 λn−1
2 + · · · + an−2 λ22 + an−1 λ2 + an = det(λ2 I − A)
.........................................................................
.........................................................................
λ = λn =⇒ λnn + a1 λn−1
n + · · · + an−2 λ2n + an−1 λn + an = det(λn I − A)
1 3 2 5
2 −1
4 0
Ası́, por ejemplo, dada la matriz A =
, su polinomio
0 1 0 1
2 −2 −1 1
4 3 2
caracterı́stico es de grado cuatro P (λ) = λ + a1 λ + a2 λ + a3 λ + a4 , por lo
106 Autovalores y autovectores
λ=1 =⇒ 1 + a1 + a2 + a3 + a4 = det(I − A) = 74
λ = −1 =⇒ 1 − a1 + a2 − a3 + a4 = det(−I − A) = −20
zn = Azn−1 = A2 zn−2 = · · · = An z0 .
zk = Ak z0 = Ak (α1 x1 + · · · + αn xn ) = α1 Ak x1 + · · · + αn Ak xn =
" n k #
k k k
X λi
= λ1 α1 x1 + · · · + λn αk xk = λ1 α1 x1 + αi xi
i=2
λ1
k
λi
Dado que |λ1 | > |λi | se tiene que lim = 0 ∀i = 2, 3, . . . , n.
k→∞ λ1
zk
Se verifica entonces que lim k = α1 x1 que es un autovector de A asociado
k→∞ λ1
al autovalor λ1 .
Si k es suficientemente grande, se tiene
por lo que la sucesión (zn ) nos proporciona un método para calcular el auto-
valor λ1 .
Nota: Para evitar que las coordenadas de los vectores zk sean demasiado
grandes se considera la sucesión formada por los vectores zn = Awn−1 donde
zn
wn = .
kzn k∞
00 7058 50 3053 00 7058 50 3052
w6 = 00 7997 z7 = 60 0111 w7 = 00 7997 z8 = 60 0110
10 0000 70 5166 10 0000 70 5165
00 7058 50 3052
w8 = 00 7997 z9 = 60 0110
10 0000 70 5165
Tenemos, por tanto, que
00 7058
z9 = Aw8 = z8 = 70 5165 00 7997 = 70 5165 w8 = λw8
10 0000
Este método sólo nos permite calcular, en caso de existir, el autovalor do-
minante (mayor valor absoluto) de una matriz. Existen sin embargo otras
variantes del método de la potencia que nos permiten calcular cualquiera de
sus autovalores a partir de una aproximación de ellos. Debido a la existencia de
dichas variantes el método estudiado anteriormente es conocido como método
de la potencia simple para distinguirlo de los que estudiaremos a continuación.
Conviene aquı́ recordar algunas propiedades de los autovalores de una matriz.
Sea A ∈ Rn×n una matriz diagonalizable regular para la que sus autovalores
verifican que:
0 < |λ1 | < |λ2 | ≤ · · · ≤ |λn | (4.1)
o lo que es lo mismo:
|µ1 | > |µ2 | ≥ · · · ≥ |µn |
es decir, el autovalor de menor valor absoluto de la matriz A se corresponde
con el de mayor valor absoluto de A−1 , por lo que aplicando el método de
1
la potencia a la matriz A−1 obtenemos el inverso (µ1 = ) del autovalor de
λ1
menor valor absoluto de la matriz A y, por tanto, dicho autovalor.
Obsérvese que debemos ir calculando, en cada paso, los vectores zn = A−1ωn−1
zn
y ωn = . Pues bien, al cálculo de zn se realiza resolviendo, por alguno
kzn k∞
de los métodos estudiados, el sistema Azn = ωn−1 lo que nos evita calcular
A−1 y arrastrar los errores que se cometan a lo largo de todo el proceso.
Este método es conocido como método de la potencia inversa y nos permite
calcular, en caso de existir, el autovalor de menor valor absoluto de una matriz
invertible A.
110 Autovalores y autovectores
Veamos cómo una nueva variante de este último método nos permite calcular
un autovalor cualquiera de una matriz regular A a partir de una aproximación
suya. Sin embargo, hay que tener en cuenta que si el autovalor que vamos a
aproximar es múltiple o existen otros con el mismo módulo aparecen dificul-
tades que sólo podremos solventar utilizando otros métodos.
Consideremos una matriz A regular tal que todos sus autovalores tengan dife-
rente módulo y supongamos conocida una aproximación α de un determinado
autovalor λk . Si la aproximación es buena se verificará que |λk − α| < |λi − α|
para cualquier i = 1, 2, . . . n con i 6= k.
Dado que 1/(λi − α) son los autovalores de A − αI y ésta posee un autovalor
(λk − α) de menor valor absoluto que los demás, el método de la potencia
1
inversa nos proporcionará el valor µk = pudiéndose, a partir de éste
λk − α
1
último, hallar el valor de λk = + α.
µk
Está variante es conocida como método de la potencia inversa con traslación.
x∗ Ax
Al cociente ∗ se le denomina cociente de Rayleigh del vector x respecto
xx
de la matriz A.
Podemos, por tanto, obtener el autovector por el método de la potencia para
más tarde calcular el autovalor mediante el cociente de Rayleigh.
n
[
Demostración. Si λ 6∈ Ci es porque λ 6∈ Ci para ningún i = 1, 2, . . . , n,
i=1
por lo que
|λ − a11 | > r1
|λ − a22 | > r2
.............
.............
|λ − ann | > rn
y, por tanto, la matriz
λ − a11 −a12 ··· −a1n
−a21 λ − a22 ··· −a2n
= λI − A
.. .. ..
..
.
. . .
−an1 −an2 · · · λ − ann
112 Autovalores y autovectores
1 ≤ (µI − D)−1 P −1 EP
−1 1 1
Dado que (µI − D) = diag ,..., tenemos que
µ − λ1 µ − λn
1
1 ≤ máx P −1 kEk kP k
i µ − λi
por lo que
mı́n |µ − λi | ≤ P −1 kP k kEk
i
mı́n |µ − λi | ≤ kEk
i
Por tanto, las mejores matrices para el cálculo efectivo de sus autovalores y
autovectores son las diagonalizables unitariamente y éstas reciben el nombre
de matrices normales.
Es necesario aclarar que si una matriz A no es normal y le calculamos sus
autovalores, estos pueden reflejar, con la exactitud que se desee, sus verdaderos
valores, pero estos no van a representar la solución del problema que generó
114 Autovalores y autovectores
Por otra parte, es evidente que no podemos estudiar si una matriz es normal
calculando sus autovalores y autovectores para comprobar que se puede dia-
gonalizar por semejanza mediante una matriz de paso unitaria (matriz cons-
tituida por una base ortonormal de autovectores). Es necesario, por tanto,
encontrar otros métodos que detecten si una matriz es, o no es, normal.
U T T ∗U ∗ = U T ∗T U ∗
es decir, T T ∗ = T ∗ T por lo que T es una matriz normal y triangular, por lo que
el Teorema 4.8 nos asegura que es diagonal y, por tanto, A es diagonalizable
unitariamente, es decir, es normal.
116 Autovalores y autovectores
Hemos visto que para que los autovalores de una matriz A reflejen la solución
del problema que la generó, ésta ha de ser normal. Si no podemos plantear
nuestro problema mediante una matriz normal lo que debemos hacer es tratar
de plantearlo mediante una matriz “lo más normal posible”. Vamos a estudiar
entonces el condicionamiento del problema.
Por el Teorema 4.9 cualquier matriz cuadrada A es unitariamente semejante
a una triangular superior T donde
t11 t12 · · · t1n t11 0 ··· 0 0 t12 · · · t1n
0 t22 · · · t2n 0 t22 · · · 0 0 0 · · · t2n
T = .. .. = .. +
.. . . .. . . . .. .. .. ..
. . . . . . . .. . . . .
0 0 · · · tnn 0 0 · · · tnn 0 0 ··· 0
Es decir, T = D + M y, obviamente, A es normal si, y sólo si, M = Θ.
En cierta manera (a kM k se le llama desviación de la normalidad de A)
la matriz M y más concretamente su norma, mide el condicionamiento del
problema.
Se tiene, además, que kM k2 es constante (no depende de U y de T sino sólo
de A), ya que
Xn
2 2 2 2 2 2
∗
kM k2 = kT k2 − kDk2 = kU AU k2 − kDk2 = kAk2 − |λi |2 =⇒
i=1
v
u n
X
2
|λi |2
u
kM k2 = kAk2 −
t
i=1
kC(A)k22 2
a) 2 ≤ kM k2 (Desigualdad de Eberlein).
6 kAk2
r
2 n3 − 3
b) kM k2 ≤ kC(A)k22 (Desigualdad de Heurici).
12
Los autovalores de una matriz son, en general, números complejos. Sin em-
bargo, las matrices hermı́ticas (en el caso real, las simétricas) tienen todos sus
autovalores reales como prueba el siguiente teorema.
Teorema 4.12 Los autovalores de una matriz hermı́tica son todos reales y
autovectores correspondientes a dos autovalores diferentes son ortogonales.
Demostración. Sea A una matriz hermı́tica, es decir, una matriz tal que
A∗ = A y sea λ un autovalor de A asociado al autovector x. Se verifica entonces
que Ax = λx.
Multiplicando la expresión anterior, por la izquierda por x∗ obtenemos que
x∗ Ax = x∗ λx = λx∗ x (4.2)
Trasponiendo y conjugando la expresión 4.2 obtenemos
(x∗ Ax)∗ = (λx∗ x)∗ =⇒ x∗ A∗ x = λ̄x∗ x =⇒ x∗ Ax = λ̄x∗ x (4.3)
Si comparamos las expresiones (4.2) y (4.3) obtenemos que
λx∗ x = λ̄x∗ x
y dado que x es un autovector (un vector no nulo) sabemos que x∗ x = kxk2 6= 0,
por lo que podemos dividir por x∗ x para obtener que λ = λ̄, es decir, λ ∈ R.
Por otra parte, si x e y son autovectores asociados a dos autovalores λ 6= µ
de una matriz hermı́tica A se verifica que
A0 = A = Q0 R0
A1 = R0 Q0 = Q1 R1
A2 = R1 Q1 = Q2 R2
...................
...................
A = Q0 R0 ⇒ A1 = R0 Q0 = Q∗0 AQ0
Nota: Si λ1 , λ2 , . . . , λn son los autovalores de una matriz A tales que |λ1 | >
|λ2 | > · · · > |λn | > 0, el algoritmo converge. En general se tiene que, si existen
autovalores de igual módulo, la sucesión converge a una matriz triangular por
cajas en la que cada caja contiene a los autovalores del mismo módulo.
En otras palabras, la sucesión converge, en general, a una matriz triangular
por cajas de tal manera que
Ası́, por ejemplo, si una matriz A de orden 3 tiene un autovalor real y dos auto-
valores complejos conjugados (por tanto de igual módulo) de distinto módulo
que el autovalor real se llegarı́a a una matriz del tipo
a11 a12 a13
0 a22 a23
0 a32 a33
!
a22 a23
donde a11 es el autovalor real y los autovalores de la matriz son
a32 a33
los dos autovalores complejos de la matriz A.
De forma más general, si A es una matriz cualquiera (normal o no), al apli-
carle el algoritmo, la sucesión converge (en la mayorı́a de los casos) a su forma
de Schur.
Definición 4.3 Se dice que una matriz A ∈ Kn×n es una matriz (superior)
de Hessenberg si aij = 0 para i > j + 1, es decir:
a11 a12 a13 · · · a1 n−1 a1n
a21 a22 a23 · · · a2 n−1 a2n
0 a32 a33 · · · a3 n−1 a3n
A = ..
.. .. . . .. ..
. . . . . .
0 0 0 · · · an−1 n−1 an−1 n
0 0 0 · · · an n−1 ann
también es de Hessenberg.
a b
Dada una matriz simétrica y real A = el método trata de buscar
b c
cos α sen α
un valor para α de tal forma que la rotación P = haga
− sen α cos α
que la matriz P −1 AP sea diagonal.
−1 cos α − sen α a b cos α sen α ∗ 0
P AP = =
sen α cos α b c − sen α cos α 0 ∗
es decir:
b(cos2 α − sen2 α) = (c − a) cos α sen α
π
Si c = a basta tomar α = .
4
Si c 6= a podemos dividir por c − a y obtenemos que
2b 2 cos α sen α sen 2α
= 2 2
= = tg 2α
c−a cos α − sen α cos 2α
2b
Llamando m = se tiene que tg 2α = m, por lo que
c−a
√
−1 ± 1 + m2
t = tg α =
m
y, a partir del valor de t obtenido, se pueden calcular
1 t
cos α = √ y sen α = √
1 + t2 1 + t2
valores, estos últimos, que nos permiten determinar la matriz P .
Algoritmo de cálculo
a b
a) Dada A =
b c
a.1) Si b = 0 FIN.
a.2) Si b 6= 0 y a = c
√ √ ! !
2/2 2/2 ∗ 0
P = √ √ y P −1 AP = . FIN.
− 2/2 2/2 0 ∗
Métodos iterados para la obtención de autovalores y autovectores 123
√
2b −1 ± 1 + m2
b) m = t= .
c−a m
1 t
c) cos α = √ sen α = √ .
1 + t2 1 + t2
! !
cos α sen α ∗ 0
P = y P −1 AP = . F IN.
− sen α cos α 0 ∗
T T T
que aplicarı́amos a P23 AP23 para obtener P14 P23 AP23 P14 = P T AP donde la
matriz P viene dada por P = P23 P14 .
Ahora bien, la matriz
0.8507 0 0 −0.5257
0 0.7497 0.6618 0
P = P23 P14 =
0 −0.6618 0.7497 0
0.5272 0 0 0.8507
y a partir de ella
0.6986 −1.6791 0 −1.6230
−1.6791 −5.0065 −1.5358 0
P T AP =
0 −1.5358 5.4506 0.4353
−1.6230 0 0.4353 0.8573
126 Autovalores y autovectores
Los autovalores de una matriz normal cualquiera pueden ser reales o com-
plejos mientras que los de una matriz hermı́tica son todos reales, por lo que
si pudiéramos transformar el cálculo de los autovalores de una matriz nor-
mal en los de otra hermı́tica habrı́amos simplificado el problema. Es más,
si pudiéramos transformarlo en el cálculo de los autovalores de una matriz
simétrica real, podrı́amos trabajar en el campo real en vez de hacerlo en el
campo complejo y, entre otras cosas, podrı́amos utilizar el método de Jacobi a
partir de una matriz normal cualquiera previa transformación en un problema
de autovalores de una matriz simétrica real.
En las siguientes secciones estudiaremos cómo pueden realizarse dichas trans-
formaciones.
Demostración. Por ser A normal, existe una matriz unitaria U tal que
U ∗ AU = D
α + iβ 0 ··· 0
0 α2 + iβ2 ··· 0
D = U ∗ AU = =⇒
.. .. .. ..
. . . .
0 0 · · · αn + iβn
α 0 ··· 0 β 0 ··· 0
0 α2 ··· 0 ∗
0 β2 ··· 0
∗
A=U U + iU U =⇒
.. .. .. .. .. .. .. ..
. . . . . . . .
0 0 ··· αn 0 0 · · · βn
α 0 ··· 0 β 0 ··· 0
0 α2 ··· 0
∗
0 β2 ··· 0
∗
H1 = U U H2 = U U
.. .. .. .. .. .. .. ..
. . . . . . . .
0 0 · · · αn 0 0 · · · βn
donde H1 y H2 son hermı́ticas. Se tiene entonces que α es un autovalor de
H1 asociado a x (primera columna de U ) y β un autovalor de H2 asociado
también a x.
Las componentes hermı́ticas H1 y H2 de una matriz cuadrada A nos propor-
cionan otro método para estudiar si la matriz A es, o no es, normal.
Teorema 4.16 Una matriz cuadrada A es normal si, y sólo si, sus compo-
nentes hermı́ticas conmutan.
A es normal ⇐⇒ H1 H2 = H2 H1
Demostración.
A + A∗ A − A∗ A2 − AA∗ + A∗ A + (A∗ )2
H1 H2 = · =
2 2i 4i
A − A∗ A + A∗ A2 + AA∗ − A∗ A + (A∗ )2
H 2 H1 = · =
2i 2 4i
a) Si A es normal se verifica que AA∗ = A∗ A por lo que
A + A∗ A − A∗ A2 + (A∗ )2
H1 H2 = · =
2 2i 4i
=⇒ H1 H2 = H2 H1
A − A∗ A + A∗ A2 + (A∗ )2
H2 H1 = · =
2i 2 4i
128 Autovalores y autovectores
b) Si H1 H2 = H2 H1 se verifica que
por lo que
por lo que
A −B a a
=α
B A b b
A −B
Obsérvese además que la matriz real es simétrica, ya que
B A
T
A −B AT B T A −B
= =
B A −B T AT B A
Aplicación al cálculo de las raı́ces de un polinomio 129
A −B
Los autovalores de la matriz son, por tanto, los mismos que
B A
A −B
los de H y si un autovector de es (x1 , . . . , xn , xn+1 , . . . , x2n ), el
B A
correspondiente autovector de la matriz H es (x1 + ixn+1 ), . . . , (xn + ix2n ) .
00 6 00 8
Ejercicio 4.2 Comprobar que la matriz U = es unitaria (or-
−00 8 00 6
togonal) y obtener, basándose en ella, una matriz normal A que tenga por
autovalores 2 y 3i. Calcular la conmutatriz de A y comprobar que sus compo-
nentes hermı́ticas conmutan.
a 1 1
Ejercicio 4.5 Dada la matriz A = 1 a 1 donde a es un número com-
1 1 a
plejo cualquiera, se pide:
b) Tomar una aproximación, con dos cifras decimales exactas, del mayor de
los autovalores y afinarla con el cociente de Rayleigh.
1 2 3
Ejercicio 4.8 Dada la matriz A = 2 2 3
3 3 3
Ejercicio
4.10 Sea λ = α + iβ, α, β ∈ R, autovalor de la matriz A =
2i −2
.
2 2i
(2 − 10−3 ) i
−2
A + δA = ,
2 (2 + 10−2 ) i
Ejercicio 4.11
a) Utilizar una sucesión de Sturm para probar que el polinomio p(x) tiene
sus raı́ces reales y que sólo una de ellas, que denotaremos α, es positiva.
Ejercicio 4.13
a) ¿Qué pasos se dan para calcular los autovalores de una matriz cuadrada
A mediante el algoritmo QR? y ¿que forma tiene la matriz a la que
converge el algoritmo en los siguientes casos?
1 −0.0100
Determinar una aproximación de la raı́z de mayor valor absoluto del po-
linomio P (x) (autovalor correspondiente) utilizando el cociente de Ray-
leigh.
Ejercicios propuestos 135
An = 0 20 7493 10 5431
0 x y
¿Puede ser nulo el elemento x?, ¿se pueden determinar los elementos
que faltan sin necesidad de volver a aplicar el algoritmo QR? ¿Sabrı́as
decir cuál es la aproximación obtenida para los otros dos autovalores de
la matriz A?
0 1 0
Ejercicio 4.17 Se considera la matriz A = 0 0 1 .
−0.25 −0.125 1
a) Demostrar que las raı́ces del polinomio P (x) = 2+x−8x2 +8x3 coinciden
con los autovalores de A. Acotar y separar las raı́ces de P (x), indicando
cuántas raı́ces reales y complejas tiene. Comparar los resultados con la
información que se desprende del estudio de los cı́rculos de Gerschgorin.
c) Tomando como vector inicial z0 = (0, 1, 0)T , realizar dos iteraciones del
método de la potencia inversa. Por medio del cociente de Rayleigh aso-
ciado al vector hallado, determinar una aproximación del autovalor de A
correspondiente. ¿Qué relación existe entre éste valor y la aproximación
hallada en el apartado anterior? ¿Puede haber autovalores de la matriz
A en el cı́rculo de centro 0 y radio 14 ? Razonar las respuestas.
Ejercicio 4.18
Algoritmo Desigualdad
de Horner, 26, 27 de Eberlein, 117
de la bisección, 5 de Heurici, 117
de Newton, 14 Desviación de la normalidad, 116
QR de Francis, 118 Distancia, 40
Autovalor, 103 inducida, 40
Autovector, 103
Eberlein
Bisección desigualdad de, 117
algoritmo de la, 5 Ecuaciones
método de la, 4 algebraicas, 20
Bolzano Ecuación
teorema de, 4 caracterı́stica, 103
Error
Ceros
absoluto, 2
de polinomios, 20
relativo, 2
de una función, 1
Espacio normado, 39
Cholesky
Estabilidad, 3
factorización de, 56
Cociente de Rayleigh, 110 Factorización
Condicionamiento, 3 de Cholesky, 56
Condición LU, 53
número de, 3, 46, 48 ortogonal, 73
Convergencia, 41 Fórmula
de Heron, 15
Descenso más rápido
de Newton-Raphson, 12
método de, 65
Fourier
Descomposición
regla de, 15, 17
en valores singulares, 90
Función
Descomposición
ceros de una, 1
de Schur, 115
contractiva, 8
método de, 63
139
140 Índice
Gauss-Seidel Método
método de, 64 consistente, 59
Gerschgorin convergente, 59
cı́rculos de, 111 de descomposición, 63
teorema de, 111 de Gauss-Seidel, 64
Gradiente conjugado de Jacobi, 63
método de, 65 para matrices simétricas rea-
les, 121
Hadamard de la bisección, 4
martiz de, 55 de la potencia, 106
Heron de la regula falsi, 6
fórmula de, 15 de Newton, 12
Hessenberg para raı́ces múltiples, 18
matriz de, 120 de relajación, 64
Heurici de Sturm, 23
desigualdad de, 117 del descenso más rápido, 65
Horner del gradiente conjugado, 65
algoritmo de, 26, 27 directo, 1, 46, 52
Householder interpolatorio, 105
transformación de, 76 iterado, 1, 46, 59
transformación en el campo com-
plejo, 78 Newton
algoritmo de, 14
Jacobi método de, 12
método de, 63, 121 para raı́ces múltiples, 18
Laguerre Newton-Raphson
regla de, 22 fórmula de, 12
Norma, 39
Matriz euclı́dea, 40
conmutatriz, 116 infinito, 40
de diagonal dominante, 55 matricial, 41
de Hadamard, 55 euclı́dea, 42
de Hessenberg, 120 infinito, 42
fundamental, 54 uno, 41
sparce, 46 multiplicativa, 39
triangular uno, 40
inferior, 46 vectorial, 39
superior, 46 Número de condición, 3, 46, 48
tridiagonal, 46
unitaria, 43 Penrose
Índice 141
Schur
descomposición de, 115
Seudoinversa
de Penrose, 90, 91
Seudosolución, 87
Sistema
bien condicionado, 46