Вы находитесь на странице: 1из 28

27 Congreso Nacional de Estadstica e Investigacin Operativa

Lleida, 8-11 de abril de 2003


1


PROGRAMACION DINAMICA.
CASOS PRACTICOS

R. Pintor
Departamento de Ingeniera Industrial
Centro Universitario de Ciencias Exactas e Ingenierias
Universidad de Guadalajara, 44930 Guadalajara, Jalisco, Mxico
E-mail: rpintor@cucei.udg.mx

RESUMEN
Desde los inicios de la Investigacin Operativa, a fines de primera mitad del siglo XX
se han publicado un gran numero de libros acerca del tema. Desafortunadamente la
gran mayora de estos libros son de carcter general, esto es libros de texto los cuales
abarcan las principales tcnicas de Investigacin Operativa (programacin lineal, redes,
teora de colas, procesos markovianos, etc.) y por lo tanto, al tener que abarcar tantos
temas es necesario sacrificar detalles en la explicacin de cada uno de ellos.

Por otra parte, la poca literatura especializada que existe (en Amrica latina) acerca de
Programacin Dinmica, se ha publicado en idiomas extranjeros con modismos
difciles de comprender.

Dentro de la estructura del presente trabajo se ha tratado de dejar a un lado la
sofisticacin matemtica, sin embargo se requiere que el lector tenga conocimientos
bsicos de clculo diferencial e integral, as como buenas bases de teora de
probabilidad.


Palabras y frases clave: Programacin Dinmica. Teoria Hamiltoniana, Origen
Destino
Clasificacin AMS: 90c39, 49L20, 49LXX


2
1. Introduccin
Durante los aos que he impartido clases del tema a los alumnos de Ingeniera
Industrial, he detectado una gran dificultad en la comprensin del tema; Esto se puede
deber a varias razones:
Falta de entendimiento para analizar y comprender situaciones
interrelacionadas entre s.
Deficiente conocimiento de Teora de probabilidad, lgebra y Clculo
Diferencial e Integral.
Escasez de material de apoyo como libros, artculos, casos prcticos.

Es propsito del presente trabajo abordar el tema de una forma sencilla y comprensible.

Existen muchas situaciones en las cuales tomar una decisin afecta una secuencia de
decisiones futuras, cada una de ellas interrelacionada con la anterior, (por ejemplo, las
unidades a producir en una fabrica en el mes de mayo afecta el inventario inicial del
mes de junio, y por lo tanto las unidades a producir ese mes). El analizar por separado
cada una de las decisiones no es un procedimiento que garantice una optimizacin
global de los recursos.

La tcnica matemtica adecuada para atacar este tipo de problemas es la Programacin
Dinmica. Al contrario de la Programacin Lineal no existe una forma estndar para
formular los problemas, sino que es necesario estructurar la funcin objetivo para cada
problema. Por ello es necesario abstraer el significado de los conceptos manejados por
la P.D. para as poder discriminar aquellas situaciones que deben de ser resueltas con
esta tcnicas.
Dado que no existe una frmula general, a continuacin se presentan diversos
problemas con sus respectivas soluciones.
2. Anlisis de destino a origen
La mayora de las personas ha vivido por lo menos una vez, la experiencia de
encontrarse en una sala de espera, seleccionar una revista al azar y hallar dentro de sus
pginas un laberinto (Figura 2.1). Dependiendo del tiempo que uno pronostique
permanecer en la sala de espera ser la estrategia a seguir en la resolucin. La mayora
de los lectores estarn de acuerdo en que una forma rpida de encontrar la solucin al
laberinto consiste en partir del destino (D), y de ah tratar de encontrar la ruta que
conduzca a alguna de las entradas o puntos de partida (Ei).

En s, lo que se est haciendo es reducir el problema, limitndose fsicamente,
y calculando resultados parciales. Para el caso del laberinto se acota el problema en una
superficie menor (Figura 2.2), y se encuentran rutas alternativas desde la frontera
(Puntos Ai), hacia el destino (D). Una vez encontrada la solucin para esta etapa se
amplia la cobertura del problema, siendo ahora necesario encontrar rutas desde la
3
frontera (puntos Bi) hacia el punto D; pero como ya es sabido que los puntos Ai
conducen hacia D, no es necesario efectuar todo el anlisis sino simplemente unir los
puntos Bi con algn Ai (Figura 2.3).

De nuevo, una vez resuelto el problema en esta etapa se ampla la cobertura
del mismo, situndose ahora en el problema original con la diferencia de que ahora se
encuentra con resultados parciales. Esto es, no se buscan rutas de algn Ei a D, sino de
Ei a algn Bi, ya que se conoce de antemano que todos los Bi cuentan con una ruta para
llegar a D (en este caso pasando por algn Ai) (Figura 2.4).




4








5
El Problema de la ruta.

Un caso tpico grfico para entender mejor los conceptos de la Programacin
Dinmica, es el problema conocido como la ruta. Considrese el caso el caso de un
chofer de un trailer, el cual debe de transportar desde A hasta B, pasando por varias
ciudades en su recorrido (Figura 2.5) .

El seleccionar una ruta tiene asociado un costo el cual puede medirse de
distintas maneras (gastos de operacin, kilmetros, tiempo de recorrido, etc.), por lo que
el objetivo del chofer ser el de seleccionar la ruta con el menor costo total. Para
facilidad de anlisis se han agrupado las doce ciudades localizadas entre los puntos A y
B, en cuatro zonas; de tal manera que las ciudades Z
1
, Z
2
y Z
3
se encuentran en la zona
4, las ciudades Z
4
, Z
5
y Z
6
en la zona 3, etc. (mas adelante se explicar porque las zonas
se enumeran en sentido inverso). Por lo que el chofer necesita realizar 5 decisiones
referentes hacia donde dirigirse:

1) Hacia donde dirigirse encontrndose en A.
2) Hacia donde dirigirse encontrndose en la zona 4.
3) Hacia donde dirigirse encontrndose en la zona 3.
4) Hacia donde dirigirse encontrndose en la zona 2.
5) Hacia donde dirigirse encontrndose en la zona 1.





Figura 2.5 Problema de la ruta.

Slo esta ltima decisin es conocida, siendo dirigirse a B. Ntese que el
resolver cada decisin independientemente de las otras no resulta en una ruta ptima, ya
que primero se seleccionara A Z
2
que es la de menor costo, terminando en la ruta A,
Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,
6
Z
2
, Z
5
, Z
8
, Z
10
, B, con un costo total de 26. La manera de solucionar el problema es muy
semejante al mtodo empleado en el laberinto:
- Anlisis de objetivo a origen.
- Limitar el problema, amplindolo despus de cada anlisis.

Supongamos que el problema se limita a la Zona 1 (es por ello que las zonas se
enumeran en orden regresivo), significa que el chofer se podra encontrar en cualquiera
de las tres ciudades Z
10
, Z
11
y Z
12
. Es necesario encontrar una solucin para cada una de
las ciudades aunque en realidad se sabe que slo se transitar por una de ellas. En este
caso las soluciones son obvias; si el objetivo es llegar a B se deben de seguir las rutas
directas, sto es:

Ciudad
Origen
Ruta Costo
Z
10
Z
10
B 7
Z
11
Z
11
B 4
Z
12
Z
12


B 5
Figura 2.6 .- Orgenes y destinos parciales
de tal manera que ya se cuenta con resultados parciales, que sin importar la forma en
que se llegue ah, ya se tiene la informacin necesaria para cada una de las ciudades de
la Zona 1: (Figura 2.6).

A donde dirigirse
Costo acumulado para llegar desde ese punto hasta el objetivo B.

Una vez hecho esto, se procede a ampliar la cobertura del problema,
situndose en las ciudades de Zona 2. En este caso las soluciones no son triviales ya que
para cada ciudad de la zona 2 (Z
7
, Z
8
y Z
9
) existen tres direcciones alternativas (Z
10
, Z
11

y Z
12
), por lo que es necesario comparar las tres para seleccionar la de menor costo
acumulado para transportarse desde esa ciudad hasta el destino B.

Figura 2.7 Origenes y destinos subsecuentes parciales


Ciudad
Origen
Ruta Costo
Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
Z
7
Z
7
Z
10
Z
7
Z
11
Z
7
Z
12

3
8
9
Z
10
Z
11
Z
12

7
4
5
10
12
14
7



















Figura 2.6 Solucin para la Zona 1.













, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,





De manera que se puede apreciar que la mejor ruta alternativa suponiendo se
encuentra 1en Z
7
, consiste en dirigirse a Z
10
, de la Zona 1, con un costo de la ruta de 3 y
un costo de Z
10
hasta B de 7, dando un costo total acumulado para transportarse hasta B
desde Z
7
de 10. (Figura 2.7)

, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,
, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,
8
De igual manera se puede efectuar el anlisis para las otras ciudades de la
Zona 2: (figura 2.8)


Ciudad
Origen

Ruta
Costo

Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
Z
8
Z
8
Z
10
Z
8
Z
11
Z
8
Z
12

4
7
5
Z
10
Z
11
Z
12

7
4
5
11
11
10
Z
9
Z
9
Z
10
Z
9
Z
11
Z
9
Z
12

2
6
5
Z
10
Z
11
Z
12

7
4
5
9
10
10



Una vez resuelto el problema para esta etapa es necesario pasar a la siguiente
decisin (ampliar el crculo de ciudades del laberinto), esto es, hacia donde dirigirse si
se encontrara el chofer en alguna ciudad de la zona 3. Si se analizan las alternativas
existen nueve rutas distintas para llegar desde Z
4
hasta B, sin embargo, slo existen tres
salidas alternativas de Z
4
las cuales son de nuestro inters. La forma en como se reduce
el anlisis es apoyarse en los resultados parciales previamente calculados de la siguiente
manera:


Ciudad
Origen

Ruta
Costo
Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
Z
4
Z
4
Z
7
Z
4
Z
8
Z
4
Z
9

3
7
5
Z
10
Z
11
Z
12

10
10
9
13
17
14


Esto es, se consideran las tres salidas alternativas con sus costos asociados, as como
los puntos prximos (ciudades dentro de la Zona 2) y los costos acumulados para llegar
hasta el Destino B a partir de esos puntos (sin importar que ruta siguen). El anlisis para
las otras dos ciudades de la zona 3, as como para las tres ciudades de la zona 4 es
similar:





9






Figura 2.8 Solucin para la Zona 2




Zona 3

Ciudad
Origen

Ruta
Costo
Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
Z
5
Z
5
Z
7
Z
5
Z
8
Z
5
Z
9

8
4
5
Z
7
Z
8
Z
9

10
10
9
18
14
14
Z
6
Z
6
Z
7
Z
6
Z
8
Z
6
Z
9

5
6
3
Z
7
Z
8
Z
9

10
10
9
15
16
12





, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,

10
Zona 4

Ciudad
Origen

Ruta
Costo
Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
Z
1
Z
1
Z
4
Z
1
Z
5
Z
1
Z
6

7
5
8
Z
4
Z
5
Z
6

13
14
12
20
19
20
Z
2
Z
2
Z
4
Z
2
Z
5
Z
2
Z
6

9
8
9
Z
4
Z
5
Z
6

13
14
12
22
22
21
Z
3
Z
3
Z
4
Z
3
Z
5
Z
3
Z
6

6
7
9
Z
4
Z
5
Z
6

13
14
12
19
21
21

Como se puede apreciar para efectuar los clculos de una zona; es necesario
auxiliarse de los nmeros siguientes correspondientes a la ciudad nicamente de la zona
anterior.
Por ltimo dentro de la resolucin del problema, se llega al primer punto fsico de
decisin, hacia donde dirigirse dado que se encuentra en A?. Para fines prcticos se
puede considerar que la ciudad A se encuentra localizada en la Zona 5, teniendo:
(Figura 2.9).







, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,


Figura 2.9 Solucin.









, Zona 5 , , Zona 4 , , Zona 3 , , Zona 2 , , Zona 1 ,

11

Zona 5


Ciudad
Origen

Ruta
Costo
Ruta
Siguiente
Ciudad
Costo
Acumulado
Siguiente
CD. B
Costo
Total
A A Z
4
A Z
5
A Z
6
4
3
5
Z
1
Z
2
Z
3

19
21
19
23
24
24


En este punto se ha terminado la resolucin del problema, Pero cul es la ruta
ptima? Cul es el resultado?. La solucin ptima al problema se constituye de la
siguiente manera, checando las soluciones ptimas parciales ( ).
6)
7)
8) Ciudad
Origen
9) Ciudad
Destin
o
10) A 11) Z
1

12) Z
1
13) Z
5

14) Z
5
15) Z
8
,
Z
9

16) Z
8
17) Z
12

18) Z
12
19) B
20) Z
9
21) Z
10

22) Z
10
23) B
24)
25)
26) Como se puede apreciar existen dos rutas ptimas,
27)
A, Z
1
, Z
5
, Z
8
, Z
12
, B
A, Z
1
, Z
5
, Z
9
, Z
10
, B
28)
29) Ambas con un costo total de 23.

El problema se podra haber resuelto originalmente ramificando un rbol con todas las
opciones posibles, como se indica en la figura 2.10, calculando el valor asociado a cada
rama. Sin embargo significa el calcular y evaluar 3
4
= 81 alternativas, al contrario del
procedimiento, utilizado que solo evalu 3 + (3 x 3
2
) = 30 alternativas, lo que indica un
considerable ahorro.
30)
12
Por otra parte es importante no olvidar que la P.D. es una tcnica que provee de
resultados parciales. Por ejemplo, si existen variaciones:
31)


Z
4
B
7
Z
1
5 Z
5

8 B

Z
6
B

4
B


Z
4 *


9
A 3 Z
2
8 Z
5
* 81 ALTERN.
9

Z
6
*


5 *


Z
4
*

6
Z
3
7

Z
5 *

9
Z
6
B


Figura 2.10 Desarrollo por rbol.
- Cambio en los costos de alguna ruta, incluida o no dentro de la ruta ptima.
- Cierre y/o apertura de nuevas rutas.
- Cambio en la ciudad de origen y/o destino.

Estas se pueden incorporar al problema sin perturbaciones mayores, simplemente re-
calculando las ciudades afectadas, lo cual no se podra realizar si se hubiera atacado el
problema ramificndolo.
13

Principio de optimalidad.

La Programacin Dinmica tiene como base el auxiliarse de resultados
principales, y asumirlos como ptimos. En el ejemplo anterior al evaluar las alternativas
para Z
2
, se consideraba que 13, 14 y 12 eran los costos mnimos (ptimos) para
trasladarse hasta B desde ciudades Z
4
, Z
5
, Z
6
respectivamente, y no se cuestionaba ni la
ruta, ni los costos individuales de la misma. Este hecho se resume en el principio de
ptimalidad de Bellman.

Dado que se ha establecido una serie de resultados como las decisiones
ptimas para un estado especfico dentro de una etapa, esa misma serie de resultados
forman en s decisiones ptimas para los futuros estados dentro de las etapas
subsecuentes de esa ruta ptima.

Por ejemplo para el caso de la ruta, si se considera que la ruta ptima a partir
de Z
2
es la siguiente:

Z
2
Z
6


Z
9
Z
10
B

32) Significa que:

- La ruta Z
6


Z
9
Z
10
B es la ruta ptima para Z
6

- La ruta Z
9
Z
10
B es la ruta ptima para Z
9

- La ruta Z
10
B es la ruta ptima para Z
10



Lo cual se puede demostrar fcilmente por contradiccin, ya que s Z
9
Z
10

B no fuera la ruta ptima para llegar a B desde Z
9
significa que existira una ruta
alternativa con menor costo, (supongamos Z
9
Z
12
B), por lo que esta ruta debera
ser incluida en la ruta ptima de Z
2
(esto es: Z
2
Z
6
Z
9
Z
12
B) la cual a su vez
tendra un menor costo asociado que la ruta original (Z
2
Z
6


Z
9
Z
10
B).
3. Identificacion de conceptos. Formulacin
Como ya se mencion en un principio no existe una frmula general para resolver
problemas por medio de P.D. pero s existen cuatro conceptos generales, los cuales s
son posibles de identificar, significa que el problema puede ser resuelto por medio de
P.D. (Figura 3.1)




14



ETAPA n TRANSFORMACIN ETAPA n 1







Figura 3.1 Conceptos en Programacin Dinmica

Etapas, representadas por la literal n, significan como su nombre lo indica,
etapas o perodos en los cuales se debe efectuar una decisin.

Estados, denotados por la literal Z, representan situaciones especficas, las
cuales posiblemente pueden suceder dentro de una etapa. Se sabe de antemano
que slo existir un estado Z para cada etapa n, sin embrago, es necesario
considerar todos los estados posibles para as evaluar todas las alternativas.

Transformacin, es la funcin discriminadora. Da la pauta para poder evaluar
las distintas alternativas y seleccionar la ptima. Consiste desde una simple
suma hasta las funciones integrales combinadas con funciones de distribucin de
probabilidades.

Resultado, representado por la literal k, consiste en la variable independiente;
esto es, la variable bajo control la cual da pauta a que se presenten varias
alternativas a evaluar por la transformacin.

Antes de poder formular cualquier problema es necesario identificar los cuatro
conceptos ya mencionados. Para el problema de la Ruta se tiene:

ESTADOS

Z ESTADOS Z
RESULTADO k
15
Etapas (n), igual a las zonas donde se tienen agrupadas ciudades. En cada zona
es necesario efectuar una decisin que corresponde a la ruta prxima inmediata a
seguir.
Estados (z), corresponden a las ciudades a las cuales existen tres posibilidades
para cada zona (Etapa), aunque slo una (o posiblemente varias) estarn
incluidas dentro de la solucin ptima.
Transformacin, aplicada como la suma de los costos; el costo de la ruta
prxima adicionado al costo acumulado de la prxima ciudad en adelante.
Resultado (k), la variable de decisin representa en el problema el Destino o
Ruta a seguir.

Una vez identificado se puede construir la frmula:

fn (Z
j
) = Min CZ
j
, Z
L
+ f
n-1
(Z
L
)
k

fn (Z
j
) = Costo mnimo acumulado para transportarse hasta B,
a partir de la ciudad Z
j
, la cual se encuentra localizada en la
zona n.

k = Variable de decisin, rutas alternativas de salida de la
ciudad Z
j.

CZ
j
, Z
L
= Costo para transporte de la ciudad Z
j
, a la ciudad Z
L.

f
n-1
(Z
L
) = Costo mnimo acumulado para transportarse hasta B,
a partir de la ciudad ZL, la cual se encuentra localizada en
la zona n-1.

Lo general de las frmulas de P.D. es que para resolver cualquier etapa n, es necesario
conocer los resultados para la etapa n 1. (Ms adelante se presentar un caso en que no
ocurre esto exactamente). Por ello es indispensable definir una semilla, la cual funge
como base generadora para iterar y resolver el problema.

La semilla para el caso de la ruta es f
o
(B) = 0, esto es, se asume que B corresponde a
una zona cero, y el costo para transportarse a B dado que se encuentra en B es cero.
16

Si se observa con detenimiento, cuando se fueron evaluando las alternativas para cada
ciudad, lo que realmente se hizo fue seguir la frmula, por ejemplo:

n = 3
Estado Alternativa Costo Ruta Siguiente Cd. Costo Acumulado Costo Total
Z
j
k CZ
j
, Z
L
Z
L
f
n-1
(Z
L
) f
n
(Z
J
)
Z
4
Z
4
Z
7
3 Z
7
10 13
Z
4
Z
8
7 Z
8
10 17
Z
4
Z
8
5 Z
9
9 14

Por lo tanto f
3
(Z
4
) = 13, con el resultado k = ir a Z
7.
4. Problemas deterministicos
Problema de Asignacin.
El Sr. Julio Vendetodo, Gerente de Ventas de una compaa que cuenta con tres tiendas,
ha recibido instrucciones por parte de la Direccin de intensificar la labor de ventas y
servicio al cliente para lo cual se le ha autorizado la contratacin de hasta nueve
vendedores extras. Julio debe decidir cuantos vendedores debe de contratar y como
asignarlos a las tres tiendas, para ello elabor una matriz de utilidades esperadas para
cada tienda segn se tengan cierto nmero de vendedores extras (Tabla 4.1). Por
ejemplo, si a la tienda I no se le asigna ningn vendedor extra, ganar 4, en cambio si se
le asignan 2 vendedores extra su ganancia se incrementara en 12 (16 en total).

VENDEDORES EXTRAS
TIENDA 0 1 2 3 4 5 6 7 8 9
I. 4 11 16 19 29 19 16 11 4 -5
II. 5 14 21 26 29 30 29 26 21 14
III, 4 15 24 31 36 39 40 39 36 31
Tabla 4.1 Ganancias por Tienda

Para ser un poco ms entendible el problema, imagnese el lector que Julio cuenta con
una camioneta en donde se encuentran los nueve vendedores, la cual visitar primero la
tienda III y dejar un nmero determinado de vendedores, siguiendo en su camioneta
17
con los vendedores restantes, (los cules no se sabe cuntos son, por lo que se debe
considerar las posibilidades de que sean desde cero hasta nueve), pasando por la tienda
II repitiendo el proceso; hasta llegar a la tienda I a asignar vendedores.

Primero identifquese los cuatro conceptos bsicos:
Etapas, en donde se deben efectuar las decisiones, equivale a cada tienda.
Estados, situaciones fsicas probables dentro de cada etapa, corresponden a los
vendedores disponibles en la camioneta (desconocido).
Transformacin, funcin discriminatoria de alternativas, es la suma acumulada
de utilidades.
Resultado, variable bajo control, equivale al nmero de vendedores que puede
asignar Julio en cada tienda.

De tal manera que la frmula final queda construida de la siguiente manera:

f
n
(Z) = Mx G
n
(k) + f
n-1
(Z-k) 0 k Z
f
n
(Z) = Mxima ganancia acumulada cuando se tienen Z .
vendedores disponibles, y faltan n tiendas por visitar.
Z = Vendedores disponibles.
K = Vendedores a asignar.
Gn (k) = Ganancia en la tienda n con k vendedores
extras asignados (Tabla 1).
Z k = Vendedores disponibles despus de visitar la tienda
n y por lo tanto faltan por visitar n 1 tiendas.
Obsrvese que en esta ocasin se ha acotado la variable de decisin k, no permitindose
asignar ms vendedores que los que se encuentran disponibles en ese momento en la
camioneta (Z). La semilla para este problema es:
f
o
(Z) = 0
lo que significa que la utilidad a obtener con Z vendedores disponibles, cuando ya no
faltan tiendas por visitar, es igual a cero.

Para resolver el problema de nuevo es necesario partir del destino hacia el origen, por lo
que se debe considerar el momento en que la camioneta llega con Z vendedores
disponibles a la tienda I, y Julio debe decidir cuntos vendedores asignar. Las respuestas
se presentan en la Tabla 4.2, como en la mayora de los problemas de P.D. las
soluciones son directas.
18

Vendedores
Disponibles
Asignacin Ganancia Restan
Gan. Acum.
Posterior
Gan.
Acum.Total
Z k G
I
(k) Z - k f
o
(Z k) F
I
(Z)
0 0 4 0 0 4
1 1 11 0 0 11
2 2 16 0 0 16
3 3 13 0 0 19
4 4 20 0 0 20
5 4 20 1 0 20
6 4 20 2 0 20
7 4 20 3 0 20
8 4 20 4 0 20
9 4 20 5 0 20
Tabla 4.2 Asignacin para la Tienda n = 1

Como se puede observar, aunque la camioneta tuviera disponible cinco o ms
vendedores, no es conveniente asignar ms que a cuatro ya que a partir de entonces la
ganancia disminuir.

Para la siguiente etapa los resultados ya no son tan directos (Tabla 4.3), puesto que hay
que considerar todas las alternativas de asignacin. Una vez evaluada la segunda etapa
se encuentra el problema en el origen fsico del mismo, esto es, visitar la tienda III y
decidir cuntos vendedores debe de asignar. Sin embargo, en este caso no es necesario
evaluar distintos valores de Z, ya que se sabe de antemano que la camioneta al llegar a
la tienda III va con los nueve vendedores disponibles, lo cual simplifica los clculos
(Tabla 4.4).

Vendedores
disponibles
Asignacin Ganancia Restan
Gan. acum.
Posterior
Gan. Acum.
Total

Z k G
2
(k) Z - k F
1
(Z k ) F
2
(Z)
0 0 5 0 4 9
1
0
1
5
14
1
0
11
4
16
18

2
0
1
2
5
14
21
2
1
0
16
11
4
21
25
25

3
0
1
5
14
3
2
19
16
24
30

19
2
3
21
26
1
0
11
4
32
30
4
0
1
2
3
4
5
14
21
26
29
4
3
2
1
0
20
19
16
11
4
25
33
37
37
33

5
0
1
2
3
4
5
5
14
21
26
29
30
5
4
3
2
1
0
20
20
19
16
11
4
25
34
40
42
40
34

6
0
1
2
3
4
5
5
14
21
26
29
30
6
5
4
3
2
1
20
20
20
19
16
11
25
34
41
45
45
41

7
0
1
2
3
4
5
5
14
21
26
29
30
7
6
5
4
3
2
20
20
20
20
19
16
25
34
41
46
48
46

8
0
1
2
3
4
5
5
14
21
26
29
30
8
7
6
5
4
3
20
20
20
20
20
19
25
34
41
46
49
49

9
0
1
2
3
5
14
21
26
9
8
7
6
20
20
20
20
25
34
41
46

20
4
5
29
30
5
4
20
20
49
50
Tabla 4.3 Asignacin para la tienda n = 2

Vendedores
disponibles
Asignacin Ganancia Restan
Gan. Acum.
Posterior
Gan. Acum.
Total
Z k G
3
(k) Z - k F
2
(Z k) F
3
(Z)
9 0 4 9 50 54
1 15 8 49 64
2 24 7 48 72
3 31 6 45 76
4 36 5 42 78
5 39 4 37 76
6 40 3 32 72
Tabla 4.4 Asignacin para la tienda n = 3

Por lo que a partir de los resultados de las tablas 2, 3 y 4 se puede construir la solucin
ptima.

Tiendas
Vendedores
Disponibles
Vendedores
Asignados
Ganancias
Vendedores
Restantes
III 9 4 36 5
II 5 3 26 2
I 2 2 16 0
Total 9 78

El problema de la asignacin, al igual que el problema de la ruta son las caractersticas
de ida y vuelta, esto es, se pueden mezclar los orgenes y destinos. Queda al lector
comprobar que la ruta ptima para llegar de B a A es la misma, as como si la
asignacin de vendedores comenzar en la tienda I en vez de la III el resultado sera el
mismo.

21
Pocos son los casos que cuentan con esta caracterstica, especialmente aquellos cuyas
etapas no estn relacionadas con el tiempo.


Transformaciones No Aditivas
Para mostrar al lector un caso en el que la transformacin no es una adicin, considrese
el siguiente problema de asignacin:

La compaa Estrellita del xito se encuentra en el desarrollo de un nuevo tipo de
carchofas. Para poder introducir el producto al mercado lo ms rpido posible, la
compaa dividi el desarrollo del producto en tres etapas:
a) Diseo del producto
b) Diseo del proceso
c) Comercializacin

Cada una de estas etapas trabaja independientemente de las otras. Para que las nuevas
carchofas sean un xito es necesario que cada una de las etapas individuales sean un
xito. La compaa cuenta actualmente con un presupuesto que le permite contratar
hasta 3 profesionistas, sin embargo, el problema consiste en como debern asignarse a
las tres etapas (asuma que no se pueden asignar parcialmente).

Para resolver este problema la Gerencia de Investigacin y Desarrollo elabor la
siguiente tabla de probabilidades de falla (no xito).

Profesionales Etapas
Asignados A B C
0 0.40 0.30 0.20
1 0.30 0.22 0.15
2 0.22 0.15 0.13
3 0.18 0.14 0.08

Resolucin: dado que se trata de un problema de asignacin, los conceptos de etapas
(Etapa de la Investigacin A, B C), estados (Profesionistas disponibles) y resultados
(Profesionistas a asignar), se encuentran claramente identificados, sin embargo aqu la
diferencia consiste en la definicin de la transformacin. El objetivo se encuentra
claramente definido, maximizar la probabilidad de xito de las carchofas, y para ello es
22
necesario que las tres etapas individuales sea un xito. La probabilidad de que el
proyecto sea un xito est dada por las multiplicaciones de las probabilidades de xito
individuales de cada etapa.
P (xito Total) = P (xito A) x p (xito B) x P (xito C)
Por lo que la funcin objetivo a maximizar es:

f
n
(Z)

=

Mx Pn (k) x f
n-1
(Z k)

0 k Z
f
n
(Z) = Probabilidad de que el proyecto sea un xito, dado que se
cuenta con Z vendedores disponibles y se han considerado
n etapas de la investigacin.
P
n
(k) = Probabilidad de que la etapa n sea un xito dado que se
asignaron k profesionales

Quedando el resto de los conceptos definidos de igual manera que en el problema
anterior. Sin embargo, es necesario efectuar otro cambio, corresponde a la semilla, ya
que una semilla definida igual a cero provocara que la multiplicacin de las
probabilidades redundara en cero.
f
o
(Z) = 1
corresponde al lector desarrollar la frmula y encontrar la solucin.

Problema del Empaque
Otro problema clsico de la Programacin Dinmica es el conocido con el nombre del
Problema del Empaque, el cual consiste en tener que empacar o cargar un trailer con
artculos de distinto valor y peso, pudindose definir esto como peso fsico (Kg.),
espacio (metros cuadrados), volumen (metros cbicos), inversin ($), etc. Lo importante
del problema es que el trailer tiene un lmite fsico en cuanto a la cantidad peso
mximo a cargar, y el objetivo del dueo del transporte consiste en maximizar el valor
de la carga sujeto a la restriccin del peso del trailer.

Este tipo de problemas se puede fcilmente identificar como uno de programacin
entera donde:
Mx f = C
1
X
1
+ C
2
X
2
+ ...+ C
n
X
n

Sujeto a A
1
X
1
+ A
2
X
2
+ ... + A
n
X
n
b
X
i
= entera i= 1, 2, ..., n

23
En donde:

X
i
= Cantidad de artculos i a comprar
C
i
= Valor unitario del artculo i
A
i
= Peso unitario del artculo i
b = Capacidad mxima del trailer

Sin embargo, es de todos conocido lo problemtico de trabajar con algoritmos de
programacin entera, por lo que a continuacin se resolver el problema utilizando
programacin dinmica.

Para poder entender ms rpidamente la resolucin, imagnese el lector, al igual que en
el problema de asignacin, que el trailer tiene que visitar varias bodegas. Cada una de
estas bodegas contiene varias unidades de un artculo i (suficientes para llenar el trailer)
y slo de ese artculo. De tal manera que el chofer tiene que decidir cuntas unidades de
ese artculo debe cargar. Identificando los cuatro conceptos bsicos se tiene:

Etapas, donde se efectan las decisiones, corresponden a cada bodega, es decir, a
cada tipo de artculo.
Estados, situacin fsica probable dentro de cada etapa, equivale a los kgs.
disponibles de carga del trailer.
Transformacin, funcin discriminatoria de alternativas, suma de utilidades.
Resultado, variable bajo control, cantidad de artculos a cargar.

Formulando el problema de la siguiente manera:

F
n
(Z) = Mx [kV
n
+ f
n-1
(Z kW
n
)]
0 k ||Z / W
n
||
F
n
(Z) = Utilidad mxima acumulada cuando se cuenta
con Z kgs. disponibles de carga en el camin,
y faltan n bodegas por visitar.
K = Nmero de artculos a asignar.
W
n
= Peso unitario del artculo n.
V
n
= Valor unitario del artculo n.
||x|| = Entero menor o igual a x.
F
o
(Z) = 0

Asignando valores a las literales considrese:

24
N = Artculos (A, B, C y D)
W
n
= 40, 30 15 y 8 respectivamente
V
n
= 40, 25, 10 y 5 respectivamente
Z = Capacidad mxima de carga del trailer igual a 100

Estrictamente hablando es necesario considerar 00 distintos estados para cada etapa, al
variar de un kg. en uno hasta la capacidad mxima del trailer. Sin embargo, analizando
los pesos unitarios de los artculos se puede apreciar que los tres primeros son mltiplos
de cinco, por lo que los estados se pueden ir variando de cinco en cinco kgs. En la tabla
4.5 se muestran los resultados para la primera etapa (artculo A), mientras que en las
tablas 4.6 y 4.7 se presentan los resultados para la segunda y tercera etapa
respectivamente.

Antes de considerar todas las alternativas posibles, es recomendable analizar cuales de
ellas pueden ser eliminadas de antemano. Por ejemplo: pese a que es posible cargar
hasta tres productos de B, Esto es ms conveniente que dos artculos de A?.
Definitivamente no, ya que dos artculos de A valen ms que tres de B (80 vs. 75) a
menor peso total (80 vs. 90). De igual manera se pueden eliminar varias alternativas
quedando slo las siguientes a considerar:
Cero, uno o dos artculos de A
Cero, uno o dos artculos de B
Cero o un artculo de C
Cero o un artculo de D

Como en los anteriores problemas, analizar la ltima etapa es muy sencillo, ya que no es
necesario considerar los distintos estados alternativos puesto que el estado alternativo
inicial es conocido. Para el problema en cuestin, ste corresponde a 100 kg.
disponibles, por lo que:

Z k K(5) K(8) F
3
(Z-8k) F
4
(Z)
100 0 0 0 90 90
1 5 8 80 85

Kilogramos
Disponibles
Carga
Asignada
Valor
Carga
Carga
Consumida
Utilidad
Posterior
Utilidad
Acumulada
Z k k (40) k (40) f
o
(Z 40k) f
1
(Z)
100 2 80 80 0 80
95 2 80 80 0 80
90 2 80 80 0 80
85 2 80 80 0 80
80 2 80 80 0 80
25
75 1 40 40 0 40
70 1 40 40 0 40
65 1 40 40 0 40
60 1 40 40 0 40
55 1 40 40 0 40
50 1 40 40 0 40
45 1 40 40 0 40
40 1 40 40 0 40
35 0 0 0 0 0
30 0 0 0 0 0
25 0 0 0 0 0
20 0 0 0 0 0
15 0 0 0 0 0
10 0 0 0 0 0
5 0 0 0 0 0
0 0 0 0 0 0

Tabla 4.5 Solucin Etapa n = 1 (artculo A)
Kilogramos
Disponibles
Carga
Asignada
Valor
Carga
Carga
Consumida
Utilidad
Posterior
Utilidad
Acumulada
Z k k (40) k (40) f
o
(Z 40k) f
1
(Z)
100 0
1
2
0
25
50
0
30
60
80
40
40
80
65
90
95
0
1
2
0
25
50
0
30
60
80
40
0
80
65
50
90
0
1
2
0
25
50
0
30
60
80
40
0
80
65
50
85
0
1
2
0
25
50
0
30
60
80
40
0
80
65
50
80
0
1
2
0
25
50
0
30
60
80
40
0
80
65
50
75
0
1
2
0
25
50
0
30
60
40
40
0
40
65
50
70
0
1
2
0
25
50
0
30
60
40
40
0
40
65
50
65
0
1
2
0
25
50
0
30
60
40
0
0
40
25
50
60
0
1
2
0
25
50
0
30
60
40
0
0
40
25
50
55 0 0 0 40 40
26
1 25 30 0 25
50
0
1
0
25
0
30
40
0
40
25
45
0
1
0
25
0
30
40
0
40
25
40
0
1
0
25
0
30
0
0
40
25
35
0
1
0
25
0
30
0
0
0
25
30
0
1
0
25
0
30
0
0
0
25
25 0 0 0 0 0
20 0 0 0 0 0
15 0 0 0 0 0
10 0 0 0 0 0
5 0 0 0 0 0
0 0 0 0 0 0
Tabla 4.6 Solucin Etapa n = 2 (Artculo B)

Kilogramos
Disponibles
Carga
Asignada
Valor
Carga
Carga
Consumida
Utilidad
Posterior
Utilidad
Acumulada
Z k k (40) k (40) f
o
(Z 40k) f
1
(Z)
100 0
1
0
10
0
15
90
80
90
90
95
0
1
0
10
0
15
80
80
80
90
90
0
1
0
10
0
15
80
65
80
75
85
0
1
0
10
0
15
80
65
80
75
80
0
1
0
10
0
15
80
50
80
60
75
0
1
0
10
0
15
65
50
65
60
70
0
1
0
10
0
15
65
40
65
50
65
0
1
0
10
0
15
50
40
50
50
60
0
1
0
10
0
15
50
40
50
50
55
0
1
0
10
0
15
40
40
40
50
50
0
1
0
10
0
15
40
25
40
35
45
0
1
0
10
0
15
40
25
40
35
40
0
1
0
10
0
15
40
0
40
10
35 0 0 0 25 25
27
1 10 15 0 10
30
0
1
0
10
0
15
25
0
25
0
25
0
1
0
10
0
15
0
0
0
10
20
0
1
0
10
0
15
0
0
0
10
15
0
1
0
10
0
15
0
0
0
10
10 0 0 0 0 0
5 0 0 0 0 0
0 0 0 0 0 0
Tabla 4.7 Solucin Etapa n = 3 (Artculo C)

En la tabla 4.8 se resume el problema con los resultados parciales, en donde se pueden
leer las soluciones:

ARTICULO
D C B A
SOLUCION I
0 0 2 1
SOLUCION II
0 1 0 2

Ambas soluciones tienen asociado un valor total de carga de 90, con la diferencia que la
primera solucin agota totalmente los 100 kgs. disponibles, mientras que la segunda
slo consume 95 kgs.

El problema del empaque se puede complicar si se agrega una restriccin, por ejemplo
mximo volumen de carga. En este caso el problema de la dimensionalidad se presenta,
ya que es necesario definir la funcin objetivo no slo en trminos de los kgs.
disponibles, sino tambin en los metros cbicos disponibles. Esto ocasiona que en vez
de trabajar con matrices de segundo orden para cada etapa, es necesario agregar una
dimensin. Una manera de solucionar este problema es por medio de multiplicadores de
Lagrange, sin embargo, debido a que su aplicacin es limitada y no siempre se
presentan las condiciones favorables para su uso, no se tratarn.






28

Dedicatoria.

Esta presentacin se las dedico a mi esposa Maria Esther Bravo Ziga , y a mis
hijos, Rafael, y Ricardo Gonzlez Bravo. Por todo su apoyo y comprensin durante el
desarrollo de esta investigacin.


Ing. Rafael Gonzlez Pintor
CUCEI. Departamento Ingeniera Industrial
Universidad de Guadalajara.

Вам также может понравиться