Page 147 - 数学建模算法与应用
P. 147
第五章 整数规划的探讨
data:
c=10 8 6;
enddata
end
“LINGO|Options”菜单命令可在“Global Solver”上启动全局优化选型,并
运行上述程序以获得最优解决方案:购买 1000 吨原油 a,库存 500 吨原油 a 和
1000 吨原油 b,生产 2500 吨汽油乙,利润为 5000(千元)。
(二)解法二
引入 0 - 1 变量将转化为线性约束。
令 z 1 = 1, z 2 = 1, z 3 = 1 分别表示以 10 、8 、6 千元 / 吨的价格采购原油 a ,
则约束(15)和(16)可以替换为
500z 2 ≤ x 1 ≤ 500z 1 , (18)
500z 3 ≤ x 2 ≤ 500z 2 , (19)
x 3 ≤ 500z 3 , (20)
z 1 ,z 2 ,z 3 = 0 或 1 (21)
混合整数线性规划模型,将它输入 LINGO 软件如下:
model:
sets:
var1/1..4/:y; ! 这里 y(1)=x11,y(2)=x21,y(3)=x12,y(4)=x22;
var2/1..3/:x,z,c;
endsets
max=4.8*(y(1)+y(2))+5.6*(y(3)+y(4))-@sum(var2:c*x);
y(1)+y(3)<@sum(var2:x)+500;
y(2)+y(4)<1000;
0.5*(y(1)-y(2))>0;
0.4*y(3)-0.6*y(4)>0;
@for(var1(i)|i #lt# 3:500*z(i+1)<x(i);x(i)<500*z(i));
x(3)<500*z(3);
@for(var2:@bin(z));
@for(var2:@bnd(0,x,500));
137

