GSM-Based Provider-Independent Positioning Method

advertisement
GSM-Based Provider-Independent Positioning Method
(Paper LOC_A07_29)
Robert P. Biuk-Aghai
Department of Computer and Information Science
Faculty of Science and Technology
University of Macau
Av. Padre Tomás Pereira, S.J.
Taipa, Macau S.A.R., China
Email: robertb@umac.mo
Abstract
Today there are two popular positioning technologies: GPS and cellular network-based
positioning. GPS does not work indoors and in densely built-up areas, whereas GSM-based
positioning is usually network provider-dependent and is sold as a for-charge value-added
service. To overcome the limitations of both of these technologies we have developed our
own GSM-based position estimation method. It works both indoors and outdoors, is network
provider-independent, and does not require any ongoing charges. For our method we collect
GSM base station signals and correlate these with concurrently collected GPS position
readings. The collected data is processed to prepare a database of logical base station
locations which is deployed on the mobile device and is used for calculating the user's current
location based solely on the IDs and signal strengths of received base stations. We have
devised four position estimation algorithms with varying performance requirements and
accuracy. In most cases accuracy is within 100 metres, which is satisfactory for many general
applications. Moreover, we have developed several value-added location-based service
applications that make use of our positioning system, including a remote position request
application, a location trigger application, and a position trail application.
1. Introduction
Positioning is understood to mean “determining the position of a person or object”, either
relative to known locations or in terms of a coordinate system. Knowing the position of
oneself or others is a common need in today’s world. It finds wide application in navigation,
but other uses of positioning have gained steadily in importance and popularity over the past
few years, such as location-based services [3],[4]. In order to provide positioning information,
a number of techniques have been developed. For traditional navigation applications such as
guiding a vehicle, ship or aircraft along a course to a destination, the Global Positioning
System (GPS) [2] is currently the most popular one, whereas for location-based services
cellular network-based positioning techniques are popular. Each of these has its own special
characteristics and advantages as well as disadvantages, which we briefly describe below:
Global Positioning System
GPS, the Global Positioning System, is currently the most widely known example of a
positioning system (other similar types of systems in development or use include Europe’s
Galileo, Russia’s GLONASS, India’s IRNSS and China’s Beidou). Developed starting from
1978 and becoming fully operational in 1995 [5], it consists of a constellation of at least 24
(and currently 30) satellites orbiting the earth. A GPS receiving device requires the signals
from at least three satellites to determine its position in two dimensions (latitude and
longitude), or from four satellites for a position in three dimensions (additionally the altitude).
It uses multilateration, a position calculation based on the time difference of arrival of the
satellites’ signals. GPS has following advantages and disadvantages:
GPS Advantages
GPS Disadvantages
1. Free of charge
1. Does not work indoors, as it requires line-of-sight reception of
signals from three or more satellites
2. Available
world-wide
2. Does not work in densely built-up areas such as urban canyons
which block GPS signals
3. Relatively
high precision 3. Requires a relatively long time for initial position fix (about 1-2
(about
5-15
minutes)
metres)
4. GPS receivers are relatively power-intensive, making them
unsuitable for long-term battery-based use
5. GPS receivers not widespread outside vehicle/craft navigation
Given the above factors, civilian (i.e. non-military) use of GPS is most popular in navigation,
such as on board ships, aircraft, and vehicles. However, use of GPS outside of this application
domain is rare, and only few people carry GPS receivers on a regular basis.
Cell Network Localization
Cell Network Localization refers to a set of techniques for determining the location of a
mobile phone in a cellular phone network, such as a GSM, CDMA or other cellular network.
Like GPS, it relies on multilateration to calculate the position of a phone. It is based on the
signal received from one or more cellular network base stations within whose range the
mobile phone is located. The calculation may be done by the base stations or by the mobile
phone itself. Cell network localization has following advantages and disadvantages:
Cell Network Localization Advantages
Cell Network Localization Disadvantages
1. Works indoors
1. Dependent on cellular network operator
2. Works in densely built-up areas
2. For-charge service
3. Quick initial position fix (several 3. Not available outside cellular network
seconds)
4. Lower precision (at best 50 metres)
4. Very low power consumption
5. Precision varying with cell density: best
5. Mobile phones widespread
in urban areas, worst in rural areas
Although cell network localization has the disadvantage of lower precision as compared to
GPS, it is an attractive choice for location-based services because of the widespread use of
mobile phones. Throughout the developed world, as well as in many other countries, mobile
phones enjoy high penetration rates, exceeding 100% in some countries, meaning that some
people carry more than one mobile phone. This makes the use of cellular network-based
positioning a highly suitable option with the potential of widespread deployment.
Whereas the lower precision of cell network localization makes it not very suited for
navigation applications, there are many other applications which do not require a high degree
of precision and for which a rough position estimate can be of value. For example, knowing
one’s own rough location may be of value when traveling in an unknown area, and knowing
the rough location of someone else may be useful when deciding whether or not to meet up
with that person, considering distance and required travel time to that location.
However, two other disadvantages of cell network localization make it less attractive: its
dependence on the network operator, as not every network operator may provide this service;
and the ongoing charging of this as a value-added service. In order to overcome these two
shortcomings of current cell network localization techniques, we have developed our own
GSM-based positioning method that is independent of the network service provider and does
not require ongoing charges. It consists of two parts: (1) preparation of base station data, and
(2) position estimation.
The remainder of this paper is organized as follows: Section 2 introduces data preparation,
Section 3 explains our position estimation method, and Section 4 describes three value-added
positioning applications we have developed based on our positioning method. Finally, Section
5 presents conclusions.
2. Data Preparation
A cellular network consists of many base stations, each serving a specific area, or cell, often
overlapping with each other. Consequently, at a given location several base stations’ signals
can usually be received. In a GSM network, signals from up to six base stations can be
received simultaneously by a mobile phone. Where signals from more than six base stations
cover a given location, only the six strongest are selected and tracked by a given mobile
phone. One of these, usually the one with the strongest signal, is the serving cell, which
handles the transmission of incoming and outgoing calls. Each base station is identified by a
unique base station ID. The mobile phone receives this ID, and records the strength of the
received signal from each base station, usually on a scale of 0 to 100.
Depending on the position estimation mode (introduced in the next section), our positioning
method uses two or more of the following pieces of information related to base stations to
calculate a position estimate on the mobile phone:
1. The ID of received base stations
2. The strength of each base station’s signal
3. The location of each base station
4. The locations at which each base station’s signal can be received
The first two of these are received by the mobile phone from the GSM network. The third and
fourth are obtained from a base station location and coverage database installed on the mobile
phone. As our positioning method is independent of the mobile network service provider, we
create our own base station database. We do not have any information about the actual
physical location of base stations. Moreover, even if the physical location of a base station
were known, other factors would have to be taken into consideration, such as the type and
direction of each antenna, its propagation pattern, transmission power, and others. We do not
consider any of these factors and instead base our estimation method solely on observed base
station signals. Receiving signals from each base station at many different locations, we
determine the location at which the signal is the strongest. We record this location as that base
station’s logical location. We also record other locations at which a base station’s signal can
be received, together with the strength of that signal, as that base station’s coverage data.
Both the logical location and the coverage data are used by different estimation modes of our
position estimation method.
The base station logical location database is created by us through following procedure:
1. Collect base station IDs and signal strengths using a mobile phone moving through the
data collection area (in our case the city of Macau).
2. Concurrently collect location data using a GPS receiver connected to the mobile phone.
3. Correlate and aggregate the data from 1. and 2. on a PC. Aggregation is performed to
reduce data volume. The entire data collection area is divided into a grid of 10 × 10
metre squares, and all base station data within that square is aggregated into a single
record with an average of the observed signal strength.
4. Create the database of logical base station locations and base station coverage records.
In implementing the data capture on our development device, a Dopod 818Pro mobile phone
running the Windows Mobile 5.0 operating system, we encountered one further technical
difficulty: the operating system only provides an application programming interface for
retrieving data about the serving cell, i.e. its ID and signal strength, but not for the other five
base stations. Even though this data exists in the mobile phone, no way is provided for
obtaining it and its memory address is not documented. Moreover, different models of mobile
phones store this information at different memory addresses. Therefore we first had to find the
memory location of this base station data. This can be achieved by application unlocking on
the phone, then dumping the memory content, and analyzing the dumped memory to identify
the location of base station data by looking for certain patterns in the data. Once the base
station data is found, the starting memory address of each base station’s data is known and
our positioning module can send this to the open source CellTrack software module [1] to
continuously obtain up-to-date data of all six currently received base stations, which is an
essential requirement of our positioning method.
3. Position Estimation
Our positioning method uses the base station data mentioned above to calculate an estimate of
the current location. Position estimation is done entirely on the mobile phone. During the
development of our positioning method, we have devised four different position estimation
modes with different data requirements, computational effort, and accuracy, which we
introduce next.
3.1 Serving Cell Mode
This is the simplest mode of position estimation requiring the least computational effort. It
makes use of the serving cell’s base station ID only, and does not consider signal strengths or
other base stations. The returned location estimate is the serving cell’s logical location. This
method is simply a database lookup requiring no calculation. As such its accuracy is the most
limited of all our position estimation modes. It is mainly of use on mobile phone devices on
which only the serving cell’s information is accessible.
3.2 Nearby Cell Signal Strength-Independent Mode
This mode utilizes not only the serving cell’s data but also that of other nearby base stations,
meaning that all the six base stations received by the mobile phone are utilized. However,
only base station IDs and coverage records are used in this mode and signal strengths or
logical base station locations are not considered.
The basic principle underlying this mode is to look for an intersection of base station coverage
areas. A given base station covers a certain area, and thus the base station database contains
multiple records with different location coordinates for that base station. Another base station
covers a different area, possibly overlapping that of the first one. A third base station covers
yet another area, possibly overlapping the first two. When several base stations’ coverage
areas are overlaid, usually only a small intersecting area results. This estimation mode thus
obtains a position estimate by searching the base station database for locations at which
records of all, or as many as possible, of the base stations that are currently received by the
mobile phone can be found. If there are multiple matching location records, the average of
these locations is calculated as the final results. This estimation mode produces considerably
more accurate results than the serving cell-based mode.
3.3 Nearby Cell Signal Strength-Dependent Mode
This estimation mode is very similar to the nearby cell-based signal strength-independent
mode mentioned above. Its difference is that in addition to base station IDs and coverage it
also uses base station signal strengths. After finding the intersection of different base station
coverage areas, the final position estimate is calculated by matching the observed base station
signal strengths with those recorded in the base station coverage data.
For example, if the mobile phone receives base stations 100, 101 and 102 with signal
strengths 80, 70 and 60, respectively, firstly the intersection of the coverage areas of base
stations 100, 101 and 102 is calculated. Then the observed signal strengths are matched to
those in the coverage data, by order (base station 100’s signal the strongest, that of base
station 101 second, followed by that of base station 102) as well as by absolute value (a match
as closely as possible to the observed values of 80, 70 and 60). Although this estimation
method is computationally more intensive than the preceding two methods, it produces a more
accurate position estimate.
3.4 Weighted Centroid Mode
This estimation mode uses base station IDs, signal strengths and logical locations, but not
coverage records, and utilizes an entirely different approach from the above three modes. Its
main concept is that for a given set of received base stations the mobile phone is very likely
located somewhere in between these base stations. We consider the logical locations of all
base stations received by a mobile phone at a given time as the corner points of a polygon,
with the mobile phone within the area of that polygon. A simple approach would be to
calculate the geometric centre of the polygon and to use this as the mobile phone’s estimated
position. However, we have found that distant base stations with weak signals “pull” the
polygon’s centre away from the phone’s actual location. Instead, we additionally consider the
base stations’ observed signal strength to calculate a weighted centre of the polygon – the
stronger a given base station’s signal, the closer the centre of the polygon is in the direction of
that base station. Consider the case illustrated in Figure 1. Signals from six base stations are
received, labeled consecutively from 100 to 105, each with a measured signal strength ranging
from 22 (base station 104) to 80 (base station 100). The geometric centre of the polygon
connecting these base stations is at position c1, however when considering the signal strength,
the weighted centre is at position c2, very close to the actual location of the mobile phone in
this example.
3.5 Evaluation
We have performed a performance evaluation of our position estimation method, for each of
the estimation modes described above. The test area chosen was the south-east part of Macau,
the “Freguesia da Sé” (Catholic Parish), an area of about 350 × 475 metres. A total of 30
different base stations were detected in this area. We collected a total of 1,157 position
estimates, along with the actual position measured by a GPS device connected to the mobile
phone. We then calculated the difference between the estimated and measured position to
base 101
signal 65
base 105
signal 61
base 100
signal 80
base 102
signal 58
c2
c1
base 104
signal 22
base 103
signal 39
Figure 1 Weighted centroid position estimation
determine the degree of error. Finally, we set an acceptance threshold of 100 m error for
calculating overall accuracy. That is, any estimated position with 100 m or less of error is
considered as accurate. The results are presented below:
Estimation Mode
Accuracy
Serving cell mode
34%
Nearby cell signal strength-independent mode
72%
Nearby cell signal strength-dependent mode
80%
Weighted centroid mode
93%
The accuracy results for the first three modes are consistent with intuition: the more data is
used in calculating a position estimate, the more accurate the estimation result becomes. The
result for the fourth mode, however, is somewhat surprising: the weighted centroid mode uses
much less data than both the nearby cell modes, yet it outperforms both of them in terms of
accuracy. Moreover, since the data volume processed is small (only six logical base station
location records) and the calculation involved is simple, position estimation in this mode is
one of the fastest.
4. Positioning Applications
Our positioning method is implemented as a software module that can be called by other
applications on the mobile phone to provide position estimates. We have implemented three
applications that use our positioning module, which are described below.
4.1 Remote Position Request Application
In some situations it is valuable to know not only one’s own location, but also the location of
others. For example, a parent may want to know where a child is after school, or a family
member of a patient suffering from dementia may want to know their whereabouts. Our
remote position request application provides such information. The application should be
installed on the mobile phones of both the position requester and the remote person whose
position is to be requested. Its operation mode is as follows:
1. The requester enters the phone number of the remote phone in the remote position
request application.
2. The remote position request application sends an SMS message containing a position
request to the remote phone.
3. The remote phone receives the position request message, parses it and diverts it to the
remote position request application.
4. The remote position request application on the remote phone obtains a position
estimate from its estimation module.
5. The remote position request application on the remote phone sends an SMS message
containing a position response to the requester.
6. The remote position request application on the requester’s phone displays the position
of the remote user on a map on the screen.
The entire process is illustrated in Figure 2.
(a)
(b)
(c)
Figure 2 Remote location request: (a) entering remote phone number whose location is
to be requested, (b) receiving location response, (c) displaying remote phone’s location
In order to ensure privacy, the remote position request application asks the user for consent
before sending a position response. However, an additional blacklist/whitelist function
automates the consent processing: if the requester’s phone number is in the blacklist, the
request is automatically rejected, and if the requester’s phone number is in the whitelist, the
request is automatically approved. The user can maintain the blacklist and whitelist to add,
edit or delete records. However, a privileged user can store password-protected entries in
these lists. This is to enable a parent to store their own phone number in the whitelist and to
prevent their child from deleting it from that list. To counter spoofing attempts, the position
request and response messages contain a message digest to ensure that only requests and
responses generated by our application will be considered as valid.
4.2 Location Trigger Application
Similar to the need to know the whereabouts of others, sometimes a person may want to be
notified when another person enters into a certain area. For example, a parent may want to be
notified when a child arrives at school, or when that child arrives back home after school. In
these cases, instead of actively requesting the position of the child, that parent should wait
passively to be notified whenever the child enters into a pre-defined area. For this purpose we
have developed the location trigger application. It allows a user to define a location trigger,
consisting of a location on the map, a radius around that location, a phone number to send the
notification to, and other attributes such as a start time and a repetition interval. As soon as the
other person enters into the previously defined area, the application will transparently transmit
an SMS message containing the notification to the phone number defined in the trigger. On
the receiver’s phone the notification will pop up on the screen as a location on a map. Again,
a trigger may be password protected to prevent modification or deletion by the user of the
phone.
4.3 Location Trail Application
A parent may wish to know where a child has been after school. To provide this information,
we have developed a location trail application that continually records position estimates into
a location log for later review. In the evening, the parent may review the log on a map to see
the trail of the child’s movement. An example of this is shown in Figure 3.
Figure 3 Location trail
5. Conclusions
We have devised and implemented a GSM-based position estimation method. While its
estimation accuracy is not as high as that of GPS, it can provide useful position estimates for
many general applications. Using the weighted centroid estimation mode, good estimation
accuracy can be achieved with only small required amounts of base station data. The greatest
advantage of using mobile phones for positioning is that they are widespread and thus a large
potential user base exists. Our positioning method overcomes the problems of other GSMbased positioning methods that are service provider-dependent. Using our data preparation
tools, a logical base station location database can be generated for any area, and re-generated
once base station configurations change. The three location-based service applications we
have developed serve as examples of the many applications that can benefit from mobile
phone-based position estimation, and we expect more applications of this kind to emerge in
coming years.
Acknowledgments
Thanks go to Percy Ip, Vito Ng and Moray Mok for their work on implementing the position
estimation system. The support from the University of Macau is gratefully acknowledged.
References
[1] CellTrack Forum, available online at:
http://www.spv-developers.com/forum/forumdisplay.php?f=20
[2] B. Hofmann-Wellenhof, H. Lichtenegger and J. Collins, Global Positioning System:
Theory and Practice, Springer, 2004.
[3] D. Mohapatra and S.B. Suma, Survey of location based wireless services, 2005 IEEE
International Conference on Personal Wireless Communications, pp. 358-362, 23-25 Jan.
2005.
[4] B. Rao and L. Minakakis, Evolution of Mobile Location-based Services, Communications
of the ACM, vol. 46, no. 12, pp. 61-65, Dec. 2003.
[5] United States Coast Guard Navigation Center, Global Positioning System Fully
Operational,
News
Release,
17
July
1995,
available
online
at:
http://www.navcen.uscg.gov/gps/geninfo/global.htm
About the Author
Dr Robert P Biuk-Aghai received his PhD in Computing Sciences
from the University of Technology, Sydney in 2004, and his MSc
in Information Systems from the London School of Economics in
1990. Since 1993 he has been with the University of Macau, where
he is an Assistant Professor in computing sciences. His research
interests include geographic information systems, collaboration
technology, information visualization, and distance education, in
which he has authored more than 35 papers. Dr Biuk-Aghai is a
member of the ACM and of the IEEE Computer Society.
Download