eA运筹学课程设计 题目是《某种生产原料需经过开采和初步加工两个阶段后才能使用》.docx
《eA运筹学课程设计 题目是《某种生产原料需经过开采和初步加工两个阶段后才能使用》.docx》由会员分享,可在线阅读,更多相关《eA运筹学课程设计 题目是《某种生产原料需经过开采和初步加工两个阶段后才能使用》.docx(18页珍藏版)》请在冰点文库上搜索。
eA运筹学课程设计题目是《某种生产原料需经过开采和初步加工两个阶段后才能使用》
工业大学
课程设计报告
课程设计名称:
运筹学课程设计
专业:
班级:
学生姓名:
指导教师:
2009年6月25日
组 别:
第三组
设计人员:
设计时间:
2009年6月15日---2009年6月26日
一、设计进度安排
本课程设计时间分为两周:
第一周(2009年6月15日----2009年6月26日):
建模阶段。
此阶段各小组根据给出的题目完成模型的建立。
主要环节包括:
(1)6月15日上午:
发指导书;按组布置设计题目;说明进度安排。
(2)6月15日下午至17日:
各小组审题,查阅资料,进行建模前的必要准备(包括求解程序的编写与查找)。
(3)6月18日至19日:
各个小组进行建模,并根据题目及设计要求拟定设计提纲,指导教师审阅;同时阅读,理解求解程序,为上机求解做好准备。
第二周(2009年6月22日---6月26日):
上机求解,结果分析及答辩。
主要环节包括:
(1)6月22日至6月24日:
上机调试程序
(2)6月24日:
完成计算机求解与结果分析。
(3)6月25日:
撰写设计报告。
(4)6月26日:
设计答辩及成绩评定。
二、设计过程
1.设计题目:
第十题、某种生产原料需经过开采和初步加工两个阶段后才能使用。
已知原料开采在A1、A2、A3三个矿区进行,原料的初步加工在五B1、B2、B3、B4、B5个企业进行,加工后的原料供给U1、U2、U3、U4、U5、U6、U7、U8八个用户使用;各矿区到各加工企业的运输费用资料见表18;各加工企业向个用户运输单位量原料的运输费见表19;初步加工企业B1、B2、B3、B4、B5的最大加工能力分别为24、18、18、6、18单位;用户U1、U2、U3、U4、U5、U6、U7、U8的原料需求量分别为12、15、10、6、3、2、7、20单位。
试确定从原料开采到产品使用的最佳生产计划。
并按要求分别完成下列分心:
(1)A2矿区的开采量在何范围内变化时最优基不变?
(2)B3加工企业的最大加工能力在何范围内变化时最优基不变?
(3)用户U4的原料需求量在何范围内变化时最优基不变?
(4)A1矿区到B5加工企业的单位运费在何范围内变化时最优生产计划不变?
表18
加
工
企
业
矿
区
B1
B2
B3
B4
B5
开采量
A1
13.5
12.0
16.0
14.0
15.5
10
A2
12.0
14.0
14.5
14.5
14.0
50
A3
16.0
—
12.0
14.0
13.0
30
表19
用
户
加
工
企
业
U1
U2
U3
U4
U5
U6
U7
U8
生产
限量
B1
0.15
1.00
1.60
1.30
0.75
0.16
2.81
3.85
24
B2
0.77
1.75
2.20
3.00
1.35
0.75
3.58
4.45
18
B3
—
0.75
—
2.33
2.00
2.40
2.51
3.50
18
B4
—
—
—
1.60
—
—
0.25
1.60
6
B5
—
—
—
2.50
—
—
4.00
0.10
18
2、建立模型及数据准备
(1)建立模型
设Xij表示第i个矿区运送到第j个加工企业的物资量i=1,2,3;j=1,2,3,4,5.
X11+X12+X13+X14+X15≤10第一个矿区运到五个加工企业的物资量
X21+X22+X23+X24+X25≤50第二个矿区运到五个加工企业的物资量
X31+X33+X34+X35≤30第三个矿区运到五个加工企业的物资量
设Yjk表示第j个加工厂到第k个使用点运输的物资量,j=1,2,3,4,5;
K=1,2,3,4,5,6,7,8.
Y11+Y21=12第1个使用点所接收五个加工企业的物资量
Y12+Y22+Y32=15第2个使用点所接收五个加工企业的物资量
Y13+Y23=10第3个使用点所接收五个加工企业的物资量
Y14+Y21+Y34+Y44+Y54=6第4个使用点所接收五个加工企业的物资量
Y15+Y25+Y35=3第5个使用点所接收五个加工企业的物资量
Y16+Y26+Y36=2第6个使用点所接收五个加工企业的物资量
Y17+Y27+Y37+Y47+Y57=7第7个使用点所接收五个加工企业的物资量
Y18+Y28+Y38+Y48+Y58=20第8个使用点所接收五个加工企业的物资量
Y11+Y12+Y13+Y14+Y15+Y16+Y17+Y18≤24第1、2、3、4、5个加工企业的总加工量之和
Y21+Y21+Y23+Y24+Y25+Y26+Y27+Y28≤18小于最大加工能力
Y32+Y34+Y35+Y36+Y37+Y38≤18
Y44+Y47+Y48≤6
Y54+Y57+Y58≤18
X11+X21+X31-Y11-Y12-Y13-Y14-Y15-Y16-Y17-Y18=0
X12+X22-Y21-Y22Y23-Y24-Y25-Y26-Y27-Y28=0矿区的生产物资量等于加工企业加工的
X13+X23+X33-Y32-Y34-Y35-Y36-Y37-Y38=0物资量
X14+X24+X34-Y44-Y47-Y48=0
X15+X25+X35-Y54-Y57-Y58=0
(2)数据准备
对于计算结果我们将上机实现,我们将在所编程序中输入并计算出结果,所以我们在上机前作如下的数据准备:
min
13.5x11+12.0x12+16.0x13+14.0x14+15.5x15+12.0x21+14.0x22+14.5x23+14.5x24+14.0x25+16.0x31+12.0x33+14.0x34+13.0x35+0.15y11+1.00y12+1.60y13+1.30y14+0.75y15+0.16y16+2.18y17+3.85y18+0.77y21+1.75y22+2.20y23+3.00y24+1.35y25+0.75y26+3.58y27+4.45y28+0.75y32+2.33y34+2.00y35+2.40y36+2.51y37+3.50y38+1.60y44+0.25y47+1.60y48+2.50y54+4.00y57+0.10y58
ST
x11+x12+x13+x14+x15<=10
x21+x22+x23+x24+x25<=50
x31+x33+x34+x35<=30
y11+y21=12
y12+y22+y32=15
y13+y23=10
y14+y24+y34+y44+y54=6
y15+y25+y35=3
y16+y26+y36=2
y17+y27+y37+y47+y57=7
y18+y28+y38+y48+y58=20
x11+x21+x31-y11-y12-y13-y14-y15-y16-y17-y18=0
x12+x22-y21-y22-y23-y24-y25-y26-y27-y28=0
x13+x23+x33-y32-y34-y35-y36-y37-y38=0
x14+x24+x34-y44-y47-y48=0
x15+x25+x35-y54-y57-y58=0
x11+x21+x31<=24
x12+x22<=18
x13+x23+x33<=18
x14+x24+x34<=6
x15+x25+x35<=18
end
3、程序功能介绍
(1)总体介绍
LINDO是一种专门用于求解数学规划问题的软件包。
由于LINDO执行速度很快、易于方便输入、求解和分析数学规划问题。
因此在数学、科研和工业界得到广泛应用。
LINDO主要用于解线性规划、非线性规划、二次规划和整数规划等问题。
也可以用于一些非线性和线性方程组的求解以及代数方程求根等。
LINDO中包含了一种建模语言和许多常用的数学函数(包括大量概论函数),可供使用者建立规划问题时调用。
一般用LINDO(LinearInteractiveandDiscreteOptimizer)用于解决线性规划(LP—LinearProgramming)、整数规划(IP—IntegerProgramming)、非线性规划(NLP—NON—LINEARPROGRAMMING)和二次规则(QP—QUARATICPROGRAMING)问题。
其中LINGO6.0学生版最多可版最多达300个变量和150个约束的规则问题,其标准版的求解能力亦再10^4量级以上。
虽然LINDO不能直接求解目标规划问题,但用序贯式算法可分解成一个个LINDO能解决的规划问题。
对于在用LINDO6.0求解本题中,我们用到的是其中用于解决线性规划这部分的功能,下面就这部分我们作重点介绍。
(2)数据录入注意事项:
A.目标函数及各约束条件之间一定要有“Subjectto(ST)”分开。
B.变量名不能超过8个字符。
C.变量与其系数间可以有空格,单不能有任何运算符(如乘号“*”等)。
D.要输入<=或>=约束,相应以<或>代替即可。
E.一般LINDO中不能接受括号“()”和逗号“,”,例:
400(X1+X2)需写成400X1+400X2;10,000需写成10000。
F.表达式应当已经过简化。
不能出现2X1+3X2-4X1,而应写成-2X1+3X2。
(3)程序运行
若要运行并得出结果时,可以使用菜单“Solve”的“Solve”选项。
当您要判断表达式输入是否有错误时,也可以使用菜单“Reports”的“Picture”选项。
若想获得灵敏度分析,可用“Reports”的“Rang”选项。
若需显示单纯形表的最优表,可执行“Reports”的“Tablean”选项。
(4)数据分析
以本题为例:
“LPOPTIMUMFOUNDATSTEP11”表示LINDO在(用单纯形法)11次迭代或旋转后得到最优解。
“OBJECTIVEFUNCTIONVALUE1)95204.34”表示最优目标值为95204.34
“VALUE”给出最优解中各变量的值。
“SLACKORSURPLUS”给出松弛变量的值。
“REDUCECOST”列出最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时,目标函数的变化率,其中基变量的reducecost值应为0,对于非基变量Xj相应的reducecost值表示Xj增加一个单位(此时假定其他非基变量保持不变)时目标函数减小的量(max型问题)。
“DUALPRICE”(对偶价格)列出最优单纯形表中判别数所在行的松弛变量的系数,表示当对应约束有微小变动时,目标函数的变化率,输出结果中对应每一个约束有一个对偶价格。
若其数值为X,表示对应约束中不等式右端项若增加一个单位,目标函数将增加X个单位(max型问题)。
当REDUCECOST或DUALPRICE 的值为0。
表示当微小扰动不影响目标函数。
有时,通过分析DUALPRICE,也可对产生不可行问题的原因有所了解。
(5)灵敏度分析:
如果做敏感度分析,则系统报告当目标函数的费用系数和约束右端项在什么范围变化(此时假定其他系数保持不变)时,最优基保持不变。
即报告中的“OBJCOEFFICIENTRANGES”,其中INFINITY表示正无穷,在本题中:
目标函数中X12的变量系数为4.93,当它在[4.93-2.33,∞]=[2.6,∞]内变化时,最优基保持不变。
报告中的“RIGHTHANDSIDERANGES”反映在本题中即:
第一个约束条件右端常数项为800,当它在[412.5,737.5]范围内变化时最优基不变。
三、结果分析
1.问题分析
通过对题目的正确理解和分析,依据题意可以得到一个最小运费模型,以这个模型为基础可以快速的求解出各个矿区、加工企业和用户的最优运输计划方案;然后通过灵敏度分析来确定当开采量、加工量和用户需求量及单位运费在什么范围内变化时,其最优生产安排不变,从而作出正确的最优生产计划。
2.计算机的求解结果
(1)运行结果
LPOPTIMUMFOUNDATSTEP22(表示lindo在22次迭代或旋转后得到最优解。
)
OBJECTIVEFUNCTIONVALUE(给出目标函数的最优值)
995.8800(目标函数的最优值为995.8800)
VARIABLE(变量)VALUE(变量值)REDUCEDCOST(检验数所在行变量系数)
X110.0000002.000000
X1210.0000000.000000
X130.0000003.500000
X140.0000000.000000
X150.0000002.000000
X2124.0000000.000000
X220.0000001.500000
X230.0000001.500000
X246.0000000.000000
X255.0000000.000000
X310.0000005.000000
X3317.0000000.000000
X340.0000000.500000
X3513.0000000.000000
Y1112.0000000.000000
Y120.0000000.350000
Y132.0000000.000000
Y146.0000000.000000
Y153.0000000.000000
Y160.0000000.010000
Y171.0000000.000000
Y180.0000000.450000
Y210.0000000.020000
Y220.0000000.500000
Y238.0000000.000000
Y240.0000001.100000
Y250.0000000.000000
Y262.0000000.000000
Y270.0000000.800000
Y280.0000000.450000
Y3215.0000000.000000
Y340.0000000.930000
Y350.0000001.150000
Y360.0000002.150000
Y370.0000000.230000
Y382.0000000.000000
Y440.0000002.230000
Y476.0000000.000000
Y480.0000000.130000
Y540.0000004.500000
Y570.0000005.120000
Y5818.0000000.000000
LACKORSURPLUS:
给出松弛变量的值。
DUALPRICE(对偶价格)列出最优单纯形表中判别数所在行的松弛变量的系数
ROWSLACKORSURPLUSDUALPRICES
2)0.0000000.500000
3)15.0000000.000000
4)0.0000001.000000
5)0.000000-13.250000
6)0.000000-13.750000
7)0.000000-14.700000
8)0.000000-14.400000
9)0.000000-13.850000
10)0.000000-13.250000
11)0.000000-15.280000
12)0.000000-16.500000
13)0.000000-13.100000
14)0.000000-12.500000
15)0.000000-13.000000
16)0.000000-15.030000
17)0.000000-16.400000
18)0.0000001.100000
19)8.0000000.000000
20)1.0000000.000000
21)0.0000000.530000
22)0.0000002.400000
NO.ITERATIONS=22
RANGESINWHICHTHEBASISISUNCHANGED:
当目标函数的变量系数在
什么变化范围内时,最优基不变。
CURRENTCOEF:
初始目标函数的系数。
ALLOWABLEINCREASE:
允许变量系数增加的范围。
ALLOWABLEDECREASE:
允许变量系数减少的范围。
当目标函数的系数C在[初始目标函数的系数-允许变量系数减少的范围,初始目函数的系数+允许变量系数增加的范围]内变化时,最优基不变,最优解也不变,由于目标函数的系数发上改变了,所以最优值有可能改变。
如:
目标函数中X11的变量系数为13.5,当它在[13.5-2.00,∞]=[11.5,∞]内变化时,最优基保持不变。
OBJCOEFFICIENTRANGES
VARIABLECURRENTALLOWABLEALLOWABLE
COEFINCREASEDECREASE
X1113.500000INFINITY2.000000
X1212.0000000.2300000.130000
X1316.000000INFINITY3.500000
X1414.0000000.1300000.230000
X1515.500000INFINITY2.000000
X2112.0000001.100000INFINITY
X2214.000000INFINITY1.500000
X2314.500000INFINITY1.500000
X2414.5000000.2300000.130000
X2514.0000000.1300000.230000
X3116.000000INFINITY5.000000
X3312.0000000.1300000.230000
X3414.000000INFINITY0.500000
X3513.0000000.2300000.130000
Y110.1500000.020000INFINITY
Y121.000000INFINITY0.350000
Y131.6000000.0100000.000000
Y141.3000000.930000INFINITY
Y150.7500000.000000INFINITY
Y160.160000INFINITY0.010000
Y172.1800000.2300000.130000
Y183.850000INFINITY0.450000
Y210.770000INFINITY0.020000
Y221.750000INFINITY0.500000
Y232.2000000.0000000.010000
Y243.000000INFINITY1.100000
Y251.350000INFINITY0.000000
Y260.7500000.010000INFINITY
Y273.580000INFINITY0.800000
Y284.450000INFINITY0.450000
Y320.7500000.350000INFINITY
Y342.330000INFINITY0.930000
Y352.000000INFINITY1.150000
Y362.400000INFINITY2.150000
Y372.510000INFINITY0.230000
Y383.5000000.1300002.400000
Y441.600000INFINITY2.230000
Y470.2500000.130000INFINITY
Y481.600000INFINITY0.130000
Y542.500000INFINITY4.500000
Y574.000000INFINITY5.120000
Y580.1000002.400000INFINITY
约束条件右端项在什么范围内变化时,最优基不变:
CURRENTRHS:
初始约束条件右端项的值;
ALLOWABLEINCREASE:
允许b值增加的范围
ALLOWABLEDECREASE:
允许b值减少的范围
当约束条件右端项的值在[初始约束条件右端项的值-允许b值减少的范围,初始约束条件右端项的值+允许b值增加的范围]内变化时最优基不变,最优解不变,最优值也可能不变。
如b3在[50-15,∞]=[35,∞]范围内变化时最优基不变,最优生产安排也不变。
RIGHTHANDSIDERANGES
ROWCURRENTALLOWABLEALLOWABLE
RHSINCREASEDECREASE
210.0000006.0000000.000000
350.000000INFINITY15.000000
430.0000005.00000013.000000
512.0000000.0000006.000000
615.0000001.0000005.000000
710.0000000.0000006.000000
86.0000000.0000006.000000
93.0000000.0000003.000000
102.0000000.0000002.000000
117.0000000.0000001.000000
1220.0000001.0000002.000000
130.0000000.0000006.000000
140.0000000.0000006.000000
150.0000001.0000005.000000
160.0000000.0000001.000000
170.0000001.0000002.000000
1824.0000006.0000000.000000
1918.000000INFINITY8.000000
2018.000000INFINITY1.000000
216.0000001.0000000.000000
2218.0000002.0000001.000000
⑤最优值如下:
最优基值:
X12=10,X21=2