哈工大运筹学实验报告实验一实验二

上传人:亦明 文档编号:149799629 上传时间:2020-10-30 格式:DOC 页数:10 大小:19.43KB
返回 下载 相关 举报
哈工大运筹学实验报告实验一实验二_第1页
第1页 / 共10页
哈工大运筹学实验报告实验一实验二_第2页
第2页 / 共10页
哈工大运筹学实验报告实验一实验二_第3页
第3页 / 共10页
哈工大运筹学实验报告实验一实验二_第4页
第4页 / 共10页
哈工大运筹学实验报告实验一实验二_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《哈工大运筹学实验报告实验一实验二》由会员分享,可在线阅读,更多相关《哈工大运筹学实验报告实验一实验二(10页珍藏版)》请在金锄头文库上搜索。

1、哈工大运筹学实验报告,实验一,实验二 实验一 一、 实验目的 1) 了解 Excel 的基本功能,熟悉界面,掌握基本的操作命令; 2) 熟悉 Matlab 编程环境,了解 Matlab 的基本功能,掌握基本的编程语言; 3) 用 Excel 和 Matlab 求解话务排班线性规划问题。 二、实验器材 1) PC 机:20 台。 2) Microsoft Excel 软件(具备规划求解工具模块):20 用户。 3) Matlab 软件(具备优化工具箱):20 用户。 三、实验原理: 话务排班属于线性规划问题,通过对问题建立数学模型,根据 Excel 自身特点把数学模型在电子表格中进行清晰的描述,

2、再利用规划求解工具设定相应的约束条件,最终完成对问题的寻优过程,具体可参见 1.2;在 Matlab 中,根据 Matlab提供的线性规划求解函数,将数学模型转换成线性规划求解函数可传递的数值参数,最终实现对问题的寻优求解过程,具体可参见 2 中 linprog 函数描述和示例。 四、实验内容和步骤: 某寻呼公司雇佣了多名话务员工作,他们每天工作 3 节,每节 3 小时,每节开始时间为午夜、凌晨 3 点钟、凌晨 6 点钟,上午 9 点、中午 12 点,下午 3 点、6 点、9 点,为方便话务员上下班,管理层安排每位话务员每天连续工作 3 节,根据调查,对于不同的时间,由于业务量不同,需要的话务

3、员的人数也不相同,公司付的薪水也不相同,有关数据如下表所示。 问:如何安排话务员才能保证服务人数,又使总成本最低? 第一步:建立线性规划模型 设1x 为 0 点开始工作的人数,2x 是 3 点开始工作的人数,3x 是 6 点开始工作的人数,4x ?,8x 是 21 点开始工作的人数。Z 为所支付的总薪水。算出每个时间段的最低需求人数,如1x +2x +3x 为 6-9 点工作的人数。由题意列出约束方程为: 1x + 7x +8x 8 1x +2x + 8x 6 1x +2x +3x 15 2x +3x +4x 20 3x +4x +5x 25 4x +5x +6x 23 5x +6x +7x

4、18 6x +7x +8x 10 ix 0(i=1,.8) 目标函数zmin =841x +802x +703x +624x +625x +666x +727x +808x l Excel 求解过程描述 打开 Excel,选择“Excel 选项”通过“工具”菜单的“加载宏”选项打开“加载宏”对话框来添加“规划求解”。将约束条件的系数矩阵输入 Excel 中,如下图所示,然后将目标函数的系数输入约束矩阵下方,最下方为最优解的值,输入“0”或不输入。系数矩阵的右端一列为合计栏,点击合计栏中单元格并在其中 输入“=sumproduct(”,用鼠标左键拖动合计栏所在行的系数,选定后输入“,”,然后拖拉

5、选定最下方的空白行,输入“)”,输入“Enter”。用此方法依次处理整个系数矩阵每一行和目标函数行,合计栏右端输入约束条件右端项,在合计栏和约束条件右端项之间可以输入“”符号,也可以不输入。 上述步骤完成后,在菜单栏点击“数据”菜单,选择最右端“规划求解”选项,弹出“规划求解参数”对话框,目标单元格选择目标函数系数所在行和合计栏交叉处的单元格,选择求最小值,可变单元格选择解所在行。点击“添加约束条件”按钮,单元格引用位置选择合计那一列,约束关系选择“”,约束值选择右端项系数所在列,点击确定。在“选项”中勾选“采用线性模型”和“假定非负”,如果是用 EXCELxx 操作,步骤与基本相同,个别界面

6、会有些区别。 极限值报告: 敏感性报告: 运算结果报告: b Matlab 求解过程: 先在 mand window 对建立模型中各个参数矩阵进行赋值,同一行数字用空格分开,换行时用分号分开,矩阵用“【】”表示,分别将目标函数系数 c,系数矩阵 A,右端项 b 输入,lb 值均取零。输入 A 和 b 时,原先的正数均加负号后输入;输入完成后加分号,输入“Enter”,矩阵被储存并在 workspace 中显示出来。最后调用线性规划的函数x,fval=linprog(c,A,b,lb);回车,即可得求解结果 最优解: 最优解为1x =4,2x =2,3x =9,4x =9,5x =8,6x =6

7、,7x =4,8x =0,表示当 4个人从零点开始工作,2 人从 3 点开始工作,?,0 人从 21 点开始工作,目标函数即支付薪水取得最小值,为 2864 元。 l Excel 和 和 b matlab 优劣性比较: Excel 模型直观明了,但是输入单元格较多,设置参数多,过程较复杂,而matlab 有编程的意思,采用专门的操作语言,界面不够清晰明了,但是功能强大,输入快捷,运算迅速。Excel 可用于求解变量较少,较为简单的模型,用于日常使用,matlab 则是比较专业的软件,适用于较为复杂的问题求解。 实验二 一、实验目的: 1) 熟练掌握在 Excel 和 Matlab 环境下求解线

8、性规划问题。 2) 用 Excel 和 Matlab 求解转运线性规划问题。 二、实验器材 1) PC 机:20 台。 2) Microsoft Excel 软件(具备规划求解工具模块):20 用户。 3) Matlab 软件(具备优化工具箱):20 用户。 三、实验原理: 转运属于线性规划问题,通过对问题建立数学模型,根据 Excel 自身特点把数学模型在电子表格中进行清晰的描述,再利用规划求解工具设定相应的约束条件,最终完成对问题的寻优求解过程,具体可参见 1.2;在 Matlab 中,根据 Matlab提供的线性规划求解函数,将数学模型转换成线性规划求解函数可传递的数值参数,最终实现对问

9、题的寻优求解过程,具体可参见 2 中 linprog 函数描述和示例。 四、实验内容和步骤: A1、A2 两煤矿产的煤运往 B1 、B2、B3 三个城市销售,各煤矿的供应量、各城市的需求量以及煤矿与城市之间、煤矿与煤矿之间、城市与城市之间的单位运费如下表所示: A 1 A 2 B 1 B 2 B 3 供应量(t) A 1 0 45 90 70 95 200 A 2 50 0 80 65 75 230 B 1 95 55 0 45 70 0 B 2 75 60 30 0 30 0 B 3 85 80 30 60 0 0 需求量(t) 0 0 100 150 180 问:如何安排各城市与城市之间、

10、各煤矿与煤矿之间、各煤矿与城市之间的运输量,使得总的运输成本最低? 建立模型: 设ijx 为上述表格中对应位置的从iA 地到jB 地的运输量,设 Z 为运输的总费用。对于两个煤矿来说,运出总量=运入总量+产量;对于城市,运入总量=运出总量+需求量。列出约束不等式: 12x +13x +14x +15x - -21x - -31x - -41x - -51x =200 - -12x +21x +23x +24x +25x - -32x - -42x - -52x =230 13x +23x - -31x - -32x - -34x - -35x +43x +53x =100 14x +24x +

11、34x - -41x - -42x - -43x - -45x +54x =150 15x +25x +35x +45x - -51x - -52x - -53x - -54x =180 ijx 0 0 数 目标函数 minz=4512x + 9013x + 7014x + 9515x + 5021x + 8023x + 6524x + 7525x + 9531x +5532x +4534x +7035x +7541x +6042x +3043x +3045x +8551x +8052x +3053x +6054x l Excel 求解过程: 打开 Excel,选择“Excel 选项”通过“工

12、具”菜单的“加载宏”选项打开“加载宏”对话框来添加“规划求解”。将约束条件的系数矩阵输入 Excel 中,如下图所示,然后将目标函数的系数输入约束矩阵下方,最下方为最优解的值,输入“0”或不输入。系数矩阵的右端一列为合计栏,点击合计栏中单元格并在其中输入“=sumproduct(”,用鼠标左键拖动合计栏所在行的系数,选定后输入“,”, 然后拖拉选定最下方的空白行,输入“)”,输入“Enter”。用此方法依次处理整个系数矩阵每一行和目标函数行,合计栏右端输入约束条件右端项,在合计栏和约束条件右端项之间可以输入“”符号,也可以不输入。 上述步骤完成后,在菜单栏点击“数据”菜单,选择最右端“规划求解

13、”选项,弹出“规划求解参数”对话框,目标单元格选择目标函数系数所在行和合计栏交叉处的单元格,选择求最小值,可变单元格选择解所在行。点击“添加约束条件”按钮,单元格引用位置选择合计那一列,约束关系选择“=”,约束值选择右端项系数所在列,点击确定。在“选项”中勾选“采用线性模型”和“假定非负”,如果是用 EXCELxx 操作,步骤与基本相同,个别界面会有些区别。 运算结果报告: 极限值报告: 敏感性报告: b Matlab 求解过程: 先在 mand window 对建立模型中各个参数矩阵进行赋值,同一行数字用空格分开,换行时用分号分开,矩阵用“【】”表示,分别将目标函数系数 c,系数矩阵 Aeq

14、,右端项 beq 输入,lb 值均取零。输入一个命令完成后加分号,输入“Enter”,矩阵被储存并在 workspace 中显示出来。最后调用线性规划的函数x,fval=linprog(c,Aeq,beq,lb);回车,即可得求解结果 最优解: 最优解为13x =50,14x =150,23x =50,25x =180,其余变量均为零。表示当煤矿 A1 向 B1 运输量为 50,A1 向 B2 运输量为 150,A2 向 B1 运输量为 50,A2 向 B3 运输量为 180 时,目标函数即运输成本取得最小值为 32500 元。 l Excel 和 和 b matlab 优劣性比较: Excel 模型直观明了,但是输入单元格较多,设置参数多,过程较复杂,而matlab 有编程的意思,采用专门的操作语言,界面不够清晰明了,但是功能强大,输入快捷,运算迅速。Excel 可用于求解变量较少,较为简单的模型,用于日常使用,matlab 则是比较专业的软件,适用于较为复杂的问题求解。 模板,内容仅供参考

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号