Anda di halaman 1dari 88

Accuracy Improvement of WLAN Based Position Sensing

Freie wissenschaftliche Arbeit zur Erlangung des Grades Diplom-Ingenieur

an der Technischen Universitt Berlin

Institut fr Wirtschaftsinformatik Fachgebiet Systemanalyse und EDV Prof. Dr. Hermann Krallmann

Vorgelegt von: Studiengang: Matrikelnummer: Adresse: E-Mail: Betreuer: Assistierender Betreuer: Abgabedatum:

Stefan Brning Wirtschaftsingenieurwesen 199375 Bamberger Str. 28 10779 Berlin stefan.bruening@gmail.com Prof. Dr. Hermann Krallmann M.A. Vladimir Stantchev 24. August 2006

Abstract

Abstract
WLAN based position sensing achieves accuracy of a few metres with acceptable calibration effort. To improve accuracy extensive measurements are necessary. This thesis presents an approach to position sensing that provides a compromise of setup effort and achievable accuracy. To develop a basic understanding existing WLAN position sensing systems are analysed and compared. Then the possibilities to enhance WLAN position sensing by combining it with other networking technologies as well as opportunities to improve the process by using WLAN only are examined. Based on the result of the analysis the newly developed Two Level Position Weighting algorithm is able to incorporate different types of information into the position sensing process. To test the algorithm it is implemented for the Windows CE client of the MagicMap system. In order to allow client based position sensing a new GUI and a standardised interface for algorithms was developed. In first evaluations the algorithm achieved an average accuracy between 5.91m and 6.70m depending on the PDA used. Suggestions for further improvements are made as the algorithm is still in a very early stage.

Table of Contents

Table of Contents
Abstract ....................................................................................................................... I List of Figures ............................................................................................................ V List of Abbreviations................................................................................................ VII 1. 2. Introduction ........................................................................................................ 1 Problem Statement............................................................................................. 2 2.1. 2.2. 3. Research Plan .............................................................................................. 3 Approach ...................................................................................................... 3

Radio Wave Based Position Sensing................................................................ 4 3.1. Characteristics of Radio Waves .................................................................... 4 Ideal Radio Signal Propagation ............................................................. 5 Radio Wave Attenuation........................................................................ 5 Propagation Models .............................................................................. 6 Use of Models ....................................................................................... 7 Cell of Origin (COO) .............................................................................. 7 Angle of Arrival (AOA) ........................................................................... 8 Time of Arrival (TOA) ............................................................................ 9 Time Difference of Arrival (TDOA)......................................................... 9 Receiver Signal Strength (RSS) ............................................................ 9 3.1.1. 3.1.2. 3.1.3. 3.1.4. 3.2. 3.2.1. 3.2.2. 3.2.3. 3.2.4. 3.2.5.

Methods for Position Sensing ....................................................................... 7

4.

WLAN Based Position Sensing ........................................................................10 4.1. Wireless Local Area Networks .....................................................................10 The WLAN Standards ..........................................................................11 Difficulties Using 2.4 GHz.....................................................................12 4.1.1. 4.1.2. 4.2. 4.3.

Using WLAN for Position Sensing................................................................13 Classes of Algorithms ..................................................................................14 Empirical Signal Strength Based Algorithms ........................................14 Propagation Model Based Algorithms ..................................................14 Probabilistic Algorithms ........................................................................15 Collaborative Algorithms ......................................................................15 Horus System ......................................................................................16 RADAR System....................................................................................16 LEASE System.....................................................................................17
II

4.3.1. 4.3.2. 4.3.3. 4.3.4. 4.4. 4.4.1. 4.4.2. 4.4.3.

WLAN Based Position Sensing Systems .....................................................15

Table of Contents

4.4.4. 4.4.5. 4.4.6. 4.5. 4.5.1. 4.5.2. 4.5.3. 4.5.4. 4.5.5. 4.6. 5.

MagicMap ............................................................................................17 MoteTrack ............................................................................................18 Place Lab .............................................................................................18 Bayesian Inference Engine ..................................................................19 Markov Localisation .............................................................................19 Centre of Mass.....................................................................................19 Time Averaging ....................................................................................20 Perturbation Technique ........................................................................20

Smoothing Techniques ................................................................................19

Evaluation of Algorithms ..............................................................................20

Accuracy Improvement by Combining WLAN with Other Network Technologies .....................................................................................................21 5.1. 5.2. 5.3. 5.4. 5.5. 5.6. 5.7. 5.8. Bluetooth .....................................................................................................21 RFID ............................................................................................................22 ZigBee .........................................................................................................23 RuBee..........................................................................................................24 GSM ............................................................................................................24 WiMax..........................................................................................................25 GPS.............................................................................................................25 Potential Accuracy Improvements................................................................26

6.

Accuracy Improvements Using WLAN Only....................................................27 6.1. Getting More Accurate Data.........................................................................27 Sniffers.................................................................................................27 Access Point Sniffers ...........................................................................28 Peer-to-Peer Signal Strength ...............................................................28 Radio Map Based.................................................................................28 Propagation Model Based ....................................................................29 Collaborative Position Sensing.............................................................29 Automatic Radio Map Creation.............................................................29 Detection of Wrong System Parameters...............................................30 Indoor Position Sensing .......................................................................30 Outdoor Position Sensing.....................................................................31 6.1.1. 6.1.2. 6.1.3. 6.2. 6.2.1. 6.2.2. 6.2.3. 6.3. 6.3.1. 6.3.2. 6.4. 6.4.1. 6.4.2. 6.5.

Algorithm Improvement................................................................................28

Self-Adjusting Systems ................................................................................29

Environmental Influence on WLAN Position Sensing ...................................30

Decision for Developing an Algorithm ..........................................................31

7.

Two Level Position Weighting Algorithm ........................................................32


III

Table of Contents

7.1. 7.2. 7.3. 7.4.

Requirements ..............................................................................................32 Basic Principle .............................................................................................33 Propagation Model.......................................................................................33 Weighting of a State.....................................................................................34 Distance Information ............................................................................34 Client Movement ..................................................................................36 Using Client Movement as Filter...........................................................36 Level One: Intersection Points..............................................................37 Level Two: Refine Result .....................................................................39

7.4.1. 7.4.2. 7.4.3. 7.5. 7.5.1. 7.5.2. 7.6. 7.7. 8.

Finding the Highest Weighting .....................................................................36

Smoothing the Results.................................................................................40 Assessment of Algorithm Development........................................................40

Case Study.........................................................................................................41 8.1. 8.2. 8.3. 8.4. Update to .NET CF 2.0 ................................................................................41 New Features ..............................................................................................42 Overview......................................................................................................42 Visual Studio Projects ..................................................................................43 NodeModel...........................................................................................43 Controls................................................................................................49 MagicMapCE .......................................................................................51 Algorithms ............................................................................................55 Installer ................................................................................................60

8.4.1. 8.4.2. 8.4.3. 8.4.4. 8.4.5. 8.5. 9.

Case Study Conclusion................................................................................60

Evaluation Tests ................................................................................................61 9.1. 9.2. 9.3. Test Environment.........................................................................................61 Tests Performed ..........................................................................................62 Test Conclusion ...........................................................................................64 CE Client..............................................................................................64 Algorithm..............................................................................................64 Devices ................................................................................................65

9.3.1. 9.3.2. 9.3.3.

10. Conclusion and Outlook ...................................................................................65 References.................................................................................................................68 Appendix A: Appendix B: Appendix C: Propagation Model Parameters.....................................................73 Evaluation Test Result Tables.......................................................75 Zusammenfassung in deutscher Sprache....................................77
IV

List of Figures

List of Figures
Figure 3-1: Cell of Origin Method.................................................................................... 8 Figure 3-2: Angle of Arrival Method ............................................................................... 8 Figure 3-3: Time of Arrival Method................................................................................. 9 Figure 3-4: Receiver Signal Strength Method ................................................................ 10 Figure 4-1: Expected Signal Propagation ....................................................................... 13 Figure 4-2: Empirical Signal Propagation ...................................................................... 13 Figure 5-1: Comparison of Standard Technologies........................................................ 26 Figure 7-1: Weighting Deviation for r=10 and r=20 ..................................................... 35 Figure 7-2: Weighting for a Circle with Radius r=10 .................................................... 35 Figure 7-3: Intersection of Circles .................................................................................. 37 Figure 7-4: Points and Distances at the Intersection....................................................... 38 Figure 7-5: Angles at the Intersection............................................................................. 39 Figure 8-1: Client Object Structure ................................................................................ 43 Figure 8-2: NodeModel Class Diagram.......................................................................... 44 Figure 8-3: NodeModel Class......................................................................................... 45 Figure 8-4: Node Class ................................................................................................... 46 Figure 8-5: NodeDictionary Class .................................................................................. 47 Figure 8-6: AccessPointNode Class ............................................................................... 47 Figure 8-7: AccessPointSeerNode Class ........................................................................ 48 Figure 8-8: ClientNode Class ......................................................................................... 49 Figure 8-9: AccessPointEdge Class ................................................................................ 49 Figure 8-10: ImageScroller Class ................................................................................... 50 Figure 8-11: MoveEventHandler, MoveEventArgs, and ZoomEventArgs Classes ....... 50 Figure 8-12: MagicMapCE Main Screen........................................................................ 52 Figure 8-13: MagicMapCE Node Tree View ................................................................. 52
V

List of Figures

Figure 8-14: MagicMapTreeNode Class ........................................................................ 52 Figure 8-15: AlgorithmSelectorView ............................................................................. 53 Figure 8-16: MagicMapCE Algorithm Selection Screen ............................................... 53 Figure 8-17: MagicMapCE Node Filtering Screen......................................................... 53 Figure 8-18: MapControl Class ...................................................................................... 54 Figure 8-19: NodeControl Class ..................................................................................... 55 Figure 8-20: Algorithms Class Diagram......................................................................... 56 Figure 8-21: NodeDictionaryReducerBase Class ........................................................... 57 Figure 8-22: AlgorithmBase Class ................................................................................. 58 Figure 8-23: Two Level Position Weighting Algorithm Settings Screen....................... 59 Figure 9-1: Floor Plan of Test Environment................................................................... 62 Figure 9-2: Positioning Error Dell Axim X5 .................................................................. 63 Figure 9-3: Positioning Error Dell Axim x51v............................................................... 63

VI

List of Abbreviations

List of Abbreviations
AOA AP CF COO DECT EDR FAF GPS GSM GUI IEEE IP ISO LAN LBS MAC NDIS NNSS OSI PDA RFID RSS RSSI RTLS SSID Angle Of Arrival Access Point Compact Framework Cell of Origin Digital Enhanced Cordless Telecommunications Enhanced Data Rate Floor Attenuation Factor Global Positioning System Global System for Mobile Communications Graphical User Interface Institute of Electrical And Electronics Engineers Internet Protocol International Standard Organization Local Area Network Location Based Service Media Access Control Network Device Interface Specification Nearest Neighbour(s) in Signal Space Open System Interconnect Personal Digital Assistant Radio Frequency Identification Receiver Signal Strength Receiver Signal Strength Indicator Real-Time Location System Service Set Identifier
VII

List of Abbreviations

TCP TDOA TOA UMTS WAF WIFI WLAN WPAN

Transport Control Protocol Time Difference of Arrival Time of Arrival Universal Mobile Telecommunications System Wall Attenuation Factor Wireless Fidelity Wireless Local Area Network Wireless Personal Area Network

VIII

1. Introduction

1. Introduction
Mobile computing has grown from a niche technology to global business. Populated areas are nearly completely covered with wireless networks. At the same time mobile devices are getting constantly cheaper and more powerful. The implemented functionality increases with each new device generation but services provided are still limited to communication or device specific functions. Location aware applications that require the position of the mobile device are starting to break through but are still limited to a few services. Mobile phone users can track their phone or define a limited area as their home zone and pay wired equivalent rates. These services do not exploit the potential of location based services (LBS). A location based service is a wireless-IP service that uses geographic information to serve a mobile user. Any application service that exploits the position of a mobile terminal (Open Geospatial Consortium (OGC) 2006). While the market for mobile communication is nearly saturated and profit is declining experts are still forecasting growth for location based services (Kollmann, T. 2006). To provide location based services the current user position is required. A standardised positioning component for outdoor position sensing is already available but an equivalent indoor system however is still missing: GPS works well with an accuracy of a few metres in rural areas but is ineffective in indoor and urban areas with tall buildings shielding the satellite signals. Ironically, this is where people spend most of their time. Therefore, a system for downtown and indoor areas is required. The proprietary solutions available are working well but need specialised hardware. An attempt to solve the position sensing problem using standard hardware is to use wireless LANs. WLAN technology is widespread. Almost every recent laptop or PDA is equipped with WLAN hardware. WLAN access points are set up all over the cities by private households or companies offering connectivity in hot spots. A second possible application field for position sensing is logistics. For example, the ability to locate a truck on a highway increases information about the delivering process. The ability to track asset in warehouse management using position sensing does facilitate goods handling. WLAN may provide a solution for these applications as well.

2. Problem Statement

As previous research shows, WLAN hardware can be used to locate a device in indoor and urban areas (Bahl, P. & Padmanabhan, V. N. 2000; Cheng, Y.-C., Chawathe, Y. & Krumm, J. 2005; Ibach, P., Hbner, T. & Schweigert, M. 2004; Youssef, M. & Agrawala, A. 2005). It is cheap, ubiquitous, and software only solutions are available.

2. Problem Statement
Over the past few years WLAN based position sensing has been investigated in detail. Several research projects at universities (Ibach, P., Hbner, T. & Schweigert, M. 2004; Youssef, M. & Agrawala, A. 2005) and private businesses (Bahl, P. & Padmanabhan, V. N. 2000; Ekahau 2006) developed position sensing systems. Today, WLAN based systems are reliable and provide sufficient accuracy for many different applications. Nevertheless, they have not yet become a standard technology to provide positioning information for location based services. The required accuracy and coverage varies depending on the use intended: Locating the next restaurant merely requires the current position in the streets. Finding the closest printer to the laptop user needs the room number. Guiding forklifts in a warehouse requires accuracy of a few metres. WLAN based position sensing systems provide either low accuracy or are still complicated to set up. The simplest method is cell based. These systems need the lowest initial effort but also provide the lowest accuracy. Systems with high accuracy need time consuming initial setups. Usually, a radio map has to be created and, depending on the area to cover, several hundred reference measurements have to be taken. This calibration needs to be repeated each time the environment of the position sensing system changes. Systems based on signal propagation models provide a compromise between initial effort and accuracy. Already with very little initial information the position estimates are acceptable. Only a few access point positions or reference measurements are required to provide position sensing over a wide area. Another approach to reduce the initial effort is to share the positioning information with a community. Especially in public areas the access point positions do not have to be determined by every user but only by a single one who provides this information to the others.

2. Problem Statement

The limitation of position sensing clients to laptops is another problem. Today, more and more PDAs are equipped with WLAN hardware but existing client software for PDAs is rare and supports only basic functionality. PDAs are more likely to be carried around and would benefit much more from positioning information. Usually, a laptop is located at a fixed position (e.g. on a desk) and not moved around while operating. Only initial estimation of the position at boot up is required.

2.1.

Research Plan

The aim of this thesis is to improve the achieved accuracy of WLAN based position sensing by developing a new algorithm. This algorithm is to be implemented on a PDA running Windows Mobile. The client to be developed has to be easy to use to reach a broad community of users. The complexity of signal strength based position sensing has to be hidden behind a simple interface for normal users. For more advanced users the interface should have the possibility to provide additional information and to fine tune the system. The MagicMap system (MagicMap 2006) developed at the Humboldt Universitt Berlin provides a position sensing system with low initial calibration effort, an easy to use interface, and positioning information sharing in the community. Its algorithm is based on a propagation model and uses a JAVA framework to compute the client position. The JAVA client is working very well but the client for Windows Mobile PDAs is in a very early state of development. The existing client for PDAs can only measure signal strengths and deliver them to the server. The positions of other clients, access points, or reference measurements are provided by the server and displayed on the client. As the algorithm for position sensing is based on JAVA there is no computation on the PDA at the moment. The functionality of this client is to be enhanced and the developed algorithm to be implemented. The achieved improvements are to be documented and evaluated.

2.2.

Approach

To give a survey of the research field this thesis starts with a general description of position sensing using radio waves in chapter 3. Then, in chapter 4, existing systems for WLAN based position sensing and the algorithms they use are described and evaluated.

3. Radio Wave Based Position Sensing

The next step is to identify possible accuracy improvements for position sensing. First, the potential of combining different network technologies with WLAN is examined. Second, the possibilities using WLAN standard hardware only to increase the accuracy are assessed in chapter 6. In order to improve accuracy the experiences with the previously developed systems will be evaluated and the most promising approach will be chosen. Based on existing research the approach of this thesis is to develop an algorithm that incorporates the advantages of the existing systems into a new one. The developed Two Level Position Weighting Algorithm is presented in chapter 7. To prove the effectivity and efficiency of the algorithm it is implemented in a case study. As defined by the thesis goals, the case study is the implementation of a client running on Windows CE for the MagicMap system. The implementation is documented in chapter 8. To evaluate the improvements the CE client and the new algorithm are tested. The test results are provided in chapter 9. Finally, a conclusion and an outlook are given.

3. Radio Wave Based Position Sensing


Electromagnetic waves at frequencies that can be generated using alternating current are called radio waves. Using these radio waves to sense a clients position provides some advantages as they are invisible and can pervade solid material. It has some drawbacks, for example signals are altered by absorption or interference. In the following section the characteristics of radio waves are explained. Further, the different methods possible to detect a clients position are presented and their problems and advantages are described.

3.1.

Characteristics of Radio Waves

The spectrum of radio waves ranges from wavelengths of about one metre to wavelengths of about ten kilometres. Their propagation is influenced by many factors. The received signal strength mainly depends on the emitted energy, the frequency, the distance to the sender, the angle of antenna to receiver, the sensitivity of the receiver, and the attenuation by the medium between sender and receiver.

3. Radio Wave Based Position Sensing

3.1.1.

Ideal Radio Signal Propagation

The received signal strength is physically called energy flux density. It specifies the energy per time unit which is transported through an area unit. The general equation for the energy flux density (S) is
S = 0 c E2
(1)

with 0 being permittivity, c being the speed of light and E being the electric field strength (Demtrder, W. 1999). For 1 m of a spherical surface in distance r around the dipole in an angle of against the dipole axis S is specified as
S=
2 q 2 d 0 4 sin 2 sin 2 ( (t r / c) ) . 16 2 0 c 3 r 2

(2)

If the sender is not changed the following factors remain constant: charge q, amplitude
d0, frequency , permittivity 0 , and speed of light c. As the sender is transmitting

continuously the received energy is not declining over the time. For averaging purposes the time specifying factor sin 2 ( (t r / c) ) is therefore taken as a constant factor as well. Without attenuation the received signal strength is related to the distance to the sender by 1/r and to the angle to the antenna by sin 2 . All other terms are defined as constant
factor k, which simplifies the relation between radius and received power P to

P=k

sin 2 . r2

(3)

Expressed in dB equation (3) is

P[dB ] = 10 log(k ) + 10 log(sin 2 ) 10 2 log(r ) .

(4)

3.1.2.

Radio Wave Attenuation

The attenuation of radio waves is highly complex. It is influenced by the material characteristics of obstacles in the position sensing environment. In a typical environment a variety of obstacles exists: walls, floors, furniture, and humans have very different attenuation characteristics compared to normal air. Radio waves are either distracted, reflected, or they interfere. Each surface they cross and each edge they pass influences the signal strength measured at the receiver.
5

3. Radio Wave Based Position Sensing

Therefore the attenuation is not determined theoretically but empirically. The most commonly used model is described in the next section.

3.1.3.

Propagation Models

Much research has been undertaken in the field of models of radio propagation. Hashemi (1993b) gives a survey of models and test results using their impulse response. The most common model used in the area of signal strength based position sensing has been developed by Seidel and Rappaport (1992). It is based on the assumption that the mean path loss increases exponentially with distance:

d PL(d ) d 0

(5)

with d being the distance between sender and receiver, d0 a reference distance, and n the mean path loss exponent. Expressed in dB this is
PL(d )[dB ] = PL(d 0 )[dB ] + 10 n log( d ). d0
(6)

For free space they determined n = 2, which corresponds to the results of the theoretic derivation in 3.1.1. Seidel and Rappaport found path loss to be log-normal distributed (compare Hashemi, H. 1993a) and introduced the random variable X: This model has been used later by Ladd et al. (2002, p. 10).

d PL(d ) = PL(d 0 ) + 10 n log d 0

+ .

(7)

Seidel and Rappaport introduced several attenuation factors for floors, soft obstacles, and concrete walls, which added attenuation for each corresponding obstacle the signal pervaded. They all have the form of PL(o ) = nO OAF
(8)

with o being the kind of obstacle, nO being the number of obstacles between sender and receiver, and OAF being the Obstacle Attenuation Factor. Bahl and Padmanabhan (2000) used a derived model for their RADAR (see section 4.4.2) system. They determined the Wall Attenuation Factor (WAF) empirically as well as the number of obstacles C up to which the number of walls (nW) makes a difference.
6

3. Radio Wave Based Position Sensing

d PL(d ) = PL(d 0 ) + 10 n log d 0 d PL(d ) = PL(d 0 ) + 10 n log d 0

+ nW WAF , nW < C
(9)

+ C WAF , nW C

3.1.4.

Use of Models

Radio wave attenuation is a complex process. In a real world environment the effort to create an accurate model that reflects all aspects is extremely high. The simplification of this process by the models described facilitates the prediction of signal strength and allows the used algorithms to compute positions in a limited amount of time. Research proved that the loss in accuracy is low compared to the achieved reduction of complexity.

3.2.
3.2.1.

Methods for Position Sensing


Cell of Origin (COO)

The cell of origin (COO) method uses the sector or radio cell to determine a mobile terminals position. For this reason the radio network needs to be divided into sectors that are served by different senders or at least different directed antennas. The mobile terminal is estimated somewhere in the sector of the strongest sender. Therefore, accuracy is depending on sector size. In figure 3-1 the client is placed at the position of access point A. Accuracy also depends on the handover strategy of the wireless network, i.e. is the currently associated access point or base station really the strongest (nearest) sender? In wireless LAN 802.11 networks the handover is not specified by the standards. Intel adapters use a method based on the relative signal strength difference with bound and hysteresis (Dornbusch, P. & Zndt, M. 2002). There is a probability that the currently associated access point is not the strongest sender and therefore additional inaccuracy is brought into the method.

3. Radio Wave Based Position Sensing

Access Point C

Client Access Point B Access Point A

Figure 3-1: Cell of Origin Method

3.2.2.

Angle of Arrival (AOA)

The Angle of Arrival (AOA) method requires a receiver that is capable of determining the direction to the signal origin. Two angles of two different receivers are needed to determine the mobile terminal in a two dimensional space. In figure 3-2 the angle of access point A is dashed because it is not needed to locate the client.

Access Point C

Client

Access Point A
Figure 3-2: Angle of Arrival Method

Access Point B

To determine the angle complex antennas are needed. Either multiple antennas are used to determine the angle or moving antennas (as radar stations) are required. Thus, the angle determination has to be done at the base station as the client can change its orientation as well.

3. Radio Wave Based Position Sensing

3.2.3.

Time of Arrival (TOA)

The Time of Arrival (TOA) method is based on the determination of the time difference the signal needs to travel from the emitter to the receiver. Radio signals travel at the speed of light (c = 299,792,458m/s). Therefore, a clock accuracy of better than 3.3ns is required to achieve a resolution of one metre. Clock synchronisation is also essential since accuracy depends on a consistent time in all senders and receivers. The time travelled is transformed into the distance between sender and receiver. By triangulation of at least three distances to known positions of access points it is possible to determine the mobile terminals location in a two dimensional space. In the figure below each dot in the dotted lines represents one unit of time. By multiplying this time with the speed of light the distance can be estimated and the position can be computed using trilateration. Access Point C

Client Access Point B Access Point A


Figure 3-3: Time of Arrival Method

3.2.4.

Time Difference of Arrival (TDOA)

The time difference of arrival (TDOA) method eliminates the need for a synchronised clock in the receiver. Not the total time travelled is used but the difference with which each signal reaches the receiver. Therefore, a fourth sender is needed for time determination to calculate the position of a client in a two dimensional space.

3.2.5.

Receiver Signal Strength (RSS)

Position sensing using the signal strength is based on the attenuation of the signal depending on the distance to the emitter. In general, attenuation increases with distance but it also strongly depends on the characteristics of the material the signal pervades (air, walls, water). Reflections and interferences also influence the signal strength

4. WLAN Based Position Sensing

detected. The signal strengths are then transformed into distances and trilateration is used to determine the mobile terminals position. Access Point C

Client Access Point B Access Point A


Figure 3-4: Receiver Signal Strength Method

4. WLAN Based Position Sensing


This section describes the possibilities for position sensing using WLAN. The different standards for WLAN and the common position sensing methods are presented. The possible methods and algorithms are classified. Afterwards, a survey of existing WLAN based position sensing systems is given. The best known existing systems, the algorithms they use, and their characteristics are described in greater detail. Some additional techniques, which help improve the accuracy of main position sensing algorithms, are explained. Finally, some frameworks to analyse the different systems are presented and the used algorithms are compared and evaluated.

4.1.

Wireless Local Area Networks

Wireless local area networks (WLAN) have been built to transfer data among computers. There were no thoughts on trying to sense the position of the wireless terminals during the specification of the standards. Nevertheless, because hardware is cheap and commonly available people are trying to abuse the WLAN hardware to sense their position. Using WLAN 802.11 for position sensing provides some advantages:

As mentioned above the hardware is cheap and commonly available. The range available is sufficient for common use cases. The number of publicly available access points, which may be included in the system, increases daily. The frequency spectrum is unlicensed and therefore free of fees.
10

4. WLAN Based Position Sensing

4.1.1.

The WLAN Standards

The standards WLANs have been specified by the Institute of Electrical and Electronics Engineers (IEEE 2006). The first ones were released in 1999 and covered the Medium Access Control (MAC) and Physical (PHY) layers of the ISO/OSI model. Several further specifications have been released since then. The standard 802.11 itself is rather unspecific and leaves too much space for manufacturer-specific modifications. Several amendments specifying more details, especially of the physical layer, made the standard become a success. Today the most relevant standards for WLAN are (in order of release):

802.11b WiFi
This is the most common WLAN standard. It is also known as WiFi (wireless fidelity). The data rate is specified with 11Mbits. Eleven channels are supported in a frequency range from 2412MHz to 2462MHz. This frequency spectrum is unlicensed in most countries. Only three channels may be used independently (lowest, middle, and highest one) because each channel needs a bandwidth of 25MHz (IEEE Standards Association 1999b, 18.4.6.2). The range is about 30m indoors.

802.11a WLAN
This standard uses the frequency range from 5150MHz to 5350MHz and 5725MHz to 5825MHz. It reaches up to 54MBit/s and allows 12 independently usable channels. It is not widespread because of regulatory limitations. In Germany only the lowest four channels are allowed at a maximum transmitting power of 30mW (IEEE Standards Association 1999a, 17.8.3.3). The range is only about 10m indoors.

802.11g WLAN
Most devices sold today support this standard. It uses the same frequencies as 802.11b with the same limitations but supports data rates up to 54Mbit/s. Both standards can coexist but pure 802.11g networks allow higher data rates (IEEE Standards Association 2003a, 18.4.6.2).

802.11n MIMO
The 802.11n is the forthcoming amendment to the 802.11 wireless LAN standards. It promises higher data rates and longer range but is still under development. The current draft 1.0 failed to be forwarded for sponsor ballot and is due for final approval not before July 2007. Nevertheless, several manufacturers are already selling products

11

4. WLAN Based Position Sensing

compliant to the 802.11n draft, for example Netgear with their RangeMAX product series and Linksys with their SRX product series. The physical layer is based on the multiple-input, multiple-output (MIMO) technology which uses a multiple-antennas principle to increase transmission efficiency. The reception is increased by using signal post processing. Fading of the signal is avoided by using spatial diversity of reception. Sending efficiency is increased by beamforming: the main lobe of the antennas is directed at the receiver. This technology will increase the range to about 50m. By using additional frequency bands the maximal available data rate will be increased to about 540Mbit/s. Senders or receivers using this technology will not be able to be part in a WLAN position sensing environment developed so far due to the automatic focusing of sender power. Current systems need a constant sender power to sense their position.

4.1.2.

Difficulties Using 2.4 GHz

The WLAN standards 802.11b and 802.11g are using the unlicensed spectrum at 2.4GHz. This frequency band is free to use for industrial, scientific, and medical purposes (ISM band). Other technologies using the 2.4GHz band may disturb WLAN signals, e.g. Bluetooth (see 5.1), Zigbee (see 5.2), some cordless telephones (not DECT), and microwave ovens working at 2.455GHz. Water absorbs radio waves at 2.4GHz very well. That causes a rather high influence of humans, plants, and all water containing objects on signal strength. Water has a high permittivity at 2.4GHz (77 at 2.54GHz). The expected signal propagation and empirically sensed signal propagation differ extremely (compare figure 4-1 and figure 4-2). The sensed signals are much distorted and do not show a continuous attenuation as predicted.

12

4. WLAN Based Position Sensing

Figure 4-1: Expected Signal Propagation

Figure 4-2: Empirical Signal Propagation1

4.2.

Using WLAN for Position Sensing

Accuracy of cell based position sensing is depending on sector size. As shown above WLAN access points cover an area with a radius of up to 30m. Time of arrival based technologies are very accurate like RADAR or GPS but need precise clocks. Standard 802.11 WLAN hardware does not provide the required clock accuracy, which makes this method not applicable. Using the signal strength is the most common method for position sensing based on standard WLAN 802.11 hardware. The Received Signal Strength Indication (RSSI) is specified in the standard and provided by all WLAN hardware. Anomalies in the propagation of the signal make this method quite inaccurate but by using optimised algorithms researchers are trying to overcome these shortcomings. The signal strength may either be measured at the client whose position is to be determined (Bahl, P. & Padmanabhan, V. N. 2000; Youssef, M. & Agrawala, A. 2005) or the clients signal strength can be sensed by stationary sensors. These stationary sensors are called sniffers (Krishnan, P. et al. 2004).

Signal strengths measured at OECON, Braunschweig, map built by Florian Lederer and Andreas Wei 13

4. WLAN Based Position Sensing

4.3.

Classes of Algorithms

Algorithms based on signal strength can be based on empirical data or on propagation models. The result can be either deterministic or a probability distribution of position. Algorithms using information from other clients are collaborative.

4.3.1.

Empirical Signal Strength Based Algorithms

Empirical signal strength based algorithms compare the actual sensed signal strengths with previously measured ones. While measuring the signal strengths a dataset is generated consisting of access points described by MAC address or SSID and corresponding signal strength. The data set is called a signal strength vector. Initially, the user has to measure signal strengths at all possible positions. These measurements are called reference measurements, calibration points, or fingerprints. The database of positions with corresponding signal strengths is called a radio map. The system then compares the saved signal strength vectors with the one currently sensed. Simple algorithms estimate the mobile terminal at the position of the best match. Better algorithms evaluate the best matches and place the client at the centre or use a similar logic.

4.3.2.

Propagation Model Based Algorithms

Propagation model based methods are trying to predict the signal strength vector in a position by using a model for the propagation of the signal. The distance to the emitter is used to forecast the expected signal strength. Usually, an averaged attenuation factor is used as well. More advanced models use different attenuation factors for different types of structure between sender and receiver, for example concrete walls or soft obstacles. A random variable may be used to express the uncertainty and inaccuracy of the model. Propagation models can be used to estimate the distance between sender and receiver directly or to generate a radio map. This reduces the workload for creating the radio map manually and works automatically in case the radio map needs to be rebuilt due to changed infrastructure. Models can either return a single value for the predicted signal strength or a probability distribution. Models returning a single value are called deterministic. Models returning a probability distribution are called statistical.
14

4. WLAN Based Position Sensing

4.3.3.

Probabilistic Algorithms

Probabilistic algorithms are trying to cope with the inaccuracy of RSS based position sensing by using stochastic methods. The signal strength vector is taken as result of a stochastic experiment that can be predicted. The position itself is taken as the conditional probability with the previous position as prior probability. If no probabilistic functions are used the algorithm is called deterministic.

4.3.4.

Collaborative Algorithms

Algorithms using information delivered from other mobile terminals or clients follow a collaborative approach. This requires a method to exchange information among multiple clients. Collaborative algorithm can either provide previously gathered information, for example access point positions determined by other clients, or they provide information about the current position for example signal strength measured by another client.

4.4.

WLAN Based Position Sensing Systems

Many different systems have been developed to implement WLAN based position sensing. The best known ones are the Horus (4.4.1) and the RADAR (4.4.2) system. Other systems include:

The system developed by Li et al. (2006). The algorithm presented by Prasithsangaree., Krishnamurthy, and Chrysanthis (2002) which uses the k best matches of a radio map and then computes the centre as the estimated client position.

The system described by Saha et al. (2003) based on a radio map and using a neural network to sense the position.

A statistical model with detailed derivation by Tonteri (2001). The system by Madigan et al. that uses a Bayesian graphical model to sense the positioning of multiple clients simultaneously (Madigan, D. et al. 2005).

There are also several commercial solutions, e.g. the Ekahau Positioning Engine (Ekahau 2006). As the company does not release detailed information on their technology they are not included in this overview. Some selected systems are described in more detail in the following sections.
15

4. WLAN Based Position Sensing

4.4.1.

Horus System

The Horus system has been developed at the University of Maryland by Youssef et al. (Youssef, M. & Agrawala, A. 2005; Youssef, M. A., Agrawala, A. & Shankar, A. U. 2003). It uses probability distributions to reduce the disturbing effects of the noisy wireless channel and a clustering technique (Joint Clustering Technique) to reduce calculation load on the mobile terminal. The system is based on a radio map. To reduce computation load, the locations are clustered to a set of locations with corresponding signal strength distributions. To sense the clients position the system starts by estimating the most likely cluster the client is in by using the maximum likelihood method. To increase the accuracy of these discrete positions the centre of mass of the most likely location is determined. Furthermore, a time averaging of the physical location is created to smooth the results. For more information on these techniques see section 4.5. To handle small-scale variations the Horus system assumes a maximum user speed of two metres per second. If the change of location is above this threshold the system perturbs the received signal strength vector and assumes the position closest to the previous position In a test environment the Horus team reached an aberration of less than 86cm in test bed 1 and less than 132cm in test bed 2 in 90% their measurements.

4.4.2.

RADAR System

The RADAR system by Microsoft Research (Bahl, P. & Padmanabhan, V. N. 2000; Bahl, P., Padmanabhan, V. N. & Balachandran, A. 2000) is based on building a signal strength map first and sensing the mobile terminals position afterwards. Instead of using fixed WLAN access points and sensing their signal strength the RADAR system uses fixed computers equipped with a WLAN card, which sense the signal strength emitted by the mobile terminal. Besides the signal strength at a given location, it also recorded the direction the user is facing, because user orientation has a significant impact (up to 5dBm) on signal strength. To determine the user position they implemented a simple linear-time algorithm. It is called nearest neighbour(s) in signal space (NNSS). The algorithm calculates the distance in signal space (using the Euclidean distance measure) between the measured signal strength and known values of the radio map. Then it picks the position that
16

4. WLAN Based Position Sensing

minimises the distance. In a second step, the algorithm takes the n nearest neighbours and averages their positions. The median resolution of the RADAR system is about 2-3 metres.

4.4.3.

LEASE System

The LEASE system developed by Krishnan et al. (2004) measures the signal strength of mobile terminals using sniffers at previously defined positions that continuously observe the signal strength. In addition to the mobile terminals the authors deployed stationary emitters with well known positions. The measured signal strengths from these emitters reflect the structure of the environment as their signals are attenuated accordingly. Access points as another type of stationary emitter play a minor role in this system. The advantage of this system is the independence of the network infrastructure. Access points can be placed for optimal data transfer rates and the stationary emitters can be placed for optimal position sensing functionality. Furthermore, the system can detect wrong system parameters using multiple stationary sniffers and rerun the initial setup of the signal strength map. The need for specialised hardware is the biggest disadvantage of this system. Sniffers and stationary emitters have to be placed and set up in the position sensing area before the actual position sensing process.

4.4.4.

MagicMap

The MagicMap system has been developed at the chair of Prof. Malek in the department of computer science at the Humboldt Universitt Berlin (Ibach, P., Hbner, T. & Schweigert, M. 2004; Schweigert, M. & Hbner, T. 2005). It uses a propagation model based method. The sensed signal strengths are converted into distances to access points. MagicMap follows a collaborative approach. Clients exchange information on access point positions and reference measurements. MagicMap uses the SpringLayout of the Java Universal Network/Graph framework (JUNG 2006) to estimate the client position. Edge lengths between clients and access points are determined by MagicMap using the signal strength. JUNG then tries to place all nodes minimising the deviation of edge lengths. Reference measurements are taken

17

4. WLAN Based Position Sensing

into account using an averaged k-nearest-neighbours principle (Ibach, P., Stantchev, V. et al. 2005). MagicMap requires very little initial information. Some access points have to be placed at their map location by dragging them on the screen. Under dynamic conditions MagicMap then reaches an accuracy of five metres (Ibach, P., Schreiner, F. et al. 2005).

4.4.5.

MoteTrack

The focus of the MoteTrack system (Lorincz, K. & Welsh, M. 2005) lies more on making position sensing more stable than on making it more accurate. The authors moved the computing load from the back end server to the clients. The algorithm used is similar to the RADAR one: Taking samples from all possible client positions and then estimating the best match to the current detected signal. Finally, the geographic centroid of the k-nearest neighbours is taken as client position. Instead of using a fixed value for k, only a subset of the k-nearest neighbours is taken, which satisfies conditions of similarity. The MoteTrack system reaches an accuracy of 3m in 80% of all cases.

4.4.6.

Place Lab

Place Lab (Cheng, Y.-C., Chawathe, Y. & Krumm, J. 2005) is an attempt by Intel Research to realise metropolitan scale position sensing without GPS. During the setup phase signal strength data was collected in the area of interest by war driving: while driving along the streets in a car the signal strengths are recorded together with the corresponding coordinates estimated by a GPS receiver. In the position sensing phase this collected data is compared to the actually sensed signal strengths and the position is computed. The achieved accuracy varies from 13-20 metres in downtown areas up to 40 metres in suburban areas. The authors found that accuracy is depending less on the used algorithms but more on the number of access points in range. Although accuracy is dramatically lower than those reached by other systems presented in this thesis remarkably less time is required for the initial setup in relation to the covered area. That makes this technique useful for many purposes but not for the intended accuracy improvement of WLAN based position sensing in this thesis. Some internet communities already demonstrate and apply similar techniques (Herecast 2006; Plazes 2006)as do some commercial products (Skyhook Wireless 2006).

18

4. WLAN Based Position Sensing

4.5.

Smoothing Techniques

The techniques discussed in this chapter are used to increase the accuracy by smoothing the position. Either they try to improve the results by averaging the best estimates (Centre of Mass, Perturbation Technique) or take into account the limited movement of the mobile terminal (Bayesian Inference Engine, Markov Localisation, Time Averaging).

4.5.1.

Bayesian Inference Engine

Ladd et al. (Ladd, A. M. et al. 2002) propose a system based on a radio map. Instead of calculating the distance based on the signal strength they take the signal strength vector as an outcome of a random variable. Using Bayesians rules, they determine the conditional probability of being at a location with detected signal strength values as prior probability. Afterwards they smooth the result by applying the hidden Markov Chain to the last n results assuming a typical low speed for a laptop carrier.

4.5.2.

Markov Localisation

Wallbaum (2004) developed a system based on a radio wave propagation model similar to the one Bahl and Padmanabhan (2000) used for the RADAR system. In addition to the propagation model he developed a movement model for the mobile client. Using a Markov Chain he determined the probability of the computed position under the condition of the previous position. The conducted experiments showed that the proposed Markov Localizer can provide a mean error of less than 1.4111m when tracking a mobile terminal. Berna et al. (2003) proposed a similar system based on a hidden Markov Chain. It uses labelled and unlabelled data. The achieved accuracy was better than 2.25 metres in 70% of measurements using labelled data only. Training of the Markov Chain using the EM algorithm with unlabelled data resulted in a 20% improvement.

4.5.3.

Centre of Mass

The centre of mass technique uses the normalised probability assigned by a discrete location estimation process (e.g. radio map based processes) as weight measurement of a physical object in space and calculates the centre of mass of the n nearest objects (Youssef, M. & Agrawala, A. 2004, 2005). This enables a discrete algorithm to deliver continuous results.
19

4. WLAN Based Position Sensing

4.5.4.

Time Averaging

The time averaging technique smoothes the results of an algorithm by using a queue of n lastly calculated positions and taking the average of these (Youssef, M. & Agrawala, A. 2004, 2005).

4.5.5.

Perturbation Technique

The perturbation technique is used to overcome so-called small-scale variations. Smallscale variations occur due to the signal propagation as electro-magnetic wave: Signal minima and maxima alternate twice during the wavelength which is about 12.5cm at 2.4GHz. This technique perturbs the signal strength vector entries by a chosen percentage, calculates the resulting position of every perturbation element, and finally uses the position closest to the previous one (Youssef, M. 2003).

4.6.

Evaluation of Algorithms

Much research has been undertaken in the field of algorithm development. To compare different algorithms many authors developed means to evaluate performance, efficiency, and accuracy of WLAN based position sensing algorithms:

Roos et al. (2002) formulated WLAN based position sensing as machine learning problem. For testing purposes they developed a framework and implemented three different algorithms: the deterministic nearest neighbour method and the probabilistic kernel and histogram methods. The algorithms have been systematically tested using different numbers of access points and different numbers of reference measurements called calibration points. The results of the comparison showed that the probabilistic methods perform slightly better than the deterministic ones, especially when using fewer access points.

Kaemarungsi and Krishnamurthy (2004) present an analytical model of a framework for localisation using location fingerprints.

Hatami and Pahlavan (2005) compared statistical (radio map based) methods with propagation model based methods. They developed a hybrid algorithm using a propagation model to generate reference measurements and to apply the nearest neighbour method to these. This so-called Distance Variations algorithm performs no worse than statistical models but is less sensitive to the number of access points.
20

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

A general analysis of performance that can be applied to any WLAN based position sensing systems has been developed by Youssef and Agrawala (2003). They compared the RADAR and Horus system and found the Horus system to perform slightly better.

Krishnakumar and Krishnan developed a model for location estimation accuracy (Krishnakumar, A. S. & Krishnan, P. 2005). Using a similar propagation model as Ladd they found a point of minimum uncertainty in their experiments but left the analytic proof to further research.

Generally radio map based algorithms provided the highest accuracy in controlled environments. The initial workload is the biggest disadvantage of this method. Furthermore, the radio map has to be rebuilt every time the access point infrastructure or environment changes. Without updating the results are getting less accurate. A great advantage of this method is the independence from models for signal propagation. The signal strength vector is taken as it is. On the other hand propagation model based approaches need less initial workload. They can cope better with changing conditions. Reducing the number of available access points to a minimum still produced satisfying outcomes. Accuracy is not as high as with radio map based approaches but probability based algorithms are close to deliver the same accuracy (Hatami, A. & Pahlavan, K. 2005).

5. Accuracy Improvement by Combining WLAN with Other Network Technologies


A possibility to enhance WLAN position sensing is to combine WLAN with other networking technologies. Previous research showed that these approaches can deliver better results than pure WLAN systems. There are some other technologies which may be used to sense the clients position. This overview does not include all technologies but the most common ones. Each technology is described briefly and its potential for position sensing is evaluated.

5.1.

Bluetooth

Bluetooth (Bluetooth SIG 2006) works in the same unlicensed frequency spectrum from 2.4GHz to 2.485GHz as 802.11b/g. It uses adaptive frequency hopping to overcome interferences from other senders using this spectrum. The signal changes randomly
21

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

among 79 frequencies with 1 MHz space. Bluetooth and WLAN 802.11 can coexist side by side without disturbing each other (Shoemake, M. B. 2001). The IEEE standard for wireless personal area networks (WPAN) is based on the Bluetooth specification (IEEE Standards Association 2005). Bluetooth allows data rates up to 1Mbit/s at version 1.2 and up to 3Mbit/s at version 2.0 with enhanced data rates (EDR). The transmitting range is from one metre for class 3 devices up to 100m for class 1 devices (Bluetooth SIG 2004). Since revision 1.1 (Bluetooth SIG 2001) Bluetooth supports a receiver signal strength indicator (RSSI) to enable power saving technologies to adopt the transmitting power. Feldmann et al. (2003) describe an indoor Bluetooth position sensing system using this feature reaching a precision of 2.08m. Anastasi et al. (2003) describe a system based on Bluetooth cells with the precision limited to the cell size (approximately 20m in case of class 2 transmitters). Bluetooth infrastructure is by far not as widespread as WLAN. As Bluetooth suffers from the same disadvantages as WLAN it is unlikely to achieve better accuracy.

5.2.

RFID

Radio Frequency Identification (RFID) is a technology that uses low cost chips (socalled tags) and tag readers to mark movable objects with computer readable information (Informationsforum RFID 2006). The technology is used in a wide range of applications. More than 140 different ISO standards are defined for RFID. The frequencies range from low frequencies with less than 100 kHz to ultra high frequencies with up to 954MHz. Passive tags operate without power supply. They are powered by a continuous wave emitted by the reader. This technology works only in the near field of half wave length and therefore only up to a few centimetres. Active tags are battery-powered. They send their identification code on request by a reader. Their range is up to 100 metres. RFID allows cell of origin based position sensing methods and signal strength based methods. The signal strength of RFID tags is less influenced by walls and persons than WLAN signals. Using short range RFID tags the accuracy can be better than with WLAN based systems. However, accuracy expected with long range tags is not better than five metres (Menz, M. 2005).
22

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

Ni et al (2004) developed a system based on RFID tags and tag readers, which can return the power level of tags similar to the RSSI of WLAN. They evaluated the power level by comparing the level of the tag whose position is to be sensed with reference tags placed at know positions. Using reference tags in a raster of 1x2 metres they reached an accuracy of about one metre in 50% of measurements. RFID can increase accuracy of WLAN based position sensing systems but the accuracy is strongly dependent on a dense mesh of tag readers and reference tags. The combination of WLAN with RFID offers the opportunity to have a general coverage and some special areas with additional RFID equipment giving extra accuracy.

5.3.

ZigBee

ZigBee is a protocol stack for use in WPANs. Its focus is more on becoming a wireless standard for remote control in the industrial field than on data transfer. It uses the PHY and MAC layers as specified in the IEEE standard 802.11.4 (IEEE Standards Association 2003b). More than 150 companies are members of the ZigBee alliance. It was started by eight promoters: Ember, Freescale, Honeywell, Invensys, Mitsubishi, Motorola, Philips, and Samsung. Today, the number of promoters is growing along with the increasing number of members. The standard was finalised in December 2004 (ZigBee Alliance 2006). ZigBee provides 16 channels with a bandwidth of 250 Kbits at 2.4 GHz. As fallback, it supports one channel with 20 Kbits at 868MHz in Europe and 10 channels with 40 Kbits at 915MHz in America. The maximum transmission range is device dependent and varies from 10 to 100 metres. ZigBee targets industrial control applications without requirements for high data rates but the needs for low power, low cost, and ease of use. The ZigBee protocol stack specifies a signal strength measurement for channel selection. It does not, however, specify its further use or forwarding to the upper layers but it seems possible to use RSS based methods for position sensing. It uses the same 2.4GHz ISM band as WLAN and Bluetooth but promises to be more stable in harsh conditions. However, it is unlikely that ZigBee reaches a higher accuracy than WLAN. However, ZigBee was never widely accepted and may soon be replaced by RuBee, which offers some great advantages.

23

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

5.4.

RuBee

RuBee is a new standard for wireless networks in harsh environments. The beginning of the work on the new standard IEEE P1902.1 has been announced on June 8, 2006 (Stevens, J. K. 2006). The project description is available on the IEEE homepage (IEEE Standards Association 2006). RuBee uses low frequencies below 450 kHz. The radiated energy consists of 99.99% magnetic energy as opposed to 99.99% electric energy using RFID frequencies at 900MHz. That enables radio waves to pervade easily water and metal but the transmission range is reduced as the field strength attenuation is closer to 1/r than 1/r for higher frequencies. RuBees transmission range is expected to be between 10 and 50 feet (Schuman, E. 2006). RuBee is able to operate on many thousand tags but the available bandwidth is very small. Only about 10 read operations per second are available as opposed to up to 200 using RFID. Therefore Rubee is not a replacement to RFID, but merely an alternative. Position sensing is already in the focus of the working group. The use of visibility networks may include providing the status and location of people or high-value assets in a user-configurable area (Stevens, J. K. 2006). Less signal attenuation by walls and other elements in the environment will increase the accuracy of signal strength based position sensing methods.

5.5.

GSM

The Global System for Mobile Communications (GSM) is currently the most widespread standard for mobile telephone systems. The successor of GSM is UMTS, wnich allows higher data rates but does not change the network system itself substantially (Steglich, S. 2004). Therefore, the position sensing characteristic shown in this section can be applied to both systems. GSM works on a cell base: each mobile phone is logged into the base station of one cell. The radius of a cell is between 200m in a city and 35km in rural areas. Most commercially available location systems available today are using this information. For more accuracy the Timing Advance parameter (TA) may be used. It has been defined to align the incoming radio signals at the base station into slots. Using this parameter the distance of the mobile phone may be roughly determined (accuracy around 500m).
24

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

Most base stations use directed antennas to divide the covered area into sectors to support a higher network load. By triangulation of sectors of multiple antennas the position may be determined more exactly. GSM positioning systems are working outdoors only. Walls cause too much disturbance. Operation is on the network side as only the network provider possesses the necessary information for position sensing. Commercial operators promise accuracy from 250m to 100m in downtown areas (jackMobile 2006; Mobiloco 2006) That makes GSM position sensing useful for large-scale systems (i.e. country wide) only.

5.6.

WiMax

WiMax is the common name for standard 802.16 released by the IEEE (IEEE Standards Association 2004). It is focussed on high data rates between fixed senders and receivers. Transmission needs a line of sight between transceivers. Using a different frequency band the standard has been extended to mobile devices (Intel 2004). WiMax has been developed to realise high data rates using an air interface between two fixed transceivers rather than communication among mobile devices. The specifications make it a rather bad choice for position sensing.

5.7.

GPS

GPS is the common abbreviation of Navigational Satellite Timing and Ranging Global Positioning System(NAVSTAR-GPS). The system is based on the signal propagation delay of signals sent by satellites in orbit around the earth. Four visible satellites are needed for receivers without exact clock. Twenty-four satellites plus some spare ones cover the whole earth (Assistant Secretary of Defence 2001; Navstar GPS Joint Program Office 2006). GPS was built for position sensing and is included in this list for reference purposes. Initially, the standard availability (SA) for non-military users provided accuracy of less than 100 metres. Since May 2000 this artificial inaccuracy has stopped and 90% of all measurements provide an error of less than 10m. Differential GPS (DGPS) uses a stationary GPS receiver with a well-defined and well-known position. By comparing the error of the calculated and known position, it is possible to reduce the mean error and to achieve accuracy of 1-3 metre.

25

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

Due to the need of satellite communication GPS is working outdoors only. Even in cities with many skyscrapers, it is difficult to have the necessary contact to four satellites. New receiver technologies are trying to overcome these shortcomings.

5.8.

Potential Accuracy Improvements

Until today, there is no single standard technology that provides all advantages bundled for position sensing. Essentially, accuracy of RSS based methods increase with smaller cell sizes. GSM provides the widest range but the lowest accuracy. WLAN provides an acceptable accuracy and cell size. The use may be city-wide as more and more access points are set up in populated areas. This is not to be expected from other technologies as Bluetooth, ZigBee, RFID, and RuBee. Their use will always be limited to special areas equipped with transceivers. RFID possibly provides the highest accuracy but also a very limited range. Cell size depends on technology and so does accuracy. RuBee may reach the highest accuracy as its frequency band is least influenced by obstacles. For a comparison of accuracy and range see figure 5-1.
Range

World GPS Country -side City GSM

House Accuracy 1m 10m 100m 1km 10km 100km

RuBee

RFID

ZigBee

Bluetooth

WLAN

Figure 5-1: Comparison of Standard Technologies

Combining WLAN with other technologies is a promising way to improve the accuracy using RSS based methods. Using WLAN for an overall position sensing and RFID in
26

6. Accuracy Improvements Using WLAN Only

some areas where better accuracy is required may be a compromise between effort and accuracy. Other technologies not based on radio signals may be used, too. The combination of ultra sound and WLAN using the Ekahau engine showed some promising results (Hii, P. & Zaslavsky, A. 2005). GPS is still the best solution for position sensing as it is available worldwide with an accuracy of below ten metres but encounters the highest costs as well. The satellites have to be maintained and the system has to be administered. In indoor environments and in some downtown areas with many skyscrapers other alternatives are superior to GPS. They provide acceptable accuracy and coverage considering the much lower costs.

6. Accuracy Improvements Using WLAN Only


Current systems for position sensing using 802.11 hardware only are achieving rather good accuracy but are leaving some potential for improvements. The following paragraphs present approaches to tackle this problem.

6.1.

Getting More Accurate Data

Increasing the quality of available data to determine the clients position would deliver the biggest improvement of accuracy. However, as mentioned before WLAN is not built for position sensing hence common devices are not designed for exact signal strength signals detection. Furthermore, WLAN signals are distorted, reflected, absorbed, defused, and interfere with each other. Small changes in the environment (e.g. a person walking by) cause significant changes in the WLAN signal strength. Therefore, it is easier to get more measurements than more accurate ones. The solution is to place additional signal strength detectors in the position sensing area.

6.1.1.

Sniffers

Additional clients at a fixed and known location deliver information about the current signal strength at their position. Using these so-called sniffers, it is possible to react on changes in the environment causing variations in signal strength. Sniffers are only useful in case the used algorithm considers the measured signal strengths. The LEASE system (Krishnan, P. et al. 2004) uses sniffers. They do not sense the clients signal strength but the one received by sniffers.
27

6. Accuracy Improvements Using WLAN Only

6.1.2.

Access Point Sniffers

Some manufacturers produce access points, which provide information about the signal strength of clients in range. This additional data may be used to determine the distance between client and access point. Since this behaviour is not specified in the standards it may be included only in predefined installations with known access point hardware.

6.1.3.

Peer-to-Peer Signal Strength

Clients may measure the signal strength of other clients within their transmission range and enhance the accuracy of position sensing using this additional information. In case both clients see each other there are two data sets available to determine the distance between the clients and the measurement error may be reduced as well. Standard WLAN client hardware needs to be switched to promiscuous mode in order to allow other clients to be seen. Here, problems may occur with different receiver sensitivity and different transmission power of clients. The attenuation of the signal has to be determined for each pair of transceivers and each transmission direction individually.

6.2.

Algorithm Improvement

As shown in 4.4 the used algorithms differ widely in initial effort and reachable accuracy. Each single approach has been researched and tested in detail. Better accuracy may be reached by picking the best solutions out of the available ones and combining them into a new system. The derivation from the analysis above is that a probabilistic algorithm based on propagation models, which can be enhanced by including a radio map and uses a collaborative system to exchange information offers the best chance to increase accuracy.

6.2.1.

Radio Map Based

Creating a radio map of all possible positions currently results in the highest accuracy, but building a radio map and keeping it up to date is a time-consuming process. Therefore, propagation based algorithms should deliver a basic accuracy that could be extended if higher accuracy was needed by using a radio map.

28

6. Accuracy Improvements Using WLAN Only

6.2.2.

Propagation Model Based

Propagation model based algorithms reduce the initial workload to a minimum but can provide accuracy close to radio map based. By making propagation models more exact and by including more data the so far reached accuracy can be improved.

6.2.3.

Collaborative Position Sensing

Collaborative approaches provide additional room for improvements. The first step is to exchange information about the position sensing infrastructure as it is done in MagicMap. The second step is to use the clients to sense position information about other clients. This requires WLAN clients to operate in promiscuous mode. A system using this approach is described by Fretzagias and Papadopouli (2004).

6.3.

Self-Adjusting Systems

Most previously developed systems need the construction of a radio map before position sensing. This lengthy process has to be repeated each time the environment changes. Otherwise, the accuracy is reduced. Self-adjusting systems on the other hand react autonomously on changes in the environment and in the system infrastructure. Furthermore, self-adjusting systems detect wrong system parameters and automatically correct them. The following paragraphs describe some ideas for self-adjusting systems.

6.3.1.

Automatic Radio Map Creation

The requirement to build the radio map before the actual position sensing takes place is a huge disadvantage of systems based on this method. Building the radio map requires taking reference measurements for all possible locations and may take a long time. However, when the radio map is created automatically the initial workload to set up the system is reduced. Thus, it is not necessary anymore to rebuild the map in case the environment or the system infrastructure changes. The system administrator simply restarts the building process and restores the initial system accuracy. Automatic radio map creation requires the installation of sniffers (6.1.1). This functionality has already been implemented and tested in the LEASE system (4.4.3). Hatami and Pahlavan (2005) used their propagation model to create a radio map and compared several algorithms working on that map. Alternatively a kind of device could
29

6. Accuracy Improvements Using WLAN Only

be created, which automatically cycles through all positions and measures the signal strengths (automated war driving, see section 4.4.6).

6.3.2.

Detection of Wrong System Parameters

Wrong system parameters occur if a user entesr wrong reference measurements or if the WLAN infrastructure is changed, e.g. the position of an access point is altered or the emitter power is changed. Detecting and correcting such wrong parameters is crucial as already one wrong reference measurement reduces accuracy and produces wrong positions. Only the use of sniffers provides a way to detect falsely set parameters automatically. The LEASE system (4.4.3) incorporates a simple way for detection. It expects the signal of stationary emitters to be log-normal distributed with standard deviation . When the measured values from at least one stationary emitter consistently exhibit a statistically significant deviation it is assumed to have been moved or the environment has been changed. Thus, the model is rebuilt.

6.4.

Environmental Influence on WLAN Position Sensing

The signal strength is strongly influenced by the environment. Obstacles reflect, absorb, and disperse the signals measured. If they are known their characteristics may be used to increase the accuracy. Using WLAN in an outdoor environment for position sensing poses additional difficulties for the system. Seasons and especially the weather influence the attenuation of the signal. Therefore, propagation models have to be adapted to the new conditions in order to keep accuracy.

6.4.1.

Indoor Position Sensing

Walls, furniture, metal doors, moving objects like humans or cars have a significant impact. However, it is very complicated to build a model that respects all these influences accurately. The common approach is to calculate an average attenuation factor, which reflects all objects in the position area. Bahl et al. (2000) use the Wall Attenuation Factor (WAF) as proposed by Seidel and Rapport (Seidel, S. Y. & Rappaport, T. S. 1992). The Wall Attenuation Factor is averaged over all walls in the area and then multiplied by the number of walls between sender and receiver. This number may be counted by the
30

6. Accuracy Improvements Using WLAN Only

algorithm using an area map with exact positions of all walls. The same procedure may be used to evaluate other obstacles in the propagation path. As the signal strength is a very inaccurate measure this very extensive method may not increase the accuracy in proportion to the effort. The trade-off of gained accuracy and effort put in may not justify the costs.

6.4.2.

Outdoor Position Sensing

In an outdoor environment additional complexity is added to the model. Besides all indoor relevant factors the weather and the seasons also influence the WLAN signal strength. The weather influences the general attenuation of radio signals. Air humidity, rain, and snowfall change the contingent of water in the air. WLAN frequencies of 2.4 GHz are strongly influenced by water. Therefore, the general attenuation factor has to be changed accordingly. In addition the vegetation changes during the different seasons: in winter, trees and hedges do not carry leaves. Plants and especially leaves contain a great portion of water. Therefore, the attenuation of trees is much higher in summer than in winter. Adopting existing algorithms to outdoor conditions does not seem to be a complex problem. Systems that can automatically detect wrong parameters like the LEASE system can also adopt the parameters to changing outdoor environments.

6.5.

Decision for Developing an Algorithm

The most promising accuracy improving potential lies in developing a new algorithm. The technology of choice is WLAN. No other standard technology offers a huge improvement for indoor positioning systems (unlike GPS which is more accurate but only available outdoors) but is as widespread as WLAN. Getting more accurate data for a signal strength based position sensing system is very complicated as the signal strength is distorted by many different factors. The only improvement on this aspect seems to be a continuous observation of signal strength using sniffers. The use of sniffers is not examined in this work as it is part of a different MagicMap project. Gathering more data by taking into account the environment and structure of the building leads to improvement but makes the preliminary setup effort much bigger.
31

7. Two Level Position Weighting Algorithm

Developing a new method for position sensing seems to be the most promising way to keep the system simple, keep the setup effort low, and still work on standard hardware.

7. Two Level Position Weighting Algorithm


The algorithm presented in this thesis defines a weighting for every position the client may reside in. It then searches for the position with highest weighting using a two level approach. First, the position is roughly estimated. Then the result is refined by specifying the exact position within this estimate. This chapter starts with the requirements set up for the new algorithm. Then, the assumptions made for the algorithm are described. The main part presents the algorithm itself. Finally, some conclusions about the algorithm are drawn.

7.1.

Requirements

Before the development of the algorithm the requirements describing the wanted characteristics of the algorithm were formulated.

No Calibration
Systems based on an empirical radio map need a long set up phase before the algorithm is able to detect the clients position. These radio maps have to be adapted to a changing environment. To reduce the initial effort the algorithm to be developed should work on only a few initial parameters.

Improvement of Accuracy by Using Reference Measurements


The algorithm should provide the possibility to include previously measured signal strengths. These reference measurements improve the accuracy by specifying abnormalities to the propagation model. The system parameters can be adjusted accordingly.

Working Using Reference Measurements Only


If no access point positions are known the algorithm has to provide a possibility to work on reference measurements only. When setting up the system in an unknown environment access points may be hidden behind walls or otherwise invisible. Then, the only information available is reference measurement.

32

7. Two Level Position Weighting Algorithm

7.2.

Basic Principle

Signal strengths are the only information available in a WLAN based position sensing system. They have to be used to estimate the clients position. As no initial setup shall be required a radio map cannot be built. Signal strength measurements are not exact and attenuation of radio propagation is depending on the environment, hence no exact computation of the client position is possible. The algorithm has to tolerate this inaccuracy and still deliver a reasonable solution. The proposed algorithm defines a weighting for all possible states. A state is defined as being located at a given place. For this purpose the algorithm uses the measured signal strengths, the access point positions, reference measurements, client movement, and signal strength measured by other clients. The position at which a measurement for reference purposes is taken is called a reference point. All these different information sources contribute a weighting for each possible state. The weightings are then summed up and the algorithm searches in all possible states for the state with the highest weighting. The client is estimated to be at that position.

7.3.

Propagation Model

To estimate the weighting of a state at a distance to a signal emitting device (access points or other clients) the signal strength is used. The received signal strength has to be converted into a distance measurement. For this purpose a propagation model as described in section 3.1.3 is required. The used propagation model is similar to the one used by Ladd et al. (2002). While there inaccuracy is represented by a random variable
X introduced within the propagation model, here inaccuracy of signal strength

measurements is brought into the calculation in a later step. The used model is:

d S (d ) = S (d 0 ) 10 n log . d 0
Hence, the distance d is:
S0 S

(10)

d = d 0 10 10 n .

(11)

Incorporation of the attenuation factor suggested by Seidel and Rappaport (1992) is out of the scope of this work and is part of other projects within MagicMap.

33

7. Two Level Position Weighting Algorithm

7.4.
7.4.1.

Weighting of a State
Distance Information

Distance information is used to create a theoretical sphere with the origin of the distance measurement as centre and the distance as radius. The client is estimated on the surface of that sphere. Four exact distance measurements lead to one intersection point and thus to the position of the client. As the distance measurements are very imprecise the distance is taken as maximum of an exponential function. The sphere describes all states with highest weighting. All other states are weighted lower. The function to compute the weighting w is
s r2 ( x r )2

w=e

(12)

with r being radius of the sphere, x being distance from centre to the point whose weighting is to be calculated, and s being scaling factor:

s=

ln(w) . d2

(13)

This function adds fault tolerance to the algorithm. It specifies which percentage of weighting w is still assigned to a position that varies by d from the expected distance r. Figure 7-1 shows the function for r = 10 and r = 20. A deviation of 25% is still assigned a weighting of 50%.

34

7. Two Level Position Weighting Algorithm

1,25

Weighting

0,75 10 20 0,5

0,25

0 0 5 10 15 20 Distance 25 30 35 40

Figure 7-1: Weighting Deviation for r=10 and r=20

If the radius is 10 a value of 7.5 or 12.5 is still assigned a weight of 0.5. The function with radius 20 returns 0.5 at 15 or 25. In a two dimensional area a circle with radius 10 produces weightings of the surrounding points as shown in figure 7-2.

20 1 Weighting 0,5 0 0 5 10 X 15 20 0 5 10 15

Figure 7-2: Weighting for a Circle with Radius r=10

Access Points
The distance to access points is calculated using the presented propagation model.

35

7. Two Level Position Weighting Algorithm

Reference Measurements
The distance to reference measurements cannot be calculated directly. Therefore, an empirical model to estimate this distance has to be developed. Related research suggests the use of the Euclidean distance (vector difference) of signal strengths.

Other Clients
In a collaborative position sensing system like MagicMap it is possible to include signal strength measurements from other clients. The weighting is lower than information from access points or reference points as the position of the other client is uncertain as well.

7.4.2.

Client Movement

Client movement is a class of information different from distance measurements. The distance a client can move in between two algorithm runs is limited. A human will not walk faster than 2m/s carrying a wireless device. Therefore, all position in a circle of 2m around the human are assigned the same weighting. Positions more distant are less likely. Their weighting decreases with distance.

7.4.3.

Using Client Movement as Filter

If the weighting result of client movement is not summed up but multiplied with the distance information weighting it operates as a filter of possible positions: those in close neighbourhood of the previous position are possible. All others are nearly impossible. That way the search area is reduced to the direct surrounding of the client. If the previous position is correct this will speed up the calculations and reduce sudden jumping from one position to another.

7.5.

Finding the Highest Weighting

Using the method described above it is possible to specify weighting for each state. The highest weighting specifies the most likely position of the client. It has to be found among all possible states, i.e. all possible positions on the map or in a three dimensional space. The first attempt was to use Simulated Annealing (Kirkpatrick, S., Gelatt, C. D. & Vecchi, J. M. P. 1983). Simulated Annealing tries to find the state with the lowest energy while the temperature is cooling down but the initial search area was too big and
36

7. Two Level Position Weighting Algorithm

the algorithm needed too many cycles to find the solution. Therefore, the area of possible solutions had to be reduced. The second attempt uses a two level search. The first step is to reduce the set of possible solutions to the set of all sphere intersection points. The intersection point with the highest weighting is estimated as the clients position. In an accurate environment with no disturbance this would return the best solution. As the signal strengths are inaccurate the algorithm refines the result by searching for higher probabilities around the result of step one.

7.5.1.

Level One: Intersection Points

To reduce the set of possible solution the spheres around the access points are projected on an area (usually the map displayed). The intersection points of all circles with each other are calculated. Intersections of spheres are not used because three spheres are required to return points. Circle intersections require only two. As WLAN signal strength measurements are very inaccurate and there is no guaranteed intersection this method is more likely to deliver a solution at all. The method used is described in this section. Figure 7-3 shows two access points AP1 and AP2. The radiuses r1 and r2 of the circles around them are calculated using the signal strengths.

AP2 y2 C y1 AP1 p r1 h d q r2

x1

x2

Figure 7-3: Intersection of Circles

37

7. Two Level Position Weighting Algorithm

Using the Pythagorean Theorem the distance between the two access points is then determined as

d=

(x1 x2 )2 + ( y1 y 2 )2 .

(14)

If the two circles intersect d is divided by C into the parts p and q. Using the Pythagorean Theorem twice r2 = h 2 + q 2 r1 = h 2 + p 2 and the distance d = p + q the partial distance p is determined as
p= r12 r22 + d 2 . 2d
(17)
2 2

(15) (16)

The height h then can be determined:


h = r12 p 2 .
(18)

I2 y2 h yc y1 p AP1 I1 C d h AP2

x1

xc

x2

Figure 7-4: Points and Distances at the Intersection

Using this height and the theorem on intersecting lines the coordinates of point C can be determined:
xC = x1 + p ( x 2 x1 ) p ( y 2 y1 ) , y C = y1 + . d d
(19)

38

7. Two Level Position Weighting Algorithm

C yc y1 AP1 I1 r x1
Figure 7-5: Angles at the Intersection

xc

The angles and are equal and so are their sinuses. Sinus is defined as opposite leg divided by hypotenuse:
y 2 y1 r = d h
(20)

Using this relation the coordinates of the two intersection points I1 and I2 can be computed:
x I 1 = xC + h( y 2 y1 ) h( x 2 x1 ) , y I1 = yC d d h( y 2 y1 ) h( x 2 x1 ) , y I 2 = yC + d d

(21)

x I 2 = xC

The weighting of each intersection point is computed. The client is estimated to be located around the intersection point with the highest weighting.

7.5.2.

Level Two: Refine Result

The second step of the algorithm refines the search result by looking for a better solution in the surrounding of the intersection with the highest weighting. The algorithm calculates the weighting of surrounding positions and moves to any position with a higher weighting. The algorithm starts by checking positions in a surrounding at a distance called step width to the intersection. Initially, this step width is the equivalent of one metre in map coordinates. The algorithm moves to any position with a higher weighting in the
39

7. Two Level Position Weighting Algorithm

surrounding of one metre and moves the client position to it. Then the surrounding of the new position is examined. If a better position cannot be found the step width is divided by two. That way the algorithm moves the position very quickly towards the optimum at first. Closer to the optimum the resolution is getting finer with every step. If the step width is less than one point the algorithm has found the optimal solution and terminates.

7.6.

Smoothing the Results

Previous research for MagicMap (Schweigert, M. & Hbner, T. 2005) suggested smoothing of signal strength and hence the position by using a sliding window of the last n signal strength measurements and using the average of these values. This works well for stationary mobile terminals. The same result is confirmed by Youssef et al. (Youssef, M. & Agrawala, A. 2005) by smoothing the last n estimated positions. However, when tracking a moving terminal it seems more practical to use a movement model than to average the input of signal strength (Wallbaum, M. 2004). Although the results are smoother with increasing window size the mean error increases as well. This is due to the fact that n signal scanning cycles are required to get the actual signal strengths. As compromise between reaction speed to client movement and accuracy the window size has been reduced from 10 signals to 3 signals. Sometimes an access point drops out of the measurement once. However, it is still included in the calculations with two other values. Furthermore the position is smoothed by including the previous position in the weighting.

7.7.

Assessment of Algorithm Development

The proposed Two Level Position Weighting Algorithm is a universal method to compute the position since it is able to incorporate many different classes of information in the weighting. The more information is provided the more accurate the results are. The shown possible information types include access point signal strengths, reference measurements, and client movement. Future versions may include Bluetooth, RFID, or RuBee types of information. The weighting system allows coping with the inaccuracy of all these technologies.
40

8. Case Study

Besides incorporating different technologies another step to improve the algorithm could be to allow different weightings for different classes of information. The information of being half a metre away from a RFID sensor may get twice the weight of a WLAN access point distance measurement since it is more accurate. At the presented stadium the algorithm contains all essentials to sense a position using WLAN data. It is open for future additions and improvements.

8. Case Study
To demonstrate the algorithm described above it has been implemented on a PDA running Microsoft Windows Mobile. The client is based on the previous MagicMapCE client developed by Keller and the thesis by Lderitz and Engel (2006). It is integrated in the MagicMap system and communicates with the MagicMap server via a TCP gateway. This chapter describes some general issues and the implementation of the new software components. The implementation was done using Microsoft Visual Studio 2005. The programme has been developed in C# with the Microsoft .NET Compact Framework. Additionally, the OpenNETCF library is used for stumbling of WLAN access point data. The client is built for Microsoft Windows Mobile 2003 but runs on the newer Windows Mobile 5.0 as well. It has been tested on a Dell Axim X5 and a Dell Axim x51v. The MagicMapCE solution consists of seven projects: Algorithms, Controls,

CustomInstaller,

MagicMapCE,

NodeModel,

CabFile,

and

Setup.

CustomInstaller, CabFile, and Setup are used to create an installer package. Algorithms contains the algorithm classes, Controls contains two controls used
for the GUI, MagicMapCE contains the main client, and NodeModel contains the classes of the node model. These projects are described in more detail in the section 8.3.

8.1.

Update to .NET CF 2.0

The previous version of the MagicMapCE client was developed using Microsoft .NET Compact Framework 1.0. It has been ported to the new .NET CF 2.0 to facilitate development. Some of the new features used are:

The support for VGA resolution has been enhanced. New forms are not only interpolated but automatically scaled to the screen resolution. This function needs to be enabled on forms created using CF 1.0.
41

8. Case Study

The new generic collections are to replace the currently used hash tables for internal data representation. The use of the NodeHashtable class is deprecated and the NodeDictionary class is introduced.

New nullable data types, which wrap value types in reference types, are used for signal storage. The security settings for threading are stricter now. The only allowed method call is Control.Invoke(EventHandler). The threading has been changed accordingly.

8.2.

New Features

In order to enable position sensing on the client for Windows CE several improvements have been made. The major changes are:

The node model has been ported from the JAVA version to Windows Mobile and adopting it to the new requirements as specified in the MagicMap Wiki.

The GUI was rewritten completely as the user interaction capabilities of the previous version were too limited for client based position sensing. It now offers basic and easy to use functions for beginners and more detailed features for the advanced user.

An interface for algorithms used for position sensing has been developed. Algorithms now may be switched during runtime. The new node selectors allow pre-selection of nodes used for calculations.

The algorithm described in section 7 has been implemented and tested. The threads for signal collection (stumbling) and position computation have been rewritten. Inter thread communication is now .NET CF 2.0-compliant.

8.3.

Overview

A survey of communication structure and object relationships is given in figure 8-1. Central element of the client is the node model. Nodes can be added, updated, or removed from it. Maps and corresponding nodes stored on the server can be retrieved using the communication layer. The Cache and ServerInterface classes were developed by Keller during his work for the MagicMap project. Only minor changes have been made to this part of the client.
42

8. Case Study

The SignalCollector thread reads signal strengths from the WLAN adapter and updates the client node accordingly. The PositionComputer thread reads the nodes from the node model and updates the position of the client node. Changes made to the node model raise NodeAdded, NodeUpdated, or

NodeRemoved events. The MapControl class takes care of all drawing on the
screen and user interaction with the node model. It handles these events with

EventHandlers. Changes made by the user are forwarded to the model.

Figure 8-1: Client Object Structure

8.4.
8.4.1.

Visual Studio Projects


NodeModel

The NodeModel project contains the classes that represent all objects used for position sensing. It has been ported from the JAVA client. Where necessary or helpful the JAVA classes and functions have been replaced by the C# equivalent. All listeners have been replaced by multicast delegates triggered by events and the JAVA MapTable has been replaced by NodeHashtable.
43

8. Case Study

Figure 8-2: NodeModel Class Diagram 44

8. Case Study

The model has been improved continuously to meet new requirements. Some of the suggestions made in the MagicMap Wiki article(Nomads 2006, article MagicMap_Knotenmodell) about the node model are already put into place. The structure is now tree-like: each node contains a list of child nodes. In future releases, the

NodeHashtable used as node container will be replaced by the new .NET CF 2.0
generic collections based NodeDictionary. The Node class is the root object. All other specialised node classes are derived from it. Figure 8-2 shows the class model.

NodeModel
The NodeModel class (figure 8-3) administrates the node model. It contains methods to add, remove, and update nodes. Events will be raised when a node is added, removed, or updated to provide information about the changes for other classes. The RootNode is a ThreeDimensionalNode (as world object), which contains all nodes added to the model.

CurrentParentNode is the node all methods are applied


on. AddNode adds a node to the nodes collection off the

CurrentParentNode, RemoveNode removes it. Nodes


is a link to the child nodes of the CurrentParentNode.

AccessPointNodes,

ClientNodes,

and

ReferencePointNodes are selections of the child nodes.


If the computer running this node model is represented by an object in the model ThisNode holds the reference to it. For example, a PDA is represented by a ClientNode object.
Figure 8-3: NodeModel Class

45

8. Case Study

Node
The Node class (figure 8-4) is the base class of the model. Each node representing an object in the model is represented by an object derived from this class. Every node has three identifiers: DisplayName is the name to be displayed in lists and GUIs, Id is the database record identifier, and

InternalIdentifier is the unique identifier used for


identifying purposes in computations. The Node constructor specifies a unique default InternalIdentifier for each node but derived classes may override

InternalIdentifier to return a specialised identifier. NodeModel is a reference to the NodeModel class the node
belongs to. Nodes is a NodeHashtable object, which contains all child nodes. In case this node is child of another Figure 8-4: Node Class node Parent refers to it. Except for the root node, every node has a parent. Position specifies the position relative to the parent node as Point3D object. X, Y, and Z contain the single coordinates. this implements an indexer for the Nodes collection.

Distance

returns

the

distance

to

another

node

in

node

coordinates.

GetNeighbours returns a collection of nearby nodes. It is to be overridden by


derived classes.

NodeDictionary
The NodeDictionary (figure 8-5) class is based on the new generic collection classes provided in the .NET CF 2.0 (see section 8.1). It implements the same functionality as the NodeHashtable class but is strongly typed. The Add method is overloaded with adding a node using the InternalIdentifer as key. No casting is required when using the KeyValueEntries, which makes handling easier.

46

8. Case Study

Figure 8-5: NodeDictionary Class

WlanNode AccessPointNode and AccessPointSeerNode are not directly derived from Node but from WlanNode. The model is kept open for different technologies, and
future releases will contain nodes for Bluetooth and RFID position sensing. To distinguish between WLAN and Bluetooth client nodes (Bluetooth client nodes for example wont have a MAC address) the abstract class WlanNode is introduced.

AccessPointNode AccessPointNode (figure 8-6) represents a WLAN access


point in the model. MacAddress contains the MAC address of the access point. SSID contains the given name.

InternalIdentifier is overridden with the MAC


address. Hidden marks the access point as excluded from Figure 8-6: AccessPointNode position calculations and displaying.
Class

47

8. Case Study

AccessPointSeerNode AccessPointSeerNode represents a device able to sense


signals from an access point and estimate their strength. It stores the signal in the strongly typed Dictionary object

AccessPointSignals. Key is the access point object and


value is an array of nullable doubles to store the collected signals. Length of this array is

MaximumEdgesForEachAccessPoint. The index of the


lastly added signal is CurrentSignalIndex. AddEdges expects an Arraylist of AccessPointEdges and saves the signal strengths in the corresponding entries in

AccessPointSignals using the next index position. If


there is no corresponding entry, a new entry will be created and the event is raised. When

SeesAccessPoint

MaximumEdgesForEachAccessPoint is reached the


index is reset to zero. AverageSignalLevel returns the averaged signals of the corresponding array and null if no Figure 8-7: values are stored. AverageSignalLevels returns a AccessPointSeerNode Class

Dictionary object containing the access point and averaged


signal levels. AverageSignalLevelEdges does the same but returns an

Arraylist of AccessPointEdges. In case the averaged value is null (i.e. no


values are stored) the access point is suspected to be out of range. The corresponding entry is removed and the NotSeesAccessPoint event is raised. GetNeighbours is overridden and returns all access points in the AccessPointSignals

Dictionary collection.

48

8. Case Study

ReferencePointNode ReferencePointNode
is derived from

AccessPointSeerNode and represents a signal strength


measurement at a known position but does not implement any additional functionality to AccessPointSeerNode. It has been renamed from

LocationNode

in

the

JAVA

implementation as the new name explains its functionality more clearly.


Figure 8-8: ClientNode Class

ClientNode ClientNode
(figure 8-8) inherits from

AccessPointSeerNode and represents a client to be


located by WLAN position sensing, e.g. a laptop or PDA with WLAN adapter. InternalIdentifier is the MAC address.

AccessPointEdge AccessPointEdge (figure 8-9) represents an edge from an


access point to a seer node. SignalLevel is the signal level Figure 8-9: AccessPointEdge detected by the seer node.
Class

8.4.2.

Controls

Two new controls have been developed to create the new GUI: SelfMover and

ImageScroller. SelfMover can move itself according to pen position. ImageScroller displays an image that can be scrolled and zoomed. SelfMover SelfMover changes its position on the form once the control is tapped and held. To
implement this functionality the OnMouseDown, OnMouseMove, and OnMouseUp methods have been overridden. No further changes to the base class UserControl have been made.

49

8. Case Study

ImageScroller ImageScroller can display an image and scroll it according to pen movement once
the control is tapped and held. ZoomFactor specifies a factor that scales the image up or down. An overview of properties, methods, and events is given in figure 8-10. The DrawingArea usually equals the control area unless the image is smaller or scaled down and does not cover the whole control. Then DrawingArea specifies the rectangle used by the image. The

ImageToClientCoordinates

and

ClientToImageCoordinates functions convert a point


on the image to the corresponding point on the control and vice versa. MoveTopLeft moves the top left corner to the specified point of the image. CenterOn centres the image on the specified point. The events have to be handled by MoveEventHandler (see figure 8-11) which takes MoveEventArgs as parameter e.

ImageMoved is raised once the control is moved and the pen


is released. The MoveEventArgs contains the number of pixels the image is moved in x and y direction.

ImageZoomed is raised when the ZoomFactor is changed. ZoomEventArgs.Factor contains the ratio of new zoom
factor to old zoom factor. If the area to be displayed exceeds the DrawingArea after zooming the X and Y values contain the necessary image movement to avoid empty control areas.
Figure 8-10: ImageScroller Class

Figure 8-11: MoveEventHandler, MoveEventArgs, and ZoomEventArgs Classes 50

8. Case Study

8.4.3.

MagicMapCE

MagicMapCE is the start-up project of the solution. It contains the main routines and
the graphical user interface (GUI) of the client. As it is based on the work by Keller the description in this document contains only the changes to his work.

MainWindow
The old GUI did not provide enough user interaction capabilities for client based position sensing. It merely showed the node positions and allowed the defining of new reference points. Now all nodes on the screen can be selected or moved. Their context menu provides additional information and functionality. The map can be scrolled and zoomed. The implementation of the new GUI is described in more detail in the description of the MapControl control later in this section. Figure 8-12 shows the main screen of the application. The status of the two red access points is set to fix symbolised by the anchors. One of the three green clients is selected and enlarged. Its name is shown in the status bar. The Treeview menu item opens the tree view screen and Algorithm opens the algorithm selection screen. The threading has been adapted to the new security rules. The communication among the thread for signal strength collection, the thread for position computing, and the main programme is now realised using public fields and invoking EventHandler delegates.

51

8. Case Study

Figure 8-12: MagicMapCE Main Screen

Figure 8-13: MagicMapCE Node Tree View

NodeTreeView NodeTreeView (figure 8-13) is aimed at developers and advanced users. It provides
detailed information about each node currently included in the model. All nodes display their internal name, displayed name, and their position. Client nodes and access point nodes display their MAC address. Access point nodes also show the measured signal strength of the last
n

measurements. Client nodes provide the averaged signal strength of all access point nodes they currently see. The NodeTreeView is realised using a standard .NET

NodeTree control but the nodes displayed are specialised to


the needs of the MagicMapCE client and of the internal node model. The MagicMapTreeNode class (figure 8-14) is Figure 8-14: derived from TreeNode and contains a reference to the MagicMapTreeNode Class corresponding node in the node model.

52

8. Case Study

AlgorithmSelectorView AlgorithmSelectorView (figure 8-15) allows changing


the used algorithm during runtime on the Algorithm tab (figure 8-16). It also provides a standardised access to algorithm specific settings to adjust algorithm features to the current position sensing environment. The NodeSelector tab (figure 8-17) allows defining node selectors which reduce the number of nodes before the algorithms is applied. This avoids the problem which occurred in the JAVA client when seeing too many undesirable access points. Their influence caused wrong results, thus they needed to be excluded from calculations. The node selectors also offer great flexibility as they may be applied individually and configured to the needs of the position sensing environment. NodeReducers are Figure 8-15: described in more detail in section 8.4.4.
AlgorithmSelectorView

Figure 8-16: MagicMapCE Algorithm Selection Screen

Figure 8-17: MagicMapCE Node Filtering Screen

MapControl MapControl is the central element of the new GUI. This control can be used on any
.NET form and performs all drawing on the screen. It encapsulates an

53

8. Case Study

ImageScroller control to display the map and a NodeControl control for each
node contained in the associated node model to display the nodes. Basic functionality is enabled by setting the Image property to a bitmap object and adding the OnNodeAdded,

OnNodeUpdated,

and

OnNodeRemoved

as

event

handlers to the corresponding events of a NodeModel object. All nodes added to the node model will be represented by a NodeControl, which can be accessed using the

Controls property of the base class UserControl.


The user now can scroll the map and move the nodes on the map. Moved nodes raise a NodeUpdated event in the

NodeModel.
A node is selected by tapping on it and the selection is visualised by enlarging event the is node. raised and The the

SelectedNodeChanged SelectedNode
properties are set. Some visual aspects and

SelectedNodeControl

can

be

set

using

the

AccessPointColor, ClientColor, ReferencePointColor, NodeSize, and FixNodeImage properties. They adjust the appearance of
the used NodeControl controls. The functionality of the encapsulated ImageScroller control is wrapped and made public in the CenterOn,

ClientToImageCoordinates, ImageToClientCoordinates
functions, and the

ZoomFactor property. If the image is scrolled or zoomed


all NodeControl controls will be moved accordingly.
Figure 8-18: MapControl

MapControl
properties:

offers

two

specialised

context

menu Class and

ImageContextMenu

NodeContextMenu. ImageContextMenu is used once the user taps and holds the
map. The position on the map the user tapped on can be determined by evaluating the
54

8. Case Study

static property Control.MousePosition which returns the pen position on the screen. This position can be transformed into map coordinates by calling the and

MapControl.PointToClient

MapControl.ClientToImageCoordinates methods. NodeContextMenu is


used once the user taps and holds a node. The tapped node is stored in the

NodeContextMenu.SourceControl property.
In the case study application these context menus are used to provide additional functionality: centre the map on a node, centre the map on the tapped position, zoom in and zoom out, add a reference point at the tapped position, and fix a nodes position in the model. The methods DrawCircles and DrawPolygon demonstrate a way to draw additional graphical elements on the control area. DrawCircles expects an array of

Rectangles and draws circles or ellipses in the specified rectangles. DrawPolygon


expects an array of Point and draws a polygon specified by these points on the control. The implemented algorithms use this functionality to visualise their results. These methods may be extended later to draw edges from clients to access points.

NodeControl NodeControl is used by MapControl to visualise nodes


in the model. It is derived from SelfMover (see section 8.4.2). The added functionality is focussed on the needs of the MagicMapCE client. The Node property holds a reference to the corresponding node in the node model. It may be used to read the name, MAC address or other information. The displayed colour can be changed using the ForeColor property. A node can be set to fix using the Fix property. It then cannot be moved and displays the bitmap referenced in

FixImage.

8.4.4.

Algorithms
Figure 8-19: NodeControl Class

The Algorithms project contains classes to calculate positions using the model provided in the NodeModel project. The two most important classes are the

AlgorithmBase

and
55

NodeDictionaryReducerBase classes. These two classes already make use of

8. Case Study

the new NodeDictionary collection instead of the NodeHashtable as they were developed later than the node model.

Figure 8-20: Algorithms Class Diagram

The interval between two algorithm runs is currently set to five seconds. The relatively high pause allows the following of algorithm results on the screen and saves power on the PDAs.

56

8. Case Study

NodeDictionaryReducerBase Class
Classes derived from NodeDictionaryReducerBase reduce the complexity of the problem the algorithm has to solve by removing nodes, which are not needed from the node model. This makes computations faster and more accurate.

NodeDictionaryReducerBase

reduces

the

nodes

contained in a NodeDictionary collection using rules specified in derived classes.. This functionality has to be implemented by the derived class by overriding the

ReduceAction method. Configure is called by the administration class and may be


used to show a settings screen or similar. NodeModel Figure 8-21: contains a reference to the node model it is working on. This NodeDictionaryReducerBase is mainly used for configuration purposes.
Class

NoReductionReducer
This reducer does not do anything. It is included for proof of concept only.

MinimalSignalLevelReducer
This reducer allows only access point with signal strength stronger than the specified minimum.

KNearestReducer
This reducer only allows the k nearest access points, which are the ones with the strongest signal strength received, to be used in computations.

SelectedNodesOnlyReducer
This reducer only allows nodes previously specified in the settings screen to be used in computations.

57

8. Case Study

AlgorithmBase Class AlgorithmBase (figure 8-22) is the base class for algorithms
that work on the node model. Derived classes override the

Compute method to implement the algorithm functionality. ComputePositions is the public call to start the
computation. It starts by reducing the nodes available for calculations by executing the reducer classes contained in the

NodeDictionaryReducers collection. Then the Compute


method is called and finally the

FinishedComputePositons event is raised.


The algorithms are working on NodeDictionary collections.

NodeHashtable collections from the NodeModel are


converted by the NHT2ND method.

Status is supposed to provide status information about


progress of the algorithm. For example the accuracy of the solution may be placed in that field and read by the calling class when the computation is finished.
Figure 8-22: AlgorithmBase Class

Configure is called by the algorithm selection screen and


may be overridden to change settings of the algorithms. It may display a form or a dialogue to configure the algorithm. Some debugging functionality is provided by the CheckingNewCircle and

CheckingNewPosition events: in case the event is raised the NewCircle or NewPosition are to be filled with a rectangle specifying a circle respectively a point.
Calling instances may use these values to observe the progress of the algorithm. This implementation is necessary to keep the algorithms call multithreading compatible. The .NET Compact Framework allows EventHandler calls only among different threads and permits read/write operations but no standard method calls.

No Computing Algorithm
This is a proof of concept implementation of the algorithm base class. It does no computing.

58

8. Case Study

Centre of Mass Algorithm


This algorithm computes the centre of mass of all access points using the signal strength as measure for the mass. This method works only in case the access points are placed on the outer corners of the map. It was implemented as a first attempt to produce results on the screen.

Distance Probability Algorithm


This was the first attempt to use the described propagation and weighting model for position sensing. The algorithm uses Simulated Annealing (see 7.5) to find the most probable solution. The space of possible solution is too big and the algorithm took too long to find the highest weighting. This problem is solved in the Two Level Position Weighting algorithm.

Two Level Position Weighting Algorithm


This class contains the implementation of the algorithm described in section 7. The used propagation model is transformed to
S
S0

d = k 10 10 n , k = d 0 10 10 n .

(22)

The parameters k and n have been determined from empirical data using the Microsoft Excel solver (see Appendix A: Propagation Model Parameters). Figure 8-23 shows the settings screen of the algorithm options:

which

allows

defining

several

Meter2MapFactor

specifies

the

number of points that equal one metre on the selected map. Future versions will use geo reference points to calculate this factor. The button Average returns the number of points equalling the average Figure 8-23: Two Level Position Weighting distance between the currently client Algorithm Settings Screen position and seen access points.

59

8. Case Study

The k and n values specify the parameters for the propagation model. The values shown in figure 8-23 are from the Dell Axim X5.

Perform Refine allows disabling of the second step of the search for the highest weighting.

Client Movement switches the stronger weighting of the client surrounding on or off. It is greyed out as the functionality is not yet implemented.

Reference Measurements enables or disables the use of reference measurements in the computations. This is not implemented yet and therefore greyed out as well.

Visualise Distances helps to analyse the algorithm results. It draws circles on the screen around access points with the estimated distance to the client as radius. Intersections of circles are marked as well.

The algorithm shows the found maximum weighting in the status field of the MagicMapCE application.

8.4.5.

Installer

The CabFile, CustomInstaller, and Setup projects are used to build an install package.

CabFile packs the MagicMapCE executable and libraries into a CAB file,
which can be used to install MagicMapCE by copying it on the device and tapping on it in the file explorer.

CustomInstaller builds a DLL, which causes the Microsoft Windows


Installer to call ActiveSync on the host computer and copy the CAB file on to the device and install the client.

Setup packs the cab file and the DLL file into a Microsoft Installer file (.MSI).

8.5.

Case Study Conclusion

The MagicMapCE has been improved from a passive client displaying basic information to an active part of the system with an easy to use interface and self position sensing capabilities. The programme is suitable for MagicMap users to track their position as well as for advanced users and developers, who require additional information and options. The ability to select the used algorithm and to limit the number of nodes used to compute the position offers many possibilities to fine tune the
60

9. Evaluation Tests

algorithm and to test different settings. This will improve accuracy and speed up computations. The added functionality still needs improvement. Especially, the user should be able to save the settings of algorithm and node selectors permanently. Nevertheless, the main goal to enhance the CE client and of testing and compare different algorithms is achieved. The result of the case study is an important step forward for the MagicMapCE client.

9. Evaluation Tests
First evaluation tests were successful. The client sensed the signal strength and used them to determine its position. Three access points were set up to sense the position in an office building. Extensive tests have not been conducted due to limited time. It is left for further research.

9.1.

Test Environment

The tests were performed in an indoor environment of seven rooms connected by a hallway. The walls are made of bricks and plaster. Two PDAs were used for testing: a Dell Axim X5 and a Dell Axim x51v. The types of access points installed are Netgear WGR614 (AP1) and Linksys WAP54G (AP2 and AP3). The floor plan of the test environment and access points positions are shown in figure 9-1.

61

9. Evaluation Tests

Figure 9-1: Floor Plan of Test Environment

9.2.

Tests Performed

Firstly, the parameters of the propagation model for the PDAs were determined. The signal strengths of the three access points AP1, AP2, and AP3 were measured in steps of one metre and the error of forecasted and actual distance were computed. The square sum of error was minimised using the Excel solver by varying the parameters n and k of the propagation model (see Appendix A: Propagation Model Parameters). Secondly, 150 measurements were taken with each PDA. The previously determined propagation model parameters were used to setup the algorithm. Using the node selectors, all other access points than AP1, AP2, and AP3 were excluded from computations. 15 positions were chosen randomly on the floor plan and 10 algorithm cycles were recorded. The error was estimated by comparing the computed position displayed on the screen with the actual position. The tables with the results are shown in Appendix B: Evaluation Test Result Tables. The average error with the Dell Axim X5 was 5.91m and with the Dell Axim x51v 6.70m. In 75% of all measurements the error was below 7m with the Dell Axim X5 and below 8m with the Dell Axim x51v. Figure 9-2 and figure 9-3 show a detailed analysis of error:
62

9. Evaluation Tests

16 14 12 10 25%-75% 8 6 4 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Position Overall Average Position Average

Figure 9-2: Positioning Error Dell Axim X5


25

Deviation[m]
Deviation[m]

20

15

25%-75% Overall Average Position Average

10

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Position

Figure 9-3: Positioning Error Dell Axim x51v

The dashed line shows the overall average of all measurements. The diamonds are the averaged error for each position. The lines mark the range of positioning error. The white areas mark the range of the middle 50% of measurements: 25% of measurements had more error and 25% of measurements had less error.

63

9. Evaluation Tests

9.3.
9.3.1.

Test Conclusion
CE Client

The CE client developed in the case study performs well. The new GUI is easy to use and clearly displays all required information. The node tree view is very helpful for debugging and analysing purposes. The possibility to choose algorithms during runtime and to pre-select the nodes included in position sensing allows easy adjustment of computations. Some open issues of the implementation are saving the settings of algorithms and node selectors. The communication between server and sender needs to be checked and extended to the new capabilities of the client as well.

9.3.2.

Algorithm

The algorithm performed well although the results were rather jumpy. The position changed in large steps, e.g. after a good estimate of 2m the computed position jumped to a position 12m away. This can be confirmed by using the built-in visualisation tools: the tree view showed a large deviation of signal strength and the estimated distances visualised on the screen varied greatly. First evaluation suggested the following reasons:

In general PDA receiver sensitivity seems to be very sensitive to device


orientation. A change of 90 produced a difference of up to 5dBm.

A human body between access point and PDA caused additional deviation of 5dBm. As PDAs are held in hand or carried in pockets this is a common problem.

The angle to the access point produced deviation of 5dBm as well. This difference was observed with Linksys WAP54G models in a distance of three metres. They are equipped with two antennas. Access points using a single antenna did not show this phenomenon.

Depending on the propagation model and distance to access point the deviation can cause a difference of up to 10m in estimated distance. Therefore, the results seem to be jumpy. This problem can be tackled by enlarging the signal strength window: More measurements return a more stable average. However, this causes additional delay to notice device movement and more inaccuracy while moving.

64

10. Conclusion and Outlook

When the client position will be included in computations this will smooth the results and these leaps will be reduced as well. The problem may also be reduced in test environments with more access points: The conceptual design of the algorithm is built to deliver better results when more information is available: more access points, more reference measurements, or information from other clients. Its basic principle can evaluate all information and make the result more exact. Further tests should vary the amount of information available. In general the positioning error was bigger when the position was in greater distance to the access points. This is probably the result of a bad fit of the propagation model parameter. Further test should use more measurements to fit the parameters and especially include wider ranges than the ones used here.

9.3.3.

Devices

The newer Dell Axim x51v is more sensitive towards radio signals than the Dell Axim X5 although the sensitivity should be standardised (see Appendix A: Propagation Model Parameters). This causes problems as different parameters have to be determined for each PDA model to acquire the same position sensing results. The parameters of the propagation model have to be verified empirically for different PDAs and in different environments. Another problem occurred using the x51v. The NDIS driver of the new Windows Mobile 2005 seems to limit the resolution of signal strength measurements to steps of 10dBm. Only the signal strength of the currently associated access point is resolved in steps of 1dBm. This explains the lower accuracy of the Dell Axim x51v although its WLAN adapter is more sensitive.

10. Conclusion and Outlook


WLAN based position sensing is a trade off of calibration effort and accuracy. The most accurate systems are based on radio maps and achieve accuracy of up to two metres. Systems based on propagation models deliver accuracy of around four metres but do not require much initial effort. The presented algorithm offers a combination of little initial calibration effort and achievable accuracy. It provides acceptable results with only a few known access point positions. The average accuracy achieved in first tests was 5.91m using the Dell Axim X5 and 6.70m using the Dell Axim x51v. So far, an improvement of accuracy was not
65

10. Conclusion and Outlook

achieved but computation effort is reduced. Hence, the algorithm needs further fine tuning: The assigned weightings for the different classes of information have to be balanced against each other. Also, the accuracy of different information classes have to be analysed empirically. The improvements to the MagicMapCE client are an important step forward for the MagicMap system. Now, the client provides much more interaction with the system. The usability of the new GUI is much better. The possibility for advanced users to adjust algorithm specific settings and to select nodes to be used in calculations offers many possibilities to increase the accuracy of algorithm results. The MagicMap client for Windows CE on PDAs may increase the acceptance of WLAN based position sensing as people who are moving around are more likely to carry a PDA than a laptop. The drawback of using PDAs lies in the lower sensitivity of reception of WLAN signals and the higher device orientation depending deviation of signal strengths. Nevertheless, using WLAN offers a low cost solution to provide position information for location based services. However, the development of the new WLAN standard 802.11n using the MIMO technology is not compatible to the WLAN based position sensing methods developed so far. Position sensing requires a constant transmission power emitted by a single antenna. MIMO adapts the transmission power dynamically to the needs of the served client using multiple antennas. Users will switch to the new standard because it provides higher data rates and increased range. New approaches have to be developed to realise position sensing using MIMO technology. Switching to position sensing using other standard technologies like Bluetooth, RFID, ZigBee, or RuBee provides accuracy similar to WLAN, but these technologies are by far not as widespread. Systems based on these technologies would require a new infrastructure of base stations and receivers. However, in case an area is to be covered with position sensing equipment the investment in technologies using TOA or TDOA technologies promises better results. Proprietary systems, which are out of the scope of this thesis since they are not based on WLAN or standard networking technologies, are specialised on indoor position sensing and achieve much higher accuracy. The real-time location system built by Ubisense uses ultra-wideband (UWB) technology based on a combination of TDOA and AOA to

66

10. Conclusion and Outlook

sense a tags position. It reaches accuracy of 30cm and can process thousands of tags but needs four sensors for an area of 400m (Ubisense 2006). The gap of GPS reception failure when used in indoor or downtown areas may be bridged by using different frequencies. The US company Rosum uses television signals as they easily pass walls in combination with GPS receivers to provide a seamless indoor and outdoor position sensing system. Portable systems are available as well. They can be used for tracking people in emergency management scenarios (Rosum Corporation 2006). WLAN is able to provide basic accuracy for position sensing but the effort to increase accuracy by is very high. The Place Lab approach to use WLAN position sensing with as less initial effort as possible seems more practical. In case more accuracy is needed the use of specialised systems is more appropriate. The proposed algorithm is still in a very early state of development but offers many opportunities for further development.

67

References

References
Anastasi, G., Bandelloni, R., Conti, M., Delmastro, F., Gregori, E. & Mainetto, G. 2003, 'Experimenting an Indoor Bluetooth-based Positioning Service', paper presented to International Conference on Distributed Computing Systems Workshops (ICDCS Workshops 2003), Rhode Island, May. Assistant Secretary of Defence 2001, Global Positioning System Standard Positioning Service Performance Standard, viewed 18/06/2006 <www.navcen.uscg.gov/gps/geninfo/2001SPSPerformanceStandardFINAL.pdf>. Bahl, P. & Padmanabhan, V. N. 2000, 'Radar: An in-building rf-based user location and tracking system', IEEE Infocom 2000, vol. 2, no. March, pp. 775-84. Bahl, P., Padmanabhan, V. N. & Balachandran, A. 2000, Enhancements to the RADAR User Location and Tracking System, MSR-TR-2000-12, Microsoft Research. Berna, M., Sellner, B., Lisien, B., Thrun, S., Gordon, G. & Pfenning, F. 2003, 'A Learning Algorithm for Localizing People Based on Wireless Signal Strength that Uses Labeled and Unlabeled Data', paper presented to International Joint Conference on Artificial Intelligence (IJCAI). Bluetooth SIG 2001, Specification of the Bluetooth System 1.1, viewed 18/06/2006 <https://www.bluetooth.org/foundry/specification/document/Bluetooth_Core_1.1_ vol_1/en/1/Bluetooth_Core_1.1_vol_1.zip>. ---- 2004, Bluetooth Specification Version 2.0 + EDR, viewed 18/06/2006 <http://www.bluetooth.com/NR/rdonlyres/1F6469BA-6AE7-42B6-B5A165148B9DB238/840/Core_v210_EDR.zip>. ---- 2006, Homepage, viewed 25/07/2006 <http://www.bluetooth.com/>. Cheng, Y.-C., Chawathe, Y. & Krumm, J. 2005, Accuracy Characterization for Metropolitan-scale Wi-Fi Localization, Intel Research. Demtrder, W. 1999, Experimentalphysik, 2. edn, vol. 2 Elektrizitt und Optik, 4 vols., Springer Verlag, Berlin Heidelberg New York. Dornbusch, P. & Zndt, M. 2002, 'Realisierung von Positionsortungen in WLAN', paper presented to ITG-Fachtagung "Technologie und Anwendungen fr die mobile Informationsgesellschaft", Dresden, Germany. Ekahau 2006, Homepage, viewed 03/08/2006 <http://www.ekahau.com/>. Feldmann, S., Kyamakya, K., Zapater, A. & Lue, Z. 2003, 'An indoor Bluetooth-based positioning system: concept, Implementation and experimental evaluation', paper presented to ICWN'03, Las Vegas, USA, June. Fretzagias, C. & Papadopouli, M. 2004, 'Cooperative Location-Sensing for Wireless Networks', paper presented to Second IEEE International conference on Pervasive Computing and Communications 2004, Orlando, Florida, March 14-17. Hashemi, H. 1993a, 'Impulse Response Modeling of Indoor Radio Propagation Channels', IEEE Journal on Selected Areas in Communications, vol. 11, no. 7, pp. 967-78. ---- 1993b, 'The Indoor Radio Propagation Channel', Proceedings of the IEEE, vol. 81, no. 7, pp. 943-68.
68

References

Hatami, A. & Pahlavan, K. 2005, 'A comparative performance evaluation of RSS-based positioning algorithms used in WLAN networks', paper presented to Wireless Communications and Networking Conference, 2005 IEEE. Herecast 2006, Homepage, viewed 01/08/2006 <http://www.herecast.com/>. Hii, P. & Zaslavsky, A. 2005, 'Improving Location Accuracy by Combining WLAN Positioning and Sensor Technology', paper presented to Workshop on Real-World Wireless Sensor Networks REALWSN05, Stockholm, Sweden. Ibach, P., Hbner, T. & Schweigert, M. 2004, 'MagicMap - Kooperative Positionsbestimmung ber WLAN', paper presented to Chaos Communication Congress, Berlin, 27. - 29. Dez. 2004. Ibach, P., Schreiner, F., Stantchev, V. & Ziemek, H. 2005, 'Ortung drahtlos kommunizierender Endgerte mit GRIPS/MagicMap', paper presented to 35. Jahrestagung der Gesellschaft fr Informatik, Bonn. Ibach, P., Stantchev, V., Lederer, F., Wei, A., Herbst, T. & Kunze, T. 2005, 'WLANBased Asset Tracking for Warehouse Management', paper presented to IADIS International Conference e-Commerce, Porto, Portugal, December 15-17. IEEE 2006, Homepage, viewed 11/08/2006 <http://www.ieee.org/portal/site>. IEEE Standards Association 1999a, 802.11a Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications Amendment 1: High-speed Physical Layer in the 5 GHz band, IEEE, viewed 18/06/2006 <http://standards.ieee.org/getieee802/download/802.11a-1999.pdf>. ---- 1999b, 802.11b Wireless LAN MAC and PHY specifications: Higher speed Physical Layer (PHY) extension in the 2.4 GHz band, IEEE, viewed 18/06/2006 <http://standards.ieee.org/getieee802/download/802.11b-1999.pdf>. ---- 2003a, 802.11g Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specificationsAmendment 4: Further Higher-Speed Physical Layer Extension in the 2.4 GHz Band, IEEE, viewed 18/06/2006 <http://standards.ieee.org/getieee802/download/802.11g-2003.pdf>. ---- 2003b, 802.15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (LRWPANs), IEEE, viewed 24/07/2006 <http://standards.ieee.org/getieee802/download/802.15.4-2003.pdf>. ---- 2004, 802.16 Air Interface for Fixed Broadband Wireless Access System, IEEE, viewed 26/07/2006 <http://standards.ieee.org/getieee802/download/802.162004.pdf>. ---- 2005, 802.15.1: Wireless medium access control (MAC) and physical layer (PHY) specifications for wireless personal area networks (WPA N s ), IEEE, viewed 25/07/2006 <http://standards.ieee.org/getieee802/download/802.15.1-2005.pdf>. ---- 2006, RuBee Standard for Long Wavelength Network Protocol, viewed 25/07/2006 <http://standards.ieee.org/board/nes/projects/1902.pdf>. Informationsforum RFID 2006, Homepage, viewed 26/07/2006 <http://www.inforfid.de/index.html>. Intel 2004, 'Global, Interoperable Broadband Wireless Networks: Extending WiMAX Technology to Mobility', Intel Technology Journal, vol. 8, no. 03, pp. 173-88.
69

References

jackMobile 2006, Homepage, viewed 12/08/2006 <http://www.jackmobile.de/index.html>. JUNG 2006, Java Universial Network / Graph Framework, viewed 29/07/2006 <http://jung.sourceforge.net/>. Kaemarungsi, K. & Krishnamurthy, P. 2004, 'Modeling of indoor positioning systems based on location fingerprinting', paper presented to INFOCOM 2004. Twentythird AnnualJoint Conference of the IEEE Computer and Communications Societies. Kirkpatrick, S., Gelatt, C. D. & Vecchi, J. M. P. 1983, 'Optimization by Simulated Annealing', Science, vol. 220, no. 4598, pp. 671-80. Kollmann, T. 2006, Gib UMTS eine Chance, Manager Magazin, viewed 14/08/2006 <http://www.manager-magazin.de/it/gruender/0,2828,400634,00.html>. Krishnakumar, A. S. & Krishnan, P. 2005, 'On the accuracy of signal strength-based estimation techniques', paper presented to INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE. Krishnan, P., Krishnakumar, A. S., Ju, W.-H., Mallows, C. & Ganu, S. 2004, 'A System for LEASE: Location Estimation Assisted by Stationary Emitters for Indoor RF Wireless Networks', paper presented to IEEE InfoCom 2004. Ladd, A. M., Bekris, K. E., Rudys, A., Marceau, G., Kavraki, L. E. & Wallach, D. S. 2002, 'Robotics-Based Location Sensing using Wireless Ethernet', paper presented to MOBICOM'02, Atlanta, Georgia, USA, 23-26 September. Li, B., Salter, J., Dempster, A. G. & Rizos, C. 2006, 'Indoor Positioning Techniques Based on Wireless LAN', School of Surveying & Spatial Information Systems, University of New South Wales. Lorincz, K. & Welsh, M. 2005, 'MoteTrack: A Robust, Decentralized Approach to RFBased Location Tracking', paper presented to International Workshop on Location and Context-Awareness (LoCA 2005) at Pervasive 2005, Oberpfaffenhofen near Munich, May 12-13, 2005. Lderitz, S. & Engel, W. 2006, 'WLAN Ortung mit PDAs', Humboldt Universitt. Madigan, D., Einahrawy, E., Martin, R. P., Ju, W.-H., Krishnan, P. & Krishnakumar, A. S. 2005, 'Bayesian indoor positioning systems', paper presented to INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE. MagicMap 2006, Homepage, viewed 02/08/2006 <http://www2.informatik.huberlin.de/rok/MagicMap/>. Menz, M. 2005, 'RFID-basierte Positionsbestimmung', Informatik, Humboldt Universitt. Mobiloco 2006, Homepage, viewed 12/08/2006 <http://www.mobiloco.de/html/index.jsp>. Navstar GPS Joint Program Office 2006, Homepage, viewed 18/06/2006 <http://gps.losangeles.af.mil/index.html>. Ni, L. M., Liu, Y., Lau, Y. C. & Patil, A. P. 2004, 'LANDMARC: Indoor Location Sensing Using Active RFID', Wireless Networks, vol. 10, no. 6, pp. 701-10.
70

References

Nomads 2006, MagicMap Wiki, viewed 22/07/2006 <http://wiki.informatik.huberlin.de/nomads/index.php/MagicMap>. Open Geospatial Consortium (OGC) 2006, OpenGIS Location Service (OpenLS) Implementation Specification: Core Services (1.1), viewed 10/08/2006 <http://www.opengeospatial.org/standards/olscore>. Plazes 2006, Homepage, viewed 01/08/2006 <http://beta.plazes.com/>. Prasithsangaree, P., Krishnamurthy, P. & Chrysanthis, P. K. 2002, On Indoor Position Location with Wireless LANs, University of Pittsburgh. Roos, T., Myllymki, P., Tirri, H., Misikangas, P. & Sievnen, J. 2002, 'A Probabilistic Approach to WLAN User Location Estimation', International Journal of Wireless Information Networks, vol. 9, no. 3, pp. 155-64. Rosum Corporation 2006, Homepage, viewed 03/08/2006 <http://www.rosum.com/>. Saha, S., Chaudhuri, K., Sanghi, D. & Bhagwat, P. 2003, 'Location determination of a mobile device using IEEE 802.11b access point signals', paper presented to Wireless Communications and Networking, 2003. WCNC 2003. 2003 IEEE. Schuman, E. 2006, RuBee Offers an Alternative to RFID, eWeek Channel Insider, viewed 25/07/2006 <http://www.thechannelinsider.com/article/RuBee+Offers+an+Alternative+to+RF ID/180573_1.aspx>. Schweigert, M. & Hbner, T. 2005, 'WLAN-basierte Ortung mit MagicMap', Humboldt Universitt. Seidel, S. Y. & Rappaport, T. S. 1992, '914 MHz Path Loss Prediction Models for Indoor Wireless Communication in Multifloored Buildings', IEEE Transactions on Antennas and Propagation, vol. 40, no. 2, pp. 207-17. Shoemake, M. B. 2001, Wi-Fi (IEEE 802.11b) and Bluetooth Coexistence Issues and Solutions for the 2.4 GHz ISM Band. Skyhook Wireless 2006, Homepage, viewed 11/08/2006 <http://www.skyhookwireless.com/index.html>. Steglich, S. 2004, 'Lecture Slides UMTS Akademie', OKS, Technische Universitt Berlin. Stevens, J. K. 2006, IEEE Begins Wireless, Long-Wavelength Standard for Healthcare, Retail and Livestock Visibility Networks, IEEE, viewed 27/06/2006 <http://standards.ieee.org/announcements/pr_p19021Rubee.html>. Tonteri, T. 2001, 'A Statistical Modeling Approach to Location Estimation', Department of Computer Science, University of Helsinki. Ubisense 2006, Homepage, viewed 04/08/2006 <http://www.ubisense.net/>. Wallbaum, M. 2004, 'Tracking of moving wireless LAN terminals', paper presented to PIMRC 2004. 15th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications. Youssef, M. 2003, 'Small-Scale Compensation for WLAN Location Determination Systems', paper presented to IEEE Wireless Communications and Networks Conference, New Orleans, Louisiana, USA, 16-20 March. Youssef, M. & Agrawala, A. 2003, On the Optimality of WLAN Location Determination Systems, UMIACS-TR 2003-29 and CS-TR 4459, University of Maryland.
71

References

---- 2004, 'Continuous Space Estimation for WLAN Location Determination Systems', paper presented to IEEE Thirteenth International Conference on Computer Communications and Networks, Chicago, IL USA, October 11-13. ---- 2005, 'The Horus WLAN Location Determination System', paper presented to Proceedings of the Third International Conference on Mobile Systems, Applications, and Services (MobiSys 2005), Seattle, WA USA, June. Youssef, M. A., Agrawala, A. & Shankar, A. U. 2003, 'WLAN Location Determination via Clustering and Probability Distributions', paper presented to IEEE International Conference on Pervasive Computing and Communications (PerCom), Fort Worth, Texas, March 23-26. ZigBee Alliance 2006, Homepage, viewed 25/07/2006 <http://www.zigbee.org/en/index.asp>.

72

Appendix A: Propagation Model Parameters

Appendix A: Propagation Model Parameters


The signal strengths of three access points AP1, AP2, and AP3 were measured in distances of 0.5m and afterwards every metre. The error is the difference between mean value and forecasted value. The square sum of error was minimised using the Excel solver by varying the parameters n and k of the propagation model.

Dell Axim X5
Distance(m) 0.5 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 12.0
0 0 -10 -20 -30 dB -40 -50 -60 -70 -80 Distance AP3 AP2 AP1 Mean Forecast 2 4 6 8 10 12 14

AP1(dBm) -31.0 -44.0 -45.0 -47.0 -51.0 -55.0 -58.0 -61.0 -65.0

AP2(dBm) -35.0 -43.0 -49.0 -51.0 -52.0 -50.0 -54.0 -59.0

AP3(dBm) -30.0 -40.0 -44.0 -46.0 -49.0 -49.0 -49.0 -54.0 -57.0 -66.0 -68.0 -69.0 -70.0

Mean(dBm) -32.0 -42.3 -46.0 -48.0 -50.7 -51.3 -53.7 -58.0 -61.0 -66.0 -68.0 -69.0 -70.0

Forecast (dBm) -30.4 -38.2 -46.1 -50.7 -54.0 -56.5 -58.6 -60.3 -61.8 -63.2 -64.4 -65.4 -66.4

Error(dBm) -1.6 -4.1 0.1 2.7 3.3 5.2 4.9 2.3 0.8 -2.8 -3.6 -3.6 -3.6

Square sum of error: 140.99 n: 2.61097057 k: 0.03428622

73

Appendix A: Propagation Model Parameters

Dell Axim x51v


Distance 0.5 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0
0 0 -10 2 4 6 8 10

AP1 -31.0 -44.0 -45.0 -47.0 -51.0 -55.0 -58.0 -61.0 -65.0

AP2 -35.0 -43.0 -49.0 -51.0 -52.0 -50.0 -54.0 -59.0

AP3 -30.0 -40.0 -44.0 -46.0 -49.0 -49.0 -49.0 -54.0 -57.0

Mean -32.0 -42.3 -46.0 -48.0 -50.7 -51.3 -53.7 -58.0 -61.0

Forecast -25.5 -32.7 -39.9 -44.1 -47.1 -49.5 -51.4 -53.0 -54.4

Difference -6.5 -9.6 -6.1 -3.9 -3.5 -1.9 -2.3 -5.0 -6.6

-20 AP3 -30 dBm AP2 AP1 -40 Mean Forecast -50

-60

-70 Distance

Square sum of error: 69.45 n: 2.40030540 k: 0.04347435

74

Appendix B: Evaluation Test Result Tables

Appendix B: Evaluation Test Result Tables


Dell Axim X5
Position 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 6 4 2 4 3 3 1 2 2 5 2 10 4 4 3 6 5 2 7 3 2 2 2 2 2 10 2 5 4 2 5 4 5 8 3 2 5 10 10 10 12 1 5 3 1 1 6 5 6 4 12 6 10 12 12 12 2 4 4 10 Deviation [m] 0 1 6 8 7 7 6 6 5 5 12 12 6 6 12 10 1 2 15 5 1 15 4 4 6 4 4 6 12 3 1 4 7 7 6 12 6 12 10 15 10 6 2 7 4 1 10 6 6 5 2 5 10 10 12 10 4 4 6 5 2 8 5 7 6 2 6 2 10 15 12 4 6 6 3 4 8 7 6 4 12 5 2 12 12 10 2 4 7 1

Number: Average: Minimum: 25% Quartile: Median: 75% Quartile: Maximum:

150 5.91m 0m 3m 5m 9m 15m

75

Appendix B: Evaluation Test Result Tables

Dell Axim x51v


Position 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 0 5 3 3 6 2 2 20 3 2 6 2 2 3 4 1 2 6 3 6 2 15 15 3 6 5 2 3 3 4 1 1 6 5 8 3 15 20 2 6 4 2 6 5 4 2 1 8 3 9 2 15 20 4 4 5 2 7 5 Deviation [m] 1 1 2 4 3 3 8 8 6 6 6 4 2 20 15 15 20 20 3 6 4 4 5 20 2 2 7 4 8 8 1 6 3 10 6 5 20 15 15 7 4 20 2 3 8 2 10 3 5 6 4 2 20 15 7 4 18 2 4 10 2 6 3 5 3 4 2 20 20 7 4 18 2 5 20 4 7 5 4 4 6 2 20 20 7 4 20 2 5 4

Number: Average: Minimum: 25% Quartile: Median: 75% Quartile: Maximum:

150 6.70m 0m 3m 5m 8m 20m

76

Appendix C: Zusammenfassung in deutscher Sprache

Appendix C:

Zusammenfassung in deutscher Sprache

Diese Diplomarbeit beschftigt sich mit verschiedenen Mglichkeiten, die Genauigkeit von WLAN-basierten Ortungssystemen zu erhhen. Ortungssysteme sind eine Vorraussetzung fr standortbezogene Dienste. Auch in der Logistik sind Ortungssysteme zum Beispiel in der Lagerhausverwaltung von Nutzen. Bislang gibt es kein standardisiertes System, das Ortungsinformationen in Innenrumen und Innenstdten zur Verfgung stellt. GPS versagt hier, da die Gerte im Funkschatten von Husern keinen Satellitenempfang haben. In den letzten Jahren wurden unterschiedliche WLAN-basierte Ortungssysteme entwickelt. WLAN ist als Standard weit verbreitet und bietet sich daher an, um in Innenstdten flchendeckende Ortung zu ermglichen. Einige Internetgemeinschaften bieten eine kollaborative, zellbasierte Ortung an. Andere Systeme mit hherer Genauigkeit bentigen eine exakte Einmessung der Signalstrken. Einen Kompromiss ermglichen Ortungsverfahren, die auf einem Ausbreitungsmodel basieren: Sie ermglichen relativ exakte Ortung mit moderatem Aufwand. Um die Ortungsgenauigkeit zu erhhen, kann entweder WLAN mit anderen Technologien kombiniert werden oder die Ortungsmethoden mit WLAN knnen optimiert werden. Alternative Technologien wurden untersucht, scheinen aber keine signifikante Erhhung der Genauigkeit zu ermglichen. Einige Technologien versprechen Verbesserungen, haben aber eine kleinere Reichweite als WLAN und knnen daher nur lokal eingesetzt werden. Bei einer Begrenzung der Technologien auf WLAN bestehen

Optimierungsmglichkeiten in der stndigen berwachung der Signalstrken, der Benutzung von zustzlichen Messgerten (stationr und mobil), der automatischen Erstellung von Signalstrkenkarten oder durch Verbesserungen bei der eingesetzten Software. Der von dieser Arbeit eingeschlagene Weg ist die Entwicklung eines neuen Algorithmus. Der entwickelte Two Level Position Weighting (Zweistufiger Positionsgewichtungs-) Algorithmus ist in der von Lage, verschiedene Informationsarten wie oder Signalstrkemessungen Zugangsknoten, Referenzmessungen

Bewegungsmodelle mit in die Berechnung einzubeziehen. Fr jede mgliche Position wird eine Gewichtung bestimmt. Die Position mit der hchsten Gewichtung ist der
77

Appendix C: Zusammenfassung in deutscher Sprache

vermutete Aufenthaltsort. Der Algorithmus ermglicht eine Grundgenauigkeit mit einigen wenigen bekannten Zugangsknotenpositionen. Je mehr zustzliche Informationen bekannt sind, desto genauer wird die Positionsbestimmung. Der Algorithmus wurde in einer Fallstudie fr einen PDA auf Basis von Windows CE implementiert. Die Weiterentwicklung des bestehenden Clients des MagicMap Systems der Humboldt Universitt Berlin resultierte in einer neuen Oberflche, die mehr Interaktion erlaubt, einer Neustrukturierung der Kernfunktionen sowie einer einheitlichen Schnittstelle fr verschiedene Algorithmen. Erste Tests verliefen erfolgreich. Allerdings scheinen die Signalstrkemessungen auf PDAs bauartbedingt noch ungenauer zu sein als auf Laptops. Die erreichte Genauigkeit betrug durchschnittlich 5,91m mit dem Dell Axim X5 und 6,70m mit dem Dell Axim x51v. Ausfhrliche Tests unter anderem um die Gewichtung des Algorithmus einzustellen, stehen noch aus. Eine Erhhung der Genauigkeit von WLAN-basierter Positionsbestimmungen ist mglich, allerdings sehr aufwndig. Spezialisierte Techniken bieten eine hhere Genauigkeit bei geringerem Aufwand. Einfache WLAN-basierte Ortungsverfahren ermglichen jedoch eine Grundgenauigkeit, die fr viele Anwendungen bereits ausreicht. Zurzeit bietet WLAN eine kostengnstige Mglichkeit, Positionen in Innenstdten und in Husern zu bestimmen.

78

Die selbstndige und eigenhndige Anfertigung versichere ich an Eides statt. Berlin, den 24. August 2006

_________________________________ (Unterschrift)

Anda mungkin juga menyukai