数学建模社区-数学中国

标题: 为什么限制条件会失效? 0-1整数规划 [打印本页]

作者: wangcx123    时间: 2015-8-6 19:14
标题: 为什么限制条件会失效? 0-1整数规划
model:
sets:
junction/1..92/;
server/1..20/;
link(junction,server):x,d;
endsets

data:
d=@ole('C:\Users\WCX\Desktop\distance.xls',distance);
enddata

min=@sum(link(i,j):x(i,j)*d(i,j));
@for(server(j)sum(link(i,j):x(i,j))=1);
@for(link(i,j):x(i,j)*d(i,j)<=30);
@for(link(i,j)bin(x));
end

这是源代码,运行结果得到最优解是0.

分析后发现应该是“@for(server(j)sum(link(i,j):x(i,j))=1);”这个限制条件失效了,本人是新手,这个代码改了很久都是错的,恳请大家赐教! 谢谢大家!!

下面是d的数据:
distance.xls (49 KB, 下载次数: 0)





作者: wangcx123    时间: 2015-8-6 19:17
带表情的其实是    “:@”,结果显示成图片了。。。。

作者: liwenhui    时间: 2016-1-25 15:30
这句不需要这样,试试这样:
  1. model:
  2. sets:
  3. junction/1..92/;
  4. server/1..20/;
  5. link(junction,server):x,d;
  6. endsets

  7. data:
  8. d=@ole('C:\Users\WCX\Desktop\distance.xls',distance);
  9. enddata

  10. min=@sum(link(i,j):x(i,j)*d(i,j));
  11. @for(server(j):@sum(junction(i):x(i,j))=1);
  12. @for(link(i,j):x(i,j)*d(i,j)<=30);
  13. @for(link(i,j):@bin(x));
  14. end
复制代码






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5