viernes, 3 de septiembre de 2010

Soluciones de una ecuación de tercer grado en Excel.

Hace algún tiempo expliqué la manera de resolver, esto es, de encontrar la solución de una ecuación lineal de grado uno (ver); en aquel entonces utilicé la herramienta Buscar objetivo.
Recientemente, a través de un comentario en el blog, un usuario pedía ayuda para saber cómo solucionar una ecuación de tercer grado:

...lo q necesito es encontrar mas de una raíz, tengo un polinomio cubico y necesito las 3 raíces...


He de decir que para encontrar las tres raíces/soluciones de un polinomio cúbico partiré de una hipótesis de trabajo, que el polinomio tiene tres raices; sabemos que una ecuación de tercer grado podría tener hasta tres puntos de corte con el eje X, es decir, hasta tres valores de X donde la ecuación devuelve un valor igual a cero. Inicio el trabajo con un ejemplo de ecuación de tercer grado con tres soluciones.
y = 2x3 - 4x2 + 1

A pesar de mi hipótesis inicial, el método de trabajo es válido para cualquier polinomio cúbico.

El primer paso es escribir nuestra ecuación de manera que Excel la entienda:
=2*POTENCIA(A3;3)-4*POTENCIA(A3;2)+1
con esta fórmula, en un segundo paso, construiremos una gráfica (forma visual de encontrar las soluciones buscadas para nuestra ecuación):



Ya en el gráfico podemos ver cuáles son las raíces de la ecuación, pero parece claro que dependerá mucho de los valores de la x que hayamos insertado para construir el gráfico. Se hace necesario, por tanto, tener buena vista, o probar un par de veces, para conseguir el gráfico adecuado a nuestros propósitos.
Sin embargo, con el gráfico sólo podemos intuir la forma de la ecuación y más o menos por donde 'caen' las raíces. Para conocer las soluciones exactas nos basaremos en el gráfico recién construido.


Toca ahora construir un modelo sobre el que aplicar la herramienta SOLVER, que será quien nos de nuestras raíces para la ecuación.
Recuperaremos la fórmula de la ecuación:
=2*POTENCIA(K2;3)-4*POTENCIA(K2;2)+1



Fijémonos que en la celda L5 aparece lo que será la celda objetivo en el modelo de Solver; y que también he añadido lo que serán dos restricciones o condiciones en las celdas M3 y M4 que asegurarán que Solver no repita las raíces.

Muy importante antes de ejecutar la herramienta Solver será aprovechar el trabajo realizado al construir el gráfico; y es que habrá que 'ayudar' un poco a Solver a que nos devuelva las soluciones correctas.
Viendo el gráfico es fácil determinar que la primera raiz (la menor de todas) es negativa y que la segunda y tercera raíz son positivas, obviamente la tercera mayor que la segunda. Realmente con esto sería suficiente, pero si lo estimamos necesario podemos ser más precisos y decir que la primera raiz es un número cercano a -0,50, que la segunda es aproximádamente 0,60 y la tercera 1,90.

Voy a trabajar de una manera general, sin llegar a ayudar a Solver con tanta precisión (probablemente muchas veces no pueda o quiera conocer esos valores). Escribo unos valores genéricos que se adecúen a lo comentado:


Cuanto más próximos sean los valores dados más rápido encontrará Solver las soluciones.

Ya terminamos, ya que sólo queda ejecutar Solver y definir sus restricciones. Desde el menú Datos > Análisis > Solver:


Y al resolver logramos por fin nuestras tres soluciones a la ecuación...

18 comentarios:

  1. Amigo gracias por su publicación.

    ResponderEliminar
  2. buenísima, gracias..

    ResponderEliminar
  3. Las raíces para ecuaciones de tercer grado o cúbicas se pueden calcular directamente, sin métodos de aproximación como SOLVER.
    He dejado un ejemplo en el foro.
    Raíces de una ecuación cúbica con Excel

    ResponderEliminar
    Respuestas
    1. GUSTAVO TORRESoctubre 13, 2013

      GRACIAS POR LA APORTACION, ME HA SIDO DE MUCHA UTILIDAD.

      Eliminar
  4. no me encuentra soluciones con la ecuacion de ejemplo. utilizando el solver del excel 2010. jose

    ResponderEliminar
  5. José,
    revisa bien los pasos, por que la herramienta Solver (hasta donde yo sé) no ha sufrido modificaciones importantes...
    En todo caso, investigaré sobre el asunto.
    Slds

    ResponderEliminar
  6. No entiendo lo que hacen las celdas m o lo que esta escrito en la celda n porque estan en 0 y luego cambia a uno?? como de insertan las condiciones?

    ResponderEliminar
  7. Hola,
    las celdas M3 y M4 contienen las fórmulas que aparecen detalladas en sus correspondientes de la columna N (N3 y N4). Lo que hacen es comprobar el orden de las raices que aparecerán en en el rango K2:K4.
    En las condiciones de Solver exigimos que tanto M3 como M4 sean 1, es decir, que queremos que se cumpla que la primera raiz encontrada sea menor que la segunda, y que la segunda sea inferior a la tercera y última.
    Espero haber aclarado el tema.
    Un saludo

    ResponderEliminar
  8. Hola, que es lo que pones en la celda L5, pues Solver me señala que debe tal celda contener una fórmula...
    saludos

    ResponderEliminar
  9. Hola,
    se te fijas en la imagen donde se configura solver, podrás ver como en la barra de fórmulas pone la siguiente fórmula:
    =SUMA(L2:L4)

    Slds

    ResponderEliminar
  10. ¿alguien se a dado cuenta de que si la ecuación polinomica de grado tres tiene raíces repetidas no funciona?

    ResponderEliminar
    Respuestas
    1. Hola, que tal estás...
      puedes plantear el ejemplo en el que ocurre esa situación???

      Slds

      Eliminar
  11. Hola, Pues si, el mas sencillo de todos. x^3=0. A mi no me ha funcionado. Esta claro que la solución es el 0 como raíz triple, sin embargo el solver no es capaz de dar con el resultado, con las condiciones impuestas. Si las tres soluciones son iguales no se cumplen las condiciones de las celdas M3 y M4, que, en general no se cumplirán cuando la ecuación tenga raíces dobles o triples. En mi opinión este método solo vale si sabemos de antemano que las soluciones son simples, es decir, no repetidas.

    ResponderEliminar
    Respuestas
    1. Gracias por la observación, probaré lo que comentas...
      En todo caso Excel únicamente nos ayuda, somos nosotros quienes dirijimos.

      Saludos cordiales

      Eliminar
  12. Hola, buenas noches. De qué forma excel me halla las raíces de un polinomio que sea de grado mayor o igual a 4? Saludos

    ResponderEliminar
    Respuestas
    1. Hola Nelso,
      entiendo que el sistema explicado en el post para tres raíces, servirá igualmente para cuatro.
      Inténtalo y comentas.
      Un saludo

      Eliminar
    2. BUENOS DÍAS ISMAEL, OTRA CONSULTA: Y EN VBA EXCEL NO TENDRÁ ALGUNA FUNCIÓN QUE ME CALCULE LAS RAÍCES DE FORMA RÁPIDA? O COMO LA PROGRAMARÍA? GRACIAS

      Eliminar
    3. Hola Nelson,
      no existe tal función en Excel.
      Para desarrollar una macro que realizara tal acción se necesitaría bastante tiempo.. y en todo caso seguiría un camino de resolución similar al expuesto.
      Lo siento

      Un saludo

      Eliminar

Nota: solo los miembros de este blog pueden publicar comentarios.