380 likes | 667 Vues
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
E N D
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 • Recent developments • Iwata, Fleischer, Fugishige algorithm • Lex Schrijver’s algorithm • Schrijver’s Algorithm • Conclusions
subsets of E E A,B E A B f(A) + f(B) f(AB) + f(AB) Equivalently: SR E, e E E R S e f(S {e}) – f(S) f(R {e}) – f(R) marginal value of e wrt S (cost) marginal value of e wrt R (cost) Submodular Function Definitions f2Eℝ is submodular if
Example: Number of Different Colors e a marginal value of g g d k 0 b i f({a,b,d,e,k})= 5 < c 1 h f({e,k})= 2 j E f(E)=5 f({a,b,d,e,k,g})= 5 f({e,k,g})= 3
Example: Number of Connections (Edges)) marginal value of g e a g d k 3 f’({a,b,d,e,k})= 3 b i < c 2 h f’({e,k})= 0 j E f’(E)= 11 f’({a,b,d,e,k,g})= 6 f’({e,k,g})= 2
marginal value of g Example: - Number of Connections (Edges)) e a g d f’({a,b,d,e,k,g})= -6 k -3 f’({a,b,d,e,k})= -3 b i < f’({e,k,g})= -2 c -2 h f’({e,k})= 0 j E f’(E)= -11
marginal value of g Example: Number of Colors - Number of Edges: f’’ = f + f’ e a g d f’’({a,b,d,e,k,g})= 5-6=-1 k -3 f’’({a,b,d,e,k})= 5-3=2 b i < f’’({e,k,g})= 3-2=1 c -1 h f’’({e,k})= 2-0=2 j E f’’(E)= 5 -11= -6
G = digraph with node set V A A A V\{s,t} s f(A) + f(B)f(AB) + f(AB) t f(A) := number of arcs leaving node set A {s} B A B Example: Directed Cuts
DC DC DC S R Benefit term Risk term Net cost marginal risk-marginal benefit wrt S marginal risk-marginal benefit wrt R Example: Benefit and Risk Tradeoff E: customers i
Example: Find minimum (cardinality or capacity) (s,t)-cut (Note: ƒnot monotone) s t Example: Find minimum net value (colors-edges) node set Submodular Function Minimization:Find S E with minimum f(S)
Example: Find minimum (cardinality or capacity) (s,t)-cut DC (Note: ƒnot monotone) s t Example: Find minimum net cost (max net profit) customer set Submodular Function Minimization:Find S E with minimum f(S)
x* x0 P P Optimizationand Separation Given c and P, find x*P such that cx* cx, for every x P. Given x0 and P, either conclude x0P or return valid inequality axb with ax0 > b. Theorem(Grötschel,Lovasz, Schrijver 1981) The optimization problem for Pcan be solved in polynomial time if and only if the separation problem can be solved for Pin polynomial time.
Greedy Algorithm (Edmonds): ce1 ce2 x*e1 = f({e1}) x*e2= f({e1,e2})-f({e1}) x* x0 xe1 P P xe2 P: x(A) f(A), A E x(E) = f(E) Optimization and Separation Given x0 and P, either conclude x0P or return valid inequality x(A) f(A), with x0(A) > f(A) or min{ f(A) - x0(A) : A E } submodular submodular function minimization
Challenge(Grötschel,Lovasz, Schrijver 1981) Since Optimizationand Separation are polynomially equivalent, and the optimization problem for Phas 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 for Submodular Function Minimization (SFM).
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)
a collection of subsets of E (called independent sets) satisfying r is a submodularfunction on E Submodular function and matroids a finite set A matroid M=(E,I) 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)
submodular Matroid Examples Forest Matroid of a Graph • G=(V,E) • M=(E,I) edge sets with no cycles Rank functionon 2E:
submodular Matroid Examples • G=(V,E) Cutset Matroid of a Graph • M=(E,I) edge sets with no cutsets Rank functionon 2E:
a submodularfunction on E Matroid Partition • G=(V,E) • Can E be partitioned • into at most k forests? • (k independent sets) • This is a special case • of SFM.
a submodularfunction on E Matroid Intersection • Given matroids M1=(E,I1) and M2=(E,I2), • max {|I|: II1 I2} = min {f1(A) + f2(E\A) : A E} • Special case of SFM. Maximum matching in bipartite graph is a special case. • G=(UV,E)
Theorem. (Edmonds) This system is TDI, which implies D always has Integral optimal solutions. • D models the submodular function minimization problem • Feasible solutions to P provide lower bounds onf(S*) • Optimal solutions to P provide certificate of optimality for S* Mathematical Programming Formulationof SFM P: D:
Schrijver’s Algorithm for SFM • Maintains a feasible solution x to P’: • Maintains feasibility of x by keeping: b is an extreme point of P’ • Iteratively improves:
choice of A submodularity of f Extreme Points b is an extreme point of P’: Feasibility proof for b : Suppose smallest last j Then Lower ideals of the ordering are tight sets for b.
Optimality Condition: We have an xRE and an R E with x is feasible for P’ R has all the negative components and no positive components of x Ris the set of initial elements in the order, for each bi
+ + - - + R + - Auxiliary Network G=(E,A) case 1: no path from + to -.
Auxiliary Network G=(E,A) + + - s - + t - + case 2: There is a path from + to -. Use last arc (s,t) to “improve x”.
x = 1b1 + 2b2 + ... + kbk; 1 , ... , k 0; 1 + ... + k = 1 s -1 : . . +1 = 1 ( ’1b’1+ ... + ’kb’l) + 2b1 + ... + kbk x’ = x+ 1 s -1 : . +1 t = ’1b’1 + ’2b’2 + ... + ’kb’l; b1 + t Improving x: An Iteration, algebraically
s -1 : . +1 = ’1b’1 + ’2b’2 + ... + ’kb’l; b1 + t Schrijver’s clever idea
x = 1b1 + 2b2 + ... + kbk; 1 , ... , k 0; 1 + ... + k = 1 s -1 : . +1 = 1 ( ’1b’1+ ... + ’kb’l) + 2b1 + ... + kbk x+ 1 t x’ = ... s -1 : . +1 = ’1b’1 + ’2b’2 + ... + ’kb’l; b1 + t An Iteration, geometrically
Complexity of O(n6) n n n n
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?