数学建模社区-数学中国

标题: lingo的约束条件问题?求大神们指导~~~~ [打印本页]

作者: pangpangpang3    时间: 2013-12-11 10:23
标题: lingo的约束条件问题?求大神们指导~~~~
sets:
Layer/1..3/;
subedge/1..3/;
bian/edge1..edge16/:C;
sink/1,2,3/:T;
path/N1,N2,N3/;
!邻接边;
link1(bian,bian):AD;
!各信宿的路径;
link2(sink,path):Pathsink;
!各边是否属于该路径;
link3(sink,Path,bian):x;
!各路径上不同层的流;
link4(sink,path,Layer):y;
!该信宿是否能解码改成信息;
link5(sink,Layer):z;
link6(Layer):b;
!虚拟子链路消耗的路径容量;
link7(sink,path,layer,bian):s;
link8(sink,path,Layer,bian,subedge):w;
!虚拟链路的码率;
link9(bian,subedge):u;
link10(sink,layer,bian);
link11(sink,layer,bian,subedge);
link12(sink,path,layer,subedge);
link13(path,bian);
endsets
data:
AD=0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
  
Pathsink=1 1 0
         1 1 1
         1 1 0;
x=1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
  0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0
  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  1 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0
  0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0
  0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0
  0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1
  0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0
  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;

c= 1 3 3 1
   1 1 3 1
   2 2 1 2
   1 1 2 2;  
enddata
[obj]max=@sum(link5(i,l):z(i,l)*b(l));
!@for(link5(i,l)|l#LE#2:z(i,l)>=z(i,l+1);
                      ! @sum(path(p):y(i,p,l))=b(l)*z(i,l);!);
@for(link7(i,p,l,e):@sum(subedge(v)|(v#ge#l):w(i,p,l,e,v))=x(i,p,e)*y(i,p,l););
@for(link12(i,p,l,v):@for(link1(e,f)|AD(e,f)#eq#1:w(i,p,l,f,v)<=w(i,p,l,e,v);););  
@for(link5(i,l):@for(link9(e,v):@sum(subedge(h)|h#LE#v:@sum(path(p):w(i,p,l,e,h)))<=u(e,v);););
@for(bian(e):@sum(subedge(v):u(e,v))=c(e););  
@for(link5:@bin(z));
@for(link4:@gin(y));         
@for(link9:@gin(u));
@for(link8:@gin(w));      
@for(link6:@gin(b);
           @bnd(0,b,3););      
end
程序本身没有语法错误,但是将约束条件一一注释掉以后不影响结果,说明每个约束条件都没有起作用,这个模型的出现这个问题的原因是哪里?希望各位指导下下!!!


作者: pangpangpang3    时间: 2013-12-13 19:58

作者: 社会新手    时间: 2013-12-28 11:42

作者: pangpangpang3    时间: 2014-1-8 23:13
社会新手 发表于 2013-12-28 11:42

谢谢你的安慰,很感谢@社会新手
作者: iamfeng    时间: 2014-3-23 08:40
逻辑有误。




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