运筹学课程设计报告(完) 联系客服

发布时间 : 星期三 文章运筹学课程设计报告(完)更新完毕开始阅读c923c1f9910ef12d2af9e7ac

运筹学课程设计报告

组 别: 第三组 设计人员:

设计时间: 2012年6月25日-2012年7月6日 1 设计进度

本课程设计时间分为两周:

第一周(2012年6月25日----2012年6月29日):建模阶段。此阶段各小组根据给出的题目完成模型的建立。主要环节包括 :

2.1 6月25日上午:发指导书;按组布置设计题目;说明进度安排。

2.2 6月25日下午至6月27日:各小组审题,查阅资料,进行建模前的必要准备(包括求解程序的编写与查找)。

2.3 6月28日至6月29日:各个小组进行建模,并根据题目及设计要求拟定设计提纲,指导教师审阅;同时阅读,理解求解程序,为上机求解做好准备。

第二周(2012年7月2日---7月6日):上机求解,结果分析及答辩。主要环节包括

2.1 7月2日至7月3日:上机调试程序 2.2 7月4日:完成计算机求解与结果分析。 2.3 7月5日:撰写设计报告。 2.4 7月6日:设计答辩及成绩评定。 2 设计题目

第三十三题 某商店要制订明年第一季度某种商品的进货和销售计划。一直该店的仓库容量最多可存储该种商品500件,而今年年底有200件存货。该店在每月月初进货一次。已知各月份进货和销售该种商品的单价如下表所示。问每个月应进货和销售该种商品各多少件,才能使总利润最大。并按要求分别完成下列分析:(1)2月份的进货单价在何范围内变化时最优进销策略不变?(2)3月份的售价在何范围内变化是最优进销策略不变?(3)第一月份初库存量在何范围内变化时最优基不变?(4)仓库容量在何范围内变化时最优基不变?

月 份 进货单价(元) 销售单价(元) 3 建模过程 (1)分析过程

1 8 9 2 6 8 3 9 10 设定变量

设x1表示一月的进货量,x4表示一月的销售量。 x2表示二月的进货量,x5表示二月的销售量。 x3表示三月的进货量,x6表示三月的销售量。 根据题意推理

总成本费用=8 x1+6 x2+9 x3 总收益=9 x4+8 x5+10 x6 各约束条件的范围:

一月份的进货量与年底存货之和不能大于500:

x1+200≦500

一月份的销售量不能大于一月份的进货量与年底存货量之和:

x4 ≦x1+200

二月份的进货量与一月份剩余量之和不能大于500:

x2+(x1+200 -x4)≦500

二月份的销售量不能大于二月份的进货量与一月份剩余量之和:

x5≦x2+ x1+200-x4

三月份的进货量与二月份剩余量之和不能大于500:

x3+(x1+200 -x4+ x2 –x5)≦500

三月份的销售量不能大于三月份的进货量与二月份剩余量之和:

x6≦x3+(x1+200 -x4+ x2 –x5)

(2)模型

由以上设定和题目要求,整理得数学模型如下: max z=-8 x1-6 x2-9 x3+9 x4+8 x5+10x6 约束条件: x1≦300 - x1+x4≦200 x1+ x2- x4≦300 - x1- x2+x4+ x5≦200 x1+ x2+ x3 -x4- x5≦300 - x1- x2- x3+x4+x5+ x6≦200

1

xi≧0,i=1……6

(3)计算机求解前的手工数据准备

将原问题添加松弛变量:x7、x8 、x9 、x10、x11 、x12 化成标准形式:

max z=-8 x1-6 x2-9 x3+9 x4+8 x5+10x6

约束条件:

x1+ x7=300 - x1+x4+ x8=200 x1+ x2- x4+ x9=300 - x1- x2+x4+ x5+ x10=200 x1+ x2+ x3 -x4- x5+ x11=300 - x1- x2- x3+x4+x5+ x6+ x12=200 xi≧0,i=1……12 4 求解程序功能介绍 (1)程序功能介绍

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,Java 技术具有卓越的通用性、高效性、平台移植性和安全性,能运行于不同的平台,对程序提供了安全管理器,防止程序的非法访问。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。

LINGO是一种专门用于求解数学规划问题的软件包。LINGO可以用于求解非线性规划,也可以用于一些线性和非线性方程组的求解等,功能十分强大,是求解优化模型的最佳选择。其特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数,方便灵活,而且执行速度非常快。Lingo 是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具, 提供强大的语言和快速的求解引擎来阐述和求解最佳化模型,一个Lingo模型至少需要具备三个要素:目标、决策变量和约束条件。 (2)求解程序

1.程序流程图

2

开始 引入松弛变量列出初始单纯形表 计算非基变量各列检验数 用非基变量的线性组合来表示基变量 存在cj<0 否 是 选择主元素列s 无有界最优解 输出最优解和最优值 存在bij>0 是 选择主元素行r= min{bi0/bis} 是否进行灵敏度分析 是 换元后计算各行新的系数 1、brj = brj/brs 2、bij = bij – brs * brj 重新计算并输出Z、X* 。c、b的变化是否影响最优解和是 否 重新计算Z、X*,并。代入单纯行表,重新迭代,输出结果。 停止

2.程序截图

3