Approximate Set Cover
#
Problem Specification#
Input, an undirected bipartite graph representing an unweighted set cover instance.
#
Output, a set of sets such that , and is an -approximation to the optimal cover.
#
Algorithm ImplementationsWe provide an implementation of the Blelloch et al. algorithm [1]. Our implementation is specifically based on the bucketing-based implementation from Julienne [2], with one significant change regarding how sets acquire elements which we discuss in our paper [3].
The code for our implemenation is available here.
#
Cost BoundsThe algorithm runs in work and depth. A detailed proof can be found in [1], and a high-level description of the algorithm can be found in Section 6.3 of [3].
#
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] Guy Blelloch, Richard Peng, and Kanat Tangwongsan
Linear-work Greedy Parallel Approximate Set Cover and Variants
Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2011.
[2] 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.
[3] 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.