Paz Submap Slam
Paz Submap Slam
3
D2 = (x − x̂)T P−1 (x − x̂) (1)
Time (s)
2.5
Consistency is then checked using a chi-squared test:
2
D2 ≤ χ2r,1−α (2)
1.5
1
where r = dim(x) and α is the desired significance level
(usually 0.05). If we define the consistency index of a given
0.5 estimation (x̂, P) with respect to its true value x as:
2.5
on the simulated experiment. Figure 4, top left, shows the
evolution of the mean consistency index of the vehicle
Time (s)
200
rithms are also drawn. We can see that the error increases at
150
a slower rate in the case of D&C SLAM; we can also see
that the main cause of inconsistency in the standard EKF
100 SLAM is the fast rate at which the computed uncertainty
falls below its theoretical value.
50 We carried out another simulated experiment to test the
D&C SLAM consistency when the vehicle moves along a
50 100 150 200 250 loop trajectory of 64 steps. The robot estimate was computed
Step
by joining all maps available in every step. Both D&C SLAM
Fig. 3. Cost per step of D&C v.s. EKF SLAM (top); Amortized cost per and EKF SLAM were executed with exactly the same data
step of D&C and EKF SLAM (middle). Total execution time of EKF .vs. (including random errors). Fig. 5 shows a typical situation:
D&C SLAM (bottom). EKF SLAM (top) is overconfident: errors are larger than
the computed covariances suggest, and thus loop closing is
not possible. D&C SLAM (bottom) computes estimates and
covariances that allow it to easily close the loop.
3.5 0.7
EKF EKF theorical uncertainty
D&C EKF computed uncertainty
Bound EKF Error
3 0.6 D&C Theorical Uncertainty
D&C computed uncertainty
D&C Error
2.5 0.5
2 0.4
Error (rad)
Index
1.5 0.3
1 0.2
0.5 0.1
0 0
50 100 150 200 250 50 100 150 200 250
steps Steps
45
4 EKF EKF theorical uncertainty
D&C EKF computed uncertainty
Bound 40 EKF Error
D&C Theorical Uncertainty
3.5 D&C computed uncertainty
35 D&C Error
3
30
2.5
25
Error (m)
Index
2
20
1.5
15
1 10
0.5 5
0 0
50 100 150 200 250 50 100 150 200 250
steps Steps
Fig. 4. Mean consistency index (left) and Mean Absolute error (right) for standard EKF SLAM (black) and D&C SLAM (blue). Roll Robot error(top);
lateral error for all map features (bottom); in all cases, at all steps of the vehicle trajectory.
IV. CONCLUSIONS between two local maps. Depending on the type of trajectory,
the size and overlap between the maps will change. This will
In this paper we propose Divide and Conquer SLAM, a
require developing specialized data association algorithms to
computationally more feasible alternative to standard EKF
keep the amortized cost always linear.
SLAM. Its computational cost per step is O(n), as com-
We hope to demonstrate that D&C SLAM is the algorithm
pared to O(n2 ) for standard EKF SLAM. D&C SLAM
to use in all applications in which the Extended Kalman
is a simple algorithm to implement, and in contrast with
Filter solution is to be used.
many current efficient SLAM algorithms, all information
required for data association is available when needed with V. ACKNOWLEDGMENTS
no further processing. D&C SLAM computes the exact EKF This research has been funded in part by the Dirección
SLAM solution, both the estimate x̂ and covariance P, with General de Investigación of Spain under projects DPI2003-
no approximations, and with the additional advantage of 07986 and DPI2006-13578, the Swedish Foundation for
providing always a more precise and consistent vehicle and International Cooperation in Research and Higher Education
map estimate. (STINT), under project IG2003-2 060, and the Swedish
One of the main subjects of our future work will be Foundation for Strategic Research through the Centre for
to study D&C with other simulations experiments (explore Autonomous Systems.
and return, loop closing, lawn mowing) to show that the
amortized cost is kept linear. Also, future work will be to A PPENDIX I: M AP J OINING 2.0
carry out a large scale experiment where the advantages This appendix describes the map joining process used
and limits of D&C SLAM can be experimentally evaluated. in D&C SLAM, an improved version with respect to the
Data association is required to carry out the joining process original map joining 1.0 in [16]. The general idea is the
second map). This results in having the last vehicle location
in the first map, Rj , be the base reference of the second map,
which allows maps to be joined into a full map in a three step
process of (1) joining; (2) update; and (3) transformation, as
it is explained next.
A. The Map Joining step
Consider two sequential local maps mi...j =
(x̂i...j , Pi...j ), mj...k = (x̂j...k , Pj...k ), with n features
F1 . . . Fn and m features G1 . . . Gm each:
xRi Rj xRj Rk
xRi F1 xRj G1
x̂i...j = .. ; x̂j...k = .. (4)
. .
xRi Fn xRj Gm
In this approach, the joining
− step allows
to obtain a
stochastic map m− i...k = x̂i...k , P−i...k in the following
simple way:
x̂i...j
x̂− = (5)
i...k x̂j...k
− Pi..j 0
P̂i...k = (6)
0 Pj..k
Note that the elements in the second map are kept in their
own reference Rj instead of being referenced to reference
frame Ri as in map joining 1.0. This has the effect of
delaying the linearization process of converting all features
to base reference Ri until the update step has taken place,
and thus an improved estimation is used for this linearization.
This is the fundamental difference between map joining 1.0
and map joining 2.0
Fig. 5. Conditions on arriving at loop closing: EKF SLAM (top), D&C B. The update step
SLAM (bottom). Ground true trajectory in red, estimated trajectory in blue.
Data association is carried out to determine correspon-
dences between features coming from the first and second
same: in a sequential move-sense-update cycle, a local map map. This allows to refine the vehicle and environment fea-
is initialized at some moment i using the current vehicle ture locations by the EKF update step on the state vector. Let
location Ri as base reference, and thus the initial vehicle H be a hypothesis that pairs r features Ff1 . . . Ffr coming
location in the map is xRi Ri = 0 an also the initial vehicle from local map mi...j with features Gg1 . . . Ggr coming from
uncertainty PRi = 0. Standard EKF SLAM is carried out map mj...k . A modified ideal measurement equation for r
in a this move-sense-update fashion, until the map reaches a re-observed features expresses this coincidence:
certain size of n features F1 . . . Fn at step j. In this moment
hf1 ,g1
the state vector x̂i...j will be: ..
hH (x̂−
i...k ) = . =0 (7)
x̂Ri Rj hfr ,gr
x̂Ri F1
where for each pairing:
x̂i...j = ..
.
x̂Ri Fn hfr ,gr = xRi Ffr − xRi Rj ⊕ xRj Ggr .