大侠来看这段LINGO编程那里错了

来源:百度知道 编辑:UC知道 时间:2024/06/22 20:32:25
model:
sets:
Ai/1..3/:;
Bj/1..5/:W0;
Mk/1..10/:w,d;
Cm/1..8/:;

link1(Ai,Bj,Mk):x;
!从i工厂到j仓库的M(k)物品数;
link2(Bj,Cm,Mk):y;
!从Bj仓运到m店的M(k)物品的数量y(j,m,k);
link3(Ai,Mk):N,a;
!i厂生产M(k)的年产量N(i,k),单价的a(i,k);
link4(Ai,Bj):b;
!i厂运Bj仓的运输单价b(i,j);
link5(Bj,Cm):c;
!bj仓库运到店的单价c(j,m);
link6(Cm,Mk):r,s,r0;
!第m个分店对第k种物资的需求量(件)r(m,k),最大缺货量s(m,k),需求速率r0(m,k);
endsets
!@gin(n0);

data:
a= 100 10000 210 250 290 300 10000 430 450 500
90 180 10000 240 10000 305 380 435 10000 490
100000 170 210 245 10000 285 400 10000 450 480;
N= 2000 0 3000 1000 3200 1000 0 2000 1500 1500
2000 1300 0 1000 0 1500 2000 1500 0 1200
0 2500 800 1500 0 1000 1400 0 2500 1500;
W0= 800

@for(Mk(k):
@for(Cm(m):
r0(m,k)=r(m,k)*n0;
);
这句,少个右括号,改成这样就可以了
@for(Mk(k):
@for(Cm(m):
r0(m,k)=r(m,k)*n0;
));

thinking_365说的对!

model:
sets:
Ai/1..3/:;
Bj/1..5/:W0;
Mk/1..10/:w,d;
Cm/1..8/:;

link1(Ai,Bj,Mk):x;
!从i工厂到j仓库的M(k)物品数;
link2(Bj,Cm,Mk):y;
!从Bj仓运到m店的M(k)物品的数量y(j,m,k);
link3(Ai,Mk):N,a;
!i厂生产M(k)的年产量N(i,k),单价的a(i,k);
link4(Ai,Bj):b;
!i厂运Bj仓的运输单价b(i,j);
link5(Bj,Cm):c;
!bj仓库运到店的单价c(j,m);
link6(Cm,Mk):r,s,r0;
!第m个分店对第k种物资的需求量(件)r(m,k),最大缺货量s(m,k),需求速率r0(m,k);
endsets
!@gin(n0);

data:
a= 100 10000 210 250 290 300 10000 430 450 500
90 180 10000 240 10000 305 380 435 10000 490
100000 170 210 245 10000 285 400 10000 450 480;
N= 2000 0 3000 1000 3200 1000