Loading...

PPT – Shortest Path Problems on a Polyhedral Surface PowerPoint presentation | free to download - id: 1af421-MWNmO

The Adobe Flash plugin is needed to view this content

Shortest Path Problems on a Polyhedral Surface

Carola Wenk Atlas F. Cook IV University of Texas

at San Antonio

Shortest Paths on a Polyhedral Surface

- Why study shortest paths on a surface?
- Hike in the mountains
- Navigate the surface of Mars

- Convex polyhedral surfaces
- Arbitrary polyhedral surfaces

Our Results

- Convex polyhedron
- Give a linear-factor speedup for edge sequence

results of AARS97 - Compute a superset of all Q(M4) edge sequences

in O(M5) time - Compute the set of all edge sequences in

O(M52a(M)log M) time - Arbitrary polyhedral surface
- Maintain star unfolding over all edges in O(M4)

time - Applications
- Fréchet distance (linear factor speedup for

convex polyh.) - Diameter
- Shortest path maps

Edge Sequences

- An edge sequence is the
- sequence of edges crossed by a (shortest) path

End

E2

E1

Start

Edge Sequences Unfolding

- Sequence of edges crossed by a (shortest) path

E2

Unfold

E1

Edge Sequences Unfolding

- A shortest path on a convex 3D polyhedral surface

unfolds to a - straight line segment in 2D.
- A shortest path on a non-convex 3D polyhedral

surface unfolds to a polygonal path in 2D.

Star Unfolding

s

s

v4

v3

v4

v4

v3

v3

v2

v1

v1

v1

v2

v2

Polyhedral Surface

(1) Compute shortest paths to all M vertices

(2) Unfold along shortest paths

Star Unfolding, Core, Anticore

- s maps to M points s1, ,sM in the 2D unfolding

s1

s

v4

Star Unfolding

v3

s4

s2

v4

v3

v2

v1

core

v1

anticore

s3

v2

- One core region, and M anticore regions
- Compute star unfolding in O(M2) time

Star Unfolding

- t in anticore(si) d(s,t) si t
- t in core d(s,t) mini1, ,M si t

s1

s

Star Unfolding

v4

v3

t

s4

s2

v4

v3

v2

v1

d(s,t)

v1

s3

v2

? Compute a Voronoi Diagram of all source images

to answer logarithmic shortest path queries

within the core

Star Unfolding

- If P is convex, then the Star Unfolding is a

simple polygon AR91 - If P is non-convex, the Star Unfolding can

self-overlap

Star Unfolding

- Lemma If P is non-convex, even the core of the

Star Unfolding can self-overlap

Star Unfolding

- O(M) polyhedron edges in the core
- O(M2) cut polyhedron edges in the anticore

Edgelets

- Subdivision of polygon edges to describe

combinatorially distinct star unfoldings with the

source on the edges - Compute shortest paths between every two vertices
- ? O(M2) edgelets per edge, O(M3) edgelets total

Superset of Edge Sequences

- Theorem Construct a superset of all edge

sequences, on a convex polyhedron, in O(M5) time - Proof
- O(M3) edgelets
- For each source image si
- construct edge sequences to all O(M) anticore

edges in anticore(si) - construct edge sequences to all O(M) core edges

Edge Sequences Algorithm

- Algorithm
- Maintain the star unfolding as a source point s

varies continuously over all edges of P. - Maintain the kinetic Voronoi diagram as a source

point s varies continuously over all edges of P. - Extract shortest path edge sequences
- Continuous motion takes advantage of small

changes between adjacent events.

Maintaining the Star Unfolding

- Star Unfolding Event edgelet endpoint induces a

combinatorial change in the star unfolding - Between events
- Source images move on line segments AARS97
- Other vertices are fixed

s2

s1

s2

s1

s

s3

s3

s5

s5

s4

s4

Maintaining the Star Unfolding

- Handling a star unfolding event
- One shortest path to a vertex changes

combinatorially - Update two source images including their anticore

regions and all O(M) edges in these anticore

regions. - Update O(m) edges in the core.

s2

s1

s

s3

s5

s4

Maintaining the Star Unfolding

- Theorem Maintain a star unfolding as a source

point s varies continuously over all edges of P

in O(M4) time. - Proof
- O(M3) edgelets
- For each edgelet endpoint, update two source

images including their anticore regions, and all

O(M) edges in these anticore regions and in the

core.

- ? Linear factor faster than computing a new star

unfolding for each event.

Edge Sequences Algorithm

- Algorithm
- Maintain the star unfolding as a source point s

varies continuously over all edges of P. - Maintain the kinetic Voronoi diagram as a source

point s varies continuously over all edges of P. - Extract shortest path edge sequences
- Continuous motion takes advantage of small

changes between adjacent events.

Maintaining the Kinetic VD

- Maintain a kinetic Voronoi diagram as a source

point s varies continuously over all edges of P. - Kinetic Voronoi diagram AMGR98
- Sites are allowed to move
- Sites source images s1, ,sM of star unfolding
- Goal Maintain subdivision as sites move

Maintaining the Kinetic VD

- Between events
- Sites move on line segments
- Other vertices are fixed

s2

s1

s2

s1

s3

s

s3

s5

s5

s4

s4

Maintaining the Kinetic VD

- Voronoi Event
- A Voronoi edge appears or disappears.
- Each pair of moving sites defines O(M 2a(M))

Voronoi Events AMGR98. - Thus, M moving sites define
- O(M2) pairs and
- O(M2 . M 2a(M)) Voronoi Events

s1

s2

s3

s4

Maintaining the Kinetic VD

- Star Unfolding Event
- Two source images are removed and inserted in a

different place (together with a new anticore

region) - The new source images define new line segments,

which define O(M) new pairs of moving sites. - ? Each Star Unfolding Event defines O(M . M

2a(M)) Voronoi Events.

Maintaining the Kinetic VD

Theorem A kinetic VD of the source images can be

maintained in O(M5 2a(M) log M) time as the

source point s varies continuously over all edges

of P.

- Proof
- Star Unfolding Events O(M3)
- Voronoi Events O(M3 . M2 2a(M))
- Time per Voronoi Event O(log M)
- Total Time O(M5 2a(M) log M)

Edge Sequences Algorithm

- Algorithm
- Maintain the star unfolding as a source point s

varies continuously over all edges of P. - Maintain the kinetic Voronoi diagram as a source

point s varies continuously over all edges of P. - Extract shortest path edge sequences
- Continuous motion takes advantage of small

changes between adjacent events.

Extract Shortest Path Edge Sequences

- Between events
- Each source image si defines a
- parameterized Voronoi cell.
- Let E be an edge of the star unfolding.
- The unique edge sequence from si to E corresponds

to a shortest path iff the parameterized Voronoi

cell for si ever intersects E. - Upper envelope triangulation AARS97
- O(log M) time per parameterized Voronoi cell

E

si

Extract Shortest Path Edge Sequences

- Theorem Compute all ?(M4) shortest path edge

sequences on a convex polyhedral surface P with M

vertices in O(M5 2a(M) log M) time. - Improves AARS97 by a linear factor by using

continuous motion to take advantage of small

changes between adjacent events.

Applications

Applications

- Diameter
- Compute the diameter of a convex polyhedron in

O(M7log M) time. - Improves AARS97 by a linear factor
- Fréchet Distance
- Compute the Fréchet dist. between two polygonal

curves on a convex polyhedron in O(M6log2 M)

time. - Improves MY05 by a linear factor
- Shortest Path Maps
- Support O(log n) queries from any point on a line

segment, with O(M42a(M) log M) preprocessing time.

Diameter

Theorem Compute the diameter of a convex

polyhedral surface in O(M7log M) time.

- Proof
- O(M4) ridge free regions Induced by all shortest

paths between pairs of vertices same star

unfolding - Compute kinetic VD for first region in O(M4) time
- Process adjacent ridge free regions
- Update two sites ? O(M) pairs of sites in kinetic

VD, each defining O(M2) new Voronoi vertices

AARS97 - O(M3) new Voronoi vertices
- Find max of all O(M7) Voronoi vertex distance

functions in O(log n) time AARS97

Fréchet Distance

Theorem Compute the Fréchet dist. between two

poly-gonal curves on a convex polyhedron in

O(M6log2 M) time.

- Proof sketch
- Partition one polygonal curve into O(M3)

edgelets. - Maintain star unfolding over all edgelets in

O(M4) time - Free space cell for an anticore edge and an

edgelet - Constant complexity, despite parameterization of

anticore edge. O(M5) total complexity. - Free space cell for a core edge and an edgelet
- Union of M ellipses ? O(M2) complexity
- O(M3) complexity over all O(M) core edges, and

O(M6) total

Shortest Path Map

Theorem A shortest path map from a line segment

on a convex polyhedron can be built in O(M42a(M)

log M) time and supports queries in O(log2 n)

time.

- Proof
- Partition the line segment into O(M2) edgelets
- Maintain kinetic VD in O(M4 2a(M) log M) time.
- Queries take O(log2 n) time by DGKS96.

Conclusions

- Convex polyhedron
- Compute a superset of all Q(M4) edge sequences

in O(M5) time - Compute the set of all edge sequences in

O(M52a(M)log M) time - Arbitrary polyhedral surface
- Maintain star unfolding over all edges in O(M4)

time - Applications
- Fréchet distance (linear factor speedup for

convex polyh.) - Diameter, Shortest path maps
- Open question
- Can one compute all Q(M4) edge sequences in o(M5)

time?

Conclusion

- Our Main Result
- The ?(M4) shortest path edge sequences on a

convex polyhedral surface with M vertices can be

computed a linear factor faster than Agarwal97. - Applications
- Diameter, Fréchet Distance, Shortest Path Maps
- Future Work
- Can the ?(M4) shortest path edge sequences be

computed in o(M5) time?

References

- AARS97
- P. K. Agarwal, B. Aronov, J. ORourke, and C.

Schevon. Star Unfolding of a Polytope with

Applications. SIAM Journal on Computing, Society

for Industrial and Applied Mathematics, 1997, 26,

1689-1713 - AMGR98
- G. Albers, J. S. B. Mitchell, L. J. Guibas, and

T. Roos. Voronoi diagrams of moving points.

International Journal of Computational Geometry

and Applications, 1998, 8365380. - AR91
- B. Aronov, J. ORourke. Nonoverlap of the Star

Unfolding. SoCG, 1991, 105-114. - CR87
- J. Canny and J.H. Reif. New Lower Bound

Techniques for Robot Motion Planning Problems.

Proc. 28th IEEE Annual Symp. Foundations of

Computer Science, 1987, 49-60. - CHK04
- V. Chandru, R. Hariharan, and N. M. Krishnakumar.

Short-cuts on star, source and planar unfoldings.

Foundations of Software Technology and

Theoretical Computer Science (FSTTCS), 2004,

174185.

References

- CH96
- J. Chen and Y. Han. Shortest paths on a

polyhedron. International Journal of

Computational Geometry and Applications, 1996,

6127-144. - DGKS96
- O. Devillers, M. Golin, K. Kedem, S. Schirra.

Queries on Voronoi diagrams of moving points.

CGTA 6(5) 315-327, 1996. - MY05
- A. Maheshwari and J. Yi. On computing Fréchet

distance of two paths on a convex polyhedron.

21st European Workshop on Computational Geometry

(EuroCG), 2005. - M90
- D. M. Mount. The number of shortest paths on the

surface of a polyhedron. SIAM Journal on

Computing, 1990, 19(4)593611.

Results

Maintaining the Star Unfolding

- Handling a star unfolding event
- One shortest path to a vertex changes

combinatorially - This causes two source images to jump to new

positions and start moving on new line segments.

s

Maintaining the Kinetic VD

- Star Unfolding Event
- Two sites start moving on new line segments
- Both of the new line segments define M-1 new

pairs of moving sites. - ? Each Star Unfolding Event defines O(M . M

2a(M)) Voronoi Events.