You are on page 1of 23

PROGRAMACIN DINMICA DEFINICIN DE PROGRAMACIN DINMICA Tcnica de programacin matemtica que proporciona un procedimiento sistemtico para determinar la combinacin

ptima de una serie de decisiones interrelacionadas. La programacin dinmica se utiliza tanto en problemas lineales como no lineales. La programacin dinmica es til para resolver un problema donde se deben tomar una serie de decisiones interrelacionadas. A diferencia de la P.L, la programacin dinmica no tiene formulacin matemtica estndar. Se trata de un enfoque de tipo general para la solucin de problemas, y las ecuaciones se derivan de las condiciones individuales de los mismos CONCEPTUALIZACIN DE PROGRAMACIN DINMICA 1. Se trata de un enfoque de tipo general para la solucin de problemas y las ecuaciones especficas que se usan se deben desarrollar para que representen cada situacin individual. 2. Se necesita un cierto grado de creatividad y un buen conocimiento de la estructura general de de los problemas de Programacin Dinmica para reconocer cundo y cmo se puede resolver un problema por medio de estos procedimientos. TIPOS DE PROGRAMACIN DINMICA 1. Programacin dinmica determinstica. El estado en la siguiente etapa est completamente determinado por el estado y la poltica de decisin de la etapa actual. 2. Programacin dinmica probabilstica. El estado en la siguiente etapa no est completamente determinado por el estado y la poltica de decisin de la etapa actual, existiendo en su lugar una distribucin de probabilidad para determinar cul ser el siguiente estado.

CARACTERSTICAS DE PROGRAMACIN DINMICA 1. Etapas: El problema se puede dividir en etapas que requieren una poltica de decisin en cada una de ellas. 2. Estados asociados: Cada etapa tiene cierto nmero de estados asociados con su inicio. 3. Poltica de decisin: El efecto de la poltica de decisin en cada etapa es transformar el estado actual en un estado asociado con el inicio de la siguiente etapa. 4. Diseo de solucin: El procedimiento de solucin est diseado para encontrar una poltica ptima para el problema completo, es decir, una receta para la poltica de decisin ptima en cada etapa para cada uno de los estados posibles. 5. Principio de optimalidad: a. Dado el estado actual, una poltica ptima para las etapas restantes es independiente de la poltica adoptada en etapas anteriores. b. La decisin inmediata ptima depende slo del estado actual y no de cmo se lleg ah. 6. Inicio de solucin: El procedimiento de solucin se inicia al encontrar una poltica ptima para la ltima etapa. 7. Relacin recursiva: Se dispone de una relacin recursiva que identifica la poltica ptima para la etapa n, dada la poltica ptima para la etapa n + 1.

8. Retroceso: Cuando se use esta relacin recursiva, el procedimiento de solucin comienza al final y se mueve hacia atrs etapa por etapa encontrando cada vez la poltica ptima para esa etapa hasta que se encuentra la poltica ptima desde la etapa inicial. La programacin dinmica (PD) es un procedimiento matemtico diseado principalmente para mejorar la eficiencia de clculo de problemas de programacin matemtica seleccionados, descomponindolos en subproblemas de menor tamao y por consiguiente, ms fciles de calcular. La programacin dinmica comnmente resuelve el problema en etapas, en donde en cada etapa interviene exactamente una variable de optimizacin (u optimizadora). Los clculos en las diferentes etapas se alcanzan a travs de clculos recursivos de manera que se genere una solucin ptima factible a todo el problema.

Los sutiles conceptos que se utilizan en PD junto con las notaciones matemticas poco conocidas son una fuente de confusin, en especial para un principiante. No obstante nuestra experiencia demuestra que la exposicin frecuente a formulaciones y soluciones de PD permitir a un principiante, con algo de esfuerzo, entender estos conceptos avanzados. Cuando sucede esto, la programacin dinmica se vuelve sorprendentemente sencilla y clara. Elementos del modelo de PD (ejemplo del presupuesto de capital)

Una corporacin recibe propuestas de sus tres plantas respecto a la posible expansin de sus instalaciones. La corporacin tiene un presupuesto de $5 millones para asignarlo a las tres plantas. A cada planta se le solicita someta sus propuestas indicando el costo total (c) y el ingreso total (R) para cada propuesta. En la tabla 1-1 se resumen los costos e ingresos (en millones de unidades monetarias). Las propuestas de costos cero se introducen para dar cabida a la posibilidad de no asignar fondos a plantas individuales. La meta de la corporacin es la de maximizar el ingreso total resultante a la asignacin de los $5 millones a las tres plantas.

Una manera directa, o quiz ingenua, de resolver el problema es a travs de una enumeracin exhaustiva. El problema tiene 3 x 4 x 2 = 24 posibles soluciones y algunas de ellas son infactibles por que requieren ms capital que el disponible ($5 millones). La idea de la enumeracin exhaustiva es la de calcular el costo total de cada una de las 24 combinaciones. Si ste no excede el capital disponible, se obtiene su ingreso total. La solucin ptima es la combinacin factible que produce el ms alto ingreso total. Por ejemplo, las propuestas 2, 3, y 1 de las plantas 1,2 y 3 cuestan $4 millones (<5) y producen un ingreso total de $14 millones. Por otra parte, la combinacin que comprenden las propuestas 3, 4 y 2 es infactible porque causa $7 millones.

Examinaremos las desventajas de la enumeracin exhaustiva. Cada combinacin define una poltica de decisin para todo el problema y por lo tanto, quiz no sea factible en trminos de clculo la enumeracin de todas las combinaciones posibles para problemas de tamao mediano y grande. Las combinaciones infactibles no se pueden detectar con anticipacin, lo cual nos conduce a que haya ineficiencia en trminos de clculo. La informacin disponible referente a combinaciones investigadas con anterioridad no se utilizan para eliminar combinaciones inferiores futuras. El algoritmo de PD que presentamos aqu est diseado para facilitar las dificultades que hemos notado.

Modelo de PD En la programacin dinmica, los clculos se realizan en etapas dividiendo el problema en subproblemas. Despus se considera por separado cada subproblema con el fin de reducir el nmero de operaciones de clculo. Sin embargo, como los problemas son independientes, debe idearse un procedimiento para alcanzar los clculos de manera que garantice que una solucin factible para cada etapa sea asimismo factible para todo el problema. Una etapa en PD se define como la parte del problema que posee un conjunto de alternativas mutuamente excluyentes de las cuales se seleccionar la mejor alternativa. En trminos del ejemplo del presupuesto de capital, cada planta define una etapa donde la primera, segunda y tercera etapas tienen tres, cuatro y dos alternativas, respectivamente. Estas etapas son interdependientes porque las tres plantas deben competir por un presupuesto limitado. Por ejemplo, elegir la propuesta 1 dejar $5 millones para las plantas 2 y 3, en tanto que la eleccin de la propuesta 2 de la planta 1 slo dejar $4 millones para las planta 2 y 3. La idea bsica de la PD consiste prcticamente en eliminar el efecto de la interdependencia entre etapas asociando una definicin de estado con cada etapa. Un estado se define normalmente como aquel que refleja la condicin (o estado, valga la redundancia) de las restricciones que alcanzan las etapas. En el ejemplo del presupuesto del capital, definimos los dos estados para las etapas 1, 2, y 3 como sigue:

X1 X2

= =

monto monto de

de

capital capital

asignado a

a las

la etapa

etapa 1 y

1 2

asignado

X3 = monto de capital asignado a las etapas 1, 2 y 3 ahora demostremos como se utilizan las definiciones de etapas y estados dadas para descomponer el problema del presupuesto del capital en tres subproblemas independientes desde el punto de vista del clculo.

Obsrvese primero que los valores de x1 y x2 no se conocen con exactitud, pero deben estar en alguna parte entre 0 y 5. De hecho, como los costos de las diferentes propuestas son discretos, x1 y x2 solo pueden tomar los valores 0, 1, 2, 3, 4 o 5. Por otra parte, x3, que es el capital total asignado a todas las etapas, en las tres es igual a 5. La forma en que resolvemos el problema consiste en comenzar con la etapa (planta) 1. Obtenemos decisiones condicionales para esa etapa que responde la pregunta siguiente: dado un valor especfico de x1 (= 0, 1, 2, 3, 4 o 5), cul ser la mejor alternativa (propuesta) para la etapa 1? Los clculos para la etapa 1 son directos. Dado el valor de x1, elegimos la mejor propuesta cuyo costo no exceda x1. En la tabla 1-2 se resumen las decisiones condicionales de la etapa 1. Tabla 1-2

Hasta ahora, no conocemos el valor exacto de x1. No obstante, para cuando lleguemos a la etapa 3, tendremos a disposicin esta informacin y, por lo tanto, el problema se reducir a la lectura de los registros indicados en la tabla. Ejemplo 1

En la tabla anterior, es posible que x1 = > 2 pueda ser ptima en la solucin final? [Resp .No. Porque x1 = > 2 presenta un rasgo excesivo para la etapa 1.] Ahora consideremos los clculos de la etapa 2. Estos clculos buscan tambin una solucin ptima condicional para la etapa 2 como funcin del estado x2. Pese a ello, difieren de los clculos de la etapa 1 en que el estado x2 define ahora el capital que se asignar a la etapa 1

a la etapa 2. Esta definicin garantizar que una decisin tomada para la etapa 2 ser automticamente factible para la etapa 1. La idea consiste ahora en escoger la alternativa en la etapa 2 dado x2 que genere el mayor ingreso para las etapas 1 y 2. La frmula que sigue resume la naturaleza de los clculos de la etapa 2.

Donde x1 = x2 (capital asignado a la alternativa dada de la etapa 2). La idea bsica de la frmula es que la eleccin especfica de una alternativa para la etapa 2 afectar el capital restante para la etapa 1, es decir, x1. Por lo tanto, al considerar todas las alternativas factibles de la etapa 2 consideramos automticamente todas las combinaciones que son posibles para las etapas 1 y 2. Ntese que el segundo trmino del segundo miembro de la ecuacin se obtiene directamente de la tabla resumen de la etapa 1. Ahora sealaremos los detalles de los clculos de la etapa 2.

La nica alternativa factible para la etapa 2 dado x2 = 0 es la propuesta 1 cuyo costo e ingresos son iguales a cero. Por lo tanto, la aplicacin de la frmula produce

Que corresponde a la propuesta 1 .

Para x2 = 1, slo tenemos una alternativa factible para la etapa 2; esto es, la propuesta 1, que cuesta (o tiene un costo de) cero y produce un ingreso de cero. Las propuestas restantes son infactibles porque tiene un costo por lo menos de 2. Por lo tanto tenemos:

Que corresponde a la propuesta 1 Ntese que x1 = x2 (costo de la propuesta 1) = 1 0 = 1. En la tabla 1-2 resumen de la etapa 1, encontramos que el mayor ingreso dado x1 = 1 es 5. Obsrvese que todo lo que necesitamos de los clculos de la etapa 1 es el mayor ingreso asociado con x1 dado. Dicho de otra manera, en realidad no nos interesa la propuesta especfica seleccionada en la etapa 1.

Aqu tenemos dos alternativas factibles: la propuesta 1 y 2 que cuestan 0 y 2 y producen ingresos de 0 y 8, respectivamente. Por consiguiente, los valores de x1 que corresponden a las propuestas 1 y 2 son 2 0 = 2 y 2 2 = 0. Los mayores ingresos corresponden de la etapa 1 dados x1 = 2 y x1 = 0 son 6 y 0, respectivamente. Por lo tanto, obtenemos:

Que corresponde a la propuesta 2.

Las alternativas factibles son las propuestas 1, 2 y 3. Los valores correspondientes de x1 son 3 0 = 3, 3 2 = 1 y 3 3 = 0, respectivamente. Por lo tanto:

Que corresponde a la propuesta 2.

Las alternativas factibles son las propuestas 1, 2, 3 y 4. Los valores correspondientes de x1 son 4 0 = 4, 4 2 =2, 4 3 = 1 y 4 4 =0, respectivamente, lo que nos lleva a obtener:

Que corresponde a las propuestas 2 y 3

Tenemos las mismas alternativas factibles que en x2 = 4. Los valores correspondientes de x1 son 5, 3, 2 y 1, respectivamente. En consecuencia

Que

corresponde

la

propuesta

Podemos resumir el clculo de la etapa 2 en la tabla 1-3:

tabla 1-3

Ahora consideremos la etapa 3. La frmula para determinar el mayor ingreso es similar a la de la etapa 2, salvo que x2 y x1 se sustituyen por x3 y x2. En forma anloga las etapas 2 y 1 se reemplazan por las etapas 3 y 2. Sin embargo, obsrvese que a diferencia de x1 o x2, x3 tiene ahora un solo valor especfico; es decir, x3 = 5. como la etapa 3 tiene dos propuestas cuyo costo no excede el lmite de 5, ambas propuestas son factibles. Los valores de x2 que corresponden a la propuesta 1 y 2 son 5 0 = 5 y 5 1 = 4, respectivamente. Mediante el uso de la tabla resumen 1-3 para la etapa 2 junto con x2, obtenemos entonces:

Que corresponde a 1 o 2 Ahora que hemos terminado de efectuar todas las operaciones podemos leer la solucin ptima en forma directa. Comenzando desde la etapa 3, podemos elegir la propuesta 1 o 2. Si elegimos la propuesta 1, que tiene un costo de 0, entonces x2 de la etapa 2 ser 5 0 = 5 de la tabla 1-3 de la etapa 2, vemos que la alternativa ptima dado x2 = 5 es la propuesta 4. Como la propuesta 4 de la etapa 2 cuesta 4, tenemos x1 = x2 4 = 5 4 = 1. Una vez ms, de la tabla 1-2, obtenemos la propuesta 2 como la alternativa ptima para la etapa 1.

Al combinar todas las respuestas de las tres etapas, una solucin ptima requiere de la seleccin de la propuesta 2 para la planta 1, la propuesta 4 para la planta 2 y la propuesta 1 para la planta 3. El costo total es 5 y el ingreso ptimo es 17. Se puede obtener otras dos soluciones considerando la propuesta ptima alternativa de la etapa 3. Ejemplo [Identifique los dos ptimos alternativos restantes del ejemplo 2 anterior]

[Resp. (3, 2,2) Y (2, 3,2)] Si el lector estudia detenidamente el procedimiento dado, advertir que los clculos son en realidad recursivos. Por lo tanto, los clculos de la etapa 2 estn basados en los de la etapa 1. En forma semejante, los clculos de la etapa 3 utilizan slo los clculos de la etapa 2. Dicho de otra manera, los clculos de una etapa actual utilizan informacin de resumen de la etapa inmediata inferior. Este resumen proporciona los ingresos ptimos de todas las etapas consideradas antes. Al utilizar este resumen nunca nos interesan las decisiones especficas tomadas en todas las etapas anteriores. En realidad las decisiones futuras se seleccionan en forma ptima sin recurrir a decisiones tomadas antes esta prioridad especial constituye el principio de optimidad, que es la base de la validez de los clculos de PD. Para expresar matemticamente la ecuacin recursiva, introducimos la notacin siguiente. Sean: Rj (kj) = ingreso de la alternativa kj en la etapa j

fj (xj) = rendimiento ptimo de las etapas 1,2,...y j dedo el estado xj Por lo tanto, escribimos las ecuaciones recursivas del ejemplo del presupuesto de capital como:

Existe un aspecto importante que necesitamos aclarar en relacin con la exactitud matemtica de esta ecuacin recursiva. Primero ntese que fj (xj) es funcin del argumento xj exclusivamente. Es necesario que el segundo miembro de la ecuacin recursiva se exprese en trminos de xj y no en trminos de xj-1. Esto se logra recordando que: Xj-1 = xj cj (kj) Donde cj (kj) es el costo de la alternativa kj en la etapa j.

Otro aspecto tiene que ver con la expresin de la factibilidad de las propuestas en forma matemtica. Especialmente, una propuesta kj es factible si su costo cj (kj) no excede el estado del sistema xj en la etapa j.

Tomando en cuenta estos dos aspectos, podemos escribir la ecuacin recursiva de PD como:

La implantacin de las ecuaciones recursivas suele efectuarse en forma tabular estndar como lo indican los clculos que siguen. Sin embargo, debemos sealar que siembre resulta tentador realizar los clculos tabulares en forma mecnica sin entender en realidad por qu se efectan. Para evitar caer en esta trampa, sugerimos que siempre se intente relacionar los registros de los clculos tabulares con los smbolos matemticos correspondientes de la ecuacin recursiva.

Etapa 1.

Etapa 2.

Etapa 3.

La solucin ptima puede leerse ahora directamente de las tablas anteriores comenzando con la etapa 3. Para x3 = 5, la propuesta optima es k3* = 2. Considrese k3*= 1en primer trmino. Como c3 (1) = 0, esto deja x2 = x3 (1) = 5 para las etapas 2 y 1. Ahora bien, la etapa 2 muestra que x2 = 5 produce k2 = 4. Como c2 (4) = 4, esto deja x1 =5 4 = 1. De la etapa 1 x1 = 1 de k1* = 2 por lo tanto una combinacin optima de propuestas para las etapas 1, 2 y 3 es (2, 4,1). La figura 1 ilustra cmo se determinan los ptimos alternativos en forma sistemtica. figura 1.

Ecuacin Recursiva de Retroceso. En la seccin 1.1.2 los clculos se efectan en el orden

Este mtodo de clculo de conoce como procedimiento de avance porque los clculos avanzan de la primera a la ltima etapa. Sin embargo, cuando el lector estudie la mayora de las obras dedicadas a la programacin dinmica advertir que la ecuacin recursiva se construye de manera que los clculos comienzan en la ltima etapa y despus regresan hacia la etapa 1. Este mtodo recibe el nombre de procedimiento de retroceso.

La diferencia principal entre los mtodos de avance y de retroceso ocurre en la forma en que definimos el estado del sistema. Para ser especficos, volveremos a considerar el ejemplo del presupuesto de capital. Para el procedimiento de retroceso, definimos los estados yj como: y1 y2 = = monto monto de de capital capital asignado asignado a a las las etapas 1, 2 2 y y 3 3

etapas

y3 = monto de capital asignado a la etapa 3 Para apreciar la diferencia entre la definicin de los estados xj y yj en los mtodos de avance y retroceso, las dos definiciones se resumen en forma grfica en la figura 2. figura 2.

La ecuacin recursiva de retroceso se escribe, por tanto como:

El orden de los clculos de las etapas en la manera siguiente: Etapa 3:

. Ahora los clculos se realizan de

Etapa 2.

Etapa 1.

La solucin ptima se determina comenzando con y1 en la etapa 1 y continuando a y3 en la etapa 3. Naturalmente, las soluciones son idnticas a las del mtodo anterior (verifquese esto). Quiz el lector se pregunte por qu se necesite la formulacin recursiva del todo, en particular cuando la formulacin de avance parece ser ms lgica y ciertamente ms directa. Esta conclusin es verdadera para el ejemplo anterior, ya que la asignacin especfica de etapas a las plantas no es secuencial. A este respecto, las formulaciones de avance y retroceso son en realidad equivalentes en trminos de clculo. Sin embargo, hay situaciones donde habr alguna diferencia, en la eficiencia del clculo, segn la formulacin que se utilice. Esto sucede en particular en problemas en que interviene la toma de decisiones conforme transcurre el tiempo, como la planeacin del inventario y de la produccin. En este caso las etapas se designan con base en el estricto orden cronolgico de los periodos que ellas presentan y la eficiencia de los clculos depender de si se utiliza la formulacin de avance o de retroceso. Aparentemente, la experiencia con los clculos de PD ha demostrado que las formulaciones de retroceso suelen ser ms eficientes. De hecho la mayora de las obras sobre programacin dinmica se presentan en trminos de la formulacin de retroceso sin importar si contribuye o no a la eficiencia de los clculos. Siguiendo esta tradicin, todo el material que se presente en las secciones restantes de esta unidad estar basado en la formulacin de retroceso. La formulacin de avance se emplear nicamente cuando se garantice una comparacin o cuando la formulacin antes mencionada ofrezca ventajas especiales.

PROBLEMA DE LA MOCHILA El problema de la mochila recoge una situacin que se presenta con cierta frecuencia en los mbitos econmicos e industrial (cantidad mxima de recursos econmicos de los que se dispone) y donde la utilidad de los objetos seleccionados se equipara a un beneficio econmico por adquirir o llevar a cabo ciertas acciones. El problema de la mochila, tambin llamado Knapsack problem (KP) es un problema de optimizacin. Modela una situacin anloga al llenar una mochila, incapaz de soportar ms de un peso determinado, con todo o parte de un conjunto de objetos, cada uno con un peso y valor especficos. Los objetos colocados en la mochila deben maximizar el valor total sin exceder el peso mximo. Si bien la formulacin del problema es sencilla, su resolucin es ms compleja. Algunos algoritmos existentes pueden resolverlo en la prctica para casos de un gran tamao. Sin embargo, la estructura nica del problema, y el hecho de que se presente como un subproblema de otros problemas ms generales, lo convierten en un problema frecuente en la investigacin. Mochila Un excursionista planea salir de campamento. Hay cinco artculos que desea llevar consigo pero entre todos sobrepasan las 60 libras que considera puede cargar. Para ayudarse en la seleccin ha asignado un valor a cada artculo en orden ascendente de importancia:

Artculo

Peso libras 52 Valor

23 35 17 5

100 60 55 55 20

Que artculos deber llevar para maximizar el valor total sin sobrepasar la restriccin del peso.

Planteamiento:

xi = 0 NO lleva el artculo i xi = 1 SI lleva el articulo i

F.O.:

Max

z = 100x1 + 60x2 + 55x3 + 55x4 + 20x5

Sujeto a: 52x1 + 23x2 + 35x3 + 17x4 + 5x5 <= 60 xi {0,1} i = 1,5 Explicacin de restricciones: La restriccin dice que solamente se pueden cargar 60 libras, mientras que la funcin objetivo busca maximizar el valor de los artculos llevados en la mochila. Tipo de planteamiento: Este es un problema tipo mochila en el cual se debe escoger solamente algunos artculos determinados, tomando en cuenta el valor de cada artculo y su peso. Este planteamiento es de tipo binario, en el cual el 0 significa que no se va a llevar ese artculo y 1 que si se va a llevar ese artculo. Soluciones:

x1 = 1 x2 = 0 x3 = 0 x4 = 0 x5 = 1

z = 120

Explicacin de resultados: El resultado dice que lo ptimo es llevar el artculo 1 y el artculo 5 los cuales suman un peso de 57 libras, con lo cual se llevan 3 libras menos del mximo posible y tienen en conjunto un valor de 120

PROBLEMA DE LA DILIGENCIA Un caza fortunas desea ir de Missouri a California en una diligencia, y quiere viajar de la forma ms segura posible. Tiene los puntos de salida y destino conocidos, pero tiene mltiples opciones para viajar a travs del territorio. Se entera de la posibilidad de adquirir seguro de vida como pasajero de la diligencia. El costo de la pliza estndar (cij ) se muestra continuacin:

Este problema se refiere a un vendedor mtico que tuvo que viajar hacia el oeste por diligencia, a travs de tierras indias hostiles, aproximadamente hace 125 aos. Aun cuando su punto de partida y destino eran fijos, tena un nmero considerable de opciones para elegir, qu estados recorrer en su ruta.

Cul es la ruta que minimiza el costo total dela pliza de seguro? Algunas posibles soluciones: 1. Enumeracin exhaustiva: Enumerar todas las rutas posibles, calcular su costo y elegir la de menor valor. En total son 18 2. Elegir la ruta ms barata en cada etapa. Esta solucin no conduce al ptimo global. Un pequeo sacrificio en una etapa puede permitir mayores ahorros ms adelante. 3. Utilizando la Programacin dinmica. Estrategia de solucin: Un problema complejo es desagregado en problemas simples que se resuelven etapa por etapa.

le faltara una jornada de viaje. Por P.D la solucin sera entonces ir desde el estado actual (cualquiera que sea) y llegar a su destino final (estado J) al costo cij. As encontramos la solucin ptima del lugar al que debe dirigirse teniendo en cuenta la informacin de la Iteracin anterior.

Repblica Bolivariana de Venezuela Ministerio del poder popular para la Educacin Superior Instituto Universitario Politcnico Santiago Mario Extensin Barinas

Programacin Dinmica
Bachilleres: Mejias Jos C.I. 21170106 Escuela: 47 Seccin: S0

Barinas, Julio de 2013

You might also like