576905077 发表于 2012-4-17 00:23

请lingo高手解决一个问题

我的疑问是无法去处理那个Y变量啊!系统提示我是模型定义不正确,我猜想是y处理的不好!所以求lingo高手帮下忙

asthegarn 发表于 2012-4-17 09:01

y是一个二值变量:
@for(CITY(J)|Y(j)=@IF(@SUM(CITY(I)|I#LE#7:X(I,J))=0,0,1));

asthegarn 发表于 2012-4-17 09:02

是手写的,思路是这样,具体可以自己视情况再写

asthegarn 发表于 2012-4-17 09:34

MAX=@SUM(LINK(I,J):c(I,J)*x(I,J));
@bin(LINK(I,J):x(I,J));  !二值变量
@FOR(CITY(I):y(I)=@IF(QUYU(J):@SUM(x(I,J))=0,0,1)); !y与x相关
@FOR(CITY(I):b(I)*y(I)<=50);
这里面对于x 还有y ,模型中若有其他约束,需要你自己添加

576905077 发表于 2012-4-17 15:42

经本人仔细分析    终得正果!  要启用全局最优求解器才能得出答案!!

瓦片 发表于 2012-4-17 21:23

应该优化写代码的习惯吧。

瓦片 发表于 2012-4-17 21:24

注释啊,按常规逻辑啊,方便阅读与检修。
页: [1]
查看完整版本: 请lingo高手解决一个问题