正在加载图片...
63求解模型 下面介绍3种解法 (1)解法 个自然的想法是将原油A的采购量x分解为三个量,即用x1,x2,x3分别表示以 价格10千元/吨、8千元/吨、6千元/吨采购的原油A的吨数,总支出为 c(x)=10x1+8x2+6x3,且 (13) 这时目标函数(6)变为线性函数 maxz=48(x1+x21)+56(x12+x2)-(10x1+8x2+6x3) (14) 应该注意到,只有当以10千元/吨的价格购买x1=500(吨)时,才能以8千元/ 吨的价格购买x2(>0),这个条件可以表示为 )x2=0 (15) 同理,只有当以8千元吨的价格购买x2=500(吨)时,才能以6千元/吨的价格购买 x3(>0),于是 (x2-500)x3=0 (16) 此外,x1,x2,x3的取值范围是 0≤x1 50 (17) 由于有非线性约束(15)、(16),因而(7)~(17)构成非线性规划模型。将该模 型输入 LINGO软件如下: model sets var1/1..4/:y;!这里y(1)=x11,y(2)=x21,y(3)=x12,y(4)=x22; ar2/1..3/:x,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 (x(1)-500)*x(2)=0 (x(2)-500)*x(3)=0; @for(var2: @bnd(0, x, 500)) data 1086 enddata 可以用菜单命令“ LINGOOptions”在“ Global Solver”选项卡上启动全局优化选 型,并运行上述程序求得全局最有解:购买1000吨原油A,与库存的500吨原油A和 1000吨原油B一起,共生产2500吨汽油乙,利润为5000(千元)。 2)解法二 引入0-1变量将(15)和(16)转化为线性约束。 令1=1,z2=1,二3=1分别表示以10千元吨、8千元吨、6千元/吨的价格采 购原油A,则约束(15)和(16)可以替换为-25- 6.3 求解模型 下面介绍 3 种解法 (1)解法一 一个自然的想法是将原油 A 的采购量 x 分解为三个量,即用 1 2 3 x , x , x 分别表示以 价 格 10 千元 / 吨 、 8 千 元 / 吨 、 6 千 元 / 吨采购的原油 A 的吨数,总支出为 10 1 8 2 6 3 c(x) = x + x + x ,且 1 2 3 x = x + x + x (13) 这时目标函数(6)变为线性函数: max 4.8( ) 5.6( ) (10 8 6 ) 11 21 12 22 1 2 3 z = x + x + x + x − x + x + x (14) 应该注意到,只有当以 10 千元/吨的价格购买 500 x1 = (吨)时,才能以 8 千元/ 吨的价格购买 ( 0) x2 > ,这个条件可以表示为 ( 500) 0 x1 − x2 = (15) 同理,只有当以 8 千元/吨的价格购买 500 x2 = (吨)时,才能以 6 千元/吨的价格购买 ( 0) x3 > ,于是 (x2 − 500)x3 = 0 (16) 此外, 1 2 3 x , x , x 的取值范围是 0 ≤ x1 , x2 , x3 ≤ 500 (17) 由于有非线性约束(15)、(16),因而(7)~(17)构成非线性规划模型。将该模 型输入 LINGO 软件如下: model: sets: var1/1..4/:y; !这里y(1)=x11,y(2)=x21,y(3)=x12,y(4)=x22; var2/1..3/:x,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; (x(1)-500)*x(2)=0; (x(2)-500)*x(3)=0; @for(var2:@bnd(0,x,500)); data: c=10 8 6; enddata end 可以用菜单命令“LINGO|Options”在“Global Solver”选项卡上启动全局优化选 型,并运行上述程序求得全局最有解:购买 1000 吨原油 A ,与库存的 500 吨原油 A 和 1000 吨原油 B 一起,共生产 2500 吨汽油乙,利润为 5000(千元)。 (2)解法二 引入 0-1 变量将(15)和(16)转化为线性约束。 令 1 z1 = , 1 z2 = , z3 = 1分别表示以 10 千元/吨、8 千元/吨、6 千元/吨的价格采 购原油 A ,则约束(15)和(16)可以替换为
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有