Abstract

The single-source shortest path problem arises in many applications, such as roads, social applications, and computer networks. Finding the shortest path is challenging, especially for graphs that contain a large number of vertices and edges. In this work, we propose a novel hybrid method that first sparsifies a given graph by removing most edges that cannot form the shortest path tree and then applies a classical shortest path algorithm to the sparser graph. Removing all the edges that cannot form the shortest path tree would be expensive since it is equivalent to solving the original problem. Therefore, we propose an iterative bioinspired algorithm, namely the Physarum algorithm, as the first stage to sparsify the graph. We prove that the resulting sparser graph always contains the shortest path tree of the original graph. Next, a state-of-the-art algorithm such as Dijkstra's is applied to find the single-source shortest path on the resulting graph. The proposed method is therefore a two-stage hybrid algorithm and it computes the single-source shortest path exactly. We compare the accuracy and solution time of the proposed hybrid method against state-of-the-art implementation of Dijkstra's algorithm and the BFS algorithm on directed weighted and unweighted graphs, respectively, as a baseline. The results show that the proposed hybrid method achieves a significant speed improvement compared to the baseline.

Highlights

  • We consider the single-source shortest path problem in a directed graph with positive edge weights

  • A large number of edges that are not a part of the single-source shortest path tree are removed by using the Physarum algorithm, which is inherently distributed and scalable

  • In the second stage, either Dijkstra’s algorithm or the breadthfirst search (BFS) is applied to compute the singlesource shortest path using the simple and sparser tree obtained in the earlier stage

Read more

Summary

Introduction

We consider the single-source shortest path problem in a directed graph with positive edge weights. The Bellman–Ford algorithm [7] is another well-known single-source shortest path algorithm, which allows negative edge weights and can detect negative cycles in a graph as well. It fails to find the shortest path for graphs containing negative cycles. It has O(|E||V |) time complexity and is costlier than Dijkstra’s algorithm, especially for large graphs. Those algorithms can accurately find the shortest path, they are computationally expensive. Many bioinspired algorithms have emerged, such as genetic [8], ant colony [9], and Physarum solver [10] algorithms, to find the shortest path approximately

Objectives
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.