魏关亭侯 发表于 2012-8-19 09:45

这个程序哪里错了

model:
sets:
customer/c1 .. c100/;
dvd/d1 .. d100/:constraint;
link(customer,dvd):volume,utility;
endsets
@for (dvd(i):@sum(customer(j):volume(j,i))<=constraint(i));
@for(customer(j):@sum(dvd(i):volume(j,i))=3);
@for(link:@bin(volume));
min=@sum(link:volume*utility);
data:
utility=......(略)
constraint=......(略)
enddata
end

濒危12345 发表于 2012-8-19 12:27

第三行,customer/c1 .. c100/;只有成员,没有属性?

魏关亭侯 发表于 2012-8-19 14:04

濒危12345 发表于 2012-8-19 12:27 static/image/common/back.gif
第三行,customer/c1 .. c100/;只有成员,没有属性?

现在加了个属性还是不行

魏关亭侯 发表于 2012-8-19 14:08

濒危12345 发表于 2012-8-19 12:27 static/image/common/back.gif
第三行,customer/c1 .. c100/;只有成员,没有属性?

而且好像不是一定要有属性的

魏关亭侯 发表于 2012-8-19 14:36

濒危12345 发表于 2012-8-19 12:27 static/image/common/back.gif
第三行,customer/c1 .. c100/;只有成员,没有属性?

看来是数据的输入有误

lingo 报错
error code 29
invalid number of initialization values in a DATA:or an INIT:
statement. The required number of values is :10000
8] 0 0 0 0.11111 .......(从0开始是我输入的数据),啥意思?

melissa513 发表于 2012-8-19 21:02

程序我试了下,customer/c1 .. c10/; dvd/d1 .. d10/:constraint; 然后自己设置了数据,输出结果是可行的哦。
至于100*100=10000个的utility数据没有试,不过可以确定是你data部分输入出现了问题

濒危12345 发表于 2012-8-21 12:09

魏关亭侯 发表于 2012-8-19 14:36 static/image/common/back.gif
看来是数据的输入有误

lingo 报错


貌似应该是属性值的个数多少和初值的问题,编译了几次,结果都是这两种问题,请问这个程序的背景是啥?看看能不能再重新写个程序,若较长,可以发到我的邮箱gjb19920223@163.com

魏关亭侯 发表于 2012-8-30 10:32

濒危12345 发表于 2012-8-21 12:09 static/image/common/back.gif
貌似应该是属性值的个数多少和初值的问题,编译了几次,结果都是这两种问题,请问这个程序的背景是啥?看 ...

万分感谢,我已经查出原因了,这是05B题,customer应该是1000,不是100,导致后面数据个数不匹配。

濒危12345 发表于 2012-8-30 19:50

汗,我也是后来看了程序才知道是B的,嘿嘿

落轩飞雨 发表于 2012-9-2 12:41

参考一下谢谢了
页: [1]
查看完整版本: 这个程序哪里错了