使用MapQuest规划节点1到节点7路线时选中的行驶方向是什么

问题
使用MapQuest规划从节点1到节点7的行驶路线时,最终选中的行驶方向是哪一个?
解题方法与结论
MapQuest默认采用Dijkstra最短路径算法规划路线,核心是计算起点到终点的累计权重最低的路径,推导过程如下:
- 先明确各节点的邻接权重:
- 节点1:到节点2权重2、到节点3权重4
- 节点2:到节点4权重5、到节点5权重1
- 节点3:到节点6权重3
- 节点4:到节点7权重3
- 节点5:到节点4权重1、到节点6权重2、到节点7权重7
- 节点6:到节点7权重1
- 逐轮计算最短路径:
- 初始状态:节点1距离为0,其余节点距离为无穷大
- 第一轮选距离最小的节点2,累计距离2,更新节点4距离为7、节点5距离为3
- 第二轮选距离最小的节点5,累计距离3,更新节点4距离为4、节点6距离为5、节点7距离为10
- 第三轮选距离最小的节点3、节点4(距离均为4),节点3邻接的节点6更新后距离为7大于现有值,无变化;节点4邻接的节点7更新后距离为7
- 第四轮选距离最小的节点6,累计距离5,邻接的节点7更新后距离为6
- 最终得到最短路径为
1→2→5→6→7,总权重为6
- 最终行驶方向:从节点1出发先向东南行至节点2,再向东行至节点5,再向东南行至节点6,最后向东到达节点7,整体沿东南方向优先选取低权重支路行进。
内容的提问来源于stack exchange,提问作者Ashish Kumar
相关产品推荐
相关产品推荐

