location-based services using gsm cell information over symbian os
DESCRIPTION
Location-Based Services Using GSM Cell Information over Symbian OS. Final Year Project LYU0301 Mok Ming Fai (mfmok1) Lee Kwok Chau (leekc1). Agenda. Project Motivation Work Review Middleware for LBS Developers Application Programming Interface (API) Development Toolkit - PowerPoint PPT PresentationTRANSCRIPT
1
Location-Based Services Using GSM Cell Information
over Symbian OS
Final Year ProjectLYU0301
Mok Ming Fai (mfmok1)Lee Kwok Chau (leekc1)
2
Agenda
Project Motivation Work Review Middleware for LBS Developers
Application Programming Interface (API) Development Toolkit
Sample Application Conclusion
3
Motivation
The need of LBS emerges We would like to provide LBS with minimum
hardware requirement Symbian phones support retrieving location
information via GSM modem Using GSM cell information to approximate
current location. Provide a set of development tools for rapid
LBS development
4
Previous Work
In the previous semester, Written software to collect GSM cell information Collected cell information in CU Campus and alon
g the rails Concluded the accuracy 2D space is not good en
ough Migrated to 1D path which provide a better accura
cy Built MTR Traveller to illustrate the accuracy that
we could achieve.
5
LBS Application Development
6
Middleware
Current issues: Developers are required to put a great effort in the
whole development process Service is usually the main focus The proposed method is applicable in different
fields, but not just MTR / KCR route Different developers have different requirements
to meet There is a great desire to have middleware.
7
Overview of Middleware Architecture
8
Definition – Reference Point
Reference point: Place taken as a reference on target path in the cell data collection process (e.g. bus stop, railway stations)
9
Definition – Point of Interest
Point of Interest (POI): Location that is interested in the application level (e.g. building, tourist spot)
10
API Design
Retrieving location information involves complex system calls
Wrap low level system calls into high level function calls
Make development process more efficient
11
API Design
Two major functions required in LBS: Perform a particular action upon encountering
specific set of cell change event Search for nearest POI related to current
reference point
CNetworkInfo
CProximityCLocationListener
12
API Design
Three components in API package: CNetworkInfo
Connect to GSM Modem Retrieve location information
Operating System and GSM modem
CNetworkInfo
User Application
Complex function calls are handled
Simple function calls, requesting the action of hardware modem
Location information returns when available
Retrieve current location information
13
API Components
CLocationListener Keep track of cell change events Perform specific action upon entering specific cells
Cell B
Cell D
Cell E
Cell A
Cell B
Cell C
Cell D
Action performsat these transitions
Action not performed, since they are not listed
Cell changes to be kept tracked
14
API Components
CProximity Read in a location defini
tion file Search for nearest POI
relative to current reference point
Current Location
Points-of-interest, for example, restaurants
Nearest POI relative to current location
15
Software Development Kit
It consists of software tools for reducing time spent on application development, providing developer with maximum convenience
Components include: Cell Snap – cell data collection Cell Analyzer – cell data processing Distance Mapper – nearest cell searching AppGen – LBS application generation
16
Cell Data Collection and Processing
API focuses on easy cell data manipulation Data collection has to be done manually Multiple network operators and routes
involved Cell data has to be processed and optimized
before use Cell Snap and Cell Analyzer are introduced
17
Cell Snap
Collection of cell data was done manually in the past Cell Snap - a tool for automated cell data collection Different reference points can also be captured by
phone camera
18
Need of Data Processing
Cell Snap output is designed to be read by human Formatted cell data for machine
Photos and data output are separated, so developers have to map cell data and reference point on their own Better presentation of cell data to developers
Cell Snap data is just raw data Data editing tool and automated data analysis
19
Cell Analyzer
Cell Analyzer provides developers with a user-friendly environment to edit and process cell data for further use
20
Features of Cell Analyzer
It has the following features: Data processing:
Data format transform Better cell data presentation to developers Manual cell data editing Data combination for multiple operators
Automated data optimization: Cell duplicate removal Clear classification between reference points
21
Cell Data in Tree Representation
22
Cell Analyzer in Action
23
Need of Reference Point Classification
There is a need to clearly classify between two reference points so that the application accurately can tell users that they enter a new reference point
Two pieces of information can be concluded through cell data at any moment: “You are in the station” “You are in the way from station X to station Y”
This is handled by Cell Analyzer automatically
24
Open Area Problem in MTR Traveller
Stations in open area in MTR Traveller
Station Cells:
[S1, O], [S1, B]
Transition Pairs:
[S1, S2, O, B], [S1, S2, B, P], [S1, S2, P, G]
Station 2Station 1
Cell ID: O
[S1, O] => in Station 1
Cell ID: OB[S1, B] => in
Station 1
Cell ID: BP[S1, S2, B, P] => on the
way of S1S2
Cell ID: PG[S1, S2, P, G] => on the
way of S1S2
25
Handling by Cell Analyzer
Both reference points X and Y contain a node of cell 1
Cell 1 really tells user that they are in Y Cell Analyzer simply removes cell 1 from
reference point X
26
Distance Mapper
To provide searching function, we need a location definition file
Distance Mapper let users to map those POI onto a physical map
It reads in the file generated by Cell Analyzer
27
Distance Mapper
It calculate the logical distance among all POIs in pixel domain
After the calculation, it outputs a location definition files which is used by the LBS application
(15,63)
100
94
75
30
62
75
(15,201)
(24,17)
(23, 4522)
28
Application Generation
The previous tools mentioned enable developers to have a nice LBS application development environment
LBS application often focuses also on content and service, including actions upon cell changes and information provided
Points of interest (e.g. tourist spots) should also be considered instead of just reference points (e.g. bus stops)
29
AppGen
AppGen is specifically designed for content builders by generating source code for a LBS application
General developers may also use source code as a starting point to build their own application
30
Options Provided in AppGen General
Map displayed Icon Message format
Reference Point Location on the map
Point of Interest Name Description Image Path to POI from a
reference point
31
Application in Action (1)
Reference Points
Points of Interest
32
Application in Action (2)
1. User selects adestination
33
Application in Action (3)
2. User is at the startingpoint of a route
34
Application in Action (4)
3. The application keepstrack of the location of theuser in the path at eachreference point
35
Application in Action (5)
4. Display the informationabout the point of interest(destination)
36
MTR Traveller Remake
Development Process Cell data collection by Cell Snap Cell data processing by Cell Analyzer Application generation by AppGen
Advantages Short development time: 1.5 week VS < 8 hours f
or multiple operators Easy to be extended (e.g. new stations coming int
o service)
37
CU Campus Bus Route Guide
It is another complete LBS application to illustrate the ease of development with the middleware
38
Flow of LBS Application Development through Middleware
39
Three Development Streams
Low-level developers would like to work on GSM cell ID and even optimize the underlying mechanism and algorithm to suit their application needs
40
Three Development Streams
General application developers would need a set of tools to facilitate cell data collection, analysis and distance measurement on a given map.
41
Three Development Streams
Content builders would focus on how a location-based service is offered through content editing and enrichment rather than creating an application from stretch
42
Trade-off of Applying Middleware
AppGen Distance Mapper
Cell Snap & Cell Analyzer
LBS Application Development Interface(API)
GSM Modem and NetworkAccess cell information
Work with low-level APIs
Generate LBS application
Facilitate location assignment to cell
for searching nearest cell
Flexibility
Convenience
43
Conclusion
We have developed a new approach in providing location-based service using mobile phone only
Accuracy in 1D space can be fairly accurate
We have developed a set of development tools to simplify LBS development process.
Created several LBS application using the development tools to test its completeness
44
Thank you!
Q & A session