Imperio del Sol y la Luna

Solo nacio un imperio grande en toda sudamerica y ese fue el inicio de la organización sudamericana.

Imperio del Sol y la Luna

Solo nacio un imperio grande en toda sudamerica y ese fue el inicio de la organización sudamericana.

martes, 8 de julio de 2008

Programación Dinamica

Existe una serie de problemas cuyas soluciones pueden ser expresadas recursivamente en términos matemáticos, y posiblemente la manera más natural de resolverlos es mediante un algoritmo recursivo. Sin embargo, el tiempo de ejecución de la solución recursiva, normalmente de orden exponencial y por tanto impracticable, puede mejorarse substancialmente mediante la Programación Dinámica.

La Programación Dinámica no sólo tiene sentido aplicarla por razones de eficiencia, sino porque además presenta un método capaz de resolver de manera eficiente problemas cuya solución ha sido abordada por otras técnicas y ha fracasado.

Donde tiene mayor aplicación la Programación Dinámica es en la resolución de problemas de optimización. En este tipo de problemas se pueden presentar distintas soluciones, cada una con un valor, y lo que se desea es encontrar la solución de valor óptimo (máximo o mínimo).

Para que un problema pueda ser abordado por esta técnica ha de cumplir dos condiciones:
  • La solución al problema ha de ser alcanzada a través de una secuencia de decisiones, una en cada etapa.
  • Dicha secuencia de decisiones ha de cumplir el principio de óptimo.
En grandes líneas, el diseño de un algoritmo de Programación Dinámica consta de los siguientes pasos:
  1. Planteamiento de la solución como una sucesión de decisiones y verificación de que ésta cumple el principio de óptimo.
  2. Definición recursiva de la solución.
  3. Cálculo del valor de la solución óptima mediante una tabla en donde se almacenan soluciones a problemas parciales para reutilizar los cálculos.
  4. Construcción de la solución óptima haciendo uso de la información contenida en la tabla anterior.