Hybrid Filter Based Simultaneous Localization and Mapping For A Mobile Robot
Hybrid Filter Based Simultaneous Localization and Mapping For A Mobile Robot
Hybrid Filter Based Simultaneous Localization and Mapping For A Mobile Robot
Keywords: SLAM, Hybrid filter, Neural networks, EFK, Mobile robot, RBF
algorithm.
1 Introduction
Research efforts on mobile robotics have mainly focused on topics such as autono-
mous navigation, path planning, map-building, etc. [1]. Currently SLAM is one of the
most widely researched major subfields of mobile robotics. It is a relatively new sub-
field of robotics. In order to solve SLAM problems, statistical approaches such as
Bayesian Filters have received widespread acceptance. Some of the most popular
approaches for SLAM include using a Kalman filter (KF), an extended Kalman filter
(EKF), and a particle filter [2]-[4]. The earliest SLAM algorithm was based on the
extended Kalman filter. This algorithm has been applied with some success in prac-
tice. As any EKF algorithm, EKF-SLAM makes a Gaussian noise assumption for
robot motion and perception. In addition, the amount of uncertainty in the posterior of
the EKF SLAM algorithm must be relatively small; otherwise, the linearization in the
EKFs tends to introduce intolerable errors. Differently from the EKF, the main objec-
tive of particle filtering is to track a variable of interest as it evolves over time, typi-
cally with a non-Gaussian and potentially a multi-modal probability density function
(PDF). The introduction of particle filters gave researchers the power and flexibility
to handle nonlinearity and non-Gaussian distributions routinely. The basis of the
W. Yu, H. He, and N. Zhang (Eds.): ISNN 2009, Part III, LNCS 5553, pp. 257–266, 2009.
© Springer-Verlag Berlin Heidelberg 2009
258 K.-S. Choi, B.-K. Song, and S.-G. Lee
In this paper, we describe our use of two types of neural networks: the Multi Layer
Perceptrons Algorithm (MLP) and the Radial Basis Function Algorithm (RBF). The
MLP, having hidden layers with one or more input and output nodes, is a typical feed-
forward neural network model used as a universal approximator [10]-[12]. Output
signals are generated through the homogeneously nonlinear function after summing
signal values for each of the input nodes [8]. In this process, signals are multiplied by
weights and added by bias values. The RBF network uses radial basis functions as
activation functions for function approximation, control, etc. RBF networks typically
have three layers: an input layer, a hidden layer with a nonlinear RBF activation func-
tion, and a linear output layer. Network training is divided into two stages: First,
the weights from the input to the hidden layer are determined; then, the weights from
the hidden to the output layer are determined. The results can be used to simulate the
nonlinear relationship between the sensors' measurements with errors and the ideal
output values by using the least squares method [5][9].
2.2 EKF-SLAM
A solution to the SLAM problem using an EKF, with many interesting theoretical
advantages, is probably described the most in research literature. This is despite the
recently reported inconsistency of its estimation because it is a heuristic for the
nonlinear filtering problem. Associated with the EKF is the Gaussian noise assump-
tion. This assumption significantly impairs the EKF SLAM’s ability to deal with
uncertainty. With a greater amount of uncertainty in the posterior, the linearization in
Hybrid Filter Based Simultaneous Localization and Mapping for a Mobile Robot 259
the EKF fails. An EKF based on a Bayes filter has two steps, prediction and update,
for SLAM using the measured sensor data of a mobile robot [10][13][14].
⎛v ⎞
u t = ⎜⎜ t ⎟⎟ (3)
⎝ωt ⎠
For the Taylor expansion of function g , we use its partial derivative as shown in
Eq.(4).
260 K.-S. Choi, B.-K. Song, and S.-G. Lee
∂g ( x t −1 , u t )
g' ( x t −1 , u t ) = (4)
∂x t −1
g is approximated at μ t −1 and u t . The linear extrapolation is achieved by using the
gradient of g at μ t −1 and ut .
g ( x t −1 , u t ) ≈ g ( μ t −1 , u t ) + g' ( μ t -1 , u t )( x t −1 − μ t -1 )
(5)
= g ( μ t −1 , u t ) + G t ( x t −1 − μ t -1 )
G t , a Jacobian, is a matrix with dimension n × n, where n denotes the dimension of
the state. It has a different value at each μ t −1 and ut .
∂g ( μ t −1 , ut ) (6)
Gt =
∂xt −1
We applied the NN algorithm to the observation step of the EKF-SLAM to lessen the
error of the mobile robot’s pose. The prior mean μ t and covariance Σ t have the form of
μ t = g ( xt −1 , u t ) (10)
Σ t = G x ,t Σ t −1G T
x ,t + Rt (11)
The motion model requires motion noise to be mapped into state space. The Jaco-
bian needed for the approximation, denoted as Vt , is the derivative of the motion
function g , with respect to the motion parameters, evaluated at μ t −1 and u t .
∂g ( μ t −1 , u t )
Vt = (12)
∂u t
To derive the covariance of the additional motion noise, N (0, Rt ) , we need to
know the covariance matrix M t of the noise in control space. In addition, we can
represent the motion noise Rt by multiplying the Jacobian Vt and the covariance ma-
trix M t of the noise in control space.
⎛ α v 2 + α 2ωt2 0 ⎞
M t = ⎜⎜ 1 t ⎟
2⎟ (13)
⎝ 0 α 3 vt + α 4ω t ⎠
2
Rt = Vt M t V t T (14)
To derive the Kalman gain K t , we confirm measurement noise covariances and the
measurement model z ti for feature-based maps. Let j = c ti be the identity of the
landmark that corresponds to the i-th component in the measurement vector. c ti is a
set of correspondence variables that is the true identity of an observed feature.
⎛ rti ⎞
⎜ ⎟
z = ⎜ φ ti ⎟ = h( xt , j , m) + N (0, Qt )
i
t (15)
⎜⎜ i ⎟⎟
⎝ st ⎠
∂h ( μ t , j , m )
H ti = (16)
∂x t
Using the covariance Qt , a diagonal matrix with elements of z ti , the Kalman gain
has the form of Eq. (17).
K = Σ H T ( H Σ H T + Q ) −1 (17)
t t x ,t x t x ,t t
In the update step, the mean μ t and the covariance Σ t of the measurement are updated
in terms of the prior mean μ t and the prior covariance Σ t .
262 K.-S. Choi, B.-K. Song, and S.-G. Lee
μ t = μ t + K t ( z t − h( xt −1 )) (18)
Σ t = ( I − K t H x ,t ) Σ t (19)
To apply a NN, we divide the mean values of the measurement into each component,
x R , y R , θ R , and the input NN (MLP and RBF) algorithm. In a MLP with two hidden
layers, we assume it to have no bias. Eq. (22) describes a component such as xt0 = x R , t
x =y
1
t t
R
and x = θ
t
2
t
R
where j, k, l are the numbers of a layer’s node, respectively.
P −1 P −1 L −1 P −1 L −1 M −1
ytl = ξ (∑ wtklϕ tk ' ) = ξ (∑ wtklξ (∑ wtjk ϕ t j )) = ξ (∑ wtklξ (∑ wtjk ξ ( ∑ wtij xti )))
l =0 l =0 j =0 l =0 j =0 i =0 (20)
(0 ≤ j ≤ 6 , 0 ≤ k ≤ 6, 0 ≤ l ≤ 2)
In the simulation using the second algorithm based on a RBF with 25 neurons, xt is
a n-dimensional input vector and c i is the center of the i-th basis function with the
same dimension of the input vector xt . In addition, we have some kinds of elements
such as, σ i : the width of the basis function, N : the number of hidden layers, xti − c i :
the norm of xti − c i representing the distance between x and c i , and ϕ i ( x) : the re-
sponse of the i-th basis function of the input vector with a maximum value at c i .
2
N −1 N −1 xti − c i
y ti = ξ ( ∑ ϕ ti ( xti )) = ξ ( ∑ exp( ) (0 ≤ N ≤ 25)) (21)
i =0 i =0 2(σ i ) 2
Finally, we can substitute the derived result y ri for the measurement μ t . The above
5 steps are repeated until the end of the mobile robot's exploration.
μ t = y ti ( x R = y t0 , y R = y t1 ,θ R = y t2 ) (22)
The amount of uncertainty in the posterior must be relatively small; otherwise, the
linearization in the EKFs tends to introduce intolerable errors. Fig. 3(a) shows both
the desired and EKF-based navigation trajectories of the mobile robot. The solid and
dotted lines depict the reference and actual trajectories, respectively. The ellipse de-
scribes the estimated covariance of the mobile robot and features by the EKF. The
plus (+) features are true and estimated features.
(a) The navigation error using the EKF-SLAM (b) The x-axis error using the EKF-SLAM
(c) The y-axis error using the EKF-SLAM (d) The θ error using the EKF-SLAM
The trajectory error of the EKF based simulation results mainly from the system
errors and observation errors during the navigation of 1,433 time steps.
To enhance trajectory accuracy, we adopted a MLP with 3 inputs and outputs' nodes
and 2 hidden layers with 7 nodes as a prior stage of the EKF. Each hidden layer has a
sigmoid function. Fig. 4 shows navigation errors of the parameters of the hybrid
filter-SLAM (MLP-EKF and RBF- SLAM). The MLP-EKF and RBF-EKF based
simulation results show very similar performance in the x-axis and y-axis behavior.
The latter results in better performance than the former in θ as shown in Fig. 4. In the
RBF-EKF simulation, we used the same mean squared error of 0.001 as in the
MLP-EKF.
264 K.-S. Choi, B.-K. Song, and S.-G. Lee
In general, both the MLP-EKF and RBF-EKF based SLAM reduce estimation
errors as compared with the EKF SLAM. However, the training time in a neural
network may result in some problems practically in real time operation. The training
time in the RBF-SLAM is shorter than that in the MLP-SLAM and similar to the
EKF-SLAM case.
(a) The x-axis error using the MLP-EKF (b) The x-axis error using the RBF-EKF
(c) The y-axis error using the MLP-EKF (d) The y-axis error using the RBF-EKF
(e) The θ error using the MLP-EKF (f) The θ error using the RBF-EKF
Fig. 4. Navigation errors in the parameters of the hybrid filter-SLAM (MLP-EKF and RBF-
SLAM)
Fig. 5 shows simulation errors using the EKF, the MLP-EKF, and the RBF-EKF
SLAMs. In Fig. 5(c), the RBF-EKF SLAM results in the smallest error in the heading
error θ among the three methods.
Hybrid Filter Based Simultaneous Localization and Mapping for a Mobile Robot 265
5 Conclusions
The SLAM problem is of fundamental importance in the quest for autonomous mo-
bile robots since the robot keeps track of its location by maintaining a map of the
physical environment and an estimate of its position on that map. In this paper, we
propose hybrid filter-SLAMs, such as the MLP-SLAM and the RBF-SLAM of a mo-
bile robot, to make up for the EKF-SLAM error inherently caused by its linearization
process and noise assumption.
The proposed algorithm consists of two steps: the Neural Network and the extended
Kalman Filter algorithm. The simulation results show the efficiency of the proposed
algorithm as compared with the EKF-SLAM in terms of parameters such as x, y, and .
According to the simulation results, the RBF-SLAM shows the best performance in
terms of trajectory error. For the real time realization of the proposed system, re-
search on various training conditions and structures of neural networks, etc., is un-
derway in our laboratory.
References
1. Kim, J.M., Kim, Y.T., Kim, S.S.: An Accurate Localization for Mobile Robot Using Ex-
tended Kalman Filter and Sensor Fusion. In: IEEE International Joint Conference on Neu-
ral Networks, pp. 2928–2933 (2008)
266 K.-S. Choi, B.-K. Song, and S.-G. Lee
2. Panzieri, S., Pascucci, R., Setola, R.: Multirobot Localization Using Interlaced Extended
Kalman Filter. In: IEEE/RSJ International Conference on Intelligent Robots and Systems,
pp. 2816–2821 (2006)
3. Lee, S.J., Lim, J.H., Cho, D.W.: EKF Localization and Mapping by Using Consistent So-
nar Feature with Given Minimum Features. In: SICE-ICASE International Joint Confer-
ence, pp. 2606–2611 (2006)
4. Harb, M., Abielmona, R., Naji, K., Petriul, E.: Neural Networks for Environmental Recog-
nition and Navigation of a Mobile Robot. In: IEEE International Instrumentation and
Measurement Technology Conference, pp. 1123–1128 (2008)
5. Zu, L., Wang, H.K., Yue, F.: Artificial Neural Networks for Mobile Robot Acquiring
Heading Angle. In: Proceedings of the Third Intemational Conference on Machine Laming
and Cybemetics, pp. 26–29 (2004)
6. Bugeja, M.K., Fabri, S.G.: Multilayer Perceptron Adaptive Dynamic Control for Trajec-
tory Tracking of Mobile Robots. In: IEEE Industrial Electronics Annual Conference, pp.
3798–3803 (2006)
7. Choi, M.Y., Sakthivel, R., Chung, W.K.: Neural Network-Aided Extended Kalman Filter
for SLAM Problem. In: IEEE International Conference on Robotics and Automation, pp.
1686–1690 (2007)
8. Jang, P.S.: Neural Network Based Position Tracking Control of Mobile Robot. Chungnam
National University, M.S These, pp. 13–37 (2003)
9. Oh, C.M.: Control of Mobile Robots Using RBF Network. Korea Advanced Institute of
Science and Technology, M.S These, pp. 4–19 (2003)
10. Stubberud, S.C., Lobbia, R.N., Owen, M.: An Adaptive Extended Kalman Filter Using Ar-
tificial Neural Networks. In: Proceedings of the 34th Conference on Decision & Control,
pp. 1852–1856 (1995)
11. Mehra, P., Wah, B.W.: Artificial Neural Networks: Concepts and Theory, pp. 13–31. IEEE
Computer Society Press, Los Alamitos (1992)
12. Iiguni, Y., Sakai, H., Tokumaru, H.: A Real-Time Learning Algorithm for a Multilayered
Neural Network Based on the Extended Kalman Filter. IEEE Transactions on Signal Proc-
essing 40(4), 959–966 (1992)
13. Thrun, S., Burgard, W., Fox, D.: Probabilistic Robotics, pp. 309–334. The MIT Press,
London (2005)
14. Bailey, T., Nieto, J., Guivant, J., Stevens, M., Nebot, E.: Consistency of the EKF-SLAM
Algorithm. In: IEEE International Conference on Intelligent Robotics and Systems, pp.
3562–3568 (2006)