K= , , ;!该处空格数为决策单元数量;enddataMin=z;!目标函数;@for(DMU(j):k=@if(p(j)#eq#1,j,0));@for(II(i):@sum(DMU(j)|j#ne#k:d(j)*x(i,j))+l(i)=@sum(DMU(j):p(j)*x(i,j))*z);@for(OI(i):@sum(DMU(j)|j#ne#k:d(j)*y(i,j))-v(i)=@sum...
sets:GC/1..3/:GZ; !i工厂所有物资的总产量;WZ/1..10/:TJ,M; !j物资体积,存储费;CC/1..5/:W; !k仓库容积,;FD/1..8/:HZ; !h分店;YJ1(GC,CC):B; !i工厂到k仓库的运价;YJ2(CC,FD):F; !k仓库到h分店的运价;CL(GC,WZ):G; !i工厂j物资的产量;DJ...
修改后可以运行了,但无解。model:sets:hb/1..11/:n,a,b,c;hx/1..11/:t,w;matrix(hb,hx):x;endsets data:a=4,4,4,4,7,7,7,7,8,8,8;t=3.09,4.57,4.57,2.48,2.48,2.86,2.77,2.53,4.04,1.01,4.39;w=9.332,53.138,,63.753,,44.075,48.691,18.852,13...
改成@for(wan(i):@sum(wan(i):y(i)*s(i))=14370);就行了,你的@sum函数后面没有写集合,根据你的数据算出来没有可行解。
sell=30 15 15 25 33 40 45 45 26 14 25 30;store0=2000;enddata min=@sum(month(i):store(i)*5+p(i)*@if(p(i)#gt#30000,40,30));store(1)=store0+p(1)-sell(1)*1000;for(month(i)|i#gt#1:store(i)=store(i-1)+p(i)-sell(i)*1000);for(month:p