230 likes | 308 Views
Introduction. Dr. Miguel A. Labrador Department of Computer Science & Engineering labrador@csee.usf.edu http://www.csee.usf.edu/~labrador. Outline. Location Based Information Systems (LBIS) LBIS challenges Location-Based Services (LBS) applications Location provider architectures
E N D
Introduction Dr. Miguel A. Labrador Department of Computer Science & Engineering labrador@csee.usf.edu http://www.csee.usf.edu/~labrador
Outline • Location Based Information Systems (LBIS) • LBIS challenges • Location-Based Services (LBS) applications • Location provider architectures • Software architecture • A complete LBS example
Location Based Information Systems • Systems that integrate advances in mobile phones, software development platforms, databases, positioning technology, Geographic Information Systems (GIS), and communications • All combined make possible the creation of Location-Based Information Systems (LBIS) and Location-Based Services (LBS) • Promise to change the way we live • 3.25 billion mobile phone users in 2007 • Half the world’s population • LBS subscribers using GPS-enabled cell phones expected to grow from 12 M in 2006 to 315 M in 2011 • 20 M from 500 K in North America
LBIS Challenges • Many players and technologies involved, and many issues unsolved • Databases, GIS systems, positioning, applications • Erroneous and variable information • Accuracy of GPS fixes depend on positioning system, user location, weather conditions, interferences, etc. • Cellular communication networks • Wireless transmission problems, such as fading, interferences, disconnections, low bandwidth, etc. • Cell phones • Very resource-constrained device in terms of processing power, storage, and energy capabilities • Operating systems and interoperability
Location-Based Services (LBS) • An application that provides users with information based on the geographical position of the mobile device • Main difference from other applications/systems • Availability of the user’s position in real-time • This single difference makes a BIG difference • Initial LBS systems were subscription-based • Traffic congestion notifications based on roads selected from a Web site • Received congestion updates about I-75 when on travel in NYC!
Types of LBS Applications • LBS can be either Reactive (“pull”) or Proactive (“push”) • A Reactive LBS application is triggered by the user who, based on his current location, queries the system in search of information • Many examples • Finding restaurants or places of interest • Obtaining directions • Locating people • Obtaining weather information • Sending emergency notifications to police, insurance companies, roadside assistance companies, etc.
Types of LBS Applications • In Proactive LBS applications, on the other hand, queries or actions are automatically generated by the LBIS once a predefined set of conditions are met • System needs to continuously know where you are and evaluate the predefined conditions • Many examples as well • Geofencing, e.g., children outside predefined boundary • Fleet management • Real-time traffic congestion notifications • Location-based advertisement • Real-time friend finding • Proximity-based actuation • Travel assistant device for riding public transportation, tourism, museum guided visits, etc
Location • In LBIS and LBS applications everything is about LOCATION • Important to know about different players and techniques used in the provision of location information • A location provider may or may not be the same entity providing the location-based service to the user • According to who provides the location information, the system can be categorized as network-based, mobile-based, and location provider-based
Network-Based Location Provider • Usually the same cellular network carrier • Carrier locates the user and stores his location in a database within its network • LBS provider needs to obtain permission and/or pay for obtaining user location information • LBS application needs mechanisms to query the DB • Preferred way of cellular carriers • Maintain ownership and control of the location information • Additional revenues • Have not accelerated the development of LBS • Cellular networks need to install costly positioning technologies • Carriers may limit the number and frequency of queries • Limiting the developing of some applications, mostly real-time ones • Applications need to be aware of which carrier the user belongs to
Mobile-Based Location Provider • Mobile device has the capability of obtaining the location • GPS, cell network, both • Location is sent to the LBS service provider and stored in its database for future reference or processing • Server application may or may not send information back to user • Depends on application and predefined parameters • Clients are not limited to cellular phones • Any GPS-enabled device with communication capability • Accelerated rapid development of LBS application • Neither financial nor technical barriers • Main disadvantage of this method is that it has the potential to flood the network with location updates • Different LBS providers may or may not share the locations • A user may be sending same location to more than one LBS provider
Location Provider-Based • Meant to solve the flooding problem of mobile-based method • Independent entity collects locations using different methods and make them available to LBS providers • Only business is to provide location information • Scalable architecture; perhaps the best architecture for wide deployment of LBS • Provisions needed to guarantee fair price and include competition • There are a few companies that provide location information • Skyhook, Where, Veriplace, Loc-Aid Technologies, others • In this class, we will use the mobile-based method • GPS-enabled cell phones and network-based technologies
A Complete LBIS Tracking Example • General real-time tracking application with visualization • Tracking devices, people, etc. • Uses the mobile-based location provider architecture • Proactive LBS application consisting of the following components: • Positioning system • Client device • Transport network • Main control station • Servers • Standard and free software and standard protocols as much as possible
Hardware • Positioning system • GPS and Assisted GPS (A-GPS) • Client device • GPS-enabled cell phone or any device with GPS or embedded positioning system • Transport network • Cellular network with data plan (GPRS or similar) or network connectivity using Wi-Fi or any other IP-based networking technology • Main control station • PC connected to the system to control service and visualize data, e.g., set up geofence and Google maps • Servers • Database, GIS for geocoding and reverse geocoding, application server for processing
Software • Java platform • Java SE for clients and Java ME for resource-constrained devices • Sun’s Glassfish as the application server • Google ‘s Web Toolkit for visualization • Google Maps and Google Earth • Postgres, and object-oriented relational database • PostGIS, Postgres’s add on to support geographic objects • Standard communication protocols • HTTP, TCP, UDP
Software Architecture • Software architecture is needed in order to • Have an organized system • Know who does what in the system • Understand data flow • Know about relationships between components • Know protocols and interfaces used • Software architecture for the client and for the server • An example follows • Used in proactive, mobile-based location provider applications related to transportation
A Brief Look into the Future • LBS, Human-Centric Sensing, Participatory Sensing