Academia.eduAcademia.edu

Circumventing the Feature Association Problem in SLAM

In autonomous applications, a vehicle requires reliable estimates of its location and information about the world around it. To capture prior knowledge of the uncertainties in a vehicle's motion response to input commands and sensor measurements, this fundamental task has been cast as probabilistic Simultaneous Localization and Map building (SLAM). SLAM has been investigated as a stochastic filtering problem in which sensor data is compressed into features, which are consequently stacked in a vector, referred to as the map. Inspired by developments in the tracking literature, recent research in SLAM has recast the map as a Random Finite Set (RFS) instead of a random vector, with huge mathematical consequences. With the application of recently formulated Finite Set Statistics (FISST), such a representation circumvents the need for fragile feature management and association routines, which are often the weakest component in vector based SLAM algorithms. This tutorial demonstrates that true sensing uncertainty lies not only in the spatial estimates of a feature, but also in its existence. This gives rise to sensor probabilities of detection and false alarm, as well as spatial uncertainty values. By re-addressing the fundamentals of SLAM under an RFS framework, it will be shown that it is possible to estimate the map in terms of true feature number, as well as location. The concepts are demonstrated with short range radar, which detects multiple features, but yields many false measurements. Comparison of vector, and RFS SLAM algorithms shows the superior robustness of RFS based SLAM to such realistic sensing defects.

Circumventing the Feature Association Problem in SLAM Martin Adams, John Mullane† , Ba-Ngu Vo‡ Universidad de Chile, Santiago, Chile † Projective ‡ Curtin Space, Singapore University, Australia [email protected], † [email protected], ‡ [email protected] Abstract In autonomous applications, a vehicle requires reliable estimates of its location and information about the world around it. To capture prior knowledge of the uncertainties in a vehicle’s motion response to input commands and sensor measurements, this fundamental task has been cast as probabilistic Simultaneous Localization and Map building (SLAM). SLAM has been investigated as a stochastic filtering problem in which sensor data is compressed into features, which are consequently stacked in a vector, referred to as the map. Inspired by developments in the tracking literature, recent research in SLAM has recast the map as a Random Finite Set (RFS) instead of a random vector, with huge mathematical consequences. With the application of recently formulated Finite Set Statistics (FISST), such a representation circumvents the need for fragile feature management and association routines, which are often the weakest component in vector based SLAM algorithms. This tutorial demonstrates that true sensing uncertainty lies not only in the spatial estimates of a feature, but also in its existence. This gives rise to sensor probabilities of detection and false alarm, as well as spatial uncertainty values. By re-addressing the fundamentals of SLAM under an RFS framework, it will be shown that it is possible to estimate the map in terms of true feature number, as well as location. The concepts are demonstrated with short range radar, which detects multiple features, but yields many false measurements. Comparison of vector, and RFS SLAM algorithms shows the superior robustness of RFS based SLAM to such realistic sensing defects. Index Terms Autonomous Navigation, Random Finite Set (RFS), SLAM, robotic mapping, short range radar, Finite Set Statistics (FISST). I. I NTRODUCTION Due to the imperfect nature of all real sensors, the lack of predictability in real environments and the necessary approximations to achieve computational decisions, robotics is a science which depends on probabilistic algorithms. Autonomous vehicles have now evolved beyond tasks within factory environments, and therefore require a robust computational representation of their complex surroundings and their related uncertainties. Such a representation is referred to as the map. Also of crucial importance to any autonomous task is the vehicle’s positional estimate. In indoor and under water environments, GPS does not function, and in urban areas, satellite outages and multi-path reflections result in unacceptable GPS positional errors for autonomous vehicle applications. Therefore, in many applications, the fundamental necessity to autonomously acquire an environmental map, and infer vehicle location exists, which has been referred to as the “Holy grail” of autonomous robotics research - Simultaneous Localization and Map Building (SLAM) [1]. IEEE ITS Magazine 2012 This tutorial demonstrates that the commonly used vector based methods for feature map representation in SLAM, summarized2 in Figure 1, suffer many fundamental disadvantages when applied to realistic situations. These correspond to situations in which Necessary operations occuring outside of the Bayesian recursion Sensor Data Truncated/augmented, re−ordered detected feature vector Feature Detection Detected feature vector at time k z1 z2 z3 . . . z 1 2 3 . . . p Map Management heuristics Determine p feature associations k Predicted feature state vector at time k m1 m2 m3 Determine any newly observed features Determine any missed features . . . Dimension and feature order in each vector assumed equal Bayes optimality based only on the p features determined by the map management heuristics Bayesian Estimator 1 2 3 . . . p (eg. EKF) 1 2 3 . . . Vector p Estimated feature Updated feature vector at time k 1 2 3 augmentation/ vector at time k Truncated/augmented vector of associated features from predicted state vector at time k . . . q truncation mm k Vector state ready for prediction at time k + 1. Fig. 1: Vector based feature mapping and its mathematical restrictions, for a single update cycle, in SLAM. an a-priori unknown number of features are to be estimated, in the presence of realistic sensor and/or feature detection defects such as missed detections and false alarms, as well as spatial sensing errors. The tutorial therefore reviews the basic estimation principles of SLAM and, stemming from developments in the tracking community [2], summarizes recent SLAM investigations, which suggest that a landmark map is more appropriately represented as a set of landmarks, requiring the tools of Random Finite Set (RFS) theory, known as Finite Set Statistics (FISST) [3], [4]. An RFS is a random variable that take values as finite sets. It is defined by a discrete distribution that, importantly, characterizes the number of elements in the set, and a family of joint distributions which characterize the distribution of the element’s values, conditioned on the number [5]. While defining a vector or set valued feature map representation may appear to be a trivial case of terminology, it will be demonstrated that the vector valued feature map has numerous mathematical consequences, namely an inherent rigid ordering of variables and a fixed length. This has caused robotics researchers to resort to SLAM state vector re-ordering and augmentation methods based on fragile feature management rules and association methods, as high-lighted in the yellow boxes (Figure 1), which necessarily occur before and after the SLAM Bayesian recursion. Bayes optimality can only take place with the p map states, which are considered to exist according to the external map management heuristics/filters. The RFS on the other hand, offers a powerful map representation, which will be shown to naturally encapsulate all possible permutations of a feature map and measurements thus circumventing the necessity of fragile feature management and association heuristics/methods. This results in more robust SLAM estimates in the presence of realistic sensor defects and clutter1 . 1 Returned April 24, 2013 sensor readings incorrectly interpreted as useful features. DRAFT The SLAM experiments presented in this tutorial rely on short range, millimeter wave (MMW) radar as the exteroceptive3 sensor. Contrary to the spatial modelling school of thought primarily adopted by robotic engineers, to radar engineers, received power values at successive range, bearing, and possibly elevation, values are related to the possible existence of an object in space. Hence, uncertainty in the sensing process is primarily formulated in terms of the decision itself as to whether or not a landmark even exists at the range, bearing/elevation coordinates in question. Such an analysis usually gives rise to the well known concepts (in the radar domain) of probabilities of detection and false alarm, and significantly less emphasis, if any, is placed on the possible spatial uncertainty of a hypothesized landmark. Therefore, this tutorial will examine various measurement models, which are applied to range finding sensors. The fundamental difference between detection and spatial error modelling will also be shown, together with the unique ability of the RFS concept to capture both error models in a joint manner. For comparison purposes both FISST based SLAM and state of the art vector based SLAM techniques are compared in an urban environment. II. R ELATED W ORK & M OTIVATION A. Prior Work in SLAM There is a plethora of work in SLAM, with the origins of the feature based map representation being traced back to the seminal work of Smith et. al. [6]. This inspired a Gaussian approximation to Bayes theorem in the form of the Extended Kalman Filter (EKF) for the propagation of the SLAM state, and its assumed Gaussian, spatial uncertainty. An extension to this philosophy was advocated in [7], in which a Gaussian Mixture (GM) implementation of Bayes theorem was applied to SLAM. Non-parametric approximations to Bayes theorem followed with a Rao-Blackwellized (RB) particle filter yielding a Factored Solution To SLAM (FastSLAM) [8]. Further approximations to Bayesian SLAM have adopted Graph Based methods [9] and the Sparse Extended Information Filter (SEIF) [10]. An RFS formulation for SLAM was first proposed in [11] with preliminary studies using ‘brute force’ implementations also appearing in [12]. The approach modelled the joint vehicle trajectory and map as a single RFS, and recursively propagated its first order moment, known as the Probability Hypothesis Density (PHD). More refined approaches which adopted a factored concept, in the form of a particle representation of the vehicle state, each maintaining its own PHD filter for the estimation of the map state, are detailed in [3], [4]. Recent work by Lee et al. has modelled the SLAM problem with a single cluster PHD filter, which models the vehicle state as a parent process and the map state as a Poisson spatial point daughter process [13]. B. Motivation & Prior Work in Robotic Navigation with Radar The prime motivation for radar in the experimental analysis of this tutorial, as opposed to laser, vision and ultrasonic based sensors, is its ability to operate in environments containing high levels of dust, rain, fog or snow. In contrast to the other sensors, radar has the ability to penetrate such atmospheric effects and also has the potential to provide more information, than for example laser range finders, as it provides multiple line-of-sight data. As an example, Figure 5 shows superimposed laser range data (black points) and received power data (plotted in color) from the car park environment of Figure 6 (left). Two of the lamp posts in the scene are missed by the laser range finders (labelled) as are the occluded trees, which are shielded by the shrubs. The radar data however yields significant received power values from these, as well as the occluding, objects, albeit at a reduced angular resolution. The specific details of how radar measurements can be used in SLAM are left until Section V. April 24, 2013 DRAFT Because of these advantages, radar sensors have been adopted by quite a number of research groups worldwide. [1] used a4 W-band radar sensor for feature based SLAM experimental analyses, while reflectivity patterns from leisure craft were examined in [14]. Further SLAM and mapping investigations using W-band radar were presented in [15], [16] examining the signal statistics and their influence on the resulting localization and map estimates. Further motivation for, and a review of, the use of radar in SLAM, with an introduction to related processing methods, is given in [17]. III. R EVISITING SLAM F UNDAMENTALS The aim of SLAM is to concurrently estimate the pose (position and orientation) of a vehicle Xk and the positions of its surrounding features, typically stacked in a map vector Mk at time k. Due to the uncertainty in vehicle motion and sensor measurements, SLAM estimates a joint probability density function (PDF) on these values pk (Xk , Mk ). As a vehicle acquires more measurements, this distribution is updated according to Bayes Theorem: pk|k (Xk , Mk |Z k , U k−1 , X0 ) = cpk|k−1 (Xk , Mk |Z k−1 , U k−1 , X0 )g(Zk |Mk , Xk ) (1) where pk|k (Xk , Mk |Z k , U k−1 , X0 ) is an estimate of the joint PDF on Xk and Mk , given all measurements Z k up to and including time k, all input values U k−1 used to control the vehicle motion, up to and including time k − 1 and the vehicle’s initial pose X0 . c is a normalizing value to ensure that pk|k (Xk , Mk |Z k , U k−1 , X0 ) is a PDF and g(Zk |Mk , Xk ) is the sensor measurement likelihood, given the map and vehicle location. Primarily, this tutorial demonstrates the performance of recent experimental results which remodel the measurement vector Zk as an RFS Zk and the map vector Mk as an RFS Mk . To motivate these changes, sensor measurement models are initially examined in Sections IV and V, followed by justifications for a set based model in Section VI. IV. M EASUREMENTS AND THEIR T RUE U NCERTAINTIES This section high lights the importance of a sensor’s and/or feature detection algorithm’s detection uncertainty as well as the usually considered spatial uncertainty. This plays a key role in the principled incorporation of measurements into stochastic SLAM algorithms. Active sensors, such as laser range finders, sonars and radars transmit various forms of energy into their environments. After transmission, the receiver section of the sensor then converts any power incident on its aperture into a received signal. In some sensors, this received signal, as a function of range from the sensor, is available for processing. For example, the recent Sick LMS 5xx laser range finders, yield the largest 5 received power spikes at different ranges. Underwater sonars also provide such received power arrays. In the case of radar, the received power, as a function of distance from the radar, is called an “A-Scope”. Many active sensors however keep this signal “hidden” from the user, and apply their own form of detection theory to provide a simple range decision - i.e. a range value, which is typically interpreted as corresponding to the detection of a valid feature. Importantly, in any sensor, the output is directly related to the time varying power measured at its receiver and, whether hidden from the user or not, vital information about an environment depends on how this signal is processed. A. Interpreting Received Power versus Range Signals As a case study, an A-Scope is examined, which resulted when a radar pointed in the direction θ of a landmark i. Note that this signal could be the (usually internal) received power signal, as a function of range in any active range finder. The A-Scope is illuslin lin lin lin trated in Figure 2, Graph (a), which plots an array of linearized power values Slin k (θ) = [Sk (1) Sk (2) . . . Sk (q) . . . Sk (Q)], April 24, 2013 DRAFT Received Power Received Power with elements Sklin (q) containing the received power corresponding to a particular range bin2 q, recorded at discrete time k. Graph5 (a) A−Scope display at chosen radar bearing angle (b) Detection theory applied to A−Scope from (a) CFAR Threshold ri k PDF (c) Spatial Interpretation Area under dist. = 1 ri k PDF (d) Spatial Measurement Model According to Fox et al Area under dist. = 1 ri Detection Prob. k (e) Detection Information Detections ri k Fig. 2: The interpretation of measurement detection in robotics and radar/tracking research. (b) illustrates the concept of detection theory, applied to the A-Scope in Graph (a). Most detection theoretic methods aim to identify power signals emanating from true targets, with a constant (typically very small) probability of false alarm (incorrectly 2A range bin is a discretized segment of the range space, in which a single received power value is received. It corresponds to the range resolution of the sensor. April 24, 2013 DRAFT declaring a target) and a quantifiable probability of detection (probability of correctly declaring a target). Such methods are6 referred to as Constant False Alarm Rate (CFAR) processors. Note that in the example of Figure 2(b), the received power from the true target at range rki exceeds the detection threshold, as does another power value further down range. Graph (c) illustrates the way in which most of the spatial modelling approaches in the robotics literature have interpreted this information. Its interpretation exists only in the spatial domain. A probability distribution is created in the range space with its mean located at the range bin of the closest range detection, and spatial variance based on prior information about the sensor. Note that by definition, the area under the distribution must be unity, implying that one landmark is assumed to exist with unity probability somewhere in the range space - i.e. a unity Probability of Detection (PD = 1) is assumed. Work by Fox et. al. proposed a sensor likelihood to represent the spatial information, from sensors yielding single range values, based on error densities associated with object detections as well as false, missing and unexpected data as illustrated in Graph (d) [18]. The distribution is the weighted sum of that in Graph (c) corresponding to a correct detection corrupted with Gaussian noise, as well as an exponential distribution to model unexpected objects, a uniform distribution over the sensor’s operating range to model false alarms and finally a Dirac distribution at maximum range to model missed detections. While this model offers a significant advance over that of Graph (c), it still assumes the existence of a single object over the sensor’s range space, and is only valid for sensors which yield maximum range when a missed detection occurs. Graph (e) illustrates the different way in which most of the detection modelling approaches in the radar and tracking literature have interpreted this form of measurement information. Based on a pre-chosen Probability of False Alarm, Pf a , from which the detection threshold (dashed line in Figure 2(b)) is derived, every range bin q is accompanied by a calculated PD and a hypothesis value H0 or H1 corresponding to “No landmark detected” or “landmark detected” respectively. Hence, in the interpretation in Graph (e), two landmarks would be hypothesized to exist. Once it is acknowledged that detections may not correspond to true objects, the concept of multiple line of sight detections makes sense3 The question naturally arises as to which interpretation is correct? Since, in Graph (e), more than one range bin can be associated with hypothesis H1 , contrary to the spatial interpretation (Graphs (c) or (d)), no assumption on the number of possible landmarks is made. However under this interpretation it is not clear how any prior knowledge of spatial uncertainty could be incorporated into the measurement information. Therefore all interpretations fail to represent all of the available information. The fundamental difficulty in applying standard, vector based, estimation theory to this problem is that the information to be estimated has different dimensions. It is necessary to estimate the number of features due to detection uncertainty, which is a dimensionless quantity, and the location of the features themselves due to spatial uncertainty, which have spatial dimensions. An RFS framework can readily overcome these issues. For example, the PHD approximation of an RFS does not maintain an existence estimate on each feature, but instead propagates a density which represents the mean number of features in the map as well as their spatial densities. Fundamentally, the concept of a set based measurement and state representation will be introduced, which allows all of the measurement information, spatial and detection, to be incorporated into joint Bayesian navigation and mapping frameworks. Before introducing an RFS based solution to SLAM, the following sections clarify the differences between the measurement models under each of the above interpretations and introduce a set based measurement model. 3 It should also be noted that radar has the ability to penetrate certain materials, and has a wider beam width than laser range finders, thus providing the potential for received power spikes from multiple objects down range. April 24, 2013 DRAFT 7 V. V ECTOR AND S ET BASED M EASUREMENT M ODELS A. Relating Spatial Measurements to the Map/SLAM State Spatial modelling is the standard method of incorporating measurements into the SLAM estimation problem in autonomous robotics research. For the simple planar motion and sensing case, a range/bearing measurement from feature i is shown diagrammatically in Figure 3. Such a measurement corresponds to an assumed detection (PD = 1) at range value rki and y Feature i θk i (x ki , y ki ) r ki ( x kradar , y radar ) k φk yk L WB ( γs)k −1 Time k Vk −1 φ k −1 yk −1 Time k −1 x xk x k −1 Fig. 3: Relating target location to vehicle motion. bearing angle θki , and in robotics research, is often interpreted in a stochastic manner in which the sensed object is “smeared” in the range (as in Graph (c) in Figure 2) and bearing space, according to a multi-variate Gaussian distribution. From Figure 3 it can be seen that it is possible to relate the spatial measurement vector [rki θki ]T to the vehicle pose Xk = [xk yk φk ]T and the ith environmental feature mik = [xik yki ]T states q (xki − xkradar )2 + (yki − ykradar )2 + (wkr )i (2) rki =  i  radar y − yk θki = arctan ki − φk + (wkθ )i (3) xk − xkradar  where xkradar , ykradar are the coordinates of the sensor and (wkr )i and (wkθ )i are the, assumed additive, spatial measurement random noise terms in range and bearing respectively. The range/bearing Equations 2 and 3 can be written as a single vector equation. When augmented for all landmarks detected at different sensor bearing angles within a scan, it takes the form of a stacked vector of spatial values, which relates to the map and vehicle states via  Zk =  rki θki   = hspatial (Mk , Xk ) + wspatial k (4) where hspatial () is generally a non-linear function, mapping the landmark and vehicle locations into the relative range and bearing measurements with wkspatial being the additive augmented vector of range and bearing measurement noises over all detected April 24, 2013 DRAFT features within a scan. To demonstrate such spatial measurements, Figure 4 shows a vehicle4 carrying a 360o scanning, radar58, capable of range measurements of up to 200m with a range bin resolution of 25cm. The vehicle also has two 180o scanning o 360 scanning radar o 180 scanning laser range finders Fig. 4: A vehicle carrying 2 laser range finders and a 360o scanning MMW radar. laser range finders6 (labelled). Experiments were conducted in a car park, causing radar returns from trees, lamp posts, buildings as well as clutter from ground measurements, due to the rolling of the vehicle during maneuvers. The results of a single, 360o laser scan of the environment are shown in Figure 5. Laser range decisions are shown as black dots, relative to the robot location at the origin. B. Relating Power Measurements to the Map/SLAM State Sensing methods exist, which yield measurements that are not spatial in nature. As examples, cameras produce pixel intensity values corresponding to objects within a scene and radar primarily produces received power values from an object, even though range can be inferred. In the case of radar, linearized received power measurements Slin can be used as the measurements at specific range bins q, which are also related to the position of the vehicle Xk and a map state Mk . For example, if the map state Mk were defined to incorporate point landmark Radar Cross Sections (RCSs), as well as spatial locations, then the measurements obtained from a radar scan of an environment could take the form power Zkpower = Slin (Mk , Xk ) + wkpower k (θ : 0 → 2π) = h (5) where Zkpower now corresponds to a stacked vector of A-Scope power values Slin k (θ : 0 → 2π) at time k, taken at each discrete bearing angle θ. Based on a state Mk containing landmark RCSs and spatial coordinates, hpower () could be a vector of functions 4 The vehicle is called the “RobuCAR” from Robosoft (http://www.robosoft.com). 5 The radar is from Navtech Radar Ltd, and is a 77GHz, Frequency Modulated Continuous Wave (FMCW) device. 6 The laser range finders are the Sick LMS 200 devices, capable of reported range measurements of up to 80m, with a distance resolution of 10mm. April 24, 2013 DRAFT Undetected lamp posts (laser) Vehicle location Bush Car 9 Occluded trees Shrubs Fig. 5: Received laser range and radar power data superimposed on the same scan. Note the missed detections by the laser range finder. based on the radar equation, which relates received power to target RCS and range. wkpower could then be the received power noise associated with each power measurement. To demonstrate received power type measurements, a single, 360o scan from the radar on board the vehicle of Figure 4 is superimposed onto the laser data of Figure 5. The received power values from the radar are shown as color values, with dark blue indicating minimum, increasing to light blue and yellow to red indicating maximum received power. Such a display can be envisaged as the top view of several A-Scopes (Figure 2(a)) swept about the origin, where color represents received power. In radar terminology, this is known as a sector Plan Position Indicator (PPI) plot. C. Relating Detection Measurements to the Map/SLAM State In a radar based application, it can be more convenient to consider the measurement Zk to be the simple binary detection hypotheses H0/1 corresponding to detection/no detection. The measurements in this case can be defined as Zkdet = H0/1 = hdetection (Slin k (θ : 0 → 2π)), (6) θ where Zkdet now corresponds to a vector of binary detection hypotheses H0/1 with elements H0/1 (q) corresponding to each range bin q at each bearing angle θ. In this case, hdetection () would correspond to a vector of functions derived from a chosen detector. Note that Slin k (θ : 0 → 2π) is then related to the map Mk and vehicle Xk states through Equation 5. Each detection measurement is accompanied by unique PD and Pf a values. For those measurements corresponding to an assumed detection, they can be located spatially according to Equations 2 and 3. April 24, 2013 DRAFT 10 To illustrate this form of measurement, Figure 6 (right) shows detections produced by a standard radar detection method, known as the Ordered Statistics (OS)-CFAR processor, superimposed after three consecutive loops within a car park environment. At this stage, the detections are superimposed onto the known ground truth trajectory of the vehicle, to demonstrate the quality Multi−Vehicle Pose OS−CFAR Detections Concrete Wall Coconut Trees Shrubs Meters Entrance Vehicle Trajectory Meters Fig. 6: (Left) Photograph of a car park scene, with the vehicle’s trajectory and objects labelled. (Right) OS-CFAR radar detections, superimposed onto the vehicle’s multi-loop trajectory, within the car park environment. of the radar detections alone, without including the vehicle localization errors. Many of the true objects in the photo (left) can be identified among the radar detections (right) and some are labelled. Also clearly evident however, are many false alarms in the radar data, which can result from incorrect detector behavior, noise and pitching of the vehicle, causing random ground returns. D. Set Based Measurements It is interesting to note that for SLAM, measurement Equations 4, 5 and 6 fail to completely encapsulate all of the information provided in a general feature measurement7 . Equation 4 fails to incorporate detection and false alarm probabilities, while Equations 5 and 6 fail to explicitly make use of any knowledge of a sensor’s spatial uncertainty. To encapsulate detection uncertainty, as well as spatial measurement noise, the detected features from a vehicle with pose Xk , at time k, can be mathematically modelled by an RFS Zk . This is formed by the union of a set of measurements expected to 7 This actually applies to any sensor when landmarks are extracted using realistic landmark extraction algorithms. Such algorithms are always accompanied by non-unity probabilities of landmark detection and non-zero probabilities of false alarm, which may be quantifiable, and should then be used. April 24, 2013 DRAFT 11 be generated under the current map estimate and a set of clutter (false alarm) measurements. Importantly, each set encapsulates the aforementioned detection and spatial uncertainties and hence S Zk = Dk (m, Xk ) |{z} | {z } m∈Mk All Measurements ∪ Feature Measurements Ck (Xk ) | {z } Clutter (7) where Dk (m, Xk ) is the RFS of measurements generated by a feature at location m and Ck (Xk ) is the RFS of the spurious measurements at time k, which may depend on the vehicle pose Xk . Zk = {zk1 , zk2 , . . . , zkzk } consists of a random number, zk , of spatial measurements zki , whose order of appearance has no physical significance with respect to the estimated map of features. For each feature, m ∈ Mk , and zki ∈ Zk , Dk (m, Xk ) = {zki } (8) with probability density PD (m, Xk )g(zki |m, Xk ) and Dk (Xk , m) = ∅ with probability 1−PD (m, Xk ), where PD (m, Xk ) is the probability of the sensor detecting feature m from pose Xk and g(zki |m, Xk ) represents the sensor’s likelihood of detecting zki , given m and Xk . Note the principled association of both detection (PD (m, Xk )) and spatial (g(zki |m, Xk )) uncertainties with the RFS Dk (m, Xk ). Spatial uncertainty term g(zki |m, Xk ) would reflect the statistics of the spatial noise processes (wkr )i and (wkθ )i in Equations 2 and 3. Similarly, the spurious measurement rate statistics corresponding to Ck (Xk ) are typically a priori assigned based on an expected Pf a , available from the chosen detection equations. 1) Case Study: Landmark Extraction with MMW Radar: Prior to the selection of radar based landmarks, received power values at specific range bins q are classified into detection, H1 hypothesis, and the no detection or clutter H0 hypothesis, via an OS-CFAR detector (Figure 2(b)). Many power spikes in the radar A-Scopes correspond to clutter. If S lin is the linearized received radar signal amplitude8 , then the empirical clutter amplitude, p(S lin |H0 ) can be obtained by Monte Carlo (MC) analysis over a large number of sample scans, using manually selected received power values containing only radar returns from areas free of landmarks. The OS-CFAR detector locally estimates the exponential distribution moment, in each range bin, q, and derives an adaptive threshold value, S OS-CFAR (q) (Figure 2(b)). S OS-CFAR (q) can be derived as a function of the desired false alarm rate PfOS-CFAR . Typically PfOS-CFAR is chosen to be low, and in the experiments here is set to 10−5 . A landmark is considered detected a a in range bin q if the received power S lin (q) ≥ S OS-CFAR (q). Based on this detection criterion, each received power value S lin (q) OS-CFAR OS-CFAR is accompanied by a probability of detection PD (q). Importantly, both PfOS-CFAR and PD (q) will be utilized in the a OS-CFAR = 0 and PD (q) = 1 as is necessary in vector based SLAM. RFS based SLAM concept, rather than assuming PfOS-CFAR a OS-CFAR detections, based upon multiple radar scans as a vehicle traversed three loops of a car park environment, were already shown in Figure 6 (right). It shows that, while much useful information is present in OS-CFAR detections, it is still corrupted by many false alarms or clutter. Many more false detections result than those predicted by detection theory, and the real challenge in SLAM is to provide algorithms which are robust in the presence of such clutter measurements. VI. S ET BASED R EPRESENTATION OF THE M AP S TATE In Section V-D the concept of an RFS measurement was justified. This section advocates that the map state itself is also more appropriately represented as a set. Consider a simplistic, hypothetical scenario in which a mobile robot traverses three different 8 Note that for processing purposes, the linearized received power is used, however, due to the large dynamic range of the received power, a logarithmic scale is used for graphical purposes. April 24, 2013 DRAFT 12 X1 m7 m6 m5 X2 m3 m4 m2 m1 X 3 Fig. 7: A hypothetical scenario in which a mobile robot executes three different trajectories X 1 , X 2 , X 3 , amidst static objects (features) m1 to m7 . trajectories, among static objects, as shown in Figure 7. If the trajectory taken by the robot were X 1 (blue), then it would seem logical that an on board sensor, with a limited range capability, may sense feature m1 followed by m2 followed by m3 etc. Hence after completing trajectory X 1 , if a vector M is used to represent the map, then the map could be represented as the first vector in Equations 9. Alternatively, had the robot pursued trajectory X 2 (red) instead, the order in which the features would be sensed would likely be very different, and the resulting estimated map could be the second vector in Equations 9, and had the robot pursued trajectory X 3 (black), the third map vector in Equations 9 could result. Since the order of the elements within a vector is of importance (a change in the order yields a different vector), three different map vectors result. However, since the map features themselves were assumed static, it seems odd that this estimated vector is actually dependent on the vehicle’s trajectory. In a strict mathematical sense, the order of the features within the map estimate should not be significant, as any permutation of the vectors results in a valid representation of the map. By definition, the representation which captures all permutations of the elements within the vector, and therefore the features in the map, is a finite set M, as shown in representation 9. M = [m1 m2 m3 m4 m5 m6 m7 ]T M = [m4 m2 m3 m1 m5 m7 m6 ]T .. . M = [m6 m7 m5 m4 m3 m2 m1 ]T {z } | M = {m1 m2 m3 m4 m5 m6 m7 } (9) A. Circumventing the Feature Association Problem In vector based SLAM, the order in which features are acquired is generally unrelated to the order of the feature elements in the current map state estimate. This is illustrated in Figure 8 in which a measurement-to-state assignment problem is evident. A re-ordering of the observed feature vector Z is necessary, since in general, observed feature z i will not correspond to the current estimate mi (e.g. measurement z 5 resulted from feature m4 etc.). The proposed RFS approach represents both features April 24, 2013 DRAFT 13 m7 m6 False alarms m5 New feature z3 m3 z2 z4 m4 z5 m2 m1 z1 Missed detection Fig. 8: As the robot moves, the order in which features are detected will, in general, not correspond to the order of stored features in the map vector. Also, new features will enter the FoV of the sensor(s). In general, some features may be undetected and some false alarms may be declared. and measurements as finite valued sets M and Z respectively, which assume no distinct ordering of the features, as shown in representations 9 and 10. Z = [z 1 z 2 z 3 z 4 z 5 ]T Z = [z 4 z 2 z 3 z 1 z 5 ]T .. . Z = [z 5 z 4 z 3 z 2 z 1 ]T | {z } Z = {z 1 z 2 z 3 z 4 z 5 } (10) Since the finite set representations 9 and 10 naturally encapsulate all possible permutations of the feature map and measurement, a FISST representation of the set will circumvent the need for feature association. B. Circumventing the Map Management Problem The feature measurement to state assignment problem is further exacerbated since in reality, the number of measurements, zk , at any given time is not fixed due to detection uncertainty, spurious measurements and unknown number of true features. For example, in Figure 8 it can be seen that 5 features have been detected, although there are seven features in the environment. Objects m5 , m6 and m7 lie out of range of the sensor, in the robot’s current position. Due to sensor and/or feature detection algorithm imperfections, two false alarms z 3 and z 4 have occurred. These can originate from clutter, sensor noise or incorrect feature detection algorithm performance. Notice that although object m2 lies within the FoV of the sensor, it has not been detected, and constitutes a missed detection. Suppose that features m1 , m2 and m3 already exist at time k − 1 in a vector based map representation, and that feature m4 now falls into the robot’s sensor(s) FoV. Feature m4 should be initialized and included in the state estimate at time k. To date, many SLAM techniques use vector augmentation methods based on feature initiation rules. However if the map is defined as a April 24, 2013 DRAFT set, then a set based map transition function can be mathematically defined as Mk−1 = {m1 m2 m3 } Mk = {m1 m2 m3 } ∪ {m4 } 14 (11) Contrary to vector based SLAM, a principled mathematical relationship between a set based measurement Zk and the map Mk , which takes into account the different dimensions of Zk and Mk as well as spurious measurements (such as z 3 and z 4 in Figure 8), can be defined and was given in RFS Equation 7. By redefining the concept of Bayes optimality for estimation with unknown feature number, by formulating it as an RFS estimation problem, the formulation unifies the independent filters adopted by previous, vector based solutions, through the recursive propagation of a distribution of an RFS of features. This allows for the joint propagation of the Feature Based (FB) map density and leads to Bayes optimal map estimates in the presence of unknown map size, spurious measurements, feature detection and data association uncertainty. The RFS framework, summarized in Figure 9, further allows for the joint treatment of error in feature number and location estimates as it jointly propagates both the estimate of the number of landmarks and their corresponding states. Feature association is automatically dealt with under the multi-object statistical framework, and consequently the need for feature association and management heuristics are circumvented. Sensor Data Sets mathematically represented in terms of feature number and their attributes (locations). Feature Detection Detected feature set at time k { z1 z2 z 3 . . .z k } Statistical representation of the set (eg. PHD function) Bayes optimality based on all k observations and all mk state predictions Bayes Estimator Predicted feature state set at time k {m 1 m 2 m 3 . . . m m k} (eg. PHD Filter) Statistical representation of the set (eg. PHD function) Statistical representation of the set estimate (eg. updated PHD function) Possible to reconstruct updated feature set containing estimated number of features and their locations State representation ready for prediction at time k + 1. Fig. 9: RFS based feature mapping, for a single update cycle, in SLAM. Notice that no map management or data association filters/heuristics are necessary. VII. SLAM WITH R ANDOM F INITE S ETS A. Vector Representation of the Vehicle State For the experiments adopted in this tutorial, a simple planar motion vehicle model is based on the Ackerman model [19]. With reference to Figure 3, the discrete time varying control inputs to the vehicle at time k − 1 are forward speed Vk−1 and April 24, 2013 DRAFT 15 steering angle (γs )k−1 . The local origin on the vehicle, is defined as the center of the rear axle. In discrete time form, with the inclusion of noise terms in the control inputs, the vehicle state can be predicted from the following kinematic equations [1].       V ∆T (Vk−1 + vk−1 ) cos[φk−1 ] xk xk−1             V (12)  yk  =  yk−1  +  ∆T (Vk−1 + vk−1 ) sin[φk−1 ]        γs V )] ∆T (Vk−1 +vk−1 ) tan[(γs )k−1 +vk−1 φk φk−1 LWB where xk represents the x coordinate of the vehicle at time k; xk−1 represents the previous x coordinate of the vehicle at time k − 1 (and similarly for y and heading φ); ∆T is the time between updates k − 1 and k and LWB is the wheel base length γs V defined in Figure 3. vk−1 ∽ N (0, (σV2 )k−1 ) and vk−1 ∽ N (0, (σγ2s )k−1 ) represent the input noise terms in the model. N (µ, σ 2 ) represents a Gaussian distribution with mean µ and variance σ 2 . Since the dimensions of this state are fixed as time progresses, and the order of the variables in the vector remain the same, the robot vehicle state is adequately modelled as a random vector. Note that, due to the random noise terms, Equation 12 is typically modelled as a PDF f veh (Xk |Xk−1 , Uk−1 ) (13) where Uk−1 represents a vector comprising the input velocity signal and steering angle - i.e. Uk−1 = [Vk−1 (γs )k−1 ]T , which is derived from either odometric or desired input information. This general vehicle process model will be used in all of the SLAM algorithms, developed for comparison purposes, in this tutorial. In particular, the vehicle trajectory X k = [X0 X1 X2 · · · Xk ]T is stochastically represented by a set of N particles (samples) each of which is extended at each time interval from its component location Xk−1 to Xk through Equation 12. B. RFS Representation of the Map State Let M be the RFS representing the entire unknown and unexplored static map. The explored map Mk−1 then evolves in time according to, Mk |{z} Current Map Set = Mk−1 | {z } ∪  Previous Map Set F oV (Xk ) ∩ | {z } Sensor(s) FoV M̄k−1 | {z }  Complement of Previous Map Set (14) where M̄k−1 = M − Mk−1 , i.e the set of features not in Mk−1 . Let the new features which have entered the FoV, i.e. the second term of Equation 14, be modelled by the independent birth RFS, Bk (Xk ). In this case, the RFS map transition density is given by, f M (Mk |Mk−1 , Xk ) = X f M (W|Mk−1 )fkB (Mk −W|Xk ) (15) W⊆Mk where f M (W|Mk−1 ) is the transition density of the set of features that are in the F oV (X k−1 ) at time k − 1 to time k, and fkB (Mk −W|Xk ) is the birth density of the RFS, B(Xk ), of the new features that pass within the FoV at time k. Implementation details related to the birth density will be given in Section VII-D. Equation 15 is important since it defines the map transition function for set valued maps. Including the vector based vehicle state transition density f veh (Xk |Xk−1 , Uk−1 ), the joint transition density of the map and the vehicle pose can be written as, f SLAM (Mk , Xk |Mk−1 , Xk−1 , Uk−1 ) = f M (Mk |Mk−1 , Xk )f veh (Xk |Xk−1 , Uk−1 ). April 24, 2013 (16) DRAFT 16 C. The Probability Hypothesis Density (PHD) Estimator As in vector based SLAM, unfortunately, the general RFS recursion equivalent of Equation 1, is also mathematically intractable. A simple approximation to set-based estimation which is tractable, is to exploit the physical intuition of the first moment of an RFS, known as its PHD, vk . The PHD at a point, gives the density of the expected number of features occurring at that point. A PHD function is any function which obeys the following two properties: 1) The mass (integral of the density over the volume) of the PHD within a given spatial region S, gives the expected number of features in S. 2) As a consequence, the peaks of the PHD indicate locations with high probability of feature existence. To illustrate the application of the PHD estimator to 2D robotic mapping, graphical depictions of posterior PHDs after two consecutive measurements are shown in Figures 10 and 11. These illustrate a simple time varying PHD function, vk , which is Fig. 10: A sample map PHD at time k−1, with the true map represented by black crosses. The left hand map PHD is the plan view of the right hand 3D view. The measurement at time k −1 is represented by the dashed lines. The peaks of the PHD represent locations with the highest concentration of expected number of features. The local PHD mass in the region of most features is 1, indicating the presence of 1 feature. The local mass close to some unresolved features (for instance at (5,-8)) is closer to 2, demonstrating the unique ability of the PHD function to jointly capture the number of features. a Gaussian Mixture (GM) containing Jk Gaussian components, i.e. (j) (j) (j) k vk = {µk , Pk , wk }Jj=1 , (j) where µk (17) (j) is the mean spatial location of Gaussian component j at time k, with spatial covariance Pk (j) and weight wk corresponding to the number of features the jth component represents. In each figure, the PHD is plotted as a function of the spatial coordinates. Since the integral of the PHD is, by definition, the estimated number of features in the map, the mass (or integral) of each Gaussian can be interpreted as the number of features it represents. In the case of closely lying features (and large spatial measurement noise), the PHD approach may not be able to resolve the features, as demonstrated in Figure 10 at approximate coordinates (5, -8). However the PHD will represent the spatial density of L features by a singular Gaussian with a corresponding mass of L, which may improve the feature number estimate. This is only theoretically possible using the RFS framework. A graphical example for L = 2 is illustrated in Figure 10, which is then resolved through measurement updates into April 24, 2013 DRAFT 17 Fig. 11: A sample map PHD and measurement at time k. Note that the features at (5,-8) are resolved due to well separated measurements, while at (-3,-4), a lone false alarm close to the feature measurement contributes to the local PHD mass. At (-5,-4) a small likelihood over all measurements, coupled with a moderate clutter PHD results in a reduced local mass. individual Gaussian components for each feature of mass L ≈ 1, as shown in Figure 11 (the two peaks near coordinates (5, -8)). The PHD estimator has been proven to be powerful and effective in multi-target tracking [5]. D. The PHD SLAM Filter Similarly to the FastSLAM concept [20], the PHD-SLAM joint posterior can be factorized when the map is represented as a conditional PDF, conditioned on an entire vehicle trajectory X k - i.e. pk (X k , Mk |Z k , U k−1 , X0 ) = | {z } Full SLAM posterior pk (X k |Z k , U k−1 , X0 ) × | {z } pk (Mk |Z k , X k ) . | {z } (18) Set based map conditioned on trajectory (i) is represented as vector particles X k , each of which maintain Vector based vehicle trajectory posterior Under an RB implementation, the vehicle trajectory X k  (i)  . The recursive Bayesian estimate of the map, per trajectory particle their own set based map estimate pk|k Mk |Z k , X k  (i) X k , is then      (i) k−1 k (i)   g Z |M , (X ) p M |Z , X k k k k k|k−1  (i)   (19) = pk|k Mk |Z k , X k (i) g Zk |Z k−1 , (X k )  (i) (i)  is modelled with a GM implementation of the PHD vk|k (m| X k ). The set based distribution pk|k Mk |Z k , X k The PHD predictor equation is     (i)  (i)  (i) (20) + b m|Xk = vk−1|k−1 m| X k−1 vk|k−1 m| X k   (i)  (i)  where vk−1|k−1 m| X k−1 is previous GM estimate of the PHD, vk|k−1 m| X k is its prediction at time k and       (i) (i) (i) is similar to the proposal function used in particle filters, is the GM PHD of the birth RFS, B Xk . b m|Xk b m|Xk and is used to give some a priori information to the filter about where features are likely to appear in the map. In SLAM, with no a   (i) priori information, b m|Xk , may be uniformly distributed in a non-informative manner about the space of features. However, in this work, the feature birth proposal at time k is chosen to be a GM containing Jb,k Gaussian components, representing the set of measurements at time k−1, Zk−1 [4]. April 24, 2013 DRAFT The PHD corrector is, 18  (i)   Λ m|Xk     R (i) (i) (i) dξ + Mk Λ ξ|Xk vk|k−1 ξ| (X k ) z∈Zk ck z|Xk (21)        (i)  (i) (i) (i) OS-CFAR m|Xk gk z|m, Xk = PD is the new GM estimate of the PHD at time k, Λ m|Xk where vk|k m| X k   X    (i)  (i)  (i) OS-CFAR m|Xk + 1−PD = vk|k−1 m| X k vk|k m| X k and,   (i) OS-CFAR m|Xk PD  (i) ck z|Xk The integral R Mk  Jk−1 predicted and Jb,k particles. (i) Λ ξ|Xk    vk|k−1 ξ| X =   the probability of detecting a land(i) mark at m, from vehicle pose Xk . = PHD of the clutter RFS Ck in Equation 7 at time k.   k (i) dξ in the denominator of corrector Equation 21 is calculated as the sum of the    (i)  (i) , each weighted by Λ m|Xk , over all N trajectory birth Gaussians present in vk|k−1 m| X k The clutter RFS, Ck , represents the prior knowledge of the probability of false alarm Pf a . In a scan, in which Nd feature detection hypotheses are made (whether determined to be detections or not), an average of nc = Pf a Nd false measurements will result. Therefore, the clutter PHD is assumed Poisson distributed in number and uniformly spaced over the mapping region. The clutter intensity is therefore given by   (i) ck z|Xk = nc V U (z) (22) where nc is the clutter rate per scan, V is the volume (or area in the 2D experiments presented here) corresponding to the FoV of the sensor(s) of the surveillance region and and U (z) denotes a uniform distribution on the measurement space. E. Particle Trajectory Weights A fundamental difference between RB-PHD-SLAM and FastSLAM should be noted. In FastSLAM, each pose particle is used to generate a predicted measurement vector. The actual measurement vector, recorded from the unknown, true vehicle location, is then superimposed on to each particle. The likelihood of that measurement vector corresponding to that particle’s predicted  (i)  . This measurement vector is calculated to form a particle weight, through the measurement likelihood g Zk |Z k−1 , X k requires the usual, fragile predicted and observed feature management and association routines, for which there is no concept within the RFS framework.  (i)  , which is defined on the space of finite sets, unlike In RB-PHD-SLAM, the measurement likelihood is g Zk |Z k−1 , X k its FastSLAM counterpart, which is defined on a Euclidean space. Therefore, alternative methods are necessary to evaluate  (i)  , and hence the trajectory particle’s new weight. g Zk |Z k−1 , X k  (i)  is merely the normalizing constant, Fortunately, by rearranging Equation 19, it can be seen that g Zk |Z k−1 , X k      (i) k−1 k (i)   M |Z , X p g Z |M , X k k k k|k−1  k (i)   g Zk |Z k−1 , X k = . (23) (i) pk|k Mk |Z k , (X k ) Note in the above, that the LHS does not contain the variable Mk , while the RHS has Mk in both the denominator and numerator. In essence, Mk in Equation 23 is a dummy variable, and thus an exact implementation of Equation 23 would hold for any April 24, 2013 DRAFT  (i)  19 arbitrary choice of Mk . This theoretically allows the substitution of any choice of Mk to evaluate g Zk |Z k−1 , X k . This is an important result, which allows the likelihood of the measurement conditioned on the trajectory (but not the map), to be calculated in closed-form. The following subsection considers the simplest implementation of Equation 23 [3], [4]. It should be noted that an alternative approach has also been proposed in [13] and the resulting propagation equations have a similar form to [4], [21]. The approach in [13] does not require the calculation of the normalizing constant of Equation 23 and instead calculates weights for each Dirac based PHD parent process, representing the vehicle’s pose, based on Poisson cluster assumptions. 1) The Empty Map Strategy: If the RFS Mk is approximated as a multi-target Poisson density (Poisson distributed in its number, and the points within Mk are IID distributed) then the probability density of Mk can be recovered exactly from the PHD intensity function. Similarly the predicted and posterior RFS maps can be approximated by Poisson RFSs with PHDs   (i)  (i)  respectively, giving and vk|k m| X k vk|k−1 m| X k    Q k (i) v m| X k|k−1  (i)  m∈Mk  , R  ≈ pk|k−1 Mk |Z k−1 , X k (24) (i) dm exp vk|k−1 m| (X k )    Q k (i) v m| X k|k  (i)  m∈Mk  . R  (25) ≈ pk|k Mk |Z k , X k (i) dm exp vk|k m| (X k ) Substituting Equations 24 and 25 into Equation 23, assigning Mk = ∅, and rearranging Equation 23 gives,   g Zk |Z k−1 , X k (i)       R k (i) (i)  m| X v k|k−1  m∈M  dm exp vk|k m| X k (i) k      × R = g Zk |∅, Xk × Q vk|k−1 m| (X k )(i) dm exp vk|k m| (X k )(i) Q (26) m∈Mk Since, Mk = ∅, the empty set measurement likelihood is that of the clutter RFS (Poisson),   (i) c z|X k k   z∈Zk (i)  . R  = g Zk |∅, Xk (i) exp ck z|Xk dz Q The PHDs vk|k−1 and vk|k are empty, implying their product is 1, m̂k|k−1 =  (i)  R dm, giving, m̂k|k = vk|k m| X k R (27)  (i)  dm and vk|k−1 m| X k   Z  (i)       Y (i) (i) g Zk |Z k−1 , X k = ck z|Xk exp m̂k|k − m̂k|k−1 − ck z|Xk dz . (28) z∈Zk Note that R   (i) ck z|Xk dz by definition gives the number of clutter measurements per scan nc V , and in the particular case that (i) the clutter intensity is assumed equal for each robot pose Xk   (i)  ∝ exp m̂k|k − m̂k|k−1 g Zk |Z k−1 , X k (29)  so that each particle’s relative weight can be updated by the factor exp m̂k|k − m̂k|k−1 .  (i)  does not contain a measurement likelihood Note that while for the empty map choice, the likelihood g Zk |Z k−1 , X k   (i) term g Zk |Mk , Xk , the history of measurements and trajectories are incorporated into the predicted and updated intensity terms, whose integrals appear as the terms m̂k|k−1 and m̂k|k respectively. An implementation of the particle weight that considers a single feature map approximation to the Poisson distributions of Equations 24 and 25 is given in [3], [4], [17]. April 24, 2013 DRAFT 20 F. Extracting the Final SLAM Estimate In MH-FastSLAM, the final trajectory is selected as the particle X k (i) with the highest weight, and the final map estimate is its corresponding map. This is known as the maximum a-posteriori (MAP) map estimate. This strategy is also used in the  (i)  comparative study here for RB-PHD-SLAM, meaning that its map PHD, vk|k m| X k , is selected as the final map. If    R (i) dm, is the mass of the posterior map PHD, the expected map estimate can then be extracted by m̂k = vk|k m| X k choosing the m̂k highest local maxima. It should be noted that, in contrast to vector based SLAM algorithms, the PHD map representation yields a natural ability to average feature maps, giving an expected a-posteriori (EAP) map, even with map estimates of different size and without having to resolve the intra-map feature associations. Details of such an implementation, as well as pseudo-code implementations of both the MAP and EAP methods, are given in [3], [4], [17]. VIII. B ENCHMARK V ECTOR BASED SLAM I MPLEMENTATIONS FOR C OMPARISON To demonstrate the effectiveness of an RFS representation of the map, state of the art vector based SLAM implementations were also carried out, based on the same OS-CFAR based landmarks extracted in Figure 6. A. Nearest-Neighbor, Extended Kalman Filter SLAM To date, arguably one of the most popular SLAM implementations has been based on approximating the joint vehicle (Xk ) and map (Mk ) SLAM state as a multi-variate Gaussian. Equation 1 then yields the EKF. For each OS-CFAR landmark detected, the EKF SLAM algorithm has to decide which landmark in the existing map it corresponds to, or whether a new landmark was observed. Maximum likelihood (ML) estimation calculates and compares a statistical distance (the Mahalanobis distances) between the detected feature locations and their predicted locations. This metric is then used to determine association between detections and stored features, referred to as the Nearest Neighbor Standard Filter (NNSF). In 2001, Neira et. al. highlighted limitations of the NN approach, since it ignores the fact that measurement prediction errors are correlated [22]. For this reason, the Joint Compatibility Branch and Bound (JCBB) data association method was proposed, which determines matches between sets of detected and predicted feature pairs, taking into account the measurement prediction correlations. This is referred to as JCBB-EKF-SLAM, and will be used as a vector based comparison with the RB-PHD-SLAM approach in Section IX. B. Multiple Hypothesis FastSLAM FastSLAM estimates the map on a per-particle basis, meaning that different particles can be associated with different features [20]. This means that the FastSLAM filter has the possibility to maintain different tracks for each possible hypothesis of each detected feature, known as Multiple Hypothesis Tracking (MHT) [23]. A new particle is created for each new hypothesis of each measurement, meaning that each particle is split into n + 2 new particles, one for each of the n possible associations, one particle for the non-association hypothesis and the other particle for a new feature hypothesis. Particles with incorrect data association are, on average, more likely to be circumvented than those which were based on correct associations. This step reduces the number of particles back to its original number. This technique, referred to as MH-FastSLAM, will also be used in the results as a non-parametric, vector based SLAM approach for comparison. The MH-FastSLAM implementation was based exactly on the principles given in [20] with details of its associated MH data association possibility given in [24]. April 24, 2013 DRAFT IX. C OMPARISONS OF SLAM C ONCEPTS IN C LUTTER 21 A. Performance Comparisons If, instead of superimposing the OS-CFAR detections onto the vehicle ground truth positions, as in Figure 6 (right), they are superimposed onto the vehicle’s odometry estimated positions (shown as the solid trajectory), Figure 12 (left) results. The 40 40 20 20 0 Meters meters 0 −20 −20 −40 −40 −60 −60 −80 −80 −50 −40 −30 −20 −10 0 10 20 30 40 50 −40 −30 −20 meters −10 0 10 20 30 40 50 Meters Fig. 12: Left: Odometry and extracted clusters from the radar data, representing the raw inputs to the SLAM algorithms. Right: The ground truth trajectory (green) obtained by matching laser data due to a lack of GPS data. detections are based on 700 scans recorded during a 3 loop trajectory in the car park (Figure 6). The information displayed in this figure can be thought of as the information input to the SLAM algorithms. Given the tree coverage and surrounding buildings in the area, GPS was generally not available. Ground truth was thus obtained by manually matching successive scans from the laser range finders (labelled in Figure 4), with graphical verification also provided in Figure 12 (right). The vehicle was driven at approximately 1.5m/s with a control input frequency of 10Hz and a radar scan frequency of 2.5Hz. In these experiments, JCBB-EKF-SLAM [22] and MH-FastSLAM [24], both using a mutual exclusion gate and a 95% χ2 confidence gate, were used as the benchmark vector based comparisons. For each SLAM filter, identical sequences of control inputs and measurements were provided. The RB-PHD-SLAM filter used 50 trajectory particles, while for MH-FastSLAM a maximum limit of 2000 particles (number of hypotheses considered prior to re-sampling) was used. Given the small-sized loop (with perimeter approximately 170m), the maximum range of the radar was set to 30m and the JCBB-EKF-SLAM, MH-FastSLAM and RB-PHD-SLAM algorithms were executed on the dataset. Figure 13 depicts the posterior estimated trajectory and map using the JCBB-EKF-SLAM algorithm (left) and that from MH-FastSLAM (middle). Finally, Figure 13 (right) shows the SLAM estimates based on the RB-PHD-SLAM algorithm. April 24, 2013 DRAFT 22 MH−FastSLAM path estimate Ground truth path JCBB−EKF−SLAM path estimate RB−PHD−SLAM path estimate Ground truth path (a) Vector based SLAM results. (b) RB-PHD-SLAM. Fig. 13: The posterior SLAM estimates from JCBB-EKF-SLAM (left) and MH-FastSLAM (middle) and RB-PHD-SLAM (right) using the same dataset. The integrated Bayesian framework for SLAM, incorporating data association and feature management enhances the robustness of the SLAM algorithm given noisy measurements. For both the MH-FastSLAM and RB-PHD-SLAM algorithms, the map of the highest weighted trajectory estimate is used as the map estimate. In all the figures, the ground truth and estimated trajectories are labelled and the circles represent the ground truth feature locations. The crosses represent the estimated map. In the case of FastSLAM, this is derived with respect to the maximum a-posteriori (MAP) FastSLAM trajectory estimate (the particle (trajectory) with the final maximum weight). In the case of MH-FastSLAM, the trajectory “MH-FastSLAM path estimate” indicates the MAP trajectory estimate. Note that the RB-PHD-SLAM map yields feature and vehicle trajectory estimates which are much closer to the ground truth map than either JCBB-EKF-SLAM or MH-FastSLAM. This is due to its unique ability to jointly estimate both feature number as well as location, and its immunity to feature management and association errors. B. Computational Cost Comparisons The computational complexity of RB-PHD-SLAM is, O(mk zk N ) i.e. linear in the number of features (in the FoV), linear in the number of measurements and linear in the number of trajectory particles. For a single thread implementation, Figure 14 shows that the computational time of RB-PHD-SLAM at each time index k is comparable with that of the MH-FastSLAM algorithm, both of which are less expensive than JCBB-EKF SLAM as its hypothesis tree grows in the presence of high clutter [4]. Note that due to the Rao-Blackwellized structure of RB-PHD-SLAM, binary tree based enhancements, such as those applied  to traditional FastSLAM [20], can be readily developed to further reduce the complexity to O zk N log(mk ) . April 24, 2013 DRAFT 23 5 Logarithm of Time 4 3 2 1 0 −1 0 100 200 300 400 500 600 700 Measurement Index Fig. 14: A comparison of the computation time per measurement update for RB-PHD-SLAM (blue), MH-FastSLAM (red) and JCBB-EKFSLAM (black). Furthermore, in contrast to data association based methods, the proposed approach admits numerous other computational enhancements, since the map PHD update can be segmented, executed in parallel and subsequently fused for state estimation. X. S UMMARY In probabilistic SLAM algorithms, the concept of feature existence uncertainty is at least as important as a feature’s spatial uncertainty. This tutorial high-lighted the importance of sensor models which are capable of incorporating both uncertainties, and demonstrated that such a model should be based on an RFS, rather than the commonly used vector representation. Further, to correctly take into account the facts that sensor based feature detections are typically not detected in the order in which their corresponding elements are stored in a map vector, and that they may differ in number, the map itself is also more appropriately modelled as an RFS. The recent development of FISST-based SLAM techniques, then allows mathematical representations of the map RFS to be propagated through Bayes theorem, allowing the estimation of feature locations and number in a joint manner. By taking into account prior knowledge of sensor based probabilities of detection, false alarm and spatial uncertainty parameters, the RB-PHD-SLAM approximation to Bayes theorem was demonstrated, circumventing the need for the fragile map management and feature association rules necessary in vector based SLAM. Its superiority over state of the art vector based methods, JCBB-EKF-SLAM and MH-FastSLAM, was demonstrated with short range radar and the presence of many clutter measurements. Since standard vector based methods inherently assume unity probabilities of detection and zero probability of false alarm, they are dependent on heuristics and routines, which occur outside of the Bayesian vector state update, to force the map and measurement state vectors to be of compatible dimensions before state update is possible. This restriction is removed when FISST representations of RFSs are adopted, as was demonstrated with the PHD filter. The RFS concepts offer many avenues for future research, including the implementation of higher order FISST-based algorithms, such as the Cardinalized-PHD and Multi-target multi-Bernoulli Filters. Extended landmarks, rather than the point April 24, 2013 DRAFT 24 features considered here, should also be examined together with the possibilities of joint mapping and landmark tracking from an autonomous vehicle. ACKNOWLEDGEMENTS This research was funded in part by the Conicyt - Fondecyt 1110579 project (Chile) and A*Star (Singapore). R EFERENCES [1] M.W.M.G. Dissanayake, P. Newman, S. Clark, H.F. Durrant-Whyte, and M. Csorba. A solution to the simultaneous localization and map building (SLAM) problem. IEEE Trans. Robotics and Automation, 17(3):229–241, June 2001. [2] B.N. Vo and W.K. Ma. The Gaussian mixture probability hypothesis density filter. IEEE Transactions on Signal Processing, 54(11):4091–4104, November 2006. [3] J. Mullane, B.N. Vo, M.D. Adams, and B.T. Vo. A random-finite-set approach to Bayesian SLAM. IEEE Transactions on Robotics, 27(2):268–282, April 2011. [4] J. Mullane, B.-N. Vo, M. Adams, and B.-T. Vo. Random Finite Sets for Robot Mapping and SLAM. Springer Tracts in Advanced Robotics 72. Springer, Berlin Heidelberg, 2011. [5] R. Mahler. Statistical Multisource Multitarget Information Fusion. Artech House, 2007. [6] R. Smith, M. Self, and P. Cheeseman. A Stochastic Map for Uncertain Spatial Relationships. In The Fourth International Symposium of Robotics Research, pages 467–474, 1987. [7] H.F. Durrant-Whyte, S. Majumder, M. de Battista, and S. Scheding. A Bayesian algorithm for simultaneous localisation and map building. In The Tenth International Symposium of Robotics Research (ISRR), Victoria, Australia, 2001. [8] M. Montemerlo and S. Thrun. FastSLAM: A factored solution to the simultaneous localization and mapping problem. In Eighteenth national conference on Artificial intelligence, pages 593–598, Menlo Park, CA, USA, 2002. American Association for Artificial Intelligence. [9] F. Lu and E. Milios. Robot Pose Estimation in Unknown Environments by Matching 2D Range Scans. Journal of Intelligent and Robotic Systems, 18(3):249–275, 1997. [10] S. Thrun. Simultaneous localization and mapping with sparse extended information filters. The International Journal of Robotics Research, 23, 2004. [11] J. Mullane, B.N. Vo, M. Adams, and W.S. Wijesoma. A random set formulation for Bayesian SLAM. In proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, France, September 2008. [12] J. Mullane, B.N. Vo, M. Adams, and W.S. Wijesoma. A random set approach to slam. In proceedings of the IEEE International Conference on Robotics and Automation (ICRA) workshop on Visual Mapping and Navigation in Outdoor Environments, Japan, May 2009. [13] C.S. Lee, D.E. Clark, and J. Salvi. SLAM with single cluster PHD filters. In IEEE International Conference on Robotics and Automation (ICRA), pages 2096–2101, St. Paul, Minnesota, May 2012. [14] G. Brooker, C. Lobsey, and R. Hennessy. Low cost measurement of small boat rcs at 94GHz. In Proceedings of IEEE International Conference on Control, Automation and Robotics, 2006. [15] J. Mullane, M. Adams, and W.S. Wijesoma. Robotic mapping using measurement likelihood filtering. International Journal of Robotics Research, 2(28):172–190, 2009. [16] A. Foessel, J. Bares, and W.R.L. Whittaker. Three-Dimensional Map Building with MMW RADAR. In Proceedings of the 3rd International Conference on Field and Service Robotics, Helsinki, Finland, June 2001. [17] M. Adams, J. Mullane, E. Jose, and B.N. Vo. Robotic Navigation and Mapping with Radar. Artech House, Boston, USA, 2012. [18] D. Fox, W. Burgard, and S. Thrun. Markov localization for mobile robots in dynamic environments. Journal of Artificial Intelligence Research, 11:391–427, 1999. [19] T.D. Gillespie. Fundamentals of Vehicle Dynamics. Society of Automotive Engineers, Inc., Warrendale. PA, USA, 1992. [20] M. Montemerlo, S. Thrun, D. Koller, and B. Wegbreit. Fastslam: A factored solution to the simultaneous localization and mapping problem. In Proc. AAAI National Conference on Artificial Intelligence, pages 593–598, 2004. [21] J. Mullane, B.N. Vo, and M. Adams. Rao-blackwellised PHD SLAM. In proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Alaska, USA, May 2010. [22] J. Niera and J.D. Tardos. Data association in stochastic mapping using the joint compatibility test. IEEE Transactions on Robotics and Automation, 17:890–897, December 2001. [23] D. B. Reid. An algorithm for tracking multiple targets. IEEE Transactions on Automatic Control, 24:843–854, 1979. April 24, 2013 DRAFT 25 [24] J. Nieto, J. Guivant, E. Nebot, and S. Thrun. Real time data association for fastSLAM. In IEEE Internationlal Conference on Robotics and Automation, volume 1, pages 412–418, September 2003. April 24, 2013 DRAFT