Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics Bounded Skewness / Crossing Number. sk MaximumFlow in time-complexity of planar graphs [Hochstein&Weihe 2007]
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics Bounded Skewness / Crossing Number. sk MaximumFlow in time-complexity of planar graphs [Hochstein&Weihe 2007] sk constant-factor approximation of crossing number [Ch.&Hlinˇ ený 2016]
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics Bounded Skewness / Crossing Number. sk MaximumFlow in time-complexity of planar graphs [Hochstein&Weihe 2007] sk constant-factor approximation of crossing number [Ch.&Hlinˇ ený 2016] cr FPT-parameter for MaxCut [Ch. et al. 2020]
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics Bounded Skewness / Crossing Number. ◮ finer-grained parameterization sk MaximumFlow in time-complexity of planar graphs [Hochstein&Weihe 2007] may be more practical sk constant-factor approximation of crossing number [Ch.&Hlinˇ ený 2016] cr FPT-parameter for MaxCut [Ch. et al. 2020]
Non-Planarity Measures 7 Non-Planarity Measures Exploiting Low Non-Planarity { G : γ ( G ) ≤ k } ⊃ { G : sk ( G ) ≤ k } ⊃ { G : cr ( G ) ≤ k } Bounded Genus. ◮ maaaaaany publications for many ◮ rich graph classes problems! ◮ strong theory, but harsh ◮ P vs. NP, FPT, (better) approximable,... dependency on γ ◮ computing γ very hard in practice, no heuristics Bounded Skewness / Crossing Number. ◮ finer-grained parameterization sk MaximumFlow in time-complexity of planar graphs [Hochstein&Weihe 2007] may be more practical ◮ more tractable in practice, sk constant-factor approximation of crossing number [Ch.&Hlinˇ ený 2016] reasonable exact algorithms & strong heuristics cr FPT-parameter for MaxCut [Ch. et al. 2020]
Non-Planarity Measures 8 Non-Planarity Measures How to exactly compute cr ( G ) , sk ( G ) , and γ ( G ) ?
ILPs and Roadmap 9 Non-Planarity Measures Integer Linear Programming Formulate the problem as an ILP c ⊤ x max (1) s . t . Ax ≤ b (2) x ≥ 0 (3) x ∈ Z n (4)
ILPs and Roadmap 9 Non-Planarity Measures Integer Linear Programming Formulate the problem as an ILP c ⊤ x max (1) s . t . Ax ≤ b (2) x ≥ 0 (3) x ∈ Z n (4) ◮ relaxation can be computed in polynomial time ◮ fast solvers using branch-and-cut
ILPs and Roadmap 9 Non-Planarity Measures Integer Linear Programming Formulate the problem as an ILP c ⊤ x max (1) s . t . Ax ≤ b (2) x ≥ 0 (3) x ∈ Z n (4) ◮ relaxation can be computed in polynomial time ◮ fast solvers using branch-and-cut Only strong formulations yield effective algorithms!
ILPs and Roadmap 9 Non-Planarity Measures Integer Linear Programming Formulate the problem as an ILP c ⊤ x max (1) s . t . Ax ≤ b (2) x ≥ 0 (3) x ∈ Z n (4) ◮ relaxation can be computed in polynomial time ◮ fast solvers using branch-and-cut Only strong formulations yield effective algorithms! Roadmap (of this talk) Skewness: Original ILP → Improvement by considering Short Cycles Original ILP → Improvement by considering Short Cycles Genus:
Original ILP 10 Skewness (= Maximum Planar Subgraph, MPS) Skewness sk ( G ) = Maximum Planar Subgraph (MPS)
Original ILP 11 Skewness (= Maximum Planar Subgraph, MPS) Kuratowski-based Formulation Theorem (Kuratowski, 1930) G is non-planar ⇐ ⇒ G contains a K 5 - or K 3 , 3 -subdivision.
Original ILP 11 Skewness (= Maximum Planar Subgraph, MPS) Kuratowski-based Formulation Theorem (Kuratowski, 1930) G is non-planar ⇐ ⇒ G contains a K 5 - or K 3 , 3 -subdivision. Kuratowski-based ILP [Mutzel, 1994] exponentially many � min s e e ∈ E � s e ≥ 1 ∀ Kuratowski subdivisions K ⊆ E s.t. e ∈ K s e ∈ { 0 , 1 } ∀ e ∈ E Variable is 1 iff edge e is deleted
Original ILP 11 Skewness (= Maximum Planar Subgraph, MPS) Kuratowski-based Formulation Theorem (Kuratowski, 1930) G is non-planar ⇐ ⇒ G contains a K 5 - or K 3 , 3 -subdivision. Kuratowski-based ILP [Mutzel, 1994] exponentially many � min s e e ∈ E � s e ≥ 1 ∀ Kuratowski subdivisions K ⊆ E s.t. e ∈ K s e ∈ { 0 , 1 } ∀ e ∈ E Variable is 1 iff edge e is deleted Solve via branch-and-cut with heuristic separation.
Original ILP 12 Skewness (= Maximum Planar Subgraph, MPS) Generalized Euler Constraints
Original ILP 12 Skewness (= Maximum Planar Subgraph, MPS) Generalized Euler Constraints ◮ Kuratowski constraints are weak on dense graphs
Original ILP 12 Skewness (= Maximum Planar Subgraph, MPS) Generalized Euler Constraints ◮ Kuratowski constraints are weak on dense graphs
Original ILP 12 Skewness (= Maximum Planar Subgraph, MPS) Generalized Euler Constraints ◮ Kuratowski constraints are weak on dense graphs ◮ On complete (complete bipartite) graphs, optimality follows directly from Euler’s formula ⇒ no Kuratowski constraints needed
Original ILP 12 Skewness (= Maximum Planar Subgraph, MPS) Generalized Euler Constraints ◮ Kuratowski constraints are weak on dense graphs ◮ On complete (complete bipartite) graphs, optimality follows directly from Euler’s formula ⇒ no Kuratowski constraints needed ◮ Real-world graphs typically neither have large girth nor is their MPS tri- or quadrangulated...
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations “real-world” graph
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph ◮ few large faces in MPS (or few short cycles in input)
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph ◮ few large faces in MPS (or few short cycles in input)
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph ◮ few large faces in MPS (or few short cycles in input) ◮ MPS is typically biconnected
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph grid-like graph ◮ few large faces in MPS (or few short cycles in input) ◮ MPS is typically biconnected
Towards the Cycle ILP 13 Skewness (= Maximum Planar Subgraph, MPS) Key Observations MPS of “real-world” graph triconnected artificial graph with no biconnected MPS ◮ few large faces in MPS (or few short cycles in input) ◮ MPS is typically biconnected
Improvement via Cycle ILP 14 Skewness (= Maximum Planar Subgraph, MPS) Idea for Cycle Model Assume: MPS is biconnected. new variable is 1 iff α is a face in the solution C G := set of cycles in input G . c α ∈ { 0 , 1 } ∀ α ∈ C G
Improvement via Cycle ILP 14 Skewness (= Maximum Planar Subgraph, MPS) Idea for Cycle Model Assume: MPS is biconnected. new variable is 1 iff α is a face in the solution C G := set of cycles in input G . c α ∈ { 0 , 1 } ∀ α ∈ C G � c α = 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α
Improvement via Cycle ILP 14 Skewness (= Maximum Planar Subgraph, MPS) Idea for Cycle Model Assume: MPS is biconnected. new variable is 1 iff α is a face in the solution C G := set of cycles in input G . c α ∈ { 0 , 1 } ∀ α ∈ C G � c α = 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E
Improvement via Cycle ILP 14 Skewness (= Maximum Planar Subgraph, MPS) Idea for Cycle Model Assume: MPS is biconnected. new variable is 1 iff α is a face in the solution C G := set of cycles in input G . c α ∈ { 0 , 1 } ∀ α ∈ C G � c α = 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E Problems: ◮ We cannot enumerate all cycles in practice ◮ MPS is not biconnected
Improvement via Cycle ILP 15 Skewness (= Maximum Planar Subgraph, MPS) Obstacle: Non-Biconnectedness Lemma (MPS will not be outerplanar.) To each a face-walk β we can associate a sub-cycle α ⊆ β such that each cycle is used at most once. 1 : 1 ◮ faces in the solution ← → cycles ◮ each edge is incident to at most one such cycle
Improvement via Cycle ILP 15 Skewness (= Maximum Planar Subgraph, MPS) Obstacle: Non-Biconnectedness Lemma (MPS will not be outerplanar.) To each a face-walk β we can associate a sub-cycle α ⊆ β such that each cycle is used at most once. 1 : 1 ◮ faces in the solution ← → cycles ◮ each edge is incident to at most one such cycle
Improvement via Cycle ILP 15 Skewness (= Maximum Planar Subgraph, MPS) Obstacle: Non-Biconnectedness Lemma (MPS will not be outerplanar.) To each a face-walk β we can associate a sub-cycle α ⊆ β such that each cycle is used at most once. 1 : 1 ◮ faces in the solution ← → cycles ◮ each edge is incident to at most one such cycle
Improvement via Cycle ILP 15 Skewness (= Maximum Planar Subgraph, MPS) Obstacle: Non-Biconnectedness Lemma (MPS will not be outerplanar.) To each a face-walk β we can associate a sub-cycle α ⊆ β such that each cycle is used at most once. 1 : 1 ◮ faces in the solution ← → cycles ◮ each edge is incident to at most one such cycle
Improvement via Cycle ILP 16 Skewness (= Maximum Planar Subgraph, MPS) Cycle Model c α ∈ { 0 , 1 } ∀ α ∈ C G � c α = 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E
Improvement via Cycle ILP 16 Skewness (= Maximum Planar Subgraph, MPS) Cycle Model c α ∈ { 0 , 1 } ∀ α ∈ C G � c α ≤ 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E
Improvement via Cycle ILP 16 Skewness (= Maximum Planar Subgraph, MPS) Cycle Model c α ∈ { 0 , 1 } ∀ α ∈ C G � c α ≤ 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E
Improvement via Cycle ILP 16 Skewness (= Maximum Planar Subgraph, MPS) Cycle Model Pick D ∈ N such that number of variables is “reasonable”. c α ∈ { 0 , 1 } ∀ α ∈ C G , | α | ≤ D � c α ≤ 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α, | α |≤ D � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E
Improvement via Cycle ILP 16 Skewness (= Maximum Planar Subgraph, MPS) Cycle Model Pick D ∈ N such that number of variables is “reasonable”. c α ∈ { 0 , 1 } ∀ α ∈ C G , | α | ≤ D � c α ≤ 2 ( 1 − s e ) ∀ e ∈ E α ∈C G : e ∈ α, | α |≤ D � � 3 | V ( G ) | − 6 − ( | α | − 3 ) c α = ( 1 − s e ) α ∈C G e ∈ E � � � ( D + 1 )( | V ( G ) | − 2 ) + ( D + 1 − d ) c α ≥ ( D − 1 ) ( 1 − s e ) e ∈ E d = 3 , 4 ,..., D α ∈C = d G
Improvement via Cycle ILP 17 Skewness (= Maximum Planar Subgraph, MPS) D-Hierarchy
Improvement via Cycle ILP 17 Skewness (= Maximum Planar Subgraph, MPS) D-Hierarchy Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).
Improvement via Cycle ILP 17 Skewness (= Maximum Planar Subgraph, MPS) D-Hierarchy Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).
Improvement via Cycle ILP 17 Skewness (= Maximum Planar Subgraph, MPS) D-Hierarchy Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well). number of variables gap between LP and ILP max. cycle length D
Improvement via Cycle ILP 17 Skewness (= Maximum Planar Subgraph, MPS) D-Hierarchy Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well). number of variables gap between LP and ILP sweet spot? max. cycle length D
Improvement via Cycle ILP 18 Skewness (= Maximum Planar Subgraph, MPS) Supplemental Constraint Zoo Once you have cycle variables, you can do a lot more with them! Goal: Tightly link edge- and cycle-variables Jean-Jacques Grandville (C0)
Improvement via Cycle ILP 18 Skewness (= Maximum Planar Subgraph, MPS) Supplemental Constraint Zoo Once you have cycle variables, you can do a lot more with them! Goal: Tightly link edge- and cycle-variables For example: ◮ pseudo-tree extension ◮ cycle-edge cons. ◮ Kuratowski-cycle cons. ◮ k -cycles-path cons. ◮ cycle-clique cons. ◮ cycle-two-paths cons. Jean-Jacques Grandville (C0)
Experiments 19 Skewness (= Maximum Planar Subgraph, MPS) Experimental Setting Framework ◮ C++, GCC 6.3 ◮ SCIP 6.0 [scip.zib.de] ◮ OGDF 2018.03 [www.ogdf.net] ◮ CPLEX 12.8 Computations ◮ Xeon Gold 6134 ◮ limit: 20 minutes, 8 GB Instances ◮ Rome [Di Battista et al., 1995] ◮ North [North, 1995] ◮ Expander [Steger & Wormald, 1997] ◮ SteinLib [Koch et al., 2000]
Experiments 20 Skewness (= Maximum Planar Subgraph, MPS) Experimental Evaluation 1500 100 % success rate instances 1000 50 % no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] 500 cycles + zoo [ — " — ] 0 % 0 2 4 6 8 10 12 14 16 18 ≥ 20 skewness (Rome graphs)
Experiments 20 Skewness (= Maximum Planar Subgraph, MPS) Experimental Evaluation 1500 100 % success rate instances 1000 50 % no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] 500 cycles + zoo [ — " — ] 0 % 0 2 4 6 8 10 12 14 16 18 ≥ 20 skewness (Rome graphs) Without vs. with cycles (+zoo) Rome North Expander SteinLib % solved of previously unsolved “100 % ” 75 % 30 % 30 %
Experiments 20 Skewness (= Maximum Planar Subgraph, MPS) Experimental Evaluation 1500 100 % success rate instances 1000 50 % no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] 500 cycles + zoo [ — " — ] 0 % 0 2 4 6 8 10 12 14 16 18 ≥ 20 skewness (Rome graphs) Without vs. with cycles (+zoo) Rome North Expander SteinLib % solved of previously unsolved “100 % ” 75 % 30 % 30 % speed-up (avg) on commonly solved 66x 34x 20x 12x
Experiments 20 Skewness (= Maximum Planar Subgraph, MPS) Experimental Evaluation 1500 100 % success rate instances 1000 50 % no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] 500 cycles + zoo [ — " — ] 0 % 0 2 4 6 8 10 12 14 16 18 ≥ 20 skewness (Rome graphs) Without vs. with cycles (+zoo) Rome North Expander SteinLib % solved of previously unsolved “100 % ” 75 % 30 % 30 % speed-up (avg) on commonly solved 66x 34x 20x 12x D (raise until ≥ 1000 vars) 11 8 6 7
21 Genus Genus γ ( G )
21 Genus Genus γ ( G ) computing it is quite hard practice... ◮ ∃ linear time FPT-algorithm for bounded genus g [Mohar 1999] , but doubly exponential in g and no known implementation even for toroidal case ◮ no (reasonable) heuristics
Original ILP 22 Genus Faces in Embeddings of Higher Genus Theorem (Euler’s formula) ... is sensitive to the genus of the surface on with the drawing is: n − m + f = 2 − 2 γ .
Original ILP 22 Genus Faces in Embeddings of Higher Genus Theorem (Euler’s formula) ... is sensitive to the genus of the surface on with the drawing is: n − m + f = 2 − 2 γ . Face-Tracing-based ILP [Beyer et al. 2016] ◮ Minimize γ by finding an embedding ( = rotation system) that maximizes f . ◮ Count faces via face tracing .
Original ILP 23 Genus Crossing-free Non-planar Graphs
Original ILP 23 Genus Crossing-free Non-planar Graphs
Original ILP 23 Genus Crossing-free Non-planar Graphs
Original ILP 24 Genus Embeddings and Face Tracing
Original ILP 24 Genus Embeddings and Face Tracing
Original ILP 24 Genus Embeddings and Face Tracing
Original ILP 24 Genus Embeddings and Face Tracing 1 2 3 4 5
Original ILP 24 Genus Embeddings and Face Tracing 1 2 3 4 3 2 1 5
Original ILP → Improvement via Cycle ILP 25 Genus Face-Tracing-based Formulation upper bound on number of faces: ¯ f := min { m − n , 2 m / 3 }
Original ILP → Improvement via Cycle ILP 25 Genus Face-Tracing-based Formulation upper bound on number of faces: ¯ f := min { m − n , 2 m / 3 } max � f ] x i i ∈ [¯ ∀ i ∈ [¯ Use the i -th face? x i ∈ { 0 , 1 } f ] ∀ i ∈ [¯ x a Arc a on i -th face? i ∈ { 0 , 1 } f ] , a ∈ A
Original ILP → Improvement via Cycle ILP 25 Genus Face-Tracing-based Formulation upper bound on number of faces: ¯ f := min { m − n , 2 m / 3 } max � f ] x i i ∈ [¯ a ∈ A x a 3 x i ≤ � s.t. i ∀ i ∈ [¯ Use the i -th face? x i ∈ { 0 , 1 } f ] ∀ i ∈ [¯ x a Arc a on i -th face? i ∈ { 0 , 1 } f ] , a ∈ A
Recommend
More recommend