Está en la página 1de 8

PROGRAMACIN DINMICA DETERMINISTA ASIGNACION DE RECURSOS

Willfredo Valbuena Amado1,2, Cod. 273208, wvalbuenaa@unal.edu.co Universidad Nacional de Colombia. Bogot D. C., Colombia Resumen: Los problemas de asignacin de recursos, en los que se debe asignar una cantidad limitada de recursos entre varias actividades, se pueden resolver con frecuencia con programacin dinmica. Abstrac: The problems of allocation of resources, in which a limited amount of resources between several activities is due to assign, can be solved frequently with dynamic programming Keywords: Recursos. 1. INTRODUCCION La programacin dinmica (PD) determina la solucin ptima de un problema de n variables descomponindola en n etapas, con cada etapa incluyendo un subproblema de una sola variable. La ventaja en el aspecto de los clculos es que optimizaremos una sola variable, en vez de subproblemas de n variables. La principal contribucin de la PD es el principio de optimalidad, un marco de referencia para descomponer el problema en etapas. La programacin dinmica es una tcnica que se puede aplicar para resolver muchos problemas de optimizacin. La mayor parte de las veces, la programacin dinmica obtiene soluciones con un avance en reversa, desde el final de un problema hacia el principio con lo que un problema grande y engorroso se convierte en una serie de problemas ms pequeos y ms tratables. 1.1 NATURALEZA RECURSIVA DE LOS CLCULOS EN LA PD Los clculos en la PD se hacen recursivamente, en el sentido de la solucin ptima de un subproblema se utiliza como una entrada para el siguiente subproblema. Para el momento en que resolvamos el ltimo subproblema, tendremos a mano la solucin ptima para todo el problema. La forma en la cual se hacen los clculos recursivos depende de la forma en la cual descomponemos el problema original. En particular, los subproblemas por lo comn se unen por medio de algunas restricciones comunes. A medida que avanzamos de un subproblema a otro, debemos dar razn de la variabilidad de estas restricciones. Programacin, Dinmica, Deterministica, Asignacin,

2. CARACTERSTICAS DE LAS APLICACIONES DE PROGRAMACIN DINMICA A continuacin veremos una explicacin sobre las caractersticas que son comunes en la mayor parte de las aplicaciones de la programacin dinmica. 2.1 CARACTERSTICA 1 El problema se puede dividir en etapas; cada etapa requiere una decisin. En muchos problemas de programacin dinmica, la etapa es la cantidad de tiempo que pasa desde el inicio del problema, en ciertos casos no se necesitan decisiones en cada etapa. 2.2 CARACTERSTICA 2 Cada etapa tiene un nmero de estados asociados con ella. Por estado se entiende la informacin que se necesita en cualquier etapa para tomar una decisin ptima. 2.3 CARACTERSTICA 3 La decisin tomada en cualquier etapa indica cmo se transforma el estado en la etapa actual en el estado en la siguiente etapa. En muchos problemas, una decisin no determina con certeza el estado de la siguiente etapa; en lugar de ello, la decisin actual slo determina la distribucin de probabilidad del estado en la etapa siguiente. 2.4 CARACTERSTICA 4 Dado el estado actual, la decisin ptima para cada una de las etapas restantes no debe depender de estados previamente alcanzados o de decisiones previamente tomadas. A esta idea se le conoce como principio de optimalidad. 2.5 CARACTERSTICA 5 Si los estados del problema se han clasificado en uno de T etapas, debe haber una frmula recursiva que relacione el costo o recompensa durante las etapas t, t+1,, T con el costo o recompensa de las etapas t +1, t +2,, T En esencia, la frmula recursiva formaliza el procedimiento de marcha atrs.

2.6 Algunas Aplicaciones De La Programacin Dinmica Determinstica Modelo De La Ruta Ms Corta Modelo De Volumen-Carga Mochila Modelo Del Numero De Empleados Modelo De Reemplazo De Equipos Modelo De Asignacin De Recursos Modelo De Inventarios

3. PROBLEMAS DE ASIGNACIN DE RECURSOS Los problemas de asignacin de recursos, en los que se debe asignar una cantidad limitada de recursos entre varias actividades, se pueden resolver con frecuencia con programacin dinmica. Recuerde que hemos resuelto esos problemas mediante programacin lineal. Para usar programacin lineal para asignar recursos, se deben hacer tres hiptesis: 3.1. Hiptesis 1 La cantidad de recursos asignados a una actividad puede ser cualquier nmero no negativo. 3.2. Hiptesis 2 El beneficio obtenido de cada actividad es proporcional a la cantidad de recursos asignados a la actividad. 3.3. Hiptesis 3 El beneficio obtenido con ms de una actividad es la suma de los beneficios obtenidos con las actividades individuales. An si no son vlidas las hiptesis 1 y 2, la programacin dinmica se puede usar para resolver con eficiencia los problemas de asignacin de recursos cuando es vlida la hiptesis 3 y cuando la cantidad de recursos asignados a cada actividad es elemento de un conjunto finito.

3.4 PROBLEMA GENERAL DE ASIGNACION DE RECURSOS Suponga que tenemos w unidades de un recurso disponible, y T actividades a las que puede asignar este recurso. Si la actividad t se realiza en un nivel xt (suponemos que xt debe de ser un nmero no negativo), entonces la actividad t usa gt(xt) unidades del recurso, y se obtiene el beneficio rt(xt). El problema de determinar la asignacin de recursos que maximiza el beneficio total, sujeto a la disponibilidad de recurso puede formular como:

. (1) Donde xt debe de ser el elemento de {0,1,2.}. Para resolver (1) con programacin dinmica definimos a ft(d) como el beneficio mximo que se puede

obtener de las actividades t, t+1, ..,T. podemos generalizar las formulas recursivas escribiendo.

0 para toda

(2) Donde xt debe de ser entero no negativo que cumple con gt(xt) d. Sea xt(d) cualquier valor de xt que alcance ft(d). Para usar la Ecs. (2) para determinar una asignacin optima de recursos a las actividades 1,2,T comenzamos por determinar todas las fT(.) y las xT(.).

3.5 EJEMPLO: Finco tiene 6000 dlares para invertir, y hay disponible tres inversiones. Si se invierte dlares dj dlares (en miles) en la inversin j, entonces se obtiene un valor presente neto, igual a rj (dj ), donde la rj(dj ) como sigue: 7 3 4 0 0 2 7 5 0 0 0 0 0

La cantidad colocada en cada inversin debe ser un mltiplo exacto de 1000 dlares. Para maximizar el valor presente neto que se obtiene en las inversiones, cmo debe asignar Finco los 6000 dlares? Solucin El inters de cada inversin no es proporcional a la cantidad invertida. Por ejemplo, 16= r1 (2) 2rj (1) =18. Entonces, no se puede usar la programacin lineal para determinar una solucin ptica a este problema. Matemticamente, se puede expresar el problema de Finco como sigue:

. entero no negativo

6 1,2,3.

Naturalmente, si las rj (dj ) fueran lineales, tendramos un problema como los de la mochila. Para formular el problema de Finco como de programacin dinmica, comenzaremos identificndola etapa. La etapa se debe escoger de tal modo que cuando quede una etapa el problema sea fcil de resolver. Entonces, en vista de que se ha resuelto el problema para el caso en el que queda una etapa, debe sr fcil resolverlo cuando queden dos etapas, y as sucesivamente. Es evidente que sera fcil resolver un problema en el cual solo de dispusiera una de una inversin, por lo que definiremos la etapa t como representativa de un caso en el que los fondos se deban asignara las inversiones t , t + 1,,3. Para una etapa dada, Qu debemos conocer para determinar la cantidad ptica por invertir? Simplemente cunto dinero queda disponible para las inversiones t, t+1,,3. As, definiremos el estado en cualquier etapa como la cantidad de dinero, en miles, disponible para inversiones t, t+1,,3. Como nunca podremos tener ms de 6000 dlares disponible, los estados disponibles en cualquier etapa son 0,1,2,3,4,5 y 6. Definiremos ft (dt) como el valor presente neto mximo (VPN) que se puede obtener invirtiendo dt miles de dlares en la inversiones t, t+1,,3. Tambin definiremos a xt (dt ) como la cantidad que se debe invertir en t ara alcanzar ft (dt). Iniciamos avanzando hacia atrs y calculamos f3(0),f3(1),,f3(6), y a continuacin determinamos f2(0),f2(1),,f2(6). Como se dispone de 6000 dlares para invertir en 1,2,3, terminamos los clculos al llegar f1(6). Entonces volvemos sobre nuestros pasos y determinamos la cantidad que se debera asignar a cada inversin. Clculos De La Etapa 3. Primero determinamos f3(0),f3(1),,f3(6). Vemos que f3(d3) se logra invirtiendo todo el dinero disponible (d3) en la inversin 3. 0 1 2 3 4 5 6 0 9 13 17 21 25 29 0 1 2 3 4 5 6 0 1 2 3 4 5 6

Clculos De La Etapa 2. Para determinar f2(0),f2(1),,f2(6). Vemos todas las cantidades posibles que se puedan colocar en la inversin 2. Para determinar

f2(d2), sea x2 la cantidad invertida en 2. Entonces, se obtendr un VPN de r2(x2) de la inversin 2, y un VPN igual a f3(d2-x2) de la inversin 3. Recuerde el principio de optimalidad. Como x2 se debe de escoger para minimizar el valor presente neto ganado con las inversiones 2 y 3 escribimos.

(3) En la que x2 debe ser elemento de {0,1,,d2}. Los clculos para f2(0),f2(1),,f2(6) y x2(0), x2(1),, x2(6) se presentan en la tabla siguiente. d2 0 1 1 2 2 2 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 6 x2 0 0 1 0 1 2 0 1 2 3 0 1 2 3 4 0 1 2 3 4 5 0 1 2 3 4 5 6 r2(x2) 0 0 10 0 10 13 0 10 13 16 0 10 13 16 19 0 10 13 16 19 22 0 10 13 16 19 22 25 f3(d2-x2) 0 9 0 13 9 0 17 13 9 0 21 17 13 9 0 25 21 17 13 9 0 29 25 21 17 13 9 0
VPN DE INVERSIONES 2,3

0 9 10* 13 19* 13 17 23* 22 16 21 27* 26 25 19 25 31* 30 29 28 22 29 35* 34 33 32 31 25

Clculos De La Etapa 1. Segn la Ec. (3), escribimos 6 6

d1 6 6 6 6 6 6 6

x1 0 1 2 3 4 5 6

r1(x1) 0 9 16 23 30 37 44

f2(6-x1) 35 31 27 23 19 10 0

VPN DE INVERSIONES 1,3

35 40 43 46 49* 47 44

Determinacin De La Asignacin ptima De Recursos. Como x1(6)*=49, la mayor ganancia en la etapa 1 Finco invierte 4000 dlares en la inversin 1, esto deja 2000 para las inversiones 2 y 3. Por lo tanto se buscar en la tabla la inversin de 2 en la etapa 2 con el mayor beneficio que es x2(2)*=19, 1000 dlares en la inversin 2 por lo tanto quedan 1000 para la inversin 3; x1(1) = 1; por lo tanto Finco puede alcanzar un valor presente mximo de 49000 dlares invirtiendo 4000 en la inversin 1 y 1000 dlares en la inversin 2 y 3.

Representacin En Forma De Red Este problema tiene un representacin como red equivalente a determinar la ruta ms larga de (1,6) a (4,0); por ejemplo el arco que uno a los nodos (2,4) y (3,1) tiene una longitud r2(3) = 16000 dlares que corresponde al invertir 3000 dlares en la inversin 2. Ntese que todos los pares de nodos en las etapas adyacentes estn unidos con arcos. Por ejemplo, no hay que una los nodos (2,4) y (3,5). Despus de todo si usted tiene solo tiene 4000 dlares disponibles para invertir en 2 y 3 Cmo es posible tener 5000 dlares para la inversin 3? Segn los clculos, vemos que la ruta ms larga desde (1,6) a (4,0) es la (1,6)-(2,2)-(3,1)(4,0)

2,6

3,6

2,5

3,5

2,4

3,4

1,6

2,3

3,3 4,0

6
2,2 3,2

2,1

3,1

2,0

3,0

4. BIBLIOGRAFIA 1. Introduccin a La Investigacin De Operaciones, Sexta Edicin, Hamdy a. Taha, 1997 2. Investigacin de operaciones, Wayne L. Winston

También podría gustarte