Sunteți pe pagina 1din 22

Mtodos computacionales

Solucin de sistemas de ecuaciones


Mtodo de Gauss Seidel
Introduccin
Breve repaso de mtodos directos
Mtodo de Gauss Seidel
Comparacin de Gauss Seidel con Jacobi
Convergencia del mtodo
Conclusiones
Solucin de sistemas de ecuaciones
Mtodo de Gauss Seidel
Objetivos. Resolver sistemas de ecuaciones algebraicas lineales y
valorar su aplicacin en diversos campos de la ciencia y la tcnica.
Conocer varias tcnicas y su confiabilidad, as como sus ventajas y
desventajas.
Entender la importancia del mtodo de Gauss Seidel para grandes
sistemas de ecuaciones dispersos.
Comprender el valor de la diagonal dominante de un sistema.
Entender el fundamento de la relajacin y cuando es apropiada su
aplicacin.
Desarrollar un software para implementar el mtodo de Gauss
Seidel.
Solucin de sistemas de ecuaciones
Tratamos en este tema ecuaciones algebraicas lineales que tienen la
forma general :

= + + +
= + + +
= + + +
n n nn n n
n n
n n
b x a x a x a
b x a x a x a
b x a x a x a
...
.......... .......... .......... ..........
...
...
2 2 1 1
2 2 2 22 1 21
1 1 2 12 1 11
Donde las a son los coeficientes constantes, las b los trminos
independientes constantes y n es el nmero de ecuaciones.
Solucin de sistemas de ecuaciones
Introduccin.
Es necesario considerar el nro. de ecuaciones a resolver:
Si n 3 las tcnicas son simples
Pueden aplicarse entonces el mtodo grfico y la regla de Cramer.
De manera que aumenta el nro de ecuaciones los determinantes
consumen tiempo al tener que evaluarlos.
Se utilizan entonces otras tcnicas mas eficientes para la resolucin
de dichos sistemas.
D
a a b
a a b
a a b
x
i
33 32 3
23 22 2
13 12 1
=
Solucin de sistemas de ecuaciones
Se introduce el uso de la computadora
Esta permite la resolucin de grandes conjuntos de ecuaciones
algebraicas lineales simultneas.
Los sistemas de ecuaciones lineales simultneas surgen de
sistemas fsicos o en diferentes contextos de problemas
matemticos.
Estos resultan cuando se requiere de funciones matemticas que
satisfagan varias condiciones en forma simultnea.
Cada condicin resulta en una ecuacin que contiene
coeficientes conocidos y variables desconocidas
Es posible considerar dos tipos de sistemas que se modelan
mediante ecuaciones algebraicas lineales:
Sistemas que se modelan
A) Sistemas de variables agrupadas que involucran componentes finitos
relacionados
B) Sistemas de variables distribuidas que involucran un continuo
3
x
1
x
2
x
4
x
5
x Alimentacin
Alimentacin
1
x
1 i
x
1
x
1 + i
x
.... .... n
x
A
B
Modelo de una
serie de reactores
qumicos
Solucin de sistemas de ecuaciones
Para resolver numricamente, este tipo de sistemas se
utilizan:
MTODOS DIRECTOS:
Son provistos por la matemtica pura, y llevan a una solucin
exacta del problema, luego de un nmero finito de pasos. Este
nmero depende exclusivamente de la cantidad de ecuaciones
que componen el sistema.
El error de los resultados se debe, si no hubiese errores
inherentes en los parmetros, nicamente a los redondeos
realizados durante los clculos.
Mtodos directos
Hemos visto ya la tcnica fundamental para resolver sistemas
algebraicos lineales-> Mtodo de Eliminacin de GAUSS
Consta de dos procesos centrales: eliminacin hacia delante ( se
obtiene una matriz triangular ) y substitucin inversa
Versin simple para entender la tcnica y algunas modificaciones
para minimizar problemas.
Evitar o minimizar errores, se pueden utilizar 3 tcnicas:
1) Uso de mas cifras significativas
2) Pivoteo
3) Escalamiento
Mtodos directos: Eliminacin
1) Uso de mas cifras significativas: Es la manera mas simple para el
mal condicionamiento de los sistemas. Si se utiliza precisin
extendida se reduce el problema. Se paga un precio en calculo y
memoria.
2) Pivoteo: Antes de normalizar es conveniente determinar el
coeficiente mas grande disponible en la columna debajo del
pivote. Si los renglones se intercambian se realiza pivoteo
parcial.
3) Escalamiento: Minimiza los errores de redondeo, en aquellos
casos que ciertos coeficientes de la ecuacin son mucho mas
grandes que otros. Por ej. Escalar las ecuaciones de forma tal
que el elemento mximo en cualquier rengln sea igual a 1.
Mtodos directos: Eliminacin
1) Sistemas singulares: Un sistema de ec. puede estar mal
condicionado cuando dos o mas de las ec. son casi
idnticas. En tales casos se pierde un grado de libertad y
se dara un caso imposible de n-1 ecuaciones con n
incgnitas.
2) Si los sistemas son grandes esto podra no ser tan obvio.
Entonces sera til tener una forma de detectar la
singularidad de manera automtica.
3) La respuesta esta dada: el determinante de un sistema
singular es cero.
4) Un algoritmo puede efectuar una prueba para discernir si
se crea un cero en la diagonal durante la etapa de
eliminacin. Si descubre uno, el clculo se puede parar
inmediatamente y en la pantalla aparecer un mensaje de
alerta
Mtodos directos: Gauss Jordan
Una modificatoria del mismo es el Mtodo de Gausss-Jordan
Diferencia: en que cuando una incgnita se elimina, esta es
eliminada de todas las otras ecuaciones, no slo de las
subsecuentes.
Todos los renglones se normalizan al dividirlos por su elemento
pivote
Se obtiene una matriz identidad en vez de una triangular .
No es necesaria la substitucin hacia atras para obtener la solucin.
Para disminuir los errores por redondeo: tcnicas de pivoteo parcial
y el uso de mayor nro. de cifras significativas en los clculos.
Comparacin de los mtodos
Mtodo Eliminacin de Gauss:
Ventajas: Algoritmo de solucin mas bsico
Desventaja: Solucin de un nico conjunto de
ecuaciones lineales a la vez.
Mtodo de Gauss-Jordn:
Ventajas: La base para calcular la inversa; puede
resolver conjuntos mltiples de ecuaciones.
Desventaja: Menos eficiente para un nico
conjunto de ecuaciones.
ECUACIONES LINEALES SIMULTANEAS
MTODOS ITERATIVOS.
Los mtodos iterativos, son estrictamente numricos y dan una
solucin aproximada del sistema de ecuaciones lineales, obtenida
como lmite de una sucesin de vectores construida mediante un
proceso de aproximaciones sucesivas.
ECUACIONES LINEALES SIMULTANEAS
Mtodo de Gauss Seidel
Se presenta una alternativa a los mtodos de eliminacin,
es decir mtodos iterativos
Particularmente adecuado cuando se tienen gran nmero
de ecuaciones.
En estos casos los mtodos de eliminacin pueden estar
sujetos a errores.
Error en Gauss Seidel determinado por el nro. de
iteraciones.
Mtodo de Gauss Seidel
Los mtodos iterativos constituyen una alternativa muy usada:
Suponga un sistema de n ecuaciones:
[ ]{ } { } B X A =
Si los elementos de la diagonal no son todos cero->
La primer ecuacin se puede utilizar para despejar x
1
La segunda para x
2
y la tercera para obtener x
3
Mtodo de Gauss Seidel
Proceso de solucin:
1) Escoger los valores iniciales para los x.
2) Suponer los x
i
=
0 y substituir en (1)
3) Obtener x
1
= b
1
/ a
11
4) Luego x
1
y x
3
se reemplazan en la (2)
5) Este proceso se repite en (3) para obtener un
nuevo valor de x
3
6) Despus se regresa a la primera ecuacin y se
repite todo el procedimiento hasta que la
solucin converja suficientemente cercana a los
valores verdaderos.
11
3 13 2 12 1
1
a
x a x a b
x

=
(1)
22
3 23 1 21 2
2
a
x a x a b
x

=
(2)
33
2 32 1 31
3
3
a
x a x a b
x

=
(3)
Mtodo de Gauss Seidel
La convergencia se verifica usando el criterio:
Para todas las i, j y j-1 son las iteraciones actuales y
previas, respectivamente.
s j
i
j
i
j
i
i a
x
x x
<

=

% 100
1
,
(4)
(5)
Error relativo
porcentual
)% 10 5 . 0 (
2 n
s
x

= Criterio de Scarborough
Las ec. 4 y 5 son conservadoras. Es decir aseguran que el
resultado es, por lo menos tan bueno como lo especifican
Resolucin de un ejercicio
4 . 71 10 2 . 0 3 . 0
3 . 19 3 . 0 7 1 . 0
85 . 7 2 . 0 1 . 0 3
3 2 1
3 2 1
3 2 1
= +
= +
=
x x x
x x x
x x x
; 3
1
= x ; 5 . 2
2
= x
; 7
3
= x
Resolucin de un ejercicio
Solucin:
3
2 . 0 1 . 0 85 . 7
3 2
1
x x
x
+ +
=
7
3 . 0 1 . 0 3 . 19
3 1
2
x x
x
+
=
10
2 . 0 3 . 0 4 . 71
2 1
3
x x
x
+
=
616667 . 2
3
0 0 85 . 7
1
=
+ +
= x
794524 . 2
7
0 ) 616667 . 2 ( 1 . 0 3 . 19
2
=
+
= x
005610 . 7
10
) 794524 . 2 ( 2 . 0 ) 616667 . 2 ( 3 . 0 4 . 71
3
=
+
= x
Primera iteracin
Resolucin de un ejercicio
990557 . 2
3
) 005610 . 7 ( 2 . 0 ) 794524 . 2 ( 1 . 0 85 . 7
1
=
+ +
= x
Segunda Iteracin
499625 . 2
7
) 005610 . 7 ( 3 . 0 ) 990557 . 2 ( 1 . 0 3 . 19
2
=
+
= x
000291 . 7
10
) 499625 . 2 ( 2 . 0 ) 990557 . 2 ( 3 . 0 4 . 71
3
=
+
= x
% 31 . 0 =
t

% 015 . 0 =
t

% 0042 . 0 =
t

Resolucin de un ejercicio
Observamos entonces que el mtodo es convergente hacia la
verdadera solucin
Es posible iterar
En un problema a priori podra no saberse el resultado correcto.
Entonces se utiliza la ecuacin:
s j
i
j
i
j
i
i a
x
x x
<

=

% 100
1
,
Para estimar el error.
E(
a,i
) = error aproximado/valor
aproximado * 100%
Resolucin de un ejercicio
Errores
% 5 . 12 % 100
990557 . 2
616667 . 2 990557 . 2
1 ,
=

=
a

% 8 . 11
2 ,
=
a

% 076 . 0
3 ,
=
a

Estas proveen una valoracin conservativa de la convergencia. As


cuando se satisfacen, aseguran que el resultado se conozca con al menos,
la tolerancia especificada por E
s
Un mtodo alternativo. Jacobi
Gauss Seidel: Cada valor de x
i
calculado se introduce
inmediatamente en la siguiente ecuacin -> se utiliza la mejor
aproximacin disponible
Jacobi: Emplea una tctica levemente diferente
Se usan las ecuaciones (1),(2), y (3) para calcular un conjunto de
nuevas x con base en un conjunto de x anteriores.
As los nuevos valores no se usan inmediatamente, sino se guardan
hasta la prxima iteracin.
Es til en algunos casos, pero Gauss Seidel es el mtodo preferido.
Comparativo de Gauss Seidel y
Jacobi
Gauss
Jacobi
Criterio de Convergencia para
el mtodo de Gauss Seidel
1 < +
x
v
x
u

y;
1 < +
y
v
y
u

Retomando la idea desarrollada anteriormente donde se especific que


las condiciones suficientes para resolver dos ecuaciones no lineales:
u(x,y) y v(x,y) son:
Este criterio se aplica tambin al mtodo de Gauss Seidel
(c.1)
(c.2)
Criterio de Convergencia para el
mtodo de Gauss Seidel
2
11
12
11
1
2 1
) , ( x
a
a
a
c
x x u =
1
22
21
22
2
2 1
) , ( x
a
a
a
c
x x v =
0
1
=
x
u

22
21
1
a
a
x
v
=

Dado el caso de 2 ecuaciones simultneas, las ecuaciones (1) y (2)


del algoritmo quedarn as:
Se evalan las derivadas parciales con respecto a cada una de las
incgnitas:
(c.3)
(c.4)
Criterio de Convergencia para el
mtodo de Gauss Seidel
11
12
2
a
a
x
u
=

0
2
=
x
v

1
22
21
<
a
a
y
1
11
12
<
a
a
Que se sustituyen en las ecuaciones (c.1) y (c.2)
O sea el valor absoluto de las pendientes de las ec. (c.3) y (c.4)
son menores que 1, para asegurar la convergencia.
(c.5)
(c.6)
Criterio de Convergencia para el
mtodo de Gauss Seidel
21 22
a a >
12 11
a a >

=
>
n
i j
j
j i ii
a a
1
,
De igual manera las ecuaciones anteriores se reformulan:
La generalizacin de lo anterior para n ecuaciones es directa:
Criterio suficiente pero no necesario para asegurar la convergencia.
Los sistemas que cumplen esta condicin son diagonalmente
dominantes.
Representaciones grficas de la
convergencia
X
1
X
2
v
u
a)
u
X
2
X
1
v
b)
Las dos mismas funciones son graficadas. Dependiendo del
orden en que se implementan las ecuaciones, determina si
el clculo converge.
METODO DE GAUSS-SEIDEL (4)
Pasos, para la aplicacin del mtodo de Gauss-Seidel:
1.- Asignar un valor inicial a cada incgnita. Si es posible hacer
una hiptesis razonable, se mejorar substancialmente la rapidez
de convergencia, si no, fijar arbitrariamente estos valores.
2.- Partir de la primera ecuacin, determinar un nuevo valor para la
incgnita dominante, utilizando para las otras incgnitas los
valores supuestos segn lo descripto en 1.
METODO DE GAUSS-SEIDEL (5)
3.- Pasar a la segunda ecuacin y calcular el valor de la incgnita
dominante, utilizando para ello, el ya calculado en el paso anterior y
los valores supuestos en las otras incgnitas.
4.- Reiterar el procedimiento descripto, con todas las dems
ecuaciones, siempre para la incgnita dominante, utilizando los
ltimos valores calculados. Completado este paso se dice que se ha
concluido una ITERACIN.
5.- Iterar los pasos 2; 3 y 4 hasta que el valor de cada incgnita difiera
del valor respectivo obtenido en la iteracin previa, en una cantidad
menor que un E positivo y arbitrario previamente fijado.
Algoritmo DE GAUSS-SEIDEL (I)
Para resolver A x = b dada una aproximacin inicial
INPUT nmero de ecuaciones e incgnitas n; los elementos ,
1<=i, j<=n de la matriz A; los elementos ,1<=i<=n de b;
los elementos ,1<=i<=n de XO= ; tolerancia TOL; mximo
nmero de iteraciones N.
OUTPUT la solucin aproximada o un mensaje de que el
nmero de iteraciones fue excedido.
Paso 1 Sea k = 1.
Paso 2 Mientras sea (k<=N) realizar Pasos 3-6.
Paso 3 Para i = 1,.,n
Sea
ij
a
) 0 (
x
) 0 (
x
i
b
i
XO
n
x x x ,......., ,
2 1
ii
i
n
i j
j ij
i
j
j ij
i
a
b XO a x a
x
+
=

+ =

= 1
1
1
Algoritmo DE GAUSS-SEIDEL (II)
Paso 4 Si ||x-XO|| < TOL entonces OUTPUT
(Procedimiento terminado con xito.)
STOP
Paso 5 Sea k = k + 1.
Paso 6 Para i = 1,..,n sea
Paso 7 OUTPUT (Nmero mximo de iteraciones excedido);
(Procedimiento terminado sin xito.)
STOP.
) ,......., , (
2 1 n
x x x
i i
x XO =
Mtodo Iterativo de Jacobi
Para resolver Ax=b dada una aproximacin inicial x
(0)
:
ENTRADA el numero de ecuaciones e incgnitas n; los
elementos a
ij,
1<=i, j<=n de la matriz A; los elementos
,1<=i<=n de b; los elementos , 1<=i<=n de XO=
tolerancia TOL; mximo nmero de iteraciones N.
SALIDA: la solucin aproximada x
1
x
n
o el mensaje de
que rebas el numero de iteraciones.
Paso 1 Tome k=1.
i
b
i
XO
) 0 (
x
Mtodo Iterativo de Jacobi
Paso 2 Mientras (K<=N) haga pasos 3-6.
Paso 3 para i=1,..n, tome
( )
ij
n
i j
j
i j ij
i
a
b XO a
x

=
+
=
1
Paso 4 si ||x-XO||< TOL entonces SALIDA (x
1

x
n
); (procedimiento terminado exitosamente). PARAR
Mtodo Iterativo de Jacobi
Paso 5 tome k=k+1
Paso 6 para i=1,..n tome XO
i
=x
i
Paso 7 SALIDA (Numero mximo de
iteraciones excedido); (Procedimiento
terminado sin xito)
PARAR
Mejoramiento de la convergencia
La relajacin permite mejorar la convergencia.
Despus que se calcula cada nuevo valor de x por medio de las
ecuaciones de Gauss Seidel
Este se modifica mediante un promedio ponderado de los resultados
de las iteraciones anterior y actual:
( )
anterior
i
nuevo
i
nuevo
i
x x x + = 1
es un factor ponderado que vale entre 0 y 2
Mejoramiento de la convergencia
Si = 1 , ( 1- ) = 0 el resultado no cambia
Si 0 < <1 el resultado es un promedio ponderado de los resultados
anteriores.
Esto se conoce como subrelajacin.
Objetivo: para que el sistema no convergente converja o apresure la
convergencia.
Si 1< < 2 -> se supone que el nuevo valor se mueve en la
direccin correcta pero lentamente.
Esto se conoce como sobrerrelajacin. Este mtodo se conoce como
sobrerrelajacin simultnea o SOR.
El se determina de forma emprica.
Cuando se justifica la introduccin de ?.
Tcnicas de Gauss Seidel
Adecuada cuando las matrices son grandes y esparcidas, ya que los
mtodos de eliminacin desperdician gran espacio de memoria para
guardar 0.
Esto impone una limitacin al tamao de los sistemas que manejan
La estructura de las ecuaciones permite que se desarrollen
programas concisos para sistemas especficos.
Slo se necesitan incluir coeficientes que no sean 0-> se logran
ahorros de memoria.
Para sistemas grandes son eficientes en almacenamiento y en tiempo
de computo.
El error de redondeo no es un tema que preocupe en este mtodo.
Software
EXCEL posee funciones para manipulacin de matrices
1) Herramienta SOLVER o 2) usando la inversin de matrices y las
funciones de multiplicacin.
=minverse(B1..D3); =mmult(B5..D7;F1..F3)
Emplea nmeros de doble precisin
Si se sospecha que el sistema esta mal condicionado el nro. de
condicin de la matriz es til
Software
MATLAB: Explorar como se utiliza para resolver y analizar
ecuaciones algebraicas.
IMSL: Programa principal en FORTRAN 90, llamando a distintas
rutinas, segn categoras para solucin de sistemas lineales, inversin
de matrices y calculo determinante:
LSARG: Solucin de sistemas lineales con alta exactitud
LINRG: Invierte
LFDRG: Calculo del determinante
Conclusiones
Por su sencillez, la cantidad de operaciones a realizar y su
manejo adecuado de la memoria es muy til para grandes
sistemas de ecuaciones.
La condicin de sistema diagonalmente dominante asegura la
convergencia a la solucin del sistema
Sino habr que realizar comprobaciones del condicionamiento de
la matriz.
La relajacin es una tcnica para acelerar la convergencia en
ciertos casos.
A partir de los algoritmos presentados el alumno desarrollar un
software para implementar el mtodo de Gauss Seidel.
Bibliografa
Mtodos Numricos para ingenieros.- Chapra y Canale. Editorial
MacGraw Hill.- 5ta. Edicin.
Mtodos Numricos Pace G.- Editorial EUDENE 1997
Anlisis Numrico-Burden & Faires- Editorial Iberoamericana.
1996
Algoritmo implementado de Gauss Seidel
Gauss-Seidel

S-ar putea să vă placă și