《运筹课程设计》word版.doc_第1页
《运筹课程设计》word版.doc_第2页
《运筹课程设计》word版.doc_第3页
《运筹课程设计》word版.doc_第4页
《运筹课程设计》word版.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

长 春 工 业 大 学课 程 设 计 报 告课程设计名称 运筹课程设计 专 业 信息管理与信息系统 班 级 080505班 学 生 姓 名 刘 玲 指 导 教 师王亚君 2011年7月8日课 程 设 计 任 务 书课程设计题目:第二十七题起止日期:2011、6、272011、7、8设计地点:教室、电子商务中心设计任务及日程安排:1、设计任务1.1通过课程设计可以增强学生解决实际运筹学问题的能力1.2通过课程设计可以使学生巩固、拓展和深化所学的基础理论、专业理论和知识。1.3通过课程设计可以使学生初步掌握用运筹学方法解决实际问题的过程和技巧,树立理论联系实际的工作作风。1.4通过课程设计可以使学生初步建立正确的设计思想和方法,进一步提高运算、计算机应用技能和综合分析、解决问题的能力。2、设计进度安排本课程设计时间分为两周:第一周(2011年6月27日-2011年7月1日):建模阶段。此阶段各小组根据给出的题目完成模型的建立。主要环节包括 :1.16月27日上午:发指导书;按组布置设计题目;说明进度安排。1.26月27日下午至29日:各小组审题,查阅资料,进行建模前的必要准备(包括求解程序的编写与查找)。1.3 6月30日至7月1日:各个小组进行建模,并根据题目及设计要求拟定设计提纲,指导教师审阅;同时阅读,理解求解程序,为上机求解做好准备。第二周(2011年7月4日-7月8日):上机求解,结果分析及答辩。主要环节包括1.1 7月4日至7月5日:上机调试程序1.2 7月6日:完成计算机求解与结果分析。1.3 7月7日:撰写设计报告。 1.4 7月8日:设计答辩及成绩评定。(答辩时间:7月8日上午8:3012:00,下午2:005:00)1、设计进度:本课程设计时间分为两周:第一周(2011年6月27日-2011年7月1日):建模阶段。此阶段各小组根据给出的题目完成模型的建立。主要环节包括 :1.16月27日上午:发指导书;按组布置设计题目;说明进度安排。1.26月27日下午至29日:各小组审题,查阅资料,进行建模前的必要准备(包括求解程序的编写与查找)。1.3 6月30日至7月1日:各个小组进行建模,并根据题目及设计要求拟定设计提纲,指导教师审阅;同时阅读,理解求解程序,为上机求解做好准备。第二周(2011年7月4日-7月8日):上机求解,结果分析及答辩。主要环节包括1.1 7月4日至7月5日:上机调试程序1.2 7月6日:完成计算机求解与结果分析。1.3 7月7日:撰写设计报告。 1.4 7月8日:设计答辩及成绩评定。2、设计题目某回收公司,专门从事四种固体废料的回收处理,并形成一种有销路的产品。此产品可制成三个不同的等级,视所用材料的配合比而定。虽然每一个等级的配合比具有一些灵活性,质量标准却规定某些材料在该产品等级中所允许的最小或最大(按重量)百分比,这些规格,连同每一等级的合成费及售价如下表所示。等级规格合成费(元/千克)售价(元/千克)A材料1不多于30%材料2不少于40%材料3不多于50%38.5B材料1不多于50%材料2不少于10%2.57C材料1不多于70%25.5回收公司从一些正规的来源回收其固体废料,因此通常能够保持稳定生产率来处理这些材料。下表给出了每种材料每周可供回收与处理的数量及处理费用。固体废料每周回收量(千克)处理费(元/千克)123430002000400010003645试确定每一等级产品的产量及所用固体废料的精确配合比,使公司每周总利润(总销售收入减去合成费与处理费)达到最大。并按要求分别完成下列分析:(1)固体废料2每周的回收量在何范围内变化时最优基不变?(2)B等级的产品售价在何范围内变化时最优生产方案不变?(3)固体废料1的处理费在何范围内变化时最优生产方案不变?3、 建模过程3.1设定变量:设 X11表示生产A产品需要固体废料1的数量;X12表示生产A产品需要固体废料2的数量;X13表示生产A产品需要固体废料3的数量;X14表示生产A产品需要固体废料4的数量;X21表示生产B产品需要固体废料1的数量;X22表示生产B产品需要固体废料2的数量;X23表示生产B产品需要固体废料3的数量;X24表示生产B产品需要固体废料4的数量;X31表示生产C产品需要固体废料1的数量;X32表示生产C产品需要固体废料2的数量;X33表示生产C产品需要固体废料3的数量;X34表示生产C产品需要固体废料4的数量;最大利润为z.3.2根据题意得约束条件:由A产品所用材料1不多于30%可得:X11/ (X11+X12+X13+X14)30%由A产品所用材料2不少于40%可得:X12/ (X11+X12+X13+X14)40%由A产品所用材料3不多于30%可得:X13/ (X11+X12+X13+X14)50%由B产品所用材料1不多于30%可得:X21/ (X21+X22+X23+X24)50%由B产品所用材料2不多于10%可得:X22/ (X21+X22+X23+X24)10%由C产品所用材料1不多于70%可得:X31/ (X31+X32+X33+X34)70%由固体废料1每周回收量为3000可得:X11+X21+X31 3000由固体废料2每周回收量为2000可得:X12+X22+X32 2000由固体废料3每周回收量为4000可得:X13+X23+X33 4000由固体废料4每周回收量为1000可得:X14+X24+X34 1000Xij0 (i=1,2,3;j=1,2,3,4)3.3数学模型如下:max z= (8.5-3)(X11+X12+X13+X14)+(7-2.5)(X21+X22+X23+X24)+ (5.5-2)(X31+X32+X33+X34)-3(X11+X21+X31)-6(X12+X22+X32)-4(X13+X23+X33)- 5(X14+X24+X34) X11/ (X11+X12+X13+X14)30%X12/ (X11+X12+X13+X14)40%X13/ (X11+X12+X13+X14)50%X21/ (X21+X22+X23+X24)50%X22/ (X21+X22+X23+X24)10%X31/ (X31+X32+X33+X34)70%X11+X21+X31 3000X12+X22+X32 2000 X13+X23+X33 4000X14+X24+X34 10003.4将问题化为标准形式:max z= 2.5X11 -0.5X12 +1.5X13 +0.5X14 +1.5X21 -1.5X22 +1.5X23 -0.5X24 +0.5X31 -2.5X32 -0.5X33 -1.5X340.7X11-0.3X12-0.3X13-0.3X14+ X1=00.4X11-0.6X12+0.4X13+0.4X14+ X2=0-0.5X11-0.5X12 +0.5X13-0.5X14+ X3=00.5X21-0.5X22-0.5X23-0.5X24+ X4=00.1X21 -0.9X22+0.1X23+0.1X24+X5=00.3X31-0.7X32-0.7X33-0.7X34+X6=0X11+X21+X31+X7=3000X12+X22+X32+X8=2000 X13+X23+X33+X9=4000X14+X24+X34+X10=10004、程序功能介绍4.1 程序流程图:结束输出最优解与最优值迭代计算新表否确定主元,换入换出变量是检验数0整理并化成标准形式,加入松弛变量,形成初始单纯形表变量个数22、约束条件个数10、方程组系数矩阵A、约束条件常数项b值、选择目标函数类型、目标函数开始4.2求解最优解程序用C+编写4.2.1 程序中定义与题目相对应的变量m定义约束条件方程组的个数n定义未知量的个数float M=1000000.0;float Amn; 用于记录方程组的数目和系数;float Cn; 用于存储目标函数中各个变量的系数float bm; 用于存储常约束条件中的常数float CBm; 用于存储基变量的系数float setam; 存放出基与入基的变化情况float check_numbern; 存储检验数矩阵float xn;int numm; 用于存放出基与进基变量的情况float ZB=0; 记录目标函数值4.2.2 程序中共有五个方法void input();该方法用于接收从终端输入的数据void print();该方法用于向终端输出计算结果,即将最优解输出int change_into();该方法通过计算检验数的正负来确定换入变量int swap_out(int a);该方法用于计算换出变量void exchange(int a,int b);该方法用于迭代计算,找到最优解4.2.3求解程序代码见附录5、结果分析5.1计算机求解前的手工数据准备5.1.1方程组的系数矩阵A(10行22列):1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 00 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 00 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 00 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 00.7 -0.3 -0.3 -0.3 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 00.4 -0.6 0.4 0.4 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0-0.5 -0.5 0.5 -0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 00 0 0 0 0.5 -0.5 -0.5 -0.5 0 0 0 0 0 0 0 0 0 0 0 1 0 00 0 0 0 0.1 -0.9 0.1 0.1 0 0 0 0 0 0 0 0 0 0 0 0 1 00 0 0 0 0 0 0 0 0.3 -0.7 -0.7 -0.7 0 0 0 0 0 0 0 0 0 15.1.2初始基变量矩阵:13 14 15 16 17 18 19 20 21 225.1.3方程组右边的值矩阵b:3000 2000 4000 1000 0 0 0 0 0 05.1.4目标函数各个变量的系数所构成的系数阵C:2.5 -0.5 1.5 0.5 1.5 -1.5 0.5 -0.5 0.5 -2.5 -0.5 -1.5 0 0 0 0 0 0 0 0 0 05.2 单纯型法求最优解5.2.1 应用c+程序计算问题最优解,运行界面及录入数据如图1所示:图15.2.2 单纯型法求解过程,第一步迭代数据如图2:图25.2.3 单纯型法求解过程,最后一步迭代结果如图3:图35.3 用Lingo求解灵敏度分析结果5.3.1 7166.667 (目标函数的最优值为 7166.667)VARIABLE(变量)VALUE (变量值)REDUCED COST(检验数所在行变量系数)VARIABLE(变量)VALUE (变量值)REDUCED COST(检验数所在行变量系数) X11 366.6667 0.000000 X21 1466.667 0.000000 X31 1833.333 0.000000 X41 0.000000 0.8333333 X12 2633.333 0.000000 X22 533.333 0.000000 X32 2166.667 0.000000 X42 0.000000 0.8333333X13 0.000000 0.9523810 X23 0.000000 3.3333333 X33 0.000000 0.000000 X43 0.000000 0.83333335.3.2 RANGES IN WHICH THE BASIS IS UNCHANGED: 当目标函数的变量系数在什么变化范围内时,最优基不变。CURRENT COEF:初始目标函数的系数。ALLOWABLE INCREASE:允许变量系数增加的范围。ALLOWABLE DECREASE:允许变量系数减少的范围。当目标函数的系数C在 初始目标函数的系数-允许变量系数减少的范围,初始目函数的系数+允许变量系数增加的范围 内变化时,最优基不变,最优解也不变,由于目标函数的系数发上改变了,所以最优值有可能改变。OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X11 2.500000 0.000000 0.8064516 X21 -0.5000000 1.250000 1.2500000 X31 1.500000 1.000000 0.0000000 X41 0.5000000 0.8333333 INFINITY X12 1.500000 0.8064516 0.000000 X22 -1.500000 2.500000 1.250000 X32 0.5000000 0.000000 0.1428571 X42 -0.5000000 0.8333333 INFINITYX13 0.5000000 0.9523810 INFINITY X23 -2.500000 3.333333 INFINITY X33 -0.5000000 0.6666667 0.8333333X43 -1.500000 0.8333333 INFINITY5.3.3约束条件右端项在什么范围内变化时,最优基不变:CURRENT RHS:初始约束条件右端项的值;ALLOWABLE INCREASE:允许b值增加的范围ALLOWABLE DECREASE:允许b值减少的范围当约束条件右端项的值在 初始约束条件右端项的值-允许b值减少的范围,初始约束条件右端项的值+允许b值增加的范围内变化时最优基不变,最优解不变,最优值也可能不变。RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 3000.000 90.90909 2548.378 3 2000.000 47.61905 1222.222 4 4000.000 11000.00 52.63158 5 1000.000 INFINITY 1000.0000 6 0.000000 INFINITY 733.3333 7 0.000000 275.0000 100.0000 8 0.000000 33.33333 733.3333 9 0.000000 INFINITY 33.3333310 0.0000001100.000 25.0000011 0.0000000.000000 36.842115.4规定题目的分析过程及结果5.4.1由灵敏度分析得这个线性规划的最优解为:X11 366.6667 X21 1466.667 X31 1833.333 X41 0.000000 X12 2633.333 X22 533.3333 X32 2166.667 X42 0.000000 X13 0.000000 X23 0.000000 X33 0.000000 X43 0.000000 ,最优值为z=7166.67。灵敏度分析结果中Slack or Surplus第2-5行给出这4种固体废料(资源)在最优解下是否有剩余:固体废料1、2、3没有剩余,固体废料4剩余1000,即固体废料4完全没有使用。5.4.2 对于问题(1)固体废料2每周的回收量在何范围内变化时最优基不变?属于线性规划问题中b的变化,根据灵敏度分析结果,最优基不变情况下,固体废料2的最大增加量为47.61905,最大减少量为1222.222,即固体废料2的变化范围是(777.7782047.619);5.4.3对于问题(2)B等级的产品售价在何范围内变化时最优生产方案不变?(3)固体废料1的处理费在何范围内变化时最优生产方案不变?属于线性规划问题中目标函数系数C的变化,根据灵敏度分析结果,最优生产方案不变情况下,B等级的产品售价变化范围由X12、X22、X32、X42变化范围的交集确定,即B等级的产品售价不能变化。固体废料1的处理费变化范围由X11、X12、X13变化范围的交集确定,即固体废料1的处理费不能变化。6、 创新内容6.1 固体废料1周回收量增加1000千克,对最优生产方案的影响;固体废料1的周回收量变为4000时,目标函数的最优值为8333.333,即此时公司的最大利润为8333.333元生产A产品需要固体废料1的数量X11=667 ;生产A产品需要固体废料2的数量X12= 1333;生产A产品需要固体废料3的数量X13=1333;生产A产品需要固体废料4的数量X14=0;生产B产品需要固体废料1的数量X21=3333;生产B产品需要固体废料2的数量X22=667;生产B产品需要固体废料3的数量X23=0;生产B产品需要固体废料4的数量X24=0 ;生产C产品需要固体废料1的数量X31=0;生产C产品需要固体废料2的数量X32=0;生产C产品需要固体废料3的数量X33=0;生产C产品需要固体废料4的数量X34=06.2固体废料4处理费用变为3元,对最优生产方案的影响;固体废料4的处理费变为3元/千克,目标函数的最优值为8333.333,即此时公司的最大利润为8333.333元生产A产品需要固体废料1的数量X11=0 ;生产A产品需要固体废料2的数量X12= 1333;生产A产品需要固体废料3的数量X13=1667;生产A产品需要固体废料4的数量X14=333;生产B产品需要固体废料1的数量X21=3000;生产B产品需要固体废料2的数量X22=667;生产B产品需要固体废料3的数量X23=2333;生产B产品需要固体废料4的数量X24=667 ;生产C产品需要固体废料1的数量X31=0;生产C产品需要固体废料2的数量X32=0;生产C产品需要固体废料3的数量X33=0;生产C产品需要固体废料4的数量X24=0;6.3 C等级产品售价每增加1元,对最优生产方案的影响;当C类产品的价格增加1元/千克时,目标函数的最优值为8500.000,即此时公司的最大利润为8500.000元,且生产A产品需要固体废料1的数量X11=1500;生产A产品需要固体废料2的数量X12=2000;生产A产品需要固体废料3的数量X13=1500;生产A产品需要固体废料4的数量X14=0;生产B产品需要固体废料1的数量X21=0;生产B产品需要固体废料2的数量X22=0;生产B产品需要固体废料3的数量X23=0;生产B产品需要固体废料4的数量X24=0 ;生产C产品需要固体废料1的数量X31=1500;生产C产品需要固体废料2的数量X32=0;生产C产品需要固体废料3的数量X33=2500;生产C产品需要固体废料4的数量X34=07、课程设计总结本次运筹学课程设计包括数学建模,流程分析,程序设计,运行求解等环节,通过本次运筹学课程设计,让我对学过的运筹学知识和编程知识进行了巩固,同时将运筹知识与程序结合应用,更加深的对运筹学应用的认识。运筹学模型的建立与求解,是对实际问题的概括与提炼,是对实际问题的数学解答,而通过本次的实验,我也深刻的体会到了这一点。将错综复杂的实例问题抽象概括成数学数字,再将其按要求进行求解得出结果,当然还有对结果的检验与分析也是不可少的。在这一系列的操作过程中,不仅可以体会到数学问题求解的严谨和规范,同时也了解到运筹学在实际生活中的巨大作用。运筹学广泛的应用于生产,运输,库存计算等方面,在实际生活生产中发挥了重要的作用,以前在课堂上学习运筹学的时候只感觉运筹学很麻烦,像对待其他科目属于为了应付考试而学习,但是经过这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论