9.1
Introd u ction
In chapter 7, we described a grid-based sonar mapping system th a t was in spired by models of prim ary visual cortex, and sought to overcome the incorrect assumption of statistical independence of different grid segment occupancies. This m ethod produced good results when tested with real sonar data. How ever, it was based on heuristics, rather th an derived from m athem atical prin ciples. This meant th a t we could not be sure th a t its results were optimal in any way.
Previous grid-based mapping systems have been derived from Bayes’ the orem, b ut making the assumption of independence of occupancy of different
grid segments. They have to make this assumption, because they are incre
mental methods. This means th at an a posteriori probability distribution is stored in memory, and as new sonar data arrives this probability distribution is updated to take account of the new data. By making the independence assumption, these incremental grid-based systems can represent the probabil ity distribution by storing only a single probability for each segment. A truly Bayesian incremental mapping system, which did not make the independence assumption, would need to store a probability for every single possible map configuration. This is clearly impractical as the number of possible configura tions is exponential in the number of grid segments.
probabilities for all possible configurations - a single most probable m ap will suffice. This suggests a new non-incremental, Bayesian mapping strategy, in which a record of all sensory readings is kept, and these are used to construct a probability function on the space of all maps, which is then searched for
the m ap of maximum a posteriori probability. The space of all maps is very
large, but w ith a suitable choice of feature-based m ap representation, it has a structure th a t makes an approximate global search com putationally tractable. In this chapter we describe such a system.
In section 9.2 we lay out a general formalism, and construct a probability function on the space of all possible maps. In section 9.3 we describe the m ap representation and details of the search strategy for the high-dimensional space of all possible maps. In section 9.4, we describe a quantitative m ap quality m etric used to test the algorithm. In section 9.5 we describe the results of the algorithm . In section 9.6 we draw conclusions, and in section 9.7 make proposals for future research. The m athem atical notation used in this chapter is summarised in appendix B.
9.2
P rob ab ilistic M odelling
9.2.1 G eneral Form alism
The m apping system described in this chapter is not an incremental sys
tem. Instead, it is a prescription for generating a m ap given a history of
measurements. Each measurement a is characterised by transducer location
fa = ip^on2/a5@a)i and measured range R a. We consider the transducer loca
tions {fQ} to be fixed, but the ranges R = {-Ra } to be random variables. We
assume th a t the output of the rangefinder is discrete (which will always be the case for systems connected to a digital computer). We model the ro b o t’s
environment as consisting of a set of features T = {Fi : i = 1 . . . Nf } , each
of which is characterised by a feature type and location. In this work we re
U X O ---- ---
By Bayes’ theorem, the probability of a map {fa} given a set of readings
{rQ} is given by
P ( F = { f a } \ K = {ra}) P ( n = { r a } \ T = { f a } ) P ( F = { f a } )
P ( n = { r a } ) (9.1)
To produce a map for a given measurement history, we must find the feature
configuration {fa} th a t maximises this expression. Since the denominator does
not depend on {fa}, we may ignore it. The second term of the num erator is the
a priori probability for the map {fa}. The form of this function will depend on the type of environment the robot is typically found in - for example in a regular indoor environment, maps consisting of straight walls intersecting at right angles would have a higher probability than maps consisting of an unorganised collection of walls intersecting at acute angles. In the remainder
of this paper we will model this term by a prior P / ( f ) on the position of each
feature, and a probability distribution on the number of features, Nf . We use
a Poisson distribution, where the mean A is a param eter of the model (equal
to 10 for the experiments below):
Pf(fa) is the prior probability density for the position of a single feature.
system. In Bayesian theory, such a prior is called a reference prior (Antelman
1997), and will be approximated by a flat distribution. A flat distribution
over a continuous variable is improper, i.e. cannot be normalised to have total
probability 1, but may be taken as a limiting case.
In order to model P ( 1 Z = {ra } \ F = {/*}), we need a model of the way
environmental features interact to produce range readings. Our model is illus
trated in figure 9.1. For each range reading a, each feature Fi may produce an
echo, which arrives back at the transducer with time delay corresponding to
a distance of X ia (Fi,£a) (If the feature does not produce a reflection, X ia is
(9.2)
la
feature f Reading ra= min(Xl a , X2a)
;2a
feature f
Figure 9.1: The way environmental features interact to produce a sonar read
ing. Each feature fi produces an echo X ia in response to sonar beam a. The
range measured by the sensor is m m j(X jQ), the smallest of the echos. In the
situation shown in the figure, the echo from the corner f 2 is shorter th an the
echo from the wall / i , so the sensor measures the distance to the corner, X 2ol.
defined to be infinity). We will often abbreviate X ia (Fi,£a) to X i a, with the
functional dependence on £Q and Fi being understood. The range reported by
the sensor corresponds to the first echo to arrive at the sensor, and therefore
will be mini (X*a ), the smallest of all the ranges produced by the features in the
environment (see figure 9.1). In order to account for sensory noise, the X ia are
modelled by stochastic functions of feature position. We assume th a t sensory noise is a random process th a t affects separate readings independently, and
therefore th a t the X i a are independent for a given feature configuration {F*}.
The set of R a are therefore also independent for a given feature configuration.
Now, because R a = m ini PGa), Ra will take the value r when all the X i a
are greater than or equal to r, but they are not all strictly greater th an r:
P ( R a = r) = (Xu, > r) - n ^ ( * i a > r) (9.3)
i i
We define the map score of a map {f i } given a set of readings {rQ} to be
the log of the a posteriori probability of a feature configuration:
S C map({fi}; K } ) = logP ( T = {f i } In = {ra})
Using equations 9.1, 9.2, and 9.3, the independence of the {i?Q}, and the
flat approximation to P / ( f), this may be w ritten as:
S C ma p( {f i}i K } ) = COnst + ^ ] S C reading{^a5 fi) “1“ { Nf ) (^'^)
a
Where S C reading(fa] {f i }) is the reading score of a reading r a , given a m ap
{/*}=
S C r ca ding{.'^’a'i { f i } ' ) — I ®9
n P (^<a>ra) - I I P W a > ra)
(9.5)The quantity S C reading(r a5 { f i } ) can he interpreted as describing how well
the observation rQ is explained by the features { f i } through their reflections
X ia. To interpret this, let us consider the effect of adding a new feature to an existing map, illustrated in figure 9.2. If the feature predicts a shorter reading than r a , both the left and right products will decrease, lowering the overall reading score. If the feature predicts exactly r Q, then the left product will not decrease, b u t the right one will, increasing the reading score. If the feature predicts a longer reading than the observed one (or no return at all), neither term will be affected and the reading score will be unchanged.
Note th a t if ju st one reading has a posteriori probability of zero, then the
map score is — oo. This is an undesirable situation, because it means th a t
the scores of all other readings will have no effect on the to tal score, and