Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Programación Dinámica

3,785 views

Published on

Programación dinámica Lilianny Rondón

Published in: Education
  • Login to see the comments

  • Be the first to like this

Programación Dinámica

  1. 1. Page 1 Aplicaciones República Bolivariana de Venezuela. Ministerio del Poder Popular para la Educación Universitaria. I.U.P “Santiago Mariño”. Extensión – Maturín. Asesor(a): Amelia Malavé Sección E “Tarde” Autor(a): Lilianny Rondón 24.126.684 Maturín, Enero del 2015
  2. 2. Page 2 PROGRAMACIÓN DINÁMICAInv. De Operación II
  3. 3. Page 3 Introducción En lo general muchos problemas de programación matemática se resuelven mediante un modelo único y completo que tenga un gran número de variables (etapas) y restricciones (relaciones entre etapas), por lo cual el problema puede hacerse muy grande. Una alternativa al problema anterior es la programación dinámica que propone descomponer un problema grande en subproblemas pequeños ("divide y vencerás"). Richard Ernest Bellman (1920-1984) fue un matemático aplicado cuya mayor contribución fue la metodología denominada "Programación Dinámica" en 1953, propuesta para optimizar problemas complejos que pueden ser discretizados y secuencializados.
  4. 4. Page 4 Definiciones La programación dinámica es una técnica matemática útil en la toma de una serie de decisiones interrelacionadas. Proporciona un procedimiento sistemático para determinar la combinación óptima de decisiones. La programación dinámica es un enfoque general para la solución de problemas en los que es necesario tomar decisiones en etapas sucesivas. Conviene resaltar que a diferencia de la programación lineal, el modelado de problemas de programación dinámica no sigue una forma estándar. Así, para cada problema será necesario especificar cada uno de los componentes que caracterizan un problema de programación dinámica. El procedimiento general de resolución de estas situaciones se divide en el análisis recursivo de cada una de las etapas del problema, en orden inverso, es decir comenzando por la última y pasando en cada iteración a la etapa antecesora. El análisis de la primera etapa finaliza con la obtención del óptimo del problema.
  5. 5. Page 5  Caracterizar la estructura de una solución óptima.  Definir de forma recursiva la solución óptima.  Calcular la solución óptima de forma ascendente.  Construir la solución óptima a partir de los datos  almacenados al obtener soluciones parciales Uso de la Programación Dinámica
  6. 6. Page 6 Importancia de la Programación Dinámica Este algoritmo evita calcular dos veces la misma información, manteniendo una tabla de resultados conocidos, la cual se va llenando a medida que se resuelven los sub-casos. La programación dinámica se aplica no solo por razones de eficiencia, sino porque permite resolver de manera eficiente problemas que no se pueden resolver por otras metodologías.
  7. 7. Page 7 Aplicación de la Programación Dinámica 1. Se comprueba que se cumple el principio de optimalidad de Bellman, para lo que hay que encontrar la “estructura” de la solución. 2. Se define recursivamente la solución óptima del problema (en función de los valores de las soluciones para subproblemas de menor tamaño) 3. Se calcula el valor de la solución óptima utilizando un enfoque ascendente 4. Se determina la solución óptima a partir de los datos almacenados en la tabla.
  8. 8. Page 8 Elementos de la Programación Dinámica  ETAPAS: Divisiones del problema (n+1).  ESTADOS: Cada etapa tiene distintos estados.  DECISIÓN: Transición del estado actual a otro nestado de la etapa siguiente.  FORMULACIÓN RECURSIVA: Ecuación que n relaciona el costo de un estado actual con el n costo de el siguiente estado. *Debe existir naturaleza secuencial en las decisiones.
  9. 9. Page 9 Modelos de Programación Dinámica Existen tres modelos diferentes manejados por WINQSB. PROBLEMA DE LA DILIGENCIA (Stagecoach Problem) PROBLEMA DE LA MOCHILA (Snapsack Problem) PROGRAMACIÓN DE PRODUCCIÓN E INVENTARIOS (Production and Inventory Scheduling)
  10. 10. Page 10 PROBLEMA DE LA DILIGENCIA (Stagecoach Problem) • Es una manera de reconocer una situación que se puede formular como un problema de programación dinámica. • Es encontrar la ruta que minimiza el costo total de un nodo específico.
  11. 11. Page 11
  12. 12. Page 12 • Períodos o etapas: Sea N= {1, 2,....., n} un conjunto finito de elementos. Mediante el índice, representamos cada uno de ellos. N es el conjunto de períodos o etapas del proceso. En la ilustración anterior N= {1, 2, 3, 4}, las cuatro etapas del viaje, cada una de ellas es un período y se representa mediante un valor del índice n, así cuando n =1 nos estamos refiriendo a la primera etapa del proceso. • Espacio de estados: { } es una familia de conjuntos, uno para cada período n. S se denomina espacio de estados en el período n. Cada uno de sus elementos, que se representa mediante Sn, es un estado, que describe una posible situación del proceso en ese período. En nuestro ejemplo, S1 = {1}, S2= {2, 3, 4}, S3= {5, 6, 7}, S4= {8, 9}. • La función recursiva: Dados unos nodos y unos arcos que conectan estos nodos, el problema de la diligencia intenta encontrar la ruta más corta que conecta un nodo de arranque con el nodo final (el destino). Sea s: el estado de inicio; j: estado destino • n: la fase, normalmente representa el número de arcos hasta el destino. • C(s,j): costo o distancia de ir desde s hasta j. • f(n,s): la política de costo mínimo cuando se encuentra en el estado s de la etapa n.
  13. 13. Page 13 PROBLEMA DE LA MOCHILA (Snapsack Problem) • Consiste en escoger un conjunto de artículos para llenar una mochila de modo de que se cumplan ciertas restricciones.
  14. 14. Page 14 El problema se desarrolla bajo las dos consideraciones, primero teniendo en cuenta el peso y luego el volumen. Como puede apreciarse este es un problema que bien podría resolverse por programación lineal entera teniendo en cuenta la función objetivo y restricciones siguientes:
  15. 15. Page 15
  16. 16. Page 16 PROGRAMACIÓN DE PRODUCCIÓN E INVENTARIOS (Production and Inventory Scheduling) • "Función de dirigir o regular el movimiento metódico de los materiales por todo el ciclo de fabricación, desde la requisición de materias primas, hasta la entrega del producto terminado, mediante la transmisión sistemática de instrucciones a los subordinados, según el plan que se utiliza en las instalaciones del modo más económico". • Para lograr el objetivo, la gerencia debe estar al tanto del desarrollo de los trabajos a realizar, el tiempo y la cantidad producida; así como modificar los planes establecidos, respondiendo a situaciones cambiantes.
  17. 17. Page 17
  18. 18. Page 18Fin..

×