Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Shortest Paths in Three Dimensions Speaker: Atlas F. Cook IV Advisor: Carola Wenk.

Similar presentations


Presentation on theme: "1 Shortest Paths in Three Dimensions Speaker: Atlas F. Cook IV Advisor: Carola Wenk."— Presentation transcript:

1 1 Shortest Paths in Three Dimensions Speaker: Atlas F. Cook IV Advisor: Carola Wenk

2 2 Overview Motivation for 3D Shortest Paths ♫ Motif ♫ I.Edge Sequence describes a 3D shortest path. II.Shortest Path Map is a set of edge sequences. III.Query Process: Lookup edge sequence; return d(s,t) Shortest Path Map Construction 1)Continuous Dijkstra(fixed source) 2)Chen & Han (fixed source) 3)Arbitrary Source In-Progress & Future Work Conclusion

3 3 Motivation 2D Shortest Paths Goal Start

4 4 Motivation 2D Shortest Paths Start Goal

5 5 Motivation General 3D Shortest Paths  NP-Hard [Canny & Reif]

6 6 Motivation Our Focus: 3D Shortest Paths on a polyhedral surface Start End

7 7 Motivation Polyhedral Surface:  Set of faces, edges, & vertices  Face = 2D triangle  Examples: Terrain Polyhedron

8 8 Convexity A surface is convex when  The line segment joining any two points on the surface boundary is “inside” the surface. Convex SurfaceNon-Convex Surface s s t t

9 9 Motivation Are shortest paths on a polyhedral surface important?  Yes! Don’t freeze / starve Efficiently drive in the mountains on Mars

10 10 Shortest Path Concepts

11 11 Motif ♫ I.Edge Sequence describes a 3D shortest path. II.Shortest Path Map is a set of edge sequences. III.Query Process: Lookup edge sequence; return d(s,t) Hammer of Fate

12 12 Describing a Shortest Path A shortest path traverses a set of edges & faces. E1E1 E2E2 F1F1 F3F3 F2F2

13 13 Describing a Shortest Path Face Sequence = the ordered set of faces crossed by a shortest path. F1F1 F3F3 F2F2

14 14 Describing a Shortest Path Edge Sequence = the ordered set of edges crossed by a shortest path. E1E1 E2E2

15 15 Describing a Shortest Path Edge Sequence + Face Sequence = Shortest Path Edge sequence ≈ Face sequence Motif I. ♫Edge Sequence describes a 3D shortest path. E1E1 E2E2

16 16 II.♫Shortest Path Map is a set of edge sequences.  Choose a fixed source point s.  Partition the 3D surface into cells.  Cell = edge sequence III.♫Query Process: Lookup edge sequence; return d(s,t)  Locate target cell  edge sequence  Use edge sequence to return: d(s,t) ∈ O(log n) time  (s,t) ∈ O(log n + PathSize) time “Unfolding” converts an edge sequence  d(s,t) SPM(s)

17 17 Unfolding Unfolding:  Technique to reduce 3D problem into 2D problem. 3D SurfaceUnfolded 2D Surface http://plus.maths.org/issue27/features/mathart/index.html

18 18 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html

19 19 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html

20 20 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html

21 21 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html

22 22 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html

23 23 Unfolding Unfolding Examples: http://plus.maths.org/issue27/features/mathart/index.html Trojan Horse

24 24 Uses of Unfoldings [Joseph O’Rourke]

25 25 Unfold(Edge Sequence)  d(s,t) E1E1 E2E2 F1F1 F3F3 F2F2 F1F1 F2F2 F3F3 E1E1 E2E2 3D Shortest Path 2D Unfolding Unfold

26 26 Facts: [Mitchell87] 1)A shortest path on a convex 3D polyhedral surface unfolds to a 2D straight line segment. 2)A shortest path on a non-convex 3D polyhedral surface unfolds to a 2D polygonal path. F1F1 F2F2 F3F3 Unfold(Edge Sequence)  d(s,t)

27 27 Unfold(Edge Sequence)  d(s,t) Input:  E(s,t) – 3D edge sequence Outputs:  d(s,t) – Shortest Path Distance   (s,t) – Shortest Path on 3D Surface s t

28 28 Unfold(Edge Sequence)  d(s,t) E(s,t) = { E 1, E 2 } F(s,t) = { F 1, F 2, F 3 } Step 1 of 2: Unfold F(s,t)  Rotate F 1 about E 1 into F 2 ’s plane  Rotate {F 1,F 2 } about E 2 into F 3 ’s plane. s t E1E1 E2E2 F1F1 F2F2 F3F3 F1F1 F2F2 F3F3 E1E1 E2E2

29 29 Unfold(Edge Sequence)  d(s,t) Step 2: [Convex case]  d(s,t) = ||s 2D –t 2D ||   (s,t) = fold s 2D t 2D back onto the surface. Step 2: [Non-convex case]  d(s,t) = length of 2D polygonal path   (s,t) = fold polygonal path back onto the surface. F1F1 F2F2 F3F3 t 2D s 2D

30 30 Unfold(Edge Sequence)  d(s,t) Summary: I.♫Edge Sequence describes a 3D shortest path. 1) Unfold edge sequence (rotate faces about edges) 2) 2D unfolded shortest path  3D shortest path. How do we compute the edge sequences? II.♫Shortest Path Map is a set of edge sequences.

31 31 Shortest Path Map Construction Continuous Dijkstra Chen & Han Arbitrary Source  Source specified at query time Fixed Source (source specified at preprocessing time)

32 32 Continuous Dijkstra [MMP87] Pick a source point on surface Simulate a wavefront that…  Propagates out from the source  At time , the wavefront touches all points at distance  from the source. Source

33 33 Continuous Dijkstra Wavefront moves continuously! But events are discrete  Event = new arc appears/ disappears on wavefront Builds a shortest path map  Partition of surface into cells  Each cell stores an edge sequence Source

34 34 Continuous Dijkstra [Convex case]: All unfolded shortest paths are line segments. Unfold faces iteratively (priority queue)  This builds all edge sequences from s. Maintain line-of-sight from s s tjtj tktk ||s-t j || = Shortest Path ||s-t k || ≠ Shortest Path An unfolded set of faces from s

35 35 Continuous Dijkstra Summary: Continuous Dijkstra  Fixed 3D source point s  Maintains 3D wavefront  SPM(s)  Convex Preprocessing: [Schreiber06] O(n log n) time & space  Non-Convex Preprocessing: [MMP87] O(n 2 log n) time & O(n 2 ) space Source

36 36 Chen & Han [Chen96] Chen & Han’s Shortest Path Map  Alternative to Continuous Dijkstra  Fixed 3D source point s  Uses “Star Unfolding” 1)Compute shortest paths to all 3D surface vertices Similar to continuous Dijkstra 2)Unfold the surface into the plane (Star Unfolding) 3)Compute a shortest path map on the 2D unfolding Each cell represents an edge sequence

37 37 Chen & Han s v1v1 v2v2 v3v3 v4v4 Polyhedral Surface (1) Compute shortest paths to vertices (2) Unfold along shortest paths v3v3 v1v1 s v2v2 v4v4

38 38 v3v3 v1v1 v4v4 v1v1 v2v2 v3v3 Chen & Han s v2v2 v4v4 s4s4 s1s1 s2s2 s3s3 Star Unfolding  Unfold along shortest paths to vertices  s maps to n points s 1,…,s n in the 2D unfolding Star Unfolding

39 39 Chen & Han [Convex case]:  Star Unfolding is a non-overlapping 2D polygon.  d(s,t)= min i=1,…,n ||s i – t|| [Chandru04] Star Unfolding v3v3 v1v1 s v2v2 v4v4 v4v4 v1v1 v2v2 v3v3 s4s4 s1s1 s2s2 s3s3 t d(s,t)

40 40 v4v4 v1v1 v2v2 v3v3 Chen & Han s4s4 s1s1 s2s2 s3s3 3)Compute a shortest path map on the 2D unfolding Quickly reveal the closest s i to t New Concept: Voronoi diagram of s 1,…,s n Voronoi Diagram of Star Unfolding

41 41 Chen & Han Intuition for Voronoi Diagrams  Mail a box at the nearest post office.

42 42 Nearby post offices Region for each post office Chen & Han

43 43 You are here Two closest post offices You are here One closest post office Chen & Han

44 44 v4v4 v1v1 v2v2 v3v3 Chen & Han s4s4 s1s1 s2s2 s3s3 3)Compute a shortest path map on the unfolding  Traditional Voronoi diagram  s 1,s 2,s 3,s 4 are “post offices” d(s,t)=||s 4 -t|| (Nearest post office is s 4 ) d(s,t’)=||s 2 -t’|| t’ t

45 45 Chen & Han Non-Convex Complications  The star unfolding can overlap itself. v4v4 v1v1 v3v3 v2v2 Star Unfolding v5v5 v1v1 v3v3 v4v4 s5s5 s4s4 s3s3 v5v5 Dent v2v2 s2s2 s s1s1 Overlap

46 46 Chen & Han Non-Convex Complications  Shortest paths can turn at corner vertices [MMP87]  (3) A Voronoi diagram of the star unfolding still yields the shortest path map [Chen96]. “Post offices” are:  s 1,…,s n (as before)  v 1,…,v n (new). v5v5 v1v1 v3v3 v4v4 s5s5 s4s4 s3s3 v2v2 s2s2 s1s1

47 47 Chen & Han Summary of Chen & Han [Chen96]  Fixed 3D source point s 1)Compute shortest paths to all 3D surface vertices 2)Compute Star Unfolding 3)Compute a shortest path map on the 2D unfolding (Voronoi diagram)  Preprocessing:  O(n 2 ) time, O(n) space  Queries:  Lookup edge sequence  return d(s,t),  (s,t) v4v4 v1v1 v2v2 v3v3 s4s4 s1s1 s2s2 s3s3

48 48 Arbitrary Source Approach [Agarwal97] Previous Techniques:  Continuous Dijkstra & Chen and Han  Limited queries to a fixed 3D source point s New Goal: Arbitrary Source Approach  Support queries from any 3D source point s

49 49 Arbitrary Source Approach Idea of Arbitrary Source:  Choose a fixed 3D source point s  Compute star unfolding (Unfold on a shortest path to every vertex)  What if s is shifted infinitesimally to s’? No shortest path changes Same “combinatorial” star unfolding  i.e., same set of vertices, edges, & faces

50 50 Arbitrary Source Approach Shifting s to s’ produces minor changes in the star unfolding. The same set of vertices, edges, & faces exists. s s s’

51 51 Arbitrary Source Approach Given all “necessary” star unfoldings:  (s,t)-query: s identifies a precomputed star unfolding U t identifies an edge sequence in U Unfold edge sequence  d(s,t) = length of 2D unfolded path   (s, t) = fold 2D path back onto the surface. Summary: (s,t)  Star Unfolding  Edge Sequence  d(s,t)

52 52 Arbitrary Source Approach How to precompute “necessary” star unfoldings? 1)Compute 3D shortest paths for all pairs of vertices Set of fixed-source problems [Chen96] These shortest paths partition the 3D surface into O(n 4 ) cells. Inside a cell, no shortest path changes 2)Compute one star unfolding for each cell.  Preprocessing: Roughly O(n 6 ) time & space

53 53 Arbitrary Source Approach Summary: Arbitrary Source Approach  Precompute O(n 4 ) star unfoldings  Queries supported for arbitrary surface points s,t  (s,t)  Star Unfolding  Edge Sequence  d(s,t)

54 54 In-Progress & Future Work Fréchet Distance: 3D Polyhedral Surface  Measure similarity of curves on 3D surface

55 55 In-Progress & Future Work Fréchet Distance: 3D Polyhedral Surface  Motivation: Safety

56 56 In-Progress & Future Work Fréchet Distance: 3D Polyhedral Surface  Avalanche! Help! I’ll save you! Thank you!

57 57 In-Progress & Future Work Fréchet Distance: 3D Polyhedral Surface  Keep two people/robots/entities close together during a mission for safety reasons.

58 58 Conclusion ♫ Motif ♫ I.Edge Sequence describes a 3D shortest path. II.Shortest Path Map is a set of edge sequences. III.Query Process: Lookup edge sequence; return d(s,t) Shortest Path Maps: polyhedral surface  Fixed-Source: Continuous Dijkstra (wavefront) [MMP87] Chen & Han (one star unfolding) [Chen96]  Arbitrary source: O(n 4 ) Star Unfoldings [Agarwal97] (s,t)  Star Unfolding  Edge Sequence  d(s,t)

59 59 References: [Agarwal97]  P. K. Agarwal, B. Aronov, J. O. & Schevon., C. A. Star Unfolding of a Polytope with Applications SIAM Journal on Computing, Society for Industrial and Applied Mathematics, 1997, 26, 1689-1713 [Chandru04]  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, 174–185.

60 60 References: [Chen96]  Chen, J. & Han, Y. Shortest paths on a polyhedron International Journal of Computational Geometry and Applications, 1996, 6, 127-144 [MMP87]  Mitchell, J. S. B.; Mount, D. M. & Papadimitriou, C. H. The discrete geodesic problem SIAM Journal on Computing, Society for Industrial and Applied Mathematics, 1987, 16, 647-668

61 61 References: [Schreiber06]  Schreiber, Y. & Sharir, M. An optimal-time algorithm for shortest paths on a convex polytope in three dimensions SoCG: 22nd Symposium on Computational Geometry, 2006, 30-39

62 62 Thank you for your attention. Questions

63 63 Extra Slides

64 64 Point Location on a Voronoi Diagram Point location allows a nearest post office to our location to be found in O(log n) time:  Each region stores its closest post office.  Edges store adjacent regions. Point Location Idea: 1. Divide the regions into slabs. 2. A binary search identifies the desired horizontal range. 3.A second binary search identifies our vertical region in this slab. 4. The region stores its closest post office. Special thanks to Subhash Suri for this diagram.


Download ppt "1 Shortest Paths in Three Dimensions Speaker: Atlas F. Cook IV Advisor: Carola Wenk."

Similar presentations


Ads by Google