Single-Source Widest Path
#
Problem Specification#
Input, a weighted graph with integral edge weights, and a source, . The input graph can either be undirected, or directed.
#
Output, a mapping where is the maximum over all paths between and in of the minimum weight on the path and if is unreachable.
#
Algorithm ImplementationsWe provide two implementations of the algorithm, one based on the weighted SSWidestPath algorithm, and the other based on the Bellman-Ford algorithm. We note that the Bellman-Ford implementation works for the version of this problem where the graph has general edge-weights. The code for our implemenation is available here.
#
Cost BoundsThe wBFS-based implementation runs in expected work and depth w.h.p. The Bellman-Ford based implementation runs in work and depth.
#
Compiling and RunningThe benchmark can be compiled by running:
It can then be run on a test input graph in the uncompressed format as follows:
It can then be run on a test input graph in the compressed format as follows:
#
References[1] Laxman Dhulipala, Guy Blelloch, and Julian Shun
Julienne: A Framework for Parallel Graph Algorithms using Work-efficient Bucketing
Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 293-304, 2017.
[2] Laxman Dhulipala, Guy Blelloch, and Julian Shun
Theoretically Efficient Parallel Graph Algorithms Can Be Fast and Scalable
Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 393-404, 2018.