Abstract
Extended Kalman filter is well-known as a popular solution to the simultaneous localization and mapping problem for mobile robot platforms or vehicles. In this article, the development of a neuro-fuzzy-based adaptive extended Kalman filter technique is presented. The objective is to estimate the proper values of the R matrix at each step. We design an adaptive neuro-fuzzy extended Kalman filter to minimize the difference between the actual and theoretical covariance matrices of the innovation consequence. The parameters of the adaptive neuro-fuzzy extended Kalman filter is then trained offline using a particle swarm optimization technique. With this approach, the advantages of high-dimensional search space can be exploited and more effective training can be achieved. In the experiments, the mobile robot navigation with a number of landmarks under two benchmark situations is evaluated. The results have demonstrated that the proposed adaptive neuro-fuzzy extended Kalman filter technique provides the improvement in both performance efficiency and computational cost.
Keywords
Introduction
The problem of simultaneous localization and mapping (SLAM) has been investigated for many decades, and it is still a challenging issue for mobile robotics research till now. An SLAM-based robot is to construct a mobile platform which is able to localize its position in the environment and build the environment map at the same time. 1 This idea has attracted many attentions to the researchers and developers of autonomous mobile robots.
In this work, we divide the SLAM problems into two categories: relative SLAM and absolute SLAM. In the relative SLAM, the robot utilizes the odometry data provided by the built-in encoders of the robot wheels to localize itself and construct the environment map. This approach is also known as dead reckoning, 2 and its main disadvantage is the inevitable error accumulation over time, which generally leads significant degradation of localization and mapping results. On the other hand, the absolute SLAM uses the robot’s external sensors to obtain the environment measurements as the inputs to the localization and mapping algorithms. It is also known as beacon or landmark-based SLAM. 3 The major drawback of this approach is that its accuracy is significantly influenced by the observed features and the reliability of the sensor measurements. Inconsistent feature observations or noisy sensor readings can both lead to wrong inferences of the SLAM system.
To cope with these problems, this work investigates the integration of both the absolute and relative methods based on the extended Kalman filter (EKF). 4,5 The EKF is well-known as a method for multi-sensor fusion. It collaboratively combines the information from multiple sensors and provides more reliable and accurate measurement outputs. In this article, the data obtained from the odometer and the range-finder are fused through the EKF.
In the literature, some previous works using EKF for robot localization and mapping have been proposed. 6,7,8 However, designing effective EKF requires the priori knowledge of the process and measurement covariance matrix Q andR, respectively. In most application scenarios, these parameters are unknown and usually set as fixed values during execution. This fixed value setting usually results in poor estimations of the process and measurement noise and consequently leads to a significant degradation of EKF performance. The classical full EKF-based SLAM approach has another serious issue: The computational complexity becomes very high if the number of features is significant. Under this circumstance, both the total robot state vectors and covariance matrices become very large and difficult to handle. One effective solution to deal with this issue is to employ adaptive algorithms for EKF SLAM. 9,10,11,12,13 Specifically, the studies of the literature 14,15 have shown that the approach of artificial intelligence-assisted EKF for the SLAM problems is far more superior than the conventional approaches (e.g. unscented filter, square root unscented filter) and others (e.g. particle filter). Their conclusions and results have also greatly motivated this work for a further investigation.
In this article, SLAM with neuro-fuzzy-assisted EKF technique is proposed. In particular, adaptive neuro-fuzzy is employed to derive the matrix R while maintaining the known and fixed Q. 16 A stochastic and random search-based metaheuristic optimization procedure, particle swarm optimization (PSO), 17,18 is employed to learn the free parameters of the neuro-fuzzy model. The main contribution of this work is the design and implementation of an adaptive neuro-fuzzy EKF (ANFEKF) technique for SLAM systems. The ANFEKF algorithm improves the SLAM performance in larger scale environments where the conventional EKF approaches cannot provide satisfactory results.
There are many related studies on this topic available in the literature, and most of them are published recently or still ongoing project developments. For example, Ivanov et al. present a mobile robot path planning technique with continuous laser scanning. A technical vision system using the dynamic triangulation is adopted for 3-D coordinate measurement. 19 So here comes the question: Why need another study on the topic of adaptive neuro-fuzzy-based mobile robot localization techniques? The reason of the present work is to offer an intuitive solution to the SLAM problem in terms of three layers. First, our method is mainly based on the optimal state estimation approach, the EKF. 12,20,21 Second, the artificial intelligence approach, or to be more specifically, adaptive neuro-fuzzy, 22,23 is applied to optimize the basic EKF performance. Finally, the heuristic search approach, 24 PSO, is employed to assist the adaptive neuro-fuzzy technique by improving the learning process. Although a few work have addressed some of the above issues, none of them offers all three layers of solutions presented in this article.
Related work
Multi-sensor fusion is a term referring to the synergistic combination of sensory data from multiple sensors to provide more reliable and accurate information. 25 In most applications, the sensor noise is inevitable and might cause incorrect system response and state estimation. Thus, multi-sensor fusion techniques are employed to integrate the sensory readings and result in more reliable information. In the past decades, Kalman filter is one of the most important methods for sensor fusion.
In principle, Kalman filter performs as a prediction–correction operator. Particularly, the state estimation is carried out by two main steps, the prediction and correction steps. The first (prediction) step is also known as an update step, a priori state estimation is calculated. In the second (correction) step, the measurements from sensor devices are taken into account to compute the posterior state and used for the current state estimation. While the normal Kalman filter is employed intentionally to handle linear problems, the EKF adopted in our approach is designed to deal with nonlinear models.
Artificial intelligence is one of the common approaches employed to optimize the Kalman filter, specifically the model of noise covariance. Recently, the use of fuzzy inference systems has increased significantly. The applications vary from consumer products such as washing machines, cameras, camcorders to industrial process control such as medical instrumentation and decision support systems. Generally, a fuzzy inference system is designed to map the input space to the output space, and the primary mechanism is using a list of if–then statements called rules. The rules work with the variables described by words rather than numbers.
In practical applications, fuzzy inference systems are often employed to build the fuzzy controller system. There are two typical designs for fuzzy controllers, Mamdani type and Sugeno type. While Mamdani type is popular due to its simple design and less experience requirement, the Sugeno type is preferred by experts because it is able to deal with more complex situations and cost less, even with the requirement of more experience in controller design. The design of fuzzy controller system can be divided into three main steps:
Fuzzification: In this step, the determination of discourse and fuziliers is accomplished.
Inference mechanism: This step includes two rule base and inference engine, which mutually interacts with each other. In other words, it is simply the process of documenting the rule set via a set of if–then expressions.
Defuzzification: This is a process to produce quantifiable results in a crisp inference system, which will then be implemented for controlling the system.
Neural networks belong to a class of artificial intelligence and are often used to solve classification or pattern recognition problem that cannot be handled by simple or straightforward algorithmic methods. Generally, neural network structures are inspired by biological neuron systems. The neuron networks can be trained to perform a particular function by adjusting the value of connection (weighting) between elements. The system that has ability of self-adjusting its structure according to the given information flowing through the network is called an adaptive system, and the self-adjusting ability is called learning.
The neural network is constructed from a number of layers, which are arranged by the interconnected neurons. Primarily, one typical structure often includes three layers. The first layer is called the input layer and the last layer is the output layer. The layer lies between the input and output layers is called a “hidden layer”. Once a network is well trained, it can perform complex functions such as pattern recognition and identification. Additionally, the learning ability of neural networks can integrate with other approaches to make the system adaptive and robust. In this work, the combination of fuzzy inference system and neural network is proposed.
As the advantages of fuzzy inference systems to deal with linguistic expression and neural networks with the self-learning ability, Jang combined these two techniques and proposed an adaptive neuro-fuzzy inference system (ANFIS). 26 The basic idea of the adaptive neural fuzzy inference system is to use a fuzzy system to represent the knowledge in an interpretable manner and has the learning ability derived from a neural network that can adjust the membership function (MF) parameters and linguistic rules directly from data to enhance the system performance. Different from the typical three-layered neural network, a typical ANFIS architecture is the model of Takagi Sugeno fuzzy inference system 27 which includes five layers.
For the ANFIS with one input x and one output f, there are only two rules used in the Takagi Sugeno model as follows:
Rule 1: If
Rule 2: If
where
Approach
The proposed SLAM technique is the neuro-fuzzy-assisted EKF and adopted for wheeled robots. We first briefly introduce the robot kinematics and EKF-based SLAM, followed by our approach with neuro-fuzzy-assisted EKF for the SLAM problem.
Robot kinematics modeling and EKF
The wheeled mobile platform is a well-known class of vehicles and typical ground robots. A commonly used model for four-wheeled car-like robots can be represented by
where

The localization of a mobile robot based on observed landmark features.
A mobile robot uses exteroceptive sensors to perceive the features of the real-world environment. In this work, the sonars are adopted as the exteroceptive sensors for the robot to provide the measurements of the range
where the noise variances
Kalman filter was developed in 1960 to deal with the so-called linear-quadratic problem using a recursive solution. 28 It is a problem for the estimation of the current state of a linear dynamic system (or state of process) perturbed by white noise. To predict (or estimate) the current state of the process, Kalman filter works in a recursive way by employing the current measurement and the priori state of the process. Since Kalman filter works recursively until resulting in an optimal state estimation, it is considered as a very powerful tool in minimizing the state estimation error.
EKF is an extended version of Kalman filter which aims to deal with nonlinear models. The main difference between EKF and Kalman filter is the additional linearization model in the prediction step and the calculation of partial derivatives of the state variables. The process and measurement noises are assumed to be zero mean Gaussian distributions with independent error covariance in EKF. The disadvantage is that if the estimate process and measurement noises are not precisely modeled, the filter would diverge and lead to the system inconsistency. Practically, the well-defined models of error covariance are seldom achieved and the values are often manually set. It may take a lot of time with trial and error to derive the expected model. Therefore, the artificial intelligence approach is employed to assist EKF to model the system, especially for the noise covariance.
The general nonlinear system and measurement form can be described by
where
There are two main steps in the EKF algorithm: time update (prediction) and measurement update (correction):
Prediction update: Calculate the projections of the state and the error covariance estimates from the sampling instants k to k + 1 given by
where
and
Measurement update: When the measurement
where H is the linearization matrix (or Jacobian matrix) of the measurement and calculated by
Localization with EKF
In the conventional localization framework, it is assumed that the environment map is given, that is, the environment features are known to the robot in advance. The EKF estimates the robot position by integrating the information acquired from odometers, map, and exteroceptive sensors such as rangefinder or sonar. The algorithm usually consists of several steps: pose prediction, observation, measurement prediction, matching, and estimation.
Pose prediction: The robot pose at time k + 1 is predicted based on the previous position and orientation (at time k) and its movement with the control input
where
Actual observation: In the second step, the robot obtains the sensor measurements
Observation prediction: From the predicted robot pose
The state error between the actual and predicted measurements is
Matching: In the matching procedure, an assignment is processed from measurements to the landmarks and then stored in the map.
Estimation: The estimation of the state is given by
where
Neuro-fuzzy-assisted EKF for localization
Localization with ANFIS
There are several factors affecting the estimation of Kalman filter, and among them the noise covariance is the most important to be considered. These process and measurement noise covariance matrices are denoted by Q and R, respectively. Their initial values greatly affect the overall performance of the filter because they contribute to the Kalman gain directly. R and Q simply provide the system with more trust on the prediction or measurement equations.
Considering a larger Q is equivalent to considering a larger uncertainty in the state equations. That is, it trusts the equations less, which effectively indicates that the filter should correct more with the measurement update. Similarly, considering a larger R is equivalent to considering a larger uncertainty in the measurement. This is in terms equivalent to trusting the measurement less. Thus, the filter should correct less with the measurement update.
Figure 2 illustrates the performance of the filter for various R values. While the measurement noise covariance R is increased from 0.5 to 0.9, the measurement is trusted less so that the filter is affected less by the noisy measurement. Consequently, the filter converges to the actual position slower. If R is decreased from 0.5 to 0.1, the filter trusts the measurement more. It converges to the actual position faster but oscillates more frequently due to the noise. From the figure, it is easy to draw the conclusion that the performance of EKF highly depends on the predefined model. To derive the well-defined model for Q and R, trial and error is a common way, but it is often time-consuming and may not yet be optimal. Therefore, the artificial intelligence approaches are preferred to quickly find the optimal model for Q and R.

The EKF performance for various R values (from top to bottom): (a)
To obtain a well-defined model for Q and R, a common approach is by trial and error. However, it is time-consuming and the result might not be the optimal model. This work proposes an innovation adaptive estimation (IAE) scheme for the EKF integrated with ANFIS to adjust the value of R (with Q fixed). ANFIS is able to identify the optimal model for R quickly and prevent the EKF from diverging.
Localization based on ANFIS EKF
Let
where
In principle, the purpose of the IAE approach can be considered as the minimization of mismatches between
To reduce DOM, the values of If If If
The ANFIS architecture
The ANFIS model in this article is designed as single input and single output. The input to ANFIS is
where
The ANFIS model used to adjust

The five-layered network of the proposed ANFIS structure. ANFIS: adaptive neuro-fuzzy inference system.
Layer 1: The input layer. In the input layer, the node directly passes the input value to the following layer. The input–output relation is given by
Layer 2: The input MF layer. In this layer, the input variables are fuzzified by employing five MFs, large negative, negative, zero, positive, and large positive. The output of i-th MF is given by
where
Layer 3: The rule layer. The nodes in this layer are rule nodes. They perform a fuzzy AND operation (or product inference) for the calculation of the firing strength by
Layer 4: The normalization layer. The node in this layer performs the normalization of firing strength from layer 3 and is given by
Layer 5: The output layer. The output layer performs the scaling for the defuzzified output by the relation
Training the neuro-fuzzy model with PSO
The objective of the training algorithm is to adjust the free parameters of the network so as to minimize the cost function. In this work, the cost function is given by
where
There exist many ways to train our ANFIS system. The most conventional approach is through the backward propagation. However, it is easily stuck in local optima and thus is not suitable for highly nonlinear models. To deal with this problem, the PSO algorithm is adopted for more effective training. Using the PSO training algorithm, the weighting factors and the network are adjusted so that the value of the cost function given previously is less than a desired threshold after a number of iterations for training.
One input is used for the ANFIS system. We define the degree of mismatch as DOM and derive one output
The steps of the PSO learning algorithm are given as follows:
Initialization: A random vector in the search space is used to initialize a particle.
Updating fitness position: The velocity and the position of a particle is adjusted based on the best local and global fitness location.
Convergence: The above steps repeat iteratively till the stopping condition is achieved.
Figures 4 and 5 depict the influence of the learning algorithm to the ANFIS structure. Figure 4 shows the initial ANFIS input–output structure with its corresponding parameters as tabulated in Table 1. A Gaussian distribution is used for the input MF type, and the output type is Singleton. Likewise, Figure 5 and Table 2 show the trained ANFIS input–output structure as well as the corresponding parameters.

The initial ANFIS input–output (left and right) structure with the parameters shown in Table 1. ANFIS: adaptive neuro-fuzzy inference system.

The trained ANFIS input–output (left and right) structure with the parameters shown in Table 2. ANFIS: adaptive neuro-fuzzy inference system.
The membership functions of initial ANFIS for the input (DOM) and the weight for the output (
ANFIS: adaptive neuro-fuzzy inference system; LN: large negative; N: negative; Z: zero; P: positive; LP: large positive.
The membership functions of trained ANFIS for the input (DOM) and the weight for the output (
ANFIS: adaptive neuro-fuzzy inference system; LN: large negative; N: negative; Z: zero; P: positive; LP: large positive.
Simulation and implementation
The proposed technique is evaluated with simulation and implemented for real experiments.
Experimental results
In the simulation, we evaluate our algorithm by performing two experiments with different number of landmarks, the first one with 10 landmarks and the second one with 30 landmarks. The initial robot position is set at
We compare the results from the conventional EKF-based SLAM and the ANFEKF. In the conventional EKF-based SLAM, the matrices

Ten landmarks are placed in the environment. Left: the conventional EKF-based SLAM. Right: ANEKF-based SLAM.

Thirty landmarks are placed in the environment. Left: the conventional EKF-based SLAM. Right: ANEKF-based SLAM.
The errors of the robot state estimates for both approaches are shown in Figures 8 and 9. It can be seen that the estimation error of AFEKF is approximately zero for 30 landmarks, and the error of the conventional method is much higher. This clearly demonstrates that ANFEKF is more accurate and outperforms the conventional EKF-based SLAM. Figure 10 shows the results from the adjustable scaling factor nR at each sample state in the simulation. The figure indicates that the value of the scaling factor nR varies considerably from 0 to 3. With this adjustment of the scaling factor, the error covariance will always keep close to the actual error to prevent the divergence of the EKF, and thus keep the EKF performance consistently.

The estimation error of the robot state in the environment with 10 landmarks. (a), (b) and (c) are x, y and angle versus time, respectively.

The estimation error of the robot state in the environment with 30 landmarks. (a), (b) and (c) are x, y and angle versus time, respectively.

The results of the scaling factors nR in the environment of 10 landmarks (left) and 30 landmarks (right).
Implementation and real experiments
In the real experiment, the implementation on an Aria P3-DX robot is carried out to demonstrate the AFEKF-based SLAM approach. The odometry information is provided by the measurement from wheel encoders. Since it commonly accumulates errors for long distance travel, the external sensors are required for more accurate and reliable motion estimation. One way to reduce the angular position error is to adopt a laser range scanner. 29 In our approach, on-board sensors are employed for external sensing, and the sensor readings are fused with the odometric information acquired from the internal sensor to derive the robot position estimates. Figure 11 illustrates an ARIA mobile robot platform and the placement of sonar sensors. There are 16 sonars installed in different directions, with the maximum distance reading of about 4–5 m.

The Aria mobile robot used in the experiments and the placement of sonar sensors.
The environment for the experimental setup is as shown in Figure 12. The mobile robot starts from the left corner (as indicated by a blue rectangle in the figure) and moves to its destination at the right side (another blue rectangle) while localizing itself simultaneously and building the environment map. There are three landmarks (indicated by red circles) shown in the figure. The mobile robot utilizes the odometric information from the encoders to localize its position and integrate with the detected landmarks to relocate its position more accurately.

The real-world environment for the experiments.
Figure 13 shows the performance of both the conventional EKF-based SLAM and our ANFEKF-based SLAM using three landmarks in the real environment. The errors of the robot motion in

Left: conventional EKF-based SLAM. Right: ANEKF-based SLAM with three landmarks in the real environment.

The estimation error of the robot state in the real-world environment with three landmarks. (a), (b) and (c) are x, y and angle versus time, respectively.

The results of the scaling factors nR in the real-world environment with three landmarks.

The complete map build by the mobile robot in the real-world environment.
Conclusion
This work proposed an ANFIS for SLAM based on EKF. In a conventional EKF technique, it is assumed that the priori knowledge is well-known. However, this assumption is usually biased and a significant degradation of the performance might occur in practical applications. By adapting the R matrix, the proposed ANFEKF is able to deal with the incorrect knowledge issue. Compared with the conventional approaches, it has the main advantage of consistency. The experiments with simulation and real implementation on a mobile robot are carried out to evaluate the performance of the proposed technique. The localization results have demonstrated that our ANFEKF performs more accurately than the conventional EKF.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported in part by the Ministry of Science and Technology of Taiwan under grant MOST 106-2221-E-194-004 and the Advanced Institute of Manufacturing with High-tech Innovations (AIM-HI) from The Featured Areas Research Center Program within the framework of the Higher Education Sprout Project by the Ministry of Education (MOE) in Taiwan is gratefully acknowledged.
