# Comparative Study of Two Localization Approaches for Mobile Robots in an Indoor Environment

Authors: Eman Alhamdi; Ramdane Hedjar
Journal: Journal of Robotics
 (2022)

---

## Abstract

In the last years, mobile robot localization has been developed significantly due to the need for accurate solutions to determine the position and orientation of the wheeled mobile robot (WMR) in a given environment. Many different sensors have been used to solve the problem. For instance, ultrasonic sensors, laser, or infrared sensors are also used to determine the pose of the WMR. However, sensors are sensitive to noise measurements and disturbances, which can distort the acquired information. For this reason, adequate algorithms should be used to reduce these uncertainties and determine the optimal pose of the WMR. In this research work, we focus on the comparative study of the most used algorithms, using landmarks as sensors, which are the extended Kalman filter and particle filter. Further, for an effective comparison, the simulation results were conducted and analyzed using different performance criteria. The simulations results showed better estimation performance achieved by the particle filter being compared to the extended Kalman filter when the sensors are subject to non-Gaussian noises.


---

## Body

## 1. Introduction

The mobile robot is a device that can move from one place to another until it reaches the target autonomously inside an unknown or partially known environment. In recent years, the applications of mobile robotics have increased, and the robotics field has matured quickly with more and more robots entering practical new services. Indeed, we can find the mobile robot in different applications performing difficult tasks on the military side as well as on the civil side.Therefore, to carry out any task perfectly, the mobile robot must be equipped with wheels and sensors to move and interact with the environment. Therefore, the fundamental components of the mobile robot are the sensors to be utilized for localization and navigation. Therefore, to move easily and safely, the robot should determine its position and orientation precisely.To this end, the mobile robot should perform the following tasks: localization, path planning, and navigation [1]. The importance of safe navigation is shown by its movement without any collision with obstacles to the target. Localization in mobile robotics is the ability of the robot to determine its position and orientation concerning the known reference frame in the environment. The main way to figure out the location of the WMR is by taking data from different sensors to estimate the next position, knowing the current position.The pose of the mobile robot is described by two coordinates (x, y) and the orientation (θ), which is given by(1)Pose=xyθ.There are two types of navigation: indoor navigation and outdoor navigation. We can find many techniques in the literature used to determine the pose of the WMR. The classical one is the dead-reckoning method or simply odometry. This technique, first used in marine vessels, integrates the velocity and the time to determine the change of the position. But the obtained position is inaccurate due to the accumulation of encoders errors. For outdoor navigation, the global position system (GPS) is the approach used to determine the position and orientation of the vehicle. In indoor navigation, encoders, proximity sensors (infrared, sonar, ultrasound, and laser), and landmarks are utilized to estimate the position and the orientation of the mobile robot.These sensors are fundamental inputs to the robot; however, two main problems can be faced in using these sensors: noise and aliasing. These uncertainties can distort the estimation of the position and orientation of the robot. To remedy this problem, many methods have been developed in the literature. Among them, we can find the extended Kalman Filter that minimizes the effect of noise and uncertainties during the estimation process and the particle filter.


## 2. Related Work

Noura et al. [2] have presented the simultaneous localization and mapping (SLAM) method with the extended Kalman Filter for a WMR in the case of a small-scale environment. The idea of SLAM is related to observing the full environment in the closed-loop; they have noted that the SLAM is efficient when the extended Kalman filter is applied. The result has shown that this technique is more consistent for a high number of iterations of the algorithm, but for a large scale and complicated environment, it will be slower.Zhou et al. [3] presented a new approach to automatically detect a dynamic object in order to improve vision-based localization and mapping in crowded environments. They have combined accessible simulation data to train a CNN that generalizes well the unseen environments. The dynamic objects can be detected, even if no segmentation is provided.Faisal et al. [4] have investigated the use of the fuzzy logic control approach to solving the navigation problem of a WMR in an unknown and dynamic environment. The online navigation technique is based on fuzzy logic approach for moving the mobile robot safely in an unknown dynamic environment, while the localization is performed using the dead‐reckoning algorithm in order to estimate the actual configuration of the mobile in the scene. The authors in [5] have combined EKF and PF for better calibration of the kinematic parameters of the robot.The work in [6] proposed an extended Kalman filter as a new method for localization by combining it with an infrared system to reduce further the estimation errors. The authors in [7] used the extended Kalman filter to solve the localization problem when the measurement data are available at a specific time.Because of the poor localization of the laser sensor that is used in the indoor environment, the authors in [8] solved this problem by using map-based particle filter localization in the indoor environment. The main drawback of the particle filter to determine accurate localization that it needs high time computation. So, in [9] the authors suggested a low computational mobile robot localization algorithm with the particle filter by using two methods: local localization by dead rocking and global localization by using landmarks and vision sensor. In paper [10] the authors proposed a new method in indoor wireless local area networks using an adaptive local search particle filter because of the difficulty to predict the state due to interference and reflection. The authors in [11] have investigated the localization problem using the two different particle filtering strategies: (SIR) sampling importance resampling strategy and (APF) auxiliary variable particle filter in the RoboCup soccer environment. Because of the need for an accurate estimation, which is reliable indoor noisy environments, it is commonly provided by the particle filter. In [12] the authors have proposed a novel hybrid particle/FIR filtering algorithm to improve the reliability of particle filters.


## 3. Kinematic Model of the Wheeled Mobile Robot

To determine the equations of the estimator, the kinematic nonlinear model of the wheeled mobile robot is used, and it is given as(2)x˙=vcosθ,y˙=vsinθ,θ˙=ω,where (x, y) is the position of the WMR and θ is the orientation, v is the linear speed, and ω is the steering angle.The dead-reckoning approach uses the previous position and orientation at the timet = k in order to calculate the future pose at t = k + 1. Using the first-order Taylor approximation of the future position, the previous equation becomes [4](3)xk+1=xk+vkTscosθk,yk+1=yk+vkTssinθk,θk+1=θk+ωkTs,where Ts=tk+1−tk is the sampling time. It is preferable to use the distance travelled by the mobile robot during Ts and this can be performed using pulses measured from the encoders on each DC motor of the WMR.


### 3.1. Sensors: Landmarks

As human being needs the five senses in life; also, the robot needs sensors to detect the objects in the surrounding environment and interact with them. There are different types of sensors that are used by mobile robots. This work deals with localization problems, and the sensor used for this task is a landmark sensor where the location is known in the environment (XL, YL). This location may be artificial or physical. It is used to determine the position and orientation of the robot. Assume the ith landmark at the known position (xL,I, yL,i) at the time k, the distance, and the bearing from the position of the mobile robot to the landmark is given by the following equation [13]:(4)hi=xk−xl,i2+yk−yl,i2atan2yl,i−yk,xl,i−xk−θk.


### 3.2. Extended Kalman Filter

The extended Kalman filter (EKF) is the nonlinear version of the Kalman filter which linearizes the nonlinear model around the estimate of the current mean and covariance. It is used to fuse the inner position estimation and outer measurement and to locate the mobile robot with four-wheeled wheel encoders. The EKF has been a popular choice to deal with mobile robot problems with sequential localization and mapping. The efficiency of EKF relies on the minimization of covariance matrices for the system and measurement noise. Inaccurate knowledge of this statistical data can cause inaccuracy in the estimation performance [2]. The EKF was developed in 1970 as the initial approach to estimate the state of a nonlinear system [14]. It is an approximation method for nonlinear state estimation based on Taylor series expansion to overcome the nonlinearity system and measurement models. EKF linearizes the nonlinear functions around the estimated trajectory [15]. It is well known that the EKF is prone to divergence, mainly for the bad initial estimate and high noise [3].The discrete-time model of the WMR represented can be written as(5)Xk+1=fXk,Uk+wk,Zk=hXk+vk,where X=xyθT is the state vector to be estimated, U=μωT is the control vector, Z is the measured output, and w,v is the system and measurement disturbances defined previously. The EKF is based on the linearization of the nonlinear equations (11) and (12). Further, it is assumed that the initial state and noises are Gaussian and uncorrelated to each other. The prediction and update of the EKF are given as follows (see [16]):(i)
X¯^k+1=fX^k,Uk,(ii)
P^k+1=AkPkAkT+Q(iii)
Kk=P^kHkTHkP^kHkT+R−1,(iv)
X^k+1=X¯^k+1+KkZk+1−hX¯^k+1,(v)
Pk+1=1−KkHkP^k+1where the dynamic and the output matrices are(6)Ak=∂fXk,Uk∂Xk,Hk=∂hXk∂Xk.


### 3.3. Particle Filter

In the EKF estimation, it is assumed that the noise measurements, due to sensors and from the environment, have a Gaussian probability density function (pdf). However, in practice, this assumption may be violated. So, the first-order linearization has to be used for the dynamic model and the measurement model. Further, some sensors may have a strong nonlinear measurement model. Therefore, the linearization of the nonlinear equations increases the estimation errors. Consequently, when the above assumptions are not suitable in practice, the particle filter is an appropriate algorithm to be used for the localization of a WMR. The particle filter is a nonlinear filter that is one of the Sequential Monte Carlo algorithms to set the dynamic movement of the robot. It is a set of samples called particles that approximate the probability distributions. A particle filter gives a perfect way to estimate the state position of the robot [2]. Each particle assigned has a weight that is proportional to probability. Normalize the weights of samples by the principle of importance sampling [14]. Thus, the particle filter is a nonlinear filter for a state estimate that represents the noise model in a sample. It is an estimation algorithm based on the Bayesian algorithm to approximate the probability density function (pdf) by tracking the variable over time with non-Gaussian and multimodel pdf. This technique is based on the construction of a sample-based representation of the pdf. There are multiple particles of variables that will be used, each part is associated with weight, which specifies the quality of the specific particle. An estimation of the variable is obtained by weighting the sum of all particles. The particle filter algorithm is repeated in nature and works into states: prediction and update.In each action, the particle is modified to the existing model in the prediction step and added noise to simulate the effect of noise in the variable. Then, every particle's weight is evaluated again based on sensory information in the update step. The particle with a small weight is eliminated; this process is called resampling [17]. The variable of interest, represented as a set of N samples, is given as follows:(7)Sik=xjk,wjkforj=1,…,N,where j is a particle and every particle has a copy of the variable and weight wjk, which defines the contribution of the particle to estimate the variable.TheN samples or particles xjkforj=1,….,N, are drawn from a known or estimated distribution Pxk/yk at time k. Each sample has associated a weight wjkforj=1,….,N, with ∑j=1Nwjk=1 (normalization). Then, the pdfPxk/yk can be empirically approximated as(8)Pxkyk≈∑j=1Nwjkδxk−xjkdxk.Therefore, the best estimate of the statexk , using the Bayesian estimation rule, [21, 23] is(9)x︷k=Exkyk=∫−∞∞xkPxkykdxk≈∑j=1Nwjkxjk.Note that the variable of interest in our case at the discrete-timet=k, is the pose and the orientation of the mobile robot defined as(10)xk=xkykθkT.The first stage is the prediction, which uses the model to simulate the effect of an action on the set of particles when a suitable noise is added. While in updating stage, using information gotten from sensing to update the particle weight helps to explain the moving robot’spdf. Given particle distribution, first, we should take an action for the robot pose; then, three methods will apply to evaluate the estimated pose. First, calculate the weighted mean, select the best particle, and then the weighted mean in a small window around the best-selected particle.


#### 3.3.1. Particle Filter Algorithm [17]

The particle filter algorithm works in two stages: predict and update. The main idea to describe the filter is as follows:In this work, the previous algorithms will be used to estimate the position and the orientation of the WMR. An appropriate measurement model will be identified according to the sensors that will be used with the assumptions on the nature of differentpdfs.A particle filter or Bayes filter is a probabilistic method that allows recursively to estimate an unknown probability density function; therefore, this is also known as recursive Bayesian estimation. It relies on mathematical models and continuous measurements to estimate thepdf, and it is used to calculate the probabilities of multiple beliefs to allow a robot to infer its position and orientation by allowing the robots to continuously update their most likely position within a coordinate system, based on the most recently acquired sensor data. There are a lot of factors that affect the accuracy of localization. The primary factor is the unwanted data in the environment which is called noise. It is not easy to get high accuracy localization in a noisy environment; therefore, data need to be filtered to estimate it correctly. The Gaussian distribution (also called normal distribution) is widely used in natural and social sciences; non-Gaussian models expose challenges in fitting data that often have distinct spiky and compulsive features that differ from Gaussian distributions, which are known as non-Gaussian distributions [4].


## 3.1. Sensors: Landmarks

As human being needs the five senses in life; also, the robot needs sensors to detect the objects in the surrounding environment and interact with them. There are different types of sensors that are used by mobile robots. This work deals with localization problems, and the sensor used for this task is a landmark sensor where the location is known in the environment (XL, YL). This location may be artificial or physical. It is used to determine the position and orientation of the robot. Assume the ith landmark at the known position (xL,I, yL,i) at the time k, the distance, and the bearing from the position of the mobile robot to the landmark is given by the following equation [13]:(4)hi=xk−xl,i2+yk−yl,i2atan2yl,i−yk,xl,i−xk−θk.


## 3.2. Extended Kalman Filter

The extended Kalman filter (EKF) is the nonlinear version of the Kalman filter which linearizes the nonlinear model around the estimate of the current mean and covariance. It is used to fuse the inner position estimation and outer measurement and to locate the mobile robot with four-wheeled wheel encoders. The EKF has been a popular choice to deal with mobile robot problems with sequential localization and mapping. The efficiency of EKF relies on the minimization of covariance matrices for the system and measurement noise. Inaccurate knowledge of this statistical data can cause inaccuracy in the estimation performance [2]. The EKF was developed in 1970 as the initial approach to estimate the state of a nonlinear system [14]. It is an approximation method for nonlinear state estimation based on Taylor series expansion to overcome the nonlinearity system and measurement models. EKF linearizes the nonlinear functions around the estimated trajectory [15]. It is well known that the EKF is prone to divergence, mainly for the bad initial estimate and high noise [3].The discrete-time model of the WMR represented can be written as(5)Xk+1=fXk,Uk+wk,Zk=hXk+vk,where X=xyθT is the state vector to be estimated, U=μωT is the control vector, Z is the measured output, and w,v is the system and measurement disturbances defined previously. The EKF is based on the linearization of the nonlinear equations (11) and (12). Further, it is assumed that the initial state and noises are Gaussian and uncorrelated to each other. The prediction and update of the EKF are given as follows (see [16]):(i)
X¯^k+1=fX^k,Uk,(ii)
P^k+1=AkPkAkT+Q(iii)
Kk=P^kHkTHkP^kHkT+R−1,(iv)
X^k+1=X¯^k+1+KkZk+1−hX¯^k+1,(v)
Pk+1=1−KkHkP^k+1where the dynamic and the output matrices are(6)Ak=∂fXk,Uk∂Xk,Hk=∂hXk∂Xk.


## 3.3. Particle Filter

In the EKF estimation, it is assumed that the noise measurements, due to sensors and from the environment, have a Gaussian probability density function (pdf). However, in practice, this assumption may be violated. So, the first-order linearization has to be used for the dynamic model and the measurement model. Further, some sensors may have a strong nonlinear measurement model. Therefore, the linearization of the nonlinear equations increases the estimation errors. Consequently, when the above assumptions are not suitable in practice, the particle filter is an appropriate algorithm to be used for the localization of a WMR. The particle filter is a nonlinear filter that is one of the Sequential Monte Carlo algorithms to set the dynamic movement of the robot. It is a set of samples called particles that approximate the probability distributions. A particle filter gives a perfect way to estimate the state position of the robot [2]. Each particle assigned has a weight that is proportional to probability. Normalize the weights of samples by the principle of importance sampling [14]. Thus, the particle filter is a nonlinear filter for a state estimate that represents the noise model in a sample. It is an estimation algorithm based on the Bayesian algorithm to approximate the probability density function (pdf) by tracking the variable over time with non-Gaussian and multimodel pdf. This technique is based on the construction of a sample-based representation of the pdf. There are multiple particles of variables that will be used, each part is associated with weight, which specifies the quality of the specific particle. An estimation of the variable is obtained by weighting the sum of all particles. The particle filter algorithm is repeated in nature and works into states: prediction and update.In each action, the particle is modified to the existing model in the prediction step and added noise to simulate the effect of noise in the variable. Then, every particle's weight is evaluated again based on sensory information in the update step. The particle with a small weight is eliminated; this process is called resampling [17]. The variable of interest, represented as a set of N samples, is given as follows:(7)Sik=xjk,wjkforj=1,…,N,where j is a particle and every particle has a copy of the variable and weight wjk, which defines the contribution of the particle to estimate the variable.TheN samples or particles xjkforj=1,….,N, are drawn from a known or estimated distribution Pxk/yk at time k. Each sample has associated a weight wjkforj=1,….,N, with ∑j=1Nwjk=1 (normalization). Then, the pdfPxk/yk can be empirically approximated as(8)Pxkyk≈∑j=1Nwjkδxk−xjkdxk.Therefore, the best estimate of the statexk , using the Bayesian estimation rule, [21, 23] is(9)x︷k=Exkyk=∫−∞∞xkPxkykdxk≈∑j=1Nwjkxjk.Note that the variable of interest in our case at the discrete-timet=k, is the pose and the orientation of the mobile robot defined as(10)xk=xkykθkT.The first stage is the prediction, which uses the model to simulate the effect of an action on the set of particles when a suitable noise is added. While in updating stage, using information gotten from sensing to update the particle weight helps to explain the moving robot’spdf. Given particle distribution, first, we should take an action for the robot pose; then, three methods will apply to evaluate the estimated pose. First, calculate the weighted mean, select the best particle, and then the weighted mean in a small window around the best-selected particle.


### 3.3.1. Particle Filter Algorithm [17]

The particle filter algorithm works in two stages: predict and update. The main idea to describe the filter is as follows:In this work, the previous algorithms will be used to estimate the position and the orientation of the WMR. An appropriate measurement model will be identified according to the sensors that will be used with the assumptions on the nature of differentpdfs.A particle filter or Bayes filter is a probabilistic method that allows recursively to estimate an unknown probability density function; therefore, this is also known as recursive Bayesian estimation. It relies on mathematical models and continuous measurements to estimate thepdf, and it is used to calculate the probabilities of multiple beliefs to allow a robot to infer its position and orientation by allowing the robots to continuously update their most likely position within a coordinate system, based on the most recently acquired sensor data. There are a lot of factors that affect the accuracy of localization. The primary factor is the unwanted data in the environment which is called noise. It is not easy to get high accuracy localization in a noisy environment; therefore, data need to be filtered to estimate it correctly. The Gaussian distribution (also called normal distribution) is widely used in natural and social sciences; non-Gaussian models expose challenges in fitting data that often have distinct spiky and compulsive features that differ from Gaussian distributions, which are known as non-Gaussian distributions [4].


## 3.3.1. Particle Filter Algorithm [17]

The particle filter algorithm works in two stages: predict and update. The main idea to describe the filter is as follows:In this work, the previous algorithms will be used to estimate the position and the orientation of the WMR. An appropriate measurement model will be identified according to the sensors that will be used with the assumptions on the nature of differentpdfs.A particle filter or Bayes filter is a probabilistic method that allows recursively to estimate an unknown probability density function; therefore, this is also known as recursive Bayesian estimation. It relies on mathematical models and continuous measurements to estimate thepdf, and it is used to calculate the probabilities of multiple beliefs to allow a robot to infer its position and orientation by allowing the robots to continuously update their most likely position within a coordinate system, based on the most recently acquired sensor data. There are a lot of factors that affect the accuracy of localization. The primary factor is the unwanted data in the environment which is called noise. It is not easy to get high accuracy localization in a noisy environment; therefore, data need to be filtered to estimate it correctly. The Gaussian distribution (also called normal distribution) is widely used in natural and social sciences; non-Gaussian models expose challenges in fitting data that often have distinct spiky and compulsive features that differ from Gaussian distributions, which are known as non-Gaussian distributions [4].


## 4. Simulation Results and Discussion

To accomplish the simulation part, the WMR is required to evolve in an open loop, without the controller, and achieve a circle shape where all variables change. To this end, the velocity and the steering angle are taken constant. Note that it is possible to evolve the mobile robot in a closed-loop where the circle shape is followed by using, for instance, model predictive control, where the prediction can be conducted by the method used in [18].


### 4.1. EKF

For the first filter, we used different sensors, seen previously, with Gaussian and non-Gaussian noises. To apply the EKF, we have to use the linearized model of the nonlinear system. Therefore, the state matrix of the linearized model is given by [22, 25](11)Ak=dFXk,udX=10−vkTscosθk01vkTssinθk001.As it was mentioned previously, the source of the noise can be the sensor itself or any hardware imperfection. The work described in [19] deals with a control strategy to ensure the optimal working condition and reduce the effect of hidden dynamics induced by imperfections. In this work, two different kinds of noises have been considered: Gaussian and non-Gaussian noises.


#### 4.1.1. One Landmark

(1) Gaussian Noise. In Figure 1, it is described as the path when the EKF is applied with Gaussian noise and one landmark sensor.Figure 1
State of the WMR with the EKF (one landmark and Gaussian noise).As shown in Figure2, it is depicted as the measured and filtered signals for the three variables [X, Y, θ]. They are close to each other for each reading. Globally, the simulation results show a slight increase in the error estimation at the end of the simulation.Figure 2
EKF performance with one landmark and Gaussian noise.Figure3 shows the estimation error for each variable. Here, we can see the differences in the reading in the results of each three variables. Table 1 resumes the numerical reading of the errors for one trial.Figure 3
The induced estimation error from the EKF (one landmark and Gaussian noise).Table 1
The mean value of numerical reading of the EKF with (one landmark-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0760.0920.0100.010 sFor the case of Gaussian noise, to analyze the sensitivity of the filter, we run ten trials, and we take the average of all variable values and processing time. Table2 below shows the mean error for each run and the mean for all trials.Table 2
The mean of the trials for the EKF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0760.1120.0830.0780.0750.0660.0550.0840.1140.1050.084ey (m)0.0920.1350.1080.0900.0890.0850.0630.0980.1710.1590.010eθ (deg)0.0100.0140.0110.0080.0050.0050.0040.0090.0190.0180.010Time (sec)0.0100.0080.0120.0080.0090.0090.0070.0080.0100.0080.008 s(2) Non-Gaussian Noise. In Figure 4, we can see an increase in the error results with one path. As represented in Figure 4, the black curve with noise appears that the filter is ineffective in decreasing the noise.Figure 4
WMR’s state with the EKF (one landmark and non-Gaussian noise).As shown in Figure5, there are three different readings for measured and filtered results. This figure shows the time (mn) for each measured and filtered item. It can be seen the two curves are not identical, especially at time t = 0.5 mn.Figure 5
EKF performance with one landmark and non-Gaussian noise.Figure6 shows the reading for the estimation errors. Here, we can see the differences between the measured curves and the filtered curves. The figure shows how the error curves go up and down for the non-Gaussian noise. The mean of numerical readings is shown in Table 3.Figure 6
The induced estimation error for the EKF (one landmark-non-Gaussian noise).Table 3
The mean value of numerical readings of the EKF with one landmark and non-Gaussian noise.
ex (m)ey (m)eθ (deg)Time (sec)43.8157.247.730.018Table4 shows the error reading for ten trials as well as the average value for each variable.Table 4
The mean of the trials with the EKF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)43.810.36621.3553.9021.961.8810.9338.573.57113.5121.81ey (m)57.240.42420.8193.3717.071.5520.2249.743.51109.6029.32eθ (deg)7.730.0852.8010.742.410.2251.946.800.48516.723.69Time (sec)0.0180.0100.0080.0190.0120.0160.0120.0150.0140.0150.013 sNote that the result obtained in the 10th trial has been discarded since it is considered an outlier value. To improve the accuracy of the filter, another landmark is added in the space environment with a different position than the first one.


#### 4.1.2. Two Landmarks

(1) Gaussian Noise. As shown in Figure 7, there are three different variation results for three different readings which are for measured and filtered results for the variables [X, Y, θ]; they are close to each other in each reading. This figure shows clearly when the system is subject to the Gaussian noise with two landmarks and the estimation performance is reasonable.Figure 7
EKF performance with two landmarks and Gaussian noise.Figure8 shows the behavior of the estimation errors. Here, we can see the differences between the state and its estimate.Figure 8
The induced estimation error from the EKF (two landmarks and Gaussian noise).The numerical readings for one trial are shown in Table5.Table 5
The mean value of numerical reading of the EKF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0220.0170.035In Table6 below we have all the ten-trial readings and the global mean value for each variable.Table 6
The mean of trials with the EKF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0120.0140.0130.0120.0110.0130.0120.0120.0130.012ey (m)0.0220.0220.0270.0230.0220.0200.0230.0200.0220.0230.022eθ (deg)0.0170.0170.0240.0200.0190.0160.0190.0160.0170.0180.039Time (sec)0.0350.0270.0180.0190.0300.0190.0190.0200.0190.0200.022 s(2) Non-Gaussian Noise. Figure 9 illustrates the three different readings for measured and filtered results. We remark that for this case (non-Gaussian noise), the EKF does not achieve good estimation performance. This fact has been mentioned in the previous chapters, where it is mentioned that the EKF is specific to the case of Gaussian noise.Figure 9
EKF performance with two landmarks and non-Gaussian noise.Figure10 shows the reading for errors estimate. Here, we can see the differences in the estimation errors. The estimation performances are not acceptable. Table 7 shows the numerical readings for one trial.Figure 10
The induced estimation error from the EKF (two landmarks and non-Gaussian noise).Table 7
The mean of numerical readings with the EKF (two landmarks and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.5220.5110.2160.037To get the mean value of ten trials, we execute the algorithm ten times and collect all results that are shown in Table8.Table 8
The mean of the trials of the EKF (two landmarks and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.5225.870.6560.5620.2760.4341.370.4723.040.1501.27ey (m)0.5114.150.8380.6090.2590.5780.8630.4433.180.2161.16eθ (deg)0.2166.550.9020.6670.1080.5891.140.2114.190.1101.46Time (sec)0.0370.0400.0230.0270.0250.0360.0280.0260.0250.0250.029 s


### 4.2. Particle Filter

In this part, the particle filter is used to estimate the pose of the WMR. As for the EKF, two different sensors are used.


#### 4.2.1. One Landmark

(1) Gaussian Noise. In Figure 11, the green path shows the behaviour of the filtered state, and the red path shows the measured state. It appears clearly that the filter is effective in decreasing the negative effect of the noise.Figure 11
The state of the WMR using the PF with one landmark and Gaussian noise.Figure12 shows the evolution of the three variables with their estimates. It appears that the PF estimator copes with the case of one landmark and Gaussian noise.Figure 12
PF performance with one landmark and Gaussian noise.Figure13 shows the readings for the error estimates for the case of the PF with one landmark and Gaussian noise. For the position estimation, the error is slightly high during the starting of the algorithm, and after that, the errors have decreased. For the last reading (estimation error of the orientation), we can see the variation of this error around 0.010. Table 9 shows the numerical readings for one trial.Figure 13
Localization error with the PF (one landmark and Gaussian noise).Table 9
The mean of the experiments with the PF (one landmark and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0310.0270.0102.77 sFor the Gaussian noise case, to measure the sensitivity of the filter, we run the algorithm ten times, and we take the average of all variables. We remark that in all ten cases, the difference is very small. In Table10 below, we have all the ten-trial readings and the global mean value for each variable.Table 10
The mean of the trials with the PF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0310.0140.0120.0110.0140.0170.0190.0290.0100.0120.016ey (m)0.0270.0190.0140.0170.0120.0170.0120.0150.0170.0280.016eθ (deg)0.0100.0030.0040.0030.0030.0030.0030.0090.0030.0030.004Time (sec)2.772.712.672.672.682.732.772.722.732.722.45 s(2) Non-Gaussian Noise. Figure 14 depicts the simulation results for the case of the PF with one landmark and non-Gaussian noise. It appears a good tracking performance of the estimator for this case.Figure 14
The state of the WMR with the PF (one landmark-non-Gaussian noise).Figure15 illustrates the state variables and their estimates. These results show that the filter is effective in this case in reducing the effect of the noise on the state variable.Figure 15
PF performance with one landmark and non-Gaussian noise.Figure16 shows the readings for error estimates. Here also, the starting error estimate for the position is slightly high, and afterward, it decreases to an acceptable value. The mean of numerical readings ae shown in Table 11.Figure 16
Estimation error for the PF with one landmark and non-Gaussian noise.Table 11
The mean of the estimation errors for the PF (one landmark and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0130.0032.74 sFor the non-Gaussian noise cases to measure the sensitivity of the filter, we run the algorithm ten times, and we get the mean of all variable values. It is noted that in all ten cases, the difference is very small as shown in Table12.Table 12
The mean of different trials with the PF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0200.0160.0140.0100.0110.0100.0180.0120.0090.013ey (m)0.0130.0260.0110.0140.0110.0140.0220.0130.0110.0190.015eθ (deg)0.0030.0080.0040.0040.0020.0020.0040.0050.0030.0090.004Time (sec)2.742.752.752.732.742.752.712.752.752.733.01 s


#### 4.2.2. Two Landmarks

(1) Gaussian Noise. Figure 17 shows the variations in the state of the WMR and the estimated of these variables by the PF in the case of two Landmarks and Gaussian noise. The tracking performances are acceptable.Figure 17
PF performance with two landmarks and Gaussian noise.Figure18 shows the readings for the error estimates. For this case, the error position is high at the beginning of the simulation. After that, the errors decrease and evolve around zero. On the other hand, the orientation variation does not converge to zero or around the origin as shown in Table 13.Figure 18
The induced filtering error with the PF (two landmarks and Gaussian noise).Table 13
The mean of the estimation errors of the PF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0200.0140.4953.00 sIn Table14 below, we have all the ten-trial readings and the global mean value for each variable.Table 14
The mean of different trials with the PF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0200.0130.0260.0150.0210.0190.0140.0320.0110.0270.019ey (m)0.0140.0210.0180.0170.0140.0150.0130.0160.0100.0110.014eθ (deg)0.4950.3891.040.7620.5330.5790.2561.070.0110.3440.547Time (sec)3.00s3.053.213.033.033.033.043.053.213.043.06 s(2) Non-Gaussian Noise. Figure 19 shows the variations of the position and the orientation of the WMR and their estimated signals by the PF for the case of two landmarks and non-Gaussian noise. Here also the tracking performances are acceptable.Figure 19
PF performance with two landmarks and non-Gaussian noise.Figure20 shows the reading for error estimates. Here also, we note the same behaviour of the estimator for case two landmarks with Gaussian noise. This means that the estimation performance of the PF is not influenced by the type of distribution of the noise. Table 15 resumes the numerical reading of the errors for one trial.Figure 20
The induced estimation error from the PF (two landmarks and non-Gaussian noise).Table 15
The mean of the PF (two landmarks with non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0100.0100.0033.09 sFigure 21
Simulation results analysis of the EKF.Figure 22
Simulation results analysis of PF.Table16 below shows the results of executing the algorithm ten times.Extended Kalman FilterParticle FilterFigures21 and 22 depict the mean value of a set of trials for each filter. We can see that if the WMR is subject to the Gaussian noise, the EKF achieves acceptable tracking performances since the Kalman filter is built under the assumption of Gaussian noises (state and measurement). Further, the particle filter achieves good performances for both cases of noises (Gaussian and non-Gaussian). Indeed, the particle filter is built for any distribution of the noise signals (state and measurement).On the other hand, the particle filter takes more time for processing than the EKF. This is due to the sampling process. We can note also that the accuracy of the PF can be reduced further when the number of samples is increased and this also will increase the time processing further.Table 16
The mean of ten trials with the PF (two landmarks-non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0100.0150.0150.0110.0100.0120.0110.0200.0120.0140.013ey (m)0.0100.0110.0140.0140.0300.0150.0150.0160.0150.0100.015eθ (deg)0.0030.0040.0070.0030.0040.0030.0050.0110.0040.0010.004Time (sec)3.093.413.083.363.123.093.083.433.093.053.18 s


### 4.3. The Performance Metric

Performance evaluation of the estimation algorithms utilizes different criteria. These criteria depend on the type of evaluation (performance optimization, estimation, and analysis). Since the filtering problem developed in this work is data-dependent, its estimation performance is random which needs to evaluate in the statistical sense. There are many criteria used in the literature to evaluate the estimation performance based on the norm or distance between the teal vector and its estimate. In the literature, we can find the following criteria:(i)
MSE (mean square error)(ii)
MMSE (minimum mean square error)(iii)
RMSE (root mean square error)(iv)
MAE (mean absolute value)In this work, the AEE (average Euclidian error) is adopted for the evaluation of the estimator. AEE criterion uses the concept of the Euclidian distance, and it is defined as the length of curve segments between two points in Euclidian space [20]:(12)AEEX˜=1M∑i=1MX˜i=1M∑i=1MX˜iTX˜i1/2,where X˜i=Xi−X^i denotes the estimation error, Xi is the unknown, and X^i is its estimate. In this work, we will proceed as follows.For eachjth trial, the mean error is calculated as μj=1/N∑i=1Nei,fori=1,…,N, where μj∈ℜ3×1is the mean,ei=Xi−X^i∈ℜ3×1 is the state estimation error, Xi is the position and the orientation of the mobile robot at iteration i, and Xi is its estimate. N is the number of iterations during the jth trial or run.ForM (in our case M = 10) random runs or experiments, the average Euclidian error of the estimator is(13)AEEEst.Error=1M∑j=1Mμj=1M∑j=1MμjTμj1/2.The smaller the AEE, the more accurate the estimator.


#### 4.3.1. The Evaluated Cases

Case 1.
One Landmark
In this case, the AEE value for each set of simulations is given in Table17.Table 17
AEE for one landmark.
AEEGaussian noiseNon-Gaussian noiseEKF0.13848.38PF0.0250.020Here, PF outperforms the EKF in the estimation of the position and orientation of a WMR for the Gaussian noise in contrast to the non-Gaussian.Case 2.
Two Landmarks
In this case, the AEE for a set of trials is given in Table18.Table 18
AEE for two landmarks.
AEEGaussian noiseNon-Gaussian noiseEKF0.0292.32PF0.0540.020


## 4.1. EKF

For the first filter, we used different sensors, seen previously, with Gaussian and non-Gaussian noises. To apply the EKF, we have to use the linearized model of the nonlinear system. Therefore, the state matrix of the linearized model is given by [22, 25](11)Ak=dFXk,udX=10−vkTscosθk01vkTssinθk001.As it was mentioned previously, the source of the noise can be the sensor itself or any hardware imperfection. The work described in [19] deals with a control strategy to ensure the optimal working condition and reduce the effect of hidden dynamics induced by imperfections. In this work, two different kinds of noises have been considered: Gaussian and non-Gaussian noises.


### 4.1.1. One Landmark

(1) Gaussian Noise. In Figure 1, it is described as the path when the EKF is applied with Gaussian noise and one landmark sensor.Figure 1
State of the WMR with the EKF (one landmark and Gaussian noise).As shown in Figure2, it is depicted as the measured and filtered signals for the three variables [X, Y, θ]. They are close to each other for each reading. Globally, the simulation results show a slight increase in the error estimation at the end of the simulation.Figure 2
EKF performance with one landmark and Gaussian noise.Figure3 shows the estimation error for each variable. Here, we can see the differences in the reading in the results of each three variables. Table 1 resumes the numerical reading of the errors for one trial.Figure 3
The induced estimation error from the EKF (one landmark and Gaussian noise).Table 1
The mean value of numerical reading of the EKF with (one landmark-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0760.0920.0100.010 sFor the case of Gaussian noise, to analyze the sensitivity of the filter, we run ten trials, and we take the average of all variable values and processing time. Table2 below shows the mean error for each run and the mean for all trials.Table 2
The mean of the trials for the EKF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0760.1120.0830.0780.0750.0660.0550.0840.1140.1050.084ey (m)0.0920.1350.1080.0900.0890.0850.0630.0980.1710.1590.010eθ (deg)0.0100.0140.0110.0080.0050.0050.0040.0090.0190.0180.010Time (sec)0.0100.0080.0120.0080.0090.0090.0070.0080.0100.0080.008 s(2) Non-Gaussian Noise. In Figure 4, we can see an increase in the error results with one path. As represented in Figure 4, the black curve with noise appears that the filter is ineffective in decreasing the noise.Figure 4
WMR’s state with the EKF (one landmark and non-Gaussian noise).As shown in Figure5, there are three different readings for measured and filtered results. This figure shows the time (mn) for each measured and filtered item. It can be seen the two curves are not identical, especially at time t = 0.5 mn.Figure 5
EKF performance with one landmark and non-Gaussian noise.Figure6 shows the reading for the estimation errors. Here, we can see the differences between the measured curves and the filtered curves. The figure shows how the error curves go up and down for the non-Gaussian noise. The mean of numerical readings is shown in Table 3.Figure 6
The induced estimation error for the EKF (one landmark-non-Gaussian noise).Table 3
The mean value of numerical readings of the EKF with one landmark and non-Gaussian noise.
ex (m)ey (m)eθ (deg)Time (sec)43.8157.247.730.018Table4 shows the error reading for ten trials as well as the average value for each variable.Table 4
The mean of the trials with the EKF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)43.810.36621.3553.9021.961.8810.9338.573.57113.5121.81ey (m)57.240.42420.8193.3717.071.5520.2249.743.51109.6029.32eθ (deg)7.730.0852.8010.742.410.2251.946.800.48516.723.69Time (sec)0.0180.0100.0080.0190.0120.0160.0120.0150.0140.0150.013 sNote that the result obtained in the 10th trial has been discarded since it is considered an outlier value. To improve the accuracy of the filter, another landmark is added in the space environment with a different position than the first one.


### 4.1.2. Two Landmarks

(1) Gaussian Noise. As shown in Figure 7, there are three different variation results for three different readings which are for measured and filtered results for the variables [X, Y, θ]; they are close to each other in each reading. This figure shows clearly when the system is subject to the Gaussian noise with two landmarks and the estimation performance is reasonable.Figure 7
EKF performance with two landmarks and Gaussian noise.Figure8 shows the behavior of the estimation errors. Here, we can see the differences between the state and its estimate.Figure 8
The induced estimation error from the EKF (two landmarks and Gaussian noise).The numerical readings for one trial are shown in Table5.Table 5
The mean value of numerical reading of the EKF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0220.0170.035In Table6 below we have all the ten-trial readings and the global mean value for each variable.Table 6
The mean of trials with the EKF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0120.0140.0130.0120.0110.0130.0120.0120.0130.012ey (m)0.0220.0220.0270.0230.0220.0200.0230.0200.0220.0230.022eθ (deg)0.0170.0170.0240.0200.0190.0160.0190.0160.0170.0180.039Time (sec)0.0350.0270.0180.0190.0300.0190.0190.0200.0190.0200.022 s(2) Non-Gaussian Noise. Figure 9 illustrates the three different readings for measured and filtered results. We remark that for this case (non-Gaussian noise), the EKF does not achieve good estimation performance. This fact has been mentioned in the previous chapters, where it is mentioned that the EKF is specific to the case of Gaussian noise.Figure 9
EKF performance with two landmarks and non-Gaussian noise.Figure10 shows the reading for errors estimate. Here, we can see the differences in the estimation errors. The estimation performances are not acceptable. Table 7 shows the numerical readings for one trial.Figure 10
The induced estimation error from the EKF (two landmarks and non-Gaussian noise).Table 7
The mean of numerical readings with the EKF (two landmarks and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.5220.5110.2160.037To get the mean value of ten trials, we execute the algorithm ten times and collect all results that are shown in Table8.Table 8
The mean of the trials of the EKF (two landmarks and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.5225.870.6560.5620.2760.4341.370.4723.040.1501.27ey (m)0.5114.150.8380.6090.2590.5780.8630.4433.180.2161.16eθ (deg)0.2166.550.9020.6670.1080.5891.140.2114.190.1101.46Time (sec)0.0370.0400.0230.0270.0250.0360.0280.0260.0250.0250.029 s


## 4.1.1. One Landmark

(1) Gaussian Noise. In Figure 1, it is described as the path when the EKF is applied with Gaussian noise and one landmark sensor.Figure 1
State of the WMR with the EKF (one landmark and Gaussian noise).As shown in Figure2, it is depicted as the measured and filtered signals for the three variables [X, Y, θ]. They are close to each other for each reading. Globally, the simulation results show a slight increase in the error estimation at the end of the simulation.Figure 2
EKF performance with one landmark and Gaussian noise.Figure3 shows the estimation error for each variable. Here, we can see the differences in the reading in the results of each three variables. Table 1 resumes the numerical reading of the errors for one trial.Figure 3
The induced estimation error from the EKF (one landmark and Gaussian noise).Table 1
The mean value of numerical reading of the EKF with (one landmark-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0760.0920.0100.010 sFor the case of Gaussian noise, to analyze the sensitivity of the filter, we run ten trials, and we take the average of all variable values and processing time. Table2 below shows the mean error for each run and the mean for all trials.Table 2
The mean of the trials for the EKF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0760.1120.0830.0780.0750.0660.0550.0840.1140.1050.084ey (m)0.0920.1350.1080.0900.0890.0850.0630.0980.1710.1590.010eθ (deg)0.0100.0140.0110.0080.0050.0050.0040.0090.0190.0180.010Time (sec)0.0100.0080.0120.0080.0090.0090.0070.0080.0100.0080.008 s(2) Non-Gaussian Noise. In Figure 4, we can see an increase in the error results with one path. As represented in Figure 4, the black curve with noise appears that the filter is ineffective in decreasing the noise.Figure 4
WMR’s state with the EKF (one landmark and non-Gaussian noise).As shown in Figure5, there are three different readings for measured and filtered results. This figure shows the time (mn) for each measured and filtered item. It can be seen the two curves are not identical, especially at time t = 0.5 mn.Figure 5
EKF performance with one landmark and non-Gaussian noise.Figure6 shows the reading for the estimation errors. Here, we can see the differences between the measured curves and the filtered curves. The figure shows how the error curves go up and down for the non-Gaussian noise. The mean of numerical readings is shown in Table 3.Figure 6
The induced estimation error for the EKF (one landmark-non-Gaussian noise).Table 3
The mean value of numerical readings of the EKF with one landmark and non-Gaussian noise.
ex (m)ey (m)eθ (deg)Time (sec)43.8157.247.730.018Table4 shows the error reading for ten trials as well as the average value for each variable.Table 4
The mean of the trials with the EKF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)43.810.36621.3553.9021.961.8810.9338.573.57113.5121.81ey (m)57.240.42420.8193.3717.071.5520.2249.743.51109.6029.32eθ (deg)7.730.0852.8010.742.410.2251.946.800.48516.723.69Time (sec)0.0180.0100.0080.0190.0120.0160.0120.0150.0140.0150.013 sNote that the result obtained in the 10th trial has been discarded since it is considered an outlier value. To improve the accuracy of the filter, another landmark is added in the space environment with a different position than the first one.


## 4.1.2. Two Landmarks

(1) Gaussian Noise. As shown in Figure 7, there are three different variation results for three different readings which are for measured and filtered results for the variables [X, Y, θ]; they are close to each other in each reading. This figure shows clearly when the system is subject to the Gaussian noise with two landmarks and the estimation performance is reasonable.Figure 7
EKF performance with two landmarks and Gaussian noise.Figure8 shows the behavior of the estimation errors. Here, we can see the differences between the state and its estimate.Figure 8
The induced estimation error from the EKF (two landmarks and Gaussian noise).The numerical readings for one trial are shown in Table5.Table 5
The mean value of numerical reading of the EKF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0220.0170.035In Table6 below we have all the ten-trial readings and the global mean value for each variable.Table 6
The mean of trials with the EKF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0120.0140.0130.0120.0110.0130.0120.0120.0130.012ey (m)0.0220.0220.0270.0230.0220.0200.0230.0200.0220.0230.022eθ (deg)0.0170.0170.0240.0200.0190.0160.0190.0160.0170.0180.039Time (sec)0.0350.0270.0180.0190.0300.0190.0190.0200.0190.0200.022 s(2) Non-Gaussian Noise. Figure 9 illustrates the three different readings for measured and filtered results. We remark that for this case (non-Gaussian noise), the EKF does not achieve good estimation performance. This fact has been mentioned in the previous chapters, where it is mentioned that the EKF is specific to the case of Gaussian noise.Figure 9
EKF performance with two landmarks and non-Gaussian noise.Figure10 shows the reading for errors estimate. Here, we can see the differences in the estimation errors. The estimation performances are not acceptable. Table 7 shows the numerical readings for one trial.Figure 10
The induced estimation error from the EKF (two landmarks and non-Gaussian noise).Table 7
The mean of numerical readings with the EKF (two landmarks and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.5220.5110.2160.037To get the mean value of ten trials, we execute the algorithm ten times and collect all results that are shown in Table8.Table 8
The mean of the trials of the EKF (two landmarks and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.5225.870.6560.5620.2760.4341.370.4723.040.1501.27ey (m)0.5114.150.8380.6090.2590.5780.8630.4433.180.2161.16eθ (deg)0.2166.550.9020.6670.1080.5891.140.2114.190.1101.46Time (sec)0.0370.0400.0230.0270.0250.0360.0280.0260.0250.0250.029 s


## 4.2. Particle Filter

In this part, the particle filter is used to estimate the pose of the WMR. As for the EKF, two different sensors are used.


### 4.2.1. One Landmark

(1) Gaussian Noise. In Figure 11, the green path shows the behaviour of the filtered state, and the red path shows the measured state. It appears clearly that the filter is effective in decreasing the negative effect of the noise.Figure 11
The state of the WMR using the PF with one landmark and Gaussian noise.Figure12 shows the evolution of the three variables with their estimates. It appears that the PF estimator copes with the case of one landmark and Gaussian noise.Figure 12
PF performance with one landmark and Gaussian noise.Figure13 shows the readings for the error estimates for the case of the PF with one landmark and Gaussian noise. For the position estimation, the error is slightly high during the starting of the algorithm, and after that, the errors have decreased. For the last reading (estimation error of the orientation), we can see the variation of this error around 0.010. Table 9 shows the numerical readings for one trial.Figure 13
Localization error with the PF (one landmark and Gaussian noise).Table 9
The mean of the experiments with the PF (one landmark and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0310.0270.0102.77 sFor the Gaussian noise case, to measure the sensitivity of the filter, we run the algorithm ten times, and we take the average of all variables. We remark that in all ten cases, the difference is very small. In Table10 below, we have all the ten-trial readings and the global mean value for each variable.Table 10
The mean of the trials with the PF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0310.0140.0120.0110.0140.0170.0190.0290.0100.0120.016ey (m)0.0270.0190.0140.0170.0120.0170.0120.0150.0170.0280.016eθ (deg)0.0100.0030.0040.0030.0030.0030.0030.0090.0030.0030.004Time (sec)2.772.712.672.672.682.732.772.722.732.722.45 s(2) Non-Gaussian Noise. Figure 14 depicts the simulation results for the case of the PF with one landmark and non-Gaussian noise. It appears a good tracking performance of the estimator for this case.Figure 14
The state of the WMR with the PF (one landmark-non-Gaussian noise).Figure15 illustrates the state variables and their estimates. These results show that the filter is effective in this case in reducing the effect of the noise on the state variable.Figure 15
PF performance with one landmark and non-Gaussian noise.Figure16 shows the readings for error estimates. Here also, the starting error estimate for the position is slightly high, and afterward, it decreases to an acceptable value. The mean of numerical readings ae shown in Table 11.Figure 16
Estimation error for the PF with one landmark and non-Gaussian noise.Table 11
The mean of the estimation errors for the PF (one landmark and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0130.0032.74 sFor the non-Gaussian noise cases to measure the sensitivity of the filter, we run the algorithm ten times, and we get the mean of all variable values. It is noted that in all ten cases, the difference is very small as shown in Table12.Table 12
The mean of different trials with the PF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0200.0160.0140.0100.0110.0100.0180.0120.0090.013ey (m)0.0130.0260.0110.0140.0110.0140.0220.0130.0110.0190.015eθ (deg)0.0030.0080.0040.0040.0020.0020.0040.0050.0030.0090.004Time (sec)2.742.752.752.732.742.752.712.752.752.733.01 s


### 4.2.2. Two Landmarks

(1) Gaussian Noise. Figure 17 shows the variations in the state of the WMR and the estimated of these variables by the PF in the case of two Landmarks and Gaussian noise. The tracking performances are acceptable.Figure 17
PF performance with two landmarks and Gaussian noise.Figure18 shows the readings for the error estimates. For this case, the error position is high at the beginning of the simulation. After that, the errors decrease and evolve around zero. On the other hand, the orientation variation does not converge to zero or around the origin as shown in Table 13.Figure 18
The induced filtering error with the PF (two landmarks and Gaussian noise).Table 13
The mean of the estimation errors of the PF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0200.0140.4953.00 sIn Table14 below, we have all the ten-trial readings and the global mean value for each variable.Table 14
The mean of different trials with the PF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0200.0130.0260.0150.0210.0190.0140.0320.0110.0270.019ey (m)0.0140.0210.0180.0170.0140.0150.0130.0160.0100.0110.014eθ (deg)0.4950.3891.040.7620.5330.5790.2561.070.0110.3440.547Time (sec)3.00s3.053.213.033.033.033.043.053.213.043.06 s(2) Non-Gaussian Noise. Figure 19 shows the variations of the position and the orientation of the WMR and their estimated signals by the PF for the case of two landmarks and non-Gaussian noise. Here also the tracking performances are acceptable.Figure 19
PF performance with two landmarks and non-Gaussian noise.Figure20 shows the reading for error estimates. Here also, we note the same behaviour of the estimator for case two landmarks with Gaussian noise. This means that the estimation performance of the PF is not influenced by the type of distribution of the noise. Table 15 resumes the numerical reading of the errors for one trial.Figure 20
The induced estimation error from the PF (two landmarks and non-Gaussian noise).Table 15
The mean of the PF (two landmarks with non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0100.0100.0033.09 sFigure 21
Simulation results analysis of the EKF.Figure 22
Simulation results analysis of PF.Table16 below shows the results of executing the algorithm ten times.Extended Kalman FilterParticle FilterFigures21 and 22 depict the mean value of a set of trials for each filter. We can see that if the WMR is subject to the Gaussian noise, the EKF achieves acceptable tracking performances since the Kalman filter is built under the assumption of Gaussian noises (state and measurement). Further, the particle filter achieves good performances for both cases of noises (Gaussian and non-Gaussian). Indeed, the particle filter is built for any distribution of the noise signals (state and measurement).On the other hand, the particle filter takes more time for processing than the EKF. This is due to the sampling process. We can note also that the accuracy of the PF can be reduced further when the number of samples is increased and this also will increase the time processing further.Table 16
The mean of ten trials with the PF (two landmarks-non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0100.0150.0150.0110.0100.0120.0110.0200.0120.0140.013ey (m)0.0100.0110.0140.0140.0300.0150.0150.0160.0150.0100.015eθ (deg)0.0030.0040.0070.0030.0040.0030.0050.0110.0040.0010.004Time (sec)3.093.413.083.363.123.093.083.433.093.053.18 s


## 4.2.1. One Landmark

(1) Gaussian Noise. In Figure 11, the green path shows the behaviour of the filtered state, and the red path shows the measured state. It appears clearly that the filter is effective in decreasing the negative effect of the noise.Figure 11
The state of the WMR using the PF with one landmark and Gaussian noise.Figure12 shows the evolution of the three variables with their estimates. It appears that the PF estimator copes with the case of one landmark and Gaussian noise.Figure 12
PF performance with one landmark and Gaussian noise.Figure13 shows the readings for the error estimates for the case of the PF with one landmark and Gaussian noise. For the position estimation, the error is slightly high during the starting of the algorithm, and after that, the errors have decreased. For the last reading (estimation error of the orientation), we can see the variation of this error around 0.010. Table 9 shows the numerical readings for one trial.Figure 13
Localization error with the PF (one landmark and Gaussian noise).Table 9
The mean of the experiments with the PF (one landmark and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0310.0270.0102.77 sFor the Gaussian noise case, to measure the sensitivity of the filter, we run the algorithm ten times, and we take the average of all variables. We remark that in all ten cases, the difference is very small. In Table10 below, we have all the ten-trial readings and the global mean value for each variable.Table 10
The mean of the trials with the PF (one landmark and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0310.0140.0120.0110.0140.0170.0190.0290.0100.0120.016ey (m)0.0270.0190.0140.0170.0120.0170.0120.0150.0170.0280.016eθ (deg)0.0100.0030.0040.0030.0030.0030.0030.0090.0030.0030.004Time (sec)2.772.712.672.672.682.732.772.722.732.722.45 s(2) Non-Gaussian Noise. Figure 14 depicts the simulation results for the case of the PF with one landmark and non-Gaussian noise. It appears a good tracking performance of the estimator for this case.Figure 14
The state of the WMR with the PF (one landmark-non-Gaussian noise).Figure15 illustrates the state variables and their estimates. These results show that the filter is effective in this case in reducing the effect of the noise on the state variable.Figure 15
PF performance with one landmark and non-Gaussian noise.Figure16 shows the readings for error estimates. Here also, the starting error estimate for the position is slightly high, and afterward, it decreases to an acceptable value. The mean of numerical readings ae shown in Table 11.Figure 16
Estimation error for the PF with one landmark and non-Gaussian noise.Table 11
The mean of the estimation errors for the PF (one landmark and non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0130.0130.0032.74 sFor the non-Gaussian noise cases to measure the sensitivity of the filter, we run the algorithm ten times, and we get the mean of all variable values. It is noted that in all ten cases, the difference is very small as shown in Table12.Table 12
The mean of different trials with the PF (one landmark and non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0130.0200.0160.0140.0100.0110.0100.0180.0120.0090.013ey (m)0.0130.0260.0110.0140.0110.0140.0220.0130.0110.0190.015eθ (deg)0.0030.0080.0040.0040.0020.0020.0040.0050.0030.0090.004Time (sec)2.742.752.752.732.742.752.712.752.752.733.01 s


## 4.2.2. Two Landmarks

(1) Gaussian Noise. Figure 17 shows the variations in the state of the WMR and the estimated of these variables by the PF in the case of two Landmarks and Gaussian noise. The tracking performances are acceptable.Figure 17
PF performance with two landmarks and Gaussian noise.Figure18 shows the readings for the error estimates. For this case, the error position is high at the beginning of the simulation. After that, the errors decrease and evolve around zero. On the other hand, the orientation variation does not converge to zero or around the origin as shown in Table 13.Figure 18
The induced filtering error with the PF (two landmarks and Gaussian noise).Table 13
The mean of the estimation errors of the PF (two landmarks and Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0200.0140.4953.00 sIn Table14 below, we have all the ten-trial readings and the global mean value for each variable.Table 14
The mean of different trials with the PF (two landmarks and Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0200.0130.0260.0150.0210.0190.0140.0320.0110.0270.019ey (m)0.0140.0210.0180.0170.0140.0150.0130.0160.0100.0110.014eθ (deg)0.4950.3891.040.7620.5330.5790.2561.070.0110.3440.547Time (sec)3.00s3.053.213.033.033.033.043.053.213.043.06 s(2) Non-Gaussian Noise. Figure 19 shows the variations of the position and the orientation of the WMR and their estimated signals by the PF for the case of two landmarks and non-Gaussian noise. Here also the tracking performances are acceptable.Figure 19
PF performance with two landmarks and non-Gaussian noise.Figure20 shows the reading for error estimates. Here also, we note the same behaviour of the estimator for case two landmarks with Gaussian noise. This means that the estimation performance of the PF is not influenced by the type of distribution of the noise. Table 15 resumes the numerical reading of the errors for one trial.Figure 20
The induced estimation error from the PF (two landmarks and non-Gaussian noise).Table 15
The mean of the PF (two landmarks with non-Gaussian noise).
ex (m)ey (m)eθ (deg)Time (sec)0.0100.0100.0033.09 sFigure 21
Simulation results analysis of the EKF.Figure 22
Simulation results analysis of PF.Table16 below shows the results of executing the algorithm ten times.Extended Kalman FilterParticle FilterFigures21 and 22 depict the mean value of a set of trials for each filter. We can see that if the WMR is subject to the Gaussian noise, the EKF achieves acceptable tracking performances since the Kalman filter is built under the assumption of Gaussian noises (state and measurement). Further, the particle filter achieves good performances for both cases of noises (Gaussian and non-Gaussian). Indeed, the particle filter is built for any distribution of the noise signals (state and measurement).On the other hand, the particle filter takes more time for processing than the EKF. This is due to the sampling process. We can note also that the accuracy of the PF can be reduced further when the number of samples is increased and this also will increase the time processing further.Table 16
The mean of ten trials with the PF (two landmarks-non-Gaussian noise).
TrialsT1T2T3T4T5T6T7T8T9T10Meanex (m)0.0100.0150.0150.0110.0100.0120.0110.0200.0120.0140.013ey (m)0.0100.0110.0140.0140.0300.0150.0150.0160.0150.0100.015eθ (deg)0.0030.0040.0070.0030.0040.0030.0050.0110.0040.0010.004Time (sec)3.093.413.083.363.123.093.083.433.093.053.18 s


## 4.3. The Performance Metric

Performance evaluation of the estimation algorithms utilizes different criteria. These criteria depend on the type of evaluation (performance optimization, estimation, and analysis). Since the filtering problem developed in this work is data-dependent, its estimation performance is random which needs to evaluate in the statistical sense. There are many criteria used in the literature to evaluate the estimation performance based on the norm or distance between the teal vector and its estimate. In the literature, we can find the following criteria:(i)
MSE (mean square error)(ii)
MMSE (minimum mean square error)(iii)
RMSE (root mean square error)(iv)
MAE (mean absolute value)In this work, the AEE (average Euclidian error) is adopted for the evaluation of the estimator. AEE criterion uses the concept of the Euclidian distance, and it is defined as the length of curve segments between two points in Euclidian space [20]:(12)AEEX˜=1M∑i=1MX˜i=1M∑i=1MX˜iTX˜i1/2,where X˜i=Xi−X^i denotes the estimation error, Xi is the unknown, and X^i is its estimate. In this work, we will proceed as follows.For eachjth trial, the mean error is calculated as μj=1/N∑i=1Nei,fori=1,…,N, where μj∈ℜ3×1is the mean,ei=Xi−X^i∈ℜ3×1 is the state estimation error, Xi is the position and the orientation of the mobile robot at iteration i, and Xi is its estimate. N is the number of iterations during the jth trial or run.ForM (in our case M = 10) random runs or experiments, the average Euclidian error of the estimator is(13)AEEEst.Error=1M∑j=1Mμj=1M∑j=1MμjTμj1/2.The smaller the AEE, the more accurate the estimator.


### 4.3.1. The Evaluated Cases

Case 1.
One Landmark
In this case, the AEE value for each set of simulations is given in Table17.Table 17
AEE for one landmark.
AEEGaussian noiseNon-Gaussian noiseEKF0.13848.38PF0.0250.020Here, PF outperforms the EKF in the estimation of the position and orientation of a WMR for the Gaussian noise in contrast to the non-Gaussian.Case 2.
Two Landmarks
In this case, the AEE for a set of trials is given in Table18.Table 18
AEE for two landmarks.
AEEGaussian noiseNon-Gaussian noiseEKF0.0292.32PF0.0540.020


## 4.3.1. The Evaluated Cases

Case 1.
One Landmark
In this case, the AEE value for each set of simulations is given in Table17.Table 17
AEE for one landmark.
AEEGaussian noiseNon-Gaussian noiseEKF0.13848.38PF0.0250.020Here, PF outperforms the EKF in the estimation of the position and orientation of a WMR for the Gaussian noise in contrast to the non-Gaussian.Case 2.
Two Landmarks
In this case, the AEE for a set of trials is given in Table18.Table 18
AEE for two landmarks.
AEEGaussian noiseNon-Gaussian noiseEKF0.0292.32PF0.0540.020


## 5. Conclusion

Mobile robot navigation has received the greatest research attention for many years. The success of the safe navigation task depends closely on the localization accuracy. Therefore, many methods of localization have been developed significantly because of the need to find accurate solutions to determine the position and orientation of the WMR in a given environment.This work focuses on the comparative study of the most used filters for the localization of mobile robots. Hence, for this comparison, we have chosen two nonlinear filters: the first one is the EKF and the second is the particle filter. Both filters have been implemented using different types of noises and two different sensors.The simulation results showed that the particle filter achieves better estimation accuracy in both cases (Gaussian and non-Gaussian noise). However, the algorithm takes more time to process with regard to the EKF. While with the EKF, the best performances are obtained when the WMR is subject to Gaussian noise. We have to note that the accuracy may be improved by using the modified particle filter [24].In the future, the work will focus on real-time implementation of these estimators.



---

*Source: 1999082-2022-06-02.xml*