empirical)performance)of)) self0calibrang) wifi)locaon...

115
Empirical Performance of Selfcalibra2ng WiFi Loca2on Systems Daniel Turner Stefan Savage Alex C. Snoeren UCSD 10/05/2011

Upload: phungnhu

Post on 11-May-2018

219 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Empirical  Performance  of    Self-­‐calibra2ng  WiFi  Loca2on  Systems  

Daniel  Turner  Stefan  Savage  Alex  C.  Snoeren  

UCSD  10/05/2011  

Page 2: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Localiza2on  Outdoors  

•  GPS  tells  us  where  we  are  outdoors  •  GPS  +  smart  phone  

                                                                             

Page 3: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Localiza2on  Outdoors  

•  GPS  tells  us  where  we  are  outdoors  •  GPS  +  smart  phone  

– Turn-­‐by-­‐turn  driving  direc2ons              

Page 4: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Localiza2on  Outdoors  

•  GPS  tells  us  where  we  are  outdoors  •  GPS  +  smart  phone  

– Turn-­‐by-­‐turn  driving  direc2ons  – Yelp  

Page 5: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Localiza2on  Indoors  

•  Sadly  GPS  works  poorly  indoors  •  Indoor  localiza2on  services  

– Tour  guides  in  museums  – Adver2sing  in  Malls  – The  next  BIG  thing    

•  So  how  do  we  get  indoor  ‘GPS’  – For  next  genera2on  of  applica2ons  

•  How  much  accuracy  do  we  need?  – 3-­‐5  meters  depending  on  applica2on  

Page 6: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Custom  Hardware    

•  Deploy  new  localiza2on  infrastructure    – Bluetooth,  RFID,  Sonar,  ..  

•  AoA,  TDoA,  and  Signal  Decay  – Requires  special  purpose  infrastructure    

Page 7: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Leveraging  WiFi  Infrastructure  

•  802.11  (WiFi)  loca2on  systems    – Median  accuracy  around  3  Meters  – Requires  significant  manual  calibra2on    

Page 8: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

RSSI  

•  WiFi  exposes  Received  Signal  Strength  Indica2on  (RSSI)  – measurement  of  the  power  present  in  a  received  packet  

– Higher  value  indicated  stronger  signal  – RSSI  is  a  unit-­‐less  quan2ty    

Page 9: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3   AP  2  

AP  1  

AP  4  

Page 10: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3   AP  2  

AP  1  

AP  4  

Page 11: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3  

AP  1:  44.1  RSSI  AP  2:  22.7  AP  3:  19.8    AP  4:  35  

AP  2  

AP  1  

AP  4  

Page 12: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3  

AP  1:  44.1  RSSI  AP  2:  22.7  AP  3:  19.8    AP  4:  35  

AP  1:  42.1  RSSI  AP  2:  27.7  AP  3:  24.8    AP  4:  31  

AP  2  

AP  1  

AP  4  

Page 13: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3   AP  2  

AP  1  

AP  4  

Page 14: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Fingerprint  Based  Approaches    

AP  3   AP  2  

AP  1  

AP  4  

AP  1:  42.1  RSSI  AP  2:  23.4  AP  3:  22.6    AP  4:  39  

Page 15: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

The  Next  Challenge  

•  Indoor  localiza2on  is  possible  •  Can  be  done  using  only  WiFi  

•  Can  it  be  done  w/o  human  calibra2on?    – Only  Calibra2on  data  from  AP  to  AP  transmissions  

Page 16: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Self-­‐Calibra2on  

•  We  can  leverage    intra-­‐AP  transmissions  to  build  models  

                                             

AP  3  

AP  1    

AP  2  

AP  4  

Page 17: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Self-­‐Calibra2on  

•  We  can  leverage    intra-­‐AP  transmissions  to  build  models  

•  Signal-­‐Distance  pairs  

AP  3  

AP  1    

AP  2  

AP  4  

Sender   Distance  (M)  

Mean  RSSI  

Varia2on  

AP  2   4.6   48.9   1.2  

AP  1   10.0   42.3   0.8  

AP  4   15.4   12.1   0.7  

Page 18: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Plug-­‐n-­‐Play  for  Indoor  Localiza2on  

•  Self-­‐Calibra2ng  WiFi  loca2on  systems  – Recognized  that  WiFi  decays  exponen2ally  – Use  models  to  map  RSSI  to  distance  

– Leverage  WiFi  infrastructure  to  calibrate  models  – Published  2-­‐5  Meters  of  accuracy      

 

Page 19: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Published  Self-­‐Calibra2ng  Systems  

•  Algorithms  uses  varying  amounts  of  data  to  train  models  –  In  theory  more  training  data  should  lead  to  beger  accuracy  

•  Triangular  Interpola5on  and  eXtrapola5on  (TiX)  Gwon  and  Jain  2004  

•  Lease  Krishnakumar  et  al  2004    •  Bayesian  indoor  posi2oning  system  D.  Madigan  et  al  2005  

•  Ariadne  y.  Ji  et  al  2006  

•  Probabilis5c  Method    Moares  and  Nunes  2006  

•  Zero-­‐configura5on  and  robust  indoor  localiza5on  (ZCFG)  Lim  et  al.  2006    

•  EZ  Localiza2on  Chintalapudi  et  atl.  2010    

Page 20: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Picking  a  System  to  Deploy  

•  There  are  mul2ple  Self-­‐Calibra2ng  systems    

•  Published  performance  all  under  5  Meters  

•  Not  clear  which  we  should(n’t)  use  

Study   #  of  APs   Published  Accuracy  

Probabilis2c  (de  Moraes  &  Nunes)   4   1.84  

TiX  (Gwon  &  Jain)   4   5  

ZCFG  (Lim  et  al.)   6   2.5  

Page 21: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Our  Environment    

•  Test  Environment  – 30k  Sq.  Ft.  per  floor  – 10  APs  per  Floor  

•  Channels  1,6,  and  11  

 

Page 22: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Our  Environment    

•  Test  Environment  – 30k  Sq.  Ft.  per  floor  – 10  APs  per  Floor  

•  Channels  1,6,  and  11  

 Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Page 23: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Our  Environment    

•  Test  Environment  – 30k  Sq.  Ft.  per  floor  – 10  APs  per  Floor  

•  Channels  1,6,  and  11  

 Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Cisco  Recommends   3,000-­‐5,000   1   0.0002-­‐0.0003  

Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Page 24: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Our  Environment    

•  Test  Environment  – 30k  Sq.  Ft.  per  floor  – 10  APs  per  Floor  

•  Channels  1,6,  and  11  

 Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Cisco  Recommends   3,000-­‐5,000   1   0.0002-­‐0.0003  

UCSD  CSE  Building   30,000   10   0.0003  

Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Cisco  Recommends   3,000-­‐5,000   1   0.0002-­‐0.0003  

Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Probabilis2c  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Page 25: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Contribu2ons  

•  Perform  head-­‐to-­‐head  comparisons  – 4  different  algorithms  

•  Algorithms  don’t  work  as  well  as  published  – As  much  as  4x  worse  than  previously  published  

•  We  provide  insight  into  why  not  – Performance  loss  due  to  environmental  issues  – Performance  loss  due  to  systemic  issues  

Page 26: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Outline  

•  Mo2va2on  •  Algorithms  

•  Experimental  set-­‐up  /  results  

•  Causes  of  Error  •  Conclusion  

Page 27: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Nearest  AP  

                                                                                                                 

AP  3  

AP  1    

AP  2  

AP  4  

Page 28: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Nearest  AP  technologies including Bluetooth signals [12], RFID proximity[19], and ultrasonic acoustic waves [3], among others.

Systems that use signal strength measurements, or, morespecifically in the case of WiFi, the received signal strengthindication (RSSI)—a unit-less measure of signal power asso-ciated with a packet as measured by a receiving device—canbe subdivided into two categories: those that require manualcalibration and those that do not. While the goal of this paperis to evaluate self-calibrating 802.11-based location systems,we briefly summarize the approaches based upon manualcalibration for context.

Many of the early (and still most accurate) 802.11-basedlocation systems require manual calibration. During this initialsite survey an installer collects client fingerprints (RSSI valuesfor packets broadcast by APs) at a large number of knownlocations to build up a fine-grained fingerprint database thatcan be used for future client localization. In general thesesystems have three major manifestations: point matching,probabilistic matching, and Bayesian networks.

Point matching, also known as nearest neighbor in signal

strength [2], starts by capturing a client fingerprint and com-paring it against the initial fingerprint database scanning for thefingerprint that minimizes a similarity metric, often Euclideandistance. The client’s location is determined to be the locationof the offline fingerprint that minimizes the metric.

The second set of methods once again starts with the usertaking a client fingerprint. Then the user computes the proba-bility of receiving the fingerprint at each location, l = (x, y),in the building. Assuming that the distribution of RSSIs in thefingerprint is Gaussian, it is straightforward to determine an lsuch that P (s|l) is maximized [1], [25].

Algorithms based on Bayesian networks are the most com-plicated. They depend on building a Hidden Markov Model(HMM) in which the RSSIs represent the observed state, andthe distance from the APs (and hence the x, y coordinatesof the client) are the hidden state. The relationship betweenvisible and hidden states is encoded via a signal decay modeland then the fingerprint database is used to train the parametersof the model [16], [21].

Chintalapudi et al. recently proposed EZ Localization as amethodology for calibration-free wireless localization in anindoor environment [6]. EZ uses WiFi-enabled smart phonesto take fingerprints at unknown locations in a building. Ratherthan using the location of APs to ground their model, however,they leverage the GPS units available on the client devices.When a phone is able to get a GPS lock they opportunisticallyuse the measurement as an anchor point. They then treat thefingerprints as constraints to be solved by a genetic algorithm.The authors report that EZ has low error in their environment,but remains unable to surpass the accuracy of systems thatrequire manual calibration.

III. SELF-CALIBRATING ALGORITHMS

Because manually calibrated systems may require takinghundreds of fingerprints per floor, a second class of systemsthat requires no manual calibration has been proposed. Instead,

1

3 4

2

(a) Simplified network diagram

Device Mean RSSIAP1 24.4AP2 47.8AP3 45.5AP4 40.6

(b) Client fingerprint

Fig. 1. An example network and fingerprint corresponding to signal A

these self-calibrating systems leverage information regardingthe location of WiFi access points to conduct a trainingphase in which they collect system fingerprints, or sets ofRSSI measurements taken of (and by) the stationary APs inthe network. After the self-calibration stage, the fingerprintdatabase is combined with pre-configured information aboutthe physical location of the APs to compute a model of therelationship between RSSI and physical location. This modelis then used to answer on-line queries about client location.

A. Overview

It is convenient to think of self-calibrating algorithms asfitting into three categories based on the amount of data usedto perform calibration. To assist the reader in understandingeach algorithm we give examples of how they work in a simplewireless network. Our explanatory network, diagrammed inFigure 1(a), has four APs and one client. Each AP knowsthe distance between it and every other AP, for example thedistance between AP3 and AP4 is ten meters and labeled D.The 802.11 signal emitted by the client when sending a packetis labeled A. The RSSI values for one transmission as seen bythe four APs, i.e. a client fingerprint, are documented in thetable in Figure 1(b). Conversely, the 802.11 signal generatedwhen an AP sends a packet into the network is labeled C.When an AP sends a packet it is heard by everyone withinrange, though all but the intended destination will usuallyignore it when the network is operational. In the systemtraining phase, however, APs do not ignore packets sent fromother APs, labeled B, but instead record their RSSI values.Table I shows an example of training data that might observedby AP4 in this network.

Baseline: In order to provide some context in which tointerpret the performance of the localization system classes, weconsider a simple, calibration-free baseline that leverages onlya single RSSI from a client transmission, labeled A in Figure1(a). This nearest-neighbor approach requires no calibration:to locate a client it simply determines which AP heard theclient’s transmission with the strongest RSSI and declares theclient to be co-located with that AP. For example if the systemobtained the fingerprint in Figure 1(b) it would estimate theclient to be at the same location as AP2.

Class I: Our baseline algorithm, while simple, has twomajor limitations. First, it can choose only locations occupiedby an AP. Second, it ignores all information from the (n− 1)

                                                                                                                 

AP  3  

AP  1    

AP  2  

AP  4  

Page 29: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Nearest  AP  technologies including Bluetooth signals [12], RFID proximity[19], and ultrasonic acoustic waves [3], among others.

Systems that use signal strength measurements, or, morespecifically in the case of WiFi, the received signal strengthindication (RSSI)—a unit-less measure of signal power asso-ciated with a packet as measured by a receiving device—canbe subdivided into two categories: those that require manualcalibration and those that do not. While the goal of this paperis to evaluate self-calibrating 802.11-based location systems,we briefly summarize the approaches based upon manualcalibration for context.

Many of the early (and still most accurate) 802.11-basedlocation systems require manual calibration. During this initialsite survey an installer collects client fingerprints (RSSI valuesfor packets broadcast by APs) at a large number of knownlocations to build up a fine-grained fingerprint database thatcan be used for future client localization. In general thesesystems have three major manifestations: point matching,probabilistic matching, and Bayesian networks.

Point matching, also known as nearest neighbor in signal

strength [2], starts by capturing a client fingerprint and com-paring it against the initial fingerprint database scanning for thefingerprint that minimizes a similarity metric, often Euclideandistance. The client’s location is determined to be the locationof the offline fingerprint that minimizes the metric.

The second set of methods once again starts with the usertaking a client fingerprint. Then the user computes the proba-bility of receiving the fingerprint at each location, l = (x, y),in the building. Assuming that the distribution of RSSIs in thefingerprint is Gaussian, it is straightforward to determine an lsuch that P (s|l) is maximized [1], [25].

Algorithms based on Bayesian networks are the most com-plicated. They depend on building a Hidden Markov Model(HMM) in which the RSSIs represent the observed state, andthe distance from the APs (and hence the x, y coordinatesof the client) are the hidden state. The relationship betweenvisible and hidden states is encoded via a signal decay modeland then the fingerprint database is used to train the parametersof the model [16], [21].

Chintalapudi et al. recently proposed EZ Localization as amethodology for calibration-free wireless localization in anindoor environment [6]. EZ uses WiFi-enabled smart phonesto take fingerprints at unknown locations in a building. Ratherthan using the location of APs to ground their model, however,they leverage the GPS units available on the client devices.When a phone is able to get a GPS lock they opportunisticallyuse the measurement as an anchor point. They then treat thefingerprints as constraints to be solved by a genetic algorithm.The authors report that EZ has low error in their environment,but remains unable to surpass the accuracy of systems thatrequire manual calibration.

III. SELF-CALIBRATING ALGORITHMS

Because manually calibrated systems may require takinghundreds of fingerprints per floor, a second class of systemsthat requires no manual calibration has been proposed. Instead,

1

3 4

2

(a) Simplified network diagram

Device Mean RSSIAP1 24.4AP2 47.8AP3 45.5AP4 40.6

(b) Client fingerprint

Fig. 1. An example network and fingerprint corresponding to signal A

these self-calibrating systems leverage information regardingthe location of WiFi access points to conduct a trainingphase in which they collect system fingerprints, or sets ofRSSI measurements taken of (and by) the stationary APs inthe network. After the self-calibration stage, the fingerprintdatabase is combined with pre-configured information aboutthe physical location of the APs to compute a model of therelationship between RSSI and physical location. This modelis then used to answer on-line queries about client location.

A. Overview

It is convenient to think of self-calibrating algorithms asfitting into three categories based on the amount of data usedto perform calibration. To assist the reader in understandingeach algorithm we give examples of how they work in a simplewireless network. Our explanatory network, diagrammed inFigure 1(a), has four APs and one client. Each AP knowsthe distance between it and every other AP, for example thedistance between AP3 and AP4 is ten meters and labeled D.The 802.11 signal emitted by the client when sending a packetis labeled A. The RSSI values for one transmission as seen bythe four APs, i.e. a client fingerprint, are documented in thetable in Figure 1(b). Conversely, the 802.11 signal generatedwhen an AP sends a packet into the network is labeled C.When an AP sends a packet it is heard by everyone withinrange, though all but the intended destination will usuallyignore it when the network is operational. In the systemtraining phase, however, APs do not ignore packets sent fromother APs, labeled B, but instead record their RSSI values.Table I shows an example of training data that might observedby AP4 in this network.

Baseline: In order to provide some context in which tointerpret the performance of the localization system classes, weconsider a simple, calibration-free baseline that leverages onlya single RSSI from a client transmission, labeled A in Figure1(a). This nearest-neighbor approach requires no calibration:to locate a client it simply determines which AP heard theclient’s transmission with the strongest RSSI and declares theclient to be co-located with that AP. For example if the systemobtained the fingerprint in Figure 1(b) it would estimate theclient to be at the same location as AP2.

Class I: Our baseline algorithm, while simple, has twomajor limitations. First, it can choose only locations occupiedby an AP. Second, it ignores all information from the (n− 1)

•  Device  is  located  at  the  AP  that  with  the  greatest  RSSI  

AP  3  

AP  1    

AP  2  

AP  4  

Page 30: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Nearest  AP  technologies including Bluetooth signals [12], RFID proximity[19], and ultrasonic acoustic waves [3], among others.

Systems that use signal strength measurements, or, morespecifically in the case of WiFi, the received signal strengthindication (RSSI)—a unit-less measure of signal power asso-ciated with a packet as measured by a receiving device—canbe subdivided into two categories: those that require manualcalibration and those that do not. While the goal of this paperis to evaluate self-calibrating 802.11-based location systems,we briefly summarize the approaches based upon manualcalibration for context.

Many of the early (and still most accurate) 802.11-basedlocation systems require manual calibration. During this initialsite survey an installer collects client fingerprints (RSSI valuesfor packets broadcast by APs) at a large number of knownlocations to build up a fine-grained fingerprint database thatcan be used for future client localization. In general thesesystems have three major manifestations: point matching,probabilistic matching, and Bayesian networks.

Point matching, also known as nearest neighbor in signal

strength [2], starts by capturing a client fingerprint and com-paring it against the initial fingerprint database scanning for thefingerprint that minimizes a similarity metric, often Euclideandistance. The client’s location is determined to be the locationof the offline fingerprint that minimizes the metric.

The second set of methods once again starts with the usertaking a client fingerprint. Then the user computes the proba-bility of receiving the fingerprint at each location, l = (x, y),in the building. Assuming that the distribution of RSSIs in thefingerprint is Gaussian, it is straightforward to determine an lsuch that P (s|l) is maximized [1], [25].

Algorithms based on Bayesian networks are the most com-plicated. They depend on building a Hidden Markov Model(HMM) in which the RSSIs represent the observed state, andthe distance from the APs (and hence the x, y coordinatesof the client) are the hidden state. The relationship betweenvisible and hidden states is encoded via a signal decay modeland then the fingerprint database is used to train the parametersof the model [16], [21].

Chintalapudi et al. recently proposed EZ Localization as amethodology for calibration-free wireless localization in anindoor environment [6]. EZ uses WiFi-enabled smart phonesto take fingerprints at unknown locations in a building. Ratherthan using the location of APs to ground their model, however,they leverage the GPS units available on the client devices.When a phone is able to get a GPS lock they opportunisticallyuse the measurement as an anchor point. They then treat thefingerprints as constraints to be solved by a genetic algorithm.The authors report that EZ has low error in their environment,but remains unable to surpass the accuracy of systems thatrequire manual calibration.

III. SELF-CALIBRATING ALGORITHMS

Because manually calibrated systems may require takinghundreds of fingerprints per floor, a second class of systemsthat requires no manual calibration has been proposed. Instead,

1

3 4

2

(a) Simplified network diagram

Device Mean RSSIAP1 24.4AP2 47.8AP3 45.5AP4 40.6

(b) Client fingerprint

Fig. 1. An example network and fingerprint corresponding to signal A

these self-calibrating systems leverage information regardingthe location of WiFi access points to conduct a trainingphase in which they collect system fingerprints, or sets ofRSSI measurements taken of (and by) the stationary APs inthe network. After the self-calibration stage, the fingerprintdatabase is combined with pre-configured information aboutthe physical location of the APs to compute a model of therelationship between RSSI and physical location. This modelis then used to answer on-line queries about client location.

A. Overview

It is convenient to think of self-calibrating algorithms asfitting into three categories based on the amount of data usedto perform calibration. To assist the reader in understandingeach algorithm we give examples of how they work in a simplewireless network. Our explanatory network, diagrammed inFigure 1(a), has four APs and one client. Each AP knowsthe distance between it and every other AP, for example thedistance between AP3 and AP4 is ten meters and labeled D.The 802.11 signal emitted by the client when sending a packetis labeled A. The RSSI values for one transmission as seen bythe four APs, i.e. a client fingerprint, are documented in thetable in Figure 1(b). Conversely, the 802.11 signal generatedwhen an AP sends a packet into the network is labeled C.When an AP sends a packet it is heard by everyone withinrange, though all but the intended destination will usuallyignore it when the network is operational. In the systemtraining phase, however, APs do not ignore packets sent fromother APs, labeled B, but instead record their RSSI values.Table I shows an example of training data that might observedby AP4 in this network.

Baseline: In order to provide some context in which tointerpret the performance of the localization system classes, weconsider a simple, calibration-free baseline that leverages onlya single RSSI from a client transmission, labeled A in Figure1(a). This nearest-neighbor approach requires no calibration:to locate a client it simply determines which AP heard theclient’s transmission with the strongest RSSI and declares theclient to be co-located with that AP. For example if the systemobtained the fingerprint in Figure 1(b) it would estimate theclient to be at the same location as AP2.

Class I: Our baseline algorithm, while simple, has twomajor limitations. First, it can choose only locations occupiedby an AP. Second, it ignores all information from the (n− 1)

•  Device  is  located  at  the  AP  that  with  the  greatest  RSSI  

AP  3  

AP  1    

AP  2  

AP  4  

Page 31: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Self-­‐Calibra2ng  System  Phases  

•  Algorithms  have  two  phases  – 1)  Determine  distance  from  device  and  each  AP  – 2)  Combine  these  distance  es2ma2ons    

•  Phase  1  uses  models  to  map  distance  between  each  AP  and  the  device  to  be  located  

Page 32: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method    (Moares  and  Nunes)  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  – Overlay  grid  w/  probability  that  device  is  present                                                                                                        

                                                                                     

Page 33: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method    (Moares  and  Nunes)  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  – Overlay  grid  w/  probability  that  device  is  present                                                                                                        

                                                                                     

Page 34: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method    (Moares  and  Nunes)  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  – Overlay  grid  w/  probability  that  device  is  present  – Probability  determined  by  large-­‐scale  decay  model  

                                                                                     

Page 35: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method    (Moares  and  Nunes)  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  – Overlay  grid  w/  probability  that  device  is  present  – Probability  determined  by  large-­‐scale  decay  model  

•  Trained  on  1  signal-­‐distance  pair  per  RPM  

Page 36: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

Page 37: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

Page 38: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Class III: The final class of algorithms we study makes onesignificant conceptual addition to the third class of algorithms:It recognizes that each AP is able to map the distance fromitself to the client via RSSI, but, also, that the other (n − 1)APs can map the distance between the client and AP fromtheir own perspective [11], [17]. For example, AP4 can notonly estimate the distance between itself and the client, butalso the distance between the client and the other APs. Thusfinal estimation of the distance between AP4 and the clientis a (linear) combination of each AP’s distance estimationbetween the client and AP4. We chose ZCFG [17] as ourrepresentative algorithm for Class III because of its highlevel of sophistication and built-in resistance to error fromenvironmental noise.

ZCFG, like the previous algorithms, requires a trainingphase during which each AP records the average RSSI forall APs in range. Unlike the TiX algorithm, the calibration ofZCFG is done in real time. ZCFG uses a signal distance map(SDM) to “describe the relation between the RSS(I)s and thegeographic distance” [17]. Every time ZCFG wants to locatea device, it identifies each of the n APs that observed a packetfrom the device. It then builds the n × n dimensional SDMaccording to the following equation, T = log(D)ST (SST )−1

where S,D are n×n dimensional matrices such that Sij , Dij

are the RSSI as observed by AP i from AP j and the physicaldistance between AP i and j respectively. ZCFG then finds thedistance between the device and each of the n APs accordingto the equation: dn = eTsn where sn is the column vectorof the observed RSSIs. Finally, ZCFG uses a multilaterationalgorithm to determine a location estimation.

IV. EXPERIMENTAL EVALUATION

Our goal is to perform a fair and accurate head-to-headcomparison of the three exemplar algorithms presented in theprevious section. We start by quantifying the performance ofthe algorithms in several locations in our office building. Moreimportantly, we attempt to understand limiting factors that willeffect most real-world deployments. We also identify severalpractical issues that were not discussed by the algorithms’authors in their original publications and, where possible, offerguidance in addressing them.

A. Experimental setupOur test building has approximately 145,000 square feet

over four stories and a basement. All experiments were con-ducted on the third floor which has ten access points dividedbetween channels 1, 6, and 11.

The APs in our building are not under our control. Thismeans that we are unable to use them to observe traffic.Instead, we monitor traffic using passive wireless monitors [4].There are 48 pairs of such monitors installed throughout ourbuilding, with approximately 12 pairs (24 distinct monitoringdevices with two radios each) located on each floor. Likethe initial AP placement, the monitor layout was specificallydesigned to provide a maximal coverage of each floor and,like the APs, should neither favor nor disfavor any specific

Fig. 3. Locations on the 3rd floor

location. The locations of the APs and monitors are indicatedin Figure 3.

For training the algorithms, we opportunistically use theexisting AP traffic (i.e., as though each AP was a client) as weknow the precise location of each AP. This is sufficient for con-structing the fingerprint database for the trivial, probabilistic,and TiX algorithms. Since the online training process of ZCFGrequires an architecture in which packets are transmitted aswell as received, we implement this by forcing each monitorto send pings to each of the others. Since there are 11 pairs ofmonitors but only 10 APs on the floor we consider, ZCFG will,in principle, have more training data to work with. This shouldgive ZCFG an advantage over the other three algorithms, butSection IV-D shows that this advantage does not materialize.

To build the fingerprint database we allow each algorithmto monitor the broadcast packets sent from the APs in thebuilding for approximately ten seconds. We find that thereis sufficient traffic in ten seconds to allow the mean RSSIvalue to be minimally affected by abnormally large or smallinstantaneous values. It is possible to locate a client from onlya single packet. However, we averaged two seconds worth ofRSSI values from the client. This time frame is a balancebetween reducing the effect of an outlier in the RSSI valuesand effectively locating a user even if they are in motion.Throughout this paper we report RSSI values instead of dB;RSSI values can be converted to dB by subtracting 95.

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

Page 39: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

Page 40: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

10%  

Page 41: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  1:  Building  a  Radio  Propaga2on  Map  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

10%  

90%  

Page 42: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  2:  Combing  RPMs  for  a  final  es2ma2on  – Final  probability  is  the  product  across  all  RPMS  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

Page 43: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  2:  Combing  RPMs  for  a  final  es2ma2on  – Final  probability  is  the  product  across  all  RPMS  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

85%  

Page 44: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Probabilis2c  Method  

•  Phase  2:  Combing  RPMs  for  a  final  es2ma2on  – Final  probability  is  the  product  across  all  RPMS  

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

85%   95%  

Page 45: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

Probabilis2c  Method  

•  Phase  2:  Combing  RPMs  for  a  final  es2ma2on  – Final  probability  is  the  product  across  all  RPMS  

Page 46: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

(a) AP4’s RPM (b) Final RPM derived from individual AP RPMs

Fig. 2. Example RPMs. Darker shading indicates higher probability.

APs that do not observe the strongest RSSI. To address thefirst issue probabilistic methods use data from the fingerprintdatabase, gathered during the training phase, to train a modelof decay that allows them to map an RSSI to locations otherthan the location of an AP. The probabilistic methods also useall n observed RSSIs when computing a final location.

Here, we consider the probabilistic algorithm proposed byde Moraes and Nunes [8] due to its reported mean errorof less than two meters and its foundation on a well-citedand understood RF propagation model [20]. The first step inthe client location phase of this algorithm is to estimate thedistance between each AP and the client. To do this each APthat hears the client builds a radio propagation map (RPM).An RPM is best thought of as a grid overlaid on the building’sfloor plan where each grid point, l = (x, y), has an associatedprobability, P [l|si], that the client is that location when signalstrength si is observed by AP i. P [l|si] is assumed to be aGaussian probability distribution, based on a large scale decaymodel where the model is trained on one entry in the offlinetraining database, Table I. An overly simple way to view theRPM is that the more similar an observed RSSI at location lis to the value the large scale decay model predicts, the morelikely P [l|si] will be large.

Once the probabilistic method has an RPM for each of then APs it combines them in the obvious manner, P [l|s] =Πn

i=1P [l|si] Finally a quick scan of the joint RPM is per-formed to find the point with the highest probability and thatpoint is declared as the client’s location. For example, if thealgorithm’s training phase produced Table I and subsequentlyobserved the client fingerprint in Figure 1(b), Figure 2(a)shows the RPM AP4 generates overlaid on our building’s floorplan while Figure 2(b) depicts the final RPM produced whenall of the four RPMs are combined into a final RPM.

Class II: The probabilistic algorithms leverages more infor-mation than our nearest-neighbor baseline: During the trainingphase, each AP observes (n−1) different RSSI-distance pairs,i.e., AP4 observes the RSSI values from AP1, AP2, andAP3. But, when an AP creates an RPM it uses only one

Device Distance (m) from sender Mean RSSI VarianceAP1 4.6 48.9 1.2AP2 10.0 42.3 0.8AP3 15.4 22.6 0.2

TABLE IAN EXAMPLE OF AP4’S OFFLINE TRAINING DATABASE.

RSSI/distance. Algorithms in our second class overcome thislimitation of probabilistic algorithms by using the reportedsignal strength at multiple APs simultaneously when attempt-ing to locate the client [10], [14], [18]. We have chosenTriangular Interpolation and eXtrapolation (TiX) [10] as therepresentative example for our second class of algorithms.

As before, the first step in TiX’s training phase is for eachAP to record the average RSSI of the other APs, i.e. build thefingerprint database shown in Table I. Each row consists of thedistance to the indicated AP as well as the mean and varianceof the signals between them (labeled D and B, respectively,in Figure 1(a)). In the second phase each AP fits these valuesto an exponential decay function of the form f(x) = a× ebx,where x is the RSSI, f(x) is the computed distance. Thisfunction gives each AP a mapping between RSSI and distancethat uses all of the information available to it during thetraining phase.

Once the algorithm is trained it can begin to locate devices.To locate a device it needs a packet to be heard by three APs.(We discuss the case where a client is heard by more than threeAPs in Section IV-C2.) It then applies the RSSI to distancefunction at each of the APs. Finally, it performs a modifiedversion of trilateration. The modified version of trilaterationhandles the case where noisy measurements cause there tonot be a single intersection of the radii of all the three circles.

For example, if TiX were to locate the client that producedthe fingerprint in Figure 1(b) it might use APs 2, 3, and 4. Fur-ther, if TiX used the training data in Table I it would find thatthe RSSI to distance curve for AP4 is f(x) = 69.2e−0.056x

and it would place the device 6.9 meters away from AP4. AP2

and AP3 compute similarly.

Probabilis2c  Method  

•  Phase  2:  Combing  RPMs  for  a  final  es2ma2on  – Final  probability  is  the  product  across  all  RPMS  

81%  

Page 47: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Triangular  Interpola2on  and  eXtrapola2on    (Gwon  and  Jain)  

•  Phase  I:  Distance  Es2ma2on  – Exponen2al  decay  model  

•     – Least-­‐squares  fit  over  all  RSSI-­‐distance  pairs  

                                                                                                             

F(x) =! ! e("!x )

Page 48: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Triangular  Interpola2on  and  eXtrapola2on    (Gwon  and  Jain)  

•  Phase  I:  Distance  Es2ma2on  – Exponen2al  decay  model  

•     – Least-­‐squares  fit  over  all  RSSI-­‐distance  pairs  

                                                                                                             

Sender   Distance  (M)  

Mean  RSSI  

Varia2on  

AP  2   4.6   48.9   1.2  

AP  1   10.0   42.3   0.8  

AP  4   15.4   12.1   0.7  

F(x) =! ! e("!x )

Page 49: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Triangular  Interpola2on  and  eXtrapola2on    (Gwon  and  Jain)  

•  Phase  I:  Distance  Es2ma2on  – Exponen2al  decay  model  

•     – Least-­‐squares  fit  over  all  RSSI-­‐distance  pairs  

–   For  AP3:                                                                                          

Sender   Distance  (M)  

Mean  RSSI  

Varia2on  

AP  2   4.6   48.9   1.2  

AP  1   10.0   42.3   0.8  

AP  4   15.4   12.1   0.7  

F(x) =! ! e("!x )

F(x) = 78! e("0.09!x )

Page 50: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Triangular  Interpola2on  and  eXtrapola2on    (Gwon  and  Jain)  

•  Phase  I:  Distance  Es2ma2on  – Exponen2al  decay  model  

•     – Least-­‐squares  fit  over  all  RSSI-­‐distance  pairs  

–   For  AP3:                                                                                          

Sender   Distance  (M)  

Mean  RSSI  

Varia2on  

AP  2   4.6   48.9   1.2  

AP  1   10.0   42.3   0.8  

AP  4   15.4   12.1   0.7  

technologies including Bluetooth signals [12], RFID proximity[19], and ultrasonic acoustic waves [3], among others.

Systems that use signal strength measurements, or, morespecifically in the case of WiFi, the received signal strengthindication (RSSI)—a unit-less measure of signal power asso-ciated with a packet as measured by a receiving device—canbe subdivided into two categories: those that require manualcalibration and those that do not. While the goal of this paperis to evaluate self-calibrating 802.11-based location systems,we briefly summarize the approaches based upon manualcalibration for context.

Many of the early (and still most accurate) 802.11-basedlocation systems require manual calibration. During this initialsite survey an installer collects client fingerprints (RSSI valuesfor packets broadcast by APs) at a large number of knownlocations to build up a fine-grained fingerprint database thatcan be used for future client localization. In general thesesystems have three major manifestations: point matching,probabilistic matching, and Bayesian networks.

Point matching, also known as nearest neighbor in signal

strength [2], starts by capturing a client fingerprint and com-paring it against the initial fingerprint database scanning for thefingerprint that minimizes a similarity metric, often Euclideandistance. The client’s location is determined to be the locationof the offline fingerprint that minimizes the metric.

The second set of methods once again starts with the usertaking a client fingerprint. Then the user computes the proba-bility of receiving the fingerprint at each location, l = (x, y),in the building. Assuming that the distribution of RSSIs in thefingerprint is Gaussian, it is straightforward to determine an lsuch that P (s|l) is maximized [1], [25].

Algorithms based on Bayesian networks are the most com-plicated. They depend on building a Hidden Markov Model(HMM) in which the RSSIs represent the observed state, andthe distance from the APs (and hence the x, y coordinatesof the client) are the hidden state. The relationship betweenvisible and hidden states is encoded via a signal decay modeland then the fingerprint database is used to train the parametersof the model [16], [21].

Chintalapudi et al. recently proposed EZ Localization as amethodology for calibration-free wireless localization in anindoor environment [6]. EZ uses WiFi-enabled smart phonesto take fingerprints at unknown locations in a building. Ratherthan using the location of APs to ground their model, however,they leverage the GPS units available on the client devices.When a phone is able to get a GPS lock they opportunisticallyuse the measurement as an anchor point. They then treat thefingerprints as constraints to be solved by a genetic algorithm.The authors report that EZ has low error in their environment,but remains unable to surpass the accuracy of systems thatrequire manual calibration.

III. SELF-CALIBRATING ALGORITHMS

Because manually calibrated systems may require takinghundreds of fingerprints per floor, a second class of systemsthat requires no manual calibration has been proposed. Instead,

1

3 4

2

(a) Simplified network diagram

Device Mean RSSIAP1 24.4AP2 47.8AP3 45.5AP4 40.6

(b) Client fingerprint

Fig. 1. An example network and fingerprint corresponding to signal A

these self-calibrating systems leverage information regardingthe location of WiFi access points to conduct a trainingphase in which they collect system fingerprints, or sets ofRSSI measurements taken of (and by) the stationary APs inthe network. After the self-calibration stage, the fingerprintdatabase is combined with pre-configured information aboutthe physical location of the APs to compute a model of therelationship between RSSI and physical location. This modelis then used to answer on-line queries about client location.

A. Overview

It is convenient to think of self-calibrating algorithms asfitting into three categories based on the amount of data usedto perform calibration. To assist the reader in understandingeach algorithm we give examples of how they work in a simplewireless network. Our explanatory network, diagrammed inFigure 1(a), has four APs and one client. Each AP knowsthe distance between it and every other AP, for example thedistance between AP3 and AP4 is ten meters and labeled D.The 802.11 signal emitted by the client when sending a packetis labeled A. The RSSI values for one transmission as seen bythe four APs, i.e. a client fingerprint, are documented in thetable in Figure 1(b). Conversely, the 802.11 signal generatedwhen an AP sends a packet into the network is labeled C.When an AP sends a packet it is heard by everyone withinrange, though all but the intended destination will usuallyignore it when the network is operational. In the systemtraining phase, however, APs do not ignore packets sent fromother APs, labeled B, but instead record their RSSI values.Table I shows an example of training data that might observedby AP4 in this network.

Baseline: In order to provide some context in which tointerpret the performance of the localization system classes, weconsider a simple, calibration-free baseline that leverages onlya single RSSI from a client transmission, labeled A in Figure1(a). This nearest-neighbor approach requires no calibration:to locate a client it simply determines which AP heard theclient’s transmission with the strongest RSSI and declares theclient to be co-located with that AP. For example if the systemobtained the fingerprint in Figure 1(b) it would estimate theclient to be at the same location as AP2.

Class I: Our baseline algorithm, while simple, has twomajor limitations. First, it can choose only locations occupiedby an AP. Second, it ignores all information from the (n− 1)

F(x) =! ! e("!x )

F(x) = 78! e("0.09!x )

Page 51: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Triangular  Interpola2on  and  eXtrapola2on    (Gwon  and  Jain)  

•  Phase  I:  Distance  Es2ma2on  – Exponen2al  decay  model  

•     – Least-­‐squares  fit  over  all  RSSI-­‐distance  pairs  

–   For  AP3:    – For  AP3:                                                      Meters  

Sender   Distance  (M)  

Mean  RSSI  

Varia2on  

AP  2   4.6   48.9   1.2  

AP  1   10.0   42.3   0.8  

AP  4   15.4   12.1   0.7  

technologies including Bluetooth signals [12], RFID proximity[19], and ultrasonic acoustic waves [3], among others.

Systems that use signal strength measurements, or, morespecifically in the case of WiFi, the received signal strengthindication (RSSI)—a unit-less measure of signal power asso-ciated with a packet as measured by a receiving device—canbe subdivided into two categories: those that require manualcalibration and those that do not. While the goal of this paperis to evaluate self-calibrating 802.11-based location systems,we briefly summarize the approaches based upon manualcalibration for context.

Many of the early (and still most accurate) 802.11-basedlocation systems require manual calibration. During this initialsite survey an installer collects client fingerprints (RSSI valuesfor packets broadcast by APs) at a large number of knownlocations to build up a fine-grained fingerprint database thatcan be used for future client localization. In general thesesystems have three major manifestations: point matching,probabilistic matching, and Bayesian networks.

Point matching, also known as nearest neighbor in signal

strength [2], starts by capturing a client fingerprint and com-paring it against the initial fingerprint database scanning for thefingerprint that minimizes a similarity metric, often Euclideandistance. The client’s location is determined to be the locationof the offline fingerprint that minimizes the metric.

The second set of methods once again starts with the usertaking a client fingerprint. Then the user computes the proba-bility of receiving the fingerprint at each location, l = (x, y),in the building. Assuming that the distribution of RSSIs in thefingerprint is Gaussian, it is straightforward to determine an lsuch that P (s|l) is maximized [1], [25].

Algorithms based on Bayesian networks are the most com-plicated. They depend on building a Hidden Markov Model(HMM) in which the RSSIs represent the observed state, andthe distance from the APs (and hence the x, y coordinatesof the client) are the hidden state. The relationship betweenvisible and hidden states is encoded via a signal decay modeland then the fingerprint database is used to train the parametersof the model [16], [21].

Chintalapudi et al. recently proposed EZ Localization as amethodology for calibration-free wireless localization in anindoor environment [6]. EZ uses WiFi-enabled smart phonesto take fingerprints at unknown locations in a building. Ratherthan using the location of APs to ground their model, however,they leverage the GPS units available on the client devices.When a phone is able to get a GPS lock they opportunisticallyuse the measurement as an anchor point. They then treat thefingerprints as constraints to be solved by a genetic algorithm.The authors report that EZ has low error in their environment,but remains unable to surpass the accuracy of systems thatrequire manual calibration.

III. SELF-CALIBRATING ALGORITHMS

Because manually calibrated systems may require takinghundreds of fingerprints per floor, a second class of systemsthat requires no manual calibration has been proposed. Instead,

1

3 4

2

(a) Simplified network diagram

Device Mean RSSIAP1 24.4AP2 47.8AP3 45.5AP4 40.6

(b) Client fingerprint

Fig. 1. An example network and fingerprint corresponding to signal A

these self-calibrating systems leverage information regardingthe location of WiFi access points to conduct a trainingphase in which they collect system fingerprints, or sets ofRSSI measurements taken of (and by) the stationary APs inthe network. After the self-calibration stage, the fingerprintdatabase is combined with pre-configured information aboutthe physical location of the APs to compute a model of therelationship between RSSI and physical location. This modelis then used to answer on-line queries about client location.

A. Overview

It is convenient to think of self-calibrating algorithms asfitting into three categories based on the amount of data usedto perform calibration. To assist the reader in understandingeach algorithm we give examples of how they work in a simplewireless network. Our explanatory network, diagrammed inFigure 1(a), has four APs and one client. Each AP knowsthe distance between it and every other AP, for example thedistance between AP3 and AP4 is ten meters and labeled D.The 802.11 signal emitted by the client when sending a packetis labeled A. The RSSI values for one transmission as seen bythe four APs, i.e. a client fingerprint, are documented in thetable in Figure 1(b). Conversely, the 802.11 signal generatedwhen an AP sends a packet into the network is labeled C.When an AP sends a packet it is heard by everyone withinrange, though all but the intended destination will usuallyignore it when the network is operational. In the systemtraining phase, however, APs do not ignore packets sent fromother APs, labeled B, but instead record their RSSI values.Table I shows an example of training data that might observedby AP4 in this network.

Baseline: In order to provide some context in which tointerpret the performance of the localization system classes, weconsider a simple, calibration-free baseline that leverages onlya single RSSI from a client transmission, labeled A in Figure1(a). This nearest-neighbor approach requires no calibration:to locate a client it simply determines which AP heard theclient’s transmission with the strongest RSSI and declares theclient to be co-located with that AP. For example if the systemobtained the fingerprint in Figure 1(b) it would estimate theclient to be at the same location as AP2.

Class I: Our baseline algorithm, while simple, has twomajor limitations. First, it can choose only locations occupiedby an AP. Second, it ignores all information from the (n− 1)

F(x) =! ! e("!x )

F(x) = 78! e("0.09!x )

F(47.8) =1.3

Page 52: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

Page 53: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 54: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 55: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 56: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 57: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 58: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 59: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

•  Phase  II:  Loca2on  Es2ma2on  – Triangular  Interpola2on  and  eXtrapola2on  – Like  trilatera2on  but  a  bit  smarter  

1.3  Meters  

Page 60: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

Page 61: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

Page 62: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

Page 63: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

Page 64: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

TiX  

Page 65: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

ZCFG  (Lim  et  al)  

•  Phase  1:  Distance  Es2ma2on  – ZCFG  has  APs  share  calibra2on  data  – AP  1’s  distance  es2ma2on  is  linear  combina2on  of  all  AP’s  belief  about  distance  between  device  and  AP1  

•  Phase  II:  Mul2latera2on  – Like  trilatera2on  but  w/  more  than  3  distances  

Page 66: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Outline  

•  Mo2va2on  •  Algorithms  

•  Experimental  set-­‐up  /  results  

•  Causes  of  Error  •  Conclusion  

Page 67: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Test  Environment    

•  Test  Environment  – 30k    Sq.  Ft.  per  floor  – 10  APs  per  Floor  

•  Channels  1,6,  and  11  

•  Training  the  Algorithms  – APs  monitor  bcast  traffic  for    10  seconds  

Page 68: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Evalua2on  •  Experimental  Evalua2on  

– Located  a  laptop  on  a  1.5M  ladder  – Average  2  seconds  worth  of  RSSI  data  per  loca2on  agempt  

– 13  different  loca2ons  •  Mul2ple  localiza2ons  in  each  loca2on  

 

Page 69: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   1.84  

TiX  (Gwon  &  Jain)   5  

ZCFG  (Lim  et  al.)   2.5  

Evalua2on  •  Experimental  Evalua2on  

– Located  a  laptop  on  a  1.5M  ladder  – Average  2  seconds  worth  of  RSSI  data  per  loca2on  agempt  

– 13  different  loca2ons  •  Mul2ple  localiza2ons  in  each  loca2on  

 

Page 70: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   1.84  

TiX  (Gwon  &  Jain)   5  

ZCFG  (Lim  et  al.)   2.5  

Evalua2on  •  Experimental  Evalua2on  

– Located  a  laptop  on  a  1.5M  ladder  – Average  2  seconds  worth  of  RSSI  data  per  loca2on  agempt  

– 13  different  loca2ons  •  Mul2ple  localiza2ons  in  each  loca2on  

 

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   0.9   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   0.7   1.84  

TiX  (Gwon  &  Jain)   2.9   5  

ZCFG  (Lim  et  al.)   2.7   2.5  

Page 71: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   1.84  

TiX  (Gwon  &  Jain)   5  

ZCFG  (Lim  et  al.)   2.5  

Evalua2on  •  Experimental  Evalua2on  

– Located  a  laptop  on  a  1.5M  ladder  – Average  2  seconds  worth  of  RSSI  data  per  loca2on  agempt  

– 13  different  loca2ons  •  Mul2ple  localiza2ons  in  each  loca2on  

 

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   0.9   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   0.7   1.84  

TiX  (Gwon  &  Jain)   2.9   5  

ZCFG  (Lim  et  al.)   2.7   2.5  

Method   Accuracy  (M)  

Min   Median   Published  Median  

Nearest  AP   0.9   6.2   n/a  

Probabilis2c  (de  Moraes  &  Nunes)   0.7   5.8   1.84  

TiX  (Gwon  &  Jain)   2.9   7.8   5  

ZCFG  (Lim  et  al.)   2.7   12.4   2.5  

Page 72: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Outline  

•  Mo2va2on  •  Algorithms  

•  Experimental  set-­‐up  /  results  

•  Causes  of  Error  – Height  Disparity  /  Signal  Reflec2on    – Extrapola2on  Failures  –  Interpola2on  Failures  

•  Conclusion  

Page 73: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Height  Magers  

•  Access  Points  are  mounted  near  the  Ceiling    – Tests  took  place  at  ‘chest’  height  

•  Is  this  height  discrepancy  significant?    

Page 74: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Height  Magers  

•  Access  Points  are  mounted  near  the  Ceiling    – Tests  took  place  at  ‘chest’  height  

•  Is  this  height  discrepancy  significant?    Method   Floor   1.5  M   Ceiling   Difference  

Nearest  AP   6.7   6.7   4.8   1.9  

Probabilis2c  (de  Moraes  &  Nunes)   6.6   3.37   2.65   0.72  

TiX    (Gwon  &  Jain)   16.8   11.6   11.2   0.4  

ZCFG  (Lim  et  al.)   9.5   14.2   12.9   1.3  

Page 75: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 76: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 77: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 78: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 79: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 80: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 81: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

                                                                             

Page 82: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Reflec2on  

•  Can  we  correct  for  the  induced  error?  – Simply  add  n  RSSI  to  each  measurement?  

•  RSSI  vs.  2me    – Ceiling;  Ladder;  Floor  Height  

•  Different  loca2ons  different  results  

Page 83: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Beyond  Reflec2on  

•  Signal  reflec2on  causes  some  degrada2on  – 1-­‐2  Meters  

•  Experiments  found  more  than  2  meters  of  accuracy  difference  from  published  values      

•  What  other  issues  could  be  responsible?  

Page 84: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Calibra2on  Data  

•  Does  our  calibra2on  data  accurately  capture  decay  – Order  of  magnitude  less  AP/sq.  r.  than  previous  works  

Study   Square  Feet   #  of  Aps   Aps/Sq.  Ft.  

Prob  (de  Moraes  &  Nunes)   1,722   4   0.0023  

TiX  (Gwon  &  Jain)   6,717   4   0.0006  

ZCFG  (Lim  et  al.)   598   6   0.01  

Cisco  Recommends   3,000-­‐5,000   1   0.0002-­‐0.0003  

UCSD  CSE  Building   30,000   10   0.0003  

Page 85: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Degrada2on  due  to  Walls  

                                                                                     

AP  3  

AP  1    

AP  2  

Page 86: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Degrada2on  due  to  Walls  

                                                                                     

AP  3  

AP  1    

AP  2  

Page 87: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Degrada2on  due  to  Walls  

                                                                                     

AP  3  

AP  1    

AP  2  

Page 88: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Degrada2on  due  to  Walls  

                                                                                     

AP  3  

AP  1    

AP  2  

Page 89: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Signal  Degrada2on  due  to  Walls  

•  Wall  placement  causes  signal  degrada2on    

AP  3  

AP  1    

AP  2  

Page 90: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Degraded  Training  Data  

•  APs  have  4-­‐6  signal-­‐distance  pairs  for  training  – Distance  ranges  from  5-­‐35  Meters  – RSSI  ranges  from  45-­‐10  

– Expect  to  fit  exponen2al  decay    

Page 91: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Degraded  Training  Data  

•  APs  have  4-­‐6  signal-­‐distance  pairs  for  training  – Distance  ranges  from  5-­‐35  Meters  – RSSI  ranges  from  45-­‐10  

– Expect  to  fit  exponen2al  decay    

Page 92: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Degraded  Training  Data  

•  APs  have  4-­‐6  signal-­‐distance  pairs  for  training  – Distance  ranges  from  5-­‐35  Meters  – RSSI  ranges  from  45-­‐10  

– Expect  to  fit  exponen2al  decay    

Effect  of  mul2ple  walls  

Page 93: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Common  for  AP  to  have  wall  between  it  and  all  other  training  APs  

•  Yet,  device  to  locate  has  line  of  sight   AP  3  

AP  1    

AP  2  

AP  4  

Page 94: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

                                                                                                                                                                                   

                                                                             

Page 95: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

                                                                                                                                                                                   

                                                                             

Page 96: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

                                                                                                                                                                                   

                                                                             

Device  was  here  

Page 97: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well                                                                                        

                                                                             

Device  was  here  

Page 98: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

                                                                             

Device  was  here  

Page 99: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

Device  was  here  

Page 100: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

Page 101: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

Almost  no  error  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

Page 102: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

Page 103: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

Page 104: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

When  Walls  Get  in  the  Way  

•  Probabilis2c  method  doesn’t  handle  this  well  – We  ins2tuted  a  filtering  scheme  to  help    

•  TiX  handles  this  scenario  much  beger  

But  not  always  

Page 105: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Extrapola2on  Failures  

•  Called  extrapola2on  failures  because  they  occur  beyond  training  data  

•  Some2mes  filtering  is  effec2ve  – Median  improved  2.1  M  for  Probabilis2c  method  

•  Made  two  agempts  to  filter  ZCFG  –  Increased  median  error  by  0.5  Meters  

•  Possible  to  overcome  with  addi2onal  APs  – Excessive  AP  density  impacts  WiFi  performance    

Page 106: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Good  Training  Data  Isn’t  Enough  

•  Not  all  failures  can  easily  be  overcome  

Page 107: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Good  Training  Data  Isn’t  Enough  

•  Not  all  failures  can  easily  be  overcome  

Similar  RSSIs    at  different  distances  

Page 108: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Good  Training  Data  Isn’t  Enough  

•  Not  all  failures  can  easily  be  overcome  

Similar  RSSIs    at  different  distances  

1  wall  between  APs  

Page 109: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Decay  Isn’t  Always  Exponen2al  

•  10  RSSI  varia2on  in  under  3  Meters  due  to  walls  

Page 110: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Decay  Isn’t  Always  Exponen2al  

•  10  RSSI  varia2on  in  under  3  Meters  due  to  walls  

Page 111: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Decay  Isn’t  Always  Exponen2al  

•  10  RSSI  varia2on  in  under  3  Meters  due  to  walls  

Page 112: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Decay  Isn’t  Always  Exponen2al  

•  10  RSSI  varia2on  in  under  3  Meters  due  to  walls  

Line  of  sight  to  AP  

Page 113: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Decay  Isn’t  Always  Exponen2al  

•  10  RSSI  varia2on  in  under  3  Meters  due  to  walls  

Line  of  sight  to  AP  

Mul2ple  walls  to  AP  

Page 114: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Interpola2on  Failures  

•  Called  interpola2on  failures  because  they  occur  in-­‐between  training  data  

•  This  isn’t  fixable  with  extra  training  data  – Walls  add  unpredictable  decay  

•  Even  the  sophis2cated  algorithms  can’t  overcome  these  issues  –  In  fact  most  do  worse  

Page 115: Empirical)Performance)of)) Self0calibrang) WiFi)Locaon ...cseweb.ucsd.edu/~djturner/turner_lcn2011_slides.pdf · Empirical)Performance)of)) Self0calibrang) WiFi)Locaon)Systems) Daniel)

Summary  

•  Indoor  Localiza2on  is  in  demand  •  Achieving  less  than  5m  accuracy  w/o  site  survey  is  s2ll  an  open  problem  –  Improved  filtering  mechanisms    

– Novel  models  that  beger  isolate  signal  from  noise  in  training  data