lingo程序运行不出来,麻烦哪位童鞋帮我看看错在哪里!
model:sets:
row/1..5/;
arrange/1..4/;
link(row,arrange):x,c;
endsets
data
c=0,0,0,0,0,0,1.4,0,0,1.25,0,0,1.15,0,0,0,0,0,0,1.06;
enddata
max=@sum(link(i,j):c(i,j)*x(i,j));
x(1,1)+x(1,4)=1000000;
-1.06*x(1,4)+x(2,1)+x(2,3)+x(2,4)=0;
-1.15*x(1,1)-1.06*x(2,4)+x(3,1)+x(3,2)+x(3,4)=0;
-1.15*x(2,1)-1.06*x(3,4)+x(4,1)+x(4,4)=0;
-1.15*x(3,1)-1.06*x(4,4)+x(5,4)=0;
x(3,2)<=400000;
x(2,3)<=300000;
@for(link(i,j):x(i,j)>=0);
end 报错信息是什么?~~~~~~~~~~~~~~~~~~~~~ data后面是不是要有 :
错误提示是啥? max=@sum(link(i,j):c(i,j)*x(i,j));
这个求和可以这么写么?貌似不行吧 好像是data后面要加冒号~~~~~~~~ LINGO 11 的正确答案:
model:
sets:
row/1..5/;
arrange/1..4/;
link(row,arrange):x,c;
endsets
data:
c=0,0,0,0,0,0,1.4,0,0,1.25,0,0,1.15,0,0,0,0,0,0,1.06;
enddata
max=@sum(link(i,j):c(i,j)*x(i,j));
x(1,1)+x(1,4)=1000000;
-1.06*x(1,4)+x(2,1)+x(2,3)+x(2,4)=0;
-1.15*x(1,1)-1.06*x(2,4)+x(3,1)+x(3,2)+x(3,4)=0;
-1.15*x(2,1)-1.06*x(3,4)+x(4,1)+x(4,4)=0;
-1.15*x(3,1)-1.06*x(4,4)+x(5,4)=0;
x(3,2)<=400000;
x(2,3)<=300000;
@for(link(i,j):x(i,j)>=0);
end 回复 3# kun
对,是少写了个冒号,可是为什么运行一次有解,再运行一次就出现错误1017了呢? 回复 7# xx0177
这个就不知道了。没遇过如此诡异的lingo问题。
我连data后面有没有冒号都记不清了,可见我现在的lingo是什么水平。。。。。 看看提高下水平。。。。。。。。。。。。。。。。。 LINGO是个简单软件,
但其本身的核心算法是不简单的,
还有就是,那个自编函数偶还不会用,貌似是@use,
也没有相关内容的介绍,
目前国内LINGO比较好的书就是谢金星的那本.
但在书中,他也有很多地方不明白的,他也经常提出来.
页:
[1]