SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
PROGRAMACIÓN DINÁMICA
PROGRAMACIÓN NO NUMÉRICA
ALUMNO:
JOSEPH DIMITRI BADRA CHAKKAL
C.I.: V-26.425.082
JULIO DE 2020
PROGRAMACIÓN DINÁMICA
PROGRAMACIÓN NO NUMÉRICA
INTRODUCCIÓN
La programación dinámica es una técnica matemática que se utiliza para la solución de
problemas matemáticos seleccionados, en los cuales se toma un serie de decisiones en forma
secuencial. Proporciona un procedimiento sistemático para encontrar la combinación de
decisiones que maximice la efectividad total, al descomponer el problema en etapas, las que
pueden ser completadas por una o más formas (estados), y enlazando cada etapa a través de
cálculos recursivos.
PROGRAMACIÓN DINÁMICA
PROGRAMACIÓN DINÁMICA
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. Las decisiones tomadas en una etapa condicionan la
evolución futura del sistema. 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 anterior.
DEFINICIONES
Etapa: es la parte del problema que posee un conjunto de alternativas mutuamente excluyentes, de
las cuales se seleccionará la mejor alternativa.
Estado: es el que refleja la condición o estado de las restricciones que enlazan las etapas. Representa
la “liga” entre etapas de tal manera que cuando cada etapa se optimiza por separado la decisión
resultante es automáticamente factible para el problema completo.
PROGRAMACIÓN DINÁMICA
ESQUEMA DE UNA ETAPA
qi Variable de estado en la etapa i
Xij Uno de los valores que puede adoptar la
variable de decisión “Xi” en la etapa i
Xi* Decisión óptima de la etapa i
PROGRAMACIÓN DINÁMICA
FORMULACIÓN Y SOLUCIÓN DE PROBLEMAS
+ La programación dinámica no cuenta con una formulación matemática estándar, sino que se trata
de un enfoque de tipo general para la solución de problemas, y las ecuaciones específicas que se usan
se deben desarrollar para que representen cada situación individual.
+ Comúnmente resuelve el problema por etapas, en donde cada etapa interviene exactamente una
variable de optimización (u optimizadora)
+ La teoría unificadora fundamental de la programación dinámica es el Principio de Optimalidad,
que nos indica básicamente como se puede resolver un problema adecuadamente descompuesto en
etapas utilizando cálculos recursivos.
+ “Una política óptima tiene la propiedad de que, independientemente de las decisiones tomadas
para llegar a un estado particular, en una etapa particular, las decisiones restantes deben constituir
una política óptima para abandonar ese estado”,
PROGRAMACIÓN DINÁMICA
PARA RESOLVER PROBLEMAS DE PROGRAMACIÓN DINÁMICA SE NECESITA:
+ Un grado de creatividad
+ Un buen conocimiento de la estructura general de los problemas de programación dinámica para
reconocer cuando un problema se puede resolver por medio de estos procedimientos y como esto se
puede llevar a cabo.
PROGRAMACIÓN DINÁMICA
CARACTERÍSTICAS DE LOS PROBLEMAS DE PROGRAMACIÓN DINÁMICA
+ El problema se puede dividir en etapas que requieren una política de decisión en cada una.
+ Cada etapa tiene cierto número de estados asociados a ella.
+ El efecto de la política de decisión en cada etapa es transformar el estado actual en un estado
asociado con la siguiente etapa.
+ El procedimiento de solución esta diseñado para encontrar una política óptima para el problema
completo.
+ Dado un estado actual, una política óptima para las etapas restantes es independiente de la
política adoptada en las etapas anteriores (principio de optimalidad).
+ El procedimiento de solución se inicia al encontrar la política optima para la ultima etapa.
+ Se dispone de una relación recursiva que identifica la política optima par la etapa n dada la
política optima para la etapa (n+1)
PROGRAMACIÓN DINÁMICA
RECURSIVIDAD
+ Existen dos formas de plantear la fórmula de
recursividad en los problemas de programación
dinámica:
+ Recursividad de Retroceso: el problema se
resuelva partiendo de la última etapa hacia la
primera.
+ Recursividad de Avance: el problema se
resuelve partiendo de la primera etapa hacia la
última.
Las formulaciones de avance y retroceso son
en realidad equivalentes en términos de cálculo.
Sin embargo, hay situaciones donde habría alguna
diferencia, en la eficiencia del cálculo, según la
formulación que se utilice. Esto sucede en
particular en problemas donde intervine la toma
de decisiones conforme transcurre el tiempo. En
esto caso las etapas se designan con base en el
estricto orden cronológico de los periodos que
ellas representan y la eficiencia de los cálculos
dependerá de si se utiliza formulación de avance o
retroceso.
PROGRAMACIÓN DINÁMICA
EJEMPLO PROTOTIPO (EL PROBLEMA DE LA DILIGENCIA)
Un caza fortunas de Missouri decide irse al oeste a unirse a la fiebre del oro en California . Tiene
que hacer el viaje en diligencia a través de territorios sin ley donde existían serios peligros de ser
atacados por merodeadores. Aún cuando su punto de partida y destino eran fijos, tenia muchas
opciones en cuanto a que estados debía elegir como puntos intermedios. Se desea estimar la ruta mas
segura , como el costo de la póliza para cualquier jornada de la diligencia esta basada en una
evaluación de seguridad del recorrido, la ruta mas segura debe ser aquella que tenga el costo total
mas barato. ¿Cuál es la ruta que minimiza el costo total de la póliza ?
SISTEMA DE CAMINOS Y LOS COSTOS DEL PROBLEMA DE LA DILIGENCIA
PROGRAMACIÓN DINÁMICA
EJEMPLO PROTOTIPO (EL PROBLEMA DE LA DILIGENCIA)
SOLUCIÓN
Los cálculos se realizan en etapas dividiendo el problema en subproblemas.
+ Después, se considera por separado cada subproblema con el fin de reducir el número de
operaciones de cálculo.
+ Se comienza con una pequeña porción del problema original y se encuentra la solución optima.
+ Luego, se agranda gradualmente el problema y se encuentra la solución óptima actual a partir de
la que le precede , hasta resolver el problema original completo.
+ En cada problema aumentado se puede encontrar la solución óptima tomando en cuenta los
resultados obtenidos en la interacción anterior.
Para este caso se empleará el desarrollo del problema con un recorrido hacia atrás.
Cuando el cazafortunas tiene una sola etapa por recorrer (n=4), su ruta de ahí en adelante esta
perfectamente determinada por su estado actual (ya sea H o I) y su destino final, x4 = J , de manera
que la ruta para esta ultima jornada en diligencias es s J
La solución al problema es:
PROGRAMACIÓN DINÁMICA
EJEMPLO PROTOTIPO (EL PROBLEMA DE LA
DILIGENCIA)
SOLUCIÓN
Cuando se tienen dos etapas por recorrer
(n=3), se analiza de la siguiente manera:
Supóngase que se encuentra en el estado F,
entonces como se ve en la figura, se debe ir al
estado H ó al estado I. a un costo de CF,H = 6 ó
CF,I =3. Si se elige el estado H, el costo adicional
mínimo al llegar ahí es 3, por tanto el costo de
decisión es 6+3=9, de igual manera si se elige el
estado I, el costo total es 3+4=7 que es menor por
lo tanto se escogerá el estado I.
Se trabaja de manera similar con los otros dos
estados posibles s=E y s=G, cuando quedan dos
jornadas por viajar,los resultados son:
PROGRAMACIÓN DINÁMICA
Arboles Binarios de Búsqueda Óptimos
SOLUCIÓN
Un árbol binario no es más que una estructura de datos cuyos nodos pueden tener un hijo a la izquierda o a la
derecha ( no más de 2). Por lo tanto un árbol binario de búsqueda no es más que un tipo de árbol binario cuya
estructura de árbol se representa en informática.
Estos árboles pueden realizar operaciones de:
Búsqueda: La búsqueda en un árbol binario de búsqueda consiste en acceder a la raíz del árbol, si el elemento a
localizar coincide con éste la búsqueda ha concluido con éxito, si el elemento es menor se busca en el subárbol
izquierdo y si es mayor en el derecho. Si se alcanza un nodo hoja y el elemento no ha sido encontrado es que no
existe en el árbol. Estas búsquedas son bastantes eficientes teniendo un máximo de comparaciones en el rango de
[log2(N+1)] y N
Insertado: La inserción es similar a la búsqueda y se puede dar una solución tanto iterativa como recursiva. Si
tenemos inicialmente como parámetro un árbol vacío se crea un nuevo nodo como único contenido el elemento a
insertar. Si no lo está, se comprueba si el elemento dado es menor que la raíz del árbol inicial con lo que se inserta
en el subárbol izquierdo y si es mayor se inserta en el subárbol derecho.
Borrado: esta operación es más compleja y hay que tener en cuenta a borrar un nodo hija o padre el impacto que
tendrá en la estructura del mismo.
Árboles de búsqueda binario óptimos
Si no vamos a modificar un árbol de búsqueda, y sabemos exactamente con qué frecuencia cada artículo será
accesible, podemos construir un árbol binario de búsqueda óptimo, que es un árbol de búsqueda donde el coste
medio de buscar un artículo (el esperado coste de búsqueda) se reduce al mínimo. Incluso si sólo tenemos
estimaciones de los costos de búsqueda, este sistema puede acelerar considerablemente las búsquedas en
promedio. Nosotros vamos a abordar la solución al mismo tanto mediante programación dinámica como con
bottom_up.
PROGRAMACIÓN DINÁMICA
EL PROBLEMA DEL VENDEDOR VIAJERO
El Problema del Vendedor Viajero (conocido
también como Travelling Salesman Problem o
simplemente TSP) consiste en encontrar el circuito
óptimo (en términos del viaje más corto) que
deberá seguir un vendedor en un caso con n
ciudades, en el que cada ciudad se visita
exactamente una vez. Básicamente es una
adaptación del Problema de Asignación que
considera restricciones adicionales que garantiza la
exclusión de subcircuitos en la solución óptima.
Específicamente en el caso de n ciudades se define
las variables de decisión de la siguiente forma:
Sea dij la distancia de la ciudad i a la ciudad j, donde
dij,l modelo del agente o vendedor viajero
corresponde a:
PROGRAMACIÓN DINÁMICA
El conjunto de restricciones (1) y (2) definen un
modelo de asignación tradicional. Lamentablemente
en general, el problema de asignación producirá
soluciones de subcircuito más que circuitos completos
que abarque las n ciudades.
Para ilustrar los conceptos de circuito y subcircuito en
el contexto del Problema del Vendedor Viajero,
consideremos un agente de venta que vive en la
ciudad 1. Miami (Florida) en Estados Unidos y debe
visitar a importantes clientes en las siguientes
ciudades: 2. Chicago (Illinois), 3. Houston (Texas), 4. Las
Vegas (Nevada) y 5. San Francisco (California). Para
mayor claridad se han destacado los estados
mencionados anteriormente con un color distintivo.
CONCLUSIONES
Un problema de optimización que se pueda dividir en etapas y que sea dinámico en
el tiempo puede resolverse por programación dinámica.
+ Las soluciones se pueden ver de manera parcial.
+ Si es posible se validan los resultados usando otros métodos de solución como
programación lineal, no lineal, entera o teoría de redes.
BIBLIOGRAFÍA
+ Bertsekas,D.P., "Dynamic Programming; Deterministic and Stochastic
Models"Academic Press, 1987.
+ Dreyfus S.E. y Law A.M., "The Art and Theory of Dynamic Programming", Academic
Press, 1977.
+Hiller, F. S. “Introducción a la Investigación de Operaciones”. 2008
+ Taha, H. A. “Investigación de Operaciones”. 2005

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Programacion Dinamica Intro
Programacion Dinamica IntroProgramacion Dinamica Intro
Programacion Dinamica Intro
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Presentacion programacion dinamica
Presentacion programacion dinamicaPresentacion programacion dinamica
Presentacion programacion dinamica
 
Programación dinámica
Programación dinámicaProgramación dinámica
Programación dinámica
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Presentación: Programación Dinámica
Presentación: Programación DinámicaPresentación: Programación Dinámica
Presentación: Programación Dinámica
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Dynamic programming 01
Dynamic programming 01Dynamic programming 01
Dynamic programming 01
 
Programacion
ProgramacionProgramacion
Programacion
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Programacion Dinamica
Programacion DinamicaProgramacion Dinamica
Programacion Dinamica
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Optimizacion
OptimizacionOptimizacion
Optimizacion
 
Capitulo 9
Capitulo 9Capitulo 9
Capitulo 9
 
Programación deterministica
Programación deterministicaProgramación deterministica
Programación deterministica
 
Programación Dinamica
Programación DinamicaProgramación Dinamica
Programación Dinamica
 
Programacion dinamica 22
Programacion dinamica 22Programacion dinamica 22
Programacion dinamica 22
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Metodo de optimizacion
Metodo de optimizacionMetodo de optimizacion
Metodo de optimizacion
 

Similar a Programación dinámica y el problema del vendedor viajero

Sesion6_IdaliaFlores_20abr15 (1).pdf
Sesion6_IdaliaFlores_20abr15 (1).pdfSesion6_IdaliaFlores_20abr15 (1).pdf
Sesion6_IdaliaFlores_20abr15 (1).pdfCARLOSVALBUENA36
 
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059OscarGuarimata
 
Teoría de optimización
Teoría de optimizaciónTeoría de optimización
Teoría de optimizaciónAngel Jhoan
 
Javierperez teoría de la optimización
Javierperez teoría de la optimizaciónJavierperez teoría de la optimización
Javierperez teoría de la optimizaciónRobin Duben
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamicaJosé Padrón
 
Daniela mendozaestructuradedatosii
Daniela mendozaestructuradedatosiiDaniela mendozaestructuradedatosii
Daniela mendozaestructuradedatosiiDanielaMendoza117
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeDanny Quintero
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeAndreina Arteaga
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeAndreina Arteaga
 
61178886 i-o-ii-principal
61178886 i-o-ii-principal61178886 i-o-ii-principal
61178886 i-o-ii-principaldaniel malpica
 
Optimizacion Angel Peña
Optimizacion Angel PeñaOptimizacion Angel Peña
Optimizacion Angel PeñaAngel Peña
 
Teoria de Optimizacion
Teoria de  OptimizacionTeoria de  Optimizacion
Teoria de Optimizacionrebeca ferrer
 

Similar a Programación dinámica y el problema del vendedor viajero (20)

Presentación de investigación de operaciones II
Presentación de investigación de operaciones IIPresentación de investigación de operaciones II
Presentación de investigación de operaciones II
 
Sesion6_IdaliaFlores_20abr15 (1).pdf
Sesion6_IdaliaFlores_20abr15 (1).pdfSesion6_IdaliaFlores_20abr15 (1).pdf
Sesion6_IdaliaFlores_20abr15 (1).pdf
 
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
PROGRAMACIÓN DINÁMICA Oscar guarimata 27455059
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Unidad 3. Programación dinámica
Unidad 3. Programación dinámicaUnidad 3. Programación dinámica
Unidad 3. Programación dinámica
 
Unidad 3. Programación dinámica
Unidad 3. Programación dinámicaUnidad 3. Programación dinámica
Unidad 3. Programación dinámica
 
Programación dinámica
Programación dinámicaProgramación dinámica
Programación dinámica
 
Teoría de optimización
Teoría de optimizaciónTeoría de optimización
Teoría de optimización
 
Javierperez teoría de la optimización
Javierperez teoría de la optimizaciónJavierperez teoría de la optimización
Javierperez teoría de la optimización
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
0208
02080208
0208
 
Daniela mendozaestructuradedatosii
Daniela mendozaestructuradedatosiiDaniela mendozaestructuradedatosii
Daniela mendozaestructuradedatosii
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrange
 
Ior
IorIor
Ior
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrange
 
Condiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrangeCondiciones kuhn tucker y lagrange
Condiciones kuhn tucker y lagrange
 
Programacion no lineal
Programacion no linealProgramacion no lineal
Programacion no lineal
 
61178886 i-o-ii-principal
61178886 i-o-ii-principal61178886 i-o-ii-principal
61178886 i-o-ii-principal
 
Optimizacion Angel Peña
Optimizacion Angel PeñaOptimizacion Angel Peña
Optimizacion Angel Peña
 
Teoria de Optimizacion
Teoria de  OptimizacionTeoria de  Optimizacion
Teoria de Optimizacion
 

Último

Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfAdelaHerrera9
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesal21510263
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilDissneredwinPaivahua
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfJessLeonelVargasJimn
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfPPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfZamiertCruzSuyo
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadANDECE
 
Exposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónExposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónjas021085
 
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdf
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdfManual de Usuario Estacion total Sokkia SERIE SET10K.pdf
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdfSandXmovex
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUMarcosAlvarezSalinas
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfReneBellido1
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIARafaelPaco2
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxEtse9
 
Uso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendiosUso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendioseduardochavezg1
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfAnonymous0pBRsQXfnx
 

Último (20)

Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operaciones
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civil
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdf
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfPPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidad
 
Exposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónExposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporación
 
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdf
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdfManual de Usuario Estacion total Sokkia SERIE SET10K.pdf
Manual de Usuario Estacion total Sokkia SERIE SET10K.pdf
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptx
 
Uso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendiosUso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendios
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdf
 

Programación dinámica y el problema del vendedor viajero

  • 1. PROGRAMACIÓN DINÁMICA PROGRAMACIÓN NO NUMÉRICA ALUMNO: JOSEPH DIMITRI BADRA CHAKKAL C.I.: V-26.425.082 JULIO DE 2020 PROGRAMACIÓN DINÁMICA PROGRAMACIÓN NO NUMÉRICA
  • 2. INTRODUCCIÓN La programación dinámica es una técnica matemática que se utiliza para la solución de problemas matemáticos seleccionados, en los cuales se toma un serie de decisiones en forma secuencial. Proporciona un procedimiento sistemático para encontrar la combinación de decisiones que maximice la efectividad total, al descomponer el problema en etapas, las que pueden ser completadas por una o más formas (estados), y enlazando cada etapa a través de cálculos recursivos. PROGRAMACIÓN DINÁMICA
  • 3. PROGRAMACIÓN DINÁMICA 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. Las decisiones tomadas en una etapa condicionan la evolución futura del sistema. 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 anterior. DEFINICIONES Etapa: es la parte del problema que posee un conjunto de alternativas mutuamente excluyentes, de las cuales se seleccionará la mejor alternativa. Estado: es el que refleja la condición o estado de las restricciones que enlazan las etapas. Representa la “liga” entre etapas de tal manera que cuando cada etapa se optimiza por separado la decisión resultante es automáticamente factible para el problema completo. PROGRAMACIÓN DINÁMICA
  • 4. ESQUEMA DE UNA ETAPA qi Variable de estado en la etapa i Xij Uno de los valores que puede adoptar la variable de decisión “Xi” en la etapa i Xi* Decisión óptima de la etapa i PROGRAMACIÓN DINÁMICA
  • 5. FORMULACIÓN Y SOLUCIÓN DE PROBLEMAS + La programación dinámica no cuenta con una formulación matemática estándar, sino que se trata de un enfoque de tipo general para la solución de problemas, y las ecuaciones específicas que se usan se deben desarrollar para que representen cada situación individual. + Comúnmente resuelve el problema por etapas, en donde cada etapa interviene exactamente una variable de optimización (u optimizadora) + La teoría unificadora fundamental de la programación dinámica es el Principio de Optimalidad, que nos indica básicamente como se puede resolver un problema adecuadamente descompuesto en etapas utilizando cálculos recursivos. + “Una política óptima tiene la propiedad de que, independientemente de las decisiones tomadas para llegar a un estado particular, en una etapa particular, las decisiones restantes deben constituir una política óptima para abandonar ese estado”, PROGRAMACIÓN DINÁMICA
  • 6. PARA RESOLVER PROBLEMAS DE PROGRAMACIÓN DINÁMICA SE NECESITA: + Un grado de creatividad + Un buen conocimiento de la estructura general de los problemas de programación dinámica para reconocer cuando un problema se puede resolver por medio de estos procedimientos y como esto se puede llevar a cabo. PROGRAMACIÓN DINÁMICA
  • 7. CARACTERÍSTICAS DE LOS PROBLEMAS DE PROGRAMACIÓN DINÁMICA + El problema se puede dividir en etapas que requieren una política de decisión en cada una. + Cada etapa tiene cierto número de estados asociados a ella. + El efecto de la política de decisión en cada etapa es transformar el estado actual en un estado asociado con la siguiente etapa. + El procedimiento de solución esta diseñado para encontrar una política óptima para el problema completo. + Dado un estado actual, una política óptima para las etapas restantes es independiente de la política adoptada en las etapas anteriores (principio de optimalidad). + El procedimiento de solución se inicia al encontrar la política optima para la ultima etapa. + Se dispone de una relación recursiva que identifica la política optima par la etapa n dada la política optima para la etapa (n+1) PROGRAMACIÓN DINÁMICA
  • 8. RECURSIVIDAD + Existen dos formas de plantear la fórmula de recursividad en los problemas de programación dinámica: + Recursividad de Retroceso: el problema se resuelva partiendo de la última etapa hacia la primera. + Recursividad de Avance: el problema se resuelve partiendo de la primera etapa hacia la última. Las formulaciones de avance y retroceso son en realidad equivalentes en términos de cálculo. Sin embargo, hay situaciones donde habría alguna diferencia, en la eficiencia del cálculo, según la formulación que se utilice. Esto sucede en particular en problemas donde intervine la toma de decisiones conforme transcurre el tiempo. En esto caso las etapas se designan con base en el estricto orden cronológico de los periodos que ellas representan y la eficiencia de los cálculos dependerá de si se utiliza formulación de avance o retroceso. PROGRAMACIÓN DINÁMICA
  • 9. EJEMPLO PROTOTIPO (EL PROBLEMA DE LA DILIGENCIA) Un caza fortunas de Missouri decide irse al oeste a unirse a la fiebre del oro en California . Tiene que hacer el viaje en diligencia a través de territorios sin ley donde existían serios peligros de ser atacados por merodeadores. Aún cuando su punto de partida y destino eran fijos, tenia muchas opciones en cuanto a que estados debía elegir como puntos intermedios. Se desea estimar la ruta mas segura , como el costo de la póliza para cualquier jornada de la diligencia esta basada en una evaluación de seguridad del recorrido, la ruta mas segura debe ser aquella que tenga el costo total mas barato. ¿Cuál es la ruta que minimiza el costo total de la póliza ? SISTEMA DE CAMINOS Y LOS COSTOS DEL PROBLEMA DE LA DILIGENCIA PROGRAMACIÓN DINÁMICA
  • 10. EJEMPLO PROTOTIPO (EL PROBLEMA DE LA DILIGENCIA) SOLUCIÓN Los cálculos se realizan en etapas dividiendo el problema en subproblemas. + Después, se considera por separado cada subproblema con el fin de reducir el número de operaciones de cálculo. + Se comienza con una pequeña porción del problema original y se encuentra la solución optima. + Luego, se agranda gradualmente el problema y se encuentra la solución óptima actual a partir de la que le precede , hasta resolver el problema original completo. + En cada problema aumentado se puede encontrar la solución óptima tomando en cuenta los resultados obtenidos en la interacción anterior. Para este caso se empleará el desarrollo del problema con un recorrido hacia atrás. Cuando el cazafortunas tiene una sola etapa por recorrer (n=4), su ruta de ahí en adelante esta perfectamente determinada por su estado actual (ya sea H o I) y su destino final, x4 = J , de manera que la ruta para esta ultima jornada en diligencias es s J La solución al problema es: PROGRAMACIÓN DINÁMICA
  • 11. EJEMPLO PROTOTIPO (EL PROBLEMA DE LA DILIGENCIA) SOLUCIÓN Cuando se tienen dos etapas por recorrer (n=3), se analiza de la siguiente manera: Supóngase que se encuentra en el estado F, entonces como se ve en la figura, se debe ir al estado H ó al estado I. a un costo de CF,H = 6 ó CF,I =3. Si se elige el estado H, el costo adicional mínimo al llegar ahí es 3, por tanto el costo de decisión es 6+3=9, de igual manera si se elige el estado I, el costo total es 3+4=7 que es menor por lo tanto se escogerá el estado I. Se trabaja de manera similar con los otros dos estados posibles s=E y s=G, cuando quedan dos jornadas por viajar,los resultados son: PROGRAMACIÓN DINÁMICA
  • 12. Arboles Binarios de Búsqueda Óptimos SOLUCIÓN Un árbol binario no es más que una estructura de datos cuyos nodos pueden tener un hijo a la izquierda o a la derecha ( no más de 2). Por lo tanto un árbol binario de búsqueda no es más que un tipo de árbol binario cuya estructura de árbol se representa en informática. Estos árboles pueden realizar operaciones de: Búsqueda: La búsqueda en un árbol binario de búsqueda consiste en acceder a la raíz del árbol, si el elemento a localizar coincide con éste la búsqueda ha concluido con éxito, si el elemento es menor se busca en el subárbol izquierdo y si es mayor en el derecho. Si se alcanza un nodo hoja y el elemento no ha sido encontrado es que no existe en el árbol. Estas búsquedas son bastantes eficientes teniendo un máximo de comparaciones en el rango de [log2(N+1)] y N Insertado: La inserción es similar a la búsqueda y se puede dar una solución tanto iterativa como recursiva. Si tenemos inicialmente como parámetro un árbol vacío se crea un nuevo nodo como único contenido el elemento a insertar. Si no lo está, se comprueba si el elemento dado es menor que la raíz del árbol inicial con lo que se inserta en el subárbol izquierdo y si es mayor se inserta en el subárbol derecho. Borrado: esta operación es más compleja y hay que tener en cuenta a borrar un nodo hija o padre el impacto que tendrá en la estructura del mismo. Árboles de búsqueda binario óptimos Si no vamos a modificar un árbol de búsqueda, y sabemos exactamente con qué frecuencia cada artículo será accesible, podemos construir un árbol binario de búsqueda óptimo, que es un árbol de búsqueda donde el coste medio de buscar un artículo (el esperado coste de búsqueda) se reduce al mínimo. Incluso si sólo tenemos estimaciones de los costos de búsqueda, este sistema puede acelerar considerablemente las búsquedas en promedio. Nosotros vamos a abordar la solución al mismo tanto mediante programación dinámica como con bottom_up. PROGRAMACIÓN DINÁMICA
  • 13. EL PROBLEMA DEL VENDEDOR VIAJERO El Problema del Vendedor Viajero (conocido también como Travelling Salesman Problem o simplemente TSP) consiste en encontrar el circuito óptimo (en términos del viaje más corto) que deberá seguir un vendedor en un caso con n ciudades, en el que cada ciudad se visita exactamente una vez. Básicamente es una adaptación del Problema de Asignación que considera restricciones adicionales que garantiza la exclusión de subcircuitos en la solución óptima. Específicamente en el caso de n ciudades se define las variables de decisión de la siguiente forma: Sea dij la distancia de la ciudad i a la ciudad j, donde dij,l modelo del agente o vendedor viajero corresponde a: PROGRAMACIÓN DINÁMICA El conjunto de restricciones (1) y (2) definen un modelo de asignación tradicional. Lamentablemente en general, el problema de asignación producirá soluciones de subcircuito más que circuitos completos que abarque las n ciudades. Para ilustrar los conceptos de circuito y subcircuito en el contexto del Problema del Vendedor Viajero, consideremos un agente de venta que vive en la ciudad 1. Miami (Florida) en Estados Unidos y debe visitar a importantes clientes en las siguientes ciudades: 2. Chicago (Illinois), 3. Houston (Texas), 4. Las Vegas (Nevada) y 5. San Francisco (California). Para mayor claridad se han destacado los estados mencionados anteriormente con un color distintivo.
  • 14. CONCLUSIONES Un problema de optimización que se pueda dividir en etapas y que sea dinámico en el tiempo puede resolverse por programación dinámica. + Las soluciones se pueden ver de manera parcial. + Si es posible se validan los resultados usando otros métodos de solución como programación lineal, no lineal, entera o teoría de redes.
  • 15. BIBLIOGRAFÍA + Bertsekas,D.P., "Dynamic Programming; Deterministic and Stochastic Models"Academic Press, 1987. + Dreyfus S.E. y Law A.M., "The Art and Theory of Dynamic Programming", Academic Press, 1977. +Hiller, F. S. “Introducción a la Investigación de Operaciones”. 2008 + Taha, H. A. “Investigación de Operaciones”. 2005