Title: Drawing Plane Graphs
1Drawing Plane Graphs
Takao Nishizeki
Tohoku University
2(No Transcript)
3US President
California Governor
What is the common feature?
4Graphs and Graph Drawings
A diagram of a computer network
5Objectives of Graph Drawings
Nice drawing
structure of the graph is easy to understand
structure of the graph is difficult to understand
To obtain a nice representation of a graph so
that the structure of the graph is easily
understandable.
6Objectives of Graph Drawings
Nice drawing
Ancient beauty
7Objectives of Graph Drawings
Diagram of an electronic circuit
5
Wire crossings
7
4
8
3
1
2
not suitable for single layered PCB
suitable for single layered PCB
The drawing should satisfy some criterion arising
from the application point of view.
8Drawings of Plane Graphs
Straight line drawing
Convex drawing
9Drawings of Plane Graphs
Rectangular drawing
Box-rectangular drawing
Orthogonal drawing
10Book
Planar Graph Drawing by Takao Nishizeki Md.
Saidur Rahman
http//www.nishizeki.ecei.tohoku.ac.jp/nszk/saidur
/gdbook.html
11Straight Line Drawing
Plane graph
12Straight Line Drawing
Straight line drawing
Plane graph
13Straight Line Drawing
Straight line drawing
Plane graph
Each vertex is drawn as a point.
14Straight Line Drawing
Straight line drawing
Plane graph
Each vertex is drawn as a point.
Each edge is drawn as a single straight line
segment.
15Every plane graph has a straight line
drawing. Wagner 36 Fary 48
Straight Line Drawing
Polynomial-time algorithm
Straight line drawing
Plane graph
Each vertex is drawn as a point.
Each edge is drawn as a single straight line
segment.
16Straight Line Drawing
W
H
Straight line drawing
Plane graph
17Straight Line Grid Drawing
Straight line grid drawing.
Plane graph
In a straight line grid drawing each vertex is
drawn on a grid point.
18 Wagner 36 Fary 48
Grid-size is not polynomial of the number of
vertices n
Straight line grid drawing.
Plane graph
19Straight Line Grid Drawing
Straight line grid drawing.
Plane graph
de Fraysseix et al. 90
20Chrobak and Payne 95 Linear algorithm
Straight line grid drawing.
Plane graph
de Fraysseix et al. 90
21Schnyder 90
H
n-2
n-2
W
Upper bound
22What is the minimum size of a grid required for a
straight line drawing?
23Lower Bound
24A restricted class of plane graphs may have more
compact grid drawing.
Triangulated plane graph
3-connected graph
254-connected ?
disconnected
not 4-connected
26How much area is required for 4-connected plane
graphs?
27Straight line grid drawing
Miura et al. 01
Input 4-connected plane graph G
Output a straight line grid
drawing Grid Size
H lt n/2
Area
W lt n/2
28Miura et al. 01
Schnyder 90
4-connected plane graph G
plane graph G
n-2
H lt n/2
W lt n/2
n-2
.
Arean
Arealtn /4
.
2
2
29The algorithm of Miura et al. is best possible
30Main idea
G
31Draw a graph G on the plane nicely
Straight line drawing
A convex drawing is a straight line drawing where
each face is drawn as a convex polygon.
Convex drawing
32Convex Drawing
Convex drawing
Tutte 1963
Every 3-connected planar graph has a convex
drawing.
A necessary and sufficient condition for a plane
graph to have a convex drawing. Thomassen
80
33Convex Drawing
Chiba et al. 84 O(n) time algorithm
Convex drawing
Tutte 1963
Every 3-connected planar graph has a convex
drawing
A necessary and sufficient condition for a plane
graph to have a convex drawing. Thomassen
80
34Convex Grid Drawing
Chrobak and Kant 97
Input 3-connected graph
Output convex grid drawing
n-2
n-2
Grid Size
Area
35Convex Grid Drawing
Miura et al. 2000
Input 4-connected plane graph
Output
Convex grid drawing
H
Grid Size
W
Half-perimeter
Area
36Miura et al. 2000
Chrobak and Kant 97
3-connected graph
4-connected graph
n-2
H
n-2
W
Area
Area
37The algorithm of Miura et al. is best possible
H
W
38Main idea
20
21
19
18
17
14
15
13
10
12
16
11
9
6
8
7
3
4
5
1
2
1 4-canonical decomposition
2 Find paths
O(n)NRN97
3 Decide x-coordinates
Time complexity O(n)
39VLSI Floorplanning
B
A
F
E
C
G
D
Interconnection graph
40VLSI Floorplanning
B
B
A
A
F
F
E
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
41VLSI Floorplanning
B
B
A
A
F
F
E
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
42VLSI Floorplanning
B
B
A
A
F
F
E
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
43VLSI Floorplanning
B
B
A
A
F
F
E
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
Dual-like graph
44VLSI Floorplanning
B
B
A
A
F
F
E
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
Dual-like graph
Add four corners
45VLSI Floorplanning
B
B
A
A
F
F
E
Rectangular drawing
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
Dual-like graph
Add four corners
46Rectangular Drawings
Plane graph G of
Input
47Rectangular Drawings
corner
Rectangular drawing of
G
Plane graph G of
Output
Input
48Rectangular Drawings
corner
Rectangular drawing of
G
Plane graph G of
Output
Input
Each vertex is drawn as a point.
49Rectangular Drawings
corner
Rectangular drawing of
G
Plane graph G of
Output
Input
Each vertex is drawn as a point.
Each edge is drawn as a horizontal or a vertical
line segment.
50Rectangular Drawings
corner
Rectangular drawing of
G
Plane graph G of
Output
Input
Each vertex is drawn as a point.
Each edge is drawn as a horizontal or a vertical
line segment.
Each face is drawn as a rectangle.
51Not every plane graph has a rectangular drawing.
52Thomassen 84,
Necessary and sufficient condition
Rahman, Nakano and Nishizeki 98
Linear-time algorithms
Rahman, Nakano and Nishizeki 02
Linear algorithm for the case where corners are
not designated in advance
53A Necessary and Sufficient Condition by Thomassen
84
plane graph
G
four vertices of degree 2 are designated as
corners
G has a rectangular drawing if and only if
every 2-legged cycle in G contains at least two
designated vertices and
every 3-legged cycle in G contains at least one
designated vertex.
2-legged cycles
3-legged cycles
54A Necessary and Sufficient Condition by Thomassen
84
plane graph
G
four vertices of degree 2 are designated as
corners
G has a rectangular drawing if and only if
every 2-legged cycle in G contains at least two
designated vertices and
every 3-legged cycle in G contains at least one
designated vertex.
2-legged cycles
55A Necessary and Sufficient Condition by Thomassen
84
plane graph
G
four vertices of degree 2 are designated as
corners
G has a rectangular drawing if and only if
every 2-legged cycle in G contains at least two
designated vertices and
every 3-legged cycle in G contains at least one
designated vertex.
2-legged cycles
3-legged cycles
56A Necessary and Sufficient Condition by Thomassen
84
plane graph
G
four vertices of degree 2 are designated as
corners
G has a rectangular drawing if and only if
every 2-legged cycle in G contains at least two
designated vertices and
every 3-legged cycle in G contains at least one
designated vertex.
Bad cycles
2-legged cycles
3-legged cycles
57Outline of the Algorithm of Rahman et al.
58Outline of the Algorithm of Rahman et al.
59Outline of the Algorithm of Rahman et al.
60Outline of the Algorithm of Rahman et al.
61Outline of the Algorithm of Rahman et al.
62Outline of the Algorithm of Rahman et al.
63(No Transcript)
64Bad cycle
65Bad cycle
Bad cycle
66Partition-pair
67Splitting
Partition-pair
68Partition-pair
69Partition-pair
70Partition-pair
Rectangular drawing
71Time complexity O(n)
Partition-pair
Rectangular drawing
72Miura, Haga, N. 03, Working paper
Rectangular drawing of plane graph G with ? 4
73G
74G
Gd
75G
Gd
perfect matching
76G
77VLSI Floorplanning
B
B
A
A
F
F
E
Rectangular drawing
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
78VLSI Floorplanning
B
B
A
A
F
F
E
Rectangular drawing
E
C
G
C
G
D
D
VLSI floorplan
Interconnection graph
Unwanted adjacency
Not desirable for MCM floorplanning and for some
architectural floorplanning.
79B
B
A
F
A
F
E
G
C
E
C
G
D
D
MCM Floorplanning
Sherwani Architectural Floorplanning
Munemoto, Katoh, Imamura
Interconnection graph
80B
B
A
F
A
F
E
G
C
E
C
G
D
D
MCM Floorplanning Architectural Floorplanning
Interconnection graph
81B
B
A
F
A
F
E
G
C
E
C
G
D
D
MCM Floorplanning Architectural Floorplanning
Interconnection graph
Dual-like graph
82B
B
A
F
A
F
E
G
C
E
C
G
D
D
MCM Floorplanning Architectural Floorplanning
Interconnection graph
Dual-like graph
83B
B
A
F
A
F
E
G
C
E
C
G
D
D
MCM Floorplanning Architectural Floorplanning
Interconnection graph
Dual-like graph
84Box-Rectangular drawing
B
B
A
F
A
F
E
dead space
G
C
E
C
G
D
D
MCM Floorplanning Architectural Floorplanning
Interconnection graph
Dual-like graph
85Box-Rectangular Drawing
b
a
c
d
Plane multigraph G
Input
86Box-Rectangular Drawing
a
b
b
a
d
c
c
d
Box-rectangular drawing
Plane multigraph G
Input
Output
87Box-Rectangular Drawing
a
b
b
a
d
c
c
d
Box-rectangular drawing
Plane multigraph G
Input
Output
- Each vertex is drawn as a rectangle.
88Box-Rectangular Drawing
a
b
b
a
d
c
c
d
Box-rectangular drawing
Plane multigraph G
Input
Output
- Each vertex is drawn as a rectangle.
- Each edge is drawn as a horizontal or a
vertical line segment.
89Box-Rectangular Drawing
a
b
b
a
d
c
c
d
Box-rectangular drawing
Plane multigraph G
Input
Output
- Each vertex is drawn as a rectangle.
- Each edge is drawn as a horizontal or a
vertical line segment. - Each face is drawn as a rectangle.
90Rahman et al. 2000
A necessary and sufficient condition for a plane
multigraph to have a box-rectangular drawing.
91Algorithm of Rahman et al.
Main Idea Reduction to a rectangular
drawing problem
92Outline
G
93Replace each vertex of degree four or more by a
cycle
Outline
G
94Outline
G
linear time
RNN98a
Rectangular drawing
95Outline
G
linear time
RNN98a
Box-rectangular drawing
96Outline
Time complexity O(n)
G
linear time
RNN98a
Box-rectangular drawing
97Orthogonal Drawings
f
g
e
h
d
i
c
b
a
plane graph G
Input
98Orthogonal Drawings
i
f
g
h
e
g
h
d
f
e
d
i
c
c
b
a
b
a
plane graph G
Output
Input
99Orthogonal Drawings
i
f
g
h
e
g
h
bends
d
f
e
d
i
c
c
b
a
b
a
plane graph G
Output
Input
Each edge is drawn as an alternating sequence of
horizontal and vertical line segments.
100Orthogonal Drawings
i
f
g
h
e
g
bend
h
d
f
e
d
i
c
c
b
a
b
a
plane graph G
Output
Input
Each edge is drawn as an alternating sequence of
horizontal and vertical line segments.
Each vertex is drawn as a point.
101Applications
Entity-relationship diagrams
Flow diagrams
102Applications
Circuit schematics
Minimization of bends reduces the number of
vias or throughholes, and hence reduces VLSI
fabrication costs.
103Objective
i
f
g
h
e
g
h
9 bend
d
f
e
d
i
c
c
b
a
b
a
plane graph G
g
f
4 bends
h
To minimize the number of bends in an orthogonal
drawing.
e
i
d
a
c
b
minimum number of bends.
104Bend-Minimum Orthogonal Drawing
Garg and Tamassia 96
plane graph of ? 4
time for
Idea
reduction to a minimum cost flow problem
Rahman, Nakano and Nishizeki 99
Linear
for 3-connected cubic plane graph
Idea
reduction to a rectangular drawing problem.
Rahman and Nishizeki 02
Linear
for plane graph of ?3
105Outline of the algorithm of RNN99
106Open Problems and Future Research Direction
More area-efficient straight-line or convex
drawing algorithms.
Prescribed face areas
Prescribed length of some edges
Prescribed positions of some vertices
107Book
Planar Graph Drawing by Takao Nishizeki Md.
Saidur Rahman
http//www.nishizeki.ecei.tohoku.ac.jp/nszk/saidur
/gdbook.html
108Book
Planar Graph Drawing by Takao Nishizeki Md.
Saidur Rahman
http//www.nishizeki.ecei.tohoku.ac.jp/nszk/saidur
/gdbook.html
109ISAAC in Sendai, Tohoku
Probably 2007
110Sendai
Kyoto
Tokyo
111Thank You
112Properties of a drawing of G(C)
x
x
y
z
z
y
orthogonal drawing of G(C)
minimum number of bends
the six open halflines are free
113Main idea
114Main idea
19
18
17
14
15
13
10
12
16
11
9
6
8
7
3
4
5
1
2
Add a group of vertices one by one.
4-canonical decomposition
115Main idea
19
18
17
14
15
13
10
12
16
11
9
6
8
7
3
4
5
1
2
Add a group of vertices one by one.
4-canonical decomposition
116Main idea
20
21
19
18
17
14
15
13
10
12
16
11
9
6
8
7
3
4
5
1
2
14-canonical decomposition
2 Find paths
O(n)NRN97
3 Decide x-coordinates
Time complexity O(n)
1174-canonical decompositionNRN97
(a generalization of st-numbering)
G
1184-canonical decompositionNRN97
(a generalization of st-numbering)
1194-canonical decompositionNRN97
(a generalization of st-numbering)
1204-canonical decompositionNRN97
(a generalization of st-numbering)
1214-canonical decompositionNRN97
(a generalization of st-numbering)
face
U9
1224-canonical decompositionNRN97
(a generalization of st-numbering)
1234-canonical decompositionNRN97
(a generalization of st-numbering)
face
1244-canonical decompositionNRN97
O(n)
(a generalization of st-numbering)
17
14
13
6
G
125Orthogonal Drawings
i
f
g
h
e
g
h
9 bends
d
f
e
i
d
c
c
b
a
b
a
plane graph G
Input
Output
Each edge is drawn as an alternating sequence of
horizontal and vertical line segments.
g
f
Each vertex is drawn as a point.
h
Applications
e
i
d
Circuit schematics, Data-flow diagrams,
Entity-relationship diagrams T87, BK97.
a
c
b
4 bends
Objective
an orthogonal drawing with the minimum number of
bends.
To minimize the number of bends in an orthogonal
drawing.
126Known Result
Garg and Tamassia GT96
time algorithm for finding an orthogonal
drawing of a plane graph of ? 4 with the
minimum number of bends.
Idea
reduction to a minimum cost flow problem
Rahman, Nakano and Nishizeki RNN99
A linear time algorithm to find an orthogonal
drawing of a 3-connected cubic plane graph with
the minimum number of bends.
Idea
reduction to a rectangular drawing problem.
Rahman and Nishizeki RN02
A linear time algorithm to find an orthogonal
drawing of a plane graph of ?3 with the
minimum number of bends.
Idea
reduction to a no-bend drawing problem.
127Outline of the algorithm of RNN99
b
b
c
c
a
a
d
d
b
a
b
a
d
c
orthogonal drawings
rectangular drawing of
c
d
orthogonal drawing of G
Properties of a drawing of G(C)
x
x
y
z
z
y
orthogonal drawing of G(C)
minimum number of bends
the six open halflines are free
128Rectangular Drawings
corner
Rectangular drawing of
G
Plane graph G of
Output
Input
Each vertex is drawn as a point.
Each edge is drawn as a horizontal or a vertical
line segment.
Each face is drawn as a rectangle.
Not every plane graph has a rectangular drawing.
Thomassen 84, Rahman, Nakano and Nishizeki 02
A necessary and sufficient condition.
Rahman, Nakano and Nishizeki 98, 02
A linear time algorithm
129Rectangular Drawing Algorithm of RNN98
Input
Partition-pair
Splitting
130Partition-pair
rectangular drawing of each subgraph
131Rectangular Drawings
Modification of drawings patching
132Plane multigraph
Input
Output
- Each vertex is drawn as a (possibly degenerated)
rectangle on an integer grid. - Each edge is drawn as a horizontal or a vertical
line segment along grid line without bend. - Each face is drawn as a rectangle.
Rahman, Nakano and Nishizeki RNN00
A necessary and sufficient condition.
A linear-time algorithm.
Reduce the problem to a rectangular drawing
problem.
133Conclusions
We surveyed the recent algorithmic results on
various drawings of plane graphs.
Open Problems
Rectangular drawings of plane graphs of ? 4.
Efficient algorithm for bend-minimal orthogonal
drawings of plane graphs of ? 4
Parallel algorithms for drawing of plane graphs.
134Application
VLSI floorplanning
Floor plan
Interconnection Graph
135Insertion of four corners
Dual-like graph
136Application
VLSI floorplanning
Floor plan
Interconnection Graph
137st-numberingE79(2-connected graph)
(1) (1,n) is an edge of G
(2) Each vertex k, 2 lt k lt n-1, has at
least one neighbor and at least one upper neighbor
11
n12
10
9
8
7
5
4
6
3
2
1
138Step 1 4-canonical ordering KH97
(4-connected graph)
(a generalization of st-numbering)
n18
n-117
(1) (1,2) and (n,n-1) are edges on the outer face
16
15
12
14
(2) Each vertex k, 3 lt k lt n-2, has at least
two lower neighbors and has at least two upper
neighbors
10
13
11
9
8
5
6
4
7
3
2
1
139Step 2 Divide G into Gand G
n18
n-117
16
15
12
14
10
13
11
8
5
6
4
7
3
2
1
140Step 3 Draw G in an isosceles right-angled
triangle
9
8
5
6
G
7
4
V n/2
3
2
1
slope lt 1
141Step 3 Draw G in an isosceles right-angled
triangle
9
8
5
6
G
7
4
V n/2
3
2
1
1
2
???????? gt 1
???????? lt 1
x-??????
x-??
1???????????1 2?????1??2?????????????x-??
142?????????
3
Initialization
2
1
1???????????1 2?????1??2?????????????x-??
143The drawing of the path passing through all ks
neighbors is weakly convex
k
weakly convex
k
not weakly convex
144The rightmost neighbor of k is higher than the
leftmost neighbor
Case 1k has exactly one highest neighbor
k
145The rightmost neighbor of k is higher than the
leftmost neighbor
Case 2k has exactly two or more highest neighbor
k
146Drawing of G
3
1
2
147Drawing of G
shift
148Drawing of G
149Drawing of G
shift
150Drawing of G
151Drawing of G
shift
152Drawing of G
153Drawing of G
shift
154Drawing of G
155Drawing of G
shift
156Drawing of G
157Drawing of G
shift
158Drawing of G
159Drawing of G
G
Shift one time for each vertex
160Step 5 Combine the drawing of G and G
W/2
1
W/2
W lt n/2 -1
161Step 5 Combine the drawing of G and G
W/2
1
????gt1
W/2
W lt n/2 -1
???????? lt 1
162Step 5 Combine the drawing of G and G
????gt1
???????? lt 1
163Step 5 Combine the drawing of G and G
x-??
164Step 5 Combine the drawing of G and G
W/2
1
W/2
W lt n/2 -1
165Miura et al. 01
Input 4-connected plane graph G
Output a straight line grid drawing
Grid Size
H lt n/2
(W H lt
n-1) W lt
n/2 -1, H lt n/2
W lt n/2 -1
Area
W x H lt
The algorithm is best possible
H n/2
W n/2 -1
166Objective
i
h
g
9 bends
g
f
h
f
e
i
e
d
d
a
c
b
c
4 bends
b
a
an orthogonal drawing with the minimum number of
bends.
To minimize the number of bends in an orthogonal
drawing.