高手给看一下这个编程哪错了,lingo
1个回答

model:

sets:

part/1..7/:a;

equipment/1..5/;!k; !这里,你的k只是下标,不是集的元素,所以不能那样写;

time/1..6/;!t; !同上,t;

machine_hour(equipment,part):d;

machine(equipment,time):b;

pxt(time,part):c,v,x;

endsets

data:

a=100 60 80 40 110 90 30;

d=0.5 0.7 0 0 0.3 0.2 0.5

0.1 0.2 0 0.3 0 0.6 0

0.2 0 0.8 0 0 0 0.6

0.05 0.03 0 0.07 0.1 0 0.08

0 0 0.01 0 0.05 0 0.05;

b=3 4 4 4 3

4 2 2 2 1

1 2 3 1 3

3 3 2 1 1

0 1 1 1 1

1 1 1 1 0;

c=500 1000 300 300 800 200 100

600 500 200 0 400 300 150

300 600 0 0 500 400 100

200 300 400 500 200 0 100

0 100 500 100 1000 300 0

500 500 100 300 1100 500 60;

enddata

max=@sum(pxt(t,i):x(t,i)*a(i)-5*v(t,i))-@sum(part(i):a(i)*50);

@for(pxt(t,i):v(t,i)