Sei sulla pagina 1di 7

M etodos Iterativos para Resolver Sistemas Lineales

Departamento de Matem aticas, CCIR/ITESM 17 de julio de 2009

Indice
3.1. Introducci on . . . . . . . . . . . . . . . 3.2. Objetivos . . . . . . . . . . . . . . . . 3.3. Generalidades . . . . . . . . . . . . . . 3.4. M etodo Iterativo: Un ejemplo . . . . . 3.5. Ventajas y Desventajas . . . . . . . . . 3.6. M etodo Iterativo General . . . . . . . 3.7. Metodo de Jacobi: Idea . . . . . . . . 3.8. Convergencia y convergencia en Jacobi 3.9. Matriz Diagonalmente Dominante . . 3.10. Orden conveniente para Jacobi . . . . 3.11. El M etodo de Gauss-Seidel: Idea . . . 3.12. M etodo de Gauss-Seidel: Ejemplos . . 3.13. Costo computacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 2 2 3 3 5 5 5 6 6 7

3.1.

Introducci on

En esta lectura veremos procedimientos iterativos para resolver un sistema de ecuaciones lineales. El primero de ellos conocido como el procedimiento de Jacobi basado en la idea de punto jo y un segundo procedimiento conocido como m etodo de Gauss-Seidel el cual es una modicaci on simple del procedimiento de Jacobi. Introduciremos el concepto de matriz diagonalmente dominante el cual se relaciona con la garant a de convergencia en la aplicaci on de los m etodos vistos. Veremos que en algunos casos es posible replantear el sistema para garantizar la convergencia. Asimismo se comentar a en qu e situaciones los m etodos iterativos son m as convenientes a los m etodos directos.

3.2.

Objetivos

Ser a importante que usted Entienda los conceptos: m etodo iterativo, ecuaci on de recurrencia, convergencia, matriz diagonalmente dominante En t erminos cualitativos Entienda la diferencia entre un m etodo directo y uno iterativo.

Entienda la conveniencia de usar un m etodo iterativo y uno directo. Entienda y mecanice los procedimientos de M etodo de Jacobi, y M etodo de Gauss-Seidel.

3.3.

Generalidades

Un m etodo iterativo es un m etodo que progresivamente va calculando aproximaciones a la soluci on de un problema. En Matem aticas, en un m etodo iterativo se repite un mismo proceso de mejora sobre una soluci on aproximada: se espera que lo obtenido sea una soluci on m as aproximada que la inicial. El proceso se repite sobre esta nueva soluci on hasta que el resultado m as reciente satisfaga ciertos requisitos. A diferencia de los m etodos directos, en los cuales se debe terminar el proceso para tener la respuesta, en los m etodos iterativos se puede suspender el proceso al termino de una iteraci on y se obtiene una aproximaci on a la soluci on.

3.4.

M etodo Iterativo: Un ejemplo

Considere el problema de encontrar una ra z a una ecuaci on cuadr atica, por ejemplo: f (x) = x2 x 2 = 0 Un m etodo directo para resolverlo es aplicar la f ormula general x= (1) (1)2 4(1)(2) 2(1) = 1, 2

Un m etodo iterativo es el m etodo de Newton que consiste en usar la f ormula de mejora: xi+1 = xi f (xi ) xi 2 xi 2 = x i f (xi ) 2 xi 1

Si tomamos como primera aproximaci on x0 = 3 (para i = 0), tendremos x1 = x0 x0 2 x0 2 32 3 2 =3 2.2 2 x0 1 231

Si ahora tomamos como aproximaci on x1 = 2.2 y aplicamos de nuevo la f ormula tendremos: x2 = x1 2.22 2.2 2 x1 2 x1 2 = 2.2 2.011 2 x1 1 2 2.2 1

Si ahora tomamos como aproximaci on x2 = 2.011 y aplicamos de nuevo la f ormula tendremos: x3 = x2 Etceter a. 2.0112 2.011 2 x2 2 x2 2 = 2.011 2.00004 2 x2 1 2 2.011 1

3.5.

Ventajas y Desventajas

Un elemento en contra que tienen los m etodos iterativos sobre los m etodos directos es que calculan aproximaciones a la soluci on. Los m etodos iterativos se usan cuando no se conoce un m etodo para obtener la soluci on en forma exacta. Tambi en se utilizan cuando el m etodo para determinar la soluci on exacta requiere mucho tiempo de c alculo, cuando una respuesta aproximada es adecuada, y cuando el n umero de iteraciones es relativamente reducido. 2

3.6.

M etodo Iterativo General

Un m etodo iterativo consta de los siguientes pasos. 1. inicia con una soluci on aproximada (Semilla), 2. ejecuta una serie de c alculos para obtener o construir una mejor aproximaci on partiendo de la aproxion maci on semilla. La f ormula que permite construir la aproximaci on usando otra se conoce como ecuaci de recurrencia. 3. se repite el paso anterior pero usando como semilla la aproximaci on obtenida.

3.7.

Metodo de Jacobi: Idea

El m etodo Jacobi es el m etodo iterativo para resolver sistemas de ecuaciones lineales m as simple y se aplica s olo a sistemas cuadrados, es decir a sistemas con tantas inc ognitas como ecuaciones. 1. Primero se determina la ecuaci on de recurrencia. Para ello se ordenan las ecuaciones y las inc ognitas. De la ecuaci on i se despeja la inc ognita i. En notaci on matricial se escribirse como: x = c + Bx donde x es el vector de inc ognitas. 2. Se toma una aproximaci on para las soluciones y a esta se le designa por xo 3. Se itera en el ciclo que cambia la aproximaci on xi+1 = c + Bxi (2) (1)

Ejemplo 3.1 Partiendo de (x = 1, y = 2) aplique dos iteraciones del m etodo de Jacobi para resolver el sistema: 5x + 2y = 1 x 4y = 0 Soluci on Debemos primeramente despejar de la ecuaci on la inc ognita correspondiente. x = 0.20 + 0.00 x 0.40 y y = 0.00 + 0.25 x + 0.00 y Escrito en la notaci on vectorial quedar a: x y = 0.20 0.00 + 0.00 0.40 0.25 0.00 x y (3)

Aplicamos la primera iteraci on partiendo de x0 = 1.00 y y0 = 2.00: x1 = 0.20 + 0.00 (1.00) 0.40 (2.00) = 0.60 y1 = 0.00 + 0.25 (1.00) + 0.00 (2.00) = 0.25

Aplicamos la segunda iteraci on partiendo de x1 = 0.60 y y1 = 0.25: x2 = 0.20 + 0.00 (0.60) 0.40 (0.25) = 0.10 y2 = 0.00 + 0.25 (0.60) + 0.00 (0.25) = 0.15 Aplicamos la siguiente iteraci on partiendo de x2 = 0.10 y y1 = 0.15: x3 = 0.20 + 0.00 (0.10) 0.40 (0.15) = 0.26 y3 = 0.00 + 0.25 (0.10) + 0.00 (0.15) = 0.025 Aplicamos la siguiente iteraci on partiendo de x3 = 0.26 y y3 = 0.025: x4 = 0.20 + 0.00 (0.26) 0.40 (0.025) = 0.190 y4 = 0.00 + 0.25 (0.26) + 0.00 (0.025) = 0.065 Aplicamos la siguiente iteraci on partiendo de x4 = 0.190 y y4 = 0.065: x5 = 0.20 + 0.00 (0.19) 0.40 (0.065) = 0.174 y5 = 0.00 + 0.25 (0.19) + 0.00 (0.065) = 0.0475 Aplicamos la siguiente iteraci on partiendo de x5 = 0.174 y y5 = 0.0475: x6 = 0.20 + 0.00 (0.174) 0.40 (0.0475) = 0.181 y6 = 0.00 + 0.25 (0.174) + 0.00 (0.0475) = 0.0435 Si uno dispone de una hoja de c alculo como EXCEL es f acil realizar los c alculos anteriores:

i 0 1 2 3 4 5 6 donde

xi 1.000 -0.600 0.100 0.260 0.190 0.174 0.181

yi 2.000 0.250 -0.150 0.025 0.065 0.047 0.043

xi+1 -0.600 0.100 0.260 0.190 0.174 0.181 0.182

yi+1 0.250 -0.150 0.025 0.065 0.047 0.043 0.045

Di 1.750 0.700 0.175 0.070 0.017 0.007 0.001

Di = m ax (|xi xi+1 |, |yi yi+1 |) Este Di es utilizado como criterio de paro en las iteraciones: Cuando Di es menos que cierto valor dado (digamos 0.001) uno ya no realiza la siguiente iteraci on. Si se graca las aproximaciones obtenidas en el plano x y se obtendr a algo como:

3.8.

Convergencia y convergencia en Jacobi

Uno de los principales problemas de los m etodos iterativos es la garant a de que el m etodo va a converger, es decir, va a producir una sucesi on de aproximaciones cada vez efectivamente m as pr oximas a la soluci on. En el caso del m etodo de Jacobi no existe una condici on exacta para la convergencia. Lo mejor es una condici on que garantiza la convergencia, pero en caso de no cumplirse puede o no haberla es la siguiente: Si la matriz de coecientes original del sistema de ecuaciones es diagonalmente dominante, el m etodo de Jacobi seguro converge.

3.9.

Matriz Diagonalmente Dominante

Una matriz se dice matriz diagonalmente dominante, si en cada uno de los renglones, el valor absoluto del elemento de la diagonal principal es mayor que la suma de los valores abslutos de los elementos restantes del mismo rengl on. A veces la matriz de un sistema de ecuaciones no es diagonalmente dominante pero cuando se cambian el orden de las ecuaciones y las inc ognitas el nuevo sistema puede tener matriz de coecientes diagonalmente dominante. Ejemplo 3.2 Son matrices diagonalmente dominantes: 4 1 1 6 1 2 4 1 0 , 2 8 3 , 1 3 3 8 3 2 9 3 2 9 Ejemplo 3.3 No son matrices diagonalmente dominantes: 4 1 3 4 1 1 4 4 8 1 , 2 8 7 , 2 3 8 3 10 2 3 10 20

3.10.

Orden conveniente para Jacobi

En ciertas ocasiones al aplicar Jacobi la matriz no es diagonalmente dominante y por tanto no existir a garant a de convergencia. Sin embargo, en algunos casos ser a posible reordenar las inc ognitas en otra manera de forma que la nueva matriz de coecientes sea diagonalmente dominante. Esto se puede detectar revisando todos los posibles ordenamientos de las inc ognitas y ver c omo es la matriz resultante. Claro que esto conlleva un bueno n umero de pruebas pues el n umero posible de ordenamientos en n variables es (n 1)! pero cuando n es reducido es sencillo. Veamos algunos ejemplos. Ejemplo 3.4 Indique cu al es el orden conveniente para aplicar Jacobi al sistema: 3 x + 12 y z = 2 3 12 1 11 x 4 y + 3 z = 3 11 4 3 3 x 2 y 12 z = 2 3 2 12 Soluci on Con el orden y x z el sistema y su matriz de coecientes quedan: 12 y + 3 x z = 2 12 3 1 4 y + 11 x + 3 z = 3 4 11 3 2 y 3 x 12 z = 2 2 3 12 la matriz de coecientes es diagonalmente dominante 5

3.11.

El M etodo de Gauss-Seidel: Idea

El m etodo de Gauss-Seidel es muy semejante al m etodo de Jacobi. Mientras que en el de Jacobi se utiliza el valor de las inc ognitas para determinar una nueva aproximaci on, en el de Gauss-Seidel se va utilizando los valores de las inc ognitas recien calculados en la misma iteraci on, y no en la siguiente. Por ejemplo, en el m etodo de Jacobi se obtiene en el primer c alculo xi+1 , pero este valor de x no se utiliza sino hasta la siguiente iteraci on. En el m etodo de Gauss-Seidel en lugar de eso se utiliza de xi+1 en lugar de xi en forma inmediata para calcular el valor de yi+1 de igual manera procede con las siguientes variables; siempre se utilizan las variables recien calculadas.

3.12.

M etodo de Gauss-Seidel: Ejemplos

Ejemplo 3.5 Partiendo de (x = 1, y = 2) aplique dos iteraciones del m etodo de Gauss-Seidel para resolver el sistema: 5x + 2y = 1 x 4y = 0 Soluci on Debemos primeramente despejar de la ecuaci on la inc ognita correspondiente. x = 0.20 + 0.00 x 0.40 y y = 0.00 + 0.25 x + 0.00 y Aplicamos la primera iteraci on partiendo de x0 = 1.00 y y0 = 2.00: x1 = 0.20 + 0.00 (+1.000) 0.40 (2.00) = 0.600 y1 = 0.00 + 0.25 (0.600) + 0.00 (2.00) = 0.15 Aplicamos la segunda iteraci on partiendo de x1 = 0.600 y y1 = 0.15: x2 = 0.20 + 0.00 (0.600) 0.40 (0.15) = 0.26 y2 = 0.00 + 0.25 (0.26) + 0.00 (0.15) = 0.065 Aplicamos la tercera iteraci on partiendo de x2 = 0.26 y y2 = 0.065: x2 = 0.20 + 0.00 (0.26) 0.40 (0.065) = 0.174 y2 = 0.00 + 0.25 (0.174) + 0.00 (0.174) = 0.0435 Ejemplo 3.6 Partiendo de (x = 1, y = 2, z = 0) aplique dos iteraciones del m etodo de Gauss-Seidel para resolver el sistema: 10 x + 0 y z = 1 4 x + 12 y 4 z = 8 4 x + 4 y + 10 z = 4 Soluci on Debemos primeramente despejar de la ecuaci on la inc ognita correspondiente. x = 0.10 + 0.00 x + 0.00 y + 0.10 z y = 0.66 0.33 x + 0.00 y + 0.33 z z = 0.40 0.40 x 0.40 y + 0.00 z 6

Aplicamos la primera iteraci on partiendo de x0 = 1.00, y0 = 2.00, y z = 0.00: x1 = 0.10 + 0.00(1.00) + 0.00 (2.00) + 0.10 (0.00) = 0.1 y1 = 0.66 0.33(0.10) + 0.00 (2.00) + 0.33 (0.00) = 0.70 z1 = 0.40 0.40(0.10) 0.40 (0.70) + 0.00 (0.00) = 0.16 Aplicamos la segunda iteraci on partiendo de x1 = 0.10 y y1 = 0.70 y z1 = 0.16: x1 = 0.10 + 0.00(0.10) + 0.00 (0.70) + 0.10 (0.16) = 0.084 y1 = 0.66 0.33(0.084) + 0.00 (0.70) + 0.33 (0.16) = 0.748 z1 = 0.40 0.40(0.084) 0.40 (0.748) + 0.00 (0.16) = 0.134 Aplicamos la tercera iteraci on partiendo de x1 = 0.084 y y1 = 0.748 y z1 = 0.134: x1 = 0.10 + 0.00(0.084) + 0.00 (0.748) + 0.10 (0.134) = 0.086 y1 = 0.66 0.33(0.086) + 0.00 (0.748) + 0.33 (0.134) = 0.740 z1 = 0.40 0.40(0.086) 0.40 (0.740) + 0.00 (0.134) = 0.138

3.13.

Costo computacional

Es dif cil estimar el costo computacional de un m etodo iterativo, pues de antemano se desconoce cu antas iteraciones requerira para obtener una respuestas que satisfaga al usuario. Generalmente se procede a calcular el costo computacional por iteraci on. En el caso del m etodo de Jacobi la relaci on de recurrencia utilizada es: xi+1 = c + B xi No es dif cil estimar el costo computacional que involucra: el producto de la matriz B, n n por el vector xi toma n (2n 1) FLOPs, y la suma de dos vectores en n toma n FLOPs lo cual da un total de 2 n2 FLOPs en cada iteraci on del m etodo de Jacobi. Utilizando esta informaci on podemos concluir que si el algoritmo toma m iteraciones entonces el total de FLOPs ser a de: 2 m n2 Por ello es que el m etodo de Jacobi se preere en problemas donde n es grande, cuando se puede garantizar la convergencia y cuando el n umero de iteraciones esperado es bajo.

Potrebbero piacerti anche