关于lingo的一段代码,问能不能运行成功。如果出错,错在哪里?

MODEL:
max =0.7*(2*k1+13*k3+k6*4+k11*6+k13*9+k14*3)*a*r+(k1+k2)*(0.7-0.2*(k1+k2-1))*4*a*r+(k1+k3)*(0.7-0.2*(k1+k3-1))*6*a*r+(k4+k2)*(0.7-0.2*(k4+k2-1))*9*a*r+(k4+k5)*(0.7-0.2*(k4+k5-1))*10*a*r+(k3+k6)*(0.7-0.2*(k6+k3-1))*8*a*r+(k3+k6)*(0.7-0.2*(k3+k6-1))*11*a*r+(k6+k7)*(0.7-0.2*(k7+k6-1))*6*a*r+((k3+k4+k5)*(0.7-0.2*(k3+k4+k5-1))+0.1*k3*k4*k5)*12*a*r+((k5+k6+k7)*(0.7-0.2*(k5+k6+k7-1))+0.1*k5*k6*k7)*14*a*r;

9*k1+6.5*k2+20*k3+14.5*k4+19*k5+13*k6+10.5*k7<=50;
@bin(k1);@bin(k2);@bin(k3);@bin(k4);@bin(k5);@bin(k6);@bin(k7);
END

就是一个最优的问题

第1个回答  2009-05-02
语法分析,这段代码没有问题,算不出来的原因是因为你的约束条件构不成一个封闭的域。
简单的说,如果用线性规划的方法来画图你会发现这个约束条件是没有上限的。
那么,你的max函数当然是不能取得值的!

解决这个问题,你需要增加约束条件来限制目标函数要么只有改变目标函数。
第2个回答  2009-05-16
或许是你所用的LINGO版本较低所致,用LINGO10以上的版本试试看.
下面是用LINGO10求解的结果
Linearization components added:
Constraints: 404
Variables: 101

Local optimal solution found.
Objective value: 0.1350010E-04
Extended solver steps: 237
Total solver iterations: 74838

Variable Value Reduced Cost
K1 1.000000 1440000.
K3 1.000000 4960000.
K6 0.000000 -4550000.
K11 13.23000 0.000000
K13 14.23000 0.000000
K14 15.23000 0.000000
A 0.000000 0.000000
R 0.000000 0.000000
K2 1.000000 1690000.
K4 1.000000 3630000.
K5 0.000000 -5280000.
K7 0.000000 -3300000.

Row Slack or Surplus Dual Price
1 0.1350010E-04 1.000000
2 0.000000 0.000000

关于lingo的一段代码,问能不能运行成功。如果出错,错在哪里?
语法分析,这段代码没有问题,算不出来的原因是因为你的约束条件构不成一个封闭的域。简单的说,如果用线性规划的方法来画图你会发现这个约束条件是没有上限的。那么,你的max函数当然是不能取得值的!解决这个问题,你需要增加约束条件来限制目标函数要么只有改变目标函数。

以下是用lingo写的程序,但不能运行,格式有错吗?请问错在哪里了?
1 lingo不区分大小写 所以你的A和a重名 2 倒数第二个约束括号位置错了 3 最后一个约束不必写 因为lingo默认变量非负 如果要写的话中间也应该是;而不是,改成这样 model:sets:number\/1..32\/:A,x,a1,z;endsets max= @sum(number(j):(A(j)-1)*x(j)*a1(j)) ;for(number(j):x(j...

lingo软件运行问题,程序不能运行,代码哪里错了?
代码没有错误,只是 b 的前面,a 的最后少了一个分号。

LINGO程序哪里出错了运行不了啊
你改下看能否运行,如果不能我这有通过的源码给你。最后给你点下建议:从代码上看的出你对lingo以有了比较好的基础个人觉得书写lingo代码不要通篇都大写字母,这样看的不是很舒服(反正我是这样觉得)。

谁能帮我看看我的lingo代码,哪里出现问题了,怎么运行不了?谢谢!
具体错误提示是什么 你这两句肯定是不对的 不知道你要做什么 text()=@writefor(Assign(i,j)|Y(i,j)#GT#0:'{',i,',',j,'},');text()=@writefor(Supply(j)|X(j)#GT#0:'X(',j,')=',X(j),' ');后面的@sum(Supply(j):X(j)=10);应为 @sum(Supply(j):X(j))=10;

下面的lingo代码错在哪里?帮忙改正啊!
sets:chanpin\/1..7\/:p,s,c;!p价格,s标准差,c成本;month\/1..6\/;shebei\/1..5\/:W;link(month,chanpin):y,x,M,K,z,ymax,g;!x为生产的数量,y为存储量,M为最大需求量,z为销量,K为波动系数;yueshe(month,shebei):A,f;!工作的设备;jushe(chanpin,shebei):H;!生产单位产品i...

lingo问题,错误代码29,不知道错在哪里
这一行有错,c是92*92的方阵,你的c只有20个数据,当然编译不过关啦 enddata for(link:@bin(x));for(chukou(i):@sum(jingting(j):x(i,j))=1);for(jingting(j):@sm(chukou(i):x(i,j))<=1);for(chukou(i):y(i)=@sum(jingting(j):x(i,j)*c(cu (i),j)));fx=@max...

lingo代码错误161。求大神指导一下,找不到错在哪。代码有点长贴不上 ...
你好,答案如下所示。lingo有这么个缺点,不完整的程序无法运行 知道提问也有字数限制 你可以多提问几次 把其它数据放在别的提问中 希望你能够详细查看。如果你有不会的,你可以提问 我有时间就会帮你解答。希望你好好学习。每一天都过得充实。

我的lingo编程总是出现错误代码11,哪位大神可以帮忙看一看,急
1, 查阅LINGO的用户手册得知:(1)LINGO的错误代码11 (error code 11) 是概括性的句法错误, 除非是混淆了LINGO和LINDO的语言(即错误地在lng或lg4文件中使用LINDO语言, 或者在ltx文件中使用LINGO语言), 否则没有详细的错误信息 (是一个"口袋"错误);(2)LINGO15(不含15)以下的版本中, 错误位置可能...

LINGO错误代码11,求看程序错误
首先在lingo的数据是不能运算的,要直接输入122000000000 这个的data里面的one(1)应该要改成one1 括号要省略(后面的ni-1也一样)你的@max那一行应该有错,你检查一下

相似回答