UNIVERSIDAD ALAS PERUANAS
PROGRAMACIÓN DINÁMICA
TEMA: ASIGNATURA: ASIGNATURA:
INVESTIGACION INVESTIG ACION OPERATIVA OPERATIVA II
DOCENTE: ALUMNOS: ALUMNOS: • • • •
CICLO:
ALONSO CARRASCO SIANCAS LIZ ARREDONDO FLORES FLORES KARINA GASTELU MONTOYA JUAN FLORES FLORES ANYOSA 6 - II ICA – PERU -2015-
PROGRAMACION DINAMICA
Página 1
DEDICATORIA: Dedicamos este trabajo principalmente a nuestros padres quienes nos apoyan y motivan en el transcurrir de nuestra formación académica, creen en nosotros en todo momento y no dudan de nuestras habilidades. A nuestros nuestros profesores a quienes quienes les debemos gran parte parte de nuestro conocimiento, gracias a su paciencia y enseñanza, finalmente un eterno agradecimiento.
PROGRAMACION DINAMICA
Página 2
PROGRAMACION DINAMICA
PROGRAMACION DINAMICA
Página 3
INDICE
INTRODUCCION PROGRAMACION DINAMICA
Página 4
l presente trabajo comprende la investigación y ejemplos sobre la teor!a de la programación din"mica. st" comprendida dentro de un conjunto de técnicas matem"ticas que a su vez form forman an part parte e de un "rea "rea m"s m"s ampl amplia ia,, cono conoci cida da como como inve invest stig igac ació ión n de operaciones. sta #ltima puede definirse como una ciencia interdisciplinaria que que tien tiene e por por obje objeto to la b#sq b#sque ueda da de estra estrate tegi gias as que que perm permit itan an obte obtene ner r result resultado ados s óptimo óptimos s en el desarr desarroll ollo o de activi actividad dades es por parte parte de sistem sistemas as hombre m"quinas, como se ver" m"s adelante los problemas propios de la programación din"mica son aquellos que puede ser divididos en subproblemas los cuales tienen una estructura igual al problema original. $a programación din"mica %&D' determina la solución óptima de un problema de n variables descomponiéndola en n etapas, con cada etapa incluyendo un subproblema de una sola variable. $a principal contribución de la &D es el principio de optimalidad, el cual establece que una pol!tica óptima consiste de subpol!ticas óptimas, óptimas, un marco de referencia para descomponer descomponer el problema problema en etapas. $a programación din"mica es una técnica que se puede aplicar para resolver muc muchos hos prob proble lema mas s de opti optimi miza zaci ción ón.. $a may mayor part parte e de las las veces eces,, la programación din"mica obtiene soluciones con un avance en reversa, desde el final final de un prob proble lema ma haci hacia a el prin princi cipi pio o con con lo que que un prob proble lema ma gran grande de y engorr engorros oso o se convi conviert erte e en una serie de proble problemas mas m"s pequeñ pequeños os y m"s tratables. As!, la programación din"mica se puede definir como una técnica matem"tica #til que resuelve una serie de decisiones secuenciales, cada una de las cuales afecta las decisiones futuras. &roporciona un procedimiento sistem"tico para determ determina inarr la combin combinaci ación ón de decisi decisione ones s que ma(imiz ma(imiza a la efecti efectivid vidad ad total total %)aha, %)aha, *++'. *+ +'. n contraste para el el problema de programación programación din"mica, trata de un enfoque de tipo parcial para la solución de problemas y las ecuaciones espec!ficas que se usan se deben desarrollar para que represente cada situación individual.
PROGRAMACION DINAMICA PROGRAMACION DINAMICA
Página 5
Antecedentes: Durante la -egunda uerra /undial la investigación matem"tica se e(tendió hacia zonas que hasta entonces le hab!an sido ajenas. -i bien la participación de la ciencia, y de la matem"tica en particular, en los enfrentamientos bélicos, puede remontarse a la organización, por parte de Arqu!medes, de las defensas de -iracusa, lo cierto es que, hasta la -egunda uerra, no hab!an e(istido pol!ticas consecuentes de aplicación espec!fica de la matem"tica a problemas de importancia en esta materia. n realidad, este fenómeno comenzó en los años previos al estallido de la guerra. Alemania, 0nglaterra, stados 1nidos y la 1.2.-.-. formaron equipos de investigación, cuyos trabajos fueron la base de muchos de los inventos que aparecieron en funcionamiento durante la guerra %el radar, por ejemplo' y que abrie briero ron n las las nue nuevas ram ramas de la mate matem" m"ti tic ca que se desarr sarro olla llar!a r!an enormemente después de 345. $a primera gran disciplina que surgió a partir del abordaje matem"tico de los prob proble lema mas s espe espec! c!fic ficos os de la guer guerra ra fue, fue, segu segura rame ment nte, e, la 0nve 0nvest stig igac ació ión n 6perativa3. l término 6perations 2esearch fue utilizado por primera vez en 0ngl 0nglat ater erra ra,, en 343 343.. $as $as inv investi estiga gaci cion ones es real realiz izad adas as en los los cent centro ros s de 0nvest 0nvestiga igació ción n 6perat 6perativa iva de la 2oyal 2oyal Air Air 7orce 7orce y otros otros organi organismo smos s milita militares res brit"n brit"nico icos s permit permitiero ieron, n, entre entre otras otras cosas, cosas, increm increment entar ar la eficac eficacia ia de la los patrullajes aéreos en busca de submarinos alemanes, y consecuentemente, la cantidad de submarinos dañados o hundidos. 2"pidamente se hizo evidente que las mismas técnicas utilizadas en el "mbito militar pod!an servir en otras "reas de aplicación. n los años posteriores a la uerra se abrieron nuevos temas de investigación y se plantearon nuevos problemas, que fueron abordados desde una perspectiva matem"tica. Después de desarrollar el método en el "rea espec!fica de los problemas de decisión discretos, 8ellman y sus colaboradores se dedicaron a la ardua tarea de formular diferentes problemas en los términos de la &rogramación Din"mica. 9omo resultado de esta labor, encontraron que las ideas centrales del método del &rinci &rincipio pio de 6ptima 6ptimalid lidad, ad, pod!an pod!an ser aplica aplicadas das satisf satisfact actori oriame amente nte en muchos de los problemas abordados. $a &rogra &rogramac mación ión Din"mi Din"mica ca es, hoy en d!a, d!a, un recurs recurso o impres imprescin cindib dible le de /atem"tica Aplicada y, y, también, una importante herramienta teórica.
Definición: PROGRAMACION DINAMICA
Página 6
$a prog progra rama maci ción ón din" din"mi mica ca es un enfo enfoqu que e gene genera rall para para la solu soluci ción ón de problemas en los que es necesario tomar decisiones en etapas sucesivas. $as decisiones tomadas en una etapa condicionan la evolución futura del sistema, afectando a las situaciones en las que el sistema se encontrar" en el futuro %denominadas estados', y a las decisiones que se plantear"n en el futuro, 9onviene 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. l 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 deci decirr come comenz nzan ando do por por la #lti #ltima ma y pasa pasand ndo o en cada cada iter iterac ació ión n a la etap etapa a antecesora. l an"lisis de la primera etapa finaliza con la obtención del óptimo del problema.
Características de los probleas de pro!raación din"ica: $as caracter!sticas de la programación din"mica se emplean para formular e identificar la estructura estructura de los problemas de este tipo. A continuación se presentar"n estas caracter!sticas b"sicas que distinguen a los problemas de programación din"mica. 3. l problem problema a se puede puede dividi dividirr en etapas etapas que que requiere requieren n una pol!tica pol!tica de decisión en cada una de ellas. n muchos problemas de programación din"mica, la etapa es la cantidad de tiempo que pasa desde el inicio del problema, en ciertos casos no se necesitan decisiones en cada etapa. *. 9ada 9ada etapa etapa tien tiene e un cierto cierto n#me n#mero ro de estado estados s asoc asocia iado dos s a ella ella.. &or &or estado estado se entiende la información que se necesita en cualquier etapa para tomar una decisión óptima. :. l efecto efecto de la pol!ti pol!tica ca de deci decisi sión ón en cada cada etapa etapa es transf transfor orma marr el estado actual en un estado asociado con la siguiente etapa %tal vez de acuerdo a una distribución de probabilidad'. . l procedimien procedimiento to de solución solución est" diseña diseñado do para encont encontrar rar una pol!tica pol!tica ópti óptima ma para para el prob proble lema ma comp complet leto, o, es deci decirr, una una rece receta ta para para las las decisiones de la pol!tica óptima en cada etapa para cada uno de los estados posibles. 5. Dado el estado estado actual, actual, una una pol!tica pol!tica óptima óptima para las etapas etapas restant restantes es es independiente de la pol!tica adoptada en etapas anteriores. %este es el principio de óptimalidad para la programación din"mica'. ;. l procedimie procedimiento nto de solución solución se inicia inicia al encontra encontrarr la pol!tica pol!tica óptima para para la #ltima etapa. $a pol!tica óptima para la #ltima etapa prescribe la pol!tica óptima de decisión para cada estado posible en esa etapa. PROGRAMACION DINAMICA
Página 7
<. -e dispone dispone de una una relación relación recursiv recursiva a que indica indica la pol!tica pol!tica óptima para para la etapa dada la pol!tica optima para la l a etapa %n=3'
A pesar de esta caracter!stica, los problemas que pueden ser atacados con la &D tienen otras dos propiedades adicionales>
-ólo un n#mero reducido de variables se debe conocer en cualquier etapa con el fin de describir al problema. n efecto, los problemas de la &D se caracterizan por la dependencia de los resultados derivados de decisiones sobre un n#mero reducido de variables. l resu resulta ltado do de una una deci decisi sión ón en cual cualqu quier ier etap etapa a alte altera ra los los valo valore res s numéricos de un n#mero reducido de variables relevantes al problema. $a decisión actual ni incrementa ni decrementa el n#mero de factores sobre los cuales depende el resultado. As!, para la siguiente decisión en la secuencia, el mismo n#mero de variables se considera %?illier, 3443'.
n un prob proble lema ma de &D una una seri serie e de deci decisi sion ones es se debe deben n toma tomarr en una una secu secuen enci cia a dada dada.. 9uan 9uando do esto esto se cump cumple le,, una una polí políti tica ca ópti óptia a se debe debe perseg perseguir uir.. @o import importa a cu"les cu"les fueron fueron los estado estados s y decisi decisione ones s inicia iniciales les,, las decisiones restantes constituir"n una pol!tica óptima con respecto al estado resultante de la primera decisión.
Principio de optialidad de la DP o de #ellan: Dado un estado, la pol!tica óptima para las siguientes etapas no depende de la pol!tica tomada en las etapas anteriores. $a decisión de óptima inmediata sólo depende del estado en el que se est", no de cómo se llegó hasta él. )oda la información sobre el pasado se resume en el estado en que se encuentra. 1na vez conocida la solución óptima global, cualquier solución parcial que involucre sólo una parte de las etapas es también una solución óptima. )odo odo subconjunto de una solución óptima es a su vez una solución óptima para un problema parcial.
PROGRAMACION DINAMICA
Página 8
Estr$ct$ra de la pro!raación din"ica: )odo odo problema de programación din"mica debe reunir los siguientes pasos> a' l problema problema se divide divide en etapas, etapas, con una una pol!tica pol!tica de decisión decisión requerida requerida en cada etapa. b' 9ada etapa tiene algunos algunos estados estados asociado asociados. s. c' 9ada proble problema ma debe tener tener una una variable variable de estado estado la cual nos nos dice todo todo lo que necesitamos saber sobre el sistema, a fin de tomar decisiones. d' 9ada estado estado debe debe contar contar con una decisió decisión, n, la cual cual es una oportunid oportunidad ad para cambiar las variables de estado en una forma probabilistica. e' l efec efecto to de una una deci decisi sión ón a cada cada etap etapa a es tran transf sfor orma marr el esta estado do corriente %actual', en uno asociado con la pró(ima etapa. f' Dado Dado el estado estado corrient corriente, e, la pol!tica pol!tica óptima óptima para para las etapas etapas que que quedan quedan es independiente a la pol!tica adoptada en etapas anteriores. n este caso Betapa anteriorC, significa tiempo. g' l procesamien procesamiento to empieza empieza por escoger escoger la decisión%pol decisión%pol!tica' !tica',, óptima para cada estado de la ultima etapa. h' Debe Debe tene tenerr una una func funció ión n 291 29122-0 0A A la cual cual iden identi tific fica a la deci decisi sión ón %pol!tica', óptima para cada estado cuando quedan nEetapas, dada la decisión óptima para cada estado cuando quedan nE3 etapas. i' 1san 1sando do esta relac relació ión n recu recurs rsiv iva, a, el métod método o de soluc solució ión n muev mueve e haci hacia a atr"s etapa por etapa, determinando la decisión óptima en cada etapa hasta llegar a la etapa final.
Clasificación: $a programación din"mica puede clasificarse de las siguientes formas> 3. 9ombinand 9ombinando o la eficienci eficiencia a yFo yFo efectiv efectividad. idad. *. -umando -umando ó multiplica multiplicando, ndo, ma(imizan ma(imizando do ó minimizand minimizando o la eficiencia eficiencia yFo yFo efectividad. :. 6ptimizand 6ptimizando o en una una forma total total la eficien eficiencia cia yFo yFo efectivida efectividad. d. De acue acuerd rdo o a ello ello pode podemo mos s deci decir> r> Gue Gue cuan cuando do la efic eficie ienc ncia ia yFo yFo efecti efectivid vidad ad son positiv positivas as entonc entonces es la funció función n de las nEetap nEetapas as se ma( ma(imiz imiza a como omo por por eje ejemplo mplo>> cuando ando halla allamo mos s util utilid idad ade es, rentabilidad, salud, etc. 9uando las eficiencias yFo efectividades son negativas entonces la funció función n de las nEetap nEetapas as se minimi minimiza, za, como como por ejempl ejemplo> o> 9uando 9uando hallamos costos, probabilidades de falla o fracaso, etc. )ambién mbién tenemo tenemos s que que seg#n seg#n la eficie eficienc ncia ia yFo efecti efectivid vidad ad estas estas pueden ser discretas o continuas. -e dice que una función eficiencia yFo efectividad del sistema es discreta en el conte(to de la programación din"mica, cuando esta se le representa por medio de tablas. •
•
•
PROGRAMACION DINAMICA
Página 9
•
-e dice dice que una funció función n eficie eficienci ncia a yFo efecti efectivid vidad ad se repres represent enta a matem"ticamente por medio de una función, entonces se dice que el programa din"mico es continuo.
Tipos de odelos de pro!raación din"ica:
A% Pro!raa Pro!raación ción din"i din"ica ca deterin deterinista: ista: n la prog progra rama maci ción ón dete determ rmin inis ista ta el esta estado do en la sigu siguie ient nte e etap etapa a est" est" 9ompletamente determinado por el estado y la pol!tica de decisión de la etapa actual. l enfoque de programación din"mica en los problemas determin!sticos, en donde el estado en la siguiente etapa est" completamente determinado por el estado estado y la pol!tica de decisión decisión de la etapa actual. actual. l caso probabil!st probabil!stico ico en el que e(iste una distribución de probabilidad para el valor posible del siguiente estado este este se analizara m"s adelante. adelante. 1na 1na mane manerra de clas lasific ifica ar los los prob proble lem mas de prog rograma ramac ción ión din din"mic "mica a determin!sticas es con base en la forma de función objetivo. &or ejemplo puede ser minimizar la suma de las contribuciones en cada etapa individualEcomo en el problem problema a de la diligen diligencia ciaEE o ma(imiz ma(imizar ar esa suma, suma, o bien bien minimiza minimizarr el producto de los términos, etc. 6tra clasificación clasificación se puede hacer hacer en términos de la naturaleza del conjunto de estados en estados en las respectivas etapas. $a prog progra rama maci ción ón din" din"mic mica a dete determ rmin inis ista tas s se pued puede e escr escrib ibir ir en form forma a de diagrama como se ve en la siguiente figura>
Estructura básica para programación dinámica determinista n la etapa n el proceso se encontrara en alg#n estado Sn. Sn. Al tomar la decisión Xn se Xn se mueve a alg#n estado Sn+1.l Sn+1.l valor de la función objetivo para la pol!tica opti optima ma de ese ese punt punto o en dela delant nte e de ese ese punt punto o en adel adelan ante te se calc calcul ulo o
PROGRAMACION DINAMICA
Página 10
prev previa iame ment nte e como como fn+1(Sn+1). $a pol! pol!tic tica a de deci decisi sión ón tamb tambié ién n hace hace una una contribución a la función objetivo. Al combinar estas dos cantidades en la forma apropiada se proporciona a la func funció ión n obje objetiv tivo o fn (Sn,Xn contrib ibuc ució ión n de la etap etapa a n en adelan adelante. te. $a (Sn,Xn)) la contr optimización respecto a Xn a Xn proporciona proporciona entonces fn(Sn)= fn (Sn,Xn). 1na 1na vez enc encontra ntramo mos s Xn fn(Sn) para ara cada ada valor alor posib sible de Sn, el procedimiento de solución se mueve hacia atr"s una etapa. 1na manera de clasificar los problemas de programación determinista es por la forma de la función objetivo. l objetivo puede ser minimizar la suma de las contribuciones de cada una de las etapas individuales, o ma(imizar esa suma, o bien minimizar el producto de los términos, etc. 6tra clasificación se puede hacer en términos de la naturaleza naturaleza del conjunto de de estados en las respectivas respectivas etapas etapas.. n partic particula ular, r, los estado estados s Sn Sn pueden estar representados por una variable de estado discreta, o por una variable de estado continua. Manera de Clasificar los Probleas de Pro!raación Din"ica: •
•
7orma de la función objetiva. /inimizar la l a suma de las contribuciones en cada una de las etapas individuales, o ma(imizar esa suma, o bien minimizar el producto de los términos, etc. @aturaleza del conjunto de estados en las respectivas etapas. $os estados si pueden estar representados por> 3E 1na variable discreta *E 1na variable de estado 9ontinua :E 6 un vector de estado %m"s de una variable'
&ara &ara resolv resolver er un proble problema ma de progra programac mación ión din"mi din"mica ca debemo debemos s al menos> menos> 0dentificación de etapas, estados y variable de decisión> •
•
•
•
•
9ada etapa debe tener asociado una o m"s decisiones %problema de +ptimizacion', cuya dependencia de las decisiones anteriores est" dada e(clusivamente por las variables de estado. 9ada estado debe contener toda la información relevante para la toma de decisión asociada al per!odo. $as variables de decisión son aquellas sobre las cuales debemos definir su valor de modo de optimizar el beneficio acumulado y modificar el estado de la pró(ima etapa. Descripción de ecuaciones de recurrencia> @os deben indicar como se acumula la función de beneficios a optimizar %función objetivo' y como var!an las funciones de estado de una etapa a otra. 2esolución Debemos optimizar cada subproblema por etapas en función de los resultados de la resolución del subproblema siguiente.
PROGRAMACION DINAMICA
Página 11
•
@otar que las para que las recurrencias estén bien definidas requerimos de condiciones de borde
Al!$nas de las aplicaciones de pro!raación din"ica deterinista son: • • •
!ode"o de #o"umen$%arga &!oc'i"a !ode"o de" tamao de "a fuer*a fuer *a de trabajo !ode"o de reposición de euipos !ode"o de inversión !ode"os de inventarios
#% Pro!raa Pro!raación ción din"ic din"ica a probabilís probabilística: tica: $a prog rogram ramación din"mic mica probabil!stica %&D&' es una técnica matem"ticamente #til para la toma de decisiones interrelacionadas, interrelacionadas, se presenta cuando el estado en la siguiente etapa no est" determinado por completo por el estado y la pol!tica de decisión decisión de la etapa etapa actual. $a programación din"mica probabilística difiere de la determinación en que el estado de la siguiente etapa no est" completamente determinado por el estado la pol!tica de decisión de la etapa actual. n su lugar e(iste una distribución para determinar determinar cu"l ser" ser" el siguiente estado. estado. de probabilidad para n su lugar e(iste una distribución de probabilidad para determinar cu"l ser" el siguiente estado. -in embargo, esta distribución de probabilidad si queda bien determinada por el estado y la pol!tica de decisión en la etapa actual. &or consiguiente la diferencia entre la programación din"mica probabil!stica y la progra programac mación ión din"mi din"mica ca determ determin! in!sta sta %&DD' %&DD' est" est" en que los estad estados os y los retornos o retribuciones en cada etapa son probabil!sticos. $a programación din"mica probabil!stica se origina en especial en el tratamiento de modelos estoc"sticos de inventarios y en los procesos marHovianos de decisión. n este apartado se presentar" algunos ejemplos generales, con objeto de hacer resaltar la naturaleza estoc"stica de la programación din"mica. En la si!$iente fi!$ra se fi!$ra se describe con un diagrama la estructura b"sica que resulta en los problemas de programación din"mica probabil!stica. n lo que se refiere a este diagrama, sea s el n#mero de estados posibles en la etap etapa a n=3 y etiqu etiquete ete estos estos estado estados s al lado derecho derecho por 3,*I 3,*I S.l sistema cambia cambia al estad estado o i con la probab probabilid ilidad ad pi(i=1,-S) pi(i=1,-S) dados el estad estado o Sn y la decisión Xn decisión Xn en en la etapa n. -i n. -i el sistema cambia al estado i,%i es es la contribución de la etapa n a la función objetivo.
PROGRAMACION DINAMICA
Página 12
9uando se e(pande la figura para concluir todos los estados y las decisiones posibles en todas las etapas, se obtienen lo que con frecuencia se conoce como como un árbol de decisión . -i este "rbol de decisión no es muy grande, proporciona una forma #til de resumir estas probabilidades. Debido a la estructura probabilidades la relación entre fn(Sn,Xn) fn+1 (Sn+1) necesariamente es m"s complicada que para el caso determin!stico. $a forma e(acta de esta relación depender" de la forma global de la función objetivo.
Estructura básica para programación dinámica probabi"stica
Aplicaciones de pro!raación pro!raación din"ica din"ica probabilística: probabilística: Algunas de las aplicaciones aplicaciones de programación programación din"mica probabil!stica son> son>
1n juego aleatorio &roblema de inversión /a(imización del evento de lograr una meta.
PROGRAMACION DINAMICA
Página 13
PROGRAMACION DINAMICA
Página 14
CONC&U'IONE'
$a programación din"mica es un método que es de mucha utilidad para tomar divers diversas as decisio decisiones nes.. Gue sean sean de gran gran ayuda ayuda para para deter determin minar ar que que dicha dicha actividad se optima en cualquier proceso. /"s bien, se podr!a determinar por un enfoque para resolver problemas y las ecuaciones particulares usadas deben desarrollarse para que se ajusten a cada situación individual. &or lo tanto, se requiere un cierto grado de ingenio y de visión de la estructura general de los problemas de programación din"mica, a fin fin de reco recono noce cerr cuan cuando do un prob proble lema ma se pued puede e reso resolv lver er medi median ante te los los procedimientos de esta programación y cómo se har!a. &or fortuna, la programación din"mica nos ayuda a encontrar una manera m"s f"cil de resolver estos problemas que pudieran e(istir y sobre todo aplicarlos para que todo sea eficiente, la programación din"mica parte de una pequeña porción del problema y encuentra la solución óptima para este problema m"s pequeño. /"s que nada nos proporciona grandes ahorros en costos y tiempo sobre todo cuando se trata de problemas grandes. Gue al final nos ayudara para que el trabajo realizado sea factible pero sobre todo eficiente.
PROGRAMACION DINAMICA
Página 15
#I#&IOGRA(IA
PROGRAMACION DINAMICA
Página 16