lingo程序找不到可行解,可能是什么原因呢?大牛们,帮帮忙
model:sets:cell/1..85/:rl,L,Fp,Pp,Wp;!地块i;!rl容积率,L地块面积;activity/1..3/:R,f;!活动类型j;!R:j...
model:
sets:
cell/1..85/:rl,L,Fp,Pp,Wp; !地块i;
!rl容积率,L地块面积;
activity/1..3/:R,f; !活动类型j;
!R:j活动类型的人均建筑面积;
pollution/1..3/:c;!污染物类型r;
station/1..21/:u,e;
allowed(cell,activity):x,A,N,y,H;
!x(i,j)人口;
link(pollution,activity):p;
links(cell,activity,pollution):;
stations(cell,activity,station):;
endsets
data:
p=@ole('参数_目标3.xls','Prj');
!excel导入Prj;
c=100,150,50;
!污染处理成本;
R=11,8,5;
!活动人均建筑面积;
rl=@ole('参数_目标3.xls','FAR_i');
!地块容积率;
L=@ole('参数_目标3.xls','L_i');
N=@ole('参数_目标3.xls','Nij');
!地块面积;
f=102.57,150,200;
!活动所需人均用水量;
qc=1;
A=0.5;
H=100;
snp=7775;
np=0.9;
bp=1;
sp=0.5;
enddata
min=@sum(links(i,j,k):c(k)*p(k,j)*x(i,j));
!目标函数:环境影响最小化;
@for(cell(i):@sum(activity(j):R(j)*x(i,j))<=rl(i)*L(i));
!约束条件1:地块空间面积限制;
@for(cell(i):@sum(activity(j):f(j)*x(i,j)/2.07*L(i))<=11*x(i,1)/rl(i)*L(i));
@for(cell(i):@sum(activity(j):11*x(i,1)/rl(i)*L(i))<=8*x(i,2)/rl(i)*L(i));
@for(cell(i):@sum(activity(j):8*x(i,2)/rl(i)*L(i))<=qc);
!约束条件2:供水、居住及就业等服务设施容量限制;
@for(allowed(i,j):(1-A(i,j))*N(i,j)<=x(i,j));
@for(allowed(i,j):x(i,j)<=(1+A(i,j))*N(i,j));
!约束条件3:规划力度控制;
@for(allowed(i,j):x(i,j)>=y(i,j)*H(i,j));
@for(allowed(i,j):x(i,j)<=y(i,j)*x(i,j));
@for(allowed(i,j):@bin(y));
!约束条件4:地块内活动最小规模控制;
np*snp<=@sum(cell(i):x(i,1));
@sum(cell(i):x(i,2))>=bp*@sum(cell(i):x(i,1));
@sum(cell(i):x(i,3))>=sp*@sum(cell(i):x(i,1));
!约束条件5:地块内活动之间的关系限制;
@for(cell(i):(x(i,2)+x(i,3))>=1.6*x(i,1));
!约束条件6:不同类型站点周边地块的独立性;
end 展开
sets:
cell/1..85/:rl,L,Fp,Pp,Wp; !地块i;
!rl容积率,L地块面积;
activity/1..3/:R,f; !活动类型j;
!R:j活动类型的人均建筑面积;
pollution/1..3/:c;!污染物类型r;
station/1..21/:u,e;
allowed(cell,activity):x,A,N,y,H;
!x(i,j)人口;
link(pollution,activity):p;
links(cell,activity,pollution):;
stations(cell,activity,station):;
endsets
data:
p=@ole('参数_目标3.xls','Prj');
!excel导入Prj;
c=100,150,50;
!污染处理成本;
R=11,8,5;
!活动人均建筑面积;
rl=@ole('参数_目标3.xls','FAR_i');
!地块容积率;
L=@ole('参数_目标3.xls','L_i');
N=@ole('参数_目标3.xls','Nij');
!地块面积;
f=102.57,150,200;
!活动所需人均用水量;
qc=1;
A=0.5;
H=100;
snp=7775;
np=0.9;
bp=1;
sp=0.5;
enddata
min=@sum(links(i,j,k):c(k)*p(k,j)*x(i,j));
!目标函数:环境影响最小化;
@for(cell(i):@sum(activity(j):R(j)*x(i,j))<=rl(i)*L(i));
!约束条件1:地块空间面积限制;
@for(cell(i):@sum(activity(j):f(j)*x(i,j)/2.07*L(i))<=11*x(i,1)/rl(i)*L(i));
@for(cell(i):@sum(activity(j):11*x(i,1)/rl(i)*L(i))<=8*x(i,2)/rl(i)*L(i));
@for(cell(i):@sum(activity(j):8*x(i,2)/rl(i)*L(i))<=qc);
!约束条件2:供水、居住及就业等服务设施容量限制;
@for(allowed(i,j):(1-A(i,j))*N(i,j)<=x(i,j));
@for(allowed(i,j):x(i,j)<=(1+A(i,j))*N(i,j));
!约束条件3:规划力度控制;
@for(allowed(i,j):x(i,j)>=y(i,j)*H(i,j));
@for(allowed(i,j):x(i,j)<=y(i,j)*x(i,j));
@for(allowed(i,j):@bin(y));
!约束条件4:地块内活动最小规模控制;
np*snp<=@sum(cell(i):x(i,1));
@sum(cell(i):x(i,2))>=bp*@sum(cell(i):x(i,1));
@sum(cell(i):x(i,3))>=sp*@sum(cell(i):x(i,1));
!约束条件5:地块内活动之间的关系限制;
@for(cell(i):(x(i,2)+x(i,3))>=1.6*x(i,1));
!约束条件6:不同类型站点周边地块的独立性;
end 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询