Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA 3: RESOLUCION
DE SISTEMAS DE
ECUACIONES LINEALES
Y NO LINEALES
Abordaremos en este tema la resolucion de Sistemas
de Ecuaciones Lineales (por diferentes metodos directos, iterativos y de descenso) y la resolucion de Sistemas
de Ecuaciones No Lineales (por metodos de iteracion
funcional y de Newton).
Antes de plantear los metodos de resolucion de S.E.L.
estudiaremos su condicionamiento, esto es, la sensibilidad de la solucion exacta del sistema a las pequenas
variaciones en los datos.
1
CONDICIONAMIENTO DE UN S.E.L.
10
7
5
6
5
8
6
10
9
7 x1
5
x2
9
x3
10
x4
32
23
=
33
31
x1
x2
x
3
x4
1
=
Si perturbamos ligeramente b:
10
7
8
7
7
5
6
5
8
6
10
9
7 x1
5
x2
9
x3
10
x4
32.1
22.9
33.1
30.9
x1
x2
x3
x4
9.2
12.6
4.5
1.1
Si perturbamos ligeramente A:
7 8.1 7.2 x1
10
6
5
7.08 5.04
x2
8 5.98 9.89 9
x3
32
23
=
33
31
x1
x2
x
3
x4
81
137
=
34
22
n
X
1jn i=1
n
X
kAk = max
1in j=1
|aij |
|aij |
kAk2 =
(At A)
Todas las normas matriciales subordinadas verifican, ademas de las propiedades caractersticas de toda norma:
kAk 0
kAk = 0 A = 0
kA + Bk kAk + kBk
kc.Ak = |c|.kAk
las siguientes propiedades:
kAk (A)
kA.Bk kAk.kBk
kA1k kAk1
kIk = 1
Como consecuencia de estas propiedades y de la propia
definicion de numero de condicion, este verifica:
63
1.
cond(A) 1,
A Mnn
2.
cond(A) = cond(A1),
3.
cond(cA) = cond(A),
A Mnn
A Mnn, c 6= 0
kbk
kxk
cond(A)
.
kxk
kbk
64
Observaci
on 1 .- Por tanto, cuanto mayor sea el
n
umero de condicion peor sera el condicionamiento
del sistema.
En el ejemplo anterior, el mal condicionamiento es
debido a que cond2(A) = kAk2.kA1k2 = 2984.
Para resolver los sistemas mal condicionados se usan las
tecnicas de precondicionamiento:
Dado un sistema Ax = b mal condicionado (es decir,
con cond(A) grande), se busca una matriz inversible P
tal que cond(P A) sea pequeno. Entonces, se resuelve el
sistema equivalente P Ax = P b que ya es bien condicionado.
El caso mas favorable sera P = A1, pues entonces
cond(P A) = cond(I) = 1.
Las tecnicas de precondicionamiento buscan una matriz
P proxima a A1, pero facilmente calculable. (La estrategia mas favorable consiste en calcular directamente
P A y P b.)
Las tecnicas mas comunes son la factorizacion incompleta de Gauss, factorizacion incompleta de Choleski,. . .
65
Los m
etodos directos se caracterizan por el hecho
de que, si no hubiera errores de redondeo, se obtendra
la solucion exacta del sistema en un numero finito de
operaciones.
Presentamos los siguientes metodos:
2.1
M
etodo de Gauss.-
66
k = 1, . . . , n.
67
Etapa k-esima :
Se hacen ceros en la columna k por debajo de la diagonal
principal restando a las filas i = k + 1, . . . , n, la fila k
akik
multiplicada por k .
akk
Matricialmente, esto corresponde a hacer Ak+1 = Ek Ak
con:
Ek =
...
1
akk+1,k
akkk
...
0
...
aknk
akkk
(det(Ek ) = 1).
1
L = M 1 = E11E21 . . . En1
Teorema 3 .- (Factorizacion LU )
Sea A = (aij ) Mnn tal que las n submatrices principales:
k =
a11 . . . a1k
...
...
ak1 . . . akk
k = 1, . . . , n,
69
Ly = b
Ux = y
u1j = a1j ,
j = 1, . . . , n.
lj1 =
aj1
,
u11
j = 2, . . . , n.
Para i = 2, . . . , n :
uij = aij
aji
lji =
i1
X
k=1
i1
X
k=1
uii
lik ukj ,
j = i, . . . , n.
ljk uki
,
j = i + 1, . . . , n.
Observaci
on 2 .- A la hora de implementar el metodo en el ordenador, esta estructura de calculo permite almacenar cada uij en la posicion de aij y cada
lji en la correspondiente posicion de aji, con el consiguiente ahorro de memoria.
Como aplicacion directa del metodo LU se tiene que:
det(U ) = det(U ) = u11u22 . . . unn.
det(A) = det(L)
| {z }
=1
I,
si i = k,
Pk =
V ,
si i 6= k,
ki
donde Vki es la matriz de permutacion resultante de intercambiar en la identidad las filas i y k:
Vki =
...
0
1
...
1
0
...
1
71
(det(Vki) = 1).
Por tanto:
det(Pk ) =
1,
1,
si i = k,
si i =
6 k,
y simultaneamente:
En1Pn1 . . . E2P2E1P1b = M b.
72
Observaci
on 3 .- Las estrategias de pivote, ademas
de hacer factible el proceso de eliminacion, evitan la
division por n
umeros muy peque
nos con los consiguientes errores de redondeo.
Gauss con pivote total:
Constituye una nueva estrategia para evitar en la medida
de lo posible los errores de redondeo de los metodos de
Gauss normal y con pivote parcial.
La idea consiste en elegir como pivote total el elemento
de mayor valor absoluto, no solo en la columna k, sino
en todas las columnas j con k j n. Esto introduce una nueva dificultad, ya que el cambio de orden
en las columnas corresponde a un cambio de orden en
las incognitas, hecho que debe ser tenido en cuenta a la
hora de la resolucion de sistema triangular.
El metodo de Gauss con pivote total se realiza en (n1)
etapas:
Etapa k-esima : Cada etapa se realiza en dos pasos:
PASO 1: Se elige el pivote total akij 6= 0 tal que:
|akij | = max |akpq |
kp,qn
73
con:
I,
Pk =
V ,
ki
si i = k,
si i =
6 k,
Qk =
I,
Vkj ,
si j = k,
si j =
6 k.
y simultaneamente:
En1Pn1 . . . E2P2E1P1b = M b.
74
Observaci
on 4 .- A la hora de plantear el sistema
triangular se tiene:
1
Ax = b M
| AN
{z } N
| {z x} = M b U y = M b.
U
2.2
Variantes al m
etodo de Gauss.-
Ek =
ak1k
akkk
...
1
...
akk+1,k
akkk
...
0
...
ak
ank
k
kk
(det(Ek ) = 1).
y simultaneamente:
b.
EnPn . . . E2P2E1P1b = M
76
Observaci
on 5 .- El metodo de G.-J. esta especialmente indicado para el calculo de inversas (aunque se
puede usar cualquier otro metodo para la resolucion
de S.E.L.).
Dada una matriz A Mnn inversible, si denotamos
A1 = (u1|u2| . . . |un),
I = (e1|e2| . . . |en),
entonces:
AA1 = I A(u1|u2| . . . |un) = (e1|e2| . . . |en)
(Au1|Au2| . . . |Aun) = (e1|e2| . . . |en)
Aui = ei,
i = 1, . . . , n.
i = 1, . . . , n.
M
etodo de Crout:
Se basa en el siguiente resultado:
Teorema 7 .- (Factorizacion de Crout)
Sea A = (aij ) Mnn tal que las n submatrices principales sean inversibles.
Entonces existe una matriz triangular inferior L =
(lij ) con elementos diagonales lii = 1, i = 1, . . . , n,
una matriz diagonal D = (dij ) y una matriz triangular superior U = (uij ) con elementos diagonales
uii = 1, i = 1, . . . , n, tales que A = LDU.
Ademas, esta factorizacion es u
nica.
El metodo tiene espacial interes cuando la matriz del
sistema es simetrica, pues entonces:
Corolario 1 .- Sea A = (aij ) Mnn simetrica tal
que las n submatrices principales sean inversibles.
Entonces existe una matriz triangular inferior L =
(lij ) con elementos diagonales lii = 1, i = 1, . . . , n,
y una matriz diagonal D = (dij ) tales que A = LDLt.
Ademas, esta factorizacion es u
nica.
78
Lz = b
Ax = b L D L
Dy = z
| {zx} = b
Lt x = y
| {z }
t
d11 = a11
li1 =
ai1
,
d11
i = 2, . . . , n.
Para j = 2, . . . , n :
djj = ajj
aij
lij =
j1
X
k=1
j1
X
k=1
2
ljk
dkk
djj
i = j + 1, . . . , n.
M
etodo de Choleski:
Si A es una matriz simetrica y definida positiva esta en
las condiciones del teorema de factorizacion LU y por
tanto admite una factorizacion de ese tipo. Sin embargo,
es posible encontrar otra factorizacion aun mas simple:
Teorema 8 .- (Factorizacion de Choleski)
Sea A = (aij ) Mnn simetrica y definida positiva.
Entonces existe una matriz triangular inferior B =
(bij ) tal que A = BB t.
Ademas, se puede imponer que los elementos diagonales bii > 0, i = 1, . . . , n. En este caso, la factorizacion es u
nica.
x 6= 0).
k = 1, . . . , n.
80
By = b
B tx = y
b11 =
bi1 =
v
u
u
u
t
a11
ai1
,
b11
i = 2, . . . , n.
Para j = 2, . . . , n :
bjj = ajj
aij
bij =
j1
X
k=1
j1
X
k=1
b2jk
bik bjk
,
bjj
i = j + 1, . . . , n.
81
2.3
Factorizaci
on QR y m
etodo de Householder.-
n
X
i=2
|ai| > 0.
n
X
i=2
si a1 > 0,
v = a kak2e1,
si a1 < 0.
El m
etodo de Householder para resolver un sistema Ax = b consiste en encontrar (n 1) matrices
de Householder H1, H2, . . . , Hn1 tales que la matriz
Hn1 . . . H2H1A = R sea triangular superior.
A continuacion se resuelve el sistema triangular equivalente:
Hn1 . . . H2H1Ax = Hn1 . . . H2H1b
por sustitucion retrograda.
Entonces, partiendo de A1 = A, en cada etapa k-esima,
k = 1, . . . , n1, se van calculando las matrices Ak+1 =
Hk Ak de forma que se hagan ceros en la columna k por
debajo de la diagonal.
83
Hk =
Ik1
0
= H(vk ),
0 H(
vk )
con vk =
0
vk
Rn .
y, simultaneamente, el vector:
Hn1 . . . H2H1b = Qtb.
Dado que:
t
Q = (Hn1 . . . H2H1)t = H1t H2t . . . Hn1
= H1H2 . . . Hn1,
Q es ortogonal (por ser producto de matrices ortogonales), esto es, Q1 = Qt. En consecuencia:
QtA = R A = QR.
84
Observaci
on 7 .- Como una primera consecuencia
de la factorizacion QR se tiene la siguiente aplicacion para el calculo de determinantes:
det(R) = det(R) = r11r22 . . . rnn.
det(A) = det(Q)
{z
}
|
1
86
3.1
Generalidades.-
x0 arbitrario,
x
k+1 = Bxk + c,
k = 0, 1, . . .
Supongamos que el metodo es convergente, entonces tomando lmites en la expresion del metodo se tiene:
x = lim xk+1 = lim (Bxk + c) = Bx + c,
k
esto es:
(I B)x = c.
Por tanto, B y c deben elegirse de tal modo que el sistema (I B)x = c tenga solucion (es decir, (I B) sea
inversible) y los sistemas Ax = b e (I B)x = c sean
equivalentes.
87
88
En resumen, en el estudio de los metodos iterativos lineales para la resolucion de un sistema Ax = b se debe:
1. Comprobar que (I B) es inversible y que los sistemas Ax = b e (I B)x = c son equivalentes.
(Metodo bien construido).
2. Comprobar que (B) < 1 o que kBk < 1.
(Metodo convergente).
3. Elegir entre los metodos posibles el que tenga menor
(B).
(Velocidad de convergencia alta).
89
3.2
M
etodos iterativos cl
asicos.-
Los metodos clasicos que vamos a describir son los representantes mas caractersticos de una clase general de
metodos basados en una descomposicion de la matriz
A en la forma A = M N, donde M es una matriz
facilmente inversible (triangular, diagonal . . . )
Este hecho es fundamental a la hora de llevar el metodo
a la practica pues, aunque no calcularemos M 1, s resolveremos sistemas lineales con matriz M.
Se tienen las siguientes equivalencias:
Ax = b (M N )x = b M x = N x + b
x = M 1N x + M 1b
Comparando con la expresion general:
x = Bx + c
esto nos induce a elegir:
B = M 1N,
c = M 1b.
x0 arbitrario,
1
1
x
k+1 = M N xk + M b,
k = 0, 1, . . .
x0 arbitrario,
Mx
k+1 = N xk + b,
k = 0, 1, . . .
a11
D=
0
a22
...
ann
0
0
0
a21
,
E=
.
.
.
.
.
.
.
.
.
an1 . . . an,n1 0
a1n
0 a12 . . .
...
... ...
.
F =
0 an1,n
0
0
M
etodo de Jacobi:
Se elige:
M = D,
(matriz diagonal)
N = E + F.
La matriz del metodo es:
J = D1(E + F ) (Matriz de Jacobi)
y el vector del metodo es:
c = D1b.
Por tanto, el metodo quedara:
xk+1 = D1(E + F )xk + D1b,
k = 0, 1, . . .
o equivalentemente:
Dxk+1 = (E + F )xk + b,
k = 0, 1, . . .
i1
n
1
X
X
j
= [
aij xk
aij xjk + bi],
aii j=1
j=i+1
i = 1, . . . , n.
k = 0, 1, . . .
92
M
etodo de Gauss-Seidel:
Se elige:
M = D E,
N = F.
La matriz del metodo es:
L1 = (D E)1F
(Matriz de Gauss-Seidel)
k = 0, 1, . . .
o equivalentemente:
(D E)xk+1 = F xk + b,
k = 0, 1, . . .
i1
n
1
X
X
j
= [
aij xk+1
aij xjk + bi],
aii j=1
j=i+1
i = 1, . . . , n.
k = 0, 1, . . .
93
M
etodo de Relajaci
on:
Se introduce el parametro real 6= 0 para hacer una
descomposicion A = M N de modo que la matriz
del metodo tenga el menor radio espectral posible:
1
M = D E,
(matriz triagular inferior)
1
N =
D + F.
1
c = ( D E)1b = (D E)1b.
k = 0, 1, . . .
o equivalentemente:
(DE)xk+1 = [(1)D+F ]xk +b,
k = 0, 1, . . .
X
X
j
i
i
xk+1 = (1 )xk + [
aij xk+1
aij xjk + bi],
aii j=1
j=i+1
i = 1, . . . , n.
k = 0, 1, . . .
(Notese que Gauss-Seidel es Relajacion para = 1.)
94
3.3
Convergencia de los m
etodos cl
asicos.-
n
X
j=1
j6=i
2.
n
X
i=1
i6=j
aij
| < 1,
aii
i = 1, . . . , n.
aij
| < 1,
aii
j = 1, . . . , n.
95
Teorema 13 .- (Geiringer)
Una condicion suficiente para la convergencia del
metodo de Gauss-Seidel es que se verifique una de
las dos desigualdades siguientes:
1.
n
X
j=1
j6=i
2.
n
X
i=1
i6=j
aij
| < 1,
aii
i = 1, . . . , n.
aij
| < 1,
aii
j = 1, . . . , n.
Observaci
on 8 .- La condicion 1 puede escribirse
tambien en la forma equivalente:
n
X
j=1
j6=i
i = 1, . . . , n.
Teorema 15 .- (Ostrowski-Reich)
Si A es simetrica y definida positiva, una condicion
necesaria y suficiente para la convergencia del metodo
de Relajacion es que (0, 2).
(Por tanto, el metodo de Gauss-Seidel es simpre convergente para una matriz A simetrica y definida positiva).
Observaci
on 9 .- Este u
ltimo resultado es consecuencia de un resultado mas general seg
un el cual, si
consideramos la descomposicion A = M N de una
matriz A simetrica y definida positiva, una condicion
suficiente para la convergencia del metodo asociado
es que la matriz (M t + N ) sea tambien simetrica y
definida positiva.
Para finalizar el estudio de los metodos iterativos, veremos algunos resultados para la comparacion de la velocidad de convergencia de los metodos clasicos.
Para ello comenzaremos restringiendonos al caso de una
matriz A tridiagonal (caso frecuente en la practica), y
veremos a continuacion otro resultado para matrices mas
generales:
97
1+ 1
[(J)]2
(1, 2)
tal que:
(L0 ) = 0 1 < (L1) = [(J)]2 < (J) < 1
Teorema 17 .- (Stein-Rosenberg)
Sea A una matriz tal que la matriz de Jacobi J tiene
todos sus coeficientes no negativos. Entonces se cumple
una de las cuatro condiciones siguientes:
1. (L1) = (J) = 0
2. 0 < (L1) < (J) < 1
3. (J) = (L1) = 1
4. 1 < (J) < (L1)
(Esto es, los metodos de Jacobi y de Gauss-Seidel
convergen o divergen simultaneamente. En caso de
convergencia, el metodo de G.-S. es mas rapido).
98
100
Observaci
on 10 .- Ya hemos visto un criterio que
nos permite elegir la direccion de descenso. Para la
eleccion del paso se tienen las reglas de Cauchy, de
Armijo, de Goldstein, . . .
Todas ellas se basan en calcular k como el mnimo
de la funcion real k () = J(xk + dk ), esto es, calcular k tal que sea solucion de la ecuacion:
dk k
( ) = 0.
d
Las distintas reglas proporcionan diferentes aproximaciones a esta solucion.
Veamos a continuacion las dos clases de metodos de descenso mas simples:
4.1
M
etodos de gradiente.-
k = 0, 1, . . .
tomando:
k
(dk )tdk
= k t k.
(d ) Ad
d = b Ax ,
102
4.2
El m
etodo de gradiente conjugado.-
Los metodos de gradiente convergen, en general, de manera muy lenta; por lo cual en la practica se suelen utilizar diferentes modificaciones basadas en esos metodos.
La mas sencilla es el m
etodo de gradiente conjugado donde, partiendo de un iterante inicial x0 Rn,
se minimiza J siguiendo n direcciones d0, d1, . . . , dn1 linealmente independientes y mutuamente A-conjugadas,
es decir:
(dj )tAdi = 0, j 6= i.
Las direcciones dk se construyen, como veremos mas
adelante, combinando las direcciones previas con el gradiente de J en el punto xk .
Calculando k de forma que se minimice la funcion k ,
se definen:
xk+1 = xk + k dk ,
k = 0, 1, . . . , n 1.
r0 = b Ax0
d0 = r0
(r0)tr0
0
= 0t 0
(d ) Ad
x1 = x0 + 0d0
Para k = 1, . . . , n 1 :
rk = rk1 k1Adk1
(rk )trk
k
= k1 t k1
(r ) r
dk = rk + k dk1
(rk )trk
= k t k
(d ) Ad
k
xk+1 = xk + k dk
104
Observaci
on 11 .- A
un teniendo convergencia en
n iteraciones, si n es grande el resultado no es muy
satisfactorio.
En estos casos el metodo de gradiente conjugado,
sin ser estrictamente un metodo iterativo (ya hemos
visto que puede encuadrarse dentro de los que denominamos metodos directos), puede considerarse como un metodo iterativo mediante la introduccion de
un test de parada que nos permita finalizar el proceso antes de la iteracion n siempre que el error sea
suficientemente peque
no.
4.3
El m
etodo de gradiente conjugado precondicionado.-
r0 = b Ax0
z 0 = M r0
d0 = z 0
(r0)tz 0
= 0t 0
(d ) Ad
x1 = x0 + 0d0
Para k = 1, . . . , n 1 :
rk = rk1 k1Adk1
z k = M rk
(rk )tz k
k
= k1 t k1
(r ) z
dk = z k + k dk1
(rk )tz k
= k t k
(d ) Ad
k
xk+1 = xk + k dk
106
x x + 13 log(x ) x2 = 0
1 2
1
2
Entonces, trabajando con:
F : (x1, x2) (0, ) R R2 F (x1, x2) R2,
donde:
F (x1, x2) = (4x4127x1x22sen(x2)4, x1x2+13 log(x1)x22)
el problema se puede escribir:
F (x1, x2) = (0, 0).
5.1
Algoritmos de iteraci
on funcional.-
n = 0, 1, 2, . . .
1. f (D)
Entonces, f tiene un u
nico punto fijo en D.
Ademas, cualquier sucesion {xk }kN definida por:
x0 D,
xn+1 = f (xn),
n = 0, 1, . . .
1. f derivable en D.
2.
fi
continuas en D,
xj
3. kDf (x)k L,
i, j = 1, . . . , n.
x D, siendo el jacobiano:
f1
x1 (x)
Df (x) =
...
... ...
fn
x1 (x) . . .
f1
xn (x)
.
...
fn
(x)
xn
de constante L.
Entonces, f es contractiva en D
5.2
M
etodo de Newton.-
n = 0, 1, . . .
Para finalizar, daremos el siguiente resultado de convergencia local para el metodo de Newton:
110
Rn Rn y sea D
Teorema 21 .- Sea F : D
una raz de la ecuacion F (x) = 0.
1. Si DF es continua en y DF () es inversible,
entonces para x0 suficientemente proximo a se
tiene que la sucesion {xk }kN construida por el
metodo de Newton converge a , y verifica:
kxn+1 k
lim
= 0.
n kxn k
(Por tanto, el orden de convergencia es p > 1.)
2. Ademas, si existe una constante tal que:
kDF (x) DF ()k kx k
para todo x en un entorno de , entonces existe
otra constante c tal que:
kxn+1 k c kxn k2,
n n0.
111
(x1, x2) D.
D.
Df (x1, x2) =
2
C (R ),
0.3 sen(x1) 0.4 cos(x2)
de constante L =
Esto es, f es contractiva en D
0.7 < 1.
Por tanto, el metodo de iteracion funcional
x0 D,
xn+1 = f (xn),
n = 0, 1, 2, . . .
es globalmente convergente.
2. Para resolver el sistema mediante Newton, se
tiene en cuenta que
2
C (R ),
0.3 sen(x1) 1 + 0.4 cos(x2)
|det(DF (x1, x2))| = |1 0.3 cos(x1) + 0.4 cos(x2)
0.12 [cos(x1) cos(x2) sen(x1) sen(x2)]|
= |1 0.3 cos(x1) + 0.4 cos(x2) 0.12 cos(x1 x2)|
1 0.3 0.4 0.12 = 0.18 > 0, (x1, x2) R2.
DF (x1, x2) =
dado,
n = 0, 1, 2 . . .
converge localmente (esto es, para x0 suficientemente proximo a la solucion) con orden de convergencia 2.
113
114