最优化实验一.docx
《最优化实验一.docx》由会员分享,可在线阅读,更多相关《最优化实验一.docx(14页珍藏版)》请在冰豆网上搜索。
最优化实验一
桂林电子科技大学
数学与计算科学学院实验报告
实验室:
实验日期:
2010年12月4日
院(系)
数学与计算科学学院
年级、专业、班
0800730127
姓名
王启勇
成绩
课程
名称
最优化
实验项目
名称
线性规划算法及实现
指导
教师
李丰兵
一实验目的
1.掌握单纯形法在计算机上的实现,熟悉单纯形法的求解步骤。
2.掌握目标函数系数和约束右端项在什么范围内变化时,最优基保持不变。
3.读懂Lingo灵敏度分析报告和求解报告。
4.培养编程与上机调试能力。
二使用仪器,材料
三实验内容与结果
1、用lingo软件或Matlab软件优化工具箱求解下列线性规划问题。
(必做,任选三个问题)
Lingo程序与运行结果:
最优解为:
x=(2,0,1,0);最优函数值为:
-8。
Lingo程序与运行结果:
最优解为:
x=(1,0,0);函数最优解为:
2。
Lingo程序与运行结果为:
实例1某工厂生产甲、乙两种产品。
已知生产甲种产品
需耗
种矿石
、
种矿石
、煤
;生产乙种产品
需耗
种矿石
、
种矿石
、煤
。
每
甲种产品的利润是
元,每
乙种产品的利润是
元。
工厂在生产这两种产品的计划中要求消耗
种矿石不超过
、
种矿石不超过
、煤不超过
。
甲、乙两种产品应各生产多少,能使利润总额达到最大?
化为数学线性规划模型为:
Lingo程序与运行结果为:
甲、乙两种产品应各生产12.41379t、34.48276t,能使利润总额达到最大,最大利润为:
41931.03。
实例2 设有A1,A2两个香蕉基地,产量分别为60吨和80吨,联合供应B1,B2,B3三个销地的销售量经预测分别为50吨、50吨和40吨。
两个产地到三个销地的单位运价如下表所示:
表1(单位运费:
元/吨)
问每个产地向每个销地各发货多少,才能使总的运费最少?
化为数学线性规划模型:
Lingo程序与运行结果为:
A1到B2发货50t,A1到B3发货10t,A2到B1发货50t,A2到B3发货30t,才能使总的运费最少,最少值为48000。
2、用Lingo软件对下列线性规划问题进行灵敏度分析。
(必做,任选三个问题)
Lingo程序与运行结果为:
Lingo程序如下:
model:
min=-3*x1+3*x2+x3;
x1-2*x2+x3<=5;
2*x1-x2+3*x3<=16;
x1+x2<=12;
End
求解报告如下:
灵敏度分析报告如下:
Lingo程序如下:
model:
max=2*x1+x2;
x1+x2+x3=5;
-x1+x2+x4=0;
6*x1+2*x2+x5=21;
End
求解报告如下:
灵敏度报告如下:
Lingo程序如下:
model:
max=30*x1+35*x2+40*x3+45*x4;
3*x1+4*x2+6*x3+4*x4<=70;
4*x1+3*x2+6*x3+5*x4<=80;
End
求解报告如下:
灵敏度分析报告如下:
3某工厂用甲,乙两种原料生产A,B,C,D四种产品,每种产品的利润、现有原料数量及每种产品消耗原料定额如下表:
每万件产品所耗原料(千克)
A
B
C
D
现有原料(千克)
甲
3
2
10
4
18
乙
0
0
2
2.5
3
每万件产品利润(万元)
9
8
50
19
问题:
(1)怎样组织生产才能使总利润最大?
化为数学线性规划模型为:
用Lingo求解如下:
Globaloptimalsolutionfoundatiteration:
2
Objectivevalue:
87.00000
VariableValueReducedCost
A0.0000003.000000
B1.5000000.000000
C1.5000000.000000
D0.0000009.500000
RowSlackorSurplusDualPrice
187.000001.000000
20.0000004.000000
30.0000005.000000
分别生产A、B、C、D四种产品的数量为0、1.5、1.5、0,才能使总利润最大,最大值为:
87
(2)如果产品A的利润有波动,波动范围应限制在什么范围内,才能使得原生产计划不变?
灵敏度分析报告为:
Rangesinwhichthebasisisunchanged:
ObjectiveCoefficientRanges
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
A9.0000003.000000INFINITY
B8.0000002.0000002.000000
C50.00000INFINITY7.600000
D19.000009.500000INFINITY
RighthandSideRanges
RowCurrentAllowableAllowable
RHSIncreaseDecrease
218.00000INFINITY3.000000
33.0000000.60000003.000000
所以产品A的利润波动范围应限制在
范围内,才能使得原生产计划不变
(3)若原料甲的数量发生变化,在什么范围内变化时才能使得原生产计划不变?
灵敏度分析报告为:
Rangesinwhichthebasisisunchanged:
ObjectiveCoefficientRanges
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
A9.0000003.000000INFINITY
B8.0000002.0000002.000000
C50.00000INFINITY7.600000
D19.000009.500000INFINITY
RighthandSideRanges
RowCurrentAllowableAllowable
RHSIncreaseDecrease
218.00000INFINITY3.000000
33.0000000.60000003.000000
所以原料甲的数量在
变化才能使得原生产计划不变
(4)若工厂引进新产品E,已知生产1万件E消耗原料甲3千克,材料乙1千克,问E的利润为多少时候(即,应满足什么条件),投资才有利?
LINGO分析如下:
model:
max=9*a+8*b+50*c+19*d+e;
3*a+2*b+10*c+4*d+3*e<18;
2*c+2.5*d+e<3;
End
灵敏度分析如下:
Rangesinwhichthebasisisunchanged:
ObjectiveCoefficientRanges
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
A9.0000003.000000INFINITY
B8.0000002.0000002.000000
C50.00000INFINITY7.600000
D19.000009.500000INFINITY
E1.00000016.00000INFINITY
RighthandSideRanges
RowCurrentAllowableAllowable
RHSIncreaseDecrease
218.00000INFINITY3.000000
33.0000000.60000003.000000
所以E的利润为
时投入则有利
要求:
建立相应的数学模型,用Lingo进行分析。
4、用Matlab软件编写求解一类线性规划问题的程序,算法自选。
三实验体会心得
通过这次实验学会了如何运用数学软件学习最优化的解题!