我在使用lingo时出现

问题描述:

我在使用lingo时出现
THE MODEL DIMENSIONS EXCEED THE CAPACITY OF THIS VERSION.
哪位大虾可以告诉我是什么地方出了问题.
如何解决,程序应该不用出错.
谢谢.
程序如下:
model:
title CUMCM-2003B-01;
sets:
cai / 1..10 /:crate,cnum,cy,ck,flag;
xie / 1 .. 5 /:xsubject,xnum;
link( xie,cai ):distance,lsubject,number,che,b;
endsets
data:
crate=30 28 29 32 31 33 32 31 33 31;
xsubject= 1.2 1.3 1.3 1.9 1.3 ;
distance= 5.26 5.19 4.21 4.00 2.95 2.74 2.46 1.90 0.64 1.27
1.90 0.99 1.90 1.13 1.27 2.25 1.48 2.04 3.09 3.51
5.89 5.61 5.61 4.56 3.51 3.65 2.46 2.46 1.06 0.57
0.64 1.76 1.27 1.83 2.74 2.60 4.21 3.72 5.05 6.10
4.42 3.86 3.72 3.16 2.25 2.81 0.78 1.62 1.27 0.50;
cy = 1.25 1.10 1.35 1.05 1.15 1.35 1.05 1.15 1.35 1.25;
ck = 0.95 1.05 1.00 1.05 1.10 1.25 1.05 1.30 1.35 1.25;
enddata
!目标函数;
min=@sum( cai (i):
@sum ( xie (j):
number (j,i)*154*distance (j,i)));
!卡车每一条路线上最多可以运行的次数;
@for (link (i,j):
b(i,j)=@floor((8*60-(@floor((distance(i,j)/28*60*2+3+5)/5)-1)*5)/(distance(i,j)/28*60*2+3+5)));
!每一条路线上的最大总车次的计算;
@for( link (i,j):
lsubject(i,j)=(@floor((distance(i,j)/28*60*2+3+5)/5))*b(i,j));
!计算各个铲位的总产量;
@for (cai(j):
cnum(j)=@sum(xie(i):number(i,j)));
!计算各个卸点的总产量;
@for (xie(i):
xnum(i)=@sum(cai(j):number(i,j)));
!道路能力约束;
@for (link (i,j):
number(i,j)<=lsubject(i,j));
!电铲能力约束;
@for (cai (j) :
cnum(j) <= flag(j)*8*60/5 );
!电铲数量约束 ---- added by Xie Jinxing, 2003-09-07;
@sum(cai(j): flag(j) ) <=7;
!卸点能力约束;
@for (xie (i):
xnum (i)<=8*20);
!铲位产量约束;
@for (cai (i): number(1,i)+number(2,i)+number(5,i)<=ck(i)*10000/154);
@for (cai (i): number(3,i)+number(4,i)<=cy(i)*10000/154);
!产量任务约束;
@for (xie (i):
xnum (i)>= xsubject (i)*10000/154);
!铁含量约束;
@sum(cai (j):
number(1,j)*(crate(j)-30.5) )<=0;
@sum(cai (j):
number(2,j)*(crate(j)-30.5) )<=0;
@sum(cai (j):
number(5,j)*(crate(j)-30.5) )<=0;
@sum(cai (j):
number(1,j)*(crate(j)-28.5) )>=0;
@sum(cai (j):
number(2,j)*(crate(j)-28.5) )>=0;
@sum(cai (j):
number(5,j)*(crate(j)-28.5) )>=0;
!关于车辆的具体分配;
@for (link (i,j):
che (i,j)=number (i,j)/b(i,j));
!各个路线所需卡车数简单加和;
hehe=@sum (link (i,j): che (i,j));
!整数约束;
@for (link (i,j): @gin(number (i,j)));
@for (cai (j): @bin(flag (j)));
!车辆能力约束;
hehe<=20;
ccnum=@sum(cai (j): cnum(j) );
end
1个回答 分类:数学 2014-11-29

问题解答:

我来补答
lingo有不同的版本,每个版本有不同的处理变量能力.
你用的变量超过了他的处理变量范围
所以出现这种问题
察看help-----about lingo
limits for this installation
下面有几行的数字,那就是变量储量限制
建议搞个完全破解版,就有无穷变量使用了.
 
 
展开全文阅读
剩余:2000