HAL Id: cel-02130128
https://hal.inria.fr/cel-02130128
Submitted on 15 May 2019
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
Distributed under a Creative Commons Attribution - NonCommercial| 4.0 International
License
Motion planning
Florent Lamiraux
To cite this version:
Florent Lamiraux. Motion planning. Doctoral. GdR Robotics Winter School: Robotica Principia,
Centre de recherche Inria Sophia Antipolis – Méditérranée, France. 2019. �cel-02130128�
Introduction Definitions Random Sampling Collision testing Software
Motion planning
Florent Lamiraux
CNRS-LAAS, Toulouse, France
Introduction Definitions Random Sampling Collision testing Software
Motion planning
Introduction
Definitions
Random Sampling
Collision testing
Software
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Context
industrial robot
aerial vehicle
autonomous
vehicle
Autonomous mobile systems
I
moving in an environment cluttered by obstacles
I
possibly subject to kinematic or dynamic constraints
Motion planning : automatically compute a feasible collision-free
path between two given configurations.
Introduction Definitions Random Sampling Collision testing Software
Context
industrial robot
aerial vehicle
autonomous
vehicle
Autonomous mobile systems
I
moving in an environment cluttered by obstacles
I
possibly subject to kinematic or dynamic constraints
Motion planning : automatically compute a feasible collision-free
path between two given configurations.
Introduction Definitions Random Sampling Collision testing Software
Context
industrial robot
aerial vehicle
autonomous
vehicle
Autonomous mobile systems
I
moving in an environment cluttered by obstacles
I
possibly subject to kinematic or dynamic constraints
Motion planning : automatically compute a feasible collision-free
path between two given configurations.
Introduction Definitions Random Sampling Collision testing Software
Robot
Set of rigib bodies B
0
, · · · B
m
, linked to one
another by joints.
T3 R3 R1 R1 R1 R1 R1 R1 q0 ... ... q1 q2 qi qi +1 qi +2 B0 B1 B2Joint : mobility of a body in the reference
frame of its parent, parameterized by one or
several numbers.
Introduction Definitions Random Sampling Collision testing Software
Robot configuration
The configuration q of a robot is represented
by the concatenation of the parameters of
each joint.
T3 R3 R1 R1 R1 R1 R1 R1 q0 ... ... q1 q2 qi qi +1 qi +2 B0 B1 B2 Motion planningIntroduction Definitions Random Sampling Collision testing Software
Forward kinematics
Computation of the position of each joint in
world frame.
M
i
(q) = M
parent(i )
(q) M
i /parent
T
i
(q)
R0 Rparent(i ) Mparent(i )(q) Ri Mi(q) Mi /parent Ti(q) Motion planningIntroduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Introduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Introduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Introduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Introduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Introduction Definitions Random Sampling Collision testing Software
Definitions
I
Workspace : W = R
2
or R
3
: space in which the robot moves
I
Workspace obstacle : compact subset of W, denoted by O.
I
Configuration space : C.
I
Position in configuration q of a point M ∈ B
i
: x
i
(M, q).
I
Configuration space obstacle :
C
obst
= {q ∈ C,
∃i ∈ {1, · · · , m}, ∃M ∈ B
i
, x
i
(M, q) ∈ O ou
∃i , j ∈ {1, · · · , m}, ∃M
i
∈ B
i
, ∃M
j
∈ B
j
,
x
i
(M
i
, q) = x
j
(M
j
, q)}
I
Free configuration space : C
free
= C \ C
obst
.
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Motion
I
Motion :
I
continuous mapping from [0, 1] into C.
I
Collision free motion :
I
continuous mapping from [0, 1] into C
free
.
Introduction Definitions Random Sampling Collision testing Software
Motion
I
Motion :
I
continuous mapping from [0, 1] into C.
I
Collision free motion :
I
continuous mapping from [0, 1] into C
free
.
Introduction
Definitions
Random Sampling Collision testing Software
Motion planning problem
initial configuration
goal configuration
C = [−2π, 2π]
6
Introduction Definitions Random Sampling Collision testing Software
History
I
before the 1990’s : mainly a mathematical problem
I
Real algbraic geometry
I
Decidability : Schwartz and Sharir 1982
I
Tarski theorem, Collins decomposition
I
Approximate cell decomposition
I
from the 1990’s : an algorithmic problem
I
random sampling (1993)
I
asymptotically optimal random sampling (2011)
Introduction Definitions Random Sampling Collision testing Software
History
I
before the 1990’s : mainly a mathematical problem
I
Real algbraic geometry
I
Decidability : Schwartz and Sharir 1982
I
Tarski theorem, Collins decomposition
I
Approximate cell decomposition
I
from the 1990’s : an algorithmic problem
I
random sampling (1993)
I
asymptotically optimal random sampling (2011)
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Random sampling motion planning methods appeared in the
early 1990’s
I
Principle
I
sample random configurations
I
test whether they are collision-free
I
build a roadmap the nodes of which are the free configurations,
I
and the edges of which are collision-free linear interpolations.
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Random sampling motion planning methods appeared in the
early 1990’s
I
Principle
I
sample random configurations
I
test whether they are collision-free
I
build a roadmap the nodes of which are the free configurations,
I
and the edges of which are collision-free linear interpolations.
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Random sampling motion planning methods appeared in the
early 1990’s
I
Principle
I
sample random configurations
I
test whether they are collision-free
I
build a roadmap the nodes of which are the free configurations,
I
and the edges of which are collision-free linear interpolations.
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Random sampling motion planning methods appeared in the
early 1990’s
I
Principle
I
sample random configurations
I
test whether they are collision-free
I
build a roadmap the nodes of which are the free configurations,
I
and the edges of which are collision-free linear interpolations.
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Random sampling motion planning methods appeared in the
early 1990’s
I
Principle
I
sample random configurations
I
test whether they are collision-free
I
build a roadmap the nodes of which are the free configurations,
I
and the edges of which are collision-free linear interpolations.
Introduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
init
q
goal
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
init
q
goal
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM) 1994
q
goal
q
init
Motion planningIntroduction Definitions Random Sampling Collision testing Software
Probabilistic roadmap (PRM)
I
Numerous useless nodes are created
I
this makes the connection of new nodes more time consuming
I
Variant : visibility-based PRM
I
only interesting nodes are kept.
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
init
q
goal
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Visibility-based probabilistic roadmap (Visi-PRM) 1999
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
init
q
goal
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly exploring Random Tree (RRT) 2000
q
goal
q
init
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Pros :
I
no explicit computation of the configuration space
I
easy to implement,
I
robust.
I
Cons :
I
no completeness, only probrabilistic completeness
I
difficult to find narrow passages.
I
required operators :
I
collision checking
I
for configurations (static)
Ifor linear interpolation (dynamic)
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Pros :
I
no explicit computation of the configuration space
I
easy to implement,
I
robust.
I
Cons :
I
no completeness, only probrabilistic completeness
I
difficult to find narrow passages.
I
required operators :
I
collision checking
I
for configurations (static)
Ifor linear interpolation (dynamic)
Introduction Definitions Random Sampling Collision testing Software
Random sampling
I
Pros :
I
no explicit computation of the configuration space
I
easy to implement,
I
robust.
I
Cons :
I
no completeness, only probrabilistic completeness
I
difficult to find narrow passages.
I
required operators :
I
collision checking
I
for configurations (static)
I
for linear interpolation (dynamic)
Introduction Definitions
Random Sampling
Collision testing Software
Asymptotically optimal random sampling
Variants of PRM and RRT exist, and are asymptotically optimal :
I
when the number of nodes tends to infinity,
I
the solution computed by the algorithm tends to the optimal
collision-free path.
Introduction Definitions Random Sampling Collision testing Software
PRM*
PRM
V ← ∅, E ← ∅
for i ∈ {0, · · · , n} do
x
rand
← SampleFree
i
U ← G .Near(x
rand
, r )
for all u ∈ U in order of
increa-sing ku − x
rand
k do
if x
rand
and u in different
connected
components
then
TryConnect (x
rand
, u)
end if
end for
end for
PRM*
V ← SampleFree
i =1,···n
, E ← ∅
for v ∈ V do
U ← G .Near(v ,
r
∗
) \ v
for all u ∈ U do
TryConnect (v , u)
end for
end for
r
∗
= γ
PRM
(log(n)/n)
1 d Motion planningIntroduction Definitions Random Sampling Collision testing Software
PRM*
PRM
V ← ∅, E ← ∅
for i ∈ {0, · · · , n} do
x
rand
← SampleFree
i
U ← G .Near(x
rand
, r )
for all u ∈ U in order of
increa-sing ku − x
rand
k do
if x
rand
and u in different
connected
components
then
TryConnect (x
rand
, u)
end if
end for
end for
PRM*
V ← SampleFree
i =1,···n
, E ← ∅
for v ∈ V do
U ← G .Near(v ,
r
∗
) \ v
for all u ∈ U do
TryConnect (v , u)
end for
end for
r
∗
= γ
PRM
(log(n)/n)
1 d Motion planningIntroduction Definitions Random Sampling Collision testing Software
kPRM*
kPRM
V ← ∅, E ← ∅
for i ∈ {0, · · · , n} do
x
rand
← SampleFree
i
U ← G .Nearest(x
rand
, k)
for all u ∈ U in order of
increa-sing ku − x
rand
k do
if x
rand
and u in different
connected
components
then
TryConnect (x
rand
, u)
end if
end for
end for
kPRM*
V ← SampleFree
i =1,···n
, E ← ∅
for v ∈ V do
U ← G .Nearest(v ,
k
∗
) \ v
for all u ∈ U do
TryConnect (v , u)
end for
end for
k
∗
= k
PRM
log(n), k
PRM
> e(1 +
d
1
)
Motion planningIntroduction Definitions Random Sampling Collision testing Software
kPRM*
kPRM
V ← ∅, E ← ∅
for i ∈ {0, · · · , n} do
x
rand
← SampleFree
i
U ← G .Nearest(x
rand
, k)
for all u ∈ U in order of
increa-sing ku − x
rand
k do
if x
rand
and u in different
connected
components
then
TryConnect (x
rand
, u)
end if
end for
end for
kPRM*
V ← SampleFree
i =1,···n
, E ← ∅
for v ∈ V do
U ← G .Nearest(v ,
k
∗
) \ v
for all u ∈ U do
TryConnect (v , u)
end for
end for
k
∗
= k
PRM
log(n), k
PRM
> e(1 +
d
1
)
Motion planningIntroduction Definitions Random Sampling Collision testing Software
PRM*, kPRM*
Note that :
I
PRM*, kPRM* are not iterative anymore,
I
making them iterative is not trivial.
Introduction Definitions
Random Sampling
Collision testing Software
Rapidly Exploring Random trees
There exists also asymptotically optimal variants of RRT
I
RRG, RRT*
but they are specific to a given problem (q
init
, q
goal
).
Introduction Definitions Random Sampling Collision testing Software
Collision tests
I
static : for configurations
I
problem : given
I
two rigid objects made of triangles
I
the relative position of one with respect to the other one
determine whether they are colliding.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Bounding volume hierarchies
I
binary tree of bounding volumes such that
I
each node has two children,
I
leaves are triangles.
Introduction Definitions Random Sampling
Collision testing
Software
Collision testing for configurations
I
Algorithm
I
test root nodes of each tree,
I
if two bounding volumes collide, test one with the children of
the other one.
Introduction Definitions Random Sampling
Collision testing
Software
Collision testing for configurations
I
Algorithm
I
test root nodes of each tree,
I
if two bounding volumes collide, test one with the children of
the other one.
Introduction Definitions Random Sampling
Collision testing
Software
Collision testing for configurations
I
Algorithm
I
test root nodes of each tree,
I
if two bounding volumes collide, test one with the children of
the other one.
Introduction Definitions Random Sampling
Collision testing
Software
Collision testing for configurations
I
Algorithm
I
test root nodes of each tree,
I
if two bounding volumes collide, test one with the children of
the other one.
Introduction Definitions Random Sampling Collision testing
Software
Open source software platform
Several open-source platforms for motion planning are available
I
OMPL (Rice University)
I
no kinematic chain,
I
no collision checking.
I
Openrave (CMU)
I
MoveIt (ROS)
I
Integration in ROS of
I
fcl (collision checking), KDL (kinematic chain)
I
Humanoid Path Planner
I
numerical constraints (quasi-static equilibrium)
I
advanced manipulation planning
Introduction Definitions Random Sampling Collision testing
Software