scispace - formally typeset
Search or ask a question
Proceedings ArticleDOI

A genetic algorithm for simultaneous localization and mapping

Tom Duckett1
10 Nov 2003-Vol. 1, pp 434-439
TL;DR: A genetic algorithm is described for solving the problem of simultaneous localization and mapping by a mobile robot, in which a population of candidate solutions is progressively refined in order to find a globally optimal solution.
Abstract: This paper addresses the problem of simultaneous localization and mapping (SLAM) by a mobile robot. The SLAM problem is defined as a global optimization problem in which the objective is to search the space of possible robot maps. A genetic algorithm is described for solving this problem, in which a population of candidate solutions is progressively refined in order to find a globally optimal solution. The fitness values in the genetic algorithm are obtained with a heuristic function that measures the consistency and compactness of the candidate maps. The results show that the maps obtained are very accurate, though the approach is computationally expensive. Directions for future research are also discussed.

Summary (2 min read)

I. INTRODUCTION

  • Maps are very useful for navigation by mobile robots in complex environments, being needed for tasks such as self-localization, path planning, manipulation of objects, and interaction with humans.
  • Without this assumption, the robot must somehow search the space of possible maps, since alternative assignments in data association can induce very different maps.
  • Each of these trajectories is then evaluated by constructing a global occupancy map using the recorded range-finder data of the robot along the travelled path.
  • A fitness value is calculated for each of the candidate solutions, based on the consistency and compactness of the maps produced, and the search proceeds using a genetic algorithm (GA).

III. SLAM AS A GLOBAL OPTIMIZATION PROBLEM

  • In a global optimization problem, there may be many solutions which are locally optimal.
  • The goal is to find the one best solution, avoiding the local optima [15] .
  • A global search algorithm can be used to search the space of possible trajectories.
  • The goal is to find the vector of noise parameters, and therefore the inferred trajectory, which produces the best map.
  • Each iteration or "generation" involves a competitive selection procedure that favours fitter solutions and rejects poorer solutions.

A. Chromosome Encoding

  • Each chromosome is encoded as a string of floating point numbers corresponding to the correction factors applied to the recorded odometry data.
  • In the experiments presented here, the odometer trace was divided into segments of 3 meters in length.
  • That is, the measured values of δ j and α j obtained from the robot's odometry are assumed to lie within a fixed range of their true values (in the experiments presented here, a range of ±2% was assumed for both the distances and angles).
  • It would also be possible to assume some parametric distribution (e.g., Gaussian) for the correction factors during initialization.

B. Fitness Function

  • The fitness function contains domain specific knowledge that is used to assess the quality of the candidate solutions.
  • A much simplified version of the occupancy grid model [12] is used to construct a map for each candidate solution, then two heuristics are combined to obtain a fitness value for each map.
  • The recorded odometry data is corrected using the correction factors encoded in the chromosome.
  • The following heuristic functions are then calculated:.

1) Map Consistency (MC1):

  • The idea here is to measure the overall consistency of the sensory information contained in the gridmap.
  • The authors try to measure the degree of disagreement or "conflict" between the sensor readings.
  • A similar metric was proposed by Murphy et al. [13] based on Dempster-Shafer theory.

2) Map Compactness (MC2):

  • Early experiments with the map consistency measure showed that the genetic algorithm could produce maps with very low conflict but which were obviously incorrect to the human eye.
  • The GA would try to avoid conflictrather than resolving it -by "twisting" certain critical areas of the map away from one another, when the represented regions were in fact physically adjacent (see Fig. 2 ).
  • The idea here is to reward the GA for producing smaller, more compact maps.
  • Note that better maps produce lower values of F.

C. Selection, Crossover and Mutation

  • The selection phase in a genetic algorithm involves creating a "mating pool" by picking individual solutions that are fitter with higher probability.
  • Individuals are then assigned an offspring count that is solely a function of their rank, using the scheme proposed by Baker [1] .
  • Instead, a scheme known as Remainder Stochastic Sampling Without Replacement is used.
  • The remaining strings needed to fill out the population are then obtained randomly by generating new offspring for each string with probability equal to the fractional part of e l .
  • Pairs of selected strings are then combined by crossover.

V. EXPERIMENTAL RESULTS

  • The algorithm was first tested using data recorded by a Pioneer I mobile robot equipped with a SICK laser scanner at the Artificial Intelligence Lab of the University of Freiburg [6] .
  • The genetic algorithm was run for 150 generations with a population size of 50, i.e., a total of 7500 candidate maps were evaluated, taking around 2 hours on a 200MHz Pentium II processor.
  • Fig. 4 shows the resulting fitness values produced, illustrating the convergence of the algorithm over time.
  • The corrected sensor data obtained from the fittest solution, together with the corresponding gridmap, is shown in Fig. 3 .

Did you find this useful? Give us your feedback

Content maybe subject to copyright    Report

A Genetic Algorithm for Simultaneous Localization and Mapping
Tom Duckett
Centre for Applied Autonomous Sensor Systems
Dept. of Technology,
¨
Orebro University
SE-70182
¨
Orebro, Sweden
http://www.aass.oru.se
AbstractThis paper addresses the problem of
simultaneous localization and mapping (SLAM) by
a mobile robot. The SLAM problem is defined as a
global optimization problem in which the objective is
to search the space of possible robot maps. A genetic al-
gorithm is described for solving this problem, in which
a population of candidate solutions is progressively
refined in order to find a globally optimal solution.
The fitness values in the genetic algorithm are obtained
with a heuristic function that measures the consistency
and compactness of the candidate maps. The results
show that the maps obtained are very accurate, though
the approach is computationally expensive. Directions
for future research are also discussed.
I. INTRODUCTION
Maps are very useful for navigation by mobile
robots in complex environments, being needed for
tasks such as self-localization, path planning, manip-
ulation of objects, and interaction with humans. To
navigate in unknown environments, an autonomous
robot requires the ability to build its own map while
simultaneously maintaining an estimate of its own
position. This is a hard problem because the same,
noisy sensor data must be used for both mapping and
localization. We can separate two major sources of
uncertainty in solving this problem:
(i.) the continuous uncertainty in the positions of the
vehicle and the observed environmental features
(e.g., due to sensor noise, uncertain execution of
motor commands, etc.), and
(ii.) the combinatorial labelling problem of data as-
sociation (e.g., landmark identification, feature
recognition, place recognition, etc.) in which a
correspondence must be found between sensor
measurements and the features already repre-
sented in the map.
Most current solutions to the SLAM problem con-
sider only the first type of uncertainty, and assume
that the data association problem is solved when
observations are integrated into the map (e.g., it is
typical to assume that all landmarks can be identified
uniquely). However, this assumption is bound to fail
sooner or later for robots operating in complex envi-
ronments. In short, data association failures produce
localization errors, which can lead to catastrophic
errors in the map. Without this assumption, the robot
must somehow search the space of possible maps,
since alternative assignments in data association can
induce very different maps.
In this paper, a new approach is proposed in which
SLAM is defined as a global optimization problem,
and the objective is to search the space of possible
robot trajectories. There is no explicit data associa-
tion or self-localization phase. Instead, the recorded
odometry data of the robot is used as a model from
which an initial population of possible trajectories
is randomly generated. Each of these trajectories is
then evaluated by constructing a global occupancy
map using the recorded range-finder data of the robot
along the travelled path. A fitness value is calculated
for each of the candidate solutions, based on the
consistency and compactness of the maps produced,
and the search proceeds using a genetic algorithm
(GA). GAs are a well-known search technique in
which simplified, numerical forms of the biological
processes of selection, inheritance and variation are
used to improve the average fitness of the population
through successive iterations [7].
The rest of this paper is structured as follows.
After a brief review of related work, SLAM is
defined as a global optimization problem (Section
3), followed by a description of the genetic algorithm
developed to solve it (Section 4). Experimental re-
sults using sensor data from a real robot are then
presented, followed by conclusions and suggestions
for future work.

II. RELATED WORK
A classical solution to the SLAM problem is the
Extended Kalman Filter (EKF), a linear recursive
filter that estimates the absolute position of the robot
and all of the landmarks in the map (see e.g., [2],
[5]). The EKF requires analytic models of the vehicle
motion and observations, it makes a number of
assumptions which are often violated in practice, and
it will fail whenever data association fails.
Nebot et al. [14] extended the EKF with a Monte
Carlo sampling technique for handling possible data
association errors. The EKF is used for normal
operation, only switching to the sampling technique
to resolve ambiguities in landmark identification,
e.g., when a large loop is to be closed. While this
approach may reduce the number of data association
errors, it does not preclude them in all situations.
Measurements for incorrectly identified landmarks
would still be integrated by the EKF, producing an
incorrect map.
Gutmann and Konolige [6] considered mapping
of large, circular environments using a combination
of topological and metric representations. An in-
cremental version of the Lu and Milios algorithm
for registration of laser scans [10] was first used
to find the most consistent metric representation
given the current topology. Then a global correlation
procedure [8] was used to detect when a previously
visited location had been reached. This would trigger
iteration of the local registration algorithm to obtain
a new metric map based on the corrected topology,
thus “closing the loop”. A drawback of this approach
is that false matches in the global registration proce-
dure could produce catastrophic mapping errors.
Thrun et al. [16] used an expectation maximization
(EM) algorithm for robot mapping, which alternates
between an ‘E-step’ that estimates the trajectory of
the robot given the current map and an ‘M-step’ that
estimates the map given the current trajectory. While
effective, this technique is basically a gradientbased
hill-climber or local optimization technique, so it de-
pends upon a good initial solution to avoid becoming
trapped in a local optimum.
Montemerlo et al. [11] introduced a hybrid ap-
proach using a particle filter to track the pose of
the robot, where each particle is associated with a
set of Kalman filters estimating the position for each
landmark. This approach has the advantage that it
is able to represent and search between multiple
hypotheses for the full map (i.e., each hypothesis
comprises the robot pose and all landmark positions).
It has the disadvantage that the particle set must be
large enough to include a particle sufficiently close
to the true pose of the robot at all times, which may
not be practical when closing very large loops.
III. SLAM AS A GLOBAL OPTIMIZATION
PROBLEM
In an optimization problem, the aim is to minimize
or maximize some objective function. In a global
optimization problem, there may be many solutions
which are locally optimal. The goal is to find the one
best solution, avoiding the local optima [15].
In this paper, SLAM is treated as a continuous
global optimization problem with the following ele-
ments:
(i.) The search is carried out in the space of possible
robot trajectories. A trajectory can be defined as
a vector [δ
1
, α
1
, ..., δ
N
, α
N
] where δ
j
and α
j
are
the relative distance and rotation travelled by the
robot in one small step j, and there are N steps
in total.
(ii.) The robot’s own measurements of its trajectory
are used as a generative model. In general, these
measurements will be corrupted by noise, e.g.,
due to odometer drift error. We use the recorded
odometry trace of the robot to generate candi-
date solutions by applying different correction
factors to the measured values of δ
j
and α
j
.
(iii.) Candidate solutions are coded as a vector of cor-
rection factors. The trajectory of the robot is first
divided into M segments, where M N in gen-
eral, in order to reduce the number of variables
optimized to a manageable level. One solu-
tion consists of a vector [δ
1
, α
1
, ..., δ
M
, α
M
]
where δ
k
, α
k
are the correction factors ap-
plied to the distance and angle measurements
within one segment k. We assume that the
noise properties are uniform along the trajectory
within each segment.
(iv.) A set of allowed moves for generating new
solutions from previous ones is defined.
(v.) An evaluation function is used to assess the
quality of the candidate solutions. This is imple-
mented by inferring a map from each candidate
trajectory, then using a heuristic function to
assess the quality of the maps obtained.
With this approach, a global search algorithm can
be used to search the space of possible trajectories.

The goal is to find the vector of noise parameters, and
therefore the inferred trajectory, which produces the
best map. In this paper, the SLAM problem is thus
solved by a genetic algorithm, described as follows.
IV. THE GENETIC ALGORITHM
Genetic algorithms are a global search technique
which mimic aspects of biological evolution, namely
the process of natural selection and the principle
of “survival of the fittest”. They use an adaptive
search procedure based on a population of candidate
solutions or “chromosomes”. Each iteration or “gen-
eration” involves a competitive selection procedure
that favours fitter solutions and rejects poorer solu-
tions. The successful candidates are then recombined
with other solutions by swapping components with
one other; they can also be mutated by making a
small change to a single component. The procedure
is repeated for many generations, producing new
solutions that are biased towards regions of the
search space in which good solutions have already
been found.
A. Chromosome Encoding
Each chromosome is encoded as a string of float-
ing point numbers corresponding to the correction
factors applied to the recorded odometry data. In
the experiments presented here, the odometer trace
was divided into segments of 3 meters in length. For
the environment of Fig. 1, there were 50 segments
corresponding to the 150 meters travelled by the
robot.
For each segment k, the chromosome contains two
floating point numbers d
max
δ
k
+d
max
and
a
max
α
k
+a
max
that encode the correction
factors applied to the distance and angle measure-
ments respectively. That is, the measured values of
δ
j
and α
j
obtained from the robot’s odometry are
assumed to lie within a fixed range of their true
values (in the experiments presented here, a range of
±2% was assumed for both the distances and angles).
The initial population of chromosome is obtained
by randomly initializing the values of δ
k
and α
k
in this range. It would also be possible to assume
some parametric distribution (e.g., Gaussian) for the
correction factors during initialization.
B. Fitness Function
The fitness function contains domain specific
knowledge that is used to assess the quality of the
candidate solutions. An important property is that it
must be very fast, since it may be executed thousands
of times in one run of the algorithm.
In this paper, a much simplified version of the
occupancy grid model [12] is used to construct a map
for each candidate solution, then two heuristics are
combined to obtain a fitness value for each map. The
whole procedure runs in approximately 0.95 seconds
on a 200MHz Pentium II processor for one candidate
solution using the map data of Fig. 1 with 25971
readings from a SICK laser scanner (only 1 out of
every 5 readings is used in each scan, where the scans
are taken at intervals of 10 cm, and the remaining
readings are discarded). The procedure is described
as follows.
The recorded odometry data is corrected using
the correction factors encoded in the chromosome.
Then the corrected odometry is combined with the
recorded laser range-finder data of the robot to
build an occupancy grid with a resolution of 10 cm.
Because of the use of laser data, we do not need
complex ray or cone models; a simple line model is
sufficient. For each cell i in the grid, two quantities
are calculated: occ
i
, the number of laser readings
which indicate that the cell is occupied, and emp
i
,
the number of readings which indicate that the cell
is empty. The following heuristic functions are then
calculated:
1) Map Consistency (MC1): The idea here is
to measure the overall consistency of the sensory
information contained in the gridmap. We try to
measure the degree of disagreement or “conflict”
between the sensor readings. A similar metric was
proposed by Murphy et al. [13] based on Dempster-
Shafer theory. The measure is calculated as
MC
1
=
i
min(occ
i
, emp
i
)
by taking the minimum of the occ
i
and emp
i
values
for all cells i.
2) Map Compactness (MC2): Early experiments
with the map consistency measure showed that the
genetic algorithm could produce maps with very low
conflict but which were obviously incorrect to the
human eye. The GA would try to avoid conflict
rather than resolving it by “twisting” certain critical
areas of the map away from one another, when the
represented regions were in fact physically adjacent
(see Fig. 2).
The idea here is to reward the GA for producing

Fig. 1. Raw sensor data from the Artificial Intelligence Lab,
Freiburg, as in [6], showing the odometry trace and laser range-
finger readings.
smaller, more compact maps. This is done by fitting
a bounding box to the map that indicates the total
area covered by cells with occ
i
> 0. The measure is
calculated as
MC
2
= (x
max
x
min
) × (y
max
y
min
)
where x
max
and x
min
refer to the maximum and
minimum x-coordinates of the bounding box,
measured in number of grid cells.
Fitness Value: Finally, the two metrics are com-
bined as
F = MC
1
+ wMC
2
where the weight w = 0.3 determines the relative im-
portance of the two heuristics in the fitness function.
Note that better maps produce lower values of F.
C. Selection, Crossover and Mutation
The selection phase in a genetic algorithm involves
creating a “mating pool” by picking individual so-
lutions that are fitter with higher probability. The
selected individuals in the mating pool are then com-
bined to make a new population using the crossover
operator, with occasional small random changes due
to the mutation operator, described as follows.
In the GA presented here, the population is first
sorted according to the values produced by the fitness
function. Individuals are then assigned an offspring
count that is solely a function of their rank, using the
scheme proposed by Baker [1]. In this method, each
Fig. 2. Corrected sensor data obtained using only the fitness
function F = MC
1
and the corresponding gridmap.
string l is assigned an expected offspring count e
l
.
The fittest individual is assigned a value of e
l
= λ
max
,
the weakest individual is assigned a value of e
l
=
λ
min
, and the other members of the population are as-
signed an intermediate value by linear interpolation.
In this paper, values of λ
max
= 1.5 and λ
min
= 0.5
were used.
The standard selection method in a GA is the
weighted roulette wheel [7]. However, this scheme
has the problem that the best individuals may fail
to produce offspring in the next generation, resulting
in a so-called stochastic error [9]. Instead, a scheme
known as Remainder Stochastic Sampling Without
Replacement is used. Each individual is first allo-
cated offspring according to the integer part of e
l
in completely deterministic fashion. The remaining
strings needed to fill out the population are then
obtained randomly by generating new offspring for
each string with probability equal to the fractional
part of e
l
. “Without replacement” means that strings
can only be selected once in the non-deterministic
phase, so that a string with e
l
= 1.5 would receive
either 1 or 2 offspring in total.
Pairs of selected strings are then combined by
crossover. Multiple crossover sites are used, so that
the encoded values in the two mating strings are
completely mixed up in the two strings produced.
This is achieved by randomly choosing between
the two parents at each site in the chromosome.
Crossover is carried out with probability p = 0.85,
otherwise the selected strings are left unchanged.
Mutation is carried out by picking single values

Fig. 3. Corrected sensor data obtained using the full fitness
function F = MC
1
+ wMC
2
and the corresponding gridmap.
within the strings with very low probability p =
0.005 and replacing those values with randomly
generated values, as upon initialization.
V. EXPERIMENTAL RESULTS
The algorithm was first tested using data recorded
by a Pioneer I mobile robot equipped with a SICK
laser scanner at the Artificial Intelligence Lab of the
University of Freiburg [6]. The raw sensor data is
shown in Fig. 1. The genetic algorithm was run for
150 generations with a population size of 50, i.e., a
total of 7500 candidate maps were evaluated, taking
around 2 hours on a 200MHz Pentium II processor.
Fig. 4 shows the resulting fitness values produced, il-
lustrating the convergence of the algorithm over time.
The corrected sensor data obtained from the fittest
solution, together with the corresponding gridmap,
is shown in Fig. 3.
VI. CONCLUSIONS AND FUTURE WORK
The major contribution of this paper is that the
problem of simultaneous localization and mapping
(SLAM) has been defined for the first time as a
global optimization problem. A genetic algorithm
was developed to solve this problem, producing a
global solution by searching the space of possible
robot maps.
Genetic algorithms are particularly useful for solv-
ing environment modelling problems because they
Fig. 4. Fitness values over time for the genetic algorithm using
the data of Fig. 1, showing the fitness of both the best and median
members of the population in each generation.
exploit the building block hypothesis, whereby better
and better strings are constructed from the best
partial solutions (i.e., schemata or building blocks)
of previous generations [4]. Most real world envi-
ronments can be decomposed spatially into natu-
ral building blocks such as rooms, corridors, open
spaces, etc.
A major benefit of the approach is that it makes
very few assumptions about the underlying problem,
and the only critical parameter is the weighting
between the consistency and compactness heuristics
in the fitness function. A disadvantage of the ap-
proach at present is that it requires large amounts of
computation.
There are other possible algorithms for performing
global optimization [15], such as branch and bound
algorithms, simulated annealing, etc., which should
also be investigated. A further possibility would be
to combine the global search algorithm with a local
optimization method, e.g., EKF [5], consistent pose
estimation [10], relaxation [3], etc. In the case of
the GA, this could dramatically reduce the overall
computation time.
Another important direction is to implement an on-
line version of the algorithm suitable for use in real-
time on a self-navigating mobile robot. This would
involve continually searching the space of possible
maps while the robot is in motion, automatically ex-
tending the candidate maps with the incoming sensor
information. The current best map would be used
for decision making, e.g., path planning. A further
possibility would be to investigate implementation
of the algorithm on parallel processors, given the
parallel nature of evolutionary computation.

Citations
More filters
Dissertation
07 Nov 2011
TL;DR: This paper investigates the use of optimisation algorithms to find relative distance configurations that minimise a straightforward error function based on the Received Signal Strength Indication (RSSI) by simulating noise-free conditions, and finds that for the range of mote clusters sizes considered as a static field model the results are indeed sufficiently encouraging to indicate the need to continue the research.
Abstract: Smart dust (wireless sensor) networks have many applications in environmental monitoring. In many such applications, the data gathered by the motes is only useful in combination with knowledge of the motespositions, and this needs to be estimated in cases where they are airborne, or otherwise not statically fixed. GPS based location solutions are prohibitively expensive and also present some operational difficulties, so it is important to find others ways to determine location. This is usually termed Localisation, a problem made more complex where the position and velocity of the motes are subject to external forces. We investigate this by exploring the use of optimisation algorithms to find relative distance configurations that minimise a straightforward error function based on the Received Signal Strength Indication (RSSI). In this paper we focus on simulating noise-free conditions; although less realistic, this provides information about whether or not this problem can be satisfactorily solved at all in reasonable time, and, if so, for what sizes of mote network will this be possible. We find that for the range of mote clusters sizes considered as a static field model the results are indeed sufficiently encouraging to indicate the need to continue the research. Key-Words: Smart dust, evolutionary algorithms, environmental monitoring, location estimation. Rollings GA. and Corne DW. [104] Intelligent Operators for Localisation of Dynamic Smart Dust Networks. 8th International Conference on Hybrid Intelligent Systems (HIS2008), Technical University of Catalonia, Barcelona, Spain, September 2008. Abstract: Wireless Sensor Networks (WSN) of Smart dust motes are becoming increasingly effective in environmental monitoring applications. In some applications, data gathered via WSN are only useful when combined with individual mote positions and time-stamps; if the motes are not static, it is important to find methods for their 3D location estimation from available RSSI signal data. Usually termed Localisation, this problem is made more complex when the positions of the motes are subject to Wireless Sensor Networks (WSN) of Smart dust motes are becoming increasingly effective in environmental monitoring applications. In some applications, data gathered via WSN are only useful when combined with individual mote positions and time-stamps; if the motes are not static, it is important to find methods for their 3D location estimation from available RSSI signal data. Usually termed Localisation, this problem is made more complex when the positions of the motes are subject to

3 citations


Cites background from "A genetic algorithm for simultaneou..."

  • ...common to many implementations such as those by (Duckett, 2003) [32], (Fujiwara & Sawai, 1999) [41], (Kalyanmoy, 2001) [70], (Goldberg, 1989) [49], and (Zitzler et al, 2000) [144] amongst many others....

    [...]

Journal ArticleDOI
09 Jul 2020
TL;DR: An optimization method, Particle Swarm Optimization (PSO), is used to automatically determinate and arrange the FLC’s input membership function and the stability and effectiveness of the proposed method have been significantly satisfied.
Abstract: The ineffectiveness of the wall-following robot (WFR) performance indicated by its surging movement has been a concerning issue. The use of a Fuzzy Logic Controller (FLC) has been considered to be an option to mitigate this problem. However, the determination of the membership function of the input value precisely adds to this problem. For this reason, a particular manner is recommended to improve the performance of FLC. This paper describes an optimization method, Particle Swarm Optimization (PSO), used to automatically determinate and arrange the FLC’s input membership function. The proposed method is simulated and validated by using MATLAB. The results are compared in terms of accumulative error. According to all the comparative results, the stability and effectiveness of the proposed method have been significantly satisfied.

3 citations


Cites background from "A genetic algorithm for simultaneou..."

  • ...The earliest strategy is a Genetic Algorithm (GA) [20, 21, 22, 23], which utilizes the creation of mutation and crossover in finding the best optimum solution [24]....

    [...]

Proceedings ArticleDOI
06 Jan 2009
TL;DR: GASA-Hop is proposed which uses GASA as a post-optimizer of DV-Hop to further improve the accuracy of its position estimation and simulation results reveal that the proposed method is effective.
Abstract: Wireless sensor networks are highly useful for many location-sensitive applications. The position of each node is assumed in most wireless sensor networks, which can make the sensed information meaningful. Finding position without GPS is important when GPS is not accessible or not practical to use. Typically, with the positions of only a few sensors predetermined, localization algorithms work for estimation of remaining sensor positions. DV-Hop is the most popular one. Intrinsically, localization is an optimization problem based on various distance/path measures. GA and SA are both widely used approaches toward optimization problems with certain strength and weakness. GASA which combines GA and SA can provide a more powerful optimization method. In this paper, we firstly propose GASA-Hop which uses GASA as a post-optimizer of DV-Hop to further improve the accuracy of its position estimation. Our simulation results reveal that GASA-Hop is effective.

3 citations

Book ChapterDOI
01 Jan 2020
TL;DR: The proposed approach improves the smartphone performance during user navigation while maintaining a fine-grain localization accuracy, but also preserving the user’s privacy with respect to conventional fingerprinting approaches.
Abstract: Indoor localization systems (ILS) evolved over the last years, mainly due to the fact that Global Positioning Systems (GPS) lack precision or fail entirely to localize smartphone users in indoor environments. Many studies attempted to alleviate this issue by utilizing techniques developed on top of technologies, such as Bluetooth beacons and RFID that require costly installation of specialized equipment, or techniques such as Google Wi-Fi/Cell DB and fingerprinting that utilize the received signal strength intensity (RSSI) of the already existing Wi-Fi access points (APs) of a building or cellular towers of the surrounding telecommunication infrastructure. The latter approaches, however, face privacy and/or performance issues since they gain knowledge regarding the requested user location during the indoor localization process and/or require high energy, storage and computational power resources in order to localize the user in situ the smartphone device. In this chapter, we introduce a bio-inspired modeling approach for addressing all the aforementioned concerns. In particular, an artificial neural network is used to model an area’s RSSI data at the server side, which is then forwarded to the client side to predict the user’s current location on the smartphone device. The proposed approach improves the smartphone performance during user navigation while maintaining a fine-grain localization accuracy, but also preserving the user’s privacy with respect to conventional fingerprinting approaches. Our experimental studies demonstrate the superiority of the proposed approach on real datasets of Wi-Fi traces.

2 citations

Proceedings ArticleDOI
30 Oct 2005
TL;DR: Experimental results show that CEPF is efficient for SLAM and indicate superior performance compared with those of the EKF and PF method.
Abstract: This paper presents the implementation of particle filter (PF) combined with a coevolution mechanism derived from the competition model of ecological species for mobile robot simultaneous localization and mapping (SLAM). The new version of particle filters is termed coevolution particle filter (CEPF). In CEPF particles are clustered into species, each of which represents the posterior estimation of robot's pose or landmark locations and is superior to a single particle. Since the coevolution between the species ensures that the multiple distinct hypotheses can be estimated at the same time. And the number of particles can be adjusted adaptively over time according to the population growth model. In addition, by using the crossover and mutation operators in evolutionary computation, intra-species evolution can drive the particles move towards the regions where the desired posterior density is large. So a small number of particles can represent the desired density well enough to make precise posterior estimation. Experimental results show that CEPF is efficient for SLAM and indicate superior performance compared with those of the EKF and PF method.

2 citations


Cites methods from "A genetic algorithm for simultaneou..."

  • ...COEVOLUTIONARY ALGORITHM Evolutionary algorithm (EA), especially genetic algorithm, have been successfully used in different mobile robot applications, such as path planning [10] , map building [11] and even pose tracking for robot localization [12] ....

    [...]

References
More filters
Book
01 Sep 1988
TL;DR: In this article, the authors present the computer techniques, mathematical tools, and research results that will enable both students and practitioners to apply genetic algorithms to problems in many fields, including computer programming and mathematics.
Abstract: From the Publisher: This book brings together - in an informal and tutorial fashion - the computer techniques, mathematical tools, and research results that will enable both students and practitioners to apply genetic algorithms to problems in many fields Major concepts are illustrated with running examples, and major algorithms are illustrated by Pascal computer programs No prior knowledge of GAs or genetics is assumed, and only a minimum of computer programming and mathematics background is required

52,797 citations

Book
01 Jan 1975
TL;DR: Names of founding work in the area of Adaptation and modiication, which aims to mimic biological optimization, and some (Non-GA) branches of AI.
Abstract: Name of founding work in the area. Adaptation is key to survival and evolution. Evolution implicitly optimizes organisims. AI wants to mimic biological optimization { Survival of the ttest { Exploration and exploitation { Niche nding { Robust across changing environments (Mammals v. Dinos) { Self-regulation,-repair and-reproduction 2 Artiicial Inteligence Some deenitions { "Making computers do what they do in the movies" { "Making computers do what humans (currently) do best" { "Giving computers common sense; letting them make simple deci-sions" (do as I want, not what I say) { "Anything too new to be pidgeonholed" Adaptation and modiication is root of intelligence Some (Non-GA) branches of AI: { Expert Systems (Rule based deduction)

32,573 citations


"A genetic algorithm for simultaneou..." refers methods in this paper

  • ...GAs are a well-known search technique in which simplified, numerical forms of the biological processes of selection, inheritance and variation are used to improve the average fitness of the population through successive iterations [7]....

    [...]

01 Jan 1989

12,457 citations


"A genetic algorithm for simultaneou..." refers background in this paper

  • ...Genetic algorithms are particularly useful for solving environment modelling problems because they exploit the building block hypothesis, whereby better and better strings are constructed from the best partial solutions (i.e., schemata or building blocks) of previous generations [ 4 ]....

    [...]

Journal ArticleDOI
01 Jun 2001
TL;DR: The paper proves that a solution to the SLAM problem is indeed possible and discusses a number of key issues raised by the solution including suboptimal map-building algorithms and map management.
Abstract: The simultaneous localization and map building (SLAM) problem asks if it is possible for an autonomous vehicle to start in an unknown location in an unknown environment and then to incrementally build a map of this environment while simultaneously using this map to compute absolute vehicle location. Starting from estimation-theoretic foundations of this problem, the paper proves that a solution to the SLAM problem is indeed possible. The underlying structure of the SLAM problem is first elucidated. A proof that the estimated map converges monotonically to a relative map with zero uncertainty is then developed. It is then shown that the absolute accuracy of the map and the vehicle location reach a lower bound defined only by the initial vehicle uncertainty. Together, these results show that it is possible for an autonomous vehicle to start in an unknown location in an unknown environment and, using relative observations only, incrementally build a perfect map of the world and to compute simultaneously a bounded estimate of vehicle location. The paper also describes a substantial implementation of the SLAM algorithm on a vehicle operating in an outdoor environment using millimeter-wave radar to provide relative map observations. This implementation is used to demonstrate how some key issues such as map management and data association can be handled in a practical environment. The results obtained are cross-compared with absolute locations of the map landmarks obtained by surveying. In conclusion, the paper discusses a number of key issues raised by the solution to the SLAM problem including suboptimal map-building algorithms and map management.

2,834 citations

01 Jan 2003
TL;DR: This paper presents FastSLAM, an algorithm that recursively estimates the full posterior distribution over robot pose and landmark locations, yet scales logarithmically with the number of landmarks in the map.
Abstract: Simultaneous Localization and Mapping (SLAM) is an essential capability for mobile robots exploring unknown environments. The Extended Kalman Filter (EKF) has served as the de-facto approach to SLAM for the last fifteen years. However, EKF-based SLAM algorithms suffer from two well-known shortcomings that complicate their application to large, real-world environments: quadratic complexity and sensitivity to failures in data association. I will present an alternative approach to SLAM that specifically addresses these two areas. This approach, called FastSLAM, factors the full SLAM posterior exactly into a product of a robot path posterior, and N landmark posteriors conditioned on the robot path estimate. This factored posterior can be approximated efficiently using a particle filter. The time required to incorporate an observation into FastSLAM scales logarithmically with the number of landmarks in the map. In addition to sampling over robot paths, FastSLAM can sample over potential data associations. Sampling over data associations enables FastSLAM to be used in environments with highly ambiguous landmark identities. This dissertation will describe the FastSLAM algorithm given both known and unknown data association. The performance of FastSLAM will be compared against the EKF on simulated and real-world data sets. Results will show that FastSLAM can produce accurate maps in extremely large environments, and in environments with substantial data association ambiguity. Finally, a convergence proof for FastSLAM in linear-Gaussian worlds will be presented.

2,358 citations


"A genetic algorithm for simultaneou..." refers methods in this paper

  • ...[11] introduced a hybrid approach using a particle filter to track the pose of the robot, where each particle is associated with a set of Kalman filters estimating the position for each landmark....

    [...]

Frequently Asked Questions (2)
Q1. What are the contributions in "A genetic algorithm for simultaneous localization and mapping" ?

This paper addresses the problem of simultaneous localization and mapping ( SLAM ) by a mobile robot. 

A further possibility would be to combine the global search algorithm with a local optimization method, e. g., EKF [ 5 ], consistent pose estimation [ 10 ], relaxation [ 3 ], etc. A further possibility would be to investigate implementation of the algorithm on parallel processors, given the parallel nature of evolutionary computation. Future work should also include more detailed theoretical and empirical analysis of the problem and the algorithm required to solve it, e. g., with respect to the fitness criteria needed for different environments.