Lacation-based service

-A Mobile Implementation Approach

by

Lynn Li (ID:2048854)

A thesis submitted in partial fulfilment of the requirements for the degree of

Bachelor of Applied Science

University of Otage

2006

Abstract

Supervisor: Dr. Paul Werstein

A thesis presented on the different aspects of location-based services (LBS), discussing how these location-based tasks are achieved, with a software implementation on mobile phone called UniFind. The concept and development of location-based services are rapidly growing with positioning technologies and network upgrading. With the help of APIs (Application Program Interface) and powerful mobile handsets, location-based tasks can now be handled by cell phones.

Table of Contents

List of Figures ii

List of Tables

Acknowledgements iii

1 Introduction 1

1.1 Aims and Purposes 1

1.2 Problems Presented 2

1.3 Report Outline 2

2 Backgroud

2.1 GSM Localization 4

2.1.1 Network Architecture 4

2.1.2 Positioning Methods 5

2.2 Location-based Applications 13

2.2.1 Service Models 13

2.2.2 Location API 14

3 Related Projects 18

3.1 Telia: Yellow Page Near You & BotFighters (1999) 18

3.2 AT&T: Find Friends (2002) 19

3.3 Japan: EZ Navi Walk (2003) 20

2.4 Others 22

2.5 Situations & Trends 23

4 Proposed Solutions 25

4.1 Positioning 25

4.2 Symbian and Location API 28

5 Implementation - uniFind 29

5.1 Project Description 29

5.2 Project Design 30

5.3 Project Architecture 30

6 Results 33

6.1 Testing 33

6.1.1 Simulation Environment 33

6.1.2 Procedure and Errors 37

6.1.3 User Interface Flow 47

6.2 Analysis 48

6.3 Comments 49

7 Findings and Discussions 52

4.1 Findings 52

4.2 Market Outlook 52

4.3 Conclusion 53

Reference 55

Appendix: Codes of Unifind 59

List of figures

Number Page

Figure 2.1: Adding LBS to the GSM Network 4

Figure 2.2: ToA 6

Figure 2.3: E-OTD 8

Figure 2.4: Typical GPS Positioning System 10

Figure 2.5: A-GPS Principles 11

Figure 2.7: D-GPS 11

Figure 1.6: General Location API MIDlet model 15

Figure 3.1: Sonera location-based services 19

Figure 3.2: EZ Navi Walk 22

Figure 4.1: No lost of data 26

Figure 4.2: 50% GPS data loss 27

Figure 4.2: 67% GPS data loss 27

Figure 5.1: Unifind: Use Case Diagram 30

Figure 3.2: Unifind: Class Diagram 31

Figure 6.1: S60 3rd Edition Emulator 33

Figure 6.2: tool colletions available for application developers 35

Figure 6.3: Simulation PSY Route Dialog 36

Figure 6.4: Simulation PSY Configurator 36

Figure 6.5: Define the Route 37

Figure 6.6: Use the Defined Route in the Emulator 38

Figure 6.7: Privacy Confirmations 39

Figure 6.8: Waiting for the First Location Update 39

Figure 6.9: At the Start Point X 40

Figure 6.10: Save Current Location 42

Figure 6.11: List the Landmarks 42

Figure 6.12: Save the New Landmark to the Store 43

Figure 6.13 Landmark Screen 43

Figure 6.14 Update Landmark 44

Figure 6.15 Remove Landmark 44

Figure 6.16 At End Point Y 45

Figure 6.17 Proximity Testing 46

Figure 6.18 Landmark Found 46

Figure 6.19 UniFind: screen flow 47

Figure 6.20 UniFind: Sequence Diagram (setup) 48

List of TABLES

Number Page

Table 2.1: GPS Error Sources 9

Table 2.2: Accuracy of Positioning Methods 12

Acknowledgments

I wish to express sincere appreciation to Dr. Paul Werstein and Dr. Zhiyi Huang, for their assistance on hardware, and guidance on writing the dissertation.

I am grateful to Mr Bryan Johnston and Professor Martin K Purvis, for without their understanding the dissertation could not be done.

I would also like to extend my thanks to Doug and Janette, for their constant “you can do it”.

Last but far from the least, I must mention Computer Science student Bjorn Wells, whose idea and reference suggestions provided much of the groundwork of the report.

iv

1. Introduction

Location-Based Services (LBS) are widely used in answering three questions: Where am I? What is around me? How do I get there?

The location-based services determine the location of the user by using one of several technologies for pinpointing the position, and then use the location and other information to provide personalized applications and services (Mahmoud, 2004). For example, in the city of Dunedin, the service could provide recommended tourist attractions, restaurants and promotions currently on within the city.

Many researches have been carried out through recent years, and are applied to a variety of fields. These include location based information, tracking, gaming and emergencies, and are especially useful to people who do not know where they are. The use of location-based services falls into following categories:

1. Location is used as a filter to provide information only to the geographically targeted population. For example, if the user is in Dunedin, the information of Christchurch can be filtered out.

2. Human senses and abilities can be enhanced with location-based services. Even if the friend is a block away from the user within the city or township, the user is able locate the friend. Mountains, walls and distance are not obstacles any more with location-base services.

3. Dynamic and mobile data collection is possible. Take the example from the professional domain – moving agents can request location-based services to deliver dynamic data (e.g. temperature, humidity etc.) to the server.

Nowadays, location-based services have become popular among cell phone service providers. There are several reasons behind this trend. First of all, cell phones are now so powerful and affordable that people are carrying them all the time, and this makes them valuable tool for advertising and servicing. Secondly, with different localizing techniques, the location of a handset can be easily determined with different levels of accuracy and cost.

1.1 Aims and Purpose

The research is to investigate important aspects of location-based services, focusing on the implementing location-based services on mobile handsets. The report will look into the integration of hardware and software, determine how the service task is accomplished, and compare different methods and implementations.

UniFind, is the logo I have used for location service within the university campus. The goal of this project is to enable students to find their own location and target locations using mobile phones. In order to do this, location Application Program Interfaces (APIs) from Mobile Information Device Profile 2.0 (MIDP2.0) is used in conjunction with a proper positioning method.

Hopefully this research can serve as a starting point for future research in location-based services and mobile programming.

1.2 Problems Presented

The positioning signal needs to be converted and handled by mobile phones, which require the software to communicate with the location provider and the cell itself. The receiver packages the signals in an acceptable format to the host operating system. The operating system then provides usable information which can be displayed on the screen. The mobile phone has to be powerful enough to handle such calculations and communications.

In the campus area, lecture theatres are built within close proximity to each other, therefore, high positioning accuracy is required. Indoor propagation of the positioning signals is required, since the student sometimes need to move from one room to another in one building. The indoor channel is characterized by higher path losses and sharper changes in the mean signal level. Proper method is needed to eliminate multipath fading.

1.3 Report Outline

Chapter 1 provides the objectives and structure of the report. Chapter 2 covers the theoretical background for localisation. Chapter 3 reviews recent progress on location-based services, reasons behind their success/failure are discussed. Chapter 4 gives the proposed solution to the problems presented, based on the comparison of these previous discussions. Chapter 5 details the implementation of this project. Chapter 6 focuses on describing the testing environment and results, and gives analysis on the flow of the program. Chapter 7 is dedicated to general conclusions and comments on commercializing and possible future work.


2. BACKGROUND

2.1 Global System for Mobile communication (GSM) Localization

While 3G (Third Generation) is currently being advertised for use, experiments on 4G (Fourth Generation) are still at laboratory stage. GSM (Global System for Mobile communication) is still the most widely used digital mobile phone system in New Zealand. GSM localization is the use of multilateration to determine the location of GSM mobile phones, usually with the intent to locate the user (Wikipedia, 2006).

2.1.1 Network Achitecture

According to the study (Intel Corporation, 2006), four elements need to be added to the existing GSM network in order to provide location-based services. These elements are Location Service Client (LSC), Gateway Mobile Location Centre (GMLC), Location Measurement Unit (LMU) and Serving Mobile Location Center (SMLC)

Figure 2.1: Adding LBS to the GSM Network (Source: Intel Corp, “Adding Location-based Services to Existing Architecturesxisting”, bitpit IT Information, Feb 2006)

Location Measurement Unit (LMU) is the client’s application which either initiates or responds to the location-based services queries. Gateway Mobile Location Centre (GMLC) connects Location Service Client (LSC) to the mobile network. It can either communicate with a mobile switching center (MSC) on location information, or request routing information from the Home Location Register (HLR).

Location Measurement Unit (LMU) is linked to the Base Station Subsystem (BSS). it records positioning measurements to support location-based services.

Serving Mobile Location Center (SMLC) controls several Location Measurement Units (LMUs), in order to receive radio interface timing measurement information. Based on the received information, the postion of a mobile handset can be determined, plus an indication of the accuracy of the positioning information.

2.1.2 Positioning Methods

Mobile positioing in general is the process of determining the location of a mobile terminal. The accuracy of the mobile location mainly depends on the positioning method used, and there are several methods available to meet different user requirements. These are as follows:

Cell Identification – “Cell ID” is a parameter presented in SIM card and GSM network. With SMLC (Serving Mobile Locaiton Centre), Cell ID can be used to identify the location of the Base Station Subsystem (BSS). Depending on the number of BSS found, accuracy may vary from 100 metres in an urban are, to 5 kilometres or more in a rural situation. It is the most common method in use, which is already sufficient for most location-based services. Interestingly, in spite of its sufficiency, it is also the most inaccurate and method. Quality of the data can be enhanced by additional calculations such as Timing Advance (TA). The TA is based on the existing Timing Advance parameter, which corresponds to the length of time a signal from the mobile phone takes to reach the base station. It is used to synchronize the TDMA (Time Division Multiple Access) frames from the mobile to the base station. TA is used to assist all positioning mechanisms and as a fall-back procedure.

Enhanced Cell Identification – Similar to Cell Identification. Position accuracy in a rural area is increased to 550 metres.

Time of Arrival (ToA) – Used with Cell Identification. This positioning method utilizes the fact that radio waves travel at the speed of light and the distance can, therefore, be calculated from the propagation delay. A known signal sent from the mobile and received at three or more measurement units. The known signal is the access bursts generated by having the mobile perform an asynchronous handover. This method can be performed without modification to existing mobiles.

As illustrated below, additional measurement units (LMUs) are needed within the vicinity of the mobile to measure the signal arrival time. As the geographical coordinates of the LMUs are known, the mobile position can then be calculated using hyperbolic triangulation. The Serving Mobile Location Center (SMLC) is then used to calculate Time Difference of Arrival (TDOA) values by pair-wise subtracting the ToA values. The mobile position is then calculated via hyperbolic triangulateration assuming that: a) the geographical coordinates of the measurement units are known, and b) the timing offset between the measurement units involved in the measurement are known, e.g. by the use of absolute GPS time at the measurement units, or by using reference measurement units situated at known locations to determine Real Time Difference (RTD)values (Veijalainen & Gross, 2002). The accuracy of ToA positioning is about 100 to 200 meters depending on the area and the number of available measurement units.

Figure 2.2 ToA (Source: K. Raja, W.J. Buchanan, and J. Munoz.“We Know Where You Are”. IEE Communications Engineer. June 2004)

Angle of Arrival (AoA) – Multiple Location Measurement Units (LMUs) calculate the AoA of the cell phone's signal, then Servicing Mobile Location Center (SMLC) combines the infomation to determine the location of the handset.

Different from ToA, AoA measures the Time Difference of Arrival (TDOA) at individual elements of a antenna array, the phase difference of antenna array can then be calculated in order to determine AoA.

The accuracy is about 1 to 2 kilometers depending on the area and the number of measurement units. This method can be performed without modification to existing mobiles.

Enhanced Observed Time Difference (E-OTD) – This is similar to ToA, but, the position is estimated by the cell handset instead of the base station. The E-OTD positioning method is developed from the Observed Time Difference (OTD) feature. For unsynchronized networks, the signals are also received by a fixed measuring point (LMU) whose location is known. The position of the mobile terminal is determined by deducing the geometrical components of the time delays to a terminal from the base stations.

For synchronized networks, the mobile terminal, measures relative time of arrival of the signals from several base stations. For OTD measurements synchronization, normal and dummy bursts can be used. When the transmission frames of base stations are not synchronized, the network needs to measure the Real Time Differences (RTD) between them. In order to obtain accurate triangulation, OTD measurements and, for non-synchronized base stations, RTD measurements are needed for at least three geographically distinct base stations (Virrantaus ,Veijalainen, Markkula, Katasonov, Garmash, Tirri & Terziyan, 2001).

As shown in Figure 2.3, in “handset-based” mode, the handset makes the measurement therefore, all necessary data is available in the mobile terminal; in “assisted” mode, the handset reports the measured information to the Servicing Mobile Location Centre (SMLC), the network, then uses these measured E-OTD values to calculate the location. Measurements are performed by the handset without any additional hardware.