天天看点

货机装运问题

货机装运问题

代码如下:

model:

!飞机货仓装运问题;

sets:

 cang /1..3/:WET,VOL;

 wu /1..4/:w,v,p;

 link(wu,cang):x;

endsets

data:

 WET =10,16,8; VOL =6800,8700,5300;

 w =18,15,23,12; v =480,650,580,390;

 p =3100,3800,3500,2850;

enddata

[obj] max= @sum(wu(i):p(i)*@sum(cang(j):x(i,j)));

@for(wu(i):

     @sum(cang(j):x(i,j))<w(i));

@for(cang(j):

     @sum(wu(i):x(i,j))<WET(j) );

@for(cang(j):

     @sum(wu(i):v(i)*x(i,j))<VOL(j));

@for(cang(j):

     @for(cang(k)| k #gt# j:

          @sum(wu(i):x(i,j)/WET(j))[email protected](wu(i):x(i,k)/WET(k)));

);

end

---------------------------------------------------------------------------------------------------------

结果如下:

货机装运问题

解释如下:

       不妨将所得解作四舍五入,则

                                货物2装入前仓7吨、装入后仓8吨;

                                货物3装入前仓3吨、装入后仓13吨;

                                货物4装入中仓3吨;

                          最大利润为:121515.8元,即121516元。