Volver al temario.

Tema 2. Métodos numéricos en ecuaciones de una variable


1. Introducción

Resolver ecuaciones es una tarea esencial en numerosas disciplinas (como la química, la ingeniería, la enología), donde los modelos matemáticos permiten predecir el resultado de procesos físicos, reacciones químicas o incluso la evolución de sistemas complejos. Sin embargo, en la mayoría de los casos, encontrar soluciones exactas no es una tarea sencilla.
Para ecuaciones de grado uno y dos, existen fórmulas que nos proporcionan las soluciones de manera directa, como la conocida ecuación cuadrática. Para polinomios de grado tres y cuatro también existen métodos exactos, aunque son mucho más complejos y poco prácticos. Pero a partir del grado cinco, el teorema de Abel-Ruffini establece que no siempre es posible encontrar una fórmula general que exprese las soluciones en términos de radicales.

Incluso cuando podemos aplicar el método de Ruffini para ciertos polinomios con raíces racionales, este proceso no siempre es viable, ya que no todas las ecuaciones tienen soluciones exactas expresables de manera sencilla. Además, muchas ecuaciones en la ciencia y la ingeniería no son polinómicas, sino trascendentes (como las que involucran exponenciales, logaritmos o funciones trigonométricas), lo que hace aún más difícil encontrar soluciones analíticas.

Por todas estas razones, en la práctica se recurre a métodos numéricos, que permiten encontrar aproximaciones a las soluciones con la precisión deseada. Tenemos métodos que consisten en construir una sucesión x0,x1,x2,,xn, que converge al valor buscado, es decir,

limnxn=X.

Un procedimiento de este tipo recibe el nombre de algoritmo iterativo. Con n suficientemente grande, xn será una buena aproximación de la solución exacta X, y por tanto tomaremos:

Xxn.

2. Separación de los ceros de una función

Antes de comenzar, tenemos que tener la certeza de que exista al menos una solución y que además sea única en el intervalo donde vayamos a trabajar, ya que de otro modo la sucesión podría no converger.

Teorema de Bolzano.
Sea f(x) una función continua en [a,b] tal que el signo de f(a) es distinto del signo de f(b) (es decir, f(a)f(b)<0). Entonces existe al menos un punto c(a,b) tal que f(c)=0.

Teorema de Rolle.
Sea f(x) una función continua en [a,b] y derivable en (a,b) tal que f(a)=f(b). Entonces existe al menos un punto c(a,b) tal que f(c)=0.

Considerando conjuntamente ambos teoremas, podemos demostrar la existencia y unicidad de solución de la ecuación f(x)=0. Si f es continua en [a,b] y derivable en (a,b), tal que f(a)f(b)<0 y su derivada no cambia de signo en (a,b), entonces la ecuación tiene una solución única.
El proceso de encontrar intervalos en los que estemos seguros de que existe una única solución de la ecuación recibe el nombre de separación de soluciones.

Proceso para encontrar los intervalos deseados:

  1. Comprobamos el signo en los extremos a,b del intervalo dado (pueden ser y +)
  2. Calculamos f(x) y los puntos críticos x1,,xn (es decir, resolvemos f(x)=0).
  3. Nos quedamos con aquellos puntos críticos que pertenezcan al intervalo [a,b] y los ordenamos: a<x1<<xn<b.
  4. Evaluamos la función en dichos puntos, y nos quedamos con los intervalos donde hay cambio de signo. El número de intervalos que obtengamos será el número de ceros que tiene la función.

Ejemplos

Ejemplo 1: Demostrar que la ecuación x36x+2=0 sólo tiene una solución en el intervalo [1,1].
Para demostrar que la ecuación x36x+2=0 tiene una única solución en el intervalo [1,1], seguimos el procedimiento:

  1. Evaluamos los extremos del intervalo:

    • f(1)=(1)36(1)+2=1+6+2=7 (positivo).
    • f(1)=(1)36(1)+2=16+2=3 (negativo).

    Hay un cambio de signo en [1,1], lo que indica al menos una solución.

  2. Calculamos la derivada:

    f(x)=3x26.

    Resolviendo f(x)=0:

    3x26=0x2=2x=±2.

    Los puntos críticos son x=2 y x=2. Solo x=21.414 está fuera del intervalo [1,1], y x=21.414 también está fuera. Por lo tanto, no hay puntos críticos en [1,1].

  3. Conclusión:
    Como no hay puntos críticos en [1,1] y hay un cambio de signo en los extremos, la función f(x) es estrictamente decreciente en este intervalo. Por lo tanto, solo hay una solución en [1,1].

Ejemplo 2: Calcular cuántas soluciones tiene la ecuación x3+8x23=0 en el intervalo [10,2].
Para determinar cuántas soluciones tiene la ecuación x3+8x23=0 en el intervalo [10,2]:

  1. Evaluamos los extremos del intervalo:
    • f(10)=(10)3+8(10)23=1000+8003=203 (negativo).
    • f(2)=(2)3+8(2)23=8+323=37 (positivo).
      Hay un cambio de signo en [10,2], lo que indica al menos una solución.
  2. Calculamos la derivada:f(x)=3x2+16x.Resolviendo f(x)=0:3x2+16x=0x(3x+16)=0x=0 o x=163.Los puntos críticos son x=0 y x=1635.333. Ambos están dentro del intervalo [10,2].
  3. Evaluamos la función en los puntos críticos:
    • f(163)=(163)3+8(163)23152.59+227.56371.97 (positivo).

    • f(0)=0+03=3 (negativo).

    • En el intervalo [10,163], f(10)=203 (negativo) y f(163)71.97 (positivo). Hay un cambio de signo, por lo que hay una solución en este intervalo.

    • En el intervalo [163,0], f(163)71.97 (positivo) y f(0)=3 (negativo). Hay otro cambio de signo, por lo que hay una segunda solución en este intervalo.

    • En el intervalo [0,2], f(0)=3 (negativo) y f(2)=37 (positivo). Hay un tercer cambio de signo, por lo que hay una tercera solución en este intervalo.

  4. Conclusión:
    La ecuación tiene tres soluciones en el intervalo [10,2].

3. Método de la bisección

Supongamos que partimos de una función f(x) y un intervalo [a,b] en el que sabemos que f(a)f(b)<0. El método de la bisección consiste en construir una sucesión de intervalos encajados:

[a,b]=[a0,b0][a1,b1][a2,b2][an,bn]

tales que x[an,bn] para n=1,2, y (bn+1an+1)=(bnan)2.

Pasos del método:

  1. Tomamos el punto medio del intervalo [an,bn]:
cn=an+bn2
  1. Si f(cn)=0, entonces x=cn y hemos terminado.
  2. Si f(cn)0, entonces:
    a. Si f(an)f(cn)<0, escogemos como nuevo intervalo [an+1,bn+1]=[an,cn].
    b. Si f(cn)f(bn)<0, escogemos como nuevo intervalo [an+1,bn+1]=[cn,bn].
    c. Volvemos al paso 1 con el intervalo escogido.

Después de realizar n pasos o iteraciones, la solución debe estar en el intervalo [an,bn] de longitud (ba)2n. Si tomamos cn=(an+bn)2 como aproximación de X, el error absoluto verifica:

|cnX|ba2n+1.

Para asegurarnos una aproximación con un error inferior a una tolerancia dada ε, debemos tomar n tal que:

ba2n+1<ε,

o equivalentemente:

n>log2(baε)1n>log(baε)log21.

Ventajas y desventajas:

Ejemplo

Calcular cuatro aproximaciones con el método de la bisección del cero de la función f(x)=x4+2x38x2 en el intervalo [1,3]. Calcular el número de iteraciones necesarias para que el error sea menor que 102.
Evaluamos la función en los extremos del intervalo:

f(1)=7f(3)=109

Dado que f(1)f(3)=(7)(109)<0, por el Teorema de Bolzano, existe al menos un cero en el intervalo [1,3].
Iteración 1
Punto medio:

c1=1+32=2

Evaluamos f(2):

f(2)=14

Como f(1)f(2)=(7)(14)<0, tomamos el nuevo intervalo:

[a1,b1]=[1,2]

Resto de iteraciones:

Iteración (n) an bn cn f(cn) Nuevo intervalo
1 1 3 2 14 [1,2]
2 1 2 1.5 -2.1875 [1.5,2]
3 1.5 2 1.75 4.0977 [1.5,1.75]
4 1.5 1.75 1.625 0.584 [1.5,1.625]
Determinar el número de iteraciones necesarias para ε=102
Queremos que el error cumpla:
ba2n+1<102

Dado que a=1 y b=3, tenemos:

22n+1<1022n+1>2102=200n+1>log2(200)log200log2=2.3010.3017.64n>6.64

Como n debe ser entero, tomamos n=7.


4. Método de la “regula falsi”

El método de la falsa posición o “regula falsi” consiste en dividir el intervalo [a,b] en dos intervalos más pequeños de modo que uno de ellos contenga la solución x¯, haciendo aproximaciones a través de la recta que une los puntos (a,f(a)) y (b,f(b)).

Pasos del método:

  1. Consideramos la recta que pasa por los puntos (an,f(an)) y (bn,f(bn)):
y(x)=f(bn)f(an)bnan(xbn)+f(bn).

y definimos cn tal que y(cn)=0, es decir:

cn=bnbnanf(bn)f(an)f(bn).
  1. Tomamos el nuevo intervalo [an+1,bn+1] de acuerdo con:

Criterio de paro:

En este método, los intervalos no tienen la misma longitud, por lo que no podemos encontrar un criterio para determinar el número de iteraciones necesarias para parar el método dada una tolerancia ε. El criterio de paro será:

|cncn+1|<ε.

Ventajas y desventajas:

Ejemplo

Aproximar la solución de la ecuación 3x+1+sin(x)=0 en el intervalo [1,1] mediante 2 iteraciones del método de la "regula falsi".

Iteración a b c Error
1 -1.0 1.0 -0.2603169473242832 0.2603169473242832
2 -0.2603169473242832 1.0 -0.2504154069722839 0.009901540351999305

Raíz aproximada: -0.2504154069722839


5. Método de Newton-Raphson

El método de Newton es un método que converge más rápido que los dos anteriores, pero las condiciones para la convergencia son más estrictas, ya que hay que comprobar que la función sea dos veces derivable, cerca de x, es decir, la derivada no se puede anular, y necesitamos una aproximación inicial x0.

Pasos del método:

  1. Consideramos una aproximación inicial, x0. Podemos usar el método de la bisección o de la “regula falsi” para obtenerlo.
  2. Consideramos la recta tangente a la gráfica de f(x) en el punto (x0,f(x0)), es decir, la recta de ecuación:y(x)=f(x0)(xx0)+f(x0).
  3. Definimos x1 como aquella aproximación tal que y(x1)=0, es decir:f(x0)(x1x0)+f(x0)=0x1=x0f(x0)f(x0).

Este proceso puede ser iterado partiendo ahora de x1 para calcular x2, y repitiendo esto de forma sucesiva obtenemos la fórmula:

xn+1=xnf(xn)f(xn),n=0,1,.

Criterio de paro:

Para este método, el criterio de paro para dar por buena una aproximación puede seguir siendo del tipo |xnxn1|<ε.

Ventajas y desventajas:

Ejemplo

Aproximar la solución de la ecuación x=tan(x) mediante 4 iteraciones del método de Newton en el intervalo [4,4.8], tomando como aproximación inicial x0=4.4.

Iteración x0 x1 Error
1 4.4 4.535980616856694 0.1359806168566937
2 4.535980616856694 4.501859629633508 0.03412098722318646
3 4.501859629633508 4.49374537634139 0.008114253292117902
4 4.49374537634139 4.49340999001035 3.353863310397997e-4

6. Actividad académicamente dirigida

  1. Dada la ecuación 2xex=0:
Iteración x0 x1 Error
1 0.5 0.3490448064283479 0.1509551935716521
2 0.3490448064283479 0.3517327695370981 0.002687963108750246
3 0.3517327695370981 0.3517337112490805 9.417119823385001*10^-7

Alternativa:

  1. Dada la ecuación x3ex=0, aplica el método de la "regula falsi" para aproximar una raíz en el intervalo [0,2]. Usa una tolerancia de 0.01.

"Iteración: "" "1" ""a:"" "0" ""b:"" "2" "" c: "" "1.241508160943651" "" Error: "" "1.241508160943651" "
"Iteración: "" "2" ""a:"" "1.241508160943651" ""b:"" "2" "" c: "" "1.785284272828892" "" Error: "" "0.5437761118852411" "
"Iteración: "" "3" ""a:"" "1.785284272828892" ""b:"" "2" "" c: "" "1.851285666364146" "" Error: "" "0.06600139353525325" "
"Iteración: "" "4" ""a:"" "1.851285666364146" ""b:"" "2" "" c: "" "1.856718804637825" "" Error: "" "0.005433138273678972 "
"Raíz aproximada: "" "1.856718804637825