Lecture 5 – Roadmap Methods Uluç...
Transcript of Lecture 5 – Roadmap Methods Uluç...
![Page 1: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/1.jpg)
CENG786 - Robot Motion Control and Planning 1
Robot Motion Control and Planninghttp://www.ceng.metu.edu.tr/~saranli/courses/ceng786
Uluç Saranlıhttp://www.ceng.metu.edu.tr/~saranli
Lecture 5 – Roadmap Methods
![Page 2: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/2.jpg)
CENG786 - Robot Motion Control and Planning 2
The Basic Idea
• Capture the connectivity of Qfree by a graph or
network of paths.
![Page 3: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/3.jpg)
CENG786 - Robot Motion Control and Planning 3
RoadMap Definition
• A roadmap, RM, is a union of curves such that for all start and goal points in Qfree that can be connected by a path:
– Accessibility: There is a path from qstart in Qfree to some q’ in RM
– Departability: There is a path from some q’’ in RM to qgoal in Qfree
– Connectivity: there exists a path in RM between q’ and q’’
– One dimensional
![Page 4: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/4.jpg)
CENG786 - Robot Motion Control and Planning 4
RoadMap Path Planning
1. Build the roadmap
– nodes are points in Qfree (or its boundary)
– two nodes are connected by an edge if there is a free
path between them
2. Connect start and goal points to the road map at
point q’ and q’’, respectively
3. Find a path on the roadmap betwen q’ and q’’
– The result is a path in Qfree from start to goal
– Question: what is the hard part here?
![Page 5: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/5.jpg)
CENG786 - Robot Motion Control and Planning 5
Overview: Deterministic Methods
• Some need to represent Qfree, and some don’t.
• are complete
• are complexity-limited to simple (e.g. low-
dimensional) problems
– example: Canny’s Silhouette method (5.5)
• applies to general problems
• is singly exponential in dimension of the problem
![Page 6: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/6.jpg)
CENG786 - Robot Motion Control and Planning 6
Visibility Graph Methods
• Defined for polygonal obstacles
• Nodes correspond to vertices of obstacles
– Nodes are connected if they are
already connected by an edge on an
obstacle
– the line segment joining them is in
free space
• Not only is there a path on this roadmap, but it is the shortest path
• If we include the start and goal nodes, they are automatically connected
• Algorithms for constructing them can be efficient
– O(n3) brute force
![Page 7: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/7.jpg)
CENG786 - Robot Motion Control and Planning 7
The Visibility Graph in Action (Part 1)
• First, draw lines of sight from the start and goal to all “visible”vertices and corners of the world.
![Page 8: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/8.jpg)
CENG786 - Robot Motion Control and Planning 8
The Visibility Graph in Action (Part 2)
• Second, draw lines of sight from every vertex of every obstacle like before. Remember, lines along edges are also
lines of sight.
![Page 9: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/9.jpg)
CENG786 - Robot Motion Control and Planning 9
The Visibility Graph in Action (Part 3)
• Second, draw lines of sight from every vertex of every obstacle like before. Remember, lines along edges are also
lines of sight.
![Page 10: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/10.jpg)
CENG786 - Robot Motion Control and Planning 10
The Visibility Graph in Action (Part 4)
• Second, draw lines of sight from every vertex of every obstacle like before. Remember, lines along edges are also
lines of sight.
![Page 11: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/11.jpg)
CENG786 - Robot Motion Control and Planning 11
The Visibility Graph (Done)
• Repeat until you’re done.
![Page 12: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/12.jpg)
CENG786 - Robot Motion Control and Planning 12
Visibility Graphs
![Page 13: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/13.jpg)
CENG786 - Robot Motion Control and Planning 13
The Sweepline Algorithm
• Goal: calculate the set of vertices vi that are visible from v
• visibility: a segment v-vi is visible if
– it is not within the object
– the closest line intersecting v-vi is beyond vi
Algorithm:
• Initially:
– calculate the angle αi of segment v-vi and sort vertices by this creating list E
– create a list of edges that intersect the horizontal from v sorted by intersection distance
• For each αi
– if vi is visible to v then add v-vi to graph
– if vi is the “beginning” of an edge E, insert E in S
– if vi is the “end” of and edge E, remove E from S
Analysis: For a vertex, n log n to create initial list, log n for each αi
Overall: n log (n) (or n2 log (n) for all n vertices)
![Page 14: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/14.jpg)
CENG786 - Robot Motion Control and Planning 14
Example
![Page 15: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/15.jpg)
CENG786 - Robot Motion Control and Planning 15
Reduced Visibility Graphs
• The current graph as too many lines
– lines to concave vertices
– lines that “head into” the object
• A reduced visibility graph consists of
– nodes that are convex
– edges that are “tangent” (i.e. do not head into the object at either endpoint)
interestingly, this all only works in �2
![Page 16: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/16.jpg)
CENG786 - Robot Motion Control and Planning 16
Deformation Retracts: Voronoi Diagrams
GVD: Set of points where the distance to two closest obstacles is the same
![Page 17: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/17.jpg)
CENG786 - Robot Motion Control and Planning 17
Beyond Points: Basic Definitions
Single-object distance function (Warning: convex obstacle)
![Page 18: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/18.jpg)
CENG786 - Robot Motion Control and Planning 18
Visible Distance Functions
Points within line of sight
![Page 19: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/19.jpg)
CENG786 - Robot Motion Control and Planning 19
Visible Distance Functions
• Single-object (Warning: convex obstacle)
• Multi-object
![Page 20: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/20.jpg)
CENG786 - Robot Motion Control and Planning 20
Two-Equidistant
• Two-equidistant surface
![Page 21: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/21.jpg)
CENG786 - Robot Motion Control and Planning 21
More Rigorous Definition
• Going through obstacles
![Page 22: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/22.jpg)
CENG786 - Robot Motion Control and Planning 22
Generalized Voronoi Diagram
• In 2D, the GVD is one-dimensional
• It can also be shown to be a roadmap
![Page 23: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/23.jpg)
CENG786 - Robot Motion Control and Planning 23
What about concave obstacles?
Suppose we represent concave obstacles by multiple convex
obstacles:
![Page 24: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/24.jpg)
CENG786 - Robot Motion Control and Planning 24
What about concave obstacles?
Consider individual distance gradients for convex regions...
different for inner corners
![Page 25: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/25.jpg)
CENG786 - Robot Motion Control and Planning 25
What about concave obstacles?
Consider individual distance gradients for convex regions...
same inside and for outer corners
![Page 26: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/26.jpg)
CENG786 - Robot Motion Control and Planning 26
Two-Equidistant: Final Definition
• Two-equidistant surface
• Two-equidistant surjective surface
• Two-equidistant Face
![Page 27: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/27.jpg)
CENG786 - Robot Motion Control and Planning 27
Curve Optimization Approach
• Homotopy Classes
• Deformation Retracts
![Page 28: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/28.jpg)
CENG786 - Robot Motion Control and Planning 28
Pre-Image Theorem
![Page 29: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/29.jpg)
CENG786 - Robot Motion Control and Planning 29
Proof for GVD Dimension
![Page 30: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/30.jpg)
CENG786 - Robot Motion Control and Planning 30
More on GVD...
• Is the GVD a 1-Dimension manifold?
No, but it’s the union of 1D manifolds
![Page 31: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/31.jpg)
CENG786 - Robot Motion Control and Planning 31
Accessibility (in the Plane)
![Page 32: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/32.jpg)
CENG786 - Robot Motion Control and Planning 32
Departability
![Page 33: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/33.jpg)
CENG786 - Robot Motion Control and Planning 33
GVD Connected?
• Proof:
• Im is continuous (Prof. Yap, NYU)
• Im of a connected set, under a continuous map, is a
connected set
![Page 34: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/34.jpg)
CENG786 - Robot Motion Control and Planning 34
Traceability in the Plane
![Page 35: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/35.jpg)
CENG786 - Robot Motion Control and Planning 35
Continuous Control Laws
![Page 36: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/36.jpg)
CENG786 - Robot Motion Control and Planning 36
Algorithm for exploration
• Trace an edge until reach a meet point or a boundary point
• If a boundary point, return to the previous meet point, otherwise pick a new edge to trace
• If all edges from meet point are already traced, search the graph for a meet point with untraced edges
• When all meet points have no untraced edges, complete.
![Page 37: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/37.jpg)
CENG786 - Robot Motion Control and Planning 37
Generalized Voronoi Graph
• In 3-Dimensions
• In m-Dimensions
![Page 38: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/38.jpg)
CENG786 - Robot Motion Control and Planning 38
GVD vs. GVG
![Page 39: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/39.jpg)
CENG786 - Robot Motion Control and Planning 39
Proof for GVG Dimension
• For 3-Dimensions
![Page 40: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/40.jpg)
CENG786 - Robot Motion Control and Planning 40
Proof for GVG Dimension
• For m-Dimensions
![Page 41: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/41.jpg)
CENG786 - Robot Motion Control and Planning 41
Remaining questions for GVGs
• Traceability, Accesibility, Departability?
• Connectivity?
• More needs to be done...
![Page 42: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/42.jpg)
CENG786 - Robot Motion Control and Planning 42
Some examples
![Page 43: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/43.jpg)
CENG786 - Robot Motion Control and Planning 43
Room With Box
![Page 44: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/44.jpg)
CENG786 - Robot Motion Control and Planning 44
Floating Box
![Page 45: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/45.jpg)
CENG786 - Robot Motion Control and Planning 45
Box with Opening
![Page 46: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/46.jpg)
CENG786 - Robot Motion Control and Planning 46
More Complicated Environments
![Page 47: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/47.jpg)
CENG786 - Robot Motion Control and Planning 47
Topological Maps (Kuipers)
• Topological map represents spatial properties of actions and of places and paths in the environment. Topological map is defined as the minimal models of an axiomatic theory describing the relationship between the different sources of information explained by map (Remolina and Kuipers, Artificial Intelligence, 2003)
• Topological maps represent the world as a graph of places with the arcs of the graph representing movements between places (Kortenkamp & Weymouth, AAAI-94)
• Topological maps represent the robot environment as graphs, where nodes corresponds to distinct places, and arcs represent adjacency. A key advantage of topological representations is their compactness (Thrun, et at. 1999)
• Topological localization uses a graph representation that captures the connectivity of a set of features in the environment (Radhakrishnan & Nourkbash, IROS 1999)
![Page 48: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/48.jpg)
CENG786 - Robot Motion Control and Planning 48
Topology (Really, Connectivity)
![Page 49: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/49.jpg)
CENG786 - Robot Motion Control and Planning 49
Homotopy
![Page 50: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/50.jpg)
CENG786 - Robot Motion Control and Planning 50
Deformation Retraction: GVG in Plane
![Page 51: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/51.jpg)
CENG786 - Robot Motion Control and Planning 51
Topological Map: Good and Bad
• Topological Map: For each homotopy class in free
space, there is a corresponding homotopy class in
the map.
• Good Topological map : the first
fundamental groups have the
same cardinality
• Bad Topological map : redundant
homotopy classes in the map
![Page 52: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/52.jpg)
CENG786 - Robot Motion Control and Planning 52
Bad Topological Maps in Higher Dims
• In general, there cannot be a one-dimensional
deformation retract in a space with dimension
greater than two
→ There can not be “good” one-dimensional topological maps for �3
![Page 53: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/53.jpg)
CENG786 - Robot Motion Control and Planning 53
Application: Hierarchical SLAM
A feature-based technique in a topological framework
![Page 54: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/54.jpg)
CENG786 - Robot Motion Control and Planning 54
Embedded H-SLAM Map
![Page 55: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/55.jpg)
CENG786 - Robot Motion Control and Planning 55
Embedded H-SLAM Map
![Page 56: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/56.jpg)
CENG786 - Robot Motion Control and Planning 56
Embedded H-SLAM Map
![Page 57: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/57.jpg)
CENG786 - Robot Motion Control and Planning 57
Benefits&Drawbacks of Topological Maps
• Scale
– dimension
– geometric size
• Reduce planning problem
– Graph search
– Localization along a “line”
• Induces a hierarchy of maps for SLAM
– T: Topological (Kuipers, Choset)
– F: Feature-based (Leonard, Durrant-Whyte)
– L: Local/Pixel-based (Morevac, Elfes, Thrun)
– D: Dead-reckoning (Borenstein)
• Provides sensor space decomposition useful for
control
– Brooks and other: Behaviors – sense/act
– Brockett; Manikonda, Krishnaprasad, and Hendler –Motion Description Languages
– Rizzi, Burridge, Koditschek – Hybrid Controls
– Kuipers and Choset – Topological Maps
• Cannot position in arbitrary
locations
• Fails when environments is not
topologically “rich”
–Hyper-symmetric
–Large open spaces
![Page 58: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/58.jpg)
CENG786 - Robot Motion Control and Planning 58
Silhouette Methods
• Canny’s Roadmap Algorithm
• The Opportunistic Path Planner
![Page 59: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/59.jpg)
CENG786 - Robot Motion Control and Planning 59
Illustrative Example (1)
• Let S be the
ellipsoid with a
through hole.
• Pc is a hyperplane of
codimension 1 ( x =
c ) which will be
swept through S in
the X direction.
![Page 60: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/60.jpg)
CENG786 - Robot Motion Control and Planning 60
Illustrative Example (2)
• At each point the
slice travels along X
we’ll find the
extrema in S∩Pc in
the Y direction. If
we trace these out
we get silhouette
curves.
![Page 61: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/61.jpg)
CENG786 - Robot Motion Control and Planning 61
Illustrative Example (3)
• Observations:
– The silhouette curves are one-dimensional.
– This is not a roadmap, it’s not connected.
– There are points where extrema disappear and reappear,
these will be called critical points and the slices that go
through these points are critical slices.
– A point on a silhouette curve is a critical point if the
tangent to the curve at the point lies in Pc.
![Page 62: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/62.jpg)
CENG786 - Robot Motion Control and Planning 62
Illustrative Example (4)
• We’ll connect a critical point to the rest of the
silhouette curve with a
path that lies within S∩Pc. This can be
done by running the algorithm recursively.
Each time, we increase the codimension of the
hyperplane by 1.
![Page 63: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/63.jpg)
CENG786 - Robot Motion Control and Planning 63
Illustrative Example (5)
• Final points
– The recursion is repeated until there are no more critical
points or the critical slice has dimension 1(it is its own roadmap)
– The roadmap is the union of all silhouette curves
![Page 64: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/64.jpg)
CENG786 - Robot Motion Control and Planning 64
Another Example (1)
![Page 65: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/65.jpg)
CENG786 - Robot Motion Control and Planning 65
Another Example (2)
![Page 66: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/66.jpg)
CENG786 - Robot Motion Control and Planning 66
Accessibility and Departability (1)
• In order to access and depart the roadmap we treat
the slices which contain qs and qg as critical slices
and run the algorithm the same way.
![Page 67: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/67.jpg)
CENG786 - Robot Motion Control and Planning 67
Accessibility and Departability (2)
![Page 68: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/68.jpg)
CENG786 - Robot Motion Control and Planning 68
Accessibility and Departability (3)
![Page 69: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/69.jpg)
CENG786 - Robot Motion Control and Planning 69
Accessibility and Departability (4)
![Page 70: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/70.jpg)
CENG786 - Robot Motion Control and Planning 70
Accessibility and Departability (5)
![Page 71: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/71.jpg)
CENG786 - Robot Motion Control and Planning 71
Building the Roadmap
• Given that the algorithm is now clear conceptually,
let’s establish the mathematical machinery to
actually construct the roadmap. We must define
– The sets
– The slices
– How to find extrema
– How to find critical points
![Page 72: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/72.jpg)
CENG786 - Robot Motion Control and Planning 72
The Sets
• The S which this algorithm deals with are semi-
algebraic sets that are closed and compact.
– Def: A semi-algebraic set S<�r defined by the polynomials F1,..,Fn in Qr is a set derived from the sets
Si={x in �r | Fi(x)>0}
by finite union, intersection and complement.
– Ex: (x2+y2 ≤ 1) and (z ≤ 1) and (z ≥ -1)
![Page 73: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/73.jpg)
CENG786 - Robot Motion Control and Planning 73
The Slices
• The slices are the intersection of a hyperplane and
S
• where π1 is the projection on to the first coordinate
![Page 74: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/74.jpg)
CENG786 - Robot Motion Control and Planning 74
How To Find Extrema
• When constructing the silhouette curves, we look for
extrema of π2|Sc, the extrema of the projection of Sc
in a second direction.
• In order to find the extrema on a manifold we will
refer to the Lagrange Multiplier Theorem.
![Page 75: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/75.jpg)
CENG786 - Robot Motion Control and Planning 75
How To Find Extrema
• Lagrange Multiplier Theorem:
Let S be an n-surface in �n+1, S = f -1(c) where
f:U→� is such that Grad(f)(q)≠0 for all q in S.
Suppose h:U→� is a smooth function and p in S is
an extremum point of h on S. Then for all λ in � s.t.
Grad(h)(p)= λGrad(f)(p) (they are parallel)
![Page 76: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/76.jpg)
CENG786 - Robot Motion Control and Planning 76
How To Find Extrema
• Example:
– Consider S=f -1(0) where f=x2+y2+z2-1 (a solid unit
sphere). Extrema of h=π1(x,y,z)=(x).
y = z = 0 (y-z plane) and only points on sphere is x = 1, x = -1, left most
and right most
![Page 77: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/77.jpg)
CENG786 - Robot Motion Control and Planning 77
How To Find Extrema
Canny’s Generalization of the Lagrange Multiplier Theorem:
Suppose that U is an open subset of the kernel of some map f:�r→�n, and let f be transversal to {0}. Let g:�r→�m
be a map, then x in U is an extremum of g | U iff the following matrix is not full rank.
![Page 78: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/78.jpg)
CENG786 - Robot Motion Control and Planning 78
How To Find Extrema
Canny’s Slice Lemma:
The set of critical points of π12|S, Σ(π12|S), is the
union of the critical points of π2|Sc where we sweep
in the 1 direction.
![Page 79: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/79.jpg)
CENG786 - Robot Motion Control and Planning 79
How To Find Extrema
Example:
Consider S=f -1(0) where f=x2+y2+z2-1 (a solid unit
sphere). If we sweep in the x direction and
extremize in the y direction h=π12(x,y,z)=(x,y).
So the silhouette curve is the unit circle on the x-y
plane
![Page 80: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/80.jpg)
CENG786 - Robot Motion Control and Planning 80
Finding Critical Points
The critical points which denote changes in connectivity of the silhouette curves also follow from Canny’s Generalization. They are the extrema of the projection on to the sweeping direction of the silhouette curves. Simply
![Page 81: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/81.jpg)
CENG786 - Robot Motion Control and Planning 81
Connectivity change at Critical Points
![Page 82: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/82.jpg)
CENG786 - Robot Motion Control and Planning 82
Between Critical Points
![Page 83: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/83.jpg)
CENG786 - Robot Motion Control and Planning 83
Building the Roadmap (Conclusion)
• We can now find the extrema necessary to build the silhouette curves
• We can find the critical points where linking is necessary
• We can run the algorithm recursively to construct the whole
roadmap
![Page 84: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/84.jpg)
CENG786 - Robot Motion Control and Planning 84
The Opportunistic Path Planner
• The Opportunistic Path Planner is similar to Canny’s
Roadmap but differs in the following ways
– Silhouette curves are now called freeways and are constructed slightly differently
– Linking curves are now called bridges
– It does not always construct the whole roadmap
– The algorithm is not recursive
![Page 85: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/85.jpg)
CENG786 - Robot Motion Control and Planning 85
Channels
Def: A channel slice is a slice at which the
connectivity of the intersection with the sweeping
hyperplane and the freespace changes.
Def: A channel is a subset of the freespace which is
bounded by channel slices and configuration space
obstacles
![Page 86: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/86.jpg)
CENG786 - Robot Motion Control and Planning 86
Channels
![Page 87: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/87.jpg)
CENG786 - Robot Motion Control and Planning 87
Freeways
• Freeways are defined by the following artificial
potential field which induces an artificial repulsion
from the surface of obstacles
• A freeway is the locus of the maxima of Uart(x) as
you sweep through the configuration space
![Page 88: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/88.jpg)
CENG786 - Robot Motion Control and Planning 88
Interesting Critical Points and Inflection Points
Def: An interesting critical point is a critical point that
corresponds to the joining or splitting of the
intersection of the sweeping hyperplane and the
freespace
Def: An inflection point is a point where the tangent to
the freeway curve becomes orthogonal to the sweep
direction
![Page 89: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/89.jpg)
CENG786 - Robot Motion Control and Planning 89
Bridges
• Def: A bridge is a one-dimensional set which links
freeways from channels that have just joined or are
about to split (as you sweep across)
![Page 90: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/90.jpg)
CENG786 - Robot Motion Control and Planning 90
Freeway Tracing
![Page 91: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/91.jpg)
CENG786 - Robot Motion Control and Planning 91
Freeway Tracing
• Freeway tracing is done by tracking the locus of the maxima of the artificial potential field and terminates when
(1) The freeway runs into an inflection point where you create a bridge
(2) The freeway runs into an obstacle where it ends
![Page 92: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/92.jpg)
CENG786 - Robot Motion Control and Planning 92
Also create bridges at interesting critical points
![Page 93: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/93.jpg)
CENG786 - Robot Motion Control and Planning 93
Accessibility and Departability
• The roadmap is accessed and departed by
connecting qs and qg to a local maximum on the
slice which they reside (which is part of a freeway).
• This is referred to as hill-climbing and is the same
procedure we use when creating bridges except in
the case of bridges we hill-climb in two directions.
![Page 94: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/94.jpg)
CENG786 - Robot Motion Control and Planning 94
Building the Roadmap
(1) Hill-climb from both qs and qg. Then trace freeway
curves from both start and goal
(2) If the curves leading from start and goal are not
connected enumerate a split point or join point and
add a bridge curve near the point. Else stop.
(3) Find all points on the bridge curve that lie on other
freeways and trace from these freeways. Go to
step 2.
![Page 95: Lecture 5 – Roadmap Methods Uluç Saranlıuser.ceng.metu.edu.tr/~saranli/.../ceng786/lectures/Lecture5-Roadm… · The Sweepline Algorithm ... Voronoi Diagrams GVD: Set of points](https://reader033.fdocuments.us/reader033/viewer/2022053014/5f1166bc3e292a2ed455df0e/html5/thumbnails/95.jpg)
CENG786 - Robot Motion Control and Planning 95
Summary
• Roadmap methods create a graph of “roads” that
will move you through the space; just get on and get
off again
• The visibility graph is one method of doing this for
polygonal worlds
• Voronoi diagrams are a second form of roadmap
• We will see more graphs in the second half of the
semester...