Submodular set function

This is an old revision of this page, as edited by 174.53.163.119 (talk) at 13:38, 5 October 2011 (Multilinear Extension). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.


In mathematics, submodular functions are set functions which usually appear in approximation algorithms, functions modeling user preferences in game theory. These functions have a natural diminishing returns property which makes them suitable for many applications.

Definition

Submodular function is a set function   which satisfies one of the following equivalent[1] definitions.

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

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

Examples

  1. Linear functions
    Any function of the form   is called a linear function. Additionally if   then f is montone.
  2. Budget-additive functions
    Any function of the form   for each   and   is called budget additive.
  3. Coverage function
    Let   be the ground set. Consider a universe   and a set of sets   of the universe  . Then a coverage function is defined for any set   as  .
  4. 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  
  5. Graph cuts
    Let   be the vertices of a graph. For any set of vertices   let   denote the number of edges   such that   and  .
  6. Mutual information
    Let   be a set of random variables. Then for any   we have that   is a submodular function, where   is the mutual information.
  7. 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.

Continuous extensions

Lovasz extension

Consider any vector   such that each  . Then the lovasz extension is defined as   where the expectation is over choosing   uniformly in  .

Multilinear extension

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

Optimization problems

Submodular functions have properties which are very similar to convex and concave functions. Hence a lot of optimization problems can be cast as maximizing or minimizing submodular functions subject to various constraints.

  1. Minimization of submodular functions.
    Under the simplest case the problem is to find set   which minimizes submodular function subject to no constraints. A series of results [2][3][4][5] have established the polynomial time solvability of this problem.
  2. Maximization of submodular functions.
    Unlike minimization, maximization of submodular functions is typically NP-hard. A host of problems such as max cut, maximum coverage problem can be cast as special cases of this problem under suitable constraints.

References

  1. ^ Alexander Schrijver. Combinatorial Optimization, Polyhedra and Efficiency.
  2. ^ Grotschel, Lovasz, Schrijver
  3. ^ Cunningham
  4. ^ Iwata, Fleischer, Fujishige
  5. ^ Schrijver