accuracy improvement of wlan based

88
Accuracy Improvement of WLAN Based Position Sensing Freie wissenschaftliche Arbeit zur Erlangung des Grades Diplom-Ingenieur an der Technischen Universität Berlin Institut für Wirtschaftsinformatik Fachgebiet Systemanalyse und EDV Prof. Dr. Hermann Krallmann Vorgelegt von: Stefan Brüning Studiengang: Wirtschaftsingenieurwesen Matrikelnummer: 199375 Adresse: Bamberger Str. 28 10779 Berlin E-Mail: [email protected] Betreuer: Prof. Dr. Hermann Krallmann Assistierender Betreuer: M.A. Vladimir Stantchev Abgabedatum: 24. August 2006

Upload: tommy-walker

Post on 06-Mar-2015

85 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Accuracy Improvement of WLAN Based

Accuracy Improvement of WLAN Based

Position Sensing

Freie wissenschaftliche Arbeit zur Erlangung

des Grades Diplom-Ingenieur

an der

Technischen Universität Berlin

Institut für Wirtschaftsinformatik

Fachgebiet Systemanalyse und EDV

Prof. Dr. Hermann Krallmann

Vorgelegt von: Stefan Brüning Studiengang: Wirtschaftsingenieurwesen Matrikelnummer: 199375 Adresse: Bamberger Str. 28

10779 Berlin E-Mail: [email protected] Betreuer: Prof. Dr. Hermann Krallmann Assistierender Betreuer: M.A. Vladimir Stantchev Abgabedatum: 24. August 2006

Page 2: Accuracy Improvement of WLAN Based

Abstract

I

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.

Page 3: Accuracy Improvement of WLAN Based

Table of Contents

II

Table of Contents

Abstract ....................................................................................................................... I

List of Figures ............................................................................................................ V

List of Abbreviations................................................................................................ VII

1. Introduction ........................................................................................................ 1

2. Problem Statement............................................................................................. 2

2.1. Research Plan .............................................................................................. 3

2.2. Approach ...................................................................................................... 3

3. Radio Wave Based Position Sensing................................................................ 4

3.1. Characteristics of Radio Waves .................................................................... 4

3.1.1. Ideal Radio Signal Propagation ............................................................. 5

3.1.2. Radio Wave Attenuation........................................................................ 5

3.1.3. Propagation Models .............................................................................. 6

3.1.4. Use of Models ....................................................................................... 7

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

3.2.1. Cell of Origin (COO).............................................................................. 7

3.2.2. Angle of Arrival (AOA)........................................................................... 8

3.2.3. Time of Arrival (TOA) ............................................................................ 9

3.2.4. Time Difference of Arrival (TDOA)......................................................... 9

3.2.5. Receiver Signal Strength (RSS) ............................................................ 9

4. WLAN Based Position Sensing ........................................................................10

4.1. Wireless Local Area Networks .....................................................................10

4.1.1. The WLAN Standards ..........................................................................11

4.1.2. Difficulties Using 2.4 GHz.....................................................................12

4.2. Using WLAN for Position Sensing................................................................13

4.3. Classes of Algorithms ..................................................................................14

4.3.1. Empirical Signal Strength Based Algorithms ........................................14

4.3.2. Propagation Model Based Algorithms ..................................................14

4.3.3. Probabilistic Algorithms........................................................................15

4.3.4. Collaborative Algorithms ......................................................................15

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

4.4.1. Horus System ......................................................................................16

4.4.2. RADAR System....................................................................................16

4.4.3. LEASE System.....................................................................................17

Page 4: Accuracy Improvement of WLAN Based

Table of Contents

III

4.4.4. MagicMap ............................................................................................17

4.4.5. MoteTrack ............................................................................................18

4.4.6. Place Lab.............................................................................................18

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

4.5.1. Bayesian Inference Engine ..................................................................19

4.5.2. Markov Localisation .............................................................................19

4.5.3. Centre of Mass.....................................................................................19

4.5.4. Time Averaging....................................................................................20

4.5.5. Perturbation Technique........................................................................20

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

5. Accuracy Improvement by Combining WLAN with Other Network

Technologies .....................................................................................................21

5.1. Bluetooth .....................................................................................................21

5.2. RFID ............................................................................................................22

5.3. ZigBee .........................................................................................................23

5.4. RuBee..........................................................................................................24

5.5. GSM ............................................................................................................24

5.6. WiMax..........................................................................................................25

5.7. GPS.............................................................................................................25

5.8. Potential Accuracy Improvements................................................................26

6. Accuracy Improvements Using WLAN Only....................................................27

6.1. Getting More Accurate Data.........................................................................27

6.1.1. Sniffers.................................................................................................27

6.1.2. Access Point Sniffers ...........................................................................28

6.1.3. Peer-to-Peer Signal Strength ...............................................................28

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

6.2.1. Radio Map Based.................................................................................28

6.2.2. Propagation Model Based ....................................................................29

6.2.3. Collaborative Position Sensing.............................................................29

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

6.3.1. Automatic Radio Map Creation.............................................................29

6.3.2. Detection of Wrong System Parameters...............................................30

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

6.4.1. Indoor Position Sensing .......................................................................30

6.4.2. Outdoor Position Sensing.....................................................................31

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

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

Page 5: Accuracy Improvement of WLAN Based

Table of Contents

IV

7.1. Requirements ..............................................................................................32

7.2. Basic Principle .............................................................................................33

7.3. Propagation Model.......................................................................................33

7.4. Weighting of a State.....................................................................................34

7.4.1. Distance Information ............................................................................34

7.4.2. Client Movement ..................................................................................36

7.4.3. Using Client Movement as Filter...........................................................36

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

7.5.1. Level One: Intersection Points..............................................................37

7.5.2. Level Two: Refine Result .....................................................................39

7.6. Smoothing the Results.................................................................................40

7.7. Assessment of Algorithm Development........................................................40

8. Case Study.........................................................................................................41

8.1. Update to .NET CF 2.0 ................................................................................41

8.2. New Features ..............................................................................................42

8.3. Overview......................................................................................................42

8.4. Visual Studio Projects ..................................................................................43

8.4.1. NodeModel...........................................................................................43

8.4.2. Controls................................................................................................49

8.4.3. MagicMapCE .......................................................................................51

8.4.4. Algorithms............................................................................................55

8.4.5. Installer ................................................................................................60

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

9. Evaluation Tests ................................................................................................61

9.1. Test Environment.........................................................................................61

9.2. Tests Performed ..........................................................................................62

9.3. Test Conclusion ...........................................................................................64

9.3.1. CE Client..............................................................................................64

9.3.2. Algorithm..............................................................................................64

9.3.3. Devices ................................................................................................65

10. Conclusion and Outlook ...................................................................................65

References.................................................................................................................68

Appendix A: Propagation Model Parameters.....................................................73

Appendix B: Evaluation Test Result Tables.......................................................75

Appendix C: Zusammenfassung in deutscher Sprache....................................77

Page 6: Accuracy Improvement of WLAN Based

List of Figures

V

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

Page 7: Accuracy Improvement of WLAN Based

List of Figures

VI

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

Page 8: Accuracy Improvement of WLAN Based

List of Abbreviations

VII

List of Abbreviations

AOA Angle Of Arrival

AP Access Point

CF Compact Framework

COO Cell of Origin

DECT Digital Enhanced Cordless Telecommunications

EDR Enhanced Data Rate

FAF Floor Attenuation Factor

GPS Global Positioning System

GSM Global System for Mobile Communications

GUI Graphical User Interface

IEEE Institute of Electrical And Electronics Engineers

IP Internet Protocol

ISO International Standard Organization

LAN Local Area Network

LBS Location Based Service

MAC Media Access Control

NDIS Network Device Interface Specification

NNSS Nearest Neighbour(s) in Signal Space

OSI Open System Interconnect

PDA Personal Digital Assistant

RFID Radio Frequency Identification

RSS Receiver Signal Strength

RSSI Receiver Signal Strength Indicator

RTLS Real-Time Location System

SSID Service Set Identifier

Page 9: Accuracy Improvement of WLAN Based

List of Abbreviations

VIII

TCP Transport Control Protocol

TDOA Time Difference of Arrival

TOA Time of Arrival

UMTS Universal Mobile Telecommunications System

WAF Wall Attenuation Factor

WIFI Wireless Fidelity

WLAN Wireless Local Area Network

WPAN Wireless Personal Area Network

Page 10: Accuracy Improvement of WLAN Based

1. Introduction

1

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.

Page 11: Accuracy Improvement of WLAN Based

2. Problem Statement

2

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., Hübner, 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., Hübner, 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.

Page 12: Accuracy Improvement of WLAN Based

2. Problem Statement

3

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 Universität 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.

Page 13: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

4

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 client’s 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 client’s 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.

Page 14: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

5

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

20 EcS ⋅⋅= ε (1)

with 0ε being permittivity, c being the speed of light and E being the electric field

strength (Demtröder, 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

( ))/(sin16

sin 2

230

2

2420

2

crtrc

dqS −= ω

επ

ϑω. (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 crt −ω 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 ϑ2sin . All other terms are defined as constant

factor k, which simplifies the relation between radius and received power P to

2

2sin

rkP

ϑ⋅= . (3)

Expressed in dB equation (3) is

[ ] )log(210)log(sin10)log(10 2 rkdBP ⋅⋅−⋅+⋅= ϑ . (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.

Page 15: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

6

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:

n

d

ddPL

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

)log(10])[(])[(0

0d

dndBdPLdBdPL ⋅⋅+= . (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).

( ) ( ) σΧ+

⋅⋅+=

0

0 log10d

dndPLdPL . (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

( ) OAFnOoPL ⋅= (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.

Page 16: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

7

( ) ( ) WAFnWd

dndPLdPL ⋅+

⋅⋅+=

0

0 log10 , CnW <

( ) ( ) WAFCd

dndPLdPL ⋅+

⋅⋅+=

0

0 log10 , CnW ≥

(9)

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. Methods for Position Sensing

3.2.1. Cell of Origin (COO)

The cell of origin (COO) method uses the sector or radio cell to determine a mobile

terminal’s 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. & Zündt, 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.

Page 17: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

8

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.

Figure 3-2: Angle of Arrival Method

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.

Access Point A Access Point B

Access Point C

Client

α

γ

β

Access Point A

Access Point B

Access Point C

Client

Page 18: Accuracy Improvement of WLAN Based

3. Radio Wave Based Position Sensing

9

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 terminal’s 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.

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

Access Point A

Access Point B

Access Point C

Client

Page 19: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

10

detected. The signal strengths are then transformed into distances and trilateration is

used to determine the mobile terminal’s position.

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.

Access Point A

Access Point B

Access Point C

Client

Page 20: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

11

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

Page 21: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

12

“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 beam-

forming: 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.

Page 22: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

13

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 client’s signal strength can be sensed by stationary sensors. These stationary

sensors are called sniffers (Krishnan, P. et al. 2004).

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

Page 23: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

14

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.

Page 24: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

15

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.

Page 25: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

16

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 client’s 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 terminal’s 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

Page 26: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

17

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 Universität Berlin (Ibach, P., Hübner, T. &

Schweigert, M. 2004; Schweigert, M. & Hübner, 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

Page 27: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

18

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).

Page 28: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

19

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 Bayesian’s 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.

Page 29: Accuracy Improvement of WLAN Based

4. WLAN Based Position Sensing

20

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. Small-

scale 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.

Page 30: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

21

• 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 client’s 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

Page 31: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

22

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 (so-

called 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).

Page 32: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

23

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.

Page 33: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

24

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. RuBee’s 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).

Page 34: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

25

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.

Page 35: Accuracy Improvement of WLAN Based

5. Accuracy Improvement by Combining WLAN with Other Network Technologies

26

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.

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

Accuracy

Range

1m 10m 100m 1km 10km 100km

House

City

Country-side

World

GPS

GSM

RFID RuBee WLAN ZigBee Bluetooth

Page 36: Accuracy Improvement of WLAN Based

6. Accuracy Improvements Using WLAN Only

27

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 client’s 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 client’s signal strength but the one received by sniffers.

Page 37: Accuracy Improvement of WLAN Based

6. Accuracy Improvements Using WLAN Only

28

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.

Page 38: Accuracy Improvement of WLAN Based

6. Accuracy Improvements Using WLAN Only

29

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

Page 39: Accuracy Improvement of WLAN Based

6. Accuracy Improvements Using WLAN Only

30

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

Page 40: Accuracy Improvement of WLAN Based

6. Accuracy Improvements Using WLAN Only

31

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.

Page 41: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

32

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 client’s 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.

Page 42: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

33

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 client’s 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:

( ) ( )

⋅⋅−=

0

0 log10d

dndSdS . (10)

Hence, the distance d is:

n

SS

dd 100

0

10−

⋅= . (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.

Page 43: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

34

7.4. Weighting of a State

7.4.1. 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

( )2

2rx

r

s

ew−⋅−

= (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:

2

)ln(

d

ws

−= . (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%.

Page 44: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

35

0

0,25

0,5

0,75

1

1,25

0 5 10 15 20 25 30 35 40

Distance

We

igh

tin

g

10

20

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.

0

5

10

15

20

0

5

10

15

20

0

0,5

1

Weighting

X

Y

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.

Page 45: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

36

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

Page 46: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

37

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 client’s 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.

Figure 7-3: Intersection of Circles

r1

r2

q

h

x2 x1

y1

y2

p

d

AP1

AP2

C

Page 47: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

38

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

determined as

( ) ( )2

21

2

21 yyxxd −+−= . (14)

If the two circles intersect d is divided by C into the parts p and q. Using the

Pythagorean Theorem twice

222

2 qhr += (15)

222

1 phr += (16)

and the distance qpd += the partial distance p is determined as

d

drrp

2

222

21 +−

= . (17)

The height h then can be determined:

221 prh −= . (18)

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:

( )

d

xxpxxC

121

−+= ,

( )

d

yypyyC

121

−+= . (19)

I1

x2 x1

y1

y2

p

d

xc

yc

I2

C

h

h

AP2

AP1

Page 48: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

39

Figure 7-5: Angles at the Intersection

The angles α and γ are equal and so are their sinuses. Sinus is defined as opposite leg

divided by hypotenuse:

h

r

d

yy=

− 12 (20)

Using this relation the coordinates of the two intersection points I1 and I2 can be

computed:

( )

d

yyhxx CI

121

−+= ,

( )

d

xxhyy CI

121

−−=

( )

d

yyhxx CI

122

−−= ,

( )

d

xxhyy CI

122

−+=

(21)

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

I1

x1

y1

xc

yc

C

h

AP1

γ

α

r

d

Page 49: Accuracy Improvement of WLAN Based

7. Two Level Position Weighting Algorithm

40

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. & Hübner, 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.

Page 50: Accuracy Improvement of WLAN Based

8. Case Study

41

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 Lüderitz 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.

Page 51: Accuracy Improvement of WLAN Based

8. Case Study

42

• 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.

Page 52: Accuracy Improvement of WLAN Based

8. Case Study

43

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. Visual Studio Projects

8.4.1. 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.

Page 53: Accuracy Improvement of WLAN Based

8. Case Study

44

Figure 8-2: NodeModel Class Diagram

Page 54: Accuracy Improvement of WLAN Based

8. Case Study

45

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

Page 55: Accuracy Improvement of WLAN Based

8. Case Study

46

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

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.

Figure 8-4: Node Class

Page 56: Accuracy Improvement of WLAN Based

8. Case Study

47

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 won’t 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

position calculations and displaying.

Figure 8-6: AccessPointNode

Class

Page 57: Accuracy Improvement of WLAN Based

8. Case Study

48

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 SeesAccessPoint event is raised. When

MaximumEdgesForEachAccessPoint is reached the

index is reset to zero. AverageSignalLevel returns the

averaged signals of the corresponding array and null if no

values are stored. AverageSignalLevels returns a

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.

Figure 8-7:

AccessPointSeerNode Class

Page 58: Accuracy Improvement of WLAN Based

8. Case Study

49

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.

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

detected by the seer node.

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.

Figure 8-8: ClientNode Class

Figure 8-9: AccessPointEdge

Class

Page 59: Accuracy Improvement of WLAN Based

8. Case Study

50

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-11: MoveEventHandler, MoveEventArgs, and ZoomEventArgs Classes

Figure 8-10: ImageScroller

Class

Page 60: Accuracy Improvement of WLAN Based

8. Case Study

51

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.

Page 61: Accuracy Improvement of WLAN Based

8. Case Study

52

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

derived from TreeNode and contains a reference to the

corresponding node in the node model.

Figure 8-14:

MagicMapTreeNode Class

Page 62: Accuracy Improvement of WLAN Based

8. Case Study

53

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

described in more detail in section 8.4.4.

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

Figure 8-15:

AlgorithmSelectorView

Page 63: Accuracy Improvement of WLAN Based

8. Case Study

54

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 the node. The

SelectedNodeChanged event is raised and the

SelectedNode and SelectedNodeControl

properties are set.

Some visual aspects 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.

MapControl offers two specialised context menu

properties: ImageContextMenu and

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

Figure 8-18: MapControl

Class

Page 64: Accuracy Improvement of WLAN Based

8. Case Study

55

static property Control.MousePosition which returns the pen position on the

screen. This position can be transformed into map coordinates by calling the

MapControl.PointToClient and

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 node’s 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

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

NodeDictionaryReducerBase classes. These two classes already make use of

Figure 8-19: NodeControl

Class

Page 65: Accuracy Improvement of WLAN Based

8. Case Study

56

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.

Page 66: Accuracy Improvement of WLAN Based

8. Case Study

57

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

contains a reference to the node model it is working on. This

is mainly used for configuration purposes.

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.

Figure 8-21:

NodeDictionaryReducerBase

Class

Page 67: Accuracy Improvement of WLAN Based

8. Case Study

58

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.

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.

Figure 8-22: AlgorithmBase

Class

Page 68: Accuracy Improvement of WLAN Based

8. Case Study

59

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

n

S

kd 1010−

⋅= , n

S

dk 100

0

10⋅= . (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 which allows defining several

options:

• “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

distance between the currently client

position and “seen” access points.

Figure 8-23: Two Level Position Weighting

Algorithm Settings Screen

Page 69: Accuracy Improvement of WLAN Based

8. Case Study

60

• 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

Page 70: Accuracy Improvement of WLAN Based

9. Evaluation Tests

61

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.

Page 71: Accuracy Improvement of WLAN Based

9. Evaluation Tests

62

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:

Page 72: Accuracy Improvement of WLAN Based

9. Evaluation Tests

63

0

2

4

6

8

10

12

14

16

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

Position

De

via

tio

n[m

]

25%-75%

Overall Average

Position Average

Figure 9-2: Positioning Error Dell Axim X5

0

5

10

15

20

25

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

Position

De

via

tio

n[m

]

25%-75%

Overall Average

Position Average

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.

Page 73: Accuracy Improvement of WLAN Based

9. Evaluation Tests

64

9.3. Test Conclusion

9.3.1. 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.

Page 74: Accuracy Improvement of WLAN Based

10. Conclusion and Outlook

65

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

Page 75: Accuracy Improvement of WLAN Based

10. Conclusion and Outlook

66

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

Page 76: Accuracy Improvement of WLAN Based

10. Conclusion and Outlook

67

sense a tag’s 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.

Page 77: Accuracy Improvement of WLAN Based

References

68

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-B5A1-65148B9DB238/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.

Demtröder, W. 1999, Experimentalphysik, 2. edn, vol. 2 Elektrizität und Optik, 4 vols., Springer Verlag, Berlin Heidelberg New York.

Dornbusch, P. & Zündt, M. 2002, 'Realisierung von Positionsortungen in WLAN', paper presented to ITG-Fachtagung "Technologie und Anwendungen für 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.

Page 78: Accuracy Improvement of WLAN Based

References

69

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., Hübner, 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 Endgeräte mit GRIPS/MagicMap', paper presented to 35. Jahrestagung der Gesellschaft für Informatik, Bonn.

Ibach, P., Stantchev, V., Lederer, F., Weiß, A., Herbst, T. & Kunze, T. 2005, 'WLAN-Based 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) specifications—Amendment 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 (LR-

WPANs), 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.16-2004.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.info-rfid.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.

Page 79: Accuracy Improvement of WLAN Based

References

70

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. Twenty-third 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 RF-Based Location Tracking', paper presented to International Workshop on Location and Context-Awareness (LoCA 2005) at Pervasive 2005, Oberpfaffenhofen near Munich, May 12-13, 2005.

Lüderitz, S. & Engel, W. 2006, 'WLAN Ortung mit PDAs', Humboldt Universität.

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.hu-berlin.de/rok/MagicMap/>.

Menz, M. 2005, 'RFID-basierte Positionsbestimmung', Informatik, Humboldt Universität.

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.

Page 80: Accuracy Improvement of WLAN Based

References

71

Nomads 2006, MagicMap Wiki, viewed 22/07/2006 <http://wiki.informatik.hu-berlin.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., Myllymäki, P., Tirri, H., Misikangas, P. & Sievänen, 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+RFID/180573_1.aspx>.

Schweigert, M. & Hübner, T. 2005, 'WLAN-basierte Ortung mit MagicMap', Humboldt Universität.

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 Universität 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.

Page 81: Accuracy Improvement of WLAN Based

References

72

---- 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>.

Page 82: Accuracy Improvement of WLAN Based

Appendix A: Propagation Model Parameters

73

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) AP1(dBm) AP2(dBm) AP3(dBm) Mean(dBm) Forecast (dBm)

Error(dBm)

0.5 -31.0 -35.0 -30.0 -32.0 -30.4 -1.6

1.0 -44.0 -43.0 -40.0 -42.3 -38.2 -4.1

2.0 -45.0 -49.0 -44.0 -46.0 -46.1 0.1

3.0 -47.0 -51.0 -46.0 -48.0 -50.7 2.7

4.0 -51.0 -52.0 -49.0 -50.7 -54.0 3.3

5.0 -55.0 -50.0 -49.0 -51.3 -56.5 5.2

6.0 -58.0 -54.0 -49.0 -53.7 -58.6 4.9

7.0 -61.0 -59.0 -54.0 -58.0 -60.3 2.3

8.0 -65.0 -57.0 -61.0 -61.8 0.8

9.0 -66.0 -66.0 -63.2 -2.8

10.0 -68.0 -68.0 -64.4 -3.6

11.0 -69.0 -69.0 -65.4 -3.6

12.0 -70.0 -70.0 -66.4 -3.6

-80

-70

-60

-50

-40

-30

-20

-10

0

0 2 4 6 8 10 12 14

Distance

dB

AP3

AP2

AP1

Mean

Forecast

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

Page 83: Accuracy Improvement of WLAN Based

Appendix A: Propagation Model Parameters

74

Dell Axim x51v

Distance AP1 AP2 AP3 Mean Forecast Difference

0.5 -31.0 -35.0 -30.0 -32.0 -25.5 -6.5

1.0 -44.0 -43.0 -40.0 -42.3 -32.7 -9.6

2.0 -45.0 -49.0 -44.0 -46.0 -39.9 -6.1

3.0 -47.0 -51.0 -46.0 -48.0 -44.1 -3.9

4.0 -51.0 -52.0 -49.0 -50.7 -47.1 -3.5

5.0 -55.0 -50.0 -49.0 -51.3 -49.5 -1.9

6.0 -58.0 -54.0 -49.0 -53.7 -51.4 -2.3

7.0 -61.0 -59.0 -54.0 -58.0 -53.0 -5.0

8.0 -65.0 -57.0 -61.0 -54.4 -6.6

-70

-60

-50

-40

-30

-20

-10

0

0 2 4 6 8 10

Distance

dB

m

AP3

AP2

AP1

Mean

Forecast

Square sum of error: 69.45 n: 2.40030540

k: 0.04347435

Page 84: Accuracy Improvement of WLAN Based

Appendix B: Evaluation Test Result Tables

75

Appendix B: Evaluation Test Result Tables

Dell Axim X5

Position Deviation [m]

1 6 6 5 1 0 1 1 1 2 4

2 4 5 4 6 6 8 4 10 8 8

3 2 2 5 5 7 7 7 6 5 7

4 4 7 8 6 6 6 7 6 7 6

5 3 3 3 4 5 5 6 5 6 4

6 3 2 2 12 12 12 12 2 2 12

7 1 2 5 6 6 6 6 5 6 5

8 2 2 10 10 12 10 12 10 2 2

9 2 2 10 12 1 2 10 10 10 12

10 5 2 10 12 15 5 15 12 15 12

11 2 10 12 12 1 15 10 10 12 10

12 10 2 1 2 4 4 6 4 4 2

13 4 5 5 4 6 4 2 4 6 4

14 4 4 3 4 4 6 7 6 6 7

15 3 2 1 10 12 3 4 5 3 1

Number: 150

Average: 5.91m

Minimum: 0m 25% Quartile: 3m

Median: 5m 75% Quartile: 9m

Maximum: 15m

Page 85: Accuracy Improvement of WLAN Based

Appendix B: Evaluation Test Result Tables

76

Dell Axim x51v

Position Deviation [m]

1 2 4 4 4 1 1 1 2 2 4

2 0 1 1 2 2 4 6 10 6 7

3 5 2 1 1 3 3 3 3 3 5

4 3 6 6 8 8 8 10 5 5 4

5 3 3 5 3 6 6 6 6 3 4

6 6 6 8 9 6 4 5 4 4 6

7 2 2 3 2 2 20 20 2 2 2

8 2 15 15 15 15 15 15 20 20 20

9 20 15 20 20 20 20 15 15 20 20

10 3 3 2 4 3 6 7 7 7 7

11 2 6 6 4 4 4 4 4 4 4

12 6 5 4 5 5 20 20 18 18 20

13 2 2 2 2 2 2 2 2 2 2

14 2 3 6 7 7 4 3 4 5 5

15 3 3 5 5 8 8 8 10 20 4

Number: 150

Average: 6.70m

Minimum: 0m 25% Quartile: 3m

Median: 5m 75% Quartile: 8m

Maximum: 20m

Page 86: Accuracy Improvement of WLAN Based

Appendix C: Zusammenfassung in deutscher Sprache

77

Appendix C: Zusammenfassung in deutscher Sprache

Diese Diplomarbeit beschäftigt sich mit verschiedenen Möglichkeiten, die Genauigkeit

von WLAN-basierten Ortungssystemen zu erhöhen.

Ortungssysteme sind eine Vorraussetzung für standortbezogene Dienste. Auch in der

Logistik sind Ortungssysteme zum Beispiel in der Lagerhausverwaltung von Nutzen.

Bislang gibt es kein standardisiertes System, das Ortungsinformationen in Innenräumen

und Innenstädten zur Verfügung stellt. GPS versagt hier, da die Geräte im Funkschatten

von Häusern 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

Innenstädten flächendeckende Ortung zu ermöglichen. Einige Internetgemeinschaften

bieten eine kollaborative, zellbasierte Ortung an. Andere Systeme mit höherer

Genauigkeit benötigen eine exakte Einmessung der Signalstärken. Einen Kompromiss

ermöglichen Ortungsverfahren, die auf einem Ausbreitungsmodel basieren: Sie

ermöglichen relativ exakte Ortung mit moderatem Aufwand.

Um die Ortungsgenauigkeit zu erhöhen, kann entweder WLAN mit anderen

Technologien kombiniert werden oder die Ortungsmethoden mit WLAN können

optimiert werden. Alternative Technologien wurden untersucht, scheinen aber keine

signifikante Erhöhung der Genauigkeit zu ermöglichen. Einige Technologien

versprechen Verbesserungen, haben aber eine kleinere Reichweite als WLAN und

können daher nur lokal eingesetzt werden.

Bei einer Begrenzung der Technologien auf WLAN bestehen

Optimierungsmöglichkeiten in der ständigen Überwachung der Signalstärken, der

Benutzung von zusätzlichen Messgeräten (stationär und mobil), der automatischen

Erstellung von Signalstärkenkarten 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 Lage, verschiedene Informationsarten wie

Signalstärkemessungen von Zugangsknoten, Referenzmessungen oder

Bewegungsmodelle mit in die Berechnung einzubeziehen. Für jede mögliche Position

wird eine Gewichtung bestimmt. Die Position mit der höchsten Gewichtung ist der

Page 87: Accuracy Improvement of WLAN Based

Appendix C: Zusammenfassung in deutscher Sprache

78

vermutete Aufenthaltsort. Der Algorithmus ermöglicht eine Grundgenauigkeit mit

einigen wenigen bekannten Zugangsknotenpositionen. Je mehr zusätzliche

Informationen bekannt sind, desto genauer wird die Positionsbestimmung.

Der Algorithmus wurde in einer Fallstudie für einen PDA auf Basis von Windows CE

implementiert. Die Weiterentwicklung des bestehenden Clients des MagicMap Systems

der Humboldt Universität Berlin resultierte in einer neuen Oberfläche, die mehr

Interaktion erlaubt, einer Neustrukturierung der Kernfunktionen sowie einer

einheitlichen Schnittstelle für verschiedene Algorithmen.

Erste Tests verliefen erfolgreich. Allerdings scheinen die Signalstärkemessungen 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. Ausführliche Tests unter anderem um die Gewichtung des Algorithmus

einzustellen, stehen noch aus.

Eine Erhöhung der Genauigkeit von WLAN-basierter Positionsbestimmungen ist

möglich, allerdings sehr aufwändig. Spezialisierte Techniken bieten eine höhere

Genauigkeit bei geringerem Aufwand. Einfache WLAN-basierte Ortungsverfahren

ermöglichen jedoch eine Grundgenauigkeit, die für viele Anwendungen bereits

ausreicht. Zurzeit bietet WLAN eine kostengünstige Möglichkeit, Positionen in

Innenstädten und in Häusern zu bestimmen.

Page 88: Accuracy Improvement of WLAN Based

Die selbständige und eigenhändige Anfertigung versichere ich an Eides statt. Berlin, den 24. August 2006 _________________________________ (Unterschrift)