Presentation is loading. Please wait.

Presentation is loading. Please wait.

Polyhedral Optimization Lecture 3 – Part 2

Similar presentations


Presentation on theme: "Polyhedral Optimization Lecture 3 – Part 2"— Presentation transcript:

1 Polyhedral Optimization Lecture 3 – Part 2
M. Pawan Kumar Slides available online

2 Outline Operations on Matroids Maximum Weight Independent Set
Truncation Deletion Contraction Duality of Deletion and Contraction Maximum Weight Independent Set Polytopes

3 t-Truncation of Matroid
M = (S, I) M’ = (S, I’) X ∈I’ if two conditions are satisfied (i) X ∈I (ii) |X| ≤ t M’ is a matroid Proof?

4 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 t = 2 t-Truncation denoted by M’ Is {1, 2, 3} independent in M’ ? NO

5 Example – Uniform Matroid
S = {1, 2, 3, 4} k = 3 t = 2 t-Truncation denoted by M’ Is {1, 2} independent in M’ ? YES

6 Example – Uniform Matroid
S = {1, 2, 3, 4} k = 3 t = 2 t-Truncation denoted by M’ Is {1} independent in M’ ? YES

7 Example – Linear Matroid
1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 t = 3 t-Truncation denoted by M’ Independent in M’ ? NO

8 Example – Linear Matroid
1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 t = 3 t-Truncation denoted by M’ Independent in M’ ? NO

9 Example – Linear Matroid
1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 t = 3 t-Truncation denoted by M’ Independent in M’ ? YES

10 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6 t = 3 t-Truncation denoted by M’

11 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6 t = 3 t-Truncation denoted by M’ Independent in M’ ? NO

12 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6 t = 3 t-Truncation denoted by M’ Independent in M’ ? NO

13 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6 t = 3 t-Truncation denoted by M’ Independent in M’ ? YES

14 Outline Operations on Matroids Maximum Weight Independent Set
Truncation Deletion Contraction Duality of Deletion and Contraction Maximum Weight Independent Set Polytopes

15 Deletion M = (S, I) M\s = (S-s, I’)
X ∈I’ if two conditions are satisfied (i) X ⊆ S-s (ii) X ∈I M\s is a matroid Proof?

16 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after deletion of s denoted by M’ Is {1, 2, 3} independent in M’ ? NO

17 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after deletion of s denoted by M’ Is {1, 3, 4, 5} independent in M’ ? NO

18 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after deletion of s denoted by M’ Is {1, 3, 4} independent in M’ ? YES

19 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after deletion of s denoted by M’ Independent in M’ ? NO

20 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after deletion of s denoted by M’ Independent in M’ ? NO

21 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after deletion of s denoted by M’ Independent in M’ ? YES

22 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6

23 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after deletion of s denoted by M’

24 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after deletion of s denoted by M’ Independent in M’ ? NO

25 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after deletion of s denoted by M’ Independent in M’ ? NO

26 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after deletion of s denoted by M’ Independent in M’ ? YES

27 Effect on Rank Function
M = (S, I) M\s = (S-s, I’) rM\s(X) = rM(X), for all X ⊆ S-s Proof?

28 Outline Operations on Matroids Maximum Weight Independent Set
Truncation Deletion Contraction Duality of Deletion and Contraction Maximum Weight Independent Set Polytopes

29 Contraction M = (S, I) M/s = (S-s, I’) Assume {s} ∈I
X ∈I’ if two conditions are satisfied (i) X ⊆ S-s (ii) X + s ∈I M/s is a matroid Proof?

30 Contraction M = (S, I) M/s = (S-s, I’) Assume {s} ∉ I
X ∈I’ if two conditions are satisfied (i) X ⊆ S-s (ii) X ∈I M/s is the same as M\s when {s} ∉ I

31 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after contraction of s is M’ Is {1, 2, 3} independent in M’ ? NO

32 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after contraction of s is M’ Is {1, 3, 4} independent in M’ ? NO

33 Example – Uniform Matroid
S = {1, 2, 3, 4, 5, 6} k = 3 s = 2 Matroid after contraction of s is M’ Is {1, 4} independent in M’ ? YES

34 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after contraction of s denoted by M’ Independent in M’ ? NO

35 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after contraction of s denoted by M’ Independent in M’ ? NO

36 Example – Linear Matroid
s 1 2 3 4 2 4 6 8 1 2 3 1 2 2 4 1 2 2 4 Matroid after contraction of s denoted by M’ Independent in M’ ? YES

37 Example – Graphic Matroid
v0 v1 v4 v2 v5 v3 v6

38 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after contraction of s denoted by M’

39 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after contraction of s denoted by M’ Independent in M’ ? NO

40 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after contraction of s denoted by M’ Independent in M’ ? NO

41 Example – Graphic Matroid
v0 v1 v4 s v2 v5 v3 v6 Matroid after contraction of s denoted by M’ Independent in M’ ? YES

42 Effect on Rank Function
M = (S, I) M/s = (S-s, I’) rM/s(X) = rM(X+s) – rM({s}), for all X ⊆ S-s Proof?

43 Outline Operations on Matroids Maximum Weight Independent Set
Truncation Deletion Contraction Duality of Deletion and Contraction Maximum Weight Independent Set Polytopes

44 Duality (M/s)* = M*\s Proof?
If {s} ∉ I, deletion doesn’t affect independence If {s} ∉ I, contraction doesn’t affect independence Proof is trivial

45 Duality (M/s)* = M*\s Proof? Assume {s} ∈I X is independent in (M/s)*
s ∉ X ⟺ X ⊆ B1 for some base B1 of (M/s)* ⟺ X ∩ B2 = Null for some base B2 of M/s ⟺ X ∩ B3 = Null for some base B3 = B2 + s of M ⟺ X ⊆ B4 for some base B4 of M* Hence proved.

46 Outline Operations on Matroids Maximum Weight Independent Set
Polytopes

47 Independent Set Matroid M = (S, I) X ⊆ S is independent if X  I
X ⊆ S is dependent if X ∉ I

48 Weight of an Independent Set
Matroid M = (S, I) Weight function w: S → Non-negative Real Weight of an independent set X The sum of weight of its elements

49 Weight of an Independent Set
Matroid M = (S, I) Weight function w: S → Non-negative Real Weight of an independent set X w(X) = ∑s∈X w(s)

50 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4 X = {1, 3, 5}

51 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4 X = {1, 3, 5} w(X)? 15

52 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 Forest X 5 v2 v5 3 2 v3 v6 4

53 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 Forest X 5 v2 v5 3 2 w(X)? v3 v6 4 10

54 Maximum Weight Independent Set
Matroid M = (S, I) Weight function w: S → Non-negative Real Find an independent set with maximum weight maxX∈I w(X)

55 Maximum Weight Independent Set
Matroid M = (S, I) Weight function w: S → Non-negative Real Find an independent set with maximum weight maxX∈I ∑s∈X w(s)

56 True or False There exists an optimal solution
that is a base of the matroid TRUE

57 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4 Feasible Solutions?

58 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4 Optimal Solution?

59 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

60 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 Feasible Solutions? 3 2 v3 v6 4

61 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 Optimal Solution? 3 2 v3 v6 4

62 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 Efficient Algorithm? 3 2 v3 v6 4

63 Outline Operations on Matroids Maximum Weight Independent Set
Greedy Algorithm Efficiency Optimality: Necessity Optimality: Sufficiency Extensions Polytopes

64 Greedy Algorithm Start with an empty set Repeat
Pick a new element with maximum weight such that the new set is independent Add the element to the set Until no more elements can be added

65 Greedy Algorithm X ← ϕ Repeat Pick a new element with maximum weight
such that the new set is independent Add the element to the set Until no more elements can be added

66 Greedy Algorithm X ← ϕ Repeat s* = argmaxx∈S\X w(s)
such that the new set is independent Add the element to the set Until no more elements can be added

67 Greedy Algorithm X ← ϕ Repeat s* = argmaxx∈S\X w(s)
such that X ∪ {s} ∈ I Add the element to the set Until no more elements can be added

68 Greedy Algorithm X ← ϕ Repeat s* = argmaxx∈S\X w(s)
such that X ∪ {s} ∈ I X ← X ∪ {s} Until no more elements can be added

69 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

70 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

71 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

72 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

73 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} k = 4

74 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

75 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

76 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

77 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

78 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

79 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

80 Example (Graphic Matroid)
v0 S = E 2 6 v1 v4 2 3 1 5 v2 v5 3 2 v3 v6 4

81 Outline Operations on Matroids Maximum Weight Independent Set
Greedy Algorithm Efficiency Optimality: Necessity Optimality: Sufficiency Extensions Polytopes

82 Efficiency of Greedy Algorithm
X ← ϕ Repeat s* = argmaxx∈S\X w(s) O(|S|) such that X ∪ {s} ∈ I O(|S|) X ← X ∪ {s} Until no more elements can be added

83 Independence Testing Oracle
Efficiency depends on independence testing Brute-force is not an option Uniform matroid? Graphic matroid?

84 Outline Operations on Matroids Maximum Weight Independent Set
Greedy Algorithm Efficiency Optimality: Necessity Optimality: Sufficiency Extensions Polytopes

85 Optimality: Necessity
(S, I) is a matroid (S, I) admits an optimal greedy algorithm Proof?

86 Proof Sketch Matroid M = (S, I) Proof by induction Current solution X
X is part of optimal solution B (base of M)

87 Proof Sketch Next step chooses to add s If s ∈ B, trivial
Otherwise, consider base B’ such that X ∪{s} ⊆ B’ ⊆ B ∪{s} B’ = (B ∪{s})\{t} w(B’) ≥ w(B) by construction

88 Outline Operations on Matroids Maximum Weight Independent Set
Greedy Algorithm Efficiency Optimality: Necessity Optimality: Sufficiency Extensions Polytopes

89 Optimality: Sufficiency
(S, I) is a matroid (S, I) admits an optimal greedy algorithm Proof?

90 Proof Sketch Matroid M = (S, I) X ∈ I Y ∈ I k = |X| < |Y|
There should exist an s ∈ Y\X, X ∪{s} ∈ I Proof by contradiction

91 Proof Sketch Recall k = |X| k+2, if s ∈ X k+1, if s ∈ Y\X w(s) =
0, otherwise Greedy solution has weight k(k+2) w(Y) ≥ (k+1)(k+1) > k(k+2)

92 Outline Operations on Matroids Maximum Weight Independent Set
Greedy Algorithm Efficiency Optimality: Necessity Optimality: Sufficiency Extensions Polytopes

93 Maximum Weight Base Matroid M = (S, I) Weight function w: S → Real
Find a base with maximum weight maxX∈B w(X) Does greedy work? YES

94 Minimum Weight Base Matroid M = (S, I) Weight function w: S → Real
Find a base with minimum weight minX∈B w(X) Does greedy work? YES

95 Maximum Weight Independent Set
Matroid M = (S, I) Weight function w: S → Real Find an independent set with maximum weight maxX∈I w(X) Does greedy work? YES

96 Outline Operations on Matroids Maximum Weight Independent Set
Polytopes

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

98 Example (Uniform Matroid)
s w(s) 1 10 2 5 3 4 6 7 12 8 9 S = {1,2,…,9} 1 k = 4 X = {1, 3, 5} vX?

99 Example (Graphic Matroid)
v0 S = E e1 e2 v1 v4 e4 e5 e3 X ⊆ S e6 v2 v5 e7 e9 v3 v6 e8

100 Example (Graphic Matroid)
v0 S = E e1 e2 1 v1 v4 e4 e5 e3 X ⊆ S e6 v2 v5 e7 e9 vX? v3 v6 e8

101 Incidence Vectors of Independent Sets
Matroid M = (S, I) Convex Hull Ax ≤ b vX ∈ {0,1}|S|, X ∈ I A? b? First, a property !! Independent Set Polytope

102 Maximum Weight Independent Set
Matroid M = (S, I) w* = maxX∈I w(X) S = {s1,s2,…,sm}, such that w(si) ≥ w(si+1) ≥ 0 Ui = {s1,…si} Optimal solution Why? X = {si | rM(Ui) > rM(Ui-1)}

103 Maximum Weight Independent Set
Matroid M = (S, I) w* = maxX∈I w(X) w(X) = ∑s∈X w(s) = ∑i w(si)(rM(Ui)-rM(Ui-1)) = ∑i λi rM(Ui) Relationship between w and λ? w = ∑i λi vUi X = {si | rM(Ui) > rM(Ui-1)}

104 Maximum Weight Independent Set
Matroid M = (S, I) w* = maxX∈I w(X) w(X) = w* = ∑i λi rM(Ui) such that w = ∑i λi vUi We need to remember this for what follows

105 Outline Operations on Matroids Maximum Weight Independent Set
Polytopes Independent Set Polytope Base Polytope Spanning Set Polytope

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

107 Independent Set Polytope
Matroid M = (S, I) vX ∈ {0,1}|S|, X ∈ I x ∈ Real|S| Necessary conditions Sufficient for integral x Proof? xs ≥ 0, for all s ∈ S Why? ∑s∈U xs ≤ rM(U), for all U ⊆ S Why?

108 Independent Set Polytope
Matroid M = (S, I) vX ∈ {0,1}|S|, X ∈ I x ∈ Real|S| Necessary conditions Sufficient for all x Proof? xs ≥ 0, for all s ∈ S Why? ∑s∈U xs ≤ rM(U), for all U ⊆ S Why?

109 Independent Set Polytope
miny ∑U⊆S yUrM(U) yU ≥ 0, for all U ⊆ S ∑U⊆S yUvU ≥ w Dual? maxx wTx xs ≥ 0, for all s ∈ S ∑s∈U xs ≤ rM(U), for all U ⊆ S

110 Independent Set Polytope
miny ∑U⊆S yUrM(U) yU ≥ 0, for all U ⊆ S ∑U⊆S yUvU = w Greedy algorithm integral solution maxx wTx x’ xs ≥ 0, for all s ∈ S ∑s∈U xs ≤ rM(U), for all U ⊆ S

111 Independent Set Polytope
miny ∑U⊆S yUrM(U) y’ yU ≥ 0, for all U ⊆ S ∑U⊆S yUvU = w Solution obtained using the property maxx wTx x’ xs ≥ 0, for all s ∈ S ∑s∈U xs ≤ rM(U), for all U ⊆ S

112 Independent Set Polytope
miny ∑U⊆S yUrM(U) y’ yU ≥ 0, for all U ⊆ S ∑U⊆S yUvU = w Relationship between objectives for x’ and y’ ? maxx wTx x’ xs ≥ 0, for all s ∈ S ∑s∈U xs ≤ rM(U), for all U ⊆ S

113 Independent Set Polytope
Dual upper bounds primal x’ and y’ must be optimal solutions ∑s w(s)x’s = ∑U⊆S y’UrM(U) For all integer w, we have integer optimal value Negative values in w? Hence proved

114 Outline Operations on Matroids Maximum Weight Independent Set
Polytopes Independent Set Polytope Base Polytope Spanning Set Polytope

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

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

117 Outline Operations on Matroids Maximum Weight Independent Set
Polytopes Independent Set Polytope Base Polytope Spanning Set Polytope

118 Convex Hull Ax ≤ b Spanning Set Polytope Matroid M = (S, I)
vX ∈ {0,1}|S|, X ∈ S x ∈ Real|S| S\X? Independent set of M*

119 Spanning Set Polytope Matroid M = (S, I) vX ∈ {0,1}|S|, X ∈ B
x ∈ Real|S| xs ≥ 0, for all s ∈ S 1-xs ≥ 0, for all s ∈ S ∑s∈U (1-xs) ≤ rM*(U), for all U ⊆ S

120 Spanning Set Polytope Matroid M = (S, I) vX ∈ {0,1}|S|, X ∈ B
x ∈ Real|S| xs ≥ 0, for all s ∈ S xs ≤ 1, for all s ∈ S ∑s∈U (1-xs) ≤ rM*(U), for all U ⊆ S

121 Spanning Set Polytope Matroid M = (S, I) vX ∈ {0,1}|S|, X ∈ B
x ∈ Real|S| xs ≥ 0, for all s ∈ S xs ≤ 1, for all s ∈ S ∑s∈U xs ≥ rM(S) - rM(S\U), for all U ⊆ S

122 Questions?


Download ppt "Polyhedral Optimization Lecture 3 – Part 2"

Similar presentations


Ads by Google