练习 8 另一种方法求最短路径六个城市的连接情况如图 lx8-1,求城市 A 到城市 F 的最短路径图 lx8-1 六个城市连接情况使用 Excel 的规划求解来处理最短路径问题,求得的结果如图 lx8-2 所示,即 A 到 F 的最短路径为 A→C→E→F图 lx8-2 最短路径求解结果8.1 输入最短路径问题路径信息(1)工作簿更名为“最算路径解法 2”2)加载工具单击【工具】→【加载宏】菜单项,打开【加载宏】对话框选中【规划求解】复选框,然后单击【确定】按钮将规划求解宏加载到 Excel 中2)将工作表 Sheet1 重命名“最短路径问题” ,输入如图 3.5-3 所示内容, “-”表示不存在路径图 lx8-3 将路径信息输入表格里8.2 建立求解最短路径问题模型建立解决问题的模型,如图 lx8-4 所示,其中 C14:H19 单元格区域用来记录实际的路径选择情况,0 表示路径未选择,1 表示选择了从某地出发前往某地的路径 “来源统计”用来统计出发地的情况, “目标统计”用来统计抵达地情况图 lx8-4 最短路径问题模型8.3 规划求解最短路径问题(1)加载工具单击【工具】→【加载宏】菜单项,打开【加载宏】对话框。
选中【规划求解】复选框,然后单击【确定】按钮将规划求解宏加载到 Excel 中2)在 C4:H9 单元格区域,将 “-”用 9999 替代,如图 lx8-5 所示用一个很大的数表示不存在的路径,避免以后选此路径图 lx8-5 用 9999 表示不存在路径(2)在 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”类型3)选中 J20 单元格,单击菜单【工具】→【规划求解】 ,打开“规划求解参数”对话框,在“设置目标单元格”文本框中选 J20 单元格选中【最小值】单选按钮在“可变单元格”文本框中选择 C14:H19 单元格区域4)添加约束条件单击【添加】按钮打开“添加约束”对话框添加如下约束条件:条件 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 外,其余节点有进则有出各个条件添加完成后单击【确定】按钮返回“规划求解参数”对话框,结果如图 lx8-6所示。
图 lx8-6 设置规划求解参数(5)为了提高规划求解的运算效率,单击“规划求解参数”对话框中的【选项】按钮,打开“规划求解选项”对话框,勾选其中的【采用线性模型】复选框,如图 lx8-7 所示图 lx8-7 采用线性规划模型(6)按【确定】返回“规划求解参数”对话框,单击【求解】按钮开始求解运算,显示找到一个结果,按【确定】退出“规划求解参数”对话框运算结果如图 lx8-8 所示图 lx8-8 最终运算结果所求最短路径为:A→C→E→F,路径长为 120。