运筹学课程设计

时间:2024.3.23

长 春 工 业 大 学

(Javascript)

课程设计名称    运筹学程序设计 

 专       业  信息管理与信息系统

班       级              

学  生 姓 名               

指  导 教 师             

20##年7月12日

运筹学课程设计提纲

组别:第12组

设计人员:

设计时间:20##年6月29日—20##年7月12日

1、 设计进度

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

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

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

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

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

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

1.1  7月6日至7月7日:上机调试程序

1.2  7月8日:完成计算机求解与结果分析。

1.3 7月11日:撰写设计报告。

1.4 7月12日:设计答辩及成绩评定。

2设计题目

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

3所建模型

3.1 设定变量

设x1为一月份的进货量

  x2 为二月份的进货量

  x3为三月份的进货量

  x4为一月份的销售量

  x5为二月份的销售量

  x6为三月份的销售量

3.2 约束条件的确定

一月份的进货量加月初库存量小于总库存量: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+ x≤200

3.3 根据题意推理

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

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+ x≤200

xi  ≥0  , i=1、2、3、4、5、6

3.4 计算机求解前的手工数据准备

将原问题的所有约束条件添加人工变量

x7、x8、x9、x10、x11、x12

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

     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、2、3、4、5、6、7、8、9、10、11、12

4程序功能介绍

Javascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。

我们用Javascript设计编辑了一个解题程序来解答这个问题,运用internet explorer环境运行的,我们首先把题目通过建模得出标准形式,然后根据标准形式确定矩阵的行和列,点击“继续”输入基变量,中间用“$”分隔,按照函数要求输入题的系数矩阵,函数记录下来用于解题,当输入结束后,点击“结果”,会输出最优表,然后转入Lindo。

Lindo作用就是负责把问题的最优决策求出来,省去大量难以想象的人工计算。一个Lindo模型至少需要具备三个要素:目标、决策变量和约束条件。

5、程序流程图

6、程序截图

   (一)输入数据

  (二)通过计算得最优表

从上图可以看出最优解为X1=300,X2=500,X3=0,X4=500,X5=0,X6=500,最优值Z=4100

   (三)Lindo输入运行结果

7、结果分析思路

1、二月份的进货单价和三月份售价在什么范围内变化最优进销策略不变属于LP问题模型中目标函数参数C的变化,所以分为两种情况:

(1)若Cj是非基变量Xj的系数:

    确定非基变量系数变化范围,非基变量系数变化只影响自身的检验数,因此:设Cj为非基变量Xj的系数,令它在当前最优表中的检验数δj=CBB-1Pj-Cj>=0,当Cj发生了△Cj变化后,要保证当前最优表中相应的检验数仍大于或等于0,必有:

即:δj=δj-△Cj>=0或△Cj<=δj

这就是说,当Xj的系数Cj增大△Cj以后其增量变化范围小于等于该变量在当前最优表中相应的检验数时,最优解不变,即最优进销策略不变

(2)若Cj是基变量Xj的系数:

确定基变量系数变化范围,基变量系数变化影响所有非基变量的检验数和目标函数值。Cj的变化范围在基变量Cj增量的变化范围之内则其最优解、最优值均不变,即最优进销策略不变。

2、一月份初库储量的变化和仓库容量的变化使最优基不变属于LP问题模型中约束条件右端参数b的变化:

根据公式max{-bi/βir | βir>0}<=b<=min{-bi/βir | βir<0} 确定b的变化范围。这个范围即为所求,在b的变化在该范围之内最优基不变最优解变化,最优解由公式XB=B-1b求得。

8、创新内容

模型的主体采取Lindo6.1软件处理数据和对其进行灵敏度分析,准确性高,容量大,逻辑性严格,计算速度快,具有较强的说服力和适应能力。

除题中问题外,可解决其他的灵敏度分析问题,即可求出各项进货单价、售货单价、一月初库存量、总的仓库容量等保证最优基活最优解不变时的变化范围,例如:

(1)13月份的进货单价在何范围内变化时最优进销策略不变?

结合计算机分析结果得:3月份的进货单价[8,9]范围内变化时最优进销策略不变;

(2)月份的售价在何范围内变化是最优进销策略不变?

结合计算机分析结果得:2月份的售价在[6,9]范围内变化是最优进销策略不变

9、课程设计总结

   次运筹学课程设计的学习心得,本次课程设计的时间是 2 个星期,在这几天里,首先是学习JavaScript软件的使用方法,学习软件在 LP上的使用。从简单到复杂,逐步掌握软件的一些常用用法,熟悉它的工作界面,掌握一些基本的命令,尝试的用JavaScript软件解决。到最后的课程设计的设计上,我们小组在建摸这块花了很长的时间和精力,开始总是想不出很好的方案,不知道从哪里下手,最后的建摸思路是有三个人共探讨的结果。在软件的使用上,比较容易,设计书的整理上,也有所投入。运筹学这门课程与实际联系紧密,在很多的方案中,得到最优解。本次课程设计,激发了我们学习和探讨实际问题的兴趣,培养了很好的合作思考的能力,受益非浅。其次我们在完成课程设计的过程中体会到团队合作的乐趣。一向惯于“独立思考”的我们学会了积极的同团队成员交流,取长补短,共同进步。“独学而无友则孤陋而寡闻”,只有和同学多交流多学习才能不断的提高自身水平。 古人作战讲“夫运筹帷幄之中,决胜千里之外”。在现代商业社会中,更加讲求运筹学的应用。运筹学主要研究经济活动和军事活动中能用数量来表达的有关策划、管理方面的问题。当然,随着客观实际的发展,运筹学的许多内容不但研究经济和军事活动,有些已经深入到日常生活当中去了。运筹学可以根据问题的要求,通过数学上的分析、运算,得出各种各样的结果,最后提出综合性的合理安排,已达到最好的效果。故其应用不受行业、部门之限制;运筹学既对各种经营进行创造性的科学研究,又涉及到组织的实际管理问题,它具有很强的实践性,最终应能向决策者提供建设性意见,并应收到实效;它以整体最优为目标,从系统的观点出发,力图以整个系统最佳的方式来解决该系统各部门之间的利害冲突。对所研究的问题求出最优解,寻求最佳的行动方案,所以它也可看成是一门优化技术,提供的是解决各类问题的优化方法。作为一名物流管理的学生,更应该能够熟练地掌握、运用运筹学的精髓,用运筹学的思维思考问题。即:应用分析、试验、量化的方法,对实际生活中人、财、物等有限资源进行统筹安排。本着这样的心态,在本学期运筹学即将结课之时,我得出以下关于运筹学的知识。是虽上机考试没有通过,感到不安,但是我明白要将理论联系实际,才能更好的发挥。总之,这次的运筹学课程设计,让我们学到了很多,受益匪浅。


第二篇:运筹学课程设计


摘要

   现代企业要快速发展,强大的内部凝聚力是重要前提之一,而有效的人员管理则是保证公司内部凝聚力的重要手段。本次设计旨在帮助众多企业管理者们如何在公司内部建立一个公正、公平、有效的人员管理制度。

   众所周知,企业管理的根本是人员管理。随着企业不断发展壮大,很多人会发现,管理者80%的时间都花在考虑人员管理的问题上。如何防止陷入各种文山会海,如何处理下属之间的明争暗斗,这些经常是企业管理者们最苦恼的问题。其实,你应当知道:管理是一门科学,领导是一门艺术,用人是一种谋略。其主要职责是:协调人员之间的关系,引导建立积极向上的工作环境

关键字: 所需售货人数,最少人数,每周工作5天,休息2天

目录

1.  绪论.......................................................... ..1

1.1目的.........................................................1

1.2主要内容和要求...............................................1

1.3问题提出.....................................................1

2.问题分析........................................................ 2

3. 模型建立.................................................. ......2

   3.1建立目标函数...................................... ..........2

   3.2建立约束方程............................... .................2

   3.3建立数学模型....................... .........................3

4. 问题求解.................................................... ....4

   4.1模型的求解...................................................4

5. 结果分析.......................................... ............ .8

   结论.......................................... ............ ....10

   参考文献....................................................... 11

   致谢........................................................... 11

1绪论

1.1目的

  1. 掌握运筹学知识在管理问题中应用的基本方法与步骤;

  2. 巩固和加深对运筹学理论知识及方法的理解与掌握;

  3. 上机练习,了解与掌握几种常用的运筹学计算软件及其使用方法与操作方法;

  4. 培养与锻炼学生从管理实践中提炼问题、分析问题、构建模型求解问题的综合应用能力;

  5. 锻炼并初步掌握运筹学模型求解程序的编写方法与技术。

1.2 主要内容和要求

  1. 结合专业知识,对某一实际管理问题进行分析,调查收集相关数据,并整理出符合问题特征的数据,包括目标因素、约束因素以及必须的参数与系数等;

  2. 在上一步分析基础上,按照运筹学建模的基本方法与要求,通过抽象处理,建立所研究问题的运筹学模型,判断模型的类型并选择求解方法;

  3. 上机练习,学习常用运筹学计算软件的使用与基本操作方法,并选择其中一种对所建运筹学模型进行求解,得出最优解,灵敏度计算等相关计算结果;

  4. 结合理论课以及计算机程序设计课程所学的基本知识,编写线性规划单纯形法的计算程序,用所编写的程序和已学习的某种运筹学计算软件,求解相关课后习题,对所编写的程序进行检验;

  5. 总结设计过程,整理与记录设计中的关键工作与成果,撰写设计报告。

1.3 问题提出

   某商场对售货员的需求分析经过统计分析如下表所示,为了保证售货人员充分休息,售货人员每周工作5天,休息2天,并且要求休息的两天是连续的,那么应该如何安排售货员的作息,就能满足工作需求,又使配备的售货人员的数目最少呢?

2.问题分析

如何在保证售货员充分休息,售货员每周工作五天,连续休息两天的前提下,排售货员分配问题,既满足工作需求,又能使配备的收货人员的数目最少,这是一个线性规划的问题,以你我们可以建立模型,然后用lindo软件求得最优解。在建立模型时我们设为每天开始休息的人数,由于每个人每周都要休息两天而且连续两天休息,所以总的售货员人数就是所有休息的收获员人数即可得到目标函数,根据表中的约束条件,我们可以得到约束方程

3.模型建立

3.1建立目标函数

(i=1,2,3,·····7)表示星期一至星期日开始休息的人数,Z为总共要配备的售货员数目。

则目标函数为:min

3.2建立约束方程

从约束条件可知道周日所需要的售货员数目为12,我们可以假设周日休息的售货员是从周六开始的,那么周一至周五休息的人数总和必须不小于周日工作的人数,从而得到约束方程 :

周一所需要的售货员数目为18,我们可以假设周一休息的售货员是从周日开始的,那么周二至周六休息的人数总和必须不小于周一工作的人数,从而得到约束方程 :

    周二所需要的售货员数目为15,我们可以假设周二休息的售货员是从一开始的,那么周三至周日休息的人数总和必须不小于周二工作的人数,从而得到约束方程 :

周三所需要的售货员数目为12,我们可以假设周三休息的售货员是从周二开始的,那么周四至周一休息的人数总和必须不小于周三工作的人数,从而得到约束方程:

周四所需要的售货员数目为16,我们可以假设周四休息的售货员是从周三开始的,那么周五至周二休息的人数总和必须不小于周四工作的人数,从而得到约束方程:

周五所需要的售货员数目为19,我们可以假设周五休息的售货员是从周四开始的,那么周六至周三休息的人数总和必须不小于周五工作的人数,从而得到约束方程:

周六所需要的售货员数目为14,我们可以假设周六休息的售货员是从周五开始的,那么周日至周四休息的人数总和必须不小于周六工作的人数,从而得到约束方程:

3.3建立数学模型

目标函数:min

约束条件: 

         (i=1,,2,3······7)

4.问题求解

4.1.模型的求解

LINDO输入形式为:

min x1+x2+x3+x4+x5+x6+x7

st

             x1+x2+x3+x4+x5>=12

             x2+x3+x4+x5+x6>=18

             x3+x4+x5+x6+x7>=15

             x4+x5+x6+x7+x1>=12

             x5+x6+x7+x1+x2>=16

             x6+x7+x1+x2+x3>=19

             x7+x1+x2+x3+x4>=14

           end

 LP OPTIMUM FOUND AT STEP      7

 得到如下结果:

        OBJECTIVE FUNCTION VALUE

        1)      21.20000

  VARIABLE        VALUE          REDUCED COST

        X1         0.600000          0.000000

        X2         5.600000          0.000000

        X3         3.600000          0.000000

        X4         1.600000          0.000000

        X5         0.600000          0.000000

        X6         6.600000          0.000000

        X7         2.600000          0.000000

       ROW   SLACK OR SURPLUS     DUAL PRICES

        2)         0.000000         -0.200000

        3)         0.000000         -0.200000

        4)         0.000000         -0.200000

        5)         0.000000         -0.200000

        6)         0.000000         -0.200000

        7)         0.000000         -0.200000

        8)         0.000000         -0.200000

 NO. ITERATIONS=       7

RANGES IN WHICH THE BASIS IS UNCHANGED:

                           OBJ COEFFICIENT RANGES

 VARIABLE         CURRENT        ALLOWABLE        ALLOWABLE

                   COEF          INCREASE         DECREASE

       X1        1.000000         0.500000         0.333333

       X2        1.000000         0.500000         0.333333

       X3        1.000000         0.500000         0.333333

       X4        1.000000         0.500000         0.333333

       X5        1.000000         0.500000         0.333333

       X6        1.000000         0.500000         0.333333

       X7        1.000000         0.500000         0.333333

                           RIGHTHAND SIDE RANGES

      ROW         CURRENT        ALLOWABLE        ALLOWABLE

                    RHS          INCREASE         DECREASE

        2       12.000000         4.000000         1.000000

        3       18.000000         1.500000         2.666667

        4       15.000000         1.500000         1.000000

        5       12.000000         1.500000         1.000000

        6       16.000000         1.500000         1.000000

        7       19.000000         1.500000         1.000000

        8       14.000000         1.500000         2.666667

由于商场售货员人数均为整数,所以求得的解 =0.6  , =5.6,=3.6, = 1.6,=  0.6 , = 6.6,=2.6 不符合实际要求,要使得所求解均为整数,可使用GIN命令将变量仅限为整数型,文件内容如下:

LP OPTIMUM FOUND AT STEP      7

 OBJECTIVE VALUE =   21.2000008

 SET       X5 TO >=     1 AT    1, BND=  -21.33     TWIN= -21.50         12

 SET       X1 TO >=     1 AT    2, BND=  -21.33     TWIN= -21.50         14

 SET       X4 TO >=     2 AT    3, BND=  -22.00     TWIN= -21.50         17

 NEW INTEGER SOLUTION OF    22.0000000     AT BRANCH      3 PIVOT      17

 BOUND ON OPTIMUM:  21.50000

 DELETE       X4 AT LEVEL     3

 DELETE       X1 AT LEVEL     2

 DELETE       X5 AT LEVEL     1

 ENUMERATION COMPLETE. BRANCHES=     3 PIVOTS=      17

 LAST INTEGER SOLUTION IS THE BEST FOUND

 RE-INSTALLING BEST SOLUTION...

        OBJECTIVE FUNCTION VALUE

        1)      22.00000

  VARIABLE        VALUE          REDUCED COST

        X1         1.000000          1.000000

        X2         4.000000          1.000000

        X3         4.000000          1.000000

        X4         2.000000          1.000000

        X5         1.000000          1.000000

        X6         7.000000          1.000000

        X7         3.000000          1.000000

       ROW   SLACK OR SURPLUS     DUAL PRICES

        2)         0.000000          0.000000

        3)         0.000000          0.000000

        4)         2.000000          0.000000

        5)         2.000000          0.000000

        6)         0.000000          0.000000

        7)         0.000000          0.000000

        8)         0.000000          0.000000

 NO. ITERATIONS=      17

 BRANCHES=    3 DETERM.=  1.000E    0

5.结果分析

“LP OPTIMUM FOUND AT STEP      7”表示LINDO在(用单纯形法)7次迭代后得到最优解;

“OBJECTIVE FUNCTION VALUE 1)      22.00000” 表示最优目标值为22.00000;

“VALUE”给出最优解中各变量的值:

=1  =4   =4   =2   = 1  =7  =3

 “REDUCED COST”表示其中的值随最优解中各变量变化而增加REDUCED COST中相应的变量的值

VARIABLE        VALUE          REDUCED COST

        X1         1.000000          1.000000

        X2         4.000000          1.000000

        X3         4.000000          1.000000

        X4         2.000000          1.000000

        X5         1.000000          1.000000

        X6         7.000000          1.000000

        X7         3.000000          1.000000

即随着最优解值的变化一个单位最优值22.00000 就增加一个相应的REDUCED COST中的值

ROW   SLACK OR SURPLUS     DUAL PRICES

        2)         0.000000          0.000000

        3)         0.000000          0.000000

        4)         2.000000          0.000000

        5)         2.000000          0.000000

        6)         0.000000          0.000000

        7)         0.000000          0.000000

        8)         0.000000          0.000000

经以上分析可知:当=1 =4  =4 =2  =1  =7 =3

时,也就是周一安排1人休息,周二安排4人休息,周三安排4人休息,周四安排2个人休息,周五安排1个人休息,周六安排3个人休息,周日安排3人休息时,我们在可以保证工作需求的情况下配备最少的售货员22名。

总  结

通过本次的课程设计,我了解了运筹学方法在实际生活中的重要意义,也

明确了如何用运筹方法的来处理问题。通过这次的课程设计,我们在面对一些实

际的问题一定要先冷静分析之后形成数学模型,用数学语言科学表达并且求出我们的需要解决的问题。此次课程设计使我对运筹学有了更进一步的认识,在以后的学习生活中我们还要多加学习。

参考文献:

[1] 杨茂盛.运筹学(第三版).陕西科技技术出版社,2006

[2] 运筹学编写组.运筹学(第三版).清华大学出版社,2005

致谢:

做完此次课程设计,首先要感谢我的制作过程指导老师孔老师。在制作过程中,因为现阶段掌握的知识太过有限,因此在制作过程中不免会遇到各种各样的困难和麻烦,都是通过孔老师的指导帮我完成了此次制作。孔老师在指导过程中体现出来的奉献精神和极大的耐心,令我非常感动。他的博学和知识的丰富更是令人佩服。因此再次感谢孔老师给予的指导。同时也非常感谢在制作过程中我们一起努力给过我帮助的同学们,谢谢你们!

更多相关推荐:
运筹学课程设计报告(完)

运筹学课程设计报告组别第三组设计人员设计时间20xx年6月25日20xx年7月6日1设计进度本课程设计时间分为两周第一周20xx年6月25日20xx年6月29日建模阶段此阶段各小组根据给出的题目完成模型的建立主...

运筹学课程设计心得

运筹学课程设计心得每学期的课设都是我们再次收获知识的时刻特别喜欢那种将理论应用到实践中的感觉只有在课设的时候才觉得自己所学是有意义的总是会欣喜的看着自己经过努力而得出的成果只有那一瞬间才会感觉所有的努力和付出都...

运筹学课程设计报告

长春工业大学课程设计报告课程设计名称运筹课程设计专业班级学生姓名指导教师20xx年7月12日课程设计任务书1运筹学课程设计报告组别第十八组设计人员设计时间20xx年6月27日20xx年7月12日1设计进度本课程...

运筹学课程总结

运筹学学习总结古人云“运筹帷幄之中,决胜千里之外”,运筹学是20世纪三四十年代发展起来的一门新兴交叉学科,它主要研究人类对各种资源的运用及筹划活动,以期通过了解和发展这种运用及筹划活动的基本规律,发挥有限资源的…

运筹学课程设计报告模板

宁波大红鹰学院信息工程学院课程设计报告课程名称项目名称姓名班级名称专业名称完成时间运筹学与数据分析实践炼油厂生产计划安排信息管理和信息系统20xx0225信息工程学院一问题的提出正文宋体小四单倍行距这是一个线性...

运筹学课程设计报告

运筹学课程设计报告求解线性规划问题学校学院专业班级学号姓名MATLAB求解20xx1227空气污染问题某钢厂的钢铁生产对城市的空气造成污染是该城市的主要污染源钢厂主要有两个污染源生产铁的高炉和将生铁炼成钢的平炉...

运筹学课程设计报告

长春工业大学课程设计报告课程设计名称运筹课程设计专业工商管理班级110508班学生姓名**指导教师**20**年12月20日课程设计任务书运筹学课程设计报告组别:第十二组设计人员:**设计时间:20**.12.…

运筹学课程设计

摘要运筹学是一门以人机系统组织管理为对象应用数学计算机等工具来研究各类优先资源的合理规划使用并提供优化决策方案的科学通过对数据的调查收集与统计分析以及具体模型的建立收集和统计上述拟定模型所需要的各种基础数据并最...

运筹学课程设计

南京工程学院课程设计任务书课程名称运筹学与系统分析课程设计院系部中心专业班级工业工程111姓名丁允想学号20xx10911组员王东磊许燕王尧峄沈鹏飞起止日期20xx1520xx19指导教师邱胜海王志亮1课程设计...

运筹学课程设计

HUNANUNIVERSITY运筹学课程设计报告课程题目整数线性规划及应用学生姓名学生学号专业班级指导老师目录摘要1一整数规划概述21分支定界法32割平面法4301整数规划的数学模型43101规划隐枚举法532...

运筹学课程设计

运筹学课程设计报告班级工业工程111姓名潘樟兴指导老师范佳静时间目录一模型构造311变量设置312模型构建4121单期模型4122多期模型5二LINDO模型和求解结果621LINDO模型622LINDO求解结果...

运筹学课程设计

附件一湖南工业大学课程设计资料袋学院系部学年第学期课程名称运筹学指导教师段卫龙职称副教授学生姓名刘玮专业班级数学与应用数学1201班学号12411300121学生姓名谢亮专业班级数学与应用数学1201班学号12...

运筹学课程设计总结(32篇)