Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
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 ecient 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 di€erent 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 di€erent 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 su€er from the following limitations: . The set of factors or variables to be considered for the cost function are of such di€ering 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 di€erent 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 di€erent 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 Path†eKf Priority level 2: time Path†EKt Priority level 3: battery consumption Path†EKc 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 di€erent 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 di€erent 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 ecient procedure: the addition of new goals can play an important role in reducing the search e€ort 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 di€erence 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 n†g† 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 † jˆ1 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, ecient 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.