El documento habla sobre la programación dinámica, un método para resolver problemas donde los parámetros cambian. Divide un problema grande en varios pequeños, resolviendo cada uno de forma secuencial para optimizar una función objetivo. Proporciona un ejemplo de encontrar la ruta más corta entre varias ciudades, resolviendo el problema de forma recursiva desde la última etapa hasta la primera.
Diagnostico del corregimiento de Junin del municipio de Barbacoas
ProgDinamica.docx
1. 179
PROGRAMACION DINAMICA
Introducción.
En este capítulo trataremos sobre la programación dinámica, que es aplicable a un tipo particular de
problemas para los que la programación lineal no resulta adecuada, dado que esta última es útil para aquellos
casos en los cuales los parámetros o condiciones del problema permanecen sin cambio, es decir, estáticos.
Cuando aparecen variaciones en dichos parámetros, tales casos pueden resolverse con la programación
dinámica, la cual apareció en la década de los 50 siendo Richard Bellman su iniciador en los Estados Unidos.
El presente método maneja los casos en forma secuencial, dividiendo un problema grande en varios
pequeños,donde cada uno de éstos se irá solucionando tomando la decisión que optimice la función objetivo,
la cual a semejanza de la programación lineal puede ser una utilidad sujeta a maximización o bien un costo
que busca minimizarse. Cada problema a su vez tendrá sus propios parámetros, los que influirán para la
resolución que deba de tomarse. Luego se eslabona este problema pequeño con el que sigue en el ord en
determinado conforme a la secuencia inicial.
Con esto, lo que se logra es un ahorro en el número de cálculos que deben hacerse para solucionar el
problema total, dado que no se ejecutan todas las opciones que puede tener el mismo, puesto que de la part e
que ya se ha analizado, se toma la mejor decisión que contribuya a la optimización de la función objetivo.
La programación dinámica puede ser determinística, es decir, que los parámetros del problema se conozcan
exactamente, o bien puede ser probabilística o estocástica, cuando aquellos vienen dados por una función de
probabilidad.
Características y metodología.
Vamos ahora a enumerar las características que constituyen el método de la programación dinámica:
1. Cada problema debe dividirse en etapas, cada una de las cuales requiere de una política
de decisión, que se determinará conforme a la función objetivo.
2. Cada etapa se divide a su vez en un cierto número de estados asociados a ella, donde
cada uno de éstos representa una posibilidad de llevar a cabo la etapa.
3. En cada etapa habrá una política de decisión la cual deberá eslabonar la etapa actual
con la siguiente del problema.
4. El método de la programación dinámica deberá hallar una solución óptima para el
problema total, la que es diferente de la solución óptima de etapa a etapa.
5. El principio de optimalidad de Bellman dice:
Cuando el problema se encuentra en un estado de una etapa dada, para salir de él, la
decisión tomada debe constituir una política óptima, independientemente de las
decisiones hechas anteriormente.
6. El problema se inicia por la última etapa y se mueve recursivamente, es decir, desde la
última hasta la primera etapa, en la cual una vez determinada la decisión de la misma, el
problema habrá sido resuelto.
Terminología.
Ahora daremos a conocer la terminología que se incluye en la programación dinámica para su mejor
comprensión en el manejo de problemas.
N = Número total de etapas
n = Etapa particular, donde n = 1, 2, ..., N
en = Estado particular de la etapa n
xn = Variable de decisión para la etapa n
xn
* = valor óptimo de xn para cada en
fn e x
n n
( )
, = Contribución acumulada de la función objetivo de la etapa n hasta la N
f e f e x
n n n n n
*( ) ( *)
,
, la cual deberá optimizarse.
Hay problemas de programación dinámica de adición y de multiplicación, según la forma de obtener la
función objetivo a partir de las variables de decisión en cada etapa.Son más frecuentes los casos de adición en
la práctica, sin embargo, también aparecen situaciones de multiplicación como en aquellos casos de
probabilidad conjunta.
2. 180
A continuación presentaremos un ejemplo, el cual es típico en la programación dinámica y es el caso de la
ruta más corta, el que nos ayudará a ilustrar los conceptos de la metodología señalada.
Ejemplo X.1.- Un agente viajero busca la ruta más económica para desplazarse de Chihuahua a la ciudad
de México conforme al esquema siguiente de posibilidades:
A
B C D
E F G
H I J
K
Chihuahua
Culiacán
Durango
Saltillo
S.L.P.
Querétaro
México
León
Morelia
Guadalajara Aguascalientes
Aquí las ciudades se representan por círculos con una literal y las flechas indican traslado de una ciudad a
otra. Los costos de transportarse de un lugar a otro se dan en las siguientes tablas en miles de N$:
B C D E F G
A 62 45 50 B 40 58 65
C 55 43 53
D 59 47 44
H I J K
E 21 23 32 H 21
F 24 18 26 I 22
G 29 25 17 J 16
¿ Qué ruta deberá escoger el viajero?
Solución:
De acuerdo a la metodología descrita anteriormente lo primero será dividir el problema en etapas,las cuales
serán 4 en este caso, cada una de ellas ubicada a un mismo nivel geográfico de latitud, como se indica en la
figura por los números romanos.
3. 181
A
B C D
E F G
H I J
K
I
II
III
IV
Ahora debemos iniciar el procedimiento de solución en la última etapa y de aquí movernos recursivamente
hasta llegar a la primera.
Para la etapa IV, que significa llegar a la ciudad de México, punto K, tenemos la posibilidad de lograrlo
llegando por Morelia H, León I, o Querétaro J.
Aquí la función objetivo f e x
n n n
( , ) será el costo total acumulado de ir de la etapa n hasta la última ( la IV
en este caso), el cual se calcula con la fórmula siguiente:
f e x Ce x f x
n n n n n n n
( , ) *( )
1 Ec.(X.1)
Donde Ce x
n n es el costo para la etapa n y su estado asociado en , mientras que f x
n n
1*( ) es el costo
óptimo acumulado de la etapa n+1 hasta la etapa N.
Como podemos ver este ejemplo es un caso de adición donde la función objetivo se irá calculando por
sumatoria de costos de cada etapa.
Como el problema apenas inicia en la etapa IV, la tabla de solución será prácticamente la misma que la tabla
de los costos de ir desde H, I o J hasta K.
Etapa IV
n= 4
e4 f e
4 4
*( ) x4*
H 21 K
I 22 K
J 16 K
En este caso x4* será K pues es la variable de decisión de la cuarta etapa ( llegar a la ciudad de México).
Ahora iremos a la etapa III, donde el viajero puede llegar a H, I o J partiendo de E, F o G. Aquí el costo
f e x
3 3 3
( , ) incluirá ir desde E, F o G hasta K pasando porel punto intermedio que corresponda H, I o J, así si
tomamos el punto E para ilustrar la metodología de la programación dinámica.
4. 182
E
H
I
J
K
deberemos ir de E al punto intermedio H, I o J y de aquí a K, cuyo costo acumulado vendrá dado por el costo
de ir de E al punto intermedio correspondiente denominado Ce x
3 3, donde e3 sería E, sumado éste al mejor
costo obtenido de la etapa resuelta anteriormente, la cuarta en este caso, denominado como f x
4 3
*( ), siendo
x3 el punto intermedio respectivo, esto es :
f e x Ce x f x
3 3 3 3 3 4 3
( , ) *( )
Entonces procederemos a aplicar esta fórmula para los 3 puntos intermedios:
Para ir de E a K pasando por H, tendremos
f E H C f H
EH
3 4
( , ) *( )
21 21 42
Por su parte para ir de E a K pasando por I,
f E I C f I
EI
3 4
( , ) *( )
23 22 45
Finalmente para ir de E a K pasando por J,
f E J C f J
EJ
3 4
( , ) *( )
32 16 48
Procediendo de una manera similar para los puntos Fy G se obtienen los resultados que presentamos en la
siguiente tabla de la tercera etapa:
Etapa III
n=3
f e x Ce x f x
3 3 3 3 3 4 3
( , ) *( )
x3 f e
3 3
*( ) x3*
e3 H I J
E 42 45 48 42 H
F 45 40 42 40 I
G 50 47 33 33 J
En esta tabla se muestra la política óptima de decisiones para ir desde E, F o G hasta K, es decir las etapas
III y IV eslabonadas señalándose elmenor costo acumulado, f e
3 3
*( ) y el correspondiente punto intermedio
entre las etapas, es decir x3*.
Proseguimos ahora a la etapa II, donde el agente deberá ir de B, C o D hasta K pasando por la mejor ruta
posible de puntos intermedios, la cual se obtiene de la tabla última de resultados de la etapa III.
Ilustraremos el procedimiento tomando como base en esta ocasión al punto D, entonces nuestro recorrido
tendrá la siguiente forma:
5. 183
E
D F
G
K
Donde las flechas punteadas indican las mejores rutas para llegar de E, F o G hasta K.
Para el cálculo del costo acumulado que incluye a esta segunda etapa, tendremos:
f e x Ce x f x
2 2 2 2 2 3 2
( , ) *( )
Donde e2 sería el punto original de partida para esta etapa (o estado asociado),D en este caso; por su parte
x2 será el punto intermedio E, F o G del que se trate y f 3* el costo óptimo acumulado correspondiente de ir
desde cada uno de estos puntos hasta K, dado por la tabla de decisiones de la etapa anterior. Al aplicar esta
fórmula a las 3 opciones tendremos:
Para ir de D a K pasando por E,
f D E C f E
DE
2 3
( , ) *( )
59 42 101
Para ir de D a K pasando por F,
f D F C f F
DF
2 3
( , ) *( )
47 40 87
Finalmente para ir de D a K pasando por G,
f D G C f G
DG
2 3
( , ) *( )
44 33 77
Si procedemos de forma análoga para los puntos B y C, obtendremos los resultados de la tabla de la
segunda etapa:
Etapa II
n=2
f e x Ce x f x
2 2 2 2 2 3 2
( , ) *( )
x2
f e
2 2
*( ) x2*
e2 E F G
B 82 98 98 82 E
C 97 83 86 83 F
D 101 87 77 77 G
La cual reúne la política óptima de decisiones de ir desde B, C o D hasta K
Ahora sólo nos falta ir a la etapa primera, la cual implicará calcular al costo de ir de A a B, C o D y de cada
punto intermedio de éstos hasta K por la ruta óptima obtenida en la tabla anterior.
La fórmula para calcular el costo será:
f e x Ce x f x
1 1 1 1 1 2 1
( , ) *( )
Donde e1 es el punto A, X1 el punto intermedio B, C o D correspondiente y f x
2 1
*( ) el costo óptimo de ir
desde cada punto intermedio hasta K obtenido de la tabla de la etapa II.
Así para ir de A a K pasando por B, tendremos
f A B C f B
AB
1 2
( , ) *( )
= 62+82=144
Para ir de A a K por C,
f A C C f C
AC
1 2
( , ) *( )
= 45+83=128
6. 184
Finalmente la ruta de A a K por D,
f A D C f D
AD
1 2
( , ) *( )
= 50+77=127
Estos resultados se resumen en la última tabla la cual es:
Etapa I
n=1 f e x Ce x f x
1 1 1 1 1 2 1
( , ) *( )
e1 x1 B C D f e
1 1
*( ) x1*
A 144 128 127 127 D
Donde vemos que la ruta óptima tiene un costo de N$ 127.00
Ahora para definir la ruta debemos ver cómo fue el recorrido óptimo de las tablas de decisiones de las
etapas, comenzando ahora por la primera y terminando en la última.
De esta forma vemos que de la tabla de la etapa I la ruta óptima es ir de A a D que viene siendo x1*; luego
de la tabla de la etapa II, vemos que partiendo de D que fue el punto de salida de la etapa anterior, debemos ir
hacia G que viene siendo x2*; de igual forma , al observarla tabla de la etapa III, vemos que partiendo de G
, el camino óptimo es hacia J que es en este caso x3*; finalmente, de la tabla de la etapa IV vemos que de J
debemos ir a K, que es x4*. De este modo el recorrido óptimo es el que se muestra en la
I II III IV
ETAPA
50 44 17 16
Chihuahua Saltillo S.L.P. Querétaro México
Costo total= 50+44+17+16=127
A D G J K
figura anterior donde vemos que la tabla final de la etapa I nos proporciona ya el costo total óptimo, puesto
que lo fue acumulando en las diferentes tablas de decisión de las etapas.
También es importante señalar que la ruta óptima global es diferente de la ruta que se formaría si partiendo
del inicio ( Chihuahua) tomáramos el camino más económico en cada etapa, pues si procediéramos de esta
manera, dicha ruta sería:
45 43 18 22
Costo total=45+43+18+22=128
A C F I K
De igual forma, es pertinente señalar que la programación dinámica representa un considerable ahorro en
el número de cálculos que se tendrían que hacer si cada problema se fuese a resolver por enumeración completa
de cada una de las rutas alternativas para ir del punto de inicio al final. Este ahorro es mayor, en cuanto sea
mayor el número de etapas y de estados asociados de cada una de ellas. Para este caso en particular,
hubiéramos tenido que calcular 3x3x3x1=27 diferentes rutas.
Presentaremos ahora otro caso práctico, como lo es el de asignar personal de la manera más eficiente para
un determinado objetivo.
Ejemplo X.2.- Un despacho de abogados cuenta con 6 personas altamente capacitadas para enfrentar
demandas del ramo penal. El despacho ha recibido últimamente 4 casos de esta área y busca la manera óptima
de asignar a los 6 litigantes a dichos casos con el fin de maximizar su utilidad poreste concepto.En la siguiente
7. 185
tabla se muestran las utilidades en miles de nuevos pesos porla asignación de un número dado de abogados a
las diferentes demandas.
C a s o s d e d e m a n d a s p e n a l e s
No. de abogados
asignados
A B C D
1 10 9 13 7
2 13 12 15 10
3 18 14 16 14
4 22 15 16 18
5 22 15 16 20
6 22 15 16 21
Si el despacho no asigna ningún abogado a cualquiera de las demandas, no obtiene ninguna utilidad.
Solución:
Lo primero será identificar para este caso las etapas,sus estados asociados y la función objetivo para poder
plantear el problema como un caso de programación dinámica.
Aquí las etapas serán las demandas, mientras que los estados asociados a cada etapa serán el número de
abogados asignados en total para las etapas ya analizadas, es decir desde la actual n hasta la última N, que es
la etapa desde la cual debe iniciarse la solución del problema. La variable de decisión xn será el número de
abogados asignados a la etapa n que se esté resolviendo en particular.
La función objetivo en este caso será la utilidad acumulada obtenida por asignar abogados a las diferentes
etapas, la cual deberá maximizarse y vendrá dada por la siguiente fórmula:
f e x U x f e x
n n n n n n n n
( , ) ( ) *( )
1 Ec.(X.2)
Donde:
f e x
n n n
( , ) Utilidad acumulada incluyendo la etapa actual n por asignar xn abogados a ésta de un total de en
Un xn
( ) Utilidad obtenida por asignar xn abogados a la etapa n.
f e x
n n n
1*( ) Utilidad óptima acumulada de la etapa n+1 hasta la N por asignar ( )
e x
n n
abogados.
Procedemos ahora a la resolución del problema, iniciando con la última etapa, demanda D para obtener la
tabla de decisiones, la que para este caso será igual a la columna de la demanda D de la tabla de utilidades,
dado que al problema apenas comienza,
Etapa IV
Demanda D
e4 f x
4 4
*( ) x4*
0 0 0
1 7 1
2 10 2
3 14 3
4 18 4
5 20 5
6 21 6
e4 es el número total acumulado de abogados asignados de la etapa actual hasta la N y x4* representa la
mejor asignación de la etapa actual, que como es la inicial, coinciden los valores de x4* con e4 .
Iremos ahora a la etapa III, la demanda C donde la función objetivo se calculará por la fórmula siguiente:
f e x U x f e x
3 3 3 3 3 4 3 3
( , ) ( ) *( )
Donde e3 será el número acumulado total de abogados asignados a las etapas III y IV, mientras que x3
será el número de abogados asignados a la presente etapa.
Por su parte f 4* se tomará de la tabla de la etapa anterior. Para ilustrar cómo se obtiene la tabla de
decisiones de esta etapa, tomaremos como ejemplo el caso cuando e3 5
y x3 tiene valores de 0 a 5, puesto
que x3 no podrá ser mayor que e3 .
8. 186
Si x3 = 0,
f U f
3 3 4
5 0 0 5
( , ) ( ) *( )
= 0+20=20
Si x3 = 1,
f U f
3 3 4
5 1 1 4
( , ) ( ) *( )
= 13+18= 31
Si x3 = 2,
f U f
3 3 4
5 2 2 3
( , ) ( ) *( )
= 15+14= 29
Si x3 = 3,
f U f
3 3 4
5 3 3 2
( , ) ( ) *( )
= 16+10 = 26
Si x3 = 4,
f U f
3 3 4
5 4 4 1
( , ) ( ) *( )
= 16+7 = 23
Finalmente si x3 = 5,
f U f
3 3 4
5 5 5 0
( , ) ( ) *( )
= 16 + 0= 16
Si procedemos de la misma forma, para los diferentes valores posibles de e3 desde cero a seis, obtenemos
la tabla de la etapa, la cual es la siguiente:
Etapa III
Demanda C
f e x U x f e x
3 3 3 3 3 4 3 3
( , ) ( ) *( )
x3
f x
3 3
*( ) x3*
e3 0 1 2 3 4 5 6
0 0 - - - - - - 0 0
1 7 13 - - - - - 13 1
2 10 20 15 - - - - 20 1
3 14 23 22 16 - - - 23 1
4 18 27 25 23 16 - - 27 1
5 20 31 29 26 23 16 - 31 1
6 21 33 33 30 26 23 16 33 1, 2
Aquí es interesante notar que la columna x3=0 es idéntica con la tabla de la etapa cuarta, dado que no se
está asignando ningún abogado a la etapa actual. La columna de f x
3 3
*( ) nos da las utilidades máximas
obtenidas para cada valor de e3 que implica las etapas III y IV asociadas,mientras que la columna de x3*
nos indica el número de abogados asignados en la etapa actual para la cual ocurrió f x
3 3
*( ) .
Procederemos ahora a pasar a la etapa II, demanda B, para la cual la fórmula para calcular la función
objetivo será:
f e x U x f e x
2 2 2 2 2 3 2 2
( , ) ( ) *( )
9. 187
Donde e2 será el número acumulado total de abogados asignados a las etapas II, III y IV y x2 será el
número de abogados asignados a esta etapa, mientras que f 3* se toma de la tabla de decisiones de la etapa
anterior.
Nuevamente ilustraremos la manera cómo se construye la tabla de decisiones con un ejemplo, para el caso
de e2=4 con x2 variando de cero a 4.
Si x2 = 0,
f U f
2 2 3
4 0 0 4
( , ) ( ) *( )
= 0+ 27 = 27
Si x2 = 1,
f U f
2 2 3
4 1 1 3
( , ) ( ) *( )
= 9 + 23 = 32
Si x2 =2 ,
f U f
2 2 3
4 2 2 2
( , ) ( ) *( )
= 12 + 20 = 32
Si x2 =3,
f U f
2 2 3
4 3 3 1
( , ) ( ) *( )
= 14 + 13 = 27
Finalmente si x2 =4,
f U f
2 2 3
4 4 4 0
( , ) ( ) *( )
= 15 + 0 = 15
Si efectuamos el mismo procedimiento, obtendremos la tabla de decisión de la etapa,la cualindica la política
óptima de decisiones para las etapas II, III y IV conjuntamente. Dicha tabla es :
Etapa II
Demanda B
f e x U x f e x
2 2 2 2 2 3 2 2
( , ) ( ) *( )
x2 f x
2 2
*( ) x2*
e2 0 1 2 3 4 5 6
0 0 - - - - - - 0 0
1 13 9 - - - - - 13 0
2 20 22 12 - - - - 22 1
3 23 29 25 14 - - - 29 1
4 27 32 32 27 15 - - 32 1, 2
5 31 36 35 34 28 15 - 36 1
6 33 40 39 37 35 28 15 40 1
Donde nuevamente observamos que la columna de x2 = 0, es igual a la de f x
3 3
*( ) de la tabla de la etapa
anterior.
Finalmente iremos a la primera etapa, demanda A, para la cual la fórmula de la función objetivo será la
siguiente:
f e x U x f e x
1 1 1 1 1 2 1 1
( , ) ( ) *( )
Donde e1 tomará solamente el valor de 6, dado que se trata de la última etapa y por lo tanto deberán estar
asignados eltotal de los abogados.Esta fórmula sumará la utilidad obtenida porasignar x1 abogados a la etapa
actual, U x
1 1
( ), con la mejor utilidad de asignar 6- x1 abogados a las etapas restantes,así para el caso de x1
=3, por asignar3 abogados a la demanda A, nuestra utilidad será de 18, mientras que la mejor forma de asignar
10. 188
los 6-3 = 3 abogados restantesentre las otras demandas,se obtiene de la tabla de la etapa anterior, f 2 3 29
*( )
, dando una utilidad global de 47 (18+29).
Aplicando un procedimiento similar para los demás valores de x1 , obtenemos nuestra tabla final, la cual
será:
Etapa I
Demanda A
f e x U x f e x
1 1 1 1 1 2 1 1
( , ) ( ) *( )
x1 f x
1 1
*( ) x1*
e1 0 1 2 3 4 5 6
6 40 46 45 47 44 35 22 47 3
De aquí vemos que la utilidad óptima es N$ 47,000 la cual resulta de asignar 3 abogados a la demanda A
mientras que los 3 restantes deben asignarse de la siguiente manera:
Si analizamos la tabla de la etapa II vemos que para e x
2 2
3 1
, * por lo que debemos asignar sólo 1
abogado a la demanda B. Ahora, si observamos la tabla de la etapa III, para asignar los 2 abogados restantes,
para e x
3 3
2 1
, * , por lo que deberemos asignartambién un abogado a esta etapa ( demanda C) y el restante
a la última etapa ( demanda A).
Por lo tanto nuestra solución óptima es :
Demanda No. de abogados asignados Utilidad en MN$
A 3 18
B 1 9
C 1 13
D 1 7
Totales 6 47
Presentaremos ahora el caso de un problema de programación dinámica con multiplicación.
Ejemplo X.3.- El señor Juan García es el principal accionista de una sociedad la que es propietaria de 3
equipos de futbol soccer de la primera división: Toros, Potros y Lobos. En un viaje reciente a Brasil al señor
García le han ofrecido a un precio muy accesible a 5 jugadores,los cuales ha adquirido para distribuir entre sus
equipos.
De pláticas hechas con los técnicos de los equipos, ha formado una tabla de probabilidades de éxito de los
mismos por asignarle un número determinado de jugadores, la cual es la siguiente:
Número de jugadores
asignados
Toros Potros Lobos
0 0.20 0.30 0.35
1 0.45 0.48 0.50
2 0.60 0.62 0.60
3 0.72 0.70 0.68
4 0.75 0.74 0.70
5 0.73 0.76 0.72
Donde las probabilidades se han expresado en fracciones.
¿Cuál sería la forma más adecuada de distribuir los 5 jugadores entre los 3 equipos?
Solución:
Este es un problema similar al anterior de asignar personal entre diferentes equipos para lograr un objetivo.
La diferencia esencial será la manera de definir la función objetivo, dado que el presente es un caso de
maximización de la probabilidad conjunta de éxito de los 3 equipos, la cual se integrará ahora por la
multiplicación de las probabilidades individuales de cada uno.
11. 189
Aquí las etapas serán los equipos,3 en este caso, mientras que los estados asociados con cada etapa será el
número de jugadores totales que se van asignando desde la etapa actual hasta la última; xn es la variable de
decisión y representa el número de jugadores asignados a la etapa actual n.
La función objetivo vendrá dada en este caso por el producto de factores individuales, que son las
probabilidades de éxito de cada equipo, cuya fórmula será la siguiente:
f e x p x f e x
n n n n n n n n
( , ) ( ). *( )
1 Ec.(X.3)
Donde:
f e x
n n n
( , ) Probabilidad conjunta de éxito de la etapa actual n hasta la última N.
p x
n n
( ) Probabilidad individual de éxito por asignar xn jugadores al equipo que corresponde a la etapa
actual.
f e x
n n n
1*( ) Probabilidad conjunta óptima de las etapas asociadas n+1 hasta la N por asignar ( )
e x
n n
jugadores, la cual vendrá dada por la ecuación:
f e x p x
n n n Max
i n
N
i i
1
1
*( ) ( ) Ec.(X.4)
Donde el símbolo denota multiplicación de todos los factores p x
i i
( ).
Una vez definidos los parámetros del problema, procederemos a la solución del mismo iniciando en la última
etapa, el equipo de Lobos, cuya tabla de decisión será idéntica a la de los datos del problema, dad o que éste
apenas inicia.
Etapa III
Lobos
e3 f e
3 3
*( ) x3*
0 0.35 0
1 0.50 1
2 0.60 2
3 0.68 3
4 0.70 4
5 0.72 5
Por lo cual también coinciden los valores de la columna de x3* con los de e3 dado que no ha habido
asignaciones anteriores.
Iremos ahora a la etapa II, el equipo de Potros, donde para dejar en claro el procedimiento que se debe
seguir para obtener la tabla de decisiones de la etapa, tomaremos como ejemplo el cálculo cuando e2 4
tomando x2 valores de 0 a 4. Por su parte, la función objetivo habrá de calcularse con la Ec. ( X. 3) aplicada
a esta etapa, la cual será:
f e x p x f e x
2 2 2 2 2 3 2 2
( , ) ( ). *( )
Entonces si e2 4
,
Para x2 =0,
f p f
2 2 3
4 0 0 4
( , ) ( ). *( )
= (0.30)(0.70)= 0.21
Para x2 =1,
f p f
2 2 3
4 1 1 3
( , ) ( ). *( )
= (0.48)(0.68) = 0.3264
f p f
2 2 3
4 2 2 2
( , ) ( ). *( )
= (0.62)(0.60) = 0.372
Para x2 = 3,
f p f
2 2 3
4 3 3 1
( , ) ( ). *( )
12. 190
= (0.70)(0.50)= 0.35
Finalmente para x2 = 4,
f p f
2 2 3
4 4 4 0
( , ) ( ). *( )
= (0.74)(0.35) = 0.259
Efectuando un procedimiento análogo para los demás valores de e2 obtenemos la tabla respectiva de la
etapa, la cual será la siguiente:
Etapa II
Potros
f e x p x f e x
2 2 2 2 2 3 2 2
( , ) ( ). *( )
e2 x2 0 1 2 3 4 5 f e
2 2
*( ) x2*
0 0.105 - - - - - 0.105 0
1 0.150 0.168 - - - - 0.168 1
2 0.180 0.240 0.217 - - - 0.240 1
3 0.204 0.288 0.310 0.245 - - 0.310 2
4 0.210 0.3264 0.372 0.350 0.259 - 0.372 2
5 0.216 0.336 0.4216 0.420 0.370 0.266 0.4216 2
La que muestra la política de decisiones de las etapas conjuntas II y III.
En esta tabla es interesante observarque a diferencia del ejemplo X.2, la columna de la tabla para x2 =0
no es igual a la columna de la tabla de la etapa III como sucedía con los problemas de adición, dado que para
el caso presente las probabilidades van multiplicadas para las etapas II y III conjuntamente.
Finalmente iremos a la etapa I, asignar jugadores alequipo Toros.Aquí para construirla tabla de decisiones,
la fórmula para la función objetivo será:
f e x p x f e x
1 1 1 1 1 2 1 1
( , ) ( ). *( )
Donde e1 solamente tendrá el valor de 5, es decir el totalde jugadores,ya que porser la última etapa,deberá
dejar el problema resuelto. Entonces, al aplicar la fórmula tendremos:
Como e1 =5, para x1= 0,
f p f
1 1 2
5 0 0 5
( , ) ( ). *( )
= (0.20)(0.4216) = 0.08432
Para x1=1,
f p f
1 1 2
5 1 1 4
( , ) ( ). *( )
= (0.45)(0.372)= 0.1674
Para x1=2,
f p f
1 1 2
5 2 2 3
( , ) ( ). *( )
= (0.60)(0.31)= 0.186
Para x1=3,
f p f
1 1 2
5 3 3 2
( , ) ( ). *( )
= (0.72)(0.24) = 0.1728
Para x1=4,
f p f
1 1 2
5 4 4 1
( , ) ( ). *( )
= (0.75)(0.168) = 0.126
Finalmente para x1=5,
f p f
1 1 2
5 5 5 0
( , ) ( ). *( )
= (0.73)(0.105)= 0.07665
13. 191
Con esto nuestra tabla es:
Etapa I
Toros
f e x p x f e x
1 1 1 1 1 2 1 1
( , ) ( ). *( )
x1 f e
1 1
*( ) x1*
e1 0 1 2 3 4 5
5 0.08432 0.1674 0.186 0.1728 0.126 0.07665 0.186 2
De la cual vemos que la mejor opción es una probabilidad conjunta de obteneréxito con sus tres equipos
para el señor Juan García de 0.186, la cual realizará asignando 2 jugadores al equipo Toros, tal y como se
observa de la tabla de la etapa I, puesto que x1*=2. Para sabercómo distribuir los restantes 3jugadores, vamos
a la tabla de decisión de la etapa II, donde vemos que para e x
2 2
3 2
, * , por lo que se deberán asignar 2
jugadores de esos 3 restantes al equipo que comprende a esta etapa, Potros. Con esto el único jugador restante
debe ser incorporado al equipo Lobos. Estas asignaciones se muestran en la tabla siguiente:
Equipos No. de jugadores Probabilidad de éxito
Lobos 1 0.50
Potros 2 0.62
Toros 2 0.60
Totales 5 (0.50)(0.62)(0.60)= 0.186
Estos ejemplos nos muestran claramente las ventajas de la programación dinámica para resolver este tipo
de problemas, pues aún cuando los ejercicios resueltos en el capítulo no son grandes,se puede apreciar que ha
habido ahorro en el número de cálculos necesarios para obtenersu solución.Este ahorro obviamente será mayor
cuando se manejen casos con más etapas y estados asociados.
PROBLEMAS PROPUESTOS
X.1.- Un candidato a senadorporel Partido Inteligente busca obtenerel mayor número de votos en 4 distritos,
para lo cual dispone de 6 trabajadores, los cuales deberá distribuir entre los 4 distritos para obtener su fin. Su
jefe de campaña ha estimado los votos incrementales que se obtendrían por tales asignaciones, los cuales son
los siguientes:
Distritos
No.
de trabajadores
I II III IV
14. 192
0 0 0 0 0
1 2500 2300 2000 2250
2 4300 4600 3950 4600
3 6000 6800 5800 7000
4 7200 9000 7600 8600
5 8250 10500 8700 9400
6 9000 10500 10000 9600
¿ Cómo deberá asignar a los trabajadores entre los distritos a fin de maximizar el número de votos
incrementales?
X.2- Un comerciante en frutas tiene 4 bodegas de naranja en diferentes ciudades: México, Monterrey,
Guadalajara y Puebla. Ha hecho compras de la fruta por un total de 7 lotes en huertas de naranja.
La tabla siguiente muestra las utilidades esperadas en miles de nuevos pesos (MN$), por asignarlos 7 lotes
entre las 4 bodegas:
B o d e g a s
No. de lotes México Monterrey Guadalajara Puebla
0 0 0 0 0
1 70 60 50 35
2 120 110 105 65
3 180 160 153 95
4 240 205 200 125
5 305 260 248 155
6 360 310 300 185
7 400 365 335 210
¿Cómo debe el comerciante efectuar sus asignaciones para maximizar su utilidad?
X.3.- Un detective cuenta con 3 ayudantes y debe resolver 3 casos de homicidios que le han sido
encomendados. De un estudio de factibilidad le han entregado la siguiente información donde aparecen las
probabilidades de fracaso en la aclaración de dichos homicidios por asignar a sus ayudantes a los 3 casos:
C a s o s
No. ayudantes asignados I II III
0 0.50 0.60 0.60
1 0.40 0.48 0.50
2 0.30 0.36 0.38
3 0.22 0.25 0.32
¿ Cómo debe asignar a su personal a fin de minimizar la probabilidad conjunta de fracaso en los 3 casos?
X.4.- El esquema siguiente muestra 10 ciudades en las cuales se indican las rutas para abastecerde un producto
desde A hasta J,sobre las flechas se han colocado los costos de flete para el transporte en miles de nuevos pesos,
MN$. ¿ Cuál será la mejor ruta a seguir para minimizar el costo total?.
15. 193
A
B
C
D
E
F
G
H
I
J
10
13
13
16
15
14
10
9
12
11
7
6
4
15
12
8
X.5.- Obtenga la peor ruta posible del problema anterior.
X.6.- ¿Cuál será la peor opción del detective en el caso del problema X.3?
X.7.- Un empresario desea expander su empresa, para lo cual ha contratado a 4 asesores para que le
estructuren las áreas de producción, ventas, finanzas y mantenimiento.
Dispone de una tabla que le indica las utilidades en miles de nuevos pesos (MN$ ) incrementales que puede
esperar por asignar a estos asesores en las diferentes áreas.
A r e a s
Número de
asesores
Producción Ventas Finanzas Mantenimiento
0 0 0 0 0
1 50 60 48 42
2 90 80 80 60
3 120 90 92 80
4 125 92 100 85
¿ Cómo deberá asignar a sus asesores a fin de maximizar sus utilidades incrementales?
X.8.- Un entrenador de atletismo debe asignar 4 atletas adicionales para 3 diferentes pruebas que son: Salto
de altura, carrera de 10 Kms. y salto de longitud.
En la siguiente tabla se dan las probabilidades de éxito por dichas asignaciones.
P r u e b a s
No. atletas
asignados
Salto de altura Carrera de 10 kms Salto de longitud
0 0.40 0.30 0.50
1 0.50 0.45 0.68
2 0.60 0.58 0.80
16. 194
3 0.65 0.70 0.82
4 0.70 0.73 0.84
¿ Cómo deberá asignar a sus atletas a fin de maximizar la probabilidad conjunta de lograr éxito en las 3
pruebas?