Advanced Algorithms (III) Chihao Zhang Shanghai Jiao Tong University Mar. 11, 2019 Advanced Algorithms (III) 1/11
Similar to Max2SAT, tossing a fair coin yields an MaxCut MaxCut Input: An undirected graph G V E . Problem: A set S V that maximizes E S S . NP -hard -approximation. (Exercise) Can we find clever coins via LP relaxation…? Advanced Algorithms (III) 2/11
Similar to Max2SAT, tossing a fair coin yields an MaxCut MaxCut Advanced Algorithms (III) Can we find clever coins via LP relaxation…? (Exercise) -approximation. NP -hard 2/11 Problem: Input: An undirected graph G = ( V , E ) . � E ( S , ¯ � � A set S ⊆ V that maximizes S ) � .
Similar to Max2SAT, tossing a fair coin yields an MaxCut MaxCut Advanced Algorithms (III) Can we find clever coins via LP relaxation…? (Exercise) -approximation. NP -hard 2/11 Problem: Input: An undirected graph G = ( V , E ) . � E ( S , ¯ � � A set S ⊆ V that maximizes S ) � .
MaxCut MaxCut Advanced Algorithms (III) Can we find clever coins via LP relaxation…? (Exercise) NP -hard 2/11 Problem: Input: An undirected graph G = ( V , E ) . � E ( S , ¯ � � A set S ⊆ V that maximizes S ) � . Similar to Max2SAT, tossing a fair coin yields an 1 2 -approximation.
MaxCut MaxCut Advanced Algorithms (III) Can we find clever coins via LP relaxation…? (Exercise) NP -hard 2/11 Problem: Input: An undirected graph G = ( V , E ) . � E ( S , ¯ � � A set S ⊆ V that maximizes S ) � . Similar to Max2SAT, tossing a fair coin yields an 1 2 -approximation.
E y u v . How to write linear constraints for a cut? Advanced Algorithms (III) subgraph of G . , we view S S F as a bipartite y u v E u v idea: Let F LP for MaxCut introduce a vairable x u u v e The cost function is u v . for every edge e introduce a variable y u v V . for every u 3/11
E y u v . How to write linear constraints for a cut? idea: Let F Advanced Algorithms (III) subgraph of G . , we view S S F as a bipartite y u v E u v LP for MaxCut u v e The cost function is u v . for every edge e introduce a variable y u v 3/11 ▶ introduce a vairable x u ∈ { 0 , 1 } for every u ∈ V .
E y u v . How to write linear constraints for a cut? LP for MaxCut The cost function is e u v idea: Let F u v E y u v , we view S S F as a bipartite subgraph of G . Advanced Algorithms (III) 3/11 ▶ introduce a vairable x u ∈ { 0 , 1 } for every u ∈ V . ▶ introduce a variable y u , v ∈ { 0 , 1 } for every edge e = { u , v } .
LP for MaxCut How to write linear constraints for a cut? idea: Let F u v E y u v , we view S S F as a bipartite subgraph of G . Advanced Algorithms (III) 3/11 ▶ introduce a vairable x u ∈ { 0 , 1 } for every u ∈ V . ▶ introduce a variable y u , v ∈ { 0 , 1 } for every edge e = { u , v } . The cost function is ∑ e = { u , v }∈ E y u , v .
idea: Let F LP for MaxCut u v E y u v , we view S S F as a bipartite subgraph of G . Advanced Algorithms (III) 3/11 ▶ introduce a vairable x u ∈ { 0 , 1 } for every u ∈ V . ▶ introduce a variable y u , v ∈ { 0 , 1 } for every edge e = { u , v } . The cost function is ∑ e = { u , v }∈ E y u , v . How to write linear constraints for a cut?
subgraph of G . LP for MaxCut Advanced Algorithms (III) 3/11 ▶ introduce a vairable x u ∈ { 0 , 1 } for every u ∈ V . ▶ introduce a variable y u , v ∈ { 0 , 1 } for every edge e = { u , v } . The cost function is ∑ e = { u , v }∈ E y u , v . How to write linear constraints for a cut? , we view ( S , ¯ { } idea: Let F = { u , v } ∈ E : y u , v = 1 S , F ) as a bipartite
4/11 V Advanced Algorithms (III) V u v y v u y u v V u v w y w v y u w y u v u v w y w v y u w y u v s.t. y u v E u v max introduce constraints to rule out odd cycles. introduce constaints for being bipartite graph metric. ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2
4/11 V Advanced Algorithms (III) V u v y v u y u v V u v w y w v y u w y u v u v w y w v y u w y u v s.t. y u v E u v max introduce constraints to rule out odd cycles. ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric.
4/11 V Advanced Algorithms (III) V u v y v u y u v V u v w y w v y u w y u v u v w y w v y u w y u v s.t. y u v E u v max ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles.
4/11 V Advanced Algorithms (III) V u v y v u y u v V u v w y w v y u w y u v u v w y w v y u w y u v s.t. max ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E
4/11 y u w Advanced Algorithms (III) V u v max y v u y u v V s.t. u v w y w v y u v ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V
4/11 y u v Advanced Algorithms (III) V u v max y v u y u v V s.t. u v w y w v y u w ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V ∑ y u , v ≤ | C | − 1 , ∀ odd cycle C e = { u , v }∈ C
4/11 s.t. Advanced Algorithms (III) V u v max y v u y u v ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V y u , v + y u , w + y w , v ≤ 2 , ∀ u , v , w , ∈ V
4/11 max Advanced Algorithms (III) s.t. ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V y u , v + y u , w + y w , v ≤ 2 , ∀ u , v , w , ∈ V y u , v = y v , u , ∀ u , v ∈ V
4/11 max Advanced Algorithms (III) s.t. ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V y u , v + y u , w + y w , v ≤ 2 , ∀ u , v , w , ∈ V y u , v = y v , u , ∀ u , v ∈ V y u , v ∈ { 0 , 1 } , ∀ u , v ∈ V
4/11 max Advanced Algorithms (III) s.t. ▶ introduce y u , v and y v , u for every { u , v } ∈ ( V ) . 2 ▶ introduce constaints for being bipartite graph metric. ▶ introduce constraints to rule out odd cycles. ∑ y u , v { u , v }∈ E y u , v ≤ y u , w + y w , v , ∀ u , v , w ∈ V y u , v + y u , w + y w , v ≤ 2 , ∀ u , v , w , ∈ V y u , v = y v , u , ∀ u , v ∈ V y u , v ∈ [0 , 1] , ∀ u , v ∈ V
Interality Gap Theorem For every , there exists a graph G such that LP G MaxCut G Random graph n p for proper p … Advanced Algorithms (III) 5/11
Interality Gap Theorem Random graph n p for proper p … Advanced Algorithms (III) 5/11 For every ε > 0 , there exists a graph G such that LP ( G ) MaxCut ( G ) ≥ 2 − ε
Interality Gap Theorem Advanced Algorithms (III) 5/11 For every ε > 0 , there exists a graph G such that LP ( G ) MaxCut ( G ) ≥ 2 − ε Random graph G ( n , p ) for proper p …
a ij b ij LP in Matrix Form x Advanced Algorithms (III) i j n B A Hadamard Product y x y x y s.t. max y x max y x y x y x s.t. y x 6/11
a ij b ij LP in Matrix Form y Advanced Algorithms (III) i j n B A Hadamard Product y x y x x max s.t. y x max s.t. 6/11 2 x − 3 y x + y ≤ 2 3 x − y ≤ 1 x ≥ 0 y ≥ 0
a ij b ij LP in Matrix Form s.t. Advanced Algorithms (III) i j n B A Hadamard Product y y y max 6/11 max s.t. [ 2 ] [ x ] 0 0 • 0 − 3 0 − y 2 x − 3 y [ 1 ] [ x ] 0 0 x + y ≤ 2 • ≤ 2 0 1 0 3 x − y ≤ 1 [ 3 ] [ x ] 0 0 • ≤ 1 x ≥ 0 0 − 1 0 y ≥ 0 [ x ] 0 ⪰ 0 0
LP in Matrix Form s.t. Advanced Algorithms (III) Hadamard Product y y y max 6/11 s.t. max [ 2 ] [ x ] 0 0 • 0 − 3 0 − y 2 x − 3 y [ 1 ] [ x ] 0 0 x + y ≤ 2 • ≤ 2 0 1 0 3 x − y ≤ 1 [ 3 ] [ x ] 0 0 • ≤ 1 x ≥ 0 0 − 1 0 y ≥ 0 [ x ] 0 ⪰ 0 0 ∑ A • B ≜ a ij · b ij . 1 ≤ i , j ≤ n
i x Positive Semi-definite Matrix n Advanced Algorithms (III) X m i b i X A i s.t. X C max PSD Programming j Definition x j m i b i a T s.t. c T x max Linear Programming every vector x . We write it as 7/11 An n × n symmetric matrix A is positive semi-definite if x T Ax ≥ 0 for A ⪰ 0 .
Positive Semi-definite Matrix PSD Programming Advanced Algorithms (III) X m i b i X A i s.t. X C max 7/11 Definition a T s.t. c T x max Linear Programming every vector x . We write it as An n × n symmetric matrix A is positive semi-definite if x T Ax ≥ 0 for A ⪰ 0 . ∀ i ∈ [ m ] i x ≤ b i , x j ≥ 0 , ∀ j ∈ [ n ]
Recommend
More recommend