只能给你改一下语法错误 而且你写的很多地方看不懂是什么意思 只能照我的理解改
model:
sets:
bfb/1..10/:v,x;
mb/1..5/;
zl/1..2/;
distance(bfb,mb):d,k,y;
cl(bfb,zl):s;
endsets
data:
v=0.3 0.28 0.29 0.32 0.31 0.33 0.32 0.31 0.33 0.31;
d=
5.26 5.19 4.21 4.00 2.95 2.74 2.46 1.90 0.64 1.27
1.90 0.99 1.90 1.13 1.27 2.25 1.48 2.04 3.09 3.51
5.89 5.61 5.61 4.56 3.51 3.65 2.46 2.46 1.06 0.57
0.64 1.76 1.27 1.83 2.74 2.60 4.21 3.72 5.05 6.10
4.42 3.86 3.72 3.16 2.25 2.81 0.78 1.62 1.27 0.50;
s=
9500 10500 10000 10500 11000 12500 10500 13000 13500 12500
12500 11000 13500 10500 11500 13500 10500 11500 13500 12500;
enddata
@for(bfb(i):x(i)<=1;
y(i,1)=0;
y(i,2)=0;
y(i,5)=0;
k(i,3)=0;
k(i,4)=0);
@sum(bfb(i):x(i))<=7;
@sum(bfb(i):x(i)*k(i,1))=78;
@sum(bfb(i):x(i)*k(i,2))=85;
@sum(bfb(i):x(i)*y(i,3))=85;
@sum(bfb(i):x(i)*y(i,4))=124;
@sum(bfb(i):x(i)*k(i,5))=85;
@for(bfb(i):154*@sum(mb(j):x(i)*k(i,j))<=s(i,1);
154*@sum(mb(j):x(i)*y(i,j))<=s(i,2));
0.285<=154/12000*@sum(bfb(i):x(i)*k(i,1)*v(i));
154/12000*@sum(bfb(i):x(i)*k(i,1)*v(i))<=0.305;
0.285<=154/13000*@sum(bfb(i):x(i)*k(i,2)*v(i));
154/13000*@sum(bfb(i):x(i)*k(i,2)*v(i))<=0.305;
0.285<=154/19000*@sum(bfb(i):x(i)*k(i,5)*v(i));
154/19000*@sum(bfb(i):x(i)*k(i,5)*v(i))<=0.305;
min=154*@sum(bfb(i):@sum(mb(j):x(i)*d(i,j)*k(i,j)+x(i)*d(i,j)*y(i,j)));
end