You are on page 1of 60
Algebra Lineal Ma1010 Métodos Iterativos para Resolver Sistemas Lineales Departamento de Matematicas ITESM Introduccion En esta lectura veremos procedimientos iterativos Tere para resolver un sistema de ecuaciones lineales. El primero de ellos conocido como el procedimiento de Jacobi basado en la idea de punto fijo y un segundo procedimiento conocido como método de Gauss-Seidel el cual es una modificacién simple del procedimiento de Jacobi. Introduciremos el concepto de matriz diagonalmente dominante el cual se relaciona con —_—Feergena la garantia de convergencia en la aplicacion de los —_Eiempios métodos vistos. Veremos que en algunos casos es eee posible replantear el sistema para garantizar la convergencia. Asimismo se comentara en qué situaciones los métodos iterativos son mas convenientes a los métodos directos. Se recomienda utilizar el archivo de excel que se Ee provee para ilustrar la convergencia de los métodos, sobre todo los siguientes hechos: = Que la convergencia se tiene siempre que la matriz es diagonalmente dominante, sin importar cual sea la semilla o el vector de constantes. = Que cuando la matriz de coeficientes no es diagonalmente dominante, se puede tener convergencia ya sea por que la semilla es la adecuada ya sea por el vector de constantes. En términos formales, que la condicional Si la matriz de coeficientes es DD, entonces Jacobi converge es cierta, mientras que su reciproca no loes. Sera importante que usted = Entienda los conceptos: * método iterativo, ecuacion de recurrencia, * convergencia, * matriz diagonalmente dominante = En términos cualitativos « Entienda la diferencia entre un método directo y uno iterativo. « Entienda la conveniencia de usar un método ee iterativo y uno directo. ‘Computacional = Entienda y mecanice los procedimientos de « Método de Jacobi, y « Método de Gauss-Seidel. Generalidades Un método iterativo es un método que progresivamente va calculando aproximaciones a la solucién de un problema. En Matematicas, en un método iterativo se repite un mismo proceso de mejora sobre una solucién aproximada: se espera que lo obtenido sea una solucién mas aproximada que la inicial. El proceso se repite sobre esta nueva solucidn hasta que el resultado mas. reciente satisfaga ciertos requisitos. A diferencia de los métodos directos, en los cuales se debe Ejemplos terminar el proceso para tener la respuesta, en los orottenena] métodos iterativos se puede suspender el proceso al termino de una iteracién y se obtiene una aproximacion a la solucion. Método Iterativo: Un ejemplo Considere el problema de encontrar una raiz a una ecuaci6n cuadratica, por ejemplo: lauss- Ejemplos Coste ‘Computacional Método Iterativo: Un ejemplo Considere el problema de encontrar una raiz a una ecuaci6n cuadratica, por ejemplo: f(z) Un método directo para resolverlo es aplicar la formula general —2-2=0 2(1 = auss ( ) Ejemplos Coste. ‘Computacional Método Iterativo: Un ejemplo Considere el problema de encontrar una raiz a una ecuaci6n cuadratica, por ejemplo: f(z) Un método directo para resolverlo es aplicar la formula general =D + YD? 42) hs er =-1,2 Ejemplos Un método iterativo para resolver ecuaciones es eee el método de Newton que consiste en usar la formula de mejora: —2-2=0 Te Si tomamos como primera aproximacion x» = 3 (para i = 0), tendremos 2 ity 2 3 ¢ ie = ty = 2 sae (Seat eet) Oo eal ees ty = Xo — Ejemplos Coste ‘Computacional Si tomamos como primera aproximacion x» = 3 (para i = 0), tendremos 2 ne ea 2a aD Bo = to-2_, F-37244 eal ees Si ahora tomamos como aproximaci6n x; = 2.2 y aplicamos de nuevo la formula tendremos: 2.2? — 2 = —— * 2.011 Eee o 2 = 2 — Ejemplos Coste ‘Computacional Si tomamos como primera aproximacion x» = 3 (para i = 0), tendremos 2 © 2 i‘ x9 CO lea ed eee | =3- 2 22.2 eal aoe ty = Xo — Si ahora tomamos como aproximaci6n x; = 2.2 y aplicamos de nuevo la formula tendremos: 2.2? 22-2 er a | ae Si ahora tomamos como aproximaci6n x2 = 2.011 Sromeee] y aplicamos de nuevo la formula tendremos: 2.011? — 2.011 — 2 2-2.011—1 @2 = @y— =~ 2.00004 Etcetera. Ventajas y Desventajas Un elemento en contra que tienen los métodos iterativos sobre los métodos directos es que calculan aproximaciones a la solucion. Ejemplos Coste ‘Computacional Ventajas y Desventajas Un elemento en contra que tienen los métodos iterativos sobre los métodos directos es que calculan aproximaciones a la solucién. Los métodos iterativos se usan cuando no se conoce un método para obtener la solucién en forma exacta. Ejemplos Coste ‘Computacional Ventajas y Desventajas Un elemento en contra que tienen los métodos iterativos sobre los métodos directos es que calculan aproximaciones a la solucién. Los métodos iterativos se usan cuando no se conoce un método para obtener la solucién en forma exacta. También se utilizan cuando el método para determinar la solucién exacta requiere mucho tiempo de calculo, cuando una respuesta aproximada es adecuada, y cuando el numero de iteraciones es relativamente reducido. Ea sto ‘Computacional Método lterativo General Un método iterativo consta de los siguientes pasos. Método lterativo General Un método iterativo consta de los siguientes pasos. 1. inicia con una solucién aproximada (Semilla), Método lterativo General Un método iterativo consta de los siguientes pasos. 1. inicia con una solucién aproximada (Semilla), 2. ejecuta una serie de calculos para obtener o construir una mejor aproximacié partiendo de la aproximacién semilla. La formula que permite construir la aproximacién usando otra se conoce como ecuacién de recurrencia. iterativo General Método lterativo General Un método iterativo consta de los siguientes pasos. 1. inicia con una solucién aproximada (Semilla), 2. ejecuta una serie de calculos para obtener o construir una mejor aproximacié partiendo de la aproximacion semilla. La formula que permite construir la aproximacién usando otra se conoce como ecuacién de recurrencia. 3, se repite el paso anterior pero usando como semilla la aproximacién obtenid Gauss-Seidel Ejemplos Coste ‘Computacional Metodo de Jacobi: Idea El método Jacobi es un método iterativo para resolver sistemas de ecuaciones lineales mas simple y se aplica solo a sistemas cuadrados, es decir a sistemas con tantas incdgnitas como ecuaciones. Ejemplos Coste ‘Computacional 1. Primero se determina la ecuacién de recurrencia. Para ello se ordenan las ecuaciones y las incégnitas. De la ecuacién i se despeja la incdgnita i. En notaci6n matricial se escribirse como: donde x es el vector de incdgnitas. Gauss-Seidel Ejemplos Coste ‘Computacional 1. Primero se determina la ecuacién de recurrencia. Para ello se ordenan las ecuaciones y las incégnitas. De la ecuacién i se despeja la incdgnita i. En notaci6n matricial se escribirse como: donde x es el vector de incdgnitas. 2. Se toma una aproximaci6n para las soluciones y a ésta se le designa por x, Reordenamiento Gauss-Seidel Ejemplos Coste ‘Computacional 1. Primero se determina la ecuacién de recurrencia. Para ello se ordenan las ecuaciones y las incégnitas. De la ecuacién i se despeja la incdgnita i. En notaci6n matricial se escribirse como: donde x es el vector de incdgnitas. Ejempio2 ae : Reordenamiento 2. Se toma una aproximacién para las soluciones cuereae . a mplos y a ésta se le designa por x, oe : : : eee ‘Computacional 3. Se itera en el ciclo que cambia la aproximacién a Ejemplo Partiendo de (x = 1,y = 2) aplique dos iteraciones del método de Jacobi para resolver el sistema: Led Diagonalmente : Dominante Solucion Ejemplo 2 Reordenamiento Gauss-Seidel Ejemplos Costo Computacional Ejemplo Partiendo de (x = 1,y = 2) aplique dos iteraciones del método de Jacobi para resolver el sistema: Led Diagonalmente 4 Dominante Solucion Ejemplo 2 Reordenamiento Gauss-Seidel cere) ee Ocoee OO ey) eee 200 ert ee ORO cat een LOC) ‘Computacional cs) Ejemplo Partiendo de (x = 1,y = 2) aplique dos iteraciones del método de Jacobi para resolver el sistema: Led Diagonalmente : Dominante Solucion Ejemplo 2 Reordenamiento Gauss-Seidel « = 0.20 + 0.002 — 040y Bemis y = 0.00 + 0.252 + 0.00y Computaconal x} _ | 0.20 Ff 0.00 —0.40 ap y | | 0.00 0.25 0.00 y Aplicamos la primera iteracién partiendo de x» = 1.00 y Yo = 2.00: x = 0.20 + 0.00(1.00) — 0.40(2.00) = —0.60 my = 0.00 + 0.25(1.00) + 0.00(2.00) = 0.25 Aplicamos la primera iteracién partiendo de x» = 1.00 y yo = 2.00: x, = 0.20 + 0.00(1.00) — 0.40(2.00) = -—0.60 ys = 0.00 + 0,25(1.00) + 0.00(2.00) = 0.25 Aplicamos la segunda iteraci6n partiendo de x; = —0.60 y an = 0.25: t = 0.20 + 0.00(—0.60) — 0.40(0.25) = 0.10 ye = 0.00 + 0.25(—0.60) + 0.00(0.25) = -0.15 Aplicamos la primera iteracién partiendo de x» = 1.00 y yo = 2.00: x, = 0.20 + 0.00(1.00) — 0.40(2.00) = -—0.60 ys = 0.00 + 0,25(1.00) + 0.00(2.00) = 0.25 Aplicamos la segunda iteraci6n partiendo de x; = —0.60 y an = 0.25: t = 0.20 + 0.00(—0.60) — 0.40(0.25) = 0.10 ye = 0.00 + 0.25(—0.60) + 0.00(0.25) = -0.15 Aplicamos la siguiente iteracién partiendo de x. = 0.10 y yy = —0.15: Eo 0120 ee O1001( O10) et 40/ E0815) 0.26 0.00 + 0.25(0.10) + 0.00(—0.15) = 0.025 y Aplicamos la siguiente iteracion partiendo de x3 = 0.26 y ys = 0.025: ry = 0.20 + 0.00(0.26) — 0.40(0.025) = 0.190 ya = 0.00 + 0.25(0.26) + 0.00(0.025) = 0.065 Aplicamos la siguiente iteracién partiendo de x3 = 0.26 y ys = 0.025: zy, = 0.20 + 0.00(0.26) — 0.40(0.025) = 0.190 ya = 0.00 + 0.25(0.26) + 0.00(0.025) = 0.065 Aplicamos la siguiente iteracion partiendo de x; = 0.190 y ya = 0.065: ts = 0.20 + 0.00(0.19) — 0.40(0.065) = 0.174 Ys 0.00 + 0.25(0.19) + 0.00(0.065) = 0.0475 Aplicamos la siguiente iteracion partiendo de x3 = 0.26 y ys = 0.025: zy, = 0.20 + 0.00(0.26) — 0.40(0.025) = 0.190 ys = 0.00 + 0.25(0.26) + 0.00(0.025) = 0.065 Aplicamos la siguiente iteracion partiendo de x; = 0.190 y ya = 0.065: ts = 0.20 + 0.00(0.19) — 0.40(0.065) = 0.174 ys = 0.00 + 0.25(0.19) + 0.00(0.065) = 0.0475 Aplicamos la siguiente iteracién partiendo de x; = 0.174 y ys = 0.0475: te = 0.20 + 0.00(0.174) — 0.40(0.0475) = 0.181 ys = 0.00 + 0.25(0.174) + 0.00(0.0475) 0.0435 Si uno dispone de una hoja de calculo como EXCEL es facil realizar los calculos anteriores: vi Yi tit Yiu Di 1.000 | 2.000 | -0.600 | 0.250 | 1.750 -0.600 | 0.250 | 0.100 | -0.150 | 0.700 Ea 0.100 | -0.150 | 0.260 | 0.025 | 0.175 0.260 | 0.025 | 0.190 | 0.065 | 0.070 0.190 | 0.065 | 0.174 | 0.047 | 0.017 Eemplos 0.174 | 0.047 | 0.181 | 0.043 | 0.007 Sromeee] 6 | 0.181 | 0.043 | 0.182 | 0.045 | 0.007 donde a] #| oa] rm) =} ol ~ Dj = max (|2; — 241], [yi — Yea) Si se grafica las aproximaciones obtenidas en el plano 2 — y se obtendra algo como: Sucesién de Soluciones 2 Convergencia y convergencia en Jacobi Uno de los principales problemas de los métodos iterativos es la garantia de que el método vaa converger, es decir, va a producir una sucesi6n de aproximaciones cada vez efectivamente mas proximas a la soluci6n. Ejemplos Coste ‘Computacional Convergencia y convergencia en Jacobi Uno de los principales problemas de los métodos iterativos es la garantia de que el método vaa converger, es decir, va a producir una sucesi6n de aproximaciones cada vez efectivamente mas proximas a la solucién. En el caso del método de Jacobi no existe una condicién exacta para la convergencia. Ejemplos Coste ‘Computacional Convergencia y convergencia en Jacobi Uno de los principales problemas de los métodos iterativos es la garantia de que el método vaa converger, es decir, va a producir una sucesi6n de aproximaciones cada vez efectivamente mas proximas a la solucién. En el caso del método de Jacobi no existe una condicién exacta para la convergencia. Lo mejor es una condicién que garantiza la convergencia, pero en caso de no cumplirse puede o no haberla es la siguiente: Ejemplos Si la matriz de coeficientes original del ea sistema de ecuaciones es diagonalmente Sane) dominante, el método de Jacobi seguro converge. 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 rengl6n. 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én. 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égnitas el nuevo sistema puede tener matriz de coeficientes diagonalmente dominante. Ejemplos Coste ‘Computacional Ejemplo Son matrices diagonalmente dominantes: Age lees 8 Agel reece eel eS, ete Seo) See) Ejemplo No son matrices diagonalmente dominantes: La 4 13 4 11 3 8 Pe leet Sie ee | |e Sah : ee ed Orden conveniente para Jacobi En ciertas ocasiones al aplicar Jacobi la matriz no es diagonalmente dominante y por tanto no existira garantia de convergencia. Sin embargo, en algunos casos sera posible reordenar las incognitas en otra manera de forma que la nueva matriz de coeficientes sea diagonalmente dominante. Esto se puede detectar revisando todos los posibles ordenamientos de las incégnitas y ver como es la matriz resultante. Claro que esto conlleva un bueno numero de pruebas pues el Ejemplos numero posible de ordenamientos en n variables eee es (n — 1)! pero cuando n es reducido es sencillo. Veamos algunos ejemplos. Ejemplo Indique cual es el orden conveniente para aplicar Jacobi al sistema: tae ee | ee eS ce) eee ete) B Reordenamiento Gauss-Seidel Ejemplos Coste ‘Computacional Ejemplo Indique cual es el orden conveniente para aplicar Jacobi al sistema: Se 2 2 Seale a —_-__,__,,,,, _FTEq -82 — 2y — 122 = -2 =.) Lr Gauss-Seidel Ejemplos Coste ‘Computacional Ejemplo Indique cual es el orden conveniente para aplicar Jacobi al sistema: 8¢ + 12y — z —2 ee Set a eee ete) Solucion Con el orden y — « — z el sistema y su matriz de coeficientes quedan: eae Computacional a 2) [23 — 4y + lle + 82 = -3 >] -4 Ill 3 2 See 2 la matriz de coeficientes es —— sa EI Método de Gauss-Seidel: Idea El método de Gauss-Seidel es muy semejante al método de Jacobi. Ejemplos Costo Computacional EI Método de Gauss-Seidel: Idea El método de Gauss-Seidel es muy semejante al método de Jacobi. Mientras que en el de Jacobi se utiliza el valor de las incégnitas para determinar una nueva aproximaci6n, en el de Gauss-Seidel se va utilizando los valores de las incégnitas recien calculados en la misma iteraci6n, y no en la siguiente. Ejemplos Coste ‘Computacional Por ejemplo, en el método de Jacobi se obtiene en el primer calculo x;,1, pero este valor de z no se utiliza sino hasta la siguiente iteracion. Ejemplos Coste ‘Computacional Por ejemplo, en el método de Jacobi se obtiene en el primer calculo x;,1, pero este valor de z no se utiliza sino hasta la siguiente iteracién. En el método de Gauss-Seidel en lugar de eso se utiliza de xj; en lugar de x; en forma inmediata para calcular el valor de y;,; de igual manera procede con las siguientes variables; Ejemplos Coste ‘Computacional Por ejemplo, en el método de Jacobi se obtiene en el primer calculo x;,1, pero este valor de z no se utiliza sino hasta la siguiente iteracién. En el método de Gauss-Seidel en lugar de eso se utiliza de xj; en lugar de x; en forma inmediata para calcular el valor de y;,; de igual manera procede con las siguientes variables; siempre se utilizan las variables recien calculadas. Ejemplos Coste ‘Computacional Método de Gauss-Seidel: Ejemplos Ejemplo Partiendo de (x = 1,y = 2) aplique dos iteraciones del método de Gauss-Seidel para resolver el sistema: Sree ety 1 zg — 4y = 0 Método de Gauss-Seidel: Ejemplos Ejemplo Partiendo de (x = 1,y = 2) aplique dos iteraciones del método de Gauss-Seidel para resolver el sistema: Sree eet eae eo — An = 0 Solucion Debemos primeramente despejar de la ecuacién la incédgnita correspondiente. a z = 0.20 + 0.002 — 0.40y Computaional y = 0.00 + 0.252 + 0.00y Aplicamos la primera iteracién partiendo de x» = 1.00 y yo = 2.00: x, = 0.20 + 0.00(+1.000) — 0.40(2.00) = —0.600 vy = 0.00 + 0.25(-0.600) + 0.00(2.00) = -0.15 Aplicamos la primera iteracién partiendo de x» = 1.00 y yo = 2.00: x; = 0.20 + 0.00(+1.000) — 0.40(2.00) = —0.600 y = 0.00 + 0.25(—0.600) + 0.00(2.00) = -0.15 Aplicamos la segunda iteracién partiendo de zx; = —0.600 y Ono t = 0.20 + 0.00(—0.600) — 0.40(-0.15) = 0.26 y = 0.00 + 0.25(0.26) + 0.00(—0.15) = 0.065 Ejemplo Partiendo de (x = 1,y = 2, z = 0) aplique dos iteraciones del método de Gauss-Seidel para resolver el sistema: I) sp On = z= -1 Ae a PA 4g + 4y + 10z = 4 Ejemplo Partiendo de (x = 1,y = 2, z = 0) aplique dos iteraciones del método de Gauss-Seidel para resolver el sistema: I) sp On = z -l SE ge ee 8 4g + 4y + 10z = 4 Solucion Debemos primeramente despejar de la ecuacién la incégnita correspondiente. ee) Ota Oca ramen Ot ce LO 2s 0.66 — 0.332 + 0.00y + 0.332 0:40 — 01407 — 0407 + 0.002 2 Aplicamos la primera iteracion partiendo de xo = 1.00, Yo = 2.00, y z = 0.00: m = 0.10 + 0.00(1.00) + 0.00(2.00) + 0.10(0.00) = -0.1 *n = 0.66 — 0,33(-0.10) + 0.00(2.00) + 0.33(0.00) = 0.70 a = 040 — 0.40(-0.10) — 0.40(0.70) + 0.00(0.00) = 0.16 Aplicamos la primera iteracion partiendo de xo = 1.00, Yo = 2.00, y z = 0.00: r =0.10 + 0.00(1.00) + 0.00(2.00) + 0.10(0.00) -0.1 *n = 0.66 — 0,33(-0.10) + 0.00(2.00) + 0.33(0.00) = 0.70 a = 040 — 0.40(-0.10) — 0.40(0.70) + 0.00(0.00) = 0.16 Aplicamos la segunda iteracién partiendo de «; = —0.10 y yn = 0.70y 4 =0.16: v1 = -0.10 + 0.00(-0.10) + 0.00(0.70) + 0.10(0.16) = -0.084 yw = 0.66 — 0,33(—0.084) + 0.00(0.70) + 0.33(0.16) = 0.748 1 = 040 — 0.40(-0.084) — 0.40(0.748) + 0.00(0.16) = 0.134 Método teratvos para Resover Stones Less MMM, 27100. Costo computacional Es dificil estimar el costo computacional de un método iterativo, pues de antemano se desconoce cuantas iteraciones requerira para obtener una respuestas que satisfaga al usuario. Generalmente, se procede a calcular el costo computacional por iteracion. Ejemplos En el caso del método de Jacobi la relacién de recurrencia utilizada es: Xin =e+Bx Utilizando esta informacién podemos concluir que si el algoritmo toma m iteraciones entonces el total de FLOPs sera de: 2mn?

You might also like