数学建模线性规划和整数规划实验.docx
《数学建模线性规划和整数规划实验.docx》由会员分享,可在线阅读,更多相关《数学建模线性规划和整数规划实验.docx(22页珍藏版)》请在冰豆网上搜索。
数学建模线性规划和整数规划实验
1、线性规划和整数规划实验
1、加工奶制品的生产计划
(1)一奶制品加工厂用牛奶生产A1,A2两种奶制品,1桶牛奶可以在甲车
间用12小时加工成3千克A1产品,或者在乙车间用8小时加工成4千克A2
产品.根据市场需求,生产的A1、A2产品全部能售出,且每千克A1产品获利
24元,每千克A2产品获利16元.现在加工厂每天能得到50桶牛奶的供应,
每天正式工人总的劳动时间为480小时,并且甲车间的设备每天至多能加工100
千克A1产品,乙车间的设备的加工能力可以认为没有上限限制.试为该厂制订
一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:
(i)若用35元可以买到1桶牛奶,是否应作这项投资?
若投资,每天最多购买多少桶牛奶?
(ii)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元?
(iii)由于市场需求变化,每千克A1产品的获利增加到30元,是否应改变生产计划?
(2)进一步,为增加工厂获利,开发奶制品深加工技术.用2小时和3元加
工费,可将1千克A1加工成0.8千克高级奶制品B1,也可将1千克A2加工成
0.75千克高级奶制品B2,每千克B1可获44元,每千克B2可获32元.试为该
厂制订一个生产销售计划,使每天获利最大,并进一步讨论以下问题:
(i)若投资30元可增加供应1桶牛奶,投资3元可增加1小时劳动时间,
是否应作这项投资?
若每天投资150元,或赚回多少?
(ii)每千克高级奶制品B1,B2的获利经常有10%的波动,对制订的生产销售计划有无影响?
若每千克B1的获利下降10%,计划是否应作调整?
解:
由已知可得1桶牛奶,在甲车间经过十二小时加工完成可生产3千克的A1,利润为72元;在乙车间经八小时加工完成可生产四千克的A2,利润为64元。
利用lingo软件,编写如下程序:
model:
max=24*3*x1+16*4*x2;
s.t.
12*x1+8*x2≤480;
x1+x2≤50;
3*x1≤100;
X1≥0,x2≥0
end
求解结果及灵敏度分析为:
Objectivevalue:
3360.000
Totalsolveriterations:
2
VariableValueReducedCost
X120.000000.000000
X230.000000.000000
RowSlackorSurplusDualPrice
13360.0001.000000
20.0000002.000000
30.00000048.00000
440.000000.000000
ObjectiveCoefficientRanges
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
X172.0000024.000008.000000
X264.000008.00000016.00000
RighthandSideRanges
RowCurrentAllowableAllowable
RHSIncreaseDecrease
2480.000053.3333380.00000
350.0000010.000006.666667
4100.0000INFINITY40.00000
分析结果:
1)从结果可以看出在供应甲车间20桶、乙车间30桶的条件下,获利可以达到最大3360元。
ⅰ)从计算结果可以看出,多增加一桶可以获利48元,大于35元,因此可以做此项投资,在结果显示中,修改相关参数,可得还可以再购买10桶。
ⅱ)从结果中可以看出,增加一小时劳动时间可以增加利润两元,因此,若聘用临时工人以增加劳动时间,工人每小时的工资应不超过2元钱。
ⅱⅰ)从程序的运行结果看,A产品系数变化范围为64到96,当A1产品获利增加到30元时,系数变化为30*3=90<96,因此,不用改变生产计划。
2)由题意可知,对产品做进一步的深加工,设用以生产A1的为A1桶,A2的为A2桶,其中加工成B1B2的千克数位x和y千克,编写如下程序:
max=72*A1+64*A2+8.2*X+5*Y;
A1+A2<=50;
12*A1+8*A2+2*X+2*Y<=480;
3*A1<=100;
3*A1-X>=0;
3*A2-Y>=0;
运行以上程序,得到如下结果:
Globaloptimalsolutionfound.
Objectivevalue:
3460.800
Totalsolveriterations:
3
VariableValueReducedCost
A18.0000000.000000
A242.000000.000000
X24.000000.000000
Y0.0000001.520000
RowSlackorSurplusDualPrice
13460.8001.000000
20.00000037.92000
30.0000003.260000
476.000000.000000
50.000000-1.680000
6126.00000.000000
从上面的结果可以看出,50桶牛奶中,8桶用于生产产品A1,42桶用于生产产品A2,且其中用以加工B1产品的A1为24千克,而A2不需要,可获得的最大利润为3460.8元。
ⅰ)从结果可以看出,每增加一桶牛奶可赚钱37.92元大于30,每增加一小时可赚钱3.26元大于3,因此应做此项投资。
若投入150元,可买5桶,所得利润分别为:
39.6和13元。
ⅱ)从灵敏度分析可知,B1和B2获利10%的波动对生产销售计划没有影响,而B1获利减少10%对生产销售计划有影响。
2、下料问题
用长度为500厘米的条材,截成长度分别为98厘米和78厘米二种毛坯,
要求共截出长98厘米的毛坯10000根,78厘米的20000根,问怎样截法,
(1)使得所用的原料最少?
(2)使得所剩余的边料最少?
试分析两种问题的答案是否相同.
解:
由已知可得现有500厘米的条材,要截出98厘米和78厘米两种不同的长度的条材,可选择的模式如下表所示:
选择模式
98厘米条材根数
78厘米条材根数
余料/厘米
1
5
0
10
2
4
1
30
3
3
2
50
4
2
3
70
5
1
5
12
6
0
6
32
(1)欲使所用原料最少,建立如下数学模型,其中xi为采用第i中模式的切割根数:
min=x1+x2+x3+x4+x5+x6;
5*x1+4*x2+3*x3+2*x4+x5>=10000;
x2+2*x3+3*x4+5*x5+6*x6>=20000;
运行结果如下:
Globaloptimalsolutionfound.
Objectivevalue:
5200.000
Totalsolveriterations:
2
VariableValueReducedCost
X11200.0000.000000
X20.0000000.4000000E-01
X30.0000000.8000000E-01
X40.0000000.1200000
X54000.0000.000000
X60.0000000.4000000E-01
RowSlackorSurplusDualPrice
15200.000-1.000000
20.000000-0.2000000
30.000000-0.1600000
从运行结果可以看出,欲使所用原料最少,应采用第一种模式的截法1200根,第五种模式的截法4000根,做简单计算可得余料为60000cm。
(2)欲使剩余的边料最少,建立如下数学模型,并运行相应程序:
min=10*x1+30*x2+50*x3+70*x4+12*x5+32*x6;
5*x1+4*x2+3*x3+2*x4+x5>=10000;
x2+2*x3+3*x4+5*x5+6*x6>=20000;
运行程序,结果如下:
Globaloptimalsolutionfound.
Objectivevalue:
60000.00
Totalsolveriterations:
2
VariableValueReducedCost
X11200.0000.000000
X20.00000020.00000
X30.00000040.00000
X40.00000060.00000
X54000.0000.000000
X60.00000020.00000
RowSlackorSurplusDualPrice
160000.00-1.000000
20.000000-2.000000
30.000000-2.000000
从运行结果可以看出,最少边料依旧是60000cm,采用第一种模式裁1200根,采用第5中模式裁4000根,这与欲使使用原料最少的结果是一致的。
3、投资问题
假设投资者有如下四个投资的机会.
(A)在三年内,投资人应在每年的年初投资,每年每元投资可获利息0.2元,每年取息后可重新将本息投入生息.
(B)在三年内,投资人应在第一年年初投资,每两年每元投资可获利息0.5元.两年后取息,可重新将本息投入生息.这种投资最多不得超过20万元.
(C)在三年内,投资人应在第二年年初投资,两年后每元可获利息0.6元,这种投资最多不得超过15万元.
(D)在三年内,投资人应在第三年年初投资,一年内每元可获利息0.4元,这种投资不得超过10万元.假定在这三年为一期的投资中,每期的开始有30万元的资金可供投资,投资人应怎样决定投资计划,才能在第三年底获得最高的收益.
解:
用xiA,xiB,xiC,xiD(i=1,2,3)表示第i年初给项目A,B,C,D的投资金额,则
max1.2x3A+1.6x2C+1.4x3D
s.t.x1A+x1B=30
1.2x1A=x2A+x2C
x3B+x3A+x3D=1.2x2A+1.5x1B
x1B≤20
x2C≤15
x3D≤10
程序如下:
MODEL:
1]max=1.2*X3a+1.6*X2c+1.4*X3d;
2]X1a+X1b=30;
3]X2a+X2c-1.2*X1a=0;
4]X3b+X3a+X3d-1.2*X2a-1.5*X1b=0;
5]@bnd(0,X1b,20);
6]@bnd(0,X2c,15);
7]@bnd(0,X3d,10);
END
运行结果如下:
Globaloptimalsolutionfoundatiteration:
4
Objectivevalue:
57.50000
VariableValueReducedCost
X3A16.250000.000000
X2C15.00000-0.1000000
X3D10.00000-0.2000000
X1A12.500000.000000
X1B17.500000.000000
X2A0.0000000.6000000E-01
X3B0.