In mathematics, a submodular set function (also known as a submodular function) is a
set function
In mathematics, especially measure theory, a set function is a function whose domain is a family of subsets of some given set and that (usually) takes its values in the extended real number line \R \cup \, which consists of the real numbers \R a ...
whose value, informally, has the property that the difference in the incremental 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
In economics, diminishing returns are the decrease in marginal (incremental) output of a production process as the amount of a single factor of production is incrementally increased, holding all other factors of production equal ( ceteris par ...
property which makes them suitable for many applications, including
approximation algorithms
In computer science and operations research, approximation algorithms are efficient algorithms that find approximate solutions to optimization problems (in particular NP-hard problems) with provable guarantees on the distance of the returned solut ...
,
game theory (as functions modeling user preferences) and
electrical network
An electrical network is an interconnection of electrical components (e.g., batteries, resistors, inductors, capacitors, switches, transistors) or a model of such an interconnection, consisting of electrical elements (e.g., voltage sour ...
s. Recently, submodular functions have also found immense utility in several real world problems in
machine learning
Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence.
Machine ...
and
artificial intelligence
Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, including
automatic summarization
Automatic summarization is the process of shortening a set of data computationally, to create a subset (a summary) that represents the most important or relevant information within the original content. Artificial intelligence algorithms are commo ...
,
multi-document summarization
Multi-document summarization is an automatic procedure aimed at information extraction, extraction of information from multiple texts written about the same topic. The resulting summary report allows individual users, such as professional informati ...
,
feature selection
In machine learning and statistics, feature selection, also known as variable selection, attribute selection or variable subset selection, is the process of selecting a subset of relevant features (variables, predictors) for use in model construc ...
,
active learning
Active learning is "a method of learning in which students are actively or experientially involved in the learning process and where there are different levels of active learning, depending on student involvement." states that "students partici ...
, sensor placement, image collection summarization and many other domains.
Definition
If
is a finite
set, a submodular function is a set function
, where
denotes the
power set
In mathematics, the power set (or powerset) of a set is the set of all subsets of , including the empty set and itself. In axiomatic set theory (as developed, for example, in the ZFC axioms), the existence of the power set of any set is ...
of
, which satisfies one of the following equivalent conditions.
# For every
with
and every
we have that
.
# For every
we have that
.
# For every
and
such that
we have that
.
A nonnegative submodular function is also a
subadditive In mathematics, subadditivity is a property of a function that states, roughly, that evaluating the function for the sum of two elements of the domain always returns something less than or equal to the sum of the function's values at each element. ...
function, but a subadditive function need not be submodular.
If
is not assumed finite, then the above conditions are not equivalent. In particular a function
defined by
if
is finite and
if
is infinite
satisfies the first condition above, but the second condition fails when
and
are infinite sets with finite intersection.
Types and examples of submodular functions
Monotone
A submodular function
is ''monotone'' if for every
we have that
. Examples of monotone submodular functions include:
; Linear (Modular) 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. This can be generalized by adding non-negative weights to the elements.
;
Entropy
Entropy is a scientific concept, as well as a measurable physical property, that is most commonly associated with a state of disorder, randomness, or uncertainty. The term and the concept are used in diverse fields, from classical thermodyna ...
: 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
, a fact known as
Shannon's inequality. Further inequalities for the entropy function are known to hold, see
entropic vector.
;
Matroid
In combinatorics, a branch of mathematics, a matroid is a structure that abstracts and generalizes the notion of linear independence in vector spaces. There are many equivalent ways to define a matroid axiomatically, the most significant being ...
rank functions : Let
be the ground set on which a matroid is defined. Then the rank function of the matroid is a submodular function.
[Fujishige (2005) p.22]
Non-monotone
A submodular function that 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
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
*Graph (topology), a topological space resembling a graph in the sense of discre ...
. For any set of vertices
let
denote the number of edges
such that
and
. This can be generalized by adding non-negative weights to the edges.
;
Mutual information
In probability theory and information theory, the mutual information (MI) of two random variables is a measure of the mutual dependence between the two variables. More specifically, it quantifies the " amount of information" (in units such as ...
: Let
be a set of
random variable
A random variable (also called random quantity, aleatory variable, or stochastic variable) is a mathematical formalization of a quantity or object which depends on random events. It is a mapping or a function from possible outcomes (e.g., the p ...
s. 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.
; Directed cuts : Let
be the vertices of a
directed graph
In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs.
Definition
In formal terms, a directed graph is an ordered pai ...
. For any set of vertices
let
denote the number of edges
such that
and
. This can be generalized by adding non-negative weights to the directed edges.
Continuous extensions
Definition
A set-valued function
with
can also be represented as a function on
, by associating each
with a binary vector
such that
when
, and
otherwise.
The ''continuous
extension
Extension, extend or extended may refer to:
Mathematics
Logic or set theory
* Axiom of extensionality
* Extensible cardinal
* Extension (model theory)
* Extension (predicate logic), the set of tuples of values that satisfy the predicate
* Ext ...
'' of
is defined to be any continuous function
such that it matches the value of
on
, i.e.
.
In the context of submodular functions, there are a few examples of continuous extensions that are commonly used, which are described as follows.
Examples
Lovász extension
This extension is named after mathematician
László Lovász
László Lovász (; born March 9, 1948) is a Hungarian mathematician and professor emeritus at Eötvös Loránd University, best known for his work in combinatorics, for which he was awarded the 2021 Abel Prize jointly with Avi Wigderson. He wa ...
.
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