Vous êtes sur la page 1sur 15

1.

Programacin Dinmica. 1.1. Caractersticas y ejemplos de modelos 1.1.1. Caractersticas de los problemas de programacin dinmica: etapas, estados, frmula recursiva, programacin en avance y en retroceso.

CARACTERISTICAS GENERALES DE LOS PROBLEMAS DE PROGRAMACION DINAMICA.

El problema de la diligencia es un prototipo literal de los problemas de programacin dinmica. Por tanto una manera de reconocer una situacin que se puede formular como un problema de programacin dinmica es poder identificar una estructura anloga a la del problema de la diligencia. CARACTERISTICAS BASICAS: 1.- El problema se puede dividir en etapas que requieren una poltica de decisin en cada una de ellas. 2.- Cada etapa tiene cierto nmero de estados asociados con su inicio. Los estados son las distintas condiciones posibles en las que se puede encontrar el sistema en cada etapa del problema. 3.- 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.- El procedimiento de solucin est diseado para encontrar una poltica ptima para el problema completo. 5.- Dado el estado actual, una poltica ptima para las etapas restantes es independiente de la poltica adoptada en etapas anteriores. Este es el principio de optimalidad para programacin dinmica. 6.- El procedimiento de solucin se inicia al encontrar la poltica ptima para la ltima etapa. 7.- Se dispone de una relacin recursiva que identifica la poltica ptima para la etapa n, dada la poltica ptima para la etapa n+1. La forma precisa de relacin recursiva difiere de un problema a otro de programacin dinmica, pero usaremos una notacin anloga a la siguiente: N = nmero de etapas. n = etiqueta para la etapa actual ( n = 1,2,,N)

sn = estado actual para la etapa n xn = variable de decisin para la etapa n xn* = valor ptimo de xn (dado sn) fn(sn,xn) = contribucin a la funcin objetivo de las etapas n, n+1,,N, si el sistema se encuentra en el estado sn en la etapa n, la decisin inmediata es xn y en adelante se toman decisiones ptimas. fn*(sn) = fn(sn,xn*) La relacin recursiva siempre tendr la forma: fn*(sn) = mn fn(sn,xn) fn*(sn) = max fn(sn,xn) 8.- Cuando se usa esta relacin recursiva, el procedimiento de solucin comienza al final y se mueve hacia atrs etapa por etapa, hasta que 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 = monto de capital asignado X2 = monto de capital asignado a X3 = monto de capital asignado a las etapas 1, 2 y 3

a las

la etapa

etapa 1 y

1 2

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 a la Podemos resumir el clculo de la etapa 2 en la tabla 1-3: tabla 1-3

propuesta

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 [Resp. (3, 2,2) Y (2, 3,2)] 2 anterior]

alternativos

restantes

del

ejemplo

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 fj (xj) = rendimiento ptimo de las etapas 1,2,...y j dedo el estado xj

la

etapa

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 = monto de capital asignado a las etapas 1, y2 = monto de capital asignado a las etapas y3 = monto de capital asignado a la etapa 3 2 2 y y 3 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.

FUENTE: http://industrial.x10.mx/reticula/7Inv%20de%20operaciones%20II/unidad%201/tema%201.1.ht m

Vous aimerez peut-être aussi