大神,跪求帮忙一下您在网页尚未我回答的问题!!lingo程序

这个方程组用lingo怎么编程呀。。。
我编的程序上面是有错误的,请大神指正!!感激不尽啊啊啊啊啊
附上我的错误程序。。。
MODEL:

sets:

set1/a1..a92/:AI;

set2/b1..b92/:BJ;

set3(set1,set2):c,y;

set4(set1,set2):t;

set5/c1..c20/:z;

endsets

MIN=V;

@FOR(SET5:

@sum(set5:z)<=V);

@FOR(SET3(I,J):y<=t);

@FOR(SET2(J):

@sum(set1(I):y(I,J))=1);

@FOR(SET5:z=1);

@FOR(SET1(I):y(I,J)-z(I)<=0);

@FOR(SET5:(z-1)*z=0);

@FOR(SET3(I,J):

@BIN(y(I,J)));

@FOR(SET4(I,J):

@BIN(t(I,J)));

@FOR(SET5:

@BIN(z));

END

第1个回答  2016-08-10
x是1 就取对应位置的a和b
model:
sets:
row/1..13/;
col/1..4/;
link(row,col):a,b,x;
endsets
data:
a=
0,300,600,900,
0,100,200,300,
0,200,400,600,
0,50,100,150,
0,80,160,240,
0,20,40,60,
0,30,60,90,
0,10,20,30,
0,10,15,20,
0,5,10,15,
0,20,40,60,
0,20,30,40,
0,40,50,60;
b=
0,20,30,40,
0,12,23,34,
0,14,24,35,
0,23,25,27,
0,12,14,18,
0,23,26,27,
0,8,12,13,
0,5,9,12,
0,13,16,17,
0,22,25,30,
0,1,3,8,
0,11,13,23,
0,3,7,7;
enddata
max=@sum(link:b*x);
@sum(link:a*x)<=1000;
@for(link:@bin(x));
@for(row(i):@sum(col(j):x(i,j))=1);
end追问

最后的结果应该是24,可是我刚刚用你给我的程序lingo运行出来的结果是220.。。555不对的呀~

相似回答
大家正在搜