我的lingo代码哪里错了?

model:
sets:
i/1,2,3,4,5,6/:costprice;
t/1,2,3,4,5,6,7,8/:numberoftrucks;
links(i,t):use,inventory,deliver;
endsets
data:
costprice=2.03 1.11 1.88 2.52 2.16 2.54;
use=3275 80 1988 4152 1332 2150 1395 869
1154 1091 2855 706 556 2768 2735 1459
50 623 1388 375 313 756 313 0
4265 1669 1864 1785 2027 3065 1625 0
1401 275 275 1650 1650 1948 1113 1938
550 0 0 0 1100 550 0 1100;
enddata
@for (links(m,k): @sum(k:deliver(m,k))>=@sum(k:use(m,k));
@for (links(m,k): @sum(m:deliver(m,k))=numberoftrucks(k)*15000);
@for (links(m,k): @sum(k:deliver(m,k))-@sum(k:use(m,k))=inventory(m,k));
@for (k: numberoftrucks(k)>=0);
@for (k: @gin(numberoftrucks));
@for (links(m,k): deliver(m,k)>=0);
@for (links(m,k): inventory(m,k)>=0);
min = 0.08*@sum(m:@sum(k:0.5*costprice(m)*inventory(m,k-1)+inventory(m,k)));
end
请问我这段建模的代码哪里错了?为什么要是运行错误呢?请高手指点!我献上所有分值!我很急,请好心人帮忙!!谢谢!

你的约束条件和目标函数中的角标和你定义的不一样(m,k和i,t),这给会给软件系统造成混淆,他不知道怎么读你的数。因为我不太明白你的函数,所以不能一点一点跟你改。你可以尝试:
1. 把角标改为一致的。
2.k-1你在数组中没有定义,系统不会读这个数的,我明白你的意思,你是想说由一个循环,但是LINGO不懂,你必须用一个for 循环来表示。对不起,如果不是很直接得回答你的问题。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-01-03
似乎很明显,你的约束条件肯定有问题。比如说@sum()中集合名字不是你所用的M或者K。i一般用来表示变量,不要犯这个忌讳,可能会被系统识别错误。集合名字你可以改一下嘛。
现在期末考试了,我得复习,你先修改一下,实在不行,再问我。联系方式百度HI

请问lingo中的代码11是什么意思?
错误代码11揭示的是在LINGO编程中,模型中的指令存在语法不合规的情况。出现11号错误的原因,通常在于数据输入部分,比如在指定数据时,程序后跟了endsets而应为enddata。在你的代码中,发现两个问题。首先,用于表示数据的指令使用了endsets,实际上应为enddata。其次,在表示变量时,使用的ai,dj与实际...

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

求大神指点,lingo出现错误代码11,这是为什么?
你的lingo代码少了个分号,报错如下 报错 具体出错位置在右上角,那里缺了个分号 错误在右上角,缺了分号 调整代码运行后没有错误11了 但是模型是infeasible的 model:!目标函数-补充了分号;min=(0.005*((@log(1+k))^2+(@log(1+2*k))^2+(@log(1+3*k))^2+(@log(1+4*k))^2+(@...

LINGO代码提示错误:A syntax error has occurred?
当 LINGO 提示 "A syntax error has occurred" 时,意味着您的 LINGO 代码存在语法错误。这意味着您的代码包含 LINGO 语法规则不允许的问题,导致 LINGO 无法正确理解和解释您的代码。常见的语法错误包括但不限于:拼写错误、缺少分号、括号不匹配、语句不完整、使用了未定义的变量等。要解决此问题,您...

Lingo 错误代码 12-(data missing right parenthesis)
1,你的程序真的少了个括号。2,你的程序有矛盾,lingo又找不出你的矛盾所在,于是错误判断出你少了个括号。对于第1种情况,你就寻找哪里掉了括号补充上就行了。对于第2种情况,建议你分段将你的程序编程注释程序,然后分别运行调试,最后找到矛盾语句。我有3年数学建模经验,遇到过很多这样的程序问题...

lingo 出现error code 1017,代码如下,急!
你这里出错了~links(warehouses,vendeors):cost,volume;其中vendeors和上一行的那个命名不一致,所以出错,只要改过这个就可以了 运行结果为:Global optimal solution found.Objective value: 501.0000 Infeasibilities: 0.000000 Total solver iterations: 27 ...

lingo中的代码11是什么意思?
错误代码11的含义:模型中的语句出现了语法错误(不符合LINGO语法)。错误之处在于你的data后面跟的是endsets,但其实应该是enddata。修改之后发现你的代码还有两处错误,数据中给的是ai,dj,你用的是a(i),d(j),Lingo是无法理解的,应该改成ai(i),dj(j)。源代码主要功用有如下2种作用:生成...

lingo代码哪里有错,急!
sets:dat\/1..4\/:w,z;num\/1..11\/:y,a,b,c,d,e;link(num,dat):e,m;endsets 集定义中,num和link定义了相同的字母e

lingo代码运行有问题,错误代码为69,但我自认为程序没有问题啊?(只要把...
2、把代码贴出来看看,才知道怎么改错误代码:29的意思是:数据段或初始段的数据个数不符要修改的看具体的。。3、.000000你改下看能否运行,如果不能我这有通过的源码给你。最后给你点下建议:从代码上看的出你对lingo以有了比较好的基础个人觉得书写lingo代码不要通篇都大写字母,这样看的不是很...

lingo代码哪里错,急!
sets:dat\/1..4\/:w,z;num\/1..11\/:y,a,b,c,d;link(num,dat):e,m;endsets min=@sum(link:e*w);这里的w是定义为dat型的

相似回答