labo_programacion_dinamica

Upload: carol-geronimo-loli

Post on 08-Mar-2016

11 views

Category:

Documents


0 download

DESCRIPTION

Este laboratorio esta enfocado a la programación dinamica

TRANSCRIPT

LABORATORIO DE INVESTIGACIN OPERATIVA II

LABORATORIO DE INVESTIGACIN OPERATIVA II2014

INTEGRANTES:GUEVARA LPEZ SERGIO 10170122

25

INDICE

PROGRAMACIN DINMICA3

CAMINO MS CORTO (PROGRAMACIN DINMICA)3

MODELO VOLUMEN CARGA15

MODELO ASIGNACION34

MODELO DE INVENTARIO39

PROGRAMACIN DINMICA PROBABILSTICA46

PROGRAMACIN DINMICACAMINO MS CORTO (PROGRAMACIN DINMICA)PROBLEMA 1Carlos vive en Nueva York, pero proyecta viajar en su automvil hasta Los ngeles en busca de fama y fortuna. Los fondos son limitados, as que decide pasar cada noche de su viaje en la casa de un amigo. Carlos tiene amigos en Columbus, Nashville, Louisville, Kansas-city, Omaha , Dallas, San Antonio y Denver. Carlos sabe que despus de manejar un da puede llegar a Columbus , Nashville , o Louisville. Despus de manejar dos das puede llegar a Kansas city, Omaha , o Dallas. Despus de tres das de viaje puede llegar a San Antonio o Denver. Luego de cuatro das de manejar puede llegar finalmente a Los ngeles. Para minimizar la cantidad de millas recorridas Dnde debe Carlos pasar cada noche del viaje? Las millas reales por carretera entre las ciudades se dan en la siguiente figura:Solucin:Funcin de recurrencia:Fn(Sn , Xn ) = min [C(Sn,Xn) + Fn-1 (Xn-1)]Donde: Sn: inicio y Xn: Destino

ETAPA I n=1Sn=1 Xn=2,3,4,F1(Sn,X2) = min [C(1,2)+ F0(X0)]F1(Sn,X2) = min[550+0)F1*(2) = 550

F1(Sn,X3)= min[C(1,3) + F0(X0)]F1(Sn,X3)= min[900+0]F1*(3)= 900

F1(Sn,X4)= min[C(1,4) + F0(X0)]F1(Sn,X4)= min[770+0]F1*(4)= 770

ETAPA IIn=2Sn=2,3,4 Xn= 5, 6, 7F2(Sn,X5) = min [C(2,5)+ F1(2), C(3,5) + F1(3 ) , C(4,5) + F1(4)]F1(Sn,X5) = min[680+550, 580+900 , 510+770]

F2*(5) = 1230

F1(Sn,X6) = min [C(2,6)+ F1(2), C(3,6) + F1(3 ) , C(4,6) + F1(4)]F1(Sn,X6) = min[790+550,760+900, 830+770 ]

F2*(6) = 1340

F1(Sn,X7) = min [C(2,7)+ F1(2), C(3,7) + F1(3 ) , C(4,7) + F1(4)]F1(Sn,X7) =min[1050+550,660+900, 830+770 ]

F2*(7) = 1560

ETAPA IIIn=3Sn=5.6.7 Xn= 8,9F2(Sn,X8) = min [C(5,8)+ F2(5), C(6,8) + F2(6 ) , C(7,8) + F2(7)]F1(Sn,X8) = min[610+1230, 540+1340, 790+1560]

F3*(8) = 1840

F2(Sn,X9) = min [C(5,9)+ F2(5), C(6,9) + F2(6 ) , C(7,9) + F2(7)]F1(Sn,X9) = min[790+1230, 940+1340,270+1560]

F3*(9) = 1830

ETAPA IVn=4Sn=8,9 Xn= 10F4(Sn,X10) = min [C(8,10)+ F3(8), C(9,10) + F3(9 ) ]F4(Sn,X10) = min[1030+1840, 1390+1830]F4*(10) = 2870

RESPUESTA:Carlos debe pasar el primer dia en Columbus , el Segundo da en Kamsas City , el tercer dia Denver y finalmente en el cuarto da llega a Los ngeles.El total de millas recorridas es 2870.

REOLVIENDO POR EL WINQSB

PROBLEMA 2Encuentre el camino ms corto desde el nodo 1 hasta el nodo 10 en la red mostrada en la siguiente figura. Adems determine el camino ms corto desde el nodo 3 hasta el nodo 10.Solucin:Funcin de recurrencia:

Dnde: Sn: inicio y Xn: Destino

ETAPA I

ETAPA II

ETAPA III

ETAPA IV

RESPUESTA:Para ir del nodo 1 al nodo 10 existen dos caminos:

Para ir de nodo 3 al nodo 10 el camino ms corto estar dado por los nodos

SOLUCION POR WINQSB1. Ingresamos a inicio/Programas/WinQSB/Dynamic Programming.

2. Escogemos la primera opcin que es el tipo de problema (Stagecoach Shortest Route Problem) y la cantidad de nodos que es 10. Luego de la pantalla de inicializacin.

3. Se ingresan los datos:

4. Vamos a la opcin solve and Analize y hacemos clic en la opcin Solve en la pantalla:

MODELO VOLUMEN CARGAPROBLEMA 3Resolver el siguiente PL. Por el mtodo de la mochila:

SOLUCION:Analizando el PL observamos los costos (beneficios) y la capacidad mxima (8 Kg.), de lo que se concluye la siguiente tabla:ARTICULOPESO (WI)BENEFICIO (ri)ETAPA

1 (X1)45I

2 (X2)34II

3 (X3)22III

CAPACIDAD MAXIMA = 8Kg.Funcin de recurrencia:

En el caso de la mochila se recomienda empezar por la ltima etapa. En este caso se empezara por la etapa IIIETAPA III:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

0000

10001

202021

3020021

40240042

50240042

60246063

70246063

80246884

Como no existe la fase 4 el F4 = 0;

ETAPA II:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

0000

10000

220020

324041

444041

546061

666082

768082

88810102

ETAPA I:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

0000

10000

220022

340042

445051

566062

687680

789992

810910102

RESPUESTAExistirn dos soluciones:

SOLUCION EN WINQSB1. Ingresamos a inicio/Programas/WinQSB/Dynamic Programming.

2. Escogemos la segunda opcin que es el tipo de problema (Knapsack Problem) y la cantidad de nodos que es 3. Luego de la pantalla de inicializacin.

3. Ingreso de datos:

4. Al hacer clic en Solve and Analyze:

PROBLEMA 4La carga de un avin se distribuye con el propsito de maximizar el ingreso total. Se consideran 5 elementos y solo se necesita uno de cada uno. La compaa gana 5000 S/. Por elemento ms una bonificacin por elemento. El avin puede transportar 2000 lb.ElementoPeso (lb)Volumen (cm3)BonificacinEtapa

1100070700I

21100100800II

37001001100III

4800801000IV

550050700V

a) Cules elementos deben transportarse?b) Si se considera un volumen mximo de 120 cm3. Cules elementos deben transportarse?SOLUCION:El problema se desarrolla bajo las dos consideraciones, primero teniendo en cuenta el peso y luego el volumen. Como puede apreciarse este es un problema que bien podra resolverse por programacin lineal entera teniendo en cuenta la funcin objetivo y restricciones siguientes:

a) Analizaremos para la restriccin del peso.CAPACIDAD MAXIMA = 2000 lb.Funcin de recurrencia:

En el caso de la mochila se recomienda empezar por la ltima etapa. En este caso se empezara por la etapa V

ETAPA V:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

0000

2000000

4000000

60007007001

80007007001

100007007001

120007007001

140007007001

170007007001

180007007001

200007007001

ETAPA IV:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

2000000

4000000

60070007000

800700100010001

1000700100010001

1200700100010001

1400700170017001

1700700170017001

1800700170017001

2000700170017001

ETAPA III:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

2000000

4000000

60070007000

8001000110011001

10001000110011001

12001000180018001

14001700210021001

17001700210021001

18001700210021001

20001700280028001

ETAPA II:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

2000000

4000000

60070007000

8001100011000

10001100011000

1200180080018000

1400210080021000

17002100150021000

18002100190021000

20002800190028000

ETAPA I:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

2000000

4000000

60070007000

8001100011000

1000110070011000

1200180070018000

1400210070021000

17002100180021000

18002100180021000

20002800180028000

RESPUESTA:Con una capacidad mxima de 2000 lb la bonificacin mxima de 2800 S/., la relacin de los artculos a utilizar es:

Con un gasto total de:

SOLUCION EN WINQSB del tem a):1. Ingresamos a inicio/Programas/WinQSB/Dynamic Programming.

2. Escogemos la segunda opcin que es el tipo de problema (Knapsack Problem) y la cantidad de nodos que es 5. Luego de la pantalla de inicializacin.

3. Ingreso de datos:

4. Al hacer clic en Solve and Analyze:

b) Analizaremos para la restriccin del volumen.VOLUMEN MAXIMO = 120 cm3.Funcin de recurrencia:

En el caso de la mochila se recomienda empezar por la ltima etapa. En este caso se empezara por la etapa VETAPA V:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

0000

100000

200000

300000

400000

5007007001

6007007001

7007007001

8007007001

9007007001

10007007001

11007007001

12007007001

ETAPA IV:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

100000

200000

300000

400000

5070007000

6070007000

7070007000

80700100010001

90700100010001

100700100010001

110700100010001

120700100010001

ETAPA III:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

100000

200000

300000

400000

5070007000

6070007000

7070007000

801000010000

901000010000

1001000110011001

1101000110011001

1201000110011001

ETAPA II:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

100000

200000

300000

400000

500000

6070007000

7070007000

8070007000

901000010000

100100080010000

110110080011000

120110080011000

ETAPA I:

Por la condicin de que solo debe haber un solo artculo de cada uno el m solo toma dos valores para todas las etapas y sern:

A continuacin se construye la siguiente tabla para el desarrollo del problema:

00000

100000

200000

300000

400000

500000

6070007000

707007007000

807007007000

90100070010000

100100070010000

110110070011000

1201100140014001

RESPUESTA:Con un volumen mximo de 120 cm3 la bonificacin mxima de 1400 S/., la relacin de los artculos a utilizar es:

Con un gasto total de:

SOLUCION EN WINQSB del tem b):1. Ingresamos a inicio/Programas/WinQSB/Dynamic Programming.

2. Luego de la pantalla de inicializacin. Escogemos la segunda opcin que es el tipo de problema (Knapsack Problem) y la cantidad de nodos que es 5.

3. Ingreso de datos:

4. Al hacer clic en Solve and Analyze:

MODELO ASIGNACIONPROBLEMA 5El Ministerio De Vivienda quiere construir casas para familias que han sido damnificadas por el terremoto de Ica utilizando como mano de obra a voluntarios.Una familia puede acogerse a este plan a travs de una solicitud siendo un comit a cargo del ministerio quien le ponga una calificacin previa una evaluacin socio- econmica y dems factores. Una calificacin ms alta significa que la familia es ms necesitada. Para la construccin se cuenta con un mximo de 32 obreros voluntarios. En la tabla adjunto se encuentran los datos de las calificaciones de cada solicitud y la cantidad requerida de obreros.Cules solicitudes se deben de aprobar?SOLICITUDCALIFICACINNUMERO DE OBREROS

1817

2759

3695

4659

5888

SOLUCION

DIAGRAMA DE ARBOL

En el siguiente esquema se muestra la simbologa del diagrama de rbol.A= Numero de a etapa.B= Disponibilidad de obreros.Donde el 1 significa que la solicitud ha sido aprobado y el 0 indica que ha sido rechazado por lo tanto no se ejecuta.

A,B01

Se debe de aceptar la solicitud: 1, 2, 3 y 5. SOLICITUDCALIFICACINNUMERO DE OBREROS

1817

2759

3695

5888

La solucin ptima es utilizar 29 obreros obteniendo una clasificacin de 313.

SOLUCION WINQSB

PROBLEMA 6La clnica San Juan Bautista dispone del servicio de atencin a domicilio en los distritos de Los Olivos, Independencia y San Martin de Porres el cual desea saber qu cantidad de ambulancias asignar a los diferentes distritos. En la siguiente tabla se muestra la cantidad de ambulancias asignadas obteniendo el nmero de servicio sin atender por cada distrito.

DISTRITOSNUMERO DE AMBULANCIAS ASIGNADAS

012345

113116520

224201714139

3181410853

SOLUCION:El diagrama de rbol, en la siguiente hoja

RespuestaSe tiene como solucin ptima asignar al distrito 1 dos ambulancias, al distrito 2 una ambulancia y al distrito 3 dos ambulancias.

DISTRITOSOLUCION

12

21

32

MODELO DE INVENTARIOPROBLEMA 8La empresa CIA NUEVO MUNDO S.A fabrica todo tipo de tejidos planos, para sus principales clientes como PIERS, PIONER, KANSAS. La empresa tiene contrato para entregar cierta serie de tejidos durante los siguientes tres meses:MES ENTREGAC.V(UNITARIO)C.ALM.C.F

1232003003001010121.51.51.5250250250

Los modelos fabricados durante un mes pueden servir para abastecer la demanda de este mes y de algn mes futuro, suponiendo que la produccin de cada mes es mltiplo de 100. Dado que el nivel de inventario inicial y final es 0. Determineel calendario ptimo de produccin utilizando programacin dinmica.SOLUCION:Primero debemos analizar las opciones que habr en nuestros inventarios finales e iniciales por cada mes:MES 1 MES 2 MES 3

I.I000I.F / I.I0100200300400500600I.F / I.I0100200300I.F000

MES 3:Sabemos que el inventario final es 0:I.I + P D = I.F0 + 300 - 300 = 0100 + 200 300 =0200 + 100 - 300 = 0300 + 0 300 = 0

MES 2:El inventario final est en el rango [0, 300]I.I + P D = I.F 0+ 300 -300 = 0100+ 200 -300 =0200+ 100 -300 =0300+0 -300 =00 +400-300=100100 + 300-300 =100200 + 200 -300 =100300 + 100 300 =100400 + 0 -300 =1000+500 300 =200100+400-300 =200200+300-300=200300+200-300=200400+100-300=200500+0-300= 2000+600-300=300100+500-300=300200+400-300=300300+300-300=300400+200-300=300500+100-300=300600+0-300 =300

MES 1:El inventario inicial es 0 y segn el mes 2, el inventario final es de 0 hasta 600I.I + P D = I.F0 + 200 - 200 = 00+ 300 -200 = 1000 + 400 200= 2000 + 500 -200= 3000 + 600 200 = 4000 + 700 200 = 5000 + 800 200 =600

ETAPA I: Mes 3Costos totales:II + P D = IF COSTOS

IIPDFC=CV*P +CF+CA*IF

010020030030020010003003003003000000385026501450250

Programacin en funcion al II y produccin.IIXi0100200300F(Xi)Xi

038503850300

10026502650200

20014501450100

3002502500

ETAPA II: Mes 2Costos totales del mes 2:II + P D = IF COSTOSCOSTO ANTERIORCOSTOS ACUMULADOS

IIPDIFC=CV*P +CF+CA*IFXCA = C+X

000010010010010020020020020030030030030040040040050050060030040050060020030040050010020030040001002003000100200010003003003003003003003003003003003003003003003003003003003003003003000100200300010020030001002003000100200300100200300200300300325044005550670022503400455057001250240035504700250140025503700400155027005501700700385026501450250385026501450250385026501450250385036501450250265014502501450250250710010507000695061006050600059505100505050004950410040504000395030503000295020001950950

Programacin en funcion al II y produccin para el mes 2.IIXi0100200300400500600F(Xi)Xi

071007050700069506950600

10061006050600059505950500

20051005050500049504950400

30041004050400039503950300

4003050300029502950200

500200019501950100

6009509500

ETAPA III: Mes 1Costos totales del mes 1:II + P D = IF COSTOSCOSTO ANTERIORCOSTOS ACUMULADOS

IIPDIFC=CV*P +CF+CA*IFXCA = C+X

00000002003004005006007008002002002002002002002000100200300400500600225034004550570068508000915069505950495039502950195095092009350950096509800995010100

Programacin en funcin al II y produccin para el mes 2.IIXi200300400500600700800F(Xi)Xi

09200935095009651098009950101009200200

Respuesta Por lo tanto la produccin a realizar para minimizar los costos, son los siguientes:MESPRODUCCION

1200

2600

30

Dando como costo total la suma de 9200 $

Solucin WINQSB

PROGRAMACIN DINMICA PROBABILSTICAPROBLEMA En un almacn tenemos un espacio de 12mt3 para guardar tres artculos. Los volmenes necesarios para guardar una unidad de los artculos 1,2 y 3 mt3 son 2, 1 y 3 mt3 respectivamente. La demanda probabilstica de los artculos es la siguiente:Probabilidad de demanda

Nro de unidades Art1Art2Art3

10.50.30.3

20.50.40.2

300.20.5

400.10

Los costos de escasez por unidad de los artculos 1,2 y 3 son $8 , $10 y $5 respectivamente.a) Defina la funcin de recurrencia, las variable y las etapasb) Utilizar la programacin dinmica para calcular. cuntas unidades de cada artculo se deben guardar en el compartimiento?

Solucin:Art1Art2Art3

Costo de escasez8105

Wi213

Capacidad (W/Wi)6124

Funcion de recurrencia:F(x) = min {rt(gt) + ft+1 (x-gt)}rt(gt): Costo esperado de gt unidades asignadas al artculo tft(gt): costo mnimo esperado de X unidades asignadas a los artculos t,t+1gt: unidades asignadas al tipo de articulo .

Etapa I: Articulo 3Etapa II: Articulo 2Etapa III: Articulo 1

B) HALLAMOS LOS COSTOS:ARTICULO 3ARTCULO 2:

r3(0) = 0*4*5 + 0.5*3*5 + 0.2*2*5 + 0.3*1*5r3(0) = 11r3(1) = 0*3*5 + 0.5*2*5 + 0.2*1*5 r3(1) = 6r3(2) = 0*2*5 + 0.5*1*5r3(2) = 2.5r3(3)= 0*1*5 r3(3) = 0r3(4) = 0

r2(0)= 0.1*4*10 + 0.2*3*10 +0.4*2*10 + 0.3*1*10r2(0)= 21r2(1) = 0.1*3*10 + 0.2*2*10 + 0.4*1*10r2(1)= 11r2(2) = 0.1*2*10+ 0.2*1*10r2(2)= 4r2(3) = 0.1*1*10r2(3) = 1r2(4) =0

ARTICULO 1

r1(0)= 0*4*8 + 0*3*8 + 0.5*2*8 + 0.5*1*8r1(0)= 12r1(1) = 0*3*8 + 0*2*8 + 0.5*1*8r1(1) = 4 r1(2) = 0*2*8 + 0*1*8 r1(2) = 0r1(3) = 0*1*8r1(3) = 0r1(4) = 0

ETAPA I: ARTICULO 3F3(0) = r3(0) = 11 F3(1) = r3(1) = 6F3(2) = r3(2) = 2.5F3(3) = r3(3) = 0 F3(4) = r3(4) = 0

ETAPA II : articulo 2F2(0) = min[r2(0)+ f3(0)] = 21 g2(0) =0F2(1) =min = 22 g2(1)= 1

F2(2) =min = 15 g2(2)= 2F2(3) =min = 10 g2(3)= 2F2(4) =min = 6.5 g2(4)= 2F2(5) =min = 3.5 g2(5)= 3F2(6) =min = 1 g2(6)= 3

ETAPA III : ARTICULO 1

F1(6) =min = 6.5 g2(6)= 2RESPUESTA: Con un costo de escasez mnimo de $6.5, teniendo en el compartimiento la siguiente tabla de unidades por articulo.Unidades

Articulo 12

Articulo 22

Articulo 32

BLOMINGTO1

COLUMBU2

LOUISVILLE4

770

KAMSASCITY5

550

OMAHA6

DAILAS7

680

790

830

DENVER8

NASHVILLE3

900

760

SAN ATONIO9

270

1030

LOS ANGELES10

1390

1050

580

660

790

940

540

790

610

ETAPA I

ETAPA II

ETAPA III

ETAPA IV

510

700

NODO1

NODO2

NODO4

3

NODO5

2

NODO6

NODO7

7

4

5

NODO8

NODO3

4

2

NODO9

3

3

NODO10

4

6

3

4

3

3

6

3

1

ETAPA I

ETAPA II

ETAPA III

ETAPA IV

4

1

1,32

1

4,8

0

2,32

3,32

3,25

3,24

3,17

2,24

4,17

4,15

4,24

4,16

4,25

4,23

4,32

5,3

5,8

5,12

5,17

1

0

5,10

1

0

5,15

1

0

1

0

1

0

1

0

1

0

1

0

1

0

5,19

5,24

5,11

5,16

5,20

5,25

5,18

5,23

1

0

1

0

1

0

1

5,27

5,32

0

1

0

5,3

5,8

5,1

5,6

5,10

5,15

5,2

5,7

5,9

5,14

1

1

1

1

1

1

1

1

1

1

5,11

5,16

5,18

5,23

1

1

1

1

88

81

81

75

75

75

75

313

244

69

65

303

234

297

228

153

222

297

228

216

147

65

134

222

153

2,5

3,5

3,4

3,3

3,2

2,4

2,3

2,2

2,1

3,4

3,3

3,2

3,3

3,2

3,2

3,1

3,1

3,1

3,1

3,1

1,5

5

6

11

2

13

2,0

3,0

3,0

3,0

3,0

3,0

3,0

0

0 24

1 20

2 17

3 14

4 13

0 24

5 9

1 20

1 20

1 20

1 20

2 17

2 17

2 17

3 14

3 14

4 13

0 24

0 24

0 24

0 24

3

5

8

10

14

18

10

10

10

14

14

14

14

18

18

18

18

18

5

8

8

27

25

25

24

27

27

29

28

27

28

31

32

30

31

32

34

34

35

38

38

38

42

42

34

30

27

24

36