A Practical Analysis of Kernelization Techniques for the Maximum Cut Problem NII Shonan Meeting | March 5, 2019 Damir Ferizovic, Sebastian Lamm , Matthias Mnich, Christian Schulz, Darren Strash DEPARTMENT OF INFORMATICS: INSTITUTE OF THEORETICAL INFORMATICS www.kit.edu KIT – The Research University in the Helmholtz Association
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | v 3 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 2 , v 3 , v 4 , v 6 } v 3 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 2 , v 3 , v 4 , v 6 } v 3 → | E ( S , V \ S ) | = 7 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 2 , v 3 , v 4 , v 6 } v 3 → | E ( S , V \ S ) | = 7 → maximum? v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 3 , v 4 , v 6 , v 7 } v 3 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 3 , v 4 , v 6 , v 7 } v 3 → | E ( S , V \ S ) | = 8 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Definition and Example Given G = ( V , E ) , find S ⊆ V such that | E ( S , V \ S ) | is maximum Notation: mc ( G ) := max S ⊆ V | E ( S , V \ S ) | S = { v 3 , v 4 , v 6 , v 7 } v 3 → | E ( S , V \ S ) | = 8 → maximum? v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 2/20
Max-Cut: Importance of Studying it Member of Karp’s 21 NP-complete problems Used in... Circuit design Statistical physics Social networks Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 3/20
Kernelization: Definition and Example Kernelization: Compress graph while preserving optimality G 0 = G : v 3 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 4/20
Kernelization: Definition and Example Kernelization: Compress graph while preserving optimality G 0 = G : v 3 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 4/20
Kernelization: Definition and Example Kernelization: Compress graph while preserving optimality G 1 : v 3 mc ( G 0 ) = mc ( G 1 ) + 2 v 1 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 4/20
Kernelization: Definition and Example Kernelization: Compress graph while preserving optimality G 1 : v 3 mc ( G 0 ) = mc ( G 1 ) + 2 mc ( G 1 ) = 6 v 1 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 4/20
Kernelization: Definition and Example Kernelization: Compress graph while preserving optimality G 0 = G : v 3 mc ( G 0 ) = 6 + 2 = 8 v 1 v 4 v 5 v 2 v 6 v 7 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 4/20
Max-Cut: Current Research on Kernelization Previous work mostly of theoretical nature Analyze problem k + mc - lowerbound ( G ) Different reformulations ( Etscheid and Mnich 2018 , Madathil, Saurabh, and Zehavi 2018, Prieto 2005) Research on practicality missing Present for other problems INDEPENDENT SET , V ERTEX C OVER (Hespe, Schulz, and Strash 2018, Akiba and Iwata 2016) Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 5/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 K 3 K 4 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 K 3 K 4 N G ( x ) ∩ S = N G ( X ) ∩ S 1 | X | > | K | + | N G ( X ) ∩ S | 2 ≥ 1 2 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 K 3 K 4 N G ( x ) ∩ S = N G ( X ) ∩ S � 1 | X | > | K | + | N G ( X ) ∩ S | ≥ 1 ✗ 2 2 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 K 3 K 4 N G ( x ) ∩ S = N G ( X ) ∩ S � 1 | X | > | K | + | N G ( X ) ∩ S | ≥ 1 � 2 2 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Max-Cut: Reduction Rule 8 in Etscheid and Mnich 2018 K 3 K 4 N G ( x ) ∩ S = N G ( X ) ∩ S 1 | X | > | K | + | N G ( X ) ∩ S | 2 ≥ 1 2 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 6/20
Performance of Work from Etscheid and Mnich 2018 Kernelization mostly driven by rule 8 Weak-points in practice Reliance on clique-forest Parameter k large in practice Kernel size O ( k ) too large O ( k · | E ( G ) | ) time too slow Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 7/20
Overview of Our Contributions Implemented and evaluated work of Etscheid and Mnich 2018 Generalized existing reduction rules Rules not dependent on a subgraph anymore Developed new reduction rules Simplistic but significant improvement in practice Identified inclusions Efficient implementation Timestamping system Benchmark over a variety of instances Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 8/20
Overview of Our Contributions Five new unweighted reduction rules Rule to compress induced 3-paths Two rules reducing cliques (R8, S2) Two antagonizing rules – merge and divide of cliques Briefly investigated: Weighted path compression Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 9/20
External/Internal Vertices v 6 ⇒ ∈ C ext ( G [ S ]) ⇐ v 7 ⇒ ∈ C int ( G [ S ]) ⇐ S v 1 v 4 v 5 v 2 v 3 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 10/20
Rule Generalization: R8 – “Sharing Adjacencies” K 3 K 4 K 1 S K 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 11/20
Rule Generalization: R8 – “Sharing Adjacencies” S Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 11/20
Rule Generalization: R8 – “Sharing Adjacencies” N G ( X ) ∪ X = N G ( x ) ∪ { x } 1 2 | X | > max {| N G ( X ) | , 1 } Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 11/20
Rule Generalization: R8 – “Sharing Adjacencies” N G ( X ) ∪ X = N G ( x ) ∪ { x } � 1 | X | > max {| N G ( X ) | , 1 } � v 4 v 3 2 v 1 v 2 v 5 Motivation Analysis of Existing Work Our Contribution Results Conclusion Sebastian Lamm – Kernelization and Max-Cut March 5, 2019 11/20
Recommend
More recommend