Submodular set function

This is an old revision of this page, as edited by 128.100.3.65 (talk) at 17:22, 16 November 2012 (Citations). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In mathematics, a submodular set function (also known as a submodular function) is a set function whose value, informally, has the property that the difference in the value of the function that a single element makes when added to an input set decreases as the size of the input set increases. Submodular functions have a natural diminishing returns property which makes them suitable for many applications, including approximation algorithms and game theory (as functions modeling user preferences).

Definition

If   is a set, a submodular function is a set function  , where   denotes the power set of  , which satisfies one of the following equivalent definitions[1].

  1. For every   with   and every   we have that  .
  2. For every   we have that  .
  3. For every   and   we have that  .

A nonnegative submodular function is also a subadditive function, but a subadditive function need not be submodular.

Types of submodular functions

Monotone

A submodular function   is monotone if for every   we have that  . Examples of monotone submodular functions include:

Linear functions
Any function of the form   is called a linear function. Additionally if   then f is monotone.
Budget-additive functions
Any function of the form   for each   and   is called budget additive.
Coverage functions
Let   be a collection of subsets of some ground set  . The function   for   is called a coverage function.
Entropy
Let   be a set of random variables. Then for any   we have that   is a submodular function, where   is the entropy of the set of random variables  
Matroid rank functions
Let   be the ground set on which a matroid is defined. Then the rank function of the matroid is a submodular function.

Non-monotone

A submodular function which is not monotone is called non-monotone.

Symmetric

A non-monotone submodular function   is called symmetric if for every   we have that  . Examples of symmetric non-monotone submodular functions include:

Graph cuts
Let   be the vertices of a graph. For any set of vertices   let   denote the number of edges   such that   and  .
Mutual information
Let   be a set of random variables. Then for any   we have that   is a submodular function, where   is the mutual information.

Asymmetric

A non-monotone submodular function which is not symmetric is called asymmetric.

For example, a directed graph cut is an asymmetric non-monotone submodular function. Let   be the vertices of a directed graph. For any set of vertices   let   denote the number of edges   such that   and  .

Continuous extensions

Lovász extension

This extension is named after mathematician László Lovász. Consider any vector   such that each  . Then the Lovász extension is defined as   where the expectation is over   chosen from the uniform distribution on the interval  . The Lovász extension is a convex function.

Multilinear extension

Consider any vector   such that each  . Then the multilinear extension is defined as  .

Convex closure

Consider any vector   such that each  . Then the convex closure is defined as  . It can be shown that  .

Concave closure

Consider any vector   such that each  . Then the concave closure is defined as  .

Closure properties

The class of submodular functions is closed under non-negative linear combinations. Consider any submodular function   and non-negative numbers  . Then the function   defined by   is submodular. Furthermore, for any submodular function  , the functions defined by  , where   is a non-negative real number and   are also submodular.

Optimization problems

Submodular functions have properties which are very similar to convex and concave functions. For this reason, an optimization problem which concerns optimizing a convex or concave function can also be described as the problem of maximizing or minimizing a submodular function subject to some constraints.

The simplest minimization problem is to find a set   which minimizes a submodular function subject to no constraints. This problem is computable in polynomial time.[2][3][4][5] Computing the minimum cut in a graph is a special case of this general minimization problem.

Unlike minimization, maximization of submodular functions is usually NP-hard. Many problems, such as max cut and the maximum coverage problem, can be cast as special cases of this general maximization problem under suitable constraints. Typically, the approximation algorithms for these problems are based on either greedy algorithms or local search algorithms. The problem of maximizing a symmetric non-monotone submodular function subject to no constraints admits a 1/2 approximation algorithm.[6] Computing the maximum cut of a graph is a special case of this problem. The more general problem of maximizing an arbitrary non-monotone submodular function subject to no constraints also admits a 1/2 approximation algorithm.[7] The problem of maximizing a monotone submodular function subject to a cardinality constraint admits a   approximation algorithm.[8] The maximum coverage problem is a special case of this problem. The more general problem of maximizing a monotone submodular function subject to a matroid constraint also admits a   approximation algorithm.[9][10]

See also

Citations

  1. ^ (Schrijver 2003, §44, p. 766)
  2. ^ M. Grötschel, L. Lovasz and A. Schrijver, The ellipsoid method and its consequences in combinatorial optimization, Combinatorica 1 (1981), pp. 169–197.
  3. ^ W. H. Cunningham, On submodular function minimization, Combinatorica,5 (1985),pp. 185–192.
  4. ^ S. Iwata, L. Fleischer, and S. Fujishige, A combinatorial strongly polynomial algorithm for minimizing submodular functions, J. ACM 48 (2001), pp. 761–777.
  5. ^ A. Schrijver, A combinatorial algorithm minimizing submodular functions in strongly polynomial time, J. Combin. Theory Ser. B 80 (2000), pp. 346–355.
  6. ^ U. Feige, V. Mirrokni and J. Vondrák, Maximizing non-monotone submodular functions, Proc. of 48th FOCS (2007), pp. 461–471.
  7. ^ N. Buchbinder, M. Feldman, J. Naor and R. Schwartz, A tight linear time (1/2)-approximation for unconstrained submodular maximization, Proc. of 53rd FOCS (2012), pp. 649-658.
  8. ^ G. L. Nemhauser, L. A. Wolsey and M. L. Fisher, An analysis of approximations for maximizing submodular set functions I, Mathematical Programming 14 (1978), 265–294.
  9. ^ G. Calinescu, C. Chekuri, M. Pál and J. Vondrák, Maximizing a submodular set function subject to a matroid constraint, SIAM J. Comp. 40:6 (2011), 1740-1766.
  10. ^ Y. Filmus, J. Ward, A tight combinatorial algorithm for submodular maximization subject to a matroid constraint, Proc. of 53rd FOCS (2012), pp. 659-668.

References

  • Schrijver, Alexander (2003), Combinatorial Optimization, Springer, ISBN 3-540-44389-4
  • Lee, Jon (2004), A First Course in Combinatorial Optimization, Cambridge University Press, ISBN 0-521-01012-8
  • Fujishige, Satoru (2005), Submodular Functions and Optimization, Elsevier, ISBN 0-444-52086-4
  • Narayanan, H. (1997), Submodular Functions and Electrical Networks, ISBN 0-444-82523-1