Mobile Robot Feature-Based SLAM Behavior Learning, and Navigation in Complex Spaces Mobile Robot Feature-Based SLAM Behavior Learning, and Navigation in Complex Spaces

Learning mobile robot space and navigation behavior, are essential requirements for impro- ved navigation, in addition to gain much understanding about the navigation maps. This chapter presents mobile robots feature-based SLAM behavior learning, and navigation in complex spaces. Mobile intelligence has been based on blending a number of functionaries related to navigation, including learning SLAM map main features. To achieve this, the mobile system was built on diverse levels of intelligence, this includes principle component analysis (PCA), neuro-fuzzy (NF) learning system as a classifier, and fuzzy rule based deci- sionsystem(FRD).


Study background
Interactive mobile robotics systems have been introduced by researcher's worldwide. The main focus of such research directions, are how to let a mobile robotic system to navigate in an unstructured environment, while learning its features. To meet these objectives, mobile robots platforms are to be equipped with AI tools. In particular to achieve this, Janglová in [1], describes an approach for solving the motion-planning problem in mobile robot control using neural networks-based technique. The proposed system consists of a head artificial neural network, which was used to determine the free space using ultrasound range finder data. In terms of maps building with visual mobile robot capabilities, a remote controlled vision guided mobile robot system was introduced by Raymond et al. [2]. The drive of the work, was to describe exploratory research on designing remote controlled emergency stop and vision systems for an autonomous mobile robot. Camera modeling and distortion calibration for mobile robot vision was also introduced by Gang et al. [3]. In their paper they presented an essential camera calibration technique for mobile robot, which is based on PIONEER II experiment platform. Bonin-Font et al. [4], presented a map-based navigation and mapless navigation, as they subdivided in metric map-based navigation and topological map based navigation. Abdul et al. [5] have introduced a hybrid approach for vision based self-localization of autonomous mobile robots. They presented a hybrid approach towards self-localization of tiny autonomous mobile robots in a known but highly dynamic environment. Kalman filter was used for tracking of the globally estimated position. In [8], Filliata and Meyer, presented a 3-level hierarchy of localization strategies, and a direct position inference, single-hypothesis tracking, and multiple-hypothesis tracking.
They stated the advantages and drawbacks of these strategies. In [6], Andreja et al. have presented a fuzzy ART neural architecture for robot map learning and navigation. Araujo proposed methods that are integrated into a navigation architecture. Further, intelligence based navigation was further discussed by [9][10][11]. In [12], Vlassis et al., motioned, "method for building robot maps by using a Kohonen's self-organizing artificial neural network, and describe how path planning can be subsequently performed on such a map". The built ANN related SOM is shown in Figure 1. Stereo vision-based autonomous mobile robot was also given by Changhan et al. [13]. In their research, they proposed a technique to give more autonomy to a mobile robot by providing vision sensors. In [14], Thrun reported an approach that integrates two paradigms: grid-based and topological. The intelligent control of the mobile robot, was based on image processing was also given by Nima et al. [15]. In terms of leaning intelligent navigation, intelligent robot control using an adaptive critic with a task control center and dynamic database was also introduced by Hall et al. [16]. This involves development and simulation of a real time controller for an intelligent, vision guided robot. Such models are also necessary for sizing the actuators, tuning the controller, and achieving superior performance. A novel feature of the proposed approach is that the method is applicable to both robot arm manipulators and robot bases such as wheeled mobile robots. Stereo vision based self-localization of autonomous mobile robots was furthermore introduced by Abdul et al. [17]. In reference to the work presented, a vision based self-localization of tiny autonomous mobile robots in a known but highly dynamic environment. A learning mobile robots was shown by Hall et al. [18]. They presented a discussion of recent technical advances in learning for intelligent mobile robots. Novel application of a laser range finder with vision system for wheeled mobile robot was presented by Chun et al. [19], where their research presents a trajectory planning strategy of a wheeled mobile robot in an obstructed environment. A vision-based intelligent path following control of a four-wheel differentially driven skid steer mobile robot was given by Nazari and Naraghi [20]. In this work, a Fuzzy Logic Controller (FLC) for path following of a four-wheel differentially skid steer mobile robot is presented. Color learning and illumination invariance on mobile robots survey was given by Mohan et al. [21]. A major challenge to the widespread deployment of mobile robots is the ability to function autonomously. Two arms and two legs like an ape, was aimed to study a variety of vision-based behaviors. In addition, robot based on the remote-brained approach was given by Masayuki et al. [22]. Localization algorithm of mobile robot based on single vision and laser radar have been presented by Xiaoning [23]. In order to increase the localization precision of mobile robot, a self-localization algorithm based on odometry, single vision and laser radar is proposed. The data provided by odometry, single vision, and laser radar were fused together by means of an Extended Kalman filter (EKF) technique. Mobile robot selflocalization in complex indoor environments using monocular vision and 3D model, was moreover presented by Andreja et al. [24], they considered the problem of mobile robot pose estimation using only visual information from a single camera and odometry readings. Human observation based mobile robot navigation in intelligent space was also given by Mobile Robot Feature-Based SLAM Behavior Learning, and Navigation in Complex Spaces http://dx.doi.org/10.5772/intechopen.81195 Takeshi and Hashimoto [25], they investigated a mobile robot navigation system which can localize the mobile robot correctly and navigate based on observation of human walking. Similar work was also given by Manoj and Ernest [26].

Research objectives
Given the previous background, this current presented work is focusing on learning navigation maps with intelligent capabilities. The system is based on PCA representation of large navigation maps, Neuro-fuzzy classifier, and a fuzzy decision based system. For bulky amount of visual and non-visual mobile data measurements (odometry, and the observations), the approach followed, is to reduce the mobile robot observation dimensionality using principle component analysis (PCA), thus to generate a reduced representation of the navigation map (SLAM), refer to Figure 2 for details. A learning system was used to learn navigation maps details, hence to classify the representations, (in terms of observation features). The learned system was employed for navigating maps, and other mobile robot routing applications.

Simultaneous localization and mapping (SLAM)
SLAM, is a routine that estimates a pose of a mobile robot, while mapping the environment at the same time. SLAM is computationally intensive, since maps represent localization, hence accurate pose estimate is needed for mapping. For creating navigation intelligence capabilities during path planning, this is achieved by learning spaces, once robot was in motion. This is based on learning path and navigation behavior. There are four important stages for building SLAM, this localization, map building and updates, searching for optimal path and planning. Optimal path search is done by A * , occupancy grids mapping. Given a mobile robot control inputs U as set of controls, U 1:k ¼ u 1 ; u 2 ; …; u k ð Þ , with mobile parameters measurements (mobile observations) as Z 1:k ¼ z 1 ; z 2 ; …; z k ð Þ. For odometry, refer to Figure 3.
In reference to Figure 3, the mobile robot starts to move in the space, with a target to research into a predefined final position. While the robot in movement, a SLAM is built, and measurements are recorded from the mobile observations, as Z 1:k ¼ z 1 ; z 2 ; …; z k ð Þ . All recorded observations are considered as inputs to the PAC, hence they are tabulated into predefined format, for later processing using the PCA algorithm.

Monte-Carlo (MC) localization
Monte-Carlo localization, is a well-known technique in literature, and still being used for localization parameters estimation. In sampling-based methods, one represents the density by a set of η random samples of particles. The goal is then to recursively compute at each time step k set of samples of Ζ k that is drawn from density p x k : Z k À Á . A particularly elegant algorithm to accomplish this has recently been suggested independently by various authors. In analogy with the formal filtering problem, the algorithm proceeds in two phases. In the first phase we start from a set of particles S kÀ1 ð Þ computed in the previous iteration, and apply the motion model to each particle S i Δs r þ Δs l 2 sin θ þ Δs r À Δs l 2b In Eq. (2), we describe a blended density approximation to p x k ⋮Z kÀ1 ð Þ . The environment, or the mobile robot space is highly redundant, once used to describe maps.

Principle component analysis (PCA)
3.1. PCA based statistically and dimensionality reduction While in navigation, each traveled path, region, zone, etc. are characterized by diverse behavior (i.e. features), Figure 4. If x is matrix of representation for distances and measurements at each location during navigation, a covariance matrix for the set of maps is considered highly non-diagonal. Mathematically, the previous notation is: σ X ij represents covariance between distances for location (w) and location (h). There is a relation between covariance coefficients and correlation coefficients. The covariance matrix r is expressed as: Since principal components are calculated linearly, let Ρ be a transformation matrix: In fact, P ¼ P À1 , since the P's columns are orthonormal to each other, P T Â P ¼ I. Now, the question is, what is the value of Ρ given the condition that S y must be a diagonal matrix, i.e.
Choosing Ρ as being a matrix containing eigenvectors of S x : where Λ is a diagonal matrix containing eigenvalues of S x . In this regard, and S y is a diagonal matrix containing eigenvalues of S x . Since the diagonal elements of S y are the variance of components of training patterns in the (in navigation) space, the eigenvalues of S x are those variances.
This is further expanded into: Finally, covariance matrix r is further expressed by: The p, is a symmetric (around the main diagonal), and a R nÂn matrix. The diagonal of, represents the covariance between the matrix and it self. To recognize normalized dataset for patterns, the covariance r of Eq. (6) plays an important role. This can be achieved by getting the eigenvectors of covariance r matrix of Eq. (6). Given this background, therefore we need to compute eigenvalues and eigenvectors using numerical approach. For a R kÂk matrix r, if we search for a row vector R kÂ1 X that could be multiplied by r and get the same vector X multiplied by eigenvalues λ and eigenvector. Matrix r transforms the vector X to scale positions by an amount equal to λ, gives a transformation matrix: In reference to Eq. (7), and for a R kÂk matrix r, we shall compute for (k) eigenvalues. The (k) eigenvalue (λ), are hence used for scaling every (k) eigenvectors. Individual eigenvalues (λ), are also found by solving the below defined identity as expressed by Eq. (8): where I is an identity matrix. We shall compute for the determinant of Eq. (8), i.e., | r À Iλ ð Þ| ¼ 0 , while solving for the eigenvalues, λ. While substituting for the (λ) in Eq. (8), and solving for (X), this will result in finding the eigenvector (X), once λ are satisfying the following: Following Eq. (5) to Eq. (9), and computing for eigenvalues, hence reordering the eigenvalues according to a descending order, this represents a major step in building a PAC based recognition system for the mobile robot dataset generated by the navigation system.

4.
Learning system: learning mobile robot navigation maps 4.1. Feature-based SLAM learning While stating in Section 3 steps for PAC computations, in this section we shall make a focus on building a learning system for the mobile navigation. In reference to Figure 4, the mobile robot will be generating navigation dataset. Dataset is generated at different locations, during the mobile robot motion. Navigation dataset involves sensory measurements, odometry, and locality information (i.e. zones, areas, segments …), refer to Figure 4. An important part of the dataset, is also the part generated by the SLAM, as already described in Section 2. It is not achievable to encompass all dataset, as this is massive dataset. However, we shall rely on features of the mobile dataset, i.e. the PCA based features of navigation dataset, (the SLAM features). Robot navigation spaces. A representation of navigation segments, zones, areas, ….. are designated as (S 1 , S 2 , S 3 , …. S n , Z 1 , Z 2 , Z 3 , …. Z m , A 1 , A 2 , A 3 , …. A n ). For each of such different segments, zones, and areas of navigation, there will be features associated with it. Features during navigation will be used for further processing. This includes a five layers feature learning NF architecture (classifier), and a fuzzy decision system ( Figure 5).

Neuro-fuzzy features classifier (NFC) architecture
For the case of fuzzy decision making system, it is essential to incorporate a priori knowledge for the mobile movements in the space. In this respect, many conventional approaches rely on depth physical knowledge describing the system. An issue with fuzzy decision is that knowledge are mathematically impervious. This results in and there is no formal mathematical representation of the system's behavior. This prevents the application of conventional empirical modeling techniques to fuzzy systems, making knowledge validation and comparison hard to perform. Creating a benchmark measure of performance by a minimum distance classifier.
Decision rule adopted by such system, is to assign Χ to a class whose mean feature vector is closest (Euclidean Distance) to Χ. A decision is given by: Rule-based structure of fuzzy knowledge allows for integrating heuristic knowledge with information obtained from process measurements. The global operation of a system is divided into several local operating conditions. Within each region R i , a representation: In reference to Figure 6, for Eq. (11),ŷ i is the computed fuzzy output, u is the system input, in the i th operating region, (h) is the number of fuzzy operating regions. In addition, both (i) and (o) do represent the time lags in the input and the output, respectively, μ i is the membership function. Finally, χ ij and ψ ij are the few parameters. The membership function for inputs, is constructed in a number of ways. The fuzzy knowledge system (Neuro-fuzzy) illustrated in Figure 6, is an exceptional architecture of network topology. This architecture combines advantages of fuzzy reasoning and the classical neural networks. In its broader sense, the architecture rule r i ð Þ, demonstrates a relation between the input map feature space, and named classes. This is further expressed as follows: Rule r i ¼)if χ si and χ sj is A ij …… and χ sn is A in , ¼)class name is C k (12) In Eq. (12), the Gaussian membership function is defined as: For each i th node in this layer is a square node with a node function.
where ν sj is the input to i th node given as the linguistic label (small, large, .. etc.) associated with this node function, n is the number of features. The membership is a bell-shape type, and ranged between (1 and 0).
As values of these parameters change, membership shaped functions vary accordingly, thus exhibiting various forms of membership functions on the linguistic label A i . For every node in Mobile Robot Feature-Based SLAM Behavior Learning, and Navigation in Complex Spaces http://dx.doi.org/10.5772/intechopen.81195 this layer, there is a circle node which multiplies incoming signals and sends their product out. Stages of the adopted Neuro-fuzzy classifier, is shown in Figure 6.
The output node computes the system output as summation of incoming signals, i.e.: More precisely, the class label for the s th sample is obtained by the maximum O sk f g value as follows: The consequent parameters thus identified are optimal (in the consequent parameter space) under the condition that the premise parameters are fixed. The knowledge system's weights are conventionally identified by performing maximum likelihood estimation. Given a training data set Z n ¼ y k ð Þ; x k ð Þ ð Þ n k¼l , the task is to find a weight vector which minimizes the following cost function: As the knowledge based system,ŷ x k ð Þ; w ð Þis much interrelated with respect to the weights, linear optimization techniques cannot be applied. The adopted Neuro-fuzzy system has number of inputs (n) (representing the features) and (m) outputs (representing classes of features). In reference to Figure 7, there are dataset about the mobile area and zone of navigation. This is due to the large amount of information coming from the visual system. Here comes the potential of employing the PCA to reduce the dimensionality of the input spaces.

Fuzzy decision based system
The last stage of the mobile robot maps learning system, is the fuzzy decision system. Within this stage, the hard decisions are undertaken by the mobile robot system during a course of navigation. A fuzzy system is constructed typically from the following rules: The rules (if) parts, are identical to an ordinary fuzzy IF-THEN rules. Given an fuzzy inputs u ¼ u 1 ; u 2 ; …:; …:u n ð Þ T the outputŷ k ð Þ of a fuzzy system is computed as the weighted average of the y l s , that is:ŷ weights w i are computed as A dynamic TSK fuzzy system is constructed from the following rules: where A P n À Á and B P À Á are fuzzy sets, a p l À Á and b P À Á are constants, p ¼ 1; 2; …:; n; u k ð Þ ð Þ are the inputs to the system, and u k ð Þ ¼ x 1 k ð Þ, ð x 2 k ð Þ, …, x nþ1 k ð ÞÞ is the fuzzy system knowledge vector. Typically, the output of the fuzzy decision based system is computed as: where x p k 1 ð Þ is given in Eq. (23) and: The mobile robot training datasets, do consist of four inputs. There are also four output parameters. This is summarized in Tables 1 and 2.

The experimentation
Within this section, we shall discuss few experimentations results. In order to implement the proposed navigation methodology, the (914 PC BOT) has been reengineered in such a way to allow more control and observations to be communicated through. The main high-level coding was achieved using Matlab. Matlab toolboxes have been integrated in such a way to allow PCA computation, Neuro-fuzzy learning capabilities, and fuzzy decision making routines. This is further indicated to in Figure 8. Delicate mobile action. Table 2 Neuro-fuzzy classifier, input-outputs representation.

Behaviour knowledge building
For building the mobile robot behaviour at localities, the mobile system was maneuvered over a space in the laboratory for several trails. Typical physical readings from the robot odometry, and sensory observations were recorded. Typical readings are shown in Figure 9. Different mobile behaviors (for learning) were also recorded, beside the odometry, and sensory observations.

Navigation intelligence
Building the mobile robot navigation intelligence is the next phase. This phase requires blinding all the previous inputs (readings, situations, and behaviors). This will help to take the most appropriate actions. The designated learning and decision making architecture is a Neuro-fuzzy. Typical information, that constitute the Neuro-fuzzy classifier inputs are: The classifier inputs: ZONES of navigation. This represents typical zones where the mobile robot is located.
AREAS of navigation. This represents typical areas where the mobile robot is moving.
SEGMENT of navigation. This represents typical segment where the mobile robot is moving.
OBSERVATIONS. This represents typical Observations, the mobile is experiencing at a locality.
The classifier outputs:  With such inputs and system outputs, a good degree of a mixture of mobile behaviors can therefore be created. This is further listed below: The implementation system hierarchy, is shown in Figure 8. An adequate of mobile intelligence was created for a mobile navigation within hazardous environments. Inputs to the Neuro-fuzzy decision based system are coming from the PCA network.

Fuzzy if-then decision system
In addition, the four system inputs-outputs, do represent the system outputs the mobile robot should undertake also at any particular situation. While relying on the fuzzy (if-then) statements, we are able to make further final decision to be undertaken by the mobile robot. Within this sense, we are able to build an (if then statement), as follows: Typical Fuzzy Rules are: If (Input_#1 is ….. and Input_#2 is ….) then (Output_#1 is …. and Output_2 is ….) .. ...
If (Mobile is in zone1, ….. and in segment2 and, Mobile special task) then (set an ALAM and GAZE).
If (Mobile is in zone3 and in area5 and segment 3, and Image Capture), … then (do image analyze).
If (Mobile in zone41 and in area2 and, … and Special task, then (move back).
Given the defined navigation strategy, the mobile robot is able to undertake much detailed navigation and behaviors tasks.

Conclusions
Learning mobile robot navigation behavior, is an essential feature, for improved navigation. In addition, it helps to gain further understanding about the spaces of navigation. In this study, navigation maps details have been created while relying on dataset collected by SLAM routines. Due to enormous sensory and environmental data observation to be analyzed during navigation, we have reduced the dimensionally and size of environmental and sensory observation information with PCA technique. Reduction of environment information (i.e. getting features), are hence used as learning inputs to a neuro-fuzzy classifier. Examples of Neurofuzzy feature inputs are, navigation locations, areas, …, and behaviors related to particular localities. The final stage of mobile robot map building is a fuzzy decision based system. Within this stage, mobile robot navigation decisions are undertaken. With multi-levels of mobile robot sensory and navigation observation dataset, we have designed a learning system for mobile robot maps learning with navigating capabilities.