0 Robotic Exploration : Place Recognition as a Tipicality Problem

Autonomous exploration is one of the main challenges of robotic researchers. Exploration requires navigation capabilities in unknown environments and hence, the robots should be endowed not only with safe moving algorithms but also with the ability to recognise visited places. Frequently, the aim of indoor exploration is to obtain the map of the robot’s environment, i.e. the mapping process. Not having an automatic mapping mechanism represents a big burden for the designer of the map because the perception of robots and humans differs significantly from each other. In addition, the loop-closing problem must be addressed, i.e. correspondences among already visited places must be identified during the mapping process. In this chapter, a recent method for topological map acquisition is presented. The nodes within the obtained topological map do not represent single locations but contain information about areas of the environment. Each time sensor measurements identify a set of landmarks that characterise a location, the method must decide whether or not it is the first time the robot visits that location. From a statistical point of view, the problem we are concerned with is the typicality problem, i.e. the identification of new classes in a general classification context. We addressed the problem using the so-called INCA statistic which allows one to perform a typicality test (Irigoien & Arenas, 2008). In this approach, the analysis is based on the distances between each pair of units. This approach can be complementary to the more traditional approach units × measurements – or features – and offers some advantages over it. For instance, an important advantage is that once an appropriate distance metric between units is defined, the distancebased method can be applied regardless of the type of data or the underlying probability distribution. We describe the theoretical basis of the proposed approach and present extensive experimental results performed in both a simulated and a real robot-environment system. Behaviour Based philosophy is used to construct the whole control architecture. The developed system allows the robot not only to construct the map but also comes in useful for localisation purposes. 15


Introduction
Autonomous exploration is one of the main challenges of robotic researchers.Exploration requires navigation capabilities in unknown environments and hence, the robots should be endowed not only with safe moving algorithms but also with the ability to recognise visited places.Frequently, the aim of indoor exploration is to obtain the map of the robot's environment, i.e. the mapping process.Not having an automatic mapping mechanism represents a big burden for the designer of the map because the perception of robots and humans differs significantly from each other.In addition, the loop-closing problem must be addressed, i.e. correspondences among already visited places must be identified during the mapping process.In this chapter, a recent method for topological map acquisition is presented.The nodes within the obtained topological map do not represent single locations but contain information about areas of the environment.Each time sensor measurements identify a set of landmarks that characterise a location, the method must decide whether or not it is the first time the robot visits that location.From a statistical point of view, the problem we are concerned with is the typicality problem, i.e. the identification of new classes in a general classification context.We addressed the problem using the so-called INCA statistic which allows one to perform a typicality test (Irigoien & Arenas, 2008).In this approach, the analysis is based on the distances between each pair of units.This approach can be complementary to the more traditional approach units × measurements -or features -and offers some advantages over it.For instance, an important advantage is that once an appropriate distance metric between units is defined, the distance-based method can be applied regardless of the type of data or the underlying probability distribution.We describe the theoretical basis of the proposed approach and present extensive experimental results performed in both a simulated and a real robot-environment system.Behaviour Based philosophy is used to construct the whole control architecture.The developed system allows the robot not only to construct the map but also comes in useful for localisation purposes.

Literature review
Loop-closing has long been identified as a critical issue when building maps from local observations.Topological mapping methods isolate the problem of how loops are closed from the problem of how to determine the metrical layout of places in the map and how to deal with noisy sensors.The loop-closing problem cannot be solved neither relying only on extereoceptive information (due to sensor aliasing) nor on propioceptive information (cumulative error).Both environmental properties and odometric information must be used to disambiguate locations and to correct robot position.Fraundorfer et al. (2007) present a highly scalable vision based localisation and mapping method that uses image collections, whereas Se et al. (2005) use vision mainly to detect the so called loop-closing -the place has already been visited by the robot-in robot localisation; Tardós et al. (2002) introduce a perceptual grouping process that permits the robust identification and localisation of environmental features from the sparse and noisy sonar data.On the other hand, the probabilistic Bayesian inference, along with a symbolic topological map is used by Chen & Wang (2006) to relocalise a mobile robot.More recently, Olson (2009) presents a new loop-closing approach based on data association, where places are recognised by performing a number of pose-to-pose matchings; a review of loop-closing approaches related to MONOSLAM can be found in (Williams et al., 2009).Within the field of probabilistic robotics (Thrun et al., 2005), Kalman filters, Bayesian Networks and particle filters are used to maintain probability distributions over the state space while solving mapping, localisation and planning.But the mapping problem can also be stated from a classification perspective.In most classification problems, there is a training data available for all classes of instances that can occur at prediction time.In this case, the learning algorithm can use the training data to determine decision boundaries that discriminate among the classes.However, there are some problems that exhibit only a single class of instances at training time but are amenable to machine learning.At prediction time, new instances with unknown class labels can either belong to the target class or to a new class that was not available during training.In this scenario, two different predictions are possible: target, an instance that belongs to the class learnt during training, and unknown, where the instance does not seem to belong to the previously learnt class.Within the machine learning community, this kind of problems are known as one-class problems and as typicality problems within the statistics research.To give some examples, in (Hempstalk et al., 2008) the probability distributions of the class variable known values are used to determine if a new case belongs to the known class values or if it should be considered as a different class member.One-class classification categorizers have a wide range of applications; in (Manevitz & Yousef, 2007) one-class classification is used to document categorisation in order to decide whether a reference is relevant in a database searching query.The same authors combine this approach with the Support Vector Machine (SVM) paradigm for document classification purposes (Manevitz & Yousef, 2002); and in (Sánchez-Yáñez et al., 2003) the same idea is applied to texture recognition in images.
A thorough review of one-class classification can be found in (Tax, 2001).Regarding the mobile robotics area, one-class classification approaches can be applied to robot mapping, i.e. to learn the structure of its environment in an automatic manner.In this way, Brooks & K. Iagnemma (2009) present a use of this approach to deal with terrain recognition, and Wang & Lopes (2005) use it to identify user actions in human-robot-interaction.However, direct uses of this approach, with this particular name, have not been found in the robotics literature.
There are different approaches found in the literature to deal with the typicality problem (Bar-Hen, 2001;Cuadras & Fortiana, 2000;Irigoien & Arenas, 2008;McDonald et al., 1976;Rao, 1962).Some of them are only suitable for normal multivariate data, others are appropriate for any kind of data but are limited to k = 2, being k the number of classes.The latter case offers the most general framework to be applied.However, and in spite of the high diversity of the used methods, to the best of the author's knowledge, neither typicality nor one-class approaches appear in the mapping literature.
The approach proposed in this chapter combines the INCA statistic (Irigoien & Arenas, 2008) with the topological properties of the environmental locations considered and thus represents a new approach to tackling the robot mapping problem as a typicality case.

Typicality test by means of the INCA statistic
In this section the INCA statistic is introduced and the INCA test is proposed as a solution to the typicality problem.

Preliminaries
The data we consider are random vectors and we assume that distinct classes exist.Let C 1 , C 2 , ..., C k be k classes represented as k independent S-valued random vectors Y 1 , Y 2 , ..., Y k , with probability density functions f 1 , f 2 , ..., f k with respect to a suitable common measure λ.
Let δ(y, y ′ ) be a distance (Gower, 1985) function on S. We say that δ is a Euclidean distance function if the metric space (S, δ) can be embedded in a Euclidean space, Ψ : S −→ R p ,such that: and we may understand E(Ψ(Y i )) as the δ-mean of Y i , i = 1, ..., k.
In this general framework the following concepts are considered.The geometric variability of C i , i = 1, ..., k with respect to δ is defined (Cuadras & Fortiana, 1995) as In applied problems the distance function is typically a datum, but the probability distribution for each population is unknown.Natural estimators given samples y 1 1 , ..., y 1 n1 , ..., y k 1 , ..., y k nk ,of sizes n 1 , ..., n k coming from C 1 , ..., C k are the following: •T h e proximity function of a new object y 0 to C j , •T h e squared distance between C i and C j , See (Arenas & Cuadras, 2002) and references therein for a review of these concepts, their application, different properties and proofs.

INCA statistic
Consider that n units are simply divided into k classes C 1 , ..., C k ,o fs i z e sn 1 , ..., n k .C o n s i d e r afi x e du n i ty 0 , which may be an element of a C j , j = 1, ..., k or may belong to an unknown class, i.e. it may be an atypical unit.Consider a new class with δ-mean the linear combination ∑ k i=1 α i E(Ψ(Y i )),w h e r eY i is the random vector representing the class C i , i = 1, ..., k.T h e INCA statistic is defined as follows: (5) φ 2 i (y 0 ) is the proximity function of y 0 to C i and ∆ 2 ij is the squared distance between C i and C j .The INCA statistic W(y 0 )=min α i L(y 0 ) trades off between minimising the weighted sum of proximities of y 0 to classes (which takes into consideration the within-group variability) and maximising the weighted sum of the squared distances between classes (between-groups variability) -a common behaviour of a classing criterion.The values of α The statistic W(y 0 ) has a very nice geometric interpretation.It can be interpreted (see Figure 1) as the (squared) orthogonal distance or height h of y 0 on the hyperplane generated by the δ-mean of C i (i = 1, ..., k), denoted in Figure 1 by a i , i = 1, ..., k.Then, points which lie significantly far from this hyperplane are held to be outliers.This intuitive idea is used to detect outliers among existing classes.
( C 1 ) Fig. 1.For k = 3, new observation {y 0 }, centres of classes {a 1 , a 2 , a 3 } and (squared) projection r i of the edges {y 0 , a i }ontheplane{a 1 , a 2 , a 3 }.The (squared) height h is W(y 0 ) Suppose now that the data are classified in k classes.Let y 0 be a new observation and consider the test to decide whether y 0 belongs to one of the fixed classes C j , j = 1, ..., k or, on the contrary, it is an outlier or an atypical observation which belongs to a different and unknown class.Consider the INCA test, H 0 : y 0 comes from the class with H 1 : y 0 comes from another unknown class, and compute statistic (5).If W(y 0 ) is significant it means that y 0 comes from a different and unknown class.Otherwise we allocate y 0 to C i using the rule: where U j (y 0 )=φ 2 j (y 0 ) − W(y 0 ), j = 1, ..., k.It can be observed (Irigoien & Arenas, 2008) 1, where for simplicity the (squared) projection U j (y 0 ) is denoted by r j , j = 1, ..., k.Hence, criterion 6 follows the next geometric and intuitive allocation rule: Allocate y 0 to C i if the projection U i (y 0 ) is the smallest.We obtained sampling distributions of W(y 0 ) and U j (y 0 )( j = 1, ..., k) by re-sampling methods, in particular drawing bootstrap samples as follows.Draw N units y with replacement from the union of C 1 ,...,C k and calculate the corresponding W(y) and U j (y)(j = 1, ..., k) values.As usual, this process is repeated 10P times with P ≥ 1 selected by the user.In this way, the bootstrap distributions under H 0 are obtained.

Behavior-Based navigation
Behavior-Based (BB) systems appeared in 1986, when R.A. Brooks proposed a bottom-up approach for robot control that imposed a new outlook for developing intelligent embodied agents capable of navigating in real environments performing complex tasks.He introduced the Subsumption Architecture (Brooks, 1986;Brooks & Connell, 1986) and developed multiple robotic creatures capable of showing different behaviours not seen before in real robots (Brooks, 1989;Connell, 1990;Matarić, 1990).Behavior-based systems are originally inspired on biological systems.Even the most simple animals show navigation capabilities with high degree of performance.For those systems, navigation consist of determining and maintaining a trajectory to the goal (Mallot & Franz, 2000).The main question to be answered for navigation is not Where am I? but How do I reach the goal? and the answer does not always require knowing the initial position.Therefore, the main abilities the agent needs in order to navigate are to move around and to identify goals.The behavior-based approach to robot navigation relies on the idea that the control problem is better assessed by bottom-up design and incremental addition of light-weight processes, called behaviors, where each one is responsible for reading its own inputs and sensors, and deciding the adequate motor actions.There is no centralized world model and data from multiple sensors do not need to be merged to match the current system state in the stored model.The motor responses of the several behavioural modules must be somehow coordinated in order to obtain valid intelligent behavior.Way-finding methods rely on local navigation strategies.How these local strategies are coordinated is a matter of study known as motor fusion in BB robotics, opposed to the well known data fusion process needed to model data information.The aim is to match subsets of available data with motor decisions; outputs of all the active decisions somehow merge to obtain the final actions.In this case there is no semantic interpretation of the data but behavior emergence.

Topological places
Generally speaking, there are two typical strategies for deriving topological maps: one is to learn the topological map directly; the other is to first learn a geometric map, then to derive a topological model from it through some process of analysis (Thrun, 1999;Thrun & Bücken, 1996a;b).As mentioned before, BB systems advocates for a functional bottom-up decomposition of the control problem in independent processes called behaviours.From this point of view, the topological "map" should be composed of tightly coupled behaviours, specific to the meaningful locations.A topological map is formally defined as a set of nodes where each node consists of: 1.A set of inputs (from landmark identification subsystems) and outputs.These outputs should serve to reduce the distance between the current state and the goal.
2. A signature that identifies the node: signature i .Each location has a signature that reflects the state of a set of specific landmarks and that is used by the robot for localisation purposes.

324
Mobile Robots -Current Trends www.intechopen.com Robotic Exploration: Place Recognition as a Tipicality Problem 7 3.A function α i to be executed when the node i is active and that will output the action to be performed at the node specific current state.The behaviour of the robot as well as the associated function of the nodes can be different depending on the location.
4. The location identifier that contains initial and final position of the node: The overall "map" is then composed of sets of behaviours, each launched on a different thread.
The environment is only partially unknown to the robot since it is provided with behaviour modules to properly identify certain features such as corridors, crossings or junctions and halls, each of them identifiable using distance sensors like a laser scanner.Each landmark identifier outputs a confidence level (cl) as a measure of the confidence of the identification process.These values are filtered through node signatures, giving at each time step the node activation level according to the sensor readings.
• Corridors: the robot is considered to be in a corridor if the place is between 1.6 and 2.4 m wide.To that aim, left and right side shortest readings are summed and stored in a FIFO buffer.The mean of the buffer is used in a Gaussian function that gives the confidence level of being in a corridor.
• Halls: as opposed to corridors, halls are wide areas.Therefore, the confidence level of being in a hall is defined as 1 minus the probability of being in a corridor.
• Crossings or junctions: these locations are areas where two or more alternative ways are possible.It is mandatory for the robot to identify junctions in order to choose the right way when looking for goals.Depending on the destination, the robot must select one way or another.Crossing areas usually come at the end of a corridor or hall and lead to a new area.Hence, left and right minimum distances are looked for and these minimum values are used as reference for searching continuous interval of readings that exceed the minimum values.The orientations of the possible alternative ways at the junctions are registered according to the robot heading provided by the compass sensor and the indexes of the laser scan that define the different intervals, the orientation of the possible alternative ways at the junctions are registered.
The goal of the mapping process is to fill in the nodes with the information that they must contain.More precisely, the contents of the signature and the location identifier.For this aim, during the learning process and depending on the state of the landmark identification subsystems, i.e. the confidence level of the corridor/hall/junction (cl corr , cl hall and cl cross ), the following information is given to the INCA test: • Initial and mean heading values: θ 0 , θ mean .
• Initial and final pose obtained by the odometric subsystem.These poses correspond to the position values of the robot when the node signature activates/deactivates: (x 0 , y 0 ), (x f , y f ).
• Length (previously named as duration) of the area calculated using the initial and final pose information: d.
• Number of alternative ways and their associated orientation: num_ways and These measurements will constitute the observations of the random vectors Y considered in the INCA statistic, as represented in Equation 7.
Corridors, Halls: Y =(sin(θ 0 ),cos(θ 0 ),sin(θ mean ),cos(θ mean ), (x 0 , y 0 ), (x f , y f ), d) Note that there are two types of measurements: variables type coordinates in meters and variables type orientation in degrees.The corridors/halls/crosses can differ in their orientation (mean compass value that the robot maintains when going through them in its canonical path).This is why each physical place will correspond to two or more different nodes in the topological map.

Proposed approach
The locations the robot must identify are not only single points but areas surrounding these points.Therefore, we propose firstly, a data generation approach to characterise the areas; and secondly, the application of the INCA test.Let us assume that the robot has recorded the geometric information (see section 5) of k different places C 1 ,...,C k , all of them of the same type.There is only one y i measurement for each place C i (i = 1,...,k).However, the place we want to identify topologically is not just a spot but an area or neighbourhood of the recorded measurement y i .I no r d e rt od os o we generate n i − 1 new observations for each place i which will make up the observations corresponding to the place C i .These new observations are generated as y l i = y i + U(−u, u), l = 2,...,n 1 ,whereU(−u, u) stands for the uniform distribution with parameters −u and u (u > 0).Taking into account that the robot records two kinds of variables, metres and degrees, we consider two kinds of values for the parameter of the uniform distribution, let us call them, u M and u DEG , respectively.Once the data corresponding to the k classes -places-are generated, and given y 0 ,t h e information the robot has recorded when he arrives at a new place, the INCA test can be applied and consequently it is possible to decide whether or not y 0 corresponds to a new place.In case it is decided y 0 is not a new place, the conclusion is that y 0 is one of the places C 1 ,...,C k according to rule (6).Pearson distance has been used for the calculus of the interdistances δ(y, y ′ ) between y and y ′ .The parameter values used during the experimental phase were n i = 10, u M = 2a n d u DEG = 30.These values were chosen experimentaly as explained in (Jauregi et al., 2011).

Exploration behaviour
As stated earlier, the mapping process requires an exploration strategy to guide the robot for the terrain inspection.The strategy used in this proposal, the exploration behaviour is a coordination of the local navigation strategies and landmark identification subsystems the robot is endowed with.The proper combination of these behaviours, allow the safe exploration of the environment.
• Two local navigation strategies that are combined in a cooperative manner (weighted sum): balance the free space at both sides of the robot and follow a desired compass orientation (θ d ).
• Landmark identification subsystems that allow the robot to recognise corridors, left/right walls, halls, junctions and dead-ends.These landmarks are used to change robot's desired orientation.To show an example, Figure 2 shows the coordination of the modules for the case where a dead-end is recognised.Although the robot can be positioned at any starting location, initially and until the robot reaches a dead-end the map remains empty.Hence, the map construction starts after a dead-end has been identified.This gives the correct measurement of the length of the locations (nodes).Afterwards, the first corridor, the first crossing and the first hall are always identified as new nodes since there is not any instance of the same type already stored in the map.Once the map building process starts, each time the robot identifies a location -a corridor, a hall or a crossing -the geometric information of the identified location is recorded (the Y vector, Equation 7), and then the INCA test is applied to evaluate if they are locations already visited or new ones.When the location corresponds to a crossing, i.e. a junction, the orientations of the alternative ways the robot can choose are recorded.If the location has been visited before, one of the non-explored paths is randomly selected.In this way, the robot has the chance to cover all the environment.The robot finishes the exploration process when all the alternatives of the crossing nodes have been tried.

Simulated experiments
Experiments were carried out in the third floor of the Faculty of Computer Science.This environment is a semi-structured office-like common environment, with regular geometry as can be seen in Figure 3.The parameter selection obtained in the previous experimental phase was applied to the more general problem of identifying the whole set of environmental locations during an exploration phase performed in simulation.To this purpose the Stage simulation tool was used together with the Player robot server.In order to have a wider view of the mapping process, we let the robot move in the environment for a long time (more than 6500 seconds).On the left of the Figure 4 shows the robot's path starting from the dead-end at the bottom left corner and on the right the complete path followed during the exploration of the environment.Related to the number of nodes, the map converged to 38 nodes: 17 corridors, 8 halls and 13 crosses (Figure 5).Table 1 shows the number of nodes that have been traversed in the path followed by the robot.• Each of the 17 existing corridors were properly labelled as new places the first time the robot went along them; the same happened with the new traversed halls and crossing nodes.
• The nodes visited more than once by the robot in this long journey were also properly classified with their corresponding label; a total number of 47 corridors, 23 halls and 38 crossing nodes were visited in the robot path.
Figure 6 shows the distribution of the locations (plotted according to their central poses) and the evolution of the number of nodes over time.In spite of the degree of symmetry of the environment, the spatial configuration of the obtained locations does not show the same degree of symmetry.This is due to the fact that robot's and humans' perception differ from each other, and since the robot navigates according to a desired compass heading, depending on its orientation it makes the same physical place correspond to several nodes in the topological representation.

Experiments in the real robot/environment system
The simulation experiments showed that the proposed approach can solve the stated problem.To test the robustness of the approach experiments were extended to the real robot-environment system.The robot Ta r t a l o -a PeopleBot robot form MobileRobots equipped with a Canon VCC5 monocular PTZ vision system, a Sicl LMS laser, a TCM2 compass and several sonars and bumpers-has been used for the empirical evaluation of the mapping system developed.But instead of relying on raw odometry information, two odometry correction methods were tested to smooth the positioning error: • Laser stabilised odometry (by means of the LODO driver provided by Player).Laser data is used to correct the raw odometry estimate that once corrected exhibits a drift rate that is an order of magnitude less than the rate observed using pure odometry (Howard, 2005).
• Compass based odometry (CODO), where compass heading is used to correct raw odometric poses.
Experiments were performed in the third floor of the Faculty of Computer Sciences.On the left of Figure 7 shows the path completed by the robot (according to compass based odometry) and on the right shows the evolution of the number of nodes over time (s) for the different positioning methods.Clearly, the compass odometry obtained with the proposed approach offers the most precise position information.
On the other hand, Figure 8 shows the distribution of locations of the different nodes obtained from the run performed by the robot using CODO (Figure 7).As mentioned in the previous section, the difference in perception explains the fact that the number of nodes acquired by robot and humans differ from each other.And, as expected, the number of nodes is higher when the mapping is performed by the robot because of its perception of the environment and its positioning error.However, although the number of junction nodes identified is higher in the real run, this is mainly due to the people and furniture the robot comes across, which produce nodes that lead to any number of alternative paths.However, after an exploration of about an hour and a half (more than 500 meters), the robot was able to close the loop and to recognise several times the final location as the starting one, thus confirming the suitability of the proposed approach.As mentioned earlier, the experiments performed in simulation cannot be directly compared with the experiments with the real robot; the simulated sensor readings produce nodes with different characteristics specially when junction nodes are identified.Hence, the path produced by the exploration strategy in simulation differs from the path executed by the real robot.However, it is interesting to compare the evolution of the learning process using exact odometry with the evolving number of nodes when the odometry is corrected using the compass sensor.The map obtained simulating ideal odometry converged to 38 nodes and the map obtained by the robot after 4500 seconds contained 48 nodes (see Figure 9).

INCA for localisation
During the previous experiments the learning process was not stopped once the loop was closed.This methodological criterion was chosen to asses the appropriateness of the approach, and as a result, there was a slow increase in the number of nodes over time mainly due to odometry error.However, in practical terms the map learning process can be stopped and then use the learnt map for localisation purposes.
The experiments described in this section were carried out to measure the usefulness of the acquired map for localisation.In this occasion, instead of a non-stop learning process, a criterion was set so that the generation of the map would stop once a certain number of nodes was included.Once the procedure reaches this value, no more nodes are allowed to be created and hence, classification rule 6 (Section 3.2) gives the closest node according to the available data.In this manner, after the map is completed the robot continues moving according to its exploration strategy while the mentioned rule gives its localisation.It is worth to mention that classification rule is equivalent to the distance based classifier introduced in (Cuadras, 1992).Experiments were conducted both in simulation and in the real robot/environment system.

Simulated experiments
Once more the Stage simulator was used to simulate the robot and its environment.The criterion to stop the learning process was established in 38 nodes, which was the number of nodes the map converged to when simulating the mapping process with ideal odometry.Two experiments were carried out in the simulator: • Ideal odometry (GPS).Figure 10 shows the journey together with the spatial node configuration learnt whereas Figure 11 shows the results of the mapping and localisation process, and thus the identified set of nodes over time.The mapping process lasted about 1100 seconds and the fact that no error occurred during the localisation phase (seconds 1100-12000) confirmed that INCA is a valid approach also for localisation.Once the map has been generated, the trajectory of the robot is randomly decided at run-time.The resulting unpredictability means that instead of following a static route, the robot will randomly select the orientation at each junction.As a consequence, the robot does not produce repeatable sequences of nodes in the path, but the probability that it will revisit the whole set of nodes increases.
• Laser corrected odometry (LODO).A new experiment was conducted applying the default odometry error value defined in Player/Stage and applying the LODO driver to correct the odometry.Figure 12 shows the journey together with the spatial node configuration learnt whereas Figure 13 shows the results of the mapping and localisation process, and thus the identified set of nodes over time.
Table 2 shows the path patterns extracted from plot in Figure 13(a).Again, their associated node sequence, the time interval and the label used in the plot to represent each pattern is included.
The identified patterns concentrate in the first part of the plot (seconds 2000 to 12000).As times goes by the extracted paths are shorter due to localisation failures and the task becomes extremely difficult from second 12000 and there on.Although an odometry correction method is applied, the accumulating error severely affects the localisation of the robot.The type of error remaining after the LODO correction procedure produces a rotation on the robot's trajectory (see for instance Figure 12(a)) and thus, a misclassification of nodes with different orientations assigned.This effect was detected in the sequences labelled as c0 − c1 in Table 2. Chain P17, B34, P38 should have been P31, B34, P38.Node P31 with assigned orientation SN was misclassified as node P17 with assigned orientation WE.
Note that both procedures produced the same configuration of nodes, 17 corridors, 13 crosses and 8 halls, although their positional information differed due to odometry values.

Experiments in the real robot/environment system
A second set of experiments were carried out with the real robot.This time the node threshold was established in 44 nodes.
Figure 14 shows the robot's path and the obtained node distribution using laser corrected odometry values (LODO).
Figure 15 shows the robot's path and the obtained node distribution using compass corrected odometry values (CODO).And Figure 16 shows the mapping process, and the localisation over time for both, LODO and CODO.Looking at the robot's paths drawn in Figures 14(a) and 15(a), it can be stated that: • When using the LODO correction method, the error accumulates more slowly but the error occurs in x, y and θ coordinates.According to LODO odometry, the path rotates over time.While the error is maintained within a certain range the rotation angle is small and the localisation process works correctly.Afterwards, and due to the high dependency the approach has in nominal orientations the system starts to fail and no correspondences are found.
• When using the CODO correction method, only x and y values are affected.θ value is obtained from an absolute reference value and hence, the error is not accumulative.This produces a diagonal shift on the drawn path over time.This shift led to the misclassification of the lower corridors as if they were the upper ones.Oddly, the upper corridors were always well identified.An intuitive way of coping with this problem is to modify the positional values of the nodes each time they are revisited.Instead of keeping the acquired node information unaltered, during the localisation phase the contents of the nodes can be updated when a positive match occurs.A last experiment was performed with the robot using CODO to correct the odometry to measure the effect of updating the contents of the node.This choice was made because of the lack of accumulated error in orientation values.Figure 17 shows the acquired map after reaching the maximum number of nodes (established in 39 nodes).The different scales of these two maps reflect the magnitude of the accumulated error in the x and y coordinates over time.Figure 18 shows the evolution of the localisation system over time.Table 3 shows the path patterns extracted from plot in Figure 18.Again, their associated node sequence, the time interval and the label used in the plot to represent each pattern is included.The localisation process last until the robot run out of batteries and only one location was misclassified.As mentioned in Section 6, some parameters need to be adjusted for INCA to function properly.The value u M deeply influences the acceptable deviations from nodes' (x, y) locations.A small u M value produces failures on loop-closings because of the odometry error.On the contrary, setting u M to a high value produces that close areas with the same signatures remain indistinguishable.This effect was detected once during the last localisation experiment carried out.Node H30 was wrongly identified as node H32 and thus, the sequence H32, P31, H32 of time stamp 1700 should have been H30, P31, H32.Notice that nodes H30 and H32 are separated by a short corridor labelled as P31.Summarising, upgrading node information made the developed system valuable for localisation in spite of odometry error.

Conclusions
In this chapter a new approach for incremental topological map construction was presented.
A statistical test called INCA was used to this end, combined with a data sampling approach which decided if a topological node found by the robot had already been visited by it.
The method was integrated in a behaviour-based control architecture and tested also for localisation purposes.
To measure the adequateness of the approach the map acquisition was performed non-stop until the robot run out of batteries.Afterwards, the experiments were repeated but once the number of nodes in the map reached a given threshold, the learning step was finished and the acquired map was used for localisation purposes.However, INCA also suffers from odometry error.Of the two error correction methods used in the present work, LODO and CODO, compass corrected odometry was better suited for the developed navigation approach.A last experiment was carried out using CODO and modifying the contents of the acquired nodes each time a location was revisited.The type of error remaining after CODO facilitated the upgrade of the nodes' locations and improved drastically the localisation process.
The experiments conducted confirmed INCA based mapping and localisation as a valid approach and that BB systems can be provided with automatic map acquisition mechanisms.
To improve the efficiency of the automatic map acquisition system, when looking for correspondences the use of their associated probability value should be studied.
The criteria for stopping the learning process, i.e. the maximum number of nodes should be revised.Given that it is not possible to know a priori the number of nodes, the map should be closed when no more alternative ways remain unvisited in the junction nodes.Some aspects of the implementation of INCA should be improved and more experiments should be conducted in a systematic manner in order to better identify the advantages and drawbacks of the test.New local navigation strategies and several landmark identification modules need to be incorporated to increase the granularity of the environment in order to reach more interesting goals than halls and corridors, such as offices and laboratories.Adding more topological nodes would allow the generalisation of the experiments to different environments, and the comparison with other approaches.The first step should be to integrate the door identification and door crossing modules already developed, and to enrich the behaviour associated to several nodes with door crossing abilities, and a wall following behaviour.These two modules would help to cover the perimeter of small rooms and improve the exploration strategy.Nothing has been said about planning.Up to now, the proposed modifications were tested using an exploration strategy.The overall map should be used for commanding the robot to fulfil a concrete goal and thus, to reach concrete locations.

Fig. 5 .
Fig. 5. Evolving number of nodesAs it can be seen, all the nodes are correctly classified:

Fig. 8 .Fig. 9 .
Fig. 8. Location distribution over the map.Corridors: +; Halls: x; Crossings: * Fig.10.Stage (GPS): robot's path and the obtained map localisation starts to degrade.It is not possible to extract valid path patterns from the plots in Figure16.Both the LODO and CODO methods are insufficient for long term localisation.Looking at the robot's paths drawn in Figures14(a) and 15(a), it can be stated that: Fig. 11.Stage (GPS): node identification over time Fig. 12. Stage (LODO): robot's path and the obtained map