利用Lingo编程求解一个模型,得不到结果,不知道哪错了,请高手指点
问题是一个井组划分,由于无法粘贴公式,以图片展示,下面是相应的代码,不知道哪有问题,求解的不到结果。望大神指点。。。只需要看看模型和程序对不对得上就行。model:
sets:
ss/1..124/:x,y,qq;
sw/1..10/:xx,yy;
link(ss,sw):A,d;
endsets
data:
nmax = 20;
x = @ole("C:\Users\CQ\Desktop\data.xlsx");
y = @ole("C:\Users\CQ\Desktop\data.xlsx");
qq = @ole("C:\Users\CQ\Desktop\data.xlsx");
enddata
min = @sum(link(i,j):A(i,j)*@sqrt((x(i)-xx(j))^2+(y(i)-yy(j))^2));
!@for(sw(j):@prod(ss(i):(xx(j)-x(i)))=0);
!@for(sw(j):@prod(ss(i):(yy(j)-y(i)))=0);
@for(ss(i):@sum(link(i,j):A(i,j)) = 1);
@for(sw(j):@sum(link(i,j):A(i,j)) < nmax);
@for(sw(j):@sum(link(i,j):A(i,j)*qq(i)) > 1);
@for(sw(j):@sum(link(i,j):A(i,j)*qq(i)) < 10);
@max(link(i,j):A(i,j)*@sqrt((x(i)-xx(j))^2+(y(i)-yy(j))^2))<5/100000;
@for(link(i,j):@bin(A(i,j)));
@for(sw(j):@bnd(1.96450,xx(j),1.964977));
@for(sw(j):@bnd(0.396243,yy(j),0.3966622));
end
代码中的表情处是冒号。。。 代码中的表情处是冒号。。。 bytbyt 发表于 2014-5-10 16:20 static/image/common/back.gif
代码中的表情处是冒号。。。
???。。。。。。 把数据文件data.xlsx也发上来,要不无法测试! 由于excel上传出错,所以数据放在Word里了。 刚刚那个需要体力,这里再上传一下。 照片记录谁 发表于 2014-5-10 22:24 static/image/common/back.gif
由于excel上传出错,所以数据放在Word里了。
不好意思额,不知道怎么设置不需要体力。 madio 发表于 2014-5-10 21:36 static/image/common/back.gif
把数据文件data.xlsx也发上来,要不无法测试!
恩,数据已上传,但是不知道怎么设置才能下载不需要体力 直接运行会造成数值不稳定,你仔细检查下是不是强加了什么约束,及忽略了SCALE的量级,我胡乱修改后是可以得到结果的,一分钟左右可以得到结果,不过,和你的原来程序不一样了,就不贴上来了,你自己仔细检查下再运行。
页:
[1]
2