Bitonic st -orderings for Upward Planar Graphs Martin Gronemann - - PowerPoint PPT Presentation

bitonic st orderings for upward planar graphs
SMART_READER_LITE
LIVE PREVIEW

Bitonic st -orderings for Upward Planar Graphs Martin Gronemann - - PowerPoint PPT Presentation

Bitonic st -orderings for Upward Planar Graphs Martin Gronemann University of Cologne, Germany September 20, 2016 Introduction Graph Drawing 2014 Bitonic st-orderings of biconnected planar graphs. A special st -ordering that is similar


slide-1
SLIDE 1

Bitonic st-orderings for Upward Planar Graphs

Martin Gronemann

University of Cologne, Germany

September 20, 2016

slide-2
SLIDE 2

Introduction

Graph Drawing 2014

◮ Bitonic st-orderings of biconnected planar graphs. ◮ A special st-ordering that is similar to canonical orderings. ◮ Works with the algorithm of de Fraysseix, Pach and Pollack.

slide-3
SLIDE 3

Introduction

Graph Drawing 2014

◮ Bitonic st-orderings of biconnected planar graphs. ◮ A special st-ordering that is similar to canonical orderings. ◮ Works with the algorithm of de Fraysseix, Pach and Pollack.

Here today

◮ Apply the idea to directed graphs, esp. planar st-graphs. ◮ Use it to create upward planar straight-line drawings.

slide-4
SLIDE 4

Introduction

Planar st-graphs

◮ Planar directed acyclic graph G = (V , E) with ◮ a single source s ∈ V and single sink t ∈ V . ◮ G has a fixed embedding with s and t on the outer face.

slide-5
SLIDE 5

Introduction

Planar st-graphs

◮ Planar directed acyclic graph G = (V , E) with ◮ a single source s ∈ V and single sink t ∈ V . ◮ G has a fixed embedding with s and t on the outer face.

Important results on upward planar graphs

◮ Every upward planar graph is a spanning subgraph of a planar

st-graph (Di Battista & Tamassia). ⇒ We focus on planar st-graphs.

◮ Every upward planar graph admits an upward planar

straight-line drawing (Di Battista & Tamassia).

◮ Some require exponential area (Di Battista, Tamassia, Tollis).

slide-6
SLIDE 6

Incremental upward planar straight-line drawings

Idea

Use the algorithm of de Fraysseix, Pach and Pollack to obtain upward planar straight-line drawings for planar st-graphs.

7 5 6 4 1 2 3 8

slide-7
SLIDE 7

Incremental upward planar straight-line drawings

Idea

Use the algorithm of de Fraysseix, Pach and Pollack to obtain upward planar straight-line drawings for planar st-graphs.

4 5 6 1 2 3 7 5 6 4 1 2 3 8 8 7

slide-8
SLIDE 8

Incremental upward planar straight-line drawings

Idea

Use the algorithm of de Fraysseix, Pach and Pollack to obtain upward planar straight-line drawings for planar st-graphs.

4 5 6 1 2 3 7 5 6 4 1 2 3 8 8 7

◮ If the (canonical) ordering complies with the orientation of the

edges, the result is upward planar straight-line.

slide-9
SLIDE 9

Incremental upward planar straight-line drawings

Idea

Use the algorithm of de Fraysseix, Pach and Pollack to obtain upward planar straight-line drawings for planar st-graphs.

4 5 6 1 2 3 7 5 6 4 1 2 3 8 8 7

◮ If the (canonical) ordering complies with the orientation of the

edges, the result is upward planar straight-line.

◮ Canonical orderings do not extend to directed graphs, . . .

slide-10
SLIDE 10

Incremental upward planar straight-line drawings

Idea

Use the algorithm of de Fraysseix, Pach and Pollack to obtain upward planar straight-line drawings for planar st-graphs.

4 5 6 1 2 3 7 5 6 4 1 2 3 8 8 7

◮ If the (canonical) ordering complies with the orientation of the

edges, the result is upward planar straight-line.

◮ Canonical orderings do not extend to directed graphs, . . . ◮ . . . but st-orderings do ⇒ We use an st-ordering instead!

slide-11
SLIDE 11

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

slide-12
SLIDE 12

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

slide-13
SLIDE 13

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

slide-14
SLIDE 14

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

◮ Multiple-predecessor case works like in the original algorithm.

slide-15
SLIDE 15

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-16
SLIDE 16

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-17
SLIDE 17

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

Gk−1 u vk

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-18
SLIDE 18

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

Gk−1 u vk

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-19
SLIDE 19

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

Gk−1 u vk

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-20
SLIDE 20

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-21
SLIDE 21

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-22
SLIDE 22

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm.

slide-23
SLIDE 23

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm. ◮ One-predecessor case works only when the unattached edges

are all on one side (either left or right of (u, vk)).

slide-24
SLIDE 24

Incremental upward planar straight-line drawings

Problem

Running the FPP-algorithm with an st-ordering does not work.

vk Gk−1

≥ 2 predecessors

vk Gk−1 u

1 predecessor

◮ Multiple-predecessor case works like in the original algorithm. ◮ One-predecessor case works only when the unattached edges

are all on one side (either left or right of (u, vk)).

◮ They are consecutive ⇒ they are all on one side

slide-25
SLIDE 25

Canonical vs. st-orderings

Intuition

At any time, all outgoing edges that are not yet present in the current drawing, appear consecutively in the embedding.

slide-26
SLIDE 26

Canonical vs. st-orderings

Intuition

At any time, all outgoing edges that are not yet present in the current drawing, appear consecutively in the embedding. canonical ordering st-ordering

slide-27
SLIDE 27

Canonical vs. st-orderings

Intuition

At any time, all outgoing edges that are not yet present in the current drawing, appear consecutively in the embedding. canonical ordering st-ordering

◮ We need a special st-ordering in which they are consecutive

like in a canonical ordering!

slide-28
SLIDE 28

Canonical vs. st-orderings

Intuition

At any time, all outgoing edges that are not yet present in the current drawing, appear consecutively in the embedding. canonical ordering st-ordering

◮ We need a special st-ordering in which they are consecutive

like in a canonical ordering! → bitonic st-ordering

slide-29
SLIDE 29

Bitonic st-orderings

Definition

Given an st-ordering π : V → {1, . . . , |V |} with π(v) being the rank of v ∈ V in the ordering.

v1 vm vh u

S(u) = {v1, . . . , vm} Successors of u ordered as in the embedding

slide-30
SLIDE 30

Bitonic st-orderings

Definition

Given an st-ordering π : V → {1, . . . , |V |} with π(v) being the rank of v ∈ V in the ordering.

v1 vm vh u

S(u) = {v1, . . . , vm} Successors of u ordered as in the embedding

v1 vh vm π

π(v1) < · · · < π(vh) > · · · > π(vm) An increasing and then decreasing sequence ⇒ bitonic

slide-31
SLIDE 31

Bitonic st-orderings

Definition

Given an st-ordering π : V → {1, . . . , |V |} with π(v) being the rank of v ∈ V in the ordering.

v1 vm vh u

S(u) = {v1, . . . , vm} Successors of u ordered as in the embedding

v1 vh vm π

π(v1) < · · · < π(vh) > · · · > π(vm) An increasing and then decreasing sequence ⇒ bitonic ∀u ∈ V : S(u) is bitonic w.r.t. π ⇒ π is a bitonic st-ordering

slide-32
SLIDE 32

Bitonic st-orderings - Results

+ Embedded planar st-graph G = (V , E) Bitonic st-ordering π for G

slide-33
SLIDE 33

Bitonic st-orderings - Results

linear-time algorithm upward planar straight-line drawing within quadratic area + Embedded planar st-graph G = (V , E) Bitonic st-ordering π for G

◮ The arXiv-version contains a full description and a listing.

slide-34
SLIDE 34

Bitonic st-orderings - Results

linear-time algorithm upward planar straight-line drawing within quadratic area + Embedded planar st-graph G = (V , E) Bitonic st-ordering π for G

◮ The arXiv-version contains a full description and a listing. ◮ Some planar st-graphs require exponential area!

slide-35
SLIDE 35

Bitonic st-orderings - Results

linear-time algorithm upward planar straight-line drawing within quadratic area + Embedded planar st-graph G = (V , E) Bitonic st-ordering π for G

◮ The arXiv-version contains a full description and a listing. ◮ Some planar st-graphs require exponential area! ◮ Not every planar st-graph admits a bitonic st-ordering.

slide-36
SLIDE 36

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E)

slide-37
SLIDE 37

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm ∄ Bitonic st-ordering Bitonic st-ordering π for G

slide-38
SLIDE 38

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm ∄ Bitonic st-ordering Bitonic st-ordering π for G linear-time algorithm Optimal set of edges E ′ ⊂ E to split with |E ′| ≤ |V | − 3

slide-39
SLIDE 39

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm ∄ Bitonic st-ordering Bitonic st-ordering π for G linear-time algorithm Optimal set of edges E ′ ⊂ E to split with |E ′| ≤ |V | − 3 linear-time algorithm upward planar straight-line drawing within quadratic area

slide-40
SLIDE 40

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm ∄ Bitonic st-ordering Bitonic st-ordering π for G linear-time algorithm Optimal set of edges E ′ ⊂ E to split with |E ′| ≤ |V | − 3 linear-time algorithm upward planar straight-line drawing within quadratic area G ′ := split E ′ G G ′ G ′ Replace dummy vertices by bends

slide-41
SLIDE 41

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm Upward planar poly-line drawing with

  • at most one bend per edge,
  • at most |V | − 3 bends total,
  • within quadratic area.

◮ Best upper bound so far (Di Battista et al.): 2|V | − 5.

slide-42
SLIDE 42

Bitonic st-orderings - More results

Embedded planar st-graph G = (V , E) linear-time algorithm Upward planar poly-line drawing with

  • at most one bend per edge,
  • at most |V | − 3 bends total,
  • within quadratic area.

◮ Best upper bound so far (Di Battista et al.): 2|V | − 5. ◮ Drawing properties extend to all upward planar graphs.

slide-43
SLIDE 43

Conclusion

Summary

◮ Classic incremental planar graph drawing for planar st-graphs. ◮ Does not work on all planar st-graphs, but we can split edges. ◮ The algorithms are simple, fast and easy to implement.

slide-44
SLIDE 44

Conclusion

Summary

◮ Classic incremental planar graph drawing for planar st-graphs. ◮ Does not work on all planar st-graphs, but we can split edges. ◮ The algorithms are simple, fast and easy to implement.

Thank you for your attention!