Compact Visibility Drawing of Planar Graph

Preview:

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

Citation preview

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

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

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.

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

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

Monty Hall Problem

It makes a lot of difference

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

Another problem

Coffee and Milk

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

The puzzleThe puzzle

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

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

An exampleAn example

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.

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

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.

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.

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 …

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]

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.

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.

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]

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?

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.

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.

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

““Lazy” extensionLazy” extension

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.

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.

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.

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]

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.

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

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

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?

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

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.

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.

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, …

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.

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.

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

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

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.

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.

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)

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.

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.

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

Any Comments or Questions?

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

Thank you!

Recommended