Developing location-aware navigation guides that use mobile

Developing location-aware navigation guides that use mobile
Journal of Transportation Research Record, 1879: 108-113
Developing location-aware navigation guides that use mobile Geographic Information
Bo Huang
Assistant Professor
Department of Civil Engineering
National University of Singapore
10 Kent Ridge Crescent, Singapore 119260
Telephone: (65)6874-2158
Fax: (65)6779-1635
Hongga Li
Research Scientist
Institute of Remote Sensing Applications
Chinese Academy of Sciences
Beijing, China
This research aims to design and implement a location-aware travel guide prototype for
pedestrians, with the aid of mobile Geographical Information Systems (GIS). Unlike the
traditional paper maps, the digital travel guide intends to offer a customized user interface and a
location-specific travel service. Development was first done on a Desktop Computer with the
essential files transferred to a Personal Digital Assistant (PDA) subsequently to carry out field
trials. With the aid of Global Positioning Systems (GPS), the prototype has the ability to pinpoint
the location of the current user accurate to a certain tolerance. This detection is performed at
specific intervals and a list of landmarks is furnished to the user through a VB script-based
interactive graphical user interface (GUI). The users are able to obtain comprehensive
information on surrounding buildings or sights, both in textual and digital image form. A novel
indexing method built upon road segmentation was implemented to increase the search
efficiency. Experimental results show that this indexing method has significant response
improvement over the exhaustive search method, thereby facilitating travelers to find their right
way and enjoy the trip.
Huang and Li
In many countries today, mobile computing technology has become ubiquitous. Many people
own Personal Digital Assistants (PDAs), mobile phones, tablet PCs and other forms of mobile
devices. In fact, PDA ownership was projected to treble, based on a study by the IDC Western
Smart Handheld Devices Review 1998-2003 (1). With increased processor speeds and improved
Operation Systems, a great variety of applications can be installed on PDAs to provide
sophisticated services to users (2, 3).
Traditionally, maps have been the primary tools employed for navigation. Whether in a
foreign land or simply finding our way in unfamiliar territory, pedestrians and tourists alike refer
to static paper maps for orientation and route finding. One disadvantage of maps is that the
graphics are static and it is often difficult to pinpoint one’s location.
The prototype developed in this research seeks to harness mobile technology to improve
on the use of maps. It seeks to provide relevant location-based services to the pedestrian; textual
information, pictures of landmarks can be readily available to the user through a friendly, pointand-click interface. In addition, to facilitate its use for the general public, a user- friendly,
customized interface has been designed to enhance its convenience and practicality. Furthermore,
this project employs Global Positioning Systems (GPS) to track the user so as to provide realtime relevant information. The majority of research work in Advanced Traveler Information
System (ATIS) focuses on information systems in vehicles (4). This has led us to concentrate on
a design that emphasizes pedestrians. In our prototype development, the area of study and
implementation chosen was the National University of Singapore (NUS) campus in Kent Ridge.
This navigation guide prototype offers substantial advantages for navigation information
systems because the maps change from static raster graphics to interactive graphical
representations allowing the presentation of the most extensive information possible thus
satisfying the demands of the pedestrian users. The device functionalities can also be
extrapolated to areas such as tourism, defense and transportation.
As a great diversity of applications could be involved, it was necessary to place emphasis
on certain important elements such as Geographic Information Systems (GIS) application and
Database Management System (DBMS). The areas of research were therefore narrowed and
focused mainly on developing functionalities in the prototype user interface, as well as an
efficient spatial access method in place of exhaustive search when dealing with spatial searching
algorithm. With the aid of positioning technology, the user interface component was integrated
with GPS and mobile devices to carry out field tests whenever assessment of system usability
was required.
User’s Requirements Identification
To ensure the navigation guide prototype meets the end users’ requirements, the emphasis of the
design has to be placed on the accessibility of functionalities of the end product. Different
criteria have been outlined to satisfy end users’ requirements, i.e. the system has to be contextsensitive (location-aware in our case), flexible, informative, and user friendly. These criteria are
used as the measures to assess the usability of the end product at the stage of system evaluation.
These requirements are discussed in details below.
Huang and Li
System Architecture
There are a series of hardware and software used in this research both at the stage of design and
implementation. At the initial stage when the design and testing of the system took place, several
GIS software was run on a Desktop Computer, providing the platform to accomplish user
interface customization and searching algorithm development. The hardware served the purpose
at the later stage when being brought to site during field tests. Two light-weight hardware
devices were utilized, including the Pocket PC, Compaq iPAQ H3700 series, which functioned
as the guide unit and Global Positioning System (GPS), Trimble GPS Pathfinder Pocket,
providing positioning information.
The system architecture is illustrated in Figure 1 showing the data flow from Personal
Computer (PC) to the mobile device at different phases. At design stage, we utilized a range of
GIS software to perform data manipulation and user interface customization on PC. For
implementation stage where the users carry the system on field, the necessary data was first
transferred to Pocket PC through the wireless card. During the field trials, a GPS was attached to
the Pocket PC to obtain positioning information.
The GIS software used in this project is ArcGIS, which comprises three integrated core
applications: ArcMap, ArcCatalog, and ArcToolbox. However, only ArcCatalog and ArcMap
were used for creating the NUS map in this research. The map data files contained four layers;
three are in vector format (shapefiles) showing buildings, streets and pedestrian walkways,
respectively, and one in raster format acting as a background image of NUS campus. ArcPad is a
mapping tool for working with GIS data in the field. The map created in ArcMap has to be
converted to format supported by ArcPad before being transferred to ArcPad for the use on site.
Customization of ArcPad can be performed using the ArcPad Studio. All customization
development was done within a Windows desktop environment. The customizations, in terms of
applets, default configurations, and so on, were then deployed on a mobile device via a copy of
In order to perform customized tasks, scripts were required to call and run certain
subroutines when the events associated with the objects were fired. Each process involved in the
user interface is demonstrated in Figure 2.
A new VBScript source code file named ArcPad.vbs was created. The spatial and nonspatial data embedded in the map was accessed through personalized Controls such as buttons
and drop down list on the custom forms that generated a range of events as they were operating,
and subroutines created in a single VBScript source code file can be called when these events
occurred. The script was associated with events allowing the form to perform custom actions
such as the popping up of forms and display of building picture images.
GPS Correction
Inevitably, GPS itself has some sources of errors. The positional accuracy of the GPS used is 15
to 20m (uncorrected). In addition, the streets layer provided in the map symbolizes the center
line of the road network in NUS. When the pedestrians carry the hand- held unit and travel
around the campus, they will most probably walk on the pedestrian walkway instead of the
middle of roads (Figure 3). It is therefore necessary to snap the GPS Tracklog to the nearest
vertex of the line features stored in the walkway layer.
The action of snapping the point features in GPS Tracklog was automated by VBScript
source code. Whenever a new GPS position is received by ArcPad and is being added into the
Huang and Li
map as a new feature, the fired OnFeatureAdded event of the Map will call and execute a
subroutine that accomplishes the snapping of GPS Tracklog.
When the database is first established, exhaustive search is used to search for buildings
within the search limit defined by the users. As commonly known, exhaustive search would
definitely be the last resort to be adopted in order to attain an efficient search of the database.
Therefore, an alternative was proposed to replace the exhaustive search by adopting the indexing
method (5, 6).
Indexing Method
The main feature of this prototype is its capability to display information of buildings in the
vicinity of users depending on the search radius specified by users. The spatial searching
algorithm was incorporated in the VBScript source code that automated the customized tasks.
Bearing in mind that all buildings in NUS were stored as polygonal features, when searching for
the buildings that fulfills the criteria, the system had to access to every item in layer
“polygon.shp” from first record to the last record, subsequently every single coordinate of each
vertex of polygon features in order to calculate distance between the buildings and user’s current
location. For example, if there are n polygons, then the complexity of the exhaustive search is
Therefore, such a time consuming algorithm should be replaced with a more efficient
searching algorithm using, e.g. the indexing method.
The lack of spatial indexing in ArcPad leads us to deve lop our own indexing method
called Route Segmentation B-Tree (Figure 4). The algorithm was implemented by first splitting
the streets to a certain number of segments and subsequently assigning indices to each street
segment. Whenever searching was initiated, the system would look for the nearest street segment
from the user’s current location and search only for buildings features “belonged” to that
particular record, instead of all buildings. Assuming all segments have the same number of
buildings allocated to them, it can be approximated that, with the same total number of n
polygons, the complexity of the indexing algorithm is O(log n).
Before the algorithm of indexing was developed, it was necessary and crucial to first
build a data structure with proper size. The size refers to the appropriate number of road segment
because it critically determines the relative reduction in order of growth by using indexing
algorithm instead of exhaustive search. Due to time constraint, the selection of size was not
studied in details. By intuition, the length of each segment varied from 5 to 6 times of the
average length of the larger dimensions of all buildings that were within 100m from the all the
segments. It resulted in having 36 route segments in the campus map.
There were a total of four layers in the NUS campus map but only streets layer and
polygon layer were involved in the route indexing method. Within ArcCatalog and ArcMap
application environment, a new field called “ID” was appended into the layer “polygo n.shp” and
“route.shp”. Each record in those layers was assigned a unique “ID”. In layer “route.shp”,
additional field other than “ID” named “Bldgs_Id” was created to store “ID” values of buildings
in polygon layer that are “belonged” to each record in streets layer. Each ID value was separated
by space character. The buildings were considered belonging to the streets layer if any point in
the polygon feature fell within 100m radius from any record in streets layer. As a result, some
IDs of buildings appear more than once in the field “Bldgs_Id”. The allocation process started
with creating a buffer zone of 100m around each record in street layer (Figure 4)
Huang and Li
After the same procedures were performed to a total of 36 records in streets layer, a corelation and spatial relationships between the streets and buildings in NUS were formed based on
their proximity. When the implementation of the database was completed, we proceeded to
writing the VBScript source code. The pseudcode of the indexing algorithm that based on the Btree (Balance-tree) is given below:
Pseudocode of the Indexing Algorithm
Indexing Algorithm
pUser – point object representing user’s current location
S – search radius with pUser as centre of circle
OnPosition in GPS – new GPS position received
A series of building records in buildings layer found within S
New GPS position returned in a pre-defined interval calls the subroutine
embedded with indexing algorithm to search for buildings with certain distance
away from user. Search results are displayed in user interface.
Set minimum distance, say d = Distance to first vertex in first part of first record in streets
Loop through streets layer to search for nearest vertex from pUser:
If distance of record to pUser, say Curr_d < d then
Update d
Store the buildings IDs of this record to dynamic arrays, A
If Curr_d = d then
Store the building IDs of this record to dynamic arrays, A’
If the attributes in A’ = attributes in A then
Erase the attributes in A’
End If
End If
End If
If arrays A and A’ are empty then Exit
Join the elements in A and A’ to form a string, say str_All
Search for space character in str_All to extract unique building IDs, say ID(i)
n = number of unique IDs found in str_All
If no buildings ID found then Exit
For i = 1 to n do
Go to record i in buildings layer
Get the record attributes and store them in dynamic arrays
Set all objects to be nothing
End Sub
Improvement of Efficiency in Performing Spatial Queries
The built- in function “Timer” in VBScript was utilized in the source code to retrieve the system
time. A start time and an end time were inserted within lines of code to acquire the difference of
both to give the process time of those two algorithms. For the exhaustive search, 30 points
Huang and Li
representing user’s locations were picked arbitrarily on the map by mouse clicking, and the
average computation time was 3.6s.
As for the indexing method, it was found that the maximum number of candidates in
terms of buildings needed for distance checking was 34. As compared to exhaustive search
which retrieves location coordinates from 134 buildings, indexing method only needs to access
to about 10% of the candidates to perform the same spatial query.
Making use of the higher numerical precision available in Personal Computer (PC)
system clock, the results acquired were scaled to reflect the process time on the mobile device,
which has a lower Processor speed. The Pocket PC used in this project is iPAQ H3700 with
64MB as the main memory. By replacing exhaustive search with indexing method, the process
time has been reduced by 2.4s or 67%, from 3.6s to 1.2s.
One of the features of our navigation guide is the ability to capture real time location of the user
using GPS and promptly provide access to the information of the nearby buildings or landmarks
through interactive user interface.
Three custom forms and two custom tools were created in the user interface (Figure 5).
The first custom form “Welcome Note” enabled users to select or enter a value in meter as the
search radius. In the drop down list on the form, a choice of 50m or 100m was available. Users
could also choose to enter a new value not greater than 100m. This search limit was used as the
tolerance when the code searched for buildings that located within the search radius from users’
current locations. Whenever the users want to change the value of search limit, they were free to
click the custom tool button to open the second custom form “Change Search Limit” and input a
new search limit.
Context-awareness of the system was featured in the third custom form “Building
Information” (Figure 6(a, b)). As long as the function was activated by clicking on the
corresponding custom tool available on the toolbar, the form providing information of buildings
found within the search limit would automatically pop up. Within the form, there were three
page tabs allowing users browse the general descriptions of selected buildings as well as their
colored picture images (Figure 7(a, b)).
A field test was carried out after the completion of user interface customization in ArcPad Studio
and transfer of data into the mobile device.
Before the system was distributed to the users for field trials, a walkthrough was carried
out and several observations were made and noted:
The times needed to receive the first signal from Global Positioning System (GPS) at
different locations,
Areas with more obstructions that blocked the signals from satellites,
Stretches of roads where relatively longer time was taken to search for buildings,
Personal experience from a point of view of end-user
Huang and Li
It was found that problems that surfaced as a result of deployment of GPS could not be
avoided. For instance, there are certain areas in the campus that could no t detect sufficient
number of satellites to capture the accurate positioning information of users.
Given a limited time span, 15 undergraduates without prior experience with ArcPad were
randomly selected to experience the system. Before the actual field trials took place, the users
were given demonstration on how to use the functions in the system and they were given 5
minutes to familiarize with the system. The walkthrough session was conducted in a very
flexible way in the sense that the users were not forced to walk through all the roads in NUS.
However, they had to at least use the system for 45 minutes.
Those users were interviewed so that they could feedback on the usability and userfriendliness of the system as third parties. A collection of recommendations and opinions was
gathered and served as the reference to further refine the system efficacy for future research.
There were three basic questions asked to obtain their general feedbacks on the system’s userfriendliness, advantages over convent ional maps and the users’ potential usage in the future.
They had to give their answers of “Yes” or “No” in the scale of 1 to 5. The results are shown in
Figure 8. In general, the feedbacks were encouraging and positive, though some of the users did
provide suggestions to improve the system.
Out of 25 randomly selected undergraduate students who were given the prototype user
interface to perform field test, 60% of them commented that the navigation guide is a more
useful tool than conventional maps to navigate the surroundings in NUS. Results relating to
functional benefits derived from the system (Figure 8(a)) were very supportive as were results
relating to the user friendliness (Figure 8(b)) and disposition of users to use such a system were it
to be ava ilable (Figure 8(c)). Nevertheless, the tests by other age groups still need to be carried
All users also acknowledged that the colored picture images aided in recognizing the
actual buildings. Some of them did point out that the screen is too small to provide the users a
better view of the relative location with respect to the other buildings in the campus. Besides,
buttons that opened a page without picture image should be disabled because this would result in
disappointments with the system. In ge neral, majority of the users preferred explanation and
demonstration prior to their experiments with the interface.
This paper presents the design and development of a prototype navigation guide for pedestrians,
which is context-sensitive, integrating the use of GPS, GIS and PDAs. The development effort
has focused on the customization of GUI, the context-aware functionalities and an efficient
indexing method to replace the slower exhaustive search method for spatial access.
The prototype possessed a friendly user interface that displayed a fully-colored NUS map.
It allowed for various GIS operations including distance measurement and attributes
identification. In addition, users get to browse photos of landmarks and buildings. In the course
of testing the system, user feedback has been taken into account and the interface was updated
Another important feature in this research was the implementation of a newly developed
spatial searching algorithm. It made use of the basic model concept of B-tree algorithm and was
fit into the data model in this research. Such an indexing method has not been explored before in
the area of navigation. By replacing the exhaustive search that finds a solution by trying every
Huang and Li
possibility, nearly 70% of running time has been saved, as compared to running the system on
with an exhaustive search algorithm.
Nevertheless, the prototype still needs some improvement. For example, the interface can
be made friendlier. Also, more pertinent information may be provided to users in terms of the
user interest or profile that can be input manually or downloaded through the wireless network at
the beginning of the navigation.
Huang and Li
1. IDC Western Smart handheld devices Review. Accessed
June 2003.
2. Abowd, G.D., M. Ebling G. Hung, L. Hui and H. W. Gellersen, Context-aware computing.
Pervasive Computing, IEEE, Vol. 1, No. 3, Jul.-Sept., 2002, pp. 22 -23.
3. Aoki, H., B. Schiele, and A. Pentland, Realtime personal positioning system for a wearable
computer. In Digest of Papers of the Third International Symposium on Wearable Computers,
Oct. 18-19, 1999, pp. 37 -43.
4. Bertolott, M., G. O’Hare, R. Strahan, A. Brophy, A. Martin, E. McLoughlin, Bus Catcher: a
context sensitive prototype system for public transportation users. In Huang, B. et al. (eds.),
Proceedings of the 3rd International Conference on Web Information Systems Engineering,
IEEE Press, USA, pp. 64-72.
5. Christos, F., T. K. Sellis, N. Roussopoulos, Analysis of object-oriented spatial access
methods. ACM SIGMOD Conference, USA, 1987, pp. 426-439.
6. Guttman, R., R-trees: a dynamic index structure for spatial searching, ACM SIGMOD
Conference, USA, 1984, pp. 47-57
Huang and Li
List of Figures
Figure 1 System architecture of the navigation guide prototype.
Figure 2 Process flow of the user interface design
Figure 3 The GPS Tracklog does not align with the walkway layer, which was created as double
lines on both sides of main roads in streets layer.
Figure 4 Selected features in polygon layer that intersects with buffer created using “Select By
Location” function in ArcMap.
Figure 5 Customized toolbar in ArcPad
Figure 6 (a) The GPS cursor indicated user’s current location on the map; and (b) Form popped
up showing the Main Page with a list of buildings found 100m within user’s current location.
Clicking on button “Show Details” would activate Details page.
Figure 7 (a) Details page shows the general description of the destination chosen. Clicking
button “See Photos” would activate Site Photos page; and (b) Site Photos page presents colored
image of the building selected.
Figure 8 (a) User responses to advantages over conventional maps; (b) User responses to
potential usage; and (c) User responses to user-friendliness of the system.
Huang and Li
Figure 1 System architecture of the navigation guide prototype.
Huang and Li
Figure 2 Process flow of the user interface design
Huang and Li
Figure 3 The GPS Tracklog does not align with the walkway layer, which was created as double
lines on both sides of main roads in the streets layer.
Huang and Li
Figure 4 Selected features in polygon layer that intersects with buffer created using “Select By
Location” function in ArcMap.
Huang and Li
Figure 5 Customized toolbar in ArcPad
Huang and Li
Figure 6 (a) The GPS cursor indicated user’s current location on the map; and (b) Form popped
up showing the Main Page with a list of buildings found 100m within user’s current location.
Clicking on button “Show Details” will activate Details page.
Huang and Li
Figure 7 (a) Details page shows the general description of the destination chosen. Clicking
button “See Photos” would activate Site Photos page; and (b) Site Photos page presents colored
image of the building selected.
Huang and Li
Figure 8 (a) User responses to advantages over conventional maps; (b) user responses to userfriendliness of the system; and (c) user responses to potential usage.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF