Abstract
Keywords
Introduction
The simultaneous localization and map building (SLAM) or concurrent mapping and localization (CML) is the problem of robotic mapping. Mobile robot starts from an unknown location in an unknown environment and then incrementally builds a map of this environment while simultaneously using this map to compute robot location. A number of approaches (Durrant-whyte, H. & Bailey, T., 2006) have been proposed to address the SLAM problem. One solution is filter estimation approach based on Extended Kalman Filter (EKF), proposed by Smith, Self and Cheesman (Smith, R.; Self, M. & Cheeseman, P., 1990; Smith, R. & Cheeseman, P., 1986), who developed an EKF approach for building a stochastic map of spatial relationships. The Kalman Filter is optimal in the sense that it yields a least square estimation. The difficult problem is maintaining the covariance matrix which is quadratic in size with respect to the number of features. Compressed extended Kalman filter (CEKF) (Guivant, J. & Nebot, E., 2003), Extended Information filter (EIF) (Thrun, S.; Liu, Y.; Koller, D.; Ghahramani, Z. & Durrant-Whyte, H., 2004) and Square Root Unscented Kalman filter (SRUKF) (Holmes, S.; Klein G. & Murray, D., 2008) are three modified version of EKF. Another solution is Bayesian estimate approach that does not assume Gaussian probability distributions. Particle filter (Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B., 2002, Kwok, N. & Rad, A., 2006), especial Rao-Blackwellized particle filters (Blanco, J.; Fernández-Madrigal, J. & Gonzalez, J., 2008, Grisetti, G.; Tipaldi, G.; Stachniss, C.; Burgard, W. & Nardi, D., 2007, Li, M.; Hong B. & Luo, R., 2006) have been introduced to solve the simultaneous localization and map building problem. Expectation maximization (EM) (Thrun, S.; Fox, D. & Burgard, W., 1998) describes the map building problem as a constrained maximum-likelihood (ML) probabilistic estimation problem with E-step and M-step.
In addition, other solutions include RatSLAM (Milford, M., Schulz, R., Prasser, D., Wyeth, G. and Wiles, J., 2007) and fuzzy logic (FL) (Begum, M.; Mann, K. & Gosine, R., 2008). RatSLAM is a SLAM solution based a hippocampal model. The spatial representation is an experience map as the robot learns the environment. FL solution solves SLAM problem by integrating fuzzy logic and genetic algorithm. A GA model is used to search for the most probable map.
The full covariance SLAM solution based on EKF requires that the system state vector consists of the states of robot and the states of all landmarks in the map. Robot location and map estimation are highly correlated and cannot be obtained independently (Castellanos, J.; Tardos, J. & Schmidt, G., 1997). A full covariance SLAM solution is defined in (Dissanayake, G.; Newman, P.; Clark, S. Durrant-Whyte H. & Csorba, M., 2001). The full covariance matrix needs to be maintained and updated following each observation. Due to the high computational complexity of full SLAM solution, many methods for reducing the computational requirements have been proposed.
The first work is concentrated on fewer landmarks. The computational complexity is decreased by limiting the number of landmarks (Dissanayake, G.; Durrant-Whyte, H. & Bailey, T., 2000). Durrant-whyte (Durrant-Whyte, H.; Dissanayake, G. & Gibbens, P., 2000) presented a method for choosing the best landmark in the environment while maintaining the SLAM algorithm as convergent and consistent as possible. Dissanayake (Dissanayake, G.; Williams, S.; Durrant-Whyte, H. & Bailey, T., 2002) presented a method for removing a large percentage of the landmarks from the map without making the map statistically inconsistent.
The second work is concentrated on applying approximation technique for the state covariance matrix updating. These approximation SLAM solutions (Guivant, J. & Nebot, E., 2001) assume that the correlations between landmarks could be minimized or eliminated. The covariance matrix is updated based on different simplification. Covariance Intersect (CI) (Julier, S. & Uhlmann, J., 2007) only considers the diagonal elements of covariance matrix.
The third work is concentrated on alternative map representations. One is relative map (Wang, Z.; Huang, S. & Dissanayake, G., 2005, Deans, M. & Hebert, M., 2000). Relative map features are invariant to robot location. It avoids the computational scaling problem occurring in absolute map estimation. Another is submaps (Leonard, J. & Feder, H., 2001, Williams, S.; Dissanayake, G. & Durrant-Whyte, H., 2002). A large map is divided into a series of smaller submaps in order to reduce the computational complexity of covariance matrix update.
In this paper, by reorganizing the state vector of mobile robot and by selecting properly the observation vector, the system models are linear. System models and system covariance matrix can be represented with two special matrices respectively. An optimization solution is proposed based on this property. The computational requirement and memory requirement are decreased by half. The covariance matrix is fully updated without any approximation, hence the proposed solution is consistent and convergent theoretically and realistically.
An outline of this paper is as follows. Section 2 introduces the full covariance SLAM solution based on EKF. In Section 3 we describe the modified system state vector and system models. In Section 4 two special matrices are defined. In Section 5 an optimization SLAM solution is represented based on modified system state and system models. Experimental results are presented in Section 6. We conclude in Section 7.
Full SLAM solution
In the estimation theoretic formulation of the SLAM problem, Kalman filter is used to provide estimates of robot location and all landmarks location. The location prediction of robot is according to the motion model. The observation prediction is according to the observation model. The locations of robot and all landmarks in the map are updated according to updated rules. The location of new landmark is augmented according to the augmentation model. The Kalman filter recursively estimate the states of robot and all landmarks. The covariance matrix is updated recursively.
State Space and System Models
The augmented state vector X(k) consists of the state of the robot together with the state of landmarks.
And the system covariance matrix is:
The robot motion model, landmark process model, observation model and augmentation model are:
Where ω(k)∼
SLAM algorithm process localization and mapping problem in three steps: prediction, update and augmentation. At each step, the system state vector and covariance matrix are updated.
According to above system motion model, the state of robot and landmarks are predicted. The state vector and covariance matrix are predicted as:
Where X++, P++ denotes the posterior estimation after augmentation and X−, P− denotes the prior estimation with respect to each observation.
With data association, the difference between real observation and observation prediction of a landmark is called innovation. Innovation and innovation covariance is computed as follows:
The system state vector and covariance matrix are updated according to following update rules:
Where X+ denotes the posterior estimation before augmentation and X− denotes the prior estimation.
The update of the state covariance matrix is of paramount importance to the SLAM problem. It is the key to the consistence and convergence of SLAM filter algorithm. Although it requires considerable computational cost, it is necessary to completely maintain and update the covariance matrix recursively.
When a new landmark is observed and validated, the state of new landmark is incorporated into the system state vector according to augmentation model. The system state vector and covariance matrix are augmented as:
From step k-1 to step k, system state mean, including the location of robot and locations of all landmarks, and their covariance are estimated recursively.
Mobile robot starts from an unknown location and moves through an environment containing a population of features or landmarks. Robot is equipped with an odometer and a laser rangefinder. The data from the odometer is used to predict the position of robot. Laser rangefinder scans environment information and extracts natural landmark to update the location of robot and all landmarks. We assume that the mobile robot moves on a ground plane. There is a global coordinates system XWOWYW. Another is robot's local coordinates system that is represented with XLOLYL. It is shown in Fig.1.

State space
In classical SLAM solution, the state of robot includes the position and heading of robot. The augmented state vector consists of the state (xv, yv, θv) of robot and the state (xi, yi) of each landmark. In this paper, we do not represent directly the position and heading of robot. The state of robot is represented indirectly with (xv, yv, xs, ys). (xv, yv) is the position of robot and (xs, ys) is the position of laser rangefinder. The state of landmark is represented with (xi, yi). Additionally, all x-coordinates are grouped into
Where XV, XS and Xi (i=1,2…N) are the position estimation of robot, laser rangefinder and landmark respectively. The covariance matrix is defined as:
Based on the estimation XV and XS, the heading of robot is computed as:
Where LL is the distance from Laser rangefinder to the center of robot as shown in Fig.1.
It is assumed that the robot moves along a circular arc at each step. It is shown in Fig.2. The state transition of robot is based on odometer information. Date from odometer is Uk = (Dk, γk) at step k. Dk is the distance traveled along the arc and γk is the change of heading direction. Rk = Dk /γk is the radius of arc. It is assumed that all considering landmark are static. The system state transition is:

Motion model
Where ω(k) is the uncertainty on odometer modeling and slipping. It is represented with a white noise vector with zero mean and covariance Q. Matrix Fk only depends on the input vector and is uncorrelated with current system state estimation. So, system motion model is linear.
Mobile robot is equipped with a laser rangefinder. Laser rangefinder scans environmental information, extracts environmental landmark feature and compute the local coordinates (xL, yL) of landmark. It is then translated into global coordinates (xG, yG) based on current system state estimation. With data association technique, this observed landmark is associated with
Where
After a new landmark is observed and valided, its global coordinate is augmented into the system state vector. Based on its local coordinates (xL, yL) and current system state estimation, its global coordinates (xG, yG) is computed as:
Where
In this paper, two special matrices are used. They are defined as follows:
Definition 1
block matrix can be represented as:
Blocks on diagonal are two same submatrix and blocks under diagonal are two opposite submatrix.
Definition 2
if matrix fulfils definition 1. Block A1 is a symmetrical square submatrix and A2 is an anti-symmetrical square submatrix.
Let Ω is the matrix set that fulfils definition 1. Let
Theorem 1
if matrix A and B can be represented as definition 1, then AB can be represented as definition 1. That is:
Theorem 2
if matrix A can be represented as definition 1, then its transpose matrix can be represented as definition 1. That is:
Theorem 3
if matrix A can be represented as definition 2, then its inverse can be represented as definition 2. That is:
Theorem 4
if matrix A can be represented as definition 1 and matrix B can be represented as definition 2, then ABAT can be represented as definition 2. That is:
Theorem 5
if matrix A and B can be represented as definition 1, then A±B can be represented as definition 1. That is:
Theorem 6
if matrix A and B can be represented as definition 2, then A±B can be represented as definition 2. That is:
According above matrix definition, the modified system motion model Fk, the modified system observation model Hk and the modified system augmentation model Gk can be represented as definition 1:
Based on the properties of two special matrices, if the initial covariance matrix can be represented as definition 2. That is:
the covariance matrix can still be represented as definition 2 after prediction, update and augmentation.
The higher dimensional system models and covariance matrix can be represented with lower dimensional submatrix. With this property, an optimization SLAM solution is proposed. The computational requirement and memory requirement can be decreased at least by half.
With above system motion model, the states of robot and landmarks are predicted. The state vector and covariance matrix are predicted as:
Where X++, P++ denotes the posterior estimation after augmentation and X−, P− denotes the prior estimation with respect to each observation.
According to theorem 1, 2, 4 and 6, if the posterior covariance estimation after augmentation
With data association, the difference between real observation and observation prediction is called innovation. In this paper, the real observation vector Z is a zero vector. Obserbation prediction is computed based on system observation model. Innovation, innovation covariance and kalman Gain are computed as follows:
According to theorem 1, 2, 3, 4 and 6, if the prior covariance estimation
The system state vector and covariance matrix are updated according to following update rules:
According to theorem 1, 2, 4 and 6, if prior covariance estimation
When a new landmark is observed and validated, the global coordinates of new landmark is incorporated into the system vector according to augmentation model. Covariance matrix before augmentation is denoted as P+(k) and covariance matrix after augmentation is denoted as P++(k).
Firstly, there are two matrices:
Because matrix N is a 2×2 symmetrical matrix and
The system state vector and covariance matrix are augmented as:
Let
From step k-1 to step k, system state mean and covariance are estimated recursively. After prediction, update and augmentation, covariance matrix can still be represented as definition 2. The system models and covariance matrix are represented with two lower dimensional submatrix, therefore the computational requirement and memory requirement can be decreased. The covariance matrix is fully updated without any approximation at each step, so the algorighm is consistent and convergent theoretically.
In this section, we demonstrate the experimental results of proposed simultaneous localization and map building solution with mobile robot ATRVII. Robot moves around our lab, extracts natural landmarks and build incrementally environment map.
Corner points extracted from data of rangfinder are used as the environmental landmark features. There are 36 corner points. At each step, the traveling distance of robot ranges form 100 (unit: mm, the same below) to 3000 and observation distance ranges form 500 to 4000. In covariance matrix Q of dynamic noise, the items corresponding to xV, xS, yV, yS are set as: σXV=30, σXS=30, σYV=30, σYS=30. The other items are all zero. In covariance matrix R of measurement noise, the items corresponding to xi, yi are set as: σxi=20, σyi=20.
Fig. 3 shows the estimated position errors of robot with σ uncertainty. Fig. 4 shows σ bounds of robot position uncertainty. It is compared with full SLAM solution. Experimental results show that this SLAM solution is consistent and convergent realistically.

Error and σ bounds of robot position estimation

σ bounds of robot position estimation (solid line for optimization solution and dashed line for full solution)
Kalman filter is an efficient sulution to simultaneous localization and map building. A number of sub-optimal solutions to SLAM reduce computational complexity with approximation techniques. However, there is not theoretical foundation for consistence and convergence of algorithm. Computational efficiency increases at the cost of decreasing consistence and convergence.
In this paper, by representing indirectly the state of robot and by selecting properly observation vector, the motion model, observation model and augmentation model are represented as a kind of special matrix. The covariance matrix is represented as another kind of special matrix. The higher dimensional system models and covariance matrix are represented with two lower dimensional submatrices. The computational requirement and memory requirement are decreased at least by half. Since the covariance matrix is fully updated without any approximation during estimation, the proposed solution is consistent and convergent theoretically and realistically. It fulfils the 3C (Consistency, Convergence, Computational efficiency) requirement of SLAM algorithm. Because the system models are all linear, the result of optimization solution is more conservative comparing with the full covariance SLAM solution.
