Vishal Verma: Rapidly Exploring Random Trees
-
Upload
university-of-colorado-at-boulder -
Category
Documents
-
view
1.166 -
download
1
description
Transcript of Vishal Verma: Rapidly Exploring Random Trees
CSCI 7000 ADVANCED ROBOTICS
~VISHAL VERMA
Rapidly Exploring Random Trees
Agenda
Intro to Motion PlanningProblem FormulationIntro to RRTsRRT Algorithm RRT AnalysisImplementing RRT PlannersExamples
Intro to Motion Planning
Used in: Robotics (:D) Spacecraft Computer Graphics/Animations Computational Biology Virtual Prototyping Vehicle safety
Problem Formulation
State Space ‘X’
init X and Xgoal XCollision Detector D : X {true,false}Inputs – Set ‘U’ of actionsIncremental simulator: calculate x(t+t) due to
u(t)Metric ‘ρ’: for distance Search for continuous path
Intro to RRTs
Search high dimensional spacesConsider algebraic constraints
ObstaclesConsider local constraints
Differential constraints of Motion Non Holonomic constraints
Differential Constraints
Constraints from mechanical constructionExamples:
0 0 0 + 0
Non Holonomic Constraints
Controllable DOF < Total DOFExample – Car:
Total DOF – 3 [x,y,θ] Controllable DOF – 2 [x, θ]
Constraints introduced: Cannot make sharp turns
Concept of RRTs
Intuitively: Monte-Carlo Search Biased to favor largest Voronoi regions
Binary Tree: Searched Systematically NP-Hard
RRT: Searched (pseudo)randomly Pull tree toward unexplored portions
RRT - Justification
Other similar options: Randomized Potential Field Method:
Depends on a good heuristic potential function Difficult to find with obstacles/Differential Constraints
Probabilistic Roadmap approach Generates many random configurations Connects with local planner Good for Holonomic Local planner too complicated for non holonomic Needs non-linear control system
RRT Algorithm
RRT Analysis
Probabilistically Complete
Probability of success increases exponentially with vertices
RRT as Disc:
Implementing RRT Planners
RRTs as building blocksSingle v/s Double RRT PlannersNo biasing -> slow convergenceBiasing:
RRT-GoalBias RANDOM_STATE() modeled as coin toss with small bias
to goal RRT-GoalZoom
RANDOM_STATE() modeled with bias to area around goal
Size of area closest RRT Vertex to goal
The RRT CONNECT() Routine
Replaces EXTEND()Multiple calls to EXTEND()
Better for holonomic planning
EXTEND() still better for non-holonomic
Lack of good metric
Bidirectional RRT
Further Thoughts
More than 2 RRTs? Computation time divided
Construct RRTs/Explore state space Interconnect RRTs
Probabilistic Roadmap: Limiting/Extreme version of this Max separate RRTs merged
Example: Growing RRT
Example: Holonomic Planning
Example: Holonomic Planning
Example: Holonomic Planning
Example: Non - Holonomic Planning
Example: Non - Holonomic Planning
Example: Non - Holonomic Planning
Example: Kinodynamic Planning
Questions?