the metric map of environment.
In a subsequent work, Moravec (Moravec, 1996)
introduces the idea of a map represented in a three
dimensional occupancy grid. During the mapping, a
sequence of stereo images is processed and the result
of the mapping stored in a three dimensional array
named evidence grid. The cells are initializes with
zero value, indicating that there is no occupation ev-
idence. After several sensor readings, the cells are
filled out so that blocks of negative cells indicate free
space, while positive blocks indicate obstacle. In his
work, Moravec has used the theory of evidence of
Dempster-Shafer. We use here the Bayesian approach
also used by Elfes (Elfes, 1987).
Konolige (Konolige, 1997) has presented a
method to treat the problems relative to the sonars
in a more efficient way. Example of problems are
the specular reflection and redundancy of reading.
The proposed method is a mathematical refinement
of the method introduced by Elfes (Elfes, 1987). The
method is named as MURIEL (MUltiple Representa-
tion Independent Evidence Log).
In the Elfes’ works, mapping is performed without
considering dependence among the cell and its neigh-
bours. This implicates in inconsistent maps when
the mapping is performed in cluttered environments.
In a more recent work, Thrun (Thrun, 2003) has in-
troduced an advanced sensor model to deal with the
problem of dependence among cells presented by the
standard algorithm of Elfes (Elfes, 1987). The model
introduced by Thrun (Thrun, 2003) verifies the val-
ues of occupation of the neighboring cells and then
attributes the value of occupation to the current cell.
Thrun has based his work on the Bayesian theory.
Thrun et. al. (Thrun et al., 2005) affirm that
the main usefulness of the mapping with occupancy
grid is in the post-processing, that is, in the map con-
structed. The map can be useful in several appli-
cations like, navigation, path planning, recognition
of landmarks, obstacle avoidance and localization.
Borenstein and Koren (Borenstein and Koren, 1991)
for example, have implemented a method of obsta-
cle avoidance in real time named VFF (Virtual Force
Field). This method uses an occupancy grid map, ob-
tained from sonar data, to define the localization of
the obstacles inside of the environment.
In the Dutra’s work (Dutra et al., 2003), a robot
provided with an array of 24 sonars builds an occu-
pancy grid map of its surroundings and store it in its
internal memory. Later, this map is used for naviga-
tion, but the results obtained by this work in both nav-
igation and mapping were quite influenced by accu-
mulated errors of the odometry system. In our work,
we model the sonars taking into account the intrinsic
errors also to the odometry system.
Other works in the literature exemplify the use of
occupancy grid maps. Kong et. al. (Kong et al.,
2006) has implemented a localization system based
on EKF (Extended Kalman Filter) in which features
inside the environment, as corners and flat surfaces,
are detected. The information obtained about the fea-
tures is integrated with an occupancy grid map known
a priori to yield an accurate localization of the robot
in the environment.
3 THE STANDARD ALGORITHM
OF OCCUPANCY GRID
MAPPING
The standard algorithm formalized by Elfes (Elfes,
1989), builds the map from both the sensorial data and
the robot position (localization and orientation). The
mathematical formulation of the occupancy grid map-
ping is derived from Equation (1), which gives the
value of occupation of the whole map (Elfes, 1987;
Thrun et al., 2005; Thrun, 2003).
p(m|z
1:t
) (1)
In this equation m represents the obtained map, z
1:t
represents the set of measurements until the instant t.
The continuos space of the environment is converted
in a discrete space of cells, which form together an
approximation of the environment. Thus, the map is
defined as a finite set of cells m
x,y
. Each cell posses a
value, among 0 and 1, associated which corresponds
to the state of the cell, occupied and empty, or can
represent an unknown state. The value 0 means empty
cell and 1 occupied cell. The notation p(m
x,y
) refers
the probability of a cell of index < x, y > to be occu-
pied.
The standard algorithm divides the problem of
construction of the map in a set of smaller problems
of estimate of the values of each cell m
x,y
separately.
p(m
x,y
|z
1:t
) (2)
Due to reasons of numerical instabilities for probabili-
ties near 0 or 1, it is common to calculate the log-odds
of p(m
x,y
|z
1:t
) instead of p(m
x,y
|z
1:t
). The log-odds is
define for:
l
t
x,y
= log
p(m
x,y
|z
1:t
)
1− p(m
x,y
|z
1:t
)
(3)
The probabilities are easily recovered from the log-
odds ratio:
p(m
x,y
|z
1:t
) = 1−
1
1+ e
l
t
x,y
(4)
REPRESENTATION OF ODOMETRY ERRORS ON OCCUPANCY GRIDS
203