submodular function minimization

34
Submodular Function Minimization Collette Coullard IMA and Northwestern University November 25, 2002

Upload: judah-william

Post on 02-Jan-2016

82 views

Category:

Documents


5 download

DESCRIPTION

Submodular Function Minimization. Collette Coullard IMA and Northwestern University November 25, 2002. Outline. Introduction to Submodular Function Minimization (SFM) Definitions Applications- Why is SFM interesting? History Separation-optimization equivalence Developments - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Submodular Function Minimization

Submodular Function Minimization

Collette CoullardIMA and Northwestern University

November 25, 2002

Page 2: Submodular Function Minimization

Outline

• Introduction to Submodular Function Minimization (SFM)– Definitions– Applications- Why is SFM interesting?– History

• Separation-optimization equivalence• Developments• Recent developments

– Iwata, Fleischer, Fugishige algorithm– Lex Schrijver’s algorithm

– Schrijver’s Algorithm

• Conclusions

Page 3: Submodular Function Minimization

Submodular Function Definitions

f 2E ℝ is submodular if

Equivalently:

ES R e

S R E, e E

f(S {e}) – f(S) f(R {e}) – f(R)

EA B

A,B E

f(A) + f(B) f(AB) + f(AB)

subsets of E

marginal value of e wrt S (cost)

marginal value of e wrt R (cost)

Page 4: Submodular Function Minimization

Example: Number of Different Colors

h

g

j

ik

e

E

a

b

c

d

f(E)=5

f({a,b,d,e,k})= 5

f({a,b,d,e,k,g})= 5

f({e,k,g})= 3

f({e,k})= 2

marginal value of g

1

0

<

Page 5: Submodular Function Minimization

f’({a,b,d,e,k})= 3

f’({a,b,d,e,k,g})= 6

f’({e,k,g})= 2

f’({e,k})= 02

3

<

marginal value of g

Example: Number of Connections (Edges))

h

g

j

ik

e

E

a

b

c

d

f’(E)= 11

Page 6: Submodular Function Minimization

Example: - Number of Connections (Edges))

h

g

j

ik

e

E

a

b

c

d

f’({a,b,d,e,k})= -3

f’({a,b,d,e,k,g})= -6

f’({e,k,g})= -2

f’({e,k})= 0

f’(E)= -11

-2

-3

<

marginal value of g

Page 7: Submodular Function Minimization

Example: Number of Colors - Number of Edges: f’’ = f + f’

h

g

j

ik

e

E

a

b

c

d

f’’({a,b,d,e,k})= 5-3=2

f’’({a,b,d,e,k,g})= 5-6=-1

f’’({e,k,g})= 3-2=1

f’’({e,k})= 2-0=2

f’’(E)= 5 -11= -6

-1

-3

<

marginal value of g

Page 8: Submodular Function Minimization

Example: Directed Cuts

G = digraph with node set V

A V\{s,t}s t

A

f(A) := number of arcs leaving node set A {s}

f(A) + f(B) f(AB) + f(AB)

A

B

AA

BB

Page 9: Submodular Function Minimization

Example: Benefit and Risk Tradeoff

DDCC

DDCC

DDCCi 2

i

EE: customers i : customers i

S S

( { }) ( ) ( { }) ( )f i f f iS S R Rf

marginal risk-marginal risk-marginal marginal benefit wrt benefit wrt SS

marginal risk-marginal marginal risk-marginal benefit wrt benefit wrt RR

2( )

Ri

i i Rif a bR

Benefit termBenefit term Risk termRisk term

RR

Net cost

Page 10: Submodular Function Minimization

Submodular Function Minimization: Find S E with minimum f(S)

Example: Find minimum (cardinality or capacity) (s,t)-cut

s t(Note: ƒ not monotone)

Example: Find minimum net value (colors-edges) node set

Page 11: Submodular Function Minimization

Submodular Function Minimization: Find S E with minimum f(S)

Example: Find minimum (cardinality or capacity) (s,t)-cut

s t(Note: ƒ not monotone)

Example: Find minimum net cost (max net profit) customer set

DDCC

Page 12: Submodular Function Minimization

Optimization and Separation

Theorem (Grötschel,Lovasz, Schrijver 1981) The optimization problem for P can be solvedin polynomial time if and only if the separation problem can be solved for P in polynomial time.

Given x0 and P, either conclude x0 P or return valid inequalityaxb with ax0 > b.

P

x0

Given c and P, find x* P such that cx* cx, for every x P.

P

x*

Page 13: Submodular Function Minimization

Optimization and Separation

Greedy Algorithm (Edmonds): ce1

ce2

x*e1 = f({e1})x*e2= f({e1,e2})-f({e1})

P

x*

P: x(A) f(A), A E x(E) = f(E)

xe1

xe2

Given x0 and P, either conclude x0 P or return valid inequalityx(A) f(A), with x0(A) > f(A) ormin { f(A) - x0(A) : A E }

P

x0

submodular

submodular function minimization

Page 14: Submodular Function Minimization

Challenge (Grötschel,Lovasz, Schrijver 1981)

Since Optimization and Separation are polynomially equivalent, and the optimization problem for P has a strongly polynomial combinatorial algorithm (GA), there should be a strongly polynomial combinatorial algorithm for the separation problem for P.

There should be a strongly polynomial algorithm forSubmodular Function Minimization (SFM).

Page 15: Submodular Function Minimization

Developments• Submodular function and matroids

– Rado (1942)– Ingleton (1959)

• Submodular functions and optimization: Greedy algorithm maximizes linear functions over polymatroids– Edmonds (1970)

• Polynomial solvability of submodular function minimization (SFM) via ellipsoid algorithm (separation-optimization equivalence)– Grötschel, Lovász, Schrijver (1981,1988)

• Partial order of polymatroid extreme points +finite combinatorial algorithm for SFM– Bixby, Cunningham, Topkis (1985)

• Pseudopolynomial combinatorial algorithm for SFM– Cunningham (1985)

• Strongly polynomial algorithm for symmetric SFM– Queyranne (1998)

• Strongly polynomial combinatorial algorithms for SFM– Iwata, Fleischer, Fugishige (1999), Iwata, Fleischer (2000), Fugishige,

Iwata(2001)– Schrijver (1999)

Page 16: Submodular Function Minimization

Submodular function and matroids

A matroid M=(E,I)a finite set

a collection of subsets of E (called independent sets) satisfying

I 1: empty set is independent

I 2: subsets of independent sets are independent I 3: All maximal independent subsets of A E have same size, called rank of A, r(A)

r is a submodular function on E

Page 17: Submodular Function Minimization

Matroid Examples

edge sets with no cycles

G=(V,E)

M=(E,I)

I is the edge se: | | t of a fores: t( ) maxI A

Ir A

Forest Matroid of a Graph

Rank function on 2E:

submodular

Page 18: Submodular Function Minimization

Matroid Examples

edge sets with no cutsets

G=(V,E)

M=(E,I)

Cutset Matroid of a Graph

Rank function on 2E:

I conta: ins no cuts| e|: t( ) maxI A

Ir A

submodular

Page 19: Submodular Function Minimization

Can E be partitioned into at most k forests?(k independent sets)

This is a special case of SFM.

Matroid Partition

G=(V,E)

1

1

| |: ... | \ | ( )max mink

k iiA EJ E

I E r AIJ J A

a submodular function on E

Page 20: Submodular Function Minimization

Matroid Intersection

G=(UV,E)

Given matroids M1=(E,I1) and M2=(E,I2),

max {|I|: I I1 I2} = min {f1(A) + f2(E\A) : A E}

a submodular function on E

Special case of SFM.

Maximum matching in bipartite graph is a special case.

Page 21: Submodular Function Minimization

Mathematical Programming Formulationof SFM

Maximize

Subject to: ,( )

,

0,

e

e

e

e E

e SS E

e E

f S

x

x

x

Minimize

Subject to::

( )

,1,

y 0,

S

S

S

S E

S e S

f S y

e E

S E

y

P: D:

Theorem. (Edmonds) This system is TDI, which implies D always hasIntegral optimal solutions.

•D models the submodular function minimization problem

•Feasible solutions to P provide lower bounds on f(S*)

•Optimal solutions to P provide certificate of optimality for S*

Page 22: Submodular Function Minimization

Schrijver’s Algorithm for SFM

•Maintains a feasible solution x to P’:

:

0:

,( ),

( )

e

e

ee S

e

e E

E xMaximize

Subject to

e

S Ef S

f Ex

x

x

•Maintains feasibility of x by keeping:

1 1

0, 1, ik k

i i ii i

x b

•Iteratively improves:

0: e

ee E x

x

b is an extreme point of P’

1

1 1 1

There is some ordering , , of such that

j( , , ) ( , , ), for each =1, , .j

n

jje

e e E

f e eef e nb

Page 23: Submodular Function Minimization

1

1 1 1

For some ordering , , of ,

( , , ) ( , , ), for ,j=1 , .j

n

jje

e e E

f e f eb e e n

Extreme Points

,( ) ( ),

( ) ( )

S ES f S

x E f E

xb is an extreme point of P’:

Feasibility proof for b :

smallest last j

Suppose ( ) ( )Ab f A

Then

some A E

( ) ( \ ) ( ) ( \ )je j jb b b A ffA e A A e

1 1 1( , , ) ( , , )jjf e f e ee

1 1 1( , , ) ( , , )jjf e f e ee

choice of A

submodularity of f

52 31 4 6

, , , , , , , , ,nje e ee e ee eb b b b b b b b

1 1

1 2 1 2

1 2 3 1 2 3

1 2 1 2

({ }) ({ })

({ , }) ({ , })

({ , , }) ({ , , })

({ , , , }) ({ , , , })n n

e f e

e e f e e

e e e f e e e

e e e f e e e

bbb

b

Lower ideals of the ordering are tight sets for b.

Page 24: Submodular Function Minimization

Show examples in Excel.

Page 25: Submodular Function Minimization

Optimality Condition: We have an xRE and an R E with

( ) ( ), for every S S Ex f S x is feasible for P’

1 2 1 2

1

1 1

1

1 1

2

2

1 1 1 1 1

2 2 2 2 2

1

1

, , , , , , , , , , , ,

, , , , , ,

, , , , , ,

r r

r

r

r n r n

r n

r n

e e e

k k k k

e e e e e e

e e e

e e

e

e e

k e ek

e

b b b b b

b b b b

x x x

b

x

b b b

x

b

b

R has all the negative components and no positive components of x

( )x R

1 1

( ) ( ) ( ) ( )i ii

k k

i i

fR RX fR Rb

R is the set of initial elements in the order, for each bi

( )f R

Page 26: Submodular Function Minimization

Optimality condition examples

0 18 38( , 13 1, , , , )1x

( ) 71 ( ) ( ) ( ),x xf S f SE SE E

2

17 0 5( , , ,8,0 15,14)xBalaji,Lisa,Peh Balaji,Lisa,{ } { }Peh( ) 67 ( ) ( ) ( ), S Ex xf S f S

4

{Toshio,Peh,Scott} {Toshio,Peh,Scott}( ) 15 ( ) ( ) ( ),f S f S S Ex x

1 1

2

1

2

2 3 1 4 5 6

1 2 3 4 5 6

= 0.7( , , 15, 24, 2, 1)

=0.3( 2

- 20 - 10

-5, 1, , 24, 2, 1)_ _

41_ ___

b

b

___________________________ ( , , , 24, 2, 1)- 6.5 - 6.7 - 1.8x

Page 27: Submodular Function Minimization

Auxiliary Network G=(E,A)

case 1: no path from + to -.

R

is a lower ideal in each order .

( ) (

R

) ( ) ( ) .x xf S f S S ER R

an arc ( , ) if in some order e f e f

1 2( , ,..., ,..., ,..., )

n

iuu u e fb b b b b b

a node for each element e E

0ex +

+

+

+ 0ex -

-

-

Page 28: Submodular Function Minimization

Auxiliary Network G=(E,A) an arc ( , ) if in some order e f e f

a node for each element e E

+ +

+

+

-

-

-

0ex 0ex

case 2: There is a path from + to -. Use last arc (s,t) to “improve x”.

st

Page 29: Submodular Function Minimization

Improving x: An Iteration, algebraically

x = 1 b1 + 2 b2 + ... + k bk ;

1 , ... , k 0; 1 + ... + k = 1

s t

= ’1 b’1 + ’2 b’2 + ... + ’k b’l ; b1

+ -1:.

+1

s

t

= 1 ( ’1 b’1 + ... + ’k b’l) + 2 b1 + ... + k bk

x’ = x + 1

-1:..

+1

s

t

Page 30: Submodular Function Minimization

= ’1 b’1 + ’2 b’2 + ... + ’k b’l ; b1

+ -1:.

+1

s

t

Schrijver’s clever idea

Page 31: Submodular Function Minimization

, , ,

({ }) ({ , }) ({ })

({ , }) ({ }) ({ })

({ , , }) ({ , }) ({ , , })

({ , , , }) ({ , , })

u s v s t s

f s f u s f u

f s u f s f u

f s u v f s u f u s v

f s u v t f s u v

s

u

v

t

b b bb

({ , }) ({ }) ({ , }) ({})

({ , , }) ({ , }) ({ , , }) ({ , })

({ , }) ({ }) ({, , , }) ({ , , })

({ , , , }) ({ , , }) ({ , , , }) ({ , , }) ({})

f v s f v f t s f t

f v s u f v s f t s u f t s

f u s f v f t s u v f t s u

f u s v t f u s v f v s u t f v s u f t

, , ,

({ }) ({ , }) ({ }) ({ })

({ , }) ({ })

({ , , }) ({ , })

({ , , , }) ({ , , })

u s v s t s

f s f u s f u f s

f s u f s

f s u v f s u

f s u v t f s u v

s

u

v

t

b bb b b b b

({ , }) ({ }) ({ }) ({ , }) ({}) ({ })

({ }) ({ , }) ({ }) ({ , , }) ({ , }) ({ , }) ({ }) ({ , , }) ({ , }) ({ , }) ({ })

0 ({ }) ({ , , }) ({ , }) ({ , , , }

0 0

f v s f v f s f t s f t f s

f u f s u f s f v s u f v s f s u f s f t s u f t s f s u f s

f v f s u v f s u f t s u v

, , ,

0

0 0

) ({ , , }) ({ , , }) ({ , })

({})

1

0

0

1

1

0

0

1

u s v s t s

f t s u f s u v f s u

f t

, , , , , ,

, , , , , ,

1

0

0

1

u s u s v s v s t s t s

u s u s v s v s t s t s

b bb b

b b

b

bb

b

Page 32: Submodular Function Minimization

An Iteration, geometrically

x = 1 b1 + 2 b2 + ... + k bk ;

1 , ... , k 0; 1 + ... + k = 1

= ’1 b’1 + ’2 b’2 + ... + ’k b’l ; b1

+ -1:.

+1

s

t

= 1 ( ’1 b’1 + ... + ’k b’l) + 2 b1 + ... + k bk

x + 1 -1:.

+1

s

t

x’ = ...

Page 33: Submodular Function Minimization

Complexity of O(n6)

2

'

' , for every

' , for some , this can happen at most times.

else, '

if t' t, then t'<t, because t was chosen with largest index.

else t'=t. Same t in consecutive iterati

.

u u

u u

t t

d d

if d d u

d d

n

u E

ons.

if s' s, then s'<s, because s was chosen with largest index.

else s'=s. Same s and t in consecutive iterations.

The must be different from , since is gone.

b' b b

t' t

Either ( ', , ) ( , , ),

or : ( , , ) ( , , ) has decreased.

Either ' , for some ,

or ((d' ,t'),s', ', ' ) is lexicographically smaller than ((d ,t),s, , )

u u

dist s t distb b

b b

s t

dist s t dis s

d u

bt t

d

.

n n n n

t(d ,t)

s

Page 34: Submodular Function Minimization

Conclusions and future work

• Submodular Function Minimization (SFM) generalizes several combinatorial optimization problems.

• Schrijver’s elegant algorithm – known basic ideas from ‘80s– new idea on step direction– clever tie-breaking for O(n6) complexity bound

• C++ implementations in the works– Schrijver Algorithm– IFF Algorithms– possibly Queyranne’s column-generation idea– others?