Você está na página 1de 15

Ejemplo 14.

Capítulo 14
Programación dinámica determinística

PROCESOS DE DECISION D E n E T A P A S

Un proceso de decisión de n etapas es el que puede separarse en cierto n ú m e r o de pa>.:


cíales, o etapas, los cuales pueden completarse en u n a o más f o r m a s . Las opciones para con": ;
etapas se d e n o m i n a n decisiones. U n a política es u n a secuencia de decisiones, u n a para cada t i
proceso.
La condición del proceso en una e t a p a d a d a se d e n o m i n a estado en esa etapa; cada decisior
ce u n a transición del estado actual a un estado asociado con la siguiente e t a p a . Un proceso de
de n etapas es finito si hay solamente un n ú m e r o finito de etapas en el proceso y un número fin:::
tados asociados a c a d a etapa.
M u c h o s procesos de decisión de n etapas tienen rendimientos (costos o beneficios) a s o c i a d ; : ;
decisión, y estos rendimientos pueden variar tanto con la etapa c o m o con el estado del proceso. E
tivo de analizar tales procesos es determinar una política óptima que dé c o m o resultado el me. or - = •
miento total.

Ejemplo 14.1 En el problema 1.15, el proceso de determinar cuánto se debe invertir en cada posibilidad p a n a
ximizar el rendimiento total, es un proceso de decisión de tres etapas. Considerar la oportunidad / representa a =
pa i (i = 1, 2, 3). El estado del proceso en la etapa / es la cantidad de fondos aún disponibles para invertir er i s m
i. Para la etapa 1, el inicio del proceso, hay 4 unidades de dinero disponibles; por lo tanto, el estado es 4. P a n
etapas 2 y 3, los estados pueden ser 0, 1, 2, 3, o 4, dependiendo de las asignaciones (decisiones) en etapas ar.:e- *
La decisión en la etapa / está representada por la variable x¡; los posibles valores de x¡ son los enteros de 0 al es:::
la etapa i, inclusive.
Una política óptima para el proceso se determina en el problema 14.1.

Un proceso de decisión de n etapas determinístico si el resultado de cada decisión (en partió, i- M


estado producido por la decisión) se conoce exactamente. Este capítulo c o m p r e n d e sólo aquello? p-ncs -i
sos de n etapas que son t a n t o finitos c o m o determinísticos. Los procesos estocásticos finitos se es: _; ._-»
en el capítulo 18; los procesos infinitos se presentan en el capítulo 20.

UN P R O G R A M A M A T E M Á T I C O

El p r o g r a m a m a t e m á t i c o

optímicese: z = f\{x{) +h{x2) + • • •+/„(*„)

con la condición: x\ + x2 + • • • + x„ ^ b (1-


con: todas las variables enteras y n o negativas

en q u e / , ( * , ) , f2(x2)> • • • , / , W son funciones (no lineales) conocidas de u n a sola variable y ¿> e? - "
n ú m e r o entero n o negativo conocido, es el modelo p a r a un tipo i m p o r t a n t e de procesos de decisi:- : -
etapas múltiples. A q u i , el n ú m e r o de etapas es n. La etapa 1 c o m p r e n d e la especificación de la va- ar
de decisión x¡, con u n a contribución resultante f\(X\) al rendimientto total; etc. Los estados son I 1.
: \ p . i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA 153

1 . . , b, que representan los posibles valores p a r a el n ú m e r o de unidades disponibles p a r a asignación.


~ :das las etapas posteriores a la primera tienen estos mismos estados asociados a ellas; la e t a p a 1 iiene el
:zo estado b.

Ejemplo 14.2 El programa (14.1), con n = 3 y b = 4, es el modelo para el problema 1.15.

PROGRAMACIÓN D I N Á M I C A

La p r o g r a m a c i ó n dinámica es u n a f o r m a de e n f o q u e de los procesos de decisión de optimización de


- etapas y se basa en el e n f o q u e de Bellman.

Principio de optimalidad. Una política óptima tiene la p r o p i e d a d de que, independientemente de las de-
: siones t o m a d a s p a r a llegar a u n e s t a d o particular en u n a etapa particular, las decisiones restantes
l i b e n constituir u n a política ó p t i m a p a r a a b a n d o n a r ese estado.
P a r a aplicar este principio, comiéncese con la última e t a p a de un proceso de n etapas y determínese
r a r a cada estado la mejor política para abandonar ese estado y completar el proceso, considerando que
xias las etapas precedentes se han concluido. Después continúese hacia atrás a lo largo del proceso, eta-
r a por e t a p a . En c a d a etapa, determínese la m e j o r política p a r a a b a n d o n a r cada estado y concluir el
r-oceso, c o n s i d e r a n d o que todas las etapas precedentes han sido concluidas y e m p l e a n d o los resultados
i obtenidos p a r a la etapa subsecuente. Al hacer esto, las anotaciones de la tabla 14-1 se calcularán,
donde

u = variable de estado, cuyos valores especifican los estados.


rrtj(u) = r e n d i m i e n t o ó p t i m o obtenido de concluir el proceso iniciado en la etapa j en el estado u
d,(u) zz decisión t o m a d a en la etapa j que permite obtener mj{ú)

Tabla 14-1

Última etapa

Penúltima etapa

Primera etapa

Las anotaciones correspondientes a la última etapa de los procesos, mn(u) y dn(u), generalmente pueden
calcularse directamente. (Véanse los problemas 14.1 y 14.3). El resto de las anotaciones se obtiene recur-
sivamente; esto es, las anotaciones para la etapa j(J = 1, 2,. . . , / ? - 1 ) se determinan c o m o funciones
de las anotaciones p a r a la etapa y + 1. La f ó r m u l a de recursión resulta dependiente del p r o b l e m a , y de-
be obtenerse de nuevo p a r a cada tipo diferente de proceso de n etapas. (Véanse los p r o b l e m a s 14.5 y
14.8.)
P a r a simplificar las cosas, la tabla 14-1 se ha a n o t a d o c o m o si cada etapa tuviera el m i s m o c o n j u n t o
de estados. Aun c u a n d o esto puede producirse artificialmente (penalizando a d e c u a d a m e n t e las f u n -
dones de rendimiento m¡), a m e n u d o resulta más n a t u r a l emplear diferentes variables de estado, cada
una con su p r o p i o r a n g o de valores, p a r a las distintas etapas. Desde luego, este-uso n o altera de ninguna
manera la aplicación del principio de o p t i m a l i d a d . (Véanse los problemas 14.19 y 14.20.)
154 PROGRAMACIÓN MATEMÁTICA [PARTE I

El e n f o q u e de la p r o g r a m a c i ó n dinámica está especialmente bien a d e c u a d o para aquellos p r o : s m


cuyo modelo es el sistema (14.1),•procesos en los cuales cada decisión p r o d u c e rendimientos por 2ru-
do, independientemente de las decisiones anteriores. P a r a el sistema (14.1), los valores de m, pan
u = 0, 1, . . . , b están d a d o s por la f ó r m u l a

m„{u)= óptimo {/„(*)}

L a f ó r m u l a de recursión es (véase el p r o b l e m a 14.1)


m¡(u)= óptimo {fi(x)+ m¡+\(u - x)} -
Osisu

p a r a j = m - 1, n - 2 1. E n el (14.2), la variable de decisión x [la cual se d e n o t a x„ (en


t o m a valores enteros, al igual que lo hace x ( = x ; ) , en (14.3). Aquel valor de x q u e dé el ó p t i m o - I
se t o m a c o m o dn{u), y aquel valor d e x que dé el ó p t i m o en (14.3) se t o m a c o m o c//w). Si más de un v a l e : : i r
da cualquiera de los ó p t i m o s , selecciónese arbitrariamente u n o de ellos c o m o la decisión óptima . L a
iución ó p t i m a al p r o g r a m a (14.1) es z* = m¡(b), el rendimiento ó p t i m o o b t e n i d o al completar los p r : -
sos que se inician en la etapa " 1 " con b unidades disponibles p a r a asignación. H a b i e n d o determ - ; :
las decisiones óptimas x¡*, x}, . . . ,x*se encuentran secuencialmente a partir de

xl = d¿b)
x*2 = d2(b-x*l)
x¡ = d3(b-x ?-x?) (J-í-r

x; = d „ ( ¿ - x í - x ? xí-i)

P R O G R A M A C I Ó N D I N Á M I C A CON D E S C U E N T O

Si u n a cantidad de dinero gana intereses a u n a tasa de i por periodo, el principal P(n) con v e r .
miento, u n a vez transcurridos n periodos al f u t u r o , tiene el valor presente (o descontado)

P(0) = a"P(n) where (Í4_S)

A m e n u d o se incluye el descuento, reemplazo de todas las cantidades en dólares al f u t u r o por _


valores presentes, en aquellos procesos de decisión de n etapas en los cuales las etapas representan pí
riodos y el objetivo es optimizar u n a cantidad en dinero. En la solución por programación dinámica. .
f ó r m u l a de recurrencia p a r a m / w ) , el m e j o r rendimiento c u a n d o se empieza en la etapa j y en el e s u :
u, incluye términos de la f o r m a m¡ + c0>), el m e j o r rendimiento e m p e z a n d o en la etapa j + c (c perioc:
después de la etapa./) y en el e s t a d o ^ . [(Véase, por ejemplo (14.3)]. Si mj+c(y) se multiplica por a c , d o n e ;
es el factor de descuento definido anteriormente, entonces nij + c (y) se ha d e s c o n t a d o a su valor prese- ;
al inicio de la etapa j. Se concluye que m¡(u) se descontará al inicio de la etapa 1, la cual es el inicio d ;
proceso. (Véase el p r o b l e m a 14.10.)

Problemas resueltos

14.1 Determínese u n a política ó p t i m a p a r a el problema 1.15 (véase el ejemplo 14.1).

Se inicia considerando la última etapa del proceso, etapa 3, y que todas las etapas previas, etapas 1 y 2»
se han completado. Es decir, que las asignaciones a las inversiones 1 y 2 se han realizado (aunque, en ei :
momento, no se sabe en qué consisten) y el proceso ha de completarse al asignar unidades de dinero a la -
versión 3. Ya que no se sabe cuántas unidades se asignaron a las dos primeras inversiones, no se sabe cuár::
unidades están disponibles para la inversión 3; por lo tanto, deberán considerarse todas las posibilidad;-
Habrá 0, 1,2, 3, o 4 unidades disponibles.
:\p. i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA 155

No importa cuántas unidades de dinero estén disponibles en la etapa 3, es claro, a partir de la definición
de f3(x) en la tabla 1-2, que la mejor forma de completar el proceso es asignar todas las unidades disponibles
a la inversión 3. La misma conclusión se obtiene al aplicar (14.2). Entonces,
m,(4) = max {f,(0), / 3 ( 1), /,(2), / 3 (3), / 3 (4)}
= max {0, 1,4, 5, 8} = 8 con d 3 (4) = 4
m 3 (3) = max {/ 3 (0),/ 3 (1),/ 3 (2),/a(3)}
= max {0,1, 4, 5} = 5 con d,(3) = 3
m 3 (2) = max {/ 3 (0),/ 3 (l),/ 3 (2)}
= max {0,1,4} = 4 con d3(2) = 2
m3(l) = max {/ 3 (0),/ 3 (l)} = max {0,1} = 1 con d 3 (l) = 1
m3(0) = max {/3(0)} = max {0} = 0 con d3(0) = 0
Estos resultados dan los primeros dos renglones en la solución tabular, tabla 14-2.

Tabla 14-2

0 1 2 3 4

m3(u) 0 1 4 5 8

d,(u) 0 1 2 3 4

miM 0 1 4 6 8

d2(u) 0 1 0 3 0

m,(u) 9

<¿,(u) 2

Habiendo completado la etapa 3, se tomará ahora la etapa 2, bajo la consideración de que la etapa 1 se
ha completado (aunque en este momento no se sepa cómo). Ya que no se sabe cuántas unidades se asignaron
a la inversión 1, no se sabe cuántas unidades están disponibles para la inversión 2; por lo que deberán consi-
derarse todas las posibilidades.
Una posibilidad es que 4 unidades estén disponibles en la etapa 2, lo cual implica que no asignaron uni-
dades a la inversión 1. Entonces, todas o algunas de estas 4 unidades pueden asignarse a la inversión 2, con el
resto disponible para la etapa 3. Si se asignaron x de estas 4 unidades a la inversión 2, el rendimiento es f2(x),
y las restantes 4 — x unidades están disponibles para la etapa 3. Pero se encuentra la mejor continuación a
partir de la etapa 3, cuando se dispone de 4 —x unidades; esto es m3(4 — x). El rendimiento total es, por lo
tanto, f2(x) + m 3 (4 — x); y el valor dex{x = 0, 1,2, 3, 4) que maximiza este rendimiento total, representa la
decisión óptima en la etapa 2 con 4 unidades disponibles. La fórmula (14.3), con j = 2 y u = 4, simplemente
formaliza esta conclusión.

m 2 (4) = max {/2(0) + m , ( 4 - 0), / 2 (1) + m 3 ( 4 - 1), / 2 (2) + m 3 ( 4 - 2), / 2 (3) + m 3 ( 4 - 3), f2(4) + m 3 (4 - 4)}
= max {0 + 8, 1 + 5, 3 + 4, 6 + 1, 7 + 0}= 8 con <¿2(4)=0.

Tratando en forma similar las otras posibilidades en la etapa 2, se obtiene:


m 2 (3) = max tf2(0) + m 3 (3 - 0), / 2 (1) + m 3 (3 - 1), / 2 (2) + m 3 (3 - 2), / 2 (3) + m 3 (3 - 3)}
= max {0 + 5,1 + 4, 3 + 1 , 6 + 0} = 6 con d2(3) = 3
m 2 (2) = max {f2(0) + m 3 (2 - 0), / 2 (1) + m 3 (2 - 1), / 2 (2) + m 3 ( 2 - 2)}
= max {0 + 4, 1 + 1, 3 + 0} = 4 con d2(2) = 0
m 2 (l) = max tf2(0) + m 3 (l - 0),/ 2 (l) + m 3 (l - 1)}
= max {0 + 1,1 + 0} = 1 con d 2 (l) = 1 (decidiendo arbitrariamente el empate)
m 2(0) = max {f2(0) + m 3(0 - 0)} = max {0 + 0} = 0 con d 2 (0) = 0
Reuniendo los cálculos para la etapa 2, se obtienen los renglones 3o. y 4o. de la tabla 14-2.
156 PROGRAMACIÓN MATEMÁTICA [PARTE I

Habiendo completado la etapa 2, se continúa con la etapa 1. Hay sólo un estado asociado con esta eta-
pa, u = 4.
m,(4) = max {/,(())+ m 2 ( 4 - 0), /,(1)+ m 2 (4 - 1), /,(2)4 m2(4 - 2), /,(3) + m2(4 - 3), /,(4)+ m 2 (4~ 4)}
= max{0 + 8, 2 + 6, 5 + 4, 6 + 1, 7 + 0}= 9 con d,(4)=2

Con estos datos se completa la tabla 14-2.


El rendimiento máximo que se puede obtener a partir de este programa de inversión de tres etapas ini-
ciando con 4 unidades, es w,(4) = 9 unidades. Para lograr este rendimiento, se asignan rf,(4) = 2 unidades a
la inversión 1, dejando 4 — 2 = 2 unidades para la etapa 2. Pero d2(2) = 0, lo cual indica que he deberán
gastarse unidades en esta etapa si solo se dispone de 2 unidades. Así, restan 2 unidades para la etapa 3. Va
que d3(2) = 2, ambas unidades deberán asignarse a la inversión 3. Estas conclusiones se formalizan mediante
las ecuaciones (14.4). Por lo tanto, la política óptima es asignar 2 unidades a la inversión 1, 0 unidades a la
inversión 2 y 2 unidades a la inversión 3.

14.2 Un camionero que t r a b a j a por su cuenta tiene 8 m 3 de espacio disponible en un camión q u e saldra
p a r a la ciudad de Nueva York. Un distribuidor que tiene grandes cantidades de tres artículos di-
ferentes, t o d o s destinados para esa ciudad, ha ofrecido al c a m i o n e r o los siguientes pagos por
t r a n s p o r t a r tantos artículos c o m o quepan en el camión:

Pago, Volumen,
Artículo $/art. mVart.

I 11 1
II 32 3
III 58 5

¿ C u á n t a s unidades de cada artículo deberá aceptar el camionero a fin de maximizar los pagos de
e m b a r q u e , sin exceder la capacidad disponible del camión?

Este problema puede considerarse como un proceso de tres etapas, que involucra asignaciones de espa-
cio a los artículos I, II, y III, respectivamente. Puede representarse mediante el modelo del programa(M.l),
con n = 3, b = 8 si x/J = 1, 2, 3) se define como el número de metros cúbicos del artículo j que habrán de
embarcarse, y si fpcj), rendimiento al asignar^ a la e t a p a j , está definido por la tabla 14-3. El estado, en una
etapa dada, es el número de metros cúbicos de espacio aún disponibles.

Tabla 14-3

El primer renglón de la tabla 14-3 es directo, ya que cada metro cúbico adicional asignado al artículo I
da un rendimiento adicional de $11. Para generar el segundo renglón de la tabla, nótese que cada articulo II
ocupa 3 m3, así que hasta que se tengan disponibles al menos 3 m \ ningún artículo de este tipo puede embar-
carse y no se obtendrá rendimiento. Si se asignan 3, 4, o 5 m3 al artículo II, sólo puede acomodarse un
artículo, con un rendimiento neto de $32. Si se asignan 6, 7, u 8 m 3 , entonces pueden embarcarse dos
artículos, con un rendimiento neto de $64. Un análisis similar es válido para el artículo III. No se obtiene
ningún rendimiento hasta que se le asignen 5 m 3 ; si se le asignan 5, 6, 7 u 8 m 3 , sólo un artículo III puede ser
embarcado por un rendimiento neto de $58.
El modelo, programa (14.1), se resuelve empleando (14.2) y (14.3), exactamente como en el problema
14.1. Los resultados se presentan en la tabla 14-4; todos los empaques se resolvieron seleccionando el más
pequeño que maximizara a x como d¿(u). La tabla 14-4 muestra que el mejor rendimiento total que puede
6
PROGRAMACIÓN MATEMÁTICA [PARTE I

Tabla 14-5

0 l 2 3 4 5 6 7 8 9
g \

g i(y) 0 4 8 11 14 17 19 21 22 23

0 2 4 6 8 10 12 14 16 18

gy(y) 0 1 2 3 6 8 11 15 20 26

gi(y) 0 1 7 9 14 16 21 23 25 27

Tabla 14-6

Producto 1 2 3 4

Volumen/art. 2 1 6 3

barque, mientras que la restricción lineal es el modelo para la limitación sobre el volumen total que puede ser
acomodado, nueve unidades. El coeficiente de .y, en esta restricción se interpreta como el volumen ocupado
por una unidad del producto j (véase tabla 14-6).

Se denotan ahora las nuevas variables Xj(J = 1, 2, 3, 4) como el número de unidades de volumen del
producto j que serán embarcadas. El programa (1) es equivalente al siguiente programa de la forma (14.1):

maximicese: z = /i(xi) + /2O£2) + / J ( x j ) + FÁ**)

con la condición: ii + xj + u + * 4 s 9 (2)


con: todas las variables no negativas y enteras
donde f.{Xj) denota el rendimiento al asignar Xj unidades de volumen al producto j. Estas funciones se deri-
van de las tablas 14-5 y 14-6; por ejemplo,

f / J ) = rendimiento al embarcar 7 unidades de volumen del producto 4


= rendimiento al embarcar dos unidades del producto cuatro, ya que cada unidad del producto
cuatro requiere tres unidades de volumen.

= «4(2) = 7

Continuando de esta forma, se completa la tabla 14-7.

Tabla 14-7

14.5 Establézcase una fórmula de recursión análoga a (14.3) para el siguiente problema. U n a pequeña
c o m p a ñ í a p u e d e fabricar hasta c u a t r o c o m p u t a d o r a s p o r semana y se ha c o m p r o m e t i d o a entre-
gar en cada u n a de las siguientes 4 semanas tres, dos, c u a t r o y dos c o m p u t a d o r a s , respectivamen-
te. Los costos de producción están en f u n c i ó n del n ú m e r o de c o m p u t a d o r a s fabricadas y se dan
(e.i miles de dólares) c o m o sigue:
7
:\p. i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA

obtener el catnionero, iniciando la etapa 1 con 8 m 3 de espacio disponible, es m,(8) = $91. Para lograr esto,
3 m } [rf,(8) = 3] deberán ser asignados al artículo I, dejando 5 m3 para las siguientes etapas. No deberá asig-
narse ningún volumen al artículo II [d2(5) = 0], dejando 5 m3 para la etapa 3, los cuales deberán asignarse a.
artículo III [t/3(5) = 5]. En conclusión, el camionero deberá llevar tres artículos I y un artículo III.

Tabla 14-4

0 1 2 3 4 5 6 7 8

m3(u) 0 0 0 0 0 58 58 58 58

dÁu) 0 0 0 0 0 5 5 5 5

m2(u) 0 0 0 32 32 58 64 64 90

d2(u) 0 0 0 3 3 0 6 6 3

m ,(u) 91

d,(u) 3

14.3 Conviértase el siguiente p r o g r a m a al sistema (14.1):

maximícese: z = l l y i + 32y 2 + 58y 3


con la condición: yi + 3 y 2 + 5 y 3 s 8 (1)

con: todas las variables n o negativas y enteras

Este programa es un modelo matemático para el problema 14.2 y se denotayjj = 1, 2, 3) al numere se


artículos (en contraste con el número de metros cúbicos) del artículo j a embarcar. La restricción lineal es ;
modelo de la limitación de volumen, siendo el coeficiente de y¡ el volumen por cada unidad del artícul;
Como se mostró en el problema 14.2, se obtiene un modelo matemático para este programa en la forma ::
(14.1) —el cual tiene coeficientes unitarios en la restricción de desigualdad— y se definen nuevas variables
para denotar el número de metros cúbicos que se embarcarán de cada artículo. Se tiene entonces:
maximícese: z = /i(xi) + f2(x2) + h(x3)

con la condición: ii + i ¡ + j j < 8 r


con: todas las variables no negativas y enteras
donde las funciones de rendimiento f(x) están definidas por la tabla 14-3.
Obsérvese que (1) no se toma en la forma (14.1), por la transformación lineal
xi = yi Xi = 3y2 x3 = 5y 3

Aunque esta transformación produce los tipos deseados de función objetivo y de restricción de des c—
dad, mapea al conjunto de puntos enteros no negativos (y t , y2, y}) en un subconjunto de los puntos er
no negativos (x,, x2, x 3 ). Se necesitan precisamente las funciones f f x ) definidas en el problema 14.2, par; t
cer posible la expansión de este subconjunto a todo el conjunto.

14.4 T r a n s f ó r m e s e el siguiente p r o g r a m a al sistema (14.1):

maximícese: z = gi(yO + g 2 (y 2 ) + g s f o ) + gt(yd

con la condición: 2yi + y 2 + 6y 3 + 3y< s 9


con: todas las variables n o negativas y enteras
donde la gyO) (J = 1. 2, 3, 4) están definidas en la tabla 14.5.

Imitando el enfoque empleado en el problema 14.3, se considera a y¡ como el número de urna.: •


producto j a ser embarcados en cierto camión. La tabla 14-5 representa entonces una cédula de tarifa; : : s-
:\p. i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA 159

Unidades producidas, x 0 1 2 3 4

Costoyix) 4 13 19 27 32

Las c o m p u t a d o r a s pueden entregarse a los consumidores al final de la misma semana en q u e se


fabrican o pueden almacenarse p a r a su entrega f u t u r a , con un costo de $400 por s e m a n a . Debido
a la capacidad limitada de almacenamiento, la c o m p a ñ í a n o puede almacenar más de tres c o m p u -
t a d o r a s a un tiempo. El inventario actual es cero y la c o m p a ñ í a n o desea ningún inventario al fi-
nal de la s e m a n a 4. ¿ C u á n t a s c o m p u t a d o r a s deberán fabricarse en c a d a u n a de las siguientes
c u a t r o semanas, para cumplir t o d a s las d e m a n d a s a un costo m í n i m o total?

Como se mostró en el capítulo 9, los problemas de producción de este tipo se plantean mediante un mo-
delo de problemas de transporte. Estos modelos no tienen la forma (14.1); por lo tanto, (14.3) no es apli-
cable. Sin embargo, los problemas de producción son procesos de decisión de n etapas que pueden resolverse
mediante programación dinámica.
El problema de producción presente es un proceso de cuatro etapas, donde la etapa j representa la se-
mana j(j = 1 ,2 3, 4). El estado u en la etapa j es el número de computadoras en inventario al inicio de la
semana j. Sean

m,(u) = costo mínimo de completar el programa de producción que comienza en la etapa j en el estado u
d,(u) = programa de producción para la etapa j con la que se logra m/u)
D, = demanda en la etapa j
I,(u) = costo de inventario cargado a la etapa j, cuando el estado es u
f¡(x) = costo de producir x computadoras en la etapa j

Considérese el momento que la compañía entra a la etapa j con u computadoras en inventario. Durante esta
etapa, la compañía puede producir cualquier cantidad de computadoras según su capacidad, siempre y cuan-
do la suma de su nivel de producción y el de inventario sea al menos tan grande como la demanda Dj. Cual-
quier cantidad que exceda a DJy se almacena en inventario para la siguiente etapa. En particular, si se produ-
cen x computadoras en la etapa j, se tiene el costo de producción fj(x). Las u unidades almacenadas generan
un costo de almacenamiento I/u), por lo que se tiene un costo total en el periodo j de f / u ) + I/u). Esto deja
u + x — Dj unidades en el inventario para la etapa j + 1, y el costo mínimo para completar el proceso en
este punto es mjJr ,(u + x - DJ). Por lo tanto, el costo total para completar el proceso, comenzando en la eta-
pa j con un programa de producción de x unidades, es f/.X) + I/u) + rrij + l(u + x — DJ). La mejor deci-
sión para la etapa j con u unidades en almacén es producir aquella cantidad x que minimice este costo. En-
tonces, para j = 1, 2, 3,

m¡(u) = min {f¡(x)+ I,(u)+ m,+,(u +x - D¡)}


U)
= I¡(u) + min {/,(*) + m ; + ,(« + x - £>,)}
X

en donde x toma los valores 0, 1 , 2 , 3 , 4 . Para garantizar que


0SU+Í-D/S3 (capacidad de almacenamiento)

se fija m¡ + ,(w) igual a un costo penal prohibitivamente alto, M, siempre que u < 0 o u > 3.
Para este problema, tanto los costos de inventario como los costos de producción son independientes de
la etapa y están dados respectivamente por I/u) = 4u (en unidades de millares de dólares) y f / x ) = f(x)
como se definió en la tabla de costo de producción. Las demandas son D¡ = 3, D2 = 2, D} = 4, y Dt = 2. La
relación (1) se simplifica a

m¡(u) = 4u+ min {/(x) + m / + i(« + x - D¡)} (2)


1.2.3.4

M.6 Resuélvase el problema f o r m u l a d o en el p r o b l e m a 14.5.

Al inicio de la semana 4, hay cero, una, dos o tres computadoras almacenadas. Ya que no se desea con-
servar un inventario al final de la semana 4, la decisión óptima en la etapa 4 es producir sólo aquella parte de
160 PROGRAMACIÓN MATEMÁTICA [PARTE I

la demanda de la cuarta semana, Z?4 = 2 que no puede ser cubierta por el inventario. Sólo se presentarán di-
ficultades si el inventario de entrada es de tres computadoras, lo cual excede a la demanda. Para prevenir es-
ta situación en la política final, se le asigna para completarlo, un muy alto costo penal, 1 000 (unidades de
millares de dólares). El costo de completar los otros estados es el costo de conservar el inventario actual más
el costo de producción de la diferencia entre demanda e inventario. Así,

m4( 3) = 1 000
v m4(2) = costo de almacenamiento de dos computadoras y costo de producción de cero computadoras
= 4(2) + 4 = 1 2 con dÁ(2) = 0
m4( 1) = costo de almacenamiento de una computadora y costo de producción de una computadora
= 4(1) + 13 = 17 con d4( 1) = 1
mA(0) = costo de almacenamiento de cero computadoras y costo de producción de dos computadoras
= 4(0) + 1 9 = 1 9 con rf4(0) = 2

Reuniendo estos resultados, se tienen los primeros dos renglones de la tabla 14-8. El resto de las anotaciones
se obtienen de la aplicación paso a paso de (2) del problema 14.5, para j = 3, 2, 1. Nuevamente, se emplea M
= 1 000 para evitar estados de inventario imposibles.

Tabla 14-8

0 1 2 3

m4(u) 19 17 12 1000

d,(u) 2 1 0

m3(u) 51 50 46 44

dAu) 4 3 2 1

m-¡(u) 70 68 63 66

M") 2 1 0 0

m,(u) 97

diM 3

Se tiene de la tabla 14-8 que el costo mínimo de producción para completar todo el proceso comenzando
en la etapa 1 con 0 unidades de inventario es:

M,(0)= $97 000

Para lograr esto, la compañía debe producir d¡(0) = 3 computadoras en la primer semana, las cuales se em-
barcan de inmediato a los consumidores. Entonces, la compañía entra a la semana 2 con un inventario de 0 y
debe producir rf2(0) = 2 computadoras, lo cual nuevamente cubre sólo la demanda. El nivel óptimo de pro-
ducción para la etapa 3, con cero computadoras en el inventario, es d}(0) = 4, con lo cual se cubre exacta-
mente la demanda; el nivel óptimo de producción para la etapa 4, con cero computadoras en el almacén, es
de É / 4 ( 0 ) = 2 . Entonces, la política óptima es producir exactamente el número de computadoras necesarias
para satisfacer la demanda y no tener ninguna en inventario.

14.7 Un f a b r i c a n t e tiene u n a orden de 12 l o c o m o t o r a s diesel, las cuales serán entregadas tres cada a ñ o
d u r a n t e los próximos 4 años. Los d a t o s de producción se presentan en la tabla 14-9. Las locomo-
toras pueden entregarse al final del mismo a ñ o en que se producen, o el fabricante puede almace-
narlas a un costo anual de S30 000 por l o c o m o t o r a , para ser e m b a r c a d a s en un a ñ o posterior.
P o r lo general, el f a b r i c a n t e tiene u n a l o c o m o t o r a almacenada y desearía incrementar este inven-
tario a tres al final de c u a t r o años. Determínese un p r o g r a m a de producción que c u b r a todos los
requisitos a u n costo total m í n i m o .
CAP. 14] PROGRAMACIÓN DINÁMICA DETERMINÍST1CA 161

Tabla 14-9

Años

1 2 3 4

Capacidad de producción
1 2 3 4
(turno normal)

Capacidad de producción
2 2 3 2
(titmpo extra)

C o s t o por máquina
$350 000 $370 000 $395 000 $420 000
(turno normal)

Costo por máquina $375 000 $400 000 $430 000 $465 000
(tiempo extra)

Este problema se resuelve por programación dinámica, empleando la notación y la fórmula de recursión
(1) desarrolladas en el problema 14.5. Se han de considerar cuatro etapas (años), siendo las decisiones las es-
pecificaciones de los niveles de producción para las etapas. La capacidad de producción en cada etapa es la
suma de las capacidades de los turnos normal y de tiempo extra para ese año. Fijando un muy alto costo pe-
nal, f{x) = M, si en la etapa j no se puede cumplir un nivel x. Los datos de producción pueden formularse
nuevamente como se muestra en la tabla 14-10, con todos los costos dados en unidades de millares de dólares.

Tabla 14-10

0 1 2 3 4 5 6

/,(*) 0 350 725 1100 M M M

/ 2 (x ) 0 370 740 1140 1540 M M

fi(x) 0 395 790 1185 1615 2045 2475

f,(x) 0 420 840 1260 1680 2145 2610

La forma más fácil de asegurar un inventario final de tres locomotoras es aumentando en tres la deman-
da en la última etapa. Así, Z?, = D2 = D} = 3, mientras £>4 = 6. El máximo inventario posible, en cualquier
etapa, es de cinco locomotoras, el cual se logra al final de la etapa 3, bajo condiciones de producción máxi-
ma en todas las etapas. En consecuencia, los estados serán u = 0, 1, 2, 3, 4, 5 y se define / / « ) = 30u (inde-
pendiente de j). También se hace m, + ,(w) = M(j = 1, 2, 3) siempre que u> 5 o u < 0.

Etapa 4 Si se tiene u locomotoras almacenadas al inicio de esta etapa, hay un cargo por almacenamiento de
30 u mil dólares. Entonces, la decisión de costo mínimo para completar el proceso es fabricar
dí(u) = DA-u = 6-u
locomotoras con un costo de / 4 (6 — u). El costo mínimo para completar es:
m,(u) = 30u + /<(6- u)
Estas son las anotaciones en los primeros dos renglones de la tabla 14-11.

El resto de la tabla 14-11 se obtiene a partir de la fórmula de recursión (1) del problema 14.5, en la cual
la minímización es sobre x = 0 6. Los empates para d2(2), d2( 1), y d2(0) se decidieron seleccionando
en cada caso el número menor que minimizara a x. Se ve que el costo total mínimo para completar el proceso
es m,(l) = $5 680 000. Para lograr este costo, es necesario producir dos locomotoras en la etapa 1 [rf, = 2],
sin almacenar ninguna; para la etapa dos es necesario una producción de tres locomotoras ¡rf2(0) = 3], sin
almacenar ninguna locomotora; para la etapa tres es necesaria una producción de cinco lócomotoras
[rf3(0) = 5], conservando dos locomotoras en inventario; y, en la última etapa, es necesaria una producción
de cuatro lomocotoras [rf4(2) = 4],
162 PROGRAMACIÓN MATEMÁTICA [PARTE I

Tabla 14-11

0 1 2 3 4 5

m,(u) 2 610 2 175 1740 1350 960 570

d,(u) 6 5 4 3 -)
i. 1

m 3 (u) 3 785 3 385 2985 2 620 2 255 1 890

d,(u) 5 4 3 2 1 0

m2(u) 4 925 4 555 4185 3 815 3 475 3 135

d¿u) 3 2 2 2 1 0

m,(u) 5680

d,(u) 2

14.8 Establézcase una fórmula de recursión para resolver el siguiente problema mediante programa-
ción dinámica. Una c o m p a ñ í a de m á q u i n a s vendedoras opera n o r m a l m e n t e u n a m á q u i n a con
dos a ñ o s de u s o en cierto lugar. La tabla 14-12 da las estimaciones de mantenimiento, costo de re-
e m p l a z o e ingresos (todo en dólar.es) para cualquier m á q u i n a en este sitio, en f u n c i ó n de la edad
de la m á q u i n a .

Tabla 14-12

Edad, u

0 1 2 3 4 5

Ingreso, I(u) 10 000 9500 9200 8500 7300 6100

Mantenimiento M (u) 100 400 800 2000 2800 3300

Reemplazo, R(u) 3500 4200 4900 5800 5900

De a c u e r d o a u n a política establecida, ninguna m á q u i n a se conserva después de que cumple seis


a ñ o s y solamente se reemplazan por m á q u i n a s nuevas. Determínese una política de reemplazo
q u e maximice el beneficio total p a r a este sitio d u r a n t e los próximos 4 años.

Este problema de reemplazo de equipo es el proceso de cuatro etapas, donde cada etapa representa un
año en el periodo bajo consideración. Los estados en una etapa dada son las posibles edades de las máquinas
que entran a esta etapa; esto es, u = 1, . . . , 5. En cada etapa, la variable de decisión tiene sólo dos valores,
los cuales pueden denotarse como CONSERVAR (quedarse con la máquina actual) y C O M P R A R (reemplazar la má-
quina actual con una nueva máquina). Se definen

m,(u) = beneficio máximo que se logrará empezando en la etapa y, en un estado u


dj(u) = la decisión en la etapa j que permite lograr mj(u)

y sean las funciones /(«), M(u) y R(u) tal como se define en la tabla 14-12. Sí la compañía entra en la etapa j
con una máquina u años de antigüedad y decide CONSERVAR la máquina, costará a la compañía M(u) mantener
la máquina, para tener un beneficio anual I(u) - M(u). La compañía pasará después a la siguiente etapa con
una máquina que tenga (u + 1) años de antigüedad, y el mayor beneficio que puede lograr con ella (y con su
posible sucesora) es m¡ + ,(u + 1). Entonces, el beneficio general hasta completar es:

/(«)- M(u)+ m /+ i(u + 1)


:\p. i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA 163

Si en vez de esto la compañía decide vender la máquina con u años de antigüedad en la etapa j y COMPRAR una
nueva máquina, tiene un costo de reemplazo de R(u). La nueva máquina tiene una edad de 0 años, así que
generará un ingreso de 7(0) y tendrá un costo de mantenimiento de M(0). El beneficio anual será de 1(0) —
M(0) - R(u). Después, la compañía entra a la siguiente etapa, un año de antigüedad, y el mayor beneficio
subsecuente que puede lograr es rrij + ,(1). En este caso, el beneficio general para completar es:
1(0)-M(0)- R(u) + m;ti(l) (2)
La decisión óptima en la etapa j produce la mayor de las cantidades (1) y (2); esto es,
m y (u) = max { / ( « ) - M(u) + m /+1 (u + 1), 1(0) - M(0) - R(u) + m / + ,(l)} (3)

14.9 Resuélvase el p r o b l e m a f o r m u l a d o en el p r o b l e m a 14.8.

Se observa que, comenzando la etapa 1 con una máquina de 2 años de antigüedad, es imposible entrar a
la etapa j(j = 1 4) con una máquina de más dey + 1 años de antigüedad o con una edad j. Por lo tan-
to, se fijará m/u) = — M, un rendimiento negativo muy alto, siempre que u > j + l o u — j.

Etapa 4 La fórmula (3) del problema 14.8 también es válida para j = 4, si se define m5(u) = 0. Así,

m<(5) = max {/(5)-Ai(5), /(O) - M(0)~ R(5)}


= max {6100 - 3300,10 000 - 100 - 5900} = 4000 con d t ( 5) = COMPRAR

m 4 (4) = - A i
m 4 (3) = max {/(3) - M(3), 1(0) - M(0) - «(3)}
= max {8500 - 2000, 10 000 - 100 - 4900} = 6500 con d*( 3 ) = CONSERVAR

m 4 (2) = max {1(2) - M(2), 1(0) - M(0) - R(2)}


= max {9200 - 800, 10 0 0 0 - 100 - 4200} = 8400 con di(2)= CONSERVAR

m 4 ( l ) = m a x { / ( l ) - M ( l ) , 1(0) - M(0) - R(l)}


= max {9500 - 400, 10 000 - 100 - 3500} = 9100 con di( 1 ) = CONSERVAR

Estos resultados constituyen los primeros dos renglones de la tabla 14-13.

Tabla 14-13

1 2 3 4 5

m4(u) 9100 8400 6500 -M 4000

CONSER- CONSER- CONSER-


d,(u) VAR VAR VAR COMPRAS

m,(u) 17 5 0 0 14 9 0 0 -M 13 2 0 0 -M

d,(u) CONSER- CONSER-


COMPRAR
VAR VAR

m2(u) 24 000 -M 22 5 0 0 -M -Ai

CONSER-
di(u) VAR
COMPRAR

m,(u) 30 900

CONSER-
d,(u) VAR

El resto de las anotaciones en la tabla 14-13 se obtienen con la aplicación secuencial de la fórmula de re-
cursión para j = 3, 2, 1, con los rendimientos para los estados imposibles penalizados como previamente se
estipuló. Se tiene de la tabla 14-13 que la compañía puede lograr un beneficio total máximo de $30 900 du-
rante los próximos 4 años, empezando con una máquina con 2 años de antigüedad. Para lograr esto, deberá
conservar la máquina actual durante un año más, comprar entonces una nueva máquina y conservarla por el
resto del periodo.
164 PROGRAMACIÓN MATEMÁTICA [PARTE I

14.10 Resuélvase el p r o b l e m a descrito en el p r o b l e m a 14.8, si el objetivo es maximizar el beneficio tota!


descontado d u r a n t e los próximos 4 años, con u n a tasa efectiva de interés de 10% a n u a l .

Sin el descuento, la fórmula de recursión para el beneficio óptimo es (3) del problema 14.8. En términos
de valores presentes para la etapa j, la fórmula se vuelve

m¡(u) = max { / ( u ) - M(u) + am¡*,(u + 1), /(O) - M(0)- R(u) + <*m,+1( 1)} (1)

Aquí, a = *
1 -r U.1U
= 0.90909091

Se resuelve (1) por el mismo procedimiento que se empleó en el problema 14.9. La solución se presenta
en la tabla 14-14. Comparándola con la tabla 14-13, puede verse que, en este caso, el descuento no ha cam-
biado la política óptima —sigue siendo CONSERVAR, COMPRAR, CONSERVAR, C O N S E R V A R — pero se ha reducido
el beneficio óptimo a $26 777.

Tabla 14-14

1 2 3 4 5

mA(u) 9100 8400 6500 -M 4000

CONSER- CONSER- CONSER-


d<(u) VAR VAR VAR ROMPRAR

m¡(u) 16 736 14 309 -M 12 373 -Ai

CONSER- CONSER-
d,(u) VAR VAR COMPRAR

m2(u) 22108 -M 20 215 -M -M

di(u) CONSER- COMPRAR


VAR

m¡(u) 26 777

CONSER-
d,(u) VAR

Problemas complementarios

14.11 David Vázquez, contador público, ha recibido ofertas de tres diferentes clientes que desean sus servicios. A
cada cliente le gustaría que el señor Vázquez trabajara para él de tiempo completo; snvembargo, cada cliente
está deseoso de emplear al señor Vázquez por tantos días semanales como él pueda hacerlo, por los honora-
rios que se muestran en la tabla 14-15. ¿Cuántos días deberá dedicar el señor Vázquez a cada cliente para
maximizar su ingreso semana!?
Tabla 14-15

Número de Cliente 1, $ Cliente 2, $ Cliente 3, $


días

0 0 0 0
1 100 125 150
2 250 250 300
3 400 375 400
4 525 500 550
5 600 625 650

14.12 Resuélvase nuevamente el problema 14.11 con la restricción adicional de que el señor Vázquez trabaje al - :
nos 1 día a la semana para cada cliente. (Consejo: Penalícese la posibilidad de trabajar 0 días para cualq. e-
cliente.)
:\p. i4i PROGRAMACIÓN DINAMICA DETERMINÍSTICA 165

•4.13 Cuatro compañías han solicitado que un lanchón de carga capaz de transportar hasta 10 toneladas de mate-
rial, lleve sus mercancías de San Luis a Nueva Orleans. Cada compañía puede suministrar tanta mercancía
como el capitán del lanchón desee aceptar. La mercancía deberá ser embarcada en cantidades limitadas. La
tabla 14-16 da los costos de embarque.

Tabla 14-16

Compañía Peso de la Costo de


mercancía,, embarque, $/art.
Iton/art.

I 1 10
II 2 25
III 3 45
IV 4 60

¿Cuántos artículos de la mercancía de cada compañía deberá aceptar el capitán del lanchón, a fin de maxi-
mizar las cuotas totales de embarque, sin exceder la capacidad del lanchón?

14.14 Úsese la programación dinámica para resolver el problema 1.16, bajo la restricción adicional de que los
juegos se produzcan en números enteros. (Consejo: Cuéntese el tiempo en unidades de media hora).

14.15 maximícese: z = 5* í + 5xi + 3x3


con la condición: 3.x i + 4x2 + xj s 11

con: todas las variables no negativas y enteras

14.16 Úsese programación dinámica para resolver el problema 1.8.


Tabla 14-17

Edad Ganancia Reemplazo


miento

1 20 8 18
Modelo 2 17 11 25
actual 3 35

0 21 1 6
Modelo 1 20 19
nuevo 2 17 11 26
3 36

0 21 1 6
Modelo 1 17 7 18
para el 2 15 26
próximo año 3 36

0 22 2 7
Modelo para 1 19 8 19
dentro de 2 17 12 24
dos años 3 37

0 24 3 6
Modelo para 1 18 4 12
dentro de 2 15 11 27
tres años 3 37

0 25 3 6
Modelo para 1 19 5 13
dentro de 2 14 10 27
cuatro años 3 38
166 PROGRAMACIÓN MATEMÁTICA [PARTE I

14.17 Úsese programación dinámica para resolver el problema 9.10.

14.18 Obténgase una fórmula de recursión para el problema descrito en el problema 14.8, y después resuélvase si
además de elegir entre conservar la máquina usada con menos años que su modelo, la compañía puede tam-
bién comprar una máquina usada con menos años que su modelo actual. Considérese el costo de reemplazar
una máquina con u años de antigüedad por una máquina con x años de antigüedad, como la diferencia entre
los costos de su reemplazo por una máquina. Por ejemplo, el costo de reemplazar una máquina con 3 años
de antigüedad por una máquina con 1 año de antigüedad es $4 900 — $3 500 = $1 400.

14.19 Establézcase una fórmula de recursión para el siguiente problema y luego resuélvase. Una pequeña
compañía constructora tiene actualmente un camión de volteo de 1 año de antigüedad. En la tabla 14-17 se
dan estimaciones del mantenimiento, costos de reemplazo y de los beneficios que se pueden esperar en dine-
ro, junto con datos similares para camiones nuevos que podrían comprarse en el futuro; todas las cantidades
están en unidades de $1 000. Los camiones nunca se conservan durante más de 3 años y los reemplazos se ha-
cen sólo por modelos nuevos. Determínese una política de reemplazo de beneficio máximo para esta má-
quina durante los próximos 5 años.

14.20 Resuélvase el problema de asignación de 3 x 3, con matriz de costo

Labores

1 2 3
o
Cu c 12 c 13
C21 C22 C-a
H 3 Cj| C32 C33

(véase el capítulo 9), por programación dinámica. ¿Para matrices más grandes, podría este enfoque competir
con el método húngaro?

14.21 Resuélvase el problema 14.7 con descuento, si la tasa efectiva de interés es del 7% anual.

14.22 Resuélvase el problema 14.18 con descuento, si la tasa efectiva de interés es del 8% por año.

Você também pode gostar