1 / 64

Shortest Paths in Three Dimensions

Shortest Paths in Three Dimensions. Advisor: Carola Wenk. Speaker: Atlas F. Cook IV. Overview. Motivation for 3D Shortest Paths ♫ Motif ♫ Edge Sequence describes a 3D shortest path. Shortest Path Map is a set of edge sequences.

sonora
Télécharger la présentation

Shortest Paths in Three Dimensions

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. Motivation • 2D Shortest Paths Goal Start

  4. Motivation Goal • 2D Shortest Paths Start

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

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

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

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

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

  10. Shortest Path Concepts

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

  12. Describing a Shortest Path • A shortest path traverses a set of edges & faces. E2 F3 F2 E1 F1

  13. Describing a Shortest Path • Face Sequence = the ordered set of faces crossed by a shortest path. F3 F2 F1

  14. Describing a Shortest Path • Edge Sequence = the ordered set of edges crossed by a shortest path. E2 E1

  15. E2 E1 Describing a Shortest Path • Edge Sequence + Face Sequence = Shortest Path • Edge sequence ≈ Face sequence • Motif • ♫Edge Sequence describes a 3D shortest path.

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

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

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

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

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

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

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

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

  24. Uses of Unfoldings [Joseph O’Rourke]

  25. Unfold(Edge Sequence)  d(s,t) E2 F3 F2 E1 F3 E2 Unfold F1 F2 E1 F1 2D Unfolding 3D Shortest Path

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

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

  28. Unfold(Edge Sequence)  d(s,t) E2 F3 t F2 • E(s,t) = {E1,E2 } • F(s,t) = {F1,F2,F3} • Step 1 of 2: Unfold F(s,t) • Rotate F1 about E1 into F2’s plane • Rotate {F1,F2} about E2 into F3’s plane. E1 F1 s F3 E2 F2 E1 F1

  29. Unfold(Edge Sequence)  d(s,t) t2D F3 • Step 2: [Convex case] • d(s,t) = ||s2D–t2D|| • p(s,t) = fold s2Dt2D back onto the surface. • Step 2: [Non-convex case] • d(s,t) = length of 2D polygonal path • p(s,t) = fold polygonal path back onto the surface. F2 s2D F1

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

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

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

  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. 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 tj ||s-tj|| = Shortest Path ||s-tk|| ≠ Shortest Path s tk An unfolded set of faces from s

  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(n2 log n) time & O(n2) space Source

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

  37. Chen & Han s s v4 v4 v3 v3 v1 v1 v2 v2 Polyhedral Surface (1)Compute shortest paths to vertices (2) Unfold along shortest paths

  38. Chen & Han • Star Unfolding • Unfold along shortest paths to vertices • s maps to n points s1,…,sn in the 2D unfolding s1 s v4 Star Unfolding v3 s4 s2 v4 v3 v2 v1 v1 s3 v2

  39. t Chen & Han [Convex case]: • Star Unfolding is a non-overlapping 2D polygon. • d(s,t)= mini=1,…,n ||si – t|| [Chandru04] s1 s Star Unfolding v4 v3 s4 s2 v4 v3 v2 v1 d(s,t) v1 s3 v2

  40. Chen & Han • Compute a shortest path map on the 2D unfolding • Quickly reveal the closest sito t • New Concept: Voronoi diagram of s1,…,sn s1 v4 v3 s4 s2 v2 v1 Voronoi Diagram of Star Unfolding s3

  41. Chen & Han • Intuition for Voronoi Diagrams • Mail a box at the nearestpost office.

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

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

  44. t’ t d(s,t)=||s4-t|| (Nearest post office is s4) Chen & Han • Compute a shortest path map on the unfolding • Traditional Voronoi diagram • s1,s2,s3,s4 are“post offices” s1 v4 v3 s4 s2 v2 v1 d(s,t’)=||s2-t’|| s3

  45. s1 s2 Chen & Han • Non-Convex Complications • The star unfolding can overlap itself. s4 s Star Unfolding v5 v4 v2 v5 s5 s3 v4 v1 v3 v2 Dent v1 v3 Overlap

  46. s2 s1 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: • s1,…,sn (as before) • v1,…,vn(new). s4 v5 v4 v2 s5 s3 v1 v3

  47. Chen & Han • Summary of Chen & Han [Chen96] • Fixed 3D source point s • Compute shortest paths to all 3D surface vertices • Compute Star Unfolding • Compute a shortest path map on the 2D unfolding • (Voronoi diagram) • Preprocessing: • O(n2) time, O(n) space • Queries: • Lookup edge sequence  return d(s,t), p(s,t) s1 v4 v3 s4 s2 v1 v2 s3

  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. 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. 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’ s’

More Related