You are on page 1of 12

Revista Notas de Matemtica Vol.3(1), No. 250, 2007, pp.33-44 http://www.matematica/ula.

ve Comisin de Publicaciones Departamento de Matemticas Facultad de Ciencias Universidad de Los Andes

Mtodos iterativos para resolver ecuaciones no lineales


Giovanni Caldern

Resumen Un mtodo iterativo para resolver ecuaciones no lineales es presentado. ste se inspira en los mtodos iterativos tipo predictor-corrector propuestos por Muhammad y Faizan [Muhammand Aslam Noor and Faizan Ahmad, Numerical comparison of iterative methods for solving nonlinear equations, Appl. Math. Comput. 180 (2006) 167-172]. Resultados de convergencia muestran que el mtodo puede alcanzar velocidad de convergencia cbica. La experimentacin numrica permite ver que el nuevo mtodo supera la precisin alcanzada por otros mtodos con un costo de cmputo igual o superior, incluyendo el mtodo de Newton.

key words. ecuaciones no lineales; mtodo Regula Falsi; mtodo de Newton-Raphson; mtodo de Mller; predictor-corrector.
Abstract An iterative method to solve nonlinear equations is presented. This is inspired by the predictor-corrector type iterative methods proposed by Muhammad and Faizan [Muhammand Aslam Noor and Faizan Ahmad, Numerical comparison of iterative methods for solving nonlinear equations, Appl. Math. Comput. 180 (2006) 167-172]. Convergence results show that the method can reach speed of cubic convergence. Numerical experimentation allows to see that the new method surpasses the precision reached about other methods with a cost of equal or superior calculation, including Newtons method.

key words. nonlinear equations; Regula Falsi method; Newton-Raphson method; Mllers method; predictor-corrector. AMS(MOS) subject classications.

Introduccin

Uno de los problemas bsicos en Anlisis Numrico consiste en encontrar los valores de x que satisfacen la ecuacin f (x) = 0 para una funcin f dada. Aunque es tradicin usar el mtodo iterativo de Newton-Raphson (NR) para resolver tales ecuaciones, en los ltimos aos se han denido 33

34

Giovanni Caldern

mtodos iterativos que mejoran, en cierta forma, la precisin de este mtodo; ver, por ejemplo, [1, 2, 3] para el caso de mtodos iterativos denidos a partir del mtodo de descomposicin de Adomian, o [4, 5] donde se denen mtodos tipo predictor-corrector o multipunto. Inspirados en el trabajo de Ujevi [4], Muhammand y Faizan [5] sugieren dos nuevos mtodos tipo predictor-corrector que combinan los mtodos de Newton-Raphson y Regula Falsi (NRF) y Regula Falsi con Newton (RFN); los ejemplos dados en [5], ilustran la eciencia de estos mtodos (NRF y RFN) comparados con el mtodo de NR y el mtodo (NU) propuesto por Ujevi en [4]. En [5], el mtodo NRF present, en general, mejor precisin que el RFN. Sin embargo, no se hace ningn anlisis terico sobre el orden de convergencia de estos mtodos. En este artculo se presenta un nuevo mtodo predictor-corrector para resolver ecuaciones no lineales usando los mtodos de Biseccin y Mller (BM). Se analiza la convergencia de los mtodo NRF y BM y se sugiere una modicacin al mtodo RFN para mejorar su precisin. De los resultados obtenidos, tanto analticos como experimentales, se concluye que el nuevo mtodo iterativo, BM, resulta ms eciente que los mtodos NR, NU y los mtodos propuestos por Muhammad y Faizan. El resto del artculo esta distribuido de la siguiente forma. A continuacin se dan los algoritmos NR, NU, NRF, la versin modicada de RFN y el nuevo algoritmo propuesto BM. En la tercera seccin se introducen los resultados de convergencia para los mtodos NRF y BM. La cuarta seccin presenta los ejemplos numricos en los cuales se comparan los mtodos descritos.

Mtodos iterativos

Sea una raz de f C2 (I), con I un intervalo que contiene a . Se asume que f () = 0 y que la aproximacin inicial x0 del mtodo de NR se toma en un entorno de . El algoritmo del mtodo de NR es dado a continuacin. Algoritmo 1 (NR) Paso 1: Para un x0 inicial dado, > 0, calcular x1 , x2 , x3 ,..., tal que f (xn ) xn+1 = xn f (xn ) Paso 2: Si xn+1 xn < , PARAR Paso 3: n = n + 1, ir al paso 1. El proximo mtodo, NU, es introducido por Ujevi [4]. Este mtodo resulta, en muchos casos,

Mtodos iterativos para resolver ecuaciones no lineales

35

ms eciente que el mtodo NR pero, en general, menos eciente que los algoritmos introducidos por Muhammad y Faizan [5]. El mtodo usa a NR (como algoritmo predictor) con un factor de peso de = 1/2; este factor de peso produce la versin ptima del mtodo (para los detalles, ver [4]). Algoritmo 2 (NU) Paso 1: Para un x0 inicial dado, > 0, calcular x1 , x2 , x3 ,..., tal que f (xn ) zn = xn (1/2) f (xn ) f (xn ) xn+1 = xn + 4(zn xn ) 3f (xn ) 2f (zn ) Paso 2: Si xn+1 xn < , PARAR Paso 3: n = n + 1, ir al paso 1. Los mtodos de intervalo NRF y RFN, propuestos por Muhammand y Faizan [5], son derivados usando en conjunto el mtodo de NR y el mtodo de Regula Falsi. El primer mtodo, NRF, consiste en denir, en cierto sentido, el nuevo intervalo a partir de la aproximacin obtenida por el mtodo de Regula Falsi y el mtodo NR. El algoritmo es como sigue. Algoritmo 3 (NRF) Paso 1: Para un intervalo [a, b] dado, > 0, calcular x1 , x2 , x3 ,..., tal que bf (a) af (b) xn+1 = f (a) f (b) Paso 2: Si xn+1 xn < , PARAR Paso 3: Si f (a)f (xn+1 ) < 0, entonces b = xn+1 y a = a En caso contrario: a = xn+1 y b = b Paso 4: n = n + 1, ir al paso 1. El mtodo RFN aproxima la raz, en cada paso, usando el mtodo Regula Falsi y, el valor obtenido es usado como condicin inicial para el mtodo NR. El nuevo intervalo queda denido a partir de las aproximaciones de la raz encontradas por los mtodos de Regula Falsi y NR. El algoritmo queda dado a continuacin. Algoritmo 4 (RFN) f (b) f (b) f (a) f (a)

36

Giovanni Caldern

Paso 1: Para un intervalo [a, b] dado, > 0, calcular x1 , x2 , x3 ,..., tal que bf (a) af (b) f (zn ) zn = ; xn+1 = zn f (a) f (b) f (zn ) Paso 2: Si xn+1 xn < , PARAR Paso 3: Si f (a)f (xn+1 ) < 0, entonces b = xn+1 y a = zn En caso contrario: a = xn+1 y b = zn Paso 4: n = n + 1, ir al paso 1. En esta nueva versin del RFN, la aproximacin encontrada mediante el mtodo Regula Falsi es usada para denir uno de los extremos del nuevo intervalo, a diferencia de la versin introducida en [5] donde la aproximacin de Regula Falsi slo sirve como condicin inicial del NR. Con este cambio el mtodo RFN mejora su precisin, superando en muchos casos al mtodo NRF, lo cual no ocurra con la versin anterior. En muchos problemas los mtodos previamente dados (Algoritmos 1-4) pierden precisin o no convergen; por ejemplo, en funciones de tipo exponencial o en los casos donde se tiene un cambio de concavidad dentro del intervalo [a, b] (ver, ejemplos 5 y 7). En estos problemas resulta apropiado combinar el mtodo de la biseccin y el mtodo de Mller para crear un nuevo mtodo. El algoritmo queda dado a continuacin. Algoritmo 5 (BM) Paso 1: Para un intervalo [a, b] dado, > 0 y un mximo nmero de iteraciones, calcular x1 , x2 , x3 ,..., tal que c = (a + b)/2; a1 = a0 = (c b)[f (a) f (b)] (a b)[f (c) f (b)] (a b)(c b)(a c) a2 = f (b)

f (b) f (c) + (b c)a0 , bc

raz = b 2a2 /(a1 +

a2 4a0 a2 ) 1

a0 , a1 y a2 denen los coecientes del polinomio de segundo grado P (x) = a0 (x x2 )2 + a1 (x x2 ) + a2 (Mller).

Paso 2: Si a < raz < b, entonces xn+1 = raz En caso contrario: xn+1 = b 2a2 /(a1 Paso 3: Si xn+1 xn < o f (xn+1 ) < , PARAR a2 4a0 a2 ) 1

Mtodos iterativos para resolver ecuaciones no lineales

37

Paso 4: Si f (a)f (xn+1 ) < 0, entonces b = raz Si f (a)f (c) > 0 entonces a = c En caso contrario: a = raz Si f (b)f (c) > 0 entonces b = c Paso 5: n = n + 1, ir al paso 1.

Resultados de convergencia

Convergencia para el NRF: Se supone que las hiptesis necesarias para obtener convergencia en los mtodos de Regula Falsi y Newton quedan garantizadas; es decir, f C 2 [a, b], con a y b tales que f (a)f (b) < 0, f () = 0 y f no cambie de signo en [a, b]. Se puede suponer, sin perdida de generalidad, que f (x) > 0 en [a, b], en otras palabras, f es convexa. En este caso, el segmento de recta que une los puntos (a, f (a)) y (b, f (b)) estar siempre por encima de la grca de f , cualquiera sea el signo de la primera derivada de f . Ahora, si f () > 0, M1 := f ()/(2f ()) y M2 := f (n )/(2f (xn )), se tiene entonces que el error para los mtodos de Regula Falsi y Newton est dado por n+1 := an+1 = M1 ( an )(b ) en+1 := xn+1 = M2 (xn )2 con , (an , b), (1) (2)

con n interior(, xn ),

respectivamente. Debido a que el mtodo NRF utiliza al mtodo de Newton para modicar el extremo derecho, b, en cada iteracin (x0 = b condicin inicial), (1) queda dada por n+1 := an+1 = M1 ( an )(bn+1 ) con , (an , bn ). (3)

Si M := mxx[a,b] |f (x)|/2|f (x)| entonces al sustituir (2) en (3) se obtiene que a | an+1 | M 2 | an ||bn |2 | an ||M e0 |2 ,
n

con e0 := b (error inicial para el mtodo de Newton). Al ser M |e0 | < 1 (condicin necesaria para la convergencia del mtodo de NR) resulta que l n |an+1 | = 0 y por lo tanto an . m Es decir, la sucesin de iterados {an } del mtodo NRF converge a la raz simple . Por otro lado, an+1 = M1 M2 ( an )(bn )2 M 2 ( an ) (bn an ) + (an )
2

(4)

38

Giovanni Caldern

Adems, debido a las hiptesis (f > 0 y f > 0) se tiene que bn an 2( an ), (5)

pues el mtodo de Newton converge ms rpido a que el mtodo de Regula Falsi. En otras palabras, bn est ms cerca a que an ; por lo tanto, an+1 M 2 ( an ) 2( an ) + (an ) Pasando al lmite, | an+1 | |n+1 | 1 f () = l m = n | an |3 n |n |3 2 f () l m
2 2

= M 2 ( an )3 .

(6)

ya que bn an y f es dos veces continuamente diferenciable. Esto implica que el mtodo presenta un orden cbico en su convergencia. Cuando f > 0 pero f () < 0 resulta en que a siempre es constante para el mtodo de Regula Falsi. Por lo tanto, bn an 2( bn ) y un anlisis similar al anterior puede hacerse llegando nuevamente a un orden de convergencia cbico. Para el caso en que f < 0, se cambia f por f y se hace un razonamiento anlogo. En conclusin, si el mtodo NR no converge en las primeras iteraciones entonces el mtodo NRF resultar ms apropiado; pues, a partir de (4), (5) y (6) se concluye que NRF tiende a lograr un orden cbico de convergencia en muy pocas iteraciones. Convergencia para el BM: El algoritmo produce una sucesin de intervalos [an , bn ], n = 0, 1, 2, . . . tal que: [an , bn ], [an+1 , bn+1 ] [an , bn ] n y l n (an bn ) = 0. Por lo tanto, m para un cero simple, , en el intervalo [a, b] [a0 , b0 ], la convergencia a queda garantizada slo bajo la hiptesis de la continuidad de f . Por otra parte, si f C 3 (U ), con U una vecindad de , el mtodo presenta una velocidad de convergencia cbica. Para probar esta armacin, sea P (x) el polinomio que interpola a f en los nodos an+1 , bn+1 y (an+1 + bn+1 )/2 entonces, del error de interpolacin polinomial [6], se obtiene f () P () = ( an+1 )( bn+1 )( con (an+1 , bn+1 ). Ya que f () = 0, resulta P () = ( an+1 )2 ( bn+1 ) + ( an+1 )( bn+1 )2 f (3) () . 12 (7) an+1 + bn+1 f (3) () ) , 2 3!

Mtodos iterativos para resolver ecuaciones no lineales

39

Expandiendo P () alrededor de xn+1 , se tiene P () = P (xn+1 ) + ( xn+1 )P () con interior(, xn+1 )

y, xn+1 seleccionado tal que P (xn+1 ) = 0. Por sustitucin en (7) resulta que ( xn+1 ) = ( an+1 )2 ( bn+1 ) + ( an+1 )( bn+1 )2 f (3) () , 12P () (8)

donde P () = 2a0,n + a1,n , con ai,n , i = 0, 1, los valores de a0 y a1 en la n-sima iteracin. Para facilitar el anlisis, se supone inicialmente que 0 xn+1 < y que a0,n > 0 (P () representa un segmento de recta con pendiente positiva). En este caso a1,n m (xn+1 ,) P (). Adems, n l a1,n = l m m f (bn ) f (cn ) + l (bn cn )a0,n = f () m n bn cn

y como el m x[a,b] f (x) f (), pues [a, b], entonces n


x[a,b]

m f (x) n

(xn+1 ,)

m n

P ().

Se puede suponer, sin ninguna perdida de generalidad, que las derivadas de P y f tienen el mismo signo, por lo tanto m |f (x)| n m n |P ()|.

x[a,b]

(xn+1 ,)

Es decir, el mximo valor de f (3) ()/12P () est dado por M := 1 f (3) (x) mx a . 12 x[a,b] f (x) (9)

Al multiplicar P por 1 y con un anlisis similar al anterior se obtiene el mismo valor de M para el caso en que a0,n 0. Los casos restantes: xn+1 < < 0, 0 < < xn+1 , < xn+1 < 0, o los casos donde y xn+1 tienen signos opuestos, resultan equivalentes al caso analizado. Por otro lado, en la n-sima iteracin, la raz del polinomio de Mller, xn , que est dentro del intervalo [an , bn ] pasa a denir el nodo an+1 o bn+1 segn sea el caso (paso 4 del algoritmo). Entonces, podemos suponer, sin perdida de generalidad, que el error en la n-sima iteracin n := xn = an+1 (pues en caso contrario, xn = bn+1 , el desarrollo resulta equivalente) y por lo tanto de (8) y (9) se tiene que n+1 2M n ,
3

(10)

40

Giovanni Caldern

siempre y cuando bn+1 an+1 . A partir de (10) se obtiene una velocidad de convergencia cbica para el mtodo BM. Sin embargo, si an+1 < bn+1 se tiene que an+1 bn+1 = an+1 + bn+1 < 2 bn+1 y, en el peor de los casos, a partir del mtodo de biseccin se obtiene que an+1 < 2 bn+1 n Entonces, de (8) y (12) n+1 M 2 ( an+1 + an+1 bn+1 ) + n ( an+1 + an+1 bn+1 )2 n M 2 n
3 3

(11)

(12)

+ 3 n

an+1 bn+1 + n an+1 bn+1

6M n . y por lo tanto |n+1 | 6M |n |3 , lo cual completa la prueba de convergencia del mtodo BM. Por ltimo, se debe resaltar (lo cual no se hace en [4]) que el mtodo NU no puede tener un orden de convergencia mayor a 2. A partir de su funcin de iteracin U (x) = x 4u(x)f (x)/(3f (x) 2f (x u(x))), con u(x) := f (x)/f (x), se tiene que U () = , () = U 1 2 , 1 + 2 () = U 4(1 + 2 22 ) f () , (1 + 2)2 f ()

y para que () = 0 se debe seleccionar = 1/2. Pero para este valor especico de se obtiene U que () = 0.75f ()/f () = 0, lo cual no permite que el orden de convergencia del mtodo U NU sea mayor que 2.

Experimentacin Numrica

En esta seccin se presentan los resultados numricos (nmero de iteraciones necesarias para alcanzar la tolerancia prescrita) para un test de ejemplos (ver Cuadro 1. Los ejemplos 1-6 son

Mtodos iterativos para resolver ecuaciones no lineales

41

Ejemplo 1 2 3 4 5 6 7 8 9

funcin f (x) = x3 2x2 5 f (x) = x cos(x) f (x) = (1/x) 1 f (x) = e1x 1 f (x) =
2 ex +7x30

x0 2 0 2.7 3 1 tan(1 x) 2.8 -1.3 1.7 2.0 1.3

[a, b] [2, 3] [0, /2] [0.9, 2.7] [0, 3] [2.8, 3.2] [1.3, 0.5] [0.5, 1.7] [0.5, 2.0] [2.0, 1.3]

f (x) = (1/x) sin(x) + 1 f (x) = sin f (x) = x3


2

(0.2x)e2x 4x2

10
x2 1

f (x) = (x15 + 1)e

Cuadro 1: Test de ejemplos para la experimentacin numrica.

tomados de [5]). Para todos los algoritmos propuestos se usa una tolerancia de error de = 1 1010 , y un mximo nmero de iteraciones n = 1000. Para efecto de la comparacin, la condicin inicial del mtodo de NR, x0 , se toma en uno de los extremos del intervalo inicial [a, b]. Los resultados numricos son dados en el Cuadro 2, incluyendo el valor absoluto de la primera deriva de la funcin de iteracin del mtodo NR, N (x) := x u(x), calculada en el punto inicial x0 . La condicin suciente para asegurar la convergencia del mtodo de NR viene dada por | (x0 )| < 1. Sin embargo, en la mayora de los casos donde esta condicin falla, el mtodo NR N logra obtener convergencia. En otras palabras, el mtodo BM no esta siendo favorecido al ser el nico mtodo que no utiliza a NR como mtodo predictor. La notacin RFN1 y RFN2 representan los mtodos de RFN propuesto en [5] y la nueva versin dada en este artculo, respectivamente. Adems, div denota la divergencia del mtodo y est indica que el mtodo se estanca en un determinado valor, distinto de la raz , despus de cierto nmero de iteraciones. De los resultados, es claro que el algoritmo RFN2 mejora la precisin obtenida con RFN1 . De esta manera, se puede concluir que la modicacin propuesta en este trabajo al algoritmo RFN de [5] resulta apropiada. En muchos casos, el algoritmo RFN2 llega a superar la precisin del algoritmo NRF, lo cual no se lograba en ningn momento en [5]. El nuevo algoritmo BM presenta, en lnea general, mejor precisin que todos los algoritmos propuestos anteriormente. Resulta importante, hacer notar, que el mtodo BM converge cualquiera sea el intervalo inicial, siempre y cuando se cumpla que f (a)f (b) < 0 en la primera iteracin. En otras palabras, el radio de convergencia del nuevo mtodo es mayor que el de los otros mtodos

42

Giovanni Caldern

Ejemplo 1 2 3 4 5 6 7 8 9

| (x0 )| N 2.5 1.0 3.4 0.63 12.1 3.0 0.95 4.32 0.98

NR 7 6 div 11 16 26 10 6 147

NU 6 5 5 6 8 6 9 6 div

NRF 4 4 4 5 7 4 10 6 19

RFN1 4 3 5 7 est 4 >n 54 div

RFN2 3 3 3 4 20 3 29 6 30

BM 3 3 4 4 1 4 5 4 8

Cuadro 2: Iteraciones necesarias para los distintos mtodos propuestos. El trmino div es usado para representar la divergencia del mtodo, mientras que est nos indica el estancamiento del mtodo en un determinado valor.

propuestos. Por ejemplo, para el problema 5, los mtodos NR y NU slo convergen si x0 [2.8, 4.7] y NRF si el valor de b se mantiene por debajo de 4.6. En algunos casos, aunque se alcance la convergencia, el mtodo necesitar un alto nmero de iteraciones para alcanzar la tolerancia prescrita, como resulta en el ejemplo 9 para el mtodo NR. En cada iteracin del mtodo NR es necesario evaluar f y f , mientras para el mtodo BM se necesitan dos evaluaciones de f (despus de la primera iteracin). Si n es el nmero de iteraciones requeridas para el mtodo NR, m el nmero de iteraciones requeridas para el mtodo BM y suponiendo que el costo computacional para evaluar f y f son los mismos, entonces (en principio) se debe usar el mtodo BM si m < n. De la experimentacin numrica, se observa, que en el peor de los casos, Ejemplo 8, el mtodo NR supera en un 30 % el nmero de iteraciones del mtodo BM. An ms, desde un punto de vista prctico, la evaluacin de f resulta ms costosa que la evaluacin de f . Por lo cual, el mtodo BM resultar ms apropiado al no requerir la evaluacin de la derivada. Para cualquiera de los mtodos NRF o RFN se necesitan 2 evaluaciones de f y una evaluacin de la derivada f . Por lo tanto, se debe usar el mtodo BM si 2m < 3n, es decir, m < (3/2)n (suponiendo que n denota el nmero de iteraciones necesarias para NRF o RFN). Un razonamiento similar se aplica en el caso del mtodo NU (2 evaluaciones de f y una evaluacin de la derivada). La eciencia computacional, segn Ostrowski [7], E () = r 1/d , donde r es el orden de convergencia, d el nmero total de funciones evaluadas (por iteracin) y la funcin de iteracin

Mtodos iterativos para resolver ecuaciones no lineales

43

referida al mtodo en cuestin, esta dada por E (U ) = 21/3 1.26, E (N ) = 21/2 1.41, E ( ) = 31/3 1.44, E (BM ) = 31/2 1.73, donde denota cualquiera de los mtodos NRF o RFNi , con i = 1, 2. Por lo tanto, el mtodo NU es menos eciente que el mtodo de NR, mientras que el mtodo BM propuesto en este artculo supera en efectividad a todos los mtodos analizados.

Agradecimientos

Este trabajo fue parcialmente nanciado por CDCHT-ULA, Mrida, Venezuela, bajo el proyecto de investigacin C-1422-06-05-A.

Referencias
[1] Changbum Chum, A new iterative method for solving nonlinear equations, Appl. Math. Comput. 178 (2006) 415422. [2] S. Abbasbandy, Improving Newton-Raphson method for nonlinear equations by modied Adomian decomposition method, Appl. Math. Comput. 145 (2003) 887893. [3] Mrio Basto, Viriato Semiao, Francisco L. Calheiros, A new iterative method for compute nonlinear equations, Appl. Math. Comput. 173 (2006) 468483. [4] Nenad Ujevi, A method for solving nonlinear equations, Appl. Math. Comput. 174 (2006) 14161426. [5] Muhammand Aslam Noor and Faizan Ahmad, Numerical comparison of iterative methods for solving nonlinear equations, Appl. Math. Comput. 180 (2006) 167172. [6] Richard L. Burden, J. Douglas Faires, Numerical Analysis, 6th ed., PWS Publishing Company, Bostan, 2002. [7] A. M. Ostrowski, Solution of Equatios and Systems of Equations, 2th ed., Academic Press, 1966.

44

Giovanni Caldern

GIOVANNI CALDERN Grupo Ciencias de la computacin, Departamento de Matemticas, Facultad de Ciencias, Universidad de Los Andes Mrida 5101, Venezuela e-mail: giovanni@ula.ve

You might also like