[go: up one dir, main page]

Academia.eduAcademia.edu

Map Learning and Clustering in Autonomous Systems

1993, IEEE Transactions on Pattern Analysis and Machine Intelligence

1286 zyxwvutsrqponmlkji zyxwv IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 zyxwvu Map Learning and Clustering in Autonomous Systems Dario Maio, Member, IEEE, and Stefan0 Rizzi Abstruct- Building autonomous systems, self-learning while moving in an unknown environment, finds a variety of challenging applications. This paper presents a new approach, called clustering by discovery, for identification of clusters in a map which is being learned by exploration. The concomitance of exploration and clustering, we argue, is a mandatory feature for an autonomous system, hence the clustering technique we propose is an incremental process performed while the system is learning the map. Clusters supply an abstract description of the environment and can be used to decrease the complexity of the navigational tasks. The environment is viewed as a map of distinctive places which we assume to be sensed and recognized by the system. The presence of distinctive places and the environment scale are the only facts which we assume known apriori to the system. Clustering by discovery is based on a heuristic indicator called scattering, whose increment is minimized at each exploration step compatibly with a connectivity constraint imposed on clusters. Scattering is defined according to a number of functional and structural requirements. ’ h o variants are presented, and their performance is discussed on a sample of maps including a real urban map and some randomly generated ones. In particular, one of the variants shows robust behaviour in terms of independence of the exploration strategy adopted. zyxwvuts zyxwvutsrq zyxwvuts Index Terms-autonomous systems, clustering algorithms, environmental maps, learning, map exploration. I. INTRODUCTION W environments, the second oriented to perform tasks in hazardous and hostile ones. A significant research project in this field has led to prototyping of the HERMIES series of autonomous mobile robots, as described in [15] and [18]. These applications generally require real-time operational responses to be based on a description of the environment, the level of detail and abstraction being in some relationship with the level of autonomy to be obtained. Unknown environments, possibly subject to change, require knowledge at different abstraction levels to be learned and represented. The problem of learning, organizing, and exploiting spatial knowledge for navigational tasks has been widely discussed in both symbolic AI and connectionist scientific communities, with reference to different environment types [4], [9], [12], [20]. In [3], we argued that data extracted from the environment should be represented at two different levels, symbolic and analogic. Consequently, we proposed a hybrid architecture based on the coupling of a symbolic module managing explicit knowledge of the environment and a neural module encoding implicit knowledge in its connections. Knowledge of the environment is derived by measures acquired from sensors during exploration. Our basic assumption is that distinctive places, which we will call landmarks, are present in the environment. Landmarks may be detected by the system, during exploration, as singolarities in the space of available measures; for instance, an urban agent endowed with a battery of sonars might recognize as landmark every cross-roads by applying some feature extraction algorithm to the sonar pattern. In specific environments, instead, some objects might be a priori labelled as landmarks; in this case, the system should be equipped with a dedicated data channel for sensing them during exploration. For instance, within an office, landmarks might be assigned to photocopiers, control panels, mail boxes, etc.; in order to navigate a highway network, a landmark might be assigned to each exit. The problem of how to extract landmarks from raw sensory data is beyond the aim of this paper. In [9], for instance, a landmark is defined as the local maximum of a distinctiveness measure, and is identified by a hill-climbing search. Assuming that some algorithm for landmark identification is adopted, an environment can be simbolically represented by a set of landmarks and connections between them, to be learned in real time and updated by interpreting data obtained from sensors placed on the IAS. By logical route (LR) we mean the straight line connecting two landmarks, regardless of the real shape of the path (physical route, PR). Fig. 1 points out PR’s and LR’s in an example map. ITHIN the Neural Nets Project of the Italian National Council of Research, our MONSTER subproject (Models Qf Neural-Symbolic Techniques for Extensible Robots) investigates the effectiveness of coupling a neural kernel to symbolic components to form a hybrid system, in order to overcome the deficiency of neural models in dealing with problems requiring sophisticated planning capabilities. In particular, our purpose is to discover what requirements should be met by an intelligent autonomous system (IAS), that is, a versatile machine including sensors, actuators and computing devices capable of executing a variety of tasks in unpredictable conditions [14]. The IAS moves in an unknown environment and improves its navigational skill through on-line learning. At least two classes of potential applications, often overlapping, can be depicted for IAS’s, the first concerning exploration and navigation in unstructured and unpredictable Manuscript received April 27, 1992; revised November 10, 1992. This work has been partially supported by the Neural Nets Project of the Italian National Council of Research, and by the PROCOM Project of Prometheus. D. Maio is with DEIS-CIOC-CNR, Facolti di Ingegneria, Universiti di Bologna, Viale Risorgimento, 2, 40136 Bologna, Italy. S. Rizzi is with Corso di Laurea in Scienze delhnformazione, UniversitA di Bologna, Sede di Cesena Via Sacchi, 3, 47023 Cesena, Italy. IEEE Log Number 9212304. zyxwvutsrq 0162-8828/93$03.00 0 1993 IEEE -~ ~______ MA10 AND RIZZI: MAP LEARNING AND CLUSTERING 1287 zyxwv zyxwv zyxwvutsrqpon Fig. 1. A fragment of map representing a trade-fair district. A physical route is the real path connecting two landmarks (dotted line), whereas a logical route is an abstract straight-line connection (plain line). During exploration, the symbolic module builds a map composed of the set of landmarks experienced, their relative position being determined by measures acquired from an odometer and a compass. Simultaneously, the neural module learns the PR’s between each pair of landmarks in terms of sequence of decisions at forks or in presence of obstacles, each decision being associated to a specific pattern of sonar measures. The environmental knowledge which the system needs in order to move autonomously is obtained by integrating these two levels of knowledge, which we call, respectively, symbolic and subsymbolic. In this paper we will consider environmental knowledge exclusively from a symbolic point of view. We distinguish two kinds of maps of landmarks, which enclose different and complementary levels of knowledge. Topological maps describe the pattern of connectivity between landmarks by representing the LR’s in the map, each associated with a cost parameter. Metric maps describe the position of the landmarks, for instance by specifying the coordinates of each landmark in a relative Cartesian system. In this context, we define a map as a set of landmarks, the set of the corresponding coordinates, and a set of LR’s connecting the landmarks. The integration of topological and metric knowledge makes the partitioning of the map into clusters possible. Clusters may be associated with different semantic roles, depending on the nature of the environment and its scale: rooms for house-keeping robots, operative zones for industrial robots, city districts for urban autonomous vehicles, regions or nations for territorial databases. When facing orientation problems, each of us often resorts to knowledge partitioning, aiming to achieve descriptional economy and carry out navigational tasks more effectively. When planning a path to some distant place, it is helpful to identify a number of “cornerstones” to be progressively reached, and to select a set of main routes to be used for quick transfers between different areas. On the other hand, deep knowledge of a particular area enables us to perform a great deal of the everyday tasks efficiently. From a cognitive point of view, we are interested in supplying an abstract description of the environment capable of emphasizing its topological characteristics. Each task to be performed on the map can thus be decomposed on two levels. At intra-cluster level, short-range tasks are faced based on the articulate knowledge of each cluster. At inter-cluster level, knowledge of each cluster’s global features and detailed descriptions of passageways between clusters are used to deal with long-range tasks. For instance, path planning on the map in presence of constraints can be broken down into subplannings inside restricted spaces, possibly taking place on separate processors in parallel [7]. Decomposition can also be used to decrease the complexity of the management tasks, such as correction of the errors in the metric map due to the instruments used for data acquisition. We call clustering by discovery the technique for identification of clusters in a map being learned by exploration as the IAS moves within the environment. Clustering is performed according to a scattering measure which takes structural and functional specifications into account. The IAS must be provided with meta-knowledge of the environment, that is, in addition to the existence of distinctive places, a coarse measure of the environment scale in terms of average density of the landmarks. The main concern with clustering by discovery is that we assume no a priori knowledge of the map topology and metrics, hence it is impossible to make hypotheses as to the location and shape of clusters. As we are not certain that the exploration proceeds in an orderly fashion and exhaustively, the possibility that LR’s belonging to the same cluster may be discovered at separate times, should be taken into account. On the other hand, the concomitance of exploration and clustering is a mandatory feature for an IAS in which no artificial distinction is made between the phases of learning and operating. We claim that a system must be able to make sound decisions by relying on the knowledge available at any one time. Hence, the clustering algorithm must run every time a new route is discovered. This involves a trade-off between computational efficiency and clustering fitness. In Section 11, we briefly discuss some existing approaches to clustering and show their limitations with respect to our version of the problem; besides, we discuss the incidence of clustering in solving specific problems concerning IAS’s. In Section 111, the map clustering problem is formalized by defining an isomorphism between maps and abstract graphs. Section IV defines the equivalent circle of a cluster. Two variants of an algorithm for incremental clustering, based on different definitions of cluster, are presented in Section V. Section VI discusses the performances of the algorithm, gives an empirical criterion for its tuning, and analyzes the impact of clustering on the execution of navigational tasks. zyxwvutsrq zyxwvu 11. THE CLUSTERING PROBLEM A. Clustering in the Literature The problem of clustering assumes a significant role in a variety of research areas, ranging from pattern recognition to computer vision, and has therefore been widely discussed in literature. According to operational research, it consists in finding a partition of a given set of points in an ndimensional space into a number of clusters, so that an objective function is maximized. Optimal general solutions 1288 zyxwvutsrqponmlkji zyx zyxwvutsrq IEEE TRANSACTIONS ON PARERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 are often NP-hard but efficient algorithms for many versions of the clustering problem are available [5], [19]. In the AI field, clustering problems arise in interesting applications concerning concept formation and classification in a variety of domains [6], [lo]. In the field of pattern recognition, various approaches to the problem of partitioning patterns into classes were tried. For instance, [13] describes a branch-and-bound nearest neighbor classifier based on a sample of known patterns. The algorithm presented is not transportable to map clustering since no sample of clusters is available. Another interesting approach uses deterministic annealing techniques to minimize a cost function in a finite number of iterations avoiding nonglobal minima, assuming that the number of clusters is known in advance [16]. Knowledge of the number of clusters is required also for the K-means algorithm, one of the most popular [17]. An interesting approach to clustering with applications in computer vision can be found in [8], where a robust technique based on the minimum volume ellipsoid estimator is presented. A significant aspect of the algorithm is that no a priori knowledge of the number of clusters is required. In the case of map clustering, the connectivity constraint imposed on clusters makes application of the aformentioned approaches very complex. If the environment map were known a priori and an overall objective function for evaluating the clustering fitness had been defined, the problem of map clustering could be faced as an optimization problem. To the best of our knowledge, evaluation of a bound seems unfeasible due to the inherent complexity of the model. In fact, operational research proposes two basic approaches to face classical clustering problems. The first finds an exact solution by formulating an integer linear programming model. This asks for the objective function to be linear, which is not our case. The second makes use of column generation techniques which have to solve a subproblem consisting in determining one cluster optimal with respect to an objective function complicated by added parameters. In our case this subproblem is itself hard. However, even if these optimization approaches could be modified to fit our requirements, their computational complexity discourages repeated application during step-bystep exploration. Actually, each exploration step minimally modifies the map, so that we approach clustering as an incremental process making use at each step of the results computed at the previous one for an almost identical map. Furthermore, the on-line efficiency requirement compels us to avoid the optimization of existing clusters at each step, which would cause an update of the data structure storing the map learned so far. The problem of splitting, joining or rearranging the existing clusters at regular intervals during exploration is beyond the aims of this paper. B. Clustering for Intelligent Autonomous Systems In this subsection, we will mention some specific problems related to organizing and exploiting environment knowledge in IAS’s, and discuss the incidence of clustering in solving them. A relevant aspect in the learning of a map is its metric consistency. In fact, due to errors from external sensors, every time the IAS undertakes a new close path starting and ending in some landmark L, the position of L as computed by accumulating length and angle measures all over the path will not coincide with its position as a starting point. This inconsistency is eliminated by adopting error correction methods drawn from topology (compensation on closed and open polygonals). A related aspect is that of map global error reduction. As the IAS repeatedly visits known places, the metric map estimate should converge on the real metric of the map. The simplest way to achieve this result consists in averaging, for any landmark, each new measure acquired with the older ones. This method converges slowly, essentially because each correction is not progressively propagated to the neighborhood. A more effective approach is an application of the finite element method from mechanics. The idea is to consider the map as a lattice truss where each edge is an elastic beam and each vertex an elastic hinge. When a new length and orientation measure is acquired for some edge, we imagine the structure subjected to a load which elastically deforms the corresponding beam to its new position. The perturbation propagates to the whole structure, progressively fading, depending on the elasticity of beams and hinges. The drawback of this approach is its complexity in time and space. In fact, the inversion of a matrix whose rank is equal to the number of LR’s in the map is required. If the map is clustered, the elastic deformation can be restricted within clusters, putting static constraints on border elements; the overall complexity is thus strongly reduced. The worst case is when the correction concerns a border element, since deformation must be propagated to all the adjacent clusters. As regards more specifically navigational tasks, clustering can be used to decompose path planning algorithms. The simplest example is the search for the shortest path connecting two given landmarks. In absence of clustering, a shortest path algorithm such as Dijkstra’s should be applied to the whole set of landmarks experienced, leading to the optimal solution with complexity O ( N 2 ) (where N is the total number of known landmarks). If the map is partitioned, the shortest path algorithm can be applied at inter-cluster level first, determining the sequence of clusters to be crossed in order to reach the destination cluster from the starting cluster. The same algorithm is then applied at intra-cluster level to determine within each cluster the optimal crossing path between two border elements. If the single clusters are processed sequentially, the minimum complexity in time, O ( N 4 9 , is obtained when the number of clusters is N 2 / 3 ; if they are processed in parallel, the minimum is O ( N ) and is reached when the number of clusters is N112.Of course, the benefit introduced by clustering is much more significant when planning involves multiple goals to be achieved, possibly inter-related, as well as contrasting cost measures to be taken into account. The drawback of decomposing the problem on two levels is that the solution obtained is not necessarily the optimum, mainly due to irregularities in cluster shapes. MA10 AND RIZZI: MAP LEARNING AND CLUSTERING hDITlONAL 1289 zyxwvutsrqpon zyxwvutsrqponmlkj zyxwvutsrq zyxwvutsrqponmlkjih zyxwvutsrqponm zyxwvutsrqpo zyxwvutsr zyxwvu TABLE I CONDITIONS FOR EDGE-BASED AND VERTEX-BASED sUBDIVlSIONS. edge-based vertex-based U E n _ l E , ( t )= E ( t ) ! Ul",lVt(t) = V ( t ) ( U~:,V,(= t)V(t) 1 E" ( t )1 U I 1BE, k (4) = E(t) zyx Fig. 2. (a) An example of edge-based subdivision of a map graph. The vertices belonging to the border sets are circled. (b) An example of vertex-based subdivision of the same graph. The edges belonging to the bridge sets are pointed out by double lines. In Section VI-C, the results of simulations concerning map error correction and shortest path planning on clustered maps will be presented. 111. ISOMORPHISM BETWEEN MAPSAND GRAPHS In order to frame the problem within a known formalism, we define an isomorphism between maps and abstract graphs. Definition 1 (Map Graph): Let S = (V, A) be a connected graph, where V is a finite set of vertices and A V x V a set of arcs. Let two distinct weights be associated to each arc by means of the functions: 1: A I ,I I I -+ cr : A -----$ [0,27r)(orientation). (1b) ' The weights l k and Qk of the arc a k can be interpreted respectively as the length of a segment and the angle it forms with a reference direction V and, therefore, they express the laying of an LR on a map. Hence a map M can be built from 9 by imposing a 1-to-1 correspondence between landmarks and vertices, and between LR's and arcs. Relations (la) imply that each route is assumed to be bidirectional. Hence, in the following, we will often reason in terms of edges instead of arcs, where edge ek is defined as a pair of the opposite arcs ah and a i . Relations (lb) on the weights of 9 express the geometric consistency of M. It should be noted that the map metric is described by associating LR lengths and orientation to arcs and not by labelling vertices with landmark coordinates, thus reflecting the data acquisition procedure which is based on measures of lengths and angles. From a map graph, one and only one map can be built, without taking into consideration rigid translations and rotations. Conversely, given an arbitrary direction V , a map M is represented by one and only one map graph, . where A' is a directed path connecting U, and U,. Thus the Euclidean distance A(u,,u,) between U, and U, may be defined; the distance between two adjacent vertices is the length of the arc which links them. In order to describe the gradual exploration of the map, we introduce a time parameter t, and suppose that during each unit of t the IAS moves from one landmark to another. Thus at each t exactly one landmark and one LR are fed into the system. Definition 3 (Connected Clusters): Let G ( t ) 9 ,G ( t ) = ( V ( t ) E, ( t ) ) ( E ( t ) set of edges) be the connected subgraph known at time t, where V ( 0 ) = U, (starting landmark), &(O) = @ , V ( t )C V(t 1)W (equality holds when the corresponding landmark is known), E ( t ) C E(t+l)Vt (equality holds when the corresponding LR is known). At every t, we ask for 9(t) to be subdivided into connected subgraphs Cl(t>,...C,(t),C,(t)= (V,(t),&,(t))for i = l , . . . m called clusters. The number m of clusters is not fixed, and may vary with t. By imposing the condition C,(O) = @,C,(t) C,(t+l)Vz, t , we assume the insertion of a new LR or landmark to be the only operation admitted on clusters. The connectivity constraint imposed on clusters is a consequence of the nature of their possible applications. For instance, decomposition and parallelization of the search for an optimal path requires every cluster to be completely connected. Definition 4 (Edge-Based Clustering, Vertex-Based Clustering): The map subdivision can be either edge-based or vertex-based. An edge-based subdivision is characterized by clusters of edges linked by border sets BV,, whose elements are vertices shared by two or more clusters. Conversely, a vertex-based subdivision is characterized by clusters of vertices connected by bridge sets B€,,(t), that is, sets of edges which link pairs of clusters but do not properly belong to any of them. The additional conditions to be satisfied for each kind of subdivision are shown in Table I. In Fig. 2, examples of edge-based and vertex-based subdivisions on the same map are shown. The clustering algorithm will be differently nested in the structure of the exploration procedure, depending on the chosen kind of subdivision, since an edge-based algorithm will zyxwvutsr R+(length), We say 9 is a map graph if: Vak E A : ak = ( u k , u k ) , 3a; E A : a; = (uk,vk) A 1; = l k A a; = crk f 7r (la) V directed cycle E, C G : E, = (Vc,Ac), C a h l k~cos~ crk, = 0 A CahEA, l k sin f f k = 0. GM label each vertex vi with a pair of coordinates xi, yi: Definition 2 (Euclidean Distance): As 6 is connected, it is possible to arbitrarily choose a vertex uo E V as the origin of a Cartesian system with the X axis directed along D,and to + 1290 zyxwvutsrqponmlkjih zyxwvutsrqponml zyxwv IEEE TRANSACTIONS ON PAlTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 connected objects. Instead, in this context we deal with clusters of scattered points variously connected, and are concerned not only with their borders but also with their density. Let C; be a cluster including n; elements (edges or vertices, depending on the kind of subdivision adopted), and X i be an average measure characterizing the distribution of these elements on the plane. We define the equivalent circle of Ci as a circular cluster in which all edges have length X i and are disposed in a high-density topology constituted by a regular triangular network. The centre of the equivalent circle lies in the barycentre of the set of elements belonging to C;, and its radius is such that the circle contains the same number of elements as Ci. The radius grows with the number of elements and with Xi, thus describing the “extension” of a cluster independently of its actual shape. In Sections IV-A and IV-B, the concept of equivalent circle will be detailed, respectively, for edge-based and vertex-based clusters. zyx zyxwvu zyxwvu zyxwv zyxwvutsrqp zyxw zyxwvutsr A. Edge-Based Clusters Let Ci be an edge-based cluster including ni edges, and X i be their average length. Let pk be the mid-point of generic edge ek. As shown in Fig. 3(a), the equivalent circle of C; is centred in the barycentre ci of the mid-points of the set of edges in Ci, and has radius r; such that the circle contains ni edges, each with length Xi, arranged in a regular triangular network. From the given definition it follows that: Fig. 3. Equivalent circles of (a) an edge-based cluster and @) a vertex-based cluster. run whenever a new LR is discovered, whereas a vertex-based algorithm will whenever a new landmark is discovered: edge-based exploration; vertex-based exploration; M + 0; M + 0; while not (end of explora- while not (end of exploration) do tion) do begin begin get (logical route LR, get (logical route LR, landm L); landm L); if not exist(LR) then if not exist(LR) then begin begin M+M+LR; M + M + LR; if not exist(L) then if not exist(L) then M+M+L; begin edgebased-cluster(LR) M + M + L; vertex-based-cluster(L) end end; end end end; k=l = k,Xinf/2, (3b) where k, = 3-1/4(27r)-1/2.Radius r; is calculated leaving edge effects aside and considering that every triangular mesh contributes to ni with three sides, each shared with another mesh. The radius of a cluster containing only edge e with length 1 is r = kl, and its centre is p (midpoint of e). B. Vertex-Based Clusters Let Ci be a vertex-based cluster including ni vertices, and A; be the average of the Euclidean distances between each vertex and its nearest neighbor. As shown in Fig. 3(b), we characterize C; with an equivalent circle, centred in the barycentre ci of the set of belonging vertices, and with radius ri such that the circle contains ni vertices, each connected to the others by edges with length A;, arranged in a regular triangular network. From the given definition it follows that: Iv. EQUIVALENTCIRCLE OF A CLUSTER From a geometric point of view, clusters are complex irregular structures. In order to make their manipulation easier, we represent them with simpler structures, such as circles. The problem of circular and elliptical fit of objects in two dimensions is analysed in [I] and [2], considering simply- k=l 3 area of equivalent circle - -~ 3 m-: n.2 -- +-ri 2 area of a triangular mesh 2 31/2/4X: 1 k=l n1 k=l 1 area of equivalent circle - -~ 1 7rr; n. - + r; 2 area of a triangular mesh 2 31/2/4X: 2 - zyxwvutsrqponm zyxwvutsrqp zyx zyxwvutsrqpon zyxwvutsrqponmlkjihgfedcbaZYX zyxwvutsrq zyxwvutsrqpo MA10 AND RIZZI: MAP LEARNING AND CLUSTERING 1291 where IC, = 31/4(2n)-1/2. Radius ri is calculated leaving edge effects aside, and considering that every triangular mesh contributes to ni with three vertices, and each vertex is shared by six meshes. The radius of a cluster containing only vertex w is T = 0, and its centre is w. v. ALGORITHMS FOR CLUSTERING BY DISCOVERY In classical pattern recognition problems, clustering is generally performed according to some measure of distance between one or more features of the objects to be clustered. Each cluster contains a set of objects having little difference between feature values, that is, showing similar properties. In the case of map clustering an underlying metric is present, so it seems natural to adopt the Euclidean distance as a measure of the distance between objects. Thus, if the only concern was that of clustering a set of points in the plane, any of the approaches proposed in the literature for evaluating the cluster fitness could be used. This would correspond to performing clustering on the metric map only. On the other hand, from a navigational point of view a map cannot be considered as only a set of landmarks scattered over the territory, since the pattern of connections between the landmarks plays a fundamental role in determining its topology. Hence, it is necessary to define a clustering criterion that takes both the metric and topological aspects of the map into account. In [ll], we associated each cluster C i with a scattering measure calculated as its moment of inertia about the axis orthogonal to the plane of the map in the centre of the equivalent circle, and presented an edge-based clustering method which locally minimizes the total scattering of the map by means of the nearest neighbor rule, coupled with a threshold mechanism for creating new clusters. This method, though it has shown itself to be sufficiently robust with respect to changes in exploration strategies, reveals some misbehaviour in dealing with particular map shapes. In this section, we give a new definition of scattering on the basis of structural and functional specifications. A cognitive approach to the problem of map clustering leads us to identify a number of requirements which the clusters should satisfy the following. visibility. The system should consider each cluster as a small world apart, and reach within its borders a high degree of mobility and ‘autonomy. In other words, the system should have at any one time total control at least over the cluster it is in. If the geometric extension of a cluster is too large, the time necessary to physically move between two landmarks may become excessive, thus reducing the system’s intracluster mobility. Besides, the error in the’estimate of the relative position of two distant landmarks is likely to be high. This requirement determines a bound on the diameter of clusters. Distinguishability. An increase in the number of elements internal to a cluster (landmarks or LR’s) implies a higher management complexity. For instance, the application of error correction methods within a cluster requires the inversion of a matrix whose rank is equal to the number of internal LR’s. As a consequence, we have a bound on the maximum number of elements per cluster. Homogeneity. Clustering should be density-sensitive, so as to reveal the topological features enclosed in the map. For instance, if the landmarks in the map are arranged into one or more high-density areas surrounded by low-density belts, we would like to have cluster borders coarsely lying on these belts. On the other hand, the specific nature of the IAS applications adds more constraints. Parallelizing efficiency. As already stated in Section IIB, clustering can be used to decompose path planning algorithms. In the shortest path example, complexity can be minimized by constructing an optimal number of clusters, each containing an optimal number of elements. In general, for algorithms which can be applied separately at inter and intracluster level, clustering allows for a significant reduction in complexity. On the other hand, the solutions obtained may be nonoptimal. Regularity. Cluster management can be simplified by reducing the intercluster links, that is, the number of border elements. For each cluster, the number of adjacent clusters roughly depends on the regularity of their shape. Thus, in general, we want clusters to be as regularly shaped as possible. It should be noted that visibility and distinguishability must be specified according to the overall system’s technical characteristics, ranging from sensor specifications to memory availability and maximum acceptable processing delay. The clustering algorithm must therefore be parameterizable in terms of maximum cluster diameter and number of belonging elements. As to parallelizing efficiency, there is no way of having an optimal number of clusters at every exploration step, each containing an optimal number of elements, without progressively rearranging the existing clusters, Hence, the average number of elements per cluster should be explicitly constrained according to some approximate measure of the global number of elements in the map, so that parallelizing efficiency is maximized when knowledge of the map is established. This may be in conflict with distinguishability, so the constraint on the number of elements per cluster must be based on a trade-off. The definition of scattering we give in the following exhibits a satisfactory behaviour in terms of homogeneity and regularity. Visibility, distinguishability and parallelizing efficiency may be approximately tuned by means of an explicit threshold parameter. Definition 5 (Overlap): Let c i and c k be two clusters, represented by equivalent circles having, respectively, centres ci and Ck and radii T ; and T k . The overlap W i k between clusters Ci and c k is: where A ( c i , Ck) is the euclidean distance between ci and Ck: zyx zyxwvutsrqp zyxwvutsrq IEEE TRANSACTIONS ON P A m R N ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 1292 zyxwvuts zyxwvutsrqpon f&k is less than 1 if the equivalent circles of ci and CI, overlap, equal to 1 if they are tangent, greater than 1 if they do not overlap. Definition 6 (Scattering): We say that a cluster is simple if it includes only one element (edge or vertex). Let C; be a cluster, and { c k C c;, k = 1,. . .ni} be the simple clusters obtained considering each of the ni elements belonging to C; separately. We define the scattering si of C; as the weighted sum of the Euclidean distances between the centres of Ci and of each c k : zyxwvu zyxwvutsrq zyxwvutsrqponm The scattering of a cluster depends both on the number of elements included and its physical dimensions, as shown by a straightforward qualitative analysis: k = 1, . . , ni for edge-based clustering' = 0, k = 1, . ., ni for vertex-based clustering r k 0: Xi, rk It should be noted that, if the new element were left alone in cluster C, the increase in total scattering would be equal to the scattering of C. Since the scattering of a simple cluster is zero, the increase would appear to be minimized at each step by creating a new cluster, which makes no sense. Hence, the scattering of a simple cluster must be given a conventional value S O , which acts as a threshold ruling the creation of new clusters. SO can be used as a parameter to adjust the grain of clustering: the higher SO, the lower the probability of creating a new cluster, hence, the coarser the grain of clustering (in absence of prominent topological features constraining the cluster borders). Let VC = {Cl, . . . ,C,} be the set of existing clusters over the map. The clustering algorithm has the following structure: clustering (C, VC); S(C) + compute neighborhood(C, VC); As: t min{Asi,C; E S(C)}; if As;* 5 SO then C,. c C;. U C else VC t VC U {C}. Threshold SO has a critical role, since it can be employed for rough tuning of the number of elements per cluster and, consequently, it directly impacts on visibility, distinguishability and parallelizing efficiency. The incidence of the threshold on the result of clustering will be discussed in Section VI-B, together with some criteria for the choice of its value on the basis of some meta-knowledge of the environment. + (7) Besides, for irregular clusters, the equivalent radius is significantly smaller than the physical diameter so the scattering has higher values. At any instant during exploration, the clustered map has a total scattering equal to the sum of all its clusters" scatterings. When a new element is discovered, it must either be classified into one of the existing clusters, or form a new one. The decision is based upon two constraints: 1) every cluster in the map must be connected; 2) the increase of total scattering must be minimum. Let C with center c and radius r be the simple cluster formed by the new element. The first constraint significantly reduces the search space to the set S(C) of clusters adjacent to C. The description of S(C) will be given for edge-based and vertex-based clusterings in subsections A and B respectively. As to the second constraint, the insertion of C into cluster C; moves the centre ci of Ci into e: and modifies its radius to r:. The new value for the scattering of cluster C; is: .s; = A(c:, ck)2 k=l r: r k n, + A. Edge-Based Clustering If the displacement of the center ci of Ci when adding e to Ci can be neglected, the increase in total scattering can be calculated as: + + since r: = k , ~ : ( n+ i 1)'12, X: = ( n ; ~ ;~ ) / ( n ;1). If the set of lengths of the belonging edges can be assumed to have little variance, As; can be written in a simplified form: zyxwvuts +-.A(c:, rj + r Since the other clusters are not modified, the increase in total scattering is Asi is determined by two contributions. The first contribution, R, expresses a relative variation whose sign is positive only 1) S X;/2, and the second, A, an when 1 < Xini( absolute nonnegative increment. For ni sufficiently large it is d m - R = O ( n i ' ) ,A = X;O(n,f/2). From formula (7), it follows that zyxwvutsrqponm In Sections V-A and V-B, As, will be discussed in relation to the cases of edge-based and vertex-based clustering. ' Assuming that the distribution of the lengths of the edges in C, has little variance, so that 1~ x X , . k = l . . - r r , . As; = X;O(n,f/2). (10) Since Asi grows with ri, new edges are more probably inserted into small clusters rather than into large ones. zyx zyxwvutsrqpo zyxwvut zyxwvutsrq zyxwvut zyxwvutsrqpo MA10 AND RIZZI: MAP LEARNING AND CLUSTERING 1293 The set S(C) of clusters upon which the search is restricted can easily be constructed considering the end vertices w, and wb of edge e. Each of the vertices contributes to S(C) as follows: no cluster if vertex is new; cluster Ci if vertex is internal to C;; clusters {C; ,i = 1,. . . ,m‘} if vertex is border for { Ci , i = 1 , . . . , m’}. Inserting the new edge into any other cluster would violate the connectivity constraint. B. Vertex-Based Clustering If the displacement of the centre ci of C; when adding w to Ci can be neglected, the increase in total scattering can be calculated as: The two clustering variants have been tested on a sample of maps, including the map of downtown Bologna and some randomly generated maps. The tests point out the satisfactory behaviour of the algorithm with respect to the requirements outlined in Section V. A significant aspect concerns the repeated exploration of the same map adopting different strategies, that is, visiting landmarks in a different order. This allows estimation of the robustness of the algorithm in terms of independence of the route undertaken. In evaluating the results, two significant points should be kept in mind. First of all, clustering by discovery is an incremental algorithm executed on-line as environmental knowledge is fed into the IAS. Since at each step the existing clusters are not rearranged, the comparison with an off-line algorithm working once on the entire map makes little sense. In fact, it is obvious that the performance of the on-line algorithm would be inferior, suffering from dependence on the exploration strategy. On the other hand, as previously stated, an IAS cannot renounce the immediate availability of knowledge acquired so far. Secondly, we defined the scattering function as an indicator for a local optimal choice, and not as an overall fitness measure. Hence, our algorithm should not be considered as a “greedy” approach to the problem of minimizing global scattering over the map. zyxwvutsrq A(w,??)being the distance of w from its nearest neighbor ti E Ci,r: = k,Xi(ni 1 ) 1 / 2 , = (niXi A(w,ti))/(ni 1 ) . As for the edge-based case, Asi is determined by two contributions. R expresses a relative variation whose sign is positive only when A(v,ti) < X i n i ( d m - 1) 2 X;/2 and A an absolute nonnegative increment. As for the dependency on ni and Xi, the result in formula (10) is still valid. In the vertex-based case, S(C) coincides with the cluster to which the last visited landmark belongs, so that the new landmark can only be associated to that cluster, or form a new one. + + + VI. PERFORMANCE EVALUATION We begin the performance discussion with some notes about the clustering algorithm’s computational complexity. We assume that, at each time t, the IAS discovers a new element. A comprehensive analysis would require a probabilistic model to be defined for the environment, as well as an exploration strategy to be specified. However, some simplifying assumptions enable us to make a significant analysis. Let C be the element to be classified at time t,kc the cardinality of the search space2 S(C), and nc the average number of elements within the clusters in S(C). Asi is evaluated for every Ci E S(C), and As,* = min{As;,Z; E S(C)} is found and compared to so. Assuming that the values of c, and X i are stored for each C i , Asi can be computed in O ( n c ) as follows from (8). Hence, the complexity of the insertion of C is O(kcnc).Since kc is generally contained within a few units, computational time grows linearly with the average number of elements per cluster. A distinguishability constraint can thus be determined. A. Edge-Based vs. Vertex-Based Fig. 4 presents an edge-based clustering on an urban map where a significant set of distinctive places are present. Two exploration strategies are Compared, the first moving in a spiral from the surroundings towards the centre of the map, the second choosing routes on the basis of a random criterion. The same threshold SO has been used in both cases. Since the map does not produce significant dishomogeneities, clustering should depend mainly on the value of SO. In fact, the results obtained are comparable in terms of the number and shape of the clusters, as confirmed by the values assumed by the total scattering in the two cases. More results are presented in Fig. 5 with reference to an irregular square-meshed map. The map has been explored partially, choosing the direction at each crossing in a random way. In order to test the homogeneity requirement, a map in which a large number of routes is grouped in four “villages,” linked by a few longer routes, has been generated. This map has been explored partially, choosing the direction at each crossing’in a random way. Fig. 6 shows how edge-based clustering perceives the density gap, building clusters which roughly overlap with the four villages. As for vertex-based clustering, Fig. 7 shows some results obtained for the urban map. The presence of irregularly shaped clusters and the high variance in cluster dimensions lead us to judge this method negatively. Besides, the robustness in terms of exploration strategy appears to be lower than in the edge-based case. This misbehaviour may be unexpected, since clusters of vertices are real features of the environment, whereas clusters of edges depend on which paths the IAS has undertaken. On the other hand, since bridge edges link zyxwvuts ’The representation adopted for topological knowledge allows for S ( C ) to be determined in O( l ) , since each element includes a pointer to its cluster. 1294 zyxwvutsrqp zyx zyxwvu zyxwv IEEE TRANSACTIONS ON PA'lTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 I i zyxwvu .. * . . . zyxw zyxw zyxwv zyx Fig. 5 . Edge-based clustering on an irregular square-meshed map explored partially and randomly ( s o =110, the average length of the edges is 10). Five clusters were obtained. ......... : : ? : \...+. t . . . ; .................................. .. L i............................ .I e......;i+......................................... *. . ,. >.............................. . . ,. .. . . .... . p-'?'.... ..4 ................................ .......?"r,-"'T"".,p ,...........v., ;.-..l..-.3..s , , I .... , '. ....:.:,....+l.$... ..........;..;...;...........................'.i....; -..f,,i .....;,.+.,j;..; - . I 3 .I : Fig. 4. Edge-based clusterings on the map of downtown Bologna, using different exploration strategies and the same threshold, s0=1700 (the average length of the edges is 257). Border vertices are circled. (a) Moves are in a spiral from the surroundings towards the centre of the map; the total scattering is 48780. (b) Routes are chosen on the basis of a random criterion; the total scattering is 48300. only two clusters, the connectivity constraint restricts the vertex-based search space to one cluster. Thus, vertex-based clustering is actually much more sensitive to the exploration strategy than edge-based clustering. In the following, we will focus the discussion on edge-based clustering. B. Incidence of the Threshold on Clustering The value adopted for the threshold considerably alters the results of clustering, so that it becomes necessary to define an empirical criterion for choosing it a priori, given some meta-knowledge of the environment. On the basis of expression (lo), a qualitative analysis can be conducted aiming to determine, in the edge-based case, the relationship between so and the average density of edges per cluster, n. Let X be the average length of the edges over the whole map. We take : a C:;........i.i__..: ......y+.+. :. &-+-~ .....~L.. ....i ; *.L:...... i............-.:...: ....i.4.....!:,.*....-. : . ..,';....,...?i...\ .... ; i ....i... A;....;..;. ......?+ :.+...i j zyxwvutsrqponmlkjihgfe zyxwvutsr Fig. 6. Edge based clustering on a dishomogeneous map explored partially and randomly (.s0=300, the average length of the edges is 10). Six clusters were obtained. as a reference the homogeneous situation, in which for each Ci, ni = n and X i = A. Since the algorithm decides whether to create a new cluster by comparing SO with the minimum increase of scattering A.si*, it is reasonable to assume s o = O(A.si*) = XO(n1/2). Hence, in the homogeneous case, the average density of edges per cluster is expected to depend on the threshold approximately by the law n=(so/~)~h. In order to empirically estimate h, a homogeneous squaremeshed map has been explored, with different threshold Values, by means of an exhaustive strategy (see Fig. 8). MAW AND RIZZI: MAP LEARNING AND CLUSTERING zyxwvutsrq zyxwvutsr 1295 800 - .. n 600 .. 400 .. 5 0 10 20 15 25 30 zyxwvu :,II Fig. 9. Experimental curve for n in function of so/X, compared with its best parabolic fit (least square mean error method). 9w- zyxwvutsrqp zyxwvutsrqp /zyxw 800 500 Fig. 7. Vertex-based clusterings on the map of downtown Bologna randomly explored (S0=4000). Bridge edges are represented by dashed lines. 400 n-1500 300 .- 200 -. loo -. or : 0 : : 10 ; : 20 : : 30 I SOIL 40 50 Fig. 11. Experimental curve for the dishomogeneous “village” map in Fig. 6, randomly explored. If A is small, this expression allows for estimating the density p ( t ) . By associating n with the average value of p ( e ) , the influence of the border effects is strongly reduced. Fig. 9 shows the curve obtained for n as a function of so/A, and its best parabolic fit (h Z 0.73). A similar result can be obtained with other regular maps explored by means of uniform strategies. The presence of dishomogeneities in the map visibly changes the relationship between n and so/A. In Fig. 10, the experimental curves for some randomly generated and explored maps having different dimensions are shown. Low density areas encourage cluster fragmentation, so that clusters are averagely smaller. The dependency of n on so/A turns out to be coarsely linear. The curve in Fig. 11 refers to the “village” in Fig. 6. The plateau for so/A ranging from 10 to 25 is due to the strong dishomogeneity, which correctly overrides threshold incidence in determining cluster dimensions. The conclusion we can draw from experimental results is that the choice of a threshold for clustering a map by discovery requires meta-knowledge expressed by the average length of LR’s in the environment, A. A desired density of edges per cluster, n, is chosen on the basis of visibility and zyxwvutsrqponm zyxwvutsrqp Let C 1 , ,C, respectively nl , e + be the clusters in the map, containing ,n, edges, and let m N = x n i i=l be the total number of edges. On a real map, n cannot be measured as N/m, since this would lead, for high values of SO, to unreliable results due to border effects (the external clusters are “clipped”). Hence, n is measured considering the edges in the map as probabilistic events. The probability that edge e belongs to a cluster including a number of edges ranging from t to t A is + 1296 zyxwvutsrqponmlkjih zyxwvu IEEE TRANSACTIONS ON PA7TERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 15, NO. 12, DECEMBER 1993 computed is 36. If we determined the optimal threshold on the basis of the empirical criterion (13), we would find SO = X, resulting in an average decrease in computational time equal to 75%. zyxwvutsr zyxwvutsrqpo zyxwvutsrqponmlkji zyxwvutsrqponmlkj bonier Im. duster Fig. 12. Object-oriented conceptual schema for map knowledge. White triangles represent disjoint generalizations, rhombuses aggregations; the multiplicity of associations is represented by dark circles (zero or more) and by ( i f or more). the symbol n + distinguishability requirements (as to visibility, cluster diameter can be approximately computed as When using exhaustive strategies on homogeneous maps, the threshold can be determined using the following empirical formula: VII. DISCUSSION In this article, we have proposed clustering by discovery technique for identification of clusters in a map which is being learned by exploration. The original aspect of our approach is that clustering is viewed as an incremental learning process inside an autonomous system which is given no a priori knowledge of the map. We have also presented the most relevant problems in finding algorithms able to guarantee an adequate trade-off between computational efficiency and clustering fitness, taking into account some functional and structural requirements. Two variants of the clustering by discovery technique have been discussed in detail. The edgebased variant shows more robust behaviour than the vertexbased one in terms of independence of the exploration strategy adopted. The grain of clustering can be adjusted by means of a parameter, SO, which acts as a threshold for creating new clusters, and whose tuning requires some knowledge of the environment scale. Our future work will be aimed at removing the main drawback of our algorithm, related to the absence of mechanisms for reassigning elements to clusters. Our purpose is to investigate the feasibility of an adaptive incremental algorithm capable of partially rearranging clusters after each insertion so that some fitness measure is locally maximized, and of autonomously tuning the cluster-splitting threshold as the exploration proceeds and more knowledge of the environment scale is obtained. Only an adaptive system, we argue, can reach a satisfactory level of autonomy, so that it can be employed in a variety of environments. The price to be paid will be both in terms of computational complexity and knowledge organization. Further research should be devoted to providing the system with the ability to determine an effective exploration strategy by itself. The essential point, we believe, is to define methods for building more refined models of the environment while exploring. Finally, an interesting issue seems to be the reexamination of our environmental model in order to explore extendibility of the clustering algorithm to wider environment typologies. For instance, the scattering function we &&finedcan be extended tout court to work with 3-D maps. zyxwvutsrqponm zyxwvutsrq , m \ *s0=X(i) 112 ‘ where h 2 0.73. For real maps presenting dishomogeneities, a linear criterion should be used instead: where hl 2 10. If the map is significantly dishomogeneous, the desired n,will actually be an upper bound for the true n,. C. Effectiveness of Clustering for Navigational Tasks The software developed for the symbolic module includes a kernel for knowledge representation designed to accomplish different navigational tasks. An object-oriented approach has been adopted for software design and implementation. Fig. 12 shows edge-based conceptual schemata for the object classes involved in map representation at two different abstraction levels: topological and cluster. The metric level can be depicted by tagging each object of the class “landmark” with attributes containing metric knowledge. In Section 11-B, we addressed specific issues related to IAS navigation; here we present some experimental results. As to map global error reduction, we conducted simulations assuming a relative error on lengths uniformly distributed in the range [-1%, +l%],and an absolute error on angles uniformly distributed in [-lol $1’1. If corrections on landmark coordinates are not propagated to the neighborhood, at the third repeated exploration on the map of Bologna the average relative error on the lengths of the LR’s in the map is about 0.8%, and the average absolute error on their orientation is about 0.5’. If, instead, the finite element method is adopted, the average error on the map of Bologna after three explorations decreases to 0.5% for lengths, and to 0.3’ for angles. As to shortest path search, from simulations conducted on a random generated map including about 200 elements, the average decrease in computational time by applying the search algorithm sequentially on single clusters was more than 50% for thresholds varying in the range [A, 20x1, with a maximum of about 85% in SO = 3X. The shift from optimality of the solution obtained was contained within 20% in 80% of cases. It is interesting to observe that, for SO = 3X, the map presents 34 clusters, while the optimal number of clusters theoretically REFERENCES B. B. Chaudhuri, “Optimal circular fit to objects in two and three dimensions,” Pattern Recognit. Lett., vol. 11, no. 8, pp. 571-574, 1990. B. B Chaudhuri and G. P. Samanta, “Elliptical fit of objects in two and three dimensions by moment of inertia optimization,” Pattern Recognit. Lett., vol. 12, no. 1, pp. 1-7, 1991. P. Ciaccia, D. Maio, and S. Rizzi, “Integrating knowledge-based systems and neural networks for navigational tasks,” Proc. IEEE COMPEURO, Bologna, Italy, pp. 6524556, 1991. E. Davis, “Organizing spatial knowledge,” Dept. Computer Sci., Yale Univ., New Haven, CT, Res. Rep. No. 193, 1981. M. R. Garey and D. S. Johnson, Computer and Intractability. New York: Freeman, 1979. zyxwvutsrqp zyxwvutsrqponmlkji zyxwvutsrqponmlk zyxwvutsrqpo zyxwvutsrqpon zyxwvutsrqpon MAIO AND KI%LI: MAP LEARNING AND CLUSTERING 161 K. W. Haase, Jr., “Discovery systems,” in B. Du Boulay, D. Hogg, and [7] [8] [9] (lo] [ll] [12] [13] [14] [15] [16] [17] (181 [ 191 L. Steels, EdsAdvances In ArtiJicial Intelligence, vol. 11. New York: Elsevier, 1987, pp. 11 1-120. M. A. W. Houtsma, P. M. G. Apers, and S. Ceri, “Complex transitive closure queries on a fragmented graph,” Proc. ICDT 90, Paris, France, 1990, pp. 4 7 M 8 4 . J. M. Jolion, P. Meer and S. Bataouche, “Robust clustering with applications in computer vision,” IEEE Trans. Pattern Anal. Machine Intell., vol. 13, no. 8, pp. 791-802, 1991. B. J. Kuipers and Y. T. Byun, “A robust, qualitative method for robot spatial learning,” Proc. AAA188,St. Paul, MN, vol. 2, pp. 774-779, 1988. D. B. Lenat, “Eurisko: a program which learns new heuristics and domain concepts”, Artificial Intell., no. 21, 1983. D. Maio and S. Rizzi, “Clustering by discovery on maps,” Pattern Recognit. Lett., vol. 13, no. 2, pp. 89-94, 1992. D. McDermott, “Spatial inferences with ground, metric formulas on simple objects,” Dept. Comput. Sci., Yale Univ., New Haven, CT,1980, Research Rep. No. 173. H. Niemann and R. Goppert, “An efficient branch-and-bound nearest neighbor classifier,” Pattern Recognit. Lett., vol. 7, no. 2, pp. 67-72, 1988. D. Nitzan, “Development of intelligent robots: achievements and issues,” IEEE J . Robotics Automat., vol. RA-1, no. 1, pp. 3-13, 1985. N. S. V. Rao, “Algorithmic framework for learned robot navigation in unknown terrains,” IEEE Trans. Comput., vol. 38, pp. 37-43, Jan. 1989. K. Rose, E. Gurewitz, and G. Fox, “A deterministic annealing approach to clustering,” Pattern Recognit. Lett., vol. 11, no. 9, pp. 589-594, 1990. J. T. Tou and R. C. Gonzalez, Pattern Recognition Principles. Reading, MA: Addison-Wesley, 1974. C. R. Weisbin, G. De Saussure, J. R. Einstein, and F. G. Pin, “Autonomous mobile robot navigation and learning,” IEEE Trans. Comput., vol. 38, pp. 29-35, Jan. 1989. F. F. Yao, “Computational geometry,” in J. Van Leeuwen, Ed. Handbook of Theoretical Computer Science, vol. A. New York: Elsevier, 1990, pp. 345-389. I297 [20] D. Zipser, “Biologically plausible models of place recognition and goal location,” in D. E. Rumelhart and J. L. McClelland, Eds. Parallel Distributed Processing, vol. 11. Cambridge, MA: MIT Press, 1986, pp. 432-470. Dario Maio (M’90) received a degree in elec- tronic engineering from the University of Bologna, Bologna, Italy in 1975. He is an Associate Professor at the Computer Science Department, University of Bologna. He has published in the fields of distributed computer systems, computer performance evaluation, database design, information systems, neural networks, autonomous systems. Before joining the Computer Science Department, he received a fellowship from the C.N.R. (Italian National Research Council) for the participation to the Air Traffic Control Project. Stefan0 Rizzi received a degree in Electronic Engineering from the University of Bologna, Italy, in 1988. He is fellow at the Faculty of Computer Science, Cesena, and a research consultant at the Computer Science Department, University of Bologna. Since 1990, he has participated in the PROCOM Project of Prometheus. His current research interests include autonomous systems, knowledge representation, expert systems, database systems.