数学建模社区-数学中国
标题:
求限制条件的0-1决策矩阵~~我这个程序有什么问题啊?
[打印本页]
作者:
skyslbw
时间:
2011-8-24 17:31
标题:
求限制条件的0-1决策矩阵~~我这个程序有什么问题啊?
model:
sets:
summer/1..80/:ak,tk,u;
people/1..u(1)/;
all(people,summer):x;
endsets
data:
ak=14 14 14 14 14 13 13 13 12 12 11 11 11 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 8 8 8 14 14 14 14 13 13 12 12 11 11 11 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 14 14 13 13 12 12 11 11 11 10 10 9
;
tk=
110 110 110 110 108.25 106.25 104.25 102.25 100.25 98.25 96.25 94.25 92.25 90.25 88.25 86.25 84.25 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 81.125 78.625 76.125 73.625 71.125 68.625 66.125 63.625 110 110 110 110 104.25 102.25 100.25 98.25 96.25 94.25 92.25 90.25 88.25 86.25 84.25 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 82.5 81.125 78.625 76.125 73.625 71.125 68.625 66.125 63.625 104.895 103.04 101.185 99.33 97.475 95.62 93.765 91.91 90.055 88.2 86.345 84.49 ;
enddata
@for(summer(k):
@sum(people(i): x(i,k))=1);
@for(people(i):
@for(summer(k):
@bin(x(i,k))));
@for(people(i):
@for(summer(k):
@if(((k+ak(k))#le#80)#and#((k+ak(k)+ak(k+ak(k)))#le#80), x(i,k)+x(i,k+ak(k))+x(i,k+ak(k)+ak(k+ak(k)))<=2)));
@for(people(i):
@for(summer(k):
@if(x(i,k)=1,
@for(people(p),
@if((k+p)#le#ak(k),x(i,k+p)=0)))))
@for(people(i):
@sum(job(k): x(i,k)*tk(k))<=480);
u(0)>=@floor(u(2)/5)+1;
u(1)<=@floor(u(2)/4)+1;
u(2)<=(@sum(people(i):
@sum(summer(j): x(i,j)));
min=u(1)
初学lingo,我知道很多问题,应该怎么改进啊~~求大神~~~
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5