规划求解求最短路径
Posted 麦斯花园
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了规划求解求最短路径相关的知识,希望对你有一定的参考价值。
小编语:经过一次讨论课,对EXCEL开启了改观生涯,之前的应付考试到现行的感兴趣,有一番外感受就是案例教学值得推广,在某种程度上能改变一个人的思维路径和学习的兴趣点,从而激发内源自主性,这一点很重要。今天PO上冯Sir的一节课教案,个人觉得讲的已经很清楚了,能直接用在问题上,欢迎留言讨论。
一、案例:根据上级指示我部必须在最短时间内由汤泉镇机动至七佛寺待命。根据前期侦察,由汤泉镇前往七佛寺的路径,如图
在不考虑路途差别等情况下,如何找出最短路径?
二、模型准备
1、抽象出地图示意图并标出距离
2、输入最短路径问题路径信息
(1)工作簿更名为“最算路径解法2”。
(2)加载工具。单击【工具】→【加载宏】菜单项,打开【加载宏】对话框。选中【规划求解】复选框,然后单击【确定】按钮将规划求解宏加载到Excel中。
(2)将工作表Sheet1重命名“最短路径问题”,输入如图所示内容,“-”表示不存在路径。
三、模型的建立与求解
1、建立解决问题的模型
如图所示,其中C14:H19单元格区域用来记录实际的路径选择情况,0表示路径未选择,1表示选择了从某地出发前往某地的路径。“来源统计”用来统计出发地的情况,“目标统计”用来统计抵达地情况。
2、规划求解最短路径:
(1)加载工具。单击【工具】→【加载宏】菜单项,打开【加载宏】对话框。选中【规划求解】复选框,然后单击【确定】按钮将规划求解宏加载到Excel中。
(2)在C4:H9单元格区域,将“-”用9999替代,如图所示。用一个很大的数表示不存在的路径,避免以后选此路径。
(3)在I14单元格输入公式:
=SUM(C14:H14)
填充I15:I19单元格区域。
在C20单元格输入公式:
=SUM(C14:C19)
填充D20:H20单元格区域。
在J14单元格输入公式:
=SUMPRODUCT(C4:H4,C14:H14)
填充J15:J19单元格区域。
在J20单元格输入公式:
=SUM(J14:J19)
设置C14:H19单元格区域的格式,选【格式】→【单元格】→【数字】→【自定义】的“0”类型。
(4)选中J20单元格,单击菜单【工具】→【规划求解】,打开“规划求解参数”对话框,在“设置目标单元格”文本框中选J20单元格。选中【最小值】单选按钮。在“可变单元格”文本框中选择C14:H19单元格区域。
(5)添加约束条件。单击【添加】按钮打开“添加约束”对话框添加如下约束条件:
条件1:$C$14:$H$19=二进制
条件2:$C$20=1,表示A为起点,必定存在以A为出发点的路径
条件3:$I$19=1,表示F为终点,必定存在以F为抵达地的路径
条件4:$I$14=0,表示以A为终点的路径不存在
条件5:$H$20=0,表示以F为起点的路径不存在
条件6:$D$20: $G$20=$I$15: $I$18,表示除A、F外,其余节点有进则有出
各个条件添加完成后单击【确定】按钮返回“规划求解参数”对话框,结果如图所示。
(6)为了提高规划求解的运算效率,单击“规划求解参数”对话框中的【选项】按钮,打开“规划求解选项”对话框,勾选其中的【采用线性模型】复选框,如图所示。
(7)按【确定】返回“规划求解参数”对话框,单击【求解】按钮开始求解运算,显示找到一个结果,按【确定】退出“规划求解参数”对话框。运算结果如图所示。
所求最短路径为:A→C→E→F,即:汤泉镇→ 虎凹→ 兴隆庵→七佛寺,路径长为120。
冯Q:若某条路塌方无法通行,应如何规划?
以上是关于规划求解求最短路径的主要内容,如果未能解决你的问题,请参考以下文章