Non-Planarity Measures and Small Cycles EuroCG 2020 PhD School - - PowerPoint PPT Presentation

non planarity measures and small cycles
SMART_READER_LITE
LIVE PREVIEW

Non-Planarity Measures and Small Cycles EuroCG 2020 PhD School - - PowerPoint PPT Presentation

Non-Planarity Measures and Small Cycles EuroCG 2020 PhD School Markus Chimani Theoretical Computer Science, Osnabrck University March 19th, 2020 Planarity 2 Non-Planarity Measures Planarity Planarity 2 Non-Planarity Measures


slide-1
SLIDE 1

Non-Planarity Measures and Small Cycles

EuroCG 2020 – PhD School Markus Chimani

Theoretical Computer Science, Osnabrück University March 19th, 2020

slide-2
SLIDE 2

Non-Planarity Measures Planarity

2

Planarity

slide-3
SLIDE 3

Non-Planarity Measures Planarity

2

Planarity

Planarity helps a lot algorithmically!

slide-4
SLIDE 4

Non-Planarity Measures Planarity

2

Planarity

slide-5
SLIDE 5

Non-Planarity Measures Planarity

2

Planarity

slide-6
SLIDE 6

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2

slide-7
SLIDE 7

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2 Consider the number of face-edge incidences:

≥ 3 edges per face ≤ 2 faces per edge

slide-8
SLIDE 8

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2 Consider the number of face-edge incidences:

≥ 3 edges per face ≤ 2 faces per edge = ⇒ 3f ≥ 2m →

n − m + (2/3)m ≥ 2

m ≤ 3n − 6

slide-9
SLIDE 9

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2 Consider the number of face-edge incidences:

≥ 3 edges per face ≤ 2 faces per edge = ⇒ 3f ≥ 2m →

n − m + (2/3)m ≥ 2

m ≤ 3n − 6 Definition (Girth) Girth g(G) is the length of the shortest cycle in G.

slide-10
SLIDE 10

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2 Consider the number of face-edge incidences:

≥ 3 edges per face ≤ 2 faces per edge = ⇒ 3f ≥ 2m →

n − m + (2/3)m ≥ 2

m ≤ 3n − 6 Definition (Girth) Girth g(G) is the length of the shortest cycle in G. Bipartite graphs (girth ≥ 4):

≥ 4 edges per face = ⇒ m ≤ 2n − 4

slide-11
SLIDE 11

Non-Planarity Measures Planarity

3

Euler

Theorem (Euler’s formula) Given a planarly drawn graph with n vertices, m edges, and f faces, then: n − m + f = 2 Consider the number of face-edge incidences:

≥ 3 edges per face ≤ 2 faces per edge = ⇒ 3f ≥ 2m →

n − m + (2/3)m ≥ 2

m ≤ 3n − 6 Definition (Girth) Girth g(G) is the length of the shortest cycle in G. Bipartite graphs (girth ≥ 4):

≥ 4 edges per face = ⇒ m ≤ 2n − 4

Girth g:

≥ g edges per face = ⇒ m ≤

g g−2(n − 2)

high girth → few edges

slide-12
SLIDE 12

Non-Planarity Measures Planarity

4

Kuratowski

Theorem (Kuratowski, 1930) Graph G is non-planar

⇐ ⇒

G contains a K5- or K3,3-subdivision as a subgraph.

slide-13
SLIDE 13

Non-Planarity Measures Planarity

4

Kuratowski

Theorem (Kuratowski, 1930) Graph G is non-planar

⇐ ⇒

G contains a K5- or K3,3-subdivision as a subgraph. K5 K3,3

slide-14
SLIDE 14

Non-Planarity Measures Planarity

4

Kuratowski

Theorem (Kuratowski, 1930) Graph G is non-planar

⇐ ⇒

G contains a K5- or K3,3-subdivision as a subgraph. K5 K3,3-subdivision

slide-15
SLIDE 15

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

slide-16
SLIDE 16

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane

slide-17
SLIDE 17

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph

slide-18
SLIDE 18

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph

slide-19
SLIDE 19

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph

slide-20
SLIDE 20

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph ◮ Thickness: min. k, s.t. ∃ partition of edges into k planar subgraphs

slide-21
SLIDE 21

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph ◮ Thickness: min. k, s.t. ∃ partition of edges into k planar subgraphs ◮ Coarseness: max. number of disjoint Kuratowski-subdivisions

slide-22
SLIDE 22

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph ◮ Thickness: min. k, s.t. ∃ partition of edges into k planar subgraphs ◮ Coarseness: max. number of disjoint Kuratowski-subdivisions ◮ Genus: min. number of handles to embed on an (orientable) surface

slide-23
SLIDE 23

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane ◮ Skewness: min. number of edge deletions to obtain planar graph ◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph ◮ Thickness: min. k, s.t. ∃ partition of edges into k planar subgraphs ◮ Coarseness: max. number of disjoint Kuratowski-subdivisions ◮ Genus: min. number of handles to embed on an (orientable) surface

all of these measures are NP-hard to compute...

slide-24
SLIDE 24

Non-Planarity Measures Non-Planarity Measures

5

Non-Planarity Measures

Can we gain an algorithmic advantage is graph is close to planar? What does close mean?

◮ Crossing Number: min. number of crossings in the plane

cr(G)

◮ Skewness: min. number of edge deletions to obtain planar graph

sk(G)

◮ Vertex Deletion Number: min. number of vertex deletions to obtain planar graph ◮ Vertex Splitting Number: min. number of vertex splits to obtain planar graph ◮ Thickness: min. k, s.t. ∃ partition of edges into k planar subgraphs ◮ Coarseness: max. number of disjoint Kuratowski-subdivisions ◮ Genus: min. number of handles to embed on an (orientable) surface γ(G)

all of these measures are NP-hard to compute...

slide-25
SLIDE 25

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

slide-26
SLIDE 26

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

◮ remove arbitrary edge of each crossing

slide-27
SLIDE 27

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

◮ remove arbitrary edge of each crossing ◮ route each removed edge over new handle

slide-28
SLIDE 28

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

◮ remove arbitrary edge of each crossing ◮ route each removed edge over new handle

slide-29
SLIDE 29

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

◮ remove arbitrary edge of each crossing ◮ route each removed edge over new handle

slide-30
SLIDE 30

Non-Planarity Measures Non-Planarity Measures

6

Relating Measures of Non-Planarity

Lemma cr(G) ≥ sk(G) ≥ γ(G)

◮ remove arbitrary edge of each crossing ◮ route each removed edge over new handle

... and the gaps can be large!

slide-31
SLIDE 31

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

slide-32
SLIDE 32

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,...

slide-33
SLIDE 33

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

slide-34
SLIDE 34

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics

slide-35
SLIDE 35

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics Bounded Skewness / Crossing Number.

sk MaximumFlow in time-complexity

  • f planar graphs [Hochstein&Weihe 2007]
slide-36
SLIDE 36

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics Bounded Skewness / Crossing Number.

sk MaximumFlow in time-complexity

  • f planar graphs [Hochstein&Weihe 2007]

sk constant-factor approximation of

crossing number [Ch.&Hlinˇ

ený 2016]

slide-37
SLIDE 37

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics Bounded Skewness / Crossing Number.

sk MaximumFlow in time-complexity

  • f 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]

slide-38
SLIDE 38

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics Bounded Skewness / Crossing Number.

sk MaximumFlow in time-complexity

  • f 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]

◮ finer-grained parameterization

may be more practical

slide-39
SLIDE 39

Non-Planarity Measures Non-Planarity Measures

7

Exploiting Low Non-Planarity

{G : γ(G) ≤ k} ⊃ {G : sk(G) ≤ k} ⊃ {G : cr(G) ≤ k}

Bounded Genus.

◮ maaaaaany publications for many

problems!

◮ P vs. NP, FPT, (better) approximable,... ◮ rich graph classes ◮ strong theory, but harsh

dependency on γ

◮ computing γ very hard in practice,

no heuristics Bounded Skewness / Crossing Number.

sk MaximumFlow in time-complexity

  • f 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]

◮ finer-grained parameterization

may be more practical

◮ more tractable in practice,

reasonable exact algorithms & strong heuristics

slide-40
SLIDE 40

Non-Planarity Measures Non-Planarity Measures

8 How to exactly compute cr(G), sk(G), and γ(G) ?

slide-41
SLIDE 41

Non-Planarity Measures ILPs and Roadmap

9

Integer Linear Programming

Formulate the problem as an ILP

max

c⊤x (1) s.t. Ax ≤ b (2) x ≥ 0 (3) x ∈ Zn (4)

slide-42
SLIDE 42

Non-Planarity Measures ILPs and Roadmap

9

Integer Linear Programming

Formulate the problem as an ILP

max

c⊤x (1) s.t. Ax ≤ b (2) x ≥ 0 (3) x ∈ Zn (4)

◮ relaxation can be computed in polynomial time ◮ fast solvers using branch-and-cut

slide-43
SLIDE 43

Non-Planarity Measures ILPs and Roadmap

9

Integer Linear Programming

Formulate the problem as an ILP

max

c⊤x (1) s.t. Ax ≤ b (2) x ≥ 0 (3) x ∈ Zn (4)

◮ relaxation can be computed in polynomial time ◮ fast solvers using branch-and-cut

Only strong formulations yield effective algorithms!

slide-44
SLIDE 44

Non-Planarity Measures ILPs and Roadmap

9

Integer Linear Programming

Formulate the problem as an ILP

max

c⊤x (1) s.t. Ax ≤ b (2) x ≥ 0 (3) x ∈ Zn (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 Genus: Original ILP → Improvement by considering Short Cycles

slide-45
SLIDE 45

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

10

Skewness sk(G)

= Maximum Planar Subgraph (MPS)

slide-46
SLIDE 46

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

11

Kuratowski-based Formulation

Theorem (Kuratowski, 1930) G is non-planar ⇐

⇒ G contains a K5- or K3,3-subdivision.

slide-47
SLIDE 47

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

11

Kuratowski-based Formulation

Theorem (Kuratowski, 1930) G is non-planar ⇐

⇒ G contains a K5- or K3,3-subdivision.

Kuratowski-based ILP [Mutzel, 1994]

min

  • e∈E

se s.t.

  • e∈K

se ≥ 1

∀ Kuratowski subdivisions K ⊆ E

se ∈ {0, 1}

∀e ∈ E

exponentially many Variable is 1 iff edge e is deleted

slide-48
SLIDE 48

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

11

Kuratowski-based Formulation

Theorem (Kuratowski, 1930) G is non-planar ⇐

⇒ G contains a K5- or K3,3-subdivision.

Kuratowski-based ILP [Mutzel, 1994]

min

  • e∈E

se s.t.

  • e∈K

se ≥ 1

∀ Kuratowski subdivisions K ⊆ E

se ∈ {0, 1}

∀e ∈ E

exponentially many Variable is 1 iff edge e is deleted Solve via branch-and-cut with heuristic separation.

slide-49
SLIDE 49

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

12

Generalized Euler Constraints

slide-50
SLIDE 50

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

12

Generalized Euler Constraints

◮ Kuratowski constraints are weak on dense graphs

slide-51
SLIDE 51

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

12

Generalized Euler Constraints

◮ Kuratowski constraints are weak on dense graphs

slide-52
SLIDE 52

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

12

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

slide-53
SLIDE 53

Skewness (= Maximum Planar Subgraph, MPS) Original ILP

12

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...

slide-54
SLIDE 54

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

Key Observations

“real-world” graph

slide-55
SLIDE 55

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

Key Observations

MPS of “real-world” graph

slide-56
SLIDE 56

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

Key Observations

MPS of “real-world” graph

◮ few large faces in MPS (or few short cycles in input)

slide-57
SLIDE 57

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

Key Observations

MPS of “real-world” graph

◮ few large faces in MPS (or few short cycles in input)

slide-58
SLIDE 58

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

Key Observations

MPS of “real-world” graph

◮ few large faces in MPS (or few short cycles in input) ◮ MPS is typically biconnected

slide-59
SLIDE 59

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

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

slide-60
SLIDE 60

Skewness (= Maximum Planar Subgraph, MPS) Towards the Cycle ILP

13

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

slide-61
SLIDE 61

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

14

Idea for Cycle Model

Assume: MPS is biconnected.

CG := set of cycles in input G.

cα ∈ {0, 1}

∀α ∈ CG

new variable is 1 iff α is a face in the solution

slide-62
SLIDE 62

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

14

Idea for Cycle Model

Assume: MPS is biconnected.

CG := set of cycles in input G.

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG:e∈α

cα = 2(1 − se)

∀e ∈ E

new variable is 1 iff α is a face in the solution

slide-63
SLIDE 63

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

14

Idea for Cycle Model

Assume: MPS is biconnected.

CG := set of cycles in input G.

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG:e∈α

cα = 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

new variable is 1 iff α is a face in the solution

slide-64
SLIDE 64

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

14

Idea for Cycle Model

Assume: MPS is biconnected.

CG := set of cycles in input G.

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG:e∈α

cα = 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

new variable is 1 iff α is a face in the solution Problems:

◮ We cannot enumerate all cycles in practice ◮ MPS is not biconnected

slide-65
SLIDE 65

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

15

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.

◮ faces in the solution

1:1

← → cycles ◮ each edge is incident to at most one such cycle

slide-66
SLIDE 66

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

15

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.

◮ faces in the solution

1:1

← → cycles ◮ each edge is incident to at most one such cycle

slide-67
SLIDE 67

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

15

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.

◮ faces in the solution

1:1

← → cycles ◮ each edge is incident to at most one such cycle

slide-68
SLIDE 68

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

15

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.

◮ faces in the solution

1:1

← → cycles ◮ each edge is incident to at most one such cycle

slide-69
SLIDE 69

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

16

Cycle Model

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG : e∈α

cα = 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

slide-70
SLIDE 70

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

16

Cycle Model

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG : e∈α

cα ≤ 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

slide-71
SLIDE 71

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

16

Cycle Model

cα ∈ {0, 1}

∀α ∈ CG

  • α∈CG : e∈α

cα ≤ 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

slide-72
SLIDE 72

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

16

Cycle Model

Pick D ∈ N such that number of variables is “reasonable”. cα ∈ {0, 1}

∀α ∈ CG, |α| ≤ D

  • α∈CG : e∈α,|α|≤D

cα ≤ 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se)

slide-73
SLIDE 73

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

16

Cycle Model

Pick D ∈ N such that number of variables is “reasonable”. cα ∈ {0, 1}

∀α ∈ CG, |α| ≤ D

  • α∈CG : e∈α,|α|≤D

cα ≤ 2(1 − se)

∀e ∈ E

3|V(G)| − 6 −

  • α∈CG

(|α| − 3)cα =

  • e∈E

(1 − se) (D + 1)(|V(G)| − 2) +

  • d=3,4,...,D

(D + 1 − d)

  • α∈C=d

G

cα ≥ (D − 1)

  • e∈E

(1 − se)

slide-74
SLIDE 74

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

17

D-Hierarchy

slide-75
SLIDE 75

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

17

D-Hierarchy

Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).

slide-76
SLIDE 76

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

17

D-Hierarchy

Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).

slide-77
SLIDE 77

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

17

D-Hierarchy

Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).

  • max. cycle length D

gap between LP and ILP number of variables

slide-78
SLIDE 78

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

17

D-Hierarchy

Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).

  • max. cycle length D

gap between LP and ILP number of variables sweet spot?

slide-79
SLIDE 79

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

18

Supplemental Constraint Zoo

Jean-Jacques Grandville (C0)

Once you have cycle variables, you can do a lot more with them! Goal: Tightly link edge- and cycle-variables

slide-80
SLIDE 80

Skewness (= Maximum Planar Subgraph, MPS) Improvement via Cycle ILP

18

Supplemental Constraint Zoo

Jean-Jacques Grandville (C0)

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.

slide-81
SLIDE 81

Skewness (= Maximum Planar Subgraph, MPS) Experiments

19

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]

slide-82
SLIDE 82

Skewness (= Maximum Planar Subgraph, MPS) Experiments

20

Experimental Evaluation

500 1000 1500 instances 2 4 6 8 10 12 14 16 18

≥20

0 % 50 % 100 % skewness (Rome graphs) success rate no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] cycles + zoo [ — " — ]

slide-83
SLIDE 83

Skewness (= Maximum Planar Subgraph, MPS) Experiments

20

Experimental Evaluation

500 1000 1500 instances 2 4 6 8 10 12 14 16 18

≥20

0 % 50 % 100 % skewness (Rome graphs) success rate no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] cycles + zoo [ — " — ] Without vs. with cycles (+zoo) Rome North Expander SteinLib % solved of previously unsolved “100%” 75% 30% 30%

slide-84
SLIDE 84

Skewness (= Maximum Planar Subgraph, MPS) Experiments

20

Experimental Evaluation

500 1000 1500 instances 2 4 6 8 10 12 14 16 18

≥20

0 % 50 % 100 % skewness (Rome graphs) success rate no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] cycles + zoo [ — " — ] 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

slide-85
SLIDE 85

Skewness (= Maximum Planar Subgraph, MPS) Experiments

20

Experimental Evaluation

500 1000 1500 instances 2 4 6 8 10 12 14 16 18

≥20

0 % 50 % 100 % skewness (Rome graphs) success rate no cycles [Mutzel 1994] cycles [Ch.&Wiedera 2018] cycles + zoo [ — " — ] 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

slide-86
SLIDE 86

Genus

21

Genus γ(G)

slide-87
SLIDE 87

Genus

21

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

slide-88
SLIDE 88

Genus Original ILP

22

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γ.

slide-89
SLIDE 89

Genus Original ILP

22

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.

slide-90
SLIDE 90

Genus Original ILP

23

Crossing-free Non-planar Graphs

slide-91
SLIDE 91

Genus Original ILP

23

Crossing-free Non-planar Graphs

slide-92
SLIDE 92

Genus Original ILP

23

Crossing-free Non-planar Graphs

slide-93
SLIDE 93

Genus Original ILP

24

Embeddings and Face Tracing

slide-94
SLIDE 94

Genus Original ILP

24

Embeddings and Face Tracing

slide-95
SLIDE 95

Genus Original ILP

24

Embeddings and Face Tracing

slide-96
SLIDE 96

Genus Original ILP

24

Embeddings and Face Tracing

1 5 4 2 3

slide-97
SLIDE 97

Genus Original ILP

24

Embeddings and Face Tracing

1 5 4 2 3 1 2 3

slide-98
SLIDE 98

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

slide-99
SLIDE 99

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

max

i∈[¯ f] xi

Use the i-th face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A

slide-100
SLIDE 100

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

max

i∈[¯ f] xi

s.t. 3 xi ≤

a∈A xa i

Use the i-th face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A

slide-101
SLIDE 101

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

max

i∈[¯ f] xi

s.t. 3 xi ≤

a∈A xa i

  • i∈[¯

f] xa i = 1

∀a ∈ A

Use the i-th face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A

slide-102
SLIDE 102

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

max

i∈[¯ f] xi

s.t. 3 xi ≤

a∈A xa i

  • i∈[¯

f] xa i = 1

∀a ∈ A

  • a∈δ+(v) xa

i = a∈δ−(v) xa i

∀i ∈ [¯

f], v ∈ V Use the i-th face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A

slide-103
SLIDE 103

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation

upper bound on number of faces: ¯ f := min{m − n, 2m/3}

max

i∈[¯ f] xi

s.t. 3 xi ≤

a∈A xa i

  • i∈[¯

f] xa i = 1

∀a ∈ A

  • a∈δ+(v) xa

i = a∈δ−(v) xa i

∀i ∈ [¯

f], v ∈ V [+ simulate face tracing via [Beyer et al. 2016] or [Ch.&Wiedera 2019]] Use the i-th face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A

slide-104
SLIDE 104

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation with small faces

upper bound on number of large faces: ¯ f := min{m − n, 2m/(D + 1)} all walks of length ≤ D: FD

max

i∈[¯ f] xi

s.t. 3 xi ≤

a∈A xa i

  • i∈[¯

f] xa i = 1

∀a ∈ A

  • a∈δ+(v) xa

i = a∈δ−(v) xa i

∀i ∈ [¯

f], v ∈ V [+ simulate face tracing via [Beyer et al. 2016] or [Ch.&Wiedera 2019]] Use the i-th large face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A Use small face α? cα ∈ {0, 1}

∀α ∈ FD

slide-105
SLIDE 105

Genus Original ILP → Improvement via Cycle ILP

25

Face-Tracing-based Formulation with small faces

upper bound on number of large faces: ¯ f := min{m − n, 2m/(D + 1)} all walks of length ≤ D: FD

max

i∈[¯ f] xi +

α∈FD cα

s.t.

(D + 1) xi ≤

a∈A xa i

  • i∈[¯

f] xa i +

α∈FD:a∈α cα = 1

∀a ∈ A

  • a∈δ+(v) xa

i = a∈δ−(v) xa i

∀i ∈ [¯

f], v ∈ V [+ simulate face tracing via [Beyer et al. 2016] or [Ch.&Wiedera 2019]] Use the i-th large face? xi ∈ {0, 1}

∀i ∈ [¯

f] Arc a on i-th face? xa

i ∈ {0, 1}

∀i ∈ [¯

f], a ∈ A Use small face α? cα ∈ {0, 1}

∀α ∈ FD

also needs amendment, no details

slide-106
SLIDE 106

Genus Improvement via Cycle ILP

26

Hierarchie and Zoo

Analogous to before: Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well).

slide-107
SLIDE 107

Genus Improvement via Cycle ILP

26

Hierarchie and Zoo

Analogous to before: Theorem The ILP formulations become strictly stronger when increasing D (but the number of variables increases drastically, as well). Now that we have cycle variables, we can again give additional add-ons to bind them tigher with the face-tracing (but fewer options than for skewness; no details now).

slide-108
SLIDE 108

Genus Experiments

27

Experimental Evaluation

No cycles. [Beyer et al. 2016]

◮ First (at least somewhat) practical approach, but: ◮ only able to solve real-world graphs with γ(G) = 1.

slide-109
SLIDE 109

Genus Experiments

27

Experimental Evaluation

No cycles. [Beyer et al. 2016]

◮ First (at least somewhat) practical approach, but: ◮ only able to solve real-world graphs with γ(G) = 1.

With cycles (and little zoo). [Ch.&Wiedera 2019]

◮ solves instances with up to γ(G) = 10

slide-110
SLIDE 110

Genus Experiments

27

Experimental Evaluation

No cycles. [Beyer et al. 2016]

◮ First (at least somewhat) practical approach, but: ◮ only able to solve real-world graphs with γ(G) = 1.

With cycles (and little zoo). [Ch.&Wiedera 2019]

◮ solves instances with up to γ(G) = 10 ◮ increase in success rate:

Rome 28% → 82% North 48% → 76% Expander 5% → 24%

slide-111
SLIDE 111

Genus Experiments

27

Experimental Evaluation

No cycles. [Beyer et al. 2016]

◮ First (at least somewhat) practical approach, but: ◮ only able to solve real-world graphs with γ(G) = 1.

With cycles (and little zoo). [Ch.&Wiedera 2019]

◮ solves instances with up to γ(G) = 10 ◮ increase in success rate:

Rome 28% → 82% North 48% → 76% Expander 5% → 24%

◮ speed-up on commonly solved:

Rome 200x North 100x Expander 80x

slide-112
SLIDE 112

Genus Experiments

28

Evaluation: Genera from Literature

The cycle-based ILP can confirm results from literature (all with non-trivial dual bounds):

◮ Circulants with genus ≤ 2 [Conder&Grande 2015]

hardest case: C11(1, 2, 4) 3 pages analysis, 85h =

⇒ 180h [Beyer et al. 2016] = ⇒ 10s

slide-113
SLIDE 113

Genus Experiments

28

Evaluation: Genera from Literature

The cycle-based ILP can confirm results from literature (all with non-trivial dual bounds):

◮ Circulants with genus ≤ 2 [Conder&Grande 2015]

hardest case: C11(1, 2, 4) 3 pages analysis, 85h =

⇒ 180h [Beyer et al. 2016] = ⇒ 10s ◮ Gray graph has genus 7 [Marusic et al. 2005]

full paper =

⇒ 42 hours

slide-114
SLIDE 114

Genus Experiments

28

Evaluation: Genera from Literature

The cycle-based ILP can confirm results from literature (all with non-trivial dual bounds):

◮ Circulants with genus ≤ 2 [Conder&Grande 2015]

hardest case: C11(1, 2, 4) 3 pages analysis, 85h =

⇒ 180h [Beyer et al. 2016] = ⇒ 10s ◮ Gray graph has genus 7 [Marusic et al. 2005]

full paper =

⇒ 42 hours ◮ Z9 × Z3 has genus 4 [Brin et al. 1989]

full paper =

⇒ 5 minutes

slide-115
SLIDE 115

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

slide-116
SLIDE 116

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

◮ Don’t be afraid of the fact that there are exponentially many cycles in a graph!

Already considering only short ones can help!

slide-117
SLIDE 117

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

◮ Don’t be afraid of the fact that there are exponentially many cycles in a graph!

Already considering only short ones can help!

◮ One may also consider cycles in the dual!

slide-118
SLIDE 118

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

◮ Don’t be afraid of the fact that there are exponentially many cycles in a graph!

Already considering only short ones can help!

◮ One may also consider cycles in the dual! ◮ Can something similar can be done for the crossing number?

The famous Crossing Lemma cr(G) = Ω(m3/n2) can be made girth-aware: cr(G) = Ω(mr+2/nr+1) for girth >2r [Pach et al. 2000]

slide-119
SLIDE 119

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

◮ Don’t be afraid of the fact that there are exponentially many cycles in a graph!

Already considering only short ones can help!

◮ One may also consider cycles in the dual! ◮ Can something similar can be done for the crossing number?

The famous Crossing Lemma cr(G) = Ω(m3/n2) can be made girth-aware: cr(G) = Ω(mr+2/nr+1) for girth >2r [Pach et al. 2000]

◮ Many opportunities!

slide-120
SLIDE 120

Non-Planarity Measures and Short Cycles

29

Conclusion

◮ We know for a long time that non-planarity measures are dependent on the graph’s

girth... but short cycles are underused in current algorithmics!

◮ Don’t be afraid of the fact that there are exponentially many cycles in a graph!

Already considering only short ones can help!

◮ One may also consider cycles in the dual! ◮ Can something similar can be done for the crossing number?

The famous Crossing Lemma cr(G) = Ω(m3/n2) can be made girth-aware: cr(G) = Ω(mr+2/nr+1) for girth >2r [Pach et al. 2000]

◮ Many opportunities!

Thank you and good health!

In particular also to the organizers Sascha, Steven and Philipp!