Streaming Submodular Maximization with Matroid and Matching Constraints
Recent progress in (semi-)streaming algorithms for monotone submodular function maximization has led to tight results for a simple cardinality constraint. However, current techniques fail to give a similar understanding for natural generalizations such as matroid and matching constraints. This paper aims at closing this gap. For a single matroid of rank k (i.e., any solution has cardinality at most k), our main results are: ∙ A single-pass streaming algorithm that uses O(k) memory and achieves an approximation guarantee of 0.3178. ∙ A multi-pass streaming algorithm that uses O(k) memory and achieves an approximation guarantee of (1-1/e - ε) by taking constant number of passes over the stream. This improves on the previously best approximation guarantees of 1/4 and 1/2 for single-pass and multi-pass streaming algorithms, respectively. In fact, our multi-pass streaming algorithm is tight in that any algorithm with a better guarantee than 1/2 must make several passes through the stream and any algorithm that beats our guarantee 1-1/e must make linearly many passes. For the problem of maximizing a monotone submodular function subject to a bipartite matching constraint (which is a special case of matroid intersection), we show that it is not possible to obtain better than 0.3715-approximation in a single pass, which improves over a recent inapproximability of 0.522 for this problem. Furthermore, given a plausible assumption, our inapproximability result improves to 1/3 ≈ 0.333.
READ FULL TEXT