瀚海难干! 发表于 2011-8-7 00:06

....在做多目标规划的通用程序时发现lingo11.0的bug

{:soso_e118:} 今天数学建模学的目标规划,算法大全里有段序贯式算法的代码,如下:model:
sets:
level/1..3/:p,z,goal;
variable/1..2/:x;
h_con_num/1..1/:b;
s_con_num/1..4/:g,dplus,dminus;
h_con(h_con_num,variable):a;
s_con(s_con_num,variable):c;
obj(level,s_con_num)/1 1,2 2,3 3,3 4/:wplus,wminus;
endsets
data:
ctr=?;
goal=? ? 0;
b=12;
g=1500 0 16 15;
a=2 2;
c=200 300 2 -1 4 0 0 5;
wplus=0 1 3 1;
wminus=1 1 3 0;
enddata
min=@sum(level:p*z);
p(ctr)=1;
@for(level(i)|i#ne#ctr:p(i)=0);
@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)*
dminus(j)));
@for(h_con_num(i):@sum(variable(j):a(i,j)*x(j))<b(i));
@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i
)=g(i));
@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal(i)));
end输入完ctr=3后(第3次求最优化,前两次的偏差都为0),接着提示输入的变量是乱码_c000000....00207
换成lingo10.0后,输入ctr=3,这次才是接着提示输入变量goal的值。。。
无语我总以为程序错了。。。搞了半天是bug。。。。
各位水友以后要注意啊,在此也请大侠们帮忙解决这问题!!!

alair005 发表于 2012-2-7 12:05

qiuzhichang 发表于 2012-8-8 16:57

原来这样啊

qiuzhichang 发表于 2012-8-8 16:58

{:3_41:}             谢  谢

iopiop007 发表于 2012-8-8 18:04

什么意思?没看见解答啊...

残红星醉 发表于 2012-8-8 19:22

不懂啊!!!

残红星醉 发表于 2012-8-8 19:52

这应该是破解版的缘故吧

小乌鸡V5 发表于 2012-8-9 20:58

好高深的感觉~~

永远平安529 发表于 2012-8-11 10:05

真没看懂    经常用没发现这种问题     改改写法    精简程序      很多时候lingo计算是有弊端的

lurenjia306 发表于 2013-1-18 11:11

新来的,支持一下!{:soso_e100:}
页: [1]
查看完整版本: ....在做多目标规划的通用程序时发现lingo11.0的bug