163 Wireless Indoor Tracking System (WITS) Communication Systems/Computing Center, University of Freiburg Abstract A wireless indoor tracking system is described in this paper, which can be used to track and locate both moving and static WLAN-enabled devices inside a building. The system is purely software based, which means an advantage for the existing WLAN. No additional hardware and costs are required. Using complex mathematic algorithms, the system determines the locations of the mobile devices according to the received signal strength from visible access points. Taking into account the historical signal strength, the interior structure of the building and available Bluetooth access points, the positioning and tracking accuracy achieved is very optimistic. Experimental results are reported at the end of the paper. 1 Introduction People s location is a crucial ingredient in many ubiquitous computing applications. It makes possible reasoning about what the person is doing or what he/she is interested in, therefore determining what information to present and in what way, even triggering automatic events that benefit the person. Development of wireless communication technology and widely deployment of wireless networks have made location-aware applications possible and necessary. Tourist guiding system in the city, visitor guiding system in the conference center, multimedia navigation and information system in the gardens or zoos, and etc, will benefit us greatly. To realize such promising applications, we must have an accurate positioning and tracking system as prerequisite. The problem of positioning and tracking has been tackled by many systems over the years, such as GPS, wide-area cellular-based system, infrared-based system, magnetic tracking system, physical contact systems and radio frequency
164 based systems. GPS makes a big success in outdoor navigation, but fails indoors because of radio wave multipathing, scattering and attenuation in indoor environments. The other systems require special hardware devices to be installed. Radio frequency-based tracking in WLAN has gained more and more attention in recent years, because it makes use of existing WLAN infrastructure, requires no extra hardware, and provides relatively large coverage. An indoor wireless positioning system was firstly developed, which could be used to determine the locations of static devices in a WLAN [Zho 04]. However, in reality the mobile devices are not fixed to a location, they move from time to time. With the support of Karl-Steinbuch-Scholarship of MFG foundation [Kar][Mfg], the Wireless Indoor Tracking System (WITS) was developed, which can be used to locate and track both moving devices and static devices inside a building. The system is purely software based, which means an advantage for the existing WLAN. No additional hardware and costs are required. For inferring locations, it uses a series of consecutive received signal strength from visible access points as the input to the history based location determination algorithm. Interior structure of the building and Bluetooth technology are applied as constrains to improve the accuracy. Related research in this field will be reviewed firstly in the next section. Section 3 gives a description about the design and implementation of the system. WLAN-based tracking algorithm, which is the most important part of the paper, will be discussed in section 4. Experimental results will be presented in section 5. Afterwards is the discussion about the deployment of WLAN-based tracking in section 6. Conclusion and references come at the end. 2 Related work Since WLAN-based tracking has gained much attention in recent years, several teams have been working in this field. RADAR, developed by Bahl and Padmanabhan, is regarded as the first one. Using the nearest neighbor algorithm, RADAR gave a median spatial error distance of 2.94 meters [Bah00a]. Using a Viterbi-like algorithm in the enhanced-radar, the median spatial error distance was reduced to 2.37 meters [Bah00b]. LOCADIO developed by Krumm and Horvitz used Hidden Markov Model to infer the location of a client with a median error of 1.5 meter and whether or not the client is in motion with a classification accuracy of 87%. For motion, they measure the variance of the signal strength of the strongest access point as input to a simple two-state Hidden Markov Model for smoothing transitions between the inferred states of»still«and»moving«. For location, they used another Hidden Markov Model on a graph of locations nodes [Kru04]. The location system described by Ladd et al. used Bayesian reasoning and a Hidden Markov Model (HMM). Taking into account signal strength from multiple access points, the probability of seeing the access points at a location and the ori-
Wireless Indoor Tracking System (WITS) 165 entation, the system achieved a median spatial error distance of around 1 meter in hallways [Lad02]. A WLAN location determination technique, the Joint Clustering technique, presented by Youssef et al. used 1) signals strength probability distributions to address the noisy wireless channels, and 2) clustering of locations to reduce the computational cost of searching the radio map. The technique gave user location to within 7 feet with over 90% accuracy [You03]. Ekahau is the commercial real-time location system using site calibration and statistical modeling of signal strengths in the market, which announces up to 1 meter average accuracy [Eka]. While most other teams used manual calibration, UCSD s ActiveCampus used a formula that approximates the distance between wireless sensor and access point as a function of signal strength. Using hill-climbing algorithm, the system achieved the accuracy of 10 meters [Gri02]. 3 System description The approaches to determine the locations of the mobile devices based on WLAN can be categorized into two classes: switch-based and client-based. To realize switch-based location determination, the wireless switch system must include a positioning component, which measures the signal strength of the mobile devices within its range and estimates their locations using specific mathematical algorithms. All the work is done at the switch side. Differently, for client-based location determination, it is the mobile device that retrieves the signal strength from its wireless adapter and reports it to the location determination server, which then estimates the location of the mobile device using proper mathematical algorithm. Client-based location determination does not require the positioning component to be included in the wireless switch system, therefore, can work with normal 802.11 access points. The Wireless Indoor Tracking System (WITS) discussed in this paper is client-based. A calibration process must be conducted before the client-based tracking, in which signal strength footprints at various locations inside the building are collected and stored in a so called RSS (Received Signal Strength) radio map. In the tracking phase, the client, i.e. the mobile device, retrieves the current received signal strength from visible access points, passes them to the location determination server, which matches them with the RSS radio map and estimates the current location of the client using the positioning and tracking algorithm. The estimated locations can be used by upper-layer location-aware applications. Figure 1 illustrates the process and the components. Wireless Indoor Tracking System (WITS) is a pure software system, which is used to locate and track mobile devices inside a building. It makes use of existing WLAN (802.11) infrastructure and uses wireless adapter as the sensor. The system is implemented with Visual C++, and is composed of server, client and builder, as Figure 2 illustrates.
166 WITS server is a dedicated computer which is running the location determination algorithm. It receives tracking request from WITS client, estimates its realtime location using tracking algorithm, and returns the location information back to WITS client. WITS client is installed on the mobile device. It measures the current received signal strength, sends tracking request with the received signal strength to WITS server, and displays the estimated location on the map after receiving reply from WITS server. WITS client can also register in the server that it wants to be tracked so that other person is able to know its location. Before mobile devices can be tracked, the RSS radio map must be built via a calibration process, which is the job of WITS builder. WITS builder collects samples of signal strength at various locations in the building and sends them to WITS server, which will store them in the RSS database and build the RSS radio map. RSS database is implemented with Microsoft Access. It contains 8 tables.»rss_basic«stores the raw signal strength data collected at calibrated locations,»rss_mean«stores signal strength mean value, while»rss_histogram«stores the probability distribution of signal strength. The 3 tables compose the RSS radio map.»bluetooth«contains the locations of the available Bluetooth access points.»layout_basic«,»layout_sd«,»path«and»room«are constrains based on the interior structure of the building, which can be applied to the tracking algorithm to improve the accuracy and precision. The basic of the tracking system is to retrieve signal strength values of the visible access points accurately and promptly. The source code of Wireless Research API from University of California, which implements the function, is integrated into WITS. It works on Windows XP platform and is independent on wireless adapters [Wra]. Fig. 1 Client-based positioning and tracking
Wireless Indoor Tracking System (WITS) 167 Fig. 2 System architecture of WITS 4 Tracking algorithm According to the principle of choosing the most likely locations of the mobile devices, WLAN-based location determination algorithms can be categorized into two groups: deterministic and probabilistic algorithms. The earliest and most basic deterministic location determination algorithm is the nearest neighbor algorithm used in RADAR system [Bah00a]. Probabilistic location determination makes use of Bayesian law. 4.1 Nearest neighbor algorithm The nearest neighbor algorithm provides the basic idea of deterministic WLANbased positioning. During calibration, the system collects multiple samples of signal strength footprints at the calibrated locations and stores the signal strength mean value of every calibrated location in the RSS radio map. In tracking phase, the current received signal strength is compared with the mean values in the RSS radio map. The record that matches the current received signal strength best is picked up. The idea is to calculate the Euclidean distance between the current received signal strength and the records in the RSS radio map and choose the one minimizing the Euclidean distance [Bah00a]. Assume S m = {SS m0, SS m1,..., SS mn-1 } is the tuple of current received signal strength. Assume S i = {SS i0, SS i1,... SS in-1 } is the tuple of signal strength mean value of a calibrated location in the RSS radio map. SS m0, SS i0 are signal strength from AP 0, SS m1, SS i1 are signal strength from AP 1, and so on. (1) Euclidean distance (S m, S i ) = (SS m0 - SS i0 ) 2 + (SS m1 - SS i1 ) 2 +... + (SS mn-1 - SS in-1 ) 2
168 As Figure 3shows, the signal strength tuple which has the minimal Euclidean distance is the nearest neighbor and thus is the estimated location of the mobile device. Fig. 3 The nearest neighbor algorithm 4.2 Bayesian algorithm Bayesian algorithm is the basic for most probabilistic location determination algorithm. It has the same calibration phase as the nearest neighbor algorithm, but it uses Bayesian law to choose the most likely location of the mobile device [You03][Lad02]. Assume m is the number of calibrated locations, n is the number of access points. L = {L 1, L 2,..., L m } is the set of calibrated locations. L i stands for calibrated location i. E = {E 1, E 2,..., E m } is the set of signal strength footprints of all calibrated locations. E i = {e i0, e i1,..., e in-1 } stands for the signal strength footprint at calibrated location i. P(L i ) is the prior probability of location i. P(E i L i ) is the probability of getting signal strength footprint E i = {e i0, e i1,..., e in-1 } if at location i. P(E i L i ) = count(e i0,e i1,...,e in-1 ) / (all samples at location i). P(L i E i ) is the probability that the mobile device is at location i if the signal strength footprint is E i = {e i0, e i1,..., e in-1 }. E x is the current received signal strength which is used to estimate the unknown location. L x is the estimated location.
Wireless Indoor Tracking System (WITS) 169 If the current received signal strength is E x, according to Bayesian law, the probability that the mobile device is at location L x is: (2) (3) The location which has the maximal probability, i.e. maximized equation (2), is regarded as the estimated location. 4.3 History-based tracking algorithm The nearest neighbor algorithm and Bayesian algorithm use only the current received signal strength to estimate the unknown location. Since the user cannot jump large distances, WITS uses history based algorithm, i.e. a series of consecutive signal strength, for location determination. Depending on whether the nearest neighbor algorithm or Bayesian algorithm is used to choose the k most likely neighbors, the history-based algorithm can be deterministic or probabilistic. It is illustrated in Figure 4. 1. While the user is walking, collect real-time signal strength periodically (e.g. 1s). 2. Use the nearest neighbor algorithm (deterministic) or Bayesian algorithm (probabilistic) to find the k most likely locations in RSS radio map, called the k nearest neighbors. k is a predefined parameter. 3. In the history vector of k-nearest neighbors, delete the column of the oldest k nearest neighbors and add the column of the newest k nearest neighbors, so that the depth of the history vector keeps h. 4. Calculate the shortest path from the last estimated location to the newest k- nearest neighbors in the history vector. The distance between two adjacent points is their physical distance. 5. The end point of the shortest path is the current estimated location of the mobile device. 6. Repeat the steps continuously, until the client stops tracking. The algorithm is based on the work of Bahl et al. [Bah00b]. The difference in this paper is that 1) it takes into account the last estimated location when finding the shortest path, 2) the currently estimated location is the end of the shortest path, instead of the head.
170 Fig. 4 History based algorithm [Bah00b] 4.4 Constrains Besides using history based tracking algorithm, WITS applies some constrains to the tracking algorithm to improve the accuracy and to reduce logical errors. Layout of building In indoor scenario, logical errors, such as being indistinguishable of different floors, different rooms, or different sides of a wall, are regarded as big errors. Even though their spatial distance may be small, the path between them might be quite long. To reduce such logical errors, the layout of the building is applied to the tracking algorithm, which proves quite effective. The layout of the building is expressed by a connected graph, in which the directly connected vertexes are adjacent locations. The shortest distance between any two locations can be calculated by Dijkstra s shortest path algorithm, which is then used as the physical distance in the history-based algorithms illustrated in Figure 4. Since the layout of the building does not change often, the shortest distance between calibrated locations are calculated by Dijkstra s shortest path algorithm and stored in the database, from which the history-based algorithm get the distance directly without complex calculation. The left figure in Figure 5 is the snapshot of the table which contains the information of the directly connected calibrated locations. The right figure contains the shortest distance between any two calibrated locations. [Kru04]
Wireless Indoor Tracking System (WITS) 171 Fig. 5 Database of the layout of the building Path and room Other constrains are path and room constrains. The adjacent locations on the frequent paths or in the same rooms are assigned smaller distance, which is based on the assumption that the user is more likely either in a room or on a frequent path. Bluetooth Bluetooth is also implemented in this system as an additional help to WLAN tracking technology. Several Bluetooth access points are placed in fixed places whose location information is stored in the»bluetooth«table in the database. If the mobile device is Bluetooth-enabled, it will scan to discover the visible Bluetooth access points. According to the Bluetooth access points discovered, the system determines the approximate area that the mobile device is. The final estimated location of the mobile device is the intersection of the estimations from 802.11 WLAN and Bluetooth. 5 Experiments Experiments were carried out in the basement and ground floor of Computing Center of the University of Freiburg respectively. Figure 6 and 10 are the maps of the testbed. Dots on the map are the calibrated locations whose signal strength footprints are stored in the RSS radio map. Lines are the frequent paths. 5.1 Experiments in the basement In this experiment, every calibration location was sampled in 4 orientations for 1 minute per orientation with sampling rate being 0.5 second. The wireless adapter used was D-Link AirPlus DWL-G650. 6 access points were installed. AP0, AP1,
172 AP4 and AP5 were in the basement, AP2 and AP3 were on the ground floor. After the RSS radio map was set up, all the calibrated locations on the corridor were traversed with several seconds stop. The frequent path was traversed slowly and quickly respectively without stop. Tracking algorithms of WITS which make use of history information and layout constrains outperform the basic locating algorithms in the experiments. For temporarily static devices, the average error distance of WITS deterministic tracking algorithm could reach 1.13 meter, which is 24% better than the 1.49-meter average error distance of the nearest neighbor algorithm. Similarly, the average error distance of WITS Bayesian tracking algorithm for temporarily static devices could reach 1.48 meter, which is 50% better than the 2.98-meter average error distance of basic Bayesian algorithm. Accuracy and precision curves of WITS deterministic tracking algorithm and Bayesian tracking algorithm for temporarily static devices are illustrated in Figure 7. For comparison, the accuracy and precision curves of the nearest neighbor algorithm (basic deterministic locating) and Bayesian algorithm (basic Bayesian locating) are illustrated in Figure 7 too. For constantly moving devices, WITS deterministic tracking algorithm could reach the average error distance of 2.93 meter for slowly moving devices and 3.16 meter for quickly moving devices, and WITS Bayesian tracking algorithm could reach the average error distance of 1.67 meter for slowly moving devices and 3.89 meter for quickly moving devices. The accuracy and precision for constantly moving devices are illustrated in Figure 8 and Figure 9. Fig. 6 Map of Basement of Computing Center
Wireless Indoor Tracking System (WITS) 173 Fig. 7 Tracking and locating in the basement Fig. 8 Deterministic tracking with stop, tracking slowly without stop and tracking quickly without stop in the basement Fig. 9 Bayesian tracking with stop, tracking slowly without stop and tracking quickly without stop in the basement
174 5.2 Experiments on the ground floor Another experiment was conducted on the corridor of the ground floor of Computing Center of the University of Freiburg (Fig. 10) using WITS Bayesian tracking algorithm with constrains. The wireless adapter used was D-Link AirPlus DWL-G650. 7 access points were installed. AP1, AP2 and AP4 were on the ground floor, AP0, AP3, AP5 and AP6 were in the basement. After the RSS radio map was built, the calibrated locations were traversed with several seconds stop at each location, which reached an average error distance of 2.28 meter. The path marked on Figure 10 was traversed slowly without stop, which reached an average error distance of 3.48 meter. Figure 11 illustrates the accuracy and precision. Fig. 10 Map of ground floor of Computing Center Fig. 11 Bayesian tracking on the ground floor
Wireless Indoor Tracking System (WITS) 175 6 Discussion Signal strength In WITS, if the signal strength of some access point is not detected, the default value assigned is -100dBm, which means no signal. However, the case exists that the signal strength of some access point is strong enough but not detected during some moment at some locations. In this case, using default value -100dBm will result in inaccuracy for positioning. To solve the problem, WITS uses only the signal strength which is bigger than -100dBm, i.e. the really detected signal strength values, to match the radio map. Orientation The orientation of the wireless adapter is important. The received signal strength differs when the wireless adapter faces different orientations [Zho04]. It is believed that incorporating the orientation into the system will improve the accuracy. However, getting the orientation information automatically is absolutely non-trivial. In WITS, the user can input orientation manually or choose not to use orientation information. All the previously mentioned experiments did not use orientation information. History based and non-history based algorithm History based algorithm makes use of history information and estimates the locations more accurately and stably. However, just because it uses history information, it needs more time to come to the correct new estimation when the user walks to a new location, while the non-history based algorithm can come to the new estimation more promptly. Deployment To successfully deploy a positioning or tracking system based on 802.11 WLAN, some aspects must be considered and planned carefully. The number of access points is important. At least 3 access points are required. 5-6 access points are adequate. More access points do not help much. The locations of access points are important too. They should be placed strategically. It does not matter whether they are in the same channel. The distance between two adjacent calibrated locations should not be too large. 1 to 2 meter is fine for indoor applications. Every location should have enough calibration samples (e.g. 200 to 300 samples). Recording signal strength in all the four orientations will give better result.
176 Give denser calibration locations and more samples to the areas which may be confused with other areas. Walk slowly and even stop at the unknown location for a few seconds for a better accuracy. Walking more quickly will normally reduce the accuracy. 7 Conclusions and future work In the paper, a WLAN-based indoor tracking system is introduced. The system works in client-server mode, and uses history based algorithm to estimate the locations of the mobile devices. Layout of the building and Bluetooth are incorporated to improve the accuracy. In the experiments carried out, the system could achieve an average error distance of around 1.5 meter for temporarily static devices, and an average error distance of around 3 meter for constantly moving devices. From the experiments of WITS, it is found out that the more quickly the user walks, the less accurate the tracking system is. Therefore, real time tracking with the user walking continuously will be researched next. Another problem is that the signal strength received by different wireless adapters might be different [Zho04]. The users may use different kinds of wireless adapters. It is impractical to set up different RSS radio maps for different wireless adapters. How to correlate different wireless adapters is a research topic too. Based on the tracking system, a navigation system will be developed for the University of Freiburg in the near future. 8 Acknowledgement I would like to give my great appreciation to Prof. Dr. Gerhard Schneider in the University of Freiburg in Germany for his supervision. Thank Mr. Dirk von Suchodoletz in the University of Freiburg for his constant help. The staff of the Computing Center of the University of Freiburg is appreciated for their kind help. This research work was sponsored by MFG (Medien- und Filmgesellschaft Baden-Wuerttemberg) in Germany. Literatur [Bah00a] P. Bahl, V. N. Padmanabhan: RADAR: An In-Building RF-Based Location and Tracking Systems. In IEEE INFOCOM 2000. Tel-Aviv, Israel. 2000 [Bah00b] P. Bahl, V. N. Padmanabhan, A. Balachandran: Enhancements to the RADAR User Location and Tracking System. Microsoft Research: Redmond, WA. 2000 [Gri02] W. G. Griswold, R. Boyer, et al.: ActiveCampus Sustaining Educational Communities through Mobile Technology. University of California, San Diego: La Jolla. P. 19. 2002 [Kae05] K. Kaemarungsi: Design of Indoor Positioning Systems Based on Location Fingerprinting Technique. Doctoral dissertation, University of Pittsburgh. 2005
Wireless Indoor Tracking System (WITS) 177 [Kar] http://www.karl-steinbuch-stipendium.de [Kru04] J. Krumm, E. Horvitz: LOCADIO: Inferring Motion and Location from Wi-Fi Signal Strengths. Proceedings of Mobiquitous 2004, First Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services, pp. 4-14. August 22-26, 2004, Boston, MA, USA [Lad02] A. M. Ladd, K. E. Bekris, et al.: Robotics-based Location Sensing using Wireless Ethernet. In 8th International Conference on Mobile Computing and Networking. Atlanta, GA, USA. 2002 [Mfg] http://www.mfg.de [You03] M. Youssef, A. Agrawal, A. U. Shankar: WLAN location determination via clustering and probability distributions. In Proceedings of IEEE PerCom 03, Fort Worth, TX, Mar. 2003 [Zho04] : Architecture and Implementation of Indoor Wireless Positioning System (RZ-IWPS). Master thesis, University of Freiburg, Germany. 2004 [Zho05] : Final report of Karl-Steinbuch-Scholarship project: Wireless Indoor Tracking System (WITS). Germany. 2005 [Eka] http://www.ekahau.com [Wra] http://sysnet.ucsd.edu/pawn/wrapi/