Lecture 5 - Sample-based Planning Flashcards
What is the main drawback with grid-based planning?
- Grid-based planning works well for grids of up to 3-4 dimensions
- State-space discretization suffers from combinatorial explosion:
- If the state is D size and we split each dimension into N bins then we will have N^D nodes in the graph.
- This is not practical for planning paths for robot arms with multiple joints, or other high-dimensional systems.
What does SubSampling aim to do?
Find ways to reduce the continuous domain into a sparser
graph. That is, one that covers the same space with fewer nodes and
edges.
What are three ways to SubSample?
- Visibility Planning
- Rapidly-exploring Random Tree (RRT)
- Probabilistic RoadMap (PRM)
What do Cell Decomposition Planners do?
Decompose the overall planning process into local regions
• Simple computations can tell us the path through the region (may or
may not be optimal)
• A global computation can be performed to re-assemble the entire path, and often we can re-use our local computation for multiple queries.
What are two examples of cell decomposition planners?
Examples:
• Voronoi diagrams
• Visibility graphs
Describe the steps to draw a Visibility Graph.
- Draw lines of sight from start and goal to all visible vertices and corners of the world.
- Draw lines of sight from every vertex of every obstacle like before.
- Repeat until done.
Prove Assertion: the optimal path in a 2D polygon map is the lowest costpath within the visibility graph.
- Start with knowledge that the shortest path in free space is a straight line. Without obstacles, we are set.
- Consider a path that hits the obstacle anywhere other than its corner, but still passes beyond this obstacle. Can this be shorter?
Name one drawback of visibility graph planning.
They do not preserve their optimality in higher dimensions.
Explain the main idea and main steps of Rapidly Exploring Random Trees.
Main idea: maintain a tree of reachable configurations from the root
Main steps:
• Sample random state
• Find the closest state (node) already in the tree
• Steer the closest node towards the random state
Do the main steps of Rapidly Exploring Random Trees scale badly with dimension?
No, not at all.
What are the main concerns with Rapidly Exploring Random Trees and their solutions?
- SampleFree() needs to sample a random state from the uniform distribution. How do you sample rotations uniformly?
- Nearest() searches for the nearest neighbor of a given vector. Bruteforce search examines |V| nodes (increasing). Is there a more efficient method? (kd trees, locality sensitive hashing)
- Steer() finds the controls that take the nearest state to the new state. Easy for omnidirectional robots. What about non-holonomic systems?
- ObstacleFree() checks the path from the nearest state to the new state for collisions. How do you do collision checks? (Bouding collision boxes)
Name 5 properties of Rapidly Exploring Random Trees?
#1: The RRT will eventually cover the space, i.e. it is a space-filling tree #2: The RRT will NOT compute the optimal path asymptotically #3: The RRT will exhibit “Voronoi bias,” i.e. new nodes will fall in free regions of Voronoi diagram (cells consist of points that are closest to a node) #4: The probability of RRT finding a path increases exponentially in the number of iterations #5: The distribution of RRT’s nodes is the same as the distribution used in SampleFree()
Is RRT Planning Complete?
Since it’s a randomized algorithm, we cannot say yes so simply
• A new definition: Probabilistic Completeness: the probability that a planner returns a feasible solution, if one exists, converges to 1.0 as the number of samples tends to infinity.
• Assertion: RRT is probabilistically complete. This is a straightforward consequence of the claims on the previous slide.
What RRT problem do Probabilistic RoadMaps (PRMs) solve?
RRTs were good for single-query path planning
You need to re-plan from scratch for every
query A → B
PRM addresses this problem
It is good for multi-query path planning