Professional Documents
Culture Documents
7/8/10
12:09 PM
Page 57
vices (LBS), participatory sensing (PS), and human-centric sensing (HCS) are names that have recently appeared in the
research literature to refer to these types of applications.
PS aims to collect enough data to measure and monitor a
variable of interest in a community, city, country, or even
worldwide with the participation or collaboration of many cellular users. Examples of PS are applications that collect air quality measurements to determine the pollution index; real-time
GPS locations to assess traffic congestion and travel times; and
noise, humidity, and temperature measurements to show realtime maps with these variables. HCS applications, on the other
hand, aim to collect data about the health of the user, or a
group of users. Both PS and HCS applications integrate specific
sensors into the cellular telephone to measure the variables of
interest. Carbon dioxide, temperature, humidity, heart rate,
breath depth, and oxygen in the blood are examples of variables that need specialized sensors beyond the ones normally
available in cellular phones. Normally, GPS position and
accelerometer data are used in many LBSs such as real-time
tracking applications for personal security, children tracking,
pet tracking, and fleet and asset management to study, monitor,
and alert about the behavior of the individual, her health, the
effectiveness of medicine and treatments, and so on.
Although this new sensing platform possesses very nice features, and LBSs, PS, and HCS applications seem to be ready
for prime time, they bring new technical and nontechnical
challenges. Imagine for a moment an application to track people in real time that sends a 40-byte packet with the GPS
position of the user to a central server every second. If 10,000
users are subscribed to this service, the application automatically generates 1.4 Gbytes of data per hour. In an envisioned
scenario with many different types of LBSs, and PS and HCS
applications all over the world, these applications may easily
become the next wave of traffic in the Internet, after the
57
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 58
Related Work
Wireless sensor networks research has its origins with the
Defense Advanced Research Project Agency (DARPA) in the
late 1970s with the Distributed Sensor Networks program [1].
This program was an initiative to build cooperative networks
of low-cost sensing devices that could perform autonomous,
yet cooperative sensing. With the advancement of MEMS
technology in the late 1990s, the technology for static WSN
platforms was developed [1, 2]. The idea was to build nodes of
small size (as small as 2 mm 2 ) that could be able to sense,
transmit data, and harvest their energy needs from the environment, so they could be active for years and cheap enough
to be deployed everywhere. A complete survey on the evolution of this topic is provided in [3]. As of today, this vision has
not been fully achieved, as most WSN nodes remain fairly big
and costly, which has limited the use of WSNs to rather small
and focused deployments.
Cellular technology, mobile Internet connectivity, and the
widespread utilization of cellular phones are making the envisioned goal of WSNs a reality. In combination with positioning and MEMS technologies, LBS, PS, and HCS applications
using WSNs of cellular phones have started to emerge. LBS
applications are the most common thus far with several tracking services being offered by independent companies as well
as cellular carriers. Many architectures and middleware have
been proposed for LBS applications [46]. Not so common
are PS and HCS applications. MetroSense [7], which calls for
a human-centered approach to sensing, is an architecture that
mixes static wireless sensor networks with mobile cellular
phones, a federated server architecture, and already established social networks such as Facebook, MySpace, and IM to
share sensed information in a secure manner and promote
social interaction, study life patterns, find friends, and several
others.
Under the name of Participatory Sensing [8], researchers
from the Center for Embedded Networked Sensing at UCLA
have developed several projects that involve community-oriented sensing. CENS projects focus on how communities,
using sensor-enabled cellular phones, can monitor variables of
interest and events that affect the lives of the people in the
community [9]. Similar projects have been developed by
research groups at MIT [10], University of Cambridge (Cambridge Mobile Urban Sensing) [11], and Microsoft Researchs
Networked Embedded Computing Group [12].
Since 2005 our Location Aware Information Systems Laboratory at USF has been involved in the development of several projects utilizing cellular phones as sensing devices for both
community and personal sensing. By using GPS-enabled
devices and the architecture described in [4], we have developed applications like Wi-Via, a community-oriented Amber
alert application that captures geotagged images and videos
58
and sends them to a law enforcement central location; TRACIT, a personal-oriented system that keeps track of peoples
commute behavior and provides feedback to optimize travels,
costs, and time; and TAD, a travel assistant device that helps
people with cognitive disabilities use public transportation systems.
The applications and architectures described before differ
from the architecture presented here in several aspects. First,
they are tailored to either LBS, PS, or HCS applications only.
Second, they do not explicitly address the issue of managing
the large amount of traffic they generate. Third, they mostly
use mobile cellular phones only. Finally, they all have a rather
local scope.
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 59
Internet
Mobile
sensor
network
Personal
and
environmental
information
Servers
Data collection
Data analysis
point
Data transport
Data storage,
estimation, inference,
visualization and
feedback
sensing application, the careful management of this information is required. For this reason G-Sense manages location
information in a special component that consists of three
modules.
Location Acquisition Module This module obtains the position of the device. Example implementations of this module
are the Java Location API (JSR-179 or 293) for Java ME, the
Androids Location API, any custom made GPS wrapper, or
location services, such as the one provided by Skyhook, or
similar companies. Therefore, this subcomponent abstracts the
positioning methods and devices (GPS) the mobile sensing
device can use to obtain a location.
Location Estimation Module The main objective of this module is to combine the location information from different
sources that the device gathers using the Location Acquisition
module and provide a better estimate of the units position.
This module could utilize technologies like dead reckoning, or
use historical data about the travel patterns of the user to
obtain or improve the position of the unit.
Critical Point Management Module The Critical Point Management module makes two important decisions. First, it
decides whether it is worth spending extra energy trying to
obtain the units position or not. Second, once the units position is obtained, it decides whether it is worth sending it to
the server or not. This is one of the most important modules
in the clients software architecture because it is meant to
reduce the amount of traffic on the network, reduce energy
59
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 60
GPS
GPS
Mobile
sensor
Internet
network
Personal
Servers
and
environmental
G
Data storage,
information
Data
estimation,
Data
Data
analysis
inference,
collection point transport visualization
and feedback
Mobile
sensor
network
Personal
and
environmental
information
Internet
Servers
Data storage,
Data
estimation,
Data analysis
Data
inference,
collection point transport visualization
and feedback
Miami
Berlin
Mobile
sensor
Internet
network
Personal
and
Servers
environmental
Data storage,
information
Data
estimation,
Data analysis Data
inference,
collection point transport visualization
and feedback
Washington
GPS
Mobile
Internet
sensor
network
Personal
Servers
and
environmental
Data storage,
information
Data
estimation,
Data
Data
analysis
collection
transport inference,
point
visualization
Baghdad
and feedback
consumption in the client, and save storage space while satisfying the requirements of the application.
60
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 61
Sensor management
Server communication
management
Session management
Location estimation
Feature detection
Location acquisition
Data acquisition
Communication management
Operating system
The Mobile WSN Management component manages connectivity with the mobile sensing devices. The functionality of this
component matches those included in the Server Communication Management component in the client-side software architecture. In addition, it includes the Task Management module,
which executes policies over the received data from the
mobile devices to decide whether to store the data in the
database, invoke a data analysis algorithm, or notify other
devices in the system.
These two server components use the data coming from static
and mobile sensors, other servers, and historical data stored in
the database to perform inference, correlation, and data analysis tasks. Contrary to the data analysis tasks performed at the
client device, which are based only on local and individual data,
these components have a complete picture of the situation and
therefore are able to make deeper and global analyses.
61
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 62
Task management
Task management
Task management
Session management
Communication management
Communication management
Spatial
and
relational
database
Application server
Operating system
62
The Client State Machine The client state machine automatically determines the rate at which GPS position fixes are
queried according to the location of the user, the GPS signal
strength, and other GPS information. Even though the application may need to send new GPS fixes to the server, it makes
no sense to continue querying the GPS system if the user is
indoors with no GPS coverage, or in the same position (not
moving) for a long time. Figure 5a shows an example of a
state machine, and Fig. 5b shows that the state machine accurately achieves its goals, making the mobile device active or
inactive at appropriate times.
Geo-Sensing This is a feature that activates or deactivates
the sensing functionality of the mobile device according to its
current location. In a community-oriented PS application
meant to assess the pollution index in a particular zone of a
city, it does not make sense to have the sensor activated and
sending data from a location outside the specific zone.
Time-Sensing Similar to geo-sensing but based on time. The
sensors are activated only during specific time slots, peak
hours, or shifts, and the like.
The Critical Point Algorithm The critical point algorithm,
which is also implemented in the Critical Point Management
module, decides whether or not to send a GPS fix to the serv-
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 63
State
0
State
1
State
n-1
State
n
GPS interval
=4s
GPS interval
interval
GPS
s
==4 8sec.
GPS interval
= 2 min
GPS interval
= 5 min
250
200
150
1
24
47
70
93
116
139
162
185
208
231
254
277
300
323
346
369
392
415
438
461
484
507
530
553
576
599
622
645
668
691
714
737
760
783
806
829
852
875
898
921
944
967
990
1013
100
One of the most important aspects of building
a global system like G-Sense is how to manage
the large amount of traffic generated by all the
50
sensing devices. This challenge has been partially addressed by the algorithms presented
0
before. However, if the system is implemented
in many places at the same time, a centralized
system would not be appropriate. In order to
(b)
make G-Sense scalable, a peer-to-peer architecture is introduced based on the locality of
Figure 5. Functionality of the state machine: a) the client state machine; b)
the data. The peer-to-peer protocol that impleinterval detection.
ments the architecture is the Geotella protocol.
Geotella interconnects individual servers and
creates a sensing overlay over the Internet in
which each of the servers becomes a place for sensor data
their indices. These data might be manipulated to provide an
aggregation, provides the functionality to distribute sensing
unreal picture of the pollution index in a country.
tasks among several places, and collects the information
from such tasks.
Security and Privacy Mechanisms to ensure security and privacy
Geotellas name comes from the fact that the peer-to-peer
are very important in all these applications. Some applications
system is a non-DHT system like Gnutella, structured over the
require protection of the real position as well as the personal inforlocation information exchanged by the servers. A non-DHTmation of the user. Achieving these goals in an energy-efficient
based approach was chosen to develop the protocol, as it is
and simple manner for mobile client devices is very challenging.
difficult to deal with range queries in DHTs, which is the case
Location-based security is also an interesting research topic.
in geography-centric queries. Geotellas peers periodically
exchange location information and sensing range, which allows
Activity Determination Algorithms to automatically determine
peers to be aware of the location and current sensing area of
the type of activity the user is doing are important for all these
the others. From a wireless sensor networks point of view,
applications as well. Accelerometer and positioning data have
Geotella is a clustering approach over the Internet to manage
been used in different studies to determine the mode of transthe sensing information gathered by the static and mobile
portation, the type of activity and position of the user (walking,
wireless sensor devices. In the protocol the overlay is mainjogging, sitting, sleeping, etc.), and others. For some applications
tained using UDP messages, but the exchange of the results of
the combination of these data plus personal data might be used to
a sensing task is done using HTTP.
make more accurate estimations. Furthermore, several of these
data could also be used to trigger sensing tasks at more appropriOpen Challenges
ate times, reducing the amount of data and saving more energy.
LBSs, PS, and HCS are fairly new areas with many still unresolved challenges. The following list provides a brief descripLearning and Feature Extraction Algorithms HCS applications
tion of the most important challenges.
can send and store lots of data about a particular user. The
data by itself is not very useful. Mechanisms need to be
devised to translate these data into information about the
Validity of the Data Mechanisms to guarantee the validity of
users, their behaviors, their preferences, and so on so that this
the data are very important. Imagine a PS application to meacontextual information can be used to enhance the service
sure the pollution index in different countries that will be used
providing effective and timely feedback.
to either charge or provide funds to the countries according to
63
LABRADOR LAYOUT
7/8/10
12:09 PM
Page 64
AI Algorithms for Resource-Constrained Devices Most learning and feature extraction algorithms are computationally
expensive and therefore are usually run in servers. However,
some of these applications might benefit if some of these
algorithms could be run in the client device.
Data Correlation Global applications provide the capability
to collect data worldwide. Correlation and visualization mechanisms are needed to understand and see the effect that the
data from one place of the globe might produce on others.
Incentive Mechanisms Some participatory sensing applications will need some sort of incentive for users to participate.
Data Visualization Showing a variable of interest (e.g., pollution, temperature) on a map will need estimation and inference techniques to complete the map when there is a small
number or incomplete set of samples.
Summary
This article presents G-Sense, a scalable architecture in support of LBS, PS, and HCS applications made of mobile and
static sensor devices. G-Sense is a hybrid architecture that
uses a client-server architecture within a server domain and a
peer-to-peer architecture among servers to scale the system to
worldwide deployments. The article describes the hardware
and software components of the architecture, and shows the
importance of these new applications and the new wave of
massive traffic they will generate. A prototype application is
described, and several client-side mechanisms to reduce the
amount of data and address energy issues are presented.
Finally, the article lists some of the most important issues that
are still pending for research contributions.
References
[1] C. Chong and S. P. Kumar, Sensor Networks: Evolution, Opportunities, and
Challenges, Proc. IEEE, vol. 91, no. 9, 2003, pp. 124756.
[2] J. M. Kahn, R. H. Katz, and K. S. Pister, Next Century Challenges: Mobile
Networking for Smart Dust, Proc. 5th ACM/IEEE MobiCom, 1999.
64
Biographies
ALFREDO J. PEREZ [M] (ajperez4@cse.usf.edu) received his B.S. in systems engineering from the Universidad del Norte, Barranquilla, Colombia, in 2006, and
his M.S. in computer science from the University of South Florida in 2009,
where he is a Ph.D. candidate in the Department of Computer Science and
Engineering. His research interests are in the areas of evolutionary algorithms,
multi-objective optimization, mobile sensor networks, and location-based systems. He is co-author of the book Location-Based Information Systems , CRC
Press, 2010.
MIGUEL A. LABRADOR [SM] (labrador@cse.usf.edu) received his Ph.D. degree in
information science with concentration in telecommunications from the University
of Pittsburgh in 2000. He is currently an associate professor in the Department
of Computer Science and Engineering at the University of South Florida. His
research interests are in energy-efficient mechanisms for wireless sensor networks
and location-based services. He is lead author of the books Topology Control in
Wireless Sensor Networks, Springer, 2009, and Location-Based Information Systems, CRC Press, 2010.
SEAN J. BARBEAU [M] (barbeau@cutr.usf.edu) joined the research faculty of the
Center for Urban Transportation Research at the University of South Florida in
2004. He has over five years of experience with the development and application of intelligent mobile technology to transportation challenges involving GPSenabled mobile phones. He served in the international Expert Group that
developed the JSR293-Location API 2.0. He holds Masters and Bachelors
degrees in computer science from the University of South Florida where he is
also a part-time Ph.D. student.