You are facing the Mona Lisa Spot Localization using PHY Layer Information Souvik Sen Duke University souvik PDF document - DocSlides

You are facing the Mona Lisa Spot Localization using PHY Layer Information Souvik Sen Duke University souvik PDF document - DocSlides

2014-12-14 194K 194 0 0


sendukeedu Boidar Radunovi Microsoft Research bozidarmicrosoftcom Romit Roy Choudhury Duke University romitrcdukeedu Tom Minka Microsoft Research minkamicrosoftcom ABSTRACT This paper explores the viability of precise indoor localization using physic ID: 23860

Direct Link: Link: Embed code:

Download this pdf

DownloadNote - The PPT/PDF document "You are facing the Mona Lisa Spot Locali..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentations text content in You are facing the Mona Lisa Spot Localization using PHY Layer Information Souvik Sen Duke University souvik

Page 1
You are facing the Mona Lisa Spot Localization using PHY Layer Information Souvik Sen Duke University Božidar Radunovi Microsoft Research Romit Roy Choudhury Duke University Tom Minka Microsoft Research ABSTRACT This paper explores the viability of precise indoor localization using physical layer information in WiFi systems. We find evidence that channel responses from multiple OFDM subcar- riers can be a promising location signature. While these sig- natures certainly vary over time and environmental mobility, we notice that their core structure preserves certain proper- ties that are amenable to localization. We attempt to harness these opportunities through a functional system called PinLoc implemented on off-the-shelf Intel 5300 cards. We evaluate the system in a busy engineering building, a crowded student center, a cafeteria, and at the Duke University museum, and demonstrate localization accuracies in the granularity of boxes, called spots ”. Results from 100 spots show that PinLoc is able to localize users to the correct spot with 89% mean accuracy, while incurring less than 6% false positives. We believe this is an important step forward, compared to the best indoor localization schemes of today, such as Horus Categories and Subject Descriptors C.2.1 [ Network Architecture and Design ]: Wireless commu- nication General Terms Design, Experimentation, Performance Keywords Wireless, Localization, Cross-Layer, Application 1. INTRODUCTION Precise indoor localization has been a long standing problem. While the frontier of localization technology has advanced Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. MobiSys’12, June 25–29, 2012, Low Wood Bay, Lake District, UK. Copyright 2012 ACM 978-1-4503-1301-8/12/06 ...$10.00. over time, new kinds of location based applications are rais- ing the bar. For instance, the advertising industry is beginning to expect location accuracies at the granularity of an aisle in a grocery shop [1]. Museums are expecting user locations at the granularity of paintings [2], so tourists can automatically receive information about the paintings they stop at. In ad- dition to such high accuracy demands, these applications are inherently intolerant to small errors. If a localization scheme incorrectly places a user in the adjacent aisle in the grocery store, or displays information about the adjacent painting, the purpose of localization is entirely defeated. This is unlike traditional applications – say GPS based driving directions where small errors are tolerable. As a consequence, new lo- calization schemes will need to meet strict quality standards, without incurring a heavy cost of installation and mainte- nance. We refer to this problem as spot localization , where a device in a specific box needs to be accurately identified. Localizing the device outside the box will be use- less, irrespective of whether the estimated location is close or far away from the box. The state of the art in indoor localization is quite sophis- ticated. Different schemes optimize distinct objectives, in- cluding accuracy [3–5], computation [4, 6], ease of calibra- tion [7, 8], energy [9], etc. While the literature is rich, we sample few of the representative schemes to outline the fron- tier of today’s location technology. Cricket [10] achieves high accuracy using special (ultrasound-based) infrastructure in- stalled on ceilings. Noting the difficulties of installing special hardware, RADAR, Place Labs and Horus [4, 6, 8] explored the feasibility of using signal strengths from existing WiFi APs. While RADAR and Horus both rely on signal calibration, EZ [7] recently demonstrated the ability to eliminate calibra- tion at the expense of accuracy degradation. Summarizing all these schemes, we find that the state of the art achieves median location error of and , with and without cal- ibration, respectively [7]. While this accuracy can enable a variety of applications, there are others that need precision at the granularity of ”. This paper targets such high accuracies while ensuring that the calibration complexity is no worse than RADAR or Horus. We call our proposal PinLoc as an acronym for Precise indoor Localization. PinLoc’s main idea is simple. While most WiFi based localiza- tion schemes operate with signal strength based information
Page 2
at the MAC layer, we recognize the possibility of leveraging detailed physical (PHY) layer information. Briefly, the intu- ition is that the multipath signal components arrive at a given location with distinct values of phase and magnitude. When aggregated over multiple OFDM sub-carriers in 802.11 a/g/n, these rich data poses as a fingerprint of that location. Since we define each spot as a cluster of locations, war-driving each spot produces an array of location fingerprints. A training algorithm runs on each array of fingerprints to learn the sta- tistical attributes of that spot. Later, when a mobile device arrives at a spot, it computes a fingerprint (from a sequence of overheard beacons), and classifies it to one of the spots by matching against the learnt attributes. We find that de- vices are reliably classified to the correct spot, despite move- ments of people and other objects in the environment. Our war-driving effort is comparable to RADAR or Horus – we mounted a laptop on a Roomba robot and programmed it to move randomly within each spot for around minutes. Finally, where several other schemes are strongly reliant on multiple APs, PinLoc offers reasonable performance even in WiFi-sparse environments. In some cases, PinLoc is able to localize even with signals from a single AP. At first glance, our findings seemed too good to be true. We expected the signal phases to be sensitive to the orientation of the laptop, human movements, and/or structural changes in the environment (such as repositioning of chairs, boxes, shelves). We suspected that frequent war-driving would be necessary to adapt to such environmental perturbations. While these concerns were natural, we were surprised to find that the fingerprints actually preserved statistical properties even under perturbations. For instance, although the channel re- sponse at a specific location varied with time and environ- mental dynamism, they could be consistently organized around set of few tight clusters . When combined across 30 subcarri- ers and different APs (i.e., high-dimensional data), we found that even the sets of clusters could be reasonably unique. Fur- ther, since spots are composed of many “distinct locations”, the fingerprint of a spot is a string of channel responses from multiple distinct locations inside that spot. Thus, even if the channel response from one distinct location is not unique, the probability that the string of channel responses appears in more than one spot is far lower. These and other factors (discussed later) together contribute to PinLoc’s robustness. RSSI, on the other hand, is an average of the magnitudes on each sub-carrier, which hides fine-grained information about that location, ultimately limiting the accuracy of localization. Harnessing the above opportunities into a working system (using off-the-shelf wireless cards) forms the core of PinLoc. The detailed PHY layer information is first extracted from the driver and sanitized using a phase correction operation. The sanitized parameters are then fed to a machine learning algo- rithm that models the channel response distribution. Later, during system tests, the channel parameters are extracted from received WiFi beacons, and classified to one of the war- driven spots. To address energy issues, PinLoc disables active scanning, and only uses beacons from APs in the same chan- nel. Finally, the individual modules are combined into a full system, and tested over a variety of scenarios. The results are promising – with less than minutes of wardriving per- spot, we observe 89% mean accuracy and false positives con- sistently below 6% . From the application’s perspective, Pin- Loc was tested in the modern art wing of Duke University’s museum. Spots in front of each of 10 paintings were localized with high accuracy. To the best of our knowledge, no prior work has demonstrated PHY layer-based WiFi localization on off-the-shelf platforms. Zhang et. al. [11] used signal amplitudes and phases on USRP platforms to demonstrate location distinction . We note that lo- cation distinction detects when a node’s location has changed (e.g., for security purposes), but does not need to establish uniqueness for each location. Localization is naturally a far stricter problem, especially when the target is sub-meter ac- curacies. PinLoc makes an early effort towards this goal – the main contributions may be summarized as follows. We target the problem of spot localization where suc- cess is defined as the ability to place a device within a area, called spots. We break away from RSSI based schemes and explore the feasibility of using detailed PHY layer information. We utilize the per-subcarrier frequency response as fea- tures of a location, and rely on machine learning algo- rithms to classify a device to one of the trained spots. We use off-the-shelf Intel 5300 cards; the entire system re- lies on existing WiFi deployments, and requires no special installation. We evaluate PinLoc at varying accuracy standards, namely, discriminating between seats in a lab, chairs in a cafe- teria, and adjacent paintings in a museum. We observe consistent accuracies under mobile/dynamic environments, outperforming Horus [4], the most accurate RSSI based lo- calization. The subsequent sections expand on each of these contribu- tions, beginning with definition and applications, followed by measurement, design, and evaluation. 2. LOCATIONS, SPOTS, AND APPLICATIONS The above section loosely used the terms “locations” and “spots – we clearly define them here. Locations are like pixels that define the resolution of our localization system. Each loca- tion is a small area that has a unique fingerprint. As we show later, the “size” of a location is approximately cm cm Spots are larger boxes, say mx , and composed of multi- ple locations. We will see later how the fingerprint of a spot is essentially a combination of fingerprints from all locations in that spot. Apps for Spot Localization. The ability to localize users to the granularity of a spot is obvi- ously useful — for instance, precisely tracking a user’s indoor location can empower numerous applications. What might be less obvious is that a reasonable number of applications may be enabled even if only a few spots are reliably identified. For instance: (1) Advertising agencies may post discounts on to the user’s phone when she pauses in front of select products in the store. (2) Spot localization may be applicable to ge- ofencing – students at different desks may see different sets of exam questions. (3) Logical locations [12] refer to places (Starbucks, Airport, public library) as opposed to geographic coordinates (latitude/longitude from GPS). Since such places
Page 3
are often adjacent to each other, separated only by a wall, it has been difficult to tell the exact place in which a person is located. Spot localization may be able to detect when a user enters/exits through a door, thereby identifying the place of the user. In a related application, a blind person could come to an approximate location and be prompted with the door in front of you is Dr. Brown’s eye clinic ”. This may also aid secu- rity applications, the content from a server may be download- able only when a person is inside a restricted area [13]. (4) Even identifying which aisle a person is in could be achieved if the entry and exit points of an aisle are spot-localized. We argue that PinLoc is particularly amenable to these applica- tions since the war-driving effort gets proportionally reduced with fewer spots. While the same reduction may apply to all war-driving based schemes in general, their error margins may still be an issue. Horus [4], for example, incurs mean error, which may not discriminate between adjacent grocery aisles or between two adjacent wide-screen TVs at Best Buy. PinLoc is tasked to achieve this discrimination. 3. HYPOTHESES AND MEASUREMENTS This section aims to show through experiments that PHY layer channel information from existing WiFi deployments can be an indicator of location. We identify the essential hypotheses that must hold, and verify them through measurements. The next section draws on the findings to design and implement the machine learning components in PinLoc. We begin our discussion with a brief background on channel frequency response. 3.1 Background Most modern digital radios use OFDM communication, and transmit signals across orthogonal subcarriers at different fre- quencies. Each transmitted symbol is modulated on a different subcarrier , and the quality of the received symbol will depend on the channel ) = (1) Vector = ( )) =1 ··· ,F is called channel frequency re- sponse (CFR), and it is a complex vector that describes the channel performance at each subcarrier. A 802.11 a/g/n re- ceiver implements = 48 data sub-carriers, and includes a channel estimation circuit as a part of the hardware. The Intel 5300 [14] card, released recently with a publicly download- able driver, exposes the per-subcarrier CFR to the user. Figure 2(a,c) shows examples of some CFR vectors. Two important properties of the CFR are of interest in PinLoc. (1) The CFR changes entirely once a transmitter or a receiver moves more than a fraction of a wavelength [15]. Since the WiFi wavelength is about 12 cm , the CFR offers a possibil- ity to discriminate between two nearby locations. (2) Even when the device is static at a specific location, the CFR ex- periences channel fading due to changes in the environment at different time-scales. This introduces randomness in the CFRs, injecting ambiguity in signatures. However, it is un- clear whether this randomness is completely unpredictable or whether it exhibits some statistical structure that lends itself to localization. The following hypotheses and measurements are designed to answer these and related questions. 3.2 Hypotheses We present main hypotheses that need to hold if CFRs are to be used for PinLoc. 1. The CFRs at each location appear random, but actually exhibit a statistical structure. This structure is preserved over time and environmental changes. 2. The “size” of the location (over which the CFR structure is defined and preserved) is small. 3. The CFR structure of a given location is different from the structures of all other locations, with high probability. The probability increases when aggregating the CFRs from multiple APs. Towards verifying these hypotheses, we first describe our testbed environment and experiment methodology, followed by the measurements and findings. 3.3 Experiment Methodology Our initial experiments were performed in a relatively busy engineering building (see floorplan in Figure 1). We con- sider a set of 15 different spots in our lab and the adjacent classroom. The center of these spots are approximately apart from each other. We place a laptop equipped with the Intel 5300 WiFi card [14] at each of these spots, and asso- ciate them to existing WiFi APs (the same set of WiFi APs are audible from each of these spots). The laptops are made to download packets through each of the nearby APs (using iPerf) – the corresponding channel frequency responses (CFR) are recorded for each packet. The Intel 5300 card firmware exports a subset of the CFRs ( 30 out of 48 data subcarriers), and we only use these for our scheme. Figure 1: Engineering building floorplan. Different sets of spots shown in different colors – our initial measure- ments in this section uses only one set of 15 spots (shown in green). For each location we perform 4-6 measurements at different times during busy office hours. During the measurements in the lab (a 10 10 area), there were between to people who frequently walked in and out. Classroom measurements were performed during and between classes (classroom ca- pacity of 24 seats) – one measurement coincided with all stu- dents exiting the classroom at the end of a class.
Page 4
20 40 60 Amplitude of H(f) 10 15 20 25 30 −0.5 0.5 Subcarrier f Phase of H(f) 20 40 60 Amplitude of H(f) 10 15 20 25 30 −1 Subcarrier f Phase of H(f) Figure 2: (a) The amplitudes and phases of the channel responses of 50 (out of 20000) packets sent over the same link (we see two unique clusters, and ); (b) PDF of the complex value of the same 20000 channel responses for a single subcarrier = 20 ; (c) The amplitudes and phases of the channel responses of 50 packets at a different client location. 3.4 Measurement and Verification (Hypo. 1) The CFRs at each lo ca tion ap pear ran dom but ac tu ally ex hibit sta tis ti cal struc ture over time. Testing on a Single Location: Figure 2(a) shows the channel frequency responses (CFR) recorded on a laptop at a fixed lo- cation (the laptop received 20 000 packets from a specific AP over a period of 100 , but for visual clarity, we only show 50 CFRs from 50 randomly selected packets). We observe two emerging clusters, denoted with two vectors and CFRs belonging to the same cluster are not identical but ap- pear as noisy realizations of the cluster mean. This is an out- come of fading, caused by different electro-magnetic propa- gation effects and/or environmental changes. We now take subcarrier = 20 , gather all its CFRs from all 20 000 packets, and plot the empirical probability density function (PDF) in Figure 2(b). The CFRs are complex num- bers, and hence we plot the Real (Re) and Imaginary (Im) val- ues on and axes – darker colors represent higher values of the PDF. We again see that two dominant clusters emerge, each cluster appearing as a complex Gaussian random vari- able, with means and and variances and , respectively. Of course, this is only a visual indication – we will carefully model this later in section 4.2. Figure 2(c) shows the outcome of the same experiment, but with the laptop placed at a different location. We find only a single cluster of CFRs, and the shapes of the CFRs differ dis- tinctly from those in Figure 2(a). These few representative clusters hint at the possible existence of complex but invari- ant structures in per-location CFR, motivating further investi- gation. Figure 3 pictorially explains the cluster computation process. Temporal stability of CFR Clusters: We now test whether the observations from these two locations generalize to a larger number of locations, under various environmental changes. Figure 4 shows the distribution of the number of represen- tative CFR clusters from 30 distinct links in total. For each of the 30 links we aggregate all the available data, collected over days – this adequately captures the links’ temporal fluc- Figure 3: The process of creating clusters (which to- gether form the location fingerprint), and how test CFRs are cross-correlated with the fingerprint. tuations. We use the clustering algorithm, described later in section 4.3, to identify representative CFR clusters. Evident from Figure 4 (a), more than 80% of links experience CFR clusters or less. However, we still see a substantial number of links with a large number of clusters, even up to 19. This could well suggest that the CFR structure is quite random in dynamic scenarios (e.g., in the classroom), and thus, PinLoc may only be applicable in very static environments. To verify this, we next look at frequency of occurrence of different clusters. Figure 4(b) shows that the distribution is highly non-uniform, with a strong predominance of the more frequent clusters (i.e., the frequent clusters occur very fre- quently, and the vice versa). Evidently, the fourth-most fre- quent cluster occurs no more than 10% of the cases in any
Page 5
10 12 14 16 18 20 0.2 0.4 0.6 0.8 Number of unique CFRs per location CDF 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Frequency of CFR clusters CDF Most frequent CIR 2nd most freq. CIR 3rd most freq. CIR 4th most freq. CIR Figure 4: (a) CDF of the number of CFR clusters observed at 30 different client locations (i.e., 30 distinct links); (b) CDF of the probability of seeing the -th most frequent CFR cluster. spot, and the th th , ... 19 th clusters are almost rare. This suggests that even if a few spots experience large number of clusters, we are not very likely to see most of them, both dur- ing the training and localization. 0.9 0.92 0.94 0.96 0.98 0.2 0.4 0.6 0.8 CFR similarity in presence of human CDF 1 feet 1 mtr 2 mtr 3 mtr 4 mtr AP 6230 0.65 0.7 0.75 0.8 0.85 0.9 0.95 0.2 0.4 0.6 0.8 CDF CFR similarity in presence of human 1 feet 1 mtr 2 mtr 3 mtr 4 mtr AP 5A10 Figure 5: CFR cross correlation in presence of human beings at a location for 2 different APs at 2.4GHz Impact of environmental changes: To understand the im- pact of environment changes on CFR clusters, we perform two controlled experiments. First, we study the effect of human mobility on CFR stability. We place a laptop at a fixed location and start gathering CFRs from two different APs. We run the experiment during night, and observe a single CFR cluster for both links. Then, we position a human at an increasing dis- tance from the laptop. We plot the CDF of cross-correlation of each received CFR with the CFR cluster observed without the human (Figure 3). We define cross-correlation of two CFR cluster means and as ) = =1 =1 =1 (2) Figure 5(a) shows high correlation, suggesting that human obstructions may not create a significant change to the CFRs from AP 6230 . This is probably because the human does not alter any of the strong signal paths between the laptop and the AP. The link to AP 10 , however, changes with human movement; nevertheless, the change is substantial only when the human is very close to the laptop (1 foot away). Even then the median cross-correlation is larger than 75 . In all other cases, the cross-correlation remains high, suggesting that hu- man movements around the device may not distort the CFRs too much from its core structure. 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 0.2 0.4 0.6 0.8 Cross correlation between CIR with door closed and open CDF 5 mtr 2 mtr 3 mtr 4 mtr 1 mtr 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Cross correlation value CDF 5 meter 4 meter 3 meter 2 meter 1 meter Figure 6: (a) CFR cross correlation for (a) door open vs. closed and (b) original metal shelf vs. moved; for various distances from the laptop. Next, we study the effects of moving objects in the environ- ment – doors, chairs, metal shelves, etc. We place a laptop at a fixed location and gather CFRs from different APs. Fig- ure 6(a) shows that wooden door obstructions do not induce a significant change to the CFRs. Our measurements also We use cross-correlation as a metric here for illustrational purposes, and we design a more accurate metric in section 4.
Page 6
−0.2 −0.1 0.1 0.2 0.4 0.6 0.8 CDF Similarity difference between actual and other locations Loc# 1 Loc# 2 Loc# 3 Loc# 4 Loc# 5 Loc# 6 Loc# 7 Loc# 8 AP 3490 −0.2 −0.1 0.1 0.2 0.4 0.6 0.8 Similarity difference between actual and other locations CDF Loc# 1 Loc# 2 Loc# 3 Loc# 4 Loc# 5 Loc# 6 Loc# 7 Loc# 8 AP 28E0 −0.04 −0.02 0.02 0.04 0.06 0.2 0.4 0.6 0.8 CDF Similarity difference using multiple APs Loc# 1 Loc# 2 Loc# 3 Loc# 4 Loc# 5 Loc# 6 Loc# 7 Loc# 8 Figure 7: CDF of the difference in similarities own others observed at 8 locations, for two different access point: (a) AP 3490, (b) AP 28E0. (c) CDF of the maximum similarity difference ( own others ) across all APs. show similar results for other non-metallic objects. However, a repositioned metallic cupboard (approximately feet high and feet wide) altered the CFRs significantly – Figure 6(b) shows the impact. Importantly, however, these alterations are localized only around the shelf’s original and final locations; spots more than meters away from the shelf are much less perturbed, and need not be re-calibrated. While the above results are from controlled experiments, section 5 reports re- sults from uncontrolled settings (student center, cafe, mu- seum), with hundreds of mobile humans and shifting objects. (Hypo. 2) The “size of the lo ca tion (over which the CFR struc ture is de fined and sta ble) is small. Precise localization will require the CFR structure to vary over space. If the structure varies in large granularities (say, mul- tiple meters), PinLoc’s accuracy will naturally be bounded by that granularity. Thus to understand the “size” of each location, we move a test location increasingly further away from a reference lo- cation, and compute their respective CFR cross-correlations. Various existing channel measurements [11,15] show that the channel changes entirely once a receiver is moved more than a wavelength, which is 12 cm in the case of WiFi. Figure 8 shows that the cross-correlation drifts apart with increasing distance, and is quite low even above cm . While this may suggest that localization is feasible at cm resolution, we will see later that multiple locations in a room may exhibit match- ing fingerprints. This is why we will require PinLoc to col- lect multiple fingerprints from very nearby locations (within spot). The combined fingerprint from a specific “spot” is much less likely to occur in other spots, and hence, we will attain reliable localization at the granularity of spots. (Hypo. 3) The CFR struc ture of given lo ca tion is dif fer ent from the struc tures of all other lo ca tions. To evaluate the (dis)similarities of CFRs among different lo- cations, we divide the measured data into a training and a test set. Each location has a set of CFR clusters pertaining to an AP, represented by their mean and variance and learnt from the training set. For a test CFR from a location , we use correlation to find the best matching CFR cluster from ’s training data. The correlation value, denoted as own , indi- cates similarity of the test CFR with the trained fingerprint at 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Cross correlation with CFR at original poistion CDF 0.5 cm 1 cm 1.5 cm 2 cm 2.5 3 cm 3.5 cm Figure 8: Cross-correlation drifts away for CFRs that are apart by 2cms or more. the same location. Now, for all fingerprints of all other loca- tions, we find the one that exhibits maximum similarity of this test CFR – we denote this similarity as others . If a device’s measured CFR is more similar to a different location than its own, we will naturally misclassify the device’s location. Figure 7 (a) and (b) plot the CDF of the difference in simi- larities, own others , for different locations, for two dis- tinct APs . If the difference is negative, then the packet is likely to be misclassified. Also, the larger the difference, the greater the confidence in packet location. Figure 7 (a) and (b) show that the CFR from a single AP is often sufficient to correctly classify location. Of course, in some cases – such as Location ,AP 3490) – more than 50% of the CFRs are more similar to other locations, implying misclassification. How- ever, when considering the CFRs of location to a different AP, the misclassification reduces significantly. This suggests that CFRs are diverse across different APs, and this diversity can be leveraged to improve localization. Figure 7 (c) shows the effect of exploiting AP diversity with APs. Specifically, we now pick the AP with the highest similarity difference. Clearly, there is significantly less negative values in Figure 7 (c), implying that AP diversity can help create dissimilarity in location fingerprints. Note that own and others are computed per-AP.
Page 7
One may ask: Figure 7 shows that a packet may be classified to one out of different spots. In reality, the system will need to discriminate between many more spots – will the system scale to such scenarios? We note that PinLoc does not need to dis- criminate between all spots in a large area. Prior work has used WiFi SSIDs alone to localize devices to around 10 10 regions in indoor environments [8]. PinLoc will lever- age such schemes to first compute a coarse-grained macro- location, and then discriminate only between the spots inside that macro-location. Having verified these hypotheses, we now design the full localization scheme, including CFR clus- tering and matching over multiple sub-carriers. Thereafter, we evaluate PinLoc’s performance in section 5. 4. DESIGN AND IMPLEMENTATION Figure 9 shows the architectural overview of PinLoc. Dur- ing war-driving, a Roomba-mounted laptop moves randomly through a spot for around minutes. Recall from sections 1 and 2, that a spot is composed of many “locations” (Figure 10), hence, the laptop measures the CFR of every location it hits. Of course, due to the Roomba’s random mobility, the laptop may not be able to collect CFRs from all locations in a spot, making our war-driving process far less painstaking. The war- driven data is then sanitized through a phase correction oper- ation and fed to a clustering algorithm, which outputs a few dominating CFR clusters per-location. As mentioned earlier, these clusters are expressed as cluster means and variances, and together form the training set. The training set from dif- ferent locations in the same spot are stored under the corre- sponding spot database. Wa Drivin Spot1 Dat Spot2 Dat SpotN Dat . . . CFR Clustering Spot1 Cluster Spot1 Cluster SpotN Cluster SpotN Cluster SpotN Cluster . . . Data Sanitization CFR Classificatio Dat Spot x Figure 9: PinLoc architecture During the real-time localization phase, each mobile node passively records strings of CFRs it receives from AP beacons (string length of denoted with shaded squares in Figure 10). The mobile either sends these CFRs to a PinLoc server, or re- quests the spot databases for candidate spots in its (known) macro-location. The next step is matching. A single CFR read- ing will not match exactly the ones from the spot-databases due to random fluctuations, but on average, they are more likely to fall in the correct cluster than a wrong one. To im- prove the accuracy, instead of matching a single reading, we match the string of consecutive CFR readings. Each of these CFRs may match well with a location from a random in- correct spot, but it is unlikely that all the CFRs from a string will match better with locations from the same wrong spot. Figure 10: A device records multiple CFRs from a spot. Results from the next section will confirm this robustness of spot localization. However, before presenting the results, we discuss the sanitizing, clustering, and matching modules in details. 4.1 Data Sanitization (Phase and Time Lag) The CFRs received at a location cannot be directly used for calibration – an unknown phase and time lag (which also differ across subsequent packets) can distort the CFR. The sanitization module in PinLoc aims to correct for these offsets. The problem arises because the transmitter and the receiver do not attempt to precisely synchronize their timing and their phases (beyond symbol level) before transmitting a packet . Hence, the phase of the channel response of subcar- rier will be + 2 πf where is the genuine channel response phase we are searching for and is some measurement noise. It is important to notice that we do not need to learn the exact values of and for each packet (which is probably impossible). Since we feed to a classification algorithm, we need to make sure that whenever we measure , the measurement includes the same values of and We use a simple transform to achieve the goal. For every received channel response we calculate πF Intuitively, is the slope of the received response’s phase and is the offset. It is then easy to verify that, if the measure- ment noise is small, af eliminates the random and time lags. We verify that this is indeed the case in our measured datasets and we use the post-processed phase value af in all our further calculations. This is not a problem for a conventional OFDM receiver that only needs to remove, but not learn the channel response.
Page 8
4.2 Modeling the channel response We see from a sample measurement, presented in section 3, that the channel responses look like noisy replicas of a few representative clusters. However, it may not be obvious how to identify clusters and the main challenge of the classifica- tion algorithm is how to deal with the measurement noise. We make a reasonable assumption to model the noise (also called fast-fading) as a complex Gaussian noise, which corresponds to Rayleigh fading [15]. We first verify this assumption visu- ally by looking at the samples across subcarriers, such as the one illustrated in Figure 2 (b). We then take a few samples from the measurements and verify using QQ plots that the distribution fits well to a complex Gaussian and that the real and the imaginary parts are i.i.d. We also assume that the noise is independent across subcarriers. Let us consider a link from a single location to a single AP. Recall that ··· is the set of means of the rep- resentative CFR clusters of the link, as discussed in section 3, where each = ( =1 ··· ,F . Let us suppose we observe packet = ( =1 ··· ,F , where is the complex channel response for subcarrier Following the observations from the measurements, we pro- pose to model the channel response as a random vector with a Gaussian mixture distribution. That is, the channel response is assumed to be drawn from one of the representative CFR clusters, chosen at random for each packet. The channel re- sponse is modeled as a combination of the representative CFR clusters. We model each representative CFR cluster as a com- plex Gaussian random vector with mean and some vari- ance (since the real and imaginary parts are i.i.d, the vari- ance is scalar). Assuming that the packet belongs to the CFR cluster with the mean , we have that the probability of packet is P( ) = =1 exp || || (3) We see that each representative CFR cluster is described with a pair of complex vectors representing the mean and the variance of the observations. In section 4.3 we discuss how to derive from the measured data set. Furthermore, we can apply logarithm to (3) and remove con- stants to derive the log likelihood distance metric ) = =1 log( ) + =1 || || (4) which we shall use as a distance metric in the classification algorithm. Note that is indeed a distance metric, but it also has a probabilistic interpretation from (3), which we will use later while combining multiple readings to improve classifica- tion accuracy. 4.3 Clustering algorithm Recall that we model the data at each location as a Gaus- sian mixture distribution, with clusters with means and variances ,V . We denote with the probability that an observed packet belongs to a particular cluster , which corresponds to how often we “see” cluster in our training data. According to the Gaussian mixture model, this probabil- ity is independent across packets. Thus, the parameters of our model are ,U ,V ,k = 1 ,...,K . The classical approach to estimate these parameters is the expectation-maximization algorithm [16]. Instead, we estimate the parameters using variational Bayesian inference [16]. Variational inference is provided by the Infer.NET [17] framework that we use to im- plement the clustering algorithm. It is particularly convenient here because it tends to prune unneeded clusters. Instead of estimating the number of clusters by running the algorithm multiple times with different values of , we perform one run with = 10 and drop the clusters with small weights . Some locations may actually have more than 10 clusters but this is rare and discarding these extra clusters has little impact on performance. We note that another potential clustering algorithm that could be used here is k-means clustering algorithm. However, our approach takes into account that the noise has a Gaussian dis- tribution and hence can perform a more accurate clustering. For further discussion on the drawbacks of the k-means clus- tering, please see [16, Chapter 9]. 4.4 Classification algorithm Our classification algorithm is composed of two parts. First, PinLoc computes a macro-location based on WiFi SSIDs alone [8], and shortlists the spots within this macro-location; we call these spots the candidate set . The second task is to pick one spot from , or to declare that the device is not in any of these spots. To this end, the WiFi device overhears bea- cons from the APs as it roams around (we discuss the energy implications in section 5.5). Let be the set of all APs and let AP denote the AP which transmitted packet . We define the distance between a given packet and a spot as ,S ) = min ,AP )= AP (5) where is a set of representative CFR clusters learned from spot . Then, for all values of , we compute the minimum of ,S – this outputs the most likely spot that the user is located at, based on the CFRs from packet . The oper- ation repeats for every packet received within a short time window (typically 30 packets from 3 APs), and the spot that is picked most often (highest vote) is identified. PinLoc does not immediately declare the highest voted spot as the user’s location. If the highest vote count is small, it suggests low confidence and the possibility that the user is not located at any of the trained spots . Thus, PinLoc ensures that the num- ber of votes is above a rejection threshold before announc- ing that spot as the user’s location. If the number of votes is below the threshold, then PinLoc announces the location as not-a-spot ”. The rejection threshold can be selected from the training data and a application-specified false positive rate. We use 15% of the number of possible votes as the threshold in our evaluation . E.g., if the maximum number of votes are 30 , PinLoc announces a location as not-a-spot ”, if the highest matching spot obtain less than votes. We note that, in order to deal with the outliers, we use the majority voting scheme with the distance function (5) instead of the direct probabilistic interpretation (4).
Page 9
5. EVALUATION We evaluate PinLoc across 100 different spots using war driven training data and several test samples. Our wardriving ap- proach is explained next. 5.1 War-Driving The channel model and clustering algorithm from section 4.2 can be applied only to data from the same location. As we have seen in section 3, the size of a location that has the same representative CFR clusters is about 2cm 2cm. It is impor- tant to get enough data from the same location to be able to accurately learn the channel responses. Also, it is important to collect responses from many (2cm 2cm) locations within the 1m 1m spot. Our current war-driving procedure is in 2D. We transmit a packet from an AP every ms . A Roomba robot, mounted with a laptop, moves at a programmed speed of 30 cm/s . Fig- ure 11 shows an example of war-driving at the museum. We receive about 60 packets during a cm stretch. We divide all packets received in one spot into batches of 60 packets and run clustering algorithm on each batch. Figure 11: PinLoc war-driving at different spots in the museum. The Roomba robot mounted with a laptop, and 4 virtual wall devices at the corners of the spot. There are three important questions that arise about war- driving. The first question is do we need to record every sin- gle representative CFR cluster during war-driving? As we show later in section 5, PinLoc’s performance is not too sensitive to war-driving accuracy – the accuracy degrades gracefully as the Roomba is made to war-drive for shorter durations. The second question is do we need to war-drive in a partic- ular fashion? During the localization we match each sample against all learned representative CFR clusters to find the best fit, thus it is not important in which order we store the clus- ters in the learning database. One can swipe through a spot in any direction, multiple times and in multiple rounds. More- over, war-driving does not have to be done in any particular channel conditions (e.g. during busy or off-peak hours). In fact, the accuracy increases if we accumulate channel samples from diverse channel conditions. The third question is why not define a spot as a single location cm cm )? Recall from Figure 10 that a string of CFRs improves the probability of spot localization. This is because a single test CFR may match with a different random spot; but it is unlikely that a string of test CFRs will all match better with the same wrong spot. In leveraging this diversity gain, we find that strings of length are reasonable. Given that AP beacons are spaced 100 ms apart in WiFi b/g/n, and human indoor walking speed is m/sec , getting 10 beacons implies that the person moves almost . Hence, we fix our spot- size to . Of course, even if a person is not walking, we assume that there will be inherent swaying motions of the body in the granularity of few cms – such motions will be sufficient for PinLoc. 5.2 Experiment Design We evaluate PinLoc in 4 environments: (1) Hudson Engineer- ing building with faculty offices and classrooms, (2) busier Bryan Student Center, (3) Twinnies cafe, and (4) Duke Uni- versity Nasher Museum. Both training and test samples are taken from the laptop, mounted on the Roomba robot. In all the experiments, the laptop associates to all APs on the same frequency channel, and receives beacon packets from them for a duration of . This duration ensures that a mo- bile user (walking at m/s) will remain inside the same spot while receiving all the beacons. For the engineering building scenario, we take test samples during daytime with more than 100 people around. The cafeteria experiments are performed during busy lunch hours, with more than 50 people present at any time, along with a high churn. For the museum mea- surements PinLoc was trained for 10 large paintings in one wing of the museum, and tested for these spots. The measure- ments were obtained on a slightly less busy day to minimize interference with real visitors. Both training and test samples are taken at the same height (we discuss the ramifications of height in section 6). Metrics: Our goal is to show that we can accurately local- ize test samples to the corresponding spots, but also to detect when a sample does not belong to any spot. We use the fol- lowing two metrics to evaluate PinLoc. (1) Accuracy – the fraction of cases in which the user was localized to the cor- rect spot. (2) False positives (FP) – the fraction of cases in which the users were localized to an incorrect spot/non-spot. In other words, false positives also take into account the cases where PinLoc localizes the user to a trained spot, even though the user was not located at any of these spots. Comparison with RSSI: We also evaluate whether we can use RSSI to achieve a similar accuracy with the same number of APs. For this, we compare PinLoc with a modified Horus al- gorithm. The original Horus algorithm [4] interpolates RSSI measurements to simplify war-driving. In order to provide a fair comparison, we modify Horus to use the same war-driven training set we use in PinLoc. We define the similarity analo- gously to (5), replacing correlation with a difference between two RSSI. This is consistent with equation (3) in Horus [4], where the localization metric is a joint probability of seeing different access points. We compare the modified Horus algo- rithm with PinLoc by using the same test data across the same number of APs.
Page 10
0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Accuracy per spot CDF PinLoc Horus−like 0.1 0.2 0.3 0.4 0.5 0.2 0.4 0.6 0.8 False positive per spot CDF PinLoc Horus−like 0.2 0.4 0.6 0.8 Wifi Area Number Accuracy/ False positive 6 Spots 14 Spots 8 Spots 9 Spots 6 Spots 7 Spots Figure 12: PinLoc in office environment: (a) Accuracy, (b) False positive against Horus (c) Per macro-location. 5.3 PinLoc accuracy and false positives Figure 12 reports results from the engineering building exper- iments. PinLoc achieves nearly 90% mean accuracy across 50 spots (Figure 12(a)), consistently outperforming Horus. The false positives (FP) are also maintained to less than 7% , com- pared to more than 25% in Horus (Figure 12(b)). RSSI based algorithm is significantly worse than PinLoc, since it is repre- sented with a single real number. CFR is represented with 30 complex numbers and contains much richer information. In this comparison, we were tuned to a single channel, and ob- served 1 to 4 APs on that channel. Ofcourse, PinLoc’s, as well as Horus’s, performance will improve if more APs are avail- able. But this may require scanning across channels which may increase energy consumption. Figure 12(c) zooms into the performance of PinLoc and shows the accuracy/FP on a per-WiFi macro location . The number of spots per WiFi region is shown on top of the bars. Stu- dent center has a more dynamic environment with cafes and shops – we evaluate PinLoc at 34 spots across WiFi macro locations. Figure 13(a) shows that even in such an active en- vironment PinLoc can maintain low false positive( 3% ) and high accuracy( 86% ). An obvious question is whether such performance will degrade if adjacent spots need to be identi- fied (i.e., center of spots are apart). Figure 13(b) shows that PinLoc is able to discriminate in such settings with a rea- sonable average accuracy of 82% Similar accuracy/FP graphs are plotted for the cafeteria and museum in Figure 14. The mean accuracy for the cafeteria case is 90 07% and the mean FP is 5% . For the museum, the mean accuracy is 90 28% , and the mean FP, 1% . In all four scenarios, PinLoc achieves high accuracy/low FP for most of the spots, except around 20% where the performance drops. Careful investigation showed that these spots received packets at low SNR from many APs. To probe this further and understand their ramifications, we next perform an analysis across various system parameters. 5.4 Impact of Parameters Recall that a macro-location is derived from WiFi SSIDs; Pin- Loc discriminates only between candidate spots inside the macro-location. 0.1 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Accuracy/ False Pos. per spot CDF Accuracy False Positive 10 0.2 0.4 0.6 0.8 Spot Number Accuracy/ False Positive Accuracy False pos. Figure 13: Pinloc performance in student center (a) Ac- curacy, false pos., (b) Performance of adjacent spots. Impact of number of test packets A user extracts CFRs from beacon packets that are transmit- ted by APs every 100 ms . Thus, assuming up to m/s walking speeds, the user dwells for at least inside a spot, thereby re- ceiving 10 beacons per-AP. Figure 15 (a) shows the variation of accuracy and FP with the number of received beacons per- AP. With the typical size of 10 packets per AP, PinLoc achieves mean accuracy of 89% and false positives of 7% across 50 spots in the engineering building; 15 packets raise them to 91% and 5% , respectively. Figure 15 (a) also shows low accu- racy ( 68% ) and high FP ( 14% ) if only packet per AP is used. This is because one single reading may randomly match with an incorrect spot. However, even with packets, we find the accuracy above 82% , and FP less than 10% . This indicates
Page 11
10 15 20 0.2 0.4 0.6 0.8 0.9 Number of packets per AP Accuracy/ False pos. False Positive Accuracy 20 40 60 80 100 Number of APs observed Accuracy/ False pos. Accuracy False positive 8 Spots 22 Spots 11 Spots 9 Spots 0.2 0.4 0.6 0.8 Minutes of training data Accuracy/ False pos. Accuracy False positive Figure 15: Accuracy of PinLoc against: (a) number of beacons, (b) number of APs and (c) duration of war-driving. 0.2 0.4 0.6 0.8 Spot number Accuracy/ False positive 10 0.2 0.4 0.6 0.8 Spot index Accuaracy/ False Positive Figure 14: PinLoc performance in cafeteria and museum (a) Accuracy and FP per spot in cafeteria. (b) Accuracy and FP per-spot in the museum. that even at higher user mobility, or with failure in beacon re- ception, PinLoc can sustain a reasonably good performance. Impact of the number of APs PinLoc’s performance in sparse WiFi environments is of in- terest. To this end, we analyze the performance for varying number of APs. While collecting the test data, we were tuned to a single channel, and observed 1 to 4 APs on that channel (we did not scan across channels to limit energy consump- tion). We divide the spots into different categories depending on how many APs are visible within each spot – Figure 15 (b) shows the results. An encouraging observation is that even when only a single AP is visible, PinLoc can perform spot lo- calization with accuracy of over 85% and false positives below 7%. This is in contrast to other WiFi-based localization meth- ods that need at least APs to attain reasonable precision. Furthermore, as the number of visible APs increases, the per- formance improves quickly. Impact of war-driving It is important to understand how long we need to war-drive to achieve high localization accuracy. The tradeoff is that short war-driving will record fewer CFRs, incurring the possi- bility of overlooking an important CFR cluster. To understand the impact, we run PinLoc on different training sets, drawn from different war-driving durations. Figure 15 (c) plots the accuracy and the FP (per-spot) as a function of this duration. Evidently, a few minutes of war-driving per-spot suffices; we observe reasonable performance when using only minute of war-driving data. Impact of mobility We turn to the cafeteria scenario to analyze the effect of the mobility on the accuracy of localization. We take one hour of test data for three spots in the cafeteria. We perform lo- calization on each batch of 10 beacon packets and plot its success or failure in Figure 16. For all three spots, we see that the time instants when localization failed are short and uniformly spread over the measurement interval. The mean accuracy was 85% with 7% false positives. Thus, even in a very busy environment such as the cafeteria, we are able to provide localization without prolonged disruption. Error Correct Error Correct 1800 3600 Error Correct Time in seconds Figure 16: Success of PinLoc localization over time for three spots and over an interval of 1 hour.
Page 12
Impact of old training data We concede that PinLoc will need a fresh round of war-driving for spots that are affected by significant environmental changes (e.g., metallic shelves). But with “small” structural changes will PinLoc’s war-driven training data remain valid over days and months? To evaluate this we tested spots in our engi- neering building months after wardriving them. Figure 17 shows a moderate median accuracy of 73% per spot in this scenario. Depending on application requirements, war-driving can be periodically scheduled to improve accuracy. This may not be hard since war-driving can be automatically be done using a Roomba robot. 0.2 0.4 0.6 0.8 Spot Number Accuracy/ False Positive Accuracy False Positive Figure 17: Accuracy of 5 spots tested 7 months after training. 5.5 Energy consumption PinLoc is designed with energy efficiency in mind. Contrary to existing schemes that rely on power-hungry active scanning, PinLoc uses only beacons from APs in a single channel. For this, it synchronizes with the beacon-schedules of these APs and periodically wakes up to collect the CFRs. It sends this information to a central server for computing location. The amount of such data is low, approximately 1200 bytes per sec- ond for 2 APs and m/s speed, and can be easily batched with existing traffic that communicates to the location based ser- vice. Consequently, the data upload energy is marginal. Now, for the energy footprint of beacon reception, we performed measurements on Google Nexus One phones, using the Mon- soon Power Meter. We found that receiving beacons from 2 APs every 100 ms incurs an additional 28 mW power on av- erage. This may be negligible compared to 1326 72 mW on average to stream YouTube video. We omit the details in the interest of space but argue that PinLoc’s low energy overhead makes it a practical proposition. 6. LIMITATIONS AND DISCUSSION Antenna’s orientation: PinLoc’s war-driving and testing were all performed with a laptop on a Roomba robot, in a 2D plane. The antenna is placed in the laptop’s lid and the lid was closed, hence the antenna was parallel to the test- ing plane. During wardriving and testing, Roomba robot took random turns, constantly pointing the antenna in different di- rections. Hence we can conclude our results are robust to the antenna’s orientation on the 2D plane. Figure 18: Beacon energy consumption from the Mon- soon Power Meter tool. Height, 3D war-driving, and phone mobility: In real- ity, users will carry their phones at different heights and 3D war-driving would be necessary. We discuss the effects of 3D wardriving with help of two simple micro-benchmarks. (1) We manually war-drive a 50 cm box for 15 min- utes (a person holds a laptop in hand and moves it in random directions across the box), and we collect CFR samples from APs. We then collect test data within the same box by moving the laptop around it and rotating the laptop. The person that holds the laptop also moves around it. We compare the test data with the manually war-driven 3D data and with the pre- viously war-driven 2D data for different locations. We plot the localization accuracy in time in Figure 19(a). The mean accuracy is 84% . We see that the accuracy is similar to the one reported in section 5 hence we can speculate that with suitable extensions, PinLoc might scale real-world scenarios. (2) To understand the complexity of 3D wardriving, we mea- sure the vertical “size” of a location (the z axis analogue of Figure 8). We see that cross-correlation between CFRs drifts apart at 10 cm or more (Figure 19(b)). This suggests that 3D war-driving may be feasible, perhaps with a height-varying tripod on top of a Roomba. We were unable to construct a robot for 3D wardriving. We leave 3D localization to future work, as well as issues that may emerge from phone orienta- tion, or users inserting their phones in pockets and bags. Dependency on particular hardware cards: We run the experiments reported in section 5 alternating among 4 lap- tops (each with an Intel 5300 card). Since Intel 5300 was the only available card that exposes CFR information, we were not able to test PinLoc with cards from different vendors. We speculate that cross-platform calibration would be necessary, similar to existing RSSI based schemes [7,18] Localization and MIMO: We did not explore MIMO capa- bilities in our current test-bed. A MIMO receiver would pro- vide as many CFR samples as the number of receive antennas, and could be highly valuable for localization. We leave this for future investigation.
Page 13
15 30 45 60 Error Correct Time in Seconds 0.2 0.4 0.6 0.8 0.5 Cross correlation Fracion of packets 2 cm 4 cm 6 cm 8 cm 10 cm 12 cm Figure 19: (a) Accuracy of a 3D spot over time. (b) Corre- lation drifts away with height differences of 10 cm or more. 7. RELATED WORK The topic of indoor localization has seen a variety of approaches that may be broadly classified as active and passive, and sub- classified into RF and sensing based techniques. We sample some of the key ideas, and discriminate PinLoc from them. RF signal strength-based localization has been the dominant theme of localization for more than a decade. RADAR [8] per- forms detailed site surveys a priori and then utilizes the SSIDs and received signal strength reported by wireless devices to generate location fingerprints. Horus [4] and LEASE [19] propose enhancements to RADAR by exploiting the structure of RSSI. Place Lab [6] and the Active Campus project [20] attempt to reduce the overhead of calibration – they show that collecting signal information from WiFi and GSM base stations through war-driving is adequate for reasonably accu- rate localization. Finally, Patwari and Kasera [11] have also recently explored the use of signal characteristics of a wireless channel to achieve location distinction – that is, they reliably identify when a device has moved from one location to an- other. Time-based techniques utilize time delays in signal propaga- tion to estimate distances between wireless transmit-receiver pairs. Examples include GPS [21], PinPoint [22], and work by Werb et. al. [23]. The TPS system uses difference in time of arrival of multiple RF signals from transmitters at known location [24]. Similarly, the PAL system [25,26] uses time dif- ference of arrival between UWB signals at multiple receivers to determine location. The Cricket system [10, 27] and AH- LoS [28] utilize propagation delays between ultrasound and RF signals to estimate location of wireless devices. Such a solution requires installation of ultrasound detectors on wire- less devices, limiting their applicability. Angle-of-arrival based techniques utilize multiple antennas to estimate the angle at which signals are received, and then employ geometric or signal phase relationships to calculate bearings to other devices with respect to the device’s own axis [29–31]. Besides positioning, such methods can also provide orientation capabilities. However, these techniques require extremely sophisticated antenna systems (4 to 8 an- tennas) and non-trivial signal processing capabilities, unfore- seeable on mobile devices in the near future. PinLoc’s reliance on WiFi alone, along with the ability to utilize PHY layer infor- mation from off-the-shelf interfaces [32], makes it a potential candidate for immediate deployment. 8. CONCLUSIONS This paper shows that PHY layer information, exported by off-the-shelf Intel 5300 cards, offer new opportunities to lo- calize WiFi devices in indoor environments. We leverage the observation that multipath signals exhibit stable patterns in the manner in which they combine at a given location, and these patterns can lend themselves to meter-scale localiza- tion. Evaluation results from the engineering building, cafete- ria, student center, and the university museum, demonstrate a mean accuracy of 89% for 100 spots. From the application’s perspective, PinLoc could enable product advertisements on a shopping aisle, or offer information on each exhibit at a mu- seum. We believe this is a step forward in the area of indoor localization, even though some more work is necessary before it is ready for real-world deployment. 9. ACKNOWLEDGMENT We sincerely thank Dr. Anthony Lamarca for shepherding our paper, as well as the anonymous reviewers for their valuable feedback. This work is supported in part by the NSF CNS- 0747206 grant. 10. REFERENCES [1] Placecast. Shopalerts. [2] E. Bruns et al. Enabling mobile phones to support large-scale museum guidance. Multimedia, IEEE , 2007. [3] N. Priyantha, A. Chakraborty, and H. Balakrishnan. The cricket location-support system. In MOBICOM , 2000. [4] M. Youssef and A. Agrawala. The horus WLAN location determination system. In MobiSys , 2005. [5] Chen Y. et al. Fm-based indoor localization. In Mobisys ACM, 2012. [6] Yu-Chung Cheng, Yatin Chawathe, Anthony LaMarca, and John Krumm. Accuracy characterization for metropolitan-scale wi-fi localization. In MobiSys , 2005. [7] K. Chintalapudi, A. Iyer, and V. Padmanabhan. Indoor localization without the pain. In MOBICOM , 2010. [8] V. Bahl et al. RADAR: An in-building rf-based user location and tracking system. In INFOCOM , 2000. [9] I. Constandache, S. Gaonkar, M. Sayler, R. Roy Choudhury, and L. Cox. Enloc: Energy-efficient localization for mobile phones. In IEEE Infocom Mini Conference , 2009. [10] N. B. Priyantha. The cricket indoor location system . PhD thesis, MIT, 2005. [11] Junxing Zhang et al. Advancing wireless link signatures for location distinction. In MobiCom . ACM, 2008. [12] M. Azizyan, I. Constandache, and R. R. Choudhury.
Page 14
SurroundSense: Mobile phone localization via ambience fingerprinting. In MOBICOM , 2009. [13] A. Sheth, S. Seshan, and D. Wetherall. Geo-fencing: Confining Wi-Fi coverage to physical boundaries. Pervasive Computing , 2009. [14] Intel Research. Intel 5300 mimo channel measurement tool. 80211n-channel-measurement-tool [15] D. Tse and P. Viswanath. Fundamentals of Wireless Communication . Cambridge University Press, 2005. [16] C. Bishop. Pattern Recognition and Machine Learning Springer, 2006. [17] T. Minka, J.M. Winn, J.P. Guiver, and D.A. Knowles. Infer.NET 2.4, 2010. Microsoft Research Cambridge. [18] A. Haeberlen et al. Practical robust localization over large-scale 802.11 wireless networks. In MOBICOM ACM, 2004. [19] P. Krishnan and others. A system for LEASE: Location estimation assisted by stationary emitters for indoor rf wireless networks. In IEEE Infocom , March 2004. [20] William G. Griswold et al. Activecampus: Experiments in community-oriented ubiquitous computing. Computer , 2004. [21] The global positioning systems (wikipedia entry). [22] M. Youssef et al. Pinpoint: An asynchronous time-based location determination system. In ACM Mobisys , June 2006. [23] J. Werb and C. Lanzl. Designing a positioning system for finding things and people indoors. IEEE Spectrum 35(9), September 1998. [24] X. Cheng et al. TPS: A time-based positioning scheme for outdoor sensor networks. In IEEE Infocom , March 2004. [25] S.J. Fontana, R.J.and Gunderson. Ultra-wideband precision asset location system. In IEEE Conference on Ultra Wideband Systems and Technologies , May 2002. [26] R.J. Fontana, E. Richley, and J. Barney. Commercialization of an ultra wideband precision asset location system. In IEEE Conference on Ultra Wideband Systems and Technologies , November 2003. [27] A. Smith et al. Tracking moving devices with the cricket location system. In ACM Mobisys , June 2004. [28] A. Savvides and M. Han, C.C. Srivastava. Dynamic fine-grained localization in ad-hoc networks of sensors. In ACM MobiCom , 2001. [29] D. Niculescu and B. Nath. Ad hoc positioning system (APS) using AoA. In IEEE Infocom , 2003. [30] D. Niculescu and B. Nath. VOR base stations for indoor 802.11 positioning. In ACM MobiCom , September 2004. [31] J. Xiong and K. Jamieson. SecureAngle: improving wireless security using angle-of-arrival information. In ACM HotNets , 2010. [32] S. Sen et al. Precise Indoor Localization using PHY Layer Information. In ACM HotNets , 2011.

About DocSlides
DocSlides allows users to easily upload and share presentations, PDF documents, and images.Share your documents with the world , watch,share and upload any time you want. How can you benefit from using DocSlides? DocSlides consists documents from individuals and organizations on topics ranging from technology and business to travel, health, and education. Find and search for what interests you, and learn from people and more. You can also download DocSlides to read or reference later.