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)$ and $O(S_{wcc} \cdot E_{wcc})$ times on the connected and unconnected graphs for APSP problems, respectively, where $S_{wcc}$ and $E_{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.
翻译:最短路径问题是图论中的常见挑战,具有广泛的潜在应用。然而,传统串行算法往往难以适应大规模图。为解决此问题,研究人员探索了并行计算方案。当前最先进的最短路径算法是Delta-stepping实现方法,该方法显著提升了Dijkstra算法的并行度。我们提出了一种具有更高并行度和可扩展性的新型最短路径算法,对于全源最短路径(APSP)问题,该算法在连通图和未连通图上的时间复杂度分别为$O(nm)$和$O(S_{wcc} \cdot E_{wcc})$,其中$S_{wcc}$和$E_{wcc}$分别表示图中最大弱连通分量包含的节点数和边数。为评估算法有效性,我们使用来自斯坦福网络分析平台和SuiteSparse矩阵集合的真实网络输入进行测试。结果表明,我们的算法优于Gunrock库中的BFS算法和Delta-stepping算法,分别实现了高达1,212.523倍和1,315.953倍的加速比。