Uploaded by Νικος Αθανασιου

zelek1999

advertisement
Dynamic Discovery and Path Planning
for a Mobile Robot at a Cocktail Party
John S. Zelek
Engineering Systems & Computing,
S&od of Engineering, University of Guelph,
Guelph, ON, N1G 2W1, Canada
jzelek@uoguelph.ca,http://www.eos.noguelph.ca/webfles/zelek
Abstract
Sensor-based
discovery
(i.e., dynamic) path planning
is problematic because the path needs to be contin-
ually recomputed as new information is discovered.
A pmcers-based client-server approach has been succesfully deployed to solve this problem, thus permitting concurrent sensor-based map and localizationcorrection updates as well as concurrent path compntation and execution. A potential function is created by
solving Laplare’s equation (Le., a harmonic function)
using an iteration kernel convolved with an occupancygrid representation of the current free space. The path
produced (i.e., by performing steepest gradient descent
on the harmonic function) is optimal in the sense of
minimiing the distanee to the goal in addition to mini m i ~ b the
g hit+&g probabi!ity. This &ips deviate the
uncertainty iufiuence on path planning. In this paper
the approach is extended to include a specification on
the target approach: appropriately referred to as the
&g
component of the cocktail party problem. The
extension is unique in that no additional computational
complexity is necessary because of the inherent prop
erty of harmonic functions encoding more than one descending directional derivative from any single point is
exploited. Biasing the entire path produce, an unique
path:when compared to the steepest descending gradent but the arrival approach requirement may not be
met. the path is only biased when open space is detected between the current robot position and the goal.
It takes on the form of an opposite direction bias to POsition the robot before slowly changing, constrained by
a turning radius constraint, to the required approach
direction.
Keywon&- autonomous mobile robot, navigation,
dynamic path planning, harmonic functions
Introduction
Sensor-based discovery path planning is the guidance of
an agent - a robot - without a complete a priori map,
by discovering and negotiating the environment so as
to reach a goal location while avoiding all enmintered
obstacles.
The dynamic path planning problem extends the basic navigation planning problem (Latombe 1991). The
preliminaries and assumptions of the dynamic path
planning problem are as follows:
Let R be a single rigid object - the robot - moving
in a Euclidean space E, called the environment, r e p
resented as PN,with N = 2. Only 2D motion is
considered, however the concepts apply to higher dimensions, where N > 2.
Let A,...,Onbe either fixed (or moving rigid) objects
distributed in E. The positions [and dynamics) of an
object pj may or may not be known a priori. The free
space of the robot is the allowable space for navigation and is obtained by subtracting all the pi models
from the environmental space P.
Both the geometry of R,B,..., and the locations
of the p,’s in E are assumed to be approximated to
within a certain predefined degree of slack or tolerance. In addition, it is assume that the only kine
matic constraint that limits the motions of R is the
two-dimensional plane on which it navigates.
Given the above definitions and assumptions, the dynamic path planning problem is defined as follows:
Given an initial position and orientation (qatnrt =
(zi,yi,&)) and a goal position and orientation
(ggonl= (zg,
y,, 0,)) ofR in E (both defined in terms
of a global coordinate system), generate a path T
specifying a continuous sequence of positions and orientations of R, avoiding contact with the ,&’s, starting at ( z i , y i r B i ) and terminating at (z,,yg,O,). As
the robot navigates, the pi’s may be hown a priori, appear suddenly, disappear suddenly, remain mchanged, or be dynamic. It is a s m e d that R is
circular. Failure is reported if the goal is unattah
able in the a m e n t environment, or if the position of
R is lost, or if the obstacles pj’s in the environment
E cannot be monitored with &dent detail.
Typically, the orientation of the god does not necessarily need to be attained but for the cocktattail seming
problem, it is required. The orientation necessary for
initiating the robot is achieved by an appropriate rotation ofthe pIatform before commencing execution.
The cocktad serving problem is used to describe the
destination orientation requirement because it draws on
on
0-7803-5655-1/99/$10.00 0 1999 IEEE
285
a direct analogy with a crowded room of people min.
gling about with the robot playing the role of the waiter
approaching potential clients in a direction dependent
on a person's global orientation. This problem be a p
plied to other service-based applications where the a p
proach position is important.
Background
One type of heuristic algorithm for p e r f d n g dynamic
path planning is the potential field technique based
on the summation of potentials (Khatib 1986). This
technique offers speedup in performance but canpot offer any performance guarantee. In addition, these algorithms typically get stuck at local minima. Techniques have been devised for escaping these local minima such as the randomized path planner (Barraquand
& Latombe 1991) which escapes. a local minimum by
executing random walks, but this is at a cost of computational efficienq.
A complete algorithm for perform% dynamic path
planning is the D
' algorithm (Stentz 1995). D' (i.e.,
dynamic A*) performs the A' algorithm initially on
the entire workspace. As new information is discovered, the algorithm incrementally repairs the necessary
components of the path. This algorithm computes the
shortest distance path to the goal with the information
available a t any time instance. One problem with the
D' algorithm is that no allowances are made for uncertainty in the position and orientation of the sensed
obstacles (i.e., sue is also applicable for obstacles) and
robot.
An approach that approximates being a complete algorithm is called pmbabilistic planning (Barraquand et
al. to appear). Probabilistic planning is generally used
for multi-link manipulators and when the configuration
space has more than five degrees of freedom. In this
approach, the fkst step is to ei3dently sample the configuration space at random and retain the free configurations as milestones. The next step checks if each
milestone can be circumvented by a collision free path,
producing a probabilistic roadmap.
It is argued that the harmonic function potential field
can be used for complete 2D path planning provided
that its spatial extent is limited and it is integrated
with a global path planner to compensate for the imposed myopia. The presented technique makes stronger
completeness claims than the pmbabilistic approach. In
addition, in contrast to the D
' technique, the optimality properties (i.e., minimizing the hitting probability)
make allowances for the position and size uncertainties
associated with sensed obstacles.
Approach and Context
Approach
A path planning framework has been proposed and irndemented as p q of the SPOTT mobile robot control
architecture (Zelek 1996). Within SPOTT's framework
there are two concurrently executing planning modules.
286
Planning is defined along a natural division: (1) local,
high resolution, and quick response, versus (2) global,
low resolution, and slower response. The local planning module executes a path based on what is currently
known about the environment as encoded in an occupancy grid (Elfes 1987). A potential field technique
using harmonic functions is used, which are guaranteed
to have no spurious local minima (Connolly & Grupen
1993). A harmonic function is the solution to Laplace's
equation. Any path - determined by performing pradient descent on the harmonic function -has the desirable
property that if there is a path to the goal, the path will
terminate there (Doyle & Snell 1984). In addition, the
steepest descent gradient path is also optimal in the
sense that it provides the minimum probability of hitting obstacles while minimizing the traversed distance
to a goal location (Doyle & Snell 1984). This optimality condition permits modeling uncertainty with an error tolerance (i.e., for the robot and obstades) provided
that the robot is frequently localized and the obstacles'
physical properties are validated via sensor information.
This may appear to he heuristic, but it is based on not
permitting the robot's position mor to grow beyond a
wtain k e d limit (i.e., by re-localizing).
The computation of the harmonic function is expensive, being linear in the number of grid points. The
technique proposed is a complete dgorithrn (i.e., also
referred to as an ezact algorithm): guaranteed to find a
path between two wntigurations if it exists. A complete algorithm usually requires exponential time in
the number of degreesof-freedom (Halperin, Kavra!+
& Latomhe 1997). Methods-of-relaxation techniques
were used to achieve harmonic function convergence in
O(rn),where rn is the number of data points. Since m
is a square matrix of size n by n, then convergence is
achieved in O(n2),where 2 is the degree of freedom.
To generahze, O(nd)is the convergence rate where d
is the degree of freedom (i.e., exponential in the degree of freedom). The approach presented is confined
to a 2D workspace. An emphasis is placed on obtaining
real-ttme performance in this dimensional space wirh
future prospects of adaptation to higher dimensionalities. Real-time is defined as responding to environmental stimuli faster than events change in the world.
A client-server process model is used to concurrently
compute the potential field (Le., encode all the potential paths to the goal) and execute the local path. A
global planning module (Zelek 1996) uses a search algorithm (i.e., Dijkstra's algorithm) on a graph structure representation of the map'. The role of the global
planning module is to provide global information to the
local path planner. This is necessary because the spa
tial extent of the local path planner is k e d to limit
computation times,
A typical operational scenario for SPOTT (&lek
'This is only possible if a global map is available a priglobal map only contains the permanent
features of the environment (e.g., walk).
ori. Initially, the
1996) ran be presented in the following manner. The
goal spedfication is given as input by the user. If an
a priori CAD map eldsts, it is loaded into the mnp
database. The role of the control programs (i.e., b e
havioral controller) is to provide the local path planner
(i.e., potential field) with the necessary sensor-based
information for computation, such as obstacle configurations, cun’ent robot position, sub-gods if necessary, in
addition to performingreactive control. The behavioral
controller continually computes mapping and localization information hy processing sensor data. As the path
is being computed, another module is responsible for
concurrently performing steepest gradient descent on
the potential function in order to determine the local
robot path. If the ultimate goal is outside of the local
bounds, then the global path planner is responsible for
determining the local sub-goal. If the robot is about to
move outside the local bounds, the local map boundaries are shifted so as to position the robot to the center.
Computing the Harmonic Function
SPOTT’s local path planner is b a e d on a potential field
method using harmonic functions, which are guaranteed
to have no spurious local minima (Connolly & Grnpen
1993). A harmonic function on a domain Cl c R” is a
function which satisfies Laplace’s equation:
The value of 4 is given on a closed domain s1 in the
configuration space C. For mobile robot navigation,
C corresponds to a planar set of coordinates (z,y).
A barrhonic function satisfies the Maximum Principle
and ‘Uniqueness Principle (Doyle & Snell 1984). The
Maximum Principle states that a ‘harmonic function
f(z,y) defined on Cl takes on its maximum value M
and its minimum value rn on the boundary and guarantees that there are no local minima in the harmonic
function. The Uniqueness Principle stipulates that if
f(z,y) and g(z,y) are harmonic functions on R such
that f(z,y) = g(z,g) for all houndaq.points, then
f(z,y) = g(z,Y) for all z , ~ .
Iterative applications of a finite difference operator
are used to compute the harmonic function because it
is sufficient to only consider the exact solutionat a finite
number of mesh points. This is in contrast to finite element methods which compute an approximationof an
exact solution by continuous piecewise polynomiil functions. The obstacles and grid boundary form boundary
conditions. The harmonic function is computed in the
free space using an iteration kernel, which is formed
by taking advantage of the harmonic function’s inherent averaging property, where a point is the average of
its neighboring points. A fivepoint iteration kernel for
solving Laplace’s equation is used:
The boundaries of the obstacles and the mesh is modeled using Dirichlet boundary conditions (i.e., where U
is given at each point of the boundary). The path - determined by performing steepest gradient descent on a
harmonic function using Dirichlet boundary conditions
-is optimal in the sense that it is the minimumprobability of hitting obstacles while minimizing the traversed
distance to a goal location (Doyle & SneU 1984). In
contrast, Neumann boundary conditions cause such a
path to graze obstacle boundaries. The Dirichlet optimality condition permits modeling uncertainty with an
error tolerance (i.e., obstacle’s position and size, robot’s
position) provided that the robot is frequentlylocalized
using sensor data. The robot is modeled as a point but
all obstacles are compensated to account for the size of
the robot in addition to an uncertainty tolerance.
The computation of the harmonic function is performed over an occupancy grid representation of the
local map. Harmonic function convergence is linear
(as reported earlier) in the number of gnd points b e
cause “Methods-of-Relaation” (4mes 1992) techniques
such as Gauss-Seidel iteration with Successive O w Relaxation, combined with the “Alternatcng Direction”
(ADI) method were used. Cornputation time is r e
stricted by using only a local window. This also ensures
proper encoding of the harmonic function which rapidly
decays m narrow corridors (Zelek 1996). A global path
planner (Zelek 1996) provides information about goals
outside the local hounds.
Another approach for speeding up performame is to
provide an initial guess to the solution, namely the simpler heuristic potential field (Khatib 1986) (i.e.>summation of potentials). This m a k s the local path planner
an iterative-refmement anytime approach (Zilhemtein
1996), where after a short period after a map change,
response is reactive but not optimal or guaranteed. After convergence IS achieved, the response is, of course,
opbmal.
The time for convergence will vary depending on the
resolution of the image. For the configuration given m
Figure 1, times for convergence were measured for varying resolutions. Convergence was based on observing
the error rate decrease to an insignificant value. The
error rate was based on the maximum change in any
gnd element value between successive iterations. An
error of 2.7x10-’ was attained on a 16 hy 16 grid in
,162 mRops (million floatmg point operations). An er~ reached on a 32 by 32 grid in ,927
ror of 3 . 2 5 ~ 1 0 -was
mflops. An error of 1.88x10-‘ was achieved on a 64 by
64 grid in 14.43 mflops. Typically, SPOTT’s local map
was 36 by 36, making convergence in less than a second
or two highly realizable.
A quad tree representation (Pavlidis 1982) vras also
used to reduce the number of grid elements and effectively speed up convergence (Zelek 1998). For any irregular grid sampliig (including quad tree), the iteration
kernel can be rewritten as shown in Equation 3, where
281
(b) Poll to see if a new robot position &ate
is available.
If so, correct the accumulated erro:.
(c) Poll to see if any newly sensed data is available. If so,
update the map.
(d) Update the robot's position based on theodometer sen601.
( e ) Poll to see if the executionerpre module requests a
4
Figure I:
new steering direction for the robot. If 50, compute it
by calculating the steepest dexent gradient vector at
the w e n t estimate of the robot's position.
( f ) If the robot is near the edge of the border of the potential field window,move the window so that the robot
is at the center and go to Loop 1; else go to Loop 2.
ia
L
ab X& i
a
b
d
Paths Generated at 64 by 64. She fig-
ure shows the equal-potential contoun generated (solid lines)
and the mrious paths computed (dashed lines) from varying
starting positions using steepest gradient descent for the above
configuration. The resolution of the grid was 64 by 64.
U, are neighboring points to U i J ,R, distance away.
n=d U.
En=-&
= Xf&
(3)
Again, linear interpolation is used to approximate gradients when the position of the robot is in between grid
points. This introduces some error in the minimal hitting path but the benefit in significantly less computations provides adequate justification for t h i s trade-off.
In addition, the introduced error has minimal effect in
increasing the chance of collision because the error is
in the large grid locations which are void of obstacles
and goals. As stated earlier, since computation time is
linear O(m)in the number of grid points m,then a reduction of k (i.e., where k is a fraction less than 1)in m
equivalently reduces the computation time to O(km).
Computation and Execution
The cornputation of she harmonic function and the execution of the path are executed as separate processes.
The path executioner requests trajectories which are
computed by performing steepest gradient descent on
the barmonic function. Linear interpolation is used to
approximate gradients when the position of the robot is
between mesh points. The process computing the iteration kernels, servicing requests from the executioner
and providing map updates based on current sensor
data uses following algorithm:
1. Loop 1 Load initial map if available.
the goal is outside the bounds of the potentid field
window, project the goal onto the window border. The
border location is based on information provided by the
global path planner.
3. Loop 2:
(a) Compute an averaging iteration kernel over the entire
local grid space.
2. If
288
This computation has the desirable property that
map features can be ridded or subtracted dynamically
(Le., as they are sensed) alongside with the correction
of the robot's position. Implied is the assumption that
step 3(a) is executed more more frequently than compared to steps 3(b) through to 3(f). In addition, these
events are independent of the computation and the execution of the path.
Cocktail Party Problem
One method of solving the problem where orientation
matters is to inmease the dimensionality of
for example, to N = 3 from N = 2. This course of action is
extremely costly because the time complexity increases
exponentially with additional dimensions.
At any point P ( z , y ) on the potential function 4,
there is a vector that is the direction in which 4 undergoes the greatest rate of deuease and that is referred
to as the steepest descent gmdient. In addition to this
direction, there is actually a whole family of directions
that are of descending value. Let As be a vector that
has a magnitude As and points from P to PI. Since
A s = iAz+jAyandthegradientof+isV+=
it follows that A4 = (As).V# .... Let As = a s ,
and Ab = (ii.VO)Vs + .. ., so that
=
.. . .
Taking the limit of this equation gives us $$ = %Vg.
The quantity
is called the directional deriuatiue of
6. The maximal value of As is the direction of the
steepest descent gradient - As, - and is the trajectory
we have used~whenthe target approach orientation was
not specified. However, there is a family of functions
bounded by the equi-potential contour at P. Let t'he
two directions Asl and Asz define the directions of the
equi-potential contour emanating from P. The minimal
hitting urobability path is defined by the steepest descen&g gradientbut other paths can. be systematically
chosen between the equi-potential contours. The subsequentdiscrete trajectoq i n w d S are limited by the
of the robot. ~n
our particnon.ho]onomic
ular experimental operating scenario it is not an issue
because we are using a Nomadics Scout mobile platform (i.e., holonomic robot) hut it will be an issue in
the future as we plan on using the technique for a yetto-beacquired outdoor four-wheel drive robot.
e,
+
2
ig+j'$$,
2
+
Figure 2 lkajectory Preposition Bias on Steepest
Gradient Descent. The role of the trajectcq prepositions
(e.g., left) is to bias the steepest gradient descent operation
that is performed on the potential function by the local path
planner.
The idea for choosing different trajectoriesother than
the one b a d on steepest gradient descent stems from
the task command language the SPOTT robot architecture uses. SPOTT uses a language lexicon (Zelek
1997) for defining robot tasks and takes on the form of
a minimal spanning subset for human 2D navigational
tasks (Landau & Jackendoff1993). The task command
lexicon consists of a verb, destination, direction and a
speed. The role of the trajectory prepositions (i.e., direction category in the task command) is to bias the
steepest gradient descent operation that is performed
on the potential function by the local path planner.
Rather than using steepest gradient descent, the trajectory is a descending gradient that is biased to be as close
as possib:e to the direction specified by the trajectory
preposition (see Figure 2). Based on this strategy of bi-
potential directional derivatives does not come at any
computational cost but only requires a slight change in
the decision process of step 3'1.) in the algorithm presented earlier. As seen in Figure 3, when some of the
trajectories are based in the opposite direction of the
steepest descendinggradient, there is a tendency for the
trajectory to oscillate (see the S and W biases in Figure 3). In addition, biasing the entire path does not
guarantee achieving the approach direction. Another
approach was to bias the trajectory off-center from the
steepest descending gradient (see Figure 4). Again,
there was no certainty in meeting the desired approach
direction.
Figure 4 Family offunctions. The steepest descending
gradient is illustrated by a solid line. The dashed lines illustrates other trajectories formed by the differential derivative
either being left or right of the steepest dewending gradient
but confined by the qui-potential contour lines.
The one conclusion gained &om these investigations
was that biasing the entire trajectory was not viable for
x-
Figure 3:
Bias Results. The solid line represents the
steepest descending gradient trajectory. The trajectwy biased
in the South direction is illustrated by the dotted line. The
trajectwy biased in the South=West direction is drawn with a
dash-dot pattern and the trajectwy biased in the West direction is shown with a dashed pattern. In addition, the.NorthWen biased trajectory is shown by a dotted line with circles
as samples.
asing the steepest descendinggradient, we examined the
validity of this approach for meeting the requirement of
approach direction (see Figure 3). Choosing amongst
trying to achieve an approach direction. Alternatively,
it was decided to apply the bias only when the current
robot position and goal were in open space, and the
goal was visible and within sensing range of the robot.
Given that the target position is known and that the
robot's position is approximatelyknown,the open space
conmtion is computed using the quad-tree representation: if the cell a t a particular scale neighbors a cell
containing the goal, then activate tbe trajectory bias.
In general, the open space condition 1s active when the
target is situated in the unoccluded visibility region of
the robot and within sensor range. As shown in Figure
5, even biasing the trajectory in open space does not
necessarily guarantee the target approach direction to
be that of the imposed bias, The trajectones in Figure
5 show that the bias forces the trajectory as far as it
can go (while maintaining a negative directionalderivative) and then the trajectory oscillates back towards the
goal. This is especially true when the desired approach
direction is in the opposite direction of the steepest d e
scending gradient. This leads us to conclude that in
open space to set the approach direction, we should bias
the trajectory in the opposite drection of the desired
289
putational costs in computing apatb to the target when
compared to the case where the constraint is not spedfied. The approach is applied in an environment where
the existence of obstacles and their locations is not necessarily known a priori. We are currently investigating
addressing the inclusion and representation of moving
obstacles and goals into our mobile robot path planning
strategy.
References
Figure 5
Ames, W. F. 1992. Numerical Methods for Partial Differential Equati-.
Academic Press Inc.
Barraqoand, J., and Latombe, J.-C. 1991. Robot motion
planning: A distributed representation approach. Internn-
Wen, North-West.North-East. East. Notice that the path
tries to go as far as it can based on the bias then there is an
oscillating pull back t o the goal.
Bamaquand, J.; Kavraki, L.; Latombe, J.; Li, T.; Motw i , R.; and Raghavan, P. to appear. A random sampling scheme for path planning. Internotionol Journal of
Bias Tests in Open Space In moving from
left to right. the biases in an open space configuration are
tiowl Journal of Robotics Resennh 10628449.
Robotics Reseanh
approach (as long as the steepest descending gradient is
not approximately equal t o the desired approach), and
when the trajectory is about the osdate, the bias is
slowly changed back towards the desired approach (see
Figure 6). Note that there was no incurred cost in the
Connolly, C. I., and Gmpen, R A. 1993. On the applications of harmonic fmctions to robotis. Journal of Robotic
Systems 10(7):931-946.
Doyle, P. G., and Snell, J. L. 1984. Rnndom Walk and
Electric Networks. TheMathematicalAssociation of America.
Elf-, A. 1987. Sonar-based real-world mapping and navigation. IEEE Journnl of Robotics and Automation 3249265.
Halperin, D.; Kavraki, L.; and Latombe, J.-C. 1997.
Robotics. Boca Raton, FL CRC Press. chapter 41, 755778.
Khatib, 0. 1986. Real-time obstacle avoidance for manip
ulators and mobile robots. The Internotional Journal of
Robotiw Research 5(1):90-98.
Landau. B.. and Jackendoff,R 1993. what and where
in spatial l&guage and spatial cognition. Behavioral and
Bmin Sciences 16217-265.
Latombe, J.-C.. 1991. Robot Motion Planning. Kluwer
Figure 6
!Trajectories in Open Space with Bias
Strategy. (a) The left path's intent was to approach the
target in the East direction. This was achieved by first biasing
the path in the West direction and when the path was about t o
oscillate, to slowly change the bias towards the East direction.
(b) Similarly.the right path's intent was to approach the target
in the West direction and a similar strategy was adopted.
computing of the harmonic function when compared to
the situation where the approach direction constraint
is not specified. The only negligible additional computational cost was in the decision making process for
choosing which local directional derivative to steer the
trajectory. Since the bias is only applied in open space
areas, the afiects of deviating from the minimal hitting
probability path t o achieve the approach constraint are
not salient.
Discussions
The paper demonstrates an approach for introducing a
target approach constraint and not increasing the com-
290
Academic Publishers.
Pavlidis, T. 1982. Algorithm for Graphics and Image
Pmceriing. Computer Science Press.
Stentz, A. 1995. The focussed d' algorithm for real-time
replanning. In Proeeedings of the Znternntionnl Joint Conference on Artificial Intelligence
Zelek, J. S. 1996. SPOTT: A Real-time Distributed and
Scalable Architecture for Autonomous Mobile Robot ConhoL Ph.D. Dissertation, McGiU University, Dept. of El=-
trical Engineering.
Zelek, J. 1997. Human-robot interaction with a minimal spanning naturd language template for autonomous
and telwperated control. In Pmceedings of the Tenth
IEEE/RSJ Internntimol Conference on Zntelligent RoboO.
and Systems, 29S305.
Zelek, J. 1998. Complete real-time path planning during
sets01 discovery. In Proceedings of the 11 'th IEEE/RSJ Internotiowl Conference on Intelligent Robots and Systems,
1399-1404.
Zilberstein, S. 1996. Using anytime algorithms in intelligent systems. Artificial Intelligence Magnzine 73-83.
Download