0% found this document useful (0 votes)
56 views6 pages

An Evaluation of 2D SLAM Techniques Availablein Robot Operating System

This document summarizes and evaluates several 2D SLAM techniques available in the Robot Operating System (ROS). It begins by reviewing related work on probabilistic SLAM techniques like the Extended Kalman Filter (EKF) and FastSLAM, which uses particle filters. It also discusses graph-based SLAM algorithms. The document then evaluates five SLAM techniques in ROS - GMapping, HectorSLAM, Cartographer, RTAB-Map and LIMO - through simulations and real-world experiments to analyze their strengths and weaknesses.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views6 pages

An Evaluation of 2D SLAM Techniques Availablein Robot Operating System

This document summarizes and evaluates several 2D SLAM techniques available in the Robot Operating System (ROS). It begins by reviewing related work on probabilistic SLAM techniques like the Extended Kalman Filter (EKF) and FastSLAM, which uses particle filters. It also discusses graph-based SLAM algorithms. The document then evaluates five SLAM techniques in ROS - GMapping, HectorSLAM, Cartographer, RTAB-Map and LIMO - through simulations and real-world experiments to analyze their strengths and weaknesses.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

View metadata, citation and similar papers at core.ac.

uk brought to you by CORE


provided by University of Lincoln Institutional Repository

An Evaluation of 2D SLAM Techniques Available


in Robot Operating System
João Machado Santos, David Portugal and Rui P. Rocha

Abstract— In this work, a study of several laser-based 2D II. R ELATED W ORK


Simultaneous Localization and Mapping (SLAM) techniques
available in Robot Operating System (ROS) is conducted. All Presently, all recognized algorithms for robot mapping
the approaches have been evaluated and compared in 2D have a common feature: they rely in probabilities. The
simulations and real world experiments. In order to draw
conclusions on the performance of the tested techniques, the
advantage of applying probabilities is the robustness to
experimental results were collected under the same conditions measurement noise and the ability to formally represent
and a generalized performance metric based on the k-nearest uncertainty in the measurement and estimation process. Most
neighbors concept was applied. Moreover, the CPU load of each of the probabilistic models used to solve the problem of
technique is examined. mapping rely on Bayes rule [1].
This work provides insight on the weaknesses and strengths
of each solution. Such analysis is fundamental to decide which Kalman filters (KF) are one of the most popular imple-
solution to adopt according to the properties of the intended mentations of Bayes filters [1]. The KF has two distinct
final application. phases: Prediction and Update. The prediction phase esti-
I. I NTRODUCTION mates the state space (prior) from a previous iteration, while
in the update phase the estimated state is combined with
Simultaneous Localization and Mapping (SLAM) is one of
observations provided by sensors. The result from the update
the most widely researched topics in Robotics. It is useful for
phase is called posterior. Arising from the prior development
building and updating maps within unknown environments,
of the KF, the Extended Kalman Filter (EKF) solves the
while the robot keeps the information about its location.
problem of nonlinearity in the robot pose model. A set of
Proprioceptive sensors are subject to cumulative errors
tests on convergence properties and inconsistency issues of
when estimating the mobile robot’s motion, the high di-
the EKF-based solution to the nonlinear 2D SLAM problem
mensionality of the environment that is being mapped, the
is conducted in [4].
problem of determining whether sensor measurements taken
Particle filters (PF) are another application of Bayes filters.
at different points in time correspond to the same object in
The posterior probability is represented by a set of weighted
the world, and the fact that the world changes over time,
particles and each particle is given an importance factor.
represent the biggest challenges in SLAM [1].
It assumes that the next state depends only on the current
The Robot Operating System (ROS) is the most popular
one, i.e., Markov assumption [5]. PFs have the advantage
robotics framework nowadays. It provides a set of tools,
of representing uncertainty through multi-modal distributions
libraries and drivers in order to help develop robot applica-
and dealing with non-Gaussian noise. Montemerlo et al. [6]
tions with hardware abstraction [2]. ROS enables researchers
proposed a new approach called FastSLAM. It makes use
to quickly and easily perform simulations and real world
of a modified PF to estimate the posterior. Afterwards, each
experiments.
All five SLAM techniques analyzed in this work are particle possesses K Kalman filters that estimate the K land-
available in ROS and have been tested in 2D simulations mark locations. It was shown that the computational effort to
through Stage and on a custom Arduino-based Robot [3]. The execute this algorithm is lower than EFK approaches. Also,
research presented in this article is a first step for our ultimate the approach deals with large number of landmarks even with
goal, which is to propose a SLAM technique for Urban small sets of particles and the results remain appropriate.
Search and Rescue (USAR) scenarios, whose environment Also, an approach based on PF is proposed in [7]. This work
often contain smoke and dust particles. Therefore, it is is discussed in more detail in Section III-B.
necessary to study the most popular and commonly used Equally important are graph-based SLAM algorithms, as
approaches and this work will serve as guidance to our later they cover some weaknesses of PFs and EKFs techniques [9].
technique, as well as to researchers interested in SLAM and In these SLAM algorithms, the data extracted is used to build
in ROS, in general. a graph. The graph is composed by nodes and arcs. Each arc
in the graph represents a constraint between successive poses,
This work has been supported by the CHOPIN research project which can be a motion event or a measurement event. In
(PTDC/EEA-CRO/119000/2010), by a PhD grant (SFRH/BD/64426/2009)
and by the Institute of Systems and Robotics (project Est- order to obtain a map, all the constraints are linearized and
C/EEI/UI0048/2011), all of them funded by the Portuguese science a sparse matrix is obtained, representing the sparse graph.
agency “Fundação para a Ciência e a Tecnologia”. J.M. Santos, D. Portugal This type of algorithms were first presented by Lu and Milios
and R.P. Rocha are with the Institute of Systems and Robotics, Univ. of
Coimbra, Pólo II, 3030-290 Coimbra, Portugal, email: {jsantos, davidbsp, [8]. In their work, pose constraints were retrieved by the scan
rprocha}@isr.uc.pt. matching process. However, due to the optimization process

‹,(((
used, the applicability of the algorithm in large scenarios is alignment of beam endpoints with the map obtained so
impracticable. Thrun et al. [9] presented the GraphSLAM far. The endpoints are projected in the actual map and
algorithm, which is based on [8], and evaluated its behavior the occupancy probabilities are estimated. Scan matching is
in large-scale urban environments. This has been possible solved using a Gaussian-Newton equation, which finds the
due to a reduction process, which removes map variables rigid transformation that best fits the laser beams with the
from the optimization process. In addition, Carlone et al. map. In addition, a multi-resolution map representation is
[10] also developed a graph-based SLAM approach, which used, to avoid getting stuck in local minima. Finally, the 3D
is discussed in Section III-E. state estimation for the navigation filter is based on EKF.
In the last few years, the number of SLAM approaches However, this is only needed when an Inertial Measurement
has increased and the need to compare different approaches Unit (IMU) is present, such as in the case of aerial robots.
grew significantly. Visually inspection of the resulting maps Thus, it will not be used in this work.
does not allow a correct comparison. So, the need to precisely
evaluate the results asks for a more accurate method - a quan- B. Gmapping
titative scale. For instance, in [12], a metric for comparing Gmapping2 is a laser-based SLAM algorithm as described
SLAM algorithms was developed, wherein the result is not by [7]. Furthermore, it is the most widely used SLAM pack-
evaluated using a reference, but rather by considering the age in robots worldwide. This algorithm has been proposed
poses of the robot during data acquisition. This fact allows by Grisetti et al. and is a Rao-Blackwellized PF SLAM ap-
comparison between algorithms with different outputs. Also, proach. The PF family of algorithms usually requires a high
the proposed method is independent on the sensor configu- number of particles to obtain good results, which increases
ration of the mobile robot, but it requires manual editing of its computational complexity. Also, the depletion problem3
the dataset before being applied. associated with the PF resampling process decreases the
All recognized SLAM evaluation methods rely on standard algorithm accuracy. This happens because the importance
datasets available to the community. However, these are not weights of particles may become insignificant. Hence, this
compatible with ROS framework yet. Conversely, in this means that there is a small probability that correct hypothesis
work, a study of the main laser-based 2D SLAM algorithms can be eliminated.
that are available in ROS is presented. All the tested tech- An adaptive resampling technique has been developed
niques use occupancy grids as the final output, which are in [7], which minimizes the particle depletion problem,
analyzed using a metric for map similarities. The focus is since this process is only performed when is needed. The
put on the map quality instead of the pose estimation errors, authors also proposed a way to compute an accurate dis-
since the mapping output is highly affected by localization tribution by taking into account not only the movement of
issues. The main goal is to provide an overview of the the robotic platform, but also the most recent observations.
strengths and weaknesses of all five algorithms implemented This decreases the uncertainty about the robot’s pose in the
in ROS and also to provide a simple, yet accurate quantitative prediction step of the PF. As a consequence, the number of
comparison, thus defining general guidelines for ROS users particles required is decreased since the uncertainty is lower,
to select the algorithm that best fits their requirements. due to the scan matching process. In our experiments, the
number of particles used by Gmapping was 30.
III. 2D SLAM A LGORITHMS
C. KartoSLAM
In this section, a brief description of five SLAM tech-
niques is conducted, namely: HectorSLAM, Gmapping, Kar- KartoSLAM4 is a graph-based SLAM approach developed
toSLAM, CoreSLAM and LagoSLAM. by SRI International’s Karto Robotics, which has been
extended for ROS by using a highly-optimized and non-
A. HectorSLAM iterative Cholesky matrix decomposition for sparse linear
HectorSLAM1 combines a 2D SLAM system based on systems as its solver [13]. A graph-based SLAM algorithm
robust scan matching and 3D navigation technique using an represents the map by means of graphs. In this case, each
inertial sensing system [11]. node represents a pose of the robot along its trajectory
The authors have focused on the estimation of the robot and a set of sensor measurements. These are connected
movement in real-time, making use of the high update by arcs which represent the motion between successive
rate and the low distance measurement noise from modern poses. For each new node, the map is computed by finding
LIDARs. The odometric information is not used, which gives the spatial configuration of the nodes which are consistent
the possibility to implement this approach in aerial robots with constraints from the arcs. In the KartoSLAM version
like, a Quadrotor UAV or in ground robots operating in available for ROS, the Sparse Pose Adjustment (SPA) is
uneven terrains. On the other hand, it might have prob- responsible for both scan matching and loop-closure proce-
lems when only low rate scans are available and it does dures [14]. The higher the number of landmarks, the more
not leverage when odometry estimates are fairly accurate. 2 http://www.ros.org/wiki/gmapping
The 2D pose estimation is based on optimization of the 3 The particle depletion problem consists in the elimination of a large
number of particles from the sample set during the resampling stage.
1 http://www.ros.org/wiki/hector_slam 4 http://www.ros.org/wiki/karto
amount of memory is required. However, graph-based SLAM
algorithms are usually more efficient than other approaches
when maintaining a map of a large-scale environments. In
the particular case of KartoSLAM, it is extremely efficient,
since it only maintains a pose graph.
D. CoreSLAM
CoreSLAM5 is a ROS wrapper for the original 200-
lines-of-code tinySLAM algorithm, which was created with
the purpose of being simple and easy to understand with
minimum loss of performance [15]. The algorithm is divided (a) MRL Arena (4.57×4.04m) (b) 1r5map (12.24×11.67m)
in two different steps: distance calculation and update of the
map. In the first step, for each incoming scan, it calculates Fig. 1: Maps used in the simulation experiments.
the distance based on a very simple PF algorithm. The PF TABLE I: Error estimation for each algorithm in the MRL
matches each scan from the LRF with the map and each Arena (Simulation Experiments).
particle of the filter represents a possible pose of the robot
and has an associated weight, which depends on previous Simulation Experiments
iterations. After the selection of the best hypotheses, the HectorSLAM Gmapping KartoSLAM CoreSLAM LagoSLAM
0.4563 0.4200 0.5509 11.8393 1.4646
particles with lower weight are eliminated and new particles
are generated. In the update step, the lines corresponding integrated in ROS. Additionally, tests were also conducted
to the received scans are drawn in the map. However, with a physical robot in a real world scenario, so as to
of drawing a single point when an obstacle is detected, study the behavior of these SLAM packages in the ab-
tinySLAM draws an adjustable set of points surrounding the sence of perfect simulated conditions. Despite having perfect
obstacle. conditions in Stage simulations, like noise free odometric
and range sensing information, SLAM algorithms assume
E. LagoSLAM
measurement uncertainty, which may not lead to perfect
The basis of graph-based SLAM algorithms is the mini- results. In all experiments, the robot was teleoperated. Note
mization of a nonlinear non-convex cost function [10]. More that the abstraction layer provided by ROS allows to use
precisely, at each iteration, a local convex approximation the same code for both simulation and real experiments.
of the initial problem is solved in order to update the HectorSLAM requires a LRF with high update rates. The
graph configuration. The process is repeated until a local update rate of the Hokuyo URG-04LX-UG01 LRF used in
minimum of the cost function is reached. However, this the experiments is 10 Hz and Stage uses a similar maximum
optimization process is highly dependent on an initial guess update rate. In order to deal with this, the robot was driven
to converge. Carlone et al. [10] developed a new approach with low angular and linear speed. In the tests that were
called LagoSLAM6 (Linear Approximation for Graph Op- conducted, the output of each approach, described previously,
timization), in which the optimization process requires no was the respective generated 2D occupancy grid map.
initial guess. In addition, the technique can be used with To evaluate the quality of the maps obtained, an analysis
any standard optimizer. In fact, the algorithm available in of the error between the generated map and the ground truth
ROS has the possibility to choose between three different was conducted. A performance metric based on the k-nearest
optimizers: Tree-based netwORk Optimizer (TORO)7 , g2o neighbor concept was used. To that end, the best fit alignment
[16] and LAGO [10]. In the experiments conducted, the between the ground truth and the map obtained is computed
LAGO optimizer was used. Assuming that the relative po- (see Fig. 2), using intensity-based image registration tools.
sition and orientation are independent for each node in the The process works as follows: the resulting map of each
graph, the authors solve a system of equations equivalent to algorithm is binarized. The binarized map only contains
the non-convex cost function. To this end, a set of procedures boundaries and obstacles of the scenario. Afterwards, the
based on graph theory were presented to obtain a first order binarized map is aligned narrowly with the respective ground
approximation of the non-linear system, by means of a linear truth using a set of Matlab functions available in the Image
orientation and a linear position estimation. Processing Toolbox. Since both ground truth map and the
generated map are aligned, the distance from each occupied
IV. R ESULTS & D ISCUSSION
cell of the ground truth map to the nearest cell in the resulting
All five SLAM techniques described were tested using 2D map is determined using knnsearch, which computes the k-
simulations and real world experiments. Simulations were nearest neighbor cells (in this case k = 1). The sum of all
performed in Stage8 , which is a realistic 2D robot simulator distances obtained is then divided by the number of occupied
5 http://www.ros.org/wiki/coreslam
cells in the ground truth map. This error metric provides a
6 https://github.com/rrg-polito/rrg-polito-ros-pkg normalized measure of distance (in terms of cells), which
7 http://www.openslam.org/toro.html can be applied in any generic occupancy grid, as long as the
8 http://www.ros.org/wiki/stage ground truth map is available.
(a) HectorSLAM (b) Gmapping (c) KartoSLAM (d) CoreSLAM (e) LagoSLAM

Fig. 2: Maps obtained through simulation in the MRL arena environment. Red represents the ground truth and blue represents
the final map.

A. Simulation Tests TABLE II: Error estimation for each algorithm in the
1r5map.
Stage simulations were performed using two different
maps: the MRL Arena and the 1r5map, which are shown in Simulation Experiments
Fig. 1. Special focus is given to the former since the MRL HectorSLAM Gmapping KartoSLAM CoreSLAM LagoSLAM
7.4581 5.3670 5.4380 171.5218 9.3041
arena is used in both simulation and real world experiments.
The 1r5map enables the analysis of the behavior of the some influence in the results. Since both KartoSLAM and
SLAM techniques in a larger scenario and with less features LagoSLAM are graph-based SLAM approaches, comparing
per square foot (cf. Fig. 1b). This is particularly important the error between them is interesting. Both mapped success-
to analyze the dependency on landmarks of each approach. fully the arena. However, LagoSLAM obtained the greatest
In the simulation experiments, the model of the range error (excluding CoreSLAM). which can be explained by the
sensor was defined just like the sensor used in real world impressive performance of the SPA solver method that Kar-
experiments: the Hokuyo URG-04LX-UG01, which has a toSLAM employs. Nevertheless, the quality of the resulting
maximum range of about 5.6 meters. Teleoperation was map obtained with LagoSLAM is still appropriate.
executed using the keyboard9 . All the sensing and actuator
In order to compare all the SLAM approaches in a
data from the robot (LFR, odometry, velocity commands,
different scenario, a series of simulations using 1r5map
etc.) was recorded previously and then played back for each
were also conducted. These results are shown in Table II
algorithm. Thus, all SLAM packages were tested under the
Fig. 3. The 1r5map is a relatively large map with a low
same exact conditions. This was only possible due to the
number of distinctive landmarks. In this case, HectorSLAM
rosbag tool10 .
obtained a higher error value than Gmapping. One of the
For each algorithm, the resolution of the final map was set
reasons is the fact that HectorSLAM relies largely in scan
to 0.01 meters/pixel. In order to mitigate the low scanning
matching between successive measurements. The full po-
rate, the number of sub-maps used in HectorSLAM was
tential of HectorSLAM could not be observed due to the
defined as 5. Since, each sub-map has half resolution of its
properties of the sensor used in these simulation experiments.
precedent sub-map, the scan matching process is more accu-
Beyond that, due to the reduced number of landmarks, the
rate, i.e., the scan matching performance is higher in lower
error grows continuously, since the scan matching process
resolution maps. In all experiments, the default parameters
is not fed with enough information. Additionally, since it
were used. For example, as mentioned before, the number
is not using odometry information, a few issues arise when
of particle for the Gmapping algorithm was 30.
traversing long corridors with fixed width. As a consequence,
Analyzing the simulations results in the MRL arena, and
the inferior result obtained with HectorSLAM in this test
according to Table I and Fig. 2, Gmapping and HectorSLAM
are not surprising. Once again, the Gmapping algorithm
generated the map with lowest and similar error. On the other
presents exceptional results, which reveal the accuracy of PF
hand, KartoSLAM presented a slightly greater error, while
approaches. KartoSLAM revealed the robustness of graph-
the results of CoreSLAM presented the highest error value.
based SLAM approaches, since it obtained the second lowest
Gmapping is an extremely optimized PF algorithm with an
error value. Once again, LagoSLAM obtained an higher
improved resampling process, and this justifies the quality
error value than KartoSLAM and CoreSLAM was the worst
of the resulting map. Also, the scan matching process of
performing algorithm. Since the error values are obtained via
HectorSLAM showed its efficiency. Nevertheless, it must be
the euclidean distance between points in the ground truth
noted that the low speed commands given to the robot, in
and the nearest point in the map, the errors obtained in the
order to compensate the rate update from the LFR, have
1r5map map are greater than in the other experiments due to
9 http://www.ros.org/wiki/teleop_twist_keyboard the larger dimensions of the map, this is particularly visible
10 http://www.ros.org/wiki/rosbag in the case of CoreSLAM.
(a) HectorSLAM (b) Gmapping (c) KartoSLAM (d) CoreSLAM (e) LagoSLAM

Fig. 3: Occupancy Grid Maps obtained through simulation in the 1r5map environment.

(a) HectorSLAM (b) Gmapping (c) KartoSLAM (d) CoreSLAM (e) LagoSLAM

Fig. 4: Performance Analysis in the real world. Red represents the ground truth and blue represents the final map.

TABLE III: Error estimation for each algorithm in the MRL some general trends, in particular for HectorSLAM, Gmap-
Arena (Real World Experiments). ping and LagoSLAM. According to the authors of [15],
CoreSLAM can have great performance in several disparate
Real World Experiments
HectorSLAM Gmapping KartoSLAM CoreSLAM LagoSLAM environments; however this claim is not backed up by the
1.1972 2.1716 1.0318 14.75333 3.0264 results extracted from our experiments.
0.5094 0.6945 0.3742 7.9463 0.8181
1.0656 1.6354 0.9080 7.5824 2.5236 In the KartoSLAM algorithm, the error obtained in the
real world experiments was not much larger than the error
B. Real World Tests in simulations. In fact, generally KartoSLAM was the best
In the real world experiments, three runs with different performing technique in the real world, being less affected
trajectories and initial positions were performed using a by noise than the other methods. This can be explained,
Stingbot11 robot [3], equipped with an Hokuyo URG-04LX- not only due to the performance of the SPA solver used in
UG01 and an Asus eeePC 1025C, running Ubuntu 11.10 KartoSLAM, but also because it is a full SLAM approach,
and ROS Fuerte. Once again, all the data was previously i.e. the map is obtained using the entire path and map and
recorded and subsequently played back for each algorithm. not only the most recent map and pose. The lower results of
Tests were conducted at the real-world MRL arena. The CoreSLAM in all experiments showed that its loop closure
algorithm parameters used in the simulation experiments procedure rarely converges. This is clear in the video that
were again adopted. shows a real world experiment and all the detailled results12 .
Fig. 4 shows that all five techniques were able to map the Beyond the error analysis conducted, an evaluation of the
scenario successfully. The error obtained for each algorithm computational load using each technique was carried out.
is shown in Table III. As can be seen, in general all A comparison of the CPU load in a Laptop equipped with
techniques led to worse results than in simulation. This slight an Intel Core i7-3630QM and 8Gb of RAM running each
performance hit is due to the existence of estimation errors in algorithm is presented in Fig. 5 and Table IV.
the robot position and noise on the laser scanning data, while Looking closely at the results, LagoSLAM presented the
mapping the real world MRL arena. An analysis of the error highest percentages of CPU usage. Moreover, the values
can give a more accurate information about the performance obtained are quite distant from the other four algorithms.
of the algorithms. This can be explained by the process developed to achieve
Despite the differences between virtual and real world the minimum cost function for the given graph configuration,
environments, the results extracted from both setups follow as referred in Section III-E. The resources needed by the

11 http://www.ros.org/wiki/mrl_robots 12 Available at: http://goo.gl/IMTKmt


35 associated to each particle. According to [15], CoreSLAM
KartoSLAM
CoreSLAM
uses a very simple PF to match LFR readings with the
30 map, which could lead to an erroneous position estimation.
HectorSLAM
Gmapping Additionally, the focus of the original work was to provide a
25 LagoSLAM simple SLAM technique with the ability to navigate within
long corridors without losing its location, and not the loop
% CPU Load

20 closing system.
V. C ONCLUSIONS
15
In this work, five representative 2D SLAM algorithms
10
available in ROS were tested through simulations and in
real world experiments. A discussion of the weaknesses
5
and strengths of each solution has been done. An accurate
overview of each of the 2D SLAM techniques available for
ROS was provided to shed light on the choice of an approach
0
0 20 40 60 80 100 120 140 160 according to one’s requirements.
Time (s)
In future work, we intend to develop a 2D SLAM tech-
Fig. 5: Evolution of the CPU load of each SLAM method nique in ROS for low visibility indoor scenarios, e.g., due to
using a real world dataset. smoke. This new technique will possibly adapt Gmapping or
KartoSLAM, due to the observed performance in this article,
TABLE IV: CPU Load (%) of the 2D SLAM approaches: and extend them with more sensing input information beyond
mean (x̄), median (x̃) and standard deviation (σ ) values. LRFs; e.g., sonars, IMUs and/or a dust sensor.
R EFERENCES
HectorSLAM Gmapping KartoSLAM CoreSLAM LagoSLAM
x̄ 6.1107 7.0873 5.4077 5.5213 21.0839 [1] S. Thrun., W. Burgard, D. Fox., Probabilistic Robotics, MIT Press,
x̃ 5.9250 5.5800 5.3000 5.4400 21.2250 2005.
σ 1.993 4.4287 1.3018 1.6311 2.1684 [2] M. Quigley et al., ROS: an open-source Robot Operating System. In
IEEE International Conference on Robotics and Automation(ICRA),
Workshop on Open Source Software, 2009.
[3] A. Araújo, D. Portugal, M. Couceiro and R. P. Rocha. Integrating
Arduino-based Educational Mobile Robots in ROS, In Int. Conf. on
other four approaches during the experiments are similar, as Autonomous Robot Systems, Lisbon, Portugal, April 25-29, 2013.
seen in Table IV. This CPU analysis reveals that all five [4] S. Huang, G. Dissanayake. Convergence and Consistency Analysis for
algorithms analyzed are quite efficient in terms of resources Extended Kalman Filter Based SLAM, In IEEE Trans. on Robotics,
2(5), Oct. 2007.
required and can be adopted online, during field experiments, [5] S. Thrun, D. Fox, W. Bugard, F. Dellaert, Robust Monte Carlo
to map generic 2D scenarios. Localization for Mobile Robots, In Artificial Inteligence, 128, 2001.
[6] M. Montemerlo, S. Thrun, D. Koller, B. Wegbreit, FastSLAM: A
C. Discussion Factored Solution to the Simultaneous Localization and Mapping
Problem, In AAAI National Conference on Artificial Intelligence, 2002.
According with our experiments, some ideas can be [7] G. Grisetti, C. Stachniss, W. Burgard. Improved Techniques for
Grid Mapping With Rao-Blackwellized Particle Filters, In Trans. on
retained. On one hand HectorSLAM relies only in scan Robotics , 23(1), Feb. 2007.
matching and it does not make use of odometry, which could [8] F. Lu, E. Milios, Globally Consistent Range Scan Alignment for
be an advantage or disadvantage depending on the robot and Environment Mapping, In Autonomous Robots, 1997.
[9] S. Thrun, M. Montemerlo. The GraphSLAM Algorithm With Appli-
the environment’s characteristics. On the other hand, ideally cations to Large-Scale Mapping of Urban Structures, In Proc. of the
it should be tested with specific hardware such as a high rate Int. Journal on Robotics Research, 2005.
[10] L. Carlone, R. Aragues, J.A. Castellanos, and B. Bona. A linear
LFR. approximation for graph-based simultaneous localization and mapping,
Gmapping showed its robustness in all experiments, since In Proc. of the Int. Conf. Robotics: Science and Systems, 2011.
in every experiment the error and CPU load always remained [11] S. Kohlbrecher, J. Meyer, O. Von Stryk, U. Klingauf. A Flexible and
Scalable SLAM System with Full 3D Motion Estimation, In the Int.
low. It combines both scan matching and odometry in order Symp. on Safety, Security and Rescue Robotics (SSRR), Nov. 2011.
to minimize the number of particles. [12] R. Kümmerle, B. Steder, C. Dornhege, M. Ruhnke, G. Grisetti,
C. Stachniss, A. Kleiner. On Measuring the Accuracy of SLAM
Both KartoSLAM and LagoSLAM are graph-based SLAM Algorithms, Autonomous Robots, 27(4), Nov. 2009.
approaches, but their results were distinctively different. [13] R. Vincent, B. Limketkai, M. Eriksen. Comparison of indoor robot
KartoSLAM provided accurate maps with lower CPU load, localization techniques in the absence of GPS, In Proc. of SPIE:
Detection and Sensing of Mines, Explosive Objects, and Obscured
while LagoSLAM generated maps with higher error and Targets XV of Defense, Security, and Sensing Symposium, April 2010.
CPU load. The reasons behind such discrepancies are related [14] K. Konolige, G. Grisetti, R. Kümmerle, B. Limketkai, R. Vincent,
Efficient Sparse Pose Adjustment for 2D Mapping, In Proc. of Int.
with the distinct processes of graph configuration and graph Conf. on Intelligent Robots and Systems (IROS), Oct. 2010.
optimization of the two techniques. [15] B. Steux, O. El Hamzaoui. tinySLAM: A SLAM algorithm in less than
Lastly, CoreSLAM achieved the less impressive results 200 lines C-language program, In Proc. of the Int. Conf. on Control
Automation Robotics & Vision (ICARCV), Dec. 2010.
and it is possible to denote a lack of convergence in its [16] R. Kümmerle, G. Grisetti, H. Strasdat, K. Konolige, W. Burgard: g2o:
loop closure mechanism. CoreSLAM uses a simple PF which A General Framework for Graph Optimization, IEEE International
Conference on Robotics and Automation (ICRA), 2011.
requires more particles, but has a lower computation power

You might also like