Intro Notation Sampling-based Motion Planning Randomized Sampling-Based Methods Optimal Motion Planners Robot Motion Planning I Jan Faigl Department of Computer Science Faculty of Electrical Engineering Czech Technical University in Prague Lecture 9 A4M36PAH - Planning and Games Jan Faigl, 2016 A4M36PAH – Lecture 9: Trajectory Planning 1 / 62
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Principles of Robot Motion: Theory, Algorithms, andImplementations, H. Choset, K. M. Lynch, S.Hutchinson, G. Kantor, W. Burgard, L. E. Kavrakiand S. Thrun, MIT Press, Boston, 2005.
http://www.cs.cmu.edu/~biorobotics/book
Planning Algorithms, Steven M. LaValle,Cambridge University Press, May 29, 2006.
http://planning.cs.uiuc.edu
Robot Motion Planning and Control,Jean-Paul Laumond, Lectures Notes inControl and Information Sciences, 2009.
Robot Motion Planning – Motivational problemHow to transform high-level task specification (provided by humans)into a low-level description suitable for controlling the actuators?
To develop algorithms for such a transformation.
The motion planning algorithms provide transformations how tomove a robot (object) considering all operational constraints.
It encompasses several disciples, e.g., mathematics,robotics, computer science, control theory, artificialintelligence, computational geometry, etc.
Piano Mover’s ProblemA classical motion planning problem
Having a CAD model of the piano, model of the environment, the prob-lem is how to move the piano from one place to another without hittinganything.
Basic motion planning algorithms are focused pri-marily on rotations and translations.
We need notion of model representations and formal definition ofthe problem.Moreover, we also need a context about the problem and realisticassumptions.
W – World model describes the robot workspace and its boundarydetermines the obstacles Oi .
2D world, W = R2
A Robot is defined by its geometry, parameters (kinematics) and itis controllable by the motion plan.C – Configuration space (C-space)A concept to describe possible configurations of the robot. Therobot’s configuration completely specify the robot location inWincluding specification of all degrees of freedom.
E.g., a robot with rigid body in a plane C = {x , y , ϕ} = R2 × S1.
Let A be a subset of W occupied by the robot, A = A(q).A subset of C occupied by obstacles is
Cobs = {q ∈ C : A(q) ∩ Oi ,∀i}
Collision-free configurations areCfree = C \ Cobs .
Path / Motion Planning ProblemPath is a continuous mapping in C-space such that
π : [0, 1]→ Cfree , with π(0) = q0, and π(1) = qf ,
Only geometric considerations
Trajectory is a path with explicate parametrization of time, e.g.,accompanied by a description of the motion laws (γ : [0, 1] → U ,where U is robot’s action space).
It includes dynamics.
[T0,Tf ] 3 t τ ∈ [0, 1] : q(t) = π(τ) ∈ Cfree
The planning problem is determination of the function π(·).
Additional requirements can be given:
Smoothness of the pathKinodynamic constraints
E.g., considering friction forces
Optimality criterionshortest vs fastest (length vs curvature)
Visibility Graph vs Voronoi DiagramVisibility graph
Shortest path, but it is close to obstacles. Wehave to consider safety of the path.
An error in plan execution canlead to a collision.
Complicated in higher dimensions
Voronoi diagramIt maximize clearance, which can provideconservative pathsSmall changes in obstacles can lead to largechanges in the diagramComplicated in higher dimensions
A combination is called Visibility-Voronoi – R. Wein,J. P. van den Berg, D. Halperin, 2004
Artificial Potential Field MethodThe idea is to create a function f that will provide a directiontowards the goal for any configuration of the robot.Such a function is called navigation function and −∇f (q) points tothe goal.Create a potential field that will attract robot towards the goal qfwhile obstacles will generate repulsive potential repelling the robotaway from the obstacles.
The navigation function is a sum of potentials.
Such a potential function can have several local minima.Jan Faigl, 2016 A4M36PAH – Lecture 9: Trajectory Planning 21 / 62
Avoids explicit representation of the obstacles in C-spaceA “black-box” function is used to evaluate a configuration q is acollision free
(E.g., based on geometrical models and testingcollisions of the models)
It creates a discrete representation of CfreeConfigurations in Cfree are sampled randomly and connected to aroadmap (probabilistic roadmap)Rather than full completeness they provides probabilistic com-pleteness or resolution completeness
Probabilistic complete algorithms: with increasing number of samplesan admissible solution would be found (if exists)
Probabilistic RoadmapsA discrete representation of the continuous C-space generated by ran-domly sampled configurations in Cfree that are connected into a graph.
Nodes of the graph represent admissible configuration of therobot.Edges represent a feasible path (trajectory) between the particularconfigurations.
Probabilistic complete algorithms: with increasing number of samplesan admissible solution would be found (if exists)
Having the graph, the final path (trajectory) is found by a graph search technique.
Probabilistic Roadmap StrategiesMulti-QueryGenerate a single roadmap that is then used for planning queriesseveral times.An representative technique is Probabilistic RoadMap (PRM)
Probabilistic Roadmaps for Path Planning in High Dimensional ConfigurationSpacesLydia E. Kavraki and Petr Svestka and Jean-Claude Latombe and Mark H.Overmars,IEEE Transactions on Robotics and Automation, 12(4):566–580, 1996.
Single-QueryFor each planning problem constructs a new roadmap to character-ize the subspace of C-space that is relevant to the problem.
Rapidly-exploring Random Tree – RRT LaValle, 1998Expansive-Space Tree – EST Hsu et al., 1997Sampling-based Roadmap of Trees – SRT
(combination of multiple–query and single–query approaches)Plaku et al., 2005
Build a roadmap (graph) representing the environment1. Learning phase
1.1 Sample n points in Cfree1.2 Connect the random configurations using a local planner
2. Query phase2.1 Connect start and goal configurations with the PRM
E.g., using a local planner2.2 Use the graph search to find the path
Probabilistic Roadmaps for Path Planning in High Dimensional ConfigurationSpacesLydia E. Kavraki and Petr Svestka and Jean-Claude Latombe and Mark H.Overmars,IEEE Transactions on Robotics and Automation, 12(4):566–580, 1996.
First planner that demonstrates ability to solve general planning prob-lems in more than 4-5 dimensions.
Path planning problem is defined by a tripletP = (Cfree , qinit ,Qgoal),
Cfree = cl(C \ Cobs), C = (0, 1)d , for d ∈ N, d ≥ 2qinit ∈ Cfree is the initial configuration (condition)Ggoal is the goal region defined as an open subspace of Cfree
Function π : [0, 1]→ Rd of bounded variation is called :path if it is continuous;collision-free path if it is path and π(τ) ∈ Cfree for τ ∈ [0, 1];feasible if it is collision-free path, and π(0) = qinit andπ(1) ∈ cl(Qgoal).
A function π with the total variation TV(π) <∞ is said to have boundedvariation, where TV(π) is the total variation
TV(π) = sup{n∈N,0=τ0<τ1<...<τn=s}∑n
i=1 |π(τi )− π(τi−1)|
The total variation TV(π) is de facto a path length.
Feasible path planning:For a path planning problem (Cfree , qinit ,Qgoal)
Find a feasible path π : [0, 1]→ Cfree such that π(0) = qinit andπ(1) ∈ cl(Qgoal), if such path exists.Report failure if no such path exists.
Optimal path planning:The optimality problem ask for a feasible path with the minimum cost.
For (Cfree , qinit ,Qgoal) and a cost function c : Σ→ R≥0Find a feasible path π∗ such thatc(π∗) = min{c(π) : π is feasible}.Report failure if no such path exists.
The cost function is assumed to be monotonic and bounded,i.e., there exists kc such that c(π) ≤ kc TV(π).
First, we need robustly feasible path planning problem(Cfree , qinit ,Qgoal).
q ∈ Cfree is δ-interior state of Cfree ifthe closed ball of radius δ centered at qlies entirely inside Cfree .
δ
q
−interior state
int ( )
obs
Cfreeδ
C
δ-interior of Cfree is intδ(Cfree) = {q ∈ Cfree |B/,δ ⊆ Cfree}.A collection of all δ-interior states.
A collision free path π has strong δ-clearance, if π lies entirelyinside intδ(Cfree).(Cfree , qinit ,Qgoal) is robustly feasible if a solution exists and it is afeasible path with strong δ-clearance, for δ>0.
Asymptotic optimality relies on a notion of weak δ-clearanceNotice, we use strong δ-clearance for probabilistic completeness
Function ψ : [0, 1]→ Cfree is called homotopy, if ψ(0) = π1 and ψ(1) =π2 and ψ(τ) is collision-free path for all τ ∈ [0, 1].A collision-free path π1 is homotopic to π2 if there exists homotopyfunction ψ.
A path homotopic to π can be continuously trans-formed to π through Cfree .
A collision-free path π : [0, s] → Cfree has weak δ-clearance ifthere exists a path π′ that has strong δ-clearance and homotopyψ with ψ(0) = π, ψ(1) = π′, and for all α ∈ (0, 1] there existsδα > 0 such that ψ(α) has strong δ-clearance.
Weak δ-clearance does not require points along apath to be at least a distance δ away from obstacles.
π
π’init
obs
Cfreeδ
int ( )
q
C A path π with a weak δ-clearanceπ′ lies in intδ(Cfree) and it is thesame homotopy class as π
It is applicable with a robust optimal solution that can be obtainedas a limit of robust (non-optimal) solutions.A collision-free path π∗ is robustly optimal solution if it has weakδ-clearance and for any sequence of collision free paths {πn}n∈N,πn ∈ Cfree such that limn→∞ πn = π∗,
limn→∞
c(πn) = c(π∗).
There exists a path with strong δ-clearance, and π∗ ishomotopic to such path and π∗ is of the lower cost.
An algorithm ALG is asymptotically optimal if, for any path plan-ning problem P = (Cfree , qinit ,Qgoal) and cost function c that admita robust optimal solution with the finite cost c∗
Pr
({limi→∞
YALGi = c∗})
= 1.
YALGi is the extended random variable corresponding to the minimum-cost solution included in the graph returned by ALG at the end ofiteration i .
Completeness for the standard PRM has not been provided whenit was introducedA simplified version of the PRM (called sPRM) has been mostlystudiedsPRM is probabilistically complete
Heuristics practically used are usually not probabilistic completek-nearest sPRM is not probabilistically completevariable radius sPRM is not probabilistically complete
Based on analysis of Karaman and Frazzoli
PRM algorithm:+ Has very simple implementation+ Completeness (for sPRM)− Differential constraints (car-like vehicles) are not straightforward
Different sampling strategies (distributions) may be applied
Notice, one of the main issue of the randomized sampling-basedapproaches is the narrow passageSeveral modifications of sampling based strategies have been pro-posed in the last decades
Single–Query algorithmIt incrementally builds a graph (tree) towards the goal area.
It does not guarantee precise path to the goal configuration.
1. Start with the initial configuration q0, which is a root of theconstructed graph (tree)
2. Generate a new random configuration qnew in Cfree3. Find the closest node qnear to qnew in the tree
E.g., using KD-tree implementation like ANN or FLANN libraries
4. Extend qnear towards qnewExtend the tree by a small step, but often a direct controlu ∈ U that will move robot the position closest to qnew isselected (applied for δt).
5. Go to Step 2, until the tree is within a sufficient distance from thegoal configuration
Rapidly explores the spaceqnew will more likely be generated in large not yet covered parts.
Allows considering kinodynamic/dynamic constraints (during theexpansion).Can provide trajectory or a sequence of direct control commandsfor robot controllers.A collision detection test is usually used as a “black-box”.
E.g., RAPID, Bullet libraries.
Similarly to PRM, RRT algorithms have poor performance innarrow passage problems.RRT algorithms provides feasible paths.
It can be relatively far from optimal solution, e.g.,according to the length of the path.
(V ,E), qnew ,min{γRRG (log(card(V ))/ card(V ))1/d , η});V ← V ∪ {qnew}; E ← E ∪ {(qnearest , qnew ), (qnew , qnearest)};foreach qnear ∈ Qnear do
if CollisionFree(qnear , qnew ) thenE ← E ∪ {(qrand , u), (u, qrand)};
return G = (V ,E);Proposed by Karaman and Frazzoli (2011). Theoretical results are related toproperties of Random Geometric Graphs (RGG) introduced by Gilbert (1961)and further studied by Penrose (1999).
PRM* – it follows standard PRM algorithm where connections areattempted between roadmap vertices that are within connectionradius r as a function of n
r(n) = γPRM(log(n)/n)1/d
RRT* – a modification of the RRG, where cycles are avoidedA tree version of the RRG
A tree roadmap allows to consider non-holonomic dynamics andkinodynamic constraints.It is basically RRG with “rerouting” the tree when a better path isdiscovered.