关键字 |
迪杰斯特拉算法,时间复杂度、道路网络 |
介绍 |
目前广泛使用的基于位置的服务和GPS技术兴趣重燃的发展非常快的和可伸缩的最短路径算法来找到一个有效的路线为旅行者在公路网络。计算两点之间最短路径或距离是最基本和重要的关键问题之一,道路网络。许多人经常面临很多问题,计划他们的行程有自己的汽车。最近开发了许多应用程序来解决问题,找到一种有效的途径的道路网络。过去的文献表明,各种最短路径算法开发公路网络的有效途径。但仍然抗拒的问题。因此,研究的目标是提出一种新的最短路径算法为旅行者提供一个更好的解决方案在公路网络。 |
由于地理信息系统(GIS)技术的发展有可能确定最快的路线,派遣紧急车辆像救护车,消防车辆等GIS的协助下。因为一个链接在一个真正的道路网络在城市往往具有不同程度的交通拥堵在每天不同的时间段,这不是一项容易的任务找到最短路径[1]。因此,最快的路线只能实时确定。在某些情况下最快的路线必须确定几秒钟。此外,当大型公路网络应用程序参与,最短路径的确定在一个大型网络可以计算非常困难,因为许多应用程序涉及到公路网络找到最短路径。 |
在1990年代和1980年代,很多工作已经完成改善现有的算法,这些工作主要集中在寻找一个目的地的最短路径从一个原点大规模道路地图[2]。导航系统的引入导致了许多新技术。大部分研究集中在预处理网络。在预处理,确定一些额外的信息。此信息可以用于任何SPP-algorithm减少计算复杂度,并提供更好的结果。 |
相关工作 |
图论 |
图是数学概念正式定义为一组顶点(或节点)V和一组边E连接这些顶点。边缘被称为指示如果一对顶点,优势可以用来旅行从一个节点到另一个而不是相反。边也有一个数值,通常称为重量或成本,“工作”需要的抽象表示沿边缘。只需要这些基本概念理解的最短路径问题;更高级的概念,请参考[3]。图形通常作为网络的抽象表示,如一个路线图,地图语言词汇等之间的距离和环境可以使离散成“检查点”,使人工智能导航的代理。 |
最短路径算法的概述 |
在过去的几十年中有各种最短路径算法开发。最短路径算法分为三类单源最短路径算法,单目标最短路径算法,全对最短路径算法和它下面的图1所示。 |
Djikstra的最短路径算法 |
这是一般情况下的广度优先搜索算法,可以看作是许多现代的祖先路径找到技术[4]。在源顶点开始,我们分配每个相邻顶点的成本价值优势加入他们。接下来,我们处理顶点最少的累积成本和累计成本+边缘成本分配给每个相邻的顶点。重复这个步骤,直到每个顶点处理完毕。如果重新审视一个顶点,我们分配新的成本如果低于当前分配成本。的算法,我们不仅解决了单一对最短路径问题,但可以找到源顶点和任何其他顶点之间的距离。 |
迪杰斯特拉最短路径的算法是最常用的解决单源最短路径问题。图G (V, E), V是顶点的集合和E在哪里的边缘,寻找两个顶点之间的路径的运行时间变化时使用不同的数据结构。这个项目使用二叉堆来实现Dijkstra算法虽然有一些数据结构可能会略有改善时间复杂度,如斐波那契堆可以购买的时间复杂度O (V *日志(V))。 |
时间复杂度 |
第一个for循环的运行时间是O (V)。在while循环的每次迭代中,Extract_Min logV堆。内部for循环遍历每一个当前节点的相邻节点,总运行时间是O (E)。因此,该算法的时间复杂度是O ((V + E) *日志(V) = O (E *日志(V))。这个算法的正确性证明在[5]。图中的节点数量的增加,应用算法的运行时间将会越来越长。通常情况下,城市的道路网拥有超过10 ^ 4节点。快速最短路径算法变得更可取的莫尔等人分析了现有不同的迪杰斯特拉最短路径算法。他们发现,在现有的迪杰斯特拉算法。 |
文献综述 |
鲍尔等人发现,有必要找到一个高效的公路网络最短路径路由。因此,他们开发了一种新的最短路径算法通过修改使用迪杰斯特拉最短路径的算法结合层次和目标导向技术。该算法显示了更好的结果比现有的迪杰斯特拉最短路径的算法,但需要高计算时间比现有的算法。 |
迪杰斯特拉最短路径的算法 |
为每个u∈G; |
d (u) =无穷大; |
父母(u) =零; |
结束了 |
d [s] = 0;/ / s是起点 |
H ={年代};/ /堆 |
虽然NotEmpty (H)和targetNotFound: |
u = Extract_Min (H); |
标签你检查; |
为每个v毗邻u: |
如果d [v] > d (u) + w (u, v): |
d [v] = d (u) + w (u, v); |
父母[v] = u; |
DecreaseKey [v、H); |
戈德堡等人分析了各种最短路径算法。他们发现有很多问题存在于现有的算法。因此他们开发了一个最短路径算法称为*最短路径算法。这个算法是Dijkstra算法的扩展。在这其中包括新的参数,如成本,修改重量等。该算法提供了更好的结果比现有的迪杰斯特拉最短路径算法[6、7]。 |
计算复杂度非常高。因此他们决定减少现有算法的计算时间。所以他们发明了一种使用分区图的最短路径算法技术的迪杰斯特拉算法减少计算(8、9、10)。 |
算法 |
计算两点之间最短路径或距离是最基本和重要的关键问题之一,道路网络。许多人经常面临很多问题,而与自己的车辆计划他们的行程。最近开发了许多应用程序来解决问题,找到一种有效的途径的道路网络。过去的文献表明,各种最短路径算法开发公路网络的有效途径。但仍然抗拒的问题。因此,有必要提出一种新的最短路径算法为旅客提供更好的解决方案在公路网络。 |
由于地理信息系统(GIS)技术的发展有可能确定最快的路线,派遣紧急车辆像救护车,消防车辆等GIS的协助下。因为一个链接在一个真正的道路网络在城市往往具有不同程度的交通拥堵在每天不同的时间段,这不是一项容易的任务找到最短路径。因此,最快的路线只能实时确定。在某些情况下最快的路线必须确定几秒钟。此外,当大型公路网络应用程序参与,最短路径的确定在一个大型网络可以计算非常困难,因为许多应用程序涉及到公路网络找到最短路径。 |
过去文献,许多像迪杰斯特拉最短路径算法的算法,bellman算法,A *搜索算法,弗洛伊德沃肖尔算法和约翰逊的算法开发。全面分析了现有最短路径算法。最后,它是观察到迪杰斯特拉最短路径算法计算最短路径的最合适的道路网络。但现有的迪杰斯特拉最短路径算法需要一些修改来提高效率和找到有效的最短路径和减少计算复杂度。因此,一个名为修改Dijkstra算法的最短路径算法的新算法(MDSP)提出 |
修改后的迪杰斯特拉最短路径的算法(MDSP) |
一种新的最短路径算法称为修改Dijkstra算法的最短路径算法(MDSP)提出。在该算法中多个参数被用来找到有效的最短路径,而不是使用单一参数。MDSP算法的效率是通过测量其节点的最短路径分析和时间复杂性。 |
算法1:MDSP |
开始 |
图中的每个顶点v |
alternate_path[我]:=零; |
dist [v]: =无穷大; |
weight_update(选择); |
图中的每个顶点v |
如果v =源或v |
=目的地然后 |
为每个邻居u, v |
如果alternate_path[我]> dist (u) + |
距离(u, v) |
alternate_path[我]:= dist (u) + |
距离(u, v); |
如果 |
结束了 |
如果 |
结束了 |
结束了 |
结束 |
算法2:包括多个参数 |
开始 |
如果c = d; |
如果c = t |
d: = d * s; |
其他的 |
d: = d * z; |
返回d; |
endwhere |
c =选择 |
d =距离 |
t =时间 |
s =时间因素 |
z =拥塞的因素 |
结果分析 |
MDSP算法的效率是验证节点(它显示了最短路径)和时间使用斋浦尔城市数据库。这个实验是使用Java开发工具。现有工具和算法实现。进行实验分析,我们认为斋浦尔数据库。该算法与现有的修改Dijkstra算法的算法即相比,迪杰斯特拉算法的桶(第一劝业),迪杰斯特拉算法的双桶(DKD),迪杰斯特拉算法的近似桶(分析)。 |
证明该MDSP算法有效地选择最短的是通过计算节点选择高效的最短路径。节点的三种不同的算法与我们的算法计算,结果显示在表1。图3显示了比较分析现有的算法和该算法MDSP。比较分析表明,MDSP需要最少的节点比其他三个现有的算法。 |
提出MDSP算法降低了时间复杂度。这是通过计算时间找到高效的最短路径。表2显示了时间的结果现有最短路径算法和提出MDSP算法。执行比较分析与现有的三个与MDSP最短路径算法,结果显示在图4。比较分析表明,MDSP花较少时间比现有计算高效的最短路径算法。 |
从表1和图2实验结果分析表明,拟议中的最短路径算法MDSP发现有效的最短路径因为现有的算法相比,它只需要最小的节点数量,也需要更少的计算时间。因此提出MDSP算法执行比现有的三个修改后的迪杰斯特拉最短路径算法。 |
结论 |
许多研究工作进行解决公路网络的最短路径问题。本文提出了一种新的最短路径算法即MDSP多个特性。开发的算法考虑到各种问题出现在现有的修改后的迪杰斯特拉最短路径算法。在这个MDSP算法,而不是单个参数多个参数包括找到有效的道路网络的最短路径。MDSP算法的结果证明,该算法有效地发现道路网络的最短路径与最低的时间复杂性。 |
表乍一看 |
|
|
表1 |
表2 |
|
|
数据乍一看 |
|
|
引用 |
- 布鲁内尔,E。,Delling, D., Gemsa, A., and Wagner, D., “Space-efficient SHARC-routing”, 9th International Symposium on Experimental Algorithms (SEA). 2012, 47-5858.
- 鲍尔,r·德尔,d . 2009。,“SHARC: Fast and robust unidirectional routing”, ACM Journal of Experimental Algorithmics 14. Announced at ALENEX 2008.
- 鲍尔,R。,Delling, D., Sanders, P., Schieferdecker, D., Schultes, D., and Wagner, D. ,”Combining hierarchical and goal-directed speed-up techniques for Dijkstra's algorithm”, ACM Journal of Experimental Algorithmics, 2010, pp 34-42.
- 托马斯·h·科尔曼、查尔斯·E。Lieserson,罗纳德·l·莱维斯特Clifford Stein“算法导论”,2009年印度,普伦蒂斯霍尔。
- AnanyLevitin”,介绍算法的设计与分析”,培生教育,第二版,2009年版。
- d·德尔·a . v . Goldberg t . Pajor, r . f . Werneck。可定制的路线规划。在海上,376 - 387页,2011年。
- d·德尔·a . v . Goldberg, r·f·Werneck“集线器”标签的压缩,大海,29,2013页。
- m . Hilger e·科勒r·h·莫尔和h .先令,”快弧- ags点对点的最短路径计算。最短路径问题”,第九DIMACS实现挑战,74:41 - 72,2009。
- 亚伯拉罕,d·德尔·A . v . Goldberg, r·f·Werneck“hub-based标签最短路径算法在道路网络”,海,230 - 241页,2011年。
- 亚伯拉罕,d·德尔·a . v . Goldberg, r·f·Werneck最短路径的“分层中心的标号”,ESA,巢族,2012页。
|