3 research outputs found

    NEW IDEAS TO SPEED-UP FLOYD-WARSHALL SHORTEST PATHS ALGORITHM

    Get PDF
    Floyd and Warshall’s algorithm for the all-pairs shortest path problem is a Θ(n3) procedure which revisits n times all the cells of an n×n distance matrix. At each pass, all the cells are checked but only some of them get updated. In this paper, we report some preliminary results on a new version of the algorithm, designed to avoid checking cells which will not be updated, in order to reduce the overall time. Our procedure uses heaps to quickly identify which cells can be good candidates for an update. The new version improves over Floyd-Warshall’s original for those input graphs in which the number of cells updated over all passes is substantially smaller than the number of checks. However, our procedure is worse than the original if the ratio between cell checks and updates is not large enough. To obtain an improvement independently of the particular instance type, we propose a hybrid combination of the two approaches, which starts with the original Floyd and Warshall version and then switches to the new one after some iterations. Preliminary experiments show the effectiveness of this strateg

    A Novel Shortest Paths Algorithm on Unweighted Graphs

    Full text link
    The shortest paths problem is a common challenge in graph theory, with a broad range of potential applications. However, conventional serial algorithms often struggle to adapt to large-scale graphs. To address this issue, researchers have explored parallel computing as a solution. The state-of-the-art shortest paths algorithm is the Delta-stepping implementation method, which significantly improves the parallelism of Dijkstra's algorithm. We propose a novel shortest paths algorithm achieving higher parallelism and scalability, which requires O(nm)O(nm) and O(Swcc⋅Ewcc)O(S_{wcc} \cdot E_{wcc}) times on the connected and unconnected graphs for APSP problems, respectively, where SwccS_{wcc} and EwccE_{wcc} denote the number of nodes and edges included in the largest weakly connected component in graph. To evaluate the effectiveness of our algorithm, we tested it using real network inputs from Stanford Network Analysis Platform and SuiteSparse Matrix Collection. Our algorithm outperformed the solution of BFS and Delta-stepping algorithm from Gunrock, achieving a speedup of 1,212.523×\times and 1,315.953×\times, respectively
    corecore