Title: 16735 Paper Presentation Numerical Potential Field Techniques for Robot Path Planning
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
- 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
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 ?free - ? is discretized in a n-dimensional grid ?? and
?? free - - 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 ??free
neighbor of boundary or of ???i to 1 than
the neighbors of this new points to 2 and so on
until all ??free has been explored
1- neighborhood (2D)
5
6 Multiscale pyramid
- 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)
g
g
?
s
s
g
g
?
s
Robotic Motion Planning 16-735 Potential
Field Techniques
7Basic functions
- Configuration spaceQ is also discretized in a
n-dimensional grid GQ and GQfree - - the resolution is defined as the
logarithm of the inverse of the distance
between two discretizaton points - the
resolution r of GW is also - - for any given workspace resolution r,
the corrisponding resolution Ri of the
discretization of Q 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
7
8How 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)
9W-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
10Q-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
11Techniques to construct local-minima graph
- Best First motion
- Random motion
- Valley-guided motion
- Constrained motion
12Valley 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 qs 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
qstart
qs
qg
V
Best experimental Q-potential function
qgoal
where s is a small number
12
13Valley 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
13
14Constrained 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
14
15Best First Motion and Random Motion Technique
1. Best-First Motion Technique
2. Random Motion Technique
Agitation
16Best 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.
17Random 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
18Random 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
19Random 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,
20Random 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)
21Random 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 ( )
22Random Motion Technique
Duration of Random Motion
Attraction Radius ( )
No correlation between potential function and
attraction radius ? Only probabilistic result
can be obtained.
23Random Motion Technique
Duration of Random Motion
Since attraction radius cant exceed workspace
diameter, by normalizing it to 1, we can obtain,
By taking the supremum of the Jacobian matrix, we
can guarantee more coarse motion in workspace.
24Random Motion Technique
Duration of Random Motion
Since attraction radius is strongly positive, we
treat it as random variable with truncated
Laplace Distribution of density.
Finally, we have
Double exponential shape of Laplace Distribution
of density
Due to
At first we actually assume attraction radius is
constant which is the same as diameter of
workspace. However, if we have distribution
function of attraction radius we also can have
corresponding probability of t.
Expectation
25Conclusion
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