kalman filtering

Upload: vincent-sanjivy

Post on 14-Oct-2015

58 views

Category:

Documents


0 download

TRANSCRIPT

  • WI-FI BASED INDOOR LOCALIZATION AND TRACKING USINGSIGMA-POINT KALMAN FILTERING METHODS

    Anindya S. Paul and Eric A. Wan

    OGI school of Science and EngineeringOregon Health and Science University (OHSU)

    20000 NW Walker Road, Beaverton, OR 97006, U.S.A.

    ABSTRACTEstimating the location of people and tracking them in an in-door environment poses a fundamental challenge in ubiquitouscomputing. The accuracy of explicit positioning sensors such asGPS is often limited for indoor environments. In this study, weevaluate the feasibility of building an indoor location trackingsystem that is cost effective for large scale deployments, can op-erate over existing Wi-Fi networks, and can provide flexibilityto accommodate new sensor observations as they become avail-able. At the core of our system is a novel location and trackingalgorithm using a sigma-point Kalman smoother (SPKS) basedBayesian inference approach. The proposed SPKS fuses a pre-dictive model of human walking with a number of low-cost sen-sors to track 2D position and velocity. Available sensors includeWi-Fi received signal strength indication (RSSI), binary infra-red (IR) motion sensors, and binary foot-switches. Wi-Fi signalstrength is measured using a receiver tag developed by EkahauInc. The performance of the proposed algorithm is comparedwith a commercially available positioning engine, also developedby Ekahau Inc. The superior accuracy of our approach over anumber of trials is demonstrated.

    Index Terms sigma-point Kalman filter, sigma-pointKalman smoother, indoor tracking, RSSI tracking

    1. INTRODUCTION

    Location and context-aware technologies play a critical rolein emerging next generation mobile applications. Examplegoals of these applications range from tracking assets withinlarge warehouses, monitoring people inside assisted livingcommunities, to adapting user interfaces based on locationand activity. Key to each application is the ability to ac-curately localize and track an individual or asset. Explicitpositioning sensors based on GPS work worldwide and cansometimes achieve centimeter accuracy. However, GPS re-quires a direct view to several satellites, resulting in limited

    Corresponding Author: Anindya S. PaulAnindya S. Paul (Ph.D. Candidate) and Eric A. Wan (Associate Professor) arewith the Computer Science and Electrical Engineering Department (CSEE),Email Address: [email protected], [email protected].

    performance for indoor environments. Hence there remains aneed to develop new location sensing technologies based onboth existing opportunistic signals and hardware, as well asnew systems and sensor modalities. Additional design con-straints pose significant challenges for development of suchsystems, including calibration overhead, user privacy, and thehigh variability of wireless channels.

    A number of commercial and research prototype systemscurrently exist for indoor localization. Systems typically useinfra-red (IR), radio-frequency (RF), or ultra-sound sensors [14]. Although they show the necessary potential in indoortracking, each has their own limitations. The Active BadgeSystem is one example of an early location-aware applica-tion that determines the location of an individual by use ofan active badge that emits an unique IR code [1]. A net-work of sensors pick up the periodic IR waveforms to triangu-late the individual. Poor IR scalability and high maintenanceoverheads were some of the drawbacks faced by this system.Two popular systems, RADAR [2] and Cricket [3], use RF,and RF with ultrasonic sensors respectively. RADAR com-pares the users RSSI observation with a set of prestored sig-nal strength measurements known as fingerprints at each ofthe base stations to identify the users coordinates. RADARuses a k-nearest-neighbors method in order to find the closestmatch between known fingerprints and observed RSSI. Themajor disadvantages of the fingerprinting method includes theneed for dense training coverage and poor extrapolation toareas not covered during training. Although RADAR em-ploys an empirical model for RF propagation and wall atten-uation, actual RF signals deviate considerably while propa-gating indoors due to multipath, metal reflection, and noise.The Cricket system uses time of flight (TOF) difference be-tween RF and ultrasonic pulses in order to localize a person.Based on the TOF difference between multiple beacons, theclosest beacon is inferred. Although Cricket improves accu-racy and stability, high maintenance and calibration require-ments require significant effort to deploy it in practice. PlaceLab evaluates the feasibility of building a large scale loca-tion tracking system based on a 802.11 wide-area wirelessnetwork [5, 6]. Place Lab uses standard 802.11 access points

  • and 802.11 radio listener built into the users devices for posi-tioning. The system compares the observed RSSI with a pre-stored radio map to determine the users position. Althoughit enjoys the advantage of limited calibration, the accuracy islower than exiting positioning systems. Ekahau [7] providesa complete tag and software solution, also using RSSI withthe 802.11 protocol. The system is relatively inexpensive andenergy efficient, but its accuracy is quite limited in certain sce-narios as seen in the experimental section of this paper. Thereare also a number of software and hardware based systemsusing ultra wide-band (UWB) and ultrasound frequencies thatalso use TOF calculations and employ similar methods to thatused within GPS receivers [8, 9]. Ubisense [8], for example,can provide high tracking accuracy to within several centime-ters, but with significant calibration challenges as well as avery high cost.

    Our contribution to indoor location tracking focuses onimproving the core estimation algorithms that fuse the vari-ous sensor measurements. We take a Bayesian inference ap-proach, which provides a probabilistic framework for com-bining a predictive model of walking motion with all avail-able sensor observations. Bayesian methods can estimate apersons velocity and acceleration in addition to position, andcan also provide a measure of the accuracy of the estimates.A number of variants of probabilistic Bayesian inference ap-proaches have already appeared in the literature [4,6,1018].In [10, 15], the authors survey Bayesian filter implementa-tions for location estimation using ultrasound, infrared andlaser range finders. They conclude that although particle fil-ters can converge to the true posterior state distribution fornon-Gaussian and multimodal cases, the Kalman filter and itsvariants are the most efficient in terms of memory and com-putation. Kalman filtering methods for real time positioninghave long been popular in the robot tracking and navigationcommunities [19]. Meng et al. [20] propose an adaptive ex-tended Kalman filter (EKF) algorithm to localize a mobilerobot equipped with multiple sonar sensors in an indoor en-vironment. Leonard et al. [21] use an EKF approach to accu-rately localize a mobile robot that relies on the observed dis-tance from the current robots position to a number of knownenvironmental features. Borthwick et al. [22] employ an EKFbased technique to track an automated guided vehicle (AGV)using a optical ranger and a known priori map of the envi-ronment. Kalman filter and their variants have also been ap-plied to indoor people tracking. For examples, Fod et al. [12]and Hsieh et al. [13] describe a Kalman filter approach us-ing multiple laser range finders. More recently, particle filtershave been used to demonstrate encouraging performance, al-though at a high computational cost for real time people track-ing [4,1618]. The particle filter based system described by J.Hightower et al. [4] incorporates a random acceleration basedhuman motion model as the dynamics of the system, whilethe sensor model (observation likelihood) uses only a sin-gle Gaussian with fixed manufacturer predefined parameters.

    However, severe multipath, non-line-of-sight propagation, ormetal reflection may cause a highly complex position-RSSIrelationship that is not accurately captured by such a simpleobservation model. Letchner et al. [17] introduce a sensormeasurement model in the particle filter framework that com-bines a Wi-Fi signal propagation model [23] and fingerprint-ing techniques for localization. The methods assumes radiallysymmetric attenuation of wireless signals and also requireslarge training data for fingerprinting. Recently, Gaussian pro-cesses are also used to generate a measurement likelihood forwireless signal strength measurements in particle filter [16].However, learning the parameters using graph based hyper-parameter estimation can take significant computational re-sources with slow convergence. The use of hidden Markovmodeling (HMM) and grid based approaches for people track-ing have also appeared in the literature. The Locadio sys-tem [14] use a HMM on a graph of location nodes to inferposition based on the variation of the Wi-Fi signal strength.The persons motion is determined based on the variance ofRSSI measurements over a sliding window. However, signif-icant RSSI variability (even at the same location) can causea high number of errors in determining whether the person ismoving or still.

    Our approach to Bayesian inference is based on sigma-point Kalman Filters (SPKF) [2426]. SPKFs are estimationalgorithms, which include the unscented Kalman filter (UKF)[27], central difference Kalman filter (CDKF) [28], and theirsquare-root variants [29]. The SPKF has recently becomea popular better alternative to the Extended Kalman Filter(EKF). Additional background on the SPKF will be providedlater in this paper. We specifically used our recently pro-posed forward-backward statistically linearized sigma-pointKalman smoother (FBSL-SPKS) algorithm [30] . For track-ing purposes, this is implemented as a fixed interval smootherthat use all the past and future measurements to estimate thecurrent state. To make the tracking close to real time, we alsodevelop a fixed lag Kalman smoother (FL-SPKS) algorithm.Both estimators optimally fuse a model of walking motion,room-wall configurations, and all available sensor observa-tions in order to track a person. A random acceleration basedhuman walk model is used as the dynamic model of motion.This is augmented with a room-wall model involving a poten-tial field created throughout the indoor environment in orderto repel motion away from walls. Our observation model useRadial-Basis Function (RBF) networks that provide a non-linear mapping between known locations and observed RSSIvalues. These models are fit during a separate calibration pro-cess, and thus take into account the various multipath andother room specific characteristics.

    While our approach is generally independent of the spe-cific hardware or sensor modality, the current system designuses RSSI sensors manufactured by Ekahau Inc. The per-son(s) to be tracked carry a small body-borne device that pe-riodically measures the RSSI at 3 or more standard Wi-Fi

  • Fig. 1. Room Potential field

    access points placed at pre-defined locations. Augmentingthe RSSI measurements are IR motion sensors mounted tothe walls that provide a binary on signal when it detectsa motion in its range. Similarly, binary foot-switches indi-cate the location of a person when stepped on. Experimen-tation was performed at several living-laboratories used todevelop monitoring and assistive technologies for the elderly.The performance of our tracker was compared with the base-line Ekahau tracking engine. As will be shown, both theFBSL-SPKS and FL-SPKS based tracker provide significantimprovement in position tracking accuracy.

    2. RECURSIVE BAYESIAN ESTIMATION ANDKALMAN FILTERING

    Recursive Bayesian estimation is a general probabilistic ap-proach for sequentially estimating an unknown state proba-bility density function over time using incoming noisy mea-surements and a mathematical process model. The problemcan often be cast in terms of estimating the state of a discrete-time nonlinear dynamic system,

    xk+1 =fk (xk, vk) (1)zk =hk (xk, nk) , (2)

    where xk represent the unobserved state of the system and zkis the sensor observations. The process noise vk drives thedynamic system, and the observation noise is given by nk.Note that we are not assuming additivity of the noise sources.The system dynamic model f(.) and observation model h(.)are assumed known.

    A recursive solution to the Bayesian estimation problemfor an arbitrary state space model is generally intractable. Se-quential Monte Carlo (SMC) based techniques, or particle fil-ters, model the density of the state distribution using a set ofdiscrete points and can provide arbitrary accuracy to the so-lution with a sufficient number of sample points. Under apure Gaussian and linear assumption, the Kalman filter is op-timal and provides for an efficient and practical solution. Afirst-order approximation to account for nonlinearities leadsto the extended Kalman filter (EKF). While still assuminga Gaussian state distribution, the sigma-point Kalman filter(SPKF) provides superior performance over the EKF. Note

    that the SPKF refers to a family of related algorithms, theUnscented Kalman Filter (UKF), Central Difference KalmanFilter (CDKF), and several variants. We will return to the de-tails of the SPKF after first describing both the dynamic andobservation models chosen of the specific tracking applica-tion.

    2.1. Dynamic Model

    We define the state vector x =[

    x y vx vy], corre-

    sponding to 2D position and velocity for tracking purposes.A simple random walk model on the velocities is used forpredicting walking motion. This is augmented with a roommodel involving a potential field created throughout the in-door environment in order to repel estimated motion awayfrom walls.

    The potential field can be created off-line using prior knowl-edge of wall configurations and large furniture location. Com-putationally this is achieved by dividing the space into 1 inchsquare cells. Each cell contains a binary certainty measureC (i, j) that indicates whether the cell is occupied, i.e., an ob-stacle exits within the cell. The force Fi,j (x, y) exerted on aperson due to an occupied cell is made inversely proportionalto the distance between the persons current position and theoccupied cell position.

    Fi,j (x, y) = FcrC (i, j)d2i,j (x, y)

    (x xic

    di,j(x, y)~x +

    y yjcdi,j(x, y)

    ~y

    ),

    (3)

    where di,j(x, y) is the distance between the persons currentposition, (x, y), and the occupied cell position, (xic, yjc). ~xand ~y are the unit vectors along the x and y direction. Fcr isthe force constant and design parameter that controls the over-all strength of the repulsive force. If the force is too strong,location estimates will not be near walls or furniture. If theforce is too small, tracking may results in trajectory estimatesthat pass through walls.

    The total resultant force Fr(x, y) is the vectorial sum offorces exerted by all the occupied cells on the persons currentcell location.

    Fr(x, y) =i,j

    Fi,j (x, y) . (4)

    This repelling force function Fr(x, y) is calculated once off-line, and may be viewed as a potential field or simply a non-linear function of the persons current position. Fig. 1 dis-plays the corresponding magnitude of the potential field for asimple multi-room example.

    Combining the potential field and a random walk model

  • (a)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (b)

    020

    4060

    201000

    20

    40

    60

    80

    RSS

    I

    y(ft) x(ft)

    (c)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (d)

    Fig. 2. (a) Example floor plan with calibration locations indicated by a +, (b) Raw RSSI values recorded at each accesspoint during calibration, (c) RSSI mean values at each calibration location, (d) RBF nonlinear map plotted with the RSSI meanvalues.

    yields the dynamic state-space model,

    xk+1 = xk + Tvxk +T 2

    2Fxk (xk , yk) (5)

    yk+1 = yk + Tvyk +T 2

    2Fyk (xk, yk) (6)

    vxk+1 = vxk + TFxk (xk, yk) + (1 ) vpx,k (7)vyk+1 = vyk + TFyk (xk, yk) + (1 ) vpy,k (8)

    The parameter smooths the changes in velocities and alsoensures that the variance of random process remains bounded.The integration time in this case is T = 1 second. The pro-cess noise vp,k =

    [vpx,k vpy,k

    ]is modeled as zero mean

    white Gaussian.

    2.2. Observation Model

    As we have used 3 different sensor technologies for obser-vations, the observation model shown in (2) depends on thespecific technology used.

    2.2.1. RSSI Observation model

    A naive approach to using RSSI measurements involve com-paring an observed RSSI value to a table of previously recordedRSSI values and their associated positions. This direct ta-ble look-up approach, however, is prone to errors due to thehigh variability of RSSI values. In the Bayesian framework,the observation function can be viewed as a generative modelproviding the likelihood of a RSSI observation given the cur-rent estimate of the state position. In most of RSSI track-ing literature, the observation likelihood is approximated witha simple fixed a priori distribution (e.g., Gaussian distribu-tion) [4,6]. In our method, we characterize the RSSI-positionrelationship and variability by fitting nonlinear mappings be-tween position and observed RSSI values.

    Data to fit the maps are first collected during a calibrationphase. This involves dividing the floor plan into P rooms orsections. In each section, the vertices and center of an ap-proximate octagonal grid are used as calibration points. SeeFig. 2(a) for illustration purposes. At each calibration point, a

    person carrying a body borne RSSI tag spends a fixed amountof time while RSSI data is collected. Typically, RSSI valuesare recorded from M (generally 3 5) Wi-Fi access pointslocated in the corners of the entire space to be calibrated. Theperson also performs a slow rotation at each point to averageRSSI variability due to tag orientation. Note that if multi-ple tags are to be calibrated simultaneously, it is advisable tophysically separate the tags on the person as far as possible,as we have found that multiple tags can interfere with RSSIconsistency. This process is repeated at all calibration pointsin the space. Fig. 2(b) illustrates the collection of raw RSSIdata at each calibration point. Note the high variability ofRSSI values at each location. The RSSI samples are then av-eraged to obtain a representative mean RSSI observation percalibration point as shown in Fig. 2(c). Specific values for theamount of data collected, variability, etc., are tag specific andwill be given in the experimental results section.

    After RSSI data collection, a RBF network is used to fita nonlinear map between known calibration locations and themean RSSI observations as illustrated in Fig. 2(d). A RBFnetwork is a feed forward neural network consisting of a hid-den layer of radial kernels and an output layer of linear neu-rons [31]. A Gaussian kernel is used as the radial basis. ThisRBF map represents the forward generative observation model,

    zm,k = hm,k (xk, yk) + nrm,k (9)

    where zm,k is the observed RSSI from access point m, 1 m M , with noise nrm,k assumed to be Gaussian with zeromean and standard deviation equal to the RSSI variability de-termined from the calibration data. The RBF observation maphm,k for the m-th access point is specified by

    hm,k (xk , yk) =WTmKm,G

    ([xk yk

    ]; m,m

    ),

    where Km,G is the Gaussian kernel function with mean vec-

  • tor m and covariance matrix m and can be defined as:

    m =[

    m,1 m,2 . . . m,C]T

    ,

    m =

    m,1 0 00 m,2 0...

    . . ....

    0 0 m,C

    .

    It is assumed that there are C Gaussian kernels in the hiddenlayer of the RBF network. Wm are the output layer linearweights,

    Wm =[

    wm,0 wm,1 . . . wm,C1].

    The parameters of each Gaussian kernel {m,c, m,c} andthe hidden to output layer weights Wm,c are learned using ahybrid procedure that operates in 2 stages. The prior weight,center position and the spread parameter of each Gaussianare first obtained by modeling the known calibration locationswith a Gaussian Mixture Model (GMM) using ExpectationMaximization (EM) algorithm. The hidden to output weightsare then calculated in a batch least square manner in order tominimize the MSE error at the output. Fig. 2(d) illustrates anonlinear observation map learned from calibration data.

    The observed RSSI zm,k, RBF function hm,k, and the ob-servation noise nrm,k from each access point are combined toform a multi-dimensional observation model,

    zk =[

    z1,k z2,k . . . zm,k . . . zM,k]

    (10)hk =

    [h1,k h2,k . . . hm,k . . . hM,k

    ](11)

    nrk =[

    nr1,k n

    r2,k . . . n

    rm,k . . . n

    rM,k

    ](12)

    where zk is the multi-dimensional RSSI observations ema-nating from M access points. Similarly hk and nrk are theRBF observation model and the measurement noise for theM access points.

    Once fit using calibration data, this RBF observation modelmay be used in the Bayesian framework for tracking. Themodel takes into account room specific multi-path and atten-uation, and RSSI variability. By learning the map, the need tospecify the location of the access points is also avoided.

    2.2.2. IR motion sensor Observation model

    Infra-red (IR) motion sensors may be mounted to the wallsand provide binary on signals when motion is detected withinrange. Localization using motion sensors are challenging dueto their large beam width and high false alarm rate. The likeli-hood model for a motion sensor is modeled simply as a Gaus-sian distribution. The mean value is taken to be a position in-line with the orientation of the sensor at a distance based onapproximate sensor range. The variance is based on the beamwidth of the sensor. Specific values for the mean and variance

    are found by characterizing the sensors and are somewhat ar-bitrary. The observation model is thus linear and defined as:

    zk =Hkxk + nmsk (13)

    zk =

    [1 0 0 00 1 0 0

    ]xk + n

    msk , (14)

    where Hk is the observation matrix and nmsk is the Gaus-sian observation noise with mean and variance as determinedfor the location and beamwidth of the sensor. Note that thissimple model clearly does not take into account the specificgeometry of the beam pattern, or other complicating factorssuch as memory and latency in the binary sensor.

    2.2.3. Binary foot-switch Observation model

    Similar to IR motion detectors, foot-switches may be placedon the floor to provide a binary on signal that indicates thelocation of a person. The observation likelihood may againbe modeled simply as a Gaussian distribution with the corre-sponding observation model,

    zk =Hkxk + nfk (15)

    zk =

    [1 0 0 00 1 0 0

    ]xk + n

    fk , (16)

    where nfk is the Gaussian observation noise for the foot-switchsensors. The mean value of the Gaussian is set to the knownlocation of the switch. The variance specifies the accuracy ofthe localization for the foot switch.

    2.2.4. Multiple sensors observation model

    The Kalman framework allows for fusing multiple sensors ofdifferent types as available. An augmented observation vectoris specified,

    zk =[

    zRSSIk zIRk z

    Footk

    ](17)

    along with the corresponding observation functions. Note thatthe dimension of this augmented observation may change ateach time step to account for varying sensor sampling rates ormissing observations.

    3. SPKS BASED LOCATION TRACKER

    The Kalman filter [32] provides the optimal Bayesian recur-sive estimate for the state xk of a linear state-space systemdriven by Gaussian noise. The estimate is optimal given allnoisy measurements Zk = [z1, z2, . . . , zk] up to the currenttime index k. In contrast, the Kalman smoother estimates theconditional expectation of the state at time k given all past andfuture measurements Zk = [z1, z2, . . . , zN ], 1 k N .Several common Kalman smoothing formulations are givenin [19, 3336]. In this article, we consider both fixed lag and

  • fixed interval smoothing. In fixed lag smoothing, L futuremeasurements are used at every time step to obtain smoothedstate estimates at time k. In fixed-interval smoothing, the finaltime N is fixed and smoothed estimates are found using all Nmeasurements.

    For nonlinear state-space models, the extended Kalmanfilter (EKF) approach may be used whereby the nonlinearstate-space model is linearized around the estimate of the cur-rent state using a first order Taylor series expansion. Thesigma-point Kalman filter (SPKF), which includes the un-scented Kalman filter (UKF) [37], central difference Kalmanfilter (CDKF) [28], and their square-root variants [29], has re-cently become a popular better alternative to the EKF. Likethe EKF, the SPKF approximates the state distribution by aGaussian random variable (GRV). However, the probabilitydistribution is represented by a set of carefully chosen deter-ministic sample points (called sigma points). These sigmapoints are then propagated through the true nonlinear system,with the posterior mean and covariance calculated using sim-ple weighted averaging. This approach captures the posteriormean and covariance accurately to the 2nd-order (3rd-orderis achieved for symmetric distribution) compared to the EKFwhich linearizes the nonlinear systems and only achieves 1st-order accuracy.

    While the SPKF may be applied directly to the trackingproblem, we have found improved performance through theuse of the sigma-point Kalman smoother (SPKS). Two SPKSvariants are investigated, the forward-backward (FBSL-SPKS)[30] and fixed-lag (FL-SPKS) [33]. The FBSL-SPKS cor-responds to a fixed interval smoothing approach whereby aSPKF is used to estimated the states forward in time. A mod-ified backward SPKF is then used to estimate the states in thebackward direction, which are combined with the forward es-timates to calculate the smoothed estimates. In the FL-SPKS,the estimate of the state is found after waiting for L futuremeasurements. The SPKF is reformulated by incorporating alarge state vector augmenting states from xk to xkL. Detailsof both these smoother variants are described in the followingsections.

    3.1. Forward backward statistical linearized sigma-pointKalman smoother (FBSL-SPKS)

    In the FBSL-SPKS, a standard SPKF is run in the forward di-rection using the nonlinear state-space model in (9). A back-ward filter then computes the estimates operating on the in-verse dynamics of the forward filter. As the forward nonlin-ear dynamics are never analytically linearized, the backwardfilter is not well defined for a nonlinear dynamical system.To derive the appropriate backward filter, the SPKS makesuse of the weighted statistical linear regression (WSLR) for-mulation of the filter. WSLR is a linearization technique thattakes into account the uncertainty of the prior random variable(RV) when linearizing the nonlinear model [38]. In this way,

    "!$#

    % &(')+*

    ,"-/.10$23,4-$5(6

    7989:;8@?

    Actual (sampling) Linearized (EKF)

    sigma points

    true mean

    SP mean

    and covarianceweighted sample mean

    mean

    SP covariance

    covariance

    true covariance

    transformedsigma points

    SigmaPoint

    Fig. 3. 2D example of the sigma-point approach. The ac-curacy of the sigma-point method in propagating the meanand covariance of the prior GRV through a nonlinear func-tion is compared with Monte-Carlo sampling and the EKFapproaches.

    WSLR is more accurate in the statistical sense than first-orderlinearization, which does factor in the probabilistic spreadat the point of linearization. By representing the forward dy-namics in terms of WSLR, a backward information filter canbe formulated that does not require inverting the nonlineardynamics. Estimates of the forward and backward filter arethen optimally combined to generate smoothed estimates inthe standard manner. Before presenting the pseudo-code forthe SPKS, we first give a short review on the relationship be-tween the SPKF and WSLR.

    Consider a prior random variable (RV) x which is propa-gated through a nonlinear function g(x) to obtain a posteriorRV z. Sigma points i, i = 0, 1, . . . , 2M are selected as theprior mean x plus and minus the columns of the square rootof the prior covariance Px

    =[

    x x +

    Px x

    Px]

    (18)

    where M is the RV dimension and is the composite scal-ing parameter. The sigma point set completely capture themean x and the covariance Px of the prior RV x.

    x =

    2Mi=0

    wii (19)

    Px =

    2Mi=0

    wi (i x) (i x)T (20)

    where wi is a normalized scaler weight for each sigma point.Each prior sigma point is propagated through the nonlinearity

  • to form the posterior sigma point i.

    i =g (i) i = 0, 1, . . . , 2M (21)

    The posterior statistics can then be calculated using weightedaveraging of the posterior sigma points,

    z =

    2Mi=0

    wii (22)

    Pz =2Mi=0

    wi (i z) (i z)T (23)

    Pxz =

    2Mi=0

    wi (i x) (i z)T (24)

    This deceptively simple approach captures the desired pos-terior statistics more accurately than using standard lineariza-tion techniques. The implementation is also simpler, as itavoids the need to analytically linearize the nonlinear func-tion, and only requires direct function evaluations. The per-formance of the sigma point approach in capturing the meanand covariance of a GRV which undergoes a nonlinear trans-formation is demonstrated in Fig. 3. The left plot shows themean and covariance propagation using Monte-Carlo sam-pling. The center plot demonstrates the results using first-order linearization as in the EKF. The right hand plot depictsthe performance of the sigma point approach. Note, only5 sigma-points are needed to approximate the 2D distribu-tion. The superior performance of the sigma-point approachis clearly evident.

    An alternate view of the sigma point approach can befound by considering the weighted statistical linearization ofthe nonlinear dynamics,

    z =g (x) = Ax + b + (25)where A and b are the statistical linearization parameters andcan be determined by minimizing the expected mean squareerror which takes into account the uncertainty of the prior RVx. Defining J = E

    [T W

    ]is the expected mean square

    error with sigma-point weighting matrix W ,

    [A, b] =arg min J=arg min

    (E

    [T W

    ])(26)

    The true expectation can be replaced as a finite sample ap-proximation,

    E[T W

    ]=

    2Mi=0

    wiTi i (27)

    where the point-wise linearization error i = i Ai b specifically use the sigma point selection as above. Nowtaking partial derivative of J with respect to A and b,

    A =P Txz

    P1x

    (28)b =z Ax (29)

    where the prior mean (x) and covariance (Px) are calculatedin (19)-(20) from the prior sigma points. Similarly, the pos-terior mean (z) and covariances (Pz and Pxz) are calculatedfrom the posterior sigma points as shown in (22)-(24). Thelinearization error has zero mean and covariance

    P =Pz APxAT . (30)

    From (30), Pz = APxAT + P, we observe that the covari-ance of the linearization error P is added when calculatingthe posterior covariance Pz. A first-order Taylor series ex-pansion employed by EKF to linearize the nonlinear dynam-ics neglects this error term. In general, the WSLR techniqueis an optimal way of linearizing any nonlinear function in theminimum mean square error (MMSE) sense. The approachexplicitly takes into account the prior RV statistics.

    To form the SPKF estimator, we consider the nonlinearstate space model:

    xk+1 =fk (xk, vk) (31)zk =hk (xk, nk) (32)

    where xk RM is the state, zk RP is the observation attime index k, vk and nk are Gaussian distributed process andobservation noises, f(.) is the nonlinear dynamic model andh(.) is the nonlinear observation model function. The processand observation noise has zero mean and covariances Qk andRk respectively. The SPKF is then derived by recursivelyapplying the sigma point selection scheme at every time indexto these dynamic equations (see [37] for more details).

    Alternatively, the SPKF may be derived from the WSLRfrom of the nonlinear state space,

    xk+1 =Af,kxk + bf,k + Gf,kvk + Gf,kf,k (33)zk =Ah,kxk + bh,k + nk + h,k (34)

    where Af,k, Ah,k, bf,k, bh,k are the statistical linearizationparameters and f,k, h,k are the linearization error with meanzero and covariance Pf ,k and Ph,k. All the parameters canbe obtained by applying (29) and (28) iteratively at each timeindex k. Deriving the KF using the linearized state space re-sults in the exact same equations and estimates as the SPKF(see [38]). The key advantage, however, of the statisticallylinearized form is that it can be used to derive the necessarybackward filter. The FBSL-SPKS equations, consisting of theforward filter, backward filter, and smoother, are specified inthe next sections.

    3.1.1. Forward Filter

    A standard SPKF is used as the forward filter. The task ofthe SPKF is to estimate xk at time index k given all past andcurrent measurements. The SPKF recursions, which operateson the nonlinear state space model defined in (31) and (32),are written below using the WSLR formulation:

  • Initialization:x0 = E [x0]

    Px0 = E[(x0 x0) (x0 x0)

    T]

    xa0 = E [x

    a0 ]

    =[

    xT0 vT0 n

    T0

    ]TP

    ax0

    =[(xa0 x

    a0) (x

    a0 x

    a0)

    T]

    =

    Px0 0 00 Q0 0

    0 0 R0

    For k=1,2,. . . ,N

    Calculate sigma-points:

    ak =

    [xak x

    ak + x

    ak

    ]

    where =

    (L + ) P axk

    Time-update equations:

    x

    i,k+1|k = fk(

    x

    i,k, v

    i,k

    )i = 0, 1, . . . , 2L

    xk+1 =

    2Li=0

    w(m)i

    x

    i,k+1|k

    Pxk+1

    =

    2Li=0

    2Lj=0

    w(c)ij

    (

    x

    i,k+1|k xk+1

    ) (

    x

    j,k+1|k xk+1

    )T

    Weighted Statistical Linearization of f(.):

    Pxkx

    k+1=

    2Li=0

    2Lj=0

    wcij

    (

    x

    j,k xk) (

    x

    i,k+1|k x1k+1

    )T

    Af,k = PT

    xkx

    k+1

    P1xk

    bf,k = xk+1 Af,kxk

    Pf ,k = Pxk+1

    Af,kPxk ATf,k

    Measurement-update equations:i,k+1|k = hk

    (

    x

    i,k+1|k, n

    i,k

    )i = 0, 1, . . . , 2L

    zk+1 =

    2Li=0

    w(m)i i,k+1|k

    Pzk+1 =

    2Li=0

    2Lj=0

    w(c)i,j

    (j,k+1|k z

    k+1

    ).

    (i,k+1|k z

    k+1

    )T

    Pxk+1zk+1 =

    2Li=0

    2Lj=0

    w(c)i,j

    (

    x

    j,k+1|k xk+1

    ).

    (i,k+1|k z

    k+1

    )TKk+1 = Pxk+1zk+1P

    1zk+1

    xk+1 = xk+1 + Kk+1

    (zk+1 z

    k+1

    )Pxk+1 = P

    xk+1

    Kk+1Pzk+1

    KTk+1

    Weighted Statistical Linearization of h(.):Ah,k = P

    Txk+1zk+1

    (P

    xk+1

    )1bh,k = z

    k+1 Ah,kx

    k+1

    Ph,k = Pzk+1 Ah,kPxk+1

    ATh,k

    where:x

    a =[

    xT vT nT]T

    a =

    [(x)T (v)T (n)T

    ]T

    Paxk

    =

    Pxk 0 00 Qk 0

    0 0 Rk

    Parameters: is the composite scaling parameter

    =2 (L + ) L,

    and w(c)i and w(m)i are the scaler sigma-point weights defined

    as:

    w(c)0 =

    (L + )+

    (1 2 +

    ), i = 0

    w(m)0 =

    (L + ), i = 0

    w(c)i =

    1

    2 (L + ), i = 1, 2, . . . , 2L

    w(m)i =

    1

    2 (L + ), i = 1, 2, . . . , 2L

    where controls the size of the sigma point spread and shouldbe within 0 1 to avoid sampling non-local points whenthe nonlinearities are strong [38]. 0 is the weighting termwhich incorporates the higher order moments of the prior dis-tribution. The sigma point approach can effectively capturethe first 2 moments (mean and covariance) of the distribution.The parameter also can be used to minimize the error in ap-proximating higher order moments of the distribution. For aGaussian prior, we set = 2 [37]. The parameter is usedto ensure the positive definiteness of the covariance estimates.Setting 0 should work for most cases. L is the dimensionof the augmented state, Qk and Rk are the process and obser-vation noise covariances. Note that the measurement-updateequations may be skipped when observations are unavailable.This allows for multi-rate processing in which the state esti-mates are updated at a higher rate than the sensor sampling orto accommodate missing observations.

    3.1.2. Backward Filter

    An information filter is used to estimate the states in the back-ward direction given all the present and future measurements.The backward filter recursion is derived from the statisticallylinearized state space found during the forward pass (see [30]).The pseudo code is given below:

  • Initializations:SN+1 = 0

    yN+1 = 0

    where Sk = (Pxk )1 is the information matrix and yk =

    Skxk is defined as the information state.

    Time-update equations:

    Sk = A

    Tf,kSk+1Af,k A

    Tf,kSk+1Gf,k[(

    Pf ,k + Qk)1

    + GTf,kSk+1Gf,k]1

    GTf Sk+1Af,k

    Define Kb,k as the backward gain matrix

    Kb,k =Sk+1Gf,k[(

    Pf ,k+ Qk)1+ GTf,kSk+1Gf,k

    ]1

    Then substituting Kb,k on Sk ,

    Sk = A

    Tf,k

    (I Kb,kG

    Tf,k

    )Sk+1Af,k

    yk = A

    Tf,k

    (I Kb,kG

    Tf,k

    ).

    (yk+1 Sk+1bf,k)

    Measurement-update equations:

    Sk = Sk + A

    Th,k (Ph,k + Rk)

    1Ah,k

    ek = (zk bh,k)

    yk = yk + Ah,k (Ph,k + Rk)

    1ek

    Note that as the WSLR state-space is different than the stan-dard linear state-space used by the Kalman filter, the resultingtime and measurement update equations differ from standardbackward Kalman equations. Specifically note how the cor-rection terms Pf ,k and Ph,k are fed back in the time-updateand measurement-update equations. This term is absent inthe standard information filter formulation [19,33]. The moresevere the nonlinearity is over the uncertainty region of thestate, the higher will be the linearization error covariance ma-trices. This correction term appears due to the statistical lin-earization as it considers the covariance of the prior RV whilelinearizing the nonlinear model. A first-order Taylor seriesexpansion is less accurate because it does not consider thiserror term.

    3.1.3. Smoothing

    As the last step in the estimation process, the forward andbackward filter estimates are optimally combined to form thesmoothed estimates,

    P sk =[(Pxk)

    1+ Sk

    ]1

    xsk =(I + PxkS

    k

    )1

    xk + Psk y

    k

    For tracking purposes, the FBSL-SPKS provides an off-line estimate of the position and velocity trajectories after alldata up to time N has been collected. Alternatively, pseudoreal-time estimates may be achieved by dividing the data intoblocks (e.g., N =

    Ni) and then performing the forward-

    backward operation on the buffered blocks of data as theybecome available.

    3.2. Fixed Lag sigma-point Kalman smoother (FL-SPKS)

    In FL-SPKS, the objective is to estimate the current state us-ing all the past, present and L future measurements, where Lis the fixed lag. Alternatively, this may be viewed as estimat-ing the lagged state xkL given all measurements up to thecurrent time k. The FL-SPKS is specified by simply defininga new augmenting state space,

    xk+1 =

    xk+1xk...

    xkL

    (29)

    =

    fk (xk)[ I 0

    0 I

    ]xk

    +

    I

    0...0

    vk (30)

    zk = hk (xk) + nk (31)

    where

    xk =[

    xk xk1 . . . xkL1]T

    The standard SPKF recursions shown in 3.1.1 are applied di-rectly to the augmented system. The fixed-lag estimate of thelast element of the augmented state vector xkL will be equalto the xkL given measurements up to and including timeindex k. The increased state dimension increases the over-all computational complexity of the algorithm. However, theFL-SPKS provides sequential estimates of the states delayedby L measurements, and is thus more appropriate to on-lineimplementation than the FBSL-SPKS.

    4. EXPERIMENTAL RESULTS

    Implementation and testing was performed at several living-laboratories (also called Point-of-Care labs) used to developmonitoring and assistive technologies for the elderly. A num-ber of trials were conducted in which different subjects fol-lowed a predefined path. While walking, the subject period-ically noted down the ground truth. The Ekahau real-timepositional engine was also turned on during these tests forcomparison. Note that the same calibration data was used forboth the SPKS based tracker and Ekahaus positioning en-gine. The performances of SPKS based tracker and Ekahaureal time tracking engine displayed in this paper were per-formed at 3 different sites.

  • 020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (a)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I(b)

    020

    4060

    201000

    20

    40

    60

    x(ft)y(ft)

    RSS

    I

    (c)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (d)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (e)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (f)

    020

    4060

    201000

    20

    40

    60

    x(ft)y(ft)

    RSS

    I

    (g)

    020

    4060

    201000

    20

    40

    60

    x(ft)y(ft)

    RSS

    I

    (h)

    020

    4060

    201000

    20

    40

    60

    80

    x(ft)y(ft)

    RSS

    I

    (i)

    020

    4060

    201000

    20

    40

    60

    x(ft)y(ft)

    RSS

    I

    (j)

    Fig. 4. (a) to (e): raw RSSI values from 5 access points collected during calibration at Point of Care test lab-I, (f) to (j): fittedRBF maps.

    (a) (b) (c)

    (d) (e) (f)

    Fig. 5. Tracking performance in test lab-I, (a) and (d) Ekahau estimates (red: ground truth, brown: estimate), (b) and (e)SPKS estimates using RSSI measurements (red: ground truth, blue: SPKS estimate), (c) and (f) SPKS estimates using RSSI +foot switch observations (red: ground truth, blue: SPKS estimate). Yellow rectangular boxes indicate the position of the footswitches on the floor plan. First row is for subject 1 and the second row is for subject 2.

    4.1. Test Lab-I

    The Point-of-care test lab-I was setup with 5 access points lo-cated at the four corners and at the center. The size of the testlab-I is 60 feet by 20 feet. In the entire environment, calibra-tion was performed first in order to measure RSSI variabilityemanating from each access point. The floor plan was dividedinto P = 15 sections. Each room was considered a sectionand the long corridors were divided into multiple sections. Ineach section 9 points were chosen to perform calibration in

    such a way that 8 points formed the periphery of an octagonand the remaining point was at the center of the octagon. Ateach calibration point, a person carrying a RSSI tag spendsaround one minute to collect training RSSI data. Roughly8 10 RSSI measurements are recorded at each calibrationpoints for a total of 1065 measurements. As described earlier,an RBF network is used to fit a nonlinear map between knowncalibration locations and the collected RSSI values. The rawRSSI at each calibration point and the RSSI calibrated mapsfor 5 access points were shown in Fig. 4(a)- 4(j).

  • (a) (b)

    Fig. 6. (a) FBSL-SPKS estimates, (b) FL-SPKS estimates (red: ground truth, blue: SPKS estimates). All estimates used onlyRSSI sensors.

    (a) (b) (c)

    Fig. 7. Tracking performance in test lab-II, (a) Ekahau estimates (red: ground truth, brown: Ekahau estimate), (b) SPKSestimates using RSSI measurements (red: ground truth, blue: SPKS estimate), (c) SPKS estimates using RSSI + foot switchobservations (red: ground truth, blue: SPKS estimate). Small yellow rectangular boxes indicate the location of the motionsensors on the floorplan. The furniture positions are shown as magenta rectangular boxes.

    We conducted two trials of moving test in which subjectswalked at a normal speed following a predefined path. Twodifferent subjects were chosen as RSSI variability is observedto be subject dependent. Subject 1 took 174 seconds to com-plete the path and 25 RSSI observations were recorded duringthat time period. Subject 2 completed the same path in 169seconds and recorded 21 RSSI observations. The rate var-ied between 4 8 seconds during tracking. Multi-rate filter-ing was implemented so that the time-updates equations stillprovide estimates of the position and velocity every second.Approximate ground truth was collected periodically duringthe walking and is also shown in the plots. Fig. 5(a)- 5(f)compares the estimates obtained from the Ekahau engine andSPKS tracker. From Fig. 5(a) and 5(d), it can be seen thatthe estimates from Ekahau tracking engine are very inaccu-rate and often fails to even localize the person in the correctregion/room. The SPKS tracker with RSSI only observationsclearly tracked the person with greater accuracy (see Fig. 5(b)and 5(e)).

    Only the FBSL-SPKS estimates are shown in the previousfigures. The tracking performance of the FBSL-SPKS andFL-SPKS are compared in Fig. 6(a)- 6(b). As shown, the FL-SPKS estimates were slightly less accurate compared to theFBSL-SPKS estimates.

    When RSSI observations were integrated with foot-switchsignals, the accuracy of the SPKS based tracker improved

    even further (Fig. 5(c) and 5(f)). Note that we set the varianceof the foot-switch sensors to be 10 feet in our experiments.While this is clearly larger than necessary, the goal was tosimulate an accuracy closer to that of the IR motion sensorsrather than provide exact localization as would be possiblewith the foot-switches.

    4.2. Test Lab-II

    Similar to POCL test lab-I, calibration was performed in theother POCL test lab for each of the 5 Wi-Fi access points. Thelab is also fitted with a number of IR motion sensors insteadof foot switches. There are two varieties of motion sensor in-stalled in the houses depending on the beam width. The fullbeam width unconstrained sensors generally installed one perroom and has variability that matches the full dimension ofthe room. The constrained sensors have limited beam widthand are generally installed along corridors. The variabilityof the constrained sensors is thus significantly lower than theunconstrained. In 7(a)- 7(c), we demonstrate a walking ex-periment comparing the Ekahau performance to the SPKStracker. The Ekahau estimates as observed in Fig. 7(a) aremostly stuck in one portion of the house. The SPKS trackerperformance with RSSI and RSSI with IR motion sensors aredepicted in Fig. 7(b) and 7(c). While still superior to the Eka-hau estimates, the small size of the POCL lab-II (30 feet by

  • correctroom

    (a) (b)

    Fig. 8. Tracking performance in test lab-III, (a) Ekahau estimates (brown: Ekahau estimate), (b) SPKS estimates using RSSIonly measurements (blue: SPKS estimate).

    20 feet) and the existence of a large number of furniture lim-ited the performance of the SPKS tracker compared to lab-I. Adding the motion sensors with RSSI improved the SPKStracker accuracy in spite of the high false alarm and large vari-ability of the motion sensors.

    4.3. Test Lab-III

    In 8(a)- 8(b), we demonstrate an additional moving test at athird location. The size of lab-III is 55 feet by 25 feet. Sim-ilar to test lab I and II, this living lab is also equipped with 5wireless access points placed at four corners and at the cen-ter. The entire floorplan is divided into 9 sections. In eachsection, an octagonal grid is formed to perform calibration.Due to a problem with the RSSI tags, a limited amount ofcalibration data was collected (only 212 RSSI measurementsfor the entire house). We would thus expect worse track-ing performance corresponding to only room level localiza-tion accuracy. During the moving test, a subject walked onthe calibration grid points at each section along the counterclockwise direction. Fig. 8(a) shows the Ekahau localizationperformance. As seen in Fig. 8(a)), the Ekahau tracking en-gine failed to localize the person in the correct section exceptfor a single case (as marked in Fig. 8(a)). Most of the Eka-hau estimates are randomly centered around the middle of theentire floor plan. However, the proposed FBSL-SPKS basedtracker correctly localized the person in all of the sections asobserved in Fig. 8(b).

    5. CONCLUSION

    A new method and system has been developed for RSSI basedindoor localization and tracking. Instead of using simple fin-gerprinting or a fixed a priori distribution for the RSSI tags,an observation function is generated from RSSI calibrationdata by fitting nonlinear maps between known calibration lo-cations and RSSI mean values. The RSSI maps are incorpo-rating into a Bayesian framework that fuses all sensor mea-surements with a simple dynamic model of walking. Thedynamic model consists of a random walk model augmentedwith repulsive forces to account for room-wall configurations.

    Table 1. Performance comparison of the SPKS with other es-timators. Average error is calculated relative to the observedtrue trajectory over 15 different trials.

    Estimator Average Error (ft)Ekahau (RSSI) 12.22EKF(RSSI) 6.58EKS(RSSI) 4.80SPKF(RSSI) 5.31SPKS(RSSI) 3.45SPKS(RSSI+IR motion sensor) 3.24SPKS(RSSI+footswitch) 1.24

    For the Bayesian inference, we use sigma point Kalman fil-ters (SPKF), which provide improved performance over stan-dard extended Kalman filters (EKF) while maintaining com-putational efficiency. We further developed two sigma-pointKalman smoother (SPKS) based implementations (forward-backward and fixed-lag) that provide considerable improve-ment in tracking accuracy compared with the standard SPKF.The SPKS tracker can accommodate multi-rate processingwhere state estimates are determined at a higher rate (e.g.,every second) while RSSI observations occur at slower up-date rate. Missing observations are also easily handled by theapproach. While the primary sensors are Wi-Fi tags, the ap-proach can also incorporate multiple types of sensors. In thecurrent implementation, both IR motion sensors and simplefoot-switches were incorporated. Table 1 summarizes the per-formance and superiority of the proposed SPKS based trackerover other popular estimation techniques in terms of aver-age position error. The trials used in table 1 were performedin a number of different living laboratories. As a predomi-nantly software solution, the approach provides the flexibil-ity to incorporate sensors from multiple manufacturers. Per-formance was evaluated in a number of living laboratories,where tracking accuracy was demonstrated to be superior tothe available industry positioning engine developed by Eka-hau Inc. The proposed system is currently being deployedinto a number of houses in order to continuously monitor el-derly for clinical purposes. Additional planned research in-

  • cludes refined models of walking motion and better likeli-hood models for the IR motion sensors. We also plan to in-vestigate self calibration (i.e., simultaneous localization andmapping), whereby the parameters of the RSSI maps are con-tinuously updated to account for changes in environment orto even avoid the initial off-line calibration procedure. Wallmounted sonar range sensors are also being investigated thatwould provide an alternative to RSSI, allowing for unobtru-sive localization without the use of body worn tags.

    6. ACKNOWLEDGMENTS

    This work was supported in part by Intel as part of the Behav-ioral and Intervention Commons (BAIC). We would also liketo thank Misha Pavel and Tamara Hayes for project supportand use of laboratory facilities, and Ann Tsay, Eric Earl andJon Yeargers for help with software support and data collec-tion.

    7. REFERENCES

    [1] R. Want, A. Hopper, V. Falcao, and J. Gibbons, Theactive badge location system, ACM Transactions on In-formation Systems, vol. 40, no. 1, pp. 91102, January1992.

    [2] P. Bahl and V. Padmanabhan, Radar: An in-bulding rf-based user location and tracking system, in Proceed-ings of IEEE Infocomm 00, April 2000.

    [3] N. Priyantha, A. Charraborty, and H. Balakrishnan,The cricket location-support system, in Proceedingsof ACM Mobicomm 00, July 2000.

    [4] J. Hightower and G. Borriello, Particle filters for loca-tion estimation in ubiquitious computing: A case study,in Proceedings of International Conference on Ubiqui-tious Computing (UBICOMP), 2004.

    [5] A. LaMarca, Y. Chawathe, S. Consolvo, J. Hightower,I. Smith, J. Scott, T. Sohn, J. Howard, J. Hughes, F. Pot-ter, J. Tabert5, P. Powledge, G. Borriello, and B. Schilit,Place lab: Device positioning using radio beacons inthe wild, in Proceedings of International Conferenceon Pervasive Computing (Pervasive), 2005.

    [6] Y. Cheng, Y. Chawathe, A. LaMraca, and J. Krumm,Accuracy characterization for metropolitan-scale wi-filocalization, in Proceedings of 3rd international con-ference on Mobile systems, applications, and services,2005, pp. 233245.

    [7] [Online]. Available: http://www.ekahau.com/

    [8] [Online]. Available: http://www.ubisense.net/

    [9] [Online]. Available: http://www.sonitor.com/

    [10] D. Fox, J. Hightower, L. Liao, D. Schulz, and G. Bor-riello, Bayesian filtering for location estimation, IEEEpervasive computing, 2003.

    [11] A. Elfes, E. Prassler, and J. Scholz, Tracking people ina railway station during rush hour, in Proceedings ofcomputer vision system, ICVS 99, 1999.

    [12] A. H. A. Fod and M. Mataric, Laser-based peopletracking, in Proceedings of the IEEE InternationalConference on Robotics & Automation, 2002.

    [13] C.-T. Hsieh, C.-Y. Chen, and Y.-K. Wu, People track-ing system using kalman filter, in Proceedings of Signaland image processing, 2002.

    [14] J. Krumm and E. Horvitz, Locadio:inferring motionand location from wi-fi signal strengths, in Proceed-ings of International Conference onMobile and Ubiq-uitious Systems:Networking and Services(MobiQuitous04), 2004.

    [15] F. Gustafsson, F. Gunnarsson, N. Bergman, U. Fors-sell, J. Jansson, R. Karlsson, and P. Nordlund, Particlefilters for positioning, navigation and tracking, IEEETransactions on Signal Processing, vol. 50, pp. 425435, 2002.

    [16] B. Ferris, D. Haehnel, and D. Fox, Gaussian processesfor signal strength-based location estimation, Proc. ofRobotics: Science and Systems, 2006, 2006.

    [17] J. Letchner, D. Fox, and A. LaMarce, Large-scale lo-calization from wireless signal strength, Proceedingof the National Conference on Artificial Intelligence(AAAI-05), 2005.

    [18] D. Hhnel, W. Burgard, D. Fox, K. Fishkin, and M. Phili-pose, Mapping and localization with rfid technology,in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA), 2004.

    [19] F. Lewis, Optimal Estimation with an Introduction toStochastic Control Theory. John Wiley and Sons, 1986.

    [20] Q. Meng, Y. Sun, and Z. Cao, Adaptive extendedkalman filter (aekf)-based mobile robot localization us-ing sonar, Robotica, vol. 18, pp. 459473, 2000.

    [21] J. Leonard and H. Durrant-Whyte, Mobile robot local-ization by tracking geometric beacons, IEEE Transac-tions on Robotics and Automation, vol. 7, no. 3, pp. 376382, June 1991.

    [22] S. Borthwick, M. Stevens, and H. Durrant-Whyte, Po-sition estimation and tracking using optical range data,in Proceedings of the IEEE International Conference onIntelligent Robots and Systems, 1993.

  • [23] S. Seidal and T. Rappaport, 914 mhz path loss pre-diction models for indoor wireless communications inmultifloored buildings, IEEE Transactions on Antennasand Propagation, vol. 40(2), 1992.

    [24] E. A. Wan and R. van der Merwe, The unscentedkalman filter for nonlinear estimation, in Proceedingsof Symposium 2000 on Adaptive Systems for Signal Pro-cessing, Communication and Control (AS-SPCC), Octo-bor 2000.

    [25] E. Wan and R. van der Merwe, Kalman Filtering andNeural Networks, 1st ed. John Wiley & Sons, 2001,ch. 7, pp. 221280.

    [26] R. van der Merwe and E. Wan, Sigma-point kalmanfilters for probabilistic inference in dynamic state-spacemodels, in Proceedings of Workshop on Advances inMachine Learning, June 2003.

    [27] S. Julier, J. Uhlmann, and H. Durrant-Whyte, A newapproach for filtering nonlinear systems, in Proceed-ings of American Control Conference, 1995, pp. 16281632.

    [28] M. Norgaard, N. Poulsen, and O. Ravn, New develop-ments in state estimation for nonlinear systems, Auto-matica, vol. 36, pp. 16271638, November 2000.

    [29] R. van der Merwe and E. A. Wan, The square-rootunscented kalman filter for state and parameter estima-tion, in Proceedings of IEEE International Conferenceon Acoustics, Speech and Signal Processing (ICASSP),vol. 6, Salt Lake City, Utah, May 2001, pp. 34613464.

    [30] A. S. Paul and E. A. Wan, A new formulation for non-linear forward-backward smoothing, in Proceedings ofInternational Conference on Acoustics, Specch and Sig-nal Processing(ICASSP), 2008.

    [31] S. Haykin, Neural networks : a comprehensive founda-tion. Maxwell Macmillan International, 1994.

    [32] R. Kalman, A new approach to linear filtering and pre-diction problems, Trnsactions of the ASME, Journal ofBasic Engineering, vol. 82, pp. 3545, March 1960.

    [33] D. Simon, Optimal State Estimation. Wiley Inter-Science, 2006.

    [34] D. Fraser and J. Potter, The optimum linear smootheras a combination of two optimum linear filters, IEEETransactions on Automatic Control, vol. 14, no. 4, pp.387390, 1969.

    [35] H. Rauch, F. Tung, and C. Striebel, Maximum likeli-hood estimates of linear dynamic systems, AIAA, vol. 3,no. 8, pp. 14451450, 1965.

    [36] C. Leondes, J. Peller, and E. Stear, Nonliner smooth-ing theory, IEEE Transactions on System, Science andCybernetics, vol. 6, no. 1, January 1970.

    [37] S. J. Julier and J. K. Uhlmann, Unscented filtering andnonlinear estimation, Proceedings of the IEEE, vol. 92,pp. 401422, March 2004.

    [38] R. van der Merwe, Sigma-point kalman filters forprobabilistic inference in dynamic state-space mod-els, Ph.D. dissertation, OGI School of Science andEngineering at Oregon Health & Science University(OHSU), 2004.