IP

24 mar 2014

INVOP2 Programación Dinámica Deterministica

PROBLEMA 1 (Modelo: Volumen de carga)
Un barco de 4 toneladas es cargado con uno o más de tres artículos. La tabla siguiente muestra el peso unitario pn, en toneladas y el ingreso por unidad in , en miles de $, para el artículo n. ¿Cómo se debe cargar el barco para maximizar los ingresos totales?

Artículo n
pn
in
1
2
31
2
3
47
3
1
14

Tener en cuenta que el barco puede cargar estos artículos en cualquier orden, además, como el peso unitario y el peso permisible son enteros, las variables sólo deben tener valores enteros.

Solución:
Etapa: Cada tipo de artículo hace referencia a una etapa.
Estado: La disponibilidad respecto a la capacidad del barco
Decisión: Cuántas unidades de cada tipo de artículo llevar
Función recursiva: Representa el total de ingreso que se quiere maximizar.


Etapa 3
s3
f3(s3,x3)=14x3
Solución óptima
x3 =0
x3 =1
x3 =2
x3 =3
x3 =4
f3*(s3)
x3*
0
14(0)=0
-
-
-
-
0
0
1
14(0)=0
14(1)=14
-
-
-
14
1
2
14(0)=0
14(1)=14
14(2)=28
-
-
28
2
3
14(0)=0
14(1)=14
14(2)=28
14(3)=42
-
42
3
4
14(0)=0
14(1)=14
14(2)=28
14(3)=42
14(4)=56
56
4
s3=0; significa que el barco está lleno, disponibilidad cero.
s3=4; significa que el barco está vacío, disponibilidad 4 ton.

Etapa 2
s2
f2(s2,x2)=47x2+f3*(s2-3x2)
Solución óptima
x2 =0
x2 =1
f2*(s2)
x2*
0
47(0)+0=0
-
0
0
1
47(0)+14=14
-
14
0
2
47(0)+28=28
-
28
0
3
47(0)+42=42
47(1)+0=47
47
1
4
47(0)+56=56
47(1)+14=61
61
1

Etapa 1
s1
f1(s1,x1)=31x1+ f2*(s1-2x1)
Solución óptima
x1 =0
x1 =1
x1 =2
f1*(s1)
x1*
0
31(0)+0=0
-
-
0
0
1
31(0)+14=14
-
-
14
0
2
31(0)+28=28
31(1)+0=31
-
31
1
3
31(0)+47=47
31(1)+14=45
-
47
0
4
31(0)+61=61
31(1)+28=59
31(2)+0=62
62
2

Para obtener la solución óptima, se observa que el máximo ingreso generado en la etapa 1, es decir $62 mil, se produce cuando se decide llevar 2 unidades del artículo 1.

PROBLEMA 2 (Modelo: Fuerza laboral)
Un contratista constructor estima que la fuerza de trabajo necesaria durante las próximas 5 semanas será de 5, 7, 8, 4 y 6 trabajadores, respectivamente. La mano de obra en exceso que se conserve le costará $300 por trabajador semanalmente, y la nueva contratación en cualquier semana tendrá un costo fijo de $400 más $200 por trabajador y por semana. Sugiera un plan de contratación para minimizar los costos en los que se incurren.

Solución:
Sea xn la mano de obra asignada a cada semana.
Sea rn la mano de obra requerida para cada semana, entonces: r1 =5, r2 =7, r3 =8, r4 =4 y r5 =6

Costo de exceso de mano de obra:                300(xnrn)                                          cuando: xn > rn
Costo de contratación:                     400 + 200(xnsn)                               cuando: xn > sn

Etapa 5 (r5 = 6)
s5
f5(s5,x5)=300(x5 - 6)+[400+200(x5-s5)]
Solución óptima
x5 =6
f5*(s5)
x5*
4
300(0)+[400+200(2)]=800
800
6
5
300(0)+[400+200(1)]=600
600
6
6
300(0)+[0]=0
0
6

Etapa 4 (r4 = 4)
s4
f4(s4,x4)=300(x4 - 4)+[400+200(x4-s4)]+f5*(x4)
Solución óptima
x4 =4
x4 =5
x4 =6
f4*(s4)
x4*
8
300(0)+[0]+800=800
300(1)+[0]+600=900
300(2)+[0]+0=600
600
6

Etapa 3 (r3 = 8)
s3
f3(s3,x3)=300(x3 - 8)+[400+200(x3-s3)]+f4*(x3)
Solución óptima
x3 =8
f3*(s3)
x3*
7
300(0)+[400+200(1)]+600=1200
1200
8
8
300(0)+[0]+600=600
600
8

Etapa 2 (r2 = 7)
s2
f2(s2,x2)=300(x2 - 7)+[400+200(x2-s2)]+f3*(x2)
Solución óptima
x2 =7
x2 =8
f2*(s2)
x2*
5
300(0)+[400+200(2)]+1200=2000
300(1)+[400+200(3)]+600=1900
1900
8
6
300(0)+[400+200(1)]+1200=1800
300(1)+[400+200(2)]+600=1700
1700
8
7
300(0)+[0]+1200=1200
300(1)+[400+200(1)]+600=1500
1200
7
8
300(0)+[0]+1200=1200
300(1)+[0]+600=900
900
8

Etapa 1 (r1 = 5)
s1
f1(s1,x1)=300(x1 - 5)+[400+200(x1-s1)]+f2*(x1)
Solución óptima
x1 =5
x1 =6
x1 =7
x1 =8
f1*(s1)
x1*
0
300(0)+[400+200(5)]
+1900=3300
300(1)+[400+200(6)]
+1700=3600
300(2)+[400+200(7)]
+1200=3600
300(3)+[400+200(8)]
+900=3800
3300
5

PROBLEMA 3 (Modelo: Reposición de equipo)
En el transcurso de los cuatro siguientes años, durante cierto proceso de producción, se desea saber cuándo remplazar una máquina o seguir conservándola con la finalidad de encontrar lo más beneficioso para la empresa. Inicialmente se tiene una máquina con tres años de antigüedad trabajando en la producción. Los datos respecto a la maquina los obtenemos en la siguiente tabla:

t
I(t)
C(t)
R(t)
Tiempo
(años)
Ingreso
(miles de $)
Costo de
operación ( $ )
Valor de
Recuperación ( $ )
0
20000
200
-
1
19000
600
80000
2
18500
1200
60000
3
17200
1500
50000
4
15500
1700
30000
5
14000
1800
10000
6
12200
2200
5000

Considerar que:
·         El costo de una máquina nueva es $100000.
·         Toda máquina con 6 años de antigüedad debe reemplazarse.
·         Terminado el horizonte de planeación, la máquina debe venderse.
  

Como esta es la última etapa, la máquina debe venderse, y no hay contribuciones posteriores.
El estado de la etapa n es la antigüedad t de la máquina al inicio del año n, entonces:

Etapa 4
t
s4
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + R(t +1)
I(0) + R(t) +R(1) - 100000 - C(0)
f4*(s4)
x4*
1
19000-600+60000=78400
20000+80000+80000-100000-200=79800
79800
R
2
18500-1200+50000=67300
20000+60000+80000-100000-200=59800
67300
C
3
17200+1500+30000=45700
20000+50000+80000-100000-200=49800
49800
R
6
Se debe reemplazar
20000+5000+80000-100000-200=4800
4800
R

Etapa 3
t
s3
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f4(t +1)
I(0) + R(t) - 100000 - C(0) + f4*(1)
f3*(s3)
x3*
1
19000-600+67300=85700
20000+80000-100000-200+79800=79600
85700
C
2
18500-1200+49800=67100
20000+60000-100000-200+79800=59600
67100
C
5
14000-1800+4800=17000
20000+10000-100000-200+79800=9600
17000
C

Etapa 2
t
s2
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f3(t +1)
I(0) + R(t) - 100000 - C(0) + f3*(1)
f2*(s2)
x2*
1
19000-600+67100=85500
20000+80000-100000-200+85700=85500
85500
C o R
4
15500-1700+17000=30800
20000+30000-100000-200+85700=35500
35500
R

Etapa 1
t
s1
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f2(t +1)
I(0) + R(t) - 100000 - C(0) + f2*(1)
f1*(s1)
x1*
3
17200-1500+35500=51200
20000+50000-100000-200+85500=55300
55300
R

PROBLEMA 4
Una empresa requiere 28, 30, 25, 29 y 20 trabajadores para los próximos 5 años respectivamente. En la actualidad hay 30 empleados en la empresa. Cada trabajador gana 16000 soles al año. Al empezar cada año se puede contratar o despedir trabajadores. Cuesta 1000 soles contratar un trabajador y 15000 soles despedirlo, debido a los seguros y beneficios que se tienen que pagar. Por lo fatigoso que es el trabajo, cada año renuncian 3 trabajadores (los cuales no cobran los 15000 soles de despido). Mediante el uso de programación dinámica encontrar la política óptima definiendo las etapas, estados y variables de decisión; además explicar la función recursiva. Tener en cuenta que, de ser económico, sería ideal tener el número exacto de trabajadores necesarios en cada semana; además, la empresa trata en lo posible de evitar los costos de contratación o despido.

Solución:
rn: Requerimiento de año n
xn: Trabajadores asignados el año n
Etapa: año
Estado: trabajadores que quedan al inicio del presente período.
fn(sn,xn)= min{16000(xn) + 1000(xn-sn) + 15000(sn-xn) +fn+1(sn+1) }   o también
fn(sn,xn)= min{16000(xn) + 1000(xn-sn) + 15000(sn-xn) + fn+1(xn-3) }
teniendo en cuenta que: 1000(xn-sn); xn>sny15000(sn-xn);  sn>xn

Por practicidad los costos en las tablas se encuentran en miles de soles

Etapa 5 (r5 = 20)
s5
f5(s5,x5)=16000(x5)+15000(s5-x5)
Solución óptima
x5 =20
f5*(s5)
x5*
29-3=26
16(20)+15(6)=410
410
20

Etapa 4 (r4 = 29)
s4
f4(s4,x4)=16000(x4)+1000(x4-s4)+f5(x4-3)
Solución óptima
x4 =29
f4*(s4)
x4*
25-3=22
16(22)+1(7)+410 =769
769
29
27-3=24
16(24)+1(5)+410=799
799
29

Etapa 3 (r3 = 25)
s3
f3(s3,x3)=16000(x3)+15000(s3-x3)+f4(x3-3)
Solución óptima
x2 =25
x2 =27
f3*(s3)
x3*
30-3=27
16(25)+15(2)+769=1199
16(27)+ 799=1231
1199
25

Etapa 2 (r2 = 30)
s2
f2(s2,x2)=16000(x2)+1000(x2-s2)+f3(x2-3)
Solución óptima
x2 =30
f2*(s2)
x2*
28-3=25
16(30)+1(5)+1199 =1754
1754
30
30-3=27
16(30)+1(3)+1199 =1724
1724
30

Etapa 1 (r1 = 28)
s1
f1(s1,x1)=16000(x1)+15000(s1-x1)+f2(x1-3)
Solución óptima
x1 =28
x1 =30
f1*(s1)
x1*
30
16(28)+15(2)+1754=2232
16(30)+1724=2204
2204
30

PROBLEMA 5
Una empresa requiere tener una máquina que trabaje durante los 5 años siguientes. En la actualidad tiene una máquina nueva. La compañía podría conservar la máquina o venderla al empezar cada año y comprar una nueva. Una máquina nueva cuesta 5000 dólares. Los ingresos obtenidos con la máquina, el costo de mantenimiento y el valor de salvamento que se puede obtener al venderla al final del año, dependen de la edad de la máquina (véase tabla). Puede utilizarse una máquina hasta un máximo de tres años de antigüedad.

Utilice la programación dinámica para maximizar la utilidad neta ganada durante los seis años siguientes. 


AÑO 0-1
AÑO 1-2
AÑO 2-3
Ingresos ($)
4500
3000
1500
Costos de operación ($)
500
700
1100
Valor de salvamento al final del año
3000
1800
500


ETAPAS: Años
ESTADOS: Edad de la máquina
ALTERNATIVAS: Conservar, Reemplazar

Como esta es la última etapa, la máquina debe venderse, y no hay contribuciones posteriores.
El estado de la etapa n es la antigüedad t de la máquina al inicio del año n, entonces:

Etapa 6
t
s6
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + R(t +1)
I(0) + R(t) +R(1) - 5000 - C(0)
f6*(s6)
x6*
1
3000-700+1800=4100
4500+3000+3000-5000-500=5000
5000
R
2
1500-1100+500=900
4500+1800+3000-5000-500=3800
3800
R
3
Se debe reemplazar
4500+500+3000-5000-500=2500
2500
R

Etapa 5
t
s5
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f6*(t +1)
I(0) + R(t) - 5000 - C(0) + f6*(1)
f5*(s5)
x5*
1
3000-700+3800=4100
4500+3000-5000-500+5000=7000
7000
R
2
1500-1100+2500=2900
4500+1800-5000-500+5000=5800
5800
R
3
Se debe reemplazar
4500+500-5000-500+5000=4500
4500
R

Etapa 4
t
s4
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f5*(t +1)
I(0) + R(t) - 5000 - C(0) + f5*(1)
f4*(s4)
x4*
1
3000-700+5800=8100
4500+3000-5000-500+7000=9000
9000
R
2
1500-1100+4500=4900
4500+1800-5000-500+7000=7800
7800
R
3
Se debe reemplazar
4500+500-5000-500+7000=6500
6500
R

Etapa 3
t
s3
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f4*(t +1)
I(0) + R(t) - 5000 - C(0) + f4*(1)
f3*(s3)
x3*
1
3000-700+7800=10100
4500+3000-5000-500+9000=11000
11000
R
2
1500-1100+6500=6900
4500+1800-5000-500+9000=9800
9800
R

Etapa 2
t
s2
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f3*(t +1)
I(0) + R(t) - 5000 - C(0) + f3*(1)
f2*(s2)
x2*
1
3000-700+9800=12100
4500+3000-5000-500+11000=13000
13000
R

Etapa 1
t
s1
Conservar
Reemplazar
Solución óptima
I(t) - C(t) + f2*(t +1)
I(0) + R(t) - 5000 - C(0) + f2*(1)
f1*(s1)
x1*
0
3000-700+13000=15300
-
15300
C


PROBLEMA 6
Una empresa tiene los siguientes datos de demanda de su producto:
Mes
Demanda
1
1
2
3
3
2
4
4
¿Cuántas unidades debe fabricar en el mes? Sabiendo que:
o    Durante el mes que se producen algunas unidades se incurre en un costo fijo de $30.
o    El costo variable es de $10 por cada unidad fabricada.
o    Al final de cada mes se genera un costo de almacenamiento de $5 por cada unidad.
o    Las limitaciones de capacidad permiten una producción máxima de 5 unidades.
o    El tamaño del almacén restringe un inventario final máximo de 4 unidades cada mes.
o    Se dispone de 0 unidades al principio del primer mes.

Características:
·       Se conoce la demanda de cada mes al principio del mes 1.
·       Se debe determinar cuántas unidades deben producirse teniendo en cuenta que la capacidad de fabricación es limitada.
·       La demanda de cada período debe satisfacerse a tiempo con el inventario o la producción actual. Durante cada período donde la producción tiene lugar se genera un costo fijo, así como un costo variable por unidad.
·       Se tiene capacidad limitada de almacenamiento. Se genera un costo de almacenamiento por unidad al inventario final de cada período.
·       El objetivo es minimizar el costo total por cumplir con la demanda de cada período.

Modelo de revisión periódica: El inventario se conoce al final de cada período, y se toma la decisión sobre la producción.

Solución:
Sean:     xn el nivel de producción en el mes n
yn el inventario inicial en el mes n
dn la demanda en el mes n

CP(xn) el costo de producción de xn unidades, CP(xn)=30+10xn
Lo que tenga en almacén el siguiente mes, será:
lo que tenía en inventario + lo que produje - la demanda de dicho mes
es decir:                                yi+1 = yi + xi - di
entonces:              CI(yi+1)=5(yi + xi - di)

Función recursiva: Costo mínimo de cumplir las demandas   fn(sn ,xn) = min {CI(yi+1) + CP(xn) + fn+1(sn+1)}
Etapa: Cada mes
Estado: Inventario inicial

Etapa 4 (demanda=4)
s4
f4(s4,x4)=30+10x4
Solución óptima
x4 = 0
x4 = 1
x4 = 2
x4 = 3
x4 = 4
f4*(s4)
x4*
0
-
-
-
-
30+40
70
4
1
-
-
-
30+30
-
60
3
2
-
-
30+20
-
-
50
2
3
-
30+10
-
-
-
40
1
4
0+0
-
-
-
-
0
0

Etapa 3 (demanda=2)
s3
f3(s3,x3)= 5(y3+x3-d3)+30+10x3+f4*(y3+x3-d3)
Solución óptima
x3 = 0
x3 = 1
x3 = 2
x3 = 3
x3 = 4
x3 = 5
f3*(s3)
x3*
0
-
-
0+50+70=120
5+60+60=125
10+70+50=130
15+80+40=135
120
2
1
-
0+40+70=110
5+50+60=115
10+60+50=120
15+70+40=125
20+80+0=100
100
5
2
0+0+70=70
5+40+60=105
10+50+50=110
15+60+40=115
20+70+0=90
-
70
0
3
5+0+60=65
10+40+50=100
15+50+40=105
20+60+0=80
-
-
65
0
4
10+0+50=60
15+40+40=95
20+50+0=70
-
-
-
60
0

Etapa 2 (demanda=3)
s2
f2(s2,x2)= 5(y2+x2-d2)+30+10x2+f3*(y2+x2-d2)
Solución óptima
x2 = 0
x2 = 1
x2 = 2
x2 = 3
x2 = 4
x2 = 5
f2*(s2)
x2*
0
-
-
-
0+60+120=180
5+70+100=175
10+80+70=160
160
5
1
-
-
0+50+120=170
5+60+100=165
10+70+70=150
15+80+65=160
150
4
2
-
0+40+120=160
5+50+100=155
10+60+70=140
15+70+65=150
20+80+60=160
140
3
3
0+0+120=120
5+40+100=145
10+50+70=130
15+60+65=140
20+70+60=150
-
120
0
4
5+0+100=105
10+40+70=120
15+50+65=130
20+60+60=140
-
-
105
0

Etapa 1 (demanda=1)
s1
f1(s1,x1)= 5(y1+x1-d1)+30+10x1+f2*(y1+x1-d1)
Solución
óptima
x1 = 0
x1 = 1
x1 = 2
x1 = 3
x1 = 4
x1 = 5
f1*(s1)
x1*
0
-
0+40+160=200
5+50+150=205
10+60+140=210
15+70+120=205
20+80+105=205
200
1


PROBLEMA 7
Una compañía construye aviones comerciales para varias líneas aéreas de todo el mundo. La última etapa del proceso consiste en la fabricación de los motores de turbina y su instalación en la estructura del avión. La compañía tiene que hacer entrega, próximamente, de un gran número de aviones y, por este motivo, desea programar la producción de los motores de turbina para los próximos cuatro meses.

En la siguiente tabla se muestra, para cada uno de los próximos cuatro meses, la cantidad de motores que deben de estar listos para su instalación, la capacidad de producción máxima de dicho mes, el coste unitario de fabricar cada motor (que puede variar de mes a mes debido a las necesidades de personal, alteraciones en los precios de las materiales, consumos energéticos, etc.), y el coste de almacenar un motor durante un mes (en este caso, el coste siempre es fijo de $15000 por motor).

Mes
Instalaciones
programadas
Producción
máxima
Costo unitario
de producción*
Costo unitario
de almacenaje*
1
10
25
1.08
0.015
2
15
35
1.11
0.015
3
25
30
1.10
0.015
4
20
10
1.13

                                                                       *costo dado en millones de $.

Dada las variaciones de los costos de producción, podría valer la pena fabricar algunos motores antes de su fecha de instalación. Utilice métodos de programación dinámica para determinar la producción óptima de cada mes, teniendo en cuenta que las cantidades producidas deben ser múltiplos de 5.

Solución:
Sean:
xn el nivel de producción en el mes n
yn el inventario inicial en el mes n
dn la demanda en el mes n

Función recursiva: Costo mínimo de cumplir las demandas   fn(sn ,xn) = min {CP(xn)+CI(yi+1)+fn+1(sn+1)}
Etapa: Cada mes
Estado: Inventario inicial

ETAPA 4 (Demanda =20)
s4
f4(s4,x4)= 1.13x4
Solución óptima
x4=0
x4=5
x4=10
f4*(s4)
x4
10
-
-
11.3
11.3
10
15
-
5.65
-
5.65
5
20
0
-
-
0
0

ETAPA 3 (Demanda =25)
s3
f3(s3,x3)= 1.10x3 + 0.015(y3+x3-d3) + f4*(y3+x3-d3)
Solución óptima
x3=0
x3=5
x3=10
x3=15
x3=20
x3=25
x3=30
f3*(s3)
x3
5
-
-
-
-
-
-
44.45
44.45
30
10
-
-
-
-
-
38.95
38.875
38.875
30
15
-
-
-
-
33.45
33.375
33.3
33.3
30
20
-
-
-
27.95
27.875
27.8
-
27.8
25
25
-
-
22.45
22.375
22.3
-
-
22.3
20
30
-
16.95
16.875
16.8
-
-
-
16.8
15
35
11.45
11.375
11.3
-
-
-
-
11.375
10

ETAPA 2 (Demanda =15)
s2
f2(s2,x2)= 1.11x2 + 0.015(y2+x2-d2) + f3*(y2+x2-d2)
Solución óptima
x2=0
x2=5
x2=10
x2=15
x2=20
x2=25
x2=30
x2=35
f2*(s2)
x2
0
-
-
-
-
66.725
66.775
66.825
66.95
66.725
20
5
-
-
-
61.175
61.225
61.275
61.4
61.525
61.175
15
10
-
-
55.625
55.675
55.725
55.85
55.975
56.1
55.625
10
15
-
50.075
50.125
50.175
50.3
50.425
50.55
50.675
50.075
5

ETAPA 1 (Demanda =10)
s1
f1(s1,x1)= 1.08x1 + 0.015(y1+x1-d1) + f2*(y1+x1-d1)
Solución óptima
x1=10
x1=15
x1=20
x1=25
f1*(s1)
x1
0
77.525
77.375
77.225
77.075
77.075
25



No hay comentarios.:

Publicar un comentario

Mi lista de blogs


"Colabora con la página visitando los enlaces de nuestros anunciantes"
Denle un like a la página de facebook que no cuesta nada