# Multirobot FastSLAM Algorithm Based on Landmark Consistency Correction

Authors: Shi-Ming Chen; Jun-Feng Yuan; Fang Zhang; Hua-Jing Fang
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

Considering the influence of uncertain map information on multirobot SLAM problem, a multirobot FastSLAM algorithm based on landmark consistency correction is proposed. Firstly, electromagnetism-like mechanism is introduced to the resampling procedure in single-robot FastSLAM, where we assume that each sampling particle is looked at as a charged electron and attraction-repulsion mechanism in electromagnetism field is used to simulate interactive force between the particles to improve the distribution of particles. Secondly, when multiple robots observe the same landmarks, every robot is regarded as one node and Kalman-Consensus Filter is proposed to update landmark information, which further improves the accuracy of localization and mapping. Finally, the simulation results show that the algorithm is suitable and effective.


---

## Body

## 1. Introduction

Simultaneous localization and map building (SLAM) problem considers the situation in which an autonomous mobile robot moves through an unknown environment and incrementally builds a map of this space while simultaneously making use of this map to refresh its absolute location [1–3]; SLAM algorithm is deemed to be the key factor of the real sense of the mobile robot in autonomous navigation. Compared with single-robot SLAM, multirobot SLAM algorithm can not only get more accurate and faster environmental information but also have better self-positioning ability, which is mainly reflected in two aspects: (
1
) the multirobot can cover the entire environment faster via communication and coordination in parallel; explore [4]; (
2
) the localization and mapping errors can be reduced through integrating measurement and navigation information of multiple robots [5]. In recent years, research on multirobot SLAM has drawn more and more attention, and it gradually becomes a hot issue in robot field [6, 7].At present, the existing approaches for multirobot SLAM mainly focus on expanding the single-robot SLAM algorithm to the multirobot case. Huang et al. [8] study the consistent fusion of multirobot relative measurements based on Extended Kalman Filtering (EKF); they employ the method in which multirobots jointly maintain the state of global map and its covariance matrix and use consistency protocol to fuse multirobot measurements information for the global update. However, system linearization error and high complexity are the biggest drawbacks of this kind of algorithm based on EKF; Yuan et al. [9] introduce a way about local submap, in which robots build their maps independent of each other and then get the global map by EKF traverse map fusion; Howard [10] proposes an effective online MCSLAM algorithm, which extends the Blackwellised particle filter, and multirobots share measurement information with each other for collaborative SLAM. However, the algorithm has no matching fusion for local map when two robots meet but rather employs the process of time reverse to share information about the history of measurements after robots encounters, which makes the global map update delay and reduces the efficiency of building map due to the same measurement and motion control information reused by multirobot SLAM process. Cai et al. [11] adopt auxiliary robot to provide the leader robot with measurement and put forward an online multirobot FastSLAM algorithm based on auxiliary measurements, which can improve the accuracy of localization and mapping about lead robot, but the SLAM problem of auxiliary robot cannot be solved. Gil et al. [12] and Lee et al. [13] study multirobot SLAM algorithm based on particle filter; they consider the uncertainty of localization, but no attention is paid to uncertainty of map information.Considering uncertainty of the map information, this paper presents a new multirobot FastSLAM algorithm based on landmark consistency correction (MBLCC-FastSLAM). Firstly, electromagnetism-like mechanism is introduced to resampling procedure in single-robot FastSLAM; attraction-repulsion mechanism in electromagnetism field is used to simulate interactive force between particles, where attractions drive the particles approach to high likelihood region; moreover, repulsions drive the particles separate from each other and maintain a certain distance in moving process to assure diversity. Then, when multiple robots observe the same landmarks, every robot is regarded as one node and Kalman-Consensus Filter (KCF) is used to update landmark location, which further improves the accuracy of localization and mapping.


## 2. Problem Statement

Suppose the prediction and measurement model of robot system at timek are represented by prior probability function p
(
x
k
∣
x
k
-
1
,
u
k
) and measurement probability function p
(
z
k
∣
x
k
,
m
), where the state vector x
k and map m denote the pose of mobile robot and the position of environmental features of mobile robot at time k, respectively, u
k is control variable, and z
k is observed quantity at time k. The SLAM problem can be expressed as the joint posterior probability distribution function p
(
x
1
:
k
,
m
∣
z
1
:
k
,
u
1
:
k
), where x
1
:
k is robot trajectory, z
1
:
k is measurement sequence, and u
1
:
k is robot control sequence.The FastSLAM algorithm is based on the idea of Rao-Blackwellised; the posterior joint probability distribution is decomposed into robot trajectory estimation and maps estimation [14, 15]. It states that if one knew the path of the robot, the landmark positions could be estimated independently; so, under Bayesian formula and a Markov assumption, the joint probability distribution of SLAM can make decomposition as follows:
(1)
p
(
x
1
:
k
,
m
∣
z
1
:
k
,
u
1
:
k
)
=
p
(
x
1
:
k
∣
z
1
:
k
,
u
1
:
k
)
p
(
m
∣
x
0
:
k
,
z
1
:
k
,
u
1
:
k
)
=
p
(
x
1
:
k
∣
z
1
:
k
,
u
1
:
k
)
∏
i
=
1
M
p
(
m
i
∣
x
0
:
k
,
z
1
:
k
,
u
1
:
k
)
,
where M is the number of landmarks. Particle filter is used to estimate the pose of robot in FastSLAM algorithm; each particle can save a map along with M Gaussian landmarks; the remaining posterior of landmark locations is analytically calculated by EKF filter. Each particle in FastSLAM is of the form {
X
k
i
,
w
k
i
,
μ
1
∑
1
,
μ
2
∑
2
…
μ
M
∑
M
}
1
N, where X
k
i
=
(
x
k
i
,
y
k
i
,
θ
k
i
) denotes the position of particle i, w
k
i is the weight of particle i, μ
M and Σ
M denote the mean and covariance of landmark M, respectively. The posterior probability distribution is generally hard to obtain. So particles are sampled from proposal distribution function q
(
x
1
:
k
∣
z
1
:
k
,
u
1
:
k
) and it satisfies the following equation which can approximate the posterior probability distribution:
(2)
q
(
x
1
:
k
i
∣
z
1
:
k
,
u
1
:
k
)
=
q
(
x
k
i
∣
x
k
-
1
i
,
z
k
,
u
k
)
q
(
x
1
:
k
-
1
i
∣
z
1
:
k
-
1
,
u
1
:
k
-
1
)
.
Then the weight of sampling particles can be calculated by
(3)
w
k
i
=
p
(
x
k
i
∣
z
1
:
k
,
u
1
:
k
)
q
(
x
k
i
∣
z
1
:
k
,
u
1
:
k
)
=
w
-
k
-
1
i
p
(
z
k
∣
x
k
i
)
p
(
x
k
i
∣
x
k
-
1
i
,
u
k
)
q
(
x
k
i
∣
x
k
-
1
,
z
k
,
u
k
)
,
where w
-
k
i
=
w
k
i
/
∑
j
=
1
N
w
k
j is the weight normalized value.The differences between FastSLAM2.0 and FastSLAM1.0 are as follows: FastSLAM1.0 uses only prior distributionp
(
x
k
∣
x
k
-
1
,
u
k
) as the proposal distribution function and thus ignores the current measurement, which is particularly troublesome, if the measurement is too accurate to the robot’s motion noise. FastSLAM2.0 is an improved version; it estimates robot pose by EKF algorithm at first and then uses the estimating mean and variance to construct a Gauss distribution function as proposal distribution, and, as a result, FastSLAM2.0 is greatly superior to FastSLAM1.0.FastSLAM algorithm is based on sequential important sampling (SIS) method; as a result, the particle degradation and sample dilution are its major problems [16]. In order to solve the problems and improve the estimation performance of FastSLAM2.0, this paper presents a new algorithm called MBLCC-FastSLAM, as will be shown in the next paragraphs.


## 3. MBLCC-FastSLAM

### 3.1. Electromagnetism-Like Mechanism Is Introduced to Single-Robot Resampling

Electromagnetism-like mechanism algorithm is a new kind of natural heuristic global optimization algorithm [17]; its main idea is to assume that every solution is an electron, and then attraction-repulsion mechanism in electromagnetic field is simulated to drive search particles to move to the optimal solution by certain rules. The four basic procedures of electromagnetism-like mechanism algorithm are as follows (to calculate the maximum value of function f
(
x
) as an example).(a) Initialization:N points are sampled randomly from known feasible region; then the objective function value (OFV) of each particle is calculated by f
(
x
), and the point that has best OFV is stored in x
best.
(b) Local search: it is a neighborhood search procedure, which can be applied to one or many points for local refinement at each iteration.
(c) Calculation of total force vector: in this procedure, a charged-like value is assigned to each point; the charges are calculated by(4)
Q
i
=
exp
⁡
{
-
n
f
(
x
best
)
-
f
(
x
i
)
∑
k
=
1
N
(
f
(
x
best
)
-
f
(
x
k
)
)
}
,
wheren is the dimension of point x. Then, the total force F
i is calculated by the calculation formula of force and the superposition principle in electromagnetism field:
(5)
F
i
=
{
∑
j
≠
i
N
(
x
j
-
x
i
)
Q
i
Q
j
∥
x
j
-
x
i
∥
2
(
f
(
x
j
)
>
f
(
x
i
)
)
;
∑
j
≠
i
N
(
x
i
-
x
j
)
Q
i
Q
j
∥
x
j
-
x
i
∥
2
(
f
(
x
j
)
<
f
(
x
i
)
)
;
as can be seen in (5), between two points, the point that has a larger OFV attracts the other one; contrary to it, the point with worse OFV repels the other.
(d) Movement along total force vector: points are moved along the total force vectorF
i; the movement is according to
(6)
x
i
=
x
i
+
λ
R
F
i
∥
F
i
∥
,
whereλ is the random step length, which is uniformly distributed between 0 and 1; R is the mobile coefficient, which denotes the allowed range of movement toward the lower bound or the upper bound for the corresponding dimension; through the above procedures, points complete electromagnetism-like mechanism iteration and move toward a better set of points.Electromagnetism-like mechanism algorithm has advantages of less parameters and a good ability of global optimization; when the mobile coefficientR is selected appropriately, the stochastic points can be driven close to x
best quickly according to (6); it also has a relatively fast convergence speed [18]. In order to take both particle degradation and sample dilution into account, we introduce electromagnetism-like mechanism algorithm into FastSLAM2.0 resampling procedure for improving the particle distribution and overall quality of particles.At a given time instantk, FastSLAM2.0 algorithm based on electromagnetism-like mechanism (EM-FastSLAM) performs the following steps.Step 1 (sampling).
Considering both the control variableu
k and the current measurement z
k, EKF algorithm is used to estimate robot pose at first and obtain the improved proposal distribution, from which samples particles set {
x
k
i
}
1
N.Step 2 (weights calculation).
The weight of particles is calculated by (3).Step 3 (the electromagnetism-like mechanism optimization sampling process).
Each particle is regarded as an electron. First, the charge of each particle is calculated by (4). Here, N is the number of particles, f
(
x
) is the weight calculation formula, and x
best denotes the optimal location of the robot. Then, the total force vector F
i is calculated; we use the following total force calculation model in this paper:
(7)
F
i
j
=
(
x
j
-
x
i
)
Q
i
Q
j
,
f
(
x
j
)
>
f
(
x
i
)
,
F
i
j
=
(
x
i
-
x
j
)
Q
i
Q
j
,
f
(
x
j
)
≤
f
(
x
i
)
,
F
i
=
∑
F
i
j
,
j
=
1,2
,
…
,
N
,
j
≠
i
,
where F
i
j is the force particle x
j on particle x
i; finally, particles are moved along the total force vector F
i by (6) and thus get a new batch of high quality particles. Equation (3) is reused to calculate the weight of new particles and weight normalized by w
-
k
i
=
w
k
i
/
∑
j
=
1
N
w
k
j.Step 4 (resampling).
The effective particle number isN
eff
=
1
/
∑
i
=
1
N
(
w
-
k
i
)
2. If N
eff is less than the given threshold, then the algorithm starts resampling and gets a new particles set {
x
k
i
*
,
w
k
i
*
;
i
*
=
1,2
,
…
,
N
} or does not resample.Step 5 (map updating).
Each particle updates its observed landmarks by EKF with current state estimatex
k
i and the previous map.Step 6.
Repeat the above steps until there are no new measurements.As can be seen, after the electromagnetism-like mechanism optimization sampling process, between two particles, the particle that has a greater weight attracts the other one; contrary to it, the particle with worse weight repels the other. So the particles are driven to high likelihood region by electromagnetism-like attractions, which can reduce particle degradation. Simultaneously, electromagnetic-like repulsions drive the particles to separate from each other and maintain a certain distance in moving process to assure diversity.


### 3.2. Landmark Consistency Correction

When robot explores an unknown area and gets measurements of the landmark feature, all of the landmark position estimates are related. For the reason that they are based on the same pose state estimate of mobile robots, the accuracy of landmark estimation directly affects the positional accuracy and consistent estimation of the map. For each robot, the landmark estimated values are inaccurate. To make things worse, when calculating the particle weights, the uncertainty is brought into next moment. Aiming to decrease the uncertainty of map information, we adopt three robots to work at the same time and suppose each robot applies an EM-FastSLAM algorithm. Furthermore, each robot is regarded as a node and Kalman-Consensus Filter (KCF) is used to update landmark location, which corrects the estimation of landmark for further improving the accuracy of robot localization and map building. The illustration of MBLCC-FastSLAM is as shown in Figure1.Figure 1
Illustration of the MBLCC-FastSLAM algorithm.The so-called core process of the KCF [19] is represented by
(8)
x
^
k
∣
k
i
=
x
-
k
∣
k
-
1
i
+
K
(
z
k
i
-
H
x
-
k
∣
k
-
1
i
)
+
C
i
∑
(
x
-
k
∣
k
-
1
j
-
x
-
k
∣
k
-
1
i
)
,
where x
^
k
∣
k
iand x
-
k
∣
k
-
1
i are estimate and prior estimate of the node i, respectively, and K and C
i are the Kalman and consensus gains of node i, respectively. We refer to z
k
i and H as sensor data and measurement matrix. From (8), we can know that it includes a Kalman filtering part and a consensus part. The Kalman filtering updates target node prior estimate values with measurements. Meanwhile, because of the capacity of multiagent consistency, the node estimation error can be decreased to some extent and allow all nodes to maintain an approximate value. Based on this idea, each robot is regarded as a node and we use the KCF algorithm to estimate landmarks location for fusing measurements of other robots.Now, a method for landmark consistency correction is presented.Firstly, each robot calculates its prior estimate of the landmark:(9)
z
^
j
,
k
t
,
i
=
h
(
μ
j
,
k
-
1
t
,
i
,
x
k
t
,
i
)
,
where z
^
j
,
k
t
,
i is the prior estimate of robot t with particle i to landmark j at time k and h
(
•
) is measurement equation.
(10)
H
j
,
k
t
,
i
=
h
′
(
μ
j
,
k
-
1
t
,
i
,
x
k
t
,
i
)
with (10) is the Jacobian matrix. And the Kalman gain is given by
(11)
K
j
,
k
t
,
i
=
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
(
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
+
R
k
t
)
-
1
,
where Σ
j
,
k
-
1
t
,
i is the covariance of robot t with particle i to landmark j at time k
-
1 and R
k
t is measurement noise.It is assumed that the landmark is stationary; then its prior estimate value is itself at timek. Landmark location update step by consensus-based filtering is thus given by
(12)
μ
j
,
k
t
,
i
=
μ
j
,
k
-
1
t
,
i
+
K
j
,
k
t
,
i
(
z
j
,
k
t
,
i
-
z
^
j
,
k
t
,
i
)
+
ε
∑
n
∈
N
j
,
k
-
1
(
μ
j
,
k
-
1
n
,
max
⁡
-
μ
j
,
k
-
1
t
,
i
)
,
(13)
Σ
j
,
k
t
,
i
=
Σ
j
,
k
-
1
t
,
i
-
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
×
(
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
+
R
i
)
-
1
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
,
where ε is the step length, N
j
,
k
-
1 is the number of robots for getting the same observed landmark j at time k
-
1, and μ
j
,
k
-
1
n
,
max
⁡ denotes the maximum weight particle at time k
-
1. Notice that, in (12), this method only requires prior estimates exchange between robots which observe the same landmarks. In practical applications, considering the limited network communication broadband, packet-dropping, delay, and other sorts of interference, the algorithm may be of weak anti-interference and poor robustness, if there was too much information exchange between robots [19].


## 3.1. Electromagnetism-Like Mechanism Is Introduced to Single-Robot Resampling

Electromagnetism-like mechanism algorithm is a new kind of natural heuristic global optimization algorithm [17]; its main idea is to assume that every solution is an electron, and then attraction-repulsion mechanism in electromagnetic field is simulated to drive search particles to move to the optimal solution by certain rules. The four basic procedures of electromagnetism-like mechanism algorithm are as follows (to calculate the maximum value of function f
(
x
) as an example).(a) Initialization:N points are sampled randomly from known feasible region; then the objective function value (OFV) of each particle is calculated by f
(
x
), and the point that has best OFV is stored in x
best.
(b) Local search: it is a neighborhood search procedure, which can be applied to one or many points for local refinement at each iteration.
(c) Calculation of total force vector: in this procedure, a charged-like value is assigned to each point; the charges are calculated by(4)
Q
i
=
exp
⁡
{
-
n
f
(
x
best
)
-
f
(
x
i
)
∑
k
=
1
N
(
f
(
x
best
)
-
f
(
x
k
)
)
}
,
wheren is the dimension of point x. Then, the total force F
i is calculated by the calculation formula of force and the superposition principle in electromagnetism field:
(5)
F
i
=
{
∑
j
≠
i
N
(
x
j
-
x
i
)
Q
i
Q
j
∥
x
j
-
x
i
∥
2
(
f
(
x
j
)
>
f
(
x
i
)
)
;
∑
j
≠
i
N
(
x
i
-
x
j
)
Q
i
Q
j
∥
x
j
-
x
i
∥
2
(
f
(
x
j
)
<
f
(
x
i
)
)
;
as can be seen in (5), between two points, the point that has a larger OFV attracts the other one; contrary to it, the point with worse OFV repels the other.
(d) Movement along total force vector: points are moved along the total force vectorF
i; the movement is according to
(6)
x
i
=
x
i
+
λ
R
F
i
∥
F
i
∥
,
whereλ is the random step length, which is uniformly distributed between 0 and 1; R is the mobile coefficient, which denotes the allowed range of movement toward the lower bound or the upper bound for the corresponding dimension; through the above procedures, points complete electromagnetism-like mechanism iteration and move toward a better set of points.Electromagnetism-like mechanism algorithm has advantages of less parameters and a good ability of global optimization; when the mobile coefficientR is selected appropriately, the stochastic points can be driven close to x
best quickly according to (6); it also has a relatively fast convergence speed [18]. In order to take both particle degradation and sample dilution into account, we introduce electromagnetism-like mechanism algorithm into FastSLAM2.0 resampling procedure for improving the particle distribution and overall quality of particles.At a given time instantk, FastSLAM2.0 algorithm based on electromagnetism-like mechanism (EM-FastSLAM) performs the following steps.Step 1 (sampling).
Considering both the control variableu
k and the current measurement z
k, EKF algorithm is used to estimate robot pose at first and obtain the improved proposal distribution, from which samples particles set {
x
k
i
}
1
N.Step 2 (weights calculation).
The weight of particles is calculated by (3).Step 3 (the electromagnetism-like mechanism optimization sampling process).
Each particle is regarded as an electron. First, the charge of each particle is calculated by (4). Here, N is the number of particles, f
(
x
) is the weight calculation formula, and x
best denotes the optimal location of the robot. Then, the total force vector F
i is calculated; we use the following total force calculation model in this paper:
(7)
F
i
j
=
(
x
j
-
x
i
)
Q
i
Q
j
,
f
(
x
j
)
>
f
(
x
i
)
,
F
i
j
=
(
x
i
-
x
j
)
Q
i
Q
j
,
f
(
x
j
)
≤
f
(
x
i
)
,
F
i
=
∑
F
i
j
,
j
=
1,2
,
…
,
N
,
j
≠
i
,
where F
i
j is the force particle x
j on particle x
i; finally, particles are moved along the total force vector F
i by (6) and thus get a new batch of high quality particles. Equation (3) is reused to calculate the weight of new particles and weight normalized by w
-
k
i
=
w
k
i
/
∑
j
=
1
N
w
k
j.Step 4 (resampling).
The effective particle number isN
eff
=
1
/
∑
i
=
1
N
(
w
-
k
i
)
2. If N
eff is less than the given threshold, then the algorithm starts resampling and gets a new particles set {
x
k
i
*
,
w
k
i
*
;
i
*
=
1,2
,
…
,
N
} or does not resample.Step 5 (map updating).
Each particle updates its observed landmarks by EKF with current state estimatex
k
i and the previous map.Step 6.
Repeat the above steps until there are no new measurements.As can be seen, after the electromagnetism-like mechanism optimization sampling process, between two particles, the particle that has a greater weight attracts the other one; contrary to it, the particle with worse weight repels the other. So the particles are driven to high likelihood region by electromagnetism-like attractions, which can reduce particle degradation. Simultaneously, electromagnetic-like repulsions drive the particles to separate from each other and maintain a certain distance in moving process to assure diversity.


## 3.2. Landmark Consistency Correction

When robot explores an unknown area and gets measurements of the landmark feature, all of the landmark position estimates are related. For the reason that they are based on the same pose state estimate of mobile robots, the accuracy of landmark estimation directly affects the positional accuracy and consistent estimation of the map. For each robot, the landmark estimated values are inaccurate. To make things worse, when calculating the particle weights, the uncertainty is brought into next moment. Aiming to decrease the uncertainty of map information, we adopt three robots to work at the same time and suppose each robot applies an EM-FastSLAM algorithm. Furthermore, each robot is regarded as a node and Kalman-Consensus Filter (KCF) is used to update landmark location, which corrects the estimation of landmark for further improving the accuracy of robot localization and map building. The illustration of MBLCC-FastSLAM is as shown in Figure1.Figure 1
Illustration of the MBLCC-FastSLAM algorithm.The so-called core process of the KCF [19] is represented by
(8)
x
^
k
∣
k
i
=
x
-
k
∣
k
-
1
i
+
K
(
z
k
i
-
H
x
-
k
∣
k
-
1
i
)
+
C
i
∑
(
x
-
k
∣
k
-
1
j
-
x
-
k
∣
k
-
1
i
)
,
where x
^
k
∣
k
iand x
-
k
∣
k
-
1
i are estimate and prior estimate of the node i, respectively, and K and C
i are the Kalman and consensus gains of node i, respectively. We refer to z
k
i and H as sensor data and measurement matrix. From (8), we can know that it includes a Kalman filtering part and a consensus part. The Kalman filtering updates target node prior estimate values with measurements. Meanwhile, because of the capacity of multiagent consistency, the node estimation error can be decreased to some extent and allow all nodes to maintain an approximate value. Based on this idea, each robot is regarded as a node and we use the KCF algorithm to estimate landmarks location for fusing measurements of other robots.Now, a method for landmark consistency correction is presented.Firstly, each robot calculates its prior estimate of the landmark:(9)
z
^
j
,
k
t
,
i
=
h
(
μ
j
,
k
-
1
t
,
i
,
x
k
t
,
i
)
,
where z
^
j
,
k
t
,
i is the prior estimate of robot t with particle i to landmark j at time k and h
(
•
) is measurement equation.
(10)
H
j
,
k
t
,
i
=
h
′
(
μ
j
,
k
-
1
t
,
i
,
x
k
t
,
i
)
with (10) is the Jacobian matrix. And the Kalman gain is given by
(11)
K
j
,
k
t
,
i
=
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
(
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
+
R
k
t
)
-
1
,
where Σ
j
,
k
-
1
t
,
i is the covariance of robot t with particle i to landmark j at time k
-
1 and R
k
t is measurement noise.It is assumed that the landmark is stationary; then its prior estimate value is itself at timek. Landmark location update step by consensus-based filtering is thus given by
(12)
μ
j
,
k
t
,
i
=
μ
j
,
k
-
1
t
,
i
+
K
j
,
k
t
,
i
(
z
j
,
k
t
,
i
-
z
^
j
,
k
t
,
i
)
+
ε
∑
n
∈
N
j
,
k
-
1
(
μ
j
,
k
-
1
n
,
max
⁡
-
μ
j
,
k
-
1
t
,
i
)
,
(13)
Σ
j
,
k
t
,
i
=
Σ
j
,
k
-
1
t
,
i
-
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
×
(
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
(
H
j
t
,
i
)
T
+
R
i
)
-
1
H
j
t
,
i
Σ
j
,
k
-
1
t
,
i
,
where ε is the step length, N
j
,
k
-
1 is the number of robots for getting the same observed landmark j at time k
-
1, and μ
j
,
k
-
1
n
,
max
⁡ denotes the maximum weight particle at time k
-
1. Notice that, in (12), this method only requires prior estimates exchange between robots which observe the same landmarks. In practical applications, considering the limited network communication broadband, packet-dropping, delay, and other sorts of interference, the algorithm may be of weak anti-interference and poor robustness, if there was too much information exchange between robots [19].


## 4. Simulation Analysis

### 4.1. Simulation Model

In this paper, we adopt three robots to work simultaneously; robot motion model is as follows:(14)
X
k
v
=
[
x
k
v
y
k
v
Φ
k
v
]
=
[
x
k
-
1
v
+
Δ
T
·
cos
⁡
(
Φ
k
-
1
v
+
a
k
)
y
k
-
1
v
+
Δ
T
·
sin
(
Φ
k
-
1
v
+
a
k
)
Φ
k
-
1
v
+
Δ
T
·
V
k
·
sin
(
a
k
)
D
]
+
[
υ
x
υ
y
υ
Φ
]
,
where (
x
k
v
,
y
k
v
) shows pose of robot in global coordinate, Φ
k
v represents yaw angle, V
k is motion speed, a
k denotes deflection angle, Δ
T is sampling time of odometer, υ
x, υ
y, and υ
Φ are noise terms, and D denotes spacing of two axes.The measurement model can be expressed as(15)
Z
k
=
[
r
θ
]
=
[
(
x
i
-
x
k
v
)
2
+
(
y
i
-
y
k
v
)
2
arctan
y
i
-
y
k
v
x
i
-
x
k
v
-
Φ
k
v
]
+
ω
k
,
where r and θ refer to the distance and direction angle between landmark and robot, which are measured by sensor, (
x
i
,
y
i
) denotes observed position coordinates of the ith landmark, and ω
k is measurement noise.


### 4.2. Result Analysis

In order to verify the effectiveness of the improved algorithm, the proposed MBLCC-FastSALM, multirobot SLAM [10] (with known initial pose), single-robot EM-FastSLAM, and traditional FastSLAM2.0 are simulated for SLAM experiment, respectively, and the estimation accuracy, error, and stability are analyzed to contrast.The environment simulated is shown in Figure2, where the asterisk represents a random set of landmarks and the three curves represent the three preset motion paths of robots; the robots run along this path from starting points to terminal points; the speed of robots is V
1
=
4
m
/
s, V
1
=
3.8
m
/
s, and V
1
=
3.5
m
/
s; the effective measurement distance of sensor is 30
m. Assume that the data association is known; using MBLCC-FastSLAM algorithm to obtain the results which are shown in Figure 3 in the simulation environment, where the triangle represents the position of estimated landmarks, the dotted line indicates the estimated trajectory. The process noise is (
σ
V
=
0.3
m
/
s
,
σ
G
=
3
°
), measurement noise is (
σ
r
=
0.2
m
,
σ
θ
=
2
°
), mobile coefficient R is [
0.008,0.005,0.001
]
T, landmark update step length is ε
=
0.1, the number of particles N is 10, and the resampling, when N
eff, is less than 75
% of the total particles.Figure 2
The simulated environment.Figure 3
MBLCC-FastSLAM estimation.As shown in Figure3, the estimated path and landmarks of the robot utilizing MBLCC-FastSLAM algorithm are basically consistent with the true value, which performs with very good estimation ability.Three robots are simulated in multirobot SLAM, EM-FastSLAM, and FastSLAM2.0 algorithm under the same conditions, respectively. Figure4 represents the three robots’ estimation errors under four different algorithms in a simulation run, from which we can see that the proposed algorithm MBLCC-FastSLAM performs better than the other 3 algorithms in all three robots, particularly in robot 1 and robot 2 in which the estimated errors of MBLCC-FastSLAM are significantly lower both in pose error and landmark error. And EM-FastSLAM is lower than FastSLAM2. 0 most of the time.Comparison of estimated errors.
(a)
Robot 1
(b)
Robot 2
(c)
Robot 3In order to eliminate randomness and more directly see the results of the four algorithms which are applied 50 times independently in Table1, the simulation experiment of error statistics is given. By comparing EM-FastSLAM algorithm to FastSLAM2.0 algorithm, the estimated error of the former is lower. For that, the electromagnetism-like mechanism is introduced to resample process in FastSLAM2.0 algorithm, which improves the quality of the particles; similarly, the estimated errors of the proposed MBLCC-FastSLAM algorithm are the lowest; for that, the proposed algorithm gets more correct measurement results by revising landmark based on the consistency. As the correlation of landmark estimation and the pose estimation, the robot localization estimation and map building precision are improved further. Furthermore, we compute the averaging RMSE (ARMSE) in landmark with respect to different sampling particles N. The simulation results are shown in Figure 5. From Figure 5, it can be seen that the accuracy of four algorithms is improved as the particles increase. On the other hand, when particles exceed about 150, it has little effect on the algorithms when particles continue to increase. At the given noise level, the ARMSE of MBLCC-FastSLAM is the lowest in four algorithms; it can maintain a good precision even when N is small. In this case, the filtering accuracy of MBLCC-FastSLAM takes 10 particles approximately which is equal to FastSLAM2.0 taking 100 particles.Table 1
Error statistics for each robot by four algorithms.
Robot
Algorithm
The mean of pose/m
The variance of pose/m
The mean of landmark/m
The variance of landmark/m
The mean of pose in Figure4/m
The mean of landmark in Figure4/m
1
FastSLAM2.0
0.7029
0.4280
0.7003
0.4305
0.7521
0.6508
EM-FastSLAM
0.4101
0.2206
0.4701
0.2159
0.5103
04345
Multirobot SLAM
0.3872
0.3010
0.2808
0.2039
0.5409
0.3811
MBLCC-FastSLAM
0.2501
0.1850
0.2048
0.1206
0.3772
0.2907
2
FastSLAM2.0
1.2852
0.5213
1.4001
0.6827
1.3212
1.3597
EM-FastSLAM
0.7469
0.3352
0.5861
0.2925
0.6734
0.4870
Multirobot SLAM
0.4561
0.2014
0.5031
0.2022
0.4508
0.4421
MBLCC-FastSLAM
0.2873
0.1769
0.3551
0.1527
0.2883
0.2474
3
FastSLAM2.0
0.7690
0.5263
0.6539
0.5502
0.6113
0.5322
EM-FastSLAM
0.6889
0.4470
0.5960
0.5019
0.5847
0.3680
Multirobot SLAM
0.4501
0.2803
0.4391
0.3618
0.3715
0.3952
MBLCC-FastSLAM
0.3541
0.2061
0.3789
0.3284
0.3003
0.2493Figure 5
ARMSE curves of four algorithms when their numbers change.


## 4.1. Simulation Model

In this paper, we adopt three robots to work simultaneously; robot motion model is as follows:(14)
X
k
v
=
[
x
k
v
y
k
v
Φ
k
v
]
=
[
x
k
-
1
v
+
Δ
T
·
cos
⁡
(
Φ
k
-
1
v
+
a
k
)
y
k
-
1
v
+
Δ
T
·
sin
(
Φ
k
-
1
v
+
a
k
)
Φ
k
-
1
v
+
Δ
T
·
V
k
·
sin
(
a
k
)
D
]
+
[
υ
x
υ
y
υ
Φ
]
,
where (
x
k
v
,
y
k
v
) shows pose of robot in global coordinate, Φ
k
v represents yaw angle, V
k is motion speed, a
k denotes deflection angle, Δ
T is sampling time of odometer, υ
x, υ
y, and υ
Φ are noise terms, and D denotes spacing of two axes.The measurement model can be expressed as(15)
Z
k
=
[
r
θ
]
=
[
(
x
i
-
x
k
v
)
2
+
(
y
i
-
y
k
v
)
2
arctan
y
i
-
y
k
v
x
i
-
x
k
v
-
Φ
k
v
]
+
ω
k
,
where r and θ refer to the distance and direction angle between landmark and robot, which are measured by sensor, (
x
i
,
y
i
) denotes observed position coordinates of the ith landmark, and ω
k is measurement noise.


## 4.2. Result Analysis

In order to verify the effectiveness of the improved algorithm, the proposed MBLCC-FastSALM, multirobot SLAM [10] (with known initial pose), single-robot EM-FastSLAM, and traditional FastSLAM2.0 are simulated for SLAM experiment, respectively, and the estimation accuracy, error, and stability are analyzed to contrast.The environment simulated is shown in Figure2, where the asterisk represents a random set of landmarks and the three curves represent the three preset motion paths of robots; the robots run along this path from starting points to terminal points; the speed of robots is V
1
=
4
m
/
s, V
1
=
3.8
m
/
s, and V
1
=
3.5
m
/
s; the effective measurement distance of sensor is 30
m. Assume that the data association is known; using MBLCC-FastSLAM algorithm to obtain the results which are shown in Figure 3 in the simulation environment, where the triangle represents the position of estimated landmarks, the dotted line indicates the estimated trajectory. The process noise is (
σ
V
=
0.3
m
/
s
,
σ
G
=
3
°
), measurement noise is (
σ
r
=
0.2
m
,
σ
θ
=
2
°
), mobile coefficient R is [
0.008,0.005,0.001
]
T, landmark update step length is ε
=
0.1, the number of particles N is 10, and the resampling, when N
eff, is less than 75
% of the total particles.Figure 2
The simulated environment.Figure 3
MBLCC-FastSLAM estimation.As shown in Figure3, the estimated path and landmarks of the robot utilizing MBLCC-FastSLAM algorithm are basically consistent with the true value, which performs with very good estimation ability.Three robots are simulated in multirobot SLAM, EM-FastSLAM, and FastSLAM2.0 algorithm under the same conditions, respectively. Figure4 represents the three robots’ estimation errors under four different algorithms in a simulation run, from which we can see that the proposed algorithm MBLCC-FastSLAM performs better than the other 3 algorithms in all three robots, particularly in robot 1 and robot 2 in which the estimated errors of MBLCC-FastSLAM are significantly lower both in pose error and landmark error. And EM-FastSLAM is lower than FastSLAM2. 0 most of the time.Comparison of estimated errors.
(a)
Robot 1
(b)
Robot 2
(c)
Robot 3In order to eliminate randomness and more directly see the results of the four algorithms which are applied 50 times independently in Table1, the simulation experiment of error statistics is given. By comparing EM-FastSLAM algorithm to FastSLAM2.0 algorithm, the estimated error of the former is lower. For that, the electromagnetism-like mechanism is introduced to resample process in FastSLAM2.0 algorithm, which improves the quality of the particles; similarly, the estimated errors of the proposed MBLCC-FastSLAM algorithm are the lowest; for that, the proposed algorithm gets more correct measurement results by revising landmark based on the consistency. As the correlation of landmark estimation and the pose estimation, the robot localization estimation and map building precision are improved further. Furthermore, we compute the averaging RMSE (ARMSE) in landmark with respect to different sampling particles N. The simulation results are shown in Figure 5. From Figure 5, it can be seen that the accuracy of four algorithms is improved as the particles increase. On the other hand, when particles exceed about 150, it has little effect on the algorithms when particles continue to increase. At the given noise level, the ARMSE of MBLCC-FastSLAM is the lowest in four algorithms; it can maintain a good precision even when N is small. In this case, the filtering accuracy of MBLCC-FastSLAM takes 10 particles approximately which is equal to FastSLAM2.0 taking 100 particles.Table 1
Error statistics for each robot by four algorithms.
Robot
Algorithm
The mean of pose/m
The variance of pose/m
The mean of landmark/m
The variance of landmark/m
The mean of pose in Figure4/m
The mean of landmark in Figure4/m
1
FastSLAM2.0
0.7029
0.4280
0.7003
0.4305
0.7521
0.6508
EM-FastSLAM
0.4101
0.2206
0.4701
0.2159
0.5103
04345
Multirobot SLAM
0.3872
0.3010
0.2808
0.2039
0.5409
0.3811
MBLCC-FastSLAM
0.2501
0.1850
0.2048
0.1206
0.3772
0.2907
2
FastSLAM2.0
1.2852
0.5213
1.4001
0.6827
1.3212
1.3597
EM-FastSLAM
0.7469
0.3352
0.5861
0.2925
0.6734
0.4870
Multirobot SLAM
0.4561
0.2014
0.5031
0.2022
0.4508
0.4421
MBLCC-FastSLAM
0.2873
0.1769
0.3551
0.1527
0.2883
0.2474
3
FastSLAM2.0
0.7690
0.5263
0.6539
0.5502
0.6113
0.5322
EM-FastSLAM
0.6889
0.4470
0.5960
0.5019
0.5847
0.3680
Multirobot SLAM
0.4501
0.2803
0.4391
0.3618
0.3715
0.3952
MBLCC-FastSLAM
0.3541
0.2061
0.3789
0.3284
0.3003
0.2493Figure 5
ARMSE curves of four algorithms when their numbers change.


## 5. Conclusion

In this paper, we presented a multirobot FastSLAM algorithm based on landmark consistency correction. Firstly, electromagnetism-like mechanism is introduced to resampling procedure in single-robot FastSLAM, which improves the distribution of particles by the rule that greater weight particles attract the worse weight particles and the worse weight particles repel greater weight particles. And, then, the landmark location is updated with KCF, when it is observed by multiple robots, which further improves the robot localization and map building precision. Under the same conditions, simulation results show that the MBLCC-FastSLAM algorithm performs more accurately in the localization and map building precision compared to multirobot SLAM algorithm [11], EM-FastSLAM algorithm, and traditional FastSLAM2.0 algorithm, which is proved to be effective and feasible.



---

*Source: 967032-2014-05-12.xml*