Enfoques.

11
INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO”. SEDE PORLAMAR – GENOVES. PROGRAMACIÓN DINÁMICA ENFOQUES O MÉTODOS. REALIZADO POR: BR. NATHALY MARVAL. C.I.: 21.326.825 PORLAMAR 19/07/2014

Transcript of Enfoques.

Page 1: Enfoques.

INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO”.

SEDE PORLAMAR – GENOVES.

PROGRAMACIÓN DINÁMICAENFOQUES O MÉTODOS.

REALIZADO POR:BR. NATHALY MARVAL.C.I.: 21.326.825

PORLAMAR 19/07/2014

Page 2: Enfoques.

PROGRAMACIÓN DINÁMICA. La idea principal de la programación dinámica (PD) es descomponer el problema en subproblemas (más manejables). Los cálculos se realizan entonces recursivamente donde la solución óptima de un subproblema se utiliza como dato de entrada al siguiente problema. La solución para todo el problema está disponible cuando se soluciona el último subproblema. La forma en que se realizan los cálculos recursivos depende de cómo se descomponga el problema original. En particular, normalmente los subproblemas están vinculados por restricciones comunes. La factibilidad de estas restricciones comunes se mantiene en todas las iteraciones. El procedimiento puede hacerse hacia adelante o hacia atrás.

Page 3: Enfoques.

RECURSIVIDAD.

Es aquella que empieza tan pronto se conocen los requerimientos del trabajo.

Es aquella que inicia con la fecha de entrega y programa primero la ultima operación y los pasos de las otras tareas (en orden inverso)

HACIA ADELANTE (AVANCE)

HACIA ATRÁS (RETROCESO)

Page 4: Enfoques.

NOTAS IMPORTANTES DE LA RECURSIVIDAD.

Naturalmente, la recursividad hacia adelante y hacia atrás da la misma solución óptima. Aun cuando el procedimiento hacia adelante parece más lógico, la mayor parte de la literatura de Programación Dinámica utiliza la recursividad hacia atrás. La razón de esta preferencia es que, por lo general, la recursividad hacia atrás puede ser más eficiente desde el punto de vista computacional.

Page 5: Enfoques.

EJEMPLO DE RECURSIVIDAD .(PROBLEMA DE LA RUTA MÁS CORTA).

Supongamos que deseamos seleccionar la ruta por carretera más corta entre dos ciudades, que se muestran en la fig. a continuación proporciona las posibles rutas entre la ciudad de inicio en el nodo 1 y la ciudad destino en el nodo 7. Las rutas pasan por ciudades intermedias designadas por los nodos 2 a 6.

Page 6: Enfoques.

Para resolver el problema por PD, primero lo descomponemos en etapas como se indica mediante las líneas de rayas verticales en la siguiente figura A continuación, realizamos por separado los cálculos en cada etapa.

SOLUCIÓN.

La idea general para determinar la ruta más corta es calcular las distancias (acumulativas) más cortas a todos los nodos terminales de una etapa, y luego utilizarlas como datos de entrada a la etapa inmediatamente subsiguiente.

Page 7: Enfoques.

Etapa 1.Distancia más corta del nodo 1 al nodo 2 = 7millas (desde el nodo 1)Distancia más corta del nodo 1 al nodo 3 = 8millas (desde el nodo 1) Distancia más corta del nodo 1 al nodo 4 = 5millas (desde el nodo 1)

Etapa 2.La etapa 2 tiene dos nodos terminales, 5 y 6, en la que se puede llegar al nodo 5 siguiendo las rutas (2,5), (3,5), (4,5). Esta información, junto con los resultados resumidos en la etapa 1, determina la distancia mas corta al nodo 5.

Page 8: Enfoques.

Etapa 3. Se puede llegar al nodo de destino 7 desde el nodo 5 o desde el 6. Utilizando los resultados resumidos desde la etapa 2 y las distancias de los nodos 5 y 6 al nodo 7, obtenemos

Resumen de la etapa 3.La distancia más corta desde el nodo 1 al nodo 7 5 21 millas (desde el nodo 5).El resumen de la etapa 3 muestra que la distancia más corta entre los nodos 1 y 7 es de 21 millas. Para determinar la ruta óptima comenzamos con el resumen de la etapa 3, donde el nodo 7 se conecta al nodo 5; en el resumen de la etapa 2 el nodo 4 se conecta al nodo 5, y en el resultado de la etapa 1 el nodo 4 se conecta al nodo 1. Por lo tanto, la ruta mas corta es 1 4 5 7.

Resumen de la etapa 2.Distancia más corta del nodo 1 al nodo 5 5 12 millas (desde el nodo 4) Distancia más corta del nodo 1 al nodo 6 5 17 millas (desde el nodo 3)

Page 9: Enfoques.

PROBLEMA DE LAS N REINAS.

El problema de las n-Reinas consiste en encontrar una distribución de n reinas en un tablero de nxn de modo tal, que estas no se ataquen. Así , no pueden encontrarse dos reinas en la misma fila, columna o diagonal. Este problema tiene 2 versiones.la mas simple consiste en encontrar exactamente una solución valida para un valor n dado. La otra versión, mas difícil consiste en encontrar todas las soluciones posibles para un valor n

Movimientos posibles de una reina en el tablero:

Page 10: Enfoques.

REPRESENTACIÓN

Otra opción es hacer uso de un vector de N enteros, donde cada posición corresponde a una columna del tablero, y el entero representa la fila en la que se encuentra la reina dentro de dicha columna.

SOLUCIÓN.Como cada posición del vector representa una columna, no pueden situarse dos reinas en la misma columna.Si el vector tiene varios enteros iguales, quiere decir que esas reinas están en la misma fila, por lo que sería incorrecta la solución.Queda el problema de las diagonales.

Page 11: Enfoques.

REFERENCIAS.

•Documental del tema características de los problemas de programación dinámica Juan Sebastian Poot Ortiz  Calkini Campeche a 9 de septiembre del 2010•Investigación de Operaciones. (9 Edición) HAMDY A. TAHA. •El problema de las N-reinas. Andrea Spading. Pablo I Ananias. Valparaiso, 01 de julio del 2005•Problemas de las N Reinas. Resolución paralela.