网址:http://algo2.iti.kit.edu/routeplanning.php
开始进行路径规划算法的分析和研究,所有的研究都是针对该网站提供的论文,进行简单的学习分析,尽量使用简单的语言,提取核心思想
网址:http://algo2.iti.kit.edu/schultes/hwy/utrecht.pdf
在所有的描述中,不会提供任何的插图和相关的数学表达式,相关的参考资料,均可从提供的网址
中搜索到
当前使用的是欧洲的路网,作为道路的搜索模型,大约有1800万个节点,完全符合大型复杂的路网结构
的条件
假设起始点S(source)和目的点t(target)之间的半径为R
1)采用单纯的Dijkstra算法
搜索的半径是PI*R*R
2)采用bidirectional Dijkstra算法(双向搜索)
搜索的半径大概是2*PI*(R/2)*(R/2)
因此第二种算法比第一种算法节省了一半的搜索范围
即使是双向搜索,效率仍然非常低下,但是可以通过下面的处理提供进一步优化的方向
1)额外的数据 例如:节点坐标
不仅仅保存道路之间的长度,还保存节点坐标,路径的规划点实际上还是不会偏离起点和终点的连线
2)预处理(preprocessing)->辅助数据(auxiliary data) 例如:路标
3)图的特殊属性 例如:平坦(planar),分层的(hierarchical)
如下提供加快路径规划的方案:
Contraction Hierarchies(CH) 分层思想
Highway-Node Routing
路网分层算法的基础
http://algo2.iti.kit.edu/schultes/hwy/thesisSlides.pdf
研究网址
http://www.policyalmanac.org/games/binaryHeaps.htm
http://mgrenier.me/2011/06/pathfinding-concept-the-basics/
http://algo2.iti.kit.edu/schultes/hwy/demo/
转载于:https://blog.51cto.com/fengyuzaitu/1738693