Bundled Crossings Revisited Steven Chaplick , Thomas C. van Dijk, - - PowerPoint PPT Presentation

bundled crossings revisited
SMART_READER_LITE
LIVE PREVIEW

Bundled Crossings Revisited Steven Chaplick , Thomas C. van Dijk, - - PowerPoint PPT Presentation

Bundled Crossings Revisited Steven Chaplick , Thomas C. van Dijk, Myroslav Kryven, Alexander Wolff Julius-Maximilians-Universit at W urzburg, Germany Ji-won Park KAIST, Daejeon, Republic of Korea Alexander Ravsky Pidstryhach Institute


slide-1
SLIDE 1

Bundled Crossings Revisited

Steven Chaplick, Thomas C. van Dijk, Myroslav Kryven, Alexander Wolff

Julius-Maximilians-Universit¨ at W¨ urzburg, Germany

Ji-won Park

KAIST, Daejeon, Republic of Korea

Alexander Ravsky

Pidstryhach Institute for Applied Problems of Mechanics and Mathematics,

  • Nat. Acad. Sciences of Ukraine, Lviv, Ukraine
slide-2
SLIDE 2

Motivation

Ideally drawings of graphs should avoid crossings ...

slide-3
SLIDE 3

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings

slide-4
SLIDE 4

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings.

slide-5
SLIDE 5

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings?

slide-6
SLIDE 6

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings?

slide-7
SLIDE 7

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings?

slide-8
SLIDE 8

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings?

slide-9
SLIDE 9

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings? Lots of different variants.

slide-10
SLIDE 10

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings? Lots of different variants. Our main result concerns simple circular layouts. simple avoids:

slide-11
SLIDE 11

Motivation

Ideally drawings of graphs should avoid crossings ... Planar graphs can be drawn without crossings but many graphs cannot be drawn without crossings. Classical problem in Graph Drawing: How to minimize the number of crossings? Lots of different variants. Our main result concerns simple circular layouts. This talk concerns bundled crossings, def’d next. simple avoids:

slide-12
SLIDE 12

Motivation

[Bannister, Eppstein ’14] There is an FPT algorithm for deciding whether a graph admits a circular layout with k crossings.

slide-13
SLIDE 13

Motivation

[Bannister, Eppstein ’14] [Holten ’06] Bundle the drawing There is an FPT algorithm for deciding whether a graph admits a circular layout with k crossings.

slide-14
SLIDE 14

Motivation

[Bannister, Eppstein ’14] [Holten ’06] Bundle the drawing There is an FPT algorithm for deciding whether a graph admits a circular layout with k crossings.

slide-15
SLIDE 15

Motivation

[Bannister, Eppstein ’14] [Holten ’06] Bundle the drawing Minimize crossings of bundles instead of edges! There is an FPT algorithm for deciding whether a graph admits a circular layout with k crossings.

F: [Fink et al. ’16] A: [Alam et al. ’16]

slide-16
SLIDE 16

Motivation

[Bannister, Eppstein ’14] [Holten ’06] Bundle the drawing Minimize crossings of bundles instead of edges! There is an FPT algorithm for deciding whether a graph admits a circular layout with k crossings.

F: [Fink et al. ’16] A: [Alam et al. ’16]

  • gen. layouts: NP-c for fixed [F] and variable [A] embeddings.

fixed embedding: 10-apx for circular, and O(1)-apx for gen. layouts [F]

slide-17
SLIDE 17

Motivation

[Holten ’06] Bundle the drawing Minimize crossings of bundles instead of edges! [A] Q u e s . Is there an FPT algorithm for deciding whether a graph admits a circular layout with k bundled crossings?

F: [Fink et al. ’16] A: [Alam et al. ’16]

  • gen. layouts: NP-c for fixed [F] and variable [A] embeddings.

fixed embedding: 10-apx for circular, and O(1)-apx for gen. layouts [F]

slide-18
SLIDE 18

Bundled Crossing

A bundle is a set of pieces of edges that travel in parallel in the drawing.

slide-19
SLIDE 19

Bundled Crossing

A bundle is a set of pieces of edges that travel in parallel in the drawing. Outer edges of a bundle are called frame edges

slide-20
SLIDE 20

Bundled Crossing

A bundle is a set of pieces of edges that travel in parallel in the drawing. Outer edges of a bundle are called frame edges

slide-21
SLIDE 21

Bundled Crossing

A bundle is a set of pieces of edges that travel in parallel in the drawing. A bundled crosssing is a set of crossings inside the region bounded by the frame edges. Outer edges of a bundle are called frame edges

slide-22
SLIDE 22

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.
slide-23
SLIDE 23

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.

Deciding whether bc◦(G) = k is FPT in k. Thm.

resolves an open problem of [Alam et al. 2016]

slide-24
SLIDE 24

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.

Deciding whether bc◦(G) = k is FPT in k. Thm. Remark on simple vs. non-simple: consider K3,3

a a′ b b′ c c′ a′ b c c′ a b′ resolves an open problem of [Alam et al. 2016]

slide-25
SLIDE 25

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.

Deciding whether bc◦(G) = k is FPT in k. Thm. Remark on simple vs. non-simple: consider K3,3 Non-simple orientable graph genus [Alam et al. 2016] ... more on this soon

a a′ b b′ c c′ a′ b c c′ a b′ resolves an open problem of [Alam et al. 2016]

slide-26
SLIDE 26

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.

Deciding whether bc◦(G) = k is FPT in k. Thm. Other results (not covered in this talk, see the paper!):

resolves an open problem of [Alam et al. 2016]

slide-27
SLIDE 27

Bundled Crossing Minimization

Def. For a given graph G the circular bundled crossing number bc◦(G) of G is the minimum number of bundled crossings

  • ver all possible bundlings
  • f all possible simple circular layouts of G.

Deciding whether bc◦(G) = k is FPT in k. Thm. Other results (not covered in this talk, see the paper!): For general layouts, on inputs (G, k), deciding whether G has a simple drawing with k bundled crossings is

  • NPc. For non-simple, this is FPT in k (via genus).

Thm. For circular layouts, on inputs (G, k), deciding whether G has a (non-simple) circular drawing with k bundled crossings is FPT in k (via genus). Obs.

resolves open problem of [Fink et al.; 2016] resolves an open problem of [Alam et al. 2016]

slide-28
SLIDE 28

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

slide-29
SLIDE 29

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-30
SLIDE 30

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • We can “lift” the drawing onto a surface of genus k
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-31
SLIDE 31

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • We can “lift” the drawing onto a surface of genus k
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-32
SLIDE 32

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • We can “lift” the drawing onto a surface of genus k
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-33
SLIDE 33

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • We can “lift” the drawing onto a surface of genus k
  • and subdivide the surface into regions.
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-34
SLIDE 34

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • Other edges/vertices of the graph partitioned into these regions.
  • We can “lift” the drawing onto a surface of genus k
  • and subdivide the surface into regions.
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-35
SLIDE 35

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • Other edges/vertices of the graph partitioned into these regions.
  • We can “lift” the drawing onto a surface of genus k
  • The graph induced by edges inside a single region has a special
  • uterplanar drawing.
  • and subdivide the surface into regions.
  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-36
SLIDE 36

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • Other edges/vertices of the graph partitioned into these regions.
  • We can “lift” the drawing onto a surface of genus k
  • The graph induced by edges inside a single region has a special
  • uterplanar drawing.
  • and subdivide the surface into regions.

What if a region has a bridge and a tunnel corresponding to the same bundled crossing?

  • At most k bundled crossings =

⇒ at most 4k frame edges.

slide-37
SLIDE 37

Structure of a drawing

Consider a drawing with k bundled crossings and observe that:

  • Other edges/vertices of the graph partitioned into these regions.
  • We can “lift” the drawing onto a surface of genus k
  • The graph induced by edges inside a single region has a special
  • uterplanar drawing.
  • and subdivide the surface into regions.

What if a region has a bridge and a tunnel corresponding to the same bundled crossing?

  • At most k bundled crossings =

⇒ at most 4k frame edges. Each region is a topological disk. Lem.

slide-38
SLIDE 38

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

slide-39
SLIDE 39

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Construct a surface of genus k and a subdivision into regions.
slide-40
SLIDE 40

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.
slide-41
SLIDE 41

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.
slide-42
SLIDE 42

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.
  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

good means it “fits” here

slide-43
SLIDE 43

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.

MSO2

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

good means it “fits” here

slide-44
SLIDE 44

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.

MSO2

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

But what is MSO2 again?

good means it “fits” here

slide-45
SLIDE 45

The Algorithm

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.

MSO2

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

But what is MSO2 again?

good means it “fits” here

slide-46
SLIDE 46

Monadic Second Order Logic (MSO2)

(∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) =

slide-47
SLIDE 47

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) =

slide-48
SLIDE 48

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) =

slide-49
SLIDE 49

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) = Since our regions induce outerplanar graphs, we have treewidth at most 8k + 2 where k is the number of bundled crossings.

slide-50
SLIDE 50

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) = But, what about?

  • Test graphs in each region for a good outerplanar drawing.
slide-51
SLIDE 51

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) = But, what about?

  • Test graphs in each region for a good outerplanar drawing.

This can be stated in MSO2 via a mechanism of MSO-definition schemes, and the Backwards Translation Theorem [Courcelle, Engelfriet; 2012]

slide-52
SLIDE 52

Monadic Second Order Logic (MSO2)

Thm (Courcelle): If a property P is expressed as ϕ ∈ MSO2, then for every graph G with treewidth at most t, P can be tested in time O(f (t, |ϕ|)(n + m)) for a computable function f . (∀e ∈ E) γ

  • i=0

e ∈ Ei

i=j

¬(e ∈ Ei ∧ e ∈ Ej)

  • .

Partition(E; E0, . . . , Eγ) = But, what about?

  • Test graphs in each region for a good outerplanar drawing.

This can be stated in MSO2 via a mechanism of MSO-definition schemes, and the Backwards Translation Theorem [Courcelle, Engelfriet; 2012]

I t ’ s a b i t t e c h n i c a l

slide-53
SLIDE 53

Testing whether bc◦ = k

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.
  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

Runtime:

slide-54
SLIDE 54

Testing whether bc◦ = k

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.
  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

Runtime: 2O(k2) 2O(k2)

slide-55
SLIDE 55

Testing whether bc◦ = k

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.

MSO2

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

Runtime: 2O(k2)f (k)(|V | + |E|) 2O(k2)

slide-56
SLIDE 56

Testing whether bc◦ = k

Deciding whether bc◦(G) = k is FPT in k. Thm.

  • Guess the drawing of at most 4k frame edges and their

bundling.

  • Partition the edges and vertices into the regions.
  • Test graphs in each region for a good outerplanar drawing.

MSO2

  • Map the edges of the graph to the guessed frame edges.
  • Construct a surface of genus k and a subdivision into regions.

Runtime: 2O(k2)f (k)(|V | + |E|) 2O(k2) Recall that for correctness of the algorithm we need to show that Each region is a topological disk. Thm.

slide-57
SLIDE 57

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-58
SLIDE 58

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-59
SLIDE 59

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-60
SLIDE 60

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-61
SLIDE 61

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-62
SLIDE 62

A region is a topological disk

Proof. Stick to the right! Each region is a topological disk. Lem.

slide-63
SLIDE 63

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-64
SLIDE 64

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-65
SLIDE 65

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-66
SLIDE 66

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-67
SLIDE 67

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-68
SLIDE 68

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-69
SLIDE 69

A region is a topological disk

hurray!

Proof. Each region is a topological disk. Lem.

slide-70
SLIDE 70

A region is a topological disk

Proof. Each region is a topological disk. Lem.

slide-71
SLIDE 71

A region is a topological disk

Proof. Cannot be completed!

follows from [Arroyo, Bensmail, Richter; 2018]

Each region is a topological disk. Lem.

slide-72
SLIDE 72

A region is a topological disk

Proof. Cannot be completed!

follows from [Arroyo, Bensmail, Richter; 2018]

Each region is a topological disk. Lem.

slide-73
SLIDE 73

A region is a topological disk

Proof. Cannot be completed!

follows from [Arroyo, Bensmail, Richter; 2018]

Each region is a topological disk. Lem.

slide-74
SLIDE 74

Open Questions

We have provided an FPT algorithm for deciding whether bc◦(G) = k. Since our algorithm is based on MSO2 the runtime is

slide-75
SLIDE 75

Open Questions

We have provided an FPT algorithm for deciding whether bc◦(G) = k. Since our algorithm is based on MSO2 the runtime is (k)×(|V | + |E|)

slide-76
SLIDE 76

Open Questions

We have provided an FPT algorithm for deciding whether bc◦(G) = k. Since our algorithm is based on MSO2 the runtime is Question 1 Is there a faster FPT algorithm for deciding whether bc◦(G) = k? (k)×(|V | + |E|)

slide-77
SLIDE 77

Open Questions

We have provided an FPT algorithm for deciding whether bc◦(G) = k. Since our algorithm is based on MSO2 the runtime is Question 1 Is there a faster FPT algorithm for deciding whether bc◦(G) = k? Question 2 Is deciding whether bc◦(G) = k NP-hard? (k)×(|V | + |E|)

slide-78
SLIDE 78

Open Questions

We have provided an FPT algorithm for deciding whether bc◦(G) = k. Since our algorithm is based on MSO2 the runtime is Question 1 Is there a faster FPT algorithm for deciding whether bc◦(G) = k? Question 2 Is deciding whether bc◦(G) = k NP-hard? (k)×(|V | + |E|) Question 3 Is bundle crossing min. also FPT for general simple layouts?