Lost in KLAUS Junhee Park Unkyong Lee

advertisement
Lost in KLAUS
Junhee Park
Unkyong Lee
College of Computing
Georgia Institute of Technology
Atlanta, GA, 30332-0280 USA
College of Computing
Georgia Institute of Technology
Atlanta, GA, 30332-0280 USA
jhpark@gatech.edu
uk.a.lee@gatech.edu
ABSTRACT
Each year, tens and hundreds of GPS related product appear in
retail market and the functions are still improving to meet users
need. However, among these huge selections there is almost no
product considering in-door navigation system. Today’s modern
malls, theme parks, buildings are huge and have various paths
so people might get lost very easily. In our project, we introduce
the in-door navigation system by applying Klaus Advanced
Computing Building scenario. Using our mobile application,
users can locate their current location either by ‘Where Am I’
[1] or by entering nearby room number. Also by sending start
and end position to server via web service, users can receive
shortest route to the desired location.
2. PROJECT DISCUSSION
2.1 Project Goals
z
Construction of Maps
z
Shortest Path Searching
z
Navigation
z
Display Current Position
z
Show Route in Multiple Story Building
1. INTRODUCTION
2.2 Design
Widely available these days, GPS Navigation systems and
electronic maps such as Google Maps plays a significant role in
helping users moving one place to another by providing detail
maps or showing routes. Also the recent growth in mobile
devices caused various mobile applications to have boundless
potentialities and indispensable to our lives.
We used ArcGIS tool, a retail software that provides various
shared, GIS-based services, to construct our map, to search
shortest path, and to develop the navigation system. For the
mobile side we used C# .NET combined with vendor specific
APIs called as ArcGIS SDK.
These technologies enabled users to access maps from wherever
they want. These maps, however, are created only for huge
public area. Although some relatively small places such as
theme parks, shopping malls, or large buildings would be better
to have electronic maps, these places currently use board or
paper maps. The paper based maps often make users confused
because they provide limited information – no sign of current
position. Therefore having electronic maps for small particular
area can be very useful to everyday people’s lives.
In this project, we proposed to build the mobile application
name “Lost in KLAUS”, a prototype of Location-Based Service
to help students to find their way to their destination without
much of a hassle. Most students who have classes in the Klaus
building have hard time finding their classrooms on the first day.
This application will guide not only students to find their class
rooms but also help visitors find their destination in Klaus
building.
3. RELATED WORK
Google Mobile Maps and Weybridge are electronic maps
serviced on mobile phones. Both of them are general world map
to travel cities but they contain similar functionalities required
the Lost in Klaus system such as showing image maps, finding
shortest paths, providing information related with each location,
and input and output methods for hand-held devices. Google
Mobile Maps is based on internet and Weybridge is based on
stand-alone application. The Lost in Klaus, the navigation
system we propose, provides both methods for users.
ArcGIS. Each point has various information such as
the value of latitude, the value of longitude, the type
of a point whether it is a room or a path, the name of
a person who is in charge, and the capacity. This
layer also has a coordinate system which allows us to
get latitude and longitude values easily by creating a
point on the ArcGIS Map. The ArcGIS Map has a
function to add values of latitude and longitude
automatically by matching the coordinates with the
positions in the map. We had to play tricks on several
points which have same (similar) latitude and
longitude but different altitude. Since The ArcGIS
only support 2-dimensional network dataset,
Network Analysis Tool could not distinguish
difference of the altitude value. For example, if the
two points have same latitude and longitude then
even if they are in different altitude, Network
Analysis Tool treats them as a same point. In that
case we decide to place the points to slightly
different location with each other.
4. IMPLEMENTATION
4.1 Technologies Used
The project was implemented using C#, ArcGIS SDK, and Web
Services. The Web Service was deployed on Microsoft Internet
Information Services-ArcGIS server and was built using C#.
This section describes the implementation of the components of
our system; namely, map creation, mobile application, web
service, ArcGIS server.
„
4.2 System Component Overview
z
Map Creation
„
Layers - We used ArcGIS, which is one of the most
well-known GIS programs in the world, to construct
the map. The map basically has 4 layers: footprint,
room shape polygons, points, and paths. To find the
shortest path, we made network analysis dataset
using Network Analysis Tools, and not only added
layers which are related to the datasets but also
included junction and path data to the map.
„
Footprint layer and room shape polygons layer The footprint layer has shape of Klaus building. The
room shape polygons layer has shapes and locations
of every room in Klaus. Since they do have actual
coordinate system but do not have data except
ArcGIS features, these two layers are not used in
finding the shortest path or anywhere else. However,
those layers helped us creating the map intuitively
because it showed location and shape of the building
or the rooms. In that case we already have the
footprint, and draw each room shape polygon using
raster images which are floor plans of the Klaus
building. Actually the shape of the footprint is
slightly different with that of raster image, but
fortunately this difference is small enough to be
ignored.
„
Points layer - This layer has all nodes (rooms,
elevators, stairs, and routes) as a point feature of
z
Paths layer - Every path in the paths layer exactly
connects from one point to another point. It has a
length field and uses it as a standard in finding the
shortest path which means that the length of a line is
considered to be the weight of an edge in shortest
path finding algorithm. For example, if there are
many routes to go from a source to a destination, a
route having small amount of lengths is a more
efficient route. Path is an instance of ArcGIS
Polyline. Polyline feature originally includes
information of a length, but there was no information
of it in a data table. In this case, Network Analysis
Tool uses ‘shape’ as a standard to decide the shortest
path which could make a lot of confusion and lead to
a wrong decision. So we decide to use Hawth’s Tool,
a pluggable 3rd party tool, to make a length field and
added values.
Mobile Application
„
Displaying / Browsing maps - The hand-held device
itself has simple map images, so users can browse it
without internet connection. Each floor map had
drawn in different colors in order for users can easily
recognize current floor whenever they change floor
level. At the same time, we indicated current floor on
the screen and made elevator and stair in green color
because those structures have different characteristic
from others. Mobile application also provides map
browsing function. Since this application is targeting
Pocket PC, we can use pen to drag map image to
view the desired location and there are zoom in/out
function to help users to have more detailed view.
„
„
Current position - Users current location is marked
as red dot on the map image. Users can set their
current location either by entering nearby room
numbers or by selecting “Where am I” menu which
will automatically retrieve the coordinates and
entering the floor level. If the user chooses to use the
nearby room number then the handheld device
retrieves current location (latitude, longitude) from
mobile application’s room data and show the image
on the screen. It could also be done by using web
service, but to support least functionality even if
there is no network connection, we decided to store
relevant information. For the “Where am I”, it takes
latitude and longitude values in XML format.
Although it sends altitude values, if we use lawn
from KLAUS building the value is always same so it
really do not mean for our application. The received
real latitude and longitude values are changed to fit
into the small mobile device coordinates using
maximum and minimum value of the latitude,
longitude and map image’s width and height.
Routing service - Mobile application provides room
number, people’s name, and lab name lists. This list
can either exist in mobile application or receive from
server through ArcGIS web service. Currently since
the web service is not fully functioning as it meant to
be, we have tested and used by manually inserting
simple list in the mobile application. The items in
this list can also have their real latitude and longitude
value either from the server or mobile application
itself. If the users select an item from this list, then it
will show the route from current location to desired
location. This shortest path is received via web
service. When sending latitude and longitude of the
starting and ending points as parameters to web
service using http request, then the server calculates
the shortest path and returns the result in XML
format. This result contains latitude, longitude, type,
and floor information of each point which makes up
the route. By analyzing this result, the mobile
application shows the route from starting point to end.
If the route is comprised of several floors, the mobile
application will show current floor first then show
rest of the route when you switch floors. Switching
floor event is called either by using current position
set-up menu or by clicking end of the route in that
particular floor. If that end of route is the final
destination point then the routing service is finished.
z
Web Service
Publishing a map which was developed from ArcGIS
Desktop (Map, Catalog, etc) on ArcGIS server, other
computers or mobile devices can access the map
information via network. ArcGIS server provides various
methods for accessing the map information from remote
client. We have chosen to make web service of ArcGIS.
This enables us to send query using HTTP connection and
receive result in XML format. To be more specific, after
developing web service and running it on server, mobile
devices could make HTTP connection to corresponding
address and send latitude and longitude value of start and
end point as parameters. The web service receives the two
points uses Network Analysis APIs to find the shortest
path; then responses back to the mobile devices with XML
format of each point in the route.
5. EVALUATION
Figure 1: Map of 1st floor (blue) and default location is marked
with red dot.
Figure 2: Map of 2nd floor (yellow) and default location is
marked with red dot. Map image has been zoom-in for users to
see more clearly.
Figure 3: Map of 3rd floor (red) and default location is marked
with red dot.
Figure 4: Map image on Server side. Since server needs to do shortest path calculations, it has all information such as node, path, latitude,
longitude, and etc.
Figure 5: This figure shows examples that users can search using room numbers and professor’s name. It will help both students and
visitors to find their way to desired location.
latitude, altitude, floor, type from this object and make
new class object.
6. FUTURE WORK
z
Since each point in points layer has floor information, we
can represent altitude by using this information in
ArcGlobe or ArcCatalog.
z
We failed to make the web service work due to the lack of
references. We succeeded getting the route information
stored in INAcontext class object; however we failed to
extract the information that we needed. We need to extract
z
We have to build module for the mobile devices that
connects the web service and retrieve the XML data.
7. CONCLUSION
In this project, we introduce the in-door navigation system
which is targeting the Klaus Advanced Computing Building.
This project can be very useful and readily adaptable since in
many huge complexes such as shopping malls, theme parks
people have hard time finding their way through and it is pretty
easy to see a lot of people staring paper maps have difficulty in
figuring out their current location and direction. Although we
could not completely finish what we have proposed; however
we have built the most fundamental part of this whole project
and showed the feasibility. We leave the remainder in the future
work
8. ACKNOWLEDGEMENT
[1] Where Am I project page
http://rnoc.gatech.edu/whereami/
[2] Maps for mobile phone.
http://vision.eng.shu.ac.uk/mediawiki/index.php/Maps_for
_Mobile_Phones
[3] Google Mobile Map.
http://www.google.com/gmm
[4] ESRI Developer Network
http://edn.esri.com/
[5] Microsoft Developer Network
We take this opportunity to thank Matt Weber for his ideas on
improving and focusing our design and motivation. We are
grateful for his feedback and helpful ideas.
9. REFERENCES
http://msdn.microsoft.com/
[6] The Code Project
http://www.codeproject.com/
[7] Jason P. Nottingham, Steven Makofsky, Andrew Tucker.
1999, Sams teach yourself Windows CE programming in
24 hours, Indianapolis, IN : Sams
[8] Youngkwan Choi, 2006, Novel C#, JABOOK
Download