UNI VE RSI DAD NA CI ONAL M AY OR D E S AN M ARC OS (UNIVERSIDAD DEL PERÚ, DECANA DE AMÉRICA)
PROGRAMACIÓN DINÁMICA Curso: Investigación Operativa 2 Profesora: Mg. Rosmeri Mayta Huatuco Alumnos:
Huamán Nakamatzu Flavio
13170182
Solis Quispe Jackeline Milagros
14170055
Tamariz Romaní Nathalia Sofía
14170058
Ing. Rosmeri Mayta Huatuco 1
ÍNDICE
1. De la ruta r uta más corta ........................................... ........................................................................................... .................................................. .. 3 2. Modelo de inversión ................................................... ...................................................................................................... ........................................................... ........ 6 .................................................................................................. ................................................ .............................................................................. ............................ .............................................................................................................................. .............................................................................................................................. 3. Modelo Volumen – Volumen – Carga Carga / de la mochila ............................................ .............................................................. .................. 9 4. Programación dinámica determinística: Problemas de asignación ....................... 12 5. Programación dinámica probabilística ................................................................ 22
Ing. Rosmeri Mayta Huatuco 2
1. De la ruta más corta La distribuidora GAJ se encarga de distribuir productos, sus camiones solo llevan los productos de A hacia B, C, D, E y F dependiendo del pedido. La administración de esta empresa desea saber la distancia más corta de A hasta D.
Solución (usando WINQSB): Se ingresa a la carpeta WINQSB, dentro de esta se encuentra el programa Dynamic Programming, se ingresa a este. Se crea un nuevo problema, se elige la opción “stagecoach (Shortest (Shortest Route) Problem”, se
coloca como nombre del probl ema “RUTA MAS CORTA” y se ingresa el número de nodos.
Ing. Rosmeri Mayta Huatuco 3
Se abrirá
un
cuadro donde se ingresan los datos, se pasan todos los datos de la red a forma de tabla y se cambia el nombre de los nodos, tomar en cuenta que se repetirán datos como de A B es igual a 30 y de B A también es 30.
Se coloca la opción “Solve the problema”, la cual está en la barra de herramientas “solve and Analyze”.
Saldrá una ventana que nos pedirá cual distancia mínima entre los destinos iniciales y los destinos finales que queremos saber, elegimos A D.
Ing. Rosmeri Mayta Huatuco 4
Sale un cuadro con el resultado de la distancia mínima entre A y D, la cual es 1020km.
Interpretación: Primero se va a E (220km) y luego desde E hacia D (800km) dando un total de 1020 km.
Ing. Rosmeri Mayta Huatuco 5
2. Modelo de Inversión Una corporación recibe propuestas de sus tres plantas respecto de una posible expansión de sus instalaciones. La corporación tiene un presupuesto de 5 millones de dólares para asignarle a las tres plantas. Cada planta expones sus propuestas explicando el costo (C) y el ingreso total (R). En la siguiente tabla se muestra los costos e ingresos. Maximizar el ingreso total resultante. Defina las variables de decisión, etapas y función recursiva. Utilícela programación dinámica para hallar la solución óptima. Planta 1
Planta 2
Planta 3
Propuesta C1
R1
C2
R2
C3
R3
1
0
0
0
0
0
0
2
1
5
2
8
1
3
3
2
6
3
9
-
-
Ing. Rosmeri Mayta Huatuco 6
4
-
-
4
12
-
-
Las variables de decisión serial las mostradas a continuación
Xi= Monto asignado en el mes i Fi (Si, Xi)= Mejor retorno cuando se dispone de S i, y se asigna Xi en la etapa i. Si= Cantidad disponible en la etapa i. Fi-1()= Mejor retorno en la etapa i-1.
Ecuación de recursiva: Fi (Si, Xi)= Max [ri (Xi)+ Fi -1(Si,-Xi)]
Etapa 1(para la planta 1)
Para esta etapa F 0(S0-X0)=0. F1(Si, Xi)= Max [ri (Xi)+ Fi -1(Si,-Xi)]=Max[ri (Xi)]. F1(0, 0)= Max[0]=0.
F1(4, 0)= Max[0]=0
F1(1, 0)= Max[0]=0.
F1(4, 1)= Max[5]=5
F1(1, 1)= Max[5]=5.
F1(4, 2)= Max[6]=6
F1(2, 0)= Max[0]=0
F1(5, 0)= Max[0]=0
F1(2, 1)= Max[5]=5.
F1(5, 1)= Max[5]=5
F1(2, 2)= Max[6]=6.
F1(5, 2)= Max[6]=6
F1(3, 0)= Max[0]=0 F1(3, 1)= Max[0]=5 F1(3, 2)= Max[0]=6
Si/Xi
0
1
2
Fi (Si, Xi)
Xi
Ing. Rosmeri Mayta Huatuco 7
0
0
*
*
0
0
1
0
5
*
5
1
2
0
5
6
6
2
3
0
5
6
6
2
4
0
5
6
6
2
5
0
5
6
6
2
Etapa 2(Para la planta 2)
F2(0, 0)= Max[0+0]=0.
F2(4, 0)= Max[0+6]=6
F2(1, 0) = Max [0+5] =5.
F2(4, 2) = Max [8+6] =14
F2(2, 0) = Max [0+6] =6.
F2(4, 3) = Max [9+5] =14
F2(2, 2) = Max [8+0] =8
F2(4, 4) = Max [12+0] =12
F2(3, 0) = Max [0+6] =6
F2(5, 0) = Max [0+6] =6
Si/Xi
0
2
3
4
Fi (Si, Xi)
Xi
0
0
*
*
*
0
0
1
5
*
*
*
5
0
Ing. Rosmeri Mayta Huatuco 8
2
6
8
*
*
8
2
3
6
13
9
*
13
3
4
6
14
14
12
14
2o 3
5
6
14
15
17
17
4
F2(3, 2) = Max [8+5] =13
F2(5, 2) = Max [8+6] =14
F2(3, 3) = Max [9+0] =9
F2(5,3) = Max [9+6]=15 F2(5, 4) = Max [12+5]=17
Etapa 3(Para la planta 3)
F3(5, 0) = Max [0+17]=17
F3(5, 1) = Max [3+14]=17
Se concluye que hay más de una solución por lo que se puede observar en la última tabla correspondiente en la etapa, las soluciones se muestran a continuación:
Planta
Solución 1
Solución 2
Solución 3
1
1
2
1
2
4
2
3
3
0
1
1
Si/Xi
0
1
Fi (Si, Xi)
Xi
5
17
17
17
0o1
3.Modelo Volumen – Carga PROBLEMA MOCHILA Ing. Rosmeri Mayta Huatuco 9
Problema 1 Tengo un jardín en mi traspatio que mide 10 x20 pies. Esta primavera deseo sembrar tres verduras: tomates, lechugas, y zanahorias. El huerto se organiza en 10 surcos de 10 pies. Los surcos con tomates y zanahorias tienen 2 pies de anchos, y las lechugas 3 pies de ancho. Lo que más me gusta son tomates y lechugas casi no me gustan, en una escala de 1 al 10 calificaría con 10 a los tomates, 7 a la zanahoria y 3 a las lechugas. Independientemente de mis gustos, mi esposa insiste en sembrar al menos un surco de lechuga y no más de dos surcos de tomate. Aplicar la programación dinámica para optimizar el espacio que tengo en mi jardín, cuantos surcos de lechuga, tomates y zanahoria debo sembrar.
SOLUCION
Etapas
Tomate Lechuga Zanahoria
1er etapa 2da etapa 3era etapa
m1= 1,2 m2=W/W2=1, 2, 3, 4, 5,6 m3=W/W3=1,2,3,4,5,6,7
Objetivo = Maximizar las preferencias
Ing. Rosmeri Mayta Huatuco 10
Tubérculos
Hileras
Zanahoria
6
Lechuga
1
Tomate
2
Problema 2 Un excursionista tiene una mochila de 15 pies cúbicos de capacidad y desea saber cuáles son los artículos más valiosos que va a llevar a la excursión. Hay tres artículos de donde escoger. Sus volúmenes son de 2,3 y 4 pies cúbicos. Debe llevar por lo menos 1 de cada artículo. El excursionista estima sus valores correspondientes, en una escala del 0 al 100. En la siguiente tabla se dan los siguientes datos. Determine la solución óptima aplicando programación dinámica.
Ing. Rosmeri Mayta Huatuco 11
Solución Total de artículos a seleccionar 3 Objetivo: maximizar el beneficio Función de rendimiento: = max + −
)
Etapa 1: Artículo 3 Etapa 2: Artículo 2 Etapa 3: Artículo 1 W/W3 = 15/4= 1, 2, 3 W/W2 = 11/3= 1, 2, 3 W/W1 = 8/2 = 1, 2, 3, 4 No se toma en cuenta el 0 por la restricción
ALTERNATIVAS DE SOLUCION
Ing. Rosmeri Mayta Huatuco 12
3. Problemas de asignación Ejercicio 1: Programación dinámica Una compañía de máquinas vendedoras opera una máquina de 3 años de uso en un cierto lugar, el costo por comprar una maquina nueva es de 6500, pero se acepta la maquina antigua como parte de paga en función a su antigüedad, la estimación de mantenimiento y los ingresos para cualquier maquina en ese lugar se resumen a continuación:
Edad años 0
1
2
3
4
5
6
ingreso
10000
9500
9200
8500
7300
5100
4000
mantenimiento
100
400
800
2000
2600
3300
3900
3000
2300
1600
700
600
0
Maquina antigua
Ing. Rosmeri Mayta Huatuco 13
Por política de la empresa ninguna maquina se conserva después de cumplir 6 años y las maquinas se reemplazan por maquinas nuevas. Se busca maximizar el beneficio por los próximos 4 años Costo de reemplazo = 6500 – maquina antigua
Edad años
0
1
2
3
4
5
6
10000
9500
9200
8500
7300
5100
4000
mantenimiento 100
400
800
2000
2600
3300
3900
Costo de reemplazo
3500
4200
4900
5800
5900
6500
ingreso
1 : se reemplaza la maquina. Año , Edad de la maquina 0 : no se reemplaza la maquina.
Ing. Rosmeri Mayta Huatuco 14
Ing. Rosmeri Mayta Huatuco 15
Año
Cambio
Beneficio
Ing. Rosmeri Mayta Huatuco 16
1
1
700
2
0
9900
3
0
9100
4
0
8400
total
28100
Ing. Rosmeri Mayta Huatuco 17
Programación en DIN Conjunto de Decisiones
Función de transición
D={0,1}
Sn1 = S1 + 1 Sn2 =(D-1)*(D-1-S2)
Restricciones Estado Inicial
Sn1 <= 4, 0<=Sn2<=5
(1,3)
Función de Retorno
Ecuación Recursiva
R=Y(S2)-M(S2)-R(S2+1)*D + F(Sn1,Sn2)
Condición de Contorno
Maximizar
Definiciones Adicionales
F(4,x)=9900, x=0
Y(i=0)={10000,9500,9200,8500,7400,5100,4000}
F(4,x)=9100, x=1
M(i=0) ={100,400,800,2000,2600,3300,3900}
F(4,x)=8400, x=2 F(4,x)=6500, x=3 F(4,x)=4700, x=4
R(i=0)={0,3500,4200,4900,5800,5900,6500}
F(4,x)=1800, x=5 F(4,x)=100, x=6
Ing. Rosmeri Mayta Huatuco 18
Ing. Rosmeri Mayta Huatuco 19
Ing. Rosmeri Mayta Huatuco 20
Ejercicio 2 Para mejorar la atención médica en 3 países subdesarrollados se dispone de 4 brigadas médicas que son indivisibles. Con el fin de distribuir a las brigadas entre los países de la mejor forma posible, se utiliza como indicador de la eficiencia el número de años de vida adicionales por persona en función del número de brigadas enviadas a cada país, que se encuentra en la tabla adjunta (cantidad divididas por mil). ¿Cuál es la asignación que maximiza las medidas de eficiencia?
Ing. Rosmeri Mayta Huatuco 21
Solución: Número de brigadas médicas
País
0
0
0
0
1
45
20
50
2
70
45
70
3
90
75
80
4
105
110
100
Ing. Rosmeri Mayta Huatuco 22
Alt 1
Alt 2
Alt 3
Alt 4
1
1
2
2
3
2
2
0
1
0
3
1
2
1
1
Ing. Rosmeri Mayta Huatuco 23
4. Programación dinámica probabilística Problema 1 TEXTIL S.A es una cadena de tiendas dedicadas a la comercialización de prendas de vestir. La gerencia de ventas está estudiando la información de ventas de prendas tipo A, de tres tiendas principales para luego asignar en unidades de cien las 7 centenas adquiridas por el Dpto. de compras. El ingreso por ventas de cada centena es de 10 mil soles, los saldos por fin de temporada se rematan en 3 mil soles la centena. La demanda en centenas y la probabilidad de cada venta por tiendas es como sigue:
TIENDA
DEMANDA (en cientos)
PROBABILIDAD (%)
1
1
40
2
30
3
30
0
20
1
50
2
30
0
10
1
40
2
30
3
20
2
3
Ing. Rosmeri Mayta Huatuco 24
Solución Calculamos los Tienda 3
0 = 0 1 = 1× 1 × 10 = 10 2 = 2 × 0.6 × 10 1 × 0.4 × 10 1 × 0.4 × 3 = 17.2 3 = 3 × 0.3 × 10 2 × 0.3 × 10 1 × 0.3 × 3 1 × 0.4 × 10 2 × 0.4 × 3 = 22.3
Tienda 2
0 = 0 1 = 1× 0.80 × 10 = 8 2 = 2 × 0.3 × 10 1 × 0.5 × 10 1 × 0.5 × 3 = 12.5
Tienda 1
0 = 0 1 = 1 × 0.90 × 10 = 9 2 = 2 × 0.5 × 10 1 × 0.4 × 10 1 × 0.4 × 3 = 15.2 3 = 3 × 0.2 × 10 2 × 0.3 × 10 1 × 0.3 × 3 1 × 0.4 × 10 2 × 0.4 × 3 = 19.3
= max[ + − ]
Ing. Rosmeri Mayta Huatuco 25
Tienda 3
0 = 0
→
0 = 0
1 = 1
→
1 = 1
2 = 2
→
2 = 2
3 = 3
→
3 = 3
Tienda 2
0 = max 0 0 − 0 = 0 1 = max
0 1 − 0 = 10 1 1 − 1 = 8
0 = 0
→ →
1 = 0
0 2 − 0 = 17.2 2 = max 1 2 − 1 = 18 2 2 − 2 = 12.5
→
2 = 1
0 3 − 0 = 22.3 3 = max 1 3 − 1 = 25.2 2 3 − 2 = 22.5
→
3 = 1
1 4 − 1 = 30.3 2 4 − 2 = 29.7
→
4 = 1
4 = max
5 = max 2 5 − 2 = 34.8 →
5 = 2
Ing. Rosmeri Mayta Huatuco 26
Tienda 1
7 = max
2 7 − 2 = 50 3 7 − 3 = 49.6
2 = 2
→
Tienda
Cantidad
1
2
2
2
3
3
Problema 2 Considere un sistema electrónico con cuatro componentes, cada uno de los cuales debe trabajar para que el sistema funciones. La confiabilidad del sistema se puede mejorar si se instalan varias unidades paralelas en uno o más de los componentes. La siguiente tabla muestra la probabilidad de que los respectivos componentes funcionan si constan de una, dos o tres unidades paralelas:
Unidades Paralelas
Probabilidad de funcionamiento Componente 1
Componente 2
Componente 3
Componente 4
1
0.5
0.6
0.7
0.5
2
0.6
0.7
0.8
0.7
3
0.8
0.8
0.9
0.9
Ing. Rosmeri Mayta Huatuco 27
La probabilidad de que el sistema funciones es el producto de las probabilidades de que los componentes respectivos funcionen. En la siguiente tabla se presenta el costo (en cientos de dólares) de instalar una, dos o tres unidades paralelas en los componentes respectivos:
Unidades Paralelas
Probabilidad de funcionamiento Componente 1
Componente 2
Componente 3
Componente 4
1
1
2
2
2
2
2
4
3
3
3
3
5
4
4
Dadas las limitaciones del presupuesto, se puede gastar un máximo de $1000.
SOLUCIÓN:
= ú = = .
= $ . , = á {
∗ ( - )}
Ing. Rosmeri Mayta Huatuco 28
Etapa 4 (Componente 4)
, = ( )
Solución Optima
= 1
= 2
= 3
∗
∗
200
0.5
-
-
0.5
1
300
0.5
0.7
-
0.7
2
400
0.5
0.7
0.9
0.9
3
500
0.5
0.7
0.9
0.9
3
600
0.5
0.7
0.9
0.9
3
Etapa 3 (Componente 3)
, = ( )
Solución Optima
= 1
= 2
= 3
∗
∗
300
(0.7) *(0.5) = 0.35
-
-
0.35
1
400
(0.7) *(0.7) = 0.49
-
-
0.49
1
500
(0.7) *(0.9) = 0.63
(0.5) *(0.8) = 0.40
-
0.63
1
600
(0.7) *(0.9) = 0.63
(0.7) *(0.8) = 0.56
(0.5) *(0.9) = 0.45
0.63
1
700
(0.7) *(0.9) = 0.63
(0.8) *(0.9) = 0.72
(0.7) *(0.9) = 0.63
0.72
2
Ing. Rosmeri Mayta Huatuco 29
Etapa 2 (Componente 2)
, = ( )
Solución Optima
= 1
= 2
= 3
∗
∗
500
(0.6) *(0.35) = 0.210
-
-
0.210
1
600
(0.6) *(0.49) = 0.294
-
-
0.294
1
700
(0.6) *(0.63) = 0.378
(0.7) *(0.35) = 0.245
-
0.378
1
800
(0.6) *(0.63) = 0.378
(0.7) *(0.49) = 0.343
(0.8) *(0.35) = 0.280
0.378
1
900
(0.6) *(0.72) = 0.432
(0.7) *(0.63) = 0.441
(0.8) *(0.49) = 0.392
0.441
2
Etapa 1 (Componente 1)
500
, = ( )
Solución Optima
= 1
= 2
= 3
∗
∗
(0.5) *(0.441) = 0.2205
(0.6) *(0.378) = 0.2268
(0.8) *(0.378) = 0.3024
0.324
3
Ing. Rosmeri Mayta Huatuco 30