Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
www.elsevier.com/locate/engappai
Mobile robot path planning: a multicriteria approach
Juan A. Fernandez a, J. Gonzalez a, L. Mandow b,*, J.L. PeÂrez-de-la-Cruz b
a
Dpto. IngenierõÂa de Sistemas y AutomaÂtica, Universidad de MaÂlaga/Campus Teatinos, P.O.B. 4114, 29080, MaÂlaga, Spain
Dpto. Lenguajes y Ciencias de la ComputacioÂn, Universidad de MaÂlaga/Campus Teatinos, P.O.B. 4114, 29080, MaÂlaga, Spain
b
Received 1 July 1997; accepted 1 February 1999
Abstract
This paper addresses the problem of searching paths in a graph-based model of the environment for mobile robot navigation.
Unlike conventional approaches, where just a scalar cost (or a scalar function combining several costs) is to be optimized, this
paper proposes a multicriteria path planner that provides an ecient and natural way of both de®ning and solving problems in
which con¯icting criteria are involved. In particular, the multicriteria METAL-A algorithm is used as the core of a mobile
robot global path planner. This algorithm has been implemented and tested in the RAM-2 mobile robot for indoor navigation.
The results presented demonstrate the performance of the algorithm when dealing with energy-consumption, temporal, and
clearance restrictions on the paths. # 1999 Elsevier Science Ltd. All rights reserved.
Keywords: Path planning; Mobile robots; Multicriteria decision theory; Goal satisfaction
1. Introduction
To achieve an autonomous navigation capability, a
mobile robot must be able to plan a suitable path
between a start and a destination in the environment.
In large-scale space, i.e. environments where spatial
structures are on a signi®cantly larger scale than the
sensory horizon of the observer (i.e. buildings)
(Kuipers et al., 1993), this process involves two dierent problems: ®rst, to provide a global path in terms
of intermediate subgoals and, second, to travel
between consecutive subgoals while avoiding unexpected and moving obstacles along the way. The latter
problem has received great attention in the literature,
with important contributions ranging from completely
reactive techniques (Khatib, 1986; Borenstein and
Koren, 1991) to planned trajectories that take into
consideration dierent constraints: non-holonomic kinematics (Canny, 1988; Lozano-PeÂrez, 1983), dynamics
(Latombe, 1991), time (Hu et al., 1993), etc.
On the other hand, the problem of global path gener-
* Corresponding author. Fax: +34-5-213-13-97.
E-mail address: lawrence@lcc.uma.es (L. Mandow)
ation is tightly related to that of decision-making.
Provided that a graph-based model of the environment
is available, this problem is usually addressed on the
basis of some kind of optimal graph search by using a
certain cost function (Hart et al., 1968; Dijkstra, 1959).
Usually, the cost function depends on a unique cost
variable, e.g. the distance travelled or the time spent.
More sophisticated planners combine these with other
factors; e.g. energy consumption, safety, or the robustness of the path indicated by its clearance (Hu and
Brady, 1997; Stentz and Hebert, 1995), the probability
of encountering moving obstacles (Fujimura, 1995;
Simmons et al., 1997), etc. These approaches suer
from the following limitations:
. The set of factors or variables to be considered for
the cost function are of such diering natures that,
in practice, they cannot be combined in an easy and
intuitive way. Typically, the function is built up as a
weighted linear combination of them. The weights
are chosen on an ad-hoc basis, and cannot be
applied to a wide range of situations.
. In many missions it is not important for the mobile
robot to optimize the value of the cost function, but
to satisfy some restrictions on the cost variables, for
0952-1976/99/$ - see front matter # 1999 Elsevier Science Ltd. All rights reserved.
PII: S 0 9 5 2 - 1 9 7 6 ( 9 9 ) 0 0 0 1 8 - 4
544
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
Fig. 1. The METAL-A pseudocode algorithm.
example, to reach a place before a given time (not
to optimize the arrival time). This is supported by
the way in which human beings solve real-life planning problems. Often, the restrictions are in con¯ict
with each other, and the path found by a classical
graph search algorithm, although optimal, does not
guarantee to satisfy all of them.
An intelligent mobile robot should be provided with
more ¯exible and realistic mechanisms to plan global
paths when operating in large-scale environments. To
make the reasoning behind this statement clearer, consider the following examples.
Assume that a mobile robot path planner uses a
cost function that is a combination of path length and
energy consumption. These factors may become con¯icting, since the shortest path may contain very
power-demanding elements, such as ramps or a great
number of turns. During a mission, the mobile robot
may detect that the battery is below the emergency
level, and decide to plan a path to the only available
recharging station (the destination). A path provided
by a classical optimization technique will be optimal
with respect to a given combination of both distance
and energy factors, but it will not guarantee to ®nd a
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
(probably existing) path that enables the robot to
reach the station before the battery becomes
exhausted.
Another typical situation arises when a mobile robot
must deal with time scheduling. In many real robot applications, there exists the need to coordinate the operation of the robot with other processes (or robots).
This leads to temporal restrictions that must be prioritized in order to accomplish the mission successfully.
For example, a mobile robot is sent to pick up an
object at a given place, and carry it to a delivery
point. If the object is not available until a certain time
T, it is not worth being at the pick-up place before T,
waiting for the object to be ready. Therefore, optimizing the arrival time at the pick-up place as soon as
possible would not be required: just arriving at T is
necessary. This provides the path planner with a margin within which to accomplish other important objectives such as energy consumption, safety of the path,
vehicle degradation, etc.
These examples show that in many situations the
robot must plan a path whose cost variables are below
(or above) a given value. In Operations Research (OR)
terminology, this value is called an ``aspiration level'',
and the variable/aspiration-level pair is called the
``goal''. Following this terminology, one could say that
``energy consumption E K'' or ``arrival time ET1'' are
goals for the planned path. Notice that the word
``goal'' may also have other meanings, for example,
the destination point of a path, etc. In the rest of this
paper the term ``goal'' will always be used with its OR
meaning. Formulating the problem as a set of goals is
a more natural and ¯exible manner of specifying the
requirements for optimizing con¯icting criteria.
The approach presented here for global path planning relies on a general algorithm for search problems
with lexicographic goals, named METAL-A, which
was ®rst introduced in a previous work by the authors
(Mandow et al., 1999). METAL-A allows the dierent goals involved in a path-®nding problem to be
arranged into several prioritized groups, and the best
possible solution path to be found according to the
assigned priorities.
The organization of the paper is as follows. In
Section 2 an informal survey of lexicographical goal
path planning is given. Section 3 describes the application of the METAL-A algorithm to mobile robot
path planning (the algorithm is shown in Fig. 1 in
pseudocode, and explained in Appendix A). Section 4
presents the experimental results and discussion.
Finally, some conclusions are outlined.
2. Search problems with lexicographic goal satisfaction
Multi-Criteria Decision Theory (MDT) is a suitable
545
framework in which to solve the problem of ®nding
paths that must satisfy a set of possibly con¯icting
objectives. As discussed above, in this paper, objectives
are considered in the form of goals, which are formulated as inequalities:
E
function variable
e
value:
For example:
time
distance
safety
E5 min :;
E100 m:;
e90%:
If these goals are grouped into a number of prioritized levels, the problem is called a search problem with
lexicographic goal satisfaction.
A solution path P that connects a pair of start and
destination node locations in the graph is a sequence
of nodes (n1, n2,. . ., nm ) such that for two consecutive
nodes ni and ni + 1 there is an arc between them. The
total cost for P is the sum of the costs of each arc of
P. The costs for each arc are represented as a vector
of positive values:
ÿ
K ni , nj cost1 ni , nj , cost2 ni , nj , . . . , costq ni , nj
where costk (ni, nj ) refers to the cost of traversing
the arc (ni, nj ), measured with respect to the k-th
cost variable (i.e. energy consumption, distance, time,
etc.).
The total cost vector K(P ) of a path P is de®ned as
the addition of the costs of all the arcs in P,
ÿ
K P cost1 P , cost2 P , . . . , costq P
where
costk P S costk ni , nj :
A solution path P for a particular problem is
said to be dominated if there exists another solution
path P ' that improves at least one component of the
cost vector K of P while not making the others
worse. A lexicographic goal search problem consists of
®nding a non-dominated solution path in the graph
that satis®es a set of goals grouped into prioritized
levels. Each level L is a set of weighted goals in the
form
costLi P EtLi ;wLi
where costLi (P ) is some component of the total cost
vector of P, tLi e0 is the corresponding aspiration
level and wLi e0 is the associated weight, i. e., the
relative importance given to the satisfaction of the
goal in the level L. In this way, the complete problem
546
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
used to solve these type of problems within the ®eld of
mobile robot path planning. METAL-A can be used
to ®nd one non-dominated solution path for lexicographic goal-satisfaction problems with an arbitrary
number of goals at each priority level. Further details
can be found in (Mandow et al., 1999). A brief explanation of the algorithm is given in Appendix A.
3. The RAM-2 multicriteria path planner
A path planner based on the METAL-A algorithm
has been implemented on the RAM-2 mobile robot for
navigating in indoor, structured environments (Fig. 2).
RAM-2 is equipped with a manipulator and a variety
of sensors such as video-cameras, a radial laser range®nder, a sonar ring, and an odometric system. Two
onboard Pentium 120 MHz PC cards run the Lynx
real-time operating system, as well as a software system called NEXUS (Fernandez and Gonzalez, 1998),
that takes care of the communication and coordination
between dierent modules of the robot's control architecture.
The RAM-2 navigation system relies on two modules:
Fig. 2. The RAM-2 mobile robot. The METAL-A algorithm has
been implemented and tested in this platform for global path planning.
is stated as:
Level 1: cost11(P) E t11 ;w11
...
cost1r(P) Et1r ;w1r
Level 2: cost21(P) E t21 ;w21
...
cost2s(P) Et2s ;w2s
Level q: costq1(P) E tq1 ;wq1
...
costqz(P) E tqz ;wqz
8i, j tij e 0.
The goals of level i are in®nitely more important
than those of level i + 1. This means that goals in
level i + 1 are only taken into account once all the
goals in level i have been fully satis®ed.
In this work, an algorithm called METAL-A is
A METAL-A path planner, that generates a global
path based on the information provided by a graphbased model of the world (Fernandez and
Gonzalez, 1997). The nodes of the graph are distinctive places in the buildings where RAM-2 navigates.
A reactive navigator, that drives the robot between
locations on the global path, based on the information provided by the sensors (Fernandez and
Gonzalez, 1998; Gonzalez et al., 1995).
The RAM-2 path planner takes into account a number
of factors when searching for paths in the graph model
of the environment. They include the time elapsed and
the energy consumed in traversing each arc, as well as
an estimation of the probability that an arc will not be
blocked. In the following paragraphs, these factors are
considered.
3.1. Clearance
Due to the dynamic characteristics of the environment, some possible paths may be blocked with a certain probability, i.e., some doors may frequently be
closed, while others are almost always open.
Obviously, if the selected path is blocked along the
way, the robot will need to replan its path and take
more time to reach its destination. A probabilistic
measure of the overall clearance of a path can be
de®ned as the product of the clearance probability of
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
547
Fig. 3. A 2-D map of the ®rst ¯oor of the Electrical Engineering building, where RAM-2 navigates. The distinctive places that appear in the
graph model of the environment are indicated as labelled circles. Their actual coordinates with respect to a global reference frame are also
shown.
its component arcs, assuming conditional independence
among them.
3.2. Time
Minimizing the time, or at least reducing it to
reasonable limits, is an essential and straightforward
requirement in any robotic task. It has been included
as the second goal.
3.3. Energy consumption
Finally, an additional factor has been added to keep
battery consumption low. This ensures that the robot
will reduce its battery consumption whenever this reduction does not con¯ict with the satisfaction of previous goals. Thus the undesirable and slow battery
recharge operation is postponed for as long as possible.
This can be summarized with a goal formulation as
follows:
Priority level 1: pfree PatheKf
Priority level 2: time PathEKt
Priority level 3: battery consumption PathEKc
i.e. try to ensure that reasonably safe paths will be
found (above Kf % free), and then try to take the
robot to its destination quickly enough (in less than Kt
seconds) and consuming less than Kc units of energy.
Notice that Kf , Kt and Kc are values that can be easily
speci®ed for each navigational task, depending on the
internal status of the robot or on explicit operator
commands.
The
implementation
of
the
®rst
goal
( pfree(Path )r Kf ) requires some special considerations. In order to keep the clearance probabilities
above a certain level, the planner should maximize a
multiplicative cost function. However, since the implementation of METAL-A has been designed following A, it can only solve problems by minimizing
548
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
Fig. 4. Graph model of the building. The nodes represent distinctive locations for navigation.
additive cost functions. The original goal has been
reformulated to ®t the search algorithm.
Let pfree(P ) be the probability that the path P is
free, and let pfree(i ) be the probability that each arc i
of the path P is free. If the probabilites pfree(i ) are conditionally independent, then:
pfree P
Y
pfree i
reasonable assumption holds,
pfree i
6 0 8 arc i 2 G
i.e. no arc in the graph G is permanently blocked.
If, for instance, Kf =90%, the problem is reformulated, so transforming the goal
pfree P e0:9
8 arc i 2 P:
i
The former multiplicative function can be changed
to an additive cost function using logarithms:
max pfree
Y
P max
pfree i max
exp
"
X
i
ln pfree i #
to
X
ln pfree i E ln 0:9 0:10536
i
and using vln( pfree(i ))v as an additive cost measure for
each arc i in the graph.
i
Since 0E pfree(i )E 1, then ÿ1 Eln( pfree(i )) E 0,
and:
max pfree P min
X
ln pfree i :
i
This function can be used whenever the following
4. A real experiment
This section presents an example of the application
of the METAL-A algorithm to the navigation of a
mobile robot. In this section a particular experiment is
described, and its results are compared to those that
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
549
Fig. 5. Table of costs for each arc in the graph. Clearance probability, time elapsed and energy consumption are shown.
would have been obtained by a conventional optimization-based path planner.
Figs. 3 and 4 show the 2-D map and its corresponding graph-based model, respectively, used by RAM-2
to navigate its way through the ®rst ¯oor of the
Electrical Engineering buildings at the University of
Malaga. The particular experiment presented here considers the navigation of RAM-2 from the location
Outside:Street (node 5.3) to Robotics Lab:Robotics Lab
(node 3.3).
Fig. 5 shows the costs associated with the arcs in the
graph for each additive cost function. Values for the
costs concerning time and battery consumption have
been estimated by averaging a number of experiments
where RAM-2 was manually guided along the arcs.
On the other hand, the values for clearance probabilities were initially set to 1 for all the arcs except for
those involving passing through doors, which were set
to a priori values based on knowledge of the environment. All these values are updated dynamically by the
robot as it traverses the buildings during its normal
operation.
An ideal solution path should achieve the optimum
value for all three individual factors considered (clearance probability, time, and battery consumption).
Unfortunately, an ideal solution is rarely reached,
since these objectives are usually con¯icting. The
aspiration level for the ®rst cost variable has been set
550
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
Fig. 6. Non-dominated solution path found by the METAL-A algorithm going from the Robotics Laboratory to the Street.
to a 90% chance that the path will be clear.
Reasonable levels for the time and battery consumption factors are obtained using the Euclidean distance
from the origin to the destination. Both attributes are
roughly proportional to the distance traversed by the
robot, though signi®cant variations are possible, and
justify separate treatment.
More precisely, if the Euclidean distance from origin
to destination is Dist (meters) and the robot's maximum speed is maxspeed, (m/s) then it will be impossible
to reach the destination in less than Dist/maxspeed (s).
Similarly, if the robot's minimum battery consumption
rate is minconsumption, (kJ/m) then at least
Dist minconsumption (kJ) are needed to reach the destination. Aspiration levels of 150% of these optimistic
values are used for the time and battery consumption
goals in the experiment. Euclidean distance is
measured from the map of the buildings.
Thus, for the RAM-2 mobile robot and the particular experiment at hand,
max speed
min consumption
Eucl dist node-5:3, node-3:3
1:7 m=s
0:7 kJ=m
132:2 m:
The problem goals are formulated as
Priority level 1:Path clearance probability
e0:9
Priority level 2:Path time in s
E116:6
Priority level 3:Path battery consumption in kJ E138:8:
A problem that always arises when using a heuristic
search is the determination of the heuristics. If the
robot had a geometric map of the environment,
although approximate, it could employ the Euclidean
distance to compute time and battery consumption
heuristics. However, as RAM-2 is not intended to have
such a detailed geometric representation, no heuristic
information has been used to guide the planner, i.e.
METAL-A behaves as an uninformed search algorithm.
4.1. Results
The results obtained for solving the above sample
problem can be summarized as follows.
The planner found the only non-dominated solution
to this goal problem (see Fig. 6). The corresponding
values for each variable are,
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
551
Fig. 7. An example of a path that minimizes the clearance probability.
Clearance probability
Time
Batt: consumption
0:9128
132:9 s
97:86 kJ:
The deviations achieved for each priority level are
(0, 16.3, 0) respectively. It is clear that the time goal
could not be achieved in 16.3 s, but nevertheless the
planner ®nds the fastest path that preserves satisfaction of the clearance goal. Although there is little margin left for the third goal, METAL-A recognizes that
there are several paths that satisfy the ®rst goal while
taking 132.9 s, and returns the path with the least battery consumption.
The solution to this problem is clearly dierent from
those found by path planners that optimize a single
criterion.
. In the above problem there are many paths that
maximize the clearance probability. These are
equally good to an A-based planner and hence any
of them could be returned as a solution. Some of
them, however, are clearly undesirable, like the one
shown in Fig. 7.
. The paths that minimize the time for this problem
are shown in Fig. 8. Depending on implementation
considerations, A may ®nd either. These, however,
have dierent battery consumption and clearance
probabilities, a distinction that is necessarily lost in
single-objective formulations. Analogous reasoning
can also be used regarding the battery consumption
criterion.
Note also that there is no solution to this problem
that satis®es all the goals. If the problem criteria had
been formulated as constraints and solved again using
a conventional optimizing planner, the result would
have been a failure.
Sometimes problem constraints are inherent to a
problem, and cannot possibly be violated (i.e. physical
constraints like ``the robot's speed cannot be faster
than the speed of light'', or ``the battery consumption
for any mission can never be greater than the maximum battery capacity''). However, most everyday constraints can be viewed as ``soft'' in the sense that their
violation only results in more inconvenient or less preferred solutions. METAL-A provides a simple framework to incorporate these so-called ``soft'' constraints
as goals (i.e. in the less important priority levels). As a
552
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
Fig. 8. Paths which minimize time, found by a conventional A algorithm.
result, constraint violation never results in failure, but
results in solutions that at least try to achieve the
goals as well as possible, i.e. METAL-A (and goalsatisfaction algorithms in general) enables elegant
handling of overconstrained problems.
5. Conclusions
In many practical situations it may not be appropriate to state mobile robot path planning as a conventional optimization problem. What is important is to
avoid fuel exhaustion, not to save a marginal joule; to
reach the destination in time, not a millisecond before.
In this paper, a multicriteria path planner for mobile
robot navigation in large-scale space has been presented. In particular, the METAL-A algorithm has
been implemented in the RAM-2 mobile robot.
METAL-A searches for optimal paths that satisfy the
greatest number of a lexicographically ordered set of
goals. This approach improves upon conventional optimization techniques in several ways. It allows con¯icting objectives to be dealt with, and provides more
comprehensive path planning. Besides this, it can also
result in a more ecient procedure: the addition of
new goals can play an important role in reducing the
search eort while guiding the planner to the most
convenient paths, even in the absence of heuristic information.
Appendix A
A1. METAL-A Algorithm
METAL-A is basically a ``multicriteria best-®rst''
algorithm: a partial solution path that ``best'' satis®es
the goals of the problem is selected and expanded in
each iteration until a solution path is selected. Only its
fundamental details are described here. For a more
complete reference see (Mandow et al., 1999).
The algorithm uses three typical data structures:
. SGRAPH: a directed acyclic search graph that
records all non-dominated paths found from the
start node to the expanded nodes.
. OPEN: a list of partial solution paths in SGRAPH
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
that can be further expanded.
. CLOSED: a list of nodes already explored.
A signi®cant dierence between A and METAL-A is
the use of a vector cost evaluation function for each
path. The cost of each path P is a vector
G(P )=GP(n )=( gP1(n ), gP2(n ),. . . ,gPq(n )). Each component in G(P ) stands for some of the individual additive costs functions considered.
The graph SGRAPH records all non-dominated
paths that reach known nodes. A set G-SET(n ) is used
for each node to record all non-dominated cost vectors
GP(n ) corresponding to paths P = (s,. . ., n ) included
in SGRAPH.
METAL-A allows the use of heuristic information
to guide search. A multicriteria heuristic function H(n )
is a function that returns a nonempty ®nite set of cost
vectors H(n ) which estimate the cost of some path
from n to a goal node.
H:n4 H n, H 0 n, . . . :
A function H(n ) is said to be admissible if for all
non-dominated paths from n to any destination node
there is a cost vector H(n ) in the returned set that
dominates or equals its cost. Therefore, for each node
n in SGRAPH, a set of vector cost estimates for all
known non-dominated paths arriving at n can be calculated as follows:
F-SET n nodom fF n G n H n=G n 2 G-SET n
and H n 2 H ng
where nodom(A ) gives the set of non-dominated vectors of the set A without repetitions.
The algorithm uses the estimated cost vectors to
decide which node to expand at each iteration. All
paths in SGRAPH that can be further expanded are
represented in the OPEN list. Each element in the list
is a pair of the form:
n, F, where n is a node in the graph and F 2 F-SET n,
i.e. any generated but not yet expanded node will
appear in OPEN as many times as vectors F exist in
F-SET(n ).
The
operations
OPEN(node )
and
CLOSE(node ) are de®ned in the following way:
. OPEN(n1): add to the list OPEN a pair (n1, F) for
each vector F in F-SET(n1).
. CLOSE(n1): delete all pairs (n1, ) from OPEN and
add node n1 to the list CLOSED.
At each iteration a pair (n, F) that minimizes goal deviations according to their priorities is selected from
OPEN. METAL-A accepts several ways to minimize
the deviation from the problem goals. The one used
here is:
di F
553
qi
X
wij max 0, fij ÿ tij
j1
where qi is the number of goals in the level i, wij is the
weight of the goal j in the same level, fij the cost function for that goal, and tij is its aspiration level (see
Section 2). Thus the deviation for each priority level i
is measured as the weighted sum of positive deviations
of each cost function fij from its aspiration level tij.
Note that if fij Etij then no deviation is measured,
since the goal is satis®ed.
It can be shown that METAL-A is complete and
admissible when used with an admissible multicriteria
heuristic function, i.e. the ®rst solution found is nondominated and satis®es the goals in the best possible
way according to their priorities.
References
Borenstein, J., Koren, Y., 1991. The vector ®eld histogram-fast obstacle avoidance for mobile robots. IEEE Trans. R&A 7, 278±
288.
Canny, J., 1988. The Complexity of Robot Motion Planning. The
MIT Press, Cambridge, MA.
Dijkstra, E.W., 1959. A note on two problems in connexion with
graphs. Numerische Mathematik 1, 269±271.
Fernandez, J.A., Gonzalez, J., 1997. A general world representation
for mobile robot operations. In: Seventh Conference of the
Spanish Association for the Arti®cial Intelligence (CAEPIA'97),
Malaga, Spain.
Fernandez, J.A., Gonzalez, J., 1998. NEXUS: A ¯exible, ecient
and robust framework for integrating the software components of
a robotic system. In: IEEE International Conference on Robotics
and Automation (ICRA'98), Leuven, Belgium.
Fujimura, K., 1995. Time-minimum routes in time-dependent networks. IEEE Trans. on Robotics and Automation 11, 343±351.
GonzaÂlez, J., Stentz, A., Ollero, A., 1995. A mobile robot iconic position estimator using a radial laser scanner. Journal of Intelligent
and Robotic Systems 13, 161±179.
Hart, P.E., Nilsson, N.J., Raphael, B., 1968. A formal basis for the
heuristic determination of minimum cost paths. IEEE
Transactions on System Science and Cybernetics SSC-4, 100±107.
Hu, H., Brady, M., 1997. Dynamic global path planning with uncertainty for mobile robots in manufacturing. IEEE Trans. on
Robotics and Automation 13, 760±767.
Hu, T.C., Kahng, A.B., Robins, G., 1993. Optimal robust path planning in general environments. IEEE Trans. on Robotics and
Automation 9, 775±784.
Khatib, O., 1986. Real-time obstacle avoidance for manipulators and
mobile robots. Int. Journal Robotics Research 5, 90±98.
Kuipers, B.J., Froom, R., Lee, W-Y., Pierce, D., 1993. The semantic
hierarchy in robot learning. In: Connell, J., Mahadevan, S.
(Eds.), Robot Learning. Kluwer Academic Publishers, Boston,
pp. 141±170.
Latombe, J.C., 1991. Robot Motion Planning. Kluwer Academic,
Boston, MA.
Lozano-PeÂrez, T., 1983. Spatial planning: a con®guration space
approach. IEEE Trans. Comput C32, 108±120.
Mandow, L., PeÂrez de la Cruz, J.L., 1999. A heuristic search algorithm with lexicographic goals. Engineering Applications of
Arti®cial Intelligence (in press).
Simmons, R.G., Goodwin, R., Haigh, K.Z., O'Sullivan, J., Veloso,
554
J.A. Fernandez et al. / Engineering Applications of Arti®cial Intelligence 12 (1999) 543±554
M., 1997. Xavier: experience with a layered robot architecture.
Sigart Bulletin, Fall.
Stentz, A., Hebert, M., 1995. A complete navigation system for goal
acquisition in unknown environments. Autonomous Robots 2 (2
August).
Juan A. FernaÂndez-Madrigal was born in CoÂrdoba (Spain) in 1970.
He received the M.S. degree in computer science from University of
MaÂlaga, Spain, in 1994. He currently has a fellowship from the
Ministerio de Educacion y Ciencia of the Spanish Government and
is completing the Ph.D. degree in Computer Science at University of
MaÂlaga. His research interests include world modeling and control
architectures for autonomous mobile robots.
Javier Gonzalez received the B.S. degree in Electrical Engineering
from the University of Sevilla in 1987. He joined the Department of
``IngenierõÂ a de Sistemas y AutomaÂtica'' at the University of MaÂlaga
in 1988 and received the Ph.D. from this University in 1993. Since
July 1990 until July 1991 he was at the Field Robotics Center,
Robotics Institute, Carnegie Mellon University (USA) working on
mobile robots. Currently he is an associate professor at the
University of MaÂlaga and is leading a project on mobile robots
funded by the Spanish Government. His research interest includes
mobile robot autonomous navigation, world modeling, computer
vision and laser-based range sensing. Dr. Gonzalez is member of the
IEEE, IFAC and IAPR.
Lawrence Mandow received his M.S. degree in Computer Science
from the University of MaÂlaga (Spain) in 1992. He was awarded a
post-graduate research fellowship and joined the Department of
Computer Sciences and Languages where he is currently Profesor
Asociado and Ph.D. candidate. His research interests include the
development of multicriteria problem solving procedures for
Arti®cial Intelligence and their application to architectural and engineering design problems.
J.L. PeÂrez de la Cruz holds the degrees of Ingeniero and Doctor
Ingeniero de Caminos, Canales y Puertos from the School of
Madrid. He is currently an associate professor at the University of
MaÂlaga, where he lectures on Arti®cial Intelligence. He has coauthored more than a dozen papers in international journals and
conferences. His main research interests are currently reasoning
methods for design tasks and intelligent tutorial systems.