Planar Graphs in 2 Dimensions - SCHOOL OF COMPUTER SCIENCE
Transcript of Planar Graphs in 2 Dimensions - SCHOOL OF COMPUTER SCIENCE
Planar Graphs in 21/2 Dimensions
Don Sheehy
1
21/2 Dimensions
2
21/2 Dimensions
2
21/2 Dimensions
2
Cast of Characters
3
Cast of Characters
James Clerk Maxwell
Luigi Cremona
3
Cast of Characters
James Clerk Maxwell
Luigi Cremona
Ernst Steinitz
3
Cast of Characters
James Clerk Maxwell
Luigi Cremona
Ernst Steinitz
W. T. Tutte
3
Planar Graphs
4
Planar Graphs
5
Planar Graphs
5
Planar Graphs
5
Planar Graphs
5
Planar Graphs
5
Planar Graphs
5
Planar Graphs
5
Duality
6
Duality
6
Duality
6
Polar Polytopes
7
Polar Polytopes
A◦= {x ∈ R
d | a · x ≤ 1,∀a ∈ A}
7
The Maxwell-Cremona Correspondence
8
Equilibrium Stresses
9
Equilibrium Stresses
9
Equilibrium Stresses
9
Equilibrium Stresses
9
Equilibrium Stresses
9
The Maxwell-Cremona Correspondence
There is a 1-1 correspondence between “proper” liftings and equilibrium stresses
of a planar straight line graph.
10
The Maxwell-Cremona Correspondence
11
The Maxwell-Cremona Correspondence
11
The Maxwell-Cremona Correspondence
11
The Maxwell-Cremona Correspondence
11
The Maxwell-Cremona Correspondence
11
The Maxwell-Cremona Correspondence
11
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Equilibrium Stresses
12
Reciprocal Diagrams from Liftings
13
Reciprocal Diagrams from Liftings
13
Reciprocal Diagrams from Liftings
13
Reciprocal Diagrams from Liftings
13
Reciprocal Diagrams from Liftings
13
The Maxwell-Cremona Corresondence
Equilibrium Stresses
Reciprocal Diagrams
Liftings
14
Other Famous Reciprocal Diagrams
Delaunay Triangulation
Voronoi Diagram
15
Other Famous Reciprocal Diagrams
Delaunay Triangulation
Voronoi Diagram
Weighted
Weighted
15
Other Famous Reciprocal Diagrams
Delaunay Triangulation
Voronoi Diagram
2½ dimensional polarity
Weighted
Weighted
15
How to Draw a Graph
16
Tutte’s Algorithm
1. Fix one face of a simple, planar, 3-connected graph in convex position.
2. Place each other vertex at the barycenter (centroid) of its neighbors.
The result is a non-crossing, convex drawing.
17
Spring Interpretation
18
Spring Interpretation
18
Computing Forces
v ∈ R2
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
= dvv −
∑
u∼v
uv
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
= dvv −
∑
u∼v
u
F = LV
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
L = D − A
= dvv −
∑
u∼v
u
F = LV
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
L = D − A
= dvv −
∑
u∼v
u
F = LV
degrees
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
L = D − A
= dvv −
∑
u∼v
u
F = LV
degrees adjacency
v
19
Computing Forces
v ∈ R2
Fv =∑
u∼v
(v − u)
L = D − A
= dvv −
∑
u∼v
u
F = LV
degrees adjacency
The Laplacian!
v
19
Computing Forces
LV = F
20
Computing Forces
LV = F = 0?
20
Computing Forces
LV = F = 0? V1: boundaryV2: interior
20
Computing Forces
LV = F = 0?
[
L1 BT
B L2
] [
V1
V2
]
=
[
F ′
0
]
V1: boundaryV2: interior
20
Computing Forces
LV = F = 0?
[
L1 BT
B L2
] [
V1
V2
]
=
[
F ′
0
]
BV1 + L2V2 = 0
V1: boundaryV2: interior
20
Computing Forces
LV = F = 0?
[
L1 BT
B L2
] [
V1
V2
]
=
[
F ′
0
]
BV1 + L2V2 = 0
V2 = −L−1
2B V1
V1: boundaryV2: interior
20
Computing Forces
LV = F = 0?
[
L1 BT
B L2
] [
V1
V2
]
=
[
F ′
0
]
BV1 + L2V2 = 0
V2 = −L−1
2B V1( )
V1: boundaryV2: interior
20
Monotone PathsPick a direction and a vertex. There is a monotone path in that direction from the vertex to the boundary.
21
Monotone PathsPick a direction and a vertex. There is a monotone path in that direction from the vertex to the boundary.
21
Monotone PathsPick a direction and a vertex. There is a monotone path in that direction from the vertex to the boundary.
21
Planar, 3-Connected Graphs
22
Planar, 3-Connected Graphs
➡ No K5 or K3,3 minors
22
Planar, 3-Connected Graphs
➡ No K5 or K3,3 minors
➡ Removing a face does not disconnect the graph.
22
Planar, 3-Connected Graphs
➡ No K5 or K3,3 minors
➡ Removing a face does not disconnect the graph.
➡ No face has a diagonal.
22
Double Crossing a FaceLemma: No two disjoint paths have interleaved endpoints on a face.
23
Double Crossing a FaceLemma: No two disjoint paths have interleaved endpoints on a face.
23
Double Crossing a FaceLemma: No two disjoint paths have interleaved endpoints on a face.
23
Double Crossing a FaceLemma: No two disjoint paths have interleaved endpoints on a face.
23
Double Crossing a FaceLemma: No two disjoint paths have interleaved endpoints on a face.
23
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo ZigZags
24
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Crossings
25
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte’s AlgorithmNo Overlaps
26
Tutte and Maxwell-Cremona
27
Tutte and Maxwell-Cremona
➡ Weirdness on the outer face.
27
Tutte and Maxwell-Cremona
➡ Weirdness on the outer face.
➡ Lifting still works, except outer face.
27
Tutte and Maxwell-Cremona
➡ Weirdness on the outer face.
➡ Lifting still works, except outer face.
➡ Lifting is convex.
27
Steinitz’s Theorem
28
Steinitz’s Theorem
A graph G is the 1-skeleton of a3-polytope if and only if it is
simple, planar, and 3-connected.
29
Steinitz’s Theorem
Claim: If the graph has a triangle, then the Tutte embedding followed by the Maxwell-Cremona lifting gives the desired polytope.
30
Steinitz’s Theorem
Claim: If the graph has a triangle, then the Tutte embedding followed by the Maxwell-Cremona lifting gives the desired polytope.
Fix the triangle as the outer face.
30
Steinitz’s Theorem
Claim: If the graph has a triangle, then the Tutte embedding followed by the Maxwell-Cremona lifting gives the desired polytope.
Fix the triangle as the outer face.
After the lifting, the triangle must lie on a plane.
30
Steinitz’s Theorem
Question: What if there is no triangle?
31
Steinitz’s Theorem
Question: What if there is no triangle?Answer: Dualize (the dual has a triangle)
31
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
|E| =1
2
∑
f∈F
|f |
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
|E| =1
2
∑
f∈F
|f |
∀v δ(v) ≥ 4 ⇒ |E| ≥ 2|V | (No degree 3)
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
|E| =1
2
∑
f∈F
|f |
∀v δ(v) ≥ 4 ⇒ |E| ≥ 2|V |
∀f |f | ≥ 4 ⇒ |E| ≥ 2|F |
(No degree 3)
(No triangles)
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
|E| =1
2
∑
f∈F
|f |
∀v δ(v) ≥ 4 ⇒ |E| ≥ 2|V |
∀f |f | ≥ 4 ⇒ |E| ≥ 2|F |
(No degree 3)
(No triangles)
|E|
2− |E| +
|E|
2≥ 2
32
Steinitz’s TheoremLemma: Every 3-connected, planar graph has a triangle or a vertex of degree 3.|V |− |E| + |F | = 2
|E| =1
2
∑
v∈V
δ(v)
|E| =1
2
∑
f∈F
|f |
∀v δ(v) ≥ 4 ⇒ |E| ≥ 2|V |
∀f |f | ≥ 4 ⇒ |E| ≥ 2|F |
(No degree 3)
(No triangles)
|E|
2− |E| +
|E|
2≥ 2
0 ≥ 2
32
Steinitz’s Theorem
So, with the Tutte embedding and the Maxwell-Cremona Correspondence, we can construct a polytope with 1-skeleton isomorphic to either the graph or its dual.
33
Steinitz’s Theorem
So, with the Tutte embedding and the Maxwell-Cremona Correspondence, we can construct a polytope with 1-skeleton isomorphic to either the graph or its dual.
If we have the dual, polarize.
33
Steinitz’s Theorem
So, with the Tutte embedding and the Maxwell-Cremona Correspondence, we can construct a polytope with 1-skeleton isomorphic to either the graph or its dual.
If we have the dual, polarize.
[Eades, Garvan 1995]
33
A Tour of Other Stuff
34
Rigidity and Unfolding
[Connelly, Demaine, Rote, 2000]
35
Greedy Routing
[Papadimitriou, Ratajczak, 2004]
[Morin, 2001]
36
Robust Geometric Computing
[Hopcroft and Kahn 1992]
37
Spectral Embedding
[Lovasz, 2000]
Correspondence between Colin de Verdiere matrices and Steinitz representations
38
Spectral Embedding
[Lovasz, 2000]
Correspondence between Colin de Verdiere matrices and Steinitz representations
It’s Maxwell-Cremona
38
...
39
Thank you.
40
Thank you.Questions?
40