Presentation is loading. Please wait.

Presentation is loading. Please wait.

Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar

Similar presentations


Presentation on theme: "Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar"— Presentation transcript:

1 Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar http://www.robots.ox.ac.uk/~oval/

2 Linear Programming Matroid Polytopes Polymatroid Outline

3 Polyhedron Ax ≤ b A : m x n matrix b: m x 1 vector

4 Bounded Polyhedron = Polytope Ax ≤ b A : m x n matrix b: m x 1 vector

5 Vertex z is a vertex of P = {x, Ax ≤ b} z is not a convex combination of two points in P There does not exist x, y ∈ P and 0 < λ < 1 x ≠ z and y ≠ z such that z = λ x + (1-λ) y

6 Vertex z is a vertex of P = {x, Ax ≤ b} A z is a submatrix of A Contains all rows of A such that a i T z = b i Recall A is an m x n matrix

7 Vertex z is a vertex of P Rank of A z = n Proof? See “hidden” slides

8 Proof Sketch: Necessity Let z be a vertex of P Suppose rank(A z ) < nA z c = 0 for some c ≠ 0 Then there exists a d > 0 such that z - dc ∈ Pz + dc ∈ P Contradiction

9 Proof Sketch: Sufficiency Suppose rank(A z ) = n but z is not a vertex of P z = (x+y)/2 for some x, y ∈ P, x ≠ y ≠ z For each a in A z Implies A z (x-y) = 0Contradiction a T x ≤ b = a T za T y ≤ b = a T z

10 Linear Program Maximize a linear function Over a polyhedral feasible region s.t. A x ≤ b max x c T x A: m x n matrix b: m x 1 vector c: n x 1 vector Objective function Constraints x: n x 1 vector

11 Example 4x 1 – x 2 ≤ 8 max x x 1 + x 2 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 s.t. What is c? A?b?

12 Example x 1 ≥ 0 x 2 ≥ 0

13 Example 4x 1 – x 2 = 8 x 1 ≥ 0 x 2 ≥ 0

14 Example 4x 1 – x 2 ≤ 8 x 1 ≥ 0 x 2 ≥ 0

15 Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 x 1 ≥ 0 x 2 ≥ 0

16 Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0

17 Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 0

18 Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 8 Optimal solution

19 Linear Programming –Duality –LP Solutions Matroid Polytopes Polymatroid Outline

20 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 3 x 2 x 7 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 90 Upper bound on solution

21 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 1 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 36 Upper bound on solution

22 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. 1 x Scale the constraints, add them up 3x 1 + x 2 + 2x 3 ≤ 36 Tightest upper bound?

23 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 y 1, y 2, y 3, y 4, y 5, y 6 ≥ 0 We should be able to add up the inequalities

24 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 1 + y 4 + 2y 5 + 4y 6 = 3 Coefficient of x 1 should be 3

25 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 2 + y 4 + 2y 5 + y 6 = 1 Coefficient of x 2 should be 1

26 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 -y 3 + 3y 4 + 5y 5 + 2y 6 = 2 Coefficient of x 3 should be 2

27 Example 2x 1 + 2x 2 + 5x 3 ≤ 24 max x 3x 1 + x 2 + 2x 3 4x 1 + x 2 + 2x 3 ≤ 36 -x 1 ≤ 0, -x 2 ≤ 0, -x 3 ≤ 0 x 1 + x 2 + 3x 3 ≤ 30 s.t. y4y4 y1y1 y2y2 y3y3 y5y5 y6y6 min y 30y 4 + 24y 5 + 36y 6 Upper bound should be tightest

28 Dual min y 30y 4 + 24y 5 + 36y 6 s.t. y 1, y 2, y 3, y 4, y 5, y 6 ≥ 0 -y 1 + y 4 + 2y 5 + 4y 6 = 3 -y 2 + y 4 + 2y 5 + y 6 = 1 -y 3 + 3y 4 + 5y 5 + 2y 6 = 2 Original problem is called primal Dual of dual is primal

29 Dual s.t. A x ≤ b max x c T x

30 Dual - y T (A x – b)max x c T x min y≥0 KKT Condition?A T y = c min y≥0 bTybTy s.t. A T y = c

31 min y≥0 bTybTy s.t. A T y = c s.t. A x ≤ b max x c T x Primal Dual

32 Strong Duality min y≥0 bTybTy s.t. A T y = c s.t. A x ≤ b max x c T x Primal Dual p = d = If p ≠ ∞ or d ≠ ∞, then p = d. Skipping the proof Think back to the intuition of dual

33 Question s.t. A 1 x ≤ b 1 max x c T x A 2 x ≥ b 2 A 3 x = b 3 Dual?

34 Linear Programming –Duality –LP Solutions Matroid Polytopes Polymatroid Outline

35 Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 + x 2 x 1 + x 2 = 8 Optimal solution at a vertex

36 Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 1 x 1 = 3 Optimal solution at a vertex

37 Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 max x x 2 x 2 = 6 Optimal solution at a vertex

38 Graphical Solution 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 An optimal solution always at a vertex Proof? max x c T x

39 Dantzig (1951): Simplex Method –Search over vertices of the polyhedra –Worst-case complexity is exponential –Smoothed complexity is polynomial Khachiyan (1979, 1980): Ellipsoid Method –Polynomial time complexity –LP is a P optimization problem Karmarkar (1984): Interior-point Method –Polynomial time complexity –Competitive with Simplex Method Solving the LP

40 Plenty of standard software available Mosek (http://www.mosek.com) –C++ API –Matlab API –Python API –Free academic license Solving the LP

41 Linear Programming Matroid Polytopes Polymatroid Outline

42 Incidence Vector of Set Matroid M = (S, I ) Set X ⊆ S Incidence vector v X ∈ {0,1} |S| v X (s) = 1, if s ∈ X 0, if s ∉ X

43 Example (Uniform Matroid) S = {1,2,…,9} sw(s) 110 25 32 41 53 66 712 82 91 k = 4 X = {1, 3, 5} 101010000101010000 vX?vX?

44 Example (Graphic Matroid) v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v6v6 v6v6 v4v4 v4v4 v5v5 v5v5 v3v3 v3v3 e1e1 e2e2 e4e4 e6e6 e5e5 e3e3 e7e7 e9e9 e8e8 S = E X ⊆ S

45 Example (Graphic Matroid) v1v1 v1v1 v0v0 v0v0 v2v2 v2v2 v6v6 v6v6 v4v4 v4v4 v5v5 v5v5 v3v3 v3v3 S = E X ⊆ S vX?vX? e1e1 e2e2 e4e4 e6e6 e5e5 e3e3 e7e7 e9e9 e8e8 100100011100100011

46 Incidence Vectors of Independent Sets Convex Hull Ax ≤ b A? b?b? Matroid M = (S, I ) v X ∈ {0,1} |S|, X ∈ I

47 Linear Programming Matroid Polytopes –Independent Set Polytope –Base Polytope Polymatroid Outline

48 Independent Set Polytope Convex Hull Ax ≤ b Matroid M = (S, I ) v X ∈ {0,1} |S|, X ∈ I x ∈ Real |S|

49 Independent Set Polytope v X ∈ {0,1} |S|, X ∈ I Matroid M = (S, I ) x ∈ Real |S| x s ≥ 0, for all s ∈ S ∑ s ∈ U x s ≤ r M (U), for all U ⊆ S Necessary conditions Why? Sufficient for integral xProof?

50 Independent Set Polytope v X ∈ {0,1} |S|, X ∈ I Matroid M = (S, I ) x ∈ Real |S| x s ≥ 0, for all s ∈ S ∑ s ∈ U x s ≤ r M (U), for all U ⊆ S Necessary conditions Why? Sufficient for all xLectures slides for proof

51 Linear Programming Matroid Polytopes –Independent Set Polytope –Base Polytope Polymatroid Outline

52 Base Polytope Convex Hull Ax ≤ b Matroid M = (S, I ) v X ∈ {0,1} |S|, X ∈ B x ∈ Real |S|

53 Base Polytope v X ∈ {0,1} |S|, X ∈ B Matroid M = (S, I ) x ∈ Real |S| x s ≥ 0, for all s ∈ S ∑ s ∈ U x s ≤ r M (U), for all U ⊆ S ∑ s ∈ S x s = r M (S)

54 Linear Programming Matroid Polytopes Polymatroid Outline

55 Polymatroid Set S Real vector x of size |S|x1 Submodular function f P f = {x ≥ 0, x(U) ≤ f(U) for all U ⊆ S} EP f = {x(U) ≤ f(U) for all U ⊆ S} Polymatroid Extended Polymatroid

56 Linear Programming Matroid Polytopes Polymatroid –Tight Sets –Optimization Outline

57 Tight Sets Set SSubmodular function f EP f = {x(U) ≤ f(U) for all U ⊆ S} U is tight with respect to x ∈ EP f if x(U) = f(U) Tight sets are closed under union Tight sets are closed under intersection Proof?

58 Proof Sketch Let T and U be tight wrt x ∈ EP f ≥ x(T ∪ U) + x(T ∩ U) f(T) + f(U) ≥ f(T ∪ U) + f(T ∩ U) = x(T) + x(U) = f(T) + f(U) All inequalities must be equalities

59 Linear Programming Matroid Polytopes Polymatroid –Tight Sets –Optimization Outline

60 Primal Problem max w T x x ∈ EP f Assume f(null set) ≥ 0 Otherwise EP f is empty f(null set) can be set to 0Why? Decreasing f(null set) maintains submodularity

61 Primal Problem max w T x x ∈ EP f Assume w ≥ 0 Otherwise the optimal solution is infinityWhy?

62 Greedy Algorithm max w T x x ∈ EP f Order s 1,s 2,…,s n ∈ S such that w(s i ) ≥ w(s i+1 ) Define U i = {s 1,s 2,..,s i } x G i = f(U i ) – f(U i-1 ) x G ∈ EP f Proof?Hidden slides

63 Proof Sketch We have to show that x G (T) ≤ f(T) for all T ⊆ S Trivial when T = null set Mathematical induction on |T|

64 Proof Sketch Let k be the largest index such that s k ∈ T Clearly |T| ≤ |U k | x G (T) = x G (T\{s k }) + x G k = f(T\{s k }) + f(U k ) - f(U k-1 ) ≤ f(T) ≤ f(T\{s k }) + x G k Why? Induction Why? Submodularity Definition

65 Greedy Algorithm max w T x x ∈ EP f Order s 1,s 2,…,s n ∈ S such that w(s i ) ≥ w(s i+1 ) Define U i = {s 1,s 2,..,s i } x G i = f(U i ) – f(U i-1 ) x G is optimalProof?Hidden slides

66 Dual Problem max w T x x ∈ EP f min ∑ T y T f(T) y T ≥ 0, for all T ⊆ S ∑ T y T v T = w Let us first try to find a feasible dual solution

67 Greedy Algorithm Order s 1,s 2,…,s n ∈ S such that w(s i ) ≥ w(s i+1 ) Define U i = {s 1,s 2,..,s i } y G U i = w(s i ) - w(s i+1 ) y G is feasible y G S = w(s n ) y G T = 0, for all other T Proof? Hidden slides

68 Proof Sketch Trivially, y G ≥ 0 Consider s i ∈ S ∑ T ∋ s i y G T = ∑ j≥i y G U j = w(s i ) ∑ T y T v T = w

69 Optimality Primal feasible solution x G Dual feasible solution y G Primal value at x G = Dual value at y G Proof?Hidden slides

70 Proof Sketch w T x G = ∑ s ∈ S w(s)x G s = ∑ i ∈ {1,2,…,n} w(s i )(f(U i ) - f(U i-1 )) = ∑ i ∈ {1,2,…,n-1} f(U i )(w(s i ) - w(s i+1 )) + f(S)w(s n ) = ∑ T y G T f(T)

71 Optimality Primal feasible solution x G Dual feasible solution y G Primal value at x G = Dual value at y G Therefore, x G is an optimal primal solution And, y G is an optimal dual solution


Download ppt "Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar"

Similar presentations


Ads by Google