资源描述
课 程 设 计 报 告
课程设计名称 运筹课程设计
专 业 电子商务
班 级 130511班
学 生 姓 名 雷涵博第四组
指 导 教 师 王亚君
6月24日
课 程 设 计 任 务 书
课程设计题目:
第 二十八 题
起止日期: .6.13~.6.24
设计地点: 教室、 电子商务中心
设计任务及日程安排:
1、 设计任务
1.1经过课程设计能够增强学生处理实际运筹学问题能力
1.2经过课程设计能够使学生巩固、 拓展和深化所学基础理论、 专业理论和知识。
1.3经过课程设计能够使学生初步掌握用运筹学方法处理实际问题过程和技巧, 树立理论联络实际工作作风。
1.4经过课程设计能够使学生初步建立正确设计思想和方法, 深入提升运算、 计算机应用技能和综合分析、 处理问题能力。
2、 设计进度安排
本课程设计时间分为两周:
第一周(6月13日----6月17日): 建模阶段。此阶段各小组依据给出题目完成模型建立。关键步骤包含 :
1.1 6月13日早晨: 发指导书; 按组部署设计题目; 说明进度安排。
1.2 6月13日下午至6月15日: 各小组审题, 查阅资料, 进行建模前必需准备(包含求解程序编写与查找)。
1.3 6月16日至6月17日: 各个小组进行建模, 并依据题目及设计要求确定设计提要, 指导老师审阅; 同时阅读, 了解求解程序, 为上机求解做好准备。
第二周(6月20日---6月24日): 上机求解, 结果分析及答辩。关键步骤包含
1.1 6月20日至6月21日: 上机调试程序
1.2 6月22日: 完成计算机求解与结果分析。
1.3 6月23日: 撰写设计汇报。
1.4 6月24日: 设计答辩及成绩评定。
运筹学课程设计汇报
组 别: 第四组
题 号: 28题
设计人员: 黄灵洁 黄晓娜 雷涵博
设计时间: 6月13日至6月24日
1.设计进度计划
第一周(6月13日----6月17日): 建模阶段。此阶段各小组依据给出题目完成模型建立。关键步骤包含 :
1.1 6月13日早晨: 发指导书; 按组部署设计题目; 说明进度安排。
1.2 6月13日下午至6月15日: 各小组审题, 查阅资料, 进行建模前必需准备(包含求解程序编写与查找)。
1.3 6月16日至6月17日: 各个小组进行建模, 并依据题目及设计要求确定设计提要, 指导老师审阅; 同时阅读, 了解求解程序, 为上机求解做好准备。
第二周(6月20日---6月24日): 上机求解, 结果分析及答辩。关键步骤包含
1.1 6月20日至6月21日: 上机调试程序
1.2 6月22日: 完成计算机求解与结果分析。
1.3 6月23日: 撰写设计汇报。
1.4 6月24日: 设计答辩及成绩评定。
2.设计题目
二十八、 某企业和用户签署了设备交货协议, 已知该企业各季度生产能力、 每台设备生产成本和每季度末交货量(见下表), 若生产出设备当季度不交货, 每台设备每季度需支付保管维护费0.2万元, 试问在遵守协议条件下, 企业应怎样安排生产计划, 才能使年消花费用最低?并按要求分别完成下列分析:
(1)2季度每台设备生产成本在何范围内改变时最有生产计划不变?
(2)每台设备每季度需支付保管维护费在何范围内改变时最优生产计划不变?
(3)1季度生产能力在何范围改变内改变时最优基不变?
(4)4季度交货量在何范围内改变时最优基不变?
季度
工厂生产能力
交货量
每台设备生产成本(万元)
1
25
15
12.0
2
35
20
11.0
3
30
25
11.5
4
20
20
12.5
3.建模
3.1 题目分析,变量设定
这个优化问题目标是使年消花费用最低, 所以此问题需要做是相关生产决议灵敏度分析问题, 其受到三个约束条件限制: 第1、 2、 3、 4季度工厂生产能力; 各个季度工厂交货量与要求交货量相等; 生产产品个数应该为非负整数。所以变量设定以下:
Z: 年消花费用
决议变量Xij: 表示第i季度生产第j季度交货设备数量
3.2 建模分析
目标函数分析: 第1季度生产消花费用+第2季度消花费用+第3季度消花费用+第3季度消花费用+第4季度消花费用
由生产能力所限列出下列式子:
第一季度生产能力所限: X11+X12+X13+X14≤25
第二季度生产能力所限: X22+X23+X24≤35
第三季度生产能力所限: X33+X34≤30
第四季度生产能力所限: X44≤20
得到前四个约束变量
由交货量所限列出下列式子:
第一季度交货量: X11=15
第二季度交货量: X12+X22=20
第三季度交货量: X13+X23+X33=25
第四季度交货量: X14+X24+X34+X44=20
得到后四个约束变量
第i季度生产第j季度交货每台设备所消花费用Cij应等于生产成本加上保管维护费用之和其值以下表
i
1
2
3
4
1
12.0
12.2
12.4
12.6
2
11.0
11.2
11.4
3
11.5
11.7
4
12.5
3.3 数学模型
用Ai表示该企业第i季度生产能力, Bj表示第j季度交货量, 则可将这一问题数学模型写成:
Min Z = 12.0X11 + 12.2X12 + 12.4X13 + 12.6X14 + 11.0X22 + 11.2X23 + 11.4X24 + 11.5X33 + 11.7X34 + 12.5X44
X11+X12+X13+X14≤25
X22+X23+X24≤35
X33+X34≤30
X44≤20
X11=15
X12+X22=20
X13+X23+X33=25
X14+X24+X34+X44=20
X11 ,X12 ,X13 ,X14 ,X22 ,X23 ,X24 ,X33 ,X34 ,X44≥0
4.程序
开始
4.1求解程序步骤图
依据题目设定变量X和约束条件, 方程组系数矩阵A、 约束条件常数项b值、 选择目标函数类型、 目标函数系数
化成标准形式: 调整目标函数为max Z’, 加入松弛变量、 剩下变量和人工变量, 结构人造基。
是否存在检验数所在列中有pj>0
依据人工变量结构辅助LP问题max w, 结构单纯形表进行迭代
否
是
否
是否全部检验数σj≥0
无解解
是
输出最优表和最优解、 最优值
进行比较选择, 确定主元和换入、 换出变量
换基迭代
无 解
W是否=0
是
否
人工变量所在行原始变量系数不全为零
是
是
人工变量所在行原始变量系数全为零
人工变量是否为基变量
否
以非零系数其中之一为主元进行换基迭代, 把人工变量变为非基变量
删去对应行
删去人工变量诸列, 用Z替换w, 用单纯形法求解
得出最优值Z
b发生改变,确定b 改变范围
重新计算CB-1b、 B-1b代入最优表中重新迭代。
。
C,b是否在改变范围之内
否
是
最优解(基)不变, 用CB-1b计算出现在最优值
得出最优值并与原最优值进行比较
结束
4.2求解程序功效介绍
Java是一个简单, 跨平台, 面向对象, 分布式, 解释, 健壮, 安全, 结构中立, 可移植, 性能很优异多线程, 动态语言。我们用java语言设计编辑了一个解题程序来解答这个问题, 利用eclipse环境运行, 我们首先程序要求输入目标函数类型以确定使用哪种程序处理目前问题, 然后函数要求输入约束条件个数和变量个数, 以用来确定所创建数组, 然后函数要求小于等于、 大于等于、 和等于条件个数, 一样用来创建数组和确定解题程序, 然后函数要求输入题系数矩阵, 函数统计下来用于解题, 当输入结束时函数会输出刚刚所录入系数矩阵, 方便让输入者确定所输入矩阵是否正确, 避免错误产生, 此时进行到程序最终一步, 函数要求输入目标函数系数, 输入者正确输入后函数就会运算然后输出结果
LINGO注意事项:
1. Lingo中不能省略乘号*以及结束符分号;
2.目标函数在Lingo写成 max=2*x+3*y;
3. Lingo中所用符号均必需是英文状态下, 使用汉字状态下这些符号, 运行会报错。
4. Lingo默认变量非负。
5. 即有约束条件X≥0,Yij≥0之类, 在Lingo中都能够省略不写。
6. 有需要变量取负值话, 能够用@free();函数, 令变量取全体实数。
7. Lingo中没有π这个常数。在要求不是那么正确话能够用 PI=3.1415926(取几位小数自行估量)。经过三角函数来得到正确π值, 如PI=@acos(-1);
8.Lingo中没有严格大或严格小概念(除集下标约束或条件判定中#gt#,#lt#)。
在Lingo中使用>(<)号跟使用>=(<=)效果是相同, 都是表示“大于等于”(小于等于)。
9 在合理情况下, 能够考虑附加一个极小值来达成严格小目, 比如X>5, 在Lingo中能够写成X>=5+0.000001;
10. 变量为某多个不连续数值之一, 比如x为0或3或7, 可表示为x*(x-3)*(x-7)=0;
4.3手工数据准备
Java程序录入界面:
Lingo录入界面:
5.结果分析
5.1结果分析思绪
5.1.1 2季度每台设备生产成本在何范围内改变时最优生产计划不变?
此问题为目标函数系数Ci改变范围处理:
假如改变系数为非基变量系数, 确定非基变量系数改变范围, 非基变量系数改变只影响本身检验数, 所以, 设Ci为非基变量Xi系数, 令它在目前最优表中检验数δi=CBB-1Pi-Ci≥0,当Ci发生了△Ci改变后, 要确保目前最优表中对应检验数仍大于或等于0, 即当△Ci<δi均满足时, 最优生产计划不变。
假如改变系数为基变量系数, 则要确定基变量系数改变范围, 基变量系数改变影响全部非基变量检验数和目标函数值。Ci改变范围在基变量Ci增量改变范围之内, 则其最优解、 最优值均不变, 即要求基变量系数满足一定条件, 即当
max{-δi/bri|bri>0}≤△Ci≤min{-δi/ bri|bri<0}, 其中δi取非基变量检验数, 此时, 最优生产计划不变。
5.1.2 每台设备每季度需支付保管维护费在何范围内改变时最优生产计划不变?
此问题为目标函数系数Ci改变范围处理:
假如改变系数为非基变量系数, 确定非基变量系数改变范围, 非基变量系数改变只影响本身检验数, 所以, 设Ci为非基变量Xi系数, 令它在目前最优表中检验数δi=CBB-1Pi-Ci≥0,当Ci发生了△Ci改变后, 要确保目前最优表中对应检验数仍大于或等于0, 即当△Ci<δi均满足时, 最优生产计划不变。
假如改变系数为基变量系数, 则要确定基变量系数改变范围, 基变量系数改变影响全部非基变量检验数和目标函数值。Ci改变范围在基变量Ci增量改变范围之内, 则其最优解、 最优值均不变, 即要求基变量系数满足一定条件, 即当
max{-δi/bri|bri>0}≤△Ci≤min{-δi/ bri|bri<0}, 其中δi取非基变量检验数, 此时, 最优生产计划不变。
5.1.3 1季度生产能力在何范围改变内改变时最优基不变?
此问题为约束条件常数项系数b改变范围处理:
依据公式max{-bi/βir|βir>0}≤△b≤min{-bi/βir|βir<0},确定b改变范围, 假如b改变在该范围之内最优基不变最优解改变, 最优解由公式XB=B-1b求得; 假如b改变超出该范围最优基最优解均发生改变, 重新计算CBB-1b、 B-1b代入最优表中重新迭代。
5.1.4 4季度交货量在何范围内改变时最优基不变?
此问题为约束条件常数项系数b改变范围处理:
依据公式max{-bi/βir|βir>0}≤△b≤min{-bi/βir|βir<0}, 确定b改变范围, 假如b改变在该范围之内最优基不变最优解改变, 最优解由公式XB=B-1b求得; 假如b改变超出该范围最优基最优解均发生改变, 重新计算CBB-1b、 B-1b代入最优表中重新迭代。
5.2求解结果
5.2.1java 截图
5.2.2lingo结果
Global optimal solution found.
Objective value: 917.0000
Infeasibilities: 0.000000
Total solver iterations: 4
Elapsed runtime seconds: 0.04
Model Class: LP
Total variables: 9
Nonlinear variables: 0
Integer variables: 0
Total constraints: 8
Nonlinear constraints: 0
Total nonzeros: 27
Nonlinear nonzeros: 0
Variable Value Reduced Cost
X11 15.00000 0.000000
X12 0.000000 0.9000000
X13 0.000000 0.9000000
X14 0.000000 0.9000000
X22 20.00000 0.000000
X23 15.00000 0.000000
X24 0.000000 0.000000
X33 10.00000 0.000000
X34 20.00000 0.000000
X44 0.000000 0.8000000
Row Slack or Surplus Dual Price
1 917.0000 -1.000000
2 10.00000 0.000000
3 0.000000 0.3000000
4 0.000000 0.000000
5 20.00000 0.000000
6 0.000000 -12.00000
7 0.000000 -11.30000
8 0.000000 -11.50000
9 0.000000 -11.70000
5.3灵敏度分析结果
Ranges in which the basis is unchanged:
Objective Coefficient Ranges:
Current Allowable Allowable
Variable Coefficient Increase Decrease
X12 12.0 INFINITY 0.9000000
X13 12.40000 INFINITY 0.9000000
X14 12.60000 INFINITY 0.9000000
X22 11.00000 0.9000000 INFINITY
X23 11.0 0.000000 0.9000000
X24 11.40000 INFINITY 0.000000
X33 11.50000 0.9000000 0.000000
X34 11.70000 0.000000 INFINITY
X44 12.50000 INFINITY 0.8000000
Righthand Side Ranges:
Current Allowable Allowable
Row RHS Increase Decrease
2 10.00000 INFINITY 10.00000
3 35.00000 10.00000 0.000000
4 30.00000 INFINITY 0.000000
5 20.00000 INFINITY 20.00000
7 20.00000 0.000000 10.00000
8 25.00000 0.000000 10.00000
9 20.00000 0.000000 20.00000
5.4结果分析
5.4.1 2季度每台设备生产成本在何范围内改变时最有生产计划不变?
即X22、 X23、 X24系数改变时最优生产计划不变时系数改变范围:
Variable Coefficient Increase Decrease
X22 11.00000 0.9000000 INFINITY
X23 11.0 0.000000 0.9000000
X24 11.40000 INFINITY 0.000000
由lingo灵敏度分析表得: 2季度每台设备生产成本在[11.2,11.4]范围内改变时最优生产计划不变。
5.4.2 每台设备每季度需支付保管维护费在何范围内改变时最优生产计划不变?
依据lingo灵敏度分析表
Variable Coefficient Increase Decrease
X12 12.0 INFINITY 0.9000000
X13 12.40000 INFINITY 0.9000000
X14 12.60000 INFINITY 0.9000000
X22 11.00000 0.9000000 INFINITY
X23 11.0 0.000000 0.9000000
X24 11.40000 INFINITY 0.000000
X33 11.50000 0.9000000 0.000000
X34 11.70000 0.000000 INFINITY
X44 12.50000 INFINITY 0.8000000
C12改变范围[11.3,+∞]
C13改变范围[11.5,+∞]
C14改变范围[11.7,+∞]
C22改变范围[-∞,11.9]
C23改变范围[11.2,+∞]
C24改变范围[11.4,+∞]
C33改变范围[11.5,12.4]
C34改变范围[-∞,11.7]
C44改变范围[11.7,+∞]
5.4.3 1季度生产能力在何范围改变内改变时最优基不变?
即约束条件右端常数项改变对最优解改变, 第一个约束条件右端常数项改变对最有基影响。
Row RHS Increase Decrease
2 10.00000 INFINITY 10.00000
由分析结果得: [0,+∞]。
5.4.4 4季度交货量在何范围内改变时最优基不变?
即约束条件右端常数项改变对最优解改变, 第八个约束条件右端常数项改变对最有基影响。
Row RHS Increase Decrease
9 20.00000 0.000000 20.00000
由分析结果得: 4季度交货量在[0,20]范围内改变时最优基不变。
6.创新内容
6.1 2季度交货量为30时最优生产计划?
由灵敏度表分析可得:
Row RHS Increase Decrease
7 20.00000 0.000000 10.00000
第五个约束条件右端常数项改变范围为10到20, 超出范围, 输入程序重新计算得:
最优方案如上图所表示。
6.2 第3季度生产第4季度交货每台设备所消花费用C34在什么范围内改变时最优生产计划不变?
目标函数X34系数C34改变范围, 由lingo灵敏度分析可得:
Variable Coefficient Increase Decrease
X34 11.70000 0.000000 INFINITY
C34改变范围为: [-∞,11.7]。
6.3 2季度生产能力在何范围改变内改变时最优基不变?
Row RHS Increase Decrease
3 35.00000 10.00000 0.000000
依据第二约束条件可知2季度生产能力在[35,45]之内最优基不变。
7.课程设计总结
学习理论目就是为了处理实际问题。经过两周课程设计, 让我对运筹学认识愈加深刻, 也知道了运筹学在实践中关键作用。在之前运筹学课程学习中, 一直都很认真在学习每个算法, 掌握了解体方法。运筹学学习最终目是利用量化和模型化方法, 针对有相关管理问题最优化配置现实需求, 来寻求系统优化处理方案, 系统求得一个合理应用人力, 节省财力最好方案, 为决议者提供科学决议依据, 而不是平时学习中简单数据计算和公式利用。而在实际问题处理中, 建立一个合理实际模型尤为困难, 也是处理问题关键。只有建立了正确模型, 处理问题才能水到渠成。在开始看到这道题目时, 大家首要任务就是讨论怎样建立正确数学模型, 找到正确方法来处理问题。建立了正确数学模型以后, 才能快速编程。作为科学数学方法, 它与计算机技术结合处理实际问题。在这次实践中我意识到, 我们应该尽可能多将优异管理中科学方法与优异计算机技术结合起来, 切实提升我们适应该代社会信息、 利用运筹学处理实际问题能力, 我想这才是我们这次课程设计所要达成最终目。
在现实生活中, 我们假如能利用科学方法和最简单措施来处理碰到问题, 那就会大大提升效率。运筹学就是这么一个为我们提供简便算法来分析部分生活中问题, 使我们取得最大效益。不过因为部分问题经过我们人工来算是非常麻烦, 所以在这么高科技生活环境里, 我们要利用科技来帮我们处理问题。运筹学课程设计就是让我们将所学编程知识与运筹学问题结合起来, 经过计算机快速找到最优方案。
这次课程设计是分小组进行, 不仅对所学知识进行了巩固, 而且对同学也增加了了解, 这么小组协作方法让我对团体协作有了新认识, 不管一个人怎样聪慧都抵不过一个配合默契团体, 团体合作能够集思广益, 将复杂问题分成小部分。正所谓“没有完美个人, 只有完美团体。”每个人完成自己一小部分, 这一小部分对个人来说要比完成整个问题一整套求解过程要轻易得多, 而且小组组员相互之间能够取长补短, 这么整个小组力量就强大了很多, 问题也就相对变得渺小了。大家在一起讨论商议, 这么不管什么问题都会很快处理。在两周试验过程中, 不仅对运筹学相关知识有了深入掌握, 同时对在自己计算机操作水准也有了很大提升。在试验过程中, 对应用软件掌握也受益颇深。
总而言之, 这次运筹学课程设计, 是我们每个人都受益匪浅。不管是在利用运筹思想来处理现实中问题能力, 还是用计算机来快速计算, 都是我们处理问题能力大大提升。这么学习和实践相结合方法确能够大大加深我们对知识掌握和了解, 以及利用。
课程设计成绩考评表
学院 经济管理 专业 电子商务 班级 130511班 学生姓名 雷涵博
课程名称: 运筹学课程设计
课程设计题目:
第二十八题
考评项目
满分值
得分
1.独立完成设计任务
20
2.设计方案、 说明书、 图纸、 程序、 计算等完成质量
30
3.创新与发挥
10
4.答辩(口试)
40
合 计 得 分
成 绩
指导老师签字
几点说明
1. 此表由指导老师进行课程设计成绩评定时填写。
2. 课程设计成绩依据学生各项考评最终得分, 按“优”、 “良”、 “中”、 “及格”、 “不及格”五级评定。其中, 90分以上为“优”; 80~89分为“良”; 70~79分为“中”; 60~69分为“及格”; 60分以下为“不及格”。
3. 课程设计结束后, 此表由指导老师放入课程设计资料袋, 送负担课程教研室存档
6月24日
展开阅读全文