Está en la página 1de 4

MARIA DEL MAR MEDINA OSORIO

DANIEL SALCEDO CHAMORRO


MIGUEL ANGEL ARISTIZABAL ARANGO

ARCHIVO.MOD:

set T: ={1..3}; #Tiempo en PERIODOS


set P: ={1,2};# plantas
set A: ={1,2};#1-FB 2-FM
set J1: ={1,2,3}; #ESTACIONES PLANTA 1
set J2: ={1,2,3,4,5}; #ESTACIONES PLANTA 2

param Dem_Total;
param Tiempo_Fab_Total{A, P};
param Cap_despachos; #max 700 despachos ventas
param h; #costo inventario
param Costo_H{T}; #costo de la hora en cada periodo t E T
param Max_horas_planta; #maximo de horas que se peude contratar
param Dem_FB; #Demanda total de frenos buenos
param Y1{A, J1}; #rendimiento acumulado en la estacion J1 de Planta 1
param Y2{A, J2}; #rendimiento acumulado en la estacion J2 de Planta 2
param Demora_estacionJ1{A, J1}; #Demora de estacion de la planta 1 dependiendo
del art A
param Demora_estacionJ2{A, J2}; #Demora de estacion de la planta 1 dependiendo
del art A

var X{A, P,T}>=0 integer; #Cantidad a producir de A, en la planta P, en el mes T


var S{A, T,P}>=0 integer; #Ventas de A en el mes T
var I {A,T union {0},P}>=0 integer; #Inventario de A en el mes T
var Horas_utilizadasP1{p in P, t in T};
var Horas_utilizadasP2{p in P, t in T};

minimize z:
sum {t in T}(Horas_utilizadasP1[1,t]*Costo_H[t])+sum{t in
T}(Horas_utilizadasP2[2,t]*Costo_H[t])+sum{a in A, t in T, p in P}(I[a,t,p]*h);

s.t.
#Demanda
rDem: sum {a in A, p in P, t in T}(S[a,t,p]) >= Dem_Total;

#Demanda de FB
rDem_FB: sum {p in P, t in T}(S[1,t,p]) >= Dem_FB;

#Despachos
rDespachos_MAX {p in P, t in T}: sum{a in A}(S[a,t,p]) <= Cap_despachos;

#Balance de inventario FB
rInv_FB {a in A,p in P, t in T}: I[a,t-1,p] + (X[a,p,t]) = S[a,t,p] + I[a,t,p];

#Balance de inventario FM
#rInv_FM {p in P, t in T}: I[2,t-1,p] + (X[2,p,t]) = S[2,t,p] + I[2,t,p];

#capacidad horas maximas de planta PLANTA 1


#Rendimiento y tiempo para cada estacion PLANTA 1
rRend_y_tiempo_MAX_estacion_Planta1{t in T, j1 in J1}:
(X[1,1,t]*Demora_estacionJ1[1,j1]) + (X[2,1,t]*Demora_estacionJ1[2,j1]/Y1[2,j1])
<= 1400;

#Rendimiento y tiempo para cada estacion PLANTA 2


rRend_y_tiempo_MAX_estacion_Planta2{t in T, j2 in J2}:
(X[1,2,t]*Demora_estacionJ2[1,j2]) +
(X[2,2,t])*(Demora_estacionJ2[2,j2]/Y2[2,j2]) <= 1400;

#Inventario inicial en 0
rInvIni {a in A,p in P}: I[a,0,p] = 0;

#no negatividad
rH_trbajada {t in T}: sum{j1 in J1}(X[1,1,t]*Demora_estacionJ1[1,j1])+ sum{j1 in
J1}(X[2,1,t]*Demora_estacionJ1[2,j1]/Y1[2,j1])=Horas_utilizadasP1[1,t];

rH_trbajada2{t in T}: sum {j2 in J2}(X[1,2,t]*Demora_estacionJ2[1,j2])+ sum{j2


in J2}(X[2,2,t]*Demora_estacionJ2[2,j2]/Y2[2,j2])=Horas_utilizadasP2[2,t];

ARCHIVO.DAT
param Dem_Total: =1810 #Demanda total de frenos
;
param Cap_despachos: =700 #Despachos totales asociados a ventas
;
param h: =2 #Costo inventario h
;
param Max_horas_planta:= 1400 # maximas horas de la planta
;
param Dem_FB: =1426 #Demanda total de frenos
;
param Tiempo_Fab_Total: #Tiempo total para fabricar producto {A,P}
1 2: =
1 7 9
2 4 7
;
param Costo_H := #costo de la hora en el periodo t

1 17
2 18
3 19
;
param Y1:
1 2 3:=
1 1 1 1
2 0.970299 0.9801 0.99
;
param Y2:
1 2 3 4 5:=
1 1 1 1 1 1
2 0.9509900499 0.96059601 0.970299 0.9801 0.99
;
param Demora_estacionJ1: #demora de estacion de P1 {A,J1}
1 2 3:=
1 2 3 2
2 1 2 1
;
param Demora_estacionJ2: #Precio venta {A,T}
1 2 3 4 5:=
1 1 2 3 1 2
2 1 1 2 1 2
;

PUNTO RUN:

reset;
model Punto.mod;
data Punto.dat;
option solver cplex;
solve;

display z, X,Dem_Total, I,Horas_utilizadasP1,Horas_utilizadasP2,S;


display _nvars,_ncons;

FOTOS DE OPTIMAL SOLUTION:


Tabla N°= HORAS UTILIZADAS EN EL PROBLEMA.

SOLUCIÓN PUNTO B:

Gracias a nuestro esfuerzo de calcular el valor optimo en la modelación del problema numero 2
del parcial 1 de operaciones 2; encontramos un valor optimo Z=215.406 contando además con un
Stock de 0 unidades en los periodos de producción por cada planta en donde se tenían que
verificar las ventas para los despachos que no podían sobrepasar las 700 unidades, además las
horas contratadas las podemos ver en la tabla anteriormente adjuntada (tabla 3).

También podría gustarte