Está en la página 1de 15

Ing. Miguel Jimnez C. M.Sc.

2






S
4
= S
3
- D
3
S
3
= S
2
- D
2 S
2
= S
1
- D
1
S
1
=6
Regin 1

Regin 2

Regin 3
D
1
Cuntos agentes
asignar?
D
2
Cuntos agentes
asignar?
D
3
Cuntos agentes
asignar?
R
1
(D
1,
S
2
) R
2
(D
2,
S
3
) R
3
(D
3,
S
4
)





SOLUCIONARIO

Sobre Programacin Dinmica
por

Ing. Miguel Jimnez Carrin M.Sc
mjimenezc@speedy.com.pe
jim_car_miguel@hotmail.com

Modelo de la Diligencia
Asignacin de Recursos
El modelo de la mochila
Produccin e Inventario
Confiabilidad

















2004















En algn punto de la lnea de desarrollo descubrimos
lo que somos en realidad, y luego tomamos nuestra verdadera
decisin por la cual somos responsables. Tome esa decisin
principalmente por usted, ya que nunca se puede vivir realmente
la vida de otra persona.


Eleanor Roosevelt

Programacin Dinmica.
PROGRAMACIN DINMICA

La programacin dinmica es un mtodo para resolver ciertos problemas de programacin
matemtica, cuya caracterstica de estos problemas es que los modelos matemticos que los
representan son complejos y por tanto requieren mucho procesamiento de cmputo para encontrar
su solucin, adems pueden ser divididos en problemas ms pequeos. Esta caracterstica del
problema de dividirse en subproblemas es aprovechada por la programacin dinmica para
encontrar la solucin.
La forma de operar de la programacin dinmica es dividir el problema en problemas ms
pequeos llamados subproblemas, luego inicia el proceso de solucin por etapas; en donde cada
etapa del proceso resuelve un subproblema y al finalizar con todas las etapas, el problema es
completamente resuelto. Entre una etapa y la siguiente existe una liga que permite el nexo entre
etapas esta liga se llama funcin recursiva.

Los ejemplos que siguen muestran el proceso de solucin describiendo al mismo tiempo la
notacin de la funcin recursiva, explicndose lo esencial y las caractersticas particulares de cada
problema:

Caso1: Problema de la Diligencia
1) Este problema est referido a encontrar la ruta ptima (ruta mnima o ruta ms confiable), para
viajar desde un punto llamado nodo inicial o fuente hacia otro llamado nodo final o destino a travs
de una red de caminos que los conecta dados los retornos (costos beneficios tiempo, etc),
asociados con los arcos o ramas de la red.


















En este caso lo primero que hay que reconocer es, que al tomar una decisin para decidir que ruta
seguir en forma general para todo el problema, involucra analizar toda la red esto hace que el
problema sea complejo, por cuanto del nodo 1 al 14 existen mltiples alternativas en las que se
encuentran varias ramas en la ruta. En segundo lugar, ver si es posible dividir el problema en
subproblemas o etapas de manera que la decisin en cada subproblema sea ms fcil; en este
sentido se ha dividi el problema en 5 etapas, de la 1 a la 5 conforme se aprecia en la parte inferior
de la red. Obsrvese que es ms fcil tomar una decisin en cada etapa pues la decisin ser
directa; por ejemplo si estamos en la etapa 3 (subproblema 3) al inicio nos podemos encontrar en
los nodos 5 , 6 7 y podemos ir a los nodos 8, 9, 10 11 la decisin es inmediata, pues solo existe
una rama en cada alternativa. Esta caracterstica es importante reconocer para tomar la decisin
de aplicar la metodologa de la programacin dinmica.
5 4 3 2 1
3
4
6
3
9
9
11
2
8
6 9
11
2 5
8
3
4
6
7
9
10
1
11
12
13
14
5
2
3
8
4
6
3
5
4
7
8
5
Ing. Miguel Jimnez C. M.Sc.

4
)] ( ) , ( [ ) (
1
*
1 1
*
+ + +
+ =
n n n n n n n
S f S D R g S f
)] ( ) , ( [ ) (
1 5
*
1 5 1 5 5 5
,
5
*
5
1 5 5
+ + +
+ =
+
S f S D R Min S f
S D
) (
4
*
4
S D
) (
5
*
5
f ) (
5
*
5
D
) (
4
*
4
S f

Ahora es posible usar la funcin general de la programacin dinmica y luego representar esa
funcin en trminos del problema como sigue:

Funcin Recursiva
General de PD.


Funcin Recursiva
para el Problema

Donde:

Representa la distancia por tomar la decisin D
n
en la etapa n, para pasar
del estado S
n
al estado S
n+1


Representa el mejor valor en la etapa n+1, cuando el estado es S
n+1

Representa el mejor valor en la etapa n, cuando el estado es S
n

Nota: debe notar que tanto S
n
, como S
n+1
toman un conjunto de valores, por ejemplo S
3
toma los valores:
(5, 6 y 7) y S
3+1
= S
4
, toma los valores (8, 9, 10 y 11).

Utilizando la forma tabular de la PD tenemos, para las diferentes etapas:

Para n = 5




S S
DECISIN (D
5
) Estado
S
5 14

12 4 4 14
13 3 3 14






Para n = 4


)] ( ) , ( [ ) (
1
*
1 1
,
*
+ + +
+ =
n n n n n
S D
n n
S f S D R Min S f
n n
=
+
) , (
1 n n n
S D R
=
+ +
) (
1
*
1 n n
S f
= ) (
*
n n
S f
)] ( ) , ( [ ) (
5
*
5 5 4 4
,
4
*
4
5 4
S f S D R Min S f
S D
+ =
DECISIN (D
4
) Estado
S
4 12 13

8 9 + 4 =13 - 13 12
9 3 + 4 = 7 6 + 3 = 9 7 12
10 7 + 4 = 11 8 + 3 = 11 11 12,13
11 - 5 + 3 = 8 8 13




3
Programacin Dinmica.
) (
3
*
3
S ) (
3
*
3
S
) (
1
*
1
S f
) (
1
*
1
S D
) (
2
*
2
S
) (
2
*
2
S D
D f
f
Para n = 3



DECISIN (D
3
) Estado
S
3
8 9 10 11
5 3 + 13 =16 2 + 7 = 9 - - 9 9
6 8 + 13 = 24 11 + 7 = 18 5 + 11 = 16 9 + 8 = 17 16 10
7 - - - 4 + 8 = 12 12 11



Para n=2




DECISIN (D
2
) Estado
S
2 5 6 7


2 11+9=20 - - 20 5
3 8+9=17 4+16=20 9+12=21 17 5
4 - 6+16=22 6+12=18 18 7


Para n=1




DECISIN (D1) Estado
S
1 2 3 4


1 5+20=25 2+17=19 3+18=21 19 3


cmo se obtiene el recorrido mas corto?

Esto se logra comenzando desde la etapa 1, de la siguiente manera:

Si se est en el nodo 1 la decisin ptima es ir al nodo 3, luego se pasa a la etapa 2.
Si se est en el nodo 3 la decisin ptima es ir al nodo 5, luego se pasa a la etapa 3.
Si se est en el nodo 5 la decisin ptima es ir al nodo 9, luego se pasa a la etapa 4.
Si se est en el nodo 9 la decisin ptima es ir al nodo 12, luego se pasa a la etapa 5
Si se est en el nodo 12 la decisin ptima es ir al nodo 14.
.
La distancia total recorrida se obtiene sumando las distancias de las ramas involucradas en el
recorrido en este caso es: 1 3 5 9 12 14 2 + 8 + 2 + 3 + 4 = 19.






)] ( ) , ( [ ) (
4
*
4 4 3 3
,
3
*
3
4 3
S f S D R Min S f
S D
+ =
)] ( ) , ( [ ) (
3
*
3 3 2 2
,
2
*
2
3 2
S f S D R Min S f
S D
+ =
)] ( ) , ( [ ) (
2
*
2 2 1 1
,
1
*
1
2 1
S f S D R Min S f
S D
+ =
Ing. Miguel Jimnez C. M.Sc.

6
Caso 2: Asignacin de recursos con retornos tabulados

2) Problema de Presupuesto de Capital
Una compaa tiene tres fbricas existentes, y en cada una se est considerando una posible
expansin. El capital total asignado para expansin es 5 millones de soles. El nmero de planes
alternativos para la fbrica i,(i = 1,2,3) incluyendo la posibilidad de ninguna expansin, el costo
esperado adicional de cada alternativa para la fbrica i y el retorno correspondiente se tabulan en
la siguiente tabla.

Fbrica 1 Fbrica 2 Fbrica 3
Alternativa C R C R C R
1 0 0 0 0 0 0
2 1 5 2 8 1 3
3 2 6 3 9 - -
4 - - 4 12 - -

El objetivo del problema de decisin es seleccionar un plan factible para cada fbrica i tal que se
maximice el ingreso total resultante.

La solucin de este problema siguiendo la metodologa de programacin dinmica es dividir el
problema en tres etapas en el cual cada etapa constituye una fbrica, el estado del sistema es el
dinero disponible para cada etapa o fbrica y la decisin que se toma en cada etapa es cuanto
invertir?. Procediendo de la siguiente manera:
Se grafica las etapas del problema para una mejor ilustracin y se aplica el mtodo de solucin de
derecha a izquierda.

S4=S3-D3
S3=S2-D2 S2=S1-D1 S1= 5

Fbrica 1

Fbrica 2

Fbrica 3
R
1
(D1,S2) R
2
(D2,S3) R
3
(D3,S4)





Cunto Invertir? Cunto Invertir? Cunto Invertir?


R
n
(D
n
,S
n
) : representa la confiabilidad por tomar la decisin D
n
(instalar 1, 2, 3); unidades en
paralelo en la etapa n ( componente 1, 2 3) para pasar del estado S
n
(dinero disponible al inicio
de la etapa n) al estado S
n+1
.

Para n=3 (fbrica 3)

*
3
(S
3
) = Max [R
3
(D
3
,S
4
) +
*
4
(S
4
)]
0 D
3
1
0 S
3
5
Decisin (D
3
)
Estado S
3
0 1
*
3
(S
3
) D*
3
(S
3
)
0 0 - 0 0
1 0 3 3 1
2 0 3 3 1
3 0 3 3 1
4 0 3 3 1
5 0 3 3 1



5
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

8
R
n
(D
n
,S
n
) : representa las ventas por tomar la decisin D
n
(asignar 1, 2, 3, 4); agentes en la
etapa n ( regin 1, 2 3) para pasar del estado S
n
(agentes disponibles al inicio de la etapa n) al
estado S
n+1
.
Para n =2 (fbrica 2)

*
2
(S
2
) = Max [R
2
(D
2
,S
3
) +
*
3
(S
3
)]
0 D
2
4

0 S
2
5
Decisin (D
2
)
Estado S
2
0 2 3 4
*
2
(S
2
) D*
3
(S
2
)
0 0+0=0 ---- ---- ---- 0 0
1 0+3=3 ---- ---- ---- 3 0
2 0+3=3 8+0=8 ---- ---- 8 2
Solucin
Obsrvese que solo se cuenta con 6 agentes y que por lo menos debe asignarse uno a cada
regin, lo que significa que cada ves que se evala una regin debe de los seis reservarse 2 para
las otras dos regiones con lo cual lo mximo disponible para cada regin es 4, por eso en la tabla
se tiene asignaciones de 1 a 4. El diagrama de bloques es:
3 0+3=3 8+3=11 9+0= 9 ---- 11 2
4
S
4
= S
3
- D
3
S
3
= S
2
- D
2 S
2
= S
1
- D
1
S
1
=6
Regin 1 Regin 2 Regin 3
R
1
(D
1,
S
2
)
3
) R
3
(D
3,
S
4
) R
2
(D
2,
S
D
3
Cuntos agentes
asignar?
D
2
Cuntos agentes
asignar?
D
1
Cuntos agentes
asignar?
0+3=3 8+3=11 9+3=12 12+0=12 12 3, 4
5 0+3=3 8+3=11 9+3=12 12+3=15 15 4


Para n = 1 (fbrica 1)

*
1
(S
1
) = Max [R
1
(D
1
,S
2
) +
*
2
(S
2
)]
0 D
1
1
0 S
1
5
Decisin (D
1
)
Estado S
1
0 1 2
*
1
(S
1
) D*
1
(S
1
)
5 0+15=15 5+12=17 6+11=17 17 1

Ahora antes de evaluar la funcin recursiva se deben determinar para cada etapa los intervalos de
variacin tanto de la decisin como del estado de los agentes disponibles, as tenemos:
El problema tiene soluciones ptimas alternativas:


Etapa 1:
Invertir 1 Milln de soles en la fbrica 1 5
1 D
1
4 o se decide asignar 1 agente que es el mnimo o se asigna hasta 4 que es el mximo.
Invertir 3 Millones de soles en la fbrica 2 9
3 S
1
6 la cantidad mnima para del recurso vendedores que deben haber para todas las etapas
Invertir 1 Milln de soles en la fbrica 3 3 17
y cumplir con los requisitos mnimos es 3; pues son 3 regiones, dado que por lo menos
debe asignarse 1 vendedor en cada regin; y lo mximo que debe asignarse para las
tres etapas es lo que se tenga disponible (este mismo razonamiento vale para las etapas
siguientes).

Invertir 1 Milln de soles en la fbrica 1 5
Invertir 4 Millones de soles en la fbrica 2 12
Invertir 0 Millones de soles en la fbrica 3 0 17


Etapa 2:
Invertir 2 Millones de soles en la fbrica 1 6
1 D
2
4 o se decide asignar 1 agente que es el mnimo o se asigna hasta 4 que es el mximo.
Invertir 2 Millones de soles en la fbrica 2 8
2 S
2
5 porqu son 2 regiones, y por lo menos debe asignarse 1 a cada regin o el mximo
Invertir 1 Milln de soles en la fbrica 3 3 17
existente al inicio de la etapa 1 menos 1, que es lo mnimo que requiere la etapa1.

Etapa 3:
3) Asignar Agentes Vendedores
1 D
3
4 o se decide asignar 1 agente que es el mnimo o se asigna hasta 4 que es el mximo.
El gerente de ventas de una editorial de libros de texto universitarios tiene 6 agentes de ventas que
puede asignar a tres regiones distintas del pas. Ha decidido que cada regin debe tener por lo
menos un agente y que cada agente individual debe quedar restringido a una de estas regiones,
pero ahora quiere determinar cuntos agentes debe asignar a las respectivas regiones con el fin
de maximizar las ventas. La siguiente tabla da el incremento estimado en las ventas de cada
regin (en las unidades apropiadas) si se le
asignan diferentes cantidades de agentes.
1 S
3
4 porqu es una regin, y por lo menos debe asignarse 1 a esta regin o el mximo
existente al inicio de la etapa 1 menos 2 (1 agente para la regin 1 y un agente para la
regin 2).

Ahora si queremos generalizar el intervalo S
n
, para cualquier valor de n entre 1,2, y 3, tenemos:
Utilizando la programacin dinmica determine:
a) La funcin recursiva asociada al problema
indicando los lmites mximos y mnimos de la
variable de estado y de la decisin para cualquier
etapa n.
Regin
1 2 3
nmero 1 35 21 28
de 2 48 42 41
agentes 3 70 56 63
4 89 70 75

3 n + 1 S
n
6 n + 1
La funcin recursiva es:

fn (S
n
) =Max {R
n
(D
n
,S
n
) + f*
n+1
(S
n
-D
n
)}
1D
n
4
b) La solucin del problema. 3-n+1S
n
6-n+1

7
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

10
Ahora se utiliza la forma tabular del mtodo de programacin dinmica para su solucin
comenzando por la etapa 3:
Notas estimadas
Curso
No DE DAS DE ESTUDIO
IOII SO RM Mat.
1 09 07 08 12
2 10 08 11 14
3 12 12 14 18
4 14 18 16 19

n=3
f
3
(S
3
) =Max {R
3
(D
3
,S
4
) + 0 }
1 D
3
4
1 S
3
4
Decision D
3

S
3
1

2 3 4
F
3
(S
3
) D
3
(S
3
)
1 28 - - - 28 1
2 28 41 - - 41 2
3 28 41 63 - 63 3
4 28 41 63 75 75 4
En este caso se divide el problema en 4 etapas, cada etapa representa un curso y para cada uno
se decide cuantos das estudiar, al inicio de la etapa 1, tenemos 7 das que sern asignados a
todas las etapas, como se requiere las notas mnimas especificadas se debe tomar la decisin de
estudiar por lo menos un da cada curso y como mximo 4 das, para lo cual la cantidad de tiempo
disponible al inicio de cada etapa n es: 4 n + 1 Sn 7 n + 1.

El diagrama de bloques de este problema es:
n=2

f
2
(S
2
) =Max {R
2
(D
2
,S
3
) + f*
3
(S
2
-D
2
) }

S
3
= S
2
- D
2
R
3
(D
3,
S
4
) R
3
(D
3,
S
4
)
S
2
= S
1
- D
1
S
1
= 7
Curso
IOII
Curso
SO
Curso
RM
S
4
= S
3
- D
3
R
2
(D
2,
S
3
)
R
1
(D
1,
S
2
)
S
5
= S
4
- D
4
Curso
Mat.
D
3
Cuntos das
asignar?
D
3
Cuntos das
asignar?
D
2
Cuntos das
asignar?
D
1
Cuntos das
asignar?
1 D
2
4

2 S
2
5
Decisin D
2
F
2
(S
2
) D
2
(S
2
)
S
2
1 2 3 4
2 21 + 28 = 49 - - - 49 1
3 21 + 41 = 62 42 + 28 = 70 - - 70 2
4 21 + 63 = 84 42 + 41 = 83 56 + 28 = 84 - 84 1, 3
5 21 + 75 = 96 42 + 63 = 105 56 + 41 = 97 70 + 28 = 98 105 2





n=1
R
n
(D
n
,S
n
) : representa la nota que se obtiene por tomar la decisin D
n
(asignar 1, 2, 3, 4); das
en la etapa n (curso IOII, SO, RM Mat.) para pasar del estado S
n
(das disponibles al inicio de la
etapa n) al estado S
n+1
.
f
1
(S
1
) =Max {R
1
(D
1
,S
2
) + f*
2
(S
1
-D
1
) }
1 D
1
4
1 S
1
4

Decisin D
1
F
1
(S
1
) D
1
(S
1
)
Funcin Recursiva: S
1
1 2 3 4
6 35 + 105 =140 48 + 84 = 132 70 + 70 = 140 89 + 49 = 138 140 1, 3
fn (S
n
) =Max {R
n
(D
n
,S
n+1
) + f*
n+1
(S
n
-D
n
)}
1D
n
4
4 n + 1S
n
7 n + 1.
Solucin ptima:

Alternativa 1
Para n = 4
Asignar 1 agente a la regin 1: ventas obtenidas 35
f
4
(S
4
) =Max {R
4
(D
4
,S
5
) + 0 }
2 agentes a la regin 2: ventas obtenidas 42
1 D
4
4 3 agentes a la regin 3: ventas obtenidas 63 total ventas 140
1S
4
4. Alternativa 2
Decisin D
4
S
4
1

2 3 4
F
4
(S
4
) D
4
(S
4
)
1 12 12 1
2 12 14 14 2
3 12 14 18 18 3
4 12 14 18 19 19 4
Asignar 3 agentes a la regin 1 ventas obtenidas 70
2 agentes a la regin 2 ventas obtenidas 42
3 agentes a la regin 3 ventas obtenidas 23 total ventas 140

4) Asignar el recurso Tiempo
Usted cuenta con 7 das antes de que se inicien los exmenes finales de sus cuatro cursos y
desea asignar este tiempo de estudio de la manera ms efectiva que le sea posible. Usted
necesita al menos las notas mnimas que se indican para cada curso y quiere concentrarse en un
solo curso cada da de modo que desea asignar uno, dos, tres o cuatro das a cada curso. Usted
estima que las asignaciones alternativas para cada curso le proporcionara la nota que se
muestran en la tabla siguiente. Resuelva este problema usando programacin dinmica de
manera que maximice el promedio que obtenga de los cuatro cursos e indique su respuesta.







9
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

12








Nmero de rea
Comerciales 1 2 3 4

0 0 0 0 0
1 4 6 5 3
2 7 8 9 7
3 7 10 11 12
4 12 11 10 14
5 15 12 9 16
Para n = 3
f
3
(S
3
) =Max {R
3
(D
3
,S
4
) + f*
4
(S
3
-D
3
) }


1 D
3
4

2 S
3
5

Decisin D
3
S
3
1

2 3 4
F
3
(S
3
) D
3
(S
3
)
2 08+12=20 20 1
3 08+14=22 11+12=23 23 2
4 08+18=26 11+14=25 14+12=26 26 1,3
5 08+19=27 11+18=29 14+14=28 16+12=28 29 2



El recurso escaso que tiene que distribuirse en las diferentes estaciones ubicadas en diferentes
reas, es el nmero de comerciales y del cual se dispone un mximo de 5; la tabla muestra el
nmero de votos ganados si se asignan entre 0 y 5 comerciales en las diferentes reas de modo
que el estado al inicio de cada etapa es el nmero de comerciales disponibles y la decisin puede
variar entre no asignar ningn comercial o asignar como mximo los 5 comerciales, en donde cada
etapa representa una estacin televisiva ubicada en una rea determinada.


Para n = 2
f
2
(S
2
) =Max {R
2
(D
2
,S
3
) + f*
3
(S
2
-D
2
) }
El diagrama de bloques correspondiente es 1 D
2
4
3 S
2
6
Decisin D
2
S
2
1

2 3 4
F
2
(S
2
) D
2
(S
2
)
3 07+20=27 27 1
4 07+23=30 08+20=28 30 1
5 07+26=33 08+23=31 12+20=32 33 1
6 07+29=36 08+26=34 12+23=35 18+20=38 38 4
S
3
= S
2
- D
2
R
3
(D
3,
S
4
) R
3
(D
3,
S
4
)
S
2
= S
1
- D
1
S
1
= 5
Estacin
en rea1
Estacin
en rea2
Estacin
en rea3
S
4
= S
3
- D
3
R
2
(D
2,
S
3
)
R
1
(D
1,
S
2
)
S
5
= S
4
- D
4
Estacin
en rea4
D
3
Cuntos comer-
ciales asignar?
D
3
Cuntos comer-
ciales asignar?
D
2
Cuntos comer-
ciales asignar?
D
1
Cuntos comer-
ciales asignar?






Para n = 2

f
2
(S
2
) =Max {R
2
(D
2
,S
3
) + f*
3
(S
2
-D
2
) }

1 D
2
4

3 S
2
6
Donde R
n
(D
n
,S
n+1
), representa el nmero de votos ganados por asignar D
n
comerciales en la
estacin del rea n de manera que el nmero disponible de comerciales para el rea que le sigue
sea (S
n
D
n
).
Decisin D
1
S
1
1

2 3 4
F
1
(S
1
) D
1
(S
1
)
7 09+38=47 10+33=43 12+30=42 14+30=44 47 1
Funcin Recursiva:

fn (S
n
) =Max {R
n
(D
n
,S
n+1
) + f*
n+1
(S
n
-D
n
)}
Respuesta Nota
0D
n
5
Asignar al curso IOII 1 da 09
0S
n
5
Asignar al curso SO 4 das 18
Asignar al curso RM3 1 da 08 Para n=4
Asignar al curso Mat. 1 da 12
f
4
(S
4
) =Max {R
4
(D
4
,S
5
) + 0 }
47
0D
n
5

0S
n
5
5) Estrategia para campaa electoral.
D
4
S
4
0 1 2 3 4 5
f
4
(S
4
) D
4
(S
4
)
0 0 0 0
1 0 3 3 1
2 0 3 7 7 2
3 0 3 7 12 12 3
4 0 3 7 12 14 14 4
5 0 3 7 12 14 16 16 5
Una campaa poltica se encuentra en su ltima etapa y las preliminares indican que la eleccin
est pareja. Uno de los candidatos del cual usted es asesor, tiene suficientes fondos para comprar
tiempo de TV por un total de cinco comerciales en horas de mayor audiencia en estaciones
localizadas en cuatro reas diferentes. Con base en la informacin de las preliminares se hizo una
estimacin del nmero de votos adicionales que se pueden ganar en las diferentes reas de
difusin segn el nmero de comerciales que se compren. Estas estimaciones se dan en la
siguiente tabla en miles de votos:

Utilice la programacin dinmica para disear una estrategia respecto a cmo deben distribuirse
los cinco comerciales entre las cuatro reas con el fin de maximizar el nmero estimado de votos
ganados.


11
Programacin Dinmica.
Para n =3
f
3
(S
3
) =Max {R
3
(D
3
,S
4
) + f*
4
(S
3
-D
3
) }
0D
3
5
0S
3
5
D
3
S
3
0


















Ing. Miguel Jimnez C. M.Sc.

14
1 2 3 4 5
f
3
(S
3
) D
3
(S
3
)
0 0+0=0 0 0
1 0+3=3 5+0=5 5 1
2 0+7=7 5+3=8 9+0=9 9 2
3 0 +12=12 5+7=12 9+3=12 11+0=11 12 0,1,2
4 0+14=14 5+12=17 9+7=16 11+3=14 10+0=10 17 1
5 0+16=16 5+14=19 9+12=21 11+7=18 10+3=13 9+0=9 21 2
6) Determinar polticas y estrategias en el juego.
Usted cree haber desarrollado un sistema para ganar un juego. Sus colegas no piensan que este
sistema sea tan bueno, por lo que le apuestan que si comienza con 3 fichas, usted no tendr cinco
fichas despus de tres jugadas. Cada jugada incluye apostar cualquier cantidad de las fichas
disponibles y ganar o perder este mismo nmero de fichas. Usted cree que su sistema le dar una
probabilidad de 2/3 de ganar una jugada dada.
Suponiendo que usted est en lo correcto, se quiere determinar su poltica ptima respecto a
cuantas fichas apostar (si apuesta) en cada una de las tres jugadas. La decisin en cada jugada
deber tomar en cuenta los resultados de las jugadas anteriores. El objetivo es maximizar la
probabilidad de ganar la apuesta hecha a sus colegas.

Conjeturas:
El estado en cada etapa estar representado por el nmero de fichas a jugar, o sea que el recurso
escaso son las fichas disponibles en cada etapa.
En la ltima jugada (Jugada3) usted debe tener por lo menos 3 fichas, para poder continuar con el
juego, si tiene 2 o menos ya no puede jugar en consecuencia perdi la apuesta con su amigo, por
que aunque juegue 2 fichas y gana no alcanzara la meta de 5 fichas; sin embargo si tiene 3 fichas
la nica alternativa es jugar 2 fichas para poder llegar a la meta de 5, si tiene 4 fichas puede jugar
1 ficha para alcanzar 5 o jugar 2 fichas para llegar a 6. Si por el contrario usted tiene ya en sta
etapa, 5 o ms fichas ya no debe jugar porque ya gan la apuesta a su amigo. Resumiendo en
esta etapa tiene: D3 = (0, 1, 2) y S3 = (3, 4, 5)

Para n =2
f
2
(S
2
) =Max {R
2
(D
2
,S
3
) + f*
3
(S
2
-D
2
) }
0D
2
5
0S
2
5
D
2
S
2
0 1 2 3 4 5
f
2
(S
2
) D
2
(S
2
)
0 0+0=0 0 0
1 0+5=5 6+0=6 6 1
2 0+9=9 6+5=11 8+0=8 11 1
3 0+12=12 6+9=15 8+5=13 10+0=10 15 1
4 0+17=17 6+12=18 8+9=17 10+5=15 11+0=11 18 1
5 0+21=21 6+17=23 8+12=20 10+9=19 11+5=15 12+0=12 23 1

En la segunda jugada (jugada 2) usted debe tener por lo menos 2 fichas para tener chance de
ganar, porque si tiene 1 ficha y la apuesta y asumiendo que gana, solo tendra dos fichas para
apostar en la jugada3 y aunque gane en esta jugada, perder la apuesta con su amigo porque solo
tendr 4 fichas al final. Adems lo mximo que podra tener es 6 fichas si apost todo en la primera
jugada y gan; sin embargo como solo interesa conseguir 5 fichas se considera como lmite 5.
Con respecto a la decisin de cuantas fichas jugar en esta etapa, se puede no jugar ninguna ficha
si tiene ya 4 fichas y sigue con chance de ganar el juego o jugar todas las fichas. Resumiendo D2
= (0, 1, 2, 3, 4) y el estado del nmero de fichas ser S2 = (2, 3, 4, 5)

Finalmente en la primera jugada (jugada1), se tienen cuatro alternativas de juego a saber: jugar 1,
2 3 fichas y cualquier alternativa se puede tomar como decisin en esta etapa; y el estado al
inicio de esta etapa o puede ser como mnimo 1 ficha o menos de cinco para estar involucrado en
el problema. D1 = (0, 1, 2, 3) y S1 = (1, 2, 3, 4). Sin embargo para dar respuesta al caso se
utilizar S1= 3.

Para n =1
f
1
(S
1
) =Max {R
1
(D
1
,S
2
) + f*
2
(S
1
-D
1
) }
0D
1
5
0S
1
5 Al final de cada jugada (etapa n), el nmero esperado de fichas es : S
n+1
= 1/3(Sn-Dn)+2/3(Sn+Dn),
los valores de S
n
, se definen en la forma tabular: D
2
S
2
0 1 2 3 4 5
f
2
(S
2
) D
2
(S
2
)
5 0+23=23 4+18=22 7+15=22 7+11=18 12+6=18 15+0=15 23 0

El diagrama de bloques es:

R1(D1,S2) = 2/3 R2(D2,S3) = 2/3 R3(D2,S4) = 2/3

Respuesta:

No asignar ningn comercial a la estacin ubicada en le rea 1 votos ganados: 0
Asignar 1 comercial a la estacin ubicada en el rea 2 votos ganados: 6
Asignar 1 comercial a la estacin ubicada en el rea 3 votos ganados: 5
Asignar 3 comerciales a la estacin ubicada en el rea 4 votos ganados: 12

Total de votos que se esperan se ganen: 23


D3
cuntas fichas jugar?
D2
cuntas fichas jugar?
D1
cuntas fichas jugar?
S1=3
S4=1/3(S3-D3)+2/3(S3+D3)
S3=1/3(S2-D2)+2/3(S2+D2)

S2=1/3(S1-D1)+2/3(S1+D1)
Jugada1 Jugada2 Jugada3



13
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

16
7) Problema de corte La funcin recursiva es:

Una fbrica de papel ha recibido solicitudes de cuatro diferentes litografas (imprentas), de la
siguiente manera:
fn (S
n
) =Max {R
n
(D
n
,S
n+1
) x f*
n
(1/3(Sn-Dn)+2/3(Sn+Dn)}
beneficio por rollo
D
n
variable.
solicitud 1: 6 rollos de 2,5 mts de ancho b
1
= $3,10/rollo
S
n
variable.
solicitud 2: 5 rollos de 4,0 mts de ancho b
2
= $5,25/rollo
solicitud 3: 4 rollos de 3,0 mts de ancho b
3
= $4,40/rollo
Para n = 3 f
3
(S
3
) =Max {R
3
(D
3
,S
3
)}
solicitud 4: 8 rollos de 2,0 mts de ancho b
4
= $2,50/rollo
0 D
3
2.
La fbrica tiene un rollo de 7 metros de ancho de papel para atender estas ordenes. Ordenes
parciales pueden ser satisfechas. cules ordenes y cuanto de cada una se deben satisfacer para
maximizar el beneficio total?.
S
3
=3, 4 5.
D3
S3 0 1 2 f3
*
(S3) D3
*
(S3)

3 - - 2/3 2/3 2
El diagrama de bloques:
4 - 2/3 2/3 2/3 1

5 1 - - 1 0


Para n = 2 f
2
(S
2
) =Max {R
2
(D
2
,S
2
)

x f*
3
(1/3(S
2
-D
2
)+2/3(S
2
+D
2
)}
0 D
2
4.
S
2
=2, 3, 4 5.
D2
S2 0 1 2 3 4 f2
*
(S2) D2
*
(S2)
2 - 2/3*2/3 2/3*2/3 - - 4/9 1 2
3 2/3 2/3*2/3 2/3*1 2/3*1 - 2/3 0, 2 3
4 2/3 2/3*1+1/3*2/3 2/3*1 2/3*1 2/3*1 8/9 1
5 1 - - - - 1 0

Para n = 1 f
1
(S
1
) =Max {R
1
(D
1
,S
1
)

x f*
2
(1/3(S
1
-D
1
)+2/3(S
1
+D
1
)}
0 D
1
3.
S
1
=3.

D1
S1 0 1 2 3 f1
*
(S1) D1
*
(S1)
3 2/3*2/3 2/3*8/9+1/3*4/9 2/3*1 2/3*1 20/27 1



Respuesta: Estrategia

En la 1ra jugada la decisin debe ser jugar 1 ficha (D
1
=1), y si gana la primera jugada entonces en la
segunda jugada jugar 1 ficha (D
2
=1); pero si pierde la 1ra jugada, entonces en la segunda jugada la
decisin debe ser jugar 1 ficha o dos fichas (D
2
= 1 2), pues es indiferente. Si se gana la 1ra jugada
y gana en la 2da jugada entonces en la tercera jugada ya no debe jugar (D3=0).

Por el contrario si gana en la 1ra jugada y pierde en la 2da jugada entonces en la tercera jugada debe
jugar 2 fichas (D3=2).

Si pierde en 1ra jugada y gana la 2da jugada entonces en la tercera jugada tiene la opcin de jugar 1
2 fichas (D3=1 2) dependiendo si se juega 2 1 en la 2da jugada

Finalmente si pierde en 1ra jugada y pierde la 2da jugada entonces la apuesta estar perdida.








a) Etapa n: Solicitud a la que asignara una cantidad de rollos (n = 1,2,3,4).
b) Variable de estado S
n
: Cantidad de metros disponibles al inicio de cada etapa.
c) Variable de decisin D
n
: Cantidad de rollos, a entregar en cada etapa
d) Estado al final de la etapa n: S
n +1
= S
n-
- r
n
D
n
. r
n
= ancho del rollo pedido
e) Funcin de retorno: Ventas mximas = R
n
(D
n
, S
n+1
)
f) La cantidad de rollos que se pueden despachar de cada solicitud es:
como mnimo cero (0) y como mximo {Min (soicitud
n
, entero (7 / ancho
n
)) }; es decir:
0 D
1
min (6, 7/2.5 ) 0 D
1
2 0 D
2
min (5, 7/4.0 ) 0 D
2
1
0 D
3
min (4, 7/3.0 ) 0 D
3
2 0 D
4
min (8, 7/2.0 ) 0 D
4
3
g) La funcin de retorno inmediato R
n
(D
n
, S
n+1
) = D
n
x b
n


Funcin Recursiva:
fn (S
n
) =Max {D
n
x b
n
+ f*
n+1
(S
n
-r
n
D
n
)}
0 D
n
min (soicitud
n
, entero (7 / r
n
))
0S
n
7
Para n=4
f
4
(S
4
) =Max { D
4
x b
4
+ 0 }
0D
4
3
0S
4
7
D4
S4
0

1 2 3
f4(S4) D4(S4)
0 0x2,5=0 0 0
1 0x2,5=0 0 0
2 0x2,5=0 2,5 1
3 0x2,5=0 1x2,5=2,5 2,5 1
4 0x2,5=0 1x2,5=2,5 2x2,5=5 5 2
5 0x2,5=0 1x2,5=2,5 2x2,5=5 5 2
6 0x2,5=0 1x2,5=2,5 2x2,5=5 3x2,5=7,5 7.5 3
7 0x2,5=0 1x2,5=2,5 2x2,5=5 3x2,5=7,5 7,5 3
S
3
= S
2
- 4D
2
R
3
(D
3,
S
4
) R
3
(D
3,
S
4
)
S
2
= S
1
2.5D
1
S
1
= 7
Solicitud 1 Solicitud 2 Solicitud 3
S
4
= S
3
- 3D
3
R
2
(D
2,
S
3
)
R
1
(D
1,
S
2
)
S
5
= S
4
- 2D
4
Solicitud 4
D
4
Cuntos rollos
atender?
D
3
Cuntos rollos
atender?
D
2
Cuntos rollos
atender?
D
1
Cuntos rollos
atender?

15
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

18
Caso 3: El modelo de la mochila Para n=3
f
3
(S
3
) =Max { D
3
x b
3
+ f*
4
(S
3
-3D
3
) }
8) Modelo general sin restricciones
Un camionero que trabaja por su cuenta tiene 8m
3
de espacio disponible en un camin que saldr
para la ciudad de Lima. Un distribuidor que tiene grandes cantidades de tres artculos diferentes,
todos destinados para esa ciudad, ha ofrecido al camionero los siguientes pagos por transportar
tantos artculos como quepan en el camin:
0D
3
2
0S
3
7
D3
S3
0 1 2
f3(S3) D3(S3)
0 0x4,4+0=0 0 0
1 0x4,4+0=0 0 0
2 0x4,4+2,5=2,5 2,5 0
3 0x4,4+2,5=2,5 1x4,4+0=4,4 4,4 1
4 0x4,4+5=5 1x4,4+0=4,4 5 0
5 0x4,4+5=5 1x4,4+2,5=6,9 6,9 1
6 0x4,4+7,5=7,5 1x4,4+2,5=6,9 2x4,4+0=8,8 8.8 2
7 0x4,4+7,5=7,5 1x4,4+5=9,4 2x4,4+0=8,8 9,4 1
Pago. Volumen.(V
n
)
Artculo $/art. m
3
/art.
I 11 1
II 32 3
III 58 5
Cuntas unidades de cada artculo deber aceptar el camionero a fin de maximizar los pagos de
embarque, sin exceder la capacidad del camin?.

En este caso si quisiramos construir el modelo matemtico de este problema las variables de
decisin representaran la cantidad de artculos que se deben de embarcar de cada tipo de
artculo, en consecuencia hay tres variables de decisin a saber: Para n=2
f
2
(S
2
) =Max { D
2
x b
2
+ f*
3
(S
2
-4D
2
) }
X1 = la cantidad de artculos tipo I a embarcar en el camin.
X2 = la cantidad de artculos tipo II a embarcar en el camin.
0D
2
2
X3 = la cantidad de artculos tipo III a embarcar en el camin.
0S
2
7
La funcin objetivo ser maximizar el beneficio total que estar representado por la suma de los
beneficios parciales. El modelo matemtico ser:
D2
S3
0 1
f2(S2) D2(S2)
0 0x5,25+0=0 0 0
1 0x5,25+0=0 0 0
2 0x5,25+2,5=2,5 2,5 0
3 0x5,25+4,4=4,4 4,4 0
4 0x5,25+5=5 1x5,25+0=5,25 5,25 1
5 0x5,25+6,9=6,9 1x5,25+0=5,25 6,9 0
6 0x5,25+8,8=8,8 1x5,25+2,5=7,75 8.8 0
7 0x5,25+9,4=9,4 1x5,25+4,4=9,65 9,65 1

Max Bt = 11X1 + 32X2 + 58X3
s.a
X1 + 3X2 + 5X3 8
Xj 0 y entero

Ahora como deseamos aplicar la metodologa de programacin dinmica, debemos dividir el
problema en tres etapas (subproblemas), uno para cada tipo de artculo y el estado al inicio de
cada etapa es la capacidad de volumen disponible an en el camin. En cada etapa debe decidirse
cuantas unidades se deben embarcar.

Diagrama de bloques:
Para n=1

f
1
(S
1
) =Max { D
1
x b
1
+ f*
2
(S
1
-2.5D
1
) }
0D
1
2
S
1
= 7
D3
S3
0 1 2
f3(S3) D3(S3)
7 0x3,1+9,65=9,65 1x3,1+5,25=8,35 2x3,1+2,5=8,7 9,65 0


Respuesta: beneficio
Atender con 0 rollos a la solicitud 1 0x3,10 = 0,00
Atender con 1 rollo a la solicitud 2 1x5,25 = 5,25
Atender con 1 rollo a la solicitud 3 1x4,40 = 4,40
Atender con 0 rollos a la solicitud 4 0x2,50 = 0,00

Beneficio total = 9,65





R
n
(D
n
,S
n+1
) = Pago
n
x D
n
donde: Pago
n
= 11, 32 y 58 para n = 1, 2 y 3 respectivamente

Funcin Recursiva:
fn (S
n
) =Max { Pago
n
x D
n
+ f*
n+1
(S
n
-V
n
D
n
)}
0 D
n
(entero (8 / V
n
)
0 S
n
8
V
n
= El volumen del artculo n
S
4
= S
3
- 5D
3
S
3
= S
2
-3D
2 S
2
= S
1
- D
1
S
1
=8
Artculo I Artculo II Artculo III
D
1
Cuntos Artculos
embarcar?
D
2
Cuntos Artculos
embarcar?
D
3
Cuntos Artculos
embarcar?
R
1
(D
1,
S
2
) R
2
(D
2,
S
3
) R
3
(D
3,
S
4
)

17
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

20
Para n = 3 Respuesta: embarcar 3 unidades del artculo I con beneficio 3 x11 = 33
f
3
(S
3
) =Max { Pago
3
x D
3
+ 0 }
embarcar 0 unidades del artculo II con beneficio 0 x32 = 0
embarcar 1 unidades del artculo III con beneficio 1 x58 = 58 Total 91
0 D
3
1

0 S
3
8
9) Modelo particular (con restricciones)
D
3
S
3
0

1
f
3
(D
3
) D
3
(S
3
)
0 58x0+0=0 0 0
1 58x0+0=0 0 0
2 58x0+0=0 0 0
3 58x0+0=0 0 0
4 58x0+0=0 0 0
5 58x0+0=0 58x1+0=58 58 1
6
Un camionero que trabaja por su cuenta tiene 10m
3
de espacio disponible en un camin que saldr
para la ciudad de Lima. Un distribuidor que tiene grandes cantidades de tres artculos diferentes,
todos destinados para esa ciudad, ha ofrecido al camionero los siguientes pagos por transportar
tantos artculos como quepan en el camin:
Pago. Volumen.
Artculo $/art. m
3
/art.
I 11 1
II 27 2
III 43 4
Cuntas unidades de cada artculo deber aceptar el camionero a fin de maximizar los pagos de
embarque, con la condicin de embarcar por lo menos un artculo de cada tipo y sin exceder la
capacidad del camin?.
58x0+0=0 58x1+0=58 58 1
7 58x0+0=0 58x1+0=58 58 1
8 58x0+0=0 58x1+0=58 58 1

Para este caso hay dos caminos para dar respuesta al modelo, pero en ambos casos el diagrama
de bloques es el mismo:
Camino 1
La funcin recursiva no cambia, pero sin embargo el rango de variacin de la decisin y del estado
en cada etapa vara completamente a saber:
Para n = 2
f
2
(S
2
) =Max { Pago
2
x D
2
+ f*
3
(S
2
-V
2
D
2
)}

0 D
2
2
1D
3
Entero((10 V
1
V
2
)/ V
3
) ; 1D
2
Entero((10 V
1
V
3
)/ V
2
); 1D
1
Entero((10 V
2
V
3
)/ V
1
)
0 S
2
8
V
3
S
3
10 V
1
V
2;
V
2
+ V
3
S
2
10 V
1
; V
1
+ V
2
+ V
3
S
1
10
D
2
S
2
0

1 2
f
2
(D
2
) D
2
(S
2
)
0 32x0+0=0 0 0
1 32x0+0=0 0 0
2 32x0+0=0 0 0
3 32x0+0=0 32x1+0=32 32 1
4 32x0+0=0 32x1+0=32 32 1
5 32x0+58=58 32x1+0=32 58 0
6 32x0+58=58 32x1+0=32 32x2+0=64 64 2
7 32x0+58=58 32x1+0=32 32x2+0=64 64 2
8 32x0+58=58 32x1+58=90 32x2+0=64 90 1

Si deseamos generalizar el rango de variacin para cualquier nmero de etapas, de los parmetros
D
n
y S
n
tendremos:
n i
n
V
N
i
i
V
n
D

);
1
10
Entero( 1


= =

1
1
10
n
i
i n
N
n i
i
V S V
; donde N representa el nmero total de etapas.
para n=1 V
i
no existe y como tal no hay que restar

Ahora bien aplicando la forma tabular y manteniendo la funcin recursiva con los rangos de
variacin encontrados se tiene los siguiente:

Para n = 3
f
3
(S
3
) =Max { 43 x D
3
+ 0 } Para n = 2
f
1
(S
1
) =Max { Pago
1
x D
1
+ f*
2
(S
1
-V
1
D
1
)}
1 D
3
1
4 S
3
7
0 D
1
8
D
3
S
3
1
f
3
(D
3
) D
3
(S
3
)
4 43x1+0=43 43 1
5 43x1+0=43 43 1
6 43x1+0=43 43 1
7 43x1+0=43 43 1
S
1
= 8
D1
S1
0

1 2 3 4 5 6 7 8
f1(D1) D1(S1)
8
11x0+
90=90
11x1+
64=75
11x2+
64=86
11x3+
58=91
11x4+
32=76
11x5+
32=87
11x6+
0=66
11x7+
0=77
11x8+
0=88
91 3



19
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

22
Para n = 2 El costo por unidad producida con tiempo extra a la semana es $100 ms que en las horas
normales. El costo de almacenamiento es $50 por unidad por cada semana que se guarda. Existe
un inventario de dos dispositivos, pero la compaa no desea quedarse con ninguno despus de
tres semanas. Utilice programacin dinmica para determinar cuntas unidades debe producir
cada semana con el fin de minimizar los costos de produccin e inventarios.
f
2
(S
2
) =Max { 27 x D
2
+ f*
3
(S
2
-V
2
D
2
)}
1 D
2
2
6 S
2
9
D
2
f
2
(D
2
) D
2
(S
2
)
S
2
1 2
6 27+43 = 70 70 1
7 27+43= 70 70 1
8 27+43= 70 54+43= 97 97 2
9 27+43= 70 54+43= 97 97 2

Solucin:
En primer lugar el acuerdo asumido por la BUILD-EM-FAST COMPANY y su Cliente, no admite
pedidos pendientes por tanto tiene que abastecerlo con sus tres unidades por mes.
El problema es factible dividirlo en tres etapas (dado que son tres semanas de produccin) para
tomar decisiones de cuanto producir por semana y en consecuencia cada subproblema es ms
fcil de resolver.
El Retorno inmediato asociado con la decisin en cada etapa est relacionado con los costos de
produccin tanto en tiempo normal cmo en tiempo extra ms el costo de inventario tal como se
indica:

Para n = 1

f
1
(S
1
) =Max { 11 x D
1
+ f*
2
(S
1
-V
1
D
1
)}
R
n
(D
n
,S
n+1
) = Cpei
n
= Cn
n
Pn
n
+ Ce
n
Pe
n
+ 50(S
n
+ Pn
n
+ Pe
n
3)
1 D
1
4 Donde:
S
1
= 10 Cpei
n
= Costo de Produccin e inventario en la etapa n
D1
S1
1

2 3 4
f1(D1) D1(S1)
10 11 + 97 = 108 22 + 97 = 119 33 + 70 = 103 44 + 70 = 114 119 2
Cn
n
Pn
n
= Costo normal de Produccin en la etapa n x Cantidad producida en tiempo normal en la etapa n
Ce
n
Pe
n
= Costo Produccin en tiempo extra en la etapa n x Cantidad producida en tiempo extra en la etapa n
Dn = Decisin en la etapa n, referida a determinar cuntas unidades producir en tiempo normal y en tiempo extra.


El estado al inicio de cada etapa(semana), est dado por:

S
1
= 2;
Respuesta: embarcar 2 unidades del artculo I con beneficio 2 x11 = 22
S
2
= S
1
+ Pn1 + Pe1 3; los valores que puede tomar son: 0, 1, 2 y 3
embarcar 2 unidades del artculo II con beneficio 2 x27 = 54
S
3
= S
2
+ Pn
2
+ Pe
2
3; los valores que puede tomar son: 0, 1, 2 y 3
embarcar 1 unidades del artculo III con beneficio 1 x43 = 43 Total 119
S
4
= 0; Estado al final de la semana 3


Camino 2
La decisin al inicio de cada etapa (semana), est dado por:
En este caso lo ms prctico es de la capacidad total 10 m
3
, reservar 7 m
3
para cumplir con el
requerimiento de llevar una unidad de cada tipo de artculo y el resto de capacidad 3 m
3

disponibles se le da el tratamiento que se le dio al ejemplo 1 (modelo general sin restricciones), el
resultado debe ser el mismo; se deja al alumno para que compruebe lo manifestado. Obsrvese
que con el restante de 3 m
3
pude llevar 1 unidad del artculo 1 y 1 unidad del artculo 2 adicionales;
logrando en total llevar:
1D
1
4 : Se debe producir por lo menos 1 para satisfacer la demanda puesto que se tiene 2
unidades en inventario y como mximo la suma de la capacidad de produccin en tiempo normal y
en tiempo extra
0D
2
3 : Se puede dejar de producir si en la etapa anterior se produjo 4, y lo mximo que se puede
producir es la suma de la capacidad de produccin en tiempo normal y en tiempo extra.
0D
3
3 : Se puede dejar de producir si en la etapa anterior se produjo 3, y lo mximo que se puede
producir es la suma de la capacidad de produccin en tiempo normal y en tiempo extra.
embarcar 2 unidades del artculo I con beneficio 2 x11 = 22

embarcar 2 unidades del artculo II con beneficio 2 x27 = 54

embarcar 1 unidades del artculo III con beneficio 1 x43 = 43 Total 119
Diagrama de Bloques:


Cpei
1
Cpei
2
Cpei
3
Y se llega al mismo resultado



Caso 4: Produccin e Inventario
10) La BUILD-EM-FAST COMPANY ha acordado con su mejor cliente abastecerlo con un
dispositivo especial con 3 unidades durante cada una de las tres semanas siguientes, aun cuando
producirlos va a requerir horas extra de mano de obra. Los datos de produccin concernientes son
como se indica en la tabla:
Produccin mxima Produccin mxima Costo de Produccin
Semana tiempo normal tiempo extra por unidad tiempo normal
1 2 2 $300
2 2 1 $500
3 1 2 $400











S
4
= 0 S
3
=S
2
+ Pn
2
+ Pe
2
-3
S
2
=S
1
+ Pn
1
+Pe
1
-3 S
1
=2 Semana
3
Semana
2
Semana
1
D
3 D
1 D
2
(Pn
3
+ Pe
3
) (Pn
1
+ Pe
1
) (Pn
2
+ Pe
2
)

21
Programacin Dinmica.
Funcin recursiva:
[ ) (
*
= Min S f ) 3 ( ) 3 ( 50
*
1
+ + + + + + +
+ n n n n n n n n n n n n n
Pe Pn S f Pe Pn S Pe Ce Pn Cn
Ing. Miguel Jimnez C. M.Sc.

24
11) La Northern Airplane Co. construye aviones comerciales para varias lneas areas en todo el
mundo. La ltima etapa del proceso de produccin consiste en fabricar los motores de turbina e
instalarlos (operacin sumamente rpida) en la estructura del avin terminado. La compaa tiene
varios contratos de trabajo para entregar un gran nmero de aviones en un futuro cercano, y en
este momento debe programarse la produccin de los motores de turbina durante los prximos
cuatro meses.
D
n
, S
n
variable

Nota: nicamente la produccin en tiempo extra tiene lugar cuando con la produccin en tiempo
normal no alcanza.
En la segunda columna de la Tabla 1, se indica la cantidad de motores que debe estar lista para
su instalacin, a fin de cumplir con las fechas de entrega contratadas. As, el nmero acumulado
de motores que deben producirse para fines de los meses 1, 2, 3 y 4 debe ser por lo menos 10, 15,
25 y 20, respectivamente.

Para n =3

Las instalaciones disponibles para producir los motores varan de acuerdo con otros programas de
produccin, mantenimiento y renovacin durante este perodo. Las diferencias mensuales que
resultan en cuanto al nmero mximo que se puede producir y el costo unitario de produccin (en
millones de dlares) se dan en la tercera y cuarta columnas de la tabla.
f
3
(S
3
) = Min[400Pn
3
+ 500Pe
3
+ 50(S
3
+ Pn
3
+ Pe
3
3 ) + 0 ]
0D
3
3
0S
3
3
D
3
Dadas las variaciones de los costos de produccin, podra valer la pena producir algunos motores
un mes o dos antes de su fecha de instalacin y se est estudiando esta posibilidad. El
inconveniente es que esos motores debern almacenarse hasta que sean instalados (la estructura
de los aviones no estar lista antes). El costo de almacenaje para cada motor es de $15 000/mes
(se incluye el inters sobre el capital invertido), como se ilustra en la ltima columna de la tabla.
S
3
0 1 2 3 f
3
*(S
3
) D
3
*(S
3
)
0 -- -- -- 1400 1400 3
1 -- -- 900 -- 900 2
2 -- 400 -- -- 400 1
3 0 -- -- -- 0 0
Utilice programacin dinmica para determinar la programacin del nmero de motores que se
deben fabricar en cada uno de los cuatro meses, de manera que se minimicen los costos totales
de produccin y almacenaje. Suponga que las cantidades producidas deben ser enteros mltiplos
de cinco.

Nota: En la celda donde no existe asignacin es porqu sta no es factible.



Para n =2
Mes
Instalaciones
programadas
Produccin
mxima
Costo unitario
de produccin
*
Costo unitario
de almacenaje
*
1 10 25 1.08 0.015
2 15 35 1.11 0.015
3 25 30 1.10 0.015
4 20 10 1.13 0.015
f
2
(S
2
) = Min[500Pn
3
+ 600Pe
3
+ 50(S
3
+ Pn
3
+ Pe
3
3 ) + f
3
(S
2
+ Pn
2
+ Pe
2
3) ]
0D
2
3
0S
2
3
D
2
S
2
0 1 2 3 f
2
*(S
2
) D
2
*(S
2
)
0 3000 3000 3
1 2400 2550 2400 2
Tabla 1 2 1900 1950 2100 1900 1
* El costo est expresado en millones de dlares.
3 1400 1450 1500 1750 1400 0



Solucin
Para n =1

f
1
(S
1
) = Min[500Pn
1
+ 600Pe
1
+ 50(S
1
+ Pn
1
+ Pe
1
3 ) + f
2
(S
1
+ Pn
1
+ Pe
1
3) ]
Mes
Demanda
dn
Prod. Mx
Pn
Cup
Cn

Cua
In

1 10/5=2 25/5=5 1.08*5=5.40 0.015*5=0.075
2 15/5=3 35/5=7 1.11*5=5.55 0.015*5=0.075
3 25/5=5 30/5=6 1.10*5=5.50 0.015*5=0.075
4 20/5=4 10/5=2 1.13*5=5.65 0.015*5=0.075
0D
1
3
S
1
=2
D
1
S
1
1 2 3 4 f
1
*(S
1
) D
1
*(S
1
)
2 3300 3050 3000 2950 2950 4

Respuesta:

Producir: 4 unds. en el perodo 1: 2 En tiempo normal y 2 en tiempo extra

0 en el perodo 2: no hay produccin

3 en el periodo 3: 1 en tiempo normal 2 en tiempo extra
)] ( ) ( x [ ) (
*
1
*
n n n n n n n n n n n n
d D S f d D S I D C Min S f + + + + =
+

Con un costo total mnimo en las tres semanas de $ 2950.
Dn,Sn variable


23
Programacin Dinmica.
Para n=4
] 0 ) 4 ( 075 . 0 x 65 . 5 [ ) (
4 4 4 4
*
4
+ + + = D S D Min S f
)] 5 ( ) 5 ( 075 . 0 x 50 . 5 [ )
3 3
*
4 3 3 3 3 3
+ + + + = D S f D S D Min S
)] 3 ( ) 3 ( 075 . 0 x 55 . 5 [ )
2 2
*
3 2 2 2 2 2
+ + + + = D S f D S D Min S
Ing. Miguel Jimnez C. M.Sc.

26
)] 2 ( ) 2 ( 075 . 0 x 40 . 5 [ )
1 1
*
2 1 1 1 1 1
+ + + + = D S f D S D Min

2S44
0D42
S4Debe ser tal que sumado a la capacidad de produccin alcance para atender la demanda de
4 unidades (es decir a 4 mltiplos de 5), en consecuencia al inicio del cuarto mes debe haber por lo
menos 2 unidades porque la capacidad de produccin en el cuarto mes est limitada a 2 unidades;
y como mximo S4 debe ser 4 unidades dado que con ello se satisface la demanda de ese mes y
el stock final ser cero (0), no hay restriccin de dejar al final algn inventario.
D4Si el estado del inventario al inicio del cuarto mes es 4 la decisin factible es no producir, sin
embargo si el estado inicial es 2 unidades lo mximo que se puede producir es 2 unidades.

D
4
S
4
0 1 2 f*
4
(S
4
) D*
4
(S
4
)
2 -- -- 11.30 11.30 2
3 5.65 5.65 1
4 0 -- -- 0.00 0


Para n=3
(
*
f
1S37
0D36
S3 Puede comenzar en 1 y utilizar la mxima capacidad de produccin de este mes (D3 =6),
para poder abastecer la demanda de este mes y quede en inventario 2 unidades para el siguiente
mes; y lo mximo que puede ser S3 al inicio de esta etapa es 7 de manera que aunque no se
produzca ninguna unidad (D3=0), an queden 2 unidades en inventario para el siguiente mes y
satisfacer la demanda.
D
3
S
3
0 1 2 3 4 5 6 f*
3
(S
3
) D*
3
(S
3
)
1 44.45 44.45 6
2 38.95 38.875 38.875 6
3 33.45 38.375 33.30 33.30 6
4 27.95 27.875 27.80 27.80 5
5 22.45 22.375 22.30 22.30 4
6 16.95 16.875 16.80 16.80 3
7 11.45 11.375 11.30 11.30 2



Para n=2
(
*
f
0S23
1D27
S2 Puede ser 0, pues la capacidad de produccin de este mes con exceso puede satisfacer la
demanda y lo mximo que puede ser es 3, que corresponde a la capacidad mxima de produccin
en la 1ra etapa menos su demanda esto es: (5 2 = 3); el nivel mnimo de produccin en este mes
debe ser 1 an cuando S3 = 3 y se satisfaga la demanda de este mes; sin embargo si no se
produce no alcanzara a cubrirse toda la demanda de los meses siguientes. El nivel mximo que
pude tomar D2 es 7, equivalente a la capacidad mxima de produccin.

D
2
S
2
1 2 3 4 5 6 7 f*
2
(S
2
) D*
2
(S
2
)
0 66.725 66.715 66.825 66.95 66.725 4
1 61.175 61.225 61.275 61.40 61.175 61.175 3
2 55.625 55.675 55.725 55.85 55.975 55.625 55.625 2
3 50.085 50.125 50.175 50.30 50.425 50.55 50.625 50.075 1



Para n = 1
(
*
S f
S1=0
2D15
En este caso el inventario inicial es cero (0). Por tanto, la decisin que se tome debe ser por lo
menos 2 unidades para atender la demanda (D1=2), y el nivel mximo de produccin es
equivalente a la capacidad de produccin de este mes (D1=5).

D
1
S
1
2 3 4 5 f*
1
(S
1
) D*
1
(S
1
)
0 77.525 77.45 77.375 77.30 77.30 5

Producir 5 en el perodo 1
1 en el perodo 2
6 en el periodo 3
2 en el periodo 4


Caso 5: Modelo de Confiabilidad
12) Considere un sistema electrnico que consta de cuatro componentes, cada uno de los cuales
debe funcionar para que el sistema tambin lo haga. La confiabilidad de ste se puede mejorar si
se instalan varias unidades paralelas en una o ms de las componentes. La siguiente tabla
muestra la probabilidad de que las respectivas componentes funcionen si consisten en una , dos o
tres unidades en paralelo, as como sus respectivos costos en cientos de dlares. Dadas las
limitaciones de presupuesto se pueden gastar un mximo de $1000. utilice los modelos de redes
para determinar cuantas unidades paralelas deben instalarse en cada una de las cuatro
componentes para maximizar la probabilidad de que el sistema funcione.

Probabilidad y costo de funcionamiento
Nro de
unidades Comp. 1 Comp. 2 Comp.3 Comp. 4
paralelas prob costo prob. Costo prob costo prob. costo
1 0.5 1 0.6 2 0.7 1 0.5 2
2 0.6 2 0.7 4 0.8 3 0.7 3
3 0.8 3 0.8 5 0.9 4 0.9 4








Este modelo fue visto en el captulo de redes en el cual se construy el modelo matemtico y se
dise la red que representaba el problema. Ahora se aplicar la metodologa de la programacin
dinmica para resolverlo.
Solucin:

25
Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

28
En este caso como se tiene que tomar la decisin de cuantas unidades instalar de cada tipo de
componente, se divide el problema en 4 etapas (una etapa por cada tipo de componente).
Para n=4
f
4
(S
4
) =Max {R
4
(D
4
,S
5
)}
El estado del sistema al inicio de cada etapa est dado por el dinero disponible; sin embargo lo que
hay que tener presente es que al inicio de cada etapa el dinero disponible debe ser de tal manera
que por lo menos alcance para instalar una unidad de esa etapa y una unidad de cada una de las
etapas restantes. Esto sugiere que en la etapa 4 lo mnimo que puede ser S4 es 200 dlares, para
la etapa 3 lo mnimo debe ser S3 = 300 (100 para la etapa 3 y 200 para la etapa 4), en la etapa 2
debe garantizarse por lo menos 500 dlares (D2=500), y finalmente para poder disear el circuito
por lo menos se necesita 600 dlares al inicio de la 1ra Etapa para instalar una unidad de cada tipo
de componente (S1600 .
1D
4
3
2S
4
6
D
4
S
4
1 2 3 f*
4
(S
4
) D*
4
(S
4
)
2 0.5 -- -- 0.5 1
3 0.5 0.7 -- 0.7 2
4 0.5 0.7 0.9 0.9 3
5 0.5 0.7 0.9 0.9 3
Las cantidades mximas de dinero disponible se obtienen de la siguiente manera:
6 0.5 0.7 0.9 0.9 3
S41000 costo de 1 und. del comp.1 costo de 1 und. del comp.2 costo 1 und. del comp.3

S31000 costo de 1 und. del comp.1 costo de 1 und. del comp.2
Para n=3
S21000 costo de 1 und. del comp.1
f
3
(S
3
) =Max {R
3
(D
3
,S
4
x f*
4
(S
3
-c(D
3
)) )}
S11000
1D
3
3

3S
3
7
Generalizando para cualquier valor de n tenemos:
D
3

S
3
1 2 3 f*
3
(S
3
) D*
3
(S
3
)

Aplicando la forma tabular de solucin de la programacin dinmica tenemos:
27


= =

1
1
i 10 i
n
i
n
N
n i
S componente del unidad 1 instalar por costo componente del unidad 1 instalar por costo
n i
i
c ) 1 (

=1
) 1 (
i
i
c
3 0.7x0.5=0.35 -- -- 0.35 1
4 0.7x0.7=0.49 -- -- 0.49 1
5 0.7x0.9=0.63 0.8x0.5=0.40 -- 0.63 1

6 0.7x0.9=0.63 0.8x0.7=0.56 0.9x0.5=0.45 0.63 1
Con respecto a la decisin en cada etapa, en todas las etapas es la misma es decir instalar 1, 2
3 unidades con lo cual 1Dn3.
7 0.7x0.9=0.63 0.8x0.9=0.72 0.9x0.7=0.63 0.72 2


Para n=2
Diagrama de Bloques:
f
2
(S
2
) =Max {R
2
(D
2
,S
2
x f*
3
(S
2
-c(D
2
)) )}
1D
2
3
5S
2
9








R
n
(D
n
,S
n+1
) : representa la confiabilidad que se alcanza por instalar D
n
unidades del componente n
c
n
(D
n
) : representa el costo por instalar D unidades en la etapa n.

Funcin recursiva:
fn (S
n
) =Max {R
n
(D
n
,S
n+1
) x f*
n+1
(S
n
-c(D
n
))}
1D
n
3
N 1 n
S

=
n


En esta funcin recursiva los elementos de la funcin se multiplican por estar en serie los
componentes del circuito.
S
3
=S
2
-c
2
(D
2
)
R
3
(D
3,
S
4
) R
3
(D
3,
S
4
)
S
2
=S
1
c
1
(D
1
)
S
1
= 10
Comp. 1 Comp..2

Comp. 3

S
4
=S
3
-c
3
(D
3
)
R
2
(D
2,
S
3
)
R
1
(D
1,
S
2
)
D
2
S
2
1 2 3 f*
2
(S
2
) D*
2
(S
2
)
D
1
Cuntas unidades
instalar?
D
2
Cuntas unidades
instalar?
D
3
Cuntas unidades
instalar?
D
3
Cuntas unidades
instalar?
S
5
=S
4
-c
4
(D
4
) 5 0.6x0.35=0.210 -- -- 0.210 1
Comp. 4

6 0.6x0.49=0.294 -- -- 0.294 1
7 0.6x0.63=0.378 0.7x0.35=0.245 -- 0.378 1
8 0.6x0.63=0.378 0.7x0.49=0.343 0.8x0.35=0.280 0.378 1
9 0.6x0.72=0.432 0.7x0.63=0.441 0.8x0.49=0.392 0.441 2

Para n=1
f
1
(S
1
) =Max {R
1
(D
1
,S
1
x f*
2
(S
1
-c(D
1
)) )}
1D
1
3
S
1
=10
D
1
S
1
1 2 3 f*
1
(S
1
) D*
1
(S
1
)
10 0.5x0.441=0.2205 0.6x0.378=0.2268 0.8x0.378=0.3024 0.3024 3

Respuesta: costo confiabilidad
Instalar 3 unidades del componente 1 3 0.8
Instalar 1 unidad del componente 2 2 0.6
Instalar 1 unidad del componente 3 1 0.7
Instalar 3 unidades del componente 4 4 0.9

Confiabilidad del circuito ==> 0.8x0.6x0.7x0.9 = 0.3024

Programacin Dinmica. Ing. Miguel Jimnez C. M.Sc.

30


PROBLEMAS PROPUESTOS DE PROGRAMACIN DINMICA

1) Una compaa ha averiguado que un competidor est planeando sacar un nuevo tipo de
producto con ventas potenciales muy grandes. Esta compaa ha estado trabajando en un
producto similar y la investigacin est casi terminada. Ahora se quiere sacar el producto ms
rpidamente para alcanzar a la competencia. Se tienen que lograr cuatro etapas independientes (o
sin traslape) incluyendo lo que falta de la investigacin que por el momento se lleva a cabo a paso
normal. Sin embargo, cada etapa se puede realizar en un nivel de prioridad o de quiebre para
acelerar la terminacin. Los tiempos requeridos (en meses) y el costo (en millones de dlares)
para los distintos niveles son:








Tiempo y Costo
IR D SDM IPD
Nivel t c t c t c t c
Normal 5 3
Prioridad 4 6 3 6 5 5 2 3
Quiebre 2 9 2 9 3 10 1 6

IR = Investigacin Restante
D = Desarrollo
SDM = Sistemas de Diseo y Manufactura
IPD = Inicio de Produccin y Distribucin.

Se dispone de $30 000 000 para estas cuatro etapas.
Utilice la programacin dinmica para determinar el nivel a que debe conducirse cada etapa para
minimizar el tiempo total hasta que se pueda comercializar el producto sujeto a las restricciones de
presupuesto.




2) Una empresa sabe que la demanda de su producto durante cada uno de los cuatro meses
siguientes ser como sigue: mes1, 1 unidad; mes2, 3 unidades; mes3, 2 unidades; mes4, 4
unidades. Al principio de cada mes, la empresa debe determinar cuntas unidades se deben
producir durante ese mes. Durante un mes en el que se produce cualquier nmero de unidades, se
incurre en un costo de preparacin de 3 dlares. Adems, hay un costo variable de 2 dlares por
cada unidad producida. Al final de cada mes, se incurre en un costo de 0.75 dlares por unidad en
inventario. Las limitaciones de capacidad permiten la produccin de un mximo de 5 unidades
durante cada mes. El tamao de la bodegas de la empresa restringe el inventario final de cada
mes a 4 unidades cuando mucho. La empresa desea determinar un calendario de produccin para
cada mes considerando que la no atencin de una demanda determinada no le significa perjuicio
debido a la gran demanda de su producto, y adems que reduzca al mnimo la suma de los costos
de produccin y de almacenamiento durante los cuatro meses. Suponer que hay 2 unidades a
mano a principio del primer mes y se requiere que al final de los 4 perodos haya 1 unidad.














3) Una empresa sabe que la demanda de su producto durante cada uno de los cuatro meses
siguientes ser como sigue: mes1, 1 unidad; mes2, 3 unidades; mes3, 2 unidades; mes4, 4
unidades. Al principio de cada mes, la empresa debe determinar cuntas unidades se deben
producir durante ese mes. Durante un mes en el que se produce cualquier nmero de unidades, se
incurre en un costo de preparacin de 3 dlares. Adems, hay un costo variable de 2 dlares por
cada unidad producida. Al final de cada mes, se incurre en un costo de 0.75 dlares por unidad en
inventario. Las limitaciones de capacidad permiten la produccin de un mximo de 5 unidades
durante cada mes. El tamao de la bodegas de la empresa restringe el inventario final de cada
mes a 4 unidades cuando mucho. La empresa desea determinar un calendario de produccin para
cada mes considerando que la no atencin de una demanda determinada le significa perjuicio
debido a la poca demanda de su producto, y adems que reduzca al mnimo la suma de los costos
de produccin y de almacenamiento durante los cuatro meses. Suponer que hay 2 unidades a
mano a principio del primer mes y se requiere que al final de los 4 perodos haya 1 unidad.




Ing. Miguel Jimnez C. M.Sc.


Profesor Investigador


Espero que este mdulo ayude a
los estudiantes a comprender los
modelos de Programacin
Dinmica Determinstica.

Este mdulo muestra paso a
paso la metodologa de la
Programacin Dinmica de
ciertos problemas de
Programacin Matemtica que
son vistos en el curso de
Investigacin de operaciones II.
.


29

También podría gustarte