c=[-11 -9];
A=[6 5;10 20;1 0]; b=[60;150;8]; Aeq=[]; beq=[]; vlb=[0;0]; vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
Optimization terminated. x =
7.999999999630490 2.400000000370391
fval =
-1.095999999992689e+002 甲:8 乙:2
总获利:106
所以改变生产计划。
3.3 某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低?
单位工件所需加工台时数 车床类型 工件1 甲 乙 min
0.4 0.5 工件2 1.1 1.2 工件3 1.0 1.3 工件1 13 11 工件2 9 12 工件3 10 8 800 900 单位工件的加工费用 可用台时数 z?13x1?9x2?10x3?11x4?12x5?8x6
0.4x1?1.1x2?x3?8000.5x4?1.2x5?1.3x6?900x1?x4?400x2?x5?600x3?x6?500s.t
x1,x2,x3,x4,x5,x6?0
解:
c=[13 9 10 11 12 8];
A=[0.4 1.1 1 0 0 0;0 0 0 0.5 1.2 1.3;-1 0 0 -1 0 0;0 -1 0 0 -1 0;0 0 -1 0 0 -1]; b=[800;900;-400;-600;-500];
第 17 页 共 46 页
Aeq=[]; beq=[];
vlb=[0;0;0;0;0;0]; vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
Optimization terminated. x =
0.0000 600.0000 0.0000 400.0000 0.0000 500.0000
fval =
1.3800e+004
分配车床的加工任务如下:
单位工件所需加工台时数 车床类型 工件1 甲 乙 0.4 0.5 工件2 1.1 1.2 工件3 1.0 1.3 工件1 13 11 工件2 9 12 工件3 10 8 800 900 单位工件的加工费用 可用台时数 才能既满足加工工件的要求,又使加工费用最低且最低费用是13800。 3.4 某部门在今后5年内考虑给下列项目投资,已知:
项目A:从第一年到第四年初投资,并于次年底回收本例115%;
项目B:从第三年初投资,到第五年底回收本利125%,投资额不超过4万元。 项目C:从第二年初投资,到第五年底回收本利140%,投资额不超过3万元。 项目D:五年内每年初购公债,于本年底归还本利,年利为6%。
该本部门现有资金10万元,问应如何确定每年各项目投资额,使到第五年底,部门拥有资金的总额最大。
解:
c=[-1.3225 -1.25 -1.4 -1.33822558]; A=[1 1 1 1;0 1 0 0;0 0 1 0]; b=[10;4;3]; Aeq=[]; beq=[];
vlb=[0;0;0;0]; vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
Optimization terminated. x =
第 18 页 共 46 页
0.0000 0.0000 3.0000 7.0000
fval =
-13.5676
四、非线性规划模型
(一)实验目的
1、直观了解非线性规划的基本内容。 2、掌握用数学软件求解优化问题。
(二)实验学时
4.1 炼油厂将A、B、C三种原料加工成甲乙丙三种汽油。一桶原油加工成汽油的费用为4元,每天至多能加工汽油14,000桶。原油的买入价、买入量、辛烷值、硫含量,及汽油的卖出价、需求量、辛烷值、硫含量由表4-15给出。问如何安排生产计划,在满足需求的条件下使利润最大?
一般来说,作广告可以增加销售,估计一天向一种汽油投入一元广告费,可使该汽油日销售量增加10桶,且每天最多投入广告费800元,问:如何安排生产和广告计划使利润最大?
一. 问题重述
已知某炼油厂原材料和产品的价格,辛烷值,含量及数量的约束条件,要求在一定
的加工费用下求出如何购进原材料,如何分配原材料才能使这个工厂的利润最大。
(1)由上表给出,如何安排生产计划,使利润最大? (2)投入广告后,如何安排生产和广告计划使利润最大? 二.符号说明
f(x):未投入广告前的最大利润; F(x):投入广告后的最大利润; M:卖出汽油获得的总收入; N:买入原油需要的总费用; P:原油加工成汽油的总费用; Q:投入的总的广告费;
A1、A2、A3:分别是由A类原油加工成甲、乙、丙三种汽油的桶数; B1、B2、B3:
分别是由B类原油加工成甲、乙、丙三种汽油的桶数; C1、C2、C3:分别是由C类原油加工成甲、乙、丙三种汽油的桶数; X1、X2、X3:分别是投入到甲、乙、丙三种汽油上的广告费用。
三. 建立模型及模型的求解 (1)未投入广告前
卖出汽油获得的总收入:M=70(A1+B1+C1)+60(A2+B2+C2)+50(A3+B3+C3)。 买入原油需要的总费用:N=45(A1+A2+A3)+35(B1+B2+B3)+25(C1+C2+C3)。
原油加工成汽油的总费用:P=4(A1+A2+A3+ B1+B2+B3+ C1+C2+C3)。
约束条件:
1. 由题知每天至多能加工汽油14,000桶,故:
第 19 页 共 46 页
A1+A2+A3+B1+B2+B3+ C1+C2+C3<=14000。 2. 规定每天每种原油最多买入5000桶,故: A1+A2+A3<=5000; B1+B2+B3<=5000; C1+C2+C3<=5000。
3. 关于需求量分为两种情况:(1)产量大于需求量;(2)产量等于需求量。 对于第一
种情况,约束条件为:
A1+B1+C1>3000; A2+B2+C2>2000; A3+B3+C3>1000。
对于第二种情况,约束条件为: A1+B1+C1=3000; A2+B2+C2=2000; A3+B3+C3=1000。
4. 生产出三种汽油对辛烷值有如下要求: 12A1+6B1+8C1>=10(A1+B1+C1); 12A2+6B2+8C2>=8(A2+B2+C2); 12A3+6B3+8C3>=10(A3+B3+C3)。
5. 生产出三种汽油对硫含量有如下要求: 0.5A1+2B1+3C1<=A1+B1+C1; 0.5A2+2B2+3C2<= A2+B2+C2; 0.5A3+2B3+3C3<= A3+B3+C3。
目标函数:未投入广告前的最大利润=卖出汽油获得的总收入-买入原油需要的总费
用-原油加工成汽油的总费用;
即f(x)=M-N-P=70(A1+B1+C1)+60(A2+B2+C2)+50(A3+B3+C3)-45(A1+A2+A3)
+35(B1+B2+B3)+25(C1+C2+C3)-4(A1+A2+A3+ B1+B2+B3+ C1+C2+C3)= 21A1+11A2+A3+ 31B1+21B2+11B3+ 41C1+31C2+21C3
☉用lingo对模型求解,结果如下:
(1)投入广告前产量大于需求量时的最大利润为:142500。
此时每天的生产计划为:由A类原油加工成甲、乙、丙三种汽油的量为3000、1333、
666;由B类原油加工成甲、乙、丙三种汽油的量为:1500、667、333;不由C类原油加工成甲、乙、丙三种汽油。
(2)投入广告前产量等于需求量时的最大利润为:110000。
此时每天的生产计划为:由A类原油加工成甲、乙、丙三种汽油的量为2400、1600、
800;不由B类原油加工成甲、乙、丙三种汽油;由C类原油加工成甲、乙、丙三种汽油的量为600、400、200。
(2)投入广告后
投入的总的广告费:Q=X1+X2+X3。 此时约束条件3发生改变:
产量大于需求量时的约束条件为: A1+B1+C1>3000+10X1; A2+B2+C2>2000+10X2; A3+B3+C3>1000+10X3。
产量等于需求量时的约束条件为: A1+B1+C1=3000+10X1; A2+B2+C2=2000+10X2; A3+B3+C3=1000+10X3。
目标函数:投入广告后的最大利润=卖出汽油获得的总收入-买入原油需要的总费用
-原油加工成汽油的总费用-投入的总的广告费;
即F(x)=M-N-P-Q=70(A1+B1+C1)+60(A2+B2+C2)+50(A3+B3+C3)-45
(A1+A2+A3)+35(B1+B2+B3)+25(C1+C2+C3)-4(A1+A2+A3+ B1+B2+B3+ C1+C2+C3)
第 20 页 共 46 页