Dijkstra vs Bi-directional Dijkstra Algorithm on US Road Network



3
13038

Here, we compare the progression of classical and bi-directional Dijkstra Algorithms as applied to US road network. The road network is intentionally sampled and reduced to a minimum spanning tree for easier visualization. The real connections between nodes can be different than what is shown here. Note that for this particular set of points and starting and target nodes, the classical Dijkstra takes 493 steps, i.e. 493 nodes are processed in the graph. On the other hand, for the bi-directional Dijkstra it processed 285 nodes which is roughly ~58 percent less number of nodes. For further details of the data used in this animation and some extra stuff, please check the blog post and do not forget to comment: http://wp.me/p1mKpD-co The underlying algorithm has been written in C++ but all visualization is via Python's matplotlib library. Basically, snapshots of each progression has been saved as png file and later combined with a 3rd party software for conversion to video. 0:00 Uni-directional Dijkstra 0:47 Bi-directional Dijkstra #dijkstra #dijkstrasalgorithm #graphalgorithm

Published by: meyavuz Published at: 6 years ago Category: آموزشی