0% found this document useful (0 votes)
16 views9 pages

Optimizing Submodular Functions

Uploaded by

Vic Yassenov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views9 pages

Optimizing Submodular Functions

Uploaded by

Vic Yassenov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML

CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

8
Optimizing Submodular Functions

Minimizing and maximizing submodular functions are fundamental unifying


problems in combinatorial optimization. In this chapter, some examples are
given, and we discuss aspects of the general problems of minimizing and max-
imizing submodular functions.

8.1 Minimizing Submodular Functions


Let M be a matroid. Recall the rank inequalities

xe ≤ rM (S), ∀ S ⊂ E(M)
e∈S

that, along with nonnegativity, describe PI(M) . The separation problem for the
rank inequalities is, for fixed x ∗ ∈ R E(M) , find S ⊂ E(M) so that

xe∗ > rM (S) .
e∈S

Define f : 2 E(M)
→ R by

f (S) := rM (S) − xe∗ .
e∈S

It is easy to check that f is submodular (by use of the fact that rM is). Moreover,
x ∗ violates a rank inequality if and only if the minimum of f (S), over S ⊂
E(M), is less than 0.
Thus an ability to minimize this particular submodular function efficiently,
provides a theoretically efficient algorithm, by use of the ellipsoid method, for
finding maximum-weight sets that are independent for a matroid or even for a
pair of matroids. Of course, we also know direct combinatorial algorithms for
these problems that are practically as well as theoretically efficient.

194

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

8.1 Minimizing Submodular Functions 195

Problem (Minimum-weight cuts and submodular minimization). Con-


sider a digraph G with distinguished vertices v, w ∈ V (G) with v = w, and
a “capacity” function c : E(G) → R+ . For S ⊂ V (G) \ {v, w}, define
 
f (S) := c(e) : e ∈ δG+ (S + v) .

[That is, f (S) is the sum of the capacities on the edges that point out of
S + v.] Prove that f is submodular, and describe how to determine the
minimum of f on V (G) \ {v, w}.

Problem (Maximum-cardinality matroid intersection and submodular


minimization). Let Mi be matroids on the common ground set E := E(Mi )
for i = 1, 2. Prove that f : 2 E → R defined by

f (S) := rM (S) + rM (E \ S)
1 2

is submodular, and explain how this relates to the problem of finding a


maximum-cardinality subset of E that is independent in both M1 and M2 .

Next, we discuss some aspects of the problem of minimizing a general


submodular function f : 2 E → R, where E is a finite set. First, we may as-
sume that f (∅) = 0 [by subtracting f (∅) from f if necessary]. We define
f : [0, 1] E → R in a certain way, so that f (x) := f (S(x)) for x ∈ {0, 1} E .

Every nonzero x ∈ [0, 1] E can be decomposed uniquely as x = mj=1 λ j x j ,
where

(i) m ≤ |E|;
(ii) λ j > 0, for j = 1, 2, . . . m;
(iii) x ∈ {0, 1} E , for j = 1, 2, . . . m;
j

(iv) x 1 ≥ x 2 ≥ · · · ≥ x m = 0.

m
Then we let f (x) := j=1 λ j f (S(x j )).

Theorem (Convexity of f and integer-valued minima). The function f is


convex and attains it minimum over [0, 1] E on {0, 1} E .

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

196 8 Optimizing Submodular Functions

Proof. First, we demonstrate that the function f is convex. Consider a point


x ∗ ∈ R+E and the linear program


fˆ(x ∗ ) := max xe∗ z e
e∈E

Subject to:

z e ≤ f (T ), ∀T ⊂E.
e∈T

The optimal objective-function value of a linear-programming maximization


problem is a convex function of the vector of objective-function coefficients.
Therefore, it suffices to prove that f = fˆ.
Without loss of generality, we can take E := {1, 2, . . . , n} and x1∗ ≥ x2∗
≥ · · · ≥ xn∗ . Let T j := {1, 2, . . . , j}, for j = 1, 2, . . . , n, and let T0 := ∅. The
proof of the characterization of PI(M) for a matroid M implies that


n / 0
fˆ(x ∗ ) = x ∗j f (T j ) − f (T j−1 )
j=1
n 
 
= x ∗j − x ∗j+1 f (T j )
j=1

(even though f need not be the rank function of a matroid), where we



take xn+1 := 0. Letting λ j := x ∗j − x ∗j+1 , we get the decomposition x ∗ =
n ∗ ˆ ∗
j=1 λ j x(T j ) (we can ignore the j with λ j = 0); so we have f (x ) = f (x ).
E
Finally, we demonstrate that f is minimized at a vertex of [0, 1] . Let

x ∗ = mj=1 λ j x j ∈ [0, 1] E be a minimizer of f over [0, 1] E . If f (x ∗ ) = 0,
then f is also minimized by 0 ∈ {0, 1} E , because we have assumed that f (∅) =
f (0) = 0. Therefore, we may suppose that f (x ∗ ) < 0. If f (x j ) > f (x ∗ ) for
 
all j, then f (x ∗ ) = mj=1 λ j f (x j ) > mj=1 λ j f (x ∗ ). Because f (x ∗ ) < 0,
m 
we have 1 < j=1 λ j . However, x ∗ ∈ [0, 1] E implies that mj=1 λ j ≤ 1, so we
have a contradiction. Therefore, f (x j ) ≤ f (x ∗ ) for some j; hence, some x j
minimizes f . 

There is a theoretically efficient algorithm for minimizing the convex function


f over [0, 1] E , by use of the ellipsoid method. In this way, we can find a
minimum of the submodular function f . Other, more combinatorial methods
generalize maximum-flow techniques.

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

8.2 Minimizing Submodular Functions Over Odd Sets 197

8.2 Minimizing Submodular Functions Over Odd Sets


In this section, we see how to use an efficient algorithm for minimizing a
submodular function as a subroutine in an efficient algorithm for minimizing
a submodular function f over subsets S of the ground set E intersecting a fixed
subset T of the ground set on an odd number of elements. First, some motivation
is given that is related to the maximum-weight matching problem.
Let H be a graph with weight function c on E(H ). We consider the maximum-
weight matching problem on H . We may as well assume that c is nonnegative,
as the set of matchings is an independence system and so no negative-weight
edge will appear in a maximum-weight matching. Next, we can make a copy
H of H , and join each i ∈ V (H ) to its copy i ∈ V (H ). Call this new graph G.
All edges of H and those extending between H and H are assigned 0 weight
as we extend c to the entire edge set of G.

weight function c 0 weights

H H'

Now, every matching S of H extends to a perfect matching of G having the same


weight – for each e ∈ S, take its copy e ∈ E(H ), and for each exposed vertex
i of H , take the edge joining i to its copy i ∈ H . Furthermore, every perfect
matching S of G induces a matching S ∩ E(H ) of H having the same weight.
Therefore, to efficiently find a maximum-weight matching of H , it suffices to
be able to find a maximum-weight perfect matching of G.
Therefore, let us assume now that we have an arbitrary graph G and
nonnegative-weight function c on E(G). Let M(G) be the set of perfect match-
ings of G. Considering the inequality characterization of the matching polytope
PM(G) (see the Matching Polytope Theorem, p. 109), it is easy to see that the
perfect-matching polytope PM(G) is the solution set of

(i) − xe ≤ 0, ∀ e ∈ E(G);

(ii) xe = 1, ∀ v ∈ V (G);
e∈δG (v)
 |W | − 1
(iii) xe ≤ , ∀ W ⊂ V (G) with |W | ≥ 3 odd.
e∈E(G[W ])
2

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

198 8 Optimizing Submodular Functions

Using equation (ii), it is easy to check that (iii) can be replaced with

(iii ) xe ≥ 1, ∀ W ⊂ V (G) with |W | odd;
e∈δG (W )

we simply note that

 |W | − 1   
2 xe ≤ − xe = 1 = − xe ≥ 1, .
e∈E(G[W ])
2 v∈W e∈δG (v) e∈δG (W )

Then, for x ∗ ∈ R E(G) satisfying (i), we can solve the separation problem for
(iii ) by minimizing the function

f (W ) := −1 + xe∗
e∈δG (W )

over odd cardinality subsets W of V (G). As we have seen (“Cuts” Problem,


p. 61), the function f is submodular.
Now, we turn back to the general problem of minimizing a submodular
function over subsets of the ground set intersecting a fixed subset on an odd
number of elements. To be precise, let f be a submodular function on E. Let
T be a subset of E. We describe an efficient method for solving

X ∗ := argmin { f (X ) : X ⊂ E, |X ∩ T | odd} .

We assume that we have, at our disposal, an efficient subroutine for ordinary


submodular-function minimization.

Step 1: Reduce the case of |T | odd to |T | even. We observe that an optimal X ∗


either contains all of T or it avoids some element of T . Therefore, we calculate

X T := argmin { f (X ) : X ⊂ E, T ⊂ X } ,

and, for all e ∈ T ,

X e := argmin { f (X ) : X ⊂ E − e, |X ∩ (T − e)| odd} .

The calculation of each X e is just like the calculation of X ∗ , but now we are
intersecting an even cardinality set on an odd number of elements. The calcu-
lation of X T is just an instance of ordinary submodular-function minimization,
but the effective ground set is just E \ T , as we can just “shrink” T to a single
element.

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

8.2 Minimizing Submodular Functions Over Odd Sets 199

Step 2: Solve a relaxation. Let U be a subset of E. We say that U splits T if


both T ∩ U and T \ U are nonempty. We wish to calculate

U := argmin { f (X ) : X ⊂ E, X splits T } .

Notice that, because T is even, the condition that X splits T is a weakening of


the condition that |X ∩ T | is odd. Therefore, if |U ∩ T | is odd, then we solve
our original problem by letting X ∗ = U .
Next, we specify how we can efficiently calculate U . For all distinct e, f ∈ T ,
we calculate

Ue, f := argmin { f (X ) : X ⊂ E − f, e ∈ X odd} .


 
The calculation of each of the |T2 | choices of Ue, f is just an ordinary
submodular-function minimization problem. Then we simply let
 
U = argmin f (Ue, f ) : e, f ∈ T .

Step 3: Recurse. At this point we can assume that |U ∩ T | (and hence, also
|T \ U |) is even, or we would have solved the problem in Step 2. Recursively,
we solve the following two subproblems:

U1 := argmin { f (X ) : X ⊂ E, |X ∩ (T ∩ U )|odd, X does not split T \ U } ;


U2 := argmin { f (X ) : X ⊂ E, |X ∩ (T \ U )| odd, X does not split T ∩ U } .

Although we still have some work left to do to justify this, the solution to our
main problem is just to set X ∗ to

argmin { f (U1 ), f (U2 )} .

We note that, for the calculations of U1 and U2 , we reduce the problems to


problems of the same type that we are attacking, by “shrinking” the set not
to be split to a single element. In doing so, the set that we need to intersect
on an odd cardinality set remains of even cardinality. Also, because |T | =
|T \ U | + |T ∩ U |, it is clear that the total number of recursive calls will be
less than T .

Theorem (Correctness for odd submodular minimization). If |U ∩ T | is


even, then X ∗ = argmin { f (U1 ), f (U2 )} solves

min { f (X ) : X ⊂ E, |X ∩ T | odd} .

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

200 8 Optimizing Submodular Functions

Proof. The proof is by contradiction. Suppose that X ∗ solves our main problem,
but f (X ∗ ) < f (U1 ) and f (X ∗ ) < f (U2 ). From the definition of U1 , we see that
X ∗ splits T \ U . Therefore, immediately, we have that X ∗ ∪ U splits T . Sym-
metrically, from the definition of U2 , we see that X ∗ splits T ∩ U . Therefore,
we have that X ∗ ∩ U splits T .
Now, because |T ∩ X ∗ | is odd and |T ∩ U | is even, exactly one of |T ∩
(X ∗ ∪ U )| and |T ∩ (X ∗ ∩ U )| is odd. We suppose that |T ∩ (X ∗ ∩ U )| is odd
(the other case, which is left for the reader, is handled symmetrically). By the
definition of X ∗ , we have
f (X ∗ ∩ U ) ≥ f (X ∗ ).
By the definition of U , we have
f (X ∗ ∪ U ) ≥ f (U ).
Then, by submodularity, we must have f (X ∗ ∩ U ) = f (X ∗ ) [and f (X ∗ ∪ U ) =
f (U )]. Now, (X ∗ ∩ U ) + (T ∩ U ) = (X ∗ ∩ U ) ∩ T . Therefore, |(X ∗ ∩ U ) +
(T ∩ U )| is odd and (X ∗ ∩ U ) + (T ∩ U ) does not split T \ U . Therefore, by the
definition of U1 , we have f (X ∗ ∩ U ) ≥ f (U1 ). However, because we have al-
ready established that f (X ∗ ∩ U ) = f (X ∗ ), we conclude that f (X ∗ ) ≥ f (U1 ),
which contradicts our assumption. 

8.3 Maximizing Submodular Functions


For an interesting special case, we know an efficient algorithm for maximizing
a submodular function.

Problem (Maximum-cardinality matching and submodular maxi-


mization). Let G be an undirected graph and define f : 2 E(G) → R by
f (S) := |{v ∈ V (G) : e ∈ δG (v) for some e ∈ S}| − |S| ,
for S ⊂ E(G). Prove that f is submodular and that, if S maximizes f , then
f (S) is the maximum number of edges in a matching of G.

In general, maximizing a submodular function is hard. For example, the


difficult problem of determining whether a digraph has a directed Hamiltonian
tour is a problem of finding a maximum-cardinality set that is independent for
three matroids having a common ground set.

Problem (Maximum-cardinality p-matroid intersection and submodu-


lar maximization). Let Mi be matroids on the common ground set E :=

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

8.4 Further Study 201

E(Mi ), for i = 1, 2, . . . , p. Define a submodular function f : 2 E → R by



p
f (S) := rM ∗ (S) .
i
i=1

Prove that the problem of finding a maximum-weight set that is independent


in all p matroids can be recast as a problem of finding a set S that maximizes
f (S).

Hard submodular maximization problems arise in other domains as well.

Problem (Uncapacitated facility location and submodular maximiza-


tion). Recall the “Uncapacitated facility location” Problem (see p. 6).
Demonstrate how the uncapacitated facility-location problem can be mod-
eled as a problem of maximizing a submodular function.

Another favorite hard problem can also be modeled as a problem of maxi-


mizing a submodular function.

Problem (Vertex packing and submodular maximization).


a. Recall the entropy function H (see p. 191). Prove that H is a submodular
function.
b. Let G be a simple graph. Let C be the symmetric matrix, with row and
columns indexed by V (G), having

⎨ 1, if {i, j} ∈ E(G)
ci j := 0, if i = j and {i, j} ∈
/ E(G).

3|V (G)|, if i = j

The matrix C is symmetric and positive definite. Notice that if E(G[S]) =


∅, then H (S) = |S| · ln(3|V (G)|). Prove that if E(G[S]) = ∅, then
H (S) < |S| · ln(3|V (G)|).

8.4 Further Study


The first theoretically efficient algorithm for minimizing a submodular func-
tion was based on the ellipsoid method; see Grötschel, Lovász and Schrijver
(1988). The first theoretically efficient combinatorial algorithms are due (simul-
taneously!) to Iwata, Fleischer, and Fujishige (1999) and to Schrijver (2000).

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010
P1: IML/SPH P2: IML/SPH QC: IML/SPH T1: IML
CB636-FM CB636-Lee CB636-Lee-v2.cls December 11, 2003 16:30 Char Count= 0

202 8 Optimizing Submodular Functions

None of these algorithms should be regarded as practical. However, their exis-


tence, together with the known practical and theoretically efficient algorithms
for the minimization of particular submodular functions, suggests that it is use-
ful to know whether a particular combinatorial-optimization problem can be
regarded as a problem of minimizing a submodular function.
The work by McCormick (2003) is a very nice survey of the state-of-the-art
algorithms for minimizing submodular functions.

“It is true what Madame says,” observed Jacques Three. “Why stop?
There is great force in that. Why stop?”
“Well, well,” reasoned Defarge, “but one must stop somewhere.
After all, the question is still where?”
– A Tale of Two Cities (C. Dickens)

Cambridge Books Published


https://doi.org/10.1017/CBO9780511616655.011 Online ©online
Cambridge University
by Cambridge Press,
University Press 2010

You might also like