2023年哈工大运筹学实验报告实验一实验二_第1页
2023年哈工大运筹学实验报告实验一实验二_第2页
2023年哈工大运筹学实验报告实验一实验二_第3页
2023年哈工大运筹学实验报告实验一实验二_第4页
2023年哈工大运筹学实验报告实验一实验二_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

实验一实验目的了解Excel的基本功能,熟悉界面,掌握基本的操作命令;熟悉Matlab编程环境,了解Matlab的基本功能,掌握基本的编程语言;用Excel和Matlab求解话务排班线性规划问题。二、实验器材PC机:20台。MicrosoftExcel软件(具有规划求解工具模块):20用户。Matlab软件(具有优化工具箱):20用户。三、实验原理:话务排班属于线性规划问题,通过对问题建立数学模型,根据Excel自身特点把数学模型在电子表格中进行清楚的描述,再运用规划求解工具设定相应的约束条件,最终完毕对问题的寻优过程,具体可参见1.2;在Matlab中,根据Matlab提供的线性规划求解函数,将数学模型转换成线性规划求解函数可传递的数值参数,最终实现对问题的寻优求解过程,具体可参见2中linprog函数描述和示例。四、实验内容和环节:某寻呼公司雇佣了多名话务员工作,他们天天工作3节,每节3小时,每节开始时间为半夜、凌晨3点钟、凌晨6点钟,上午9点、中午12点,下午3点、6点、9点,为方便话务员上下班,管理层安排每位话务员天天连续工作3节,根据调查,对于不同的时间,由于业务量不同,需要的话务员的人数也不相同,公司付的薪水也不相同,有关数据如下表所示。问:如何安排话务员才干保证服务人数,又使总成本最低?第一步:建立线性规划模型设为0点开始工作的人数,是3点开始工作的人数,是6点开始工作的人数,……,是21点开始工作的人数。Z为所支付的总薪水。算出每个时间段的最低需求人数,如++为6-9点工作的人数。由题意列出约束方程为:++≥8++≥6++≥15++≥20++≥25++≥23++≥18++≥10≥0(i=1,.....8)目的函数=84+80+70+62+62+66+72+80Excel求解过程描述打开Excel,选择“Excel选项”通过“工具”菜单的“加载宏”选项打开“加载宏”对话框来添加“规划求解”。将约束条件的系数矩阵输入Excel中,如下图所示,然后将目的函数的系数输入约束矩阵下方,最下方为最优解的值,输入“0”或不输入。系数矩阵的右端一列为合计栏,点击合计栏中单元格并在其中输入“=sumproduct(”,用鼠标左键拖动合计栏所在行的系数,选定后输入“,”,然后拖拉选定最下方的空白行,输入“)”,输入“Enter”。用此方法依次解决整个系数矩阵每一行和目的函数行,合计栏右端输入约束条件右端项,在合计栏和约束条件右端项之间可以输入“≧”符号,也可以不输入。上述环节完毕后,在菜单栏点击“数据”菜单,选择最右端“规划求解”选项,弹出“规划求解参数”对话框,目的单元格选择目的函数系数所在行和合计栏交叉处的单元格,选择求最小值,可变单元格选择解所在行。点击“添加约束条件”按钮,单元格引用位置选择合计那一列,约束关系选择“≧”,约束值选择右端项系数所在列,点击拟定。在“选项”中勾选“采用线性模型”和“假定非负”,假如是用EXCEL2023操作,环节与基本相同,个别界面会有些区别。极限值报告:敏感性报告:运算结果报告:Matlab求解过程:先在commandwindow对建立模型中各个参数矩阵进行赋值,同一行数字用空格分开,换行时用分号分开,矩阵用“【】”表达,分别将目的函数系数c,系数矩阵A,右端项b输入,lb值均取零。输入A和b时,原先的正数均加负号后输入;输入完毕后加分号,输入“Enter”,矩阵被储存并在workspace中显示出来。最后调用线性规划的函数[x,fval]=linprog(c,A,b,[],[],lb);回车,即可得求解结果最优解:最优解为=4,=2,=9,=9,=8,=6,=4,=0,表达当4个人从零点开始工作,2人从3点开始工作,………,0人从21点开始工作,目的函数即支付薪水取得最小值,为2864元。Excel和matlab优劣性比较:Excel模型直观明了,但是输入单元格较多,设立参数多,过程较复杂,而matlab有编程的意思,采用专门的操作语言,界面不够清楚明了,但是功能强大,输入快捷,运算迅速。Excel可用于求解变量较少,较为简朴的模型,用于平常使用,matlab则是比较专业的软件,合用于较为复杂的问题求解。实验二一、实验目的:纯熟掌握在Excel和Matlab环境下求解线性规划问题。用Excel和Matlab求解转运线性规划问题。二、实验器材PC机:20台。MicrosoftExcel软件(具有规划求解工具模块):20用户。Matlab软件(具有优化工具箱):20用户。三、实验原理:转运属于线性规划问题,通过对问题建立数学模型,根据Excel自身特点把数学模型在电子表格中进行清楚的描述,再运用规划求解工具设定相应的约束条件,最终完毕对问题的寻优求解过程,具体可参见1.2;在Matlab中,根据Matlab提供的线性规划求解函数,将数学模型转换成线性规划求解函数可传递的数值参数,最终实现对问题的寻优求解过程,具体可参见2中linprog函数描述和示例。四、实验内容和环节:A1、A2两煤矿产的煤运往B1、B2、B3三个城市销售,各煤矿的供应量、各城市的需求量以及煤矿与城市之间、煤矿与煤矿之间、城市与城市之间的单位运费如下表所示:城城市单位费运煤矿A1A2B1B2B3供应量(t)A1045907095200A2500806575230B19555045700B27560300300B38580306000需求量(t)00100150180问:如何安排各城市与城市之间、各煤矿与煤矿之间、各煤矿与城市之间的运送量,使得总的运送成本最低?建立模型:设为上述表格中相应位置的从地到地的运送量,设Z为运送的总费用。对于两个煤矿来说,运出总量=运入总量+产量;对于城市,运入总量=运出总量+需求量。列出约束不等式:+++----=200-++++---=230+----++=100++----+=150+++----=180≥0目的函数minz=45+90+70+95+50+80+65+75+95+55+45+70+75+60+30+30+85+80+30+60Excel求解过程:打开Excel,选择“Excel选项”通过“工具”菜单的“加载宏”选项打开“加载宏”对话框来添加“规划求解”。将约束条件的系数矩阵输入Excel中,如下图所示,然后将目的函数的系数输入约束矩阵下方,最下方为最优解的值,输入“0”或不输入。系数矩阵的右端一列为合计栏,点击合计栏中单元格并在其中输入“=sumproduct(”,用鼠标左键拖动合计栏所在行的系数,选定后输入“,”,然后拖拉选定最下方的空白行,输入“)”,输入“Enter”。用此方法依次解决整个系数矩阵每一行和目的函数行,合计栏右端输入约束条件右端项,在合计栏和约束条件右端项之间可以输入“≧”符号,也可以不输入。上述环节完毕后,在菜单栏点击“数据”菜单,选择最右端“规划求解”选项,弹出“规划求解参数”对话框,目的单元格选择目的函数系数所在行和合计栏交叉处的单元格,选择求最小值,可变单元格选择解所在行。点击“添加约束条件”按钮,单元格引用位置选择合计那一列,约束关系选择“=”,约束值选择右端项系数所在列,点击拟定。在“选项”中勾选“采用线性模型”和“假定非负”,假如是用EXCEL2023操作,环节与基本相同,个别界面会有些区别。运算结果报告:极限值报告:敏感性报告:Matlab求解过程:先在commandwindow对建立模型中各个参数矩阵进行赋值,同一行数字用空格分开,换行时用分号分开,矩阵用“【】”表达,分别将目的函数系数c,系数矩阵Aeq,右端项beq输入,lb值均取零。输入一个命令完毕后加分号,输入“Enter”,矩阵被储存并在workspace中显示出来。最后调用线性规划的函数[x,fval]=linprog(c,[],[],Aeq,beq,lb);回车,即可得求解结果最优解:最优解为=50,=150,=50,=180,其余变量均为零。表达当煤矿A1向B1运送量为50,A1向B2运送量为150,A2向B1运送量为50

温馨提示

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

评论

0/150

提交评论