San Mateo, CA, 1991. 5] Goldberg, D.E., and Deb, K., \Comparative Anal- ysis of Selection Schemes used in Genetic Algo- rithms," in G. Rawlins (editor), ...
On Topological Diversity and Multiple Path Planning Jing Xiao, Lixin Zhang, and Zbigniew Michalewicz Computer Science Department University of North Carolina - Charlotte Charlotte, NC 28223, USA
Abstract
teristic makes it attractive to develop a multiple-path planner based on EC techniques. A main issue for such a planner is how to achieve diversity in a population of solutions. There exists considerable research in EC to address this, mostly out of the concern that an evolutionary process may converge prematurely (i.e., before the optimal solution is found) if the population is not diverse enough. One category of methods for increasing population diversity is based on the idea of decreasing selective pressure, i.e., making the selection of chromosomes for reproduction less elitistic [1, 5]. Another approach is to limit the number of similar chromosomes in reproduction: either let a new chromosome to replace only a worse chromosome similar to itself [2] or add a new chromosome to a population if it is entirely dierent [14]. There are also methods to prevent mating between similar chromosomes (e.g., [4]) or to design operators which promote diversity [1]. Finally, there exists study on forming and evolving dierent subpopulations simultaneously to maintain diversity [3, 6, 11]. In this paper, we describe a multiple-path planner developed by extending an EC-based Evolutionary Planner/Navigator (EP/N) for mobile robots [9, 12, 15, 16]. Our scheme utilizes a concept of topological similarity (or diversity) to classify paths in a continuous space into subpopulations and evolves such subpopulations in parallel to achieve the desired topologically diverse paths.
Conventional robot path planning aims at nding a single best path for a robot to perform a task according to certain optimization criteria. However, as a robot operates in a real environment with uncertainties, it is often desirable and even necessary for the robot to know alternative feasible paths so that it can deal with unknowns or changes in both the environment and the task eectively and eciently. In this paper, we discuss how to de ne representative paths based on the concept of topological diversity in a continuous space and describe the search of such topologically diverse paths by an Evolutionary Planner/Navigator (EP/N) based on techniques of evolutionary computation.
1 Introduction The path planning problem for a robot is typically formulated as follows: given a robot and a description of an environment, plan a single path of the robot between two speci ed locations, which is collision-free and satis es certain optimization criteria. However, as a robot operates in a real environment with uncertainties, it is often desirable and even necessary for the robot to know alternative feasible paths so that it can deal with unknowns or changes in both the environment and the task eectively and eciently. Hence, multiple-path planning is needed. Conventional path planning techniques [8] are often ill-equipped for multiple path planning since they are mostly based on sequential search algorithms, characterized by generating one single solution incrementally (i.e., the solution is formed only at the end of search). On the other hand, evolutionary computation (EC) techniques are inherently parallel search techniques which always maintain a population of potential solutions during the entire process of search. This charac-
2 Topological Similarity and Local Optima In order to search for topologically diverse paths, it is essential to de ne the concept of topological similarity among paths as a basis for path classi cation. In general, a path for a robot can be de ned as a spatial curve in the (n-dimensional) con guration space [10] of the robot starting from an initial con guration point and ending at a goal con guration point. A
The author is currently with Datastream System Inc., 50 Datastream Plaza, Greenville, SC 29605
1
g
s Similar paths
s
g Unsimilar paths
Figure 1: Examples simple path is a path formed by a simple curve1 . A feasible path is a collision-free path. Given two simple, feasible paths A and B starting from the same initial point s and ending at the same goal point g in an ndimensional space, they can be de ned as topologically similar i there exists a collision-free, nite hypersurface S whose boundary is formed by all the points of A and B . Otherwise, the two paths are not topologically similar. It can be easily shown that the topological similarity of paths is an equivalence relation; hence the topologically similar paths form an equivalence class. Fig. 1 illustrates a pair of topologically similar and a pair of topologically unsimilar paths in two-dimensional space. The equivalence classes of topologically similar paths form a partition of the set of all simple, feasible paths. The best path in each class of topologically similar paths represents a local optimum and can be viewed as an ideal representative of its class. The set of such local optima provides topologically diverse paths and are what we aim to nd in multi-path planning.
3 Multiple Path Search We now present our work on multiple path planning by extending an EC-based planner for mobile robots: the Evolutionary Planner/Navigator (EP/N) [9, 12, 15, 16].
some goal location following a collision-free and nearoptimal path in a continuous space. In the evolutionary algorithm of the EP/N, a chromosome represents a path, consisting of straight-line segments, as the sequence of knot points (i.e., intersections between two segments) or nodes on the path. Each node, apart from the pointer to the next node, consists of x and y coordinates of the knot point and a state variable b, providing information about whether the knot point and the path segment starting from it are feasible (i.e., collision-free) or not. A path (or chromosome) can have a varied number of nodes. The EP/N generates the initial population of chromosomes randomly so that each chromosome has a random number of nodes and randomly-generated coordinates for each node. It then measures path feasibility (i.e., whether a path is collision-free) and quality (i.e., near-optimality) by an evaluation function, and evolve (i.e. alther) paths to better ones via special genetic operators incorporating problem-speci c knowledge. The EP/N is especially characterized by unifying o-line planning and on-line planning/navigation with the same evolutionary algorithm. For on-line operation, the evolutionary algorithm enables simultaneous planning and robot movement to achieve high eciency and eective adaptation of the robot to changes or uncertainties in an environment. Despite the fact that the EP/N, as an EC-based planner, maintains a population of paths all the time, it was originally designed to search for a single optimal or near-optimal path. To enable the EP/N nding topologically diverse paths, we add to it a capability to evolve multiple subpopulations as detailed in the rest of the section.
3.2 Algorithm for similarity test The rst issue is how to detect whether two paths are topologically similar (as de ned in Section 2). For two-dimensional path planning, this can be done by solving the point-in-polygon problem: Input two feasible paths A and B sharing starting and ending points, which form a polygon P .
For every obstacle in the task environment, pick a point on it (e.g., one of its vertices), record the point's coordinates, and call the point a point obstacle.
For every point obstacle p, check if p is inside P by a standard point-in-polygon algorithm [13]. If so, A and B are not similar. If none of the point
3.1 Review of the EP/N The EP/N is an adaptive path planner/navigator for guiding a mobile robot from some initial location to 1
A simple curve does not intersect itself.
obstacle is inside P , then A and B are similar2.
3.3 Evolution of multiple subpopulations We have added to the EP/N a capability to maintain and evolve multiple subpopulations of paths in parallel, where each subpopulation, called a community, consists of topologically similar paths. The modi ed EP/N has the following evolution scheme: 1. Create an initial population by randomly generating paths (Section 3.1). 2. Evolve the population of paths until all paths become feasible. 3. Divide the population into communities of topologically similar paths. Adjust sizes of the communities so that they are of the same pre-de ned size. This is done by shrinking larger communities (i.e., eliminatingtheir worst paths) and increasing smaller communities (i.e., duplicating their best paths). 4. Evolve the communities in parallel. After every N generations, check if two or more communities actually merge into a large community (of topologically similar paths). If so, shrink this large community to that of the pre-de ned size. 5. Terminate the evolution process if all the communities stop evolving according to certain termination conditions. 6. Report the best paths in all communities.
Figure 2: T = 0 (initial population) 2 Note that if P is not a simple polygon, the term \inside polygon" becomes dicult to use; however, whether A and B are similar can still be determinedby checkingthe winding number of P around point p with the same algorithm.
Figure 3: T = 90, when communities are started
Figure 4: T = 200 Note that this current scheme tries to maintain the path diversity created during the initial phase of path evolution (Step 2), but it does not try to create more diversity later since no new community will be generated after Step 3. On the other hand, it rarely happens that two or more communities will grow to be the same so that the number of communities will decrease (Step 4); this is because a large alteration of path topology tends to result in infeasible paths, which have little chance to be selected for reproduction when there are feasible paths in the community. Note also that this scheme is designed to nd only those better topologically diverse paths which are closer to the global optimal path but not all topologically diverse paths. Figures 2, 3, and 4 show an example task and the snapshots of running this scheme to generate topologically diverse paths, where T is the number of generations. We have also applied the scheme to other tasks in dierent environments and obtained reasonable results.
4 Conclusions We have presented our preliminary study on the problem of multiple-path planning for robots, which includes (1) characterizing path similarity or diversity, and (2) designing and implementing a multi-path planner for mobile robots based on the techniques of evolutionary computation. This planner is capable of generating topologically diverse paths in a continuous space which consist of better local optima and the global optimum. Such an ability is important in various ways. It not only provides a better way to search for the global optimum (by preventing premature convergence) but also provides a robot alternative paths as important environmental or task knowledge to help in dealing with uncertainties or changes. Our recent research [7] also shows that this knowledge is useful as memory or skill to facilitate operation of future tasks. Our future research may focus on improving the current scheme or devising better schemes to create path diversity more eectively. Many of the techniques surveyed in Section 1 could be further studied and used. Another line of research is to apply the scheme to higher dimensional planning.
References [1] Back, T., Evolutionary Algorithms in Theory and Practice, Oxford University Press, New York, 1995. [2] De Jong, K.A., \An Analysis of the Behavior of a Class of Genetic Adaptive Systems," Ph.D. dissertation, University of Michigan, 1975. [3] Deb, K., and Goldberg, D.E., \An Investigation of Niche and Species Formation in Genetic Function Optimization," Proc. 3rd Int. Conf. Genetic Algorithms (ICGA), pp.42-50, San Mateo, 1989. [4] Eshelman, L.J., and Schaer, J.D., \Preventing Premature Convergence in Genetic Algorithms by Preventing Incest," Proc. 4th ICGA, pp.115-122, San Mateo, CA, 1991. [5] Goldberg, D.E., and Deb, K., \Comparative Analysis of Selection Schemes used in Genetic Algorithms," in G. Rawlins (editor), Foundations of Genetic Algorithms, Morgan Kaufmann, 1991. [6] Hocaoglu, C., and Sanderson, A.C., \Evolutionary Speciation Using Minimal Representation Size Clustering," Proc. 4th Annual Conf. Evolutionary Programming, San Diego, 1995.
[7] K. Trojanowski, Z. Michalewicz, and J. Xiao \Adding Memory to the Evolutionary Planner/Navigator," submitted to 1997 IEEE Inter. Conf. Evolutionary Computation (ICEC). [8] Latombe, J.C., Robot Motion Planning, Kluwer Academic Publishers, 1991. [9] Lin, H.-S., Xiao, J., Michalewicz, Z., \Evolutionary Navigator for a Mobile Robot," Proc. IEEE Int. Conf. Robotics and Automation, San Diego, pp. 2199-2204, May 1994. [10] Lozano-Perez, T., \Spatial Planning: A Con guration Space Approach," IEEE Trans. Comput., C-32(2):108-120, 1983. [11] Mahfoud, S.W., \A Comparison of Parallel and Sequential Niching Methods," Proc. 6th ICGA, pp.136-143, San Mateo, CA, 1995. [12] Michalewicz, Z., Xiao, J., \Evaluation of Paths in Evolutionary Planner/Navigator," Proc. 1995 Inter. Workshop on Biologically Inspired Evolutionary Systems, Tokyo, Japan, pp. 45-42, May 30-31, 1995. [13] Nievergelt, J., and Hinrichs, K.H., Algorithms & Data Structures with Applications to Graphics and Geometry, Prentice-Hall, 1993.
[14] Whitley, D., \The GENITOR Algorithm and Selection Pressure: Why Rank{Based Allocation of Reproductive Trials is Best," Proc. 3rd ICGA, pp.116{121, 1989. [15] Xiao, J., \Evolutionary Planner/Navigator in a Mobile Robot Environment," to appear in the Handbook of Evolutionary Computation, (T. Back, D. Fogel, and Z. Michalewicz, Editors), Oxford University Press and Institute of Physics Publishing. [16] Xiao, J., Michalewicz, Z., Zhang, L., \Evolutionary Planner/Navigator: Operator Performance and Self-Tuning," Proc. 1996 IEEE ICEC, Nagoya, Japan, pp. 366{371, May 20-22, 1996.