Sei sulla pagina 1di 43

1/44

Ant.
Cerrar
M etodos Matem aticos de Especialidad
Ingeniera El ectrica
M etodos iterativos
Sistemas lineales
1
Jos e Luis de la Fuente OConnor
jl.delafuente@iberdrola.es
jldelafuente@etsii.upm.es
Escuela T ecnica Superior de Ingenieros Industriales
Universidad Polit ecnica de Madrid
Clase_itera_1_06.pdf
2/44

Ant.
Cerrar

Indice
1. Introducci on
2. Velocidad o rapidez de convergencia
3. M etodo de Jacobi
4. M etodo de Gauss-Seidel
5. M etodos de relajaci on
6. M etodos de minimizaci on
Obtenci on de direcciones de descenso
M etodo de los gradientes conjugados
7. Comparaci on num erica de los m etodos
3/44

Ant.
Cerrar
Introducci on
Al estudiar los m etodos directos para resolver sistemas lineales vimos
sus dicultades para tratar problemas de grandes dimensiones: el
n umero de operaciones era muy elevado: O(n
3
/3).
Si, por ejemplo, se desea modelizar la temperatura en las distintas
partes de un cuerpo tridimensional con forma de paraleleppedo,
suponiendo que la temperatura de una partcula de ese cuerpo
depende de su posici on, su valor se puede aproximar discretizando
cada una de las tres dimensiones del cuerpo en unos intervalos
determinados y considerando cada uno de los peque nos trocitos de la
malla que se obtiene.
Si cada lado del paraleleppedo se divide en 100 intervalos, la malla
resultante tendr a 100 100 100 = 1,000,000 de elementos o
peque nos cuerpos; el modelo adoptado involucra pues c alculos con
un mill on de variables: la temperatura en cada elemento.
Si la inuencia de un elemento es s olo en los pr oximos, la matriz
tendra muy pocos coecientes no nulos.
4/44

Ant.
Cerrar
La idea b asica de los m etodos iterativos consiste en partir de una
soluci on m as o menos aproximada y llegar a la global o exacta del
problema mediante una sucesi on de soluciones que converja a ella.
Estos m etodos no proporcionan, te oricamente, la soluci on exacta
aunque s permiten, cuando funcionan bien, acercarse a ella tanto como
se desee.
En la pr actica ese acercamiento lo rige alguna medida del error,
||b Ax||.
5/44

Ant.
Cerrar
La forma m as simple de proceso iterativo es la que dene la relaci on
de recurrencia
x
(k+1)
= Gx
(k)
+c
donde la matriz G y la constante c se escogen de tal manera que en un
punto la funci on vectorial g(x) = Gx + c sea soluci on de Ax = b.
El m etodo de denomina estacionario si G y c son constantes a lo largo
del proceso.
El m etodo iterativo ser a convergente si
lm
k
x
(k)
= x.
6/44

Ant.
Cerrar
Velocidad o rapidez de convergencia
Denici on 1 Sea una sucesi on
_
x
(k)
_
, x
(k)
R
n
, convergente a x

. Se
dene el orden de convergencia de
_
x
(k)
_
como el m aximo de los n umeros
no negativos r que satisface
0 lm
k
_
_
x
(k+1)
x

_
_
x
(k)
x

r
< .
Si r = 1, la sucesi on se dice que converge linealmente; si r = 2, se
dice que lo hace cuadr aticamente; si r = 3, c ubicamente, etc.
Orden de convergencia y velocidad de convergencia se suelen utilizar
indistintamente.
En cualquier caso, velocidad de convergencia es un t ermino
generalmente m as usado.
7/44

Ant.
Cerrar
Si la sucesi on
_
x
(k)
_
tiene una convergencia de orden r, el valor que
satisface
= lm
k
_
_
x
(k+1)
x

_
_
x
(k)
x

r
.
se denomina tasa de convergencia o relaci on de convergencia.
Cuando r = 1, para que exista convergencia, debe ser
estrictamente menor que 1.
Si = 0 y r = 1, la sucesi on
_
x
(k)
_
se dice que converge
superlinealmente.
8/44

Ant.
Cerrar
Como ejemplo, consideremos la sucesi on escalar denida por
x
(k)
= c
2
k
,
donde la constante c cumple 0 c < 1. La sucesi on converge a cero.
Calculemos su orden de convergencia:
lm
k

x
(k+1)
0

|x
(k)
0|
2
= lm
k
c
2
k+1
c
2
k+1
= 1.
Es decir, converge cuadr aticamente a 0.
La convergencia cuadr atica quiere decir, grosso modo, que en las
proximidades del lmite o soluci on el n umero de dgitos signicativos
que aporta cada paso del proceso al valor de ese lmite o soluci on
es el doble que el anterior.
9/44

Ant.
Cerrar
En la columna 2 de la tabla que sigue se pueden ver los distintos puntos
de la sucesi on del primer ejemplo analizado para c =0,99.
k c
2
k
(c = 0, 99) c
2
k
(c = 2, 2) 1/k
k
0 0,9900000000000000 2,200000000000000 1,000000000000000
1 0,9801000000000000 1,483239697419133 0,250000000000000
2 0,9605960099999999 1,217883285630907 0,037037037037037
3 0,9227446944279201 1,103577494166543 0,003906250000000
4 0,8514577710948755 1,050512967157732 0,000320000000000
5 0,7249803359578534 1,024945348376065 0,000021433470507
6 0,5255964875255620 1,012395845692812 0,000001214265678
7 0,2762516676992083 1,006178833852518 0,000000059604644
8 0,0763149839065938 1,003084659364561 0,000000002581174
9 0,0058239767686636 1,001541142122759 0,100000000000000E-10
10 0,0000339187054019 1,000770274400054 0,350493899481392E-12
11 0,1150478576143195E-08 1,000385063063246 0,112156654784615E-13
12 0,1323600954164474E-17 1,000192513000995 0,330169095523011E-15
13 0,1751919485865107E-35 1,000096251868287 0,899927452978128E-17
14 0,3069221884953861E-71 1,000048124776146 0,228365826052116E-18
15 0,9420122979079730E-143 1,000024062098581 0,542101086242752E-20
16 0,8873871694098596E-286 1,000012030976918 0,120883864830239E-21
10/44

Ant.
Cerrar
Consideremos la sucesi on convergente a 1 que dene, con c 0,
x
(k)
= c
2
k
.
Analicemos su orden de convergencia:
lm
k

x
(k+1)
1

|x
(k)
1|
= lm
k
c
2
(k+1)
1
c
2
k
1
= lm
k
c
2
(k+1)
1
_
c
2
(k+1)
1
_ _
c
2
(k+1)
+ 1
_
= lm
k
1
c
2
(k+1)
+ 1
=
1
2
.
Converge linealmente: Esta convergencia signica que en cada
iteraci on se a naden un n umero de dgitos constante a la
soluci on nal; concretamente, log

() base- dgitos por


iteraci on.
11/44

Ant.
Cerrar
Analicemos por ultimo la sucesi on que dene
x
(k)
=
1
k
k
.
Converge a cero. En la columna 4 de la tabla se pueden ver los
primeros puntos de esta sucesi on.
Estudiemos su orden de convergencia:
lm
k

x
(k+1)

|x
(k)
|
= lm
k
1
(k + 1)
k+1
1
k
k
= lm
k
1
k
_
1 +
1
k
_
k+1
= 0.
Es decir, converge superlinealmente a cero.
La convergencia superlineal signica que cada iteraci on a nade un
n umero creciente de dgitos a la soluci on nal; concretamente r
dgitos m as que la iteraci on precedente.
12/44

Ant.
Cerrar
La siguiente tabla resume las diferencias entre las diferentes
velocidades de convergencia.
k Error Convergencia
1 10
2
, 10
3
,10
4
, 10
5
, . . . Lineal, con = 10
1
2 10
2
, 10
4
,10
6
, 10
8
, . . . Lineal, con = 10
2
3 10
2
, 10
3
,10
5
, 10
8
, . . . Superlineal, aunque no cuadr atica
4 10
2
, 10
4
,10
8
, 10
16
, . . . Cuadr atica
5 10
2
, 10
8
,10
24
, . . . C ubica
13/44

Ant.
Cerrar

Indice
1. Introducci on
2. Velocidad o rapidez de convergencia
3. M etodo de Jacobi
4. M etodo de Gauss-Seidel
5. M etodos de relajaci on
6. M etodos de minimizaci on
Obtenci on de direcciones de descenso
M etodo de los gradientes conjugados
7. Comparaci on num erica de los m etodos
14/44

Ant.
Cerrar
M etodo de Jacobi
El primero de los m etodos iterativos que estudiamos es el que Carl
Gustav Jacobi (1804-1851) desarroll o alrededor de 1845.
Su mec anica es muy simple: supongamos que se desea resolver el
sistema de tres ecuaciones lineales con tres inc ognitas
a
11
x
1
+ a
12
x
2
+ a
13
x
3
= b
1
a
21
x
1
+ a
22
x
2
+ a
23
x
3
= b
2
a
31
x
1
+ a
32
x
2
+ a
33
x
3
= b
3
.
Admitiendo que los coecientes a
11
, a
22
y a
33
son distintos de cero, se
puede despejar de la primera ecuaci on la inc ognita x
1
, de la segunda x
2
y x
3
de la tercera, resultando lo que sigue.
15/44

Ant.
Cerrar
x
1
=
1
a
11
(b
1
a
12
x
2
a
13
x
3
)
x
2
=
1
a
22
(b
2
a
21
x
1
a
23
x
3
)
x
3
=
1
a
33
(b
3
a
31
x
1
a
32
x
2
).
Estas expresiones y la ecuaci on general que veamos sugieren emplear
como m etodo iterativo el que denen las siguientes relaciones de
recurrencia:
x
(k+1)
1
=
1
a
11
_
b
1
a
12
x
(k)
2
a
13
x
(k)
3
_
x
(k+1)
2
=
1
a
22
_
b
2
a
21
x
(k)
1
a
23
x
(k)
3
_
x
(k+1)
3
=
1
a
33
_
b
3
a
31
x
(k)
1
a
32
x
(k)
2
_
.
16/44

Ant.
Cerrar
La generalizaci on de esta idea es el m etodo de Jacobi. Su relaci on
general de recurrencia para un sistema n n es:
x
(k+1)
i
=
1
a
ii
_
_
_
b
i

j=1
j=i
a
ij
x
(k)
j
_
_
_
; i = 1, . . . , n.
Si se descompone la matriz de coecientes del sistema, A, de la forma
A = D(DA),
donde D es la matriz diagonal formada con los elementos de la
diagonal principal de A, es decir,
D =
_

_
a
11
0 0 0
0 a
22
0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 a
n1 n1
0
0 0 0 a
nn
_

_
, (1)
17/44

Ant.
Cerrar
El esquema iterativo del m etodo de Jacobi escrito en forma matricial
resulta
x
(k+1)
=
_
I D
1
A
_
x
(k)
+ D
1
b.
Si todos los elementos a
ii
, i = 1, . . . , n, son no nulos, la matriz D es
invertible. A la matriz
J = I D
1
A
que caracteriza el m etodo de Jacobi se la denomina matriz de
Jacobi.
18/44

Ant.
Cerrar
El algoritmo de Jacobi para resolver la ecuaci on Ax = b, partiendo de
un punto inicial x
(0)
dado, es el que esquematiza la tabla que sigue.
while x
(k+1)
x
(k)

/x
(k+1)

> Tol do
for i = 1 to n
x(i)
1
a(i, i)
_
_
_
b(i)
n

j=1
j=i
a(i, j)x(j)
_
_
_
end
end
% Resolucion por Jacobi
function [x,k]=Jacobi_2(a,b)
n=size(a,1); x=zeros(n,1); y=zeros(n,1); sm=1; k=0;
while sm>=0.001
k=k+1;
for i=1:n
y(i)=(b(i)-a(i,[1:i-1,i+1:n])
*
x([1:i-1,i+1:n]))/a(i,i);
end
sm=max(abs(x-y))/max(abs(y));
x=y;
end
19/44

Ant.
Cerrar
Ejemplo
Resolvamos el sistema de ecuaciones lineales
10x
1
x
2
+ 2x
3
= 6
x
1
+ 11x
2
x
3
+ 3x
4
= 25
2x
1
x
2
+ 10x
3
x
4
= 11
3x
2
x
3
+ 8x
4
= 15.
Aplicando la relaci on general de recurrencia del m etodo a este caso,
partiendo del punto inicial x
(0)
= [0, 0, 0, 0]
T
, se tendr a:
x
(1)
1
=
1
10
x
(0)
2

1
5
x
(0)
3
+
3
5
= 0,6000
x
(1)
2
=
1
11
x
(0)
1
+
1
11
x
(0)
3

3
11
x
(0)
4
+
25
11
= 2,2727
x
(1)
3
=
1
5
x
(0)
1
+
1
10
x
(0)
2
+
1
10
x
(0)
4

11
10
= 1,1000
x
(1)
4
=
3
8
x
(0)
2
+
1
8
x
(0)
3
+
15
8
= 1,8750.
20/44

Ant.
Cerrar
Las iteraciones que siguen se generan de forma similar obteni endose
los resultados de la siguiente tabla.
k 0 1 2 3 4 9
x
(k)
1
0,0000 0,6000 1,0473 0,9326 1,0152 0,9997
x
(k)
2
0,0000 2,2727 1,7159 2,0533 1,9537 2,0004
x
(k)
3
0,0000 -1,1000 -0,8052 -1,0493 -0,9681 -1,0009
x
(k)
4
0,0000 1,8750 0,8852 1,1309 0,9739 1,0006
La decisi on de parar el proceso iterativo se puede basar en cualquier
criterio que se estime adecuado.
En este caso hemos forzado a que la parada se produzca cuando
_
_
x
(k)
x
(k1)
_
_

x
(k)

< 10
3
.
21/44

Ant.
Cerrar
En k = 9 se cumple que
x
(9)
x
(8)

x
(9)

=
8,0 10
4
2,0004
= 0,0003999 < 10
3
.
La cantidad 10
3
se ha considerado suciente como aproximaci on a la
soluci on de este ejemplo.
u
22/44

Ant.
Cerrar
Ejemplo
Resolvamos con el m etodo de Jacobi el sistema
10x
1
+ x
2
= 11
2x
1
+ 10x
2
= 12
partiendo del punto x
(0)
= [0, 0]
T
.
Los puntos que se generan en el proceso iterativo son los de la tabla
que sigue.
k 0 1 2 3 4 5
x
(k)
1
0,0000 1,1000 0,9800 1,0020 0,9996 1,00004
x
(k)
2
0,0000 1,2000 0,9800 1,0040 0,9996 1,00008
La soluci on exacta es [1, 1]
T
.
23/44

Ant.
Cerrar
Resolvamos ahora el sistema
x
1
+ 10x
2
= 11
10x
1
+ 2x
2
= 12
cuya soluci on es tambi en [1, 1]
T
.
Partiendo de x
(0)
= [0, 0]
T
, los cinco primeros puntos que se generan
utilizando el esquema iterativo de Jacobi son esta vez los que recoge la
tabla que sigue.
k 0 1 2 3 4 5
x
(k)
1
0,0000 11 -49 501 -2499 25001
x
(k)
2
0,0000 6 -49 251 -2499 12501
El proceso diverge.
u
Los dos sencillos sistemas de este ejemplo nos permiten constatar que
la sucesi on de puntos que genera el m etodo de Jacobi puede converger
a la soluci on o diverger de esta.
24/44

Ant.
Cerrar
Para poderlo aplicar con garanta, por tanto, se hace necesario denir
en qu e condiciones converge y se puede aplicar.
Teorema 1 Si la matriz A es de diagonal dominante, el m etodo de Jacobi
para resolver Ax = b converge a su soluci on.
Seguiremos con la cuesti on de la convergencia m as adelante
25/44

Ant.
Cerrar

Indice
1. Introducci on
2. Velocidad o rapidez de convergencia
3. M etodo de Jacobi
4. M etodo de Gauss-Seidel
5. M etodos de relajaci on
6. M etodos de minimizaci on
Obtenci on de direcciones de descenso
M etodo de los gradientes conjugados
7. Comparaci on num erica de los m etodos
26/44

Ant.
Cerrar
M etodo de Gauss-Seidel
En el m etodo de Jacobi cada uno de los componentes del vector
soluci on en la iteraci on k + 1 se determina a partir de las de la iteraci on
k.
En el de Carl Friedrich Gauss (1777-1855) y Phillip Ludwig Seidel
(1874)
1
se modica el de Jacobi utilizando en el c alculo de cada
componente de la soluci on en una iteraci on el valor de aquellos ya
calculados en esa misma iteraci on.
Volviendo a un sistema simb olico de tres ecuaciones,
a
11
x
1
+ a
12
x
2
+ a
13
x
3
= b
1
a
21
x
1
+ a
22
x
2
+ a
23
x
3
= b
2
a
31
x
1
+ a
32
x
2
+ a
33
x
3
= b
3
,
suponiendo una vez m as que a
11
, a
22
y a
33
son distintos de cero, el
esquema iterativo del m etodo de Gauss-Seidel es el que sigue.
1
Lo introdujo Gauss en 1823 y lo perfeccion o Seidel (alumno de Jacobi), as como el an alisis de su
convergencia, en 1874
27/44

Ant.
Cerrar
x
(k+1)
1
=
1
a
11
_
b
1
a
12
x
(k)
2
a
13
x
(k)
3
_
x
(k+1)
2
=
1
a
22
_
b
2
a
21
x
(k+1)
1
a
23
x
(k)
3
_
x
(k+1)
3
=
1
a
33
_
b
3
a
31
x
(k+1)
1
a
32
x
(k+1)
2
_
.
La relaci on de recurrencia general para un sistema n n es la
siguiente:
x
(k+1)
i
=
1
a
ii
_
b
i

i1

j=1
a
ij
x
(k+1)
j

n

j=i+1
a
ij
x
(k)
j
_
; i = i, . . . , n.
28/44

Ant.
Cerrar
Si se introducen las matrices
E =
_

_
0 0 0 0
a
21
0 0 0
.
.
.
.
.
.
.
.
.
.
.
.
a
n1 1
a
n1 2
0 0
a
n1
a
n2
a
n n1
0
_

_
y F =
_

_
0 a
12
a
1 n1
a
1 n
0 0 a
2 n1
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 a
n1 n
0 0 0 0
_

_
,
el m etodo de Gauss-Seidel descompone la matriz A de la forma
A = (DE) F,
donde D es la misma matriz diagonal que en el caso del m etodo de
Jacobi.
El esquema iterativo del m etodo de Gauss-Seidel escrito en forma
matricial resulta
x
(k+1)
= (I (DE)
1
A)x
(k)
+ (DE)
1
b.
La matriz que caracteriza al m etodo es en este caso
I (DE)
1
A.
29/44

Ant.
Cerrar
Como A = (DE) F, la expresi on anterior tambi en se puede
representar de la siguiente forma
x
(k+1)
= (DE)
1
[(DE) A] x
(k)
+ (DE)
1
b
= (DE)
1
Fx
(k)
+ (DE)
1
b.
A la matriz
G = (DE)
1
F
se la denomina matriz de Gauss-Seidel.
30/44

Ant.
Cerrar
El esquema del algoritmo para resolver la ecuaci on Ax = b con el
m etodo de Gauss-Seidel es el que se describe en la tabla que sigue.
while x
(k+1)
x
(k)

/x
(k+1)

> Tol do
for i = 1 to n
x(i)
1
a(i, i)
_
b(i)
i1

j=1
a(i, j)x(j)
n

j=i+1
a(i, j)x(j)
_
end
end
En Matlab:
% Resolucion por Gauss-Seidel
function [x,k]=Gauss_Seidel_1_1(a,b)
n=size(a,1); x=zeros(n,1); sm=1; k=0;
while sm>0.001
k=k+1; sm=0;
for i=1:n;
xi=(b(i)-a(i,[1:i-1,i+1:n])
*
x([1:i-1,i+1:n]))/a(i,i);
sm=max(abs(x(i)-xi),sm);
x(i)=xi;
end
sm=sm/max(abs(x));
end
31/44

Ant.
Cerrar
Ejemplo
Resolvamos por el m etodo de Gauss-Seidel el sistema lineal de
ecuaciones del ejemplo anterior:
10x
1
x
2
+ 2x
3
= 6
x
1
+ 11x
2
x
3
+ 3x
4
= 25
2x
1
x
2
+ 10x
3
x
4
= 11
3x
2
x
3
+ 8x
4
= 15.
Aplicando la relaci on general de recurrencia de Gauss-Seidel a este
caso, partiendo del punto inicial x
(0)
= [0, 0, 0, 0]
T
, se tiene
x
(1)
1
=
1
10
x
(0)
2

1
5
x
(0)
3
+
3
5
= 0,6000
x
(1)
2
=
1
11
x
(1)
1
+
1
11
x
(0)
3

3
11
x
(0)
4
+
25
11
= 2,3273
x
(1)
3
=
1
5
x
(1)
1
+
1
10
x
(1)
2
+
1
10
x
(0)
4

11
10
= 0,9873
x
(1)
4
=
3
8
x
(1)
2
+
1
8
x
(1)
3
+
15
8
= 0,8789.
32/44

Ant.
Cerrar
Las iteraciones que se generan son las de la tabla.
k 0 1 2 3 4 5
x
(k)
1
0,0000 0,6000 1,0302 1,0066 1,0009 1,0001
x
(k)
2
0,0000 2,3273 2,0369 2,0036 2,0003 2,0000
x
(k)
3
0,0000 -0,9873 -1,0145 -1,0025 -1,0003 -1,0000
x
(k)
4
0,0000 0,8789 0,9843 0,9984 0,9998 0,9999
Obs ervese que con este m etodo el problema, con el mismo criterio de
convergencia, necesita 5 iteraciones; el de Jacobi lo haca en 9.
u
33/44

Ant.
Cerrar
Proposici on 1 Si la matriz Aes de diagonal dominante entonces se cumple
que
G

.
Teorema 2 El m etodo de GaussSeidel para resolver Ax = b converge a su
soluci on para el caso de una matriz de coecientes de diagonal dominante.
Teorema 3 El esquema iterativo
x
(k+1)
= Gx
(k)
+ c
es convergente si y s olo si el radio espectral de Ges menor que 1.
En ese caso la sucesi on x
(k)
converge a la soluci on de la ecuaci on
x = Gx + c.
El m etodo de Gauss-Seidel puede resultar muy lento si el radio
espectral (G) es muy pr oximo a la unidad.
34/44

Ant.
Cerrar
Teorema 4 El m etodo iterativo de GaussSeidel es convergente para todo
sistema de ecuaciones cuya matriz de coecientes es sim etrica denida po-
sitiva.
Teorema 5 Sea A una matriz sim etrica y denida positiva, el m etodo ite-
rativo de Jacobi es convergente si y s olo si la matriz 2D A es denida
positiva.
35/44

Ant.
Cerrar

Indice
1. Introducci on
2. Velocidad o rapidez de convergencia
3. M etodo de Jacobi
4. M etodo de Gauss-Seidel
5. M etodos de relajaci on
6. M etodos de minimizaci on
Obtenci on de direcciones de descenso
M etodo de los gradientes conjugados
7. Comparaci on num erica de los m etodos
36/44

Ant.
Cerrar
M etodos de Relajaci on
Los m etodos de Jacobi y Gauss-Seidel se pueden generalizar: sus
relaciones de recurrencia se pueden escribir de la forma
x
(k+1)
i
= x
(k)
i
+ r
(k)
i
, i = 1, . . . , n.
En el caso del m etodo de Jacobi,
r
(k)
i
=
b
i

j=1
a
ij
x
(k)
j
a
ii
;
En el de Gauss-Seidel,
r
(k)
i
=
b
i

i1

j=1
a
ij
x
(k+1)
j

n

j=i
a
ij
x
(k)
j
a
ii
.
37/44

Ant.
Cerrar
Visto as, estos dos procedimientos iterativos llegan a la soluci on a
trav es de unos pasos, en cada uno de los cuales se avanza una
cantidad r
(k)
.
La idea de los m etodos de relajaci on consiste, en cada iteraci on, en
aplicar la relaci on de recurrencia,
x
(k+1)
i
= x
(k)
i
+ r
(k)
i
, i = 1, . . . , n,
de tal forma que se mejoren las prestaciones del procedimiento
avanzando un paso m as amplio, > 1, o m as corto, < 1.
Al par ametro se le conoce como par ametro de relajaci on.
38/44

Ant.
Cerrar
El m etodo de relajaci on m as conocido es el SOR, Successive
Overrelaxation: resulta de aplicar esta idea sobre la base del m etodo
de Gauss-Seidel.
Su relaci on de recurrencia es:
x
(k+1)
i
=

a
ii
_
b
i

i1

j=1
a
ij
x
(k+1)
j

n

j=i+1
a
ij
x
(k)
j
_
+ (1 )x
(k)
i
, i = 1, . . . , n.
Una elecci on adecuada del valor de puede mejorar la convergencia
del m etodo:
Si la correcci on que introduce en cada iteraci on es excesiva, se
puede disminuir con un factor < 1;
Si la correcci on tiende a quedarse corta, se puede aumentar con un
factor > 1.
39/44

Ant.
Cerrar
La elecci on del par ametro plantea dos problemas:
Que ha de estudiarse el conjunto de valores del par ametro que
hacen que el m etodo SOR converja;
Que hay que determinar el valor del par ametro que haga que la
convergencia sea lo m as r apida posible.
Si la matriz A se representa como antes de la forma
A = DE F,
el esquema iterativo del m etodo SOR en forma matricial es
x
(k+1)
= (DE)
1
((1 )D + F) x
(k)
+ (DE)
1
b.
La matriz que caracteriza la iteraci on y convergencia del m etodo es
G() = (DE)
1
((1 )D + F) .
40/44

Ant.
Cerrar
El esquema algortmico del m etodo es el que sigue.
while x
(k+1)
x
(k)

/x
(k+1)

> Tol do
for i = 1 to n
x(i)

a(i, i)
_
_
b(i)
i1

j=1
a(i, j)x(j)
n

j=i+1
a(i, j)x(j)
_
_
+ (1 )x(i)
end
end
% Resolucion por SOR
function [x,k]=SOR(a,b,w)
n=size(a,1); x=zeros(n,1); sm=1; k=0;
if nargin<3 w=1.25; end
while sm>=0.0001
k=k+1; sm=0;
for i=1:n;
su=b(i)-a(i,[1:i-1,i+1:n])
*
x([1:i-1,i+1:n]);
xi=(1-w)
*
x(i)+w
*
su/a(i,i);
sm=max(abs(x(i)-xi),sm);
x(i)=xi;
end
sm=sm/max(abs(x));
end
41/44

Ant.
Cerrar
Ejemplo
Resolvamos por el m etodo SOR el sistema de ecuaciones lineales
4x
1
+ 3x
2
= 24
3x
1
+ 4x
2
x
3
= 30
x
2
+ 4x
3
= 24.
Aplicando la relaci on general de recurrencia del m etodo, partiendo del
punto inicial x
(0)
= [1, 1, 1]
T
, con = 1,25, se obtienen los resultados
de la siguiente tabla.
k 0 1 2 3 4 5 6 7
x
(k)
1
1,0000 6,3125 2,6223 3,1333 2,9570 3,0037 2,9963 3,0000
x
(k)
2
1,0000 3,5195 3,9585 4,0102 4,0074 4,0029 4,0009 4,0002
x
(k)
3
1,0000 -6,6501 -4,6004 -5,0966 -4,9734 -5,0057 -4,9982 -5,0003
42/44

Ant.
Cerrar
Por el contrario, partiendo del mismo punto pero esta vez con = 2,25,
los resultados que se obtienen son los de la siguiente tabla.
k 0 1 2 3 4 5 6 7
x
(k)
1
1,0000 10,5625 3,0588 1,3328 -10,8367 12,2136 10,9919 18,5938
x
(k)
2
1,0000 -1,6367 4,9442 13,4344 8,7895 -7,5608 -11,1607 11,9961
x
(k)
3
1,0000 -15,6706 8,8695 -17,0300 12,7316 -33,6674 22,3064 -34,6352
Como se puede ver, en este caso la soluci on diverge.
u
43/44

Ant.
Cerrar
Convergencia
Teorema 6 Ostrowski-Reich Para un sistema de ecuaciones con matriz
sim etrica y denida positiva, el m etodo iterativo de relajaci on SOR converge
si y s olo si el par ametro de relajaci on cumple que 0 < < 2.
Queda por estudiar la cuesti on de la selecci on del valor del par ametro
de relajaci on de forma que la velocidad de convergencia sea m axima.

Potrebbero piacerti anche