Title: 16-735 Paper Presentation
116-735 Paper PresentationNumerical Potential
Field Techniques for Robot Path Planning
- Sept, 19, 2007
- NSH 3211
- Hyun Soo Park, Iacopo Gentilini
Barraquand, J., Langlois, B., and Latombe,
J.-C.IEEE Transactions on Systems, Man and
CyberneticsVolume 22, Issue 2, Mar/Apr 1992 ,
pages 224 - 241
2How to generate collision free paths?
1. Global approach
- building a connectivity graph of collision
free configuration - searching the graph for a path (e.g. network
of one dimensional curves)
Image from Numerical Potential Field Techniques
for Robot Path Planning
2. Local approach
- searching a grid placed across the robots
configuration using heuristic functions (e.g.
tangent bug, potential field)
3Differences between global and local?
1. Global approach
- advantages very quick search in the
connectivity graph - disadvantages expensive precomputation step to
get the graph (exponential in the dimension n
of the configuration space Q where n is number
of the robots degrees of freedom)
2. Local approach
- advantages no precomputation needed
- disadvantages - search graph considerably
larger than
connectivity graph
- dead ends (local minima)
4How to combine advantages of both?
- Incrementally build a graph connecting the local
minima of potential functions defined over the
configuration space ? (no expensive
precomputation) - Concurrently searching this graph until the goal
is reached ? escaping local minima (search within
much smaller search graph)
- Based on multiscale pyramids of bitmap arrays of
? and ? (not analytically defined potential
function)
5Basic functions
1. Forward kinematic X R Q ? W (p,
q) ? x X (p, q) where p ? R is a point
in the robot
- Workspace bitmap BM W ? (1,0)
- x ? BM (x) where BM(x)
0 represents Wfree - - discrete grid GW workspace
representation is given as a grid at a 512512
level of resolution using a scaling factor 2 a
pyramid of representations is also computed
until the coarsest resolution level 1616 is
reached - ? is the distance between two
adjacent points (? min 1/512 and ? max
1/16 if given in percentage of the workspace
diameter) - - a 1-neighborhood is used, that means 4
neighbors in 2D, 6 neighbors in 3D, and 2n
neighbors in n-D within the discrete grid - - preparation a wavefront expansion is
computed by setting each point in GWfree
neighbor of boundary or of GWOi to 1 than the
neighbors of this new points to 2 and so on
until all GWfree has been explored
- k-neighborhood with k ? 1,r of a point x in a
grid of dimension r is defined as the set of
points in the grid having at most k coordinates
differing from those of x - k 1 ? 2 r points
- k 2 ? 2 r2 points
- k r ? 3r -1points
6Basic functions
- Configuration space? is also discretized in a
n-dimensional grid ?? and ?? free - - the resolution is defined as the
logarithm of the inverse of the distance
between two discretizaton points - the
resolution r of ?? is also - - for any given workspace resolution r,
the corrisponding resolution Ri of the
discretization of ? along the qi axis is chosen
in such a way that a modification of qi by
?i generates a small motion of the robot (any
point p of R moves less than nbtol ? ) -
-
- where
7How are potential functions built?
W-potential - computed in W
Q-potential - defined over Q
where G is called the arbitration
function - good Q-potential in ?
(whose dimension is big) - if Vpi are
free of local minimawe can not assume that U is
free of local minima it depends on
thedefinition of G
where pi are the control pointsin the
robot R - small dimension of ? (2 or 3)
for low cost information - have to be
built such that they are free of local minima
(neededprecomputation)
8W-Potential
1. Simple W-Potential
- get the position of control point p in ? and its
goal position xgoal - set Vp 0 at xgoal
- set the neighbors in ?? free of xgoal to 1 and
so on
Image from Numerical Potential Field Techniques
for Robot Path Planning
-?Vp is the direction to goal
2. Improved W-Potential
- build the workspace skeleton S as subset of ??
free computing the wavefront expansion - connect xgoal to ? and compute Vp in the
augmented S using a queue of points of S sorted
by decreasing value - compute Vp in ?? free \ ? as shown in 1.
Image from Numerical Potential Field Techniques
for Robot Path Planning
Image from Numerical Potential Field Techniques
for Robot Path Planning
9Q-Potential
- attracts control points pi toward their
respective goal position - arbitration function definition (minimize local
minima!)
- - concurrent attraction causes local minima
- - concurrent attraction compensed- avoid zero
value when one point have reached the goal
10Techniques to construct local-minima graph
- Best First motion
- Random motion
- Valley-guided motion
- Constrained motion
11Best First Motion and Random Motion Technique
1. Best-First Motion Technique
2. Random Motion Technique
Agitation
12Best First Motion and Random Motion Technique
1. Best-First Motion Technique
- - Good for n lt 4
- What if n is getting bigger?
- ? Searching unit increases in almost exponential
order ( ) as increasing DOF - ? Thus, we need another algorithm to search
local minima
2. Random Motion Technique
- The number of iteration can be specified by
user so that this algorithm performs fast.
13Random Motion Technique
Local Minimum Detection
Limited number of searching iteration If U(q) gt
U(q), then q is successor ? Gradient motion If
NO q, then q is local minimum
14Random Motion Technique
Path Joining Adjacent Local Minima
Smoothing
This can be performed concurrently on a parallel
computer because of no need to communicate
between the different processing unit ? Random
motion
15Random Motion Technique
Dead-end
No more local minima near current position
Drawback No guarantee to find a path whenever
one exists. However, by property of Brownian
Motion, as the number of iteration of random
motion,
16Random Motion Technique
PDF for Brownian Motion can be described as
Gaussian Distribution Function
Probability of location of qi after time t (end
of random motion)
At the boundary of obstacles, usually random
motion reflects to tangent hyperplane of
obstacles when motion collides against obstacles
but this paper implemented as substituting by
new random motion generation.
17Random Motion Technique
Duration of Random Motion
Should not be too short ? No chance to escape
Should not be too long ? waste of time and no
gradient motion
Attraction Radius ( )
18Random Motion Technique
Duration of Random Motion
Since attraction radius cant exceed workspace
diameter, by normalizing it to 1, we can obtain,
Finally, we have
Due to
19Valley Guided Motion Technique
Searching valleys V of Q-potential U in Qfree
- using -?U calculated in qstart and qgoal reach to
local minima qi and qg - search V for a path connecting qi and qg.
Atevery crossroad a decision is made using
anheuristic function defined as Q-potential
Uheur - if step b. is successful, path is
calculated,otherwise failure
Best experimental Q-potential function
Image from Numerical Potential Field Techniques
for Robot Path Planning
where s is a small number
20Valley Guided Motion Technique
When a point q ? Q is a valley points (q ? V)?
- compute U(q)
- compute the 2n values of U at the 1-neihbors of
q - for each possible valley direction i ? 1,n
- compare U(q) to the 2n 2 values of U at the
1-neighbors in the hyperplane orthogonal to the
qi axis - if U(q) is smaller or equal to these 2n 2
values, q is a valley point.
q
n 2
- complexity is O(n2) or if using 2-neighborhood
O(n4) - better using n-neighborhood but
cardinals are 3n-1 with exponential complexity
21Constrained Motion Technique
Starting from qstart in Qfree
- follow -?U flow until local minima qloc is
attained - if qloc qgoal the problem is solved otherwise
execute a constrained motion Mi(qloc) or
-Mi(qloc) with i ? 1,n - increase iteratively the i th configuration space
coordinate by the increment ?i until a saddle
point of the local minimum well is reached (U
decreases again). If (q1,, qi, ,qn) is the
current configuration its successor minimizes U
over the set consisting of (q1,, qi ?i ,,qn)
and its 1-neighbors in thehyperplane orthogonal
to the qi axis (the motion thus track a valley in
the (n-1)-dimensional subspace orthogonal to the
qi axis). - terminate the constrained motion and execute an
other gradient motion
qloc
n 2
Q-potential function used
22Conclusion
Approach - Constructing a potential field over
the robots configuration - Building a
graph connecting the local minima of the
potential - Searching graph Aim Escaping
local minima 4 techniques - Best-first
motion gives excellent result with few DOF
robots (n lt 5) - Random motion gives good
results with many DOF - Valley-Guided motion
inferior result but can be improved in future -
Constrainted motion good at planning the
coordinated motions