|
这是一个生产计划问题
请教高手帮忙修改下面的程序,由于带了时间的参数总是解决不了。
我已经把模型简化了,并切尽量问题有问题在程序中说明清楚了。
如果各位看能添加些什么条件来解决的,请帮忙:)
不甚感谢。
!假设:
1.工厂的单位加工成本ci为13,15元
2.门店的零售价格为pj分别为45,48,50元
3.门店的实际需求ejt为1200,1250,1400,对任意时期t
4.门店的预测需求fjt为1800,1875,2100,对任意时期t
5.门店的脱销成本vj为25,26,27
6.工厂的单位库存成本hi为4,5
7.门店的单位库存成本hj为10,11,12
8.假设门店的仓库容量wj足够大,99999,99999,99999;
model:
sets:
PLANT/I1,I2/:ci,hi;!ci为工厂i的加工价格,hi为工厂i持有单位库存的成本;
OUTLET/J1,J2,J3/:pj,vj,hj,wj;!pj为门店j的零售价格,vj为门店j单位货物的脱销成本,hj为门店j的单位库存持有成本,wj为门店库存最大容量;
TIME/T1,T2,T3,T4,T5/;!取5个周期;
lINK1(OUTLET,TIME):ajt,fjt,ejt;!ajt为门店j在第t期的库存,fjt为门店j在第t期的预测需求,ejt为门店在t期的实际需求;
link2(PLANT,TIME):ait,xit;!ait为工厂i在第t期的库存,xit为工厂i在第t期的生产数量;
link3(PLANT,OUTLET,TIME):qijt,zijt;!qijt为在t期工厂i给门店j的送货数量,zijt为在t期工厂i给门店j送货用的卡车数量;
link4(OUTLET,PLANT):dij;!dij为工厂i送货到门店j的单位运输成本;
endsets
DATA:
ci=13,15;
hi=4,5;
hj=10,11,12;
pj=45,48,50;
vj=25,26,27;
hj=10,11,12;
ejt=1200,1250,1400,1200,1250,1400,1200,1250,1400,1200,1250,1400,1200,1250,1400;
fjt=1800,1875,2100,1800,1875,2100,1800,1875,2100,1800,1875,2100,1800,1875,2100;
g=500;
wj=99999,99999,99999;
enddata
[email=max=@sum(OUTLET(j):pj(j)*(aj(j,1)+;@sum(link2(i,t):aijt(i,j,t))-aj(j,5]max=@sum(OUTLET(j):pj(j)*(aj(j,1)+;@sum(link2(i,t):aijt(i,j,t))-aj(j,5[/email])))!第1期到第5期所有门店的销售总额;-@sum(PLANT(i):ci*@SUM(TIME(t):xit(i,t))!所有工厂的5期的加工成本;-@SUM(PLANT(i):hi*@sum(TIME(t):ait(i,t)))!所有工厂的5期的持货成本;-@sum(OUTLET(j):hj*@sum(TIME(t):ajt(j,t)))!所有门店的5期的持货成本;-@sum(OUTLET(j):vj*(@sum(TIME(t):fjt(j,t))-aj(j,1)-@sum(link2(i,t):aijt(i,j,t))+aj(j,5)))!所有门店的5期的脱销成本;-g*@sum(link3i,j,t):zijt)!固定运输成本;
[email=-@sum(link4(i,j):dij*@sum(TIME(t):qijt(i,j,t]-@sum(link4(i,j):dij*@sum(TIME(t):qijt(i,j,t[/email])))!所有产品变化运输成本:; !目标函数;
@for(link2(i,t):ait(i,t)=ait(i,t-1)+xit(i,t)-@SUM(OUTLET(j):qijt(i,j,t))); !工厂库存守恒:工厂第t时期的库存数量的为第t-1期的库存加上
本期生产的数量xit减去给3家门店的送货数量;
@for(link1(j,t):ajt(j,t-1)+@SUM(PLANT(i):qijt(i,j,t))-ajt(j,t)>=ejt(j,t)); !在T时刻,消耗量大于核心需求量;
@for(link1(j,t):ajt(j,t-1)+@SUM(PLANT(i):qijt(i,j,t))-ajt(j,t)<=fjt(j,t)); !在T时刻,需求量小于预测需求;
@for(OUTLET(j):ajt(j,t)<=wj); !门店库存小于库存的上限;
ait(1,1)=0; !工厂初始库存量;
ait(2,1)=0; !门店初始库存量;
end |
|