Está en la página 1de 28

27 Congreso Nacional de Estadstica e Investigacin Operativa

Lleida, 8-11 de abril de 2003

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

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
2

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).

El Proble ma 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 Z1 , Z2 y Z3 se encuentran en la zona
4, las ciudades Z4 , Z5 y Z6 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)
2)
3)
4)
5)

Hacia donde dirigirse encontrndose en A.


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

Zona 5 , , Zona 4 ,

Figura 2.5

, Zona 3 ,

, Zona 2 ,

, Zona 1 ,

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 Z2 que es la de menor costo, terminando en la ruta A,

Z2 , Z5 , Z8 , Z10 , 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 Z10 , Z11 y Z12 . 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

Ruta

Costo

Origen
Z10
Z11
Z12

Z10
Z11
Z12

B
B
B

7
4
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 (Z7 , Z8 y Z9 ) existen tres direcciones alternativas (Z10 , Z11
y Z12 ), por lo que es necesario comparar las tres para seleccionar la de menor costo
acumulado para transportarse desde esa ciudad hasta el destino B.
Ciudad
Origen

Ruta

Z7

Z7
Z7
Z7

Costo
Ruta

Z 10
Z11
Z12

Siguiente
Ciudad

3
8
9

Z10
Z11
Z12

Costo
Acumulado
Siguiente
CD. B
7
4
5

Figura 2.7 Origenes y destinos subsecuentes parciales

Costo
Total

10
12
14

, Zona 5 , , Zona 4 ,
Figura 2.6

, Zona 3 ,

, Zona 2 ,

, Zona 1 ,

Solucin para la Zona 1.

, Zona 5 , , Zona 4 ,

, Zona 5 , , Zona 4 ,

, Zona 3 ,

, Zona 3 ,

, Zona 2 ,

, Zona 2 ,

, Zona 1 ,

, Zona 1 ,

De manera que se puede apreciar que la mejor ruta alternativa suponiendo se


encuentra 1en Z7 , consiste en dirigirse a Z10 , de la Zona 1, con un costo de la ruta de 3 y
un costo de Z10 hasta B de 7, dando un costo total acumulado para transportarse hasta B
desde Z7 de 10. (Figura 2.7)

De igual manera se puede efectuar el anlisis para las otras ciudades de la


Zona 2: (figura 2.8)

Ciudad
Origen

Costo

Siguiente
Ciudad

Ruta
Ruta
Z8

Z8
Z8
Z8
Z9
Z9
Z9

Z9

Z 10
Z11
Z12
Z 10
Z11
Z12

4
7
5
2
6
5

Z10
Z11
Z12
Z10
Z11
Z12

Costo
Acumulado
Siguiente
CD. B
7
4
5
7
4
5

Costo
Total

11
11
10
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 Z4 hasta B, sin embargo, slo existen tres
salidas alternativas de Z4 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

Z4

Ruta

Z4
Z4
Z4

Z7
Z8
Z9

Costo Siguiente Costo


Ruta Ciudad
Acumulado
Siguiente
CD. B
3
Z10
10
7
Z11
10
5
Z12
9

Costo
Total

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:

, Zona 5 , , Zona 4 ,
Figura 2.8

, Zona 3 ,

, Zona 2 ,

, Zona 1 ,

Solucin para la Zona 2

Zona 3
Ciudad
Origen

Z5
Z6

Ruta

Z5
Z5
Z5
Z6
Z6
Z6

Z7
Z8
Z9
Z7
Z8
Z9

Costo
Siguiente Costo
Ruta Ciudad
Acumulado
Siguiente
CD. B
8
Z7
10
4
Z8
10
5
Z9
9
5
Z7
10
6
Z8
10
3
Z9
9

Costo
Total

18
14
14
15
16
12

Zona 4
Ciudad
Origen

Z1

Ruta

Z1
Z1
Z1
Z2
Z2
Z2
Z3
Z3
Z3

Z2

Z3

Z4
Z5
Z6
Z4
Z5
Z6
Z4
Z5
Z6

Costo
Ruta

Siguiente
Ciudad

7
5
8
9
8
9
6
7
9

Z4
Z5
Z6
Z4
Z5
Z6
Z4
Z5
Z6

Costo
Acumulado
Siguiente
CD. B
13
14
12
13
14
12
13
14
12

Costo
Total

20
19
20
22
22
21
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 ,

Figura 2.9

, Zona 3 ,

, Zona 2 ,

, Zona 1 ,

Solucin.

, Zona 5 , , Zona 4 ,

, Zona 3 ,

, Zona 2 ,

10

, Zona 1 ,

Zona 5

Ciudad
Origen

Ruta

Costo Siguiente
Ruta Ciudad

A Z4
A Z5
A Z6

4
3
5

Z1
Z2
Z3

Costo
Acumulado
Siguiente
CD. B
19
21
19

Costo
Total

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
9) Ciudad
Origen
Destin
o
10) A
11) Z1
12) Z1
13) Z5
14) Z5
15) Z8 ,
Z9
16) Z8
17) Z12
18) Z12
19) B
20) Z9
21) Z10
22) Z10
23) B
24)
25)
26) Como se puede apreciar existen dos rutas ptimas,
27)
A, Z1 , Z5 , Z8 , Z12 , B
A, Z1 , Z5 , Z9 , Z10 , 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 34 = 81 alternativas, al contrario del
procedimiento, utilizado que solo evalu 3 + (3 x 32 ) = 30 alternativas, lo que indica un
considerable ahorro.
30)

11

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)

Z4

7
Z1

Z5

B
Z6

4
B

Z4
A

9
Z2 8
9

Z5
Z6

81 ALTERN.

Z4

6
Z3

Z5

9
Z6

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 recalculando las ciudades afectadas, lo cual no se podra realizar si se hubiera atacado el
problema ramificndolo.
12

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 Z2 , se consideraba que 13, 14 y 12 eran los costos mnimos (ptimos) para
trasladarse hasta B desde ciudades Z4 , Z5 , Z6 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 Z2 es la siguiente:
Z2

Z6

Z9

Z10

32) Significa que:


-

La ruta Z6 Z9 Z10 B es la ruta ptima para Z6


La ruta Z9 Z10 B es la ruta ptima para Z9
La ruta Z10 B es la ruta ptima para Z10

Lo cual se puede demostrar fcilmente por contradiccin, ya que s Z9 Z10


B no fuera la ruta ptima para llegar a B desde Z9 significa que existira una ruta
alternativa con menor costo, (supongamos Z9 Z12 B), por lo que esta ruta debera
ser incluida en la ruta ptima de Z2 (esto es: Z2 Z6 Z9 Z12 B) la cual a su vez
tendra un menor costo asociado que la ruta original (Z2 Z6 Z9 Z10 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)

13

ETAPA n

ESTADOS

TRANSFORMACIN

ETAPA n 1

ESTADOS

RESULTADO k

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:

14

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 (Zj) = Min CZj, ZL + fn-1 (ZL)
k
fn (Zj) = Costo mnimo acumulado para transportarse hasta B,
a partir de la ciudad Zj, la cual se encuentra localizada en la
zona n.
k = Variable de decisin, rutas alternativas de salida de la
ciudad Zj.
CZj, ZL = Costo para transporte de la ciudad Zj, a la ciudad ZL.
f n-1 (ZL) = 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.

15

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

Zj

CZj, ZL

ZL

fn-1 (ZL)

fn (ZJ )

Z4

Z4

Z7

Z7

10

13

Z4

Z8

Z8

10

17

Z4

Z8

Z9

14

Por lo tanto f 3 (Z4 ) = 13, con el resultado k = ir a Z7.

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

I.

11

16

19

29

19

16

11

-5

II.

14

21

26

29

30

29

26

21

14

III,

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

16

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:


fn (Z) = Mx

Gn (k) + fn-1 (Z-k)

fn (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:
fo (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.

17

Vendedores
Disponibles
Z
0
1
2
3
4
5
6
7
8
9

Gan. Acum.
Posterior
k
GI (k)
Z- k
fo (Z k)
0
4
0
0
1
11
0
0
2
16
0
0
3
13
0
0
4
20
0
0
4
20
1
0
4
20
2
0
4
20
3
0
4
20
4
0
4
20
5
0
Tabla 4.2 Asignacin para la Tienda n = 1

Asignacin

Ganancia

Gan.
Acum.Total
FI (Z)
4
11
16
19
20
20
20
20
20
20

Restan

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

G2 (k)

Z-k

F1 (Z k )

F2 (Z)

11

16

14

18

16

21

14

11

25

21

25

19

24

14

16

30

18

21

11

32

26

30

20

25

14

19

33

21

16

37

26

11

37

29

33

20

25

14

20

34

21

19

40

26

16

42

29

11

40

30

34

20

25

14

20

34

21

20

41

26

19

45

29

16

45

30

11

41

20

25

14

20

34

21

20

41

26

20

46

29

19

48

30

16

46

20

25

14

20

34

21

20

41

26

20

46

29

20

49

30

19

49

20

25

14

20

34

21

20

41

26

20

46

19

29

20

49

30

20

50

Tabla 4.3 Asignacin para la tienda n = 2

Vendedores
disponibles

Asignacin

Ganancia

Restan

Gan. Acum.
Posterior

Gan. Acum.
Total

G3 (k)

Z- k

F2 (Z k)

F3 (Z)

50

54

15

49

64

24

48

72

31

45

76

36

42

78

39

37

76

40

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

36

II

26

16

Total

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.

20

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

0.40

0.30

0.20

0.30

0.22

0.15

0.22

0.15

0.13

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

21

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:
fn (Z)

= Mx Pn (k) x fn-1 (Z k)
0

fn (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.

Pn (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.
fo (Z) = 1
corresponde al lector desarrollar la frmula y encontrar la solucin.
Problema del Empaque
Otro proble ma 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
Sujeto a

= C1 X1 + C2 X2 + ...+ Cn Xn
A1 X1 + A2 X2 + ... + An Xn
Xi = entera i= 1, 2, ..., n

22

En donde:
Xi
Ci
Ai
b

=
=
=
=

Cantidad de artculos i a comprar


Valor unitario del artculo i
Peso unitario del artculo i
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:


Fn (Z)

Fn (Z)

K
Wn
Vn
||x||
Fo (Z)

=
=
=
=
=

Mx [kVn + fn-1 (Z kWn )]


0 k ||Z / Wn ||
Utilidad mxima acumulada cuando se cuenta
con Z kgs. disponibles de carga en el camin,
y faltan n bodegas por visitar.
Nmero de artculos a asignar.
Peso unitario del artculo n.
Valor unitario del artculo n.
Entero menor o igual a x.
0

Asignando valores a las literales considrese:

23

N
Wn
Vn
Z

=
=
=
=

Artculos (A, B, C y D)
40, 30 15 y 8 respectivamente
40, 25, 10 y 5 respectivamente
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
100

k
0
1

K(5)
0
5

K(8) F3 (Z-8k)
0
90
8
80

F4 (Z)
90
85

Kilogramos Carga
Valor
Carga
Utilidad
Disponibles Asignada Carga Consumida Posterior
Z
k
k (40)
k (40)
fo (Z 40k)
100
2
80
80
0
95
2
80
80
0
90
2
80
80
0
85
2
80
80
0
80
2
80
80
0
24

Utilidad
Acumulada
f1 (Z)
80
80
80
80
80

75
70
65
60
55
50
45
40
35
30
25
20
15
10
5
0

1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0

40
40
40
40
40
40
40
40
0
0
0
0
0
0
0
0

40
40
40
40
40
40
40
40
0
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

40
40
40
40
40
40
40
40
0
0
0
0
0
0
0
0

Tabla 4.5 Solucin Etapa n = 1 (artculo A)


Kilogramos
Disponibles
Z
100

95
90
85

80
75
70

65
60
55

Carga
Asignada
k
0
1
2
0
1
2
0
1
2
0
1
2
0
1
2
0
1
2
0
1
2
0
1
2
0
1
2
0

Valor
Carga
k (40)
0
25
50
0
25
50
0
25
50
0
25
50
0
25
50
0
25
50
0
25
50
0
25
50
0
25
50
0

Carga
Consumida
k (40)
0
30
60
0
30
60
0
30
60
0
30
60
0
30
60
0
30
60
0
30
60
0
30
60
0
30
60
0

25

Utilidad
Posterior
fo (Z 40k)
80
40
40
80
40
0
80
40
0
80
40
0
80
40
0
40
40
0
40
40
0
40
0
0
40
0
0
40

Utilidad
Acumulada
f1 (Z)
80
65
90
80
65
50
80
65
50
80
65
50
80
65
50
40
65
50
40
65
50
40
25
50
40
25
50
40

50
45
40
35
30
25
20
15
10
5
0

Kilogramos
Disponibles
Z
100
95
90
85
80
75
70
65
60
55
50
45
40
35

1
25
30
0
0
0
0
40
1
25
30
0
0
0
0
40
1
25
30
0
0
0
0
0
1
25
30
0
0
0
0
0
1
25
30
0
0
0
0
0
1
25
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Tabla 4.6 Solucin Etapa n = 2 (Artculo B)

Carga
Asignada
k
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0

Valor
Carga
k (40)
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0

25
40
25
40
25
40
25
0
25
0
25
0
0
0
0
0
0

Carga
Utilidad
Utilidad
Consumida Posterior
Acumulada
k (40)
fo (Z 40k)
f1 (Z)
0
90
90
15
80
90
0
80
80
15
80
90
0
80
80
15
65
75
0
80
80
15
65
75
0
80
80
15
50
60
0
65
65
15
50
60
0
65
65
15
40
50
0
50
50
15
40
50
0
50
50
15
40
50
0
40
40
15
40
50
0
40
40
15
25
35
0
40
40
15
25
35
0
40
40
15
0
10
0
25
25

26

30
25
20
15
10
5
0

1
0
1
0
1
0
1
0
1
0
0
0

10
0
10
0
10
0
10
0
10
0
0
0

15
0
15
0
15
0
15
0
15
0
0
0

0
25
0
0
0
0
0
0
0
0
0
0

10
25
0
0
10
0
10
0
10
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
SOLUCION I
SOLUCION II

D
0
0

C
0
1

B
2
0

A
1
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.

27

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.

28

También podría gustarte