compact visibility drawing of planar graph

53
10/14/2005 @ NSYSU Compact Visibility Drawing of Plana r Graph Compact Visibility Drawing of Planar Graph Hsueh-I Lu National Taiwan University Joint work with Ching-Chi Lin & I-Fan Sun

Upload: zorina

Post on 06-Jan-2016

45 views

Category:

Documents


2 download

DESCRIPTION

Compact Visibility Drawing of Planar Graph. Hsueh-I Lu National Taiwan University Joint work with Ching-Chi Lin & I-Fan Sun. Outline. 開場白 The visibility drawing problem Previous work and our improved results A little bit of details: how our simple algorithm works in a lazy manner - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU Compact Visibility Drawing of Planar Graph

Compact Visibility Drawing of Planar Graph

Hsueh-I LuNational Taiwan University

Joint work with Ching-Chi Lin & I-Fan Sun

Page 2: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

開場白 The visibility drawing problem Previous work and our improved results A little bit of details:

– how our simple algorithm works in a lazy manner– analyzing our results using Schnyder’s realizer

Conclusion and open questions

Outline

Page 3: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

開場白開場白

Algorithmic research is (almost) always about attacking a combinatorial problem in a new (and better) way.– Whether or not you can come up with a neat

solution usually depends on how you approach the problem.

Page 4: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

A TV Game ShowA TV Game Show

Page 5: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU Compact Visibility Drawing of Planar Graph

Monty Hall Problem

It makes a lot of difference

Page 6: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU Compact Visibility Drawing of Planar Graph

Another problem

Coffee and Milk

Page 7: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

The puzzleThe puzzle

Page 8: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

What’s a visibility What’s a visibility drawing?drawing? Representation

– node horizontal line segment– edge vertical line segment

Requirement– adjacency is appropriately displayed– no crossing among all line segments

Page 9: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

An exampleAn example

Page 10: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

The problemThe problem

Compact visibility drawing– Input: a planar graph G

n nodes and 3n – 6 or fewer edges

– Output: a visibility drawing D of G– Objective: minimizing the area of D

A classic graph drawing problem, which finds applications in VLSI layout.

Page 11: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Convention for Convention for measuring the measuring the drawing’s areadrawing’s areasegment endpoints

grid points

Page 12: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Height Height << #node = #node = nn

In the worst case, each row of grid points is occupied by only one horizontal line segment.

Page 13: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Width Width << #edge #edge << 3 3n n

In the worst case, each column of grid points is occupied only one vertical line segment.

Page 14: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

All known results, All known results, including ours, focus on including ours, focus on minimizing the width …minimizing the width …

Page 15: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Previous workPrevious work

Problem formulation – Otten & van Wijk [IEEE ISCS’78]

– No width bound (i.e., width < 3n )

Width < 2n, O(n) time– Rosenstiehl & Tarjan [DCG’86]

– Tamassia & Tollis [DCG’86]

– Nummenmaa [TCS’92]

Width < 1.5n, O(n) time– Kant [WG’94, IJCGA’97]

– Open: is 1.5n worst-case optimal?

If G is 4-connected– Width < n, O(n) time

– Kant & He [TCS’97]

Page 16: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Our main resultOur main result

Width < 22n/15, O(n) time – A negative answer to Kant’s open question.– Width improvement = 22n/15 – 3n/2 = n/30.

Our algorithm works in a easy-to-implement lazy manner, based on 3 canonical orderings for G provided by Schnyder’s realizer.

Page 17: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Our analysis also Our analysis also implies that …implies that …

if G has no – degree-3 nodes or– degree-5 nodes,

then the drawing produced by our lazy algorithm via realizer is no wider than 4n/3.

Page 18: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

A by-productA by-product

A simple alternative proof to a corollary of Wagner’s Theorem on Schnyder’s realizer [Bonichon, Saëc & Mosbah, ICALP’02]

Page 19: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

The visibility drawing problem Previous work and our improved results A little bit of details:

– how our simple algorithm works in a lazy manner– analyzing our results using Schnyder’s realizer

Conclusion and open questions

Where are we?

Page 20: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Our algorithmOur algorithm

Additional input: – A canonical ordering of G.

Procedure:– For each y = 1 to n

Place node y from above and extend the drawing in a lazy manner, i.e., increasing the width of the drawing only when it is necessary.

Page 21: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Canonical orderingCanonical ordering

For each node y, its neighbors in the subgraph Gy–1 induced by the smaller-indexed nodes are on the external boundary of the subgraph Gy–1.

Page 22: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 23: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 24: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 25: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 26: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 27: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 28: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 29: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 30: Compact Visibility Drawing of Planar Graph

““Lazy” extensionLazy” extension

Page 31: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Time complexityTime complexity

It is not difficult to implement the lazy algorithm to run in O(n) time – e.g., by using data structure like doubly linked

list so that each of those less than 3n edges can be drawn in O(1) time.

Page 32: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

The challengeThe challenge

How do we choose a canonical ordering with which our lazy algorithm produces a compact visibility drawing?

We use Schnyder’s Realizer.

Page 33: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

How to use realizer?How to use realizer?

A realizer, obtainable in linear time, partitions the internal edges of G into three edge-disjoint trees, each rooted an external node.

The preordering traversal of each tree gives a canonical ordering.

Page 34: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Schnyder’s Realizer [SODA’90]Schnyder’s Realizer [SODA’90]

Page 35: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

How to use realizer?How to use realizer?

A realizer, obtainable in linear time, partitions the internal edges of G into three edge-disjoint trees, each rooted an external node.

The preordering traversal of each tree gives a canonical ordering.

We can prove that our lazy algorithm yields a drawing with the improved width bound using one of those three canonical orderings.

Page 36: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

An upper bound on An upper bound on widthwidth Width < 3n – Σy mindeg(y), where

– indeg(y) = the number of neighbors of node y with smaller indices,

– outdeg(y) = the number of neighbors of node y with larger indices, and

– mindeg(y) = min(indeg(y), outdeg(y)).

Page 37: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

For exampleFor example

mindeg(8)

= min(2, 4)

= 2

mindeg(9)

= min(4, 1)

= 1

Page 38: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Width Width << 3 3nn – – ΣΣyy mindegmindeg((yy).).

Why?

Page 39: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Observation 1Observation 1

At the end of the iteration for drawing node y (i.e., all edges (x, y) with x < y are drawn), y has at least indeg(y) ≥ mindeg(y) visible points.

y

indeg(y)

At least mindeg(y) visible points

Page 40: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Observation 2Observation 2

Drawing an edge (y, z) with y < z either – increases the width by 1 (i.e., y is not visible) or– decreases the number of visible points of y by 1.

Page 41: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Combining Obs 1 & 2Combining Obs 1 & 2

In the first mindeg(y) iterations for drawing edges (y, z) with y < z, the drawing is not extended.

Therefore, when drawing those 3n edges, – each edge extends the drawing by at most 1

unit.

– At least Σy mindeg(y) edges do not extend the drawing.

Page 42: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Width Width ≤≤ 3 3nn – – ΣΣyy mindegmindeg((yy).).

So, …

Page 43: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Two examples of Two examples of applying the upper applying the upper bound on width:bound on width: Width ≤ 2n for any canonical ordering Width ≤ 4n / 3 via realizer, if G has no

degree-3 nodes.

Page 44: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Example 1: Width Example 1: Width ≤≤ 2n 2n

Since mindeg(y) ≥ 1, – we have Σy mindeg(y) ≥ n, and thus

– width is at most 3n – n = 2n.

Page 45: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Example 2: no deg-3 Example 2: no deg-3 nodenode Each node has degree at least 4. it must have

– exactly 3 outgoing edges, and– at least 1 incoming edges

y

Page 46: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Sum of mindeg(y) in Sum of mindeg(y) in three directions ≥ 2+2+1 three directions ≥ 2+2+1 = 5= 5

y

≥ 2

≥ 2≥ 1

Page 47: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Width Width ≤ 4≤ 4nn/3/3

On average, each node contributes 5/3 to mindeg(y) among three orderings.

Therefore, one of those three orderings gives a drawing whose width is at most (3– 5/3)n = 4n/3.

Page 48: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

With a more careful With a more careful analysis,analysis,

we can prove that one of those three canonical orderings defined by Schnyder’s realizer yields a visibility drawing no wider than 22n/15.

Page 49: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Our analysis is Our analysis is almostalmost tighttight The visibility drawing of the following

graph produced by our algorithm has width 4n/3 – O(1). (22n/15 – 4n/3 = 2n/15)

Page 50: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

ConclusionConclusion

Based upon Schnyder’s realizer, we give an O(n)-time algorithm for visibility drawing that is no wider than 22n/15.

Page 51: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU10/14/2005 @ NSYSU Compact Visibility Drawing of Planar GraphCompact Visibility Drawing of Planar Graph

Recent progressRecent progress

We left the following questions open:– Is 22n/15 worst-case optimal?

We conjecture that the worst-case bound is 4n/3.

– Improving the area = height * width? Recent progress by H. Zhang and X. He of

SUNY at Buffalo.– Width is at most 13n / 9 (with a more careful

analysis).

– Height can be reduced to be at most 3n / 4.

Page 52: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU Compact Visibility Drawing of Planar Graph

Any Comments or Questions?

Page 53: Compact Visibility Drawing of Planar Graph

10/14/2005 @ NSYSU Compact Visibility Drawing of Planar Graph

Thank you!