optimizing cycles and bases
play

OptimizingCyclesandBases AMSShortCourseonComputationalTopology - PowerPoint PPT Presentation

OptimizingCyclesandBases AMSShortCourseonComputationalTopology January5,2011 JeffErickson ComputerScienceDepartment UniversityofIllinoisatUrbanaChampaign jeffe@cs.illinois.edu


  1. Optimizing
Cycles
and
Bases AMS
Short
Course
on
Computational
Topology January
5,
2011 Jeff
Erickson Computer
Science
Department University
of
Illinois
at
Urbana‐Champaign jeffe@cs.illinois.edu

  2. Optimal
bases
and
cycles Given
a
topological
space
 X ,
find
any
of
the
following: Optimal
bases: ‣ Shortest
set
of
loops
that
generate
π 1 ( X ) ‣ Shortest
set
of
cycles
that
generate
 H 1 ( X ) ‣ Minimum‐weight
set
of
 k ‐cycles
that
generate
 H k ( X ) Optimal
cycles: ‣ Shortest
path/cycle
 homotopic 
to
a
given
path/cycle
in
 X ‣ Shortest
1‐cycle
 homologous 
to
a
given
1‐cycle
in
 X ‣ Minimum‐weight
k‐cycle
 homologous 
to
a
given
 k ‐cycle
in
 X 2

  3. Motivation:
localization [Dey,
Sun,
Cohen‐Steiner
2008] 3

  4. Motivation:
surface
parameterization [Tong,
Alliez,
Cohen‐Steiner,
Desbrun
2006] 4

  5. Motivation:
planar
embedding Any
genus‐ g 
graph
admits
a
 stochastic
embedding
into
a
 planar
graph
with
 expected
 distortion
O(log
 g ). ⇒ Lots
of
good
approximation
 algorithms
for
genus‐ g 
graphs. [Borradaile
Indyk
Lee
Sidiropoulos
’07–‘10] 5

  6. Motivation:
minimal
surfaces The
minimum‐area
surface
bounded
 by
a
knot
 K 
is
the
minimum‐cost
2‐ chain
homologous
to
 any 
surface
 bounded
by
 K [Sullivan
1990;
Dunfield,
Hirani
2010] 6

  7. Preliminaries 7

  8. Combinatorial
spaces ‣ Input
spaces
are
finite
 abstract 
simplicial,
cubical,
or
other
CW
 complexes ‣ Cells
have
non‐negative
weights/lengths
—
“geometry” ‣ We
only
consider
paths/cycles
in
the
1‐skeleton ‣ Otherwise,
we
don’t
know
how
to
compute
shortest
paths
efficiently! ‣ We
only
consider
k‐chains
in
the
k‐skeleton
(cellular
homology) ‣ Many
algorithms
in
this
talk
are
restricted
to
 2‐manifolds ‣ Homotopy
problems
are
 undecidable 
otherwise. 8

  9. Combinatorial
surfaces ‣ A
bunch
of
polygons
glued
together
into
a
surface ‣ Graph
 G 
embedded
on
a
2‐manifold
 Σ 
so
every
face
is
a
disk [Riemann
1857;
Heawood
1890;
Poincaré
1895;
Heffter
1898;
 Dehn
Heegaard
1907;
Kerékjártó
1923;
Radó
1937;
Edmonds
1960;
 Youngs
1963;
Gross
Tucker
1987
;
Mohar
Thomassen
2001] 9

  10. Combinatorial
surfaces ‣ Edges
of
 G 
have
non‐negative
weights ‣ We
consider
only
walks
on
(or
subgraphs
of)
the
graph
 G ‣ The
internal
geometry
of
faces
is
irrelevant/undefined 10

  11. Input
parameters Let
 n 
=
| V |
and
assume
genus
 g
 =
O( n 1–ε )
 Euler’s
formula
| V| –| E| +| F|
 =
2–2 g
 ⟹ 
| E |
=
O( n )
and
| F |
=
O( n )
 [Euler
1726,
L'Huilier
1811] 11

  12. Graph
duality Any
surface
graph
 G 
has
a
natural
 dual 
graph
 G *: ‣ vertices
of
 G* 
=
faces
of
 G ‣ edges
of
 G* 
=
edges
of
 G ‣ faces
of
 G* 
=
vertices
of
 G v v* f g f* g* u* u 12

  13. Tree‐cotree
decomposition A
 partition 
of
the
edges
of
G
into
three
disjoint
subsets: ‣ A
spanning
tree
 T ‣ A
spanning
cotree
 C 
—
C *
is
a
spanning
tree
of
 G * ‣ Leftover
edges
 L 
:=
 E \( C ∪ T )
—
Euler’s
formula
implies
| L |=2 g [von

Staudt
1847;
Eppstein
2003] 13

  14. Tree‐cotree
decomposition A
 partition 
of
the
edges
of
G
into
three
disjoint
subsets: ‣ A
spanning
tree
 T ‣ A
spanning
cotree
 C 
—
C *
is
a
spanning
tree
of
 G * ‣ Leftover
edges
 L 
:=
 E \( C ∪ T )
—
Euler’s
formula
implies
| L |=2 g [von

Staudt
1847;
Eppstein
2003] 13

  15. Tree‐cotree
decomposition A
 partition 
of
the
edges
of
G
into
three
disjoint
subsets: ‣ A
spanning
tree
 T ‣ A
spanning
cotree
 C 
—
C *
is
a
spanning
tree
of
 G * ‣ Leftover
edges
 L 
:=
 E \( C ∪ T )
—
Euler’s
formula
implies
| L |=2 g [von

Staudt
1847;
Eppstein
2003] 13

  16. Tree‐cotree
decomposition A
 partition 
of
the
edges
of
G
into
three
disjoint
subsets: ‣ A
spanning
tree
 T ‣ A
spanning
cotree
 C 
—
C *
is
a
spanning
tree
of
 G * ‣ Leftover
edges
 L 
:=
 E \( C ∪ T )
—
Euler’s
formula
implies
| L |=2 g [von

Staudt
1847;
Eppstein
2003] 13

  17. Optimal
homotopy
bases 14

  18. Optimal
homotopy
basis ‣ Given
a
combinatorial
surface
Σ
and
a
basepoint
 x ∈ Σ,
find
2 g 
loops
 of
minimum
total
length
that
generate
π 1 (Σ,
 x ). 15

  19. An
easy
homotopy
basis ‣ Let
( T ,
 L ,
 C )
be
 any 
tree‐cotree
decomposition
of
 G ‣ Computed
in
O( n )
time
via
depth‐
or
breadth‐first
search ‣ For
any
edge
 uv ∈ L,
let
ℓ( uv )
:=
 T [ x , u ] ⋅ uv ⋅ T[ v , x ] ‣ T [ s , t ]
=
unique
path
in
 T
 from
 s 
to
 t ‣ Computed
in
O(1)
time
per
edge ‣ ℓ( L )
:=
{ℓ( e )
|
 e ∈ L }
is
a
basis
for
π 1 (Σ,
 x ) ‣ Total
construction
time:
O( n
 + 
k )
=
O( ng ) [Eppstein
2003] 16

  20. A
greedy
homotopy
basis ‣ Let
( T ,
 L ,
 C )
be
the
 greedy 
tree‐cotree
decomposition
of
 G ‣ T 
:=
 shortest
path
tree 
rooted
at
 x ‣ C *
:=
 maximum
spanning
tree
 of 
G *
where
 w ( e *)
:=
|ℓ( e )| ‣ ℓ( L )
:=
{ℓ( e )
|
 e ∈ L }
is
the
shortest
basis
for
π 1 (Σ,
 x ) [Erickson,
Whittlesey
2005;
Colin
de
Verdière
2010] ‣ Textbook
algorithms
compute
 T 
and
 C *
in
O( n 
log
 n )
time [Dijkstra
1959;
Borůvka
1926;
Jarník
1930
=
Prim
1957;
Kruskal
1956] ‣ If
 g 
=
O( n 1–ε ),
both
 T 
and
 C *
can
be
computed
in
O( n )
time [Henzinger,
Klein,
Rao,
Subramanian
1997;
Borůvka
1926;
Mareš
2004] 17

  21. Summary
 ‣ Shortest
basis
of
π 1 (Σ,
 x )
can
be
computed
in
O( n
+
k )
=
O( gn )
time. ‣ If
no
basepoint
specified,
try
every
basepoint:
O( n 2 )
time. [Erickson,
Whittlesey
2005] 18

  22. Canonical
homotopy
basis ‣ A
homotopy
basis
with
any
fixed
incidence
pattern
(depending
 only
on
the
genus) ‣ The
shortest
homotopy
basis
is
 not 
necessarily
canonical! 3 4 2 1 3 2 4 1 19

  23. Canonical
homotopy
basis ‣ A
canonical
homotopy
basis
with
any
given
basepoint
can
be
 computed
in
O( gn )
time. [Dey,
Schipper
1995;
Lazarus,
Pocchiola,
Vegter,
Verroust
2001] ‣ Given
a
homotopy
basis
with
complexity
 k ,
the
shortest
 homotopic 
 basis
can
be
computed
in
O( g 4 nk 4 )
time. [Colin
de
Verdière,
Lazarus
2005;
Colin
de
Verdière,
Lazarus
2006]
 Open:
 Can
the
 shortest 
canonical
homotopy
basis
be
computed
in
 polynomial
time,
or
is
that
problem
NP‐hard? 20

  24. Optimal
homology
bases 21

  25. Optimal
homology
basis ‣ Given
a
combinatorial
surface
Σ,
find
2 g 
cycles
of
minimum
total
 length
that
generate
 H 1 (Σ). 22

  26. An
easy
homology
basis ‣ Let
( T ,
 L ,
 C )
be
 any 
tree‐cotree
decomposition
of
 G ‣ Computed
in
O( n )
time
via
depth‐
or
breadth‐first
search ‣ For
any
edge
 e ∈ L,
let
γ( uv )
be
the
unique
cycle
in
T ∪ e ‣ Computed
in
O(1)
time
per
edge ‣ {γ( e )
|
 e ∈ L }
is
a
basis
for
Η 1 (Σ) ‣ Total
construction
time:
O( n
 + 
k )
=
O( ng ) ‣ The
 shortest 
homology
basis
may
not
have
this
form. [Eppstein
2003] 23

  27. Shortest
homology
basis ‣ Fix
an
arbitrary
coefficient
 field 
 R. ‣ Each
cycle
in
the
shortest
homology
basis
over
 R
 is
also
a
loop
in
 the
greedy
 homotopy 
basis
at
some
basepoint. 

[Dey,
Sun,
Wang
2010] ‣ All
O( gn )
 candidate
cycles ,
along
with
vectors
encoding
their
 homology
classes,
can
be
computed
in
O( gn 2 )
time. [Erickson,
Whittlesey
2005] 24

  28. Shortest
homology
basis ‣ Because
 H 1 (Σ;
 R )
is
a
 vector
space ,
finding
the
shortest
basis
among
 the
candidate
cycles
is
a
 matroid
optimization 
problem. ‣ Solved
by
standard
greedy
algorithm
 [Kruskal
1956] B
 ← 
Ø for
each
candidate
cycle
γ
in
increasing
length
order if
γ
is
linearly
independent
from
B add
γ
to
B ‣ Greedy
algorithm
runs
in
O( gn 
log
 n 
+
 g 3
 n )
time ‣ Sort
homology
vectors;
use
Gaussian
elimination
to
test
independence [Erickson,
Whittlesey
2005] 25

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend