Maximizing a Monotone Submodular Function Subject to a Matroid Constraint
SIAM journal on computing (Print)
Let f : 2 X → R + be a monotone submodular set function, and let (X, I) be a matroid. We consider the problem max S∈I f (S). It is known that the greedy algorithm yields a 1/2approximation  for this problem. For certain special cases, e.g. max |S|≤k f (S), the greedy algorithm yields a (1 − 1/e)-approximation. It is known that this is optimal both in the value oracle model (where the only access to f is through a black box returning f (S) for a given set S)  , and also for explicitly
... o for explicitly posed instances assuming P = N P . In this paper, we provide a randomized (1 − 1/e)-approximation for any monotone submodular function and an arbitrary matroid. The algorithm works in the value oracle model. Our main tools are a variant of the pipage rounding technique of Ageev and Sviridenko , and a continuous greedy process that may be of independent interest. As a special case, our algorithm implies an optimal approximation for the Submodular Welfare Problem in the value oracle model  . As a second application, we show that the Generalized Assignment Problem (GAP) is also a special case; although the reduction requires |X| to be exponential in the original problem size, we are able to achieve a (1 − 1/e − o(1))approximation for GAP, simplifying previously known algorithms. Additionally, the reduction enables us to obtain approximation algorithms for variants of GAP with more general constraints. Keywords: monotone submodular set function, matroid, social welfare, generalized assignment problem, approximation algorithm. * This paper combines results and ideas from two extended abstracts  and  , that had previously appeared in Proc. of IPCO, 2007 and Proc. of ACM STOC, 2008 respectively.