Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff...

47
Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign

Transcript of Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff...

Page 1: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

Computing Optimal Graphs on SurfacesComputing Optimal Graphs on Surfaces

Jeff Erickson

University of Illinois at Urbana-Champaign

Jeff Erickson

University of Illinois at Urbana-Champaign

Page 2: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

2

Optimal subgraphsOptimal subgraphs

Given a weighted undirected graph, find an optimal (weighted) subgraph with some desired combinatorial structure.

Minimum spanning treeShortest pathsShortest cycle (girth)Perfect matchingMaximum flowMinimum cutHamiltonian path/cycleSteiner tree

Given a weighted undirected graph, find an optimal (weighted) subgraph with some desired combinatorial structure.

Minimum spanning treeShortest pathsShortest cycle (girth)Perfect matchingMaximum flowMinimum cutHamiltonian path/cycleSteiner tree

Page 3: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

3

Optimal geometric graphsOptimal geometric graphsGiven a set of points in the plane, find an

optimal geometric graph with some desired combinatorial or geometric structure

closest pair / diameterconvex hullDelaunay triangulation/Voronoi diagram

Gabriel graph, EMST, β-skeleta, α-shapes, crust, ...

minimum weight triangulationEuclidean minimum matching, TSP, Steiner tree, ...Fermat-Weber problem

Given a set of points in the plane, find an optimal geometric graph with some desired combinatorial or geometric structure

closest pair / diameterconvex hullDelaunay triangulation/Voronoi diagram

Gabriel graph, EMST, β-skeleta, α-shapes, crust, ...

minimum weight triangulationEuclidean minimum matching, TSP, Steiner tree, ...Fermat-Weber problem

Page 4: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

4

Why do we care?Why do we care?

The problems are easy to state.

Some are easy; some are hard; some are impossible; some are open.

The easy problems are incredibly useful for deriving more complex algorithms.

The hard problems are equally useful for proving lower bounds.

The problems are easy to state.

Some are easy; some are hard; some are impossible; some are open.

The easy problems are incredibly useful for deriving more complex algorithms.

The hard problems are equally useful for proving lower bounds.

Page 5: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

5

Optimal surface graphsOptimal surface graphs

Given a surface, find an optimal embedded graph with some desired combinatorial, geometric, or topological structure.

Given a surface, find an optimal embedded graph with some desired combinatorial, geometric, or topological structure.

Page 6: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

6

What’s a surface?What’s a surface?

Page 7: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

7

What’s a surface?What’s a surface?

Page 8: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

8

No really, what’s a surface?No really, what’s a surface?

A 2-manifold is a topological space in which every point lies in an open neighborhood homeomorphic to the plane.

Equivalently, a 2-manifold is a collection of triangles whose edges are glued together in pairs.

[Dehn, Heegaard ‘07; Radó ‘37]

A 2-manifold is a topological space in which every point lies in an open neighborhood homeomorphic to the plane.

Equivalently, a 2-manifold is a collection of triangles whose edges are glued together in pairs.

[Dehn, Heegaard ‘07; Radó ‘37]

Page 9: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

9

Combinatorial surfaceCombinatorial surface

An abstract 2-manifold M and a weighted graph G embedded on M so that every face is a disk.

Consider only curves that are walks in G.

The length of a curve is the sum of the weights of its edges.

An abstract 2-manifold M and a weighted graph G embedded on M so that every face is a disk.

Consider only curves that are walks in G.

The length of a curve is the sum of the weights of its edges.

Page 10: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

10

ExampleExample

Page 11: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

11

Shortest pathsShortest paths

Shortest paths are defined in the standard graph-theoretic sense.

O(n log n) time [Dijkstra 53]

O(n) if genus is o(n1-ε) [Henzinger et al. 97]

Shortest paths are defined in the standard graph-theoretic sense.

O(n log n) time [Dijkstra 53]

O(n) if genus is o(n1-ε) [Henzinger et al. 97]

Page 12: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

12

Single cyclesSingle cycles

Page 13: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

13

CyclesCycles

A cycle is non-contractible if it cannot be continuously deformed to a point.

A simple cycle is non-contractible if it does not bound a disk.

A simple cycle γ is non-separating if M\γ is connected

A cycle is non-contractible if it cannot be continuously deformed to a point.

A simple cycle is non-contractible if it does not bound a disk.

A simple cycle γ is non-separating if M\γ is connected

Page 14: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

14

CyclesCycles

non-separatingnon-separating contractiblecontractiblenon-contractibleseparating

non-contractibleseparating

Page 15: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

15

The 3-path propertyThe 3-path propertyFor any three paths with the same

endpoints, if two of the cycles they form are separating then the third cycle is also separating.

For any three paths with the same endpoints, if two of the cycles they form are separating then the third cycle is also separating.

Page 16: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

16

The shortest non-separating cycle consists of two shortest paths between any pair of antipodal points.

The shortest non-separating cycle consists of two shortest paths between any pair of antipodal points.

The 3-path propertyThe 3-path property

Otherwise, the actual shortest path would create a shorter non-separating cycle.

Otherwise, the actual shortest path would create a shorter non-separating cycle.

Page 17: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

17

Shortest nontrivial cyclesShortest nontrivial cycles

3-path property ⇒ O(n3) [Mohar Thomassen 98]

Dijkstra ⇒ O(n2 log n) [E Har-Peled 02]

O(n3/2 log n) for constant genus [Cabello Mohar 05]

Problem 1: O(n log n) for constant genus?

Problem 2: o(n2) in general?

3-path property ⇒ O(n3) [Mohar Thomassen 98]

Dijkstra ⇒ O(n2 log n) [E Har-Peled 02]

O(n3/2 log n) for constant genus [Cabello Mohar 05]

Problem 1: O(n log n) for constant genus?

Problem 2: o(n2) in general?

Page 18: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

18

Shortest separating cycle?Shortest separating cycle?

Problem 3: Is it NP-hard to find the shortest non-contractible separating cycle?

The 3-path property no longer holds.

The cycle is not necessarily simple.

Finding a simple cycle that splits the genus exactly in half is NP-hard. [Cabello, Colin de Verdière]

Problem 3: Is it NP-hard to find the shortest non-contractible separating cycle?

The 3-path property no longer holds.

The cycle is not necessarily simple.

Finding a simple cycle that splits the genus exactly in half is NP-hard. [Cabello, Colin de Verdière]

Page 19: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

19

Cut graphsCut graphs

Page 20: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

20

Cut graphsCut graphsA subgraph H of G is a cut graph if M\H is a

topological disk.A subgraph H of G is a cut graph if M\H is a

topological disk.

Page 21: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

21

Computing the shortest cut graph is NP-hard, by a reduction from rectilinear Steiner tree.[E Har-Peled 02]

Computing the shortest cut graph is NP-hard, by a reduction from rectilinear Steiner tree.[E Har-Peled 02]

Shortest cut graphShortest cut graph

Hanan gridHanan grid

Page 22: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

22

Shortest cut graphShortest cut graph

O(n12g+6b-4) time for surfaces with genus g and b boundaries

O(log2 g)-approximation in O(g2n log n) time.

[E Har-Peled 02]

Problem 4: Tighten the approximation factor

Problem 5: How good an approximation can be computed in O(n log n) time?

O(n12g+6b-4) time for surfaces with genus g and b boundaries

O(log2 g)-approximation in O(g2n log n) time.

[E Har-Peled 02]

Problem 4: Tighten the approximation factor

Problem 5: How good an approximation can be computed in O(n log n) time?

Page 23: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

23

Partial cut graphPartial cut graphProblem 5: Is it NP-hard to compute the shortest graph H such that M\H has genus 0 (but possibly several boundaries)?

Problem 5: Is it NP-hard to compute the shortest graph H such that M\H has genus 0 (but possibly several boundaries)?

Page 24: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

24

System of loopsSystem of loops

A cut graph with one vertex, or equivalently,a set of 2g loops through a common basepoint

A cut graph with one vertex, or equivalently,a set of 2g loops through a common basepoint

Page 25: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

25

Shortest system of loopsShortest system of loops

The shortest system of loops with a given basepoint can be computed by a simple greedy algorithm in O(n log n + k) time, where k=O(gn) is the output size.

The shortest overall system of loops can be computed in O(n2log n) time.

[E Whittlesey 05]

The shortest system of loops with a given basepoint can be computed by a simple greedy algorithm in O(n log n + k) time, where k=O(gn) is the output size.

The shortest overall system of loops can be computed in O(n2log n) time.

[E Whittlesey 05]

Page 26: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

26

Canonical system of loopsCanonical system of loopsA system of loops with a fixed incidence

pattern (depending only on the genus)A system of loops with a fixed incidence

pattern (depending only on the genus)

1 2 1 2 3 4 3 41 2 1 2 3 4 3 4

1122

3344

33

44

2211

Page 27: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

27

Canonical system of loopsCanonical system of loops

The shortest system of loops is not necessarily canonical!

The shortest system of loops is not necessarily canonical!

1 2 3 1 2 4 3 41 2 3 1 2 4 3 4

1122

33

44

3344

2211

Page 28: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

28

Canonical system of loopsCanonical system of loops

Problem 6: How quickly can we construct the shortest canonical system of loops?

A canonical system of loops can be computed in O(gn) time.[Dey, Schipper 95; Lazarus et al. 01]

Problem 6: How quickly can we construct the shortest canonical system of loops?

A canonical system of loops can be computed in O(gn) time.[Dey, Schipper 95; Lazarus et al. 01]

Page 29: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

29

Tightening a system of loops

Tightening a system of loops

Given a system of loops of complexity k, the shortest system in the same homotopy class can be computed in O(g4nk4) time.[Colin de Verdiére, Lazarus 02; Colin de Verdiére, E 05]

Unfortunately, this does not give us the shortest canonical system!

Given a system of loops of complexity k, the shortest system in the same homotopy class can be computed in O(g4nk4) time.[Colin de Verdiére, Lazarus 02; Colin de Verdiére, E 05]

Unfortunately, this does not give us the shortest canonical system!

Page 30: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

30

HomotopyHomotopy

Page 31: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

31

Two paths are homotopic if one can be continuously deformed into the other, keeping the endpoints fixed at all times.

Two paths are homotopic if one can be continuously deformed into the other, keeping the endpoints fixed at all times.

HomotopyHomotopy

Page 32: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

32

Shortest homotopic pathShortest homotopic path

Given a path π of complexity k, the shortest path homotopic to π can be computed in time O(gn(log n + k)).[Colin de Verdiére, E 05]

Cut the surface into identical polygons with a collection of tight cycles: O(gn log n)

Glue polygons crossed by the path into a relevant region of the universal cover: O(gnk)

Find shortest path in the relevant region: O(gnk)

Given a path π of complexity k, the shortest path homotopic to π can be computed in time O(gn(log n + k)).[Colin de Verdiére, E 05]

Cut the surface into identical polygons with a collection of tight cycles: O(gn log n)

Glue polygons crossed by the path into a relevant region of the universal cover: O(gnk)

Find shortest path in the relevant region: O(gnk)

Page 33: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

33

Hexagonal decompositionHexagonal decomposition

Page 34: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

Universal coverUniversal cover

Page 35: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

35M. C. Escher, Circle Limit IV: Heaven and Hell (1960)M. C. Escher, Circle Limit IV: Heaven and Hell (1960)

Page 36: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

The relevant regionThe relevant region

Page 37: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

37

Shortest homotopic cycleShortest homotopic cycle

Two cycles are homotopic if one can be continuously deformed into the other.

The shortest cycle homotopic to a given cycle can be computed in time O(gnk log nk).[Colin de Verdiére, E 05]

Like shortest homotopic path, but the relevant region is now an annulus.

Two cycles are homotopic if one can be continuously deformed into the other.

The shortest cycle homotopic to a given cycle can be computed in time O(gnk log nk).[Colin de Verdiére, E 05]

Like shortest homotopic path, but the relevant region is now an annulus.

Page 38: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

38

Pants decompositionsPants decompositions

Page 39: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

39

Pants decompositionPants decompositionMaximal collection of simple, pairwise non-

homotopic cycles

Euler’s formula ⇒ 3g-3 cycles, decomposing the surface into 2g-2 pairs of pants

Maximal collection of simple, pairwise non-homotopic cycles

Euler’s formula ⇒ 3g-3 cycles, decomposing the surface into 2g-2 pairs of pants

Page 40: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

40

Shortest pants decompositionShortest pants decomposition

Problem 8: How quickly can we construct the shortest pants decomposition? Is it NP-hard?

The shortest pants decomposition homotopic to a given pants decomposition can be computed in time O(g2nk log nk) by tightening each cycle separately.[Colin de Verdiére, E 05]

Problem 8: How quickly can we construct the shortest pants decomposition? Is it NP-hard?

The shortest pants decomposition homotopic to a given pants decomposition can be computed in time O(g2nk log nk) by tightening each cycle separately.[Colin de Verdiére, E 05]

Page 41: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

41

Pants clusteringPants clusteringThis problem is open even when the

“surface” is just the plane minus a finite set of points!

This problem is open even when the “surface” is just the plane minus a finite set of points!

Goal: Minimize the total length of the clustering curves

Goal: Minimize the total length of the clustering curves

Page 42: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

42

Pants clustering?Pants clustering?

Problem 8.1: How quickly can we construct the minimum-length pants clustering of a point set? Is it NP-hard?

Assume L1 or L∞ metric to avoid nasty numerical problems ⇒ minimum rectilinear pants clustering

Problem 8.1: How quickly can we construct the minimum-length pants clustering of a point set? Is it NP-hard?

Assume L1 or L∞ metric to avoid nasty numerical problems ⇒ minimum rectilinear pants clustering

“Spongebob’s Problem”“Spongebob’s Problem”

Page 43: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

43

The greedy algorithm fails even in 1D

If points are collinear, optimal clusters are intervals ⇒ O(n2) time [E, Everett, Lazard, Lazarus]

O(1)-approximation in O(n log n) time via compressed quadtrees [Eppstein]

Optimal curves are not necessarily rectangles

Problem 8.1.1: Are the optimal curves convex?

The greedy algorithm fails even in 1D

If points are collinear, optimal clusters are intervals ⇒ O(n2) time [E, Everett, Lazard, Lazarus]

O(1)-approximation in O(n log n) time via compressed quadtrees [Eppstein]

Optimal curves are not necessarily rectangles

Problem 8.1.1: Are the optimal curves convex?

Partial results:Partial results:

Page 44: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

44

Maximal non-separating set of non-homotopic cycles, one for each “hole”

(Also half of a homology basis)

Maximal non-separating set of non-homotopic cycles, one for each “hole”

(Also half of a homology basis)

“Holy basis”“Holy basis”

Page 45: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

45

Handle decompositionHandle decompositionMaximal set of non-homotopic non-

contractible separating cycles, separating the “handles”

Maximal set of non-homotopic non-contractible separating cycles, separating the “handles”

Page 46: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

46

There are lots of interesting graphs that can be defined on any topological surface.

In most cases, we know almost nothing about finding optimal graphs: neither algorithms nor hardness results. Lots of fun open problems!

Are any of these really useful?Who knows? (But then again, who cares?)

There are lots of interesting graphs that can be defined on any topological surface.

In most cases, we know almost nothing about finding optimal graphs: neither algorithms nor hardness results. Lots of fun open problems!

Are any of these really useful?Who knows? (But then again, who cares?)

SummarySummary

Page 47: Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.

47

Thank you!Thank you!