Professional Documents
Culture Documents
Submodular Optimization
Submodular Optimization
Submodular Optimization
Tutorial - lecture I
Jan Vondrák1
1 IBM Almaden Research Center
San Jose, CA
max{f (S) : S ∈ F}
min{f (S) : S ∈ F}
max{f (S) : S ∈ F}
min{f (S) : S ∈ F}
We can
try to deal with each problem individually, or
max{f (S) : S ∈ F}
min{f (S) : S ∈ F}
We can
try to deal with each problem individually, or
try to capture some properties of f , F that make it tractable.
A function f : Rn → R
can be minimized efficiently,
if it is convex.
A function f : Rn → R
can be maximized efficiently,
if it is concave.
A function f : Rn → R
can be minimized efficiently,
if it is convex.
A function f : Rn → R
can be maximized efficiently,
if it is concave.
Discrete analogy?
Not so obvious... f is now a set function, or equivalently
f : {0, 1}n → R.
f : R → R is concave,
f : R → R is concave,
Submodularity:
S f is submodular, if ∀S ⊂ T , j ∈
/ T:
j fS (j) ≥ fT (j).
S f is submodular, if ∀S ⊂ T , j ∈
/ T:
j fS (j) ≥ fT (j).
f (S ∪ T ) + f (S ∩ T ) ≤ f (S) + f (T ).
Coverage function: A2 A3
Given A1 , . . . , An ⊂ U,
S
f (S) = j∈S Aj . A1
A4
Coverage function: A2 A3
Given A1 , . . . , An ⊂ U,
S
f (S) = j∈S Aj . A1
A4
T Cut function:
δ(T ) = |e(T , T )|
In contrast:
Maximizing a submodular function (e.g. Max Cut) is NP-hard.
Jan Vondrák (IBM Almaden) Submodular Optimization Tutorial 8/1
Lecture I: outline
(Convex)
Submodular function
Continuous function
f : {0, 1}n → R f L : [0, 1]n → R
Definition
Given f : {0, 1}n → R, its Lovász extension f L : [0, 1]n → R is
n
X
f L (x) = αi f (Si )
i=0
P P
where x = αi 1Si , αi = 1, αi ≥ 0 and ∅ = S0 ⊂ S1 ⊂ . . . ⊂ Sn .
Definition
Given f : {0, 1}n → R, its Lovász extension f L : [0, 1]n → R is
n
X
f L (x) = αi f (Si )
i=0
P P
where x = αi 1Si , αi = 1, αi ≥ 0 and ∅ = S0 ⊂ S1 ⊂ . . . ⊂ Sn .
Equivalently:
f L (x) = E[f (Tλ (x))],
where Tλ (x) = {i : xi > λ},
x2 x3 x5 x1 x4
λ ∈ [0, 1] uniformly random.
0 1
λ
Properties:
f L is an extension: f L (x) = f (x) for x ∈ {0, 1}n .
Properties:
f L is an extension: f L (x) = f (x) for x ∈ {0, 1}n .
f is submodular ⇔ f L is convex (in fact the "convex closure" of f ).
Properties:
f L is an extension: f L (x) = f (x) for x ∈ {0, 1}n .
f is submodular ⇔ f L is convex (in fact the "convex closure" of f ).
Therefore, f L can be minimized (by the ellipsoid method, in weakly
polynomial time).
Properties:
f L is an extension: f L (x) = f (x) for x ∈ {0, 1}n .
f is submodular ⇔ f L is convex (in fact the "convex closure" of f ).
Therefore, f L can be minimized (by the ellipsoid method, in weakly
polynomial time).
Given a Pminimizer of f L (x), we get a convex combination
f L (x) = ni=0 αi f (Ti ), and one of the Ti is a minimizer of f (S).
Algorithm:
Solve the convex optimization problem.
Algorithm:
Solve the convex optimization problem.
Given a fractional solution x, take λ ∈ [0, 12 ) uniformly random and
S = Tλ (x) = {i : xi > λ}.
S is a vertex cover because each edge has a variable xi ≥ 1/2.
Algorithm:
Solve the convex optimization problem.
Given a fractional solution x, take λ ∈ [0, 12 ) uniformly random and
S = Tλ (x) = {i : xi > λ}.
S is a vertex cover because each edge has a variable xi ≥ 1/2.
Expected cost of the solution is
Z 1/2 Z 1
E[f (S)] = 2 f (Tλ (x))dλ ≤ 2 f (Tλ (x))dλ = 2f L (x).
0 0
k
X
min f L (xi ) :
i=1
k
X
∀j ∈ V ; xij = 1;
i=1
∀i ∈ [k ]; xii = 1;
x ≥ 0.
k
X
min f L (xi ) :
i=1
k
X
∀j ∈ V ; xij = 1;
i=1
∀i ∈ [k ]; xii = 1;
x ≥ 0.
S ⊂ T =⇒ f (S) ≤ f (T ).
S ⊂ T =⇒ f (S) ≤ f (T ).
Hence, we distinguish:
1 Monotone submodular maximization:
e.g. max{f (S) : |S| ≤ k }, generalizing Max k -cover.
2 Non-monotone submodular maximization:
e.g. max f (S), generalizing Max Cut.
A2 A3
Max k -cover
Choose k sets
so as
Sto maximize
A1
j∈K Aj .
A4
[Feige ’98]:
1
Unless P = NP, there is no (1 − e + )-approximation for Max k -cover.
Jan Vondrák (IBM Almaden) Submodular Optimization Tutorial 20 / 1
Analysis of Greedy
Greedy Algorithm: Si = solution after i steps;
pick next element a to maximize f (Si + a) − f (Si ).
f (Si )
OPT
0 1 2 3 ... k
1
OPT − f (Si+1 ) ≤ (1 − k )(OPT − f (Si ))
1 k
⇒ OPT − f (Sk )) ≤ (1 − k ) OPT ≤ e1 OPT .
Jan Vondrák (IBM Almaden) Submodular Optimization Tutorial 21 / 1
Submodular maximization under a matroid constraint
Nemhauser, Wolsey and Fisher considered a more general problem:
1
More generally: k +1 -approximation for the problem
max{f (S) : S ∈ I1 ∩ I2 ∩ . . . ∩ Ik }.
Definition
A matroid on N is a system of independent sets I ⊂ 2N , satisfying
1 ∀B ∈ I, A ⊂ B ⇒ A ∈ I.
2 ∀A, B ∈ I, |A| < |B| ⇒ ∃x ∈ B \ A; A ∪ {x} ∈ I.
Definition
A matroid on N is a system of independent sets I ⊂ 2N , satisfying
1 ∀B ∈ I, A ⊂ B ⇒ A ∈ I.
2 ∀A, B ∈ I, |A| < |B| ⇒ ∃x ∈ B \ A; A ∪ {x} ∈ I.
Q1 Q2 Q3 Q4 Q5
Example: partition matroid
S is independent, if
|S ∩ Qi | ≤ 1 for each Qi .
Q1 Q2 Q3 Q4 Q5
M1 Reduction:
M2
M3 Create n clones of each item,
P
M4 f (S) = i wi (S ∩ Mi ),
M5 I = {S : ∀i; |S ∩ Qi | ≤ 1 }
M6 (a partition matroid).
(Multilinear)
Discrete Problem
Continuous Problem
max{f (S) : S ∈ F} max{F (x) : x ∈ P(F)}
(Multilinear)
Discrete Problem
Continuous Problem
max{f (S) : S ∈ F} max{F (x) : x ∈ P(F)}
Multilinear extension of f :
F (x) = E[f (x̂)], where x̂ is obtained by rounding each xi
randomly to 0/1 with probabilities xi .
∂2F
F (x) is neither convex nor concave; it is multilinear and ∂xi 2
= 0.
F (x + λ~d) is a concave function of λ, if ~d ≥ 0.
F (x(t))
t
0
0 1
Solve the differential equation:
F (x(t)) ≥ (1 − e−t ) · OPT .
NON-MONOTONE MAXIMIZATION
Constraint Approximation Hardness technique
Unconstrained 1/2 1/2 combinatorial
matroid 1/e 0.48 multilinear ext.
O(1) knapsacks 1/e 0.49 multilinear ext.
k matroids k + O(1) k / log k local search
k matroids & O(1) knapsacks O(k ) k / log k multilinear ext.