请问一下这个LINGO程序错在哪里了啊.为什么老是不执行

问题描述:

请问一下这个LINGO程序错在哪里了啊.为什么老是不执行
model:
飞机排队问题;
sets:
planes:passengerALL,passengerEXHANGE,PDT,PAT,delay,MD;
time:e;
links(planes,time):cost,sequence;
endsets
目标函数;
min=@sum(links:cost*sequence);
飞机数量约束;
@for(time(J):
@sum(planes(I):sequence(I,J))=1);
起飞窗口约束;
@for(planes(I):
@sum(time(J):sequence(I,J))=1);
这里是数据(由EXCEL导入);
data:
planes,time,e,passengerALL,passengerEXHANGE,PDT,PAT,delay,MD=@OLE('D:\IMPORT.XLSX');
@for(links(I,J):cost(I,J)=@if((delay(I)+J) #lt# MD(I),100*(delay(I)+e(J))*(PAT(I)-PDT(I)+MD(I))+(2.1^(0.5*(delay(I)+J))-1)*10*passengerAll(I),
\x05\x05\x05\x05 100*MD(I)*(PAT(I)-PDT(I)+MD(I))+(2.1^(0.5*(delay(I)+e(J)))-1)*10*passengerAll(I)+(20+350)*passengerEXCHANGE(I))));
enddata
end
1个回答 分类:综合 2014-12-08

问题解答:

我来补答
改成这样 model:
!飞机排队问题;
sets:
planes:passengerALL,passengerEXCHANGE,PDT,PAT,delay,MD;
time:e;
links(planes,time): cost,sequence;
endsets
!目标函数;
min=@sum(links: cost*sequence);
!飞机数量约束;
@for(time(J):
@sum(planes(I): sequence(I,J))=1);
!起飞窗口约束;
@for(planes(I):
@sum(time(J): sequence(I,J))=1);
@for(links(I,J): cost(I,J)=@if((delay(I)+J) #lt# MD(I),100*(delay(I)+e(J))*(PAT(I)-PDT(I)+MD(I))+(2.1^(0.5*(delay(I)+J))-1)*10*passengerAll(I),
 100*MD(I)*(PAT(I)-PDT(I)+MD(I))+(2.1^(0.5*(delay(I)+e(J)))-1)*10*passengerAll(I)+(20+350)*passengerEXCHANGE(I)));
!这里是数据(由EXCEL导入);
data:
planes,time,e,passengerALL,passengerEXHANGE,PDT,PAT,delay,MD=@OLE('D:\IMPORT.XLSX');
enddata
end
 
 
展开全文阅读
剩余:2000
上一页:100 ,11
下一页:29
也许感兴趣的知识