Professional Documents
Culture Documents
Editors Sponsors
Mukesh Singhal, University of Kentucky, USA IEEE Computer Society
Giovanna Di Marzo Serugendo, University of London, UK National Science Council, Taiwan, ROC
Jeffrey J. P. Tsai, University of Illinois, Chicago, USA Academia Sinica, Taiwan, ROC
Wang-Chien Lee, Pennsylvania State University, USA Institute for Information Industry, Taiwan, ROC
Kay Romer, ETH Zurich, Switzerland Asia University, Taiwan, ROC
Yu-Chee Tseng, National Chiao-Tung University, Taiwan
Han C. W. Hsiao, Asia University, Taiwan
IEEE Computer Society
Conference Publications
Operations
ations Committee
CPOC Chair
Chita R. Das
Professor, Penn State University
Board Members
Mike Hinchey, Director, Software Engineering Lab, NASA Goddard
Paolo Montuschi, Professor, Politecnico di Torino
Jeffrey Voas, Director, Systems Assurance Technologies, SAIC
Suzanne A. Wagner, Manager, Conference Business Operations
Wenping Wang, Associate Professor, University of Hong Kong
IEEE Computer Society Executive Staff
Angela Burgess, Executive Director
Alicia Stickley, Senior Manager, Publishing Services
Thomas Baldwin, Senior Manager, Meetings & Conferences
IEEE Computer Society Publications
The world-renowned IEEE Computer Society publishes, promotes, and distributes a wide variety of authoritative
computer science and engineering texts. These books are available from most retail outlets. Visit the CS Store at
http://www.computer.org/portal/site/store/index.jsp for a list of products.
CPS Online is our innovative online collaborative conference publishing system designed to speed the delivery of
price quotations and provide conferences with real-time access to all of a project's publication materials during
production, including the final papers. The CPS Online workspace gives a conference the opportunity to upload
files through any Web browser, check status and scheduling on their project, make changes to the Table of Contents
and Front Matter, approve editorial changes and proofs, and communicate with their CPS editor through discussion
forums, chat tools, commenting tools and e-mail.
The following is the URL link to the CPS Online Publishing Inquiry Form:
http://www.ieeeconfpublishing.org/cpir/inquiry/cps_inquiry.html
Proceedings
SUTC 2008
Table of Contents
Foreword ...........................................................................................................................................................xiii
Welcome from the Conference Program Co-Chairs ....................................................xv
Committees ....................................................................................................................................... xvi
Keynotes
Strong QoS and Collision Control in WLAN Mesh and Ubiquitous Networks ..........................................................20
Chi-Hsiang Yeh and Richard Wu
v
A Reactive Local Positioning System for Ad Hoc Networks ......................................................................................44
Sungil Kim, Yoo Chul Chung, Yangwoo Ko, and Dongman Lee
On the Security of the Full-Band Image Watermark for Copyright Protection ...........................................................74
Chu-Hsing Lin, Jung-Chun Liu, and Pei-Chen Han
Using Body Sensor Networks for Increased Safety in Bomb Disposal Missions........................................................81
John Kemp, Elena I. Gaura, James Brusey, and C. Douglas Thake
vi
Applications and Protocols of Wireless Sensor Networks
Algorithms and Methods beyond the IEEE 802.15.4 Standard for a Wireless
Home Network Design and Implementation .............................................................................................................138
M. A. Lopez-Gomez, A. Florez-Lara, J. M. Jimenez-Plaza, and
J. C. Tejero-Calado
EvAnT: Analysis and Checking of Event Traces for Wireless Sensor Networks......................................................201
Matthias Woehrle, Christian Plessl, Roman Lim, Jan Beutel, and Lothar Thiele
vii
Special Session
Industry Panel
Wireless Sensor Network Industrial View? What Will Be the Killer Apps
for Wireless Sensor Network? ...................................................................................................................................270
Ming-Whei Feng
Industry Track
Mobile Intelligence for Delay Tolerant Logistics and Supply Chain Management...................................................280
Tianle Zhang, Zongwei Luo, Edward C. Wong, C. J. Tan, and Feng Zhou
Towards Scalable Deployment of Sensors and Actuators for Industrial Applications ..............................................285
Han Chen, Paul Chou, and Hao Yang
viii
Two Practical Considerations of Beacon Deployment for Ultrasound-Based
Indoor Localization Systems .....................................................................................................................................306
Chun-Chieh Hsiao and Polly Huang
ix
Workshop on Ambient Semantic Computing
x
Actuation Design of Two-Dimensional Self-Reconfigurable Robots........................................................................451
Ming-Chiuan Shiu, Hou-Tsan Lee, Feng-Li Lian, and Li-Chen Fu
Calibration and Data Integration of Multiple Optical Flow Sensors for Mobile
Robot Localization ....................................................................................................................................................464
Jwu-Sheng Hu, Yung-Jung Chang, and Yu-Lun Hsu
xi
A Computer-Assisted Approach for Designing Context-Aware Ubiquitous
Learning Activities ....................................................................................................................................................524
Tzu-Chi Yang, Fan-Ray Kuo, Gwo-Jen Hwang, and Hui-Chun Chu
The Study of Using Sure Stream to Construct Ubiquitous Learning Environment ...................................................543
Koun-Tem Sun and Hsin-Te Chan
xii
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract: The report of the President's Council is wasted and doesn't end as useful. This is the
of Advisors on Science and Technology (PCAST) measure of what's in front of us and why we should
has placed CPS on the top of the priority list for be excited.” Buildings and transportation are
federal research investment [6]. This article first sectors with heavy energy consumption. During
reviews some of the challenges and promises of the NSF CDI Symposium (September 5-6, 2007) at
CPS, followed by an articulation of some specific RPI, Clas A. Jacobson2 noted that green buildings
challenges and promises that are more closely hold great promises. Energy used in lightening and
related to the Sensor Networks, Ubiquitous and cooling buildings is estimated at 3.3 trillion KWh.
Trustworthy Computing Conference. Technologically, it is possible to reach the state of
Net Zero Energy Buildings, where 60-70%
1. Introduction efficiency gains required for reducing demand and
balance to be supplied by renewable. However, to
The Internet has made the world “flat” by reach the goal of net zero energy buildings, we
transcending space. We can now interact with must tightly integrate the cyber world and the
people and get useful information around the globe physical world. He noted that in the past the
in a fraction of a second. The Internet has science of computation has systematically
transformed how we conduct research, studies, abstracted away the physical world and vice versa.
business, services, and entertainment. However, It is time to construct a Hybrid Systems Science
there is still a serious gap between the cyber world, that is simultaneously computational and physical,
where information is exchanged and transformed, providing us with a unified framework for robust
and the physical world in which we live. The design flow with multi-scale dynamics and with
emerging cyber-physical systems shall enable a integrated wired and wireless networking for
modern grand vision for societal-level services that managing the flows of mass, energy, and
transcend space and time at scales never possible information in a coherent way.
before.
According to the Department of Energy, the
Two of the greatest challenges of our time are transportation share of the United States’ energy
global warming coupled with energy shortage, and use reached 28.4% in 2006, which is the highest
the rapid aging of a significant fraction of the share recorded since 19703. In the United States,
world’s population with the related chronic passenger and cargo airline operations
diseases that threaten to bankrupt healthcare alone required 19.6 billion gallons of jet fuel
services, such as Medicare, or to dramatically cut in 2006. According to Time4, 88% of all trips in
back medical benefits. the U.S. are by car. Work related needs including
daily work commute and business travel is a
During the meeting of the World Business significant fraction of the transportation cost.
Council for Sustainable Development in Beijing on Telepresence research seeks to make all
March 29, 2006, George David1 noted: “More than
90 percent of the energy coming out of the ground 2
Chief Scientist, Control, United Technology Research Center
3
http://cta.ornl.gov/data/new_for_edition26.shtml
4
www.time.com/time/specials/2007/environment/article/0,28804,160
1
Chairman and CEO of United Technology Research Center 2354_1603074_1603122,00.html
5 7
http://delivery.acm.org/10.1145/1050000/1047938/p3- http://stemcells.nih.gov/info/basics/basics6.asp
8
rowe.pdf?key1=1047938&key2=8175939811&coll=GUIDE&dl=GU Professor, ECSE & Biomedical Engineering, RPI and Associate
IDE&CFID=15151515&CFTOKEN=6184618 Director, NSF ERC Center for Subsurface Sensing & Imaging
6
http://www.cdc.gov/nccdphp/overview.htm#2 Systems
2
spatial locations and orientations of cells relative to created an exciting new ubiquitous computing
blood vessels, soluble factors, insoluble factors paradigm that facilitates computing and
related to the extra-cellular matrix, bio-electrical communication services all the time, everywhere.
factors, biomechanical factors, and geometrical This emerging paradigm is changing the way we
factors. The combinatorial space of parameter live and work today. Via a ubiquitous
optimization and niche environment control calls is infrastructure consisting of a variety of global
a grand challenge in embedded sensing and and localized networks, users, sensors, devices,
actuation. systems and applications may seamlessly
interact with each other and even the physical
A closely related problem is providing care to world in unprecedented ways. To realize this
the elderly population without sending them to continually evolving ubiquitous computing
expensive nursing homes. In the United States paradigm, trustworthy computing that delivers
alone, the number of people over age 65 is secure, private, and reliable computing and
expected to reach 70 million by 2030, doubling communication services play an essential role.”
from 35 million in 2000. Expenditure in the United
States for health-care will grow to 15.9% of the Clearly, SUTC research has a key role to
GDP ($2.6 trillion) by 2010. Unless the cost of play in the emerging cyber-physical system of
health care for the elderly can be significantly systems. A variety of questions need to be
reduced, financially stressed Social Security and answered, at different layers of the architecture
Medicare/Medicaid systems will likely lead to and from different aspects of systems design, to
burdensome tax increases and/or benefit reductions. trigger and to ease the integration of the
A major cost is the loss of the ability to remain in physical and cyber worlds.
the home because of the need for greater health
care supervision. 2. The Challenges of Cyber-Physical System
Research
One crucial factor contributing to the loss of
independence and the resulting institutionalization 2.1. Real-time System Abstractions
is the need for assistance in physical mobility.
Another key factor is cognitive impairment that Future distributed sensors, actuators, and
requires daily supervision of medication and mobile devices with both deterministic and
health-condition monitoring. When future CPS stochastic data traffic require a new paradigm for
infrastructure supports tele-presence, persons with real-time resource management that goes far
one or more minor mobility impairments can beyond traditional methods. The interconnection
regain their freedom of movement at home. In topology of mobile devices is dynamic and the
addition, physiological parameters critical to the system infrastructure can also be dynamically
medical maintenance of health can be monitored reconfigured in order to contain system disruptions
remotely. When the elderly can maintain their or optimize system performance. There is a need
independent living without loss of privacy, a major for novel distributed real-time computing and real-
financial saving in senior care will result. time group communication methods for dynamic
Furthermore, the elderly will be much happier by topology control in wireless CPS systems with
living independently at home while staying in mobile components with dynamic topology control.
contact with their social networks. Understanding and eventually controlling the
impact of reconfigurable topologies on real-time
As observed by SUTC 2008, “rapid research performance, safety, security, and robustness will
and technological advances in wireless have tremendous impact in distributed CPS system
communications and increasing availability of architecture design and control.
sensors, actuators, and mobile devices have
3
Existing hardware design and programming • Consistent views of distributed states in real-
abstractions for computing are largely built on the time within the sphere of influence. This challenge
premise that the principal task of a computer is is especially great in mobile devices
data transformation. Yet cyber-physical systems • Topology control and “dynamic real-time
are real-time systems. This requires a critical re- groups” in the form of packaged service classes of
examination of existing hardware and software bounded delay, jitter and loss under precisely
architectures that have been built over the last specified conditions,
several decades. There are foundational • Interface to access to the same type of
opportunities that have the potential of defining the controls regardless of the underlying network
landscape of computation in the cyber-physical technology.
world. When computation interacts with the
physical world, we need to explicitly deal with 2.2. Robustness, Safety and Security of Cyber-
events distributed in space and time. Timing and Physical Systems
spatial information need to be explicitly captured
into programming models. Other physical and Uncertainty in the environment, security
logical properties such as physical laws, safety, or attacks, and errors in physical devices and in
power constraints, resources, robustness, and wireless communication pose a critical challenge
security characteristics should be captured in a to ensure overall system robustness, security and
composable manner in programming abstractions. safety. Unfortunately, it is also one of the least
Such programming abstractions may necessitate a understood challenges in cyber-physical systems.
dramatic rethinking of the traditional split between There is a clear intellectual opportunity in laying
programming languages and operating systems. the scientific foundations for robustness, security
Similar changes are required at the and safety of cyber-physical systems in general
software/hardware level given performance, and in SUTC systems in particular. An immediate
flexibility, and power tradeoffs. aim should be to establish a prototypical SUTC
model challenge problems and to establish a set of
We also need strong real-time concurrent useful and coherent metrics that capture
programming abstractions. Such abstractions uncertainty, errors, faults, failures and security
should be built upon a model of simultaneity: attacks.
bands in which the system delays are much smaller
than the time constant of the physical phenomenon We have long accepted that perfect physical
of interest. The programming abstractions that are devices are rare. A perfect example of this
needed should also capture the ability of software approach is the design of reliable communication
artifacts to execute at multiple capability levels. protocols that use an inherently error-prone
This is motivated by the need for software medium, whether wired or wireless. This prudence
components to migrate within a cyber-physical has not been applied to other software engineering
system and execute on devices with different processes. We have depended, more often than not,
capabilities. Software designers should be capable on the correctness of the results from our
of expressing the deprecated functionality of a microprocessors and other hardware elements.
software component when it executes on a device While we have successfully masked many
with limited resources. hardware failures using a combination of
innovative circuit design, redundancy and replay,
The programming abstractions that we envision we have largely regarded most other errors as
will need support at the middleware and operating either transient – caused by bit flips – or permanent.
system layers for: Transient errors can be ameliorated by re-
execution and permanent failures require migrating
• Real-time event triggers, tasks to fault-free hardware. Sub-micron scaling of
4
semiconductor devices and device density, many useful, but not safety critical, cyber-physical
however, will present us with hardware that is components that have not been fully verified and
more error-prone, and errors are likely to be validated. The broadcast nature of a wireless
neither transient nor permanent. Intermittent errors network and interference make these challenges
– that last several milliseconds to a few seconds – more serious. In physical systems, it is the theory
may not be uncommon in future generation chip of feedback control that provides the very
multiprocessors [9]. To tolerate intermittent foundation to achieve robustness and stability
failures, we will likely need to apply algorithms despite uncertainty in the environment and errors
that do not rely on the accuracy of one in sensing and control. The current open loop
computation. Ideas concerning imprecise architecture in software systems may allow a
computations [11] will gain more relevance; minor error to cascade into system failure. The
developing algorithms using those principles will loops must be closed across both the cyber world
be extremely valuable on the road to robust and physical world. The system must have the
systems. capability to effectively counter-act uncertainties,
faults, failures and attacks. The recent
These trends will, however, make our current development of formal specification based
efforts of build perfect software more difficult. automatic generation of system behavior
Indeed, there has been great advancement in monitoring, the steering of computation
automated theorem proving and model checking in trajectories, and the use of analytically redundant
recent years. However, it is important to modules based on different principles, while still in
remember that cyber-physical systems are real- infancy, is an encouraging development.
time systems and the complexity of verifying
temporal logic specifications is exponential. That Safety, robustness and security of the
is, like the physical counterpart, a perfect software composed CPS also require explicit and machine
component is also rare and will remain that way. checkable assumptions regarding external
This has profound implications. We need to invent environments; formally specified and verifiable
a cyber-physical system architecture in which the reduced complexity critical services and reduced
safety critical services of large and complex CPS complexity interaction involving safety critical and
can be guaranteed by a small subset of modules non-safety critical components; and analytically
and their interactions; the design of this subset will redundant sensing and control subsystems based
have to be formally specified and verified. Their on different physical principles and/or algorithms
assumptions about the physical environments so as to avoid common mode failures due to faults
should be fully tested, and furthermore, we need to or attacks. We also need theory and tools to design
develop advanced and integrated static analysis and ensure well-formed dependency relations
and testing technologies to ensure that 1) the between components with different criticality as
software code is compliant with the design, and they share resources and interact. Stable and robust
that 2) the assumptions regarding external upgrading of running systems will be another
environment are sound. Finally, cyber-physical critical aspect of cyber-physical systems,
systems are deeply embedded and they will evolve especially in large critical infrastructure systems
in place. The verification and validation of cyber- that cannot or too expensive to shut down.
physical system is not a one-time event; it should
be life cycle process that produces an explicit body 2.3. System QoS Composition Challenge
of evidence for the certification of safety critical
services. CPS systems are distributed and hybrid real-
time dynamic systems, with many loops of
Safety critical services apart, we still have the different degree of application criticality operating
great challenge of how to handle known and at different time and space scales. Compositional
unknown residual errors, and security gaps in system modeling, analysis, synthesis and
5
integration for such systems are at the frontier of to note that these protocols may not be orthogonal
research. The “science” of system composition and, sometimes, could have pathological
has clearly emerged as one of the grand themes interactions; for example, the well-known problem
driving many of our research questions in of unbounded priority inversion when we use
networking and distributed systems. By system synchronization protocols and real-time priority
composition we mean that the QoS properties and assignments as is. There are also numerous reports
functional correctness of the system can be derived from the field about the adverse interactions
from the architectural structure, subsystem between certain security, real-time and fault
interaction protocols, and the local QoS properties tolerant protocols. Thus, the theory of system
and functional properties of various constituent composition must address not only the
components. composability at each QoS dimension but also the
question of how the protocols interact.
A framework for system composition should
highlight the manner of the composition of 2.4. Systems Engineering Research
components and the methods to derive QoS
metrics for a composite system. From a systems engineering perspective, we
need a scientific methodology to iteratively build
Current compositional frameworks have been both the system structure model and the system
developed with limited heterogeneity, such as real- behavior model. We need to develop analytical
time resource management, automata and capability to map behavior onto structure and vice
differential equations. The new theory of system versa so that we identify what aspects of the
composition must provide a comprehensive required behavior will be performed by which
treatment of system integration concerns. Each specific parts of structure. We need techniques to
component should provide a system composition perform quantitative trade-off analysis that will
interface that specifies not only its input and output take into account the available technology and
but also relevant QoS properties and constraints. constraints on the cyber components, from the
In electronic subsystems, the properties of a circuit physical components, and from human operators.
depend not only on component properties but also In the development of CPS systems, constraints
on how they are connected together. Likewise, a imposed by the physical sciences (such as physics,
CPS system's properties will depend on both chemistry, materials science) will need to interact
component properties and the structure of system with constraints on the computing artifacts (such as
architecture. computational complexity, robustness, safety and
security). To make fundamental progress, we need
The framework for capturing subsystem a combination of model-based system and software
requirements needs to be powerful enough to design and integration technologies; and deep
describe both deterministic requirements and analysis of the underlying abstractions and their
probabilistic requirements. Not all subsystems in a interactions.
CPS will be hard real-time systems and methods
need to evolve to capture different types of With this scientific and engineering framework,
requirements, to synthesize compositional we must be able to judiciously choose the location,
requirements, and to determine the feasibility of computing and communication capabilities as well
meeting those requirements. as energy reserves of network nodes in order to
handle the required data flows efficiently. We
Large CPS systems will have many different should be able to alter the topological
QoS properties encompassing stability, robustness, characteristics of the network by changing
schedulability, security, each of which will employ transmission power, medium access control, and
a different set of protocols and will need to be communication protocols. Our challenge is to
analyzed using a different theory. It is important
6
formulate a new calculus that merges time- protected with different levels of information
triggered and event-driven systems. We need it to disclosure to different roles (health care providers,
be applicable to hierarchies that involve dynamics medical team, relatives, or assisted persons).
at drastically different time scales from months to Unauthorized access to private information can
microseconds and geographic scope from on chip have serious consequences. We need an analytical
to the world. This is a grand challenge. foundation and the associated engineering
framework to address privacy protection in cyber-
2.5. Trust in Cyber-Physical Systems physical systems. A combination of mechanisms
for auditing and regulating access to information,
Users of cyber-physical systems will need to for preserving privacy of individuals but exporting
place a high level of trust in the operation of the aggregate statistics, and legal procedures for
systems. Trust is a combination of a many enforcement of privacy protection would need to
characteristics, mainly reliability, safety, security, evolve to make cyber-physical systems acceptable
privacy and usability. to a large population.
System models and abstractions (described All systems become usable when complexity
earlier) have to incorporate fault models and that does not need to be exposed to users is kept
recovery policies that reflect the scale, lifetime, hidden, and when unavoidable complexity is
distributed control and replace/reparability of exposed to users according to cohesive, conceptual
components. Safety, as we have mentioned in brief models that maximizes system predictability,
in prior sections, requires attention in a larger supports users’ abilities to generalize about such
context as well. The ubiquitous use of CPS behavior, and minimizes corner cases. Usability
applications should not limit the availability of poses a variety of problems involving human
alternative systems – social and technological – cognition, computer-human interaction and
that can handle large-scale failures. We would interface design.
need to create guards that ensure that the
automation does not increase hazards when 3. Medical Device Network: An Example
compared to the non-automated system. The extra Cyber-Physical System
emphasis on safety is to highlight the need for
tools that provide support for visualizing and An example on how to design medical device
analyzing a cyber-physical within the broader network may provide us better understanding of
context of other social and cyber-physical systems. the aforementioned challenges. As noted in the
Two cyber-physical systems may never interact report of the NSF High-Confidence Medical
directly but may be coupled by human behavior, Device Software and Systems (HCMDSS)
and we need to understand the nature of such workshop [7]: “Advances in computing,
interactions and reason about safety as a global, networking, sensing, and medical-device
not local, property. technology are enabling the dramatic proliferation
of diagnostic and therapeutic devices. Those
An increased dependence on cyber-physical devices range from advanced imaging machines to
systems will lead to the collection of a vast amount minimally invasive surgical techniques, from
of human-centric data at various scales. Although camera-pills to doctor-on-a-chip, from
cyber-physical systems greatly enrich our life computerized insulin pumps to implantable heart
qualities and experiences, they also bring about devices. Although advances in standalone
privacy and security concerns [10]. For example, diagnostic and treatment systems have been
in applications such as assisted living [5] and accelerating steadily, the lack of proper
wireless medical device networks (Section 3), integration and interoperation of those systems
private personal data and medical data should be produces systemic inefficiencies in health care
7
delivery. This inflates costs and contributes to important to develop a standard-based, certifiable
avoidable medical errors that degrade patient care. wire and wireless networked medical devices
The use of software that controls medical devices infrastructure to lower the cost of development,
to overcome these problems is inevitable and will approval, and deployment of new
ensure safe advances in health care delivery. The technologies/devices. The development of
crucial issue, however, is the cost-effective technologies that can formally specify both the
development and production of reliable and safe application context and the device behaviors is a
medical-device software and systems.” major challenge for the vision of certifiable plug
and play medical devices in the future.
The next generation medical system is
envisioned as a ubiquitous system of wired and Second, most monitoring devices are being
wireless networked medical devices and medical moved from wired networks to wireless networks.
information systems for secured, reliable, privacy- How do we provide on-demand reliable real-time
preserving health care. It will be a networked streaming of critical medical information in a
system that improves the quality of life. For wireless network? This is another hard problem.
example, during a surgical operation, context For example, when an EKG device detects
information such as sensitivity to certain drugs will potentially dangerous and abnormal heartbeats, it
be automatically routed to relevant devices (such is of critical importance to ensure that not only the
as infusion pumps) to support personalized care warning but also the real-time EKG streams are
and safety management. A patient’s reactions – reliably displayed at nursing stations. Furthermore,
changes in vital signs – to medication and surgical reliable on demand real-time streaming must
procedures will be correlated with streams of coexist with other wireless devices. For example,
imaging data; streams will be selected and in an intensive care unit, we have 802.11 wireless
displayed, in the appropriate format and in real networks, cellular phones, wireless PDAs, RFID,
time, to medical personnel according to their needs, two-way radios and other RF emitting devices.
e.g., surgeons, nurses, anesthetists and This necessitates a network infrastructure to
anesthesiologists. During particularly difficult reliably integrate myriad wireless devices, to let
stages of a rare surgical operation, an expert them coexist safely, reliably and efficiently. To
surgeon can remotely carry out key steps using address these concerns, the FDA has issued an
remote displays and robot-assisted surgical official guideline for medical wireless network
machines, sparing the surgeon of the need to fly development [3].
across the country to perform, say, a fifteen-minute
procedure. Furthermore, data recording will be To design an integrated wired and wireless
integrated with storage management such that medical device network, we face all the
surgeons can review operations and key findings aforementioned QoS composition challenges. For
for longitudinal studies for the efficacy of drugs example, how does one monitor and enforce safe,
and operational procedures. secure, reliable and real time sharing of various
resources, in particular the wireless spectrum?
While networked medical devices hold many
How does one balance the resources dedicated to
promises, they also raise many challenges. First,
reliability, real-time performance and the need for
from operating rooms to enterprise systems,
coexistence? What is the programming paradigm
different devices and subnets have different levels
and system composition architecture to support
of clinical criticality. Data streams with different
safe and secured medical device plug and play [8]?
time sensitivities and criticality levels may share
many hardware and software infrastructure
resources. How to maintain safety in an integrated Acknowledgements. Most of the material
system is a major challenge that consists of many presented here originated from discussions,
research issues. Indeed, many medical devices are presentations, and working group documents from
safety critical and must be certified. Thus, it is NSF workshops on Real-time GENI and from
8
NSF workshops on Cyber-Physical Systems [1][2].
The authors thank all the workshop participants
for their insightful contributions.
References
9
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Policy
27], while enabling mechanisms are mainly relied on digi-
Usage
Control
Policies
MAC
Policies
tal rights management (DRM) approaches. However, DRM
mechanisms cannot support general attributes and trusted
enforcement in ubiquitous environments. Most importantly,
Figure 1. Distributed usage control. A DRM approaches cannot provide an overall solution for us-
trusted subsystem in client platform en- age control in open and general-purpose target platforms,
sures the enforcement of usage control since they usually rely on software-enabled payment-based
policies. enforcement in relatively closed environments, e.g., through
a media player by connecting to a dedicated license server.
As usage control is naturally distributed, another chal- Another intuitive solution is to use cryptography algorithm.
lenge to enforce usage control policies is the trustworthy For example, a stakeholder can encrypt a target object such
of the security enforcement mechanism. Typically, an ac- that it only can be decrypted on a target platform with a par-
cess control decision is made and enforced by a reference ticular application. Fundamentally, this has the same prob-
monitor, which has the requirements of being tamper-proof, lems as the DRM approach, since a typical DRM scheme re-
always-invoked, and small enough [5, 11] — which is rel- lies on encryption/decryption with a unique key shared be-
11
tween a client and content server [1, 2]. Particularly, cryp- out of the domain of a stakeholder such that high assur-
tography alone cannot protect the key during the runtime on ance of policy enforcement is desired. However, as usage
a target platform such as to build a trusted subsystem [20]. control is such pervasive that it can happen in open and
For example, malicious software can easily steal a secret by general-purpose platforms, a “usable security” mechanism
exploring some vulnerability of the protection system, ei- is strongly desired to satisfy also the cost-effective objec-
ther when the secret is loaded in some memory location, or tive. For example, leveraging a local host access control
when the secret is stored locally. mechanism to enforce usage control policy is very desirable
In this paper we make the first step towards a general if the mechanism can be trusted to do the “right” thing. That
framework for a trusted usage control enforcement in ubiq- is, the goal of pervasive usage control is not to provide a per-
uitous computing environments. We start with an analysis fect solution for security but just to be “good-enough” [26].
of the security requirements in the usage control problem. Requirement 2: Need a comprehensive policy model. Tra-
Within these high level requirements, we identify manda- ditional security systems distinguish policy and mech-
tory components to build a trusted subsystem in a general anism [17]. However, early policies such as Bell-
client platform for usage control policy enforcement. This LaPadula [7] and Biba [8] are too restrictive for convenient
subsystem needs a strong protected environment such that use within applications. They support simple policies such
security mechanisms in the client platform should respect as one-way information flow but provide insufficient and
its autonomy. Specifically, this trusted subsystem should inflexible support for general data and application integrity.
have the final and complete control over its resources (e.g., Typically, usage control considers many constraints or con-
an object downloaded from a remote stakeholder), and the ditional restrictions such as time and location as aforemen-
security mechanisms of the local platform cannot compro- tioned. Traditional policy models cannot support these and
mise or bypass this control. Also, information flow between usage control needs a comprehensive policy model to sup-
this subsystem and any others on the target platform has port the variants of such additional security requirements.
to be controlled, if allowed. For these purposes, we claim
that mandatory access control (MAC) is necessary. Fur- Requirement 3: Need MAC mechanism for trusted subsys-
thermore, to achieve the assurance of policy enforcement tem on a target platform. In discretionary access control
as aforementioned, the integrity of the subsystem has to be (DAC), a root-privileged subject has the capability to violate
verifiable by the policy stakeholder. Thus, mechanisms like the security configuration of the whole system such that the
integrity measurement, storage, and verification are needed subsystem can be compromised either by a malicious user
on such a target platform. or software (e.g., a virus or Trojan horse). As evidenced by
As one of the main contributions of this work, we con- many security attacks, a virus or worm can obtain the root
sider the integrity of a subsystem in access control mecha- permission of a system by exploring some vulnerabilities,
nisms. With this, not only traditional subject and object at- e.g., with buffer-over-flow attacks. Thus, mandatory access
tributes are considered in access control decisions, but also control (MAC) mechanism is needed. For example, with
the integrity of subjects and objects, and any other support- SELinux, one can label the applications and all resources of
ing components in a trusted subsystem. The overall goal of a subsystem with a particular domain and define policies to
our approach is to build a “virtually closed” and trusted sub- control the interactions between this domain and others for
system for remote usage control policy enforcement. Our isolation and information flow control purposes.
work presented in this paper can be regarded as the en- Requirement 4: Need a policy transformation mechanism
forcement model of usage control in PEI security frame- from high level usage control policies to concrete MAC poli-
work [27]. cies. Typically, a stakeholder’s policy is specified in differ-
The present paper is organized as follows. Section 2 ent formats and semantics from those of the MAC policies
presents the principles to build distributed usage control on a target platform. For example, a stakeholder can be
systems. We describe our general platform architecture to implemented as a Web Service, where a security policy is
build a trusted subsystem in Section 3. Our prototype sys- specified in XACML. This policy has to be transformed to a
tem is presented in Section 4. Related work is presented in concrete policy that is enforced on a target platform, which
Section 5. We eventually conclude this paper in Section 6. follows its local MAC model. Thus, an efficient and conve-
nient policy transformation mechanism is needed such that
2 System Design Principles security properties are preserved during a transformation,
i.e., the allowable permissions and information flows are the
In order to enforce usage control in a trustworthy man- same in the policies before and after a transformation.
ner, we have identified a set of general design principles. Requirement 5: Need security mechanism on operating sys-
Requirement 1: Need high assured but usable security tem (OS) level. There has been long discussion that appli-
mechanism. Typically in usage control, objects are located cation level security alone cannot provide high assurance of
12
a system. For example, many web service based security downloading, a stakeholder wants to verify that the request
protocols such as WS-Security [3] are built on credentials comes from an authentic subject on a target platform and the
(public key certificates) between service providers and con- subject does have the permission to obtain an object. After
sumers. However, credential management and private key downloading, the subject needs to verify the integrity and
protection are critical problems for general-purpose com- authenticity of an object and its policy. Secondly, during the
puting platforms. Without OS level security mechanism, runtime of processing a target object, a trusted subsystem
message-based security mechanisms cannot guarantee end- ensures that usage control policies are enforced implying
to-end security – integrity, confidentiality, and privacy can that only authorized processes and users can access the data,
be compromised on OS level by software-based attacks and interactions between running processes are controlled
(virus, spyware, worms, etc). such that correct information flows are preserved. Typi-
Requirement 6: Build trust chain for policy enforcement cally, authorized accesses from “known good” processes
from system boot to application execution. The high as- and users ensure the confidentiality and privacy of protected
surance of a subsystem in a remote computing platform objects, and information flow control ensures the integrity
should origin from a root-of-trust, and then is extended to of the data.
other system components upon which the policy enforce-
ment mechanism is built. Typically, a MAC mechanism is 3.1 Trusted Subsystem Architecture
implemented in the kernel of the OS on a platform. Thus,
a trusted subsystem should include a trusted kernel while Our trusted subsystem includes a root-of-trust, trust
any other components booted before the kernel, such as the chain, and a policy transformation and enforcement mech-
BIOS and the boot loader also need to be strictly trusted. anism, and also a runtime integrity measurement mecha-
To obtain the trust of the MAC mechanism in a subsystem, nism. Figure 2 shows our target platform architecture to en-
any other supporting components should also be trusted, force usage control policies. The hardware layer includes a
including policy transformation and management, subject Trusted Platform Module (TPM), a Core Root of Trust Mea-
and object attribute acquisition, and the reference monitor surement (CRTM), and other devices. The TPM and the
itself. The fundamental goal of this trust chain is to achieve CRTM provide the hardware-based root-of-trust. Similar to
a trusted runtime environment for object access where the trusted or authenticated boot [6, 12, 25], the booting compo-
integrity of all related parts can be verified by a stakeholder. nents of the platform, including BIOS, boot loader, and OS
Requirement 7: Build trusted subsystem with minimum kernel, are measured and their integrity values are stored in
trusted computing base. Related to the above requirement, particular Platform Configuration Registers (PCRs) of the
to build a practical and usable trusted subsystem, a min- TPM. Specifically, according to the TCG specification [28],
imum trusted computing base (TCB) is desired. A TCB the CRTM is the first component to run when the platform
includes all the components in the trust chain for policy en- boots. It measures the integrity of the BIOS before the
forcement during runtime. A larger number of components BIOS starts, which in turn, measures the boot loader and
in this chain results in higher costs both on system develop- hereafter the kernel and kernel modules, recursively. Along
ment and verification since each trusted component requires this booting and measurement sequence, particular PCR(s)
a detailed verification of the software implementation. are extended with the measured values, and the result is de-
noted as P CRboot . The TPM guarantees that P CRboot is
As policy model and formal specifications have been ex-
reset once the platform re-boots.
tensively studied in previous work, in this paper we focus on
the policy enforcement issue of usage control. We propose Upon a user’s request on the target platform, a client ap-
a general platform architecture by following these princi- plication (e.g., a healthcare client software) is invoked to
ples. We have developed a prototype with emerging trusted communicate with a data owner/provider to obtain an ob-
computing technologies including a hardware-based root- ject. At that same time, a policy can be downloaded by
of-trust. We leverage the MAC mechanism in SELinux for the client application from a stakeholder, which can be the
policy enforcement. Due to space limit we ignore the policy same as the data provider or different. For example, a data
transformation mechanism in this paper. provider can delegate its policy specifications to a security
service provider, which is the policy stakeholder when an
object is downloaded and processed on a client platform.
3 Platform Architecture When a usage control policy (e.g., an XACML policy
file) is downloaded from its stakeholder, it is transformed
A trusted subsystem is the foundation to enforce usage by the policy transformation service to a MAC policy such
control policies. We define two phases for this purpose. that they can be enforced by the reference monitor. The
First, a prerequisite for usage control is secure object and client application is the target process that can manipulate
policy download. This requirement is two-fold. Before the object and is to be protected by MAC policies. Also,
13
MAC policies should include rules to control accesses to the • The reference monitor is measured after the kernel is
object from other applications and any configurations for booted.
the client application and the overall security system (e.g.,
local security policy management). • The client application, object, and its configurations
are measured right before the client application is in-
voked.
Client Application
Policy
Transformation
• MAC policies are measured when they are loaded, ei-
Service ther, when the platform boots or during runtime (i.e.,
loaded by the policy transformation service).
Integrity
Verification Sensor
Service • Any other applications or services that need to com-
municate or collaborate with the client application are
Integrity
Reference
measured before they are invoked.
Measurement MAC
Monitor
Service Policies
In general, in order to only allow accesses to target ob-
Kernel
jects from authorized applications, and control information
flow between this applications and others, IMS should mea-
CRTM TPM Device Device
Hardware sure not only the policy enforcement services such as policy
transformation and platform sensor, but also all other appli-
Figure 2. Platform architecture for usage con- cations that are allowed to interact with the sensitive client
trol policy enforcement. applications running on the same platform.
As part of the policy enforcement, the integrity verifi-
As aforementioned, usage control policies typically in- cation service (IVS) verifies corresponding integrity val-
clude environmental authorization factors such as time and ues measured by the IMS and generates inputs to the ref-
location. A sensor is the component that reports these en- erence monitor. As a typical example, the client applica-
vironmental information and thus can be considered by the tion can only access the target object when its “current” in-
reference monitor. For example, in a mobile application tegrity corresponds a known good value, where the current
where a service can only be accessed in a particular loca- integrity is the one measured by the IMS.
tion, the sensor reports the physical (e.g., through a cellular Note that although we use data objects (e.g., files)
network provider or GPS) or logical (e.g., through a Wi-Fi through this paper, our usage control mechanism is applica-
access point) location of the device, such as home, office, ble to other types of objects such as messages and streams.
airport, etc. The essential requirement for the object is that its authen-
In the kernel level of the platform, the reference moni- ticity and integrity can be verified after downloaded, such
tor captures an access attempt to the object and queries the that, as an input for the application on a client platform, the
MAC policies before allows the access. A fundamental re- initial state of the platform can be trusted.
quirement for the reference monitor is that it has to capture
all kinds of access attempts, from the storage space of the 3.2 Secure Object and Policy Download
local file system to the memory space of the object. Also,
the reference monitor controls the interactions between the Before any access, the target platform obtains the ob-
client application and others, locally and remotely, and es- ject and the XACML policy file from the policy stakeholder
pecially according to the loaded MAC policies. through authentication and attestation protocols. Without
The integrity measurement service (IMS) is a manda- loss of generality, we assume that the access request is gen-
tory component in a trusted subsystem, which starts right erated by the client application from the target platform (cf.
after the kernel is booted. The main function of the IMS Figure 2). Policies can be defined in the target platform to
is to measure other runtime components which consist of confine that only the dedicated client application (e.g., the
the TCB to enforce usage control policies. All measured healthcare client software or a mobile service agent) can
events and the integrity values are stored in a measurement generate an access request to the stakeholder.
list and the corresponding PCRs are extended accordingly. Upon receiving the request, the stakeholder generates an
Particularly: attestation challenge to the target platform. An attestation
14
agent on the target platform collects a set of integrity val- checked by the reference monitor based upon the au-
ues measured by the IMS, signs them with an attestation thentication of the user to the system, for example, the
identity key (AIK) of the TPM, and sends them back to the role and necessary credentials of the user. When the
stakeholder. The integrity included in this response consists client application is invoked by the user, it is measured
of P CRboot and all mandatory components for the runtime by IMS before loaded to memory.
policy enforcement, including the reference monitor, policy
transformation service, IVS, sensor, and system configura- • During runtime, if the client application generates ac-
tions. After positively verifying these integrity values, the cess requests to the target object, the measured in-
stakeholder decides that the data can be released, and the tegrity of the application is evaluated and verified by
corresponding usage control policy can be generated. The the IVS and the result is considered by the reference
integrity of the policy to confine which application can gen- monitor.
erate access request to the stakeholder can also be measured
and attested. • The sensor service monitors the environmental infor-
Note that although we assume each object is associated mation of the computing device (e.g., location) and
with a usage control policy logically, a policy can also be provides these also to the reference monitor for pol-
associated with an application or the type of objects or ser- icy evaluation when an access happens on the platform
vices. For example, the healthcare application aforemen- with regarding to the policies. Whenever there is a
tioned can use the same policy for all patient records of a change of any information specified in the policies, the
particular type of diseases. new information is reported by the sensor service thus
invokes the re-evaluating of the ongoing access.
3.3 Runtime Policy Enforcement
With these mandatory components, we show that a general
usage control policy can be enforced on a target platform
When a usage control policy is received, it is transformed
with verifiable trustworthiness.
to local MAC policies on a local platform. The policies
specify the following factors for secure information pro-
cessing during runtime. Firstly, the MAC policies should 4 Implementation and Evaluation
confine the users that can initialize applications to access
certain target objects. For example, a patient’s healthcare 4.1 Conditional SELinux Policy
information only can be manipulated by a registered nurse,
which is represented by a digital credential. Secondly, MAC
As aforementioned, we have developed a policy trans-
policies should also specify the integrity of the client plat-
formation mechanism to transfer high level policies, spec-
form and the target application which allow an object ac-
ified by a stakeholder in XACML format, to low level
cess. The integrity information, typically, provides the as-
policies specified by the MAC policy model inside the
surance that the object is correctly processed, and there is
target platform. In our project, we use SELinux as
no illegal information leakage. Thirdly but not lastly, MAC
our reference monitor, and usage control policies are re-
policies should consider the environmental restrictions by
alized via the conditional policies of SELinux. Fig-
which an object can be accessed, e.g., the location of a mo-
ure 3 shows an example policy for a medical applica-
bile platform to access a service.
tion. The policy is formed as an SELinux loadable
We now explain how these factors are considered in our
policy module, where types and allow rules are de-
trusted subsystem during runtime. With a TPM-enabled
fined within this module. The permission statement of
platform, all booting components are measured and their
medicalApplication t is made conditional on the
respective integrities are stored in the TPM, including the
basis of application integrity and platform location. The
IMS in the kernel. When the kernel boots, the integrity
boolean variable integrity and accessLocation
of our reference monitor and other user space services are
correspond to those in the constrain expression. The
measured. Consider that an object and its usage control
overall semantics of this policy module is that, if predi-
policy has been downloaded by a client platform and their
cate (integrity && accessLocation) is true, the
integrity have been verified after downloading. The usage
permissions are allowed by SELinux; otherwise, only
control policy is then transformed to a set of MAC policy
getattr is allowed, e.g., the file can be listed in the di-
rules that can be enforced by the reference monitor. These
rectory but cannot be opened.
MAC rules specify all the security requirements including
Note that the policy in Figure 3 shows only a simple
user, integrity, and environmental restrictions.
example of how to integrating integrity information with
• When a user logins or attempts to access the object by read file permission in SELinux. Other permissions, such
invoking the client application, the user attributes are as the executing of the medical application or its writing to
15
the object during runtime, or the integrity of other compo- policies are changed. For example, in SELinux, file access
nents in the platform, can be integrated with similar mech- permission is checked on every read and write to a file, even
anism. Typically, the usage control policy defined by its when the file has been already opened. With this, if the se-
stakeholder determines these configurations in SELinux. curity context of the file or the accessing subject changes,
the access is revoked on the next read or write attempt 2 .
With this feature, many flexible and dynamic security re-
quirements can be supported, such as runtime integrity ver-
ification and location-based authorizations.
16
in the measured kernel list designates that the file is com- and Sandhu [21]. However, it is basically a centralized ap-
promised. Based on the measurement list integrity ver- proach and there is no concrete implementation mechanism
ification, this daemon transits the corresponding boolean existing for it yet.
variables accordingly. For example, in our scenario, the Attestation-based remote access control [24] is proposed
IVS sets the usr share medicalPolicyIntegrity based upon the IBM integrity measurement architecture
to false if the /usr/share/medicalPolicy has more (IMA). Similar to usage control, an enterprise server de-
than one entry in the kernel list. ploys security policies on a client platform which are en-
Similarly, the sensor daemon monitors the location of the forced based on the integrity status of the client platform.
device, e.g., through the IP address or Wi-Fi access point of However, there are significant differences between this and
the device. If the device location changes, the daemon re- our work. First, the objective of attestation-based remote
evaluates the location and based on a set of locations, sets access control is to filter the traffic origins from a client to
the corresponding SELinux boolean variable. a server while target objects (i.e., enterprise resources) are
still located on centralized server. In usage control, the fun-
4.3 Evaluation damental goal is to enable continuous control after an object
is distributed. Second, based on the limitation of IMA, the
policy enforcement in this work needs to verify all com-
Our implementation leverages IMA for integrity mea- ponents loaded in a platform after booting, such that it is
surement. Therefore, on the kernel level, our system has the not practical to deploy it in very open and heterogeneous
similar performance as IMA [25]. Our experiments show environments [23, 16]. Most importantly, our approach
that it takes 5765μs to measure a medical record file and ex- integrates IMA with SELinux with an augmented policy
tend the PCR with the corresponding measurements. Like model. Moreover, we leverage the loadable policy mod-
in IMA, this overhead is due to opening the configuration ule of SELinux so that we can build a relatively “closed”
file, writing the measurement request and closing the con- trusted subsystem by defining SELinux policies according
figuration file. Further, the size of the files in our healthcare to usage control requirements on remote platforms.
scenario is small, therefore, fingerprinting the files does not
poses significant performance concerns for our implemen-
tation. We have taken these results on a desktop with 2.4
6 Conclusions and Future Work
GHz processor and 1 GB of RAM.
Usage control focuses on the problem of enforcing se-
On the user space, our system includes the extra integrity
curity policies on a remote client platform with high as-
verification step to consider integrity in access control de-
surance and verifiable trust. In this paper we present gen-
cisions. We measure the time to make an integrity verifi-
eral security requirements for usage control and propose a
cation and set the value for the boolean variable inside the
general framework for this problem. The main idea of our
SELinux filesystem, and the time to evaluate a single ac-
approach is to build a trusted subsystem on an open plat-
cess control decision with SELinux, respectively. The data
form such that a policy stakeholder can deploy sensitive
shows that it takes 95μs overall for integrity verification,
data and services on this subsystem. We propose an archi-
transiting the corresponding SELinux boolean variables and
tecture with a hardware-based TPM as the root-of-trust and
accessing the protected file. Whereas, without integrity ver-
consider integrity measurement/verification and other envi-
ification, it is just 88μs on average. This shows that the dif-
ronmental restrictions in our MAC policy model. We have
ference is not so much from the performance point of view.
also implemented a real prototype system by integrating in-
Note that the overhead of integrity verification is indepen-
tegrity measurement and SELinux. By leveraging the latest
dent from the measured file size by IMS.
SELinux conditional policies and loadable policy modules,
our approach enables verifiable assurance to build a rela-
5 Related Work tively “closed” trusted subsystem for usage control.
17
[4] M. Abadi, M. Burrows, and B. Lampson. A calcu- [16] T. Jaeger, R. Sailer, and U. Shankar. PRIMA: Policy-
lus for access control in distributed systems. ACM reduced integrity measurement architecture. In Pro-
Transactions on Programming Languages and Sys- ceedings of the 11th ACM Symposium on Access Con-
tems, 15(4):706–734, 1993. trol Models and Technologies, pages 19–28, June
2006.
[5] J. P. Anderson. Computer security technology
planning study volume II, ESD-TR-73-51, vol. [17] B. Lampson. Computer security in the real world.
II, electronic systems division, air force systems IEEE Computer, (6):37–46, June 2004.
command, hanscom field, bedford, MA 01730. [18] B.W. Lampson. Protection. In 5th Princeton Sympo-
http://csrc.nist.gov/publications/history/ande72.pdf, sium on Information Science and Systems, pages 437–
Oct. 1972. 443, 1971. Reprinted in ACM Operating Systems Re-
view 8(1):18–24, 1974.
[6] W. A. Arbaugh, D. J. Farber, and J. M. Smith. A se-
cure and reliable bootstrap architecture. In Proc. of [19] N. Li, J. C. Mitchell, and W. H. Winsborough. Design
IEEE Conference on Security and Privacy, pages 65– of a role-based trust-management framework. In Proc.
71, 1997. of IEEE Symposium on Security and Privacy, pages
114–130, 2002.
[7] D. E. Bell and L. J. LaPadula. Secure computer sys-
tems: Mathematical foundations and model. Mitre [20] P. Loscocco, S. Smalley, P. Muckelbauer, R. Taylor,
Corp. Report No.M74-244, Bedford, Mass., 1975. J. Turner, and J. Farrell. The inevitability of failure:
The flawed assumption of computer security in mod-
[8] K. J. Biba. Integrity consideration for secure com- ern computing environments. In Proceedings of the
puter system. Technical report, Mitre Corp. Report National Information Systems Security Conference,
TR-3153, Bedford, Mass., 1977. October 1998.
[9] Matt Blaze, Joan Feigenbaum, and Jack Lacy. Decen- [21] J. Park and R. Sandhu. The UCONabc usage control
tralized trust management. In Proceedings of IEEE model. ACM Transactions on Information and Sys-
Symposium on Security and Privacy, pages 164–173, tems Security, 7(1):128–174, February 2004.
Oakland, CA, May 1996. [22] A. Pretschner, M. Hilty, and D. Basin. Distributed us-
age control. Communications of the ACM, (9):39–44,
[10] D. E. Denning. A lattice model of secure information 2006.
flow. Communications of the ACM, 19(5), May 1976.
[23] J. F. Reid and W. J. Caelli. Drm, trusted computing
[11] Department of Defense National Computer Security and operating system architecture. In Australasian In-
Center. Department of Defense Trusted Computer formation Security Workshop, 2005.
Systems Evaluation Criteria, December 1985. DoD
[24] R. Sailer, T. Jaeger, X. Zhang, and L. van Doorn.
5200.28-STD.
Attestation-based policy enforcement for remote ac-
[12] J. Dyer, M. Lindemann, R. Perez, R. Sailer, L. van cess. In Proceedings of ACM Conference on Computer
Doorn, S. W. Smith, and S. Weingart. Building the ibm and Communication Security, 2004.
4758 secure coprocessor. IEEE Computer, (10):57– [25] R. Sailer, X. Zhang, T. Jaeger, and L. van Doorn.
66, 2001. Design and implementation of a TCG-based integrity
measurement architecture. In USENIX Security Sym-
[13] M. H. Harrison, W. L. Ruzzo, and J. D. Ullman. Pro-
posium, pages 223–238, 2004.
tection in operating systems. Communication of ACM,
19(8), 1976. [26] R. Sandhu. Good-enough security: Toward a prag-
matic business-driven discipline. IEEE Internet Com-
[14] A. Herzberg, Y. Mass, J. Mihaeli, D. Naor, and puting, (1):66–68, 2003.
Y. Ravid. Access control meets public key infras-
tructure, or: assigning roles to strangers. In Proc. of [27] R. Sandhu, K. Ranganathan, and X. Zhang. Secure
IEEE Symposium on Security and Privacy, pages 2– information sharing enabled by trusted computing and
14, 2000. PEI models. In Proc. of ACM Symposium on Informa-
tion, Computer, and Communication Security, 2006.
[15] M. Hilty, D. Basin, and A. Pretschner. On obligations. [28] TCG TPM. Main part 1 design principles specification
In Proc. of 10th European Symp. on Research in Com- version 1.2, https://www.trustedcomputinggroup.org.
puter Security, September 2005.
18
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract
This talk will give an overview of the 5-year National Basic Research Program of China (also
known as the 973 Program) on Wireless Sensor Networks that was launched in September 2006
and sponsored by the Ministry of Science and Technology. This national research project
involves researchers from many major universities in China and Hong Kong, and aims to tackle
fundamental research issues rising in three major application domains: coal mine surveillance,
water pollution monitoring, and traffic monitoring and control. The distinctive feature of this
project is that it will present a systematic study of wireless sensor networks, from node platform
development, core protocol design and system solution development to critical problems. This
talk will address the research challenges, current progress, and future plans.
Biography
Lionel M. Ni is Chair Professor and Head of the Computer Science and Engineering Department
at the Hong Kong University of Science and Technology. He also serves as Chief Scientist of the
National Basic Research Program of China (973 Program), Director of HKUST China Ministry
of Education/Microsoft Research Asia IT Key Lab, and Director of HKUST Digital Life
Research Center. Among his many honorary and adjunct positions, he is an honorary President
of the South China Institute of Software Engineering at Guangzhou University, China, a
Distinguished Professor of Shanghai Jiao Tong University, and an honorary Chair Professor of
National Tsinghua University (Hsinchu). Dr. Ni earned his Ph.D. degree in Electrical and
Computer Engineering at Purdue University in 1980. A fellow of IEEE, Dr. Ni has chaired many
professional conferences and served on the editorial board of many journals. He has directly
supervised 34 Ph.D. students, won five best paper awards, and the 1994 Michigan State
University Distinguished Faculty Award. He is a co-author of three books: "Interconnection
Networks: An Engineering Approach" (Morgan Kaufmann 2002), “Smart Phone and Next
Generation Mobile Computing” (Morgan Kaufmann 2006), and “Professional Smartphone
Programming” (Wrox 2007).
21
Our solution is to employ the novel detached binary count- declaration slots. As shown in Fig. 1, the slots for transmitters
down technique, where the binary countdown competition is ap- and receivers are interwoven for the entire competition round.
plied before its associated data packet transmission/reception A transmitter slot and a receiver slot corresponding to the same
with a lead time. Different traffic categories have different bit/digit (for either prohibition or declaration) must be next to
ranges for their lead times, and higher-priority traffic categories each other, but its order can be interchanged throughout a com-
use larger lead times. Convention wisdom is that such lead times petition round. However, the order must be known and followed
or gap will lead to higher delay, thus should be kept smaller for by all DPMA devices. As an example, transmitters can have
higher-priority packets. However, when traffic is not light, the earlier slots for bits/digits at odd positions, but later slots for
delay in a wireless network is mainly contributed by the queue- bits/digits at even positions.
ing delays (i.e., the times wasted waiting in buffers). Thus, we
look at this problem from a different angle to be explained as During the prohibition stage, transmitters are prohibited
follows. For two packets to be transmitted at the same time, by nearby receivers with higher competition numbers (CNs)
if we allow larger lead time for the binary countdown compe- through their prohibition signals; while receivers are prohibited
tition of one of them, that packet will have the privilege to re- by transmitters with higher CNs through their prohibition sig-
serve the channel earlier. So contrary to intuition, this policy nals. Note that for transmitters, the thresholds for being pro-
can effectively prioritize between different traffic categories. As hibited are determined by their transmission power levels; while
can be shown through a mathematical proof rigorously, abso- for receivers, the thresholds for being prohibited are determined
lute differentiation can be achieved by the proposed technique by their tolerance to the interference levels. Note also that the
when the ranges for gaps differ by at least the maximum data safe margin (as a component of the threshold) can change from
packet length for different traffic categories. This is of signif- slot to slot to improve the performance. Since transmitters do
icant theoretical importance and is the first of its kind for dis- not prohibit other intended transmitters and receivers do not
tributed medium access with variable packet length. prohibit other intended receivers, the exposed terminal problem
does not exist in DPMA. Moreover, different from CSMA where
C. Shrinking Contention Windows for Idleness Reduction on-going transmissions block nearby intended transmitters from
Finally, IEEE 802.11 employs backoff to resolve collisions transmitter to transmitter, on-going receptions in DPMA block
and maintain system stability. These issues are of practical im- nearby intended transmitters from receiver to transmitter di-
portance so that such a backoff mechanism cannot be removed. rectly, and on-going transmissions discourage nearby intended
However, it considerably increases the idle time for the wire- receivers from transmitter to receiver directly. As a result, ob-
less channel, leading to inefficiency for the utilization of the structions or hidden terminals (for CSMA systems) will not
scarce wireless resources, in addition to unpredictable delays. cause collisions in DPMA as in CSMA.
Our proposed binary countdown solution can eliminate concur-
rent competitors and thus can naturally replace the functionality For a node to determine whether its partner is surviving,
of the backoff mechanism, or at least reduce the required con- a transmitter checks whether a prohibition signal correspond-
tention window (CW) sizes for backoff without compromising ing to the same bit/digit value (with reasonable power level)
system stability or collision rates. This can considerably reduce exists in receiver prohibition slots, and similarly, a receiver
channel idle times and thus leading to higher channel utilization also sense prohibition signals in transmitter prohibition slots
and throughput. to make the judgment. If a node finds that the partner in its
In the following sections, we present a detailed implementa- transmitter/receiver-pair has failed the competition, it will with-
tion of the proposed solutions, to be referred to as dual binary draw from competition immediately. Similarly, if a node cannot
countdown multiple access, and then evaluate its performance sense any signals in the declaration slot that may be sent by its
and compare it to CSMA/CA. partner, it also withdraws from the competition.
22
wise, it loses the competition. If a node survives all k bit-slots,
it becomes a candidate for transmission or reception. It then an-
Contention Round
nounces that it wins the competition by transmitting prohibiting
signals in the declaration slot. If a node detects the signals sent
by its partner, it will transmit or receive accordingly; otherwise,
Control Channel
it loses the competition.
23
erably greater than 1), and then the first or first few prohibition receiver pair. Note that for transmitters, the thresholds for being
slot-pairs will effectively eliminate most of the remaining com- prohibited are determined by their transmission power levels;
petitors to prevent collision. This way the additive prohibiting while for receivers, the thresholds for being prohibited are deter-
signal strength problem can be resolved without noticeable idle mined by their tolerance to the interference levels. Since trans-
times for the ratio channel. mitters do not prohibit other intended transmitters and receivers
As a comparison, when backoff control is the only or main do not prohibit other intended receivers, the exposed terminal
mechanism to avoid collisions (that would be frequently caused problem does not exist in DDBC. Moreover, different from
by concurrent attempts otherwise), the radio channel may stay CSMA where on-going transmissions block nearby intended
idle for a non-negligible portion of time so that radio resources transmitters from transmitter to transmitter, on-going recep-
are not efficiently utilized. Thus, backoff control combined with tions in DDBC block nearby intended transmitters from receiver
position-based dual prohibition as in DPMA can considerably to transmitter directly, and on-going transmissions discourage
increase the radio efficiency. nearby intended receivers from transmitter to receiver directly.
As a result, obstructions or hidden terminals (for CSMA sys-
IV. D ETACHED D UAL B INARY C OUNTDOWN (DDBC) tems) will not cause collisions in DDBC as in CSMA. Thus, the
In DDBC, the transmit and receiver in a pair both participate hidden terminal problem can be resolved in DDBC without rely-
in binary countdown competition. They are allowed to compete ing on hidden terminal detection mechanism or complex group
before they actually transmit or receive their data packets, and competition or other operations as in previous MACP protocols.
the lead time is upper-bounded by RLTT C for traffic class TC. For a node to determine whether its partner is surviving,
To achieve absolute differentiation capability, RLTi has to be a transmitter checks whether a prohibition signal correspond-
greater than RLTi+1 by at least a maximum data packet length, ing to the same bit/digit value (with reasonable power level)
where traffic class i has higher priority than traffic class i + 1 exists in receiver prohibition slots, and similarly, a receiver
by one level. The duration for a data packet is typically larger also sense prohibition signals in transmitter prohibition slots
than that for a binary competition round. If a pair lose their to make the judgment. If a node finds that the partner in its
competition, then can continue to compete in a following round transmitter/receiver-pair has failed the competition, it will with-
until success. Note that the number of contending pairs can nat- draw from competition immediately. Similarly, if a node cannot
urally be eliminated to one (for one collision domain) during bi- sense any signals in the declaration slot that may be sent by its
nary countdown, thus the backoff mechanism as in IEEE 802.11 partner, it also withdraws from the competition. If signals are
is not required. However, for lower-priority traffic categories, detected in the declaration slots, it implies that certain nearby
backoff with contention windows smaller than those defined in nodes were successful in the current competition round. If the
IEEE 802.11 may still be employed to reduce the number of con- received power levels are sufficiently high to prohibit the trans-
tending pairs so as to lower the accumulated prohibiting signal mission or reception of a competing node, the node will wait
strength. for a default or specified packet duration minus the length of
The winner pair will announce their success in declaration a competition round, before it become eligible to enter a new
slots following the binary countdown competition round. In competition again. In what follows, we present a simple exam-
these slots, the starting time for the reserved transmission or re- ple for implementing the dual binary countdown mechanism in
ception is indicated by transmitting a prohibiting signal in cor- DDBC.
responding slots. For example, a simple implementation is to To simplify the description, we consider a synchronized dual-
use the first slot to indicate transmission/reception time 8 units channel DDBC. In this simple version, all competing nodes are
later, and the second slot to indicate transmission/reception time synchronized and start competition at the same time. The pro-
7 units later, and so on. hibiting signals are transmitted in a narrow PHY channel dedi-
In DDBC, transmitters and receivers conducting their binary cated for control, while data packets are transmitted in a separate
countdown by sending their prohibiting signals in different but PHY channel. Each intended transmitter/receiver-pair coordi-
adjacent prohibition slots, in a separate control channel. Fol- nates in advance to decide the round(s) of competition to partic-
lowing the prohibition stage are declaration slots. As shown in ipate in, and the competition number (CN) to use. Such coordi-
Fig. 1, the slots for transmitters and receivers are interwoven for nation mechanisms are not difficult to design and are omitted in
the entire competition round. A transmitter slot and a receiver this paper.
slot corresponding to the same bit/digit (for either prohibition or A competing transmitter senses the status of all receiver slots,
declaration) must be next to each other. for but does not sense any transmitter slots; while a competing re-
During the prohibition stage, transmitters are prohibited ceiver senses the status of all transmitter slots, but does not sense
by nearby receivers with higher competition numbers (CNs) any receiver slots. In bit-slot i, i = 1, 2, 3, 4, ..., k of the com-
through their prohibition signals; while receivers are prohibited petition, only nodes that survive all the first i − 1 bit-slots par-
by transmitters with higher CNs through their prohibition sig- ticipate in the competition. Such a surviving node whose ith bit
nals, where a CN is a binary number shared by a transmitter- of its CN is 1 transmits a prohibiting signal in the appropriate
24
Average Throughput
240
Table 1. Summary for parameter values in the simulation model. 200
Througput (packet/sec)
160
Parameter Nominal Value
120
Simulation area 30 *30 grid units
80 ID 2-3-4
Maximum data transmission range 10 grid units ID 2-4-8
Number of nodes 90 40 ID 2-5-10
CSMA/CA
Data packet size 2K bytes 0
Channel bandwidth(Data/Control) 54Mbps/1Mbps 0 180 360 540 720 900
Delay (sec)
0.006
and remains in the competition. A surviving transmitter whose
ith bit is 1 senses whether there is any prohibiting signal during 0.004
receiver bit-slot i that may be sent by its receiver. If so, it sur- CSMA/CA
ID 2-5-10
0.002
vives the competition and remains in the competition; otherwise, ID 2-4-8
ID 2-3-4
it loses the competition. Similarly, a surviving receiver whose 0
ith bit is 0 keeps silent and senses whether there is any prohibit- 0 40 80 120 160
ing signal during transmitter bit-slot i that has power above its Arrival Rate (packet/sec)
threshold. If so, it loses the competition; otherwise, it survives
and remains in the competition. A surviving receiver whose ith
bit is 1 senses whether there is any prohibiting signal during Fig. 4. Comparisons of delay for CSMA/CA and DPMA with different CN
lengths.
transmitter bit-slot i that may be sent by its transmitter. If so, it
survives the competition and remains in the competition; other-
a data packet arrival rate. There are four separate queues for
wise, it loses the competition. If a node survives all k bit-slots,
different traffic classes at each wireless station. In the simulation
it becomes a winner eligible for transmission or reception.
we assume the arrival rates for all traffic class are the same. The
aggregated arrival rate is the sum of the arrival rates of the four
V. P ERFORMANCE E VALUATION
queues for all wireless stations in the network.
In this section we compare the performance of DPMA based In Figs. 3 and 4, we compare CSMA/CA with DPMA with
on DBC with CSMA/CA by changing various system and pro- different lengths for the competition numbers (CNs). “ID 2-3-4”
tocol parameter values. denotes 2 bits for the priority number part, 3 bits for the random
In the simulation model, we assume that each node has the number part, and 4 bits for the ID part. The prohibition slot
same maximum transmission power. And all the nodes are ran- duration is equal to 0.1 µs. We change the number of bits for
domly distributed within a 30 × 30 grid. The total number of each part to compare the performance among DPMA protocols
nodes is 90. The data channel bandwidth is set to 54 Mbps for and CSMA/CA.
both CSMA/CA and DPMA. And also, data packets have fixed Figures 5 and 6 compare DPMA with different ID lengths
length of 2K Bytes. When the signal noise ratio (SNR) is lower to optimize its parameters. The numbers of bits for CNs with
than 4, a reception is collided. Signals transmitted by all wire- lengths 7, 8, 11, 14, 17, and 20 are (2,2,3), (2,2,4), (2,3,6),
less stations in the network are taken into account when calcu- (2,4,8), (2,5,10), and (2,6,12) for the (priority, random, ID
lating SNR. In Table 1, we summarize the parameter values used parts). The 14-bit ID results in better performance relative to
in the simulation model. other options. We can see that CSMA/CA can achieve higher
We assume that the wireless stations are stationary throughout throughput than DPMA if the later do not choose its CN length
the simulation. Each wireless station is a Poisson source with properly.
25
Max. Throughput vs. ID Length Average Throughput For Different Priority Packets
150 120
Throughput (packet/sec)
Average Throughput
100
120 PRI-4
(packet/sec)
80
PRI-3
90 60 PRI-2
60 40 CSMA/CA
20 PRI-1
30
0
0 0 180 360 540 720 900
A
7
11
14
17
20
Arrival Rate (packet/sec)
C
A/
M
ID Length (bits)
CS Fig. 7. Throughput differentiation in DDBC.
Delay (sec)
0.47 PRI-1
0.006
Delay (sec)
0.44 PRI-2
0.004 PRI-3
0.41
0.002 PRI-4
0.38
0
0.35 0 50 100 150 200 250 300
A
7
11
14
17
20
ID Length (bits)
CS
more. We can see that when the prohibition slot duration is not
Figures 7 and 8 evaluate the differentiation capability of
negligible, the advantage of DPMA will be reduced when the
DPMA with four priority classes, where priority 4 has the high-
CN length is large.
est priority. The length of prohibition signal is equal to 0.1 µs.
The CN used is (2,3,4) – 2 bits for priority, 3 bits for random In Figs. 11 and 12, we further consider even larger prohibi-
numbers, 4 bits for station IDs. We assume no differentiation tion slot durations, and find that the performance of DPMA may
capability in the CSMA/CA protocol as in DCF. degrade to a degree worst than CSMA/CA when the prohibition
slot duration is 2.5 µs.
From Fig. 7, we find that the system throughput is similar for
the four priorities when the traffic load is low. When the traffic
load becomes higher, we can see that the throughput of lower VI. C ONCLUSIONS
priority packets begin to decrease, while the throughput of the
highest priority packets still continue to increase without being In this paper, we proposed detached dual binary countdown
affected. Figure 8 shows that all the four priority packets have (DDBC) for multihop wireless networks. DDBC does not re-
similar average delay as the traffic load is low. When the traf- quire RTS/CTS or other control messages, and thus do not suffer
fic load gets higher, the highest priority packets remain a very from the collision problems of RTS/CTS messages as in IEEE
small average delay while the average delays of lower priority 802.11 and MACAW [1]. DDBC can resolve the hidden and
packets increase quickly. These results demonstrate the strong exposed terminal problems without relying on busytone (which
differentiation capability of DPMA. suffers from “self interference problem” [12]) or complex mech-
In the following figures, we compare CSMA/CA with DPMA anisms. The significance of DDBC is that it is the very first so-
with different system or protocol parameter values. In Figs. 9 lution reported the literature thus far that can achieve absolute
and 10, we compare CSMA/CA with DPMA protocols that use differentiation in distributed multihop wireless networks with
different CN lengths. We use larger prohibition slot duration variable packet lengths. It also leads to freedom from collision
1µs when the length of CN will impact the network performance when the competition numbers (CNs) used are locally unique.
26
DPMA with Different BCN vs. CSMA/CA DPMA with Different Unit Slot Length
vs. CSMA/CA - Throughput
- Throughput
140 120
Throughput (packet/sec)
Throughput (packet/sec)
120
DPMA 2-4-8 90 DPMA SL=1
100
80 DPMA 2-5-10 DPMA SL=1.5
60
60 DPMA 2-2-3 CSMA/CA
40 CSMA/CA DPMA SL=2.5
30
20
0
0
0 100 200 300 400 500
0 60 120 180 240 300
Arrival Rate (packet/sec)
Arrival Rate (packet/sec)
Fig. 9. Comparisons of throughput for CSMA/CA and DPMA with different Fig. 11. Comparisons of throughput for CSMA/CA and DPMA with different
CN lengths. prohibition slot durations.
DPM A with Different BCN vs. CSMA/CA DPMA with Different Unit Slot Length
- Average Delay vs. CSMA/CA - Ave rage Delay
10 10
8
8
Delay (msec)
Delay (msec)
CSMA/CA
6
DPMA 2-5-10 6
4 DPMA 2-4-8 DPMA SL=1
DPMA 2-2-3 4 DPMA SL=1.5
2
CSMA/CA
2
0 DPMA SL=2.5
0 25 50 75 100
0
Averal Rate (packets/sec) 0 25 50 75 100
Fig. 10. Comparisons of delay for CSMA/CA and DPMA with different CN Fig. 12. Comparisons of delay for CSMA/CA and DPMA with different prohi-
lengths. bition slot durations.
R EFERENCES access control protocol for synchronized wireless networks,” Mobile Net-
works and Applications, Springer Science and Business Media B.V., Vol.
[1] Bharghavan, V., A. Demers, S. Shenker, and L. Zhang, “MACAW: A me- 10, No. 5, Oct. 2005, pp. 627 - 637.
dia access protocol for wireless LAN’s,” Proc. of ACM SIGCOMM’94, [10] Yeh, C.-H., “A collision-controlled MAC protocol for mobile ad hoc net-
1994, pp. 212-225. works and multihop wireless LANs,” Proc. IEEE Globecom’04, Dec.
[2] Haas, Z.J. and J. Deng, “Dual busy tone multiple access (DBTMA)- 2004.
performance evaluation,” Proc. IEEE Vehicular Technology Conf., 1999, [11] Yeh, C.-H , “RPMA: receiver prohibition multiple access for collision-
pp. 314-319. controlled wireless mesh networks and mobile ad hoc networks,” Proc.
[3] ISO/IEC 8802-11: 1999(E) ANSI/IEEE Std 802.11, Part 11: Wireless IEEE Globecom’06, Nov./Dec., 2006.
LAN Medium Access Control (MAC) and Physical Layer (PHY) specifica- [12] Yeh, C.-H., “New busytone solutions to medium access control in wireless
tions, 1 edition, 1999. mesh, ad hoc, and sensor networks” Proc. IEEE ICC’07, May, 2006.
[4] IEEE 802.11 WG, Draft Supplement to STANDARD FOR Telecommunica- [13] You, T., C.-H. Yeh, and H. Hassanein, “CSMA/IC: A new class of
tions and Information Exchange Between Systems LAN/MAN Specific Re- collision-free MAC protocols for ad hoc wireless networks,” Proc. IEEE
quirements – Part 11: Wireless Access Control (MAC) and Physical Layer Int’l Symp. Computer Communications, Jun./Jul. 2003, pp. 843-848.
(PHY) specifications: Medium Access Control (MAC) Enhancements for
Quality of Service (QoS), IEEE 802.11e/D8.0, 2004.
[5] IEEE P802.11s/D1.10, Draft STANDARD for Information Technology-
Telecommunications and information exchange between systems- Local
and metropolitan area networks- Specific requirements- Part 11: Wireless
LAN Medium Access Control (MAC) and Physical Layer (PHY) specifi-
cations, Amendment: Mesh Networking, Mar., 2008.
[6] IEEE P802.16j/D1, Draft Standard for Local and Metropolitan Area
Networks- Part 16: Air Interface for Fixed and Mobile Broadband Wire-
less Access Systems, Multihop Relay Specification, Aug., 2007.
[7] Sobrinho J.L. and A.S. Krishnakumar, “Quality-of-Service in ad hoc car-
rier sense multiple access networks,” IEEE J. Selected Areas in Communi-
cations, Vol. 17, No. 8, Aug. 1999, pp. 1353-1368.
[8] Tanenbaum, A.S., Computer Networks, 4th Edition, Prentice Hall, N.J.,
2003.
[9] Wu, H., A. Utgikar, and N.-F. Tzeng, “SYN-MAC: A distributed medium
27
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
length because they must be constructed in advance. Thus all of it is clear that in many applications data mule shortcuts are a
the data must co-operate with the shortcuts. However, data better option than wire shortcuts. However, WSN has sink
mule shortcuts are generated when data needs to be forwarded nodes that all data must be forwarded to. In this situation, active
and the shortcut length is determined by data demand. Even if forwarding model is adopted on data mule.
data mule and traditional shortcuts have totally different The remainder of this paper is organized as follows. Section
natures, the simulation results presented in this paper show that II introduces some related works on small world phenomenon,
a small numbers of data mules can significantly reduce average small worlds in wireless networks, and data mules. Section III
path length, which is compatible with the finding of the small proposes how to construct a small world in a wireless network
world phenomenon. using data mules as shortcuts. Subsequently, Section IV
After deciding to use data mule shortcuts, it is necessary to presents the simulation results. A final conclusion is given in
determine the forwarding model to be used for the data mules. Section V.
Forwarding models of the data mules can be divided into two
categories: active and passive forwarding. Active forwarding is II. RELATED WORKS
used to actively control data mule motion and can be operated
in applications where data destination is known, such as a sink This section introduces the concept of the small world
node in a sensor network, as we will discuss later. On the phenomenon. Then we present previous studies on small
contrary, in networks that already have mobile nodes, such as worlds in wireless networks and data mules.
Fig 1 and Fig 2, or in applications that have no fixed destination,
passive forwarding is more appropriate. A. Small World Phenomenon
To realize the small world phenomenon in wireless networks The small world phenomenon comes from the observation
with data mules, this study divides wireless networks into that individuals are often linked by a short chain of
connected and disconnected networks based on topology type. acquaintances. The same phenomenon was also found to exist
In connected wireless networks, all nodes are connected and on the today internet and the World Wide Web (WWW) in [7,
data mules imitate shortcuts. Adding different numbers of data 8, 9]. Watts & Strogatz conducted a set of re-wiring
mules to the network can demonstrate the small world experiments on regular graphs in [4, 6] and observed that by
phenomenon. In disconnected wireless networks, some of the rewiring a few random links in a regular graph, the average path
nodes are disconnected, such as in sparse mobile ad hoc length was reduced significantly (approaching that of random
networks or delay tolerant networks (DTN). Previous studies graphs) while still maintaining a high degree of clustering
on small worlds in wireless networks assume that the network within the neighbored nodes (since the node neighbors are also
is connected and calculate the average path length and cluster neighbors of each other, they form the cluster). This class of
coefficient of all nodes in a topology to determine the small graphs was termed small world graphs, a label that emphasizes
world phenomenon. However, in disconnected networks, the the importance of random links acting as shortcuts that reduce
path length of disconnected node pairs cannot be calculated. average graph path length.
Watt in [28] proposed a model called α model to explain the However, how do we find the shortest path in such a network
small world phenomenon in a disconnected network. We utilize model? If the real world were the same as the network model
data mules as shortcuts to forward data between any proposed by Watts and Strogatz, the mail delivery experiment
disconnected node pairs. We claim a similar small world of Milgram would not succeed. In this mail delivery experiment,
phenomenon can be observed. mail forwarding is determined by intermediate delivers
Finally, this study discusses the data mule shortcuts in personal information such as race, career, age, and other
wireless sensor networks (WSN). In [29, 30], the authors used characteristics. For this reason, data forwarding in the real word
wire line to construct a small world in WSN. However, is in a decentralized way, not in a centralized way like the
numerous WSN applications such as remote surveillance model in the [4, 6].
system or target tracking with mobile sensor node might not be Kleinberg tried to solve the decentralized problem in [11]. In
able to connect the network with wires. Adding wires is also not contrast to Watts and Strogatz’s model, Kleinberg’s model
economical for short term applications. Judging from the above, assumes that the graph of the network is a directed
29
2-dimesional lattice graph, not an undirected 1-dimensional Kleinberg in [11] show that regardless of partial knowledge or
ring lattice, and that each node has shortcuts by adding links in full knowledge, shortcuts in networks must be within a certain
the network, not by rewiring them. The shortcut added in range (network model in [10] is full knowledge that each node
networks is determined via the following procedure. Node u is a knows all of the information in the networks and [11] is partial
sender in a network and has a link to endpoint v with knowledge that each node only know its neighbor information).
-r
probability proportional to [d(u , v)] , where d(u, v) denotes the
distance between node u and node v and r denotes a tunable C. Data Mules
The data mules (i.e. data ferries) have been proposed as a
parameter. To obtain a probability distribution, Kleinberg
strategy for providing connectivity in the networks such as
divided this quantity by the appropriate normalizing constant
DTN, vehicular networks, etc., where a set of nodes called
∑ d (u, v )
−r
v . He also proposes a greedy routing algorithm to mules are responsible for carrying data for all network nodes.
forward data: each data forwarder u forwards data to the The operating modes of data mules can be divided into two
neighbor node v where node v is closest to the destination categories: active and passive forwarding. In active forwarding,
among all of the neighbor nodes (neighbor nodes of node u are the direction of a data mule is determined by the destination of
the endpoints of the original links and shortcut links of the node the data on the mule or by a fixed track mapped out in advance.
u) of node u. Kleinberg found that different probability In [21], a subset of mobile nodes is moved in a coordinated way.
distributions of adding shortcuts (different value of r) affect the Those mobile nodes always remain pair-wise adjacent and
performance of data delivery time significantly. Each different move in a snake-like way. The snake’s moving direction is
distribution causes a different expected length of the shortcut. determined by the snake’s head, which follows a random walk.
Kleinberg found that appropriate shortcut length makes The snake-like sequence is responsible for relaying data.
network nodes find the best next hop based on local Moreover, [22]proposed a method that guarantees to minimize
information (each node maintains the positions of the neighbor the message transmission time. In this approach, mobile hosts
nodes) and without losing the benefits associated with shortcuts. actively modify their trajectories to transmit messages. In [23],
If shortcuts are too long, the source initial algorithm may be non-randomness is introduced to mobile node movement. Here,
unable to identify the shortest path. Moreover, if the shortcuts non-randomness means that the movement of the data mules is
are too short, the advantage of the small world phenomenon tracked by a fixed tracker like satellite.
would not occur. Kleinberg shows that minimum delivery time In contrast, passive forwarding does not control the direction
in the 2-dimensional lattice network occurs when r = 2. of mobile nodes in a network. Data forwarding via mobile
Kleinberg also extended the result to the general case for r nodes in the passive mode resembles hitching a ride. Passive
equals to k in the k-dimensional lattice network. That is, forwarding is termed opportunistic forwarding and can be
networks for which only partial knowledge is available can use divided into three categories: No, All, and Selective forwarding
appropriate length of shortcuts to effectively reduce average [3]. No forwarding is similar to the strategy used in the Data
path length. Mule project [24]. Mobile nodes accept data from a data source
and cache it in their buffer. The mobile nodes continue to carry
B. Small Worlds in Wireless Networks this data until they receive a RESPONSE from the destination,
Wireless networks, such as ad hoc or sensor networks, are at which they deliver the data and remove it from their cache. In
spatial graphs in which links are determined by radio this method, mobile nodes do not communicate with one
connectivity. Such networks usually do not have long-length another. No forwarding uses a minimum amount of
connection (shortcuts) due to limitation of radio range. Hence, system-wide buffer space, since only one copy of each packet
they do not show the small world phenomenon. Even though, propagates throughout the system. All forwarding [25]
such networks have high clustering. Therefore, their average represents the opposite extreme to No forwarding. In this case,
hop distance is much larger than the average hop distance of a mobile node unconditionally exchanges data with all of the
wired networks. other mobile nodes it meets. Whenever a mobile node hears a
Helmy [10] first puts the concept of small world on wireless RESPONSE from another mobile node, it forwards all of the
networks. He added a few links which may represent the data in its buffer to the neighbored mobile nodes. The
physical wires among random nodes to construct the shortcuts redundancy of data provided by this strategy helps maximize
in wireless networks and calculated the average path length. the success rate of packet delivery and reduces overall delay.
The experimental results are the same as in the small world However, this method incurs an extremely high overhead in
model: clustering coefficient remains almost constant and terms of the number of messages exchanged and buffer space.
average path length is reduced significantly by the addition of a Selective forwarding is a form of greedy and
few shortcuts. geographical-based routing. A mobile node forwards the data to
Simultaneously, Helmy experimented with the addition of a the corresponding neighbor only if the position of the neighbor
fixed length shortcut to minimize shortcut constructing cost in is closer to the destination than its own current position.
wireless networks. The experimental results show that the
shortcut length only needs to be a small fraction (25% ~ 40%) III. DATA MULE IN WIRELESS NETWORKS
of the network diameter. Moreover, a longer shortcut (>40%) In this section, we first propose to construct a small world in
does not help to reduce average path length. The experiment a wireless network using data mules. We argue how data mules
demonstrated that it is not necessary to spend extra costs to can prevent defects of using wired lines or multiple-hop path
increase shortcut length. The results of Helmy in [10] and for shortcuts. Then the proposed operation models of data
30
mules and network nodes are introduced. Both small world fixed sink nodes, and this is discussed in subsection D.
phenomena in connected and disconnected wireless networks Although both data mules and traditional shortcuts have the
with data mules are discussed respectively. Furthermore, a same objective, they are totally different in nature. Traditional
small world phenomenon in wireless sensor networks using wired type shortcuts are fixed in terms of their positions in the
data mules is demonstrated. network, while data mule shortcuts are generated when data
delivery demands and are not fixed in terms of positions. Thus
A. Construct Small Worlds using Data Mules the length of traditional shortcuts must be measured as
In this subsection let us consider how to establish shortcuts in discussed in [10, 11]; however, the length of a data mule
wireless networks. There are two methods existing for shortcut is determined by demands of data on the networks.
constructing small worlds in wireless network, physical and Even if data mule shortcuts and traditional shortcuts are totally
logical ways. The physical way deploys wire lines as the different in nature, we show that deployment of small numbers
shortcuts in wireless network [12] or increases the radio range of data mules can significantly decrease average path length.
of wireless devices to make the long-length shortcuts. In the
logical way, long-length shortcuts are frequently imitated by B. Operation of Data Mules and Network Nodes
multi-hop paths [13, 14]. However, increasing the radio range This section discusses the operating details of data mules and
in common-channel network may negatively impact the network nodes. We adapt the selective passive forwarding as
spectrum utilization. Using the multi-hop paths to simulate a our operation models for data mules. The operation of data
long-length shortcut can not decrease path length actually. mules can be discussed in two aspects:
The most widespread method of constructing a small world 1. The time when the data is loaded onto the data mule: Data
in wireless networks is to deploy wired lines as shortcuts [12]. can only be loaded onto the data mule when the direction of
Due to deploy the wired line, the shortcuts should be added in the data mule coincides with the location of the data
advance. However; shortcuts in topology are used by all nodes destination. As Fig. 3 shows, the direction of data mule M is
and a too short or too long shortcut length may not decrease toward the colored region. In this case the data on sender S0
average path length [10, 11]. Therefore the shortcuts must be chose the data mule M to get on because data mule M is
maintained within a fixed range of the length according to the toward D0.
size of network topologies. For this reason, networks require a 2. The time when the data is unloaded from data mule: There
predetermined infrastructure to establish shortcuts. Even more are three situations in which data on a mule must get off.
problematical the wireless nodes which attached to the wired First, when the data has already reached its destination, the
shortcuts need to be stationary. However, the key benefit of data should get off the mule and transmit to the destination
wireless networks is mobility. The network topology of mobile node; second, when the data has reached the location at
wireless network is dynamic. It is impossible to construct fixed which the remaining distance to its destination is minimal,
length wired shortcuts in a dynamic environment. Therefore, it and the data mule is moving away from the destination of the
is necessary to find another way to construct shortcuts in order data, then the data should get off the mule; third, when the
to adapt the node mobility and topology change. data mule turns, we should check to see if the location of the
Rather than creating physical wires, this study attempts to data destination is still on the trajectory of the data mule. If
use mobile nodes (data mules) to carry data to construct small the new direction of the mule is opposite to the destination of
worlds. Numerous applications such as Figs. 1 and Figs. 2 have the data, then the data should get off to one of the nearest
mobile nodes already and can be utilized as shortcuts. This neighbor nodes
study assumes that all data mules in wireless networks have Aspects 1 and 2 above demonstrate how data utilizes data
storage and mobile ability. These data mules are used to mules in passive forwarding modes. The following, we discuss
simulate shortcuts. Data is loaded onto the mule at the source the operation of data on normal network nodes.
and unloaded at the destination. The path between these two Routing algorithms in wireless ad hoc networks can be
locations is shortcut. In this study, we adopt passive forwarding divided into position and topology based approaches [1]. The
for the data mules because most applications have mobile nodes position based approach has many advantages compared to the
travel randomly already (i.e., vehicular networks or ad hoc topology based approach, and is adopted in numerous
networks). Unknown data demand and unpredictable data applications. Therefore, position-based routing is used in the
generation are other reasons for this decision. Thus, passive normal network nodes in this study.
forwarding is sometimes more appropriate than active Position based routing uses greedy packet forwarding. The
forwarding. However, active forwarding is adopted in certain information of a packet including the approximate position of
situations, such as in WSN with stationary sensor nodes and the recipient is sent. When an intermediate node receives a
packet, it forwards it to a neighbor in the general direction of
the recipient. Ideally, this process can be repeated until the
recipient is reached. However, data delivered by greedy
forwarding frequently becomes stuck owing to the local
optimal problem. In [19] the right hand rule is used to overcome
this problem. Fig. 4 shows an example: data in sender S is stuck
in local maximal and starts the right-hand rule recovery
algorithm. Data will encounter an unclosed face if they follow a
Figure 3. Data mule decides which data should get on the mule. counterclockwise sequence, as shown in path 1. In this situation,
data must return to the sender because of the failure of finding
31
the destination and change to follow a clockwise direction, as
shown in path 2. By repeating this procedure, data in connected
networks can find a path to the destination
Based on the above operations, this study proposes an
algorithm that operates on normal network nodes and data α =0 α =C α =∞
mules. Normal nodes execute greedy forwarding algorithm and Figure 5. Different graphs with different α
solve the local optimal problem by entering recovery mode (In connected and the average path length increases significantly.
recovery mode, data transmission complies with the right-hand Interestingly, Watts found that if few more shortcuts are added
rule). Data on the normal network node attempts to get onto to the network with α= C, the average path length drops
neighboring mules heading towards the destination of that data. drastically while high clustering is maintained. Fig. 6 shows
If the data cannot identify any neighboring data mule, then it
that the x axis is the value of α and the y axis is the value of
moves forward one hop via greedy forwarding. Data on the
average path length and it demonstrates the small world
mule gets off upon arrival at the best location or when the mule
phenomenon.
changes direction. Data which gets off from the mule selects
another mule heading towards the direction of the destination. Comparing the graph of the α-model with the wireless
If no mule is available, then the data gets off at the normal node. network topology, sparse networks resemble the graph when α
=0, while sparse networks containing a lot of data mules
C. Small World in connected Wireless Network resemble the case when α=∞. As shown in Fig. 7, each circular
In connected wireless networks, all node pairs are connected. part represents the connected area, while the red lines represent
Consequently, all data reach at their destination within certain the data mule paths. This study attempts to find a proper
hops. Thus, we can calculate average path length by algorithm number of data mules to correspond to value of α. The
mentioned in section B. simulation results are presented in the following section.
D. Small World in Disconnected Wireless Network E. Small World in Wireless Sensor Network
To date, all researches interested in small worlds in wireless In this section we apply the small world phenomena to the
networks have assumed that network topology is connected. wireless sensor networks (WSN). Wireless sensor network is a
This assumption is necessary for calculating average path rapidly growing discipline, with new technologies emerging
length. However, certain types of wireless networks are and new applications under development. In addition to
disconnected, such as delay tolerant network (DTN). DTN is a providing light and temperature measurements, wireless sensor
form of emerging network that experiences frequent and nodes have applications such as security surveillance,
long-duration partitions. An end-to-end path may not exist environmental monitoring, and wildlife watching. A WSN
between some or all nodes in a DTN. A data mule is proposed contains at least one sink node that collects all of the sensing
for connecting these disconnected nodes in [29]; however, information in WSN (all of the sensing data must be delivered
small worlds in such disconnected wireless networks have not to the sink nodes). Nodes in WSN are usually deployed across a
been discussed yet. wide area, as shown in Figs. 1 and 2. Reducing average path
To resolve the problem of disconnected networks, let us length is important when large areas are involved. In [30], small
consider the concept proposed by Watts in 1999 [28]. Watts worlds were constructed to decrease average path length by
proposed the first model for experimenting with the small using wired shortcuts; however, the use of wired lines is
world phenomenon in disconnected network and named it as associated with certain problems. 1. Wired lines face
α−model. α is a value that is defined from 0 to ∞, which unpredictable risks, and the deployment of wired lines in wide
enables the model to generate graphs ranging from highly area involves unknown dangers. For example, natural disasters
ordered to highly random. As Fig. 5 shows, α= 0 represents an and man-made construction may break lines. 2. For some
extremely ordered graph in which each node is only connected applications like remote surveillance systems or target tracking
to its neighbor nodes. Meanwhile, α = ∞ represents an by using mobile sensor nodes, it may not be possible to deploy
a network with wires. 3. For some other short-term applications,
extremely random graph in which each node connects
adding wires is also unsuitable. Wire deployment is
randomly with other network nodes. Both of the extreme cases
time-consuming and becomes uneconomical after the end of
have a low average path length because in extreme ordered
the application. 4. Some applications have mobile sink nodes.
graph, the nodes only connects to its neighbors, and in
Wired lines are deployed in advance with the sink node. A
randomly generated graphs, the average path length has been
mobile sink node may cause the wired lines to become
demonstrated to be short. However, when α = C most nodes are
meaningless. 5. Certain applications already have mobile
D
Average path length
1
2
α =0 α =C α =∞
S S
S
Sink nodes
nodes (data mules). For example, eco-monitoring sensor networks, ranging from 10% to 100% of total nodes (since the
systems are located in forest areas, and sensor nodes are topology contains 300 nodes, the number of data mules would
deployed randomly. Rangers or hikers can act as data mules to be from 30 to 300).
collect the data of sensor nodes and forward it to base station This study uses the number of hops from sender to
(sink node). Fig. 1 shows another application involving mobile destination to measure path length. As shown in Fig. 9, the x
nodes; in this sensor system, tanks and vehicles, which move axis represents the different numbers of data mules added to the
faster than foot soldiers, are used as data mules to forward data. network and the y axis represents the ratio of L(p)/L(0). L(p)
For the above reasons, data mule is more suitable than wired denotes the average path length by adding p*(number of nodes
line in WSN. However, data forwarding in WSN differs from in network) data mules. For example, in a topology containing
that in typical wireless networks. The data is only forwarded to 300 nodes, L (0.1) is the average path length of the topology
sink nodes in WSN. In this situation it is more appropriate to with 0.1*300=30 data mules. Likewise, L(0) is the average path
control the motion of data mules to relay data. Therefore, active length for the network without data mules. Fig. 9 shows that
forwarding is adopted in WSN. Fig. 8 shows the data mule adding a small number of mules (10%) can reduce the average
paths deployed for different sink locations. In (a) and (b) the path length by nearly 50%. A network with 300 nodes only
sink node is located at the center of the topology, while in (c) needs 30 mules to have a 50% reduction in average path length.
and (d) it is located at the corner of the topology. The topology However, to keep adding more mules can only improve the
employs different numbers of lines, (a) and (c) deploy eight average path length very slowly. For example, if the number of
lines, (b) and (d) deploy sixteen lines in network. Each line has mules increases to 100% (300 nodes and 300 mules in the
at least one data mule shuttling to and from between the sink network simultaneously) the average path length can only
nodes and the edge of topology. Data mules collect data and decrease 70%; the performance gain only gets 20% enhance
forward them to the sink nodes. Different numbers of mules are while number of data mules are added to 10 times. The results
deployed to experiment with the influence of average path indicate that the addition of a small number of mules can
length. The detail simulation results are shown in the following significantly reduce the average path length with the similar
section. findings of [6] and [10]. It concludes that use data mules to
emulate the shortcuts in wireless networks without losing the
IV. SIMULATION RESULTS small world phenomenon.
The following simulation result involves measuring the
This section is divided into three subsections. Subsection A delay caused by data mules. Similar to Fig. 9, in Fig. 10 the
illustrates the simulation results of small worlds in connected x-axis represents the different numbers of data mules added to
wireless networks with data mules. Subsection B shows the the network and the y-axis is the ratio of D(p)/D(1). D(p)
simulation results of the small world phenomenon in denotes the average delay of the data communication for
disconnected wireless networks with data mule. Finally, networks with p* (number of nodes in network) mules.
subsection C obtains the simulation results using data mule Moreover, D(1) is the average delay for the network with the
with active forwarding modes in wireless sensor networks. number of data mules equal to the number of nodes in the
network (300 in this case). As shown in Fig. 10, when decrease
A. Small World in Connected Wireless Network the number of mules from 300 to 0, the delay also reduces.
This investigation uses ns2 as the simulation tool. The size of Moreover, when the number of mules is about 30 ( p=0.1) the
the network topology is 800m x 800m. The network contains delay will reduce by 50%. Fig. 11 combines Fig. 9 and Fig. 10.
300 nodes, and the radio range of each node is 70 m. Nodes in The figure determines the optimum number of mules, which is
network repeatedly generate data and the destinations of data about 10% of total network nodes, required to achieve the best
are randomly chosen. We use the routing algorithm described tradeoff between average path length and delay.
in Section III. Various numbers of data mules are added to
hop delay
1
1
0.9 0 .9
0.8 0 .8
0.7 0 .7
0.6 0 .6
D(p)/D(0)
L(p)/L(0)
0.3 0 .3
0.2 0 .2
0.1 0 .1
0
0
0 0.1 0. 2 0.3 0.4 0.5 0.6 0. 7 0.8 0. 9 1 0 0 .1 0.2 0.3 0.4 0.5 0 .6 0.7 0.8 0.9 1
% of mules % of mules
Figure 9. Average path length decrease drastically when Figure 10. Average delay increase drastically when few number of
few numbers of mules add in connected wireless networks. mules add in networks and more mules cause more delay.
33
hop V.S. delay
0.9 0.9 1 1
0.7 0.7
0.6 0.6
D(p)/D(0)
L(p)/L(0)
delay 0.6 0.6
D(p)/D(0)
L(p)/L(0)
0.5 0.5
hop hop
0.5 0.5
0.4 0.4 delay
0.4 0.4
0.3 0.3
0.3 0.3
0.2 0.2
0.2 0.2
0.1 0.1
0.1 0.1
0 0
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0 0.07 0.14 0.2 0.28 0.35 0.42 0.5 0.57 0.64 0.71 0.78 0.85 0.92 1
% of m ules
% of diam eter
Figure 11. Average path length and average delay Figure 12. Length of shortcuts V.S. average path length and delay
when data mule increases
After realizing the tradeoff between path length and delay, phenomenon. However, if more data mules are added to the
this study discusses the appropriate length of shortcuts networks, then the average path length will decrease noticeably
emulated by data mules. In Fig. 12, the x-axis indicates the because enough data mules are available to forward data to the
shortcut length emulated by traveling distance of data mule, destinations, which act as the shortcuts in small world networks.
which is represented by the fraction of network diameter. The This result resembles to a small world phenomenon as in [28].
y-axis is L(0.1)/L(0) for the average hop distance and delay.
The shortcut length influences network performance. C. Small World in Wireless Sensor Network
Average shortcut length of less than 0.2*network diameter This section simulates four kinds of topology. As shown in
causes average path length ratio exceeding 0.6. However, when Fig. 8, the sink node at the center/corner has 8/16 lines. Fig. 17
the shortcut length is greater than 0.2*network diameter, the shows simulation results for these topologies. The x-axis shows
average path length can be reduced to 0.53. Similar to [10], the the number of mules on each line, while the y-axis is L(n)/L(0) ,
result of Fig. 12 shows that shortcut length must exceed at least where n is the number of mules on each line.
20% of fraction of network diameter. In Fig. 12, increasing Notably, the average path length decreases with an
shortcut length to exceed 0.3* network diameter would not increasing number of data mules. However, a small number of
reduce average path length. It’s because delivery of data over mules can decrease path length significantly and increasing the
such long distances is rarely necessary [11] in small world number of mules does not achieve further reductions. The
networks. simulation results support the findings of previous simulations
involving mule number. Additionally, Fig. 17 illustrates that
B. Small World in Disconnected Wireless Network performance is better with 16 lines than with 8 lines because the
In previous simulations, we have used a connected network former can cover more area than the later.
and radio range of 70m. In this simulation, the radio range is
reduced to 60/50 for each node to create a disconnected V. CONCLUSION
network. Fig. 13 and Fig.14 illustrate data delivery ratio versus Recently, the small world phenomenon has been a hot
various numbers of mules, while Fig. 15 and Fig. 16 show research topic with various studies. Those studies discussed the
average path length versus various numbers of mules. In the x relationships of connecting individuals in the real world. Some
axes of Figs. 13~16, p denote the number of data mules added studies on wireless networks also used the small world
in the network while the y axis of Figs. 13 and 14 shows the phenomenon to enhance network performance. However,
data delivery ratio and Figs. 15 and 16 illustrate L(p)/L(0.333). previous studies on the small world phenomenon added
Fig. 13 and Fig. 14 show that even in different radio ranges, shortcuts in advance because the length of shortcuts must be
the addition of a small number of mules to a disconnected within a range that it fits all individuals in networks; a fixed
network can significantly increase the data delivery ratio. The shortcut only suits for fixed topology. However, in a mobile
results show that data mules are a practical solution to increase network it is impossible to construct fixed length shortcuts
data delivery ratio in the disconnected networks such as DTN, owing to the lack of fixed stations for establishing shortcuts.
Radio range=50
Radio range =60 1
1
0.9
0.9
0.8
0.8
0.7
0.7
data delever ratio
0.6
datadeliver ratio
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0 .9 1
p p
Figure 13. Number of Mules V.S. data deliver ratio when Figure14. Number of Mules V.S. data deliver ratio when
Radio range=60 Radio range=50
vehicular networks, etc. From the points of view above, this study used mobile nodes,
Furthermore, Fig. 15 and Fig. 16 demonstrate the small called data mules, to construct shortcuts randomly. The use of
world phenomenon in disconnected wireless networks. The data mules allows shortcuts to be built easily and economically.
figures show that a network without data mules initially is The simulation results demonstrate that such shortcuts can
disconnected, and thus the average path length is quite short. easily reduce the average path length without losing the small
When p=0.0333 most disconnected parts are connected and world property.
average path length increases significantly because network Furthermore, previous research assumed that wireless
data can be delivered to the destination via data mule, but the networks are connected and calculated the average path length
number of data mules is insufficient to form the small world and cluster coefficient of all nodes in a topology to confirm
34
Radio range= 60 Radio range= 50 average pathlength V.S. number of mules on each line center-16
1 1 1 center-8
0.9 corner-16
0.8 0.8
L(p)/L(0.03333)
L(p)/L(0.03333)
0.8
corner-8
0.7
0.6 0.6 0.6
L(n)/L(0)
0.5
0.4 0.4 0.4
0.3
0.2
0.2 0.2
0.1
0
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 1 2 3 4 5 6 7 8 9 10
p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
p n
Figure 15. Number of Mules V.S. Average path Figure 16. Number of Mules V.S. Average path Figure 17. average path length V.S. number of
length when Radio range=60 length when Radio range=50 mules on each line
small world phenomenon. However, in disconnected networks, Reverse-Path Forwarding (tbrpf),” Internet draft,
it is impossible to estimate the path length of disconnected node draft-ietf-manet-tbrpf-01.txt, work in progress, Mar. 2001.
[18]. H. Takagi and L. Kleinrock, “Optimal Transmission Ranges for
pairs. Consequently, this study utilizes the concept of α -model Randomly Distributed Packet Radio Terminals,” IEEE Trans.
Commun., volum.32, no.3, pp. 246–57. Mar 1984.
[28] proposed by Watt in 1999 to solve the problem of [19]. B. Karp and H. T. Kung, “Greedy Perimeter Stateless Routing for
disconnected network. Simulation results demonstrate that the Wireless Networks,” Proc. 6th Annual ACM/IEEE Int’l. Conf. Mobile
small world phenomenon also exists in disconnected wireless Comp. Net., pp.243–254, Aug. 2000.
networks with addition of small number of the data mules. [20]. G. Toussaint, “The Relative Neighborhood Graph of a Finite Planar
Set,” Pattern Recognition, volume. 12, no. 4, pp. 261–68, 1980.
Finally this study discusses the small world phenomenon in [21]. I. Chatzigiannakis, S. Nikoletseas, and P. Spirakis, “Analysis and
wireless sensor networks containing data mules. Past studies Experimental Evaluation of an Innovative and Efficient Routing
constructed small worlds in WSN by using fixed wires; Approach for Ad-hoc Mobile Networks,” Proc. 4th Annual Workshop
however, data mule shortcuts are superior to fixed wires in most on Algorithmic Engineering, 2000.
[22]. Q. Li, D. Rus, “ Sending messages to mobile users in disconnected
applications. This study thus actively controls the motion of ad-hoc wireless networks,“ Proc. International Conference on Mobile
data mules to fit sink nodes. The results of this study show that Computing and Networking, pp.44 - 55, 2000.
adding a small number of mules reduces average path [23]. W. Zhao, M. Amma, E. Zegura, “A message ferrying approach for data
significantly while adding larger numbers of data mules cannot delivery in sparse mobile ad hoc networks,” Proc. 5th ACM
international symposium on Mobile ad hoc networking and computing
effectively reduce the average path length. pp.187-198 ,2004.
[24]. A. Vahdat and D. Becker, “Epidemic routing for partially connected ad
REFERENCE hoc networks,” Tech. Rep. CS-200006, Department of Computer
Science, Duke University, Durham, Apr 2000.
[1]. M. Mauve, A. Widmer, H. Hartenstein, “A survey on position-based [25]. C. Chuah, D. Ghosal, H. Chang, J. Anda, and M. Zhang. “Enabling
routing in mobile ad hoc networks,” IEEE Network Magazine, 15, Issue energy demand response with vehicular mesh networks,” Proc. IEEE
6, pp.30 – 39, Nov 2001. Conference on Mobile and Wireless Communication Networks, 2004.
[2]. R. Shah, S. Roy, S. Jain, W. Brunette, “Data MULEs: modeling a [26]. Z-Da Chen, H-T Kung, D. Vlah, “Ad hoc relay wireless networks over
three-tier architecture for sparse sensor networks,” Proc. IEEE SNPA moving vehicles on highways,” Proc. MobiHoc, Oct 2001
Workshop, May 2003. [27]. D.J. Watts, “Networks, Dynamics, and the Small-World Phenomenon,”
[3]. J. LeBrun, C-N Chuah, D. Ghosal, “Knowledge Based Opportunistic American Journal of Sociology, volume 105, issue 2, pp.493–527,
Forwarding in Vehicular Wireless Ad Hoc Networks,” Proc. IEEE 1999.
Vehicular Technology Conference (VTC), spring, 2005. [28]. D.J. Watts, “Six degrees: the science of a connected age,” W. W. Norton
[4]. D.J. Watts, “Small Worlds, The dynamics of networks between order & Company; Reprint edition, Feb 2004.
and randomness,” Princeton University Press, 1999. [29]. R. Chitradurga and A. Helmy, “Analysis of wired shortcut in wireless
[5]. S. Milgram, “The small world problem,” Psychology Today, pp.60-67, sensor networks,” Proc. IEEE/ACM International Conference on
1967. Pervasive Services, July 2004.
[6]. D. Watts, S. Strogatz, “Collective dynamics of ‘small-world’ [30]. G. Sharma and R. Mazumdar, “Hybrid sensor networks: A small
networks,” Nature Volum.393, pp. 440-442, 1998. world,” Proc. ACM MOBIHOC, Mar 2005
[7]. L. Adamic, “The Small World Web,” Proc. EDCL, pp.443-452, 1999.
[8]. A. Broder, R. Kumar, F. Maghoul, P. Raghavan, S. Rajagopalan, R.
Stata, A. Tomkins, J. Wiener, “Graph structures in the web,” Computer
Networks, June 2000.
[9]. R. Albert, H. Jeong, A. Barabasi, “Diameter of the world wide web,”
Nature, 1999.
[10]. A. Helmy, ”Small worlds in wireless networks,“ IEEE Communications
Letters, Volume 7, Issue 10, pp.490 - 492 , Oct. 2003.
[11]. J. Kleinberg “The Small-World Phenomenon: An Algorithmic
Perspective,” Proc ACM Symposium on Theory of Computing, pp.163 –
170, 2000.
[12]. G. Sharma, R. Mazumdar, ”Hybrid Sensor Networks: A Small World,”
Proc. ACM MOBIHOC, Mar 2005.
[13]. A. Helmy, "Mobility-Assisted Resolution of Queries in Large-Scale
Mobile Sensor Networks (MARQ)," Computer Networks Journal –
Elsevier Science, Special Issue on Wireless Sensor Networks, August
2003.
[14]. A. Helmy "Contact Based Architecture for Resource Discovery
(CARD) in Large Scale MANets," Proc. IPDPS, April 2003.
[15]. C. Perkins and P. Bhagwat, “Highly Dynamic Destination Sequenced
Distance-vector Routing (dsdv) for Mobile Computers,” Proc.
SIGCOMM ’94 Conference on Communications Architectures.
pp.234-244, Aug 1994.
[16]. P. Jacquet et al., “Optimized Link State Routing Protocol,” Internet
draft, draftietf-manet-olsr-04.txt, work in progress, Sept. 2001.
[17]. B. Bellur, R.Ogier, and F. Templin, “Topology Broadcast Based on
35
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
1 Introduction
Equipped with multiple transceivers, nodes can access
A wireless ad hoc network consists of a cluster of mo- multiple channels simultaneously. Several solutions belong
bile hosts without any pre-designed infrastructure of the to the multiple-transceiver, with dedicated control channel
base stations. The IEEE 802.11 standard is usually adopted category [4, 5, 10, 11]. In this category, a user can utilize at
as the access scheme for ad hoc network. The MAC pro- least two transceivers, one for control messages exchanging
tocol of IEEE 802.11 standard is designed for accessing and the other for data transferring. The transceivers for data
a single channel. It is well known that utilizing multiple transferring are capable of dynamically switching among
channels can increase spatial reuse and hence enhance net- different channels to fulfill data transfer. Some solutions [3,
work throughput. Thus, it is desirable for a user to uti- 9] utilize multiple transceivers but avoid using a dedicated
lize multiple channels to communicate with others. Several control channel. These schemes adopt the concept of ATIM
multi-channel MAC protocols have been proposed recently. window in IEEE 802.11 power saving mode (PSM).
When a user is involved in a transmission in a multi-channel The main concern of using multiple transceivers is in-
network, the most important question is: “which channel creased hardware cost. Thus, many proposals adopt only
should be used for transmission.” It is referred to as the one transceiver to reduce hardware cost. Some of them
37
dow, each node switch its default transceiver to the de- control channel class try to mitigate the bottleneck prob-
fault channel to exchange transmission intention through lem [2, 7, 8]. In SSCH [2] each node hops between chan-
ATIM/ATIM-ACK packets. Also, the source-destination nels using its own channel hopping sequences. The chan-
pairs select channels according to the quality and traffic nel hopping sequences have been designed such that nodes
load in each channel. After ATIM window, all channels, will overlap with each other at least once in a cycle. The
including the default channel can serve to exchange data dwelling time for each hop is set to 10 ms. Within this pe-
on all the transceivers. Another algorithm, Novel, which riod, IEEE 802.11 DCF is adopted as the MAC mechanism.
adopts the same ATIM window concept is proposed in [3]. SSCH also enables a node to change its channel hopping
A node running Novel has two transceivers, a control one sequence to match that of its receiver’s. SSCH avoids the
and a data one. Both transceivers can be used for negotia- control channel bottleneck by sharing the control overhead
tion during the ATIM window: the data transceiver tunes to among all channels. However, since channel switching hap-
the default channel and the control transceiver tunes to the pens every 10 ms, the capacity of the channel can be fully
control channel. During the non-ATIM period, data trans- utilized only if there are enough packets to be delivered to
mission can be conveyed on all channels, including the con- those nodes reside on the same channel. Moreover, the aver-
trol channel. In these two multiple-transceiver categories, age delay for a successful packet transmission is increased
each node is equipped with multiple transceivers, which is since nodes generally take longer time before they hop to
undesirable due to higher hardware cost. the same channel.
To reduce hardware cost, several proposals utilize only Some other solutions adopt the concept of ATIM window
one transceiver to solve the channel allocation problem. in IEEE 802.11 PSM. In MMAC [7], all nodes initially lis-
Some of them adopt a dedicated control channel [6, 12]. ten on the default channel during the ATIM window. When
In AMCP [6], one control channel and n data channel are a node A intends to communicate with another node B, node
assumed. Each node locally maintains an n-entry channel A will send an ATIM packet to node B on the default chan-
table to keep track of the usage of data channels. Initially, nel. This packet includes a Preferable Channel List (PCL)
all nodes stay on the control channel. When a node A has which presents node A’s channel usage information. Af-
packet pending for transmission to node B, nodes A sends ter receiving the ATIM packet, node B will choose a chan-
its RTS packet which contains its preferred channel, say nel that is free in both node A’s PCL and its own. Node B
channel x, to be used for upcoming data transfer. Node B then notifies node A the selected channel through an ATIM-
checks channel x in its channel table and replies a Confirm- ACK packet and node A confirms this channel by replying
ing CTS if it is available. Then, both nodes switch to the an ATIM-RES packet. At the end of ATIM window, both
scheduled channel for data transmission. If channel x is not nodes switch to the negotiated channel to fulfill data trans-
available for node B, a Rejecting CTS which contains a list mission. Although there is no dedicated control channel in
of node B’s available data channel is replied. In that case, MMAC, the ATIM window can be considered as a common
another round of channel selection and negotiation will be control period which still produces a bottleneck. Moreover,
triggered. After data transmission, both nodes will switch since the sender contends a channel for the first packet in
back to the control channel and set all data channel except x its queue, MMAC suffers from the throughput degradation
to be unavailable for a certain period of time. Such settings if there is no sufficient number of packets to the same re-
can avoid the multi-channel hidden terminal problem. Sim- ceiver. It is referred to as the HOL problem.
ilar to AMCP, LBM [12] utilizes one control channel and In SLKB [8], each beacon interval is divided into three
n data channels. LBM tries to balance load sharing among subintervals and three asynchronous channels are used. Fig-
channels while making the channel allocation. Nodes run- ure 1 shows the channel usage of SLKB. ATIM and ATIM-
ning LBM will use the channel that is available and has the ACK packets exchanged in the ATIM window indicate the
lowest utilization ratio for data transmission. An unsatisfac- transmission pairs in the data subframe. Nodes that have
tory feature of using a dedicated control is that this control completed their tasks in the first subinterval at channel 0
channel becomes a bottleneck which limits the overall uti- will switch to channel 1 (the first neighbor channel of chan-
lization. nel 0); nodes that have completed their tasks in the second
Solutions in the single-transceiver, without dedicated subinterval at channel 0 will switch to channel 2 (the second
38
1st subinterval 2nd subinterval
sion. A node that does not receive an ATIM can enter the
doze mode at the end of the ATIM window.
Task2
Task1
Task3
Task4
Task5
Task7
Task6
ATIM
Ch0 Window
Time
Beacon Beacon
A
ATIM DATA
Ch1 ATIM Beacon
Window
Time
Beacon
B
Ch2 ATIM
Window ATIM - ACK ACK
Time
Beacon
Doze mode
C
Figure 1. Channel usage in SLKB Time
ATIM Data
Window Window
Beacon Interval
The protocol we proposed belongs to the single- To facilitate the operation of LAMM, each node main-
transceiver, without dedicated control channel class. The tains a variable CUi to estimate the usage of channel i. In
structure of LAMM is similar to that of IEEE 802.11 PSM. LAMM, we use the total number of packets pending to send
Time is divided into a series of beacon intervals. At the be- on channel i during the data window as the measure of CUi .
ginning of each interval, there exists a small window called Since the ATIM and ATIM-ACK packets contain the num-
the ATIM window. All nodes should keep awake during ber of pending packets for destination. Each node is able to
the ATIM window. Fig. 2 illustrates the operation of IEEE count the number of packets pending for the data window.
802.11 PSM. If node A has traffic for node B, it sends an At the beginning of each beacon interval, CUi is set to zero.
ATIM packet to B during the ATIM window. Node B replies For the sender and the receiver of a particular ATIM/ATIM-
an ATIM-ACK to A to respond this ATIM packet. After a ACK transmission, their CUi are increased by the num-
successful ATIM/AITM-ACK dialog. both nodes A and B ber of pending packets contained in the ATIM/ATIM-ACK
will stay awake during the data window for data transmis- packets. If a node hears an ATIM or an ATIM-ACK packet
39
Beacon Interval
on channel i during the ATIM window, it adds the number Default channel
ATIM Window Data Window
Channel 1
as transmission rate, data window size in a beacon interval,
E C
and packet size. For example, if a network has transmis- Beacon
ATIM
RTS Data
Beacon
sion rate 2 Mbps with data window 80 ms for an 100 ms Cu 0 > CU thrd
F D
beacon interval and packet size 512 bytes, the CUmax is 40 Inactive node
ATIM - ACK CTS ACK
Time
( 2M512∗8
bps∗0.08
). Channel 2
40
ates this problem to some extent since a channel switching 4
CU thrd= 0 . 25 * CU max
happens only when the network is heavily loaded.
2
1.5
We evaluate the performance of our protocol using the
1
ns-2 simulator (version 2.28) [1]. We compare LAMM with
0.5
MMAC and SLKB since they utilize the same ATIM win-
0
dow concept. We use the following three metrics to evaluate 1 0.8 0.6 0.4 0.2 0.08 0.06 0.04
Interarrival Time (s)
these protocols: aggregate throughput, packet delivery ra-
tio, and average packet delay. In the simulations, totally 25
nodes is running in a single-hop environment. The source- Figure 4. Aggregate throughput for different
destination pairs are selected randomly which means a node CUthrd values
may be a sender and/or a receiver at the same beacon in-
terval. Each node generates constant-bit-rate (CBR) traffic
with a packet size of 512 bytes. The transmission rate of a 4
Parameter Value
SIFS 10µs Figure 5. Aggregate throughput at different
DIFS 50µs packet interarrival times
CWmin 31
CWmax 1023
ATIM Retry Limit 3
Short Retry Limit 7
Long Retry Limit 4 LAMM outperforms the other two protocols at all differ-
Preamble Length 144 bits
PLCP Length 48 bits
ent interarrival times. The MMAC protocol suffers from
the HOL problem at a light-loaded environment and incurs
a bottleneck (the common control period) when the net-
In our simulations, first we need to determine the best work is heavy-loaded. In SLKB, only those nodes that have
CUthrd . We have tested four different CUthrd values and successfully finished their data transfer can switch to the
the results (aggregate throughput) are shown in Fig. 4. next channel. The other nodes (what we defined as inac-
Obviously, the best performance happens when CUthrd is tive nodes) stay on the same channel. Such a mechanism
equal to CUmax . When lower CUthrd values are activated, produces unnecessary switchings at light load; it also fails
inactive nodes may frequently switching between channels. to distribute nodes properly at heavy load since the inactive
This may lower the probability for nodes to reside on the nodes can do nothing staying in the original channel. Our
same channel and thus lower throughput is produced. This LAMM avoids the problems of MMAC and SLKB and thus
experiment verifies that another new channel should be cre- achieves better throughput.
ated only when the capacity being used currently is satu- The packet delivery ratio at different traffic load for dif-
rated. In the following, the CUthrd is set to 40. ferent protocols can be found in Fig. 6. When packet in-
The aggregate throughput for different protocols at dif- teraarrival time is less than 0.4 second, the delivery ratio
ferent network load is shown in Fig. 5. It is clear that our of LAMM is close to 100%. It is because a sender can al-
41
100 4
90 LAMM 3.5
Packet Delivery Ratio (%) LAMM
Figure 6. Packet delivery ratio at different Figure 7. Average packet delay at different
packet interarrival times packet interarrival times
ways find its receiver since all nodes stay on the same chan- Acknowledgements
nel. The ratios for SLKB and MMAC at the same loads
are around 60% and 50%, respectively. As traffic load be- This research is supported by the National Science
comes heavies, the ratio for all protocols drops significantly. Council, ROC, under grant NSC96-2221-E-019-015-MY2.
Among them, LAMM still performs the best.
Fig. 7 shows the average packet delay as the network References
load increases. Again, our LAMM incurs the least delay,
which is followed by SLKB and MMAC. Reduced delay is [1] The Network Simulator - ns-2.
a direct consequence of a load awareness channel allocation http://www.isi.edu/nsnam/ns/.
mechanism. Utilizing only one channel when the network
[2] P. Bahl, R. Chandra, and J. Dunagan. SSCH: Slotted
load is low, LAMM can reduce the packet delay since the
Seeded Channel Hopping for Capacity Improvement
waiting time for a transmission pair to switch to the same
in IEEE 802.11 Ad-Hoc Wireless Networks. In Pro-
channel is removed. As the network load increase, inac-
ceedings of ACM MobiCom, pp. 216-230, September
tive nodes may move to other channels and the time for
2004.
the sender and the receiver to reside on the same channel
increases accordingly. The increased delay for MMAC at [3] S.-C. Lo and C.-W. Tseng. A Novel Multi-Channel
heavy load is caused by the HOL problem. For SLKB, the MAC Protocol for Wireless Ad Hoc Networks. In Pro-
enlarged delay results from improper allocation of those in- ceedings of IEEE VTC, pp. 46-50, April 2007.
active nodes.
[4] R. Maheshwari, H. Gupta, and S. R. Das. Multichan-
nel MAC Protocols for Wireless Networks. In Pro-
5 Conclusions ceedings of IEEE SECON, pp. 393-401, September
2006.
In this paper, we propose a multi-channel MAC proto-
[5] J. S. Pathmasuntharam, A. Das, and A. K. Gupta. Pri-
col LAMM that dynamically adjust the number of chan-
mary Channel Assignment Based MAC (PCAM) - A
nels being utilized according to traffic load. With such a
Multi-Channel MAC Protocol for Multi-Hop Wireless
load-aware channel allocation principle, LAMM reduces
Networks. In Proceedings of IEEE WCNC, pp.1110 -
the packet delay when the network is lightly loaded while
1115 Vol.2, March 2004.
increases spatial reuse when heavily loaded. The simula-
tion results verify that our LAMM performs well and is a [6] J. Shi, T. Salonidis, and E. W.Knightly. Starvation
flexible multi-channel protocol for ad hoc networks. Mitigation Through Multi-Channel Coordination in
42
CSMA Multi-hop Wireless Networks. In Proceedings
of ACM MobiHoc, pp. 214-225, May 2006.
[10] S.-L. Wu, C.-Y. Lin, Y.-C. Tseng, and J.-P. Sheu. A
New Multi-Channel MAC Protocol with On-Demand
Channel Assignment for Multi-Hop Mobile Ad Hoc
Networks. In Proceedings of International Symposium
on Parallel Architectures, Algorithms and Networks,
pp. 232-237, December 2000.
43
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Sungil Kim, Yoo Chul Chung, Yangwoo Ko, and Dongman Lee
Information and Communications University
{adreamer, chungyc, newcat, dlee}@icu.ac.kr
45
positioning task and reduce the communication 4.2. Basic procedures
overheads between nodes with our proposed scheme.
We considered the following when designing our This section gives a brief description of the basic
scheme. procedures used in our proposed scheme. The first
First, only a limited number of nodes should be part procedure is the creation of a local coordinate system
of the positioning task. We take advantage of the using two neighbors. The second is the transformation
network route from the requester node to the requested procedure between two different local coordinate
node. The nodes that take part in measuring the systems. Our proposed scheme is built on top of these
coordinate of the requested node in the local coordinate two basic procedures, which are the same as those as
system of the requester node are limited to those in the described in [3].
vicinity of the network route.
Second, the communication cost for the localization 4.2.1. Local coordinate system creation. Each node
should be reduced. Our target scenario only requires maintains a local coordinate system with itself as the
locations occasionally, so we design the scheme to origin.
work reactively. This avoids the periodic beaconing by
all nodes as would be required in proactive schemes,
which results in smaller network overheads. We also
limit the rate at which broadcasts requesting distance
measurements are made.
4.1. Overview
Equation 2
46
j x = d ij cos α j coordinate system of k can be rotated by the correction
angle and displaced by the coordinates of k in the local
if βj = αj −γ => j y = d ij sin α j coordinate system of i, which results in coordinates
based on the local coordinate system of i.
else => j y = − d ij sin α j
4.3. Algorithm
In our proposed scheme, nodes create a local
coordinate system for computing the location of
neighbors.
47
computed positions, and each node caches the When a node receives a LOCATION_REQ message,
computed positions for further use. it should determine the coordinates of neighboring
nodes as in Figure 4. All nodes receiving
4.4. Protocol design LOCATION_REQ message should measure the
distances to the neighbors and broadcast
Table 1 Messages for the proposed scheme DISTANCE_REP messages, which include distances
Messages Description between themselves and their neighbors. This distance
A message requesting the information is used by other nodes to create their own
LOCATION_REQ local coordinate systems, so the source node and the
location of a given node.
A reply message for computed node on the next hop can also create their own local
LOCATION_REP coordinate systems.
locations.
A reply message for distance If a receiving node of a LOCATION_REQ message
DISTANCE_REP is also the node on the next hop on the route, it also
information
checks if the position of the requested node is known
or not. If not, it stores the requester node address and
The three messages used in the proposed scheme
the target node address in a requested location list, and
are shown in Table 1.
broadcasts a LOCATION_REQ message, which is
received by the next node on the route. By repeating
this, a LOCATION_REQ will be forwarded to the
node which has the location of the requested address,
while nodes on the route will determine coordinates for
its neighbors.
If a node on the route has the location of the target
node, then it broadcasts a LOCATION_REP message,
which includes coordinates for a subset of known
nodes in its coordinate system. When a node receives a
LOCATION_REP message, the node will have enough
information to transform coordinates from neighboring
local coordinate systems to its own local coordinate
system by comparing the subset of coordinates
included in the message with those in its own local
coordinate system.
When a node receives a LOCATION_REP message,
it transforms the coordinates of the target node to those
in its local coordinate system and sends another
Figure 4 Actions after receiving a request LOCATION_REP message with the new coordinates
message. T is the target, S is the broadcasting and coordinates of a subset of its own neighbors
node, and both A and B are nodes on the toward the next node on the route back to the
route. requesting node. Eventually the requester node will
receive a LOCATION_REP from which it can
A LOCATION_REQ message is broadcasted when compute the location of the target node in its own local
the location of a specific node is requested. This coordinate system.
message includes the target node address, destination A couple of techniques are used in our proposed
node address and requester node address. The target scheme to improve the performance. The first one is
node is the node whose location is requested. The DISTANCE_REP rate limitation, where if a
destination node address indicates the node on the next DISTANCE_REP has been sent recently, a node
hop on the route from the requester node to the target suppresses measurement and broadcast of distances.
node, and is used for sending the LOCATION_REQ The next one is location caching, where a computed or
message along the network route. It is obtained from received location is cached on a node for further use.
the routing table in the network stack. The requester
node address stores the requester of the target location. Table 2 Pseudo-code for the proposed scheme
This information is required for sending back the recv (packet) {
requested location. switch(packet.cmd){
case LOCATION_REQ:
if(Not broadcast recently)
48
{ In this section, we compare the proposed scheme
dRep=new DISTANCE_REP with the Self-Positioning Algorithm [3] by simulation
dRep.src=selfID and evaluate the effectiveness of our scheme.
dRep.dest=ANY
dRep.data=distanceList
send dRep after random delay 5.1. Simulation environment
}
if(packet.dest==selfID){ The proposed scheme is simulated with the NS-2
if(Location of target is not known){ simulator [7], and Table 3 describes the parameters
if(isMyNeighbor(packet.target)){ used in the simulation. We implement and simulate the
packet.dest=ANY Self-Positioning Algorithm with the same settings for
} else {
comparison with the proposed scheme.
packet.dest=next hop to target
}
send packet Table 3 Settings for the simulation
requestList.insert(packet.src, Parameter Value
packet.target) Size of area 1000 x 1000 m
} Number of nodes 100
}
Duration of simulation 1000 seconds
case LOCATION_REP: Wireless model 802.11
updateLocationList(packet) Transmission range 250 m
for each item in requestList{ Mobility pattern Random
if(Requested location is available Maximum node speed 1~10 m/s (10sec pause)
&& Not broadcast recently){ Minimum broadcast 3 sec
lRep=new LOCATION_REP
lRep.src=selfID
interval
lRep.dest=ANY Sensor error Maximum +/- 5%
lRep.data=locationList,
send lRep In our simulation, each node has an application
requestList.delete(item) running on it, and it requests the location of a
} randomly selected node. Location requests are made in
}
fixed intervals and the target node is changed every
case DISTANCE_REP: time. The number of messages sent for positioning is
updateNeighborsDistanceList(packet) used to evaluate the network overhead. We compared
if(distanceList.num() > 3){ the difference between the real distance and calculated
createLocalCoordinateSystem() distance to a target node, and calculate the time
for each item in requestList{ required for getting a location.
if(Requested location is available Unless otherwise mentioned, nodes are moving at 5
&& Not broadcast recently){ m/s speed with 10 seconds of pause time, cache life
lRep=new LOCATION_REP
lRep.src=selfID
time is 5 seconds and 100 nodes are periodically
lRep.dest=ANY requesting a location in 30 second intervals. Sensor
lRep.data=(locationList, errors are simulated by adding a uniformly distributed
distanceList) random error that is at most 5% of the distance. AODV
send lRep [8] is the underlying routing protocol.
requestList.delete(item)
} 5.2. Network overhead
}
}
} Figure 5 shows the number of messages generated
} by our proposed scheme. The number of request
messages obviously has a close relation with the
Table 2 shows pseudo-code for our proposed scheme. interval of location requests. Since all nodes on a route
between the requester and the target node should send
a request message, the number of messages increases
5. Evaluation rapidly as the number of requests does. We can also
see that the number of location reply messages
increases as the number of requests increases (even
though it is a very small amount), but the growth rate
49
of the number of distance replies is much smaller, 5.3. Accuracy
resulting in a convex shape. This is because the
distance replies can be suppressed easier than location
replies. A distance reply is not broadcasted if it was
recently broadcasted while a location reply is not
broadcasted if it and the targeted location were not
recently broadcasted.
50
request, it is more likely that we can take advantage of Hawaii International Conference on System Sciences,
packets sent during other location requests when January 2001.
location requests are more frequent. The other reason,
which only applies to caching, is that frequent location [4] S. Steiniger, M. Neun and A. Edwardes, “Foundations of
Location-based Services”, CartouCHe - Lecture notes on
requests can take advantage of the cache to reduce
LBS, v. 1.0.
latency.
[5] M. Hazas, C. Kray, H. Gellersen, H. Agbota, G. Kortuem,
6. Conclusion and A. Krohn. “A relative positioning system for co-located
mobile devices”, In Proceedings of MobiSys 2005, Seattle,
The goal of this paper is to develop a reactive ad USA, June 2005. pp.177-190.
hoc location system which decreases the
[6] A. Efrat, D. Forrester, A. Iyer, and S. G. Kobourov,
communication overhead between nodes by limiting
“Force-Directed Approaches to Sensor Localization”, 8th
the nodes that take part in positioning and by avoiding Workshop on Algorithm Engineering and Experiments
periodic broadcasts by nodes. Using local coordinate (ALENEX), 2006, pp. 108-118.
systems, each node can compute the coordinates of
their neighbors in their own local coordinate systems, [7] ns-2 simulator, http://www.isi.edu/nsnam/ns
and these coordinates can be transformed between the
local coordinate systems for nearby nodes. Based on [8] C. E. Perkins and E. M. Royer. Ad Hoc On Demand
these two basic procedures, our proposed scheme can Distance Vector (AODV) Routing. RFC3561, July 2003.
obtain the coordinate of a target node in the local
[9] Global Positioning System, “Global Positioning System”,
coordinate system of the requester node.
November 2006, http://www.gps.gov
The proposed scheme does not need beaconing, and
communication only occurs on a limited set of nodes.
Also, by computing the position only when it is
requested, it does not have to maintain a shared
coordinate system, which requires extensive
communication and computation between nodes. As a
result, the proposed scheme provides locations of
nodes with less communication overhead when only a
few nodes occasionally need the locations of a few
other nodes.
Currently, our scheme assumes that routing is
already done, but for the case where routes are not
known, integrating routing and positioning could be an
interesting way to further reduce overheads.
Developing a cross-layer scheme for localization is our
next step. Also, disconnections or node failures can be
common in a MANET environment, so the scheme
could be improved to make it robust for these cases.
We are working on a prototype implementation to
make our proposed scheme work in realistic settings.
7. References
[1] N. B. Priyantha and H. Balakrishnan and E. Demaine and
S. Teller “Anchor-Free Distributed Localization in Sensor
Networks”, Technical Report TR-892, MIT LCS, Apr. 2003.
51
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
53
proposed in [4], but was designed for electronic
payment instead of SSO identity proof. 4.1.1. Session Key Generation. Because
The USBID processor generates the user’s private public/private key pairs place strict length limitations
and public key when the account is created and is on the encrypted payload and require far more CPU
responsible for performing all operations that require effort than symmetric keys, they are only used at the
the use of identity factors, such as signing a message beginning of a session. Once it has been verified that
with the private key. This makes it unnecessary to both communicating parties know the private key
pass the user’s private key to the computer where it corresponding to their claimed identity, a symmetric
could be observed by a program designed to retrieve session key SK is created and used for the remainder
this information. of the communication. In the following protocol, C is
When a communication message needs to be the connecting system, R is the receiving system, and
signed during the authentication process, the client their public keys are KC and KR respectively.
software passes the message to the USBID processor.
The processor retrieves the encrypted private key 1. C • R: < nonceC, [KC] > KR
from memory and decrypts it with the password. Once 2. R • C: < nonceC XOR 00…0001, nonceR, SK >
the private key has been decrypted it is used to sign KC
the message, and the signed message is returned to the 3. C verifies that the first parameter in the above
client software on the user’s system. message is its nonce with the last bit flipped.
The USBID memory is standard flash memory. 4. C • R: < nonceR XOR 00…0001 > SK
However, unlike common flash drives, the USBID 5. R verifies that the parameter in the above
does not allow access to the memory through a message is its generated nonce with the last bit
computer file system. Only the USBID processor can flipped.
access this memory. 6. R • C: < “success” > SK
4.1. Setup Processes 4.1.4. Adding a User. User data collection and
generation takes place in the initialization functions
The first process in this section describes the steps when the user software is executed. This inputs and
necessary to generate a session key and set up a generates all data necessary to begin the user addition
secure symmetric-encryption connection. This session process.
key is generated at the beginning of every The user data is referred to as follows: UID is the
communication process between two existing unique user ID, UP is a hash of the username and
SeDSSO parties. Additionally, this section discusses password combined, KU/kU is the user’s public/private
the processes for adding new authentication servers, key combination, and INV is the account invalidation
service providers, and users. code.
54
The addition process begins after data collection 1. U • random auth. server A:
has taken place on the user’s computer. The user “AUTHENTICATE_USER”, 1, < UID, UP,
enters the username and password. UID is calculated nonce > SK.
by hashing the username and UP is calculated by 2. AuthSet = random set of t-1 authentications
hashing the username and password combination. A servers.
secure pseudorandom number and computing 3. ContactedSet = AuthSet + A.
environment data is used to seed the generator for KU, 4. A establishes a secure session key connection
kU and INV. with each server in AuthSet. Each connection
uses an independent SK.
1. U • random auth. server A: 5. A •x∀ •Ax ∈ •AuthSet:
“CREATE_USER”, 1, < UID, UP, KU, “AUTHENTICATION_CHECK”, 1, < UID,
hash(INV) > SK UP, nonce > SK.
2. A verifies that the UID is not already claimed 6. A examines the information it received from
by another user account. U.
3. A establishes a secure session key connection a. UID exists and UP is correct: add A’s
with all other authentication servers A1…An. response to the success set.
Each connection uses an independent SK. b. UID does not exist or incorrect UP: add
4. A • A1…An : “ADD_USER”, 1, < UID, UP, KU, A’s response to the failure set.
hash(INV) > SK 7. Servers in AuthSet decrypt and analyze the
5. A1…An decrypt and analyze the message. message and return one of the following
a. Invalid message: “ADD_USER”, 2, messages to A.
<“general_failure” > SK. a. Invalid message, UID not found, or UP
b. Username already exists: “ADD_USER”, incorrect:
2, <“uid_failure” > SK. “AUTHENTICATION_CHECK”, 2, <
c. Corrent message: save message, send “failure” > SK.
“ADD_USER”, 2, < “success” > SK to A. b. UID exists and UP correct:
6. A receives messages from A1…An and tallies “AUTHENTICATION_CHECK”, 2, < <
A their responses. UID, nonce > kpAS > SK.
a. “success” < t or “uid_failure” > 0: send 8. A receives all responses from the AuthSet
“ADD_USER”, 3, < “discard” > SK. servers and adds each to the successes or
b. “success” >= t: add user and send: failures response set.
“ADD_USER”, 3, < “add” > SK to A1…An. 9. If any responses are present in the failure set:
7. A1…An receive “ADD_USER”, 3 message a. A selects random server and adds to
from A and either add or discard the user. ContactedSet.
8. A sends a message to U describing the results b. A sends message from step 5 to the
of the user creation process. random server, receives response &
9. U receives the message from A and reports the updates response set.
status to the user. c. Repeat until successes >= t, time runs out,
or no more authentication servers can be
4.2. Authentication Processes contacted.
10. A analyze responses and send a message to U.
The processes for user authentication are defined in a. successs >= t: threshold combine t
this section. Authentication requires the user to responses, send:
communicate with the authentication service to obtain “AUTHENTICATE_USER”, 2, <
an identity voucher. This voucher must contain a fresh “success”, < UID, nonce > kAS > SK.
nonce that the service provider sent to the user and b. successes < t: send:
must be signed with the authentication service private “AUTHENTICATE_USER”, 2, <
key. Every authentication process between a user and “failure” > SK.
service provider relies on this voucher.
4.2.2. Initial User Sign-On to a Service Provider.
4.2.1.User Authentication Voucher Generation. The sign-on procedure describes the steps necessary
Before a user can access a service provider, that user for a SeDSSO user with an existing account to gain
must receive a message signed by the authentication access to a service provider. The following process
system that vouches for their identity. This message describes a user’s first access to a service provider.
contains the user ID and service provider ID, the
username/password hash, and a nonce created by the 1. U establishes a secure session key connection
service provider to eliminate the possibility of replay with S.
attacks. 2. U • S: “USER_SIGN_ON”, 1, < UID > SK.
3. S • U: “USER_SIGN_ON”, 2, < nonceS > SK.
55
4. U performs the authentication message request When max_depthUS successful logins have been
procedure using UID and nonceS. performed, depthUS equals max_depthUS and both U
a. Success: U receives the message < and S must generate new seedUS, depthUS and
“success”, < UID, nonceS > kAS > SK max_depthUS values. This is done by using the last
b. Failure: U receives the message < used counter value as the new seedUS, setting depthUS
“failure” > SK, aborts the sign-on back to 1, and calculating a new max_depthUS by
procedure, send to S: creating a number from the last 2 digits of seedUS and
“USER_SIGN_ON”, 3, < “failure” > SK. adding 1. U and S perform this counter update without
5. U • S: “USER_SIGN_ON”, 3, < “success”, < indicating in a message that the change is being
UID, nonceS > kAS > SK. performed.
6. S decrypts message with session key, then with
KAS, and analyzes the message. 5. SeDSSO Implementation
a. Invalid message, UID incorrect, nonceS !=
step 2 nonce, or if U has signed on to S A project simulating the operation of each
previously: end process and send SeDSSO component has been created to test the
“USER_SIGN_ON”, 4, < “failure” > SK to performance and correct operation of a working
U. SeDSSO system. The project is programmed in Java
7. S generates pseudo-random seedUS, depthUS = and compiled with the Java SE 6 platform, using the
1, and max_depthUS = two least significant ThreshSig library [5] created by Stephen Weis for
digits of seedUS + 1. threshold cryptography.
8. S • U: “USER_SIGN_ON”, 4, < “success”,
seedUS > SK. S grants an access session to U. 5.1.Test Environment and Simplifications
9. U stores seedUS and initializes depthUS and
max_depthUS as S did. The user is now granted Individual components of the SeDSSO simulation
a session to the service provider. were executed on separate 1GHz SPARC III Sun
Blade workstations running the Solaris 10 operating
4.2.3. Subsequent User Sign-On to a Service system with 1GB RAM on a 100 Mbps network.
Provider. The following procedure is performed While a simulation of each type of system was
when a user attempts to sign on to a service provider created for the test environment, several aspects were
that they have already successfully logged onto in the simplified. Each test was performed in isolation,
past. Since steps 1 through 4 in this process are making the tested operation the only SeDSSO
identical to the initial sign-on process, they are operation being performed at that time. Also, as
omitted from the following protocol definition. noted before, the USBID has only been functionally
specified and is therefore simulated in software.
5. U generates the next counter value counterUS.
6. U • S: “USER_SIGN_ON”, 3, < “success”, < 5.2. Test Results
UID, nonceS > kAS, counterUS > SK.
7. S decrypts the message with SK, then with KAS, The following test results were calculated by
and analyzes the message. averaging the results of 50 individual tests. Prior to
a. Invalid message, UID incorrect, nonceS != the measurements, the tested operation was run once
step 2 nonce, or if the user has never to make sure that the Java virtual machine had
signed on to S: end process and send performed all of the necessary compilations.
“USER_SIGN_ON”, 4, < “failure” > SK to
U. 5.2.1. User Account Creation. Figure 1 presents the
8. S calculates counterUS. time that it takes to create a SeDSSO user account.
a. Counters match: send The minimum number of servers required to use the
“USER_SIGN_ON”, 4, < “success” > SK to authentication system private key was set to 2 (t = 2).
U. S grants an access session to U and When all authentication servers are available the
increments depthUS by 1. average account creation time is .6842 seconds and
b. Counters don’t match: send with only two servers working that time decreased to
“USER_SIGN_ON”, 4, < “failure” > SK to .6173 seconds.
U. S does not grant access to U and does User account creation tests were also run on a
SeDSSO system with n = 9 and t = 5, and
not increment depthUS.
authentication service sets of 9, 7, and 5 working
9. U receives the message from S and decrypts servers were tested. With all servers working the
the contents with the session key. average completion time is .7139 seconds, decreasing
a. success: U increments depthUS by 1. to .6815 seconds when 7 servers are available and
b. failure: error reported to the user, depthUS further decreasing to .6766 seconds with 5 servers
not incremented. functioning.
56
If less than n authentication servers are running time increases to 2.3167 seconds, and 5 servers raises
then unavailability is encountered at two points in the the sign-on time to 2.4883 seconds.
account creation process. When the user randomly
selects an initial authentication server to contact there
is a chance that an unavailable server will be
contacted. One or more additional random attempts
will be necessary to find an authentication server that
is available. Once a connection with a working
authentication server has been established, that
authentication server will encounter the unavailable
server or servers as it attempts to connect to all other
authentication servers.
5.2.2. User Sign-On. The times measured for user 5.3. Security Analysis
sign-on tests with n = 3 and t = 2 are shown in figure
2. Three available authentication servers yield an In the past, SSO systems have experienced
average sign-on time of 1.7438 seconds. If one of the vulnerabilities to two major security attacks. A man-
servers is disabled the time rises to 2.0891 seconds. in-the-middle attack occurs when an eavesdropper
User sign-on was also tested with n = 9, t = 5, and intercepts messages between two parties to change
9, 7, and 5 authentication servers available. When all them without either party knowing that such an attack
servers are available the average sign-on time is has taken place. Given the distributed flow of internet
1.8328 seconds. With only 7 servers available the
57
traffic, it is possible for an eavesdropper with access implementing a two-factor authentication scheme
to a routing device to observe raw communication consisting of a username/password combination and
messages in any protocol. These attacks have taken the USBID.
place on systems with various security protocols, A protocol describing the interaction between
including some that rely on public-key cryptography. SeDSSO users, service providers, and the
SeDSSO is immune to man-in-the-middle attacks. authentication service has been developed. Our
In order for a man-in-the-middle attack to work simulation implements every function of this protocol
against SeDSSO’s public-key authentication system, and yields consistently correct operations with
the eavesdropper needs to replace the real key pairs favorable performance measurements. The simulation
with counterfeit key pairs and assume that the also demonstrates the advantages of distributed
communicating systems will still operate given these authentication. Even with t–1 authentication servers
replacements. The public keys belonging to disabled (almost half of the authentication service),
individual SeDSSO authentication servers and the all functions are still available and in most cases the
public key for the entire authentication service are system suffers only a minor performance penalty.
widely distributed, and a root certificate authority As more people use more Internet sites, they need
vouches for their authenticity. The public key for the a way to replace many identities with one easy-to-use
certificate authority can be embedded directly in the highly secure entity that can be used anywhere
USBID as well as service provider software so that without fear of identity theft. SeDSSO was designed
user and service provider systems can make sure that to fulfill this need, and initial tests show the potential
an authentication public key is correct. of our solution. However, more work must be done to
Trojan horse attacks are more subversive because test SeDSSO in an environment that realistically
they take direct control of the user’s system. The simulates the stress that a high-volume Internet
Trojan program runs in the background and waits authentication service would need to endure.
until a connection has been established. It then sends
requests over this connection to perform malicious 7. References
activities with the user’s identity. The communication
protocol and server architecture of an authentication [1] RSA Security, “The 2nd Annual RSA Security
system would be unable to prevent this, no matter Password Management Survey,” August 2006.
how secure it is. Protection must be implemented [2] DigitalPersona, Inc., “Solving the Weakest Link:
directly in the client-side software or hardware. Password Security”,
Although a simulation of SeDSSO has been http://www.digitalpersona.com/resources/downloads/
programmed, the full client software is not yet Weakest_Link_wp_0205.pdf.
developed. Consequently, testing to gauge SeDSSO’s [3] L. Zhou, F. Schneider, and R. van Renesse, “COCA:
Trojan attack resistance cannot be performed at this A Secure Distributed On-line Certification Authority,”
ACM Transactions on Computer Systems 20, 4, pp.
time. 329—368, November 2002.
Several security approaches may allow SeDSSO [4] M. Ghosh and S. Makki, “A Secure Framework for
and other two-factor authentication schemes to Electronic Payment System,” Proceedings of the
effectively resist Trojan attacks. Client software that International Conference on Internet Computing, Las
makes it impossible for a SeDSSO connection to be Vegas, Nevada, USA, June 21-24, 2004.
established without forced user interaction could alert [5] ThreshSig: Java Threshold Signature Package, created
user to a Trojan operating in the background, but it is by Stephen A. Weis, http://threshsig.sourceforge.net/.
difficult to guarantee that this interaction cannot be [6] S. Schoen, “Trusted Computing – Promise and Risk”,
bypassed in some way. The new initiative known as Electronic Frontier Foundation (EFF) site,
trusted computing may also be able to defend against www.eff.org/Infrastructure/trusted_computing/200310
01_tc.pdf.
these attacks by limiting the ability of other programs
to interact with the user’s session. However, at this [7] W. Josephson, E. Sirer, and F. Schneider, “Peer-to-
Peer Authentication with a Distributed Single Sign-On
time the future of trusted computing is unclear and rd
Service,” 3 Int. Workshop on Peer-to-Peer Systems
the potential advantages and disadvantages are still (IPTPS’04), San Diego, USA, February 2004.
being discussed [6]. [8] T. Chen, B. Zhu, S. Li, X. Cheng, “ThresPassport - A
Distributed Single Sign-On Service,” International
6. Conclusion Conference on Intelligent Computing (ICIC) 2005,
Hefei, China, August 2005.
In this paper we presented SeDSSO, a secure and
fail-safe Internet authentication SSO architecture.
Threshold encryption and a distributed authentication
service allow SeDSSO to eliminate authentication as
a central point of failure. Although the existing single
sign-on systems CorSSO and ThresPassport rely on
distributed authentication with threshold encryption,
SeDSSO improves on their security and usability by
58
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract—Proxy signatures have been extensively used to solve check the validity of the proxy signature as well as delegator’s
authentication issues in mobile agent applications and autho- agreement on the signed message.
rization problems in distributed systems. However, conventional The process of proxy delegation has been classified into
proxy signatures use traditional public key cryptosystems and are
quite heavyweight. Thus, a direct application of these traditional three broad categories, namely, full delegation, partial delega-
signatures face significant performance challenges when applied tion and delegation-by-warrant or certificate. Full delegation
to resource constrained ubiquitous computing environments. In is a rather intuitive solution in which the delegator securely
this paper, we introduce the use of an efficient cryptographic transfers its secret key to the proxy. This requires absolute
primitive from linear feedback shift register (LFSR) sequences trust on the proxy, a secure channel and provides unrestricted
to build lightweight proxy signatures, suitable for resource con-
strained devices. We present a novel third-order LFSR sequence- signing rights to proxy. In a partial delegation scheme, the
based, 2-party signature scheme, SCLFSR, following a well- delegator also uses a secure channel to transfer a delegation
known Schnorr signature scheme. Using SCLFSR, we construct key derived from its secret key to the proxy. The proxy
an efficient proxy signature, PCLFSR, which can serve as a then derives its proxy signing key pair from the delegation
protocol building block for performance sensitive ubiquitous key. However, the proxy still maintains unrestricted signing
computing applications. The scheme, PCLFSR, is also the first
construction of a proxy signature using primitives from LFSR capabilities. The need for a secure channel and absolute trust
sequences. We perform extensive theoretical analysis including on the proxy are impractical restrictions, and are eliminated
correctness and security of PCLFSR and also present a perfor- in the delegation-by-warrant scheme: the delegator generates
mance (computation and communication costs, storage overhead) a warrant and a signature on the warrant, called a certificate,
comparison of the proposed scheme with well-known traditional and sends the (warrant, certificate) pair to the proxy. The proxy
constructions.
Index Terms—Proxy signature, mobile agents, ubiquitous sys- generates signatures—using its own private key—on messages
tems, Schnorr signature, provable security, LFSR sequence, cubic conforming to the warrant, and includes the (warrant, certifi-
LFSR-based cryptosystems. cate) pair in the resulting signatures.
107
The polynomial f (x) is called the characteristic polynomial IV. T HE P ROPOSED P ROXY S IGNATURE S CHEME U SING
of the sequence {sk } if, given a root α of f (x), for all k ≥ LFSR S EQUENCES
2
0, we have sk = αk + αkq + αkq , where α ∈ Fq3 . The In this section, we present a novel third-order linear feed-
sequence {sk } is called the third-order characteristic sequence back shift register (LFSR) sequence-based, 2-party signature
generated by f (x) (or by α). The initial state (kth state denoted scheme, SCLFSR. Using SCLFSR we construct an efficient
as s̄k = {sk , sk+1 , sk+2 }) of the characteristic sequence of proxy signature PCLFSR which can serve as a protocol
f (x) is given by s̄0 = {3, a, a2 − 2b} [19]. building block for secure ubiquitous computing applications.
Recently, two PKCs, namely, GH-PKC [3] and XTR-
A. Basic Idea
PKC [4] were proposed based on cubic LFSR sequences [25].
In cubic LFSR-based PKCs [3], [4], elements in Fq3 are rep- A proxy signature scheme is divided into five phases,
resented by their corresponding minimal polynomials whose namely, initialization, key generation, proxy delegation, proxy
coefficients are chosen from Fq . However, the security of cubic signature generation and proxy signature verification. During
LFSR-based PKCs is based on the difficulty of solving the the initialization phase, all entities choose and agree upon
discrete logarithm problem in Fq3 . This leads to substantial common system public parameters. During the key generation
savings, both in communication and computational overhead, phase all entities generate their (public, private) key pairs.
for a desired security level. In particular, 170-bits of XTR- An entity (the delegator) wanting to delegate signing rights
PKC gives security equivalent to 1024-bits of cryptosystems to another entity (the proxy), does the following:
using traditional representation of finite fields [4]. The XTR 1) Creates an appropriate warrant. The delegator and the
cryptosystem is constructed by choosing: proxy agree upon warrant specifications by out of band
mechanisms, perhaps using and abiding by formal busi-
1) p, a large prime of the order of 170 bits. Set q = p2 .
ness policies. The warrant specifies the proxy’s signing
2) Q, a large prime factor of p2 − p + 1 of the order of 160 rights and (possibly) identifies the delegator and the
bits. proxy.
3) Characteristic polynomial f (x) = x3 − ax2 + ap x − 1 2) Generates a signature on the hash of warrant. In the
with period Q by randomly choosing a ∈ Fq and using proposed proxy signature scheme, we use a Schnorr-
standard irreducibility testing algorithms. like [1] signing equation. The delegator’s signature on
Let fk (x) denote the minimal polynomial of αk where α ∈ the warrant prevents misuse of signing rights by corrup-
Fq3 is a root of f (x). It can be shown that the polynomial tion of the warrant by a malicious delegator, proxy or
fk (x) can be represented as [3], [4], [19]: fk (x) = x3 − any adversary.
sk x2 + spk x − 1 in the XTR-PKC. Thus, the polynomial fk 3) Sends the (warrant, signature) pair to the proxy. Our
(we drop the indeterminate x for simplicity of notation) can scheme does not require a secure channel between
be represented by sk ∈ Fq in XTR. The sequence terms are delegator and proxy (a restriction faced by several other
computed using the following two sequence operations [18]: schemes [16]).
OP1 : Given an integer k and fe , compute the (ke)th state After receiving the (warrant, signature) pair, the proxy checks
of the LFSR, s̄ke ; the warrant specifications. If the warrant is bogus, the proxy
OP2 : Given s̄k and s̄e (both integers k, e can be unknown), aborts; otherwise, it verifies the delegator’s signature on the
compute the (k + e)th state of the LFSR, s̄k+e . warrant. If verification is successful, the proxy generates
its proxy signing key using its own long-term private key
These sequence operations have been efficiently implemented and delegator’s signature on the warrant, and computes the
in hardware [26]. We use the sequence operations to cre- corresponding proxy verification key. In our scheme, the proxy
ate/manipulate sequence terms in the proposed multisignature signing key is computed as a solution to a Schnorr-like
scheme. signing equation involving the delegator’s signature, warrant,
In cubic LFSR-based PKCs, an entity randomly chooses and proxy’s long-term private key (cf. Section IV-C). The
a long-term private key SK = x in Z∗Q and computes the Schnorr-like equation is designed to allow implicit verification
long-term public key PK = s̄x = {sx , sx+1 , sx+2 } using of the proxy’s ownership of the verification key (guarantees
the sequence operation OP1 (x, f ). Algorithms for sequence strong identifiability) and, simultaneously, allow verification of
term computations use the following commutative law [3] for the delegator’s signature on the warrant. This completes the
characteristic sequences: for all integers r and e, the rth term of proxy delegation phase.
the characteristic sequence generated by the polynomial fe (x) The proxy uses the proxy signing key to generate a signature
th
equals the (re) term of the characteristic sequence generated on a message, on behalf of the delegator. The proxy tags the
by the polynomial f (x), i.e., sr (fe ) = sre (f ) = se (fr ). signature along with the delegator’s signature—our scheme
We construct our proxy signature scheme using the XTR- requires only the ephemeral public key of the delegator to
PKC for simplicity, although the proposed scheme can be be included in the proxy signature—warrant and message to
seamlessly built using the GH-PKC and also extended to collectively generate the proxy signature.
PKCs based on higher order LFSR sequences, with minor Any entity that wants to verify the proxy signature does the
modifications. following:
108
1) Checks whether the message conforms to the warrant. LFSR sequences. Let an entity D act as the delegator, wanting
If not, the proxy aborts. to delegate signing rights to another entity P, the proxy.
2) Computes the proxy verification key using the warrant, The proposed proxy signature scheme, PCLFSR, consists
delegator’s signature and the long term public keys of five phases, namely, initialization, key generation, proxy
of proxy and delegator. This step implicitly identifies delegation, proxy signature generation and proxy signature
the proxy and simultaneously verifies the delegator’s verification. The phases are executed as follows:
attestation on the warrant (guarantees verifiability). 1) Initialization (PCLFSR.Init).: Similar to the SCLFSR
3) Checks that the proxy indeed stamped the message with scheme, during the initialization phase, all entities choose
the proxy signing key, by verifying the proxy’s signature and agree on the system public parameters, params =
on the message (contained in the proxy signature) under p, Q, f (x), H.
the proxy verification key computed in the previous step. 2) Key Generation (PCLFSR.KeyGen).: During the key gen-
If verification fails, the verifier aborts. eration phase, the delegator D and the proxy P generate
Subsequent verification of proxy signatures, exchanged by the their long-term (private, public) key pairs, (x, X = s̄x )
same (proxy, verifier) pair, gets more efficient: the verifier and (y, Y = s̄y ), respectively, following the key generation
computes the proxy verification key only once per delegation. algorithm of the underlying PKC as described in Section III.
Next, we present a novel 2-party signature construction 3) Proxy Delegation.: During the proxy delegation phase,
using primitives from cubic LFSR sequences. D interacts with P to delegate its signing rights to P. D
restricts the signing capabilities of P by specifying a warrant
B. Two Party Signature Scheme Using LFSR Sequences
(an agreement between D and P) to which all messages that
The cubic LFRS-based signature scheme, SCLFSR, is built P signs must conform.
using Schnorr-like [1] signing equation.
The scheme SCLFSR consists of four phases: initialization, PCLFSR.Delegate: The delegator D delegates a proxy P as
key generation, signature generation and signature verification. follows:
Entities S and V participate in the SCLFSR scheme, where 1) Generate a warrant w that specifies restrictions on the
S is the signer and V is the verifier. During the initialization messages the proxy signer is allowed to sign and the
phase, both S and V choose and agree on the system public identities of delegator and proxy.
parameters: params = p, Q, f (x), H, where p, Q and f (x) 2) Compute a signature σ = t, fk , using private key
are as described in the previous section and H : {0, 1}∗ × x, on the warrant w following the signature generation
Z∗Q → Z∗Q is a cryptographic hash function. procedure of SCLFSR.
In the key generation phase, the signer S randomly chooses 3) Send signature, σ = t, fk and warrant, w to P.
a long-term private key SK = x in Z∗Q and computes the
long term public key PK = s̄x = {sx , sx+1 , sx+2 } ←
PCLFSR.Accept: After receiving the delegation parameters
OP1 (x, f (x)). Fig. 1 describes the signing and verification
from D, the proxy P performs the following operations:
procedures of SCLFSR
1) Check whether warrant w conforms to the agreement
Signature Generation Signature Verification with D. If check fails, abort.
2) Verify D’s signature σ = t, fk on warrant w, under
1) Randomly choose ephemeral 1) Compute A = f(t) ←
private key k ∈R Z∗Q and OP1 (t, f ). public key X, following the signature verification pro-
compute ephemeral public key 2) Compute cedure of SCLFSR. If verification fails, abort.
fk ← OP1 (k, f ). Denote r = B `= f(k+xh) ← ´ 3) Compute proxy signing key xP as: xP ≡ t+yh mod Q.
sk mod Q as an integer. OP2 fk , OP1 (h, s̄x ) .
2) Compute hash of message h = 3) Accept the signature if
Compute the corresponding proxy verification key as
H(m, r); Solve for t in the A = B, else reject the XP = s̄xP ← OP1 (x, f ).
following equation: t ≡ k + xh signature.
mod Q. ` ´
4) Proxy Signature Generation (PCLFSR.PSigGen).: Dur-
3) Send the signature σ = fk , t ing the proxy signature generation phase, the proxy P uses
and the message m to entity V . its proxy signing key xP to generate signatures on behalf of
D on messages that comply to the agreement between D and
P. Given a message m, P generates a proxy signature σP as
Fig. 1. The SCLFSR Signature Scheme.
follows:
Next, we present the proposed proxy signature scheme that 1) Check whether the message m conforms to restrictions
uses the above algorithm as a building block. specified in the warrant w. If check fails, abort.
2) Compute a signature tP , fkP using proxy signing key
C. The Proposed Proxy Signature Scheme PCLFSR xP on the message m following the signature generation
The proposed proxy signature scheme, PCLFSR is a cubic procedure of SCLFSR.
LFSR-based transformation of the Schnorr-based proxy signa- 3) The proxy signature σP is the tuple tP , fkP , w, m, fk .
ture scheme proposed by Kim et al. [8] using primitives from Send σP to verifier V.
109
5) Proxy Signature Verification (PCLFSR.PSigVer).: Given congruence tP ≡ kP + xP hP mod Q (established by the
a proxy signature σP , V can verify the delegation agreement, signing equation) we know,
identify the proxy and verify the proxy’s signature on message
A = ftP = f(kP +xP hP ) = B
m conforming to warrant w as follows:
1) Check whether the message m conforms to warrant This concludes our proof.
specifications w. If check fails, abort.
B. Security Analysis
2) Compute h = H(w, r). Compute the proxy
verification key as XP = s̄h(x+y)+k ← The security of the proposed proxy signature scheme
PCLFSR is based on the difficulty of solving the discrete
OP2 fk , OP1 h, OP2 (X, Y ) .
logarithm (DL) problem in Fq3 or based on the difficulty of
Note: this step is done only once per delegation for all solving the trace discrete logarithm (Tr-DL) problem in Fq [3],
signatures exchanged between the same (proxy, verifier) [4], [18], [19]. Informally, the trace function T r : Fq3 → Fq
pair. 2
is given as T r(α) = α + αq + αq . The Tr-DL problem and
3) Verify P’s signature (generated on behalf of D) tP , fkP
assumption can be defined as follows:
on message m, under proxy verification key XP , follow-
ing the signature verification procedure of SCLFSR. If Definition 1: Let α be a generator of the multiplicative
verification fails, abort. group (Fq3 )∗ , where q is a large prime or a power of a large
In the following section, we analyze the correctness and prime. The Tr-DL Problem in Fq can be defined as follows:
security of the proposed cubic LFSR-based proxy signature Given (q, α ∈ (Fq3 )∗ , β ∈ Fq ), find an index k such that
scheme and compare its performance with well-known con- β = T r(αk ) or determine that there is no such index.
struction of proxy signatures. Let A be a probabilistic polynomial time (PPT) algorithm
that runs in time t and solves the Tr-DL problem with
V. T HEORETICAL A NALYSIS probability at least . Define the advantage of the (t, ) Tr-
We present a detailed theoretical analysis of correctness, DL solver A as: AdvTArDL = P r[A(q, α, β) = k | α ∈R
security and performance of the proposed cubic LFSR-based Fq3 , k ∈R ZQ , β = T r(αk )]. The probability is over the
proxy signature scheme. random choices of α, k and the random bits of A.
Tr-DL Assumption: The finite field Fq satisfies the Tr-DL
A. Correctness Assumption if AdvTArDL (λ) is a negligible function.
A cubic LFSR-based proxy signature scheme constructed Lemma 1 (Giuliani et al. [19]): The Tr-DL Problem is
following the procedures in Section IV-C is correct if an equivalent to the DL problem.
arbitrary proxy signature, σP = tP , fkP , w, m, fk , generated We prove that the SCLFSR scheme is provably secure in the
by a proxy P on behalf of D, passes the proxy signature random oracle model (ROM) [27] under the DL assumption
verification procedure PCLFSR.PSigVer, using the long term by showing the equivalence of the 2-party scheme SCLFSR
public keys of D and P, and proxy verification key of P with the Schnorr signature scheme [1] and using the fact that
provided: (1) All entities choose and agree upon the system the DL problem reduces to forging a Schnorr signature [28].
public parameters params = p, Q, f (x); (2) D and P A total break of SCLFSR occurs if an adversary manages to
honestly execute key generation algorithm PCLFSR.KeyGen to do the following: given the public key s̄x of any entity E, the
generate their key pairs (x, X) and (y, Y ), respectively; (3) D adversary is able to compute the corresponding private key x.
honestly executes the delegation algorithm CLFSR.Delegate In such a case, any entity’s signature can be forged. However
to create a (warrant, signature) pair (w, σ), and (4) P honestly given s̄x , finding x is equivalent to solving the DL problem in
executes the acceptance algorithm CLFSR.Accept to compute the extension field Fq3 [18]. Using the following lemma we
the proxy (signing, verification) key pair (xP , XP ). show that, assuming a total break has not occurred, the 2-party
Proposition 1: The proposed cubic LFSR-based proxy sig- scheme SCLFSR is provably secure in the ROM under the DL
nature scheme, PCLFSR, follows the correctness property. assumption.
Proof Sketch: We first show that during verification of Lemma 2: The 2-party signature scheme SCLFSR is equiv-
a proxy signature, σP = tP , fkP , w, m, fk on message m the alent to the well-known Schnorr [1] signature scheme.
verification key computed by V as XP = s̄h(x+y)+k , where Proof Sketch: Recall that the signing equation in the
h = H(w, r), equals the proxy verification key computed by Schnorr [1] scheme is: t ≡ k − xh mod Q, where p (1024-
P during proxy delegation as follows: bits) and Q (160-bits) are two large primes with Q|(p − 1),
α ∈ Z∗p is a generator of the cyclic subgroup of order Q,
XP = s̄xP = s̄t+yh = s̄k+xh+yh = s̄h(x+y)+k
h = H(m, r) is the hash of the message, t is the signature on
What remains to be shown is that the signature tP , fkP on h, x ∈R Z∗Q is the private key, αx is the public key, k ∈R Z∗Q
hP = H(m, rP ), where kP is the ephemeral private key chosen is the ephemeral private key and r = αk is the ephemeral
by P during signature generation and rP = skP mod Q public key.
denoted as an integer, passes the verification under the proxy [=⇒] Given a valid SCLFSR signature σ = fk , t on
verification key XP . This is straightforward, since given the hashed message h = H(m, r) under the public key s̄x , we
110
know that ft = f(x+kh) . Let α ∈ Fq3 be a root of the proxy signature in a Boldyreva-type (transformed) PCLFSR
characteristic polynomial f (x). By the definition of fk (x) (cf. scheme in the ROM.
2
Section III), the roots of ft) are αt , αtq , αtq ∈ Fq3 , the roots Proof Sketch: The proof follows from Lemmas 3 and 4.
2
of f(x+kh) are α(x+kh) , α(x+kh)q , α(x+kh)q ∈ Fq3 . Also, we
know from the signing equation of SCLFSR that t ≡ x + kh Next, we present a detailed performance comparison of the
mod Q. Thus, the root αt of ft is equivalent to the root proposed proxy signature scheme PCLFSR with some well-
α(x+kh) of f(x+kh) in Fq . We now have αt = α(x+kh) with known constructions of proxy signatures.
t ≡ x + kh mod Q, which is the Schnorr scheme. Thus, the
C. Performance Analysis
SCLFSR reduces to the Schnorr scheme.
[⇐=] Given a valid Schnorr signature t = r, t on hashed Table I shows direct comparisons of the proposed proxy
message h = H(m, r) under the public key αx , we know that signature scheme, PCLFSR, with those developed by Mambo
2 2
αt = α(x+kh) . Also, αtq = α(x+kh)q and αtq = α(x+kh)q et al. (MUO) [6], Kim et al. (KPW) [8], Lee et al. (LKK) [14],
2 Petersen et al. (PH) [7], Huang et al. (HSMW) [30] and Zhang
where, q = p and p is a 170-bit prime. We know:
et al. (ZNS) [17]. The scheme by Boldyreva et al. [15] is a
ft = T r(αt ) provable secure variant of the KPW scheme and both schemes
2
= αt + αtq + αtq have the same performance. For the sake of uniformity in
f(x+kh) = T r(α(x+kh) ) comparison, we consider a security benchmark of 1024 bits
2 — the system public parameters of MUO, KPW, LKK, and PH
= α(x+kh) + α(x+kh)q + α(x+kh)q are given by the tuple params = p, q, α, where p and q are
Thus, ft = f(x+kh) with t ≡ x + kh mod Q, which is 1024 and 160 bit primes, respectively, and α is an element of
the SCLFSR scheme. Thus, the Schnorr scheme reduces to order q in Z∗p .
SCLFSR scheme. Note that given α ∈ Fp6 , where p is a 170-bit prime, com-
Hence, the equivalence. puting αk for any integer k requires approximately 23.4 log2 Q
Lemma 3: The 2-party signature scheme SCLFSR is prov- multiplications in Fp , where Q, the order of α, is a 160-
ably secure in the ROM under the DL assumption. bit prime [4]. However, computing the kth sequence term
sk = T r(αk ) given f (represented by T r(α)) using sequence
Proof Sketch: We know that the well-known DL problem
operation OP1 takes only 8 log2 (k mod Q) multiplications in
reduces to forging a Schnorr signature [28]. The rest of the
Fp which is approximately three times faster than computing
proof follows from Lemma 2.
αk , given α [4]. Thus, the computational cost for one OP1
Our proxy signature scheme is a transformation of the proxy
operation in the proposed PCLFSR scheme is roughly equiva-
signature scheme by Kim et al. [8] using primitives from cubic
lent to 0.33 modular exponentiations in the MUO, KPW, LKK
LFSR sequences. Boldyreva et al. [15] presented a provably
and PH schemes. Furthermore, these LFSR-based sequence
secure variant of Kim et al.’s scheme [8]. Boldyreva et al.
operations have been efficiently implemented in hardware [26],
showed that the forging a proxy signature in their transformed
[31]. The HSMW and ZNS schemes use considerably more ex-
scheme reduces to forging a Schnorr signature in the ROM.
pensive bilinear pairing operations in the delegation and proxy
The proposed scheme PCLFSR can also be transformed into
signature verification phases. To the best of our knowledge, the
a provably secure proxy signature scheme in the ROM by
best known result for computing a single Tate pairing equals
directly applying the modifications as proposed by Boldyreva
approximately 11110 multiplications in Fq , where q is a 171-
et al. [15].
bit prime (for security benchmark of 1024-bits) [32].
Lemma 4: Forging a proxy signature in a Boldyreva-type
For schemes, MUO, KPW, LKK and PH, the size of the
(transformed) PCLFSR scheme, reduces to forging a signature
long-term public key, excluding shared components (primes p
in the 2-party scheme SCLFSR in the ROM under the DL
and q) equals 2048 bits. The pairing-based schemes, HSMW
assumption.
and ZNS, use public keys of size 1532-bits. The proposed
Proof Sketch: The proposed scheme PCLFSR can be
scheme, PCLFSR, achieves the least storage overhead: the size
directly transformed following the modifications as proposed
of the long term public key and hash key combined equals
by Boldyreva et al. [15]. All notations being the same, the two
1020 bits.
modifications to PCLFSR are as follows [15]:
• The warrant w is hashed as h = G(0||X||Y ||w, r), where VI. C ONCLUSIONS
G : {0, 1}∗ × Z∗Q → Z∗Q is a cryptographic hash function The problem of authenticating mobile agents and other
associated with D. resource constrained devices in the realm of ubiquitous com-
• The message m is hashed as hP = puting is inherently more complex than in conventional envi-
H(0||M ||X||Y ||w||r, rP ), where H : {0, 1}∗×Z∗Q → Z∗Q ronments. The use of conventional cryptography is expensive
is a cryptographic hash function associated with P. and does not offer attractive solutions.
The remainder of the proof follows the proof by Boldyreva We presented the first LFSR-based proxy signature scheme
et al. [15] and is omitted due to space constraints. to solve the authentication problem in systems where no-
Theorem 1: The discrete log problem reduces to forging a madic agents need to search for special services or products
111
MUO KPW LKK PH HSMW ZNS PCLFSR
Delegation 3e 4e 4e 4e 3s + 2p 2s + 2p 4OP1
Proxy signature generation 1e 1e 1e 1e 5s 2s 1OP1
Proxy signature verification 5e 3e (2e)† 3e 3e 5p 1s + 2p 3OP1 (2OP1 )†
Public key size (bits) 2048 1532‡ 1532 1020
Proxy signature size (bits) 480 160 840
Secure Channel Y N Y N N N N
TABLE I
P ERFORMANCE C OMPARISON WITH SECURITY BENCHMARK OF 1024- BITS . e: MODULAR EXPONENTIATION , s: SCALAR MULTIPLICATIONS , p: PAIRING
COMPUTATION ; 1OP1 ≈ 0.33e; †: SUBSEQUENT VERIFICATION OF PROXY SIGNATURES , BETWEEN ANY PAIR OF PROXY AND VERIFIER , ‡: SYSTEM
PARAMETERS REQUIRE UPTO 10KB OF ADDITIONAL STORAGE [29]
across networks. LFSR-based public key cryptosystems use [10] A. K. Awasthi and S. Lal, “Proxy blind signature scheme,” Transactions
reduced representations of finite field elements. This leads to on Cryptology., vol. 2, no. 1, pp. 5–1, 2005.
[11] S. Lal and A. K. Awasthi, “A scheme for obtaining a warrant message
substantial savings, both in communication and computational from the digital proxy signatures.” Cryptology ePrint Archive, Report
overhead, for a desired security level. Our proxy signature 2003/073, 2003, http://eprint.iacr.org/2003/073.
scheme is constructed using a cubic LFSR-based, Schnorr- [12] T. Okamoto, M. Tada, and E. Okamoto, “Extended proxy signatures for
smart cards.” in Proceedings of ISW, Second International Workshop on
type 2-party signature scheme, and uses comparatively fast Information Security, ser. LNCS, M. Mambo and Y. Zheng, Eds., vol.
LFSR operations to achieve the best computational efficiency 1729. Springer, 1999, pp. 247–258.
and least storage overhead among the existing protocols. The [13] H.-M. Sun and B.-T. Hsieh, “Remarks on two nonrepudiable proxy
signature schemes,” in Proceedings of 9th National Conference on
scheme is provably secure in the random oracle model under Information Security, 1999, pp. 241–246.
the discrete logarithm assumption. [14] B. Lee, H. Kim, and K. Kim, “Strong proxy signature and its ap-
Although the proposed schemes are instantiated using XTR- plication,” in Proceedings of SCIS, Symposium on Cryptography and
Information Security Osio, Japan, vol. 2/2, 2001, pp. 603–608.
PKC for simplicity, they can be seamlessly built using the [15] A. Boldyreva, A. Palacio, and B. Warinschi, “Secure proxy signature
GH-PKC and also extended to PKCs based on higher order schemes for delegation of signing rights,” Cryptology ePrint Archive,
LFSR sequences, with minor modifications, depending on the Report 2003/096, 2003, http://eprint.iacr.org/2003/096.
[16] J.-Y. Lee, J. H. Cheon, and S. Kim, “An analysis of proxy signatures: Is a
desired security level. secure channel necessary?” in Proceedings of CT-RSA, Cryptographers’
We believe that our results have not complete solved the Track at the RSA Conference, ser. LNCS, M. Joye, Ed., vol. 2612.
hard problem of authentication in ubiquitous systems, but Springer, 2003, pp. 68–79.
[17] F. Zhang, R. Safavi-Naini, and W. Susilo, “An efficient signature scheme
our on-going work involving LFSR-sequence based proxy from bilinear pairings and its applications.” in Proceedings of PKC,
signatures have significant potential to form crucial building 7th International Workshop on Theory and Practice in Public Key
blocks for securing performance sensitive ubiquitous systems. Cryptography, ser. LNCS, F. Bao, R. H. Deng, and J. Zhou, Eds., vol.
2947. Springer, 2004, pp. 277–290.
R EFERENCES [18] G. Gong, L. Harn, and H. Wu, “The GH public-key cryptosystem,” in
Proceedings of SAC, Eighth Annual International Workshop on Selected
[1] C.-P. Schnorr, “Efficient signature generation by smart cards.” Journal Areas in Cryptography, Revised Papers, ser. LNCS, S. Vaudenay and
of Cryptology, vol. 4, no. 3, pp. 161–174, 1991. A. M. Youssef, Eds., vol. 2259. Springer, 2001, pp. 284–300.
[2] FIPS, “Digital signature standard (DSS),” National Institute for Stan- [19] K. J. Giuliani and G. Gong, “New LFSR-based cryptosystems and
dards and Technology, pp. ii + 74, January 2000. the trace discrete log problem (trace-DLP),” in Proceedings of SETA,
[3] G. Gong and L. Harn, “Public-key cryptosystems based on cubic finite Third International Conference on Sequences and Their Applications,
field extensions,” IEEE Transactions on Information Theory, vol. 45, ser. LNCS, T. Helleseth, D. V. Sarwate, H.-Y. Song, and K. Yang, Eds.,
no. 7, pp. 2601–2605, 1999. vol. 3486. Springer, 2004, pp. 298–312.
[4] A. K. Lenstra and E. R. Verheul, “The XTR Public Key System,” in [20] S. Chakrabarti, S. Chandrasekhar, M. Singhal, and K. L. Calvert,
Proceedings of CRYPTO, Twentieth Annual International Cryptology “Authenticating DSR using a novel multisignature scheme based on
Conference, ser. LNCS, M. Bellare, Ed., vol. 1880. Springer, 2000, cubic LFSR sequences,” in Proceedings of ESAS, The Fourth European
pp. 1–19. Workshop on Security and Privacy in Ad hoc and Sensor Networks,
[5] H. Niederreiter, “A public-key cryptosystem based on shift register ser. LNCS, F. Stajano, C. Meadows, and S. Capkun, Eds., vol. 4572.
sequences,” in Proceedings of EUROCRYPT, Workshop on the Theory Springer, 2007, pp. 156–171.
and Application of Cryptographic Techniques, ser. LNCS, F. Pichler, [21] ——, “Authenticating feedback in multicast applications using a novel
Ed., vol. 219. Springer, 1986, pp. 35–39. multisignature scheme based on cubic LFSR sequences,” AINAW, 21st
[6] M. Mambo, K. Usuda, and E. Okamoto, “Proxy signatures for delegating International Conference on Advanced Information Networking and
signing operation.” in Proceedings of CCS, Third ACM Conference on Applications Workshops, vol. 1, pp. 607–613, 2007.
Computer and Communications Security. ACM Press, 1996, pp. 48–57. [22] S. Chakrabarti, S. Chandrasekhar, K. L. Calvert, and M. Singhal,
[7] H. Petersen and P. Horster, “Self-certified keys – concepts and ap- “Efficient blind signatures for accountability,” in Proceedings of NPSec,
plications,” in Proceedings of CMS, 3rd International Conference on The Third Workshop on Secure Network Protocols, Beijing, China,
Communications and Multimedia Security. Chapman & Hall, 1997, October 2007.
pp. 102–116. [23] X. Li, D. Zheng, and K. Chen, “LFSR-based signatures with message
[8] S. Kim, S. Park, and D. Won, “Proxy signatures, revisited,” in Pro- recovery.” International Journal of Network Security, vol. 4, no. 3, pp.
ceedings of ICICS, First International Conference on Information and 266–270, 2007.
Communication Security, ser. LNCS, Y. Han, T. Okamoto, and S. Qing, [24] C. H. Tan, X. Yi, and C. K. Siew, “Signature schemes based on 3rd order
Eds., vol. 1334. Springer, 1997, pp. 223–232. shift registers.” in Proceedings of ACISP, Sixth Australasian Conference
[9] H.-M. Sun, “An efficient nonrepudiable threshold proxy signature on Information Security and Privacy, ser. LNCS, V. Varadharajan and
scheme with known signers.” Computer Communications, vol. 22, no. 8, Y. Mu, Eds., vol. 2119. Springer, 2001, pp. 445–459.
pp. 717–722, 1999. [25] S. W. Golomb, Shift Register Sequences. Holden-Day, 1967.
112
[26] E. Peeters, M. Neve, and M. Ciet, “XTR implementation on reconfig-
urable hardware.” in Proceedings of CHES, Sixth International Work-
shop on Cryptographic Hardware and Embedded Systems, ser. LNCS,
M. Joye and J.-J. Quisquater, Eds., vol. 3156. Springer, 2004, pp.
386–399.
[27] M. Bellare and P. Rogaway, “Random oracles are practical: a paradigm
for designing efficient protocols,” in Proceedings of CCS, First ACM
conference on Computer and communications security. ACM Press,
1993, pp. 62–73.
[28] N. Koblitz and A. Menezes, “Another look at ”provable security”,”
Journal of Cryptology, vol. 20, no. 1, pp. 3–37, 2007.
[29] S. Lu, R. Ostrovsky, A. Sahai, H. Shacham, and B. Waters, “Sequential
aggregate signatures and multisignatures without random oracles,” in
Proceedings of EUROCRYPT, 25th Annual International Conference on
the Theory and Applications of Cryptographic Techniques, ser. LNCS,
S. Vaudenay, Ed., vol. 4004. Springer, 2006, pp. 465–485.
[30] X. Huang, W. Susilo, Y. Mu, and W. Wu, “Proxy signature without
random oracles,” in Proceedings of MSN, Second International Con-
ference on Mobile Ad-hoc and Sensor Networks, ser. LNCS, J. Cao,
I. Stojmenovic, X. Jia, and S. K. Das, Eds., vol. 4325. Springer, 2006,
pp. 473–484.
[31] M. Neve, E. Peeters, G. M. de Dormale, and J.-J. Quisquater, “Faster
and smaller hardware implementation of XTR,” in Advanced Signal
Processing Algorithms, Architectures, and Implementations XVI, F. T.
Luk, Ed., 2006.
[32] P. S. L. M. Barreto, B. Lynn, and M. Scott, “On the selection of pairing-
friendly groups.” in Proceedings of SAC, Tenth Annual International
Workshop on Selected Areas in Cryptography, Revised Papers, ser.
LNCS, M. Matsui and R. J. Zuccherato, Eds., vol. 3006. Springer,
2003, pp. 17–25.
113
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
T2 ( z i , z j ) = X ( z i ) + Y2 ( z i ) + Y f ( z i , z j )
Among them, h(i) is Hanning window function that (6)
is used for reducing boundary effects. Map signals
from frequency domain to critical frequency domain. Among them, Y1 , Y2 are masking coefficients of
Critical frequency is a frequency domain psychology
or sound value measurement that reflects the pseudo-tone and pseudo-narrow noise respectively. Y f
frequency selectivity of human ears that could is the masking function. With the increasing difference
identify the minimum frequency width of masked of critical frequency Δ z , the masking effect will be
sound signals. reducing. So when Δ z < −3 Bark or Δ z ≥ 8 Bark, we do
Because the tone of masker will affect masking
domain value, the identification of tonal component not consider masking. At this time, we assume T1 ( z i , z j )
and non-tonal component needs to confirm the and T2 ( z i , z j ) is − ∞ .
characteristics of sound signals according to In calculating all masking values, because of the
distribution of short-time power spectrum of signals to superposition of masking, all masking values Ta ( z j ) at
identify pseudo-tone signals and pseudo-narrow band zj
noise signals. is the sum of the safety domain values T0 ( z j ) at the
point plus masking domain values generated by all
The masking domain value in calculations is
determined by sound pressure levels, self-masking tonal and non-tonal components at the point.
The sum is:
levels and masking functions. The self-masking levels
of pseudo-tone signals and pseudo-narrow band signals Ta ( z j ) = 10 lg ∑10 1 + ∑10 + ∑10
T ( z i , z j ) / 10 T2 ( z i , z j ) / 10 Ta ( z i , z j ) / 10
60
than masking value, the corresponding frequency K=
N
quantile of power frequency spectrum will be masked. M (12)
And satisfy:
3. Proposal of Research
K ≤ Ld 1 (13)
The watermarking embedding method adopted in the
Embed K values of m sections (0<m<M) by order
research is to add simultaneous signals for test before
the position of embedded watermarking. The detail of into the sequence d1 of wavelet transform of sound
the method is that embed three equal-amplitude signal in corresponding the m section.
sampling points before the starting point that a
watermarking is embedded. Due to the small [ ]
⎧d i 1 + αω n (i − s0 ) , S 0 ≤ i < S 0 + k
d1' (i ) = ⎨ 1
amplitude, human ears may not detect the changes if
not listen carefully. ⎩ d1 (i), others,0 ≤ S 0 < Lm − k (14)
Adopting the idea of the dissolution of sound
watermarking signals introduced by D. Kirovski, et al., Among them, α is a private double factor, After
we divided the original sound effect signals that adjusting its values, we could ensure that the
needed to add into M sections, and conducted wavelet watermarking have enough strength while it is not
transform at L level in each section. Keep the detailed detectable for auditory sense. S 0 is the starting point of
quantile of preceding L-1 level and approximate
embedding watermarking in the sequence d1 .
quantile of small waves at L level unchanged.
In embedding watermarking, use the minimum
Embedded watermarking in the detailed quantile di at
masking domain value Tim (n) and private double factor
L level and assume the length of di is Ld i . α to modulate the amplitude of watermarking w(n) and
Because the image of QR code could be considered
modulate embedding strength to make the
as one kind of two-dimension image, a binary
watermarking more undetectable for auditory sense.
sequence QS is obtained:
After completing the embedding watermarking of
psychological and physiological model, we could
Qs = {Qsi ,0 ≤ i < n}, Qsi ∈ {− 1,1} ''
(9) obtain numerical sequence d tα .
''
Use d i , the L level approximate quantile and
Among them, Qsi represents the point in QR preceding L-1 detailed quantile to conduct inverse
Code image, 1 or -1 represents black or wavelet transform and obtain the signal of the m
white of the point. section after embedding the watermarking. Repeat
Use a N-length pseudorandom sequence P to modulate above-mentioned steps and will obtain signals of the M
S, and a sequence W is obtained: section that can be combined as signals after
embedding watermarking.
p = {pi ,0 ≤ i < N }, Pi ∈ {− 1,1} The essential part of the conception of the proposal
(10)
is using psychological and physiological models and
W = {wi ,0 ≤ i < N }, wi ∈ {− 1,1} simultaneous signals to bury QR Code images in sound
(11) files. After extracting QR Code, the sound
watermarking will link web pages according to the
w = s i ⋅ p i ,0 ≤ i < N hidden text information in QR Code. The integral
Among them i
W is the watermarking needing to be embedded. The conception of the research is as figure 2.
pseudorandom sequence P in formula (10) is very
important to the safety of algorism. Due to the
pseudorandom of P, W also has the characteristics of
pseudorandom that the attacker will be very difficult to
detect the watermarking and disrupt them without
understanding P.
In order to ensure the high quality of sound
signals after embedding watermarking and
enhance the stability of integral algorism, we divided
the watermarking W into M equal –length sections and
the length of each section is K.
61
Figure2 The Proposal of Enable Sound Repeating above-mentioned steps for all signals of
Watermarking to Link Internet by Embedding the M section, we could obtain watermarking signal w
'
QR Code '
of N-length signal. Use sequence P to adjust w and
'
as figure 3. ρ ( w, w) = i =1 i =1
Mi Mi Mi Mi
∑∑ w (i, j ) ∑∑ w
2 −2
(i, j )
i =1 i =1 i =1 i =1 (17)
could confirm that the next node is the starting point Among them, e=(P-T)/2, C p is number of
for watermarking embedding. combinations.
In a condition of set BER, we could obtain test
Repeat divide of original sound and use di and S0 , missing rate of simultaneous signal as follows:
W m' p
we could obtain the watermarking signals of the
M section from the following formula:
H1 = ∑C k
p • ( BEF ) k • (1 − BEF ) p − k
k = e +1 (19)
62
Figure 5 The Shape of Wave after Embedding
The data could link the target website in the Watermarking
information hidden by QR Code. The major program Compare the watermarking before and after
code of QR Code cannot be reveal because it is the embedding, we could find that there is no significant
property of PSYTEC (Japan). difference between them in the shape of waves. For
verifying the robustness of test algorism, we conduct
sound watermarking test according to Step 2001 rules
4.The Results of Experiment and (as tables 1) that the operators currently use for the test
Evaluation of watermarking software.
Under the same model, general environmental
The research will evaluate from two aspects: the noise and shouting from animals require relatively low
objective function test of digital sound watermarking quality of sound watermarking. The reason is that there
itself and subjective evaluation test of software. In the is indirect correlation with the anticipation of sound by
experiment of the objective function test of digital human psychology. So the same sound watermarking
sound watermarking itself, we firstly select a QR Code will have different identification ratios after the sound
that is converted into two-dimension image model with watermarking is embedded. From the following data,
size 60 x50. We adopted the sound of 16 bit 44.1kHz we could find that different from general watermarking
(CD format) as the original signal of digital that is emphasize only on the technological aspect,
watermarking. Its shape of wave is shown as figure 4. after the embedding of the digital sound watermarking,
the result of the test of the sound effect shows that
under concentration on listening to sound, most of
human beings will unconsciously generate anticipated
emotions to the sound, particularly, the insight will
increase when they listen to a much familiar sound.
The anticipated emotion will also affect sound
watermarking in its capability to avert keen perception.
Therefore, after tests of different categories of music,
we found that future digital watermarking has to
modify slightly for different categories of music in the
Figure 4 The Shape of Wave before Embedding development of technology to address the effects of the
Watermarking human inherent anticipated emotions to some specific
sounds on the detect ability of watermarking.
The shape of wave when QR Code is considered as
watermarking data and after smoothly embedding.(as Table 1 The Step 2001 Specification List for the
figure 5) Test of Digital Watermarking Robustness
63
Test Items Content of Handling Co Noise Low- Re- Not
D/A, A/D Digital Signal →Analogue Signal mpr PassFilt Sampli Attacke
Transform →Digital Signal essi er ng d
Frequency Stereo Sound (2 Channels ) → on
Number Single Ear(1 Channel) Wavelet ρ =0 ρ =0. ρ =0.83 ρ =0.86 ρ =1.0
Transform Transfor .647 7614 52 32
Downward 44.1kHz/16bit/2ch m 1
Sampling →16kHz/16bit/2ch Psycholo ρ =0 ρ =0. ρ =0.93 ρ =0.91 ρ =1.0
Amplitude 44.1kHz/16bit/2ch→44.1kHz/8bit/2 gical and .841 8232 05 17
Compression ch Physiolo 0
Time and Bit Time Compression/Extension : - gical
Compression 10% & +10% Models
and Extension Bit Moving Compression/Extension:
-10% & +10% From the above table, we could learn that under the
Linear Data MP3:128kbps,96kbps,64kbps(Mono same length of the original sound signal and the same
Compression ) level of effects of noise (by noise rate) on original
MPEG2 AAC:128kbps,96kbps medium signal, using psychological and physiological
ATRAC(MD): Version 4.5 models to design will have better undetectability of
ATRAC 3: 132kbps,105kbps sound.
Real Audio:128kbps,64kbps In the experiment of software subjective test, we
Window Media adopted ABX subjective test method (as figure 6) and
Audio:128kbps,64kbps practical testing out watermarking. In ABX subjective
Non-Linear FM,AM,PCM test, the test people broadcast and arrange orderly the
Data original sound signal and embedded watermarking
Compression sound signal as following figure. The test people firstly
Frequency FM,AM,PCM broadcast original sound effects (A) for 40 seconds
Response before broadcast embedded watermarking sound
Transform effects (B) for another 40 seconds. After repeating the
Noise Test White Noise: S/M:-40dB steps once, randomly select sound (A) or (B) and
broadcast.
In implementing test, we retrieved part of sub-items of After experiencing sound test for 160 seconds, the
Step 2001 and conducted test: 1) linear MP3 testees have to answer if the last sound (X) is orginal
compression/ decompression, compression rate is 5:1; effect (A) or embedded watermarking sound effects
2) add Gauss white noise, average value is 0, and (B).
mean-square error is 0.01; 3)low pass filter: use
Chebychev low filter that the length is 9 and cut-off
frequency is 5kHz; 4) re-sampling, conduct downward
sampling of from 44.1kHz to 22.05kHz before conduct
interpolation of from 22.05kHz to 44.1kHz. Under the
condition of the same length of original sound signal
and of the same noise rate after embedding
watermarking, we also conducted experiment and Figure 6 The Procedure of ABX Sound
comparisons of two groups: 1) singly adopted wavelet Watermarking Test
transform; 2) adopted the method mentioned in this
article. Meanwhile, we found the situations of above- The scoring standard of ABX sound effects test is
mentioned two methods under attack. The results of shown as following table. If the testees successfully
comparison are shown as table 2. identify X that is embedded into watermarking sound
Table 2 The Comparisons of Traditional Wavelet effect in the process of test, the undetectability of
Transform and Psychological and Physiological entire watermarking will be in doubt and the scores
Model will be reduced in calculating success rates of
identifying entire sound watermarking.
Table 2 Evaluation List for ABX Test
64
Daily Life %
X Sound Talks 19 Middle to High
Judgment Original 19 81
Add Watermarking %
by Listener Sound POP Music 33 67 33 High
to Sound (B)
(A) %
Original Sound Right Wrong Answer Classic 35 65 35 High
(A) Answer Music %
Add Wrong Detected, Reduce 1 Total 116 384 23. -
Watermarking Answer Score 2%
to Sound (B)
Table 4 The Judgment List for Determining the
Level of Step 2001 Sound Watermarking Software
Item Perfect Practic Impracticab
In the research, we took 100 samples for ability ility Level
identification test. The average successful Level
identification rate was 23%. Among them, the lowest Test of Robustness More More Less than
rate is for identifying the sound effects of classic (21 Items) than than 50% are
90% are 50% Qualified.
music. According to the feedbacks of the qualifie are
questionnaires by most of the surveyed, the classic d* qualifie
music has more connectivity of melody that will make ( * : d. *
listener have more melody anticipation in music itself general
and thus the listener will require higher quality of sound)
sound. Test of Sound Quality Less Less >30%
(Detected) than 10% than
Under the same model, general environmental noise 30%
and shouting from animals require relatively low Other Extraction <10 10~3 >30
quality of sound watermarking. The reason is that there Tests time Seconds 0 seconds
is indirect correlation with the anticipation of sound by second
s
human psychology. So the same sound watermarking
Reliability No No Yes
will have different identification ratios after the sound False False
watermarking is embedded. From the following data, Positive Positiv
we could find that different from general watermarking e
that is emphasize only on the technological aspect, Simultaneo At the Has a Inability to
us same little do
after the embedding of the digital sound watermarking, Operation speed lag simultaneo
the result of the test of the sound effect shows that time usly
under concentration on listening to sound, most of Linear Data Able Partiall Unable to
human beings will unconsciously generate anticipated Compressi to resist y able resist
on to
emotions to the sound, particularly, the insight will resist
increase when they listen to a much familiar sound.
The anticipated emotion will also affect sound The limit value of data storage capacity of QR Code
watermarking in its capability to avert keen perception. is around 1000 words. But under the combination of
Therefore, after tests of different categories of music, sound watermarking and QR Code, in theory, it could
we found that future digital watermarking has to also store as many as around 1000 words. However,
modify slightly for different categories of music in the this research focuses on the implementation of using
development of technology to address the effects of the QR Code as watermarking data to link web pages.
human inherent anticipated emotions to some specific Therefore, the precision level of integral images is not
sounds on the detectability of watermarking. (as Table complete as existing QR Code. So we reached the level
3) that embedded only 10 words in the research and
Table 3 Different Categories of Music Correspond Internet linkage driving has to rely on built-in VB Sell
to the Test Out of Digital Watermarking Function to address linkage driving that is not tested in
Being the other systems than Window XP.
Categories Not
Succe
of Iden Requirement of According to the standards of Step 2001 sound
ssfully Rate
Embedded tifie Sound Quality watermarking test and summing up the statistics of
Identif
Sound d questionnaires filled out by users, we could induct that
ied
Shouting of 13 87 13 the method introduced by the research would meet the
Low to Middle requirements of practicability level of Step 2001(as
Animals %
Noise in 16 84 16 Low to Middle table 4). But there is still room for the improvement of
65
the enhancement of linear compression and the Decomposition,IEIEC Trans.Fundamentals,(S1745-1337),2004,87-
capability of simultaneous operation. A(7):1647-1650
[9]Wu S-Q,Huang J-W,Huang D-R,”Efficiently self-synchroized
5.Conclusion audio watermarking for assured audio data transmission,IEEE
In the research, we adopted wavelet transform trans”,2005,51(1):69-76.
combining the masking effects of auditory sense [10]Swanson M,,Zhu B,Tewfik A,el al. “Robust audio watermarking
system of human ears to conduct the design of sound using perceptual masking”,signal processing,1998,66(3):337~335.
watermarking. Taking advantage of perception [11]Cvejic N, Keskinarkaus A, Seppane T.”Audio Watermarking
redundance of original sound signal to control the using m-sequence and temporal masking”,New
quality of watermarking and reduce the chances of York:IEEE,Workshops on Applications of signal processing to audio
detectability by human ears. However, the existing and acoustics,New Paltz,2001.227~230.
algorism has lag time in corresponding simultaneous [12]Lee S K, Ho Y S,”Digital audio watermarking in the cepstrum
operation. So the algorism has room for improvement. domain”,IEEE Trans,2001,46(3):744~750
In the research, we proposed an idea that using QR
Code to hide information about website and strengthen
the application of sound digital watermarking. The idea Wu,Yi-ju (Member)
will become a new direction in developing cost-saving Mr. Wu earned his master degree in GITS
communication model in future. Same sound from Waseda University, Japan. He
watermarking having different results of sound test and worked with CPT Company and Photonics
how to enhance the level of precise identification of Industry and Technology Development Association ,
QR Code in sound watermarking may become new an affiliated organization of National Science Council,
research directions for follow-up researcher in future. Taiwan, as a researcher. He is currently a technology
commentator of Weekly Display and China Times and
student of Doctoral Program , Waseda University. He
References specializes in multi-media communications and FPD
[1]F.Jordan,M.Kutter,T.Ebrahimi,“Proposal of a watermarking technology. He is also an official member of IEICE,
technique for hiding/retrieving data in compressed”,MPEG97,1997. IEEE, ITE, IETC and IPS.
[2] Naoshisa komatsu,”Digital watermarking technology”,NII,2004
[3] D Kirovski, H Malvar. Spread Spectrum Watermarking of Audio Shigeru Shimamoto (Member)
Signals. IEEE Trans. Signal Process,2003,51:1045~1053 Professor Shimamoto earned his Doctor
[4] OONO,”Digital Watermarking and Contents degree in Tohoku University, Japn. He
protection”,OHMSHA,pp.140~181,Fab,2001. entered into NEC in 1987. Now he is a
[5]Cox I J,Matt L Miller.”The first 50 years of electronic professor in GITS of Waseda University,
watermarking”,Journal of Applied Siginal Processing,2002,126~132. Deputy Editor-in-Chief of Editing Committee of
[6]Kim H J.”Audio Watermarking Techniques”,Pacific Rim IEICE. Professor Shimamoto specializes in multi-
Workshop on Digital Steganography,Kyushu Institude of media wireless communications, optical
Technology,Kitakyushu,Japan,July3~4,2003. communications. He is an official member of IEEE
[7]Arnold M,”Audio Watermarking:Buying information in the and IEICE. Writings: Wireless Communication
data”,Dr Dobbs’s Journal,2001,11(1):21~28 Technology, Digital Broadcast, etc.
[8]Byeong-Seob KO,Ryouichi Nishimura,Yoiti Suzuki,”Robust
Watermarking Based on Time-spread Echo Method with Subband
66
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Xu Wu Jingsha He Fei Xu
College of Computer Science School of Software College of Computer Science
and Technology Engineering and Technology
Beijing University of Beijing University of Beijing University of
Technology Technology Technology
Beijing 100022, China Beijing 100022, China Beijing 100022, China
zhixinxuxu@emails.bjut.edu.cn jhe@bjut.edu.cn Xf8878xf@emails.bjut.edu.cn
68
3.1 The definition and type of trust important factor that should be considered in the trust
model. For peers without any interacting history, most
previous trust models often define a default level of
Trust has been examined in many contexts,
trust. But if it is set too low, it would make it more
including sociology, social psychology, economics and
difficult for a peer to show trustworthiness through its
marketing. Each context has a unique perspective on
actions. If it is set very high, there may be a need to
the notion of trust. In this paper, we define trust as an
expectation about the behaviors of what an individual, limit the possibility for peers to Āstart overā by
say A, expects another individual, say B, to perform in re-registration after misbehaving. In our trust model,
a given context. the introduction of the size of interactions effectively
Our trust model has two types of trust: direct trust solves the trust problem of peers without any
and recommendation trust. Direct trust is the trust of a interacting history. The details will be described in 3.3.
peer on another based on the direct interacting Time: The influence of an interacting history record
experience and is used to evaluate trustworthiness to trust always decays with time. The more recent
when a peer has enough interacting experience with interactions have more influence on trust evaluation of
another peer. On the other hand, recommendation trust a peer. For instance, if peer X has interacted with peer
is used when a peer has little interacting experience Y for a long time, the change of trust degree influenced
with another one. Recommendation trust is the trust of by the interaction three years earlier is weaker than that
a peer on another one based on direct trust and other of today. In our trust model, we introduce time factor
peers’ recommendation. In our model, peers’ to reflect this decay, that is, the most recent interaction
recommendation is received through a polling protocol. usually has the biggest time factor.
Vote accuracy: We use a distributed polling
3.2 The trust factors algorithm [1] to collect peer’s reputation information in
our model. Vote accuracy factor reflects the accuracy
In order to effectively evaluate the trustworthiness that a peer votes for other peers. For example, if a peer
of peers and to address various malicious behaviors in correctly votes for other peers, it will have a high vote
a P2P network, we design and develop an enhanced accuracy factor. The purpose of introducing this factor
trust model based on reputation. Seven trust factors are is to encourage peers to vote actively and correctly in
identified in evaluating trustworthiness of peers. our model. As if their suggestions are more worthy of
Satisfaction or dissatisfaction degree in belief, people are always honest in the real society.
interactions: When a peer finishes an interaction with Punishment function: The measurement of trust is
another peer, the peer will evaluate its behavior in the the accumulation of the effects of interactions, both
interaction. The result of evaluation is described using positive and negative. We not only consider the decay
satisfaction or dissatisfaction degree which is in the of influence of the interaction experiences with time,
range (-1, 1). Satisfaction and dissatisfaction degrees but also punish malicious actions. Punishment should
express how well and how poor this peer has be involved by decreasing its trust degree according to
performed in the interaction, respectively. Satisfaction the amount of malicious behaviors. Therefore we
or dissatisfaction degree can encourage interacting introduce the punishment factor in our model to be
sides to behave well during interactions. However, it is used to fight against subtle malicious attacks. For
sufficient to measure a peer’s trustworthiness without instance, if a peer increases its trustworthiness through
taking into account the number of interactions. well-behaving in small-size interactions and tries to
Number of interactions: Some peers have a higher make a profit by misbehaving in large-size interactions,
interaction frequency than some other peers due to a the peer would need more successful small-size
skewed interaction distribution. A peer will be more interactions to offset the loss of its trust degree.
familiar with other peers by increasing the number of Risk: Every peer has its own security defense
interactions. This factor is related to the interaction ability which is reflected by risk factor, such as the
authority which is described in 3.3. If a peer wants to ability to detect vulnerabilities, the ability to address
get more high interaction authority, it needs to do more any viruses and to defend against intrusions.
successful interactions with other peers.
Size of interactions: Size has different meanings in 3.3 The computational model
different P2P environments. For example, in a P2P file
sharing network, the size of interaction expresses the Consider the situation where peer X wants to
file size shared in each interaction, while in a P2P interact with peer Y in order to accomplish a certain
business community, it shows the sums of money task. Peer X won’t interact unless it is sure that peer Y
involved in each interaction. Size of interactions is an is trustworthy. In order to find out whether peer Y is
69
trustworthy, peer X calculates a trust value for peer Y. By introducing the notion of level, new peers are
There are two ways in which to calculate trust value: given the chances for interactions, which solves the
direct and recommendation. When peer X has enough trust problem when no prior interaction history exists,
interaction experience with peer Y, peer X uses direct an issue that has not been addressed in many models.
trust to calculate the trust value for peer Y. On the At the same time, it prevents new peers from cheating
other hand, when peer X doesn’t have enough big time by having interaction chances. The direct trust
interaction experience with peer Y, peer X uses value Tx ( y ) is defined as:
recommendation trust to calculate the trust value for N ( y)
S ( x, y )
M ( x, y )
Z 1
peer Y. In our paper, an interaction experience Tx ( y) D
¦ ( pen(i) ) E Risk ( y)
N ( y) 1 e n
threshold is predefines based on the size of interactions i 0
70
based on an enhanced polling protocol to be described and T ' the vote result from the perspective of distrust.
below. T is given as
Let we assume that peer Y requests an interaction
with peer X and the size of the interaction is Q . First, N ( w)
71
recommendation to take a higher weight in the trust degree.
calculation of the recommendation trust. 0.9
0.85
0.9 0.8
0.8 0.75
0.7
0.7
0.6
0.65
0.5
0
30 60 90 120 150 180 210 240 270 300
0.4
0.3
72
1
References
0.9
0.8
[1] S. Chhabra , E. Damiani, S. Paraboschi and P. Samarati,
“A Protocol for Reputation Management in Super-Peer
0.7 Networks”, in Proc. 15th International Workshop on
Database and Expert Systems Applications, Zaragoza, Spain,
0.6
August 2004, pp. 973-983.
0.5 [2] S.D. Kamvar, M.T. Schlosser and H.G. Molina, “The
EigenTrust Algorithm for Reputation Management in P2P
0.4
Networks”, in Proc. 12th International Conference on Word
0.3 Wide Web, Budapest, Bulgaria, May 2003, pp. 640-651.
[3] L. Xiong and L. Liu, “A Reputation-Based Trust Model
0.2 for Peer-to-Peer eCommerce Communities”, in Proc. IEEE
0.1
International Conference on E-Commerce, San Diego, CA,
July 2003, pp. 228-229.
0 [4] Y. Wang and J. Vassileva, “Trust and Reputation Model
in Peer-to-Peer Networks,” in Proc. 3th International
Figure 3. The relationship between time and trust value Conference on Peer-to-Peer Computing, Sweden, September
2003, pp. 150-157.
[5] D. Donato, M. Paniccia, M. Selis, C. Castillo, G. Cortese
5. Conclusion and future work and S. Leonardi, “New Metrics for Reputation Management
in P2P Networks”, in Proc. 3rd International Workshop on
Adversarial Information Retrieval on the Web, Canada, May
In this paper, we proposed an enhanced trust model
2007, pp. 65-72.
based on reputation. Seven trust factors were identified [6] T. Tran and R. Cohen, “Modeling Reputation in Agent
in the evaluation of trustworthiness of peers. The Based Marketplaces to Improve the Performance of Buying
trustworthiness is evaluated based on the direct Agents”, in Proc. 9th International Conference on User
interaction experience and other peers’ Modeling, Pennsylvania, June 2003, pp. 273-282.
recommendations. We applied SupP2Prep [1] in our [7] A. Selcuk, E. Uzun and M. Pariente, “A
trust model, which is a protocol for reputation Reputation-Based Trust Management System for P2P
management via polling in P2P networks, but with Networks”, in Proc. IEEE International Symposium on
three adjustments. Most of the existing trust models Cluster Computing and the Grid, Chicago, IL, April 2004, pp.
251-258.
only consider the poll problem from the perspective of
[8] L. Mui, M. Mohtashemi and A. Halberstadt, “A
trust. In this paper, we consider voting for peers from Computational Model of Trust and Reputation Agents:
the perspectives of both trust distrust. Our work Evolutionary Games and Social Networks,” PhD Thesis,
appears to be the first to incorporate distrust in the Massachusetts Institute of Technology, 2002.
polling algorithm. The proposed trust model provides [9] R. Guha, R. Kumar, P. Raghavan and A. Tomkins,
an effective scheme to prevent vicious attacks and “Propagation of Trust and Distrust”, in Proc. 13th
solves the trust problem of a new peer. In the future we International Conference on Word Wide Web, New York,
will further explore new mechanisms to make our trust NY, May 2004, pp. 403-412.
model more robust against malicious behaviors. [10] R. Zhou and K. Hwang, "PowerTrust: A Robust and
Scalable Reputation System for Trusted P2P Computing,"
IEEE Transactions on Parallel and Distributed Systems,
Vol.18, No.5, May 2007.
73
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
115
and H(k) is the set of reference nodes that the meas- formance is strongly impacted by the network topology,
urement associated with location k exists. Then, taking especially when the user distribution is non-uniform or
the inverse of FIM and under the constraint of the non- the target area is irregular. Exhaustive search for the
cooperative case, we have the lower bound of the optimal network topology is time consuming and is not
mean-square error (MSE) at location k expressed as [1] achievable when the node number is very large. Alter-
natively, we propose a low-complexity, step-by-step
FXX (k ) + FYY ( k ) deployment algorithm which provides suboptimal solu-
MSE (k ) ≥
FXX (k ) FYY ( k ) − ( FXY (k )) 2 tions flexible for different system scenarios.
The desired area A is divided into multiple uniform
1
∑ (Δxik2 + Δyik2 )
i∈ H ( k )
(4) grids, and all reference nodes are assumed to be de-
ployed on grids. Initially, a primary network topology
≥ .
(Δxik Δy jk − Δyik Δx jk ) 2 with a limited node number N ini is deployed. It is
β ∑ ∑
i∈H ( k ) j ≠i (Δxik2 + Δyik2 ) 2 (Δx 2jk + Δy 2jk ) 2 noted that the primary network topology must be set to
j∈H ( k )
avoid the ill-condition, which implies that the network
topology forms only one-dimensional space in the de-
By averaging the user location distribution over the sired area. If the ill-condition occurs, the CRLB of
entire area, we have the average CRLB of the entire MSE does not exist at some locations and the estima-
system as tion performance of the entire system cannot be evalu-
ated. One efficient way to avoid the ill-condition is to
v∫ A
MSE (k ) × f (k ) , (5) initiate a primary network topology in which each lo-
cation in the desired area can be accessible by at least
three reference nodes, or equivalently the signal emit-
where f(k) is the user distribution at location k.
ted from a location can be received by at least three
Some facts can be observed from (3)-(5). Adding
reference nodes. According to the current network
a new reference node in H(k) can improve the estima-
topology, the average CRLB of the entire system cor-
tion accuracy at location k. This improvement is in-
responding to each possible deployed location of the
versely proportional to the distance between location k
next reference node can be calculated based on (5).
and this new reference node, and also depends on the
Then the next reference node is deployed at the loca-
relative angles among this new node and the other de-
tion having the minimum average CRLB of the entire
ployed reference nodes. Considering overall estimation
system. Subsequently, each reference node can be de-
performance in the entire area, deploying widely
ployed similarly based on this step-by-step process.
spreading nodes can achieve a better performance than
The proposed step-by-step node deployment algorithm
deploying gathering nodes for uniform user distribu-
is shown as follows.
tion. Furthermore, the CRLB corresponding to a net-
work topology is associated to the mean-square error
of the location estimation, and thus can be used as an
evaluation metric for node deployment in WSNs. % Proposed Deployment Algorithm %
3. Step-by-step Suboptimal Deployment Set a primary network topology with the reference
node number N ini that avoids any ill-conditions in
Algorithm
the desired area;
In this work we propose a flexible step-by-step reference node number = N ini + 1 ;
node deployment algorithm suitable for different area for (reference node number <= number of total ref-
shapes and different user distributions. This algorithm erence nodes N)
can achieve near optimal node deployment with lim- {
ited computational complexity. Based on (5), search for the average CRLB for
each possible deployed location;
3.1. Node Deployment Algorithm Deploy a reference node at the location with the
minimum average CRLB;
The proposed node deployment algorithm is based reference node number + 1;
on minimizing the location estimation CRLB of the }
entire system, and is independent of the applied local- End
ization algorithm. No matter what kind of localization
algorithms is applied, the average localization per-
116
100 100 8
11 3
18
90 23 90 13 20
20 16 12
80 24 80
6 13 9
8 2 5
70 15 70
60 21 60 25
24
Y-axis
Y-axis
50 4 1 5 50 1 19 4 16
18 17
40 40 23
7
30 9 25 30
17 10 14
3 6
20 20
7
19 11 14
22 22 21
10 12 10
2 15
0 0 10
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
X-axis X-axis
Figure 1. Sub-optimal network topologies for a Figure 3. Sub-optimal network topologies for an
homogeneous user distribution (Scenario 1). irregular area (Scenario 3).
It is noted that the proposed node deployment algo- homogeneous, i.e. with the same distribution of the
rithm can be applied to a system with any desired area desired users over the entire area. The primary network
shape and any user distribution. topology contains node 1, node 2 and node 3. By ap-
plying the proposed algorithm, the sub-optimal node
3.2. Experimental Results topologies are shown in Fig. 1 for the node number
from 4 to 25. For example, if the number of available
Based on the proposed algorithm, three scenarios nodes is 10, then location 1 to location 10 are the sug-
are investigated. The path loss exponent of radio gested node topology. It is found that nodes are almost
propagation is assumed to be n = 2 and the shadowing uniformly distributed over the entire area for different
standard deviation is assumed to be σ = 4 dB. In Sce- node numbers.
nario 1, the desired area is a square with 100 units in In Scenario 2, the desired area is the same as that
length in each side, and is divided into 100×100 = in Scenario 1, except that it is non-homogeneous for
10000 grids. The user distribution is assumed to be user distribution. The distribution of the desired users
is assumed to be 2-dimensional bivariate Gaussian
with the mean at the center of the area and the variance
100 in each dimension equal to 250 unit-square. By apply-
90
ing the proposed algorithm, the sub-optimal node to-
14
pologies are shown in Fig. 2 for the node number from
80 4 to 25. It is found that nodes are now more concen-
2 19
70 23 trated near the center of the desired area.
5 9
11 In Scenario 3, the user distribution is assumed to
60 8 21
be homogeneous but the desired area is an irregular
Y-axis
12 22 17
50 1 3 area as shown in Fig.3. The shadowed area is not part
6 16 13 24
40
of the desired area, and the detection across the shad-
20 7 owed area is assumed to be unavailable. The primary
30 18 4 network topology contains node 1 – node 6. By apply-
15
20 10 ing the proposed algorithm, the sub-optimal node to-
25 pologies can be obtained for the node number from 7
10
to 25. It is found that nodes are almost uniformly dis-
0
0 10 20 30 40 50 60 70 80 90 100
tributed within the desired area.
X-axis The proposed algorithm is not only suitable for
homogeneous and regular environments but also for
Figure 2. Sub-optimal network topologies for a non-homogeneous and irregular environments. More-
non-homogeneous user distribution (Scenario 2).
over, the computational complexity is linearly propor-
117
Performance Metric (Normalized CRLB)
bility of our proposed node deployment algorithm. To
Proposed Algorithm
Optimal Network Topology justify the optimality of the proposed algorithm, we
need to compare our results with some available
10-1
benchmarks. The most reliable benchmark is the opti-
mal network topology obtained by exhaustive search,
which minimizes the average CRLB with a given num-
ber of reference nodes. Since the complexity grows
dramatically when the node number or the grid number
is too large, only the results of the scenarios with a
finite node number and a finite grid number can be
evaluated. Fig. 4 shows the performance comparison
between the proposed algorithm and the optimal net-
work topology in a homogeneous environment (Sce-
10-2 nario 1) with 10×10 = 100 grids and the node number
3 4 5
from 3 to 5. The performance metric is defined as the
Number of Reference Nodes
average CRLB normalized to the area of the desired
Figure 4. Performance comparison between the region. It is found that the performance of the pro-
optimal network topology and the proposed algo- posed algorithm is slightly worse than the best avail-
rithm in a homogeneous environment (Scenario able performance obtained via the optimal topology.
1). However, the performance of the proposed algorithm
converges to the best performance quickly, and the
loss in performance is less than 5% for only five nodes
tional to the node number, not exponentially propor-
in homogeneous environment. This implies that our
tional to the node number. Thus massive deployment
proposed algorithm can provide a sub-optimal topol-
of reference nodes becomes feasible.
ogy with the performance quite close to the best
achievable performance.
4. Performance Comparison
4.2. Comparison with Monte-Carlo simulation
4.1. Comparison with the optimal network to-
pology Since the investigation of exhaustive search is lim-
ited to the scenarios with a finite node number, we
In previous we have shown the simplicity and flexi- further investigate another benchmark for the scenarios
with a large node number. Monte-Carlo simulation is a
well-known test bench for performance evaluation,
Performance Metric (Normalized CRLB)
Proposed Algorithm which is also flexible for the different scenarios. In the
Monte-Carlo Simulation simulation, we randomly generate 100000 random
(The Best Performance)
network topologies for each node number. Then the
network topology with the best performance, i.e. the
10-2
one minimizes the average CRLB, is chosen as the
benchmark for comparison. Fig. 5 shows the perform-
ance comparison between the proposed algorithm and
the Monte-Carlo simulation results in a homogeneous
environment (Scenario 1). When the node number is
small, searching over 100000 random network topolo-
gies can achieve a very good performance. However,
when the node number is large enough, searching over
100000 random network topologies is not quite enough
10-3 and the performance becomes worse than that obtained
6 8 10 12 14 16 18 20
Number of Reference Nodes by our proposed algorithm.
118
der area. Fig. 6 shows the performance comparison
Performance Metric (Normalized CRLB) Proposed Algorithm between the proposed algorithm and the uniform-grid
Uniform-grid Deployment
deployment in a homogeneous environment (Scenario
1). For uniform-grid deployment, the node number N
must be a square number, i.e. 4, 9, 16, etc. It is found
10-2 that the uniform-grid deployment provides a worse
performance when the node number N is small, due to
the performance degradation in the border area. On the
other hand, when the node number N is large enough,
the uniform-grid deployment tends to be the optimal
deployment strategy for homogeneous environments,
10-3 and the proposed algorithm achieves this performance
bound. It must be noted that the uniform-grid deploy-
ment is not feasible for non-homogeneous and irregu-
10 20 30 40 50 60 70 80 90 100
Number of Reference Nodes lar environments.
Figure 6. Performance comparison between the 4.4. Simulation results for maximum likelihood
uniform-grid deployment and the proposed algo- estimator
rithm in a homogeneous environment (Scenario
1). The proposed node deployment algorithm is based
on the performance metric. To further investigate the
Conceptually, uniform-grid node deployment may optimality of the proposed algorithm, we apply a spe-
be a good strategy for an unlimited desired area with a cific localization algorithm – maximum likelihood
fixed reference node density, in order to achieve the (ML) estimator, to evaluation of estimation perform-
best estimation performance in a homogeneous envi- ance of the network topology obtained by our pro-
ronment. Therefore, uniform-grid node deployment posed algorithm via simulation. The estimation per-
can be used as a theoretical benchmark for perform- formance is represented as the MSE normalized to the
ance comparison. However, if the desired area is lim- area of the desired region. Fig. 7 shows the ML estima-
ited, uniform-grid deployment will lead to a lower lo- tion performance of the proposed network topology
cal node density in the border area, and thus a worse and the optimal network topology in a homogeneous
estimation performance is expected for user in the bor- environment (Scenario 1) with 10×10 = 100 grids. The
estimation performance of our proposed network to-
pology is only slightly worse than that of the optimal
network topology. However, the estimation perform-
10-1
Proposed Algorithm
ance is almost the same for the scenario with the node
Normalized Mean Square Error
119
10-2
Proposed Algorithm
10-3
10-3
10-4
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
Number of Reference Nodes Number of Reference Nodes
Figure 8. Performance comparison between the Figure 9. Performance comparison between the
uniform-grid deployment topology and the pro- uniform-grid deployment topology and the pro-
posed algorithm based on the ML estimation in a posed algorithm based on the ML estimation in a
homogeneous environment. non-homogeneous environment.
proposed network topology still performs well in a [3] R. L. Moses, D. Krishnamurthy, R. M. Patterson, “A self-
non-homogeneous environment. localization method for wireless sensor networks,” EURASIP
Journal on Applied Signal Processing, vol. 2003, issue 4, pp.
348–358, 2003.
5. Conclusion
[4] N. Patwari, J. N. Ash, S. Kyperountas, A. O. Hero III, R.
In this work, we proposed a step-by-step node de- L. Moses, and N. S. Correal, “Locating the nodes, Coopera-
ployment algorithm which provides sub-optimal solu- tive localization in wireless sensor networks,” IEEE Signal
tions feasible for large-scale WSNs. This deployment Processing Magazine, vol. 22, no. 4, pp. 54-69, July 2005.
algorithm has the computational complexity only line-
arly proportional to the number of available nodes, and [5] Q. Shi, S. Kyperountas, N. S. Correal, F. Niu, “Perform-
is flexible for the scenarios with a non-homogeneous ance analysis of relative location estimation for multi-hop
wireless sensor network,” IEEE Journal on Selected Areas in
user distribution and with an irregular sensing area.
Communications, vol. 23, no. 4, pp. 830-838, April 2005.
The performance comparison between our proposed
algorithm and other available benchmarks shows that [6] C. Savarese, J. M. Rabaey, and J. Beutel, “Locationing in
the sub-optimal network topologies proposed by our distributed ad-hoc wireless sensor networks,” in Proc. of
algorithm can achieve a performance very close to the IEEE Int. Conf. Acoustics, Speech, Signal Processing
optimal performance with low complexity. Simulation (ICASSP), vol. 4, pp. 2037–2040, May 2001.
results based on maximum likelihood estimator were
also provided to evaluate the performance of the pro- [7] Y. Shang, W. Ruml, Y. Zhang, and M. P. J. Fromherz,
posed algorithm. According to these results, it was “Localization from mere connectivity,” in Proc. of Int. ACM
Symposium on Mobile Ad Hoc Networking and Computing
found that our algorithm performs very well for differ-
(MobiHoc), pp. 201–212, June 2003.
ent scenarios.
[8] Y. Shang and W. Ruml, “Improved MDS-based localiza-
References tion,” in Proc. of IEEE INFOCOM, vol. 4, pp. 2640–2651,
Mar. 2004.
[1] N. Patwari, A. O. Hero III, M. Perkins, N. S. Correal,
and R. J. O’Dea, “Relative location estimation in wireless [9] L. Doherty, K. S. J. Pister, and L. E. Ghaoui, “Convex
sensor networks,” IEEE Trans. Signal Processing, vol. 51, position estimation in wireless sensor networks,” in Proc. of
no. 8, pp. 2137–2148, Aug. 2003. IEEE INFOCOM, vol. 3, pp. 1655–1663, Mar. 2001.
[2] E. G. Larsson, “Cramér-Rao bound analysis of distributed [10] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E.
positioning in sensor networks,” IEEE Signal Processing Cayirci, “Wireless sensor networks: A survey,” Computer
Letter, vol. 11, no. 3, pp. 334–337, Mar. 2004. Networks, vol. 38, no. 4, pp. 393–422, Mar. 2002.
120
[11] M. Maleki, M. Pedram, “QoM and lifetime-constrained
random deployment of sensor networks for minimum energy
consumption,” in Proc. of Int. Symposium on Information
Processing in Sensor Networks, pp. 293-300, Apr. 2005.
[12] S.-P. Kuo, Y.-C. Tseng, F.-J. Wu, and C.-Y. Lin, “A
probabilistic signal-strength-based evaluation methodology
for sensor network deployment,” in Proc. of Int. Conf. Ad-
vanced Information Networking and Applications (AINA),
vol. 1, pp. 319–324, Mar. 2005.
121
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
75
Step 7 Take Y ′HL and Y ′LH of the last scale of Y ′ and perform Step 5 Extract the singular values of watermarks by
inverse DDWT to obtain spatial domain YHLLH that processing the diagonal elements of ∑HL
F' with ∑X' and
HL
has been embedded with watermarks in sub-bands HL ∑F' with ∑X' , respectively.
LH LH
and LH.
σ FHL′ − σ XHL′
σ WHL = i i
W HL = U WHL ΣWHLVWT
(10)
Step 9 Apply the inverse DDWT to Y′ to produce the stego- W LH = UWLH ΣWLH VWT
image Y, which has been embedded with watermark
information on the four sub-bands of the last scale.
Subtract YHLLH from Y to obtain YDiff, which gives
difference of pixel values of YHLLH and Y in the spatial
IV. EXPERIMENTAL RESULTS
domain.
The original cover image Lena (512 × 512) is shown in Fig.
B.1 Extracting algorithm 3(a), and the watermark (64 × 64), in Fig. 3(b). The watermark,
(Step 1 to Step 2 extracting the watermark from sub-bands LL Tunghai Univerisy, is a masterpiece of calligraphy by the
and HH) famous modern Chinese calligrapher Yu, You-ren (1879-
Step 1 Input the stego-image Y, the original image X, the 1964). We embedded watermarks in the full band of the cover
spatial domain data YHLLH, and the watermark W. image after doing 3-scale DDWT.
Step 2 Subtract YHLLH from Y to obtain YLLHH, and apply
formula (7) on YLLHH to extract the embedded
watermark WLLHH:
Where F′HL and F′LH represent F′ in the sub-bands HL and LH Where W and W ' , the average value of pixels of the original
F' and σF' ) of ∑
of the last scale, and the diagonal elements (σHL LH
watermark and the extracted watermark, are defined as follows:
F' and ∑F' are the singular values of F′
HL LH HL LH
and F′ .
76
n −1 n −1 n −1 n −1 Column 3 shows the extracted watermarks and Column 4
∑∑W
i = 0 j =0
(i , j ) ∑∑W ′
i =0 j =0
(i , j )
(12)
shows their correlation coefficients and the bands they are
W= ,W ′ = extracted from. Since we have embedded watermarks in the
n× n n×n four bands of the 3-scale DDWT, we can extract all of them
from the attacked stego-image and use the best one for
The watermarked image, or the stego-image, is somewhat copyrights protections. Only the best watermark of each
different from the cover image. To evaluate the fidelity of the attacking test is tabulated on Column 3.
stego-image, the peak signal-to-noise ratio (PSNR) was The visual quality of extracted watermarks and corresponding
calculated as follows: correlation coefficients of them indicate the robustness of the
2552 FBIW watermarking scheme. It is very robust against many
PSNR = 10 log (13) attacks, such as the Gaussian noise, sharpening, the histogram
MSE equalization, rotation, cropping, warm, the ripple, the
Where the mean square error (MSE) of the cover image (m×m) whirlpool, the crystal and glass, the blast, the watercolor, the
and the stego-image (m×m) is: colored pen, mosaic, the invert, equalization, Gamma, the
1 m −1 m −1 zoom blur, the resizing attacks. It also shows good robustness
MSE = ∑∑ (α ij − βij )2
m2 i = 0 j =0
(14) against other attacks.
Image processing tools can be used not only to attack the
Where α ij is the pixel value of the cover image, and β ij is the watermarking information but also to reprocess the image in
creative ways. Table 2 shows reprocessed images of Lena, but
pixel value of the stego-image. The typical value of PSNR for all of them have been disguised so much that one can hardly
lossy image is between 30 to 50 dB, and the higher, the better. associate them with Lena at the first glance. To one’s surprise,
The stego-image of Lena is shown in Fig. 4(a), and its PSNR the extracted watermarks are still very clear. The experimental
value is 39.2793. From the stego-image, we extracted results show that the FBIW watermarking scheme is robust
watermarks embedded in the four sub-bands of the 3-scale against creative and multiple image attacks, including the
DDWT. The watermarks embedded by using the DDWT puzzle, the kaleidoscope, the kaleidoscope plus tile, the
algorithm on the LL and HH sub-bands are retrieved and kaleidoscope plus puzzle, and the kaleidoscope plus tile and
shown in Fig. 4(b). The watermarks embedded by using the puzzle attacks.
SVD algorithm on the sub-bands HL and LH are retrieved and
shown in Fig. 4(c) and Fig. 4(d).
TABLE 1 ATTACKS, ATTACKED IMAGES,
EXTRACTED WATERMARKS AND CORRELATION
COEFFICIENTS
Contrast 0.8830
We launched varieties of attacks on the stego-image to
adjustment
investigate the robustness of the FBIW scheme. For the sake
(80)
of space, we just list part of the experimental results with the LH
most common attacks in Table 1.
Column 2 shows the sabotaged stego-images. Some of them 0.8721
Gaussian Blur
are slightly modified, such as the ones processed by the Attack
Gaussian noise, the Gaussian blur, sharpening, the colored pen, (1)
LH
warm, equalization, Gama, resizing, and Mosaic attacks. Some
of them are more apparently modified, such as the ones suffer
from the contrast adjustment, the histogram equalization, 0.9919
rotation, the texture filter, and the watercolor attacks. The rest Sharpen
(80, 30)
of them are much distorted, such as the ones damaged by the LH
cropping, the ripple, the whirlpool, the crystal and glass, the
blast, the invert, the tile, and the zoom blur attacks.
77
0.9970 0.8986
Histogram
Tile
equalization
(50)
(Auto)
HL HL
1.0000 1.0000
Rotation
Invert
(45)
HL, LH and
HL and LH
LLHH
1.0000 0.9889
Cropping
Equalize
(95%)
LLHH LH
0.6324 0.9644
Texture Gamma
Filter-Effect (0.5)
Embossed HL LH
0.9998 1.0000
Warm Zoom Blur
(Red:2) ( Zoom In:50)
LH LLHH
1.0000 0.9681
Resize
Ripple (256)
LLHH LH
0.9075
0.9712 Puzzle
Blast (50)
(Lift:60) LH
HL
1.0000
0.9986 Kaleidoscope
Watercolor Effect
(Little:80) LLHH
HL
0.8863
0.9965 Kaleidoscope
Colored Pen + Tile:50
(5) LH
HL
0.6970
09761 Kaleidoscope
Mosaic + Puzzle:50
(2) HL
LH
78
Applications to Wavelet Image Compression, ” IEE Proceedings-
0.9151 Vision Image and Signal Processing, Vol. 146, No.3, Jun. 1999, pp.
Kaleidoscope
+ Tile:50+ 159-164.
Puzzle:50 LH [7] D. P. O'Leary and S. Peleg, “Digital Image Compression by Outer
Product Expansion, ” IEEE Transactions on Communications, March
1983, pp. 441-444.
0.9279 [8] H. C. Andrews and C. L. Patterson, “Singular Value Decomposition
Kaleidoscope
+ Puzzle 50+ (SVD) Image Coding, ” IEEE Transactions on Communications, April
Tile: 50 1976, pp. 425-432.
LH
[9] J. C. Liu, C. H. Lin, and L. C. Kuo. “A Robust Full-Band Image
Watermarking Scheme, ” Communication systems, 2006. ICCS 2006.
V. CONCLUSIONS 10th IEEE Singapore International Conference, Oct. 2006, pp. 1-5.
[10] J. F. Yang and C. L. Lu, “Combined Techniques of Singular Value
An effective digital watermarking scheme needs to be Decomposition and Vector Quantization, ” IEEE Transactions on
invisible as well as robust. The FBIW scheme has been shown Image Processing, August 1995, pp. 1141-1146.
to be very effective, that is, it has high PSNR value for the [11] J. Lee, and C. S. Won, “ A Watermarking Sequence Using Parities of
stego-image and is robust against common geometric and non- Error Control Coding for Image Authentication and Correction, ”
geometric attacks. IEEE Transactions on Consumer Electronics, vol. 46, no. 2, pp. 313-
317, 2000.
New image attacks come along with new and efficient
[12] J.M. Shapiro, “Embedded Image Coding Using Zerotrees of Wavelet
image processing tools. To evaluate the security of the FBIW Coefficients, ” IEEE Transactions on Signal Processing, Vol. 41, Dec.
scheme against new attacks, we test on the stego-image with a 1993, pp. 3445-3463.
wide range of attacks, destructive or creative, single or [13] Jieh-Ming Shieh, Der-Chyuan Lou, Ming-Chang Chang, “ A Semi-Blind
multiple ones. Experimental results show that FBIW is not Digital Watermarking Scheme Based on Singular Value
only very robust against most image attacks, such as rotation, Decomposition, ” Computer Standards & Interfaces, Vol. 28, April,
cropping, the ripple, and the whirlpool attacks, but also very 2006, pp. 428-440.
robust against creative and multiple image attacks, such as the [14] K. Konstantinides and G. S. Yovanof, “Application of SVD-Based
kaleidoscope plus tile, the kaleidoscope plus puzzle, and the Spatial Filtering to Video Sequences, ” IEEE International Conference
on Acoustics, Speech and Signal Processing, Vol. 4, Detroit, MI, May
kaleidoscope plus tile and puzzle attacks. The FBIW scheme 9-12, 1995, pp. 2193-2196.
combines merits of DDWT and SVD watermarking techniques
[15] K. Konstantinides and G. S. Yovanof, “Improved Compression
and is proved to be very secure against image attacks. Performance Using SVD-Based Filters for Still Images, ” SPIE
Proceedings, Vol. 2418, San Jose, CA, February 7-8, 1995, pp. 100-
ACKNOWLEDGEMENT 106.
[16] K. Konstantinides, B. Natarajan and G. S. Yovanof, “Noise Estimation
This work was supported in part by Taiwan Information and Filtering Using Block-Based Singular Value Decomposition, ”
Security Center, National Science Council under grants NSC- IEEE Transactions on Image Processing, March 1997, pp. 479-483.
95-2218-E-001-001, NSC-95-2218-E-011-015, iCAST [17] M. Antonini, M. Barlaud, P. Mathieu and I. Daubechies, “Image Coding
NSC96-3114-P -001-002-Y and NSC95-2221-E-029-020- Using Wavelet Transform, ” IEEE Trans on Image Processing,
MY3. Vol.1,No.2, April 1992, pp. 205-220.
[18] N. Garguir, “Comparative Performance of SVD and Adaptive Cosine
REFERENCES Transform in Coding Images, ” IEEE Transactions on
Communications, August 1979, pp. 1230-1234.
[1] A. Munteanu, J. Cornelis, G. Van der Auwera and P. Cristea, “Wavelet
[19] P. Waldemar and T. A. Ramstad, “Hybrid KLT-SVD Image
Image Compression - The Quadtree Coding Approach, ” IEEE
Transacations on Information Technology in Biomedicine, Vol. 3, Compression, ” IEEE International Conference on Acoustics, Speech
Sept., 1999, pp. 176-185. and Signal Processing, Vol. 4, Munich, Germany, April 21-24, 1997,
pp. 2713-2716.
[2] C. H. Lin, J. S. Jen and L. C. Kuo, “Distributed Discrete Wavelet
[20] R. Karkarala and P. O. Ogunbona, “Signal Analysis Using a
Transformation for Copyright Protection, ” 7th International
Workshop on Image Analysis for Multimedia Interactive Services Multiresolution Form of the Singular Value Decomposition, ” IEEE
(WIAMIS 2006), April 19-21 2006, pp. 53-56. Transactions on Image Processing, May 2001, pp. 724-735.
[3] C. Y. Lin, M. Wu, J. A. Bloom, I. J. Cox, M. L. Miller, and Y.M. Lui, [21] Ruizhen Liu and Tieniu Tan, “ An SVD-Based Watermarking Scheme
“Rotation , Scale and Translation Resilient Watermarking for for Protecting Rightful Ownership, ” IEEE Transactions on
Images, ” IEEE Transactions on Image Processing, vol. 10, no. 5, Multimedia, Vol.4, Issue1, March 2002, pp. 121-128.
2001. [22] Rykaczewski, R., “ An SVD-Based Watermarking Scheme for Protecting
[4] Chandra, D.V.S., “Digital Image Watermarking Using Singular Value Rightful Ownership, ” IEEE Transactions on Multimedia, Vol. 9, Feb.
Decomposition, ” The 45th Midwest Symposium on Circuits and 2007, pp. 421 - 423.
Systems(MWSCAS-2002) Vol.3, Aug. 2002, pp. III-264 - III-267 [23] S. D. Lin, and C. F. Chen, “ A Robust DCT-Based Watermarking for
[5] Cheng-qun Yin, Li Li, An-qiang Lv and Li Qu, “Color Image Copyright Protection, ” IEEE Transactions on Consumer Electronics,
Watermarking Algorithm Based on DWT-SVD, ” IEEE International Vol. 46, No. 3, August 2000, pp. 415-421.
Conference on Automation and Logistics, Aug. 2007, pp. 2607 - 2611. [24] S. O. Aase, J. H. Husoy and P. Waldemar, “A Critique of SVD-Based
[6] Craizer, M., Silva, E. A. B. D. and Ramos, E. G., “Convergent Image Coding Systems, ” IEEE International Symposium on Circuits
Algorithms for Successive Approximation Vector Quantization with and Systems VLSI, Vol. 4, Orlando, FL, May 1999, pp. 13-16.
79
[25] S.G. Mallat, “ A Theory for Multiresolution Signal Decomposition: The
Wavelet Representation, ” IEEE Transactions on PAMI, Vol. 11,No.7,
July 1989, pp. 674-693.
[26] Yu-Ping Hu, Zhi-Guang Chen, “ An SVD-Based Watermarking Method
for Image Authenticion, ” IEEE International Conference on Machine
Learning and Cybernetics, Vol. 3, Aug. 2007, pp. 1723 - 1728.
80
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Using Body Sensor Networks for Increased Safety in Bomb Disposal Missions
82
gear, and biohazard-related occupational work. The Vi- data is collected by the mote and transmitted to a monitor-
voResponder is supplied in three parts: a lightweight, ma- ing device such as a PC or PDA. The pulse oximeter is based
chine washable chest strap with embedded sensors; a data on the same hardware platform and aims to provide similar
receiver; and, VivoCommand software for monitoring and benefits in terms of portability.
data analysis. The sensors embedded in the chest strap mon- Working towards similar monitoring aims as the above,
itor the subject’s breathing rate, heart rate, activity level, Jovanov et al. [6] present a sensor node named ActiS that is
posture, and single point skin temperature. designed to be used as part of a wireless body area network.
Monitoring of the subject’s breathing is performed using This node incorporates a bio-amplifier and two accelerom-
a method called inductive plethysmography, where breath- eters, allowing the monitoring of heart activity as well as
ing patterns are monitored by passing a low voltage elec- the position and activity of body segments. The main focus
trical current through a series of contact points around the is the node’s use for monitoring the activity of physiother-
subject’s ribcage and abdomen. Monitoring of the subject’s apy patients outside of the laboratory. The proposed system
heart rate is performed via an ECG. speeds up the set-up process compared to is classical moni-
The VivoCommand software, provided with the device, toring counterpart solution and has the alternative advantage
displays the gathered data from the chest strap in real-time that it may be left attached to a patient for a prolonged pe-
on a remote PC. The parameters are updated every second riod (meaning that the set-up phase is not necessary before
along with 30-second average trends. The parameters are every physiotherapy session).
displayed with colour coding intended to allow quick as-
sessment of the status of up to 25 monitored personnel si- 2.3 Body Sensor Networks—
P latforms
multaneously. Baseline readings can be set individually per
monitored person. BSN based systems are often more constrained than or-
Another system for first responders is the patient moni- dinary embedded systems. These constraints are mainly in
toring system presented by [5], which was developed as part terms of power, size and weight. Power is restricted be-
of the CodeBlue project [15]. Unlike the VivoResponder, cause mains AC power is not available. Furthermore, size
this system is designed for monitoring patients at an emer- and weight restrictions limit the battery supplies that can be
gency scene, and provides the facility to monitor a patient’s used. Size and weight must be limited because large and
vital signs and location, as well as medical record storage heavy devices would be cumbersome, uncomfortable, and
and triage status tracking. Several additional devices were in applications such as the one described here, an unneces-
added to the Mica2 platform which supports this applica- sary distraction.
tion: location sensors, a pulse oximeter, a blood pressure In response to the above, some of the BSN systems de-
sensor, and an electronic triage tag. The electronic triage signed and implemented by research groups integrate within
tag replaces the paper equivalent commonly in use. (A pa- the nodes an appropriate central processing unit, memory
per triage tag is also provided as backup if the electronic and radio transceiver as a single custom chip. An exam-
tag fails.) The mote continuously transmits patient infor- ple here is the MITes platform (for monitoring movement
mation to a tablet device which the first responder carries of human subjects) developed by Tapia et al. [16], which is
in a weatherproof casing. Mote packages are distributed to based around the Nordic VLSI Semiconductors nRF24E1
patients as required once the scene is reached. chip. This chip integrates a radio transceiver and an Intel
8051 based processor core that runs at 16MHz and pro-
2.2 Continuous monitoring solutions for patient vides a nine channel 12-bit ADC and various other inter-
care faces, such as SPI (serial peripheral interface) and GPIO
(general purpose I/O). This approach is efficient in terms of
The CodeBlue project [15, 11] aims to provide an archi- size and weight, due to the integration of several functions
tecture and system implementation for continuously mon- onto one chip, but has limited generality, as it cannot easily
itoring patients in a hospital environment. Two of the de- be adapted with new components (such as a different radio
vices produced during the course of this project were a device).
mote-based EKG and pulse oximeter, with the goal of in- Another, more popular design option is to use off-the-
tegrating them into one device. Fulford-Jones et al. [4] shelf components. There is a trade off made between pro-
present the EKG unit, which is built onto a Mica2 mote. It is cessing and storage capabilities and the size and power con-
designed for continuously monitoring patients in a hospital sumption of the devices. This means that the devices se-
intensive care unit. Standard “portable” EKG systems re- lected would likely be considered severely under-powered
quire power from an electrical outlet and are moved around in other systems (often including 16- or even 8-bit pro-
on a cart which must be taken with the patient, whereas this cessors) and have small amounts of memory (in the order
system aims to be lightweight and unobtrusive. The EKG of tens or hundreds of kilobytes). For instance, the Texas
83
Instruments MSP430F149 micro-controller has been used also depend on the ambient conditions and is likely to in-
for several systems including those developed by Lo and crease during operations in hot compared to temperate envi-
Yang [10] and Jovanov et al. [7]. This is a 16-bit processor ronments. Approaches to attenuate heat strain have the po-
running at 8MHz incorporating 60KB of flash memory and tential to reduce physiological stress and increase safe op-
2KB of RAM and provides interfacing opportunities via 48 erating time. Recent developments in this area include the
GPIO lines and a 12-bit ADC. The system developed by Lo integration of cooling devices and altered equipment config-
and Yang used ECG sensors, accelerometers, and a temper- urations. Clearly knowledge of differences between phys-
ature sensor to monitor patient health. The system devel- iological and thermal responses of the operatives across a
oped by Jovanov et al., was used for monitoring the elderly range of conditions is essential to inform the requirements
and those undergoing physiotherapy. of an “active” system to optimise the microclimate between
Other systems expand upon commercial devices such as the skin and protective clothing to facilitate heat transfer
the Mica2 and MicaZ motes developed at the University of and maintain body temperature. Laboratory based activity
California, Berkeley, or Intel’s Imote platform. This ap- simulation protocols have recently been developed to assess
proach often has a disadvantage in that the basic platform the impact of such innovations on UHS [9, 17].
is generic, and may not directly provide the facilities re- This paper uses a modified version of Zhang’s comfort
quired for the specific BSN project. Such commercial plat- model [22] to estimate thermal sensation from tempera-
forms are also often larger and heavier than custom devel- ture data and compares it to that actually reported by trials
oped platforms as they are required to be general purpose participants [17, Section 6]. In brief, participants under-
in order to achieve any commercial success. The MicaZ took up to four 16:30 (min:sec) activity cycles consisting
mote uses the Atmega128L, an 8-bit processor running at of treadmill walking (4 km/h, 3 min), unloading and load-
8MHz and featuring 128KB of flash memory to which an ing weights from a kit bag (≈ 2 kg each, 2 min), crawl-
additional 512KB is added externally on the mote itself. A ing and searching activity (2 min), arm cranking (unloaded,
10-bit ADC, UART and I2 C bus are also available. Gao 3 min), seated physical rest (5 min) interspersed with 30
et al. [5] developed a system based around the this mote, sec intervals between the first three activities. Heart rate
adding various sensors and supporting devices to allow pa- (HR; Polar Vantage), rectal temperature (Tcore ), skin tem-
tient tagging and monitoring in an emergency response en- peratures (Ts ; arm, chest, thigh and calf [12]) were mon-
vironment. Walker et al. [19] present a blood pressure mon- itored throughout. Thermal sensation, reported on a 0 to
itoring system based on the MicaZ platform. In that work, a 8 scale [21] that incorporates verbal anchors from unbear-
commercial blood pressure monitoring device is connected ably cold (0) to comfortable (4) to unbearably hot (8) was
to the MicaZ via a serial interface. sought at specified intervals. Wearing an EOD suit dramati-
The system proposed in this paper uses off-the-shelf cally increased physiological strain as indicated by elevated
components, although integration into custom chips is fore- heart rate (up to 60 bpm more than without the suit) and
seen as an avenue to be explored in the future. gradual increase in core and mean skin temperatures (up
to 2◦ C more than without the suit) and thermal sensation
3 Suit environment in all four participants. Such responses are likely to have
a negative impact on performance. Continuous monitoring
is essential since the rate of rise in core body temperature
The combination of elevated metabolic heat production can abruptly increase when mean skin temperature reaches
M and restricted avenues for body heat loss (convection C, a similar level. Furthermore unpublished data from our lab-
conduction K, radiation R and evaporation E) when wearing oratory demonstrate that wearing a phase change cooling
necessarily heavy and bulky protective clothing has a neg- vest under the EOD suit results in a reduction in chest tem-
ative effect on the heat balance of the body and results in perature (≈ 3◦ C) and elevation in upper arm temperature
heat storage. This is a situation where the thermoregulatory (≈ 0.5◦ C) compared to not wearing a cooling vest. Such
system is unable to defend against increases in core body data highlight differences between body segments and sup-
temperature1 . This condition of uncompensable heat stress port the rationale for multi-point temperature sensing to be
(UHS) is associated with significant physical and psycho- used when using thermal information to estimate thermal
logical impairment [2] therefore placing the individual at well being of operatives in protective clothing.
an increased risk of making an avoidable error and jeop-
ardising the mission. Furthermore as well as the micro-
climate within the EOD suit, the rate of heat storage will 4 System Design and Implementation
1 The balance between heat gain and heat loss is represented by the heat
A prototype sensing system is in development to pro-
balance equation: S = M − (±W ) ± (R + C) ± K − E where S is the rate
of body heat storage; M is the rate of metabolic heat production; W is the vide a greater data gathering capability than that offered by
mechanical work [13]. currently available monitoring systems. This system is de-
84
Cooling A Processing Node
sense System
B C
model D
Actuation Node
environment transmit E
decide
F
85
Temperature Sensors
...
Raw data
Thermal
sensation information
Figure 5. A snapshot of the remote monitor-
ing visualisation component.
Figure 4. Information flow for remote moni-
toring
contextual information such as number of sensors, position
of sensors and whether redundant sensors have been used.
causing communications link failures (such as obstructions Due to the nature of embedded, low power devices, reduc-
and out of range mobility), it is necessary to first buffer ing the number of bits that need to be transmitted extends
the information, and then, when it is sensed that commu- their lifetime.
nications are available, to transmit all buffered information. Furthermore, communication with the base station may
Given that only the information is being buffered rather than be intermittent due to radio jammers or other factors as
whole ready-to-transmit packets, this approach saves mem- noted previously. Even though buffering may help, the ef-
ory and avoids dropped packets due to overflowing commu- fective bandwidth will be considerably less than that avail-
nication buffers. The last phase is the information arrival at able under optimal conditions. For this reason, it makes
the remote monitoring station and its conversion to visual sense to perform modelling on-board and to transmit ther-
form. mal sensation estimates.
A snapshot of the remote monitoring visualisation com- Effective visualisation systems need to assist the user
ponent is shown in figure 5. The main information display with interpreting the data. It has been the authors’ expe-
panel (in this case using illustrative data) includes a 3D fig- rience that it is difficult for a user to assess thermal comfort
ure showing the interpolated temperature distribution across by looking at individual skin temperatures. Furthermore,
the subject’s skin, the current average skin temperature, and skin temperatures tend to change slowly and overall trends
the current thermal sensation level. Other panels show the are difficult to assess. It has been noticed, for example, that
location and status of the sensors and the history of the in- skin temperature of one body segment may be rising while
coming data. the temperature of another is falling, whilst the overall ther-
mal sensation follows yet another trend.
5 In-Network Thermal Sensation Modelling A final advantage for modelling in-suit is that more ef-
fective and efficient cooling might be achieved by using
In this section, a case is established for performing ther- thermal sensation rather than single point temperature mea-
mal sensation modelling “in-network” and communicating surements as the basis for controlling the cooling system.
to mission control this global “well-being” parameter. The The thermal sensation model, used in the current proto-
argument is raised from two perspectives: first, a network- type system, is described below.
ing hardware perspective, and second, an information ben-
efit one. 5.1 Thermal sensation model
Thermal sensation estimates can be transmitted in fewer
bits than a detailed thermal profile from a large number of Several models of human thermal sensation exist. Exam-
sensors. Also, a sensation estimate removes unnecessary ples are the PMV-PPD and SET* [3] models. In this work, a
86
model provided by Zhang [22] has been evaluated in detail. 5
Self-assessed
Zhang’s model was chosen as it has been well researched Estimated
Thermal Sensation
3
range [−4, 4], with −4 being very cold and 4 being very
hot. (Note that a bias of −4 has been applied to the trials 1
87
7 Conclusions and future work
3
and the suitability of modelling thermal sensation based on
skin temperature. The approach taken by the authors ex-
2
ploited in-network information extraction and communica-
1
tion of real-time thermal sensation to mission control to fa-
cilitate both high yield and timely remedial actions. This
0
work has the potential to provide real improvement to both
the working conditions of EOD technicians and greater lev-
-1
els of safety.
-20 -10 0 10 20 30 40 50 As it stands, the model used is not a perfect fit for this
Time (minutes)
application. Some possible reasons are:
Figure 7. Self-assessed overall thermal sen- • experimentation has shown that there is a tendency for
sation versus estimated for subject 3 with the discomfort to grow with time when wearing the suit,
full protective suit and no cooling. possibly due to the subject becoming tired, thus affect-
ing their subjective assessment,
3
Temperature (C)
1 References
35
88
of the 26th IEEE EMBS Annual International Conference, [18] Vivometrics. Vivometrics: Better results through non-
San Francisco, September 2004. invasive monitoring. Available online http://www.
[5] T. Gao, D. Greenspan, M. Welsh, R. R. Juang, and A. Alm. vivometrics.com; accessed 16-11-2007.
Vital signs monitoring and patient tracking over a wireless [19] W. Walker, T. Polk, A. Hande, and D. Bhatia. Remote blood
network. In 27th Annual International Conference of the pressure monitoring using a wireless sensor network. In
IEEE EMBS, pages 102–105, Shanghai, September 2005. 6th Annual IEEE Emerging Information Technology Con-
[6] E. Jovanov, A. Milenkovic, C. Otto, and P. C. de Groen. A ference, Dallas, Texas, August 2006.
wireless body area network of intelligent motion sensors for [20] G. Welch and G. Bishop. An introduction to the Kalman fil-
computer assisted physical rehabilitation. Journal of Neuro- ter. Technical report, University of North Carolina at Chapel
Engineering and Rehabilitation, 2(6), March 2005. Hill, 1995. Available online http://www.cs.unc.edu/
[7] E. Jovanov, D. Raskovic, J. Price, J. Chapman, A. Moore, ~welch/kalman; accessed 3-12-2007.
and A. Krishnamurthy. Patient monitoring using personal [21] A. Young, M. Sawka, Y. Epstein, B. Decristofano, and
area networks of wireless intelligent sensors. Biomedical K. Pandolf. Cooling different body surfaces during upper
Sciences Instrumentation, 37:373–378, 2001. and lower body exercise. J. App. Physiol., 63:1218–1223,
[8] S. L. Keoh, N. Dulay, E. Lupu, K. Twidle, A. E. Schaeffer- 1987.
Filho, M. Sloman, S. Heeps, S. Strowes, and J. Sventek. Self [22] H. Zhang. Human Thermal Sensation and Comfort in Tran-
managed cell: A middleware for managing body sensor net- sient and Non-Uniform Thermal Environments. PhD thesis,
works. In Proceedings of the 4th International Conference University of California, Berkeley, 2003.
on Mobile and Ubiquitous Systems: Computing, Network-
ing and Services (Mobiquitous), Philadelphia, USA, August
2007.
[9] J. Kistemaker, E. den Hartog, and C. L. Koerhuis. Thermal
strain and cooling during work in a bomb disposal (EOD)
suit. In TNO Defence, Safety and Security, Soesterberg, The
Netherlands. Personal armour systems symposium., pages
20–22, Royal Armouries Museum, Leeds, United Kingdom,
September 2006.
[10] B. Lo and G.-Z. Yang. Architecture for body sensor net-
works. In Perspective in Pervasive Computing, pages 23–28,
October 2005.
[11] D. Malan, T. Fulford-Jones, M. Welsh, and S. Moulton.
Codeblue: An ad hoc sensor network infrastructure for
emergency medical care. In International Workshop on
Wearable and Implantable Body Sensor Networks, April
2004.
[12] N. L. Ramanathan. A new weighting system for mean
surface temperature of the human body. J App. Physiol.,
19:531–533, 1964.
[13] M. N. Sawka and A. J. Young. ACSM’s Advanced Exer-
cise Physiology, chapter Physiological systems and their re-
sponses to conditions of heat and cold. Lippincott Williams
and Wilkins, Baltimore, USA, 2006.
[14] C. A. Shanks. Mean skin temperature during anaesthesia:
An assessment of formulae in the supine surgical patient.
British Journal of Anaesthesia, 47(8):871–876, 1975.
[15] V. Shnayder, B. rong Chen, K. Lorincz, T. R. F. Fulford-
Jones, and M. Welsh. Sensor networks for medical care.
Technical report, Division of Engineering and Applied Sci-
ences, Harvard University, 2005.
[16] E. M. Tapia, N. Marmasse, S. S. Intille, and K. Larson.
Mites: Wireless portable sensors for studying behavior. In
Proceedings of Extended Abstracts UbiComp 2004: Ubiqui-
tous Computing, 2004.
[17] C. D. Thake and M. J. Price. Reducing uncompensable heat
stress in a bomb disposal (EOD) suit: a laboratory based
assessment. In Proceedings of the 12th International Con-
ference on Environmental Ergonomics (ICEE 2007), Piran,
Slovenia, 2007. ISBN 978-961-90545-1-2.
89
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract—In dense wireless sensor networks, density con- essary. Data aggregation [11] has been proved to be an
trol is an important technique for prolonging network’s efficient approach to decrease the in-network traffic, and
lifetime. However, due to the intrinsic many-to-one com- hence reduce the forwarding workload of sensor nodes.
munication pattern of sensor networks, nodes close to the
sink tend to deplete their energy faster than other nodes. However, the energy consumption on overhearing still
This unbalanced energy usage among nodes significantly results in an obvious imbalance on energy usage. In this
reduces the network lifetime. In this paper, we propose paper, we propose a mechanism to alleviate the unbal-
neighborhood-aware density control (NADC) to alleviate this anced energy usage by reducing unnecessary overhearing
undesired effect by reducing unnecessary overhearing along along routing paths. Our approach extends the concept
routing paths. In NADC, nodes observe their neighborhoods
and dynamically adapt their participation in the multihop of density control mechanisms. Instead of achieving a
network topology. Since the neighborhood information can uniform density over the network, we further exploit the
be easily observed through the overheard information, the local information to reduce the density along routing
density in different regions can be adaptively adjusted paths, in order to reduce the unnecessary overhearing
in a totally distributed manner. Simulation experiments energy consumption.
demonstrate that NADC alleviates the extremely unbalanced
workload and extends the effective network lifetime without Some related works are reviewed in Section 2. Section
significant increase in data delivery latency. 3 describes our proposed approach, followed by some
implementation issues in Section 4. We present the eval-
uation results in Section 5, and conclude in Section 6.
1. I NTRODUCTION
Wireless sensor networks (WSNs) have emerged as a 2. R ELATED W ORK
promising solution for various applications such as cli-
mate monitoring, tactical surveillance, and vehicle track- A. MAC Layer Overhearing Avoidance
ing. Energy consumption is the most important factor to Overhearing is one of the most important components
determine the lifetime of a sensor network, because sensor of energy waste in sensor networks. It occurs when a node
nodes usually have very low energy sources. Optimizing receives packets that are destined to other nodes. Various
the energy usage in sensor networks is difficult because approaches in the medium-access control (MAC) layer
it involves not only reduction of energy consumption but have been proposed to reduce the overhearing energy
also prolonging the lifetime of the whole network. consumption.
Various energy-efficient paradigms and strategies have The MAC protocols in sensor networks can be cate-
been devised to collect and route packets towards the sink, gorized into synchronized and asynchronous approaches.
trying to maximize the lifetime of sensor nodes while Synchronized protocols, such as S-MAC [29] and T-
maintaining system performance and operational fidelity. MAC [23], use RTS-CTS mechanism for overhearing
However, due to the intrinsic many-to-one communication avoidance. On the other hand, asynchronous protocols,
pattern of sensor networks, the nodes closer to the sink such as B-MAC [17] and WiseMAC [7], rely on low
have to forward more packets than the ones at the pe- power listening, also called preamble sampling, while
riphery of the network. Therefore, nodes around the sink communicating packets. These protocols suffer from the
would deplete their energy faster, leading to an energy overhearing problem where receivers who are not the
hole around the sink. This energy hole problem occurs target of the sender also wake up during the long preamble
regardless of the routing strategies and MAC protocols, and have to stay awake until the end of the preamble (or
and may severely reduce the network lifetime. the packet). With the support of some packetizing radios,
To alleviate this undesirable effect, a mechanism to X-MAC [3] reduces this unnecessary overhearing by
balance the energy usage among sensor nodes is nec- employing a series of strobed preambles, each containing
123
When in the active state, a node does the data send-
ing/receiving as well as neighbor discovery. If the node
has no data to send in this epoch, it sends out a beacon
packet as a notification of its existence. At the end of
the epoch, it makes the state transitioning decision by
following the same rules as in the discovery state.
In this simple UDC mechanism, all nodes except source
Figure 1. State transitioning diagram of uniform density control. Nb and forwarding nodes perform density control based on a
represents the number of neighbors, and Th represents the threshold. predefined threshold value. The threshold value is chosen
so that there is a high probability that the active nodes
These networks have to remain operational for months or form a connected graph, so that multihop forwarding
years, but send out data only on the occurrence of an an- works. If the density of active nodes can not provide
imal passing by. Although it is desirable that the transfer sufficient connectivity in the network, the data delivery
state be energy-efficient, it may be more important that latency (i.e. the time required to relay an event packet
the monitoring state be low-power as the network resides to the sink) will increase dramatically. Since a node
in this state for most of the time. This observation holds does not know whether it is required to be active in
true for many other applications as well. order to maintain good connectivity in the network, to
We assume that the sensors in the network are homo- be conservative the threshold value tends to be high to
geneous; that is, all sensors have the same computation keep a large number of active nodes. That means nodes
capability and radio range, and are powered by batteries are active even when they could be asleep, and results in
with the same available energy. We also assume that unnecessary energy consumption.
the power consumption of sensor nodes is dominated
by communication costs, as opposed to sensing and C. Neighborhood Type
processing costs. This assumption is reasonable for many
In many event-based sensor network applications, such
types of sensor nodes that require very little energy, such
as habitat monitoring or intrusion detection systems,
as pressure and temperature sensors.
source nodes tend to locate in the same area where events
occur. As shown in Fig. 2, we can categorize the sensor
B. Uniform Density Control field into three different types: hot area, midstream area,
Many density control methods have been proposed to and silent area. A node’s neighborhood type is identified
achieve a uniform density over the network [27], [26], according to the following rules:
[28]. Thus we use a simple uniform density control (UDC) • A node is in a hot area if it is a source or at least
mechanism as our baseline to evaluate the performance one of its neighbors is a source. A node is referred
of NADC. Similar to AFECA and PEAS, UDC uses the to as a source if it detects events and generates data
number of active neighbors as the criteria of node state packets.
transitioning. In UDC, nodes are in one of three states: • A node is in a midstream area if none of its neigh-
sleep, discovery, and active. A state diagram is shown in bors is a source and at least one of its neighbors
Fig. 1. Time is divided into epochs (see Section 4.3), and or itself is a forwarding node. A forwarding node
the state transitioning occurs at the end of epochs. doesn’t generate data packets but forwards packets
Initially nodes start out in the sleep state. When sleep- along the routing path.
ing the radio is off, not consuming power. In this state they • A node is in the silent area if all its neighbors are
keep their radio turned off for time Tsleep , then transition idle nodes (i.e. none of its neighbors is a source or
to discovery. If a node has data to send while sleeping, it forwarding node).
transitions to active and starts sending the data. (Although
By embedding the node type information in the trans-
the radio is off, sensors and other parts of the node are
mitted packets, each node can keep track of the node
still on.)
type of its neighbors, and easily identify its neighborhood
When in the discovery state, a node turns on its radio
type. Algorithm 1 shows the process of neighborhood
and listens for messages for an epoch. It also performs
observation.
neighbor discovery by maintaining the number of active
neighbors, which is the number of neighboring nodes it
hears in this epoch. At the end of the epoch, the node D. Neighborhood-Aware Density Control
transitions to active if it gets a routing message and The objective of NADC is to avoid the unnecessary
participates in the route, or if it decides to send data. overhearing by reducing the active node density along
Otherwise it uses the number of active neighbors, Nb, and the routing paths (i.e. hot areas and midstream areas)
a predefined threshold, Th, as the transitioning criteria: while keeping the data delivery latency in a reasonable
transition to active if Nb < Th, otherwise returns to sleep. range. In UDC, since all nodes other than source and
124
Table 1
NADC NODE STATES
State Radio Sensor Communication Task
Sleep off on —
neighbor discovery
Discovery on on neighborhood observation
data receiving
neighbor discovery
Active on on neighborhood observation
data sending/receiving
Initially nodes start out in the sleep state, where a ran- 1 Here we assume that nodes have their sensors on while sleeping,
dom timer is used to set the length of sleep in a predefined thus low density doesn’t lead to low sensing coverage or observation
fidelity. In systems which nodes turn off sensors while sleeping, T hh
range to avoid synchronization. When a node wakes up, it can be set to a higher value to keep more active nodes near the event
transitions to the discovery state, and performs neighbor sources for higher observation fidelity.
125
4. I MPLEMENTATION I SSUES If no potential parents are available, the node temporarily
A. Acquisition of Neighbor Information holds the packet until a new parent is available.
In NADC, we exploit the overhearing effect as an
C. Pipelined Aggregation
approach for neighbor discovery and neighborhood ob-
servation. Overhearing is one of the most important com- We use pipelined aggregate [13], [14] to perform
ponents of energy waste in sensor networks, and therefore the in-network aggregation for result collection. In this
overhearing avoidance has been an important issue in the approach, time is divided into intervals, which we called
design of MAC protocols. Here we first describe how epochs. In each epoch, every node listens for packets
NADC works on B-MAC [17], the default MAC protocol from its children, computes the aggregate and sends to
in TinyOS [8], then discuss how neighbor information its parent. The aggregate consists of the combination of
can be acquired if another overhearing avoiding MAC its own local sensor readings with any child values it
protocol is used. received in the previous epoch. Here we only consider
In B-MAC, nodes have asynchronous duty cycles, and aggregates which result in the same packet size, such as
each packet is transmitted with a long preamble so that MAX, MIN, and SUM.
the receiver is guaranteed to wakeup during the preamble
transmission time and remain awake to receive the data. 5. E VALUATION R ESULTS
Since all the neighbors of the sender will receive the A. Simulation Settings
packet, the neighbor information can be easily acquired To reduce unnecessary overhearing along routing paths,
by embedding the helpful information (i.e. node type) in NADC tries to reduce the density of active nodes in hot
the packet. When a node hears a packet not addressed areas and midstream areas, while keeping the density in
to itself, it can retrieve the helpful information before the normal level in silent areas in order to maintain good
dropping the packet. connectivity. To evaluate the performance of NADC, we
Synchronized MAC protocols, such as S-MAC [29] compare NADC with three different UDC settings:
and T-MAC [23], use RTS-CTS to avoid overhearing.
• UDC-high: Uniform density control with high active
Although the data packet is received only by the intended
node density (T hh = T hm = T hs = 12).
recipient, the RTS and CTS are still received by all the
• UDC-medium: Uniform density control with medium
neighbors. So the helpful information can be embedded
active node density (T hh = T hm = T hs = 6).
in RTS or CTS to facilitate the neighbor information
• UDC-low: Uniform density control with low active
acquisition. For asynchronous MAC protocols, X-MAC
node density (T hh = T hm = T hs = 2).
[3] exploits shortened preamble to reduce the overhearing
• NADC: Neighborhood-aware density control (T hh =
waste on long preamble and data packets. The shortened
T hm = 2, T hs = 12)2 .
preamble, however, is still detected by all the neighboring
nodes. Therefore, the helpful information can still be put In each epoch (20 sec), if a node detects an event,
in the preamble and be acquired by the neighbors. it generates a data packet and forward it to the sink.
Data aggregation is performed in each node to combine
multiple received packets into a single packet on their way
B. Routing in Dynamic Topology to the sink. We also use implicit acknowledgment [4] to
As in query processing systems [14], the operation of maintain the reliability of packet delivery. For simplicity,
the network consists of two phases: query dissemination we use a fixed range of sleep time (3–6 epochs) whenever
and result collection. An aggregation tree is constructed a nodes transitions into the sleep state, while leaving
during the query dissemination phase by flooding a query adaptive sleep time for future work.
message from the sink to the network. If a node is asleep We use Prowler [22], a probabilistic wireless network
during the query dissemination and wakes up afterwards, simulator, as the simulation tool. The network settings
it can get the query via query sharing [14]: when a node for the simulation are shown in Table 2. In the network,
hears a result packet for a query that it is not yet running, a 320 × 320 field is evenly divided into 1024 grids,
it asks the sender of that data for a copy of the query, and and two nodes are placed at random positions within
begins running it. each grid. The sink is placed at the center of the field.
In the result collection phase, each node sends the We use B-MAC [17] (with the default configuration in
packets to the sink along the aggregation tree. With TinyOS) as the MAC protocol, with low-power listening
density control mechanisms, however, nodes turn on and enabled. The communication range is set to 22 units,
off, and the parent node may not be awake to receive the which guarantees that each node is able to communicate
packet. We modified MintRoute [24], the built-in routing with at least one node in its neighboring grids. The
protocol in TinyOS, to cope with such dynamic topology 2 We reduce T h and T h
h m aggresively for overhearing avoidance.
change. Each node maintains a neighbor table, and dy- Depending on different system assumptions, difference threshold values
namically chooses its parent before transmitting packets. may be used (see Section 3.5).
126
Table 2 20
N ETWORK SETTING
127
The unbalanced energy usage can be alleviated if the
overhearing waste can be reduced in the areas with high
communication activity. This can be achieved by either
uniformly reducing the density in the network (as UDC-
low does) or selectively reducing the density along the
routing paths (as NADC does). We show in Fig. 6 that
NADC and UDC-low successfully extend the lifetime of
Figure 5. The difference in the timing of event delivery from source
nodes in different hops away from the sink. The result shows the average the nodes close to the sink by reducing the unnecessary
of five simulation runs, and the errorbar represents the variation. overhearing in the central area of the network.
The lifetime indications of the simulation is shown
its capability of maintaining better connectivity from the in Fig. 7. As expected, the dead nodes soon form a
source nodes to the sink. bottleneck of communication to the sink. Although the
total number of detected events keeps increasing, the
delivery rate decreases dramatically due to the energy
D. System Performance and Network Lifetime hole problems. However, the energy hole problem may
To evaluate the performance of NADC on the network not necessarily first occur on the nodes closest to the
lifetime, we simulate an application that keeps track of sink. Some nodes farther away may deplete their energy
moving targets in the network. Various definitions of sooner and affect the event delivery, and the sink may
network lifetime have been proposed in literatures [2]. stop receiving events packets even when it still has alive
However, a formal definition is not straightforward and neighbors.
may depend on the application scenario in which the Compared with the other three UDC settings, NADC
network is used. Here we use the following four metrics has longer network lifetime than UDC-high and UDC-
as the indications of network lifetime: a) number of alive medium, and achieves similar network lifetime as UDC-
neighbors of the sink, b) number of delivered events to the low. However, UDC-low achieves lower energy consump-
sink, c) total number of dead nodes, and d) total number tion at the cost of significant increase in data delivery
of detected events in the network. While the number of latency, while NADC has a much smaller increase in the
alive neighbors of the sink and the number of delivered latency.
events can be directly obtained from the sink, the total
number of dead nodes and detected events require the
knowledge of the whole network. 6. C ONCLUSION
In the simulation, we have 20 moving targets in the
network. The targets are randomly placed, and Random In this paper, we propose neighborhood-aware density
Waypoint model [9] is used to model the target movement. control to alleviate the unbalanced energy usage by reduc-
The sensors close to the targets (i.e. within the sensing ing the unnecessary overhearing along routing paths. In
range of 5 units) will detect the event and become source NADC, nodes observe their neighborhoods and dynam-
nodes. Source nodes generate event packets in each epoch. ically adapt their participation in the multihop network
Event packets are routed on the aggregation tree towards topology. Since the neighborhood information can be
the sink, and aggregation is performed on routing paths. easily observed through the overheard information, the
Fig. 6 shows the energy hole problem due to un- density in different regions can be adaptively adjusted in
balanced energy usage by dividing the nodes into four a totally distributed manner. By reducing the node density
classes based on the nodes’ location. Among the four near the routing paths while keeping the nodes involved
settings, UDC-high suffers from the worst unbalanced in packet generation or forwarding in the active state,
energy usage among nodes in different levels, which the overhearing waste can be reduced without dramatic
results in a high percentage of dead nodes near the sink. increase in data delivery latency.
Since there are more active nodes along the routing paths, We ran simulations with four different density con-
the large amount of overhearing waste soon depletes the trol settings: UDC-high, UDC-medium, UDC-low, and
limited energy budget of nodes close to the sink. While NADC. Although UDC-high has the lowest delivery la-
there are less than 5% of dead nodes in the peripheral of tency, the high density of active nodes results in large
the network (i.e. levels higher than 7), there have been amount of unnecessary overhearing along the routing
more than 80% of nodes dying in the central area (i.e. paths and quickly forms an energy hole near the sink.
within the first two levels close to the sink). When there UDC-low alleviates the extremely unbalanced energy
are not enough alive nodes in the inner levels of the usage problem, but incurs significant increase in latency.
network to maintain the routing paths to the sink, the The adaptability of NADC to adjust the node density in
curves representing the inner levels stop rising because different regions successfully alleviates the unbalanced
few event packets can be propagated to the central area. energy usage with a small increase in delivery latency.
128
Figure 6. Percentage of dead nodes in areas in different levels of the network. The level represents the number of hops away from the sink. The
parenthesized number represents the number of nodes in the specified levels.
UDC−high UDC−medium UDC−low NADC
(a) # alive sink neighbors (b) Total # events received by sink (c) Total # dead nodes (d) Total # detected events
30 1500 1500 2500
25 2000
20 1000 1000
1500
15
1000
10 500 500
5 500
0 0 0 0
0 25 50 75 100 125 150 175 0 25 50 75 100 125 150 175 0 25 50 75 100 125 150 175 0 25 50 75 100 125 150 175
Epoch Epoch Epoch Epoch
129
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
†
Dept. of Computer Science, National Chiao Tung University, Taiwan
Email: {leeboy, wcpeng}@cs.nctu.edu.tw
§
Dept. of Computer Science and Software Engineering, Auburn University, Auburn, USA
Email:{weishinn, hamilton}@eng.auburn.edu
‡
Dept. of Computer Science, Hong Kong Baptist University, Hong Kong
Email: xujl@comp.hkbp.edu.hk
n7 o3
Prior works in [7] proposed a framework for location ser- n13
vices in which a free space is divided into a number of grid
cells. Then, a cloaked region consists of grid cells in which (a) An example of a spatial network.
the total number of users is at least k. Hence, the cloaked n2
n2
n8
n8
spatial area whose shape is rectangle results in the larger 5
o6 3 5
5
1
o6
6
3
3 4
1 6 3 4
5 n14
candidate size. The problem we study could be better un- n1 n3 n9
5
n11 n14 n1 n3
5
n9
5
n11
5
5 5 o4 o2
derstood by an illustrative example in Figure 1(a), where o7
o4 o2 o7
1 1
1 1
spatial networks is modeled as a graph with each vertex as n4
2 1 n4
2
5
1
2 4
5 2 4 n10
n10
a junction and edges between two junctions are roads. As- 3
3
2 2 6 2 2 3
3
2 2 6 2 2
n5 n6 o1
sume that k is set to 4 for k-anonymity and the KNN spatial n5 n6
3
o5 3
n12 o1 n15
3
o5 3
n12 n15
n7 n7 o3
query is issued. Figure 1(b) shows the cloaked region de- n13
2 o3
n13
2
91
temporal cloaking to protect user location privacy. More-
Location-based
over, the authors in [2] proposed the CliqueCloak algo- 1. User’s profile, location and query 2. Cloaked road segments to query service provider
92
Efficiency: the cloaked algorithm should efficiently derive Given a spatial network, the total length of road seg-
cloaked segment set based on the user privacy profile due ments is denoted as T otallength and the total number of
to that a spatial network is usually large-scale and mobile road segments is expressed by T otalrs . The total length of
users are dynamically move in a spatial network. road segments in block Bh,i denotes as LengthBh,i . We
intend to let the total length of road segments in each block
3 The Spatial-Temporal Connective Location at the same level as close as possible. Thus, we should
first derive the average total length for each block and in-
Anonymizer
tend to minimize the variance of each block in terms of to-
tal length of road segments. The expected total length for
In order to efficiently derive the cloaked segment set, we
each block at level i is denoted as δi . In particular, for level
first develop an index structure for a spatial network. In
1, adjacent road segments will be merged to form a block.
light of the index structure, we propose a spatial-network
Hence, the maximal number of blocks in level 1 is deter-
based cloaking algorithm.
mined as T otal
2
rs
if two adjacent road segments are put into
T otallength
3.1 Index Structure of a Spatial Network one block. Thus, δ1 is formulated as T otal rs
. Once δ1 is
2
determined, adjacent road segments are put into one block
Similar to the work in [12], given a spatial network, each if their total length is smaller than δ1 . Then, for each time,
vertex maintains an adjacency list in which each data node we consider add one road segments into a block. If one road
contains the adjacent vertex, the length of the correspond- segment is included and the total length of road segments in
ing road segment and the number of users along with this the block is larger than δ1 +, this road segment is removed.
road segment. To efficient derive the cloaked segment set is a acceptable tolerance value when one more road seg-
fulfilling the user privacy profile, we proposal a hierarchi- ment is put in the block while the total length is larger than
cal structure that decomposes the spatial network into Lh δ1 . For blocks at higher level (e.g., i), we will merge adja-
levels and each level contains a various number of blocks cent blocks at lower level (e.g., i-1 in this example). Denote
consisting of a set of road segments. Clearly, the root of the the number of blocks at level i−1 is N blockLi−1 . We could
totallength
hierarchical data structure has only one block that covers have the expected total length δi as N block Li−1
. Then, ad-
the whole set of road segments. Since we have two features jacent blocks will be merged together if the difference be-
of a spatial network in a user privacy profile, for each fea- tween their total length of road segments and δi is within .
ture, we will build the corresponding index structure. In the Same as in generating blocks in level 1, each time, one adja-
following, an index data structure for the length of road seg- cent block at lower level is included into a higher level block
ments is described. The index structure for the number of if the total length of the higher level block is smaller than δi .
road segments is build in the similar way. To facilitate the Similar to the principle for deriving blocks at level 1, once
presentation of this paper, the jth block in level i is denoted the total length in higher level block is larger than δ1 + af-
as Bi,j . Blocks contain a set of pointers to the lower level ter including the newly added road segment. This newly
blocks and the total number of users within the set of road added road segment will be removed. In order to build the
segments in lower levels blocks. For each block in the same index structures, we adopt a bottom-up approach to first de-
level, the total length of road segments in each block should rive lower level blocks and iteratively generate higher level
be as close as possible. In other words, the variance of each block through merging adjacent blocks until the whole set
block in terms of the total length of roads segments is small of road segments is covered by one block. An example of
and thus, it is able to appropriately obtain a set of road seg- a spatial network is shown in Figure ?? and assume that
ments with their total length of road segments as close to is set to 2. In the beginning, we should calculate δ1 . Since
Lmin as possible. the total length of road segments in ?? is 86 and the num-
An index structure is built in a bottom-up manner. The ber of road segments is 14, we could have δ1 = 86 7 = 12.3.
blocks in level 0 are the original road segments in a spatial Consider a road junction n10 as an example, where two ad-
network given. Then, two adjacent road segments will be jacent road segments are able to put into one block since the
put in one block at level 1. As pointed out early, each block difference between their total length and δ1 is smaller than
at the same level should have the approximate total length (i.e., 14-12.3=1.7 ≤ 2). Note that no more adjacent road
of road segments. We will describe the criterion of putting segments is included since their total length of this block is
two adjacent road segments into a block later. Once blocks already larger than δ1 +. For a road junction n9 , adjacent
at level 1 are generated, two blocks at level 1 will be formed road segments (n9 , n3 ), (n9 , n11 ) and (n9 , n6 ) are in the
into a block at level 2. Following the same operation, one same block since their total length is smaller than δ1 + (i.e.,
could recursively merge two lower level blocks for higher 7+3+3=13 < 12.3+2=14.3). In our example in procedure
level blocks until one block covers all road segments of a until there exists only one block that covers the whole spa-
spatial network given.
93
tial network. In ??, N blockL1 = 7. Furthermore, we could B4,1
or not. For example, consider the adjacent blocks that con- B3,1 B3,2
tain n10 and n9 . Since the total length of these two blocks B3,1
B3,2
at level 1 is larger than δ2 +2 (i.e., 23.5), these two adjacent Level 3
blocks cannot form a block at level 2. Hence, only adja-
B2,1 B2,2 B2,3 B2,4
cent blocks with their total length is smaller than δ2 + are B2,1 B2,3
B2,2
merged in one higher level block. B2,4 Level 2
B1,1 B1,2 B1,3 B1,4 B1,5 B1,6 B1,7
B1,5 B1,2
94
Algorithm 2 Spatial-Temporal Connective Cloaking Algo- n2
n8
n2
n8
rithm 5
5
7
3
3 4
5
5
7
3
3 4
n14
Input: User’s profile (k, Lmin ), user location (x, y) and an n3 n9 n11 n14 n1 n3 n9 n11
n1
Query point Query point
n12
4
n15
3
10: Find the parent node of current block in n7 5
Indexlength n13
95
250 1 1 1
50 STCC with Lmin 0.2 STCC with Lmin 0.2 STCC with Lmin 0.2 STCC with Lmin
STCC with Nmin STCC with Nmin STCC with Nmin STCC with Nmin
Grid-based with Amin Grid-based with Amin Grid-based with Amin Grid-based with Amin
0 0 0 0
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100 1/200 1/150 1/100 1/50 1/10 20 30 40 50 60 70 80 90 100
k-anonymity k-anonymity Speed Cache Size
(a) Candidate answer size (b) Cache hit ratio (a) Effect of speed (b) Effect of cache size
Figure 5. Performance comparisons with var- Figure 7. Performance study with various
ious k moving speeds and cache sizes
160 1
140
Candidate Answer Size
120
0.8 Figure 6(a). It can be seen that with a larger value of K for
Cache Hit Ratio
100
80
0.6
KNN queries, the candidate answer size will be increased.
60 0.4
Note that the candidate answer size in STCC is still much
40 STCC with Lmin STCC with Lmin
20 STCC with Nmin
Grid-based with Amin
0.2
STCC with Nmin
Grid-based with Amin
smaller than that of Grid-based scheme. Since STCC uses a
0 0
2 4 6 8 10 12 14 16 18 20 2 4 6 8 10 12 14 16 18 20 set of road segments for cloaking, those road segments that
KNN KNN
are near mobile users are form a cloaked spatial area. Fur-
(a) Candidate answer size (b) Cache hit ratio
thermore, due to that the cloaked spatial area in STCC is the
set of road segments that users are likely to move around,
Figure 6. Performance comparisons with the cache hit ratios of STCC is much higher than that of
KNN queries Grid-scheme, which is shown in Figure 6(b).
96
works, the cloaked regions are very efficient for reducing [6] M. F. Mokbel. ”Towards Privacy-Aware Location-
query results and improving cache utilization of mobile de- Based Database Servers”. In Proceedings of the 22nd
vices. Explicitly, mobile users can set their privacy profile IEEE International Conference on Data Engineering
(k, Lmin ) or (k, Nmin ). Given a user privacy profile, we (ICDE) Workshops, Atlanta, Georgia, USA, 2006.
propose an index structure to efficiently derive cloaked seg- [7] M. F. Mokbel, C.-Y. Chow, and W. G. Aref. ”The
ment set. Note that two hierarchical index structures are New Casper: Query Processing for Location Services
able to obtain cloaked segment sets that are very close to without Compromising Privacy”. In Proceedings of
the user privacy requirements. Based on index structures, the 32nd International Conference on Very Large Data
we propose algorithm STCC to quickly blur the true user Bases (VLDB), Seoul, Korea, 2006.
location as an acceptable cloaked segment set. We experi- [8] M. F. Mokbel, X. Xiong, and W. G. Aref.
mentally evaluated our proposed algorithm and experimen- ”SINA: Scalable Incremental Processing of Continu-
tal results shows that the cloaked segment sets derived fully ous Queries in Spatio-temporal Databases”. In Pro-
capture the spatial-temporal feature of moving behaviors, ceedings of the 2004 ACM International Conference
thereby not only protecting location privacy but also reduc- on Management of Data (SIGMOD), Paris, France,
ing the candidate query size. 2004.
[9] K. Mouratidis, M. Hadjieleftheriou, and D. Papa-
dias. ”Conceptual Partitioning: An Efficient Method
Acknowledgement
for Continuous Nearest Neighbor Monitoring”. In
Proceedings of the 2005 ACM International Confer-
W. C. Peng was supported in part by Taiwan MoE ATU ence on Management of Data (SIGMOD), Baltimore,
Program, and by the National Science Council, Project Maryland, USA, 2005.
No. NSC 95-2211-E-009-61-MY3 Taiwan, Republic of [10] K. Mouratidis, M. L. Yiu, D. Papadias, and
China. Jianliang Xu’s work was supported in part by the N. Mamoulis. ”Continuous Nearest Neighbor Moni-
Research Grants Council of Hong Kong under Grant No. toring in Road Networks”. In Proceedings of the 32nd
HKBU211206. This research has been funded in part by International Conference on Very Large Data Bases
NSF grant DUE 0621307. (VLDB), Seoul, Korea, 2006.
[11] B. N. Schilit, J. I. Hong, and M. Gruteser. Wire-
References less Location Privacy Protection. IEEE Computer,
36(12):135–137, 2003.
[12] S. Shekhar and D.-R. Liu. CCAM: A Connectivity-
[1] T. Brinkhoff. A Framework for Generating Network- Clustered Access Method for Networks and Network
Based Moving Objects. GeoInformatica, 6(2):153– Computations. IEEE Transactions on Knowledge and
180, 2002. Data Engineering, 9(1):102–119, 1997.
[2] B. Gedik and L. Liu. ”Location Privacy in Mobile Sys- [13] L. Sweene. k-Anonymity: A Model for Protecting Pri-
tems: A Personalized Anonymization Model”. In Pro- vacy. International Journal of Uncertainty, Fuzziness
ceedings of the 25th IEEE International Conference and Knowledge-Based Systems, 10(5):557–570, 2002.
on Distributed Computing Systems (ICDCS), Colum- [14] T. Xia and D. Zhang. ”Continuous Reverse Nearest
bus, OH, USA, 2005. Neighbor Monitoring”. In Proceedings of the 22nd In-
[3] M. Gruteser and D. Grunwald. ”Anonymous Us- ternational Conference on Data Engineering (ICDE),
age of Location-Based Services Through Spatial and Atlanta, GA, USA, 2006.
Temporal Cloaking”. In Proceedings of the First [15] M. L. Yiu, N. Mamoulis, and D. Papadias. Aggregate
ACM/USENIX International Conference on Mobile Nearest Neighbor Queries in Road Networks. IEEE
Systems, Applications, and Services (MobiSys), San Transactions on Knowledge and Data Engineering,
Francisco, CA, USA, 2003. 17(6):820–833, 2005.
[4] H. Hu, J. Xu, and D. L. Lee. ”A Generic Framework
for Monitoring Continuous Spatial Queries over Mov-
ing Objects”. In Proceedings of the 2005 ACM In-
ternational Conference on Management of Data (SIG-
MOD), Baltimore, Maryland, USA, 2005.
[5] C. S. Jensen, D. Lin, B. C. Ooi, and R. Zhang. ”Ef-
fective Density Queries on Continuously Moving Ob-
jects”. In Proceedings of the 22nd IEEE Interna-
tional Conference on Data Engineering (ICDE), At-
lanta, GA, USA, 2006.
97
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
99
domain will therefore publish a context agent for each policies of the entity that the agent represents and
entity (e.g., devices, users, and places) about which it obtains these policies from a policy repository in its
wants to provide context information. local domain. A CAM also registers a set of ‘well-
In our work, each context agent has an identity of known’ context sources with each new agent. These
the form entityID@domainID (e.g., are sources in the CAM’s local domain, typically
alice@companyA). Applications such as Bob’s building-specific aggregators of context information.
telephony application locate a context agent by At a later stage, a context agent may use locally
resolving its identity to a network address, for instance available context brokers (Section 3.1) to dynamically
using a name resolution infrastructure. The CMF locate additional context sources in the CAM’s local
supports both DNS and SIP based name resolution. domain. A CAM must be discoverable through service
Since a context agent is the single point of access discovery protocols like SLP or WS-Discovery.
for context information about a particular entity, it is
also a natural place for enforcing that entity’s privacy 4. Inter-domain Context Sharing
policies (cf. [6]). Privacy policies are rules that specify
who is allowed to get what context information in what For inter-domain context sharing, we focus on
quality in what situation. To enforce such policies, the “friendly” foreign domains that (1) allow visitors to
CMF follows the Policy Core Information Model [16], use the foreign domain’s network and (2) that are
which consists of Policy Decision Points (PDPs) and a willing to share at least part of the information they
Policy Enforcement Points (PEPs). A PDP is collect about visitors with the outside world.
responsible for evaluating policies (privacy policies in Our prime mechanism for supporting inter-domain
our case), while a PEP requests a policy decision from context sharing is the so-called “temporary context
a PDP and enforces the decision that the PDP makes. agent” (TCA). A TCA represents an entity when it
The PEPs in our architecture are context agents and resides in a foreign domain and forms the entry point
proxy context sources. A context agent controls which for getting context information from the foreign
types of context information an application is allowed domain about that entity. A TCA links to the entity’s
to get, while a proxy context source subsequently context agent in the home domain to make the foreign
ensures that the application gets this information at the context information available to applications and
appropriate Quality of Context (QoC) [2][20]. To enforces the foreign domain’s privacy policies (with
accomplish this, a proxy context source wraps the the assistance of proxy context sources in the foreign
source that provides the “real” context information. domain). The CAM of the foreign domain manages the
Our privacy policies determine the maximum QoC that life-cycle of TCAs, which are softstate components.
a proxy passes to the requester of certain context The latter means that a CAM will destroy TCAs
information (e.g., Bob in Figure 1) is allowed to get. automatically if they are not kept alive. This frees up
Examples of QoC indicators are precision [20], resources and therefore benefits the scalability of the
freshness and probability of correctness. entire system. It may also help in foreign domains
We assume that context agent and proxy context deleting information they have collected about visiting
sources have their own logical PDP, but we do not entities, which may be required from a (legal) privacy
make any assumptions on how they should be realized perspective. As the foreign domain is not likely to
(e.g., as truly separate PDPs or as a single domain- know the identity of its visitors, we instantiate one or
wide PDP for multiple agents and sources). more new TCAs for each visitor. No authentication is
A PDP communicates the result of its policy required. In practice, a TCA will be created for each
evaluations to a PEP in the form of policy decisions. network interface belonging to the user that obtains
This includes an “obligations” part [8], which specifies access to networking resources at the visiting domain.
the maximum level of QoC. A policy decision In this section we describe two protocols: one for
depends on three inputs: (1) the identity of the party setting up a secure association between a TCA and the
requesting the context information (e.g., context agent in the home domain (Section 4.1) and the
bob@companyA), (2) the identity of the entity whose protocol that subsequently makes the context
context information the requestor wants to obtain (e.g., information from the foreign domain available to
alice@companyA), and (3) the type of context applications through the context agent (Section 4.2).
information being requested (e.g., activity
information). 4.1 Establishing Secure Associations
Each domain contains a Context Agent Manager
(CAM), which is responsible for creating, configuring, To enable applications to obtain context information
and destroying context agents in that domain. A CAM from a foreign domain, we will need to establish a
configures a new context agent with the privacy
100
connection between a TCA and the context agent of the agent in the home domain. The registration
corresponding entity in the home domain. In our message includes the CADC’s access token in the
system, it is the mobile user’s personal device that home domain (which was issued previously by the
controls this process. The reason is that it typically AAS in the home domain) as well as the access
knows when it is in a foreign domain, plus that it has a token that the CADC received from the AAS in
secure association with its own context agent. A TCA the foreign domain. The CADC encrypts all
will be created by the foreign (visiting) domain for all messages between the user’s personal device and
network interfaces of the personal devices of the user the home context agent (we use SSL for this
that are connected to access points in the foreign purpose).
environment. For instance, the user’s WiFi MAC 4) The context agent in the home domain establishes
address, or bluetooth id. This, therefore, does not a secure association with the TCA, presenting the
require any explicit tagging by foreign host, and it will credentials the CADC received from the AAS in
allow the guest to use pre-configured home-credentials the foreign domain (token B in Figure 2).
on his personal device to link the foreign TCA to its Figure 2 illustrates this using the example of Figure 1.
own Context Agent. An alternative approach would be that the TCA
To establish these secure connections, we introduce registers itself with the entity’s agent in the home
two additional components: Authentication and domain. The disadvantage is that this would require the
Authorization Services and Context Agent Discovery CADC to expose the entity’s identity to the foreign
Clients. domain, which may not be desirable from a privacy
An Authentication and Authorization Service (AAS) perspective.
is responsible for authenticating and authorizing The CADC is also responsible for keeping the
visitors for particular services in the domain for which association between its context agent and the TCAs
the AAS is authorative. The AAS grants these rights by alive. It accomplishes this by regularly refreshing (1)
means of access tokens. AAS clients (in our scenario: the access token and the TCA it requested in the
the personal device of the visitor) need to present these foreign domain and (2) the registration of the TCA
tokens to the services in the AAS’ domain in order for with the entity’s context agent. We expect these refresh
those services to execute the client’s requests. AAS intervals to be rather large (currently set to 30
clients discover the AAS of a certain domain’s by minutes), which minimizes the impact on the mobile
means of a generic service discovery protocols like device (e.g., in terms of used battery power). An
SLP or WS-Discovery. Our AAS service is configured alternative is that the entity’s context agent refreshes
to provide zero-authentication guest-certificates for the association with a TCA by regularly polling that
nodes that have obtained network access, like our TCA.
visitors. Local users will be granted more permissions, The association between a context agent and a TCA
typically. This means that cross-domain authentication disappears automatically if the TCA disappears. The
mechanisms are not needed. CADC may however also explicitly remove such an
The Context Agent Discovery Client (CADC)
controls the establishment of secure associations
between a context agent and a TCA. A CADC runs on
a personal mobile device (e.g., on Alice’s smart phone)
and goes through the following four steps:
1) Upon entering a foreign domain, the CADC
obtains an IP address and discovers the foreign
domain’s AAS and its CAM;
2) The CADC obtains an access token from the AAS
and requests the CAM in the foreign domain to
create a TCA for the roaming entity. The request
message includes the token the CADC received
from the AAS. The CAM checks with its local
AAS if the token is valid. If it is, it retrieves the
privacy policies it requires from the policy
repository, creates the requested TCA, and
configures the TCA with the foreign domain’s
privacy policies;
3) The CADC obtains a reference to its TCA from
Figure 2. Establishing a link with a TCA.
the CAM and registers it with the entity’s context
101
association by deregistering the TCA at the context the home domain and configures it with the
agent. The corresponding message contains the access privacy policies of the roaming entity. It then links
token for the home domain as well as the one from the the proxy to its peer in the foreign domain, and
foreign domain. passes the references to the proxy in the home
domain to the client application. If the entity is in
4.2 Obtaining Context Information its home domain, the context agent will not link to
a TCA and the proxies in the home domain will
After having established a secure association, CMF link to context sources in that same domain.
applications such as Bob’s telephony client can obtain 3) Query the proxy context source. A client uses the
(foreign) context information from a context agent. reference it received from the context agent in the
These interactions follow three steps procedure, which home domain to query the proxy context source
is similar to typical discovery protocols: and obtain the actual context information. The
1) Locate an entity’s context agent. A client proxy forwards the query to its peer in the foreign
application uses a name resolution infrastructure to domain, which gets the actual context information
map the identity of an entity onto the network from the context source for which it acts as a
address of the corresponding context agent (see proxy and returns the context information back to
Section 3.2); the client along the same path. The proxy context
2) Query the context agent. A client queries a context source in the foreign domain interacts with its
agent by sending a query message to it. The local PDP to enforce the privacy policies of the
message contains the type of context information foreign domain, which may for instance result in
the client is looking for, the identity of the the proxy lowering the quality of the context
requesting entity (e.g., Bob@CompanyA), and a information. The proxy in the home domain also
token that represents that requestor’s rights (e.g., interacts with its local PDP and may modify the
using SAML [17]). The context agent validates the context information it receives from the proxy in
request at its PDP. If the subject of the query (e.g., the foreign domain once more before passing it to
Alice) is in a foreign domain and if the PDP the application. The obligation part of the PDPs’
indicates that the client is allowed to get the policy decisions specify the maximum QoC.
requested type of context information, the context Figure 3 illustrates this behavior for Bob’s client and
agent forwards the query to the TCA in the foreign Alice’s context agent (example in section 2). To
domain using the secure connection of Section 4.1. simplify the figure, we did not detail the interactions
The TCA then creates a proxy context source in with the PDPs of Alice and the foreign domain. The
the foreign domain, links it to the foreign context token that Bob’s client application passed to Alice’s
source, configures the proxy with the foreign context agent (tokenA) proves Bob’s authenticity and
domain’s privacy policies, and returns the is typically issued by a trusted third party. Observe that
reference to the proxy to the context agent in the token B is a result of the establishment of the secure
home domain. This agent creates another proxy in connection with the TCA (see Section 4.1).
The usage of two sets of privacy policies (one of the
Alice’s home domain foreign domain (Company B)
roaming entity and one from the foreign domain) may
C(Bob) CA(Alice) PCS1(CS(activity)) TCA(Alice) PCS2(CS(activity)) CS(activity)
result in certain context information never reaching the
query(activity, tokenA)
Get policy
context-aware application. This for instance happens
decision from
Alice’s PDP query(activity, tokenB)
when the policies of the visiting domain lower the QoC
Get policy
decision from
below the level required by the policies of the roaming
B’s PDP
user and is therefore not returned to the requesting
application. As the policy rules will not be exchanged
PCS2(CS(activity)) C
PCS1(CS(activity)) C
(privacy), this is impossible to prevent.
getContext(activity, tokenA) getContext(activity, tokenB) If the foreign domain’s security policies do not
Get policy
decision from allow access to the TCA, our system also supports a
B’s PDP getContext(activity)
activity information
fall-back scenario where the CADC entity instantiates
activity information E a context source proxy on the personal device that acts
Get policy
decision from
as a second bridge. This does, of course, consume
Alice’s PDP
E
additional resources on the personal device.
activity information
This system also assumes that the quality of the
C = create a proxy context source E = enforce policies (obligations) information provided by the TCA is sufficient. This
Figure 3. Inter-domain context sharing could very well be spoofed by un-compliant intelligent
environments. This is another level of trust-
102
management that is not covered by our system,
although it is possible to switch the ‘automatic context
sensing’ feature off.
6. Related Work
The work that comes closest to ours is the Vade
system of José et al. [12]. Their context managers are
very similar to our context agents and also allow
applications to obtain foreign context information. The
main difference is that our system explicitly supports
configurable privacy policies, also for foreign domains.
Another difference is that José et al. seem to rely on
Figure 4. Inter-domain deployment of the CMF. telecom operators to track a device’s location and use
103
that information to determine whether a mobile device Like our system, the ACAI system of Khedr and
is in a particular foreign domain or not. Although they Karmouch [14] also enables applications to obtain
also identify our mobile-controlled approach, they have foreign context information. The main difference with
not detailed it. our work is that they do not consider the privacy
Several other projects, like e.g. in-Context, have policies of roaming entities and foreign domains. Their
developed a system that essentially has a per-group architecture furthermore assumes that each domain
server (e.g. [[8]]. This is fundamentally different from runs an agent platform. In our architecture, we do not
our approach, in which each entity has its own service, make this assumption and allow each domain to use its
and sharing and privacy-management does not require own technology for intra-domain discovery and
a centralized service at all. communications. Finally, the ACAI system uses SIP
Project DAIDALOS has developed a system in for inter-domain communications and for location
which foreign domains push the context information updates, which is one of the protocols we could have
they collect about visiting users to so-called “home used to realize these interactions in our system
managers” [18][21]. A home manager is a database (between a CADC and a context agent as well as
(that resides in a user’s home domain) with context between a context agent and its TCA).
information about a particular user, including foreign Chin et al. [4] and Gu et al. [9] enable context-
context information. The similarity with our approach aware applications to get foreign context information
is that context agents also provide a single point of by means of a self-organizing peer-to-peer overlay that
contact for context information. The main difference is interconnects the context brokers (called “discovery
that DAIDALOS targets an environment that consists gateways”) of different administrative domains (which
of large trusted domains that are federated through they call “spaces”). The difference with our work is
service level agreements (cf. traditional telco that they rely on the peer-to-peer infrastructure to
operators). As a result, DAIDALOS users inform a discover context sources in foreign domains and do not
foreign domain of the URL of their home manager, leverage the current location (domain) of a roaming
which the foreign domain subsequently uses to push entity. There also seems to be no explicit mechanism to
context information to the home manager. In our determine in which domain a roaming entity currently
system, visiting users typically deal with untrusted resides, which makes it unclear how they associate
foreign domains and therefore usually do not publish foreign context sources with that entity. They also not
their identity. As a result, it is the user’s personal consider privacy aspects.
device that establishes a link with the foreign domain
and our home domains pull for foreign context 7. Conclusions
information. Another important difference is that the
DAIDALOS system does not consider the privacy In order for the vision of ubiquitous, context-aware
policies of users and foreign domains. computing to become a reality, we will need to be able
While not the main contribution of their paper, to share context information across different domains
Chen, Finin, and Joshi [3] outline how their COBRA of administration. This will enable context-aware
system could be used to provide foreign context applications to use context sources in foreign domains
information to applications. Unlike in our system, they to obtain additional context information about roaming
make foreign domains responsible for enforcing the entities such as users and devices, which will
privacy policies of visiting users. The advantage of ultimately improve these applications’ operation. A
their approach is that it takes the home domain out of crucial requirement, however, is that the underlying
the loop for policy enforcement, which reduces the system enforces the privacy policies of mobile users
load on the home domain and possibly also the number and foreign domains, which determine who is allowed
of traversed network hops. The downside is that to get what context information under which
roaming users have to (1) inform every foreign domain circumstances.
they visit of their privacy policies, and (2) that they The key contribution of our system is that it realizes
need to trust these domains to correctly enforce those both of these requirements. In contrast to existing
policies and (3) that applications will need to rebind to systems, we do not require pre-established security
the foreign sources of information. This is not relations between domains, but dynamically establish
necessary in our approach, but malicious foreign these relations based on the physical presence of a
domains can still manipulate the context information roaming entity in a foreign domain. Based on current
they collect about a visiting entity. Another limitation literature, we believe this is novel work. Another
of the COBRA system is that they do not consider the benefit of our work is that applications that use our
privacy policies of foreign domains, which we do. system will only need to interact with a single context
104
agent, independent of the domain that provides the [8] Dorn, C. Schall, D. Dustdar, S., “Granular Context in
contextual information about that specific entity. We Collaborative Mobile Environments”, Springer LNCS
have implemented all concepts described in this paper 4278, pp 1904-1913, Springer Verlag, 2006
[9] T. Gu, E. Tan, H. Keng Pung, D. Zhang “A Peer-to-Peer
and also deployed the CMF on a small scale.
Architecture for Context Lookup”, 2nd International
Future work includes the validation and usability Conference on Mobile and Ubiquitous Systems
check of the policy language, in particular regarding its (MobiQuitous’05), San Diego, California, July 2005
expressiveness, the types of rules it should support, [10] E. Guttman, C. Perkins, J. Veizades, M. Day, “Service
automation of context-information adaptation (due to Location Protocol, Version 2”, RFC 2608, June 1999
policy enforcement) and the empowerment how users [11] C. Hesselman, H. Eertink, and M. Wibbels, “Privacy-
can be empowered to easily manage their privacy aware Context Discovery for Next Generation Mobile
policies. We will also investigate privacy policies that Services”, 3rd SAINT2007 Workshop on Next
depend on context information and will use the system Generation Service Platforms for Future Mobile
Systems (SPMS 2007), Hiroshima, Japan, January 2007
for different applications (healthcare domain,
[12] R. José, F. Meneses, A. Moreira, “Integrated Context
professional services) in order to validate the Management for Multi-domain Pervasive
application programming model of the CMF. Environments”, First International Workshop on
Managing Context Information in Mobile and Pervasive
Acknowledgments. This work has been conducted Environments (MCMP-05), Ayia Napa, Cyprus, May
within the projects Freeband AWARENESS (co- 2005
sponsored by the Dutch government under contract [13] HP Labs, “Jena – A Semantic Web Framework for
BSIK 03025) and IST Amigo (partially funded by the Java”, http://jena.sourceforge.net/, October 2005
European Commission under contract IST 004182). [14] M. Khedr and A. Karmouch “'ACAI: Agent-Based
Context-aware Infrastructure for Spontaneous
Remco Poortinga and Niels Snoeck contributed to the
Applications”, Journal of Network & Computer
topics presented in this paper. Maarten Wegdam Applications, Volume 28, Issue 1, pp. 19-44, 2005
reviewed the draft version of this paper. [15] H. van Kranenburg, M. S. Bargh, S. Iacob, A.
Peddemors, “A Context Management Framework for
8. References Supporting Context-Aware Distributed Applications”,
IEEE Communications Magazine, August 2006, pp. 67-
[1] M. Blackstock, R. Lea, and C. Krasic, “Toward Wide 74.
Area Interaction with Ubiquitous Computing [16] B. Moore, et al., IETF RFC3060 Policy Core
Environments”, 1st European Conference on Smart Information Model—Version 1 Specification, February
Sensing and Context, the Netherlands, October 2006 2001.
[2] T. Buchholz, A. Küpper, and M. Schiffers, “Quality of [17] Ragouzis, et al. (eds.), Security Assertion Markup
context: What it is and why we need it”, Workshop of Language (SAML) V2.0 Technical Overview,
the HP OpenView University Association (HPOVUA http://www.oasis-open.org/committees/documents.php?
2003), Geneva, 2003 wg_abbrev=security, Oct 2006.
[3] H. Chen, T. Finin, and A. Joshi, “Using OWL in a [18] I. Roussaki, M. Strimpakou, C. Pils, N. Kalatzis, M.
Pervasive Computing Broker”, Workshop on Ontologies Neubauer, C. Hauser, and M. Anagnostou, “Privacy-
in Open Agent Systems (AAMAS 2003), July 2003 Aware Modelling and Distribution of Context
[4] C.-Y. Chin, D. Zhang, M. Gurusamy, “Orion: P2P- Information in Pervasive Service Provision”, IEEE
based Inter-Space Context Discovery Platform”, 2nd International Conference on Pervasive Services (ICPS
Annual International Conference on Mobile and 2006), Lyon, France 2006, pp. 150-160
Ubiquitous Systems (MobiQuitous’05), San Diego, [19] J. Schlimmer (ed), “Web Services Dynamic Discovery
USA, July 2005 (WS-Discovery)”, Microsoft Corporation, 2005,
[5] N. Davies and H.-W. Gellersen, “Beyond Prototypes: http://msdn2.microsoft.com/en-us/library/
Challenges in Deploying Ubiquitous Systems”, IEEE bb706924.aspx
Pervasive Computing, pp. 26-35, January 2002 [20] K. Sheikh, M. Wegdam, M. Sinderen, “Quality-of-
[6] P. Debaty and D. Caswell, “Uniform Web presence Context and its use for Protecting Privacy in Context
architecture for people, places, and things”, IEEE Aware Systems”, Journal of Software (JSW), Vol.3,
Personal Communications, Volume 8, Issue 4, Aug Issue 3, pp 83-93, March 2008.
2001, pp. 46-51 [21] M. Strimpakou, I. Roussaki, C. Pils, M.Angermann, P.
[7] A. Dey, D. Salber, and G. Abowd, “A Conceptual Robertson, M. Anagnostou, “Context Modelling and
Framework and a Toolkit for Supporting the Rapid Management in Ambient-aware Pervasive
Prototyping of Context-Aware Applications”, Special Environments”, International Workshaop on Location-
issue on context-aware computing; Human-Computer and Context-Awareness (LoCa 2005), Munich,
Interaction (HCI) Journal, Volume 16 (2-4), 2001, pp. Germany, 2005
97-166
105
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Schedule of cd cu Ξ cd cu Ξ
Upstream active portion
Ru sink Message to Message to
of a ZigBee router R ED1 and ED2 ED1 and ED2
d
cd R A R uA c u Ξ c d R dA R uA cu Ξ
Downstream active portion Schedule of RA
d
R of a ZigBee router R
R dA R dB R uB R uA Ξ R dA R dB R uB R uA Ξ
Schedule of RB
u A ZigBee router R listens to its
R parent's upstream active portion Message to ED2 Report from ED2 Message to ED2 Report from ED2
R dA R dC R Cu R uA Ξ R dA R dC R Cu R uA Ξ
Schedule of RC
d A ZigBee router R listens to its
R parent's downstream active portion Message to ED1 Report from ED1 Message to ED1 Report from ED1
m-th superframe (m+1)-th superframe
(c)
Figure 1. (a) An example of ZigBee/IEEE 802.15.4 tree-based network. (b) An example of two-way
transmission under the original ZigBee/IEEE 802.15.4 superframe structure. (c) An example of two-
way transmission under the proposed modified ZigBee/IEEE 802.15.4 superframe structure.
131
Received Beacon Transmitted Beacon Received Beacon Transmitted beacon Transmitted beacon
for upstream data for downstream data
Incoming (received)
Outgoing Received beacon Received beacon Received beacon
Inactive (transmitted) Inactive for upstream data for downstream data for upstream data
active portion
active portion
SD (Active ) SD (Active )
StartTime > SD SD = aBaseSuperframeDuration × 2SO symbols RbUp Inactive TbUp Inactive RbDn Inactive TbDn
peer-to-peer topologies. In each PAN, one device is desig- In a beacon-enabled star network, a device only needs to
nated as the coordinator, which is responsible for maintain- be active for 2−(BO−SO) portion of the time. Changing the
ing the network. A FFD has the capability of becoming a value of (BO − SO) allows us to adjust the on-duty time
coordinator or associating with an existing coordinator. A of devices. However, for a beacon-enabled tree network,
RFD can only associate with a coordinator. routers have to choose different times to start their active
The ZigBee alliance [5] defines the communication pro- portions to avoid collision. Once the value of (BO − SO)
tocols above IEEE 802.15.4. In [16], star, tree, and mesh is decided, each router can choose from 2BO−SO slots as its
topologies are supported. A ZigBee coordinator is respon- active portion. In the revised version of IEEE 802.15.4 [8],
sible for initializing, maintaining, and controlling the net- a router needs to select one active portion as its outgoing ac-
work. In a star network, devices must directly connect to tive portions, and based on the active portion selected by its
the coordinator. For tree and mesh networks, devices can parent, it also selects the same active portion as its incoming
communicate with each other in a multihop fashion. The active portions (refer to Fig. 2). In an outgoing/incoming
network backbone is formed by one ZigBee coordinator and active portions, a router is expected to transmit/receive a
multiple ZigBee routers (which must be 802.15.4 FFDs). beacon to/from its child routers/parent router. When choos-
RFDs can only join the network as end devices by associ- ing a slot, neighboring routers’ active portions (i.e., outgo-
ating with the ZigBee coordinator or ZigBee routers. In a ing active portion) should be shifted away from each other
tree network, the coordinator and routers can announce bea- to avoid interference. However, the specification does not
cons. However, in a mesh network, regular beacons are not clearly define how to choose the locations of routers’ active
allowed. Beacons are an important mechanism to support portions.
power management. Therefore, the tree topology is pre- In this work, we consider two types of interference be-
ferred, especially when energy saving is a desirable feature. tween routers. Two routers have direct interference if they
The ZigBee coordinator defines the superframe structure can hear each others’ beacons. Two routers have indirect
of a network. As shown in Fig. 2, the structure of super- interference if they have at least one common neighbor
frames is controlled by two parameters: beacon order (BO) which has communication activities with one of these two
and superframe order (SO), which decide the lengths of a routers. Both interferences should be avoided when choos-
superframe and its active potion, respectively. For a beacon- ing routers’ active portions.
enabled network, the setting of BO and SO should satisfy
the relationship 0 ≤ SO ≤ BO ≤ 14. (A non-beacon- 2.2. The Superframe Structure for Two-way
enabled network should set BO = SO = 15 to indicate Beacon Scheduling
that superframes do not exist.) Each active portion consists
of 16 equal-length slots, which can be further partitioned We propose a new superframe structure to support quick
into a contention access period (CAP) and a contention broadcast and convergecast. In IEEE 802.15.4, each router
free period (CFP). The CAP may contain the first i slots, should wake up in two slots (outgoing and incoming active
and the CFP contains the rest of the 16 − i slots, where portions). In this work, we propose that each router should
1 ≤ i ≤ 16. Slotted CSMA/CA is used in CAP. FFDs wake up in four slots. These four slots are denoted as TbUp,
which require fixed transmission rates can ask for guarantee TbDn, RbUp, and RbDn, as shown in Fig. 3. In TbUp/TbDn
time slots (GTSs) from the coordinator. A CFP can support slots, a node will transmit beacons to its children for receiv-
multiple GTSs, and each GTS may contain multiple slots. ing upstream/transmitting downstream data from/to them.
Note that only the coordinator can allocate GTSs. After the In RbUp/RbDn slots, a node will receive beacons from its
active portion, devices can go to sleep to save energy. parent for transmitting upstream/receiving downstream data
132
m-th superframe (m+1)-th superframe (m+2)-th superframe
Ru RbUp slot of router R
Sink Slot number 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
k=8
Rd RbDn slot of router R c
Sink c (5,0) td tu td tu td tu
u dd(RA,RB)=3
R TbUp slot of router R RA
Router RA (1,3) t d R uA R dA tu t d R uA R dA tu t d R uA R dA tu
Rd TbDn slot of router R RB du(RB,RA)=7
Router RB (2,6) R uA R uB R dA R dB R uA R uB R dA R dB R uA R uB R dA R dB
ZigBee router RC
Router RC (7,0) R dC R uB R dB R Cu R dC R uB R dB R Cu R dC R uB R dB R Cu
ZigBee end device
RD
Dd(RD) = 11
to/from its parent. To support this modification, we can use slots su (par(i)) and sd (par(i)), respectively, where par(i)
the reserved field in the beacon frame to announce the po- is the parent of i in tree T . By interference free, it implies
sitions of these extra slots. Except these changes, all other that su (i) = su (j), su (i) = sd (j), sd (i) = su (j), and
operations follow the original IEEE 802.15.4 specification. sd (i) = sd (j) if edge (i, j) ∈ EI .
Hence, the new design is backward compatible with the Our goal is to find a slot assignment such that the broad-
original specification. cast and convergecast latencies are as low as possible. Let
(i, j) be a link in T such that i is the parent of j. The up-
3. The Two-Way Beacon Scheduling Problem stream delay du (j, i) from j to i is the number of slots from
j receiving a convergecast packet until it is forwarded to i,
We model the network as a graph G = (V, E), where i.e.,
V contains all routers and the coordinator c and E con-
du (j, i) = (su (i) − su (j)) mod k.
tains all symmetric communication links between nodes in
V . The coordinator and routers follow the superframe struc- Similarly, the downstream delay dd (i, j) from i to j is the
ture mentioned in Section 2.2. The coordinator serves as the number of slots from i receiving a broadcast packet until it
sink. End devices are not included in G but will be associ- is forwarded to j, i.e.,
ated to nodes in G. From G, we assume that a ZigBee tree
T = (VT , ET ) has been constructed, where VT = V and d 0, if i is sink node
d (i, j) =
ET ⊆ E. Also, we can construct from G an interference (sd (i) − sd (par(i))) mod k, otherwise.
graph GI = (V, EI ), where edge (x, y) ∈ EI if there are
Note that dd (i, j) is in fact independent on j’s selection
direct/indirect interferences between x and y. With param-
because the transmission time of i is purely dependent on i’s
eters BO and SO, there are k = 2BO−SO active portions
selection. Also, the latency is 0 when i is the sink because
(slots) in a superframe. Motivated by Brook’s theorem [15],
the broadcast is initiated by i itself.
which proves that n colors are sufficient to color any graph
For any node i, the upstream delay from i to sink c, de-
with a maximum degree of n, we assume that k ≥ 2 × DI ,
noted by Du (i) is the sum of the per-hop upstream delays
where DI is the maximum degree of GI . The factor 2 is
of the path form i to c on tree T . Similarly, for any node i,
required here because each node will need up to 2 colors
the downstream delay from sink c to i, denoted by Dd (i) is
(slots).
the sum of per-hop downstream delays of the path from c to
To solve the broadcast and convergecast problems, each
i. The overall delay incurred by T is defined as
router i ∈ V needs to decide two interference-free slots
su (i) and sd (i) among [0, k − 1] for its slots TbUp and L(T ) = max{ max Du (i), max Dd (j)}.
TbDn, respectively. Its slots RbU p and RbDn will be the ∀i∈VT ∀j∈VT
133
140 Transmission range
SA1
SA2
120 c c
(3,4) (2,5)
R1 R1
100 R2 R2
(2,5) (1,6)
(1,6) (1,6)
80 ED1 ED1
L(T)
ED2 ED2
60 R3 R3
End Potential (0,7) (0,7)
Definition 1 Given a graph G = (V, E), G’s interference indirect interference relation between Ri and Rj may be re-
graph GI = (V, EI ), a ZigBee tree T = (VT , ET ), and moved.
k available slots, two-way beacon scheduling (TBS) prob-
The common end devices of routers Ri and Rj must be
lem is to find an interference-free slot assignment su (i) and
located in the overlapping area of the transmission ranges
sd (i) for each i ∈ V such that network latency L(T ) is of Ri and Rj . Fig. 6(a) shows an example where R1 and
minimized.
R2 have indirect interference because of the existence of
end devices ED1 and ED2 . Given the slot assignment in
Fig. 4 shows an example, the per-hop upstream delay
the parentheses, the latency L(T ) is 3. If ED1 and ED2
du (RB , RA ) from router RB to router RA is 7 and the
are associated to c or R3 , R1 and R2 will have no indirect
per-hop downstream delay dd (RA , RB ) from router RA to
interference. Then, as shown in Fig. 6(b), R1 and R3 can
router RB is 3. The upstream delay from RD to c is 17
use the same slot pair (1, 6) to achieve a lower L(T ) of 2.
and the downstream delay from c to RD is 11. The overall
Observation 3: When selecting slots, a router with more
latency L(T ) of this example is 11.
interference neighbors should select its slots earlier.
A node with higher interference relation has less choices,
4. The Proposed Scheme so it should pick its slots earlier. This leads to Observation
3.
In this section, we propose a centralized slot assignment Below, we propose a centralized slot assignment algo-
algorithm for the TBS problem. We first present some ob- rithm for the TBS problem. We traverse routers in a bottom-
servations. up fashion according to their depths in T . For those vertices
Observation 1: Assigning upstream and downstream in depth d, we first sort them according to their degrees in
slots simultaneously can achieve lower delay than assign- GI in a descending order. Then we sequentially traverse
ing upstream and downstream slots separately. these vertices in that order. For each vertex v being vis-
This observation is supported by simulations. The first ited, run the following two procedures: FindUpSlot(v) and
slot assignment scheme (SA1) examines nodes of T in a FindDnSlot(v).
bottom-up manner. For each node being visited, it will FindUpSlot(v)
greedily pick a slot for its TbUp and a slot for its TbDn
such that the per-hop latencies are smallest. This is repeated 1. For each v, a tentative variable tu (v) will be computed,
until the sink node is reached. The second slot assignment from which the final slot su (v) will be determined.
scheme (SA2) also visits nodes of T to the sink node in a
bottom-up manner, but only assigns slots for TbUp. Then it (a) If v is a leaf node, we set tu (v) = 0.
visits T in a top-down manner and assigns slots for TbDn. (b) If v is an non-leaf node, we set tu (v) =
Our simulation result is in Fig. 5, which shows that SA1 can max{su (v )|v is a child of v} + 1.
achieve lower latency than SA2 in most cases.
Observation 2: Suppose that routers Ri and Rj have in- 2. Let N (v) be the set of nodes that have direct or indi-
direct interference because they have some common end de- rect interference with v and have received slots, i.e.,
vices. If some end devices can be reconnected, then the N (v) = {v |(v , v) ∈ EI and su (v ) = N U LL}.
134
3. We will check if temp = tu (v) mod k is a feasible slot v. If w already has its slots su (w) and sd (w), then
for v by examining the slots used by nodes in N (v). we have to make sure this does not cause new inter-
There are two cases: ference. Otherwise, x can be associated w since the
interference, if any, can be resolved later on.
(a) If there exists a v ∈ N (v) such that v and v
have direct interference and su (v ) = temp or 2. If for each common neighbor x of v and v, the above
sd (v ) = temp, then the slot temp is not feasible step 1 allows us to reassociate x to another router to
for v. remove the interference, then a positive response will
(b) If there exists a v ∈ N (v) such that v and v be replied by this procedure; otherwise , a negative re-
have indirect interference and su (v ) = temp sponse will be replied.
or sd (v ) = temp, then we will call procedure
RemoveIndInt(v ,v) to see if such interference Note that each end device maintains a potential parent
can be removed. If so, temp is a feasible slot routers which contains routers that can connect the end de-
for v. Otherwise, temp is not feasible for v. vice. Fig. 7(a) shows an example of this algorithm. We
choose tentative slots (1, 15) for router R6 . Routers R6 and
If the above examination determines that temp is a fea- R8 have common end devices ED1 and ED2 . After per-
sible slot for v, then we assign su (v) = temp. other- forming procedure RemoveIndInt(v ,v), ED1 reconnects to
wise, we increase tu (v) by one and repeat step 3 again. other router. R6 and R8 are removed from potential parent
routers of ED1 and ED2 . R6 can use slots (1, 15), as in
FindDnSlot(v)
Fig. 7(b). Fig. 7(c) shows the result of the slot assignment
1. For each v, a tentative variable td (v) will be computed, algorithm, where ED2 and ED3 also change their parent
from which the final slot sd (v) will be determined. routers. The result L(T ) is 5.
The computational complexity of this algorithm is an-
(a) If v is a leaf node, we set td (v) = k − 1. alyzed below. Before three procedures, the complexity of
(b) If v is an non-leaf node, we set td (v) = sorting is O(DT log DT ), where DT is the maximum de-
min{sd (v )|v is a child of v} − 1. gree of T . In RemoveIndInt(v , v), the time complexity
is O(DI + DE ), where DE is the maximum number of
2. Let N (v) be the set of nodes that have direct or indi-
common end devices. In FindUpSlot(v), the computational
rect interference with v and have received slots, i.e.,
cost of computing tentative slot in step 1 is O(DT ). In step
N (v) = {v |(v , v) ∈ EI and sd (v ) = N U LL}.
2 and 3 of FindUpSlot(v), the time complexity for check-
3. We will check if temp = td (v) mod k is a feasible slot ing interference and call procedure RemoveIndInt(v , v) is
for v by examining the slots used by nodes in N (v). O(DI (DI + DE )). The time complexity of FindDnSlot(v)
There are two cases: is the same as FindUpSlot(v). And FindUpSlot(v) and
FindDnSlot(v) will be executed |V | times. Hence, the
(a) If there exists a v ∈ N (v) such that v and v overall time complexity is O(|V |DT log DT + |V |DI2 +
have direct interference and su (v ) = temp or |V |DI DE ).
sd (v ) = temp, then the slot temp is not feasible
for v.
5. Simulation Results
(b) If there exists a v ∈ N (v) such that v and v
have indirect interference and su (v ) = temp
or sd (v ) = temp, then we will call procedure In this section, we use simulation programs to evalu-
RemoveIndInt(v ,v) to see if such interference ate the proposed algorithm. In order to observe the effects
can be removed. If so, temp is a feasible slot of procedure RemoveIndInt(v ,v), we compare our scheme,
for v. Otherwise, temp is not feasible for v. denoted as SA, against a reduced version of SA, which does
not reconnect end devices, denoted as SA-NR. Besides, we
If the above examination determines that temp is a fea- compare the SA against a greedy slot assignment algorithm,
sible slot for v, then we assign sd (v) = temp. Other- denoted as GSA, greedily chooses TbUp slots in a bottom-
wise, we decrease td (v) by one and repeat step 3 again. up manner to minimize per hop latency of upstream, and
then chooses TbDn slots in a top-down manner to minimize
RemoveIndInt(v ,v)
per hop latency of downstream. In our simulations, routers
1. Indirect interference appears when there is a common and end devices are randomly distributed in a N × N region
neighbor x of v and v. If x is a router, it can be ig- and a sink node is placed in the center of the network.
nored. If x is an end device, then we may try to asso- Fig. 8(a) shows the effects on the different network size.
ciated x with another router, say w, other than v and The number of routers and end devices are set to (N/10)2
135
R1 Interference R1 R1
neighbor (5,11)
R2 End device R2 R2
R3 R3 R3
(1,15) (4,12)
Router
R9 R9 R9
End device Potential parent routers End device Potential parent routers End device Potential parent routers
ED1 R5, R6, R7, R8, R9 ED1 R5, R7, R9 ED1 R7
ED2 R5, R6, R7, R8, R9 ED2 R5, R7, R9 ED2 R7
ED3 R2, R5, R7, R8 ED3 R2, R5, R7, R8 ED3 R5, R7
(a) (b) (c)
Figure 7. (a) In the process of the slot assignment algorithm. (b) After procedure RemoveIndInt(v ,v),
router R6 and R8 can use the same slots. (c) The result of the slot assignment algorithm.
136
90
GSA GSA
SA-NR 120 SA-NR
80 SA SA
70 100
60
80
50
L(T)
L(T)
40 60
30
40
20
20
10
0 0
1202 1402 1602 1802 2002 2202 2402 2602 2802 17 18 19 20 21 22 23 24 25 26
2 Transmission range (m)
Network size (m )
(a) (b)
140
GSA GSA
SA-NR 120 SA-NR
120 SA SA
100
100
80
80
L(T)
L(T)
60
60
40 40
20 20
0 0
500 600 700 800 900 1000 1100 1200 1300 1400 1500 26 27 28 29 210 211 212
Number of ZigBee routers Number of available slots
(c) (d)
[3] Terrestrial ecology observing systems. http: [10] C.-Y. Lin, W.-C. Peng, and Y.-C. Tseng. Efficient in-
//research.cens.ucla.edu/areas/2007/ network moving object tracking in wireless sensor networks.
Terrestrial/. IEEE Trans. on Mobile Computing, 5(8):1044–56, 2006.
[4] Tmote sky. http://www.moteiv.com/products/ [11] G. Lu, N. Sadagopan, B. Krishnamachari, and A. Goel. De-
tmotesky.php. lay efficient sleep scheduling in wireless sensor networks. In
Proc. of IEEE INFOCOM, 2005.
[5] ZigBee alliance. http://www.zigbee.org/. [12] M.-S. Pan, C.-H. Tsai, and Y.-C. Tseng. Emergency guiding
[6] M. A. Batalin, G. S. Sukhatme, and M. Hattig. Mobile robot and monitoring applications in indoor 3d environments by
navigation using a sensor network. In IEEE International wireless sensor networks. International Journal of Sensor
Conference on Robotics and Automation, 2004. Networks (IJSNet), 1(1/2):2–10, 2006.
[13] R. Szewczyk, A. Mainwaring, J. Polastre, J. Anderson, and
[7] IEEE standard for information technology - telecommunica-
D. Culler. An analysis of a large scale habitat monitoring
tions and information exchange between systems - local and
application. In Proc. of ACM Int’l Conference on Embedded
metropolitan area networks specific requirements part 15.4:
Networked Sensor Systems (SenSys), 2004.
wireless medium access control (MAC) and physical layer
[14] Y.-C. Tseng and M.-S. Pan. Quick convergecast in zig-
(PHY) specifications for low-rate wireless personal area net-
bee beacon-enabled tree-based wireless sensor networks. In
works (LR-WPANs), 2003.
Computer Communications, to appear.
[8] IEEE standard for information technology - telecommunica- [15] D. B. West. Introduction to Graph Theory. Prentice Hall,
tions and information exchange between systems - local and 2001.
metropolitan area networks specific requirements part 15.4: [16] ZigBee specification version 2006, ZigBee document
wireless medium access control (MAC) and physical layer 064112, 2006.
(PHY) specifications for low-rate wireless personal area net-
works (LR-WPANs)(revision of IEEE Std 802.15.4-2003),
2006.
[9] A. Keshavarzian, L. V. H. Lee, K. C. D. Lal, and B. Srini-
vasan. Wakeup scheduling in wireless sensor networks. In
Proc. of ACM Int’l Symposium on Mobile Ad Hoc Network-
ing and Computing (MobiHoc), 2006.
137
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Algorithms and Methods beyond the IEEE 802.15.4 Standard for a Wireless
Home Network Design and Implementation
Abstract
The aim of this paper is to describe techniques and scenarios, such as home, industrial and building
algorithms that have been used to design and automation, biomedical monitoring, energy-efficiency
implement a commercial wireless home network control, etc.
(WHN). Although IEEE 802.15.4 supposes an efficient This paper is focussed on a WHN composed of
solution for the lower layers of the communication sensors and actuators controlled by a central device.
stack, several key issues are out of its scope. Topology As occurs with other applications, the upper layers of
control (TC) of the network, address management, and Zigbee suppose a high complexity which is not
multi-hop synchronization are some of these issues, required by this application. Because of this, an
which are covered in this paper. The WHN has been energy-aware network simpler than Zigbee, and also
designed taking in mind low complexity, low based on IEEE 802.15.4, has been designed and
consumption, and low end-to-end latency. These implemented. This paper describes how some issues,
objectives have been reached thanks to a multi-hop which are out of the scope of the standard, have been
beaconed structure, a distributed address solved. Although the taken solutions have been
management, and a routing algorithm based on masks. particularized for this WHN, they can also be suitable
for other ones.
IEEE 802.15.4 is a flexible protocol. The personal
1. Introduction area network (PAN) can operate with several networks
topologies depending on application, such as star or
Home automation, or domotics, has been a target peer-to-peer. A TC algorithm is not intended to be
application of the wireless sensor networks (WSN) defined by the standard, though a description of how a
from their beginnings. Due to the effort carried out by PAN can be established is included. The standard also
the IEEE Task Group (TG4) [1] and the Zigbee defines two addressing spaces within the PAN, as well
Alliance [2], two standards that support the as how they have to be used, although the management
communication needs of the WHN are available: IEEE of addresses is not treated. For a star network, a
802.15.4 [3] and Zigbee [4]. reasonable position is considering that the central node
IEEE 802.15.4 specifies the medium access control generates and distributes the network addresses. In tree
(MAC) layer and the physical (PHY) layer for low-rate or cluster tree networks, the problem is more complex.
wireless personal area networks (WPAN). Among the Synchronization is other key factor for multi-hop
objectives of this standard, the following ones can be network that the standard does not deal with it. It is
highlighted: low-cost devices, reasonable battery proposed the use of an attribute, which determines the
lifetime, easy network deployment, and reliable data offset between the beacon received from the
transfer. While IEEE 802.15.4 deals with lower layers, coordinator and the beacon transmitted by the own
Zigbee defines both the upper layers and the profiles of node. But it is not considered a beacon scheduling and
devices. Since the Zigbee Alliance groups some management across the PAN.
enterprises of different sectors, the standard has to In the remainder of the paper, solutions to these
provide communication facilities to a wide number of issues are exposed. Related work is shown in the next
section. The model of the considered WHN is then
1
Currently, M. A. Lopez-Gomez works as Systems Eng. in the R&D described. In section 4, the TC algorithms followed by
department of SEPSA (SPAIN); e-mail: mlopez@sepsa.es the different devices of the network are detailed. The
139
topology, such as failures in nodes, node movements,
etc. This is useful, for instance, at operation phase
where the maintainability time of the WHN has to be
minimized. Next, the network formation and how the
network acts against changes, are described.
4. TC algorithm
In order to get an easy installation procedure of the
network, a dynamic TC algorithm, which does not
require human intervention, has been designed and
implemented. Devices have not to be connected in a
fixed-order, on the other hand a self-organized method
is proposed. The network also evolves in an
autonomous way against changes that can affect to its Figure 3. AD flow chart
140
The TC algorithm permits associating new devices it enters in orphan state. At this moment, a procedure
just during a period of time called time-limited to leave the orphan state it is initiated. This procedure
window of association (TLWA). The TLWA is is divided in three different phases: resynchronization,
initiated when a switch is pressed in the CCD. After current-channel search, and all-band search.
that, the network construction is permitted, that is, the First, a MAC-layer resynchronization with the
association permit bit of the beacon is activated in the coordinator node in the way that is indicated in the
MAC level. This human intervention has been standard is tried. This is a phase with a high power
imposed, in order to avoid undesired association consumption, because the receptor has to be enabled
between nodes from different networks which are all the time. In order to reduce this power
being installed at the same time. Because of this the consumption, the number of retries is limited. Once the
TWLA has to be also minimized. maximum number of retries is reached, the device
The flow-chart of the code followed by ADs is enters in the second phase.
shown in Figure 3. A device that is not associated to In the current-channel search, the device stays in a
the network remains in a scan-sleep loop with a 50 per scan-sleep loop with a 1 per cent duty cycle. During
cent duty cycle, until beacons are detected. In this the activity period, the device performs a passive scan
phase, only beacons with active association permit bit at the network operation channel. If any scan result is
are treated. If the scan result list is filled with more obtained, and it belongs to the network, the node
than one coordinator that allows the association, it is breaks the loop. When the old coordinator is present in
chosen the CCD or the nearest one to it. That is, if the the scan result list, resynchronization is tried. In other
CCD is in the list it is always selected, if it is not, the case, an association process with a new coordinator
AD with the lowest level will be. For ADs within the and the reinsertion in the network are undertaken. The
same level, the selection criterion of highest link process is similar to that one carried out when the
quality indicator (LQI) is followed. Next, the AD starts device is inserted in the network, except that the
the network insertion process (Figure 4). association in the network is not probably allowed.
The first step followed by a device, when it wants Because of this, the process is preceded by sending
to be inserted into the network, is the MAC-layer automatically a TLWA-start request message to the
association with the chosen coordinator. A short MAC CCD, with no human intervention.
address is assigned to it and so it can send a network The third phase starts when the number of scan
insertion message to the CCD. When the CCD retries at the same channel expires. Unlike the process
confirms the insertion, the AD can request a beacon followed in the second phase, now the 16 channels are
time offset (BTO). Using the BTO, the AD calculates scanned at any time that the device wakes-up.
the relative time needed to transmit the beacon. Then,
it falls in the main loop of the application.
The AD copies the association permit bit from its
parent’s beacon. Thereby, the CCD is the unique
device which defines this bit, being the network
growth delimited by the TLWA.
The process of association and network insertion on
the SD is similar to the AD process. The unique
difference is that the SD does not require BTO,
because it has the role of end device.
Figure 4. Network-insertion process
4.2. Re-establishment of the network topology
141
5. Address management and routing Figure 6 shows a tree and the address assignment
performed to its eleven nodes distributed in five levels.
A distributed and hierarchical address scheme has The CCD is the unique node which has a static and
been designed. It is based on the use of prefixes and prefixed short address (0.0.0.0). The others have a
level masks. For a more intuitive understanding, an IP short address assigned by their parent. Since SDs are
notation can be introduced, where groups of bits are always end devices, ADs and CCD are the unique
separated by points (Figure 5). Each group of bits is devices that manage address in the network.
associated with a hierarchical level of the topological CCD y ADs have a pool of addresses, which are
tree. The first one is related to level 1, the second one implicitly assigned during the MAC-layer association.
to level 2, and so on. The prefix of the address is The address is generated using a prefix for a node
defined as 16 bits, where the n-1 groups of the equal to the address of its parent node.. The assigned
beginning are equal to the first 16 bits of the address address just differs in the n group of bits, being zero
and the other ones are set to zero, being n the level of the others groups. For instance, the 2-level node with
the node. address 1.1.0.0 has received the first address of the
pool of its parent node, which has address 1.0.0.0. All
the sons of this node have the same prefix, 1.0.0.0, and
they have different second group of bits: 1.1.0.0 and
1.2.0.0. As it can be noticed, since the nodes are of
level 2, the last two groups of bits are zero. Thus,
network information is implicit in their addresses. The
level of a node is the number of more significant
groups of bits different from zero. Since neither
previous information transfers nor level-information
publication are needed, this is an efficient way to
choose the lowest-level coordinator.
With this addressing scheme, a mask-oriented
Figure 6. Example of address assignment routing algorithm, which does not use routing tables,
can be performed. This involves more relaxed
computational requirements. When a node receives a
MAC-layer packet, the intended node of the network
message that it carries can be: the own node, a descent
of the node, o any other one. In the first case, the
packet has to be processed by the node. In the second
case, it has to be relayed to the next-hope node, using
an indirect transaction of information. In the last case,
the packet has to be forwarded to the parent node
through a direct data transfer. So, the routing problem
can be formulated as the resolution of three variables:
routing decision (RD), next-hop address (NH), and
Figure 7. Routing Algorithm transfer mode (TM). RD is a Boolean variable, which
takes true value when the incoming packet has to be
forwarded. If the packet has to be processed, it takes
false value.
The n-level mask (LM) concept can be defined as
16 bits where the n first groups of bits are ones, and
the rest of them zeros. Figure 7 shows a pseudo-code,
where the values of variables RD, NH and TM, can be
obtained in an efficient way. ADN is the address of the
node which makes the routing decision, and ADS and
ADD are the source and destination addresses,
respectively. Figure 8 describes the routing of a packet
sent by the node 1.1.1.0 to the node 2.1.0.0.
142
The values which have been given to the BBO, BO
and SO attributes enable that up to 63 ADs can
simultaneously act as coordinators without time
overlapping in their activity periods. The beacon
scheduling is centrally managed by the CCD. The
BTOs of the beacons, as is illustrated in the Figure 9,
are numerated with index (BTOI) from 0 to 63. The
BTOI relative (BTOIREL) between a node with BTOI k
and a node with BTOI j, can be defined as the j minus
k. In this manner, the BTO relative (BTOREL) can be
expressed as the BTOIREL multiplied by the BBO. A
son node can have a BTOI lower than the BTOI of its
Figure 9. Beacon scheduling by time division parent, that is, the beacons transmitted by a node can
have a negative shift respect to the beacon of its
parent. Taking this in consideration, the BTOIREL can
take negative values between -63 and 63.
When an AD is inserted in the network, as it was
described in 4.1, it sends a BTO request message.
Once this message is received, the CCD checks if there
is a BTOI free. In this case, it allocates it to the new
AD. Then, a response message with the BTOI assigned
is generated. This message has basically two fields. On
one hand, the CCD fills the first field with its own
BTOI (BTOICOORD). On the other hand, the second one
is filled with the BTOI assigned (BTOIASSIG). With the
aim to update the BTOICOORD field in any hop, the
message has to be processed by all the intermediated
nodes. When the requesting node receives the response
Figure 10. Example of BTO assignment.
143
Figure 14. Packet routing
message, it obtains the BTOIASSIG and the BTOICOORD, 7.1. Network-topology construction and
thereby it can find the BTOREL with respects to its address assignment
coordinator. In this way, it can schedule the beacon
transmission using the beacon reception from its parent Figure 11 shows how an AD tries to associate with
as reference. Figure 10 shows an example of BTOI a CCD, which transmit beacons with source address
assignment. 0x0000. The AD starts the MAC-layer association
process. In this process, the CCD assigns the first short
7. Results address of its pool to the AD, that is, 0x0400 (1.0.0.0).
Next, the network-insertion message is not sent, but a
In order to verify the correct implementation of the notification message of channel conflict is. This is
designed algorithms and methods, some illustrative because the AD has detected more than one PAN
scenarios have been recreated, as well as the radio transmitting beacons in the same channels. When the
traffic has been captured. The implementation has been CCD processes this command, it finishes the beacon
carried out using a proprietary platform. It is based on transmission and it starts a procedure to select a new
CC2420 transceiver and MSP430 microcontroller of operation channel, as it is described in 4.1. This case
Texas Instruments. In order to visualize and to save the can be produced by a geographical distribution of
IEEE 802.15.4 frames, both the Packet Sniffer nodes like the one represented in Figure12.
software tool and the CC2420DK have been used. The end of the network-insertion process, in a new
144
channel, can be observed in Figure 13. It has to be address pool of a node, and no extra data interchange
noted that the AD has not to initiate the MAC is needed. Each node gives addresses to its sons, where
association process with the CCD. It only has to prefixes are equal to its own address. As result a
resynchronize with the CCD using the orphan hierarchical tree of addresses is obtained, and so, a
algorithm, which was described in 4.2. Finally, it sends routing algorithm without tables, which routes the
the network insertion message. packets across the networks using level masks, can be
used. Because of these advantages, the addressing
7.2. Packet routing scheme proposed is efficient in terms of energy and
computational complexity.
The routing example included in section 5, Figure 7, With the aim to synchronize nodes across the tree, it
has been reproduced. Results are shown in Figure 14. has been followed the time-division vision given by
The address of the node A (1.2.1.0) and B (2.1.0.0) in the 15.4b IEEE task group. The time offset of the
hexadecimal format is 0x0488 and 0x0840, transmitted beacons is centrally managed by the PAN
respectively. It can be observed, how the data packet is coordinator. Up to 63 nodes can send beacons without
transmitted from the A-node to the CCD, using a direct the possibility of time overlapping and with a low duty
transfer, and from the CCD to the B-node through an cycle. In this way, a wide area is covered and a good
indirect transfer. balance between consumption and information delay is
obtained.
7.3. BTO assignment
9. References
In this case, the insertion of a new AD has been
performed in a network, which was compound by a [1] IEEE 802.15 WPAN™ Task Group 4 (TG4),
CCD and two AD. It corresponds with the example http://www.ieee802.org/15/pub/TG4.html
shown in Figure 10. The packet interchange and the
[2] Zigbee Alliance, http://www.zigbee.org
offsets between beacons can be observed in Figure 15.
[3] IEEE 802.15.4, "Part 15.4: Wireless Medium Access
8. Conclusions Control (MAC) and Physical Layer (PHY) Specifications for
Low-Rate Wireless Personal Area Networks (LR-WPANs)",
In this paper, the algorithms and method used in the IEEE standard for Information Technology, Revision 2006.
development of real and commercial WHN, which are
out of the scope of IEEE 802.15.4, have been exposed. [4] Zigbee-Alliance, "ZigBee specification", [Online].
Available: http://www.zigbee.org
As well, some packet captures have been included in
order to contrast the correct operation of the network. [5] Z. You-min, S. Mao-heng, R. Peng, ”An Enhanced
A TC algorithm has been designed and Scheme for the IEEE 802.15.4 Multi-hop Network”, 2006
implemented. It provides the means to reach a star or IEEE.
tree topology, and a network with the lowest number
of hops is always reached obtaining a reduction of both [6] IEEE 802.15 WPAN Task Group 4b (TG4b),
the end-to-end delay and consumption associated with http://grouper.ieee.org/groups/802/15/pub/TG4b.html
data transmission. The network obtained is self-
organized and dynamic. It does not require human [7] A. Koubâa, A. Cunha, M. Alves, “A Time Division
Beacon Scheduling Mechanism for IEEE 802.15.4/Zigbee
operation in installation or changing cases, such as
Cluster-Tree Wireless Sensor Networks “, 19th Euromicro
drops or movements of nodes, etc. minimizing the Conference on Real-Time Systems (ECRTS'07).
maintainability.
Addressing scheme and routing algorithm have [8] L. Cheng, A. G. Bourgeois, “Energy efficiency of
been other key issues solved. In relation to the address different data transmission methods in IEEE 802.15.4: study
management, a distributed technique based on prefixes and improvement”, 2007 IEEE.
has been proposed. Some intrinsic information about
the node has been given to the short addresses, such as: [9] H. S. Kim, J.-H. Song, and S. Lee, “Energy-Efficient
the depth in the tree, its address pool, the address of its Traffic Scheduling in IEEE 802.15.4 for Home Automation
Networks”, 2007 IEEE.
parent. That way, a scanning node can know which of
the scanned coordinators is the closest to the CCD. As [10] J. Ma, M. Gao, Q. Zhang, and L. M. Ni, ”Energy-
well, the assignment of its short address in the MAC- Efficient Localized Topology Control Algorithms in IEEE
layer association supposes the assignment of the 802.15.4-Based Sensor Networks”, IEEE 9 Jan. 2007
145
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract— In this paper we discuss the design methodology this architecture. WSNs can be viewed in part as a reduced
based on the service-oriented architecture and agile development copy of Internet, where different nodes or their groups provide
principles for wireless embedded and sensor networks (WSNs). different services to the end user. Ideally nodes in WSNs self-
This methodology suits particularly well for streamlining and
partially automating the design and implementation of complex organize to provide the required functionality. Web services
WSNs. We report results from selected case-studies to test appli- aim to achieve exactly the same goal on the Internet scale.
cability of service-oriented architectures for embedded software. Therefore technologies and concepts popular for the Internet
We evaluate the proposed design methodology by studying cases can be tried out in the WSN domain. The SOA is one of
that include the development of three different services for them. However, this architectural principle can not be used
wireless sensor networks that can work together as a part of
a complete solution. We specifically comment on the trade-offs directly. It has to be adapted to additionally include not
that a developer might face while designing and implementing only large complex services, but also simple ones, like data
systems. We follow the “best-practices” of the software design storage, routing or sensor readings. To a certain extent the
methodology and adapt them to the development of both the terms component-based and service-based architectures can be
sensor network services and the sensor networks themselves. The used interchangeably in WSNs. One can distinguish between
design and implementation cycle includes three stages: the overall
solution and architecture design, the protocol and application these by defining that the first term refers more to the actual
design, and finally, the implementation. These stages are iterated implementation while the second term is used for logical
throughout the life-time of the project. During the design we constructions.
consider both the abstract definition of user requirements and WSNs have a large range of applications starting from
targeted functionality, and their mapping to the real hardware personal area (PAN) and home environment networks to habi-
and software.
tat monitoring (see Table I). These highly diverse scenarios
impose different requirements on WSNs and lead to distinct
I. I NTRODUCTION
design and implementational decisions. Wireless embedded
Wireless sensor networks (WSNs) lie at the crossroads devices further possess limited energy, memory and processing
of software, network and embedded engineering. This field resources1 . The major limitation for WSNs is power. In many
requires developers knowledgeable in all of these areas, so that scenarios sensor nodes are deployed without constant power
the maximal benefit can be gained from the well-established supply and have to operate on one set of batteries for a
domains. Otherwise WSNs will inevitably suffer from the considerable amount of time. Therefore, all the factors that
danger of re-inventing the things that are already well-known contribute to the power usage have to be minimized. Among
and widely used in the other areas. However, most of the them are communication over the network, reading/writing
“best practices” can not be directly re-used in WSNs and to/from the EEPROM, usage of power-hungry peripherals and
have to be adapted accordingly to the specifics of this domain. excessive computations [3]. This leads to the unique protocol
In this paper we suggest a design methodology for wireless stack and application design for each particular WSN usage
sensor networks that is based on the concepts of service- scenario.
oriented architecture (SOA), agile development methodology Usually WSNs have to be also optimized against a number
and “best practices” of the network development in the WSN, of other parameters besides the network lifetime. Among
MANET and peer-to-peer areas. The use of this methodology them are the maximum allowable data propagation time, the
is illustrated on several use-cases. Additionally, we suggest a fault-resilience requirements, the overall network cost, the
framework for partial automation of WSNs that is based on the complexity and flexibility of the system, code maintainabil-
suggested methodology and is using, among others, Semantic ity, re-usability and comprehensiveness. Depending on the
Web instruments. application scenario different parameters of WSN have to
Originally the term service-oriented architecture refers to a be considered (see Table II). Improvement of one parameter
logical set that consists of several large software components often leads to downgrading of others. The balancing of the
that together perform a certain task or service [1], [2]. SOA 1 For example Berkeley TelosB sensor nodes, or motes, on which we
is a particularly popular paradigm in the community of the implement our designs have only 48 KB of ROM, 10 KB of RAM, a 16-
web software developers, for example Web Services [1] utilize bit microcontroller and, by default, are powered by two 1.5 Volt batteries.
Memory
Fault-resilence
Node Distribution
Area
Sensors Hardware network topology, operation system, programming and
Services Network graph security issues.
• WSN solutions are widely developed using prototypes.
The results of the prototyping, as well as following
deployment and testing should exhaustively evaluated and
major WSNs parameters is not a trivial task and leads to the recorded to enable the experience sharing and component
iterative design process. This is one of the peculiarities of the re-use.
WSNs development, along with the fact that the development • WSN systems are typically developed by a small num-
teams are usually small and highly qualified. The requirements ber (up to 10-15) of highly qualified developers and
of the project can also change from initial ones during the researches. The team members are typically working in
project lifetime. These makes the use of the agile design a close collaboration and can contribute to each other’s
technologies [4] appropriate for the WSNs development. This work. Therefore the project development steps have to be
class of methodologies is primary characterized by the short logical and obvious to each member of the development
and iterative development cycle, highly motivated and qual- team in order to increase the efficiency of the work and
ified team, and a constant face-to-face interaction with the inspire team-work.
customer, as well as between the team members. The use of Most of the features of this list map well to the agile soft-
this methodology allows easy adaptation of the project to the ware design methodology [4] and therefore it can be chosen
changing circumstances and user requirements. as one of the basis on which our methodology can reside.
We split our further discussion into five sections. In Section Service-oriented architecture also suits particularly well for
II we briefly describe the major characteristics of the WSN WSNs as the development of the whole network can directly
design and discuss on the applicability of SOA and agile be mapped to service, simple or complex. For example, the
technique for these systems. In Section III we present the network itself provides several composite high-level services
basic parameters that can be used to characterize WSNs. as area monitoring or manipulation of actuators. Each node
The overall design process, its challenges and iterations are also offers complex services like data forwarding or sensor
given in Section IV. In Section V we provide three case readings. Each node can also be represented as a collection
studies in the areas of service discovery, in-network processing of services that interact with each other. The model-driven
and fault-resilience to ground our theoretical discussion. The architecture (MDA) [5] also seems to be a promising candidate
possibilities for the partial automation of the WSN design, the to be used for WSN systems, as there the process of the
corresponding challenges and gains are discussed in Section system development is very well defined and recommended
VI. Finally, the conclusions are drawn in Section VII. design tools are specified. However, this architecture is more
structured and heavy than the SOA and agile methodology
II. C HARACTERISTICS OF WSN D ESIGN . SOA AND AGILE
combination, and we feel that it need to be adapted to be
M ETHODOLOGY A PPLICABILITY.
used for the typically lightweight and rapidly changing WSN
Judging from both our experience, discussions with the projects. We hope to reuse or adapt some of the core MDA
colleagues and the research papers we have produced a list features, like meta-data component specification, in our future
of characteristics typical for WSN design, some of which are research on design in WSNs.
coming from the software development domain: We propose an abstract service model for an individual node
• Minimalism is essential as a simple and well-defined (Figure 1) that incorporates the following modules: Applica-
system usually works the best. tion, Service Discovery, Transport, Routing, MAC, Physical,
147
Application fault-resilience and services. The overall cost of the network
In-Network Processing
Service discovery
and data gathering consists of hardware, development and deployment costs. The
Middleware
Transport deployment costs grow larger when the individual placement
Routing of specific nodes is required. It is much cheaper to deploy
MAC a homogeneous network that self-organizes depending on the
Physical surrounding conditions. However, this will in turn increase the
development costs. The decision between the static and the
dynamic network configuration is also an important part of an
Fig. 1. Basic WSN node structure architectural design. From one side a careful study of the target
scenario, extensive design efforts and test implementations
allow the creation of a static WSN network that requires
In-network processing and Middleware service classes. Each minimal interference after the deployment. The development
of the above modules can either contain one simple service like of a dynamic network is a more difficult task, but ideally it
a routing protocol or be composed of several complex ones. has to be performed only once. After that the same design
For example, the in-network processing block can include data can be employed for different scenarios and later the network
aggregation and data recovery modules. The service discovery can self-adjust depending on the surrounding. The examples
module might not be required on the mote, if its functionality of dynamic network configuration mechanisms that enable
is already incorporated into the middleware component. The network self-organization are virtual machines, middleware
service-oriented architecture not only suits well for wireless- frameworks and code updates from EEPROM [6].
sensor networks, it also maps well to the agile design method- The network lifetime is primary determined by power con-
ology too, as it allows to realize the iterative principle of sumption of the individual nodes which are mostly battery
the agile design with regular deliveries of small portions of powered and therefore have a limited lifetime. The network
working code, namely individual services. lifetime can be increased, for example, by putting a part of
computational burden to the gateway or user devices. Care
III. WSN PARAMETERS AND T RADE - OFFS
has to be taken to ensure that the gain from the processing of
Wireless sensor networks are relatively small systems that information on a gateway is higher than the communicational
have a limited amount of expected functionality, namely gath- costs of transporting the data to this device. Typically this
ering of the senor reading and enabling actuators in response approach is applicable for small diameter networks.
to sensor readings. WSNs can also be used as a transition Maximum additional delay and fault-resilience are two
network to propagate third-party data. These networks are main quality-of-service (QoS) parameters of wireless sensor
rarely directly connected to the end-user. More often they networks. Maximum additional delay specifies the maximum
are parts of a larger heterogeneous distributed system, which allowable propagation delay between the gateway and the
are the “users” for the WSNs. All of the above leads to the farthest node from it. Fault-resilience of the network, i.e.
possibility to formalize the requirements to these systems, as tolerance of the WSN to node failures, outdated and imprecise
they, though widely diverse, are used for a limited number of information, as well as data losses and injection of malicious
purposes. Additionally, these requirements usually come from data, can be improved by employing special fault-resilience
the professionals who are generally more precise in formulat- mechanisms, such as data back-ups or security add-ons. This
ing their needs than the normal end-users. The formalization approach leads to additional deployment costs and can reduce
of the WSN description does not only allow an easier and the network lifetime. The introduction of back-up nodes in the
therefore faster development of WSN systems, but also enables network leads to the increase in fault-resilience of the network
a partial automation of this process. and at the same boosts up the hardware and deployment costs.
We suggest a basic set of parameters that need to be Finally, the services parameter contains a list of functionalities
specified virtually for any wireless sensor network (Table II). that the user expects from the network.
The parameters can be divided into several groups. Main
parameters characterize overall system performance. These B. Network Parameters
are the most important parameters for the user. Network Network parameters allow to describe the sensor network
parameters describe the wireless network and behavior of the where the application is to be deployed. These parameters in-
nodes in it. Service parameters define the behavior of each clude information on the expected mobility, fault rate, minimal
realized service as well as its inputs and outputs. Hardware required bandwidth, number of nodes in the network, average
and software parameters describe the devices that can be used network diameter, information on the network symmetry and
to create a WSN; they are used during the implementation heterogeneity. Some of these parameters, like expected band-
stage of the project. width are direct user inputs. Some other are generated and
adapted during the project deployment and directly influence
A. Main Parameters the main parameters that have to be optimized. The user is
We have identified five basic parameters which are used for free to fix some of them and leave the rest to the developers.
the overall WSN description. They are cost, lifetime, delay, For example, the user might want to fix the positions of
148
some nodes and therefore indirectly influence the network Begin
and automate the wireless sensor network design process. A Define additional hardware Test the service
parameters
service description includes the list of provided functionalities Define additional software
and required services. For example, the data collection service paramters
No Any Yes
other problematic
requires an underlying data delivery mechanism and provides services?
Check if there exists the node
the functionality of data gathering. Each service is also char- service and corresponding
software that satisfies the input
acterized by the expected influence on the node lifetime and parameters.
overhead data rate, i.e. the amount of data per time unit Search the existing solutions
generated extra depending on the given data rate from the
services that utilize this service. For composite distributed No
The service is found
services QoS parameters are also important.
Yes
D. Software and Hardware Parameters
Test the network solution
The software and hardware parameters become important
in this development stage. The hardware parameters include
Deploy the network
hardware platform specification (memory, chip, interfaces,
radio, power resources) and sensor platform descriptions. The
End
software parameters include the required OS/Virtual machine,
needed amount of memory (RAM/ROM), a list of modules
that the considered software module requires to operate and Fig. 2. Generalized WSN design process.
requirements to the hardware, like a radio or a specific sensor
support.
parameters and concepts derived in the previous two steps
IV. D ESIGN P ROCESS into the implementation on the real devices. The flowchart
As we have proposed earlier, the WSN design process corresponding to these three design steps in terms of SOA is
should be agile, however it should have some structure. We given in Figure 2.
have chosen to loosely follow the standard waterfall model After gathering and analysis of the user requirements at
[7]. The waterfall model includes eight stages: gathering first the existing solutions can be checked for the re-use, i.e.
of the requirements, their analysis, the design of the solu- if the existing solutions fit in the user constrains and while
tion, development of the software architecture, development providing the desirable services. If no appropriate solution is
of the code, testing, deployment and post implementation. found a new one has to be created.
For wireless sensor networks most of these stage are also
valid. However, the solution design stage has to be altered A. Design of the Solution
to include the network design parameters and the following In the solution design stage the estimation needs to be
choice the network architecture. The development of the made if the parameter constrains specified by the user can be
software architecture stage in WSNs is changed to the design achieved in principle and what corresponding network archi-
of the individual network protocol stacks and applications tecture should be used. The choice of the network architecture
that provide the services desired by the user. The stage of is based on the expected network topology and the behavior of
the code development deals with the mapping of the abstract the nodes (mobility, fault ratio). Additionally, judging from the
149
user requirements, the priority between the main parameters of a network topology is desirable or use a dynamic role
should be estimated, as in WSNs we always face the trade- assignment mechanism, for example the one proposed in [9].
off between cost vs. network lifetime vs. QoS vs. functionality The major trade-off at this design stage is simplicity vs. effi-
of services. For example, the increase in the network lifetime ciency vs. flexibility. By simplicity we understand the architec-
can be achieved by attaching a larger battery to the sensor tural simplicity of an application, as well as the simplicity of
node, i.e. increasing its cost or decreasing QoS or functionality the protocol message flow and on-node processing. Efficiency
constraints and therefore allowing inaccurate or out-of-date refers to ability of the specific application or protocol to fulfill
data to be reported. the goal. Flexibility reflects the re-usability of the design for
For small-scale networks the cost and fault-resilience often other projects and also to the ability of the WSN to adapt to
come in the first place. The health-monitoring system is one the changing environment.
example. Here the network life-time is not usually the major The network lifetime can be improved by reducing the
issue and in PANs it is relatively easy to recharge the devices. network traffic, which requires the increase of the network
However, the fault of a single device might lead to heavy con- protocol efficiency. Techniques that help to reduce the network
sequences as the change in the patient’s state can be missed. traffic include, but are not limited to caching, piggybacking and
Cost is an issue in non-critical applications such as smart home in-network processing. The use of each of these techniques
and sport training scenarios. The plain architecture, where all involves different trade-offs. Caching is used to both increase
the nodes have the same basic functionality, is well suited to the fault-resilience of the network and decrease the network
such scenarios. Additionally, small scale networks can benefit traffic. Caching is employed, for example, in routing and
the most from the back-end devices that connect WSNs to service discovery. When applying caching one should maintain
external networks. The small network diameter allows these a careful balance between the amount of messages injected
networks to put computational load on the back-end devices, into the network used to update the cache and the age of
such as gateways, at a low communication cost. the cache, i.e. the probability to have stale information there.
For medium and large networks more complex role specific This balance is application specific as, for example, in fairly
architectures suit the best, as it was already demonstrated by static networks routing information can be updated much more
the Internet community [8]. By role-specific architecture we rarely than in highly mobile networks. Piggybacking allows
mean any network configuration where nodes play different to attach additional data to bypassing network packets, thus
roles. In this category, among others, fall the client-server and potentially decreasing the number of transmitted packets. The
cluster-based architectures. The nodes in a WSN generally trade-off here is between the increase in the packet size and,
perform either the basic role, i.e. they gather sensor data, therefore the decrease in the probability of a packet delivery,
or the processing role. The processing role can include a and the number of messages generated. It is well known that
variety of functionalities like data aggregation, data back the larger the packet transmitted over wireless network is the
up, cluster-head operation and other in-network processing more chances that it will be corrupted. However, it is cheaper
activities. The use of roles for large networks can significantly in terms of power to transmit the data in a large packet rather
boost the network lifetime keeping the overall cost of the than in several small packets [10]. This is strictly true only if
network relatively low. However, introducing a hierarchy into we do not consider possible retransmission.
the network can lead to longer network response times or The messaging trade-off involves two different data propa-
affect the network stability, as the failure of a cluster-head gation techniques: reactive vs. proactive. If the data is prop-
can cause the whole surrounding network to malfunction. A agated reactively through the network it is sent after the user
hierarchical architecture is also not suitable for application request. The proactive data propagation is initiated by the data
scenarios with medium or high mobility due to the increased accumulating device, in form of an advertisement or an event
cost of maintaining the hierarchy. notification. Proactive data transmissions are used, for exam-
ple, in case of emergency notifications. They are also used
B. Protocol Stack and Application Design as supporting messaging in, for example, routing protocols
After the general decisions have been made concerning the needed to obtain the addresses of neighboring nodes. Reactive
solution architecture, protocols and applications residing on data propagation is typically cheaper in terms messaging as
the individual nodes are to be designed. Stack formulation packets are generated only when it is necessary.
is as well as the system design in general, is an iterative Most of the supporting functionality of WSNs can be
process, first we define the top services, than go to the lower defined as in-network processing that was already briefly
level services. The shared, cross layer-services are defined as discussed in the previous section. The classic examples of
they are required by the hierarchical services, or at the end to in-network processing are data aggregation, cluster-head func-
adjust the main parameters. For example, distributed coding tionality, data storage and compression. In-network processing
saves some energy at the expense of additional complexity, i.e. can be activated on some or all of the network nodes. This al-
development cost. Additionally, if we want to further optimize lows to save the individual power and computational resources
the network performance by assigning different roles to nodes, and sometimes leads to better routing. This functionality can
like a data aggregator or a cluster head, we should either therefore increase the network lifetime, the efficiency of the
assign these roles statically for which a detailed knowledge network, and its flexibility. However, the mismanaging of in-
150
Service Network Hardware Software TABLE III
parameters parameters parameters parameters
P ERFORMANCE CHARACTERISTICS FOR D ISTRIBUTED S OURCE C ODING .
151
TABLE IV
M EMORY FOOTPRINT OF THE SERVICE DISCOVERY PROTOCOLS .
nanoSLP nanoSLP
Resources nanoSQL
simplified full
RAM [Bytes] 320 411 655
152
complex expressions, nested SQL statements, built-in aggre- basic abstract SOA-based model of an individual node. Our
gation functions and support for a wide range of data types. next goal is to develop a framework that will assist developers
The expressiveness of nanoSQL comes at the price of the in designing and implementing wireless embedded and sensor
increase in the ROM footprint (80%) and the tripled code networks.
size. The growing functionality of the SD protocol and the
ACKNOWLEDGMENT
corresponding parser leads not only the the increase of the
memory footprint and code size, it also automatically leads We thank DFG (Deutsche Forschungsgemeinschaft) and
to more complex component interfaces. For nanoSQL module RWTH Aachen University for partial financial support through
we have more than fifteen interfaces, which certainly makes UMIC-Excellence cluster. The work was also supported by
it more difficult to use this component. European Union (COMANCHE project). We would also like
to thank K. Rerkrai, E. Osipov and M. Popa for fruitful
VI. D ESIGN AUTOMATION P OSSIBILITIES discussions.
The design process of WSNs can be partially automated due R EFERENCES
to their relative simplicity. The development of such a tool is a
[1] C. Schroth and T. Janner, “Web 2.0 and SOA: Converging concepts
subject of our on-going work. The proposed SOA-based agile enabling the internet of services,” IT Professional, vol. 9, no. 3, pp.
WSN methodology suits well for at least partial automation 36–41, 2007.
using Semantic Web [22] approach developed for web services [2] M. P. Papazoglou, “Service-oriented computing: Concepts, characteris-
tics and directions,” in Proc. of WISE, Washington, DC, USA, 2003.
composition. However, substantial differences exist in the pro- [3] J. Polastre, R. Szewczyk, and D. Culler, “Telos: enabling ultra-low power
cess of how computers and humans can reach the satisfactory wireless research,” in Proc. of the IPSN, NJ, USA, 2005, p. 48.
design decision. The computer tends to make decisions by iter- [4] R. Martin, Agile Software Development: Principles, Patterns, and Prac-
tices. Prentice Hall PTR Upper Saddle River, NJ, USA, 2003.
ating through a number of possible solutions where the number [5] J. Miller et al., “Model Driven Architecture (MDA),” Object Manage-
of possibilities searched are regulated by pre-defined rules. ment Group, Draft Specification ormsc/2001-07-01, July 2001.
Humans take shortcuts using their experience and intuition. [6] S. Brown, “Updating software in wireless sensor networks: A survey,”
Dept. of Computer Science, National Univ. of Ireland, Maynooth, Tech.
For example, a part of the application development process is Rep., 2006.
the mapping of the abstract requirements and descriptions to [7] I. Sommerville, Software Engineering. Addison Wesley, 2006.
the real world software and hardware. At this stage human- [8] Y. Chawathe, S. Ratnasamy, L. Breslau, N. Lanham, and S. Shenker,
“Making gnutella-like P2P systems scalable,” in Proc. of the SIGCOMM
dependent parameters such as developer experience with one ’03. NY, USA: ACM Press, 2003, pp. 407–418.
or another software and hardware platform influence the [9] C. Frank and K. Römer, “Algorithms for generic role assignment in
decision. People tend to develop in those environments they wireless sensor networks,” in Proc. of SENSYS, San Diego, California,
USA, November 2005.
are familiar with, as additional learning curve is a time and [10] V. Raghunathan and C. Srivastava, “Energy-aware wireless microsensor
resource consuming process. networks,” Signal Proc. Mag., IEEE, vol. 19, no. 2, pp. 40–50, 2002.
We are currently developing on an expert system that [11] D. M. Jones, “The New C Standard (sentence 787),” http://www.coding-
guidelines.com/cbook/sent787.pdf [last visited 20.09.2007], 2005.
will allow to design both complete WSN systems, as well [12] D. Slepian and J. Wolf, “Noiseless coding of correlated information
as individual services, automate documentation and feedback sources,” IEEE Trans. on Information Theory, vol. 19, no. 4, pp. 471 –
gathering process for different components. As a first step 480, 1973.
[13] S. S. Pradhan and K. Ramchandran, “Distributed source coding using
we are implementing an ontology-based knowledge base that syndromes (DISCUS): design and construction,” IEEE Trans. on Infor-
stores information about different WSN services and can mation Theory, vol. 49, no. 3, pp. 626 – 643, 2003.
estimate their compatibility and suggest possible component [14] J. Chou, D. Petrovic, and K. Ramachandran, “A distributed and adaptive
signal processing approach to reducing energy consumption in sensor
wiring. On the network side we are using a middleware with networks,” in Proc. of INFOCOM’03, San Francisco, USA, March 2003.
SD capabilities that is inspired by SQL syntax to gather the [15] C. Jardak et al., “Distributed Information Storage and Collection in
required parameters about the individual service functioning, WSNs,” in Proc. of MASS, Pisa, Italy, October 2007.
[16] L. Buttyan and P. Schaffer, “Panel: Position-based aggregator node
as well as of performance of the overall system. election in wireless sensor networks,” in Proc. of MASS, Pisa. Italy,
October 2007.
VII. C ONCLUSIONS AND F UTURE W ORK [17] B. H. Bloom, “Space/time trade-offs in hash coding with allowable
errors,” Communications of the ACM, vol. 13, no. 7, pp. 422–426, 1970.
Constructing a WSN that fulfills a particular task, as well [18] Z. Shelby et al., “NanoIP: The Zen of Embedded Networking,” in Proc.
as designing and implementing the corresponding applications of ICC’03, Seattle, Washington, USA, May 2003.
and protocols is not a trivial task. A developer has numerous [19] E. Gutman and et al., “RFC 2608: SLPv2: A service location protocol,”
June 1999.
decisions to take on the architectural, protocol and application [20] K. Rerkrai et al., “Unified Link-Layer API Enabling Portable Protocols
design and implementational levels. In this paper we have and Applications for Wireless Sensor Networks,” in Proc. of ICC,
proposed a design methodology that relies on service-oriented Glasgow, UK, June 2007.
[21] S. M. et al., “TinyDB: an acquisitional query processing system for
architecture and agile methodology and adapts this techniques sensor networks,” ACM Transactions on Database Systems, vol. 30,
for the WSN use. We have provided case studies that showed no. 1, pp. 122–173, 2005.
the applicability of this methodology to various application [22] T. Berners-Lee, J. Hendler, and O. Lassila, “The Semantic Web,”
Scientific American, vol. 284, no. 5, pp. 28–37, 2001.
scenarios. Additionally we have proposed a list parameters
that most of the WSNs can be described with and discussed
the major trade-offs WSNs face. We have also developed a
153
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
155
(imagine pressing the remote control buttons for the frequency domain have been utilized to character-
a TV set), which means he/she can wait only for ize human activities [2]. However, it is insufficient to
a few seconds for the service. So, the association utilize simple features like the sum of the squared dis-
should be made quickly when the result is utilized crete FFT component magnitudes of the signal, since
as trigger of a service. they do not represent the difference in the phases of the
signals on both the object and the body side. Imag-
3.2. Design Decisions ine that two persons riding bicycles of the same size
of wheels at the same speed. Here, the same patterns
For the first requirement, we utilize the proximity of the frequency component distribution can be seen.
(correlation) of the signal patterns of sensors since, as Another interesting but more complex approach work-
described in section 2, direct identification by biomet- ing with the frequency domain is [9]. That is based
rics requires explicit involvement by the user. The on a coherence function which represents the correla-
utilization of proximity is a relative approach, which tion of the power spectrum between two signals. In
means the wearer that has the most proximate signal, [9], a system can determine if two devices are carried
e.g. movement, pattern to an artefact is selected as by the same person with 100 % accuracy. However, it
the user. Therefore, a proximity metric needs to be requires a sliding window of 8 seconds of the data, and
calculated from the signal patterns, and then it is eval- it is too long to initiate a service on the detection of
uated within all possible users (terminals) in a ded- the association.
icated space. This approach also satisfies the third We have tested a variety of correlation coefficient
requirement in a sense that the calculation and eval- metrics [5], and the maximum value among all possible
uation (comparison) components are common. As we pairs of correlation coefficients that provided the best
describe in section 4.4, only a few parameters need to performance were utilized in the later experiments.
be specified for each type of an artefact. We assume that 3-axes accelerometers are attached on
The communications between a person’s terminal both an artefact side and a user’s body, where multiple
and an artefact, and also between two terminals is re- nodes (N) can be on the body. So, the maximum num-
alized by a broadcast basis to meet the second require- ber of the pairs is 9N (=3 axes x 3 axes x N nodes). To
ment. Furthermore, it is useless to run the process for reduce unnecessary calculation, N should be as small
all artefacts in the dedicated area, rather it should only as possible. We can selectively specify a node(s) on
work for a very few sets of artefacts. So, we introduce a the body that relates to the utilization of an artefact,
selective activation of the identification process called a node on a leg for a node on a pedal of a bike, for
an association condition. example.
We also studied the dependency on the window size
3.3. Correlation Coefficient for the proximity evaluation. Basically, the perfor-
mance of correct association increases when the size
To realize the association in an improvised and ex- of the window gets larger. However, the “saturation”
tensible way, a metric that represents the proximity point in the window size-performance graph varies
of the acceleration signal pattern is calculated on the among artefacts, which means window size is a system
user’s side (terminal), and then it is evaluated to find parameter. Please refer to [5] for more detail about the
the most proximate pair within all the terminals in a characteristics.
dedicated space. As the metric, we have selected cor-
relation coefficient (Formula (1), below) since it is also 3.4. Association Procedure
lightweight for timely association.
∑ Figure 1 shows the six steps procedure for associa-
(d1 − d1 ) • (d2 − d2 ) tion. We have presented our basic algorithm of asso-
r12 = √∑ ∑ (1)
(d1 − d1 )2 • (d2 − d2 )2 ciation with a simulation study in [6]. In this paper,
we extend the procedure and present the architectural
Here, d1 and d2 represent the data sets obtained (from design based on the requirements mentioned in section
the wearables and the artefacts, respectively) and to be 3.1.
associated at a specific period of time (i.e. window ). The procedure starts with the event from an artefact
The overline di denotes the mean value in the window, that indicates someone is using it (Step 1). Driven by
and the sum (Σ) is calculated over a window. this event, all the possible users’ activities are checked
A correlation coefficient is a metric of the proxim- if they satisfy an association condition (Step 2). This
ity of signal patterns in the time domain. Features in is done on the terminal side, and the user’s activity is
156
Scheme
Corr(c) = 0.4
Corr(a) = 0.9
(1)
moving with user activities walking and cleaning. A Artefact
(6) Stop sending raw data
condition is defined by an application developer who
User Terminal (b)
builds an application running on Kuka. A methodology (2) Association Condition
Checking: “Yes, satisfied (4)
to investigate appropriate conditions for each type of the link condition.”
(2) Association Condition
User Terminal (a)
an artefact is out of focus of this paper. The type of an (3) Calculating Correlation
Checking: “Not satisfied.”
metric (Correlated
artefact that generates the event and the state-of-use Coefficient): Corr(a) = 0.9
(5) Mine (0.9) is the highest of
are utilized as the key to specify required activity to all. So, I am the user!
satisfy.
At the same time as the event notification, the arte- Figure 1. Six Step Association Procedure
fact starts sending raw data for the correlation check-
ing. However, only those terminals that satisfy the
association condition accept the data and start calcu-
lating the metric in a data window with appropriate Artefact-Person Associator, Data Buffer, and Broad-
size(Step 3). This means that unnecessary calculation cast Client/Server. Activities of the wearer of the sen-
can be avoided on the terminal of a person who is not sors are recognized by the Activity Recognizer at a
engaged in an activity specified in the association con- certain interval. This is utilized when an association
dition. However, a wildcard “*” is also supported on condition is evaluated. The Artefact-Person Associa-
the right column of the table of the association con- tor component is the main function of the Kuka ar-
dition since some artefacts seem not to be involved in chitecture that listens to an event from a sensor aug-
any activity, for example, we drink a cup of coffee while mented artefact. The event indicates the start/finish
standing, sitting, walking, etc. In this case, Step 2 is of the usage of an artefact. Furthermore, the com-
skipped. After the calculation, the terminals distribute ponent performs the actual proximity evaluation pro-
the metric to select the maximum one on each side, cess. The Data Buffer component stores data from the
where the selection is done after a specific period (Step wearable sensors for a specific periods of time (window )
4). This period is necessary to wait for the metrics to calculate both the features for activity recognition
from other terminals. Here, we utilize absolute maxi- and the correlation coefficient. Finally, the Broadcast
mum value to handle negative correlation. Then, the Client/Server component deals with broadcast-based
terminal that selects its own metric as the maximum Components
communication onentities,
between other the Terminal
i.e. an artefact
is qualified as the user (Step 5). Once the user is de- and other terminals.
termined, the person is assumed to be the user until
another event indicating the end of the usage arrives. Personal
Sensor
Then, the terminal of the user sends a message to stop Augmented
Terminal Activity
Recognizer
the raw data transmission for the reduction of compu-
Data Buffer
Artefact
157
Current Implementation
3-axis
4.1. Wireless Sensor Nodes accelerometer
Cookie
Artefact Proxy
of sensor augmented artefacts, we used our own sensor Cleaner
node named Cookie [11]. Cookie is a 50ecent-sized Bluetooth Wireless LAN
(IEEE802.11g)
Personal
Terminal
wireless sensor node that is extensible for more than Whiteboard
JRE
Cleaner
nine types of sensors, and communicates with a device Bluetooth
Cookie
capable of Bluetooth v1.1 Serial Port Profile. Raw data
is acquired on the node, where the accelerometer data is
sampled 64 times at 200 kHz, averaged for smoothing, Figure 3. Prototyping Architecture
and transmitted to the personal terminal at every 100
msec at 9600 bps. Various sensors can be attached
to Cookie. In this prototyping, a 3-axes accelerometer In [11], we attached three Cookie nodes on both
was utilized to measure the movement. wrists and right thigh according to [2]. Moreover, we
attached a node to a necklace, because of its good dis-
4.2. Implementation crimination performance within sitting activities. We
modeled various everyday activities into two different
levels of abstraction: 1) 9 activities (abstract model)
We have implemented a prototype of Kuka. Here,
and 2) 17 activities (detailed model). Table 2 shows the
Cookies were attached on a person’s body. Artefacts
17 activities. Nine activities are established by combin-
were also augmented with Cookies to detect their state-
ing similar ones, as follows (1) and (2) are clean, (3,4)
of-use, however, they can be augmented with any sen-
and (5) are stand, (6)–(9) are sit, and (10) and (11) are
sors and implemented with any languages if they can
stairs. In the abstract model, the activity drink (17)
communicate with a user terminal. For simplicity, cer-
was removed.
tain acceleration variance of an artefact is defined as
We tested a multi-layer perceptron (MLP) with var-
a piece of “artefact used”. By applying 2-out-of-3 rule
ious input features and data window sizes to find the
for the three axes accelerometer that exceed a thresh-
best structure and a suitable combination of features
old, the final “state-of-use” is answered. The threshold
that would give a fast and accurate classification re-
of the variance was determined heuristically. However,
sult for the user. The input features selected with
the detection algorithm should be optimized for each
forward-backward feature search were the averages and
artefact at the time of manufacturing, e.g. on/off or
the standard deviations (SD) of the three axes accelera-
specific movement pattern recognition.
tion signals within a time window of seven samples (0.7
As assumed in section 3.2, the communication
seconds) from four sensor nodes. Besides the correla-
among sensor augmented artefacts and personal ter-
tion metric, the components of Fast Fourier Transform
minals is realized by a short range wireless medium to
(FFT) (the most useful features for activity recognition
reduce mis-association. Bluetooth is one of such a short
according to the literature) were not utilized, because
range communication medium. But, it is basically for
of the delay as reported in [2] (6.7 sec).
point-to-point communication. So, in the prototyping,
The recognition performance against 9 and 17 activ-
we have utilized UDP multicasting over IEEE 802.11g
ity models is 90.97% and 85.13%, respectively, which
based wireless LAN. Therefore, a protocol converting
is obtained 4-fold cross validation with our collected
component Artefact Proxy was required. However, it
data. We will compare the association performance in
can be removed if a wireless sensing systems with short
terms of the number of classified activities, i.e. level of
range and 1-to-N basis communication is available. All
abstraction in the basic activities.
the components on the terminal were written in Java
(J2SE1.4.2 09).
4.4. Kuka Configuration Parameters
4.3. Activity Recognition Kuka’s behavior is controlled by a set of parame-
ters as shown in Table 3. They are described in an
The activities of the wearer of the sensors are rec- XML-encoded file. The major two parts are 1) activity
ognized at certain time intervals. We made a data col- recognition and 2) proximity evaluation. For the con-
lection experiment to develop the activity recognition figuration of 1), an implementation of an activity recog-
model [11]. The requirements of the model were low nition model is given as a fully qualified class name, e.g.
computation cost and high accuracy. kuka.NineClassifier. The recognition features are spec-
158
Table 2. Recognized Activities Table 3. Kuka Configuration Parameters
(1) Clean Whiteboard (2) Vacuum Clean Name Example
(3,4) Elevator Up/Down (5) Stand Still Activity Recognition Class kuka.NineClassifier
(6) Sit/Watch TV (7) Sit/Relax Recognition Features wrist right.3X.average,
(8) Sit/Read Newspaper (9) Type KB thigh right.3X.sd
(10,11) Stairs Up/Down (12) Walk Recognition Window Size 7
(13) Lie Down (14) Brush Teeth Recognition Interval 1000 msec
(15) Run (16) Bicycle Association Condition wb.vertical movement
(17) Drink =walk,clean
Time to Start Comparison 1000 msec
Samples for Corr. Check 20
Required Nodes wrist right,thigh right
ified in a way that represents the position on the body,
an axis of accelerometer, and the name of the feature,
e.g. wrist right.3X.average. We assume an appropriate
vocabulary is defnied. The size of the data buffer (size fact. In case T2, two subjects utilize different artefacts,
of window) and the interval of activity recognition are i.e. either a whiteboard cleaner or a vacuum cleaner,
also given. These four parameters allow Kuka to be whereas in T3 two subjects utilize the same type of
independent of a recognition algorithm, to be scalable artefact, i.e. whiteboard cleaners.
in the number of activities and to be flexible in the Four subjects participated to the test ( for all, right
recognition features without changing any line of code. wrist is the dominant wrist.). We utilized the two (9
For proximity evaluation, the association condition, and 17) activity recognition model described in section
the time to start comparison of received metrics, the 4.3, which we call abstract and detailed, respectively.
data window size for calculating correlation coefficient, In the former case, both cleaning a whiteboard and
and the node for the calculation are specified for each vacuum cleaning are categorized into one class, clean.
type of an artefact. The right hand side of the condi- The name of activity contained in each activity appears
tion consists of the type of an artefact and the name of on the right side of the association condition. Also, a
event that represents “starting”, while the left side con- wildcard was applied in the condition for comparison in
tains basic activities that the user might be engaging the performance. The conditions were defined for each
with the artefact. In the table, the condition indicates artefact. Based on our previous study [5], 20 samples
that the vertical movement that represents the usage of and the right wrist were utilized for the calculation
a whiteboard cleaner (“wb”) should be associated with of the correlation coefficient of a whiteboard cleaner,
walk or clean activity. As described in section 3.4, a and 30 samples and both wrists and the right thigh
specific period of time is required to start comparing were for a vacuum cleaner. We ran two instances of
proximity metrics from other terminals. The last two Kuka system and one Artefact Proxy on a laptop PC
parameters in Table 3 allow flexible configuration for (Macintosh Powerbook G4, OS: MacOSX 10.4.5, CPU:
each type of artefact since, as can be seen in section 3.3, 1GHz, Memory: 1.25GB, JRE: J2SE1.4.2 09).
the size of a window and a sensor node that contribute
to obtain high correlation varies among artefacts.
Table 4. Test Cases
Case Subject-1 Subject-2
5. Evaluation T1 Whiteboard Cleaner —
5.1. Experimental Setups Vacuum Cleaner —
T2 Whiteboard Cleaner Vacuum Cleaner
We have selected a whiteboard cleaner and a vac- Vacuum Cleaner Whiteboard Cleaner
uum cleaner as association targets. These artefacts are T3 Whiteboard Cleaner-1 Whiteboard Cleaner-2
utilized in a cleaning task. So, the association allows
a system to say what the user is cleaning, i.e. white-
board or floor. Table 4 lists the test cases. Also, Figure
4 shows the scenes and sensor nodes (Cookies) attach- 5.2. Association Performance
ment. The Cookie nodes were attached to both wrists,
the right thigh, and a necklace. Here, T1 is a simple The percentage of successful association for the case
test case, where only one subject utilizes a single arte- T2 and T3 were 67.3% (N=49) and 60.9% (N=23),
159
T1: Single Person T2: Two Persons, Different Types
Wrist (right)
Necklace
160
5.4. Processing Speed the core logic while adapting to heterogeneous require-
The processing speed from the notification of the ments.
state-of-use of artefacts, i.e. whiteboard cleaner and
References
a vacuum cleaner, to completing association were ap-
proximately 3.1 sec (2.1 sec for the window making)
[1] S. Antifakos, B. Schiele, and L. E. Holmquist. Group-
and 3.9 sec (2.8 sec), respectively. Here, the difference ing Mechanisms for Smart Objects Based On Im-
is due to the size of the window (20 for a whiteboard plicit Interaction and Context Proximity. In Adjunct
cleaner and 30 for a vacuum cleaner, and a sample Proc. of the 5th International Conference on Ubiqui-
comes every 100 msec.). The activity recognition time tous Computing (Ubicomp2003), pages 207–208, 2003.
is less than 15 msec. The rest of the time (approx. 1 [2] L. Bao and S. S. Intille. Activity recognition from user-
sec) is required for the terminal to be notified by other annotated acceleration data. In Proc. of the 2nd Inter-
neighborhood terminals and to select the most corre- national Conference on Pervasive Computing (Perva-
lated one as described in section 3.4. We consider that sive 2004), volume LNCS 3001, pages 1–17. Springer-
the current processing time is not too much delay for Verlag, 2004.
[3] W. Brunette, C. Hartung, B. Nordstrom, and G. Bor-
a user. In our earlier experience, the users expect a
riello. Proximity Interactions between Wireless Sen-
sentient artefact to act as a switch like a TV remote, sors and their Application. In Proc. of the Sec-
where the TV screen appears in a few seconds. ond ACM International Workshop on Wireless Sen-
sor Networks and Applications (WSNA 2003), pages
30–37, 2003.
6. Conclusions and Future Work [4] K. Fujinami and T. Nakajima. Sentient Artefact: Ac-
In this paper, we have proposed an architecture quiring User’s Context Through Daily Objects. In
Proc. of the 2nd International Symposium on Ubiq-
“Kuka” to associate a person with an artefact. The
uitous Intelligence and Smart Worlds (UISW2005),
proximity of the signal patterns of readings from a
LNCS 3823, pages 335–344, 2005.
sensor augmented artefact, sentient artefact, and body [5] K. Fujinami and S. Pirttikangas. A Study on a Corre-
worn sensors were utilized for the association. Impro- lation Coefficient to associate an Object with its User.
vised association, infrastructure independency, scala- In Proc. of the 3rd IET International Conference on
bility in the type of an artefact, and timeliness are Intelligent Environment (IE07), pages 288–295, 2007.
taken into account in the Kuka system design. A dis- [6] K. Fujinami, S. Pirttikangas, and T. Nakajima. Who
tributed architecture and a correlation coefficient based opened the door?: Towards the implicit user identifi-
approach are realized and implemented. cation for sentient artefacts. In Adjunct Proc. of the
4th International Conference on Pervasive Computing
The prototype implementation and the evaluation
(Pervasive2006), pages 107–111, 2006.
gave us future work. A short range communication [7] L. E. Holmquist, F. Mattern, B. Schiele, P. Alahuhta,
system needs to be adopted to assess the association M. Beigl, and H.-W. Gellersen. Smart-Its Friends: A
performance in a more realistic environment as well as Technique for Users to Easily Establish Connections
the improvement of the broadcast-based communica- between Smart Artefacts. Lecture Notes in Computer
tion. Also, evaluation on the scalability in the number Science (Ubicomp2001), 2201:116–22, 2001.
of users and artefacts needs to be done. Besides that, [8] K. V. Laerhoven, A. Schmidt, and H.-W. Gellersen.
the applicability in heterogeneous sensor situation will Multi-Sensor Context Aware Clothing. In Proc. of the
be examined. The proximity in the proposed system 6th International Symposium on Wearable Computers
does not limit to the movement of an artefact and a (ISWC’02), pages 49–56, 2002.
[9] J. Lester, B. Hannaford, and G. Borriello. “Are
part of the body, i.e. acceleration. You With Me?”–Using Accelerometers to Determine
Furthermore, more complex and practical cases will if Two Devices are Carried by the Same Person.
be considered. First of all, dynamic thresholding of the In Proc. Int. Conf. Pervasive Computing (Pervasive
correlation metric is needed to handle a multiple users 2004), pages 33–50, 2004.
situation. We are planning to apply some clustering al- [10] M. Philipose, K. P. Fishkin, M. Perkowitz, D. J. Pat-
gorithms to find “user group” and the other. Also, we terson, D. Fox, H. Kautz, and D. Hähnel. Inferring
will take into account the situation where one user is Activities from Interactions with Objects. IEEE Per-
switched to another while an artefact is utilized. Con- vasive Computing, 3:50–57, 2004.
[11] S. Pirttikangas, K. Fujinami, and T. Nakajima. Fea-
tinuous association checking by the six step procedure
ture Selection and Activity Recognition from Wear-
is cost ineffective. So, an on-demand checking mech- able Sensors. In 2006 International Symposium
anism should be introduced. We consider that these on Ubiquitous Computing Systems (UCS2006), pages
cases are application (or artefact) dependent, and thus 516–527, 2006.
an appropriate application framework could simplify
161
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Christian Buckl, Stephan Sommer, Andreas Scholz, Alois Knoll, Alfons Kemper
Department of Informatics
Technische Universität München
Garching b. München, Germany
{buckl,sommerst,scholza,knoll,kemper}@in.tum.de
163
Application Application Application
Component 1 Component 2 Component 3
Application Management
Component Management
middleware
Broker Broker
Node Management
Network Network
Node 1 Node 2
agement that monitors the set of operational nodes. The information about the hosting node but do not collect in-
task of the Node Management comprises amongst others formation about other nodes. More powerful nodes execute
the discovery of new nodes and the monitoring (e.g. battery active versions of the node management that gather the for-
status) of connected nodes. The Component Management warded information and report changes to the Application
can be placed similar to the Application Management only Management.
on a subset of the available nodes.
After this short overview of all used middleware compo- 2.2 Component Management
nents, we will discuss some of them in more detail.
The Component Management provides information
2.1 Node Management about all components available for the entire sensor net-
work. We differentiate between Application Components
The first middleware component, we will discuss in more and Hardware Interaction Component. Hardware Inter-
detail is the Node Management. This distributed service action Components are offered on each node with dedi-
is used to collect status information and capabilities of all cated hardware devices. In contrast, it is possible to lo-
nodes in the sensor network. The capabilities of the net- cate Application Components on an arbitrary node in the
work comprise the available sensors and actuators, the pro- network. To acquire an optimal service placement in the
vided communication media as well as processing power sensor network, the Application Management service needs
and storage capabilities. In addition, run-time data like bat- in-depth knowledge of all interfaces, the provided function-
tery status, free memory or hardware failures must be mon- ality and resources requirements (memory consumption, re-
itored. This information can be used to optimize the con- quired processor time) of each component. This informa-
figuration of the application. Furthermore, the status infor- tion is stored, maintained and provided by the Component
mation can be used for maintenance to identify nodes with Management. Different application components may real-
heavy load or low energy resource at an early stage and to ize a similar functionality. Based on the description of these
make arrangements to replace these nodes or their battery. components, the Application Manager can choose an ade-
To gather all these information, it is essential for the whole quate component based on the available devices and QoS
system that each node announces its presence and keeps the constraints.
state up to date. A node failure can be detected and reported
by neighbor nodes due to the fact that communication to a 2.3 Application Management
lost node is not possible anymore. For resource-constrained
nodes in the network, a passive version of the node manage- This middleware component handles the configuration
ment is sufficient. It is passive in the sense that they provide of the application. The configuration depends on the set of
164
*
available nodes and their status, the set of software com-
ponents, the topology and QoS requirements. Application *
165
¿FOREACH app.componentInstance AS ciÀ¿IF ci.node==nÀ Main.StdControl ->OnOffLEDC.StdControl;
BrokerC.OnOffLED ->OnOffLEDC;
Main.StdControl ->¿ci.nameÀC.StdControl;
BrokerC.¿ci.nameÀ ->¿ci.nameÀC; Main.StdControl ->LightClapServiceC.StdControl;
¿ENDIF-À BrokerC.LightClapService ->LightClapServiceC;
¿ENDFOREACH-À
Main.StdControl ->SoundSensorC.StdControl;
BrokerC.SoundSensor ->SoundSensorC;
Figure 4. Template
Figure 5. Generated Code
4 Code Generation
5 First Prototype
One key requirement was the application-specific tailor-
ing of the middleware. We are using a template-based code Within a first prototype, we have implemented the main
generator [1] to satisfy this requirement. Templates are features of the approach discussed before. Using our model-
highly adaptable components. This offers not only the pos- driven development tool, the developer can specify the com-
sibility to adjust some parameters of the template, but also ponents of the application. The tool supports the automatic
to generate strongly application dependent components of generation of an optimized middleware and integrates the
the middleware like a routing table of the broker. application components. The current prototype is based on
Templates can be used to solve certain aspects of the run- a static setting of the individual nodes with all nodes in 1-
time system, or to combine the results of different templates hop distance. The main task of the middleware is to real-
to form the middleware. Most templates are platform de- ize the interaction between the different components on one
pendent in the sense that they offer a solution only for a cer- node and between local and remote components. There-
tain combination of hardware and operating system. There- fore, only the Broker and the Network Service are necessary
fore, also the correct selection of adequate templates is nec- within the middleware.
essary. The logical connection for a simple example is depicted in
Instead of implementing an own code generator, we are Figure 6. The application is executed on the two nodes.
using an existing code generation framework, called ope- A Hardware Interaction Component reads some value from
nArchitectureWare2 [20]. OpenArchitectureWare provides the environment and sends the result to an Application
for these problems a special template language, call XPand. Component. This component computes a control function
XPand offers the statements DEFINE to declare a new code and sends the result to a second Hardware Interaction Com-
generation function and EXPAND to call other generation ponent that outputs the data. The single components interact
only with the Broker. The task of the Broker is to forward
2 http://www.openarchitectureware.org/ the event to the relevant components.
166
the trains. The components realizing the interaction with
the sensor network were similarly generated by our tool.
I O
167
Figure 7. Application Example: Model Railway
168
are used to access hardware devices and hide low-level im- [2] P. Costa, G. Coulson, C. Mascolo, G. P. Piccoand, and
plementation details. Application components implement S. Zachariadis. The RUNES Middleware: A Reconfig-
the aspects of the application functionality and can be im- urable Component-based Approach to Networked Embed-
plemented platform independent. To form a concrete appli- ded Systems. In Proc. of the 16th Annual IEEE Intl. Sym-
cation, the interaction between Hardware Interaction Com- posium on Personal Indoor and Mobile Radio Communica-
tions (PIMRC’05), 2005.
ponents and the Application Components must be specified
[3] I. Crossbow Technology. Crossbow imote2.builder.
in a model-based tool. The interoperability in heteroge- [4] I. Crossbow Technology. Mda300, data acquisition board.
neous systems with different nodes and also operating sys- [5] I. Crossbow Technology. Micaz, wireless measurement sys-
tems is realized by a tailored middleware. tem.
The transformation of the model into executable code [6] S. Hadim and N. Mohamed. Middleware: Middleware chal-
and the generation of the middleware are realized by our lenges and approaches for wireless sensor networks. IEEE
template-based code generator. Template-based code gen- Distributed Systems Online, 07(3), 2006.
erators are designed to support an easy extension. There- [7] International Electrotechnical Commission. IEC 61499:
Function blocks.
fore, new templates can be easily added to support further
[8] International Organization for Standardization. ISO/IEC
platforms. In addition, the middleware can be augmented 14543-3: Information technology - Home Electronic Sys-
with new features using this extensibility. tems (HES) Architecture - Part 3: Communication Layers
The approach was tested in the context of a model railway. and Initiation.
The implementation was done in two teams: one using stan- [9] I. Johnson, C. Snook, A. Edmunds, and M. Butler. Rigor-
dard methods, the other using the suggested approach. We ous development of reusable, domain-specific components,
could show the advantages of the domain-specific approach, for complex applications. In CSDUML’04 - 3rd Inter-
especially regarding the flexibility in relation to the used national Workshop on Critical Systems Development with
hardware and operating system as well as the code main- UML, 2004.
tainability. The development times were similar. The main [10] G. Karsai, J. Sztipanovits, A. Ledeczi, and T. Bapty. Model-
integrated development of embedded software. Proceedings
reason here was the non-existence of the required templates
of the IEEE, 91(1):145–164, 2003.
for the middleware. We expect a significant acceleration [11] M. Kushwaha, I. Amundson, X. Koutsoukos, S. Neema, and
of the development times, when using our approach in sev- J. Sztipanovits. OASiS: A Programming Framework for
eral projects due to reuse of templates and components. To Service-Oriented Sensor Networks. In International Con-
prove this assumption, we will conduct a case study in the ference on Communication System software and Middleware
future. This case study will also focus on additional evalu- (COMSWARE 2006), 2007.
ation criteria such as power consumption and required exe- [12] Object Management Group. Real-time corba specification,
cution times. Jan 2005.
Since we just have started this work, there are a lot of fea- [13] Object Management Group. Corba for embedded specifica-
tures, we have in mind but could not yet implement. In tion, version 1.0 beta 1 specification, Aug 2006.
[14] Object Management Group. Common object request broker
addition to the Broker and Network Service component, we
architecture (corba) specification, version 3.1, Jan 2008.
have to implement the other components mentioned in Sec- [15] A. Rezgui and M. Eltoweissy. Service-oriented sensor-
tion 2. In addition, dynamic reconfiguration can be used to actuator networks: Promises, challenges, and the road
cope with node failures at run-time. The sensor network can ahead. Comput. Commun., 30(13):2627–2648, 2007.
detect such failures and the reconfigure the network, e.g. by [16] SOS. https://projects.nesl.ucla.edu/public/sos-2x/doc/.
installing affected components on fault-free nodes. [17] D. Thompson and C. Miller. Introducing the .net micro
Furthermore, we want to implement Quality of Service framework, 2007.
(QoS) methods into the network. Examples are the ser- [18] TinyOS. http://www.tinyos.net/.
[19] M. Torngren, D. Chen, and I. Crnkovic. Component-based
vices that deliver the velocity and the acceleration of our
vs. model-based development: A comparison in the context
model trains. To monitor the velocity, the user would typi- of vehicular embedded systems. In EUROMICRO ’05: Pro-
cally select the sensor measuring the velocity. If this sensor ceedings of the 31st EUROMICRO Conference on Software
fails, the sensor measuring the acceleration could be used as Engineering and Advanced Applications, pages 432–441,
backup, but with a lower service quality due to measuring Washington, DC, USA, 2005. IEEE Computer Society.
imprecision. [20] M. Voelter, C. Salzmann, and M. Kircher. Model Driven
Software Development in the Context of Embedded Compo-
nent Infrastructures, pages 143–163. 2005.
References [21] M. Volter, A. Schmid, and E. Wolff. Server Component Pat-
terns: Component Infrastructures Illustrated with EJB. John
[1] F. J. Budinsky, M. A. Finnie, J. M. Vlissides, and P. S. Yu. Wiley & Sons, Inc., New York, NY, USA, 2002.
Automatic code generation from design patterns. IBM Sys-
tems Journal, 35(2):151–171, 1996.
169
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
171
2) Location prediction by utilizing TMPs for energy each rule, each rule is ranked by the following formula
saving. that considers both of support and confidence:
To solve the problem described above, we shall strength(Rt) = sup(Pt)×conf(Pt) (3)
discover TMP in the form as P = <(l1, i1, l2, i2, ..., ir-1,
lr)> where ik semantically represents the time interval
between two traversed locations. Moreover, we shall Since a large number of rules could be generated,
generate temporal movement rule (TMR) in the form most of traditional data mining methods need a
of function utilizing hashing tables [10] or hashing trees
Rt = < (l1, i1, l2, i2, ..., lm-1, im-1) > → < (l m) > [1] to accelerate the rule access. However, we do not
for incorporation into the location prediction need any accelerating function for accessing the rules,
mechanisms so as to achieve low energy and low and the rules will be deployed over the networks based
missing rate in the OTSNs. on the location-related criterion. Therefore, dispatching
Note that we assume the behavior of moving objects TMRs to sensors by LLocation of each TMR requires
is often based on certain underlying events instead of only one scan over the physical rule repository. Take
randomness completely [11], [12], [13], [17]. An event the antecedent < (l1, i1, l2, i2, ..., lm-1, im-1) > of a TMR
is a stream of locations with time intervals. Note that for example. Since the LLocation of the antecedent is
the characteristics of events in OTSNs include not only lm-1, the sensors to load this rule are those within the
locations but also time interval. The network model for neighboring radius of lm-1. Considering that the rule
the movement behavior of objects will be given in that has been dispatched will not be used again in the
details in Section 6.1. future, no accelerating function is needed in our
In solving the targeted problem, some important application.
performance metrics should be considered. In this In Section 6, we will show through experimental
work, we adopt two popular metrics named Total results that ranking rules by strength instead of support
Energy Consumed (TEC) [15] and missing rate [15]. or confidence can save more energy. Moreover, if two
TEC indicates the total energy consumed by sensor or more rules have the same strength value, the rule
nodes in the OTSN during data mining and object with larger confidence will be given higher priority
tracking phases. Missing rate denotes the number of over other rules.
erroneous predictions in a specified time period in ratio
of the total number of movement of objects. 5. Proposed Prediction Strategies
In this section, we describe how the discovered TMPs
4. Data Mining Algorithm: TMP-Mine and TMRs are applied to predicting the location of
In order to discover temporal movement patterns each missing object. For the generated TMRs as
efficiently, we utilize TMP-Mine [11] .The main described in Section 4, they are deployed over the
advantages of TMP-Mine are 1) constructing a sensor network by loading the location-related TMRs
variation of prefix tree called TMP-Tree to aggregate into corresponding nodes. We propose two prediction
the temporal moving patterns into memory in a strategies, namely PTMP and PES+PTMP, for
compact form so that the mining of frequent patterns achieving the prediction tasks. PTMP is a non-velocity
can be done efficiently, and 2) can manipulate the two based prediction strategy that exploits the TMRs to
dimensional moving patterns including location and predict the location of the missing object, while
time attributes simultaneously. It recursively construct PES+PTMP is a hybrid strategy that incorporates the
the TMP-Trees and mines the trees till termination well-known velocity-based strategy named PES with
condition is met. Afterward, we will describe how the PTMP, using both information of detected velocity and
TMRs are generated. the TMRs.
For a discovered TMP, Pt = < (l1, i1, l2, i2, ..., lm) >, In an OTSN, a location prediction requires two
the form of the corresponding TMR Rt and the message transmissions in order to know whether the
definitions of confidence conf(Pt) and strength missing object is recovered. The introduced additional
strength(Pt) are given as: communication cost caused by the message
Rt = < (l1, i1, l2, i2, ..., lm-1, im-1) > → < (l m) > (1) transmission is the energy consumed by the
transmission and receiving operations between radio
sup( < ( l1 , i1 , l 2 , i2 , ..., l m ) > ) components in two sensor nodes and the activation
conf ( Pt ) = × 100% (2)
sup( < ( l1 , i1 , l 2 , i 2 , ..., l m −1 , i m −1 ) > )
power of two nodes. Our pattern-based prediction
strategies use the ranked TMRs one at a time in
We term the last location of antecedent, namely lm-1, as predicting the location. For simplicity and generality,
LLocation. Besides, in order to reveal the strength of the real-time constraint for prediction is represented by
number of predictions or TOP-N predictions in this
172
paper. Hence, a tight real-time constraint corresponds Input: N-gram value n, N-gram method Nm, TOP-N
to a low TOP-N value, and a loose constraint constraint α, Neighboring radius r, and Ranking method R
corresponds to a higher value contrarily. Output: return whether the object can be found by PTMP
Figure 1 shows the PTMP algorithm for recovering Method: PTMP (n, Nm, α, r, R)
missing objects. The N-gram method is used to induce 1. bvr ← Object’s historical movement behavior
the most likely location an object will visit next based 2. FOR i=1 to r
on its previous movement behaviour. Two variants, 3. IF Nm = N+-gram method
4. call PTMP-N+-gram (bvr, n, R, α)
namely standard N-gram and N+-gram, are considered
5. ELSE IF Nm = N-gram method
here. The algorithm begins with composing the 6. call PTMP-N-gram (bvr, n, R, α)
antecedent for prediction (line 1). The initial 7. ENDIF
antecedent is obtained by concatenating the location, 8. IF (the object is recovered)
arrival time and leaving time of the object. Then, either 9. RETURN true
N+-gram or N-gram (as shown in Figure 3) is invoked 10. ENDIF
to recover the missing object (line 3 to line 7). If the 11. subtract the number of predictions
object can be recovered by the assigned N-gram from α
method, the OTSN continues to track the object (line 8 12. IF (α > 0)
13. bvr ← remove the LLocation
to line 10). Otherwise, we subtract the number of error
of bvr and sum the last interval values to form
predictions from the specified TOP-N value, namely α the new antecedent for prediction
(line 11). In the end of each round, the algorithm will 14. ELSE
check the value of α. If α is greater than 0, it means 15. invoke the flooding method to
that there is still remaining time for more predictions. recover the object, and RETURN false
Hence, we extend the neighboring radius in each round 16. ENDIF
for obtaining more TMRs. The new antecedent is 17. ENDFOR
obtained by removing the LLocation of the bvr and
summing up the last two interval values (line 13). The Figure 1. PTMP algorithm.
purpose of regenerating new antecedent is to seek more
Input: N-gram value n, N-gram method Nm, TOP-N
TMRs for prediction. Take the antecedent < (l1, i1, l2, constraint α, Neighboring radius r, and Ranking method
i2, ..., lm-1, im-1) > for example. Suppose that the object is R
currently at location lm-1 and there are no more TMRs Output: return whether the object can be predicted by
for prediction, the antecedent will be modified as < (l1, PES+PTMP
i1, l2, i2, ..., lm-2, im-2+ im-1) >, where the LLocation is Method: PES+PTMP(n, Nm, α, r, R)
removed and the last two intervals are summed for 1 use the latest detected velocity of the object to
seeking more predictions. Note that the flooding predict its current location
method will be invoked to recover the object if the 2 IF (the object is found)
3 RETURN true
location of object cannot be predicted or no more
4 ELSE
prediction is allowed (line 15). 5 call PTMP (n, Nm, α-1, r, R)
Figure 2 shows the hybrid prediction algorithm 6 ENDIF
named PES+PTMP for recovering objects. The input
parameters are the same as those to PTMP and it works Figure 2. PES+PTMP algorithm.
as follows. It first uses the latest detected velocity of
the object to predict its current location (line 1). If the nodes will be activated one by one to recover the
object can not be recovered by the velocity-based object by the original node that lost the object (line 4).
prediction, the algorithm will invoke PTMP to recover Finally, the algorithm returns whether the object is
the missing object. Here the TOP-N value is subtracted found by PTMP-N-gram or not.
by 1 due to the error prediction that has been made by Figure 3-(b) gives the PTMP-N+-gram prediction
PES (line 5). algorithm. The spirit of this algorithm is that the
Figure 3-(a) gives the PTMP-N-gram prediction predicting by a longer antecedent often produces
algorithm. In the beginning, we extract the last n higher precision than that by a shorter one [10], [12].
LIPairs from the movement behavior to form the However, the applicability will decrease with the
antecedent for prediction (line 1). By using the increase in antecedent length [10], [12]. Therefore, the
antecedent we obtain a consequent set called prediction algorithm starts with high N-gram value and decreases
set from the TMRs, where the predicted locations are the N-gram value after each round for the
ranked by the specified rule ranking method such as PTMP-N-gram method (line 2). The activated node
support, confidence and strength (line 2). After the must report back to the original node whether the
prediction set is obtained, the corresponding sensor missing object is found or not (line 3). The algorithm
173
Input: Object’s historical movement behavior bvr, 6.1.1 Simulation Model
N-gram value n, and Ranking method R In the base experimental model, the network is
Output: whether the object can be found by modelled as a mesh network with size |W| = 20*20, and
PTMP-N-gram or not there are N (defaulted as 10,000) objects in this
Method: PTMP-N-gram (bvr, n, R, α) network. Initially, each object arrives at the network on
1. atc Å The last n location-interval pair from bvr IF an arbitrary outer sensor node deploying outside of the
(the object is found) sensor network at some time. We assume that the
2. csq Å Get the consequent by the antecedent atc from
behavior of moving objects in the OTSNs is
the TMRs ranked by R
3. FOR j=1 to min(α, | csq |) event-driven instead of randomness completely. Hence,
4. activate sensor si and check whether the we use two parameters le and Pe to model the average
object is in si length and the event probability, respectively. The
5. if the object is found, RETURN true length of each event is modelled by Poisson
6. ENDFOR distribution with mean le defaulted as 4. The event
7. RETURN false probability indicates the probability for an object to
adhere to a certain event, and it is modelled by Normal
(a) distribution with mean Pe (defaulted as 0.6). The
Input: Object’s historical movement behavior bvr, events of a node are structured by a tree, in which the
N-gram value n, and Ranking method R, TOP-N fan-out of each node is modelled by Normal
constraint α distribution with mean F (defaulted as 2). Each object
Output: whether the object can be found by in the network may move by adhering to a certain
PTMP-N+-gram or not event or randomly. When an object is in random
Method: PTMP-N+-gram (bvr, n, R, α) movement, it will move back by the probability Pb
1 FOR i = n down to 1 (defaulted as 0.1) or randomly move to other nodes in
2 call PTMP-N-gram (bvr, i, R, α)
the hexagon network structure by probability Pn = (1-
subtract the number of predictions from α
3 if the object is found, RETURN true
Pb)/(6-1). The node staying time is modelled by
4 if α <= 0, RETURN false Exponential distribution with mean Ι (defaulted as 4).
5 ENDFOR The tracking time for each object is set as 120 seconds.
6 RETURN false We assume the sensing coverage range is 15m and the
average object velocity is set as 15 m/s. For
(b) communications between the sensor nodes and the base
stations, we utilize a well-known routing algorithm
Figure 3.(a) PTMP-N-gram algorithm. named shortest path multi-hop as used in [15]. We
(b) PTMP-N+-gram algorithm. adopted the Rockwell’s WINS node [19] as our basis
in simulating the energy consumption. More detailed
power analysis of WINS nodes can be found in [8],
terminates only if the object is found or the number of
[13], [19]. The default value settings for the parameters
predictions exceeds the specified value (line 4).
reflect a reasonable and compact environment for
OTSN and mobile systems as in related studies [2], [4],
6. Experimental Evaluation [15].
In this section, we evaluate the proposed prediction
strategies by measuring the TEC and missing rate
under different time constraints. To select the best 6.2 Performance of Prediction Strategies
ranking method for TMRs, we measured the missing In the following series of experiments, we measure the
rate by applying support, confidence, or strength to TEC and the missing rate of the proposed prediction
ranking the TMRs. Moreover, the evaluation on strategies. TEC indicates the total energy consumed by
variations of PTMP was also discussed. In the object the OTSN in tracking all objects, and missing rate is
tracking experiments, 80% of the simulated data are the ratio of the error predictions to the total number of
used for training to obtain TMRs, and the rest 20% are movement of objects within a specified deadline. The
taken as testing set for object tracking. goal of prediction strategies is to track the moving
6.1 Experimental Setup objects with low TEC and low missing rate. Through
the performance study on prediction strategies, we use
To evaluate the performance of the proposed methods, 80% of the simulated data as training set to obtain
we implemented a simulator that generates the TMRs, and the rest 20% as testing set for object
workload data of an OTSN. The details of the tracking.
simulation model will be described in Section 6.1.1.
174
6.2.1 Selection of Ranking Method
Figure 4 shows the impact on missing rate when the 0.75
TMRs are ranked by strength, support and confidence,
0.70
with the training data occupying 80% of the dataset. It Confidence
Strength
is clear that the strength-ranking approach delivers 0.65 Support
Missing Rate
methods. Moreover, it is observed that the
0.55
confidence-ranking method has the worst performance
in missing rate since this kind of ranking might 0.50
TOP-N
objects due to the few TMRs. Figure 5. TEC for PTMP-N-gram and PTMP-N+-gram
The reason why the TEC of PTMP-1-gram decreases with TOP-N value varied.
greatly with the increase of TOP-N value is that more
TMRs are used for prediction. Note that the number of 800x103
600x103
network structure and m is the distance ( in number of
sensors) between the missing object and the original
500x103
sensor node.
6.2.3 Comparisons of Different Prediction Methods 400x103
This experiment investigates the performance of CM
different prediction methods in terms of TEC, i.e., the 300x103
PES (X=0.1)
PES (X=0.5)
PES (X=0.1)+PTMP
efficiency in energy saving. Four kinds of prediction PES (X=0.5)+PTMP
PTMP
(CM) [15], PES [15], PTMP and PES+PTMP. Here, 0.1 0.2 0.3 0.4 0.5 0.6
PES+PTMP is a hybrid method by integrating Figure 6. The TEC with support threshold varied
PES(Destination, Instant) method with PTMP. The for CM, PTMP and PES+PTMP.
reason we choose PES(Destination, Instant) for
integration is described below. Through our straight forward [15], which benefits the other PES
experiments we found PES(Destination, Instant) is the variations. We observed that the accuracy of the other
most energy efficient method proposed in [15]. This is variations is not absolutely higher than
because we use parameters Pb and Pn in our model to PES(Destination, Instant) but the energy penalty is
simulate the activities of objects while not follow the much higher than it because more than one node will
assumption that the object highly intends to move
175
be activated for searching the missing object. Figure 6 [5] V. Padmanabhan, J. Mogul, Using Predictive Prefetching
shows the experimental results. Note that CM, to Improve World Wide Web Latency, ACM Computer
PES(X=0.1) and PES(X=0.5) are not influenced by Communication Review 26(3), 1996.
varied support threshold, and the TEC results for them [6] T. Palpanas, A. Mendelzon, Web Prefetching Using
Partial Match Prediction, in: Proc. of the 4th Web Caching
are shown as PES(X=0.1) > PES(X=0.5) > CM. We Workshop, 1999.
then explain the phenomenon by the following [7] J. Pei, J. Han, B. Mortazavi-Asl, H. Zhu, Mining Access
observations. If an object changes its velocity or Patterns Efficiently from Web Logs, in: Proc. of the 4th
moving direction when the corresponding sensor node Pacific Asia Conf. on Knowledge Discovery and Data
is in sleeping mode, PES(X=0.1) incurs higher Mining, 2000, pp. 396-407.
probability in missing the object than PES(X=0.5). [8] V. Raghunathan, C. Schurgers, S. Park, M. B. Srivastava,
Energy Aware Wireless Microsensor Networks, IEEE Signal
Proc. Magazine, 19(2), 2002, pp. 40-50.
7. Conclusions [9] R. Srikant, R. Agrawal, Mining Sequential Patterns:
In this paper, we propose a pattern-based prediction Generalizations And Performance Improvements, in: Proc. of
strategy named PTMP and a hybrid strategy named the 5th Int’l Conf. on Extending Database Technology
PES+PTMP integrating the PES method with PTMP. (EDBT’06), 1996.
The pure pattern-based prediction strategy works with [10] Z. Su, Q. Yang, Y. Lu, H. Zhang, WhatNext: A
no need to detect the object velocity; hence, it can be Prediction System for Web Requests Using N-gram
applied to the sensor networks with low-end sensor Sequence Models, in: Proc. of the 1st Int’l Conf. on Web
nodes. The hybrid strategy that exploits both the Information Systems and Engineering (WISE’00), 2000, pp
information of object velocity and movement patterns 200-207.
[11] V.S. Tseng, K.W. Lin, Mining Temporal Moving
was shown to outperform PTMP and PES in terms of
Patterns in Object Tracking Sensor Networks, in: Proc. of the
the energy consumption in an OTSN. Therefore, the Int’l Workshop on Ubiquitous Data Management (held with
hybrid strategy serves as an excellent mechanism for ICDE’05), 2005, pp. 105-112.
OTSNs in which the sensors are equipped with [12] V.S. Tseng, K.W. Lin, Efficient Mining and Prediction
velocity detection ability. To adapt to the limited of User Behavior Patterns in Mobile Web Systems”,
storage and weak computation ability of sensor nodes, Information and Software Technology, vol. 48, no. 6, 2006..
a rule dispatching mechanism is also devised by [13] S.M. Tseng, C.F. Tsui, Mining Multi-Level and
complying the location-based criterion. Through Location-Aware Associated Service Patterns in Mobile
experimental evaluation, it is shown that the ranking Environments, IEEE Trans. on Systems, Man and
Cybernetics: Part B, vol. 34, no. 6, 2004.
rules by strength criteria delivers better results in terms
[14] Vincent S. Tseng and K. W. Lin, "Energy Efficient
of TEC and missing rate than that by using confidence Strategies for Object Tracking in Sensor Networks: A Data
or support. Mining Approach," in Journal of Systems and Software,
Acknowledgement Volume 80, Issue 10, pp.1678-1698, 2007.
This research was supported by Ministry of Economic [15] Y. Xu, J. Winter, W.C. Lee, Prediction-Based Strategies
Affairs, Taiwan, R.O.C. under grant no. for Energy Saving in Object Tracking Sensor Networks, in:
95-EC-17-A-02-51-024, and by National Science Proc. of the 5th IEEE Int’l Conf. on Mobile Data
Management (MDM’04), 2004, pp. 346-357.
Council, Taiwan, R.O.C. under grant no. NSC
[16] Q. Yang, T. Li, and K. Wang, Building Association
96-2221-E-006-143-MY3. Rule Based Sequential Classifiers for Web Document
Prediction, Journal of Data Mining and Knowledge
References Discovery, vol. 8, no. 3, pp. 253-273, 2004.
[1] R. Agrawal, R. Srikant, Mining Sequential Patterns, in: [17] G. Yavas, D. Katsaros, Ö. Ulusoy, Y. Manolopoulos, A
Proc. of the 11th Int’l Conf. on Data Engineering, 1995, pp. Data Mining Approach for Location Prediction in Mobile
3-14. Environments, Data and Knowledge Engineering, vol.54,
[2] N. Eagle and A. Pentland (2005), "Reality Mining: no.2, 2005.
Sensing Complex Social Systems", Personal and Ubiquitous [18] W. Ye, J. Heidemann, D. Estrin, An Energy-Efficient
Computing, Vol 10, #4, 2006. MAC Protocol for Wireless Sensor Networks, in: Proc. of the
[3] S. Goel, T. Imielinski, Prediction-based Monitoring in 21st IEEE Infocom, 2002, pp. 1567-1576.
Sensor Networks: Taking Lessons from MPEG, ACM [19] WINS project, Rockwell Science Center. Available:
Computer Communication Review, 31(5), 2001. http://wins.rsc.rockwell.com.
[4] C. Y. Lin, W. C. Peng, Y. C. Tseng, Efficient In-Network
Moving Object Tracking in Wireless Sensor Networks, IEEE
Trans. on Mobile Computing, vol. 5, no. 8, 2006.
176
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
178
4. Optimization Model waiting at the intersection for a given flow. The crossing
arcs model the behavior of vehicles crossing the
4.1. The Space-Time Network for the problem
intersection.
The objective of the vehicle scheduling model is to find
The vehicles arrive at an arrival node either by a road
an optimal scheduling sequence of vehicles such that the
arc from a different intersection, or through a wait arc
average transit time of all the vehicles is minimized.
from the previous arrival node of the same intersection.
We formulate this problem as a multicommodity (The latter represents the vehicles waiting to cross the
network flow problem with side constraints, called the intersection.) If there are vehicles at an arrival node,
“intersection space-time network.” In the intersection one of the following event occurs:
space-time network, each node represents both the time
1) One vehicle crosses the intersection by
and location. Moreover, the projection of any arc on the
traveling over the crossing arc. All the
horizontal axis (the distance axis) is the distance the
remaining vehicles wait, i.e. reach the next
vehicles cover by traveling on that arc. The projection
arrival node by traveling through a wait arc.
of an arc on the vertical axis (the time axis) represents
the propagation delay on that arc. We illustrate this 2) None of the vehicles cross the intersection if a
formulation for a road with two intersections for one vehicle from a conflicting flow is crossing the
direction of flow in Fig. 1. intersection. In this case, all the vehicles wait,
i.e. reach the next arrival node by traveling
In this network, there are two types of nodes for each
through a wait arc.
intersection for each direction of flow. These nodes are
called the arrival nodes and the departure nodes, Each waiting vehicle joins a subsequent wait arc until it
respectively. Each arrival node represents an arrival can be eventually scheduled at the intersection.
event (arrival of one or more vehicles) at that
4.2. Formulation
intersection at the specified time for the given flow.
Similarly, each departure node represents the departure We formulate the vehicle scheduling problem as a flow
event (crossing the intersection) at that time for the of different vehicles on various arcs of a space-time
given flow. network. As explained earlier, the vehicles on the road
arcs are traveling between adjacent intersections. The
This model has three types of arcs, namely, the road
vehicles on the wait arcs are waiting to cross the
arcs, the crossing arcs, and the wait arcs. Each road arc
intersection. Finally, the vehicles on the crossing arcs
represents the journey of the vehicles between
are crossing the intersection.
consecutive intersections within a given time interval
for a given flow. Each wait arc represents the vehicles
Fig. 1. Space-Time network for two intersections for a single direction of flow
179
In the real world, during the go (green) phase at an cannot be permitted to cross the intersection
intersection, it is desirable to permit more than one concurrently.
vehicle to cross the intersection if they are traveling in
The objective of the formulation is to minimize the total
the same direction, following one another, and
transit time of the vehicles. Transit time is the sum of the
maintaining some safe distance between each other.
travel times between intersections (time taken on road
Moreover, as long as the vehicle flow from one direction
arcs), the crossing time at the intersections (travel time
(say north-south) is crossing the intersection, vehicles
on crossing arcs), and the wait time at the intersections
from another conflicting direction (say east-west) cannot
(the time spent waiting on the wait arcs). Each vehicle
be permitted to cross the intersection. The east-west flow
spends the time in the system either traveling over the
can only be permitted after the last vehicle from the
road arcs and the crossing arcs, or by waiting at the
north-south flow has crossed the intersection. Thus, there
intersections by joining the wait arcs. When vehicles
is some delay in phase switching which we refer to as the
travel at the speed limits, the transit time of the vehicles
“switching delay.” When vehicles from the same
can be improved only by minimizing the delay
direction are scheduled consecutively at an intersection,
experienced by vehicles while waiting at the
we need to ensure that these vehicles maintain some
intersections, i.e. by minimizing the number of wait arcs
fixed inter-vehicle gap. We model this gap by
that a vehicle joins. Hence, by minimizing the flow on
introducing a small delay while scheduling vehicles that
the wait arcs, the transit time of the vehicles can be
are traveling in the same direction. We select the length
minimized. In the objective function, we minimize the
of wait arcs suitably to model this delay.
total flow on all arcs, which in turn minimizes the total
To formulate this problem, we shall use the following flow on wait arcs. The objective function can be
notations: expressed as follows:
(i) xi: The flow (total number of vehicles) on arc i. Minimize z = ∑
i∈ A llA rc s
ti x i
(ii) ti: The propagation delay on arc i.
(iii) rjkl: jth road arc between intersections (k – 1) and (k) subject to:
for flow along direction l. This arc connects the jth
departure node of the (k – 1)th intersection to the jth xi ≤ 1 , ∀i ∈ CrossingArcs (1)
arrival node of the kth intersection, for the flow in
x r j kl + x w ( j −1 ) k l = x c jk l + x w jkl
direction l.
∀ j ∈ A r r iv a lN o d e s [ k , l ] (2)
(iv) wjkl: jth wait arc along direction l at intersection k.
This arc connects the jth arrival node to the (j + 1)th ∀ k ∈ In te rs e c tio n s
arrival node at intersection k, for the flow in ∀ l ∈ D ire c tio n s
direction l. xc jkl = xrj ( k +1) l
(v) cjkl: jth crossing arc at intersection k for direction l. It ∀j ∈ ArrivalNodes[k , l ] (3)
connects the jth arrival node of intersection k (in
∀k ∈ Intersections, ∀l ∈ Directions
direction l) to the jth departure node of intersection k
(in direction l). xc jkl + xc pkq ≤ 1, ∀j ∈ ArrivalNodes[k , l ]
(vi) s: Switching delay between phase transitions. ∀k ∈ Intersections
(4)
(vii) CrossingArcs: The set of crossing arcs for the ∀l , ∀q ∈ ConflictingDirections
entire network.
∀p = j , j + 1, j + 2,… , j + ( s / t w jkl ), s ≥ 1
(viii) AllArcs: The set of all the arcs in the network.
Constraint set (1) ensures that at the most one vehicle
(ix) Intersections: The set of all the intersections in the
can travel on a given crossing arc of an intersection.
network
Consecutive vehicles in the same direction must maintain
(x) Directions: The set of directions of flows in the a minimum required safe distance. Constraint set (1)
network together with the length of the wait arcs help us model
this behavior. Constraint sets (2) and (3) are flow balance
(xi) ArrivalNodes[k,l]: The set of arrival nodes at
equations. Constraint set (2) enforces all incoming
intersection k for flow in direction l.
vehicles on an arrival node (either from a road arc or
(xii) ConflictingDirections: The set of all direction pairs from a wait arc) to leave (either to the crossing arc or to
(l1 and l2) where traffic from directions l1 and l2 the next wait arc). Similarly, the flow balance constraint
(3) guarantees the flow conservation for the departure
180
nodes. The departure nodes could be omitted by merging We select appropriate values for PNS and PEW and use
the crossing arcs and the road arcs, such that the delay on these values for all the other intersections to create a
the resulting arc is the sum of the travel time required to schedule.
cross the intersection, and the time to travel between
In the fixed period variable platoon size algorithm, we
these intersections. However, we retain the departure
fix the period for all the platoons to be the hyperperiod H
nodes in the model for clarity. As explained earlier, as
for the system, and vary their lengths (execution times)
long as vehicles from one direction are crossing the
depending on the arrival rates. Thus, for a given
intersection, the vehicles from another flow in its
intersection, the crossing time (execution time) for the
conflicting direction cannot start at the intersection until
north-south platoon ENS and the crossing time for the
the last vehicle of the previous flow has completely
east-west platoon EEW can be calculated as:
crossed the intersection. This behavior is modeled by the
constraint set (4). ENS = H ( ANS / ( ANS + AEW )) and
The purpose of this optimization model is not to develop
a specific scheduling sequence of vehicles at the EEW = H ( AEW / ( AEW + ANS )) .
intersections, but to compute the best possible travel
times for the vehicles for the given scenario, and to serve Here, ANS and AEW represent the arrival rates on the
as a benchmark to evaluate potential heuristic north-south and the east-west roads respectively.
algorithms. To ensure that the schedule is feasible over all the
intersections, we select the execution time of the
platoons based on the following conditions:
5. Heuristic Algorithms
If r is a north-south road, and j is an intersection on r,
We use the performance of the optimal scheduling then the execution time of the platoons on road r, Er is:
method to serve as a benchmark for evaluating two
heuristic algorithms, namely, the “Fixed platoon size, Er = min( ENS ( j )), ∀j ∈ r , r ∈ RNS .
variable period algorithm” and the “Fixed period,
variable platoon size algorithm” [Sha07]. We assume Similarly, for an east-west road q having intersection l,
that we know the average traffic arrival rate on every
road in the grid and apply clock-driven scheduling
Eq = min( E EW (l )), ∀l ∈ q, q ∈ REW .
methods [Liu2000] to generate the virtual platoons. Each
Here, RNS and REW represent the set of north-south and
vehicle must join the next available virtual platoon to
the set of east-west roads, respectively. From the
travel through the grid.
execution time of the platoons and the hyperperiod H, we
In the fixed platoon size variable period algorithm, we can obtain a schedule for the intersections.
vary the period of the platoons, but fix the length of the
These heuristics can be implemented in a variety of ways
platoons. To ensure schedulability over all the
depending on the degree of automation. In a
intersections, we select an intersection having the
conventional system, traffic lights at an intersection
maximum arrival rates for the north-south and the east-
perform phase switching depending on the schedule
west roads. Without the loss of generality, we assume
generated by the heuristics. In this case, the vehicles
that the arrival rate on the north-south road is k times the
could start from or stop at the intersection based on the
arrival rate on the east-west road, PEW = k × PNS . PEW current state of traffic lights.
denotes the period of platoons on the east-west road and
In contrast, in a fully automated net-centric system, each
PNS represents the period of platoons on the north-south
intersection could be equipped with a road-side
road. If e is the time each platoon needs to cross the intersection controller and the vehicles could be
intersection, for a feasible solution to exist, the following equipped with real-time communication and processing
condition should be satisfied:
capabilities. Every intersection controller can broadcast
e ÷ PNS + e ÷ PEW ≤ 1 . the schedule in real-time. Based on the broadcast from
the intersection controller, each approaching vehicle can
Thus, we obtain, compute the time instance at which it can cross that
intersection. In addition, to make the journey smoother,
PNS ≥ e(1 + k ) ÷ k and the vehicles could attempt to reduce or eliminate
stopping at the intersections. To achieve this, each
PEW ≥ e(1 + k ) . vehicle could autonomously compute its travel speed
such that it would reach the intersection just when it is
allowed to start from that intersection.
181
6. Experimental Study
In this section, we compare the performance of the
heuristic algorithms with the optimal solution. We
obtained the optimal solution by solving the space-time
model (presented in Section 4) using CPLEX version
8.1.0. Moreover, we also compare two different
optimization methods, namely, an integer programming
approach to find the optimal solution as explained in
[Sha2007] and an optimization method using the space-
time model.
182
Fig. 3. shows the comparison of the results obtained by
different optimization methods. We compare the optimal [Ahu1993] R. Ahuja, T. Magnanti and J. Orlin. Network Flows
solution obtained by solving the space-time network – Theory, Algorithms and Applications,” Prentice Hall, 1993
model presented in this paper to the optimal solution
[Ahu2005] R. Ahuja, J. Liu, J. Orlin, D. Sharma and L.
presented in [Sha2007]. When integer programming
Shughart, “Solving Real-Life Locomotive Scheduling
model was used to compute the optimal solution, it was Problems,” Transportation Science, Nov 2005, Vol. 39, No. 4,
not feasible to find an accurate solution for arrival rates pp. 503-517.
greater than 2 vehicles/sec. Moreover, the optimal
solution could be calculated over a very small dataset, [Ber2000] D. Bertsimas and S. Patterson, “The Traffic Flow
having just 14 vehicles in the grid. More details are Management Rerouting Problem in Air Traffic Control: A
explained by Shah, et al., in [Sha2007]. However, by dynamic Network Flow Approach,” Transportation Science,
computing the optimal solution using space-time Aug 2000, Vol. 34, Issue 3, pp. 239-255
network model, we could find accurate optimal solutions
[Feb2003] A. Febbraro, D. Giglio and N. Sacco, “On
for the arrival rates greater than 2 vehicles/sec. In
controlling privileged vehicles by means of coordinated traffic
addition, we could successfully compute the optimal lights,” Proceedings of the Intelligent Transportation Systems
solution for larger datasets ranging from 70 to 200 Conference, IEEE, Oct 2003, Vol. 2, pp. 1318-1323.
vehicles in the grid, when we used the space-time
network model. Thus, this experiment demonstrates the [Fer2001] E. Ferreira, E. Subrahmanian and D. Manstetten,
effectiveness of developing an optimization model using “Intelligent Agents in Decentralized Traffic Control,”
a space-time network model as compared to the integer Proceedings of the Intelligent Transportation Systems
programming model. Conference, IEEE, Aug 2001, pp. 705-709.
183
[Soh1996] J. Soh, W. Hsu, S. Huang and A. Ong,
“Decentralized Routing Algorithms for Automated Guided
Vehicles,” Proceedings of 1996 ACM symposium on Applied
Computing, ACM, Feb 1996, pp. 473-479.
184
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
186
on the edges from some certain vertex is not necessarily in a unfair waiting time and/or longer latency . Therefore,
equal to 1 since the receiving process may stop at that vertex the generated broadcast schedules should achieve the fol-
according to the access patterns. As shown in Figure 2, af- lowing two objectives:
ter vertex s has been accessed, the chances to access vertex
a, b,and c are Psa = 0.2, Psb = 0.1, Psc = 0.5, respectively. 1. the topological ordering is reserved;
So, the probability of stoping at s is 1 − (Psa + Psb + Psc ) 2. the variance of latency is minimized.
= 0.2.
To minimize the variance of the latency, we refer to the We refer to such a problem as the Topologically Ordered
mechanism, V-shape placement, proposed in [18] to gen- Broadcast Schedule with Fairness (TOBSF) problem and
erate the broadcast schedule. According to V-shape place- the definition is given below.
ment, if the jobs are ordered in a non-increasing completion
Definition 1. (TOBSF Problem)
time, the optimal schedule can be achieved by placing the
Suppose all the notations are defined as above. The Topo-
jobs with longer completion time at the both ends of the
schedule and the jobs with shorter completion time in the logically Ordered Broadcast Schedule with Fairness (TO-
BSF) problem is to find a 1-to-1 mapping f : V −→
middle of the schedule.
{1, 2, ..., |V |} such that
187
(1) if (u, v) ∈ E, then g(u) < g(v), and heuristics for generating the broadcast schedules using V-
shape placement. One generates the broadcast schedule
(2) (u,v)∈E [g(v) − g(u)] ≤ K . level by level according to a BFS traversal on the DAG and
Definition 4. (GOLA problem) the other does it according to the Topological Sort. The re-
Instance: DAG G = (V , E ), |V | = n and an integer K . sulting broadcast schedules generated will retain the topo-
Question: Does there exist a 1-to-1 mapping g : V −→ logical order and minimize the variance of latency.
{p1 , p2 , ..., pn }, where 0 < p1 < p2 < · · · < pn , p1 , p2 ,
· · ·, pn are positive integers, such that 5.1 LOAP Algorithm
(1) if (u, v) ∈ E , then g(u) < g(v), and We first introduce the LOAP (Level-Orientation with
Access Probability) algorithm. LOAP algorithm first uses
(2) (u,v)∈E [g(v) − g(u)] ≤ K . the Bread First Search (BFS) traversal with equation (1) to
Now we show the reduction. Suppose that I is an in- calculate the level and the access probability of each ver-
stance of the GOLA problem. An instance I of the TOBSG tex in V . In order to minimize the variance of latency, we
problem can be constructed from I as follows. sort the the vertices on the same level by their γ values.
Then, on each level, we place the vertices into channel by V-
1. Let V = V and E = E . shape placement according to the γ values. Finally, from the
lower level to the higher level, we concatenate the vertices
2. The value of K can be derived by the following rela- together to get the data broadcast schedule. Concatenating
tion between K and K . the vertices from lower level to higher level maintains the
Suppose the 1-to-1 mapping g exists in I . We con- topological ordering. Putting them in V-shape using their γ
sider K = V ar[f (v)] = v∈V (f (v)−E[f (v)])2 ·β(v) values minimizes the variance of latency. Figure 3 gives a
= E[f 2 (v)] - (E[f (v)])2 . If V ar[f (v)] is a constant, high-level description of the LOAP algorithm.
then E[f (v)] is a constant. Let E[f (v)] = m. If g
is a permutation of f 2 for each vertex v in V , then Input: A weighted DAG, G = (V, E) with source s.
there exists a vertex u in V such that f 2 (v) = g(u). Output:A topological-ordering broadcast schedule with
That is g(u) : V −→ {1, 4, ..., n2} for each u in V . minimum variance of latency.
2 2
Then
we can get K + m = v∈V β(v) · f (v) =
1. Use BFS to compute the level and γ value
u∈V β(u) · g(u) = u∈V β(u) · {[g(u) − g(al )] +
of each vertex.
[g(al ) − g(al−1 )] + ... + [g(a1) − g(s)] + g(s)}, where 2. Group the vertices into groups using levels and, on each
a1 , a2 , ..., al are the vertices along the longest path level, sort the vertices in decreasing order by γ.
from s to u. Since g(s) = 1 and u∈V {[g(u) − 3. for each level do
g(al )] + [g(a
l ) − g(al−1 )] + ... + [g(a1 ) − g(s)] +
Put vertices to the head side and the tail side
g(s)} ≤ (u,v)∈E [g(v) − g(u)] ≤ K , K + m2 ≤ alternatively from the sorted sequence in Step 2.
β(u) · {[ (i,j)∈E g(j)−g(i)]+1} K +m2 ≤ 4. Concatenate the arranged vertices level by level.
u∈V
u∈V β(u) · {K + 1} = {K + 1} · u∈V β(u) =
K + 1.
Figure 3. The LOAP algorithm.
Given any instance I of the GOLA problem, we hence
can construct an instance I of the TOBSG problem in
O(|V | + |E|) time. Furthermore, using the relation between
K and K , one can easily show that there is a solution for 5.1.1 An Example
an instance I of the GOLA problem if and only if there We use an example in Figure 4 to demonstrate how LOAP
is a solution for the instance Iof the TOBSG problem. We algorithm works. In Step 1, we use BFS traversal to find the
therefore have the following conclusion. level and compute the γ value for each vertex. We start from
source vertex s and define its level as one. Any vertex adja-
Theorem 1. The TOBSG problem is NP-complete; hence,
cent from s is level two and so on. If a vertex adjacent from
the TOBSF problem is also NP-complete.
two or more vertices with different levels, we take the level
of highest one. During the traversal, we can also compute
5. Heuristics the γ value for each vertex. For example, when determin-
ing the level of vertex f , we can also compute γ(f ) as γ(f )
In the previous section, we have shown that the TOBSF = γ(a) · Paf + γ(c)·cf = 0.1 · 0.2 + 0.3 · 0.2 = 0.08. Af-
problem is NP-complete. In this section, we introduce two ter the grouping in step 2, we arrange vertices in V-shape
188
and e edges in the DAG. In the first step, algorithm LOAP
finds the level and computes the γ value for each vertex in
pad 0.5 0.9
d
pdh
h
a BFS fashion. This costs O(n + e) time. Suppose that,
a
phk 0. 5 after the first step, there are k levels and each level has at
peh 0. 3
psa 0.1 p af 0 .2 most m vertices. In the second step, algorithm LOAP sorts
pek 0.3 k
m
pbe 0.9 e the vertices at each level in O(km lg m) = O(n lg n) time.
pei 0. 4
psb 0.5 pik 0. 9 Last, algorithm LOAP takes linear time to concatenate all
b i plm 0.8
s
p fi 0.8 the levels together. Hence, algorithm LOAP totally needs
f l
pcf 0.2 O(n lg n + e) time.
psc 0.3
p jl 0 .9
c
pgi 0.5 j
2. Sort the vertices with γ values in a non-increasing order.
3. Arrange the vertices using their γ values according
the V-shape placement.
4. Do Topological Sort as follows
/* let i be current considered position */
(4.1)insert s into a minimum heap H
with dist value of s as the key.
(4.2)i = 1.
Figure 5. The result of applying LOAP algo- (4.3)while H = ∅
rithm on the DAG in Figure 4. (4.3.1) extract the vertex v from H.
(4.3.2) assign v to current position i.
(4.3.3) remove vertex v and its out-edges.
(4.3.4) insert new sources into H
5.1.2 Correctness and Time Complexity (4.3.5) i = i +1;
Because LOAP arranges the vertices level by level, the
topological ordering is followed. Besides, since all the ver-
tices in every level are arranged in V-shape by their γ val- Figure 6. The TSAP algorithm.
ues, the variance of latency is therefore minimized. As for
the time complexity, we assume that there are n vertices
189
5.2.1 An Example in V-shape ordering. This takes O(n + e) time. Totally,
algorithm TSAP takes O(n lg n + e) time.
We use the same example in Figure4 to show how TSAP
algorithm works. In the first step, as LOAP algorithm does,
we compute the γ value for each vertex in BFS fashion. In 6 Bounds on the Variance of Latency
Step 2, we sort the vertices according to γ values in a non-
increasing order. Then, the vertices are arranged according In this section, we discuss the bounds on the variance of
to the V-shape placement using the γ values in Step 3. The latency for the TOBSF problem. We first explore the rela-
two vertices with largest γ values are placed at the head tion between the data broadcasting and the Poisson distribu-
and tail positions in the placement, respectively. Then the tion by modeling the data broadcast as a binomial random
following vertices are placed in a similar manner with the experiment. Then the bounds on the variance can be derived
order of γ values. The order in the placement is listed in by referring to the bounds on the average latency [20] and
Figure 7. In the last step, Step 4, we use Topological Sort the property that the mean and the variance are equal for the
to finish the scheduling. If there are two or more vertices to Poisson distribution.
be selected at some position i, we select the vertex whose γ
value is closest to the γ value of the ith vertex in V-shape 6.1 Modeling Data Broadcasting
order. The complete result is shown in Figure 8.
A binomial random variable X is defined as,
n! λ λ
Position 1 2 3 4 5 6 7
P r(X = x) = · ( )x · (1 − )n−x , (4)
Candidates s a, a, a, a, d, d, x! · (n − x)! n n
b, c, e, e, e, e,
c e g j f, j
j where n is the total number of the Bernoulli trials, x is the
number of successes, and p = nλ and q = 1 − p are the
a[pos] 1 0.45 0.3 0.18 0.1 0.081 0.0648
Candidates’ 1 0.1, 0.1, 0.1, 0.1, 0.05, 0.05,0.45,
Access 0.5, 0.3, 0.45, 0.45, 0.45, 0.214,
Prob. 0.3 0.45 0.18 0.09 0.08,0.09 0.09 probabilities of success and failure in every Bernoulli tri-
Chosen s b c g a f d
Vertex als respectively. When n approaches infinity, the binomial
Position 8 9 10 11 12 13 14
random variable becomes the Poisson random variable [10].
Candidates e, e, e, e h,k,i h, h
j l m k We observe that the data broadcasting is similar to the
a[pos] 0.05 0.08 0.09 0.18 0.214 0.4176 0.5
Candidates’ 0.45, 0.45, 0.45 0.45 0.18, 0.18, 0.18 binomial random experiment as n approaches infinity. The
Access 0.09 0.081 0.0648 0.4176, 0.4176
Prob. 0.214 observations are
Chosen j l m e i k h
Vertex
Broadcast Topological Sort with Access Prob. In V-shape
1. n data items in the broadcast can be the total number
Schedule s b c g a f d j l m e i k h of trails.
2. The number of required data items received, x, is the
number of successes.
Figure 8. The resulting broadcast schedule
3. The probability of success, p = nλ , every Bernoulli
when applying algorithm TSAP.
trial can be the probability of success to receive the
required data items. items.
In the binomial random experiment, all the trials are inde-
5.2.2 Correctness and Time Complexity pendent and have the same probability of success. In wire-
less data broadcast, when n approaches infinity, the prob-
The resulting broadcast schedule generated by algorithm ability to receive the required data items successfully for
TSAP follows the topological ordering because we arranges clients will be equal. Therefore, the data broadcasting can
the vertices by topological sorting. It also minimizes the be modeled as the binomial random experiment when n ap-
variance of latency. Consider that, during the sorting, we proaches to infinity.
choose the candidate whose γ value is closest to the γ value Furthermore, when n approaches to infinity, a binomial
of the vertex at the corresponding position in V-shape order. random variable becomes a Poisson random variable. So,
Assume that there are n vertices and e edges in DAG. In the the probability of receiving required data items follows the
first step, we compute the γ value for each vertex in BFS Poisson distribution which is
fashion, which costs O(n + e) time. In the second step, we
λx · e−λ
sort all the vertices and that needs O(n lg n) time. In the β(v) = lim P r(X = x) = (5)
n→∞ x!
third step, we arrange n vertices with γ values. It requires
O(n)time. In the last step, we use the topological sort and By the properties of Poisson distribution, the mean and the
choose the vertex whose γ value is closest to the γ value variance are equal to λ, which is the average time interval
190
Vertices s b e k c i g h a j l f m d
γ Values 1.0 0.5 0.45 0.4176 0.3 0.214 0.18 0.18 0.1 0.09 0.081 0.08 0.0648 0.05
V-shape 1 14 2 13 3 12 4 11 5 10 6 9 7 8
Order
Figure 7. The access probability (γ value) and the V-shape order for each vertex of the DAG in Figure 4
when applying algorithm TSAP.
for a client to receive all the requested data items. We there- Theorem 4. The TOBSF problem has a lower bound on the
fore can have the following theorem. variance of latency as
6.2 Bounds on the Variance Theorem 5. The TOBSF problem has an upper bound on
the variance of latency as
According to Theorem 2, we can derive the lower and n2 (n + 1)(2n + 1) 1/2
upper bounds on the variance of latency for the TOBSF U Bv = [ ] ,
6
problem using the bounds on the average latency derived
in [20]. A lower bound LBe for the average latency is as n → ∞.
191
References [16] G. Lee, S.-C. Lo, and A. Chen. Data allocation on wire-
less broadcast channels for efficient query processing. IEEE
Transactions on Computers, 51(10), 2002.
[1] S. Acharya, M. Franklin, and S. Zdonik. Balancing push and
[17] Y. Li, Z. Gong, and K. Qi. Decting the content related parts
pull for data broadcast. In Proceedings of the 1997 ACM
of web pages. In Proceedings of the 2005 International
SIGMOD international conference on management of data,
Conference on Services Systems and services Management,
pages 183–194, 1997.
pages 1071–1074, 2005.
[2] A. Bar-Noy, J. Naor, and B. Schieber. Pushing depen- [18] K. H. Lio and R. C. Chen. On scheduling to minimize the
dent data in clients-providers-servers systems. Wireless Net- variance of job completion time, 1999.
works, 9(5):421–430, 2003. [19] C.-M. Liu and S.-Y. Fu. Effective protocols for knn search
[3] Y. C. Chehadeh, A. R. Hurson, and M. Kavehrad. Object or- on broadcast multi-dimensional index trees. Information
ganization on a single broadcast channel in the mobile com- Systems, 33(1):18–35, 2008.
puting environment. Multimedia Tools and Applications, [20] C.-M. Liu and K.-F. Lin. Disseminating dependent data in
9(1):69–94, 1999. wireless broadcast environments. Distributed and Parallel
[4] A. Eden, B. Joh, and T. Mudge. Web latency reduction via Databases, (1):1–25, 2007.
client-side prefetching. In Proceedings of the 2000 IEEE In- [21] C.-M. Liu, L.-C. Wang, L. Chen, and C.-J. Chang. On-
ternational Symposium on Performance Analysis of Systems demand data disseminating with considering channel in-
and Software, pages 193 – 200, 2000. terference for efficient shortest-route service on intelligent
[5] S.-C. L. G. Lee and A. Chen. Data allocation on wire- transportation system. In Proceedings of the 2004 IEEE In-
less broadcast channels for efficient query processing. IEEE ternational Conference on Networking, Sensing and Con-
transactios on Computers, 51(10), 2002. trol, pages 701–706, 2004.
[6] S. Hambrusch, C.-M. Liu, W. G. Aref, and S. Prabhakar. Ef- [22] G. Malewicz, A. Rosenberg, and M. Yurkewych. On
ficient query execution on broadcasted index tree structures. scheduling complex dags for internet-based computing. In
Data and Knowledge Engineering, 60(3):511–529, 2007. Parallel and Distributed Processing Symposium, 2005. Pro-
[7] S. Hambrusch, C.-M. Liu, and S. Prabhakar. Broadcast- ceedings. 19th IEEE International, pages 66 – 66. IEEE,
ing and querying multi-dimensional index trees in a multi- 2005.
channel environment. Information Systems, 31(8):870–886, [23] N. V. S. Hameed. Efficient algorithms for scheduling data
2006. broadcast. ACM/Baltzer Journal of Wireless Networks,
[8] S. E. Hambrusch, C.-M. Liu, W. G. Aref, and S. Prabhakar. 5(3):183–193, 1999.
Query processing in broadcasted spatial index trees. Lecture [24] J. Shen, I. Nikolaidis, and J. Harms. A dag-based approach
Notes in Computer Science, 2121:502–510, 2001. to wireless scheduling. In Proceedings of the 2005 IEEE In-
[9] L. He, S. Jarvis, D. Spooner, and G. Nudd. Performance ternational Conference on Communications, page 66, 2005.
evaluation of scheduling applications with dag topologies [25] B. Zheng, X. Wu, X. Jin, and D. Lee. Tosa: a near-optimal
scheduling algorithm for multi-channel data broadcast. In
on multiclusters with independent local schedulers. In Pro-
ceedings of the 20th InternationalParallel and Distributed Proceedings of the 6th International Conference on Mobile
Processing Symposium, page 8, 2006. Data Management, pages 29–37, 2005.
[10] R. V. Hogg and E. A. Tanis. The poisson distribution.
In Probability and Statistical Inference, pages 131–133.
Macmillan Publishing Company, 1989.
[11] E. Horowitz, S. Sahni, and S. Rajasekaran. Np-hard and
np-complete problems. In Computer Algorithms, page 553.
W.H. Freeman and Company, 1998.
[12] J.-L. Huang, M.-S. Chen, and W.-C. Peng. Broadcasting
dependent data for ordered queries without replication in a
multi-channel mobile environment. In Proceedings of the
19th International Conference on Data Engineering, pages
692–694, 2003.
[13] H.-P. Hung and M.-S. Chen. On exploring channel allo-
cation in the diverse data broadcastingenviroment. In Pro-
ceedings of the 25th IEEE International Conference on Dis-
tributed Computing Systems(ICDCS’05), pages 729–738,
2005.
[14] A. Hurson and Y. Jiao. Data broadcasting in a mobile envi-
ronment. In Wireless Information Highway, chapter 4, pages
96–154. IRM Press, 2004.
[15] T. Imieliński, S. Viswanathan, and B. R. Badrinath. Data on
air: Organization and access. IEEE Transactions on Knowl-
edge and Data Engineering, 9(3):353–372, 1997.
192
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Dimitri Konstantas
Centre Universitaire d’Informatique
University of Geneva, Switzerland
dimitri.konstantas@cui.unige.ch
194
n2 that is at the intersection of the two anchor areas. The contains a replica of the piece of hovering information. The
arrows here also represent the communication range possi- accessibility of a piece of hovering information h is the
bilities among the nodes. rate between the area covered by the hovering information’s
replicas and its anchor area. The accessibility of h between
time tc (creation time of a piece of hovering information)
and time t is given by:
t
1
ACH (h, t) = acH (h, τ ),
t − tc τ =t
c
where svH (h, τ ) takes value 0 or 1 whether h is survival or (a) (b) (c)
not at time τ .
Availability. A hovering information h is available at
some time t if there is at least a node in its anchor area host- Figure 3. Survivability, Availability and Ac-
ing a replica of this information. The availability of a piece cessibility
of hovering information along a period of time is defined as
the rate between the amount of time along which this infor-
mation has been available during this period and the overall
time. The availability of h between time tc (creation time 4 Algorithms for Hovering Information
of a piece of hovering information) and time t is given by:
t
4.1 Assumptions
1
AVH (h, t) = avH (h, τ ),
t − tc τ =t We make the following assumptions in order to keep
c
the problem simple while focusing on measuring availabil-
where avH (h, τ ) takes value 0 or 1 whether h is available ity and resources consumption. Unlimited memory: All
or not at time τ . mobile nodes have an unlimited amount of memory able to
Accessibility. A hovering information is accessible by a store any number of hovering information replicas. The pro-
node n at some time t if the node is able to get this infor- posed algorithms do not take into account remaining mem-
mation. In other words, if it exists a node m being in the ory space or the size of the hovering information. Unlim-
communication range of the interested node n and which ited energy: All mobile nodes have an unlimited amount
195
of energy. The proposed algorithms do not consider failure safe radius is the risk area, and finally the larger disc is the
of nodes or impossibility of sending messages because of relevant area.
low level of energy. Instantaneous processing: Processing
time of the algorithms in a mobile node is zero. We do not
consider performance problems related to overloaded pro-
cessors or execution time. In-built geo-localization ser-
vice: Mobile nodes have an in-built geo-localization ser-
vice such as GPS which provides the current position. We
assume that this information is available to pieces of hov-
ering information. Neighbours discovering service: Mo-
bile nodes are able to get a list of their current neighbouring
nodes at any time. This list contains the position, speed, and
direction of the nodes. As for the other two services, this in-
formation is available to pieces of hovering information.
196
Algorithm 1 Attractor Point Replication Algorithm Algorithm 2 Broadcast-based Replication Algorithm
1: procedure REPLICATION 1: procedure REPLICATION
2: pos ← NODE - POSITION 2: pos ← NODE - POSITION
3: N ← NODE - NEIGHBOURS 3: for all replica ∈ REP LICAS do
4: P ← NEIGHBOURS - POSITION(N ) 4: anchor ← ANCHOR - LOCATION(replica)
5: for all replica ∈ REP LICAS do 5: dist ← DISTANCE(pos, anchor)
6: anchor ← ANCHOR - LOCATION(replica) 6: if (dist ≥ rsaf e ) and (dist ≤ rrisk ) then
7: dist ← DISTANCE(pos, anchor) 7: BROADCAST(replica)
8: if (dist ≥ rsaf e ) and (dist ≤ rrisk ) then 8: end if
9: D ← DISTANCE(P, anchor) 9: end for
10: M ← SELECT- KR - CLOSESTS(N, D, kR ) 10: end procedure
11: MULTICAST(replica, M )
12: end if
13: end for
the risk area, it replicates itself onto all the nodes in com-
14: end procedure
munication range, nodes n1 to n5 (blue nodes).
197
4.5 Metrics Blackboard 500mx500m
Mobility Model Random Way Point
In order to evaluate and compare the above algorithms, Nodes speed 1m/s to 10 m/s
the following values have been measured. Communication range (rcomm ) 121m
Messages complexity. The message complexity at a Replication time (TR ) 10s
Cleaning time (TC ) 60s
given time t is the number of messages sent between time 0
Replication factor (kR ) 1, 2, 4 and 8
and time t by all nodes n of the system (Nt ):
Anchor radius (r) 50m
t
Safe radius (rsaf e ) 30m
M SGS(t) = msgsn (τ ), Risk radius (rrisk ) 70m
τ =0 n∈Nτ Relevant radius (rrele ) 200m
where msgsn (τ ) represents the number of messages sent at Table 1. Simulation settings
time τ by node n.
Replication complexity. The replication complexity
measures, for a given piece of hovering information h, the Based on this generic scenario, we defined 10 specific
maximum number of replicas having existed in the whole scenarios with varying number of nodes: from 20 to 200
system at the same time. nodes, increasing the number of nodes by 20 each time. We
t have performed 20 runs for each scenario. One run lasts
REPh (t) = max( memn (τ )), 3’600 simulated seconds. All the results presented here are
τ =tc
n∈Nτ the average of the 20 runs for each scenario, and the errors
where memn (τ ) is 0 if there is no replica of h in n, and 1 bars represent a 95% confidence interval. We investigated
if there is a replica. four variants of the Attractor Point algorithm, with four dif-
Concentration. The concentration of a given piece of ferent replication factors, namely 1, 2, 4 and 8. All the sim-
hovering information h is defined as the rate between the ulations ran on a linux cluster of 32 computation nodes (Sun
number of replicas of h present in the anchor area and the V60x dual Intel Xeon 2.8GHz, 2Gb RAM).
total number of replicas of this hovering information in the
whole environment. 5.2 Results
198
1 10000
Broadcast-based
0.9
Attractor Point, kR = 1
8000
Attractor Point, kR = 4
0.7 6000 Attractor Point, kR = 8
0.6
0.5 4000
Broadcast-based
0.4 Attractor Point, kR = 1
Attractor Point, kR = 2 2000
0.3 Attractor Point, kR = 4
Attractor Point, kR = 8
0.2 0
20 40 60 80 100 120 140 160 180 200 20 40 60 80 100 120 140 160 180 200
Number of Nodes Number of Nodes
will be a decisive factor when applying the algorithm in a mobile nodes which are state machines having a fixed lo-
network dealing with interferences. cation or a well-defined trajectory. On top of this virtual
Replication Complexity. Figure 9 shows in average the infrastructure it should become easier to define distributed
maximum number of replicas of a single piece of hover- algorithms such as routing or leader election.
ing information having existed at the same time. Again, GeOpps [4] proposes a geographical opportunistic rout-
we observe that the Broadcast-based algorithm creates more ing algorithm over VANETs (Vehicular Ad Hoc Networks).
replicas than the Attractor Point. The curves for Replication The algorithm selects appropriate cars for routing some in-
Complexity are very similar to those for Message Complex- formation from a point A to a point B. The choice of the
ity (see Figure 8). This is explained as the number of sent next hop (i.e. the next car) is based on the distance between
messages is directly proportional to the number of existing that cars trajectory and the final destination of the informa-
replicas; since each replica can potentially send messages tion to route. This work focuses on routing information to
(replicate itself again). some geographical location; it does not consider the issue
Concentration. Figure 10 shows the concentration rate. of keeping this information alive at the destination, while
We observe that the concentration rate is above 7% for this is the main characteristic of hovering information.
the Attractor Point algorithm and increases with number The work proposed by [5] aims to disseminate traffic in-
of nodes up to 17% (depending on kR ). In the other formation in a network composed by infostations and cars.
hand, a maximal concentration rate of 7% is reached by the The system follows the publish/subscribe paradigm. Once
Broadcast-based algorithm. The Attractor Point algorithm a publisher creates some information, a replica is created
concentrates 2 to 3 times more replicas than the Broadcast- and propagated all around where the information is rele-
based algorithm (depending on kR and the number of nodes vant. While the idea is quite similar to that of hovering
considered). information, keeping information alive in its relevant area,
At the time of writing, additional simulations are run- this study does not consider the problem of having a limited
ning. They are aiming at computing the accessibility of amount of memory to be shared by many pieces of informa-
hovering information under different scenarios. tion or the problem of fragmentation of information. It also
takes the view of the cars as the main active entities, and not
6 Related Works the opposite view, where it is the information that decides
where to go.
The Virtual Infrastructure project [2, 3] defines vir- The Ad-Loc project [1] proposes an annotation location-
tual (fixed) nodes implemented on top of a MANET. This aware infrastructure-free system. Notes stick to an area of
project proposes the notion of an atomic memory cells, im- relevance which can grow depending on the location of in-
plemented on top of a MANET, which ensure their persis- terested nodes. Information is periodically broadcasted to
tency by replicating their state in neighbouring mobile de- neighbouring nodes. Nodes are the active entities exchang-
vices. This notion has been extended to the idea of virtual ing information. The size of the area of relevance grows as
199
160 0.25
Broadcast-based Broadcast-based
140 Attractor Point, kR = 1 Attractor Point, kR = 1
Average Num of Max Replicas
Average Concentration
Attractor Point, kR = 4 Attractor Point, kR = 4
100 Attractor Point, kR = 8 Attractor Point, kR = 8
80 0.15
60
0.1
40
20
0.05
0
20 40 60 80 100 120 140 160 180 200 20 40 60 80 100 120 140 160 180 200
Number of Nodes Number of Nodes
necessary in order to accommodate the needs of users po- tions (e.g. channel interferences or physical obstacles).
tentially far from the central location. The information then
becomes eventually available everywhere. References
200
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
EvAnT: Analysis and Checking of event traces for Wireless Sensor Networks
Matthias Woehrle # , Christian Plessl ∗ , Roman Lim # , Jan Beutel # , Lothar Thiele #
# ETH Zurich, Computer Engineering and Networks Lab
8092 Zurich, Switzerland
matthias.woehrle@tik.ee.ethz.ch
202
send and receive events form a comprehensive routing path
Event Trace
Input
event. Nevertheless, these abstract events have different E
semantics, since they no longer represent atomic actions. Partitioning based on type
reboot send/receive
Subset C
C. Temporal properties of events Subset R
Reboots
Commu-
nication
203
its formats, which would allow for more automation of 1) Partitioning: The partition operators allows to par-
the analysis, EvAnT imposes only minimal requirements tition a set of events into subsets based on the values of
on instrumentation and test platforms. The core of EvAnT, event keys. Partitioning is performed on a single set S.
namely its operators, is independent of the monitoring The partitioning operator returns multiple sets Ri , each
and trace format and thus reusable across projects and containing the events that satisfy a given predicate ϕi (s).
platforms. With merely adding a simple event parser, An example for partitioning into disjunct event sets
EvAnT is usable for any project. Even heterogeneous based on values of the type key is depicted in Fig. 2. As
logging is supported as described in Sec. V. shown, partitioning may also be used for filtering specific
EvAnT provides its users flexible, yet powerful opera- event types as shown for the reboot events.
tors to describe test, application and test platform specific 2) Set Transformator: The set transformator allows to
analysis queries and checks. Thus, the analysis framework select a subset A from a base set by using a predicate ϕ(A).
is readily usable for any WSN project. Moreover, off-line Selected events are processed based on a transformation
analysis does not require any optimization, but can rely on function, e. g. to join multiple events into a single com-
a powerful analysis host. pound event. Processed events are added to the result set
R. Processing is performed on a single set. An extension
B. Operators to use the operator on multiple sets is to use the union
of the sets as the base set and describe a predicate that
EvAnT uses events and event sets as primitives for the discriminates individual events based on their origin set.
analysis of a system execution. Thus, EvAnT offers the set An example is the set SR in Fig. 2, which selects
operations of union, intersection and relative complement. according send and receive events, joins these into com-
Additionally, EvAnT offers four novel operators (cf. Fig. 3) pound transmission events with an additional key-value
especially tailored for formulating queries on WSN event pair describing the time difference between the sending
sets. and the reception. This allows for a computation of the
• Partition Operator: time difference distribution as shown.
Ri = {s|s ∈ S ∧ ϕi (s)}, i ∈ N (1) 3) Set Processor: Set processors are available for
processing single events. Each event s ∈ S is selected
• Set Transformator:
and processed by a transformation function f (s) on the
R = {e|e ∈ f (A) ∧ A ⊆ S ∧ ϕ(A)} (2) event. This allows for adding key-value pairs for events or
computations on event values.
• Set Processor:
As depicted in Fig. 2, to determine the hop-count of a
R = {e|e ∈ f (s) ∧ s ∈ S} (3) routing path and computing the average, communication
• Fixed Point Processor: events need to add a hop-count key, which is used in
the fixed point operator transformation function to be
R0 =S
incremented when a send and a receive event are joined.
Ri ={{e|e ∈ f (A) ∧ A ⊆ Ri−1 ∧ ϕ(A)}∪ (4) 4) Fixed Point Processor: The Fixed Point Processor
i−1 computes the least fixed point of a given function on event
{e|e ∈ A ∧ A ⊆ R ∧ ¬ϕ(A)}}
As Fig. 3 indicates, S is the set used as the input for sets and produces a new set. Selection and processing of
the operators. R is the result set, i. e. the output, of a given events in a single iteration is performed as in the Set
operator. s denotes an event in the base set S. Basis for Transformator. Iteratively the sets Ri are computed, until
the operators are predicates ϕ and transformation functions a fix point is determined, i. e. Rk = Rk−1 . All events that
f : 2S → 2S . are not selected by the predicate are maintained for each
A predicate ϕ is defined on one or multiple events in iteration.
the selection process. The predicate uses relations on the An example is the computation of the routing paths:
values of specified event keys. Relations differ based on Starting from the initial transmission on the origin node,
the purpose of the selection and the available trace infor- each path is traversed by joining each receive and send
mation. The Partition Operator makes use of predicates on message into a compound transmission path event until
a single event ϕ(s). The Set Transformator and the Fixed the packet is received at the sink or the path fails.
Point Processor use predicates on multiple events ϕ(A).
A transformation function f (A) is used to either add C. Analysis for debugging or for testing
information to events or to merge events into a compound
event object. The event analysis framework is used to extract a behav-
In the following, the four operators in EvAnT are ioral description from the event trace E. This abstraction
described: process allows for two different goals: the analysis for
204
Base Set Base Set
Base Set S Base Set S S
S
Partitioning based on predicate
Fixed Point
Result Set Result Set Iteration
Subset R1 Subset Rk Result Set
R R R
4) Fixed Point
1) Partition Operator 2) Set Transformator 3) Set Processor Processor
a better comprehension of actual system behavior and EvAnT already provides support for DSN database access
the checking of execution properties, e. g. for regression and EvAnT-format ASCII log files. This allows for reading
testing. monitoring data and creating event sets. Further processing
1) Queries is performed by the implementations of the event analysis
Queries are used to extract behavioral aspects of operators (cf. Sec. III-B).
the raw event set. Thus queries may be used for Predicates are implemented as Python lambda functions
debugging, i. e. to expose the cause a failure of the returning a Boolean value. Transformation functions are
WSN system. Additionally, queries and processing formulated by constructing a new event out of the con-
of the event set allow for performance evaluation. stituent key-value pairs of the selected event pairs or by
Multiple test runs with different parameter sets are introducing novel keys and values. They may also simply
easily comparable by a common analysis. Query return the selected events. Listing 1 displays the predicate
results may be used to check for correct behavior and the transformation for determining the packet yield
e. g. by comparing against golden result set. for communication sets partitioned by origin and sequence
2) Checks number.
Assertions [10] allow for checking execution proper- Selection predicates and transformation functions are
ties and presenting assertion misses. Assertions may inputs to the EvAnT operators. The operators iterate over
have different severity levels as known from hardware the event sets, evaluate the predicate on events and trans-
design. An exemplary use is to assert a warning if form selected events accordingly.
packets are lost in an individual run, but only assert The partition function returns an associative array of
it as an error, if packet loss occurs in more than 1 out the partitioned event sets addressable via their value or the
of 100 test executions. index of the value interval. For enumerable values of a key,
a partitioning is performed with an implicit predicate based
IV. EvAnT on the discrete values, rendering disjoint sets. 2 For keys
with continuous values with possibly infinite partitions,
value intervals defined as boolean lambda functions may
EvAnT is a framework to analyze the system behavior
be defined allowing to divide the value range in partitions,
of WSNs by the means of collected monitor events during
allowing for events in multiple sets. Set Transformators
execution of the WSN. EvAnT is generic and thus can
and Fixed Point Processor currently support predicates
be used for different testing platforms and programming
and transformation functions on two events. This suffices
languages. It supports heterogeneous system devices and
for covering typical WSN cases such as the routing path
test platforms, since it only operates on the trace. It is based
computation as discussed. Both operators return a new
on the described operators on event sets. The semantics
event set.
of events is specified in EvAnT. Causality or other order
relations are provided by the analysis query rather than Also provided are arithmetic functions on event sets
implied by syntactical requirements. returning a maximum and minimum of the numeric values
EvAnT is implemented as a set of Python classes for of a key, as well as operators for determining mean and
event and event set handling, as well as the overall EvAnT standard deviation of all values. These allow for simple
Framework. The implementation in Python allows for easy computations for a given set as used in the drift measure-
extension with additional operators targeted at specific ment analysis in Sec. V-C for each node-neighbor pair set.
analyses. An analysis is started by creating an input parser
for the specific test platform or monitoring data format. 2 Events not featuring the event key(s) are ignored.
205
type key0 key1 key2 key3 *!"(%%%+
received dest addr origin seqNo
#$ #&
!" '()
senddone dest addr origin seqNo ack #!!('""
drift neighbor ID interval abs. drift drift in interv.
'&()'
**(%'" !##(&')
Fig. 4. Harvester specific event tuple keys !$'()"$
#% #!
collected on each node.
'(%&
206
# Selection predicate matches acknowledged sent with received packet with receiver nodeid equaling sink address
pairing = lambda x,y: x.typeid == ’received’ and y.typeid == ’senddone’ and x.nodeid == sink
# Transforation function generates send−receive pairs updating the current node id to the receiver ’s node id
pair_tf = lambda x,y: event(nodeid = y.nodeid, origin = x.origin, seqNo = x.seqNo, typeid=’pair’)
#2−staged partitioning performs implicit equivalence selection predicate and improves EvAnT runtime
partitionOriginSet = tempset.partition(’origin’)
for origin in partitionOriginSet.keys():
partitionSequenceSet = partitionOriginSet[key].partition(’seqNo’)
for sequenceNumber in partitionSequenceSet.keys():
yield_set = partitionSequenceSet[sk].set_transformator(pairing, pair_tf)
Listing 1. Using EvAnT’s Partition and Set Transformator to determine the packet yield
ID 29 40 41 42
accurately (e. g. 29 and 40), while some links are totally
29 N/A -0.964 (5539) 0.932 (3268) 0 (0)
40 0.949 (3967) N/A 0.095 (4020) -1.676 (4234) off (40 and 42).
41 0.444 (3610) 0.812 (3026) N/A -1.012 (5156) Hence, we have determined in our analysis that while
42 0 (0) -0.201 (2609) 0.140 (2671) N/A the overall packet yield is tolerable, the implementation of
the custom LPL stack needs improvement concerning the
TABLE I. Drift in scaled ppm (number of mea-
drift measurement and interpretation. One of the problems
surements) for selected nodes
can be attributed to a timestamping problem of the CC2420
driver as discussed on the TinyOS mailing list [12], where
corrupted or stale timestamps might be applied to a packet.
results from a 12 hour test run for a selected part of
the network. The sink that is not shown in the figure is
positioned to the left of the nodes. Each link is annotated VI. Related work
with the acknowledged and total number of packets sent
along this link. In an ideal setting (perfect synchronization There is no previous work concerning event analysis for
and no interference) each packet should be sent only once WSN testing. However there exists previous work on the
and should be acknowledged immediately. The discrepancy related fields of test platforms, WSN health monitoring,
between the total number of packets and the number passive monitoring frameworks and on-line data mining:
of acknowledgments indicates that the synchronization of Test platforms for WSNs include simulators such as
sender and receiver does not work properly3 . Hence, an TOSSIM [7] or EmTos in EmStar [13] and testbeds such
in-depth analysis of the wakeup time estimation and the as Motelab [8] or the DSN [9]. EmSim [13] allows for
time drift detection was performed. heterogeneous testing with simulation and actual hardware.
Test platforms provide input data for EvAnT, which ben-
C. Drift Analysis for Wakeup time estima- efits from an improved view of the system.
tion Yang et al. have shown the benefits of a wireless source-
level debugger for WSNs [14]. This is complementary
We determine the drift measurement data from measure- to our work, since we target analysis for testing and
ments packets, which are exchanged by neighboring nodes for debugging on a macroscopic level, while Clairvoyant
to determine the clock drift. In a scenario with perfect targets debugging of microscopic effects such as race
synchronization each node pair n1 measures the same drift conditions or stack overflows.
of the local timebase to the timebase of its neighbor n2 . Network health monitoring tools ([15], [16]) allow for
That is, if node n1 determines the drift of node n2 as +τ, detecting and debugging failures by providing and commu-
node n2 will compute a drift of −τ. Thus, in a perfectly nicating additional state information. They extend the com-
synchronized scenario the computed drifts add up to 0. munication protocol to provide collaborative, automatic
We ran this test twice for 24 consecutive hours and have maintenance and recovery of WSNs after deployment. The
accumulated the results in a single event set. Joining anal- main target is to provide on-line health monitoring for
ysis results, i. e. abstract event sets is easily implemented typical data collection application in an energy-efficient
in EvAnT. We collected a total of 494316 measurement manner by providing common failure indications. Our
events. Table I shows that certain links are synchronized approach is orthogonal, since EvAnT is targeted for pre-
3 While interference problems are also possible, previous measurements
deployment and providing an analysis framework for test-
on the testbed and current test results indicate that this is considerably ing various WSN applications on different test platforms.
less likely. Passive inspection of distributed wireless systems as
207
proposed for WSNs ([17], [18]) relies on traffic snooping References
and automatic analysis of collected information. Algo-
rithms are focussed on detecting indicators on the basis of [1] J. I. Choi, J. W. Lee, M. Wachs, and P. Levis, “Opening the
an incomplete view. Ringwald et al. [17] presents typical sensornet black box,” SIGBED Rev., vol. 4, no. 3, pp. 13–18, 2007.
[2] G. Werner-Allen et al., “Monitoring volcanic eruptions with a
indicators for WSNs focussed on passive inspection, which wireless sensor network,” in Proc. 2nd European Workshop on
may be adapted for usage in EvAnT. Maifi et al. [18] use Sensor Networks (EWSN 2005), 2005, pp. 108–120.
machine learning techniques and provide predicates for [3] V. Turau, M. Witt, and M. Venzke, “Field trials with wireless
sensor networks: Issues and remedies,” in Proc. of the Int’l Multi-
anomalous behavior, which could also be used in EvAnT. Conference on Computing in the Global Information Technology
EvAnT rather relies on a comprehensive view and allows (ICCGI ’06), 2006, p. 86.
for specifying test- and application-specific aspects. [4] K. Langendoen, A. Baggio, and O. Visser, “Murphy loves potatoes:
Experiences from a pilot sensor network deployment in precision
Data mining techniques may be used for WSNs, e. g. to agriculture,” in Proc. 20th Int’l Parallel and Distributed Processing
perform an online analysis of collected data for traffic Symposium (IPDPS 2006), 2006, pp. 8–15.
reduction [19]. However on-line analysis of WSNs is [5] M. Woehrle, C. Plessl, J. Beutel, and L. Thiele, “Increasing the
reliability of wireless sensor networks with a distributed testing
restricted to spatially and temporally local predicates and framework,” in Proc. 4th IEEE Workshop on Embedded Networked
infer a considerable overhead if used for testing on the Sensors (EmNetS-IV), 2007.
sensor node. [6] T. Basten et al., “Vector time and causality among abstract events
Differing to all the previous approaches, EvAnT pro- in distributed computations,” Distrib. Comput., vol. 11, no. 1, pp.
21–39, 1997.
vides the benefit of being application and platform inde- [7] P. Levis, N. Lee, M. Welsh, and D. Culler, “TOSSIM: Accurate
pendent and thus readily applicable to any project. and scalable simulation of entire TinyOS applications,” in Proc. 1st
ACM Conf. Embedded Networked Sensor Systems (SenSys 2003),
2003, pp. 126–137.
VII. Summary and outlook [8] G. Werner-Allen, P. Swieskowski, and M. Welsh, “MoteLab: A
wireless sensor network testbed,” in Proc. 4th Int’l Conf. Informa-
tion Processing Sensor Networks (IPSN ’05), 2005, pp. 483–488.
We have formulated the problem of analyzing Wireless [9] M. Dyer et al., “Deployment support network - a toolkit for the
Sensor Networks systems based on events collected in development of WSNs,” in Proc. 4th European Workshop on Sensor
traces. We defined novel and powerful operators on event Networks (EWSN 2007), 2007, pp. 195–211.
[10] D. S. Rosenblum, “Towards a method of programming with as-
sets for performing expressive queries on the event trace. sertions,” in ICSE ’92: Proceedings of the 14th international
We also showed the usage of assertions on the query conference on Software engineering, New York, NY, USA, 1992,
results for checking test executions. We presented EvAnT, pp. 92–104.
[11] A. El-Hoiydi and J. Decotignie, “WiseMAC: An ultra low power
our event analysis framework for WSN systems. EvAnT MAC protocol for multi-hop wireless sensor networks,” in Proc. 1st
allows for analyzing arbitrary event traces from a system Int’l Workshop Algorithmic Aspects of Wireless Sensor Networks
execution by merely providing an input parser or using one (ALGOSENSORS 2004), 2004, pp. 18–31.
[12] D. Moss et al., “Bug in cc2420 timestamp,”
of the supported event formats. Thus, EvAnT is generally https://www.millennium.berkeley.edu/pipermail/tinyos-help/2007-
applicable for different WSN and test platforms. EvAnT October/028901.html, October 2007.
can be used for macroscopic debugging by defining queries [13] L. Girod et al., “Emstar: A software environment for developing and
deploying heterogeneous sensor-actuator networks,” ACM Trans.
on the event sets or for testing by formulating assertions Sen. Netw., vol. 3, no. 3, p. 13, 2007.
on the query sets. A case study showed the application of [14] J. Yang, M. L. Soffa, L. Selavo, and K. Whitehouse, “Clairvoyant: A
EvAnT to Harvester, a typical application. EvAnT allowed comprehensive source-level debugger for wireless sensor networks,”
in Proc. 5th ACM Conf. Embedded Networked Sensor Systems
us with an explorative, iterative analysis to reveal the (SenSys 2007), 2007.
problem of Harvester as the drift measurements. [15] S. Rost and H. Balakrishnan, “Memento: A health monitoring
In the future, we plan to apply the framework to more system for wireless sensor networks,” in Proc. 3rd IEEE Commu-
nications Society Conf. Sensor, Mesh and Ad Hoc Communications
projects. The ease of use of EvAnT can be extended with and Networks (IEEE SECON 2006), 2006.
an instrumentation approach that automatically extracts [16] N. Ramanathan et al., “Sympathy for the sensor network debugger,”
the event format at compile time and provides an input in Proc. 3rd ACM Conf. Embedded Networked Sensor Systems
(SenSys 2005), 2005, pp. 255–267.
parser. EvAnT is available for other researches in the WSN [17] M. Ringwald, K. Römer, and A. Vitaletti, “SNIF: Sensor network
community. inspection framework,” Department of Computer Science, ETH
Zurich, Technical Report 535, Oct. 2006.
[18] M. Maifi et al., “SNTS: Sensor network troubleshooting suite,” in
VIII. Acknowledgements Distributed Computing in Sensor Systems, vol. Volume 4549/2007.
Springer, 2007, pp. 142–157.
[19] K. Römer, “Discovery of frequent distributed event patterns in
The work presented here was supported by the National sensor networks,” in Proc. European Workshop on Wireless Sensor
Competence Center in Research on Mobile Information Networks (EWSN 2008), Bologna, Italy, Jan. 2008, pp. 106–124.
and Communication Systems (NCCR-MICS), a center
supported by the Swiss National Science Foundation under
grant number 5005-67322.
208
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
210
and fmax , and to each speed corresponds exactly one fre- platform with m processors running at speed s if:
quency. λsum (τ ) − λmax (τ )
We consider in this document multiprocessor platforms s ≥ λmax (τ ) + (1)
m
composed of a known and fixed number m of identical pro-
cessors {P1 , P2 , . . . , Pm } upon which a set of real-time Notice that, from the expression (1) (which is a sufficient
tasks is scheduled. The working power of each processor condition), s is always greater or equal to λmax (τ ), which is
may be characterized by its speed (or computing capac- a necessarily condition to ensure the system schedulability,
ity) s – with the interpretation that a job that executes on whatever the scheduling algorithm.
a processor of speed s for R time units completes s × R
3.2 Algorithm EDF(k)
units of execution. The minimal and maximal admissible
speed of all processors are identical and are denoted by
def def
Following an idea from [13], but adapted to our off-
smin = ffmaxmin
> 0 and smax = ffmax max
= 1, respectively. line speed determination where the number of processors is
Since we assume that the range of available frequencies is fixed, we shall present an improvement on the speed needed
continuous between fmin and fmax , the speed of the proces- in order to schedule sporadic task sets.
sors can take any real value between smin and smax at every
instant. Notice that the task computing requirements (Ci ’s) Algorithm EDF(k) (Goossens, Funk and Baruah [13]):
are defined for the maximal speed smax . Assuming that the task indexes are sorted by non-increasing
In Section 3 we assume that all the processors share a order of task densities and 1 ≤ k ≤ m, EDF(k) assigns
common speed which is fixed before the system starts its priorities to jobs of tasks in τ according to the following
execution. This speed does not change during the schedul- rules:
ing and thus, we will use the notation s instead of s(t) to
simplify the presentation. Then, we study the case in Sec- For all i < k, taui jobs are assigned the highest priority
tion 4 where each processor may run at a different speed (ties are broken arbitrarily).
and may change it at any time during the scheduling. In our For all i ≥ k, τi jobs are assigned priorities according to
work, speed assignments are determined at job-level: volt- EDF (ties are again broken arbitrarily).
age/speed changes only occur at job dispatching instants.
That is, once a job is assigned to a CPU, the CPU speed is That is, Algorithm EDF(k) assigns the highest prior-
fixed until the job is preempted or completed. ity to jobs generated by the (k − 1) tasks in τ that have
highest densities, and assigns priorities according to dead-
lines to jobs generated by all other tasks in τ (thus, “pure”
3 Off-line speed determination EDF is EDF(1) ). We show in the following that we get
another lower-bound for the speed s when using EDF(k)
3.1 Introduction instead of EDF, and this bound is always lower than (or
equal to) the one provided by Expression (1). But first,
Off-line processor speed determination is the process of we introduce the notation τ (i) to refer to the task system
determining, during the design of the real-time application, composed of the (n − i + 1) minimum-density tasks in
the lowest processor speed s in order to schedule the spo- def
τ : τ (i) = {τi , τi+1 , . . . , τn }; (according to this notation,
radic task set τ upon an identical multiprocessor platform τ ≡ τ (1) ).
with m processors running at speed s. In this Section, we
consider the case where, at any instant, all processors must Theorem 2. Any sporadic constrained-deadline task sys-
be running at the same speed noted s. We shall use the fol- tem τ is EDF(k) -schedulable upon an identical multipro-
lowing result: cessor platform with m processors at speed sk if sk ≥
(τ (k+1) )
max{λ1 , λk + λsum
m−k+1 }
Theorem 1 (Bertogna, Cirinei and Lipari [5]). Any spo-
Corollary 2. A sporadic constrained-deadline task system
radic constrained-deadline task system τ satisfying
τ is schedulable upon m processors at speed sol by EDF(`) ,
λsum (τ ) ≤ m − (m − 1) · λmax (τ ) with
def m λsum (τ (k+1) )
sol = max{λ1 , min{λk + }} (2)
is schedulable by the EDF algorithm upon a platform with k=1 m−k+1
m identical processors. and ` is the parameter minimizing the speed sol of sk .
Then, we get the following sufficient feasibility condition: Proof. The proof is a direct consequence of Theorem 2.
Corollary 1. A sporadic constrained-deadline task sys- It may be seen that this expression always yields a better
tem τ is EDF-schedulable upon an identical multiprocessor bound than Inequality (1).
211
3.3 Implementation 4.2 Notations
A more detailed description of our off-line speed deter- We denote by t the current time in the schedule and by
mination mechanism is given by Algorithm 1. Let sol de- Bi (t) the last release time of τi before or at time t, with
note the returned speed, defined by Expression (2). Before Bi (0) initially set to −Ti (see Equation 3 to understand this
applying this algorithm, we assume that the number of pro- initialization). During the scheduling, Bi (t) is updated at
cessors is sufficient to schedule the system τ at the maximal each time t a job is released by τi . The ready queue, de-
speed. Consequently, the speed sol is initially set to smax noted by ready-Q, holds all the pending jobs (i.e. ready to
(line 3). Then, the algorithm searches the minimal speed by be executed but waiting for a CPU) sorted according to the
sweeping the value of k between 1 and m (line 4 to line 13). EDF(k) rule, where ties are broken according to an arbitrary
Finally, in order that EDF(k) assigns the highest priorities rule; recall that using EDF(k) , the priorities of the jobs are
to the (k − 1) tasks that have highest densities, we set the constant. In the following, si denotes the processor speed
deadline of these tasks to −∞ (line 14). for the job τi,j at time t. We shall use the following func-
tions.
Algorithm 1: Off-line speed determination The function Ai (t, t0 ) indicates if the sporadic task τi
Input: τ , m, smax , smin may generate a job at time t0 ≥ t. Since Ti denotes the
Output: sol
minimal inter-arrival delay between job releases of the spo-
1 begin
2 kopt := 1; radic task τi , we get:
3 sol := smax ;
1 if t0 ≥ Bi (t) + Ti
4 slimit := max{smin , λ1 } ; 0 def
5 for (k := 1 ; k ≤ m and sol > slimit ; k := k + 1) do Ai (t, t ) = (3)
0 otherwise
λ (τ (k+1) )
6 s := max{λ1 , λk + sum m−k+1
};
7 if (s < sol ) then Notice that Bi (0) is initially set to −Ti in order to have
8 sol := s ; Ai (0, 0) = 1 since our task model considers that each task
9 kopt := k ;
10 if (sol < slimit ) then sol := slimit ;
may release its first job at time t = 0.
n o Then, the function PotActi (t, t0 ) (for Potentially Active
11 foreach τi ∈ τ1 , ..., τkopt −1 do Di := −∞ ; at time t0 ) indicates if τi has an active job at time t which
12 return (sol ) ; may still be active at time t0 . This function returns 1 only if
13 end τi is active at time t and if t0 is not larger than the deadline
of this job:
s
1 if ωi i (t) > 0 and
4 Multiprocessor One Task Extension 0 def
PotActi (t, t ) = t ≤ t0 < Bi (t) + Di
0 otherwise
4.1 Introduction
where ωisi (t) denotes the remaining worst-case execution
In this section, we consider the case where processors requirement of the last released job of τi if executed at speed
still share the same minimal and maximal speeds smin and si (if a job is done, its ω is set to zero, even if the WCET is
smax , but each one may run at its own execution speed dur- not exhausted).
ing the scheduling. We assume that, when a processor is Theorem 3. The function
idle, its execution speed is always fixed to the minimal com-
def X X
mon speed smin . We propose a low-complexity on-line al- Π(τu,v , t, t0 ) = m − PotActi (t, t0 ) − Ai (t, t0 )
τi ∈τ
gorithm that aims to further reduce the speeds of the CPUs τi ∈τ \{τu }
by performing “local” adjustments, when it is safe to reduce if non-negative, provides a lower bound of the number of
the speed below sol defined by Equation (2). available CPUs at time t0 ≥ t, when ignoring the schedule
We term our technique MOTE for Multiprocessor One of the current job of τu (if any).
Task Extension, since it is a multiprocessor version of the
technique proposed in [19] and usually referred to as OTE. Corollary 3. At each time t where a job τu,v is allocated
The idea is the following: the speed of a CPU can safely be to CPU P` , the earliest future time instant in the schedule
reduced below the speed sol during the execution of a job such that P` may be required by another job (possibly from
if the reduced speed does not change anything with respect the same task) is given by:
to the schedule of the subsequent jobs scheduled on that
min{t0 ≥ t | Π(τu,v , t, t0 ) ≤ 0} if m ≤ n
CPU. More precisely, subsequent jobs will not be delayed tnext =
by more (nor less) higher-priority workload than with sol . +∞ otherwise
212
4.3 MOTE scheme τ2,1 will be completed by their deadline. Consequently,
when ignoring the schedule of τ3,1 , we see that tnext is the
EDF(k) is a job-level fixed-priority consequently a job earliest time instant (after the time t) such that all processors
executed on a CPU can only be preempted upon its comple- may be required. Indeed, tnext is the earliest time instant af-
tion or the release of a (higher priority) job. In our scheme, ter time t such that Π(τ3,1 , t, tnext ) = 3 − 0 − 3 = 0.
the speed reduction of a job is decided when the job is al- Since tnext is the earliest time instant (after the cur-
located to a CPU, for the first time or when it resumes after rent time t) such that P3 may be required by another job
being preempted. Upon its release, a job is inserted into the than τ3,1 (assuming that all the other active jobs are sched-
ready-Q if it cannot receive a processor (i.e. all processors uled on other processors), one can conclude that P3 will
are used and the job is of lower priority). We do not make only execute the job τ3,1 between time instants t and tnext .
any assumptions on the CPU allocation rule when several That is, we proved that P3 can modify its working speed
CPUs are available for a single job. For instance, free CPUs in such a way that τ3,1 completes in the worst-case at time
can be granted according to the rule “smaller CPU index min{D3,1 , tnext } (or earlier if smin imposes it).
first.”
Since we consider multiprocessor platforms, we know Principle: Our on-line power-aware algorithm deals with
that we have to be very careful to any change in the origi- a priority rule that assigns a constant priority to each job. In
nal schedule because of scheduling anomalies. We say that this work, these priorities are determined by the algorithm
a scheduling algorithm suffers from anomalies if a change EDF(k) . Our power-aware algorithm is only applied when
which is intuitively positive in a schedulable system can a job τi,j is to be allocated to a CPU P` at time t during the
turn it unschedulable. An “intuitively positive change” is scheduling, which corresponds to its arrival or to the com-
a change which seems to help the scheduling, like reducing pletion of a higher priority job. At this time, our method
the density of a task (by increasing its period or reducing its determines the earliest time instant tnext such that P` may
execution requirement) or advancing the start-time of a job; be needed by another job. The function Π(τi,j , t, t0 ) (based
this can also be an increase of the number of processors on the deadlines of the jobs currently executing) is used to
on the platform. Unfortunately, multiprocessor platforms sweep the task set (with a running time linear in the num-
are subject to scheduling anomalies [2]. For that reason, ber of tasks). Notice that the function Π(τi,j , t, t0 ) could be
our on-line low-power mechanism only focuses on the last evaluated only at the deadline-times of the jobs currently un-
allocated-job and avoids to change the schedule of the other der execution and at the next (possible) arrival-time of every
jobs. task (since between these instants, the function Π(τi,j , t, t0 )
t tnext is constant). It follows from Corollary 3 that P` will not
A1,2
execute another job than τi,j until the time instant tnext .
P1 τ1,1
l ? The speed for τi,j can be safely reduced in such a way that
D1,1 it completes at time min{Di,j , tnext } (if the corresponding
A2,2
P2 τ2,1 speed is lower than the current one). Obviously, the work-
l ?
D2,1 ing speed of a processor can never be reduced under smin .
A3,2
P3 τ3,1
l ?
D3,1
- Algorithm 2: Determination of tnext
t0 Input: t, τi
Figure 1. Illustration of a 3-task system. Output: tnext
begin
na := number of active tasks at time t ;
Figure 1 illustrates the main idea of our on-line algo- L := set of the next deadline and possible arrival-time of
rithm when 3 tasks are scheduled upon 3 processors at speed each task, sorted by increasing order of the occurring time ;
tnext := t;
sol . This example shows a schedule where t is the cur- Π := m − (na − 1);
rent time, τ1,1 , τ2,1 and τ3,1 are the active jobs at time t while (Π > 0 and L 6= φ) do
(the ready-queue is empty since there are only three tasks in e ← L.top();
tnext := e.occurring time ;
the system) and plain circles and vertical arrows represent if (e.task 6= τi ) and (e.type == deadline) then
the deadlines and the (earliest) arrival times (since tasks are Π := Π + 1;
sporadic) of each task, respectively. Suppose that τ1,1 and else if (e.type == arrival) then Π := Π − 1;
τ1,2 are allocated to P1 and P2 . Before allocating τ3,1 to the L.pop() ;
return tnext ;
processor P3 , we see that P3 cannot be required by another end
job than τ3,1 until time tnext . Indeed, τ1,2 and τ2,2 could be
assigned (if they arrive at time A1,2 and A2,2 ) to the CPUs
P1 and P2 since the system feasibility ensures that τ1,1 and Let si denote the processor speed of the active job τi,j .
213
Algorithm 3: Speed-allocation to τi,j at time t the decision to reduce or not the CPU speed for a job τi,j is
Input: τi,j taken: when it is allocated to an available CPU (upon its re-
Output: φ lease, or when it is waiting for an available processor at the
begin head of the ready-Q and a job terminates its execution). A
// Initialization step
if (τi,j is allocated for the first time) then detailed description of the applied procedure at any alloca-
if (i < k) then si := λi ; tion time is given in Algorithm 3. Algorithm 2 shows how
λsum (τ (k+1) )
else si := λk + m−k+1
; to compute tnext with a linearithmic (also called quasilin-
// MOTE step ear) worst-case computing complexity O(n · log(n)), where
if (m ≤ n) then tnext := Call Algorithm2(t, τi ) ; n is the number of tasks.
else tnext := ∞ ;
if (tnext > t) then It worth noting that the MOTE step (see Algorithm 3) is
s
ω i (t)·s applied at most once to each job (and only if i > k); indeed,
si := min{si , min{Di ,t i }−t } ;
i,j next a job whose speed has been changed by this step will not be
if (si < smin ) then si := smin ;
τi,j is allocated to any available CPUs ; preempted in the future and thus will not be (re-)stored in
The speed of the designated CPU is fixed to si ; the ready-Q before its end of execution. However, when the
else No speed reduction can occur. The EDF(k) rule speed of a job (with a normal priority) is initialized but not
applies; τi,j either preempts the lowest priority job modified by the MOTE step at its arrival, it can possibly be
currently under execution or is allocated to any available reduced by the MOTE step in the future, if the job is at the
CPU, and the processor speed is fixed to si . ;
end head of the ready-Q and another job completes its execu-
tion. Section 5 shows that the MOTE algorithm indeed sig-
nificantly improves the energy consumption of a real-time
sporadic system.
This speed si is initialized when τi,j is released. In a sim-
ple version of the MOTE technique, the execution speed of
every released job is initially set to sol , since we assume
5 Experiments
that the priorities are assigned by EDF(k) and we proved
that the system feasibility is guarantee when it is scheduled
by EDF(k) at speed sol (Theorem 2). However, we adopt 5.1 Introduction
here another initialization step in order to profit from the
individual speed of each processor. In this “optimized” ini-
tialization step, two cases may arise at the arrival of the job In our simulations, we have scheduled periodic
τi,j : constrained-deadline systems (i.e., Ti is here the exact inter-
arrival delay for each task τi ). The energy consumption
1. if τi ∈ (τ \ τ (k) ) (the set of the (k − 1) tasks with of each generated system is computed by simulating the
highest densities), si is fixed to λi . three methods described in this paper during one hyper-
λsum (τ (k+1) ) period (i.e. the least common multiple of the task peri-
2. if τi ∈ τ (k) , si is fixed to λk + m−k+1 . ods); indeed, the authors of [9] show that, for the specific
We proved that all deadlines are met when the system is case of synchronous periodic task systems, the schedule
scheduled while using this rule. Then, when the job τi,j is to repeats from the origin with a period equals to the hyper-
be allocated to a CPU during the scheduling, we determine period. The three methods are: the off-line speed reduc-
the earliest time instant tnext such that Π(τi,j , t, tnext ) ≤ 0 tion for EDF (Equation (1)), the off-line speed reduction
and if tnext > t, one has: for EDF(k) (Equation (2)) and the MOTE algorithm (com-
bined with EDF(k) ). The energy consumptions generated
ωisi (t) · si
by these three methods are compared with the consumption
si := min si , (4)
min {Di,j , tnext } − t by the Smax method (i.e. all jobs are executed at the maxi-
mal processors speed smax ), while using different processor
We proved also that the system feasibility is not jeopardized models. During our simulations, about 5000 constrained-
by this speed modification. deadline systems were generated and simulated; with the
number of tasks n in [5, 40] (with density below 1 and
4.4 Implementation λsum (τ ) between 1 and 10). During each simulation, the
ACET of each job was generated using a pseudo-random
Before the system starts its execution, our algorithm generator. We made many graphics from our results, but
computes the speed sol by determining the optimal value of they are omitted here due to space limitation. To ensure
k thanks to Equation (2) (see Algorithm 1). Then, while the that the number m of processors is sufficient to schedule
system is running, there is only one kind of situation where the generated systems at speed smax , m is determined by
214
the following Equation (from [13]): results with the StrongARM SA-1100 processor
Method name Power saving over Smax Standard deviation
λsum (τ ) − λmax (τ ) offline EDF 4.33 % 3.34
m := min n, offline EDF(k) 27.12 % 10.24
1 − λmax (τ ) MOTE 44.74 % 8.82
215
The problem of the increased static power dissipation of the and Real-Time Computing Systems and Applications, pages
sub-micron technologies is the main motivation for our fu- 28–38. IEEE Computer Society, August 2007.
ture work, in which we will extend the existing controllable [8] J.-J. Chen, C.-Y. Yang, and T.-W. Kuo. Slack reclamation for
parameters of our scheduling algorithms (voltage and fre- real-time task scheduling over dynamic voltage scaling mul-
tiprocessors. In IEEE International Conference on Sensor
quency) with a processor switch-off parameter.
Networks, Ubiquitous, and Trustworthy Computing (SUTC),
Taichung, Taiwan, June 2006.
7 Conclusion [9] L. Cucu and J. Goossens. Feasibility intervals for multi-
processor fixed-priority scheduling of arbitrary deadline pe-
In this paper, we proposed two approaches which reduce riodic systems. In Design Automation and Test in Europe,
pages 1635–1640. IEEE Computer Society, 2007.
the energy consumption for real-time systems implemented [10] N. Ekekwe and R. Etienne-Cummings. Power dissipa-
upon multiprocessor platforms. The first one is an adap- tion sources and possible control techniques in ultra deep
tation of the first proposal “Global EDF”, called EDF(k) , submicron cmos technologies. Microelectronics Journal,
which allows a lower computing speed of the processors 37(9):851–860, September 2006.
than EDF. The second proposal (called MOTE) is an on- [11] R. Ernst and W. Ye. Embedded program timing analysis
line low-power algorithm which takes into account the “un- based on path clustering and architecture classification. In
used” CPU times to adjust the processor speeds while the Proceedings of the IEEE/ACM international conference on
system is running. We show in our experiments that this Computer-aided design, pages 598–604, California, United
on-line technique can significantly improve the processors States, 1997. IEEE Computer Society.
[12] B. Gaujal, N. Navet, and C. Walsh. Shortest path algorithms
energy consumption (up to 45% for the Intel StrongARM for real-time scheduling of fifo tasks with optimal energy
SA-1100). Moreover, our MOTE technique can incorpo- use. In ACM Transactions on Embedded Computing Sys-
rate the speed/voltage change overheads by simply adding tems, volume 4, pages 907–933, November 2005.
the speed transition time of the processors to the worst- [13] J. Goossens, S. Funk, and S. Baruah. Priority-driven
case workload of each task. Our two methods address spo- scheduling of periodic task systems on uniform multipro-
radic constrained-deadline real-time systems. This model cessors. Real Time Systems, 25:187–205, 2003.
includes the most popular one: the sporadic and implicit- [14] K. Kyong Hoon, B. Rajkumar, and K. Jong. Power aware
scheduling of bag-of-tasks applications with deadline con-
deadline task systems. The complexity of each decision (at
straints on dvs-enabled clusters. In Seventh IEEE Interna-
any job allocation-time) is linear in the number of ready
tional Symposium on Cluster Computing and the Grid, 2007.
jobs in the system. This low-complexity makes the MOTE CCGRID 2007, pages 541–548, May 2007.
strategy a very mighty technique. [15] C. Liu and J. Layland. Scheduling algorithms for multipro-
gramming in hard real-time environment. In Journal of the
References ACM (JACM), pages 46–61, february 1973.
[16] P. Pillai and K. Shin. Real-time dynamic voltage scaling
for low powered embedded systems. Operating Systems Re-
[1] Intel® pxa27x processor family optimization guide. view, 35:89–102, October 2001.
[2] B. Andersson. Static-priority scheduling on multiproces- [17] J. Pouwelse, K. Langendoen, and H. Sips. Dynamic voltage
sors. PhD thesis, Chalmers Univerosty of Technology, 2003. scaling on a low-power microprocessor. In Proceedings of
[3] R. Aydin, R. Melhem, D. Moss, and P. Mejia-Alvarez. the 7th annual international conference on Mobile comput-
Power-aware scheduling for periodic real-time tasks. IEEE ing and networking, pages 251–259, 2001.
Transactions on Computers, 53(5):584–600, 2004. [18] G. Quan and H. Xiaobo. Energy efficient fixed-priority
[4] S. Baruah and J. Anderson. Energy-aware implementation scheduling for real-time systems on variable voltage pro-
of hard-real-time systems upon multiprocessor platform. In cessors. In Proceedings of the 38th conference on Design
Proceedings of the ISCA 16th International Conference on automation, pages 828–833, 2001.
Parallel and Distributed Computing Systems, pages 430– [19] Y. Shin and K. Choi. Power conscious fixed priority schedul-
435, August 2003. ing for hard real-time systems. In Design Automation Con-
[5] M. Bertogna, M. Cirinei, and G. Lipari. Improved schedu- ference, pages 134–139, 1999.
lability analysis of EDF on multiprocessor platforms. In [20] A. Sinha and A. P. Chandrakasan. Jouletrack: a web based
ECRTS’ 05: Proceedings of the 17th Euromicro Conference tool for software energy profiling. In Proceedings of the 38th
on Real-Time Systems, 2005. conference on Design automation, pages 220–225, 2001.
[6] J.-J. Chen, H.-R. Hsu, and T.-W. Kuo. Leakage-aware [21] F. Zhang and S. Chanson. Processor voltage scheduling for
energy-efficient scheduling of real-time tasks in multipro- real-time tasks with non-preemptible sections. In 23th Real-
cessor systems. In 12th IEEE Real-Time and Embedded Time Systems Symposium, pages 235–245, 2002.
Technology and Applications Symposium, pages 408–417, [22] D. Zhu. Reliability-aware dynamic energy management in
2006. dependable embedded real-time systems. In Proceedings
[7] J.-J. Chen and T.-W. Kuo. Energy-efficient scheduling for of the 12th IEEE Real-Time and Embedded Technology and
real-time systems on dynamic voltage scaling (DVS) plat- Applications Symposium, 2006., pages 397–407, April 2006.
forms. In 13th IEEE International Conference on Embedded
216
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
218
(0,100) (100,100)
3. Design of a Data-Centric Storage System
Supporting Similarity Search
In this section, a data allocation method is first illus-
trated in Section 3.1, and a data insertion mechanism is
designed for storing observed data into an indexing node
in Section 3.2. A search mechanism is proposed in Sec-
tion 3.3 which efficiently finds the answer for a given
(0,0) (100,0)
query. The symbols used in this section are summarized
in Table 1.
root node: (3,3)
level 1 mirror nodes: (53,3) (3,53) (53,53)
3.1. Data Allocation
level 2 mirror nodes: (28,3) (3,28) (28,28) (78,3) (53,28) (78,28)
(3,78) (28,53) (28,78) (78,53) (53,78) (78,78)
A space-filling curve is a thread that goes through all
the points in the space while visiting each point only one
Figure 1. Example of structured replica-
time, and imposing a linear order of points in the multi-
tion.
dimensional space. The Hilbert curve manifests superior
data clustering properties when compared with the other
space-filling curves [13, 14]. Thus, we adopt the Hilbert
curve to design the structure of indexing nodes in a sen-
As one type of events is mapped to one storage node, sor network.
the workload of this node can be very heavy as all The Hilbert curve is mathematically defined by a
queries asking for this type of events will be processed mapping of the unit interval [0, 1] in one dimension to
in this storage node. It easily makes this storage node a bounded region of a higher dimension space which is
a hot spot and depletes its energy much sooner than the called a Hilbert space. According to the number of level
other nodes. To alleviate the problem, the GHT team , the network is divided recursively into 4 square cells.
proposed the structured replication GHT (SR-GHT) [6] Determination of is dependent on the data generation
to dispatch detected data to multiple storage nodes. The rate. The more generated data, the higher is required.
replicated storage nodes are named the mirror nodes. A (The determination of is to be discussed shortly.) Each
node that detects a data will store the data at either the square cell is a quadrant and there is a point P at
hashed node or the mirror node, depending on which the center of each quadrant. The Hilbert curve passes
one is closer to the location that the data is detected. For through each P of all quadrants [13, 15]. For exam-
example, Figure 1 shows a hierarchy of up to level=2 ple, in Figure 2 the sensor network is divided into four
structured replication. Each black dot, which is named a quadrants where =1 and each quadrant has one point Pi
root node, is the original storage node of GHT. The gray in the middle. These four points, P0 , P1 , P2 , P3 , of the
and white dots represent the mirror nodes of level=1 and four quadrants are strung in a linear order P0 , P1 , P2 , P3 .
level=2 respectively. The number of the replication level When increases to 2, the network will be divided into
depends on the data generation frequency. It increases 16 quadrants as shown in the figure and the point of each
while data is frequently generated. If an event is detected quadrant is linked in the same manner as that in level 1
at (100,100) in Figure 1 for example, it will be stored at Hilbert space.
the mirror node at the upper-right cell as it is the closest
mirror node. Thus, SR-GHT reduces the cost for trans-
mitting the detected data and uplifts the availability of
P1 P2
sensors as it spreads the workload over multiple nodes.
219
Table 1. Summary of symbols and defini-
tions
Symbols Definitions
Number of level in Hilbert curve
P Center point of a quadrant
SID Sensor number ID
IID Indexing node number ID
n Number of indexing nodes
A Total memory space for storing data (a) Hilbert curve (b) Sensor network
z Memory size of each sensor node
R Entire data range of an event
RL Lower bound of data range R Figure 3. Mapping Hilbert curve onto a
RU Upper bound of data range R sensor network.
r Sub-range of data range R, where r=R/n
IID
Vmin Minimum existing value of indexing node IID
IID
Vmax Maxmum existing value of indexing node IID
Vq The search value of a query z, the number of indexing nodes n should be n≥A/z.
IT The indexing node that query is forwarded to Since the number of indexing nodes is four to the num-
I
Vs ID Local similar data of indexing node IID
I ber of levels (n=4 ), the number of levels equals to
RLID Lower bound of data range in IID
I log4 n≥log4 A/z.
RUID Upper bound of data range in IID
Mx,y Midpoint of two values x and y
3.2. Data Insertion Mechanism
network. All the sensors are homogeneous and each of Let the entire data range R of an event be [lower
them has a unique sensor ID, SID , and is aware of its bound RL , upper bound RU ]. For instance, the detected
own geographic location. We call each quadrant of a range for temperature in a sensor is usually in the range
Hilbert space a cell in the network and the number of of -40oC to 60o C in a wild area, and humidity is within
cells is equal to 4 . We choose one sensor that is closest the range 0% to 100%. If the number of indexing nodes
to the middle of a cell in the network as point P of each is n, which are I0 ,I1 ...In−1 . We equally divide R into n
quadrant in the Hilbert space. These sensors are respon- sub-ranges, each being equal to r. That is, n·r=R. The
sible for storing detected data and named the indexing sub-range of data for which the indexing node IID is re-
IID IID
nodes (IID ). The number of indexing nodes is equal to sponsible is defined as [RL , RU ), which is equal to
the number of cells, i.e., (4 ). [RL +(IID -1)·r, RL +IID ·r). For example, Figure 4(a)
Figure 3 shows an example of a Hilbert space of =1 shows a sensor network of partition level =1. There are
mapped upon a sensor network. Figure 3(b) is the sen- four indexing nodes in the sensor network, which are I0 ,
sor network corresponding to the Hilbert space in Fig- I1 , I2 , I3 . Assume that the value range of an event is
ure 3(a). Each black dot in Figure 3(b) represents a sen- [0, 1]. We equally split the range [0, 1] into four sub-
sor in the network, and each white dot (I0 , I1 , I2 , I3 ) is ranges [0, 0.25), [0.25, 0.5), [0.5, 0.75) and [0.75, 1],
a chosen sensor that is closest to the center of a cell and corresponding to the indexing nodes I0 , I1 , I2 , and I3 ,
is regarded as the indexing node of this cell. These four respectively. If =2 as shown in Figure 4(b), the num-
nodes compose a Hilbert curve of level=1 in the sensor ber of indexing nodes increases to sixteen, i.e., I0 , I1 , ...
network. Each of these indexing nodes then broadcasts and I15 . Hence, the sub-range of the first indexing node
a message to its neighbors to let its one-hop neighbors I0 is [0, 0.0625), that of the second indexing node I1 is
know that it is the indexing node of the cell. When a [0.0625, 0.125), and so on.
future message is sent to the center of this cell, these When a data is detected by a sensor, this sensor sends
neighbor nodes will direct the message to this indexing the data to the indexing node that is assigned a sub-range
IID
node. covering the detected data. Two parameters (Vmin ,
IID
Determination of a proper number of levels is a prob- Vmax ) are used here to record the minimum and the
lem that should be explained. Too many indexing nodes maximum existing values of an indexing node. These
(i.e., building a Hilbert curve of too many levels) will two parameters are initially set to 0. When a data is
degrade the efficiency of query processing. Too fewer stored in an indexing node, these two values are updated
indexing nodes, on the other hand, may not provide accordingly. For example in Figure 4(a), if a sensor de-
enough storage space for detected data items. We de- tects a data whose value is 0.3, the data will be sent to
termine the number of levels in this way. Assume the I1 because it belongs to the sub-range of I1 . And if 0.3
I1
detected data expire after a period of time so that they is the only data in I1 , the two parameters will be (Vmin ,
I1
do not need to be kept forever. The total memory space Vmax ) = (0.3, 0.3), as the minimum and the maximum
for storing data is A. If the memory size of each sensor is existing values are both 0.3.
220
I5
3.3.2. Query Probing Phase for Similar-
I6 I9 I10
[0.25, 0.5) [0.5, 0.75) [0.3125, 0.9375) ity Search Queries
I1 I2
I7 I8
I4 I11 Let the local similar data of indexing node IID be
[0.25, 0.3125)
VsIID . So the local similar data of target node IT is VsIT .
tȷ=0.3 tȷ=0.3
I3 I2 I12 We have the following possible cases.
I13
[0.1875 , 0.25) [0.125, 0.1875 )
I0 I3 0
[0, 0.25) [0.75, 1]
• Case 1 IT is nonempty (i.e., has local data) and
I0
[0, 0.0625)
I1
[0.0625, 0.125)
I14 I15
[0.9375, 1]
VsIT is the most similar local data in IT .
(a) Level 1 (b) Level 2 – Sub-Case 1 If VsIT is larger than Vq , then all
data in IT +1 must be even greater than Vq (be-
Figure 4. Hilbert curve for level 1 and level cause they are greater than VsIT ). But in IT −1
I
2. there may be a Vs T −1 which is closer to Vq .
– Sub-Case 2 If VsIT is smaller than Vq , then
all data in IT −1 must not be more similar to
Vq than VsIT is. But in IT +1 there may be a
3.3. Similarity Search Mechanism I
Vs T +1 which is closer to Vq .
221
IT
closer to Vq than RU is, VsIT is the answer of the query. Query Value, Vq Similar Data,VsI ID Midpoint, M x , y
Upper Bound of IID , RUI I ID
Max. Observed Data of IID, Vmax
Otherwise, IT +1 might have a data item that is a more
ID
222
(a) A sensor network with level 1. (b) A sensor network with level 2.
(c) A sensor network with level 3. (d) A sensor network with level 4.
cost. For data insertion cost, we record the number of 2. The data insertion cost of SSA is higher than that
exchanged messages required for each data item that is in SR-GHT. That is because the detected data is
detected in one sensor and forwarded to the correspond- stored locally in SR-GHT, but is forwarded to an
ing storage node. For query processing cost, we record assigned indexing node in SSA and the assigned
the number of exchanged messages required for process- indexing node may be far away from the detecting
ing a similarity search query, which includes forwarding sensor. Though the data insertion cost of SR-GHT
the query to the corresponding storage node, executing performs well in insertion cost, SSA outperforms
the similarity search mechanism, and forwarding the re- SR-GHT in total cost.
sults to the query node.
3. While the number of level increases, the above two
4.2. Network size observations remain the same. The query process-
ing cost of SR-GHT increases exponentially with
We first compare the performance of processing sim- the increase of number of levels. However, the
ilarity search queries of SSA with SR-GHT under dif- query processing cost of SSA remains quite stable
ferent size of network. The SSA and SR-GHT are pro- when the number of levels increases.
cessed in the network that size varies from 103 sensors
to 105 sensors. The density of the network remains at 1
node per 256 m2 . Each sensor on average generates ten
detected data items when it issues one similarity search
query. Figure 6 gives the cost per sensor for level=1 up
to level=4 in the sensor network.
In the following, we list the interesting observations
found in Figure 6 .
1. The performance of query cost of SSA outperforms
SR-GHT in all scales of the network size. The
reason is that drastically fewer storage nodes are
visited while processing a similarity search query
in SSA, whereas, all the storage nodes have to be
visited in SR-GHT. As a result, the query cost of Figure 7. Comparison on the number of
SR-GHT increases significantly with the expansion levels in a large sensor network.
of the network size and the increase of the Hilbert
curve level.
223
4.3. Partition level Currently, we are extending the capability of this de-
sign to dealing with multi-dimensional similarity search
Also, we observe the performances of SSA and SR- queries. Indexing multi-dimensional data is difficult as
GHT under different partition level of sensor network. it requires an intelligent mapping to a two-dimensional
In Figure 7, we compare their average query processing sensor network so as to maintain the adjacency in the
cost, average data insertion cost, and average total cost two dimensional space. An efficient query processing
for the number of sensor nodes being equal to 1000. technique that works for multi-dimensional data is also
under designed.
1. Insertion cost and query cost: The insertion cost
of SR-GHT drops as the number of levels increases. References
The reason is that the observed data are stored
to the nearest mirror node in SR-GHT. When the [1] M. Flickner, H. Sawhney, W. Niblack, J. Ashley, Q. Huang,
number of levels increases, the number of mirror B. Dom, M. Gorkani, J. Hafner, D. Lee, D. Petkovic, D. Steele,
nodes greatly increases so that on average a de- and P. Yanker, “Query by image and video content: the qbic
system,” IEEE Computer, vol. 28, no. 9, pp. 23–32, September
tected data item becomes closer to a mirror node 1995.
to be stored there. The query cost of SR-GHT [2] S. Cost and S. Salzberg, “A weighted nearest neighbor algorithm
increases however much more significantly as the for learning with symbolic features,” Machine Learning, vol. 10,
number of levels increases, because all data in the no. 1, pp. 57–78, January 1993.
[3] B. I., K. S.R., and P. S., “Similarity searching in peer-to-peer
mirror nodes need to be sent to the query node. databases,” in Proceedings of 25th International Conference on
Distributed Computing Systems (ICDC05), Columbus, Ohio,
2. Total cost: The total cost of the SR-GHT method USA, June 2005, pp. 329–338.
is higher than the cost of SSA for all levels of the [4] P. Kalnis, W. S. Ng, B. C. Ooi, and K.-L. Tan, “Similarity queries
in peer-to-peer networks,” Information Systems Journal, vol. 31,
Hilbert curve. The higher the number of levels, the
no. 1, pp. 57–72, March 2006.
greater the difference between the two algorithms. [5] X. Dong, A. Halevy, J. Madhavan, E. Nemes, and J. Zhang,
Notice that the vertical scale in Figure 7 is mea- “Similarity search for web services,” in Proceedings of 30th
sured as the logarithm. Hence, when level=4, the VLDB Conference., Toroto, Canada, September 2004, pp. 372–
383.
SSA method is more than one order of magnitude [6] S. Ratnasamy, B. Karp, S. Shenker, D. Estrin, R. Govindan,
better than SR-GHT. L. Yin, and F. Yu, “Data-centric storage in sensornets with ght,
a geographic hash table,” Mobile Networks and Applications,
3. Sensitivity to the number of levels: Each cost vol. 8, no. 4, pp. 427–442, August 2003.
component of SSA remains about the same for all [7] X. Li, Y. J. Kim, R. Govindan, and W. Hong, “Multi-dimensional
range queries in sensor networks,” in Proceedings of the 1st in-
levels of Hilbert curve. Hence, the SSA method is ternational conference on Embedded networked sensor systems,
insensitive to the number of levels. The number of Los Angels, CA, November 2003, pp. 63–75.
levels actually represents the amount of generated [8] B. S., B. C., B. B., K. D. A., and K. H.-P, “Fast parallel similarity
data. When the amount of generated data increases, search in multimedia databases,” in Proceedings of ACM SIG-
MOD International Conference on Management of Data (SIG-
a higher level of Hilbert curve has to be used to MOD’97), Tucson, AZ, January 1997, pp. 1–12.
contain so much data. This means the SSA method [9] R. Weber, H. Schek, and S. Blott., “A quantitative qnalysis and
has a very nice feature that it is insensitive to the performance study for similarity search methods in high dimen-
amount of data generated. Hence, the method is sional spaces,” in Proceedings of the 24th International Confer-
ence on Very Large Data Bases (VLDB), New York City, New
perfectly scalable in terms of data size. York, August 1998, pp. 194–205.
[10] C. Doulkeridis, A. Vlachou, Y. Kotidis, and M. Vazirgiannis,
“Peer-to-peer similarity search in metric spaces,” in Proceedings
5. Conclusion of the 33th International Conference on Very Large Data Bases
(VLDB), Vienna, Austria, September 2007, pp. 986–997.
In this paper, we proposed the design and implemen- [11] M. Demirbas and H. Ferhatosmanoglu, “Peer-to-peer spatial
queries in sensor networks,” in Proceedings of the 3rd IEEE In-
tation of an algorithm for processing similarity search
ternational Conference on Peer-to-Peer Computing, Linkping,
queries in sensor networks. Our design applies the con- Sweden, September 2003, pp. 32–34.
cept of Hilbert curve to sensor networks such that se- [12] J. Winter and W.-C. Lee, “Kpt: a dynamic knn query processing
mantically related data are mapped to adjacent index- algorithm for location-aware sensor networks,” in Proceedings
of the 1st International Workshop on Data Management for Sen-
ing nodes. A similarity search algorithm was proposed sor Networks (DMSN), New York, NY, USA, August 2004, pp.
for efficiently processing similarity search queries. Such 119–124.
a query can be directly routed to an indexing node to [13] J. Griffiths, “An algorithm for displaying a class of space-filling
find the matching result or the one that is closest to the curves,” Software-Practice and Experience, vol. 16, no. 5, pp.
403–411, May 1986.
given query. The major advantage of this design is that it [14] N. Wirth, Algorithms and Data Structures. Englewood Cliff,
drastically reduces the communication cost for process- NJ: Prentice-Hall Inc., 1986.
ing similarity search queries. Our performance study [15] D.Hilbert., “Ueber stetige abbildung einer linie auf ein flashen-
showed that this design exhibits a superior performance stuck.” Mathematishe Annalen, vol. 38, pp. 459–460, 1891.
in terms of energy consumption in the sensor networks.
224
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
226
schedule Φ = (S, T) such that the total energy consump-
R10 D10
tion E(Φ) is minimized, where there are at most B pending
B=6
W orkload
227
Job J0 J1 J2 J3 J4 J5 J6 J7
Algorithm 1: SW-ASP
ci 0 2426 991 857 690 588 1671 525
Input: A set of jobs (J1 , J2 , ..., JN ) and the buffer di P 2P 3P 4P 5P 6P 7P 8P
size B Job J8 J9 J10 J11 J12 J13 J14 J15
Output: A legal speed schedule Φ = (S, T) ci 485 518 485 1534 467 501 514 470
di 9P 10P 11P 12P 13P 14P 15P 16P
1 Initialize S and T as empty sequences;
2 o ← 1;
Table 1: An Example Job Workload
3 foreach Scheduling points t̃i = (i − 1) × P for
i = 1, ..., N do
4 Derive the critical speed s1 = 1520
Speed
Lj s2 = 1013
s̃i = maxe≤j≤min(i−1+B,N ) where Lj = s3 = 760
X dj s4 = 0
re + cl ; 0 P 2P 3P 4P 5P 6P 7P 8P 9P
T ime
10P 11P 12P 13P 14P 15P 16P
Speed
s2 = 1013
Equation 5, where s̃i and s̃L
H
i ∈ A;
s3 = 760
228
starts its execution at a DSP speed, it uses the speed to com- s1 = 1520
plete all of its execution. The scheduling points are set as
Speed
s2 = 1013
s3 = 760
the time points before the beginning of each job execution.
Let i be the index of the first pending job of the sliding s4 = 0
0 P 2P 3P 4P 5P 6P 7P 8P 9P 10P 11P 12P 13P 14P 15P 16P
window of size w at the current scheduling point, i.e., the T ime
The derived speed schedule is reset as null initially, sim- 4.1 Environment Setup
ilar to Algorithm SW-ASP (Step 1). For each job Ji , a criti-
cal speed s̃i is derived just before the execution of Ji (Steps The purpose of this section is to evaluate the proposed
2-10). s̃i is derived based on the following formula (Step volatage scaling scheme by both simulations and real case
3), where the window size is w at the current time: study. The simulation part was based on the parameters of
X PAC DSP. The case study was done by the measurement
Lj
s̃i = max , where Lj = cl . (6) of system executions over a Texas Instruments DaVinci
i≤j≤i+w−1 dj
i≤l≤j DVEVM (Digital Video Evaluation Module) development
board. The speed modes available on the simulation plat-
Similar to the derivation of w in Section 3.1, the window form , i.e., PAC DSP, and the experimental platform, i.e.,
size w at the corresponding scheduling point t̃i is derived as DaVinci, are listed in Table 2 and Table 3, respectively.
follows: Note that the last speed mode, i.e., the mode s4 in Table 2,
t̃i and the mode s8 in Table 3, are the sleep mode.
w = B + min(⌊ ⌋, N − B) − (i − 1) Two sets of video bitstreams were adopted for testing:
P (7)
t̃i One was for simulations, and the other was for the case
= min(⌊ ⌋ + B, N ) − i + 1. study. The first test set consisted of bitstreams that were
P
common to the evaluations of MPEG compression algo-
Note that at time t̃i , ⌊t̃i /P ⌋ new jobs are issued from the rithms, such as akiyo, coastguard, foreman, etc. These bit-
MPU. streams were compressed in terms of the MPEG-2 format
Different from Algorithm SW-ASP, Algorithm SW-RSP with a resolution at 176 × 144 (qcif) pixels and consisted
does not do interpolation. Instead, the derived critical speed of roughly 250 to 300 frames. We decoded this set of bit-
of a job is rounded up to the nearest available processor streams and measured their DSP execution cycles on the
speed s̃H
i that is no less than the derived critical speed PAC platform. The simulations of the proposed scheme
229
Speed mode s1 s2 s3 s4 s5 80
NormalizedEnergyConsumption(%)
Frequency (MHz) 594 567 540 513 486 LowerBound
SW-ASP
Speed mode s6 s7 s8 s9 SW-RSP
Frequency (MHz) 459 432 405 0 60
20
were then conducted according to the measured traces of
the DSP execution cycles. The energy consumptions in the
simulations were calculated based on the power consump-
coastguard news tempete singer container akyio foreman
tion characteristics of the PAC DSP, as specified in Table 2. VideoBitstreams
The second test set for the case study had long H.264 base-
line videos and a larger resolution (720 × 480). We imple- Figure 4: The Energy Consumption in Decoding with Per-
mented the proposed scheme in the H.264 video decoder fect Cycle Prediction
for DaVinci and measured the power consumptionwith the
Agilent 34970A data acquisition/switch unit. The second
80
test set was summarized in Table 4. In order to measure
NormalizedEnergyConsumption(%)
LowerBound
SW-ASP
the performance of the algorithms, the normalized energy SW-RSP
consumption was adopted as the performance metric in the 60
minimization of the energy consumption, and it was defined
as the total energy consumption of the schedule derived by
40
an evaluated algorithm divided by that without any volt-
age scaling. The deadline missing served as another per-
formance metric, and it was used to measure the quality of 20
the decoded video in the evaluation.
4.2 Simulation Results coastguard news tempete singer container akyio foreman
VideoBitstreams
Figure 4 shows the energy consumption in decoding of
MPEG-2 bitstreams on the PAC DSP, where the predic- Figure 5: The Energy Consumption in Decoding with Im-
tion on decoding cycles was always 100% accurate. The perfect Cycle Prediction
Lower Bound denotes the lower bound on the energy con-
sumption derived Pfrom the execution of all jobs at a com-
N
mon speed s̃ = i=1 ci /dN 3 . SW-ASP and SW-RSP indi- in the simulation experiments because of its good perfor-
cate the energy consumption in decoding under Algorithms mance. As shown in Figure 5, the energy saving with the
SW-ASP and Algorithm SW-RSP in the simulation, respec- FRAME TYPE cycle prediction method was close to the
tively. Each result was normalized to the energy comsump- corresponding one with perfect prediction. Moreover, since
tion in decoding at the highest speed s1 , as shown in Table 2. the prediction method was not perfect, some decoding jobs
As shown in the figure, the proposed algorithms resulted in would miss their deadlines. As shown in Figure 6, the
about 44% in energy saving. deadline miss rate was no more than 3% in the decoding.
Figure 5 shows the energy consumption of algorithms With such a low miss rate, we surmised that the dropping
under consideration without perfect cycle prediction in de- of frames would not cause trouble to the watching of video
coding. The cycle prediction method FRAME TYPE pro- streams.
posed in [6] was adopted in the simulation experiments.
The method utilized the decoding information provided by 4.3 Experimental Results - A Case Study
MPU, i.e., the past history in the frame execution cycles
of different frame types such as I, P, and B. The method
The proposed algorithms were also implemented and
predicted the execution cycles of incoming video frames
evaluated over a realistic platform, i.e., that over a Texas
based on the average cycles of frames of the same type
Instruments DaVinci DVEVM, with real traces. The cy-
in the frame execution history. The method was adopted
cle prediction method FRAME TYPE was adopted as that
3 If s̃ is not an available speed, we interpolate s̃ by executing at s̃H for in the simulation experiments. Figure 7 show the energy
s̃−s̃L
s̃H −s̃L
· dN time units and then executing at s̃L till dN , where s̃H and consumption of Algorithm SW-RSP, compared to that un-
L
s̃ are the higher and lower available speeds nearest to s̃, respectively. der NO DVFS (,i.e., decoding at the highest speed). Algo-
230
2D Animation 3D Animation News
Action
Conference
Number of frames 17985 19182 19182 1751
Resolution 720 × 480 720 × 480 720 × 480 720 × 480
FPS 29.97 29.97 23.98 25
Bitrate (kbps) 754.99 1237.58 1798.87 631.27
PSNR 42.44 41.85 40.04 42.49
Scene changes some many many nearly none
Camera motion a little a little radical nearly none
Spatial complexity low medium highest low
Figure movements medium high highest lowest
3.0 250
SW-ASP NoDVFS
SW-RSP SW-RSP
2.5 83.0%
EnergyConsumption(J)
200
82.0%
DeadlineMissing(%)
2.0
150 82.1%
1.5
100
1.0
50
0.5 82.3%
0
2D 3D Action News
coastguard news tempete singer container akyio foreman Animation Animation Conference
VideoBitstreams VideoBitstreams
Figure 6: the Deadline Miss Rate with Imperfect Cycle Pre- Figure 7: The Energy Consumption of Algorithms in the
diction Cast Study
rithm SW-RSP achieved about 18% in energy saving, that This paper is motivated by the needs in energy-efficient
was less than the corresponding one in the simulation ex- scheduling of multimedia workloads over a DSP. A set
periments over the PAC DSP. One of major reasons was on of sliding-window-based algorithms are proposed to derive
the limitation of the experiment platform DaVinci, where time points in the speed adjustment of a DSP and their cor-
the experimented platform DaVinci did not have good speed responding speeds. We derive proper speed adjustment time
flexibilities, compared to the PAC DSP. Even if DaVinci of- points and their corresponding processor speeds to run jobs
fered up to 8 discrete speeds, its lowest speed was still not of a periodic task on the DSP, such as that for the decoding
as low as that of the PAC DSP. Because of its design limi- of an H.264 stream. The capability of the proposed algo-
tation, DaVinci was less power-efficient than the PAC DSP, rithms are evaluated by a series of experiments over real
where PAC DSP was designed later. Another two reasons and synthesized traces. The proposed algorithms can save
in less energy saving in the case study were on the power 44% of the energy consumption in many cases. Prediction
domain design of DaVinci and the limitation of the experi- errors also did not result in significant dropping in deadline
ment instruments. Note that DPS, MPU, DMA, and system missing.
buses of DaVinci were all on the same power domain, and For future research, we will further investigate the job
all of them contributed to the measured amount in energy partitioning problem between the MPU and the DSP. We
consumption in the case study. That evened out the energy shall explore the balance between the energy consumption
saving achieved in energy-efficient job scheduling over DSP and the performance. While multiple-core systems become
by the proposed algorithm. However, we must point out that more and more popular, more research on energy-efficient
18% was already a reasonably decent result in energy effi- real-time job scheduling among multiple DSP’s has become
cient DSP scheduling. even more critical in the near future.
231
References [15] S. Irani, S. Shukla, and R. Gupta. Algorithms for power sav-
ings. In Proceedings of the Fourteenth Annual ACM-SIAM
[1] T. A. Alenawy and H. Aydin. Energy-aware task alloca- Symposium on Discrete Algorithms, pages 37–46, 2003.
tion for rate monotonic scheduling. In Proceedings of the [16] T. Ishihara and H. Yasuura. Voltage scheduling problems for
11th IEEE Real-time and Embedded Technology and Appli- dynamically variable voltage processors. In Proceedings of
cations Symposium (RTAS’05), pages 213–223, 2005. the International Symposium on Low Power Electronics and
[2] H. Aydin, R. Melhem, D. Mossé, and P. Mejı́a-Alvarez. De- Design, pages 197–202, 1998.
termining optimal processor speeds for periodic real-time [17] J.-M. Lu, H.-L. Wu, T.-M. Chiang, and W.-F. Chen. High
tasks with different power characteristics. In Proceedings performance and low-power dual-core soc platform for
of the IEEE EuroMicro Conference on Real-Time Systems, portable multimedia applications. ITRI SoC Technical Jour-
pages 225–232, 2001. nal, May issue:36–45, 2005.
[3] H. Aydin, R. Melhem, D. Mossé, and P. Mejı́a-Alvarez. [18] P. Mejı́a-Alvarez, E. Levner, and D. Mossé. Adaptive
Dynamic and aggressive scheduling techniques for power- scheduling server for power-aware real-time tasks. ACM
aware real-time systems. In Proceedings of the 22nd IEEE Transactions on Embedded Computing Systems, 3(2):284–
Real-Time Systems Symposium, pages 95–105, 2001. 306, 2004.
[4] H. Aydin and Q. Yang. Energy-aware partitioning for mul- [19] R. Mishra, N. Rastogi, D. Zhu, D. Mossé, and R. Melhem.
tiprocessor real-time systems. In Proceedings of 17th In- Energy aware scheduling for distributed real-time systems.
ternational Parallel and Distributed Processing Symposium In International Parallel and Distributed Processing Sympo-
(IPDPS), pages 113 – 121, 2003. sium, page 21, 2003.
[5] N. Bansal, T. Kimbrel, and K. Pruhs. Dynamic speed scal- [20] I NTEL -X SCALE , 2003.
ing to manage energy and temperature. In Proceedings of http://developer.intel.com/design/xscale/.
[21] Y. Tan, P. Malani, Q. Qiu, and Q. Wu. Workload prediction
the Symposium on Foundations of Computer Science, pages
and dynamic voltage scaling for mpeg decoding. In ASP-
520–529, 2004.
DAC ’06: Proceedings of the 2006 conference on Asia South
[6] A. C. Bavier, A. B. Montz, and L. L. Peterson. Predict-
Pacific design automation, pages 911–916, New York, NY,
ing mpeg execution times. In SIGMETRICS ’98/PERFOR-
USA, 2006. ACM Press.
MANCE ’98: Proceedings of the 1998 ACM SIGMETRICS
[22] M. Weiser, B. Welch, A. Demers, and S. Shenker. Schedul-
Joint International Conference on Measurement and Mod-
ing for reduced CPU energy. In Proceedings of Symposium
eling of Computer Systems, pages 131–140, New York, NY,
on Operating Systems Design and Implementation, pages
USA, 1998. ACM Press.
13–23, 1994.
[7] A. Chandrakasan, S. Sheng, and R. Broderson. Lower-
[23] C.-Y. Yang, J.-J. Chen, and T.-W. Kuo. An approximation al-
power CMOS digital design. IEEE Journal of Solid-State
gorithm for energy-efficient scheduling on a chip multipro-
Circuit, 27(4):473–484, 1992.
cessor. In Proceedings of the 8th Conference of Design, Au-
[8] J.-J. Chen, H.-R. Hsu, K.-H. Chuang, C.-L. Yang, A.-
tomation, and Test in Europe (DATE), pages 468–473, 2005.
C. Pang, and T.-W. Kuo. Multiprocessor energy-efficient
[24] F. Yao, A. Demers, and S. Shenker. A scheduling model
scheduling with task migration considerations. In EuroMi-
for reduced cpu energy. In FOCS ’95: Proceedings of the
cro Conference on Real-Time Systems (ECRTS’04), pages
36th Annual Symposium on Foundations of Computer Sci-
101–108, 2004.
ence (FOCS’95), page 374, Washington, DC, USA, 1995.
[9] J.-J. Chen and T.-W. Kuo. Voltage-scaling scheduling for
IEEE Computer Society.
periodic real-time tasks in reward maximization. In the 26th
[25] S. M. Yardi, M. S. Hsiao, T. L. Martin, and D. S.
IEEE Real-Time Systems Symposium (RTSS), pages 345–
Ha. Quality-driven proactive computation elimination for
355, 2005.
power-aware multimedia processing. In DATE ’05: Pro-
[10] J.-J. Chen, T.-W. Kuo, and H.-I. Lu. Power-saving schedul-
ceedings of the conference on Design, Automation and Test
ing for weakly dynamic voltage scaling devices. In Work-
in Europe, pages 340–345, Washington, DC, USA, 2005.
shop on Algorithms and Data Structures (WADS), pages
IEEE Computer Society.
338–349, 2005.
[26] W. Yuan and K. Nahrstedt. Energy-efficient soft real-time
[11] J.-J. Chen, C.-Y. Yang, and T.-W. Kuo. Slack reclamation
cpu scheduling for mobile multimedia systems. In SOSP
for real-time task scheduling over dynamic voltage scaling
’03: Proceedings of the nineteenth ACM symposium on Op-
multiprocessors. In SUTC ’06: Proceedings of the IEEE
erating systems principles, pages 149–163, New York, NY,
International Conference on Sensor Networks, Ubiquitous,
USA, 2003. ACM Press.
and Trustworthy Computing -Vol 1 (SUTC’06), pages 358–
[27] Y. Zhang, X. Hu, and D. Z. Chen. Task scheduling and volt-
367, 2006.
age selection for energy minimization. In Annual ACM IEEE
[12] F. Gruian. System-level design methods for low-energy
Design Automation Conference, pages 183–188, 2002.
architectures containing variable voltage processors. In
[28] D. Zhu, R. Melhem, and B. Childers. Scheduling with dy-
Power-Aware Computing Systems, pages 1–12, 2000.
namic voltage/speed adjustment using slack reclamation in
[13] F. Gruian and K. Kuchcinski. Lenes: Task scheduling for
multi-processor real-time systems. In Proceedings of IEEE
low energy systems using variable supply voltage proces-
22th Real-Time System Symposium, pages 84–94, 2001.
sors. In Proceedings of Asia South Pacific Design Automa-
tion Conference, pages 449–455, 2001.
[14] T. Instruments. TMS320DM6446 DaVinci Digital Media
System-on-Chip, 2007.
232
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Industry Panel 2
Polly Huang
National Taiwan University
This is a sequel panel to “Sensor network: Is it for It is perhaps time to ask ourselves again. Are these
real or just for research?” held 2 years back in SUTC applications for real or just for everyone's amusement?
2006. The sensor network community has worked Invited panelists are all experts and pioneers who have
hard trying to find the rightful places to make sensor reported experimental uses of sensor networks in the
networks useful since then. We have seen, over the last real world. They will share with us openly the most
couple years, teams reporting experimental use of difficult part of their work and discuss, hopefully also
sensor networks deep in the mountains, up in the air, openly, whether they think the sensor network
down underwater, sitting on the roads, deployed in the approach is (1) feasible, (2) economical, (3) useful,
hospitals, and, the least expected but surprisingly and, to the extreme, (4) commercializable (i.e.,
plausible, worn by the dancers in performance art profitable).
theaters. We all deserve a warm 'well done' given the
effort.
234
(chromatic/achromatic) it is. In the next step, we deviation of mean values from each color channel R,
gradually extract objects from the image step-by-step G, and B. This is based on the fact that if the RGB
based on their hierarchical structure as illustrated in values of a pixel are close to each other, it is most
Figure 1. likely a gray pixel, and vice versa. Thus, a small
standard deviation indicates low hue or lack of
chromatic components. The smaller the standard
deviation is, the higher the possibility that the image is
achromatic (e.g. those colony images with clear
Color Feature medium and white colonies.) It is at this point that
Detector
chromatic images (e.g. Mutans Streptococci appears as
black colonies on the blue color Mitis-Salivarius agar)
Color Feature
Detected
are distinguished from achromatic images (e.g.
Yes No
Escherichia Coli appears as white colonies on the clear
LB agar), which will be dealt with separately.
Segmentation Segmentation
with color feature without color feature In view of the different characteristics of
Dish/Plate Dish/Plate
achromatic and chromatic images, we develop
Region Detector Region Detector different methods for these two types of images in the
subsequent image segmentation step.
Colony Detector Colony Detector
235
As aforementioned, we propose different correctly identify all colonies due to the existence of
approaches to deal with images with chromatic and artifacts such as scratches, dusts, markers, bubbles,
achromatic medium separately in the subsequent reflections, and dents in the image. The calculation of
processes. It is much easier to perform segmentation color similarity in HSV color space is shown in
on chromatic images than achromatic images since Equation 1.
they contain more color information. In the following
discussions, we first introduce how to perform
segmentation on chromatic images, then the approach CSij = 1 −
1
(x j − xi )2 + (y j − yi )2 + (z j − zi )2
5
for achromatic images. (1)
xi = Si × cos(H i × 2π )
2.3. Segmentation on chromatic images yi = Si × sin (H i × 2π )
zi = Vi
In this step, our goal is to identify the dish/plate
region in an image, and then, recognize colonies in the where CSij is the color similarity of two pixels i and j.
detected dish/plate region. The motivation is to reduce H, S, V are the hue, saturation, and value of a pixel in
the operator’s workload by eliminating the process of the HSV color space.
manually specifying the target dish/plate region. To This is based on the assumption that pixels inside a
distinguish the dish/plate region from the background, segment, no matter it is a colony segment or a medium
we first perform the contrast limited adaptive segment, have higher similarity values with its
histogram equalization (CLAHE) on the converted neighboring pixels, and pixels along the segment
grayscale images which operates on small regions boundary have lower similarity values with their
called tiles in the image rather than the entire image neighbors. We calculate the color similarity values
[6]. Each tile’s contrast is enhanced and the between a pixel and its eight neighbors, and use the
neighboring tiles are then combined using bilinear minimum similarity value to represent the maximum
interpolation to eliminate artificially induced color difference with its neighbors. Thus, pixels in the
boundaries. same segment have higher minimum similarity values.
Then we apply the Otsu’s method [9] on the On the contrary, pixels on the boundary of a segment
contrast enhanced image to identify the dish/plate have lower values. After the calculation, the
region as a target region. For some target regions boundaries are more evident, and the minimum color
detected this way, there may be small holes inside, and similarity values formed a matrix as a grayscale image.
we fill in the holes by adopting a morphology-based Thus, we can adopt the Otsu’s method used in the
method and consolidate the target regions. dish/plate region detection stage to further distinguish
Sometimes, this method can also detect some background (medium areas) from foreground objects
smaller objects that are not part of the target dish/plate (candidate colonies).
region. We assume the target region should occupy the
majority (and central) part of the image, thus there is
an extra step in our algorithm which is designed to
remove those isolated small objects. A few of detected
target regions of dish/plate, after applying the above
steps, are shown together with their original images in
Figure 3.
The results show that the automatic dish/plate
region detection algorithm is effective regardless of the
size and shape of the dish/plate. After the dish/plate
region has been extracted, we can apply the
segmentation again on the detected dish/plate region.
The second step is to isolate colonies on the
dish/plate, identify clustered colonies, and separate
aggregated bacteria colonies for subsequent colony Figure 3. Segmentation results for detecting
enumeration. In addition to using Otsu’s method [9] to dish/plate regions. Raw images (left column);
separate colonies and medium, we also adopt color Otsu’s method (middle column); proposed method
similarity in HSV (Hue-Saturation-Value) color space (Right column)
to assist the colony boundaries detection [10]. This is
necessary because a simple global threshold cannot
236
Ideally, an isolated foreground object from the much less accurate on achromatic images due to the
previous step corresponds to one colony. However, presence of artifacts. An additional noise removal step
such an object may correspond to more than one is performed for those achromatic images.
colony because several colonies may cluster together. The color similarity as described in Section 2.3
There is a need to split them in order to get the correct cannot be applied since achromatic images lack color
colony counts. To separate the connected colonies, we information. In this paper, we propose a new statistic
consider the intensity gradient image as a topological approach to detect and remove those artifacts and
surfaces [7], thus the watershed algorithm can be successfully preserve only colonies.
applied to divide clustered colonies in the image just as Our proposed statistic approach includes two steps.
water flood in a topographical surface. To illustrate the The first step is to remove those large-size artifacts.
concept, we demonstrate the application of watershed We collect the sizes of all objects detected by Otsu’s
algorithm in Figure 4. method from the dish/plate region, and generate
frequency distribution with log base of those size
values. Colonies of similar size should occupy the high
frequency segment in this distribution, and the
frequencies for those very large artifacts should be
very low. By this assumption, we can remove those
large size objects. The second step is to remove those
small artifacts which are very similar to the colonies in
the dish/plate. In this step, area size is not a good
determinant since the area size range of those small
artifacts is about the same as that of colonies. Instead,
we consider the intensity distribution of the dish/plate
region as a two-peak distribution which consists of the
distribution of medium pixels (background) and the
distribution of colonies pixels. Those small artifacts
belong to background distribution; however, they have
overlapped with the colony distribution. Therefore, we
Figure 4. The concept of watershed algorithm assume that colonies should have significantly
different intensity values than their surrounding
After applying the watershed algorithm, almost all background, and it is highly possible that those small
clustered colony segments can be separated and artifacts have similar intensity values to their
identified and are ready for the colony enumeration. surrounding pixels. Based on this assumption, we
examine each small object including colonies by
2.4. Segmentation on achromatic images hypothesis testing. In the hypothesis testing, we use the
mean of surrounding pixel values as null and test if the
The most challenge part in this research is to deal mean of object pixel values has significant difference
with achromatic images. Most of the existing colony with the null, by the α = 0.01.
counters have disappointing performance in handling After excluding most of the artifacts, we apply the
achromatic images due to the low contrast between watershed algorithm to separate clustered colonies as
colonies and medium. Besides, the background described in Section 2.3.
artifacts look very similar to colonies in the clear agar,
making it more difficult to discriminate the 2.5. Colony enumeration
background artifacts from real colonies in the
dish/plate. After all colonies have been properly separated and
To handle achromatic images, our method is also identified, the final step is to acquire the total number
based on the hierarchical structure of objects of viable colonies by adding up the number of the
aforementioned. In the first step, the dish/plate region objects that have been identified as colonies.
can be detected by using the same approach as
described in Section 2.3. In the colony detection stage, 3. Experimental results
we develop a different method to alleviate the low
contrast and artifacts problems. We also apply Otsu’s In our experiments, we use four different digital
method to isolate colonies. However, Otsu’s method is cameras as the image acquiring devices to obtain
237
dish/plate images for bacterial colony detection. The 0.52±0.19, respectively; their recall values are
four digital cameras include a Nikon D50 Digital SLR 0.96±0.04 and 0.99±0.01, respectively; their F-
Camera (6.0-megapixel) with a resolution of 3008 × measure values are 0.96±0.01 and 0.67±0.18,
2000, a Canon PowerShot A95 Camera (5.0- respectively. The precision, recall, and F-measure
megapixel) with a resolution of 2592 × 1944, a Sanyo values of the proposed counter (P.C.) are about the
DSC-J1 Camera (3.2-megapixel) with a resolution same as that of the A.C. method on chromatic images.
1600 ×1200, and an Asus P525 PDA cell phone built- To evaluate the robustness of the proposed counter
in camera (2.0-megapixel) with a resolution of 1600 (P.C.) on achromatic images, we conduct the following
×1200. two experiments, and compare the performance of P.C.
Additionally, Petri dishes with two different types with that of A.C and C.C.
of medium and bacteria strains are used in our In the first experiment, we test the proposed counter
experiments. The first type of images is obtained from (P.C.) on 24 achromatic images (9 images with good
the Department of Pediatric Dentistry at the University quality and 15 images with poor quality). The
of Alabama at Birmingham. This type of plate contains performance of the P.C., A.C., and C.C. methods on
blue color Mitis-Salivarius agar which is used for good/poor quality images are summarized in Table 1.
isolating Mutans Streptococci. These acid-producing From Table 1, we can observe that the P.C.
bacteria attack tooth enamel minerals and cause dental significantly outperforms the A.C. and C.C methods.
caries. The second type of plate is obtained from the The average overall precision, recall, and F-measure
Division of Nephrology, Department of Medicine, values of the P.C. method are 0.61±0.29, 0.94±0.06,
University of Alabama at Birmingham. This type of and 0.69±0.20, while the corresponding values of P.C.
plates contains the clear LB agar which is widely used and C.C. are (0.44±0.24, 0.68±0.24, 0.44±0.13) and
in laboratories for Escherichia Coli culture. (0.00±0.00, 0.00±0.00, 0.00±0.00), respectively.
In our second experiment, we further apply the
3.1. Dish/Plate detection proposed method on 15 different achromatic images
taken from the same dish, but with different
In this experiment, we compare the proposed background surfaces, zooms, and lighting conditions.
dish/plate detection algorithm with Otsu’s method. We measure the precision, recall, and F-measure of the
Some sample segmentation results are demonstrated in proposed counter. The average precision, recall, and F-
Figure 3. In addition, we also evaluate the performance measure on the 15 achromatic images are 0.93±0.11,
of the proposed dish/plate detection algorithm and 0.87±0.04, and 0.90±0.07, respectively. The results of
Otsu’s method by applying both methods on 100 the consistency analysis show the proposed system is
chromatic and achromatic images. The satisfaction quite consistent.
rates for the proposed method and Otsu’s method are
96% and 38%, respectively. For the 25 chromatic Table 1. Performance comparison on achromatic
images, the satisfaction rates for the proposed method images
and Otsu’s method are 92% and 0%, respectively. For Image F-
Method Precision Recall
Condition measure
the 75 achromatic images, the satisfaction rates for the
0.94 ± 0.88 ± 0.90 ±
proposed method and Otsu’s method are 97% and P.C.
0.07 0.02 0.03
50%, respectively. It is obvious that the proposed Good
0.71 ± 0.42 ± 0.52 ±
Quality A.C.
method outperforms Otsu’s method in dish/plate (9)
0.06 0.16 0.12
region detection. 0.00 ± 0.00 ± 0.00 ±
C.C.
0.00 0.00 0.00
0.41 ± 0.98 ± 0.56 ±
3.2. Colony detection P.C.
0.16 0.04 0.13
Poor
0.27 ± 0.84 ± 0.40 ±
Quality A.C.
Since the characteristics of the chromatic and 0.12 0.07 0.12
(15)
0.00 ± 0.00 ± 0.00 ±
achromatic images are quite different, it is more C.C.
0.00 0.00 0.00
appropriate to discuss the counter performance on 0.61 ± 0.94 ± 0.69 ±
P.C.
them separately. In the experiments, we compared the 0.29 0.06 0.20
proposed counter (P.C.) with the Clono-Counter (C.C.) Overall A.C.
0.44 ± 0.68 ± 0.44 ±
[4] which is reported by Niyazi in 2007, and the 0.24 0.24 0.13
0.00 ± 0.00 ± 0.00 ±
automatic counter (A.C.) proposed in our previous C.C.
0.00 0.00 0.00
study [11]. For chromatic images, the precision values P.C. : The proposed counter
of the A.C. and C.C. methods are 0.97±0.03 and A.C. : Automatic counter [11]
C.C. : Clono-Counter [4]
238
also exists a lot of noise on the plate such as bubbles,
3.3. Splitting clustered colonies small scratches, and small markers. Some round-
shaped small objects are very similar to the colonies
In the process of detecting colonies, there exist and sometimes it is hard to distinguish them from real
some clustered colonies that need to be further divided colonies even by trained human eyes. This makes the
into separate colonies. As mentioned earlier, we adopt colony isolation task extremely difficult. In this paper,
the Watershed algorithm to deal with this problem and we address those challenges and demonstrate a
found it useful in separating connected colonies in our reasonable performance in both color and clear
experimental results. We give an example of the medium images.
splitting result of Watershed algorithm in Figure 5. The above features also make our proposed method
In our experiment, we checked the performance of very flexible and attractive to laboratories. In addition,
the Watershed algorithm on 19 segments with our proposed counter operates automatically without
clustered colonies which actually contain 98 colonies. any human intervention, and the performance is very
After applying the watershed algorithm, we obtain 96 quite promising for both color and clear medium.
colonies. Only 2 overlapped colonies are missed in the In the future work, we plan to detect and distinguish
splitting process. different species of bacteria from a single colony
dish/plate. Ultimately, our goal is to accurately classify
different kinds of bacterial colonies and produce the
correct count for each class, which could greatly
benefit clinical studies.
5. Acknowledgement
This research of Dr. Zhang is supported in part by
NSF DBI-0649894.
239
[7] V. Luc and S. Pierre, “Watersheds in Digital Spaces: An
Efficient Algorithm Based on Immersion Simulations,” IEEE [11] C. Zhang and W.-B. Chen, “An Effective and Robust
Trans. Pattern Anal. Mach. Intell., vol. 13, pp. 583-598, Method for Automatic Bacterial Colony Enumeration,” in
1991. Proc. of the IEEE Intl. Workshop on Semantic Computing
and Multimedia Systems, in conjunction with the 2007 Intl.
[8] http://www.colifast.no/ Conf. on Semantic Computing, pp. 581-588, September 17-
19, Irvine, CA, USA, 2007.
[9] N. Otsu, “A Threshold Selection Method from Gray-
Level Histograms,” IEEE Trans. on Systems, Man, and
Cybernetics, vol. 9, no. 1, pp. 62-66, 1979.
240
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Chin-Tser Huang
Department of Computer Science and Engineering
University of South Carolina
huangct@engr.sc.edu
242
confidentiality, data authentication, integrity, and can retry the verification with subsequent values seqr +
freshness [11]. In SNEP, data confidentiality is 1, seqr + 2, seqr + 3, and so on, until a match is found
achieved by encrypting the data preceded with a or reaching seqr + l, where l is a predefined threshold
sequence number. The purpose of including of the selected by observing the length of the longest run of
sequence number in the encryption is to prevent an consecutive message losses that ever occurs in the past.
adversary from inferring the plaintext of encrypted If the sequence number inconsistency is due to message
messages if the adversary knows plaintext-ciphertext loss and the length of this message loss streak is less
pairs encrypted with the same key. However, if the than or equal to l, then the verification will succeed and
sequence number is transmitted along with each the receiver will set the sequence number it maintains
message, then more energy will be consumed. As to the value that passes the verification. However,
shown in Fig. 1(b), SNEP avoids this transmission although this solution can solve the problem caused by
overhead by requiring the sender and receiver to message loss, it cannot solve the problem caused by the
remember the same sequence number1. The sender DoS attack. In the case of a DoS attack, the receiver
attaches to the message a message authentication code will waste its energy to make l verifications without a
(MAC) that is calculated over the concatenation of the success.
encrypted data and the sequence number maintained by The second solution, which is also proposed in [11],
the sender, denoted seqs. When the receiver receives a suggests that if the verification of MAC fails, then the
message from the sender, the receiver can verify the sender and the receiver decide that they are out of
message’s integrity and freshness by calculating a synchronization and use a counter exchange protocol to
MAC of the message on its own, using the sequence resynchronize their sequence numbers. However, there
number it maintains, denoted seqr . Provided that the are two problems with the second solution. First,
sender and receiver are synchronized on their sequence executing the counter exchange protocol will incur
number, the result calculated by the receiver should be extra message transmission overhead and can open a
consistent with the MAC attached to the message. Each potential venue for an adversary to disrupt the
synchronization between the sender and the receiver.
message from a sender A to a receiver B can be
Second, the adversary can still send fake or replayed
specified as follows:
messages to the receiver, causing unnecessary
A → B: data, MACMKAB(seqs || data) 2 resynchronizations between the sender and the receiver
and eventually leading to a DoS attack.
where MKAB is the MAC key shared between A and B.
In [11], the authors point out that there are two 3. The LOFT Protocol
problems with the approach of SNEP. First, if one or
more consecutive messages get lost, then the next We design a novel Low-Overhead Freshness
message received by the receiver carries a sequence Transmission (LOFT) protocol to address the anti-
number that is inconsistent with the one maintained by repaly requirement and avoid the problems associated
the receiver. Second, there is a potential denial-of- with the aforementioned solution. In our solution, the
service (DoS) attack in which an adversary keeps sender and the receiver still maintain a sequence
sending fake (or replayed) messages to the receiver. number, but unlike SNEP, which totally refrains from
Because in both cases the MAC carried in the received transmitting any sequence number in clear in the
message will not pass the verification, the two cases are message, our solution transmits only a less significant
indistinguishable to the receiver. portion of the sequence number bits in order to provide
There are two possible solutions to the above both energy saving and freshness proof.
problem. In the first solution, when the verification of a
message’s MAC fails with seqr, where seqr is the 3.1 Transmission of Less Significant Portion of
sequence number expected by the receiver, the receiver Sequence Number
1
In the original paper the authors propose that two counters are
shared by the two parties (one for each direction of communication).
Assume the sender and the receiver are synchronized
For simplicity, we consider only one direction; the other direction on a sequence number of n bits long. We denote the
can be inferred similarly. sequence number stored at the sender and the receiver
2
In SNEP, the authors use encryption to provide confidentiality,
but it is an add-on feature. For the sake of simplicity, here we
as seqs and seqr respectively. In the LOFT protocol, as
remove the encryption notation without loss of generality and focus illustrated in Fig. 1(c), the sender will send only m less
on the freshness transmission.
243
We discuss how the two aforementioned problems
(a)
seqs : transmitted that are faced by the SNEP approach are overcome by
our LOFT approach. First, if the received message
carries an inconsistent sequence number due to one or
more consecutive message losses, the receiver does not
(b)
need to retry with the subsequent sequence numbers
one by one as in the case of SNEP approach. Instead,
the receiver will first compute a MAC using the
seqs : not transmitted use seqr to concatenation of the m less significant bits of the
verify freshness
(c)
sequence number seqs, 0..m-1 received in the message and
seqs, 0..m-1: transmitted
the n-m more significant bits seqr, m..n-1 stored by the
receiver. If the computed MAC is the same as the
received MAC, the receiver will regard the message as
seqs, m..n-1: not transmitted use seqr, m..n-1||seqs, 0..m-1 intact and fresh and accept it. Otherwise, the receiver
to verify freshness
will increment the number represented by seqr, m..n-1 by
header
one, and compute a MAC using the concatenation of
sequence number
payload seqs, 0..m-1 and seqr, m..n-1+1. If the result still does not
match the received MAC, the receiver will retry with
Fig. 1 Different ways of freshness transmission: (a) the concatenation of seqs, 0..m-1 and seqr, m..n-1+2, and will
the trivial solution in which the whole sequence continue until a match is found. Second, if the received
number is transmitted, (b) the method used in SNEP, inconsistent sequence number is due to a DoS attack in
in which the whole sequence number is not which an adversary keeps sending fake (or replayed)
transmitted, and (c) the method used by LOFT, in
messages to the receiver, the receiver will also retry
which a less significant portion of the sequence
with the MAC computed using the concatenation of
number is transmitted.
seqs, 0..m-1 and seqr, m..n-1+i one by one since the second
case is indistinguishable from the first case. However,
significant bits (denoted as seqs, 0..m-1), where m < n, of no match will be found because the message is either
the sequence number along with each message. This fake or replayed. Therefore, a threshold th needs to be
way, the sender saves the transmission of the n-m more defined such that after trying th concatenations of
significant bits seqs, m..n-1 per message. The sender will sequence numbers, the receiver will decide that the
calculate a hash value over the concatenation of the message is illegitimate and stop the freshness
message header, all the n bits of the sequence number verification. It can be seen that th should be defined as
seqs, and the message payload, and attach the hash l / 2m, because when seqr, m..n-1 is incremented by 1,
value to the message. Each message from a sender A to the value of the concatenation of seqs, 0..m-1 and seqr, m..n-
a receiver B can be specified as follows: m
1 is increased by 2 .
244
cannot distinguish these replayed messages from the freshness of a message, it will first use the received
case of message loss, the receiver will also perform Bloom filter to test whether the message is one of the
multiple freshness checks. The difference is that the last w messages sent by the sender. If the result is no,
receiver will never find a match after performing l/2m the receiver can discard the message right away. If the
checks in vain. In order to mitigate the burden of extra result is yes, the receiver will proceed to perform
freshness check while enjoying the saving from freshness check because there is still a possibility of
reduced freshness transmission, we propose to use the false positive. In this way, the receiver can quickly
Bloom filter to address this problem. verify whether a received message is a legitimate
A Bloom filter is a space-efficient data structure message before proceeding to perform freshness check
designed to represent the membership of a set of data and determine the associated full sequence number of
items. We follow [2, 9] to give a brief overview of the the message. The application of a Bloom filter in
definition and mechanism of a Bloom filter. A Bloom LOFT is illustrated in Fig. 2.
filter for representing a set S = {e1, e2, ... , ew} of w
elements is described by a bit vector of v bits, initially
all set to 0. Associated with a Bloom filter is a set of k
independent hash functions h1, … , hk, each is assumed 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0
to map each possible item in the universe uniformly to
the range {0, … , v − 1}. Note that these hash functions
are not required to be of cryptographic strength, so illegitimate likely legitimate likely legitimate
their computation is usually very efficient. To represent
the membership of an element e ∈ S, the bits hi(e), for Fig. 2 Bloom filter applied in LOFT.
1 ≤ i ≤ k, out of the m bits are set to 1. Note that a bit
can be set to 1 multiple times, but it will remain 1 after
the first time it is set, and once a bit is set to 1 it will The request for sending the Bloom filter and the
not be reset to 0. To check if an item x is in S, just Bloom filter itself can be piggybacked with normal
check whether all bits hi(x), 1 ≤ i ≤ k, are set to 1. If messages, so that no extra messages need to be sent and
not, then x is apparently not a member of S. If all bits their integrity is also protected. Moreover, it is easy to
hi(x) are set to 1, it can be assumed that x is in S, with a select appropriate values for v, w, and k so that the
possible false positive, in which item x is indeed not in savings from less transmitted sequence number bits are
S but all hi(x) are set to 1 thanks to other data items. retained. Note also that loss of a Bloom filter may
The probability of false positives is determined by the result in unnecessary freshness checks on a susceptible
relationship between v, w, and k. By selecting packet, but does not prevent correct communications
appropriate values for v, w, and k, the probability of a between the sender and the receiver.
false positive can be made sufficiently small so that it is
acceptable to the application in question. In particular, 4. Simulation and Analysis
it is shown in [9] that the minimal false positive rate
occurs when k = (ln 2) · (v/w). In this section, we analyze how to optimize the
A Bloom filter can be applied in LOFT as follows. number of transmitted less significant bits m in terms of
On the sender side, a Bloom filter can be used to transmission overhead and freshness check overhead.
represent every w messages. After w messages have It has been discussed in [3, 16, 18] that there is a
been sent, the sender will reset all the bits in the Bloom tradeoff between the transmission cost and computation
filter, and use it to remember the following w cost. In sensor networks, transmission operations have
messages. When there are not many fake or replayed been shown to consume much more energy than
messages in the sensor network, it is not beneficial to computation operations do. (The modeling of
enable the Bloom filter because of its own computation transmission energy consumption per bit of a
and transmission overhead. When the receiver has communication link can be found in [12].) Therefore, it
received too many messages that require multiple is our objective to reduce the amount of transmission at
freshness checks but end up being discarded because of the expense of some extra computations.
no match, the receiver can request the sender to enable To show the effectiveness and efficiency of LOFT,
the Bloom filter, and send the Bloom filter it maintains we use a Java program to simulate the transmission of
every w messages. Before the receiver checks the messages between a sender and a receiver. In order to
245
compare the performance of different freshness computation of 3 hash values as equivalent to one
transmission schemes, we inject cases of message loss freshness check, because the three hash functions used
and replay attacks into the simulated message are computationally much cheaper than a MAC
sequences. function.
The simulation is set up as follows. In each It is straightforward to analyze the transmission
simulation, a sequence of 10,000 messages is overhead in our simulation. The variations of LOFT
transmitted from the sender to the receiver. The respectively transmit 2 bits, 3 bits, and 4 bits of the
sequence number used in the simulation is 32 bits long. sequence number along with each message. These
In the simulated SNEP, no sequence number is translate to 2500 bytes, 3750 bytes, and 5000 bytes in
transmitted along with each message. In the simulated total when a sequence of 10000 messages is
LOFT, 2, 3, and 4 less significant bits respectively are transmitted. In contrast, SNEP does not transmit any
transmitted with each message. With a probability of byte of sequence number. Nevertheless, these numbers
0.1, 0.2, 0.3 respectively, one or more (consecutive) still represent a great reduction in freshness
messages can be lost in transit. Longer runs of transmission overhead compared to 40,000 bytes in the
consecutive message losses occur with smaller case when the full sequence number is transmitted
probability. We set the longest run of consecutive along with each message.
message losses to be 16, 32, and 64 respectively in Next, we consider the freshness check overhead in
different simulations. To illustrate what this setting our simulation. Fig. 3 shows the comparison of the total
means, in case the longest run of consecutive message number of extra freshness checks when the sequence
losses is 64, then when message loss or replay attack only contains message losses (up to 64 consecutive
occurs, the SNEP approach has to check up to 64 message losses), without any occurrence of replay
sequence numbers, the LOFT approach with 2 less attacks. From the figure we can see that when SNEP is
significant bits transmitted has to check up to 16 used, no bit of the sequence number needs to be
different concatenations, LOFT with 3 less significant transmitted, but much more extra freshness checks need
bits transmitted has to check up to 8 different to be performed due to message loss. LOFT with 2 less
concatenations, and LOFT with 4 less significant bits significant bits transmitted incurs some freshness check
has to check up to 4 different concatenations. This overhead. When 3 or 4 less significant bits are
setting allows us to compare the tolerance of different transmitted, the freshness check overhead is almost
schemes against message loss. For the replay attacks, negligible.
we assume that a replayed message is injected into the Fig. 4 shows the comparison of the total number of
sequence with a probability of 0.4, 0.5. 0.6 extra freshness checks when the sequence contains
respectively. These probabilities are set to be higher occurrences of both message loss (with a probability of
than the probabilities of message loss for two reasons. 0.1 and up to 64 consecutive message losses) and
First, in a replay attack, in particular a DoS-oriented replay attacks. In this figure we only show the
attack, the attacker usually wants to inject a lot of comparison between variations of LOFT because
replayed messages. Second, we want to test the SNEP requires much more extra freshness checks
performance of the Bloom filter-based scheme, which under replay attacks and will make the comparison
should only be enabled when the replay attack level is between variations of LOFT less clear. From this figure
high. The difference between the case of message loss we can see that when the Bloom filter-based scheme is
and the case of replay attack is that in a replay attack enabled and used with the variation in which 3 less
no match will ever be found, therefore the receiver has significant bits of sequence number is transmitted, the
to perform the maximum number of freshness checks number of extra freshness checks is largely reduced. In
required by each scheme. For the Bloom filter, we particular, when the probability of replayed messages is
simulate a 32-bit filter to represent every 8 messages, 0.6, the Bloom filter-based scheme will make less extra
and use 3 hash functions, namely RS hash function, freshness checks than the variation when 4 less
PJW hash function, and DJB hash function obtained significant bits of sequence number is transmitted.
from [10]. In each run of simulation we count the total However, the tradeoff for getting this reduction in extra
number of extra freshness checks performed by the freshness checks is the overhead of transmitting the
receiver on the sequence of messages (which means we Bloom filter.
do not count the freshness check on a legitimate
message). When the Bloom filter is used, we model the
246
10000
the two communicating sensor nodes using an
SNEP encryption key configured before deployment. For the
9000
LOFT w/ 2bits size of sequence number, we suggest to use 32 bits for
8000 LOFT w/ 3bits
LOFT w/ 4bits the full sequence number and transmit 3 less significant
7000 bits of the full sequence number along with each
#extra freshness check
70000
received message can be verified, thus protecting the
#extra freshness check
247
Behavior”, IEEE/ACM Transactions on Networking, [13] T. Roosta, S. Shieh, S. Sastry, “Taxonomy of Security
Vol. 7, No. 6, pp. 789-798, Dec. 1999. Attacks in Sensor Networks and Countermeasures,”
[2] L. Fan, P. Cao, J. Almeida, A. Broder, “Summary cache: Proceedings of First IEEE International Conference on
A scalable wide-area Web cache sharing protocol,” System Integration and Reliability Improvements,
Proceedings of SIGCOMM’98, 1998. December 2006.
[3] L. Ferrigno, S. Marano, V. Paciello, A. Pietrosanto, [14] P. Syverson, “A Taxonomy of Replay Attacks”,
“Balancing computational and transmission power Proceedings of the Computer Security Foundations
consumption in wireless image sensor networks,” Workshop VII, pp. 187-191, Jun. 1994.
Proceedings of the 2005 IEEE International Conference [15] H.-R. Tseng, R.-H. Jan, W. Yang, “An Improved
on Virtual Environments, Human-Computer Interfaces Dynamic User Authentication Scheme for Wireless
and Measurement Systems (VECIMS 2005), 2005. Sensor Networks,” Proceedings of IEEE Global
[4] L. Gong, “Variations on the Themes of Message Communications Conference (GLOBECOM 2007),
Freshness and Replay”, Proceedings of the Computer November 2007.
Security Foundations Workshop VI, pp. 131-136, Jun. [16] I. Wirjawan, J. Koshy, R. Pandey, and Y. Ramin,
1993. “Balancing Computation and Communication Costs:
[5] S. Kent and R. Atkinson, “Security Architecture for the The Case for Hybrid Execution in Sensor Networks,”
Internet Protocol”, RFC 2401, November 1998. Proceedings of IEEE SECON’06, 2006.
[6] S. Kent and R. Atkinson, “IP Authentication Header”, [17] K. H.-M. Wong, Y. Zheng, J. Cao, S. Wang, “A
RFC 2402, November 1998. Dynamic User Authentication Scheme for Wireless
[7] S. Kent and R. Atkinson, “IP Encapsulating Security Sensor Networks,” Proceedings of IEEE International
Payload (ESP)”, RFC 2406, November 1998. Conference on Sensor Networks, Ubiquitous, and
[8] J. McCune, E. Shi, A. Perrig, M. Reiter, “Detection of Trustworthy Computing -Vol 1 (SUTC'06), 2006.
Denial-of-Message Attacks on Sensor Network [18] Y. Xi, L. Schwiebert, W. Shi, “Preserving Source
Broadcasts,” Proceedings of the 2005 IEEE Symposium Location Privacy in Monitoring-Based Wireless Sensor
on Security and Privacy, 2005. Networks,” Proceedings of 20th International Parallel
[9] M. Mitzenmacher, “Compressed Bloom Filters,” and Distributed Processing Symposium (IPDPS 2006),
IEEE/ACM Transactions on Networking, Vol. 10, No. 2006.
5, Oct 2002. [19] T. Zia, A. Zomaya, “Security Issues in Wireless Sensor
[10] A. Partow, General Purpose Hash Function Algorithms, Networks,” Proceedings of International Conference on
http://www.partow.net Systems and Networks Communication (ICSNC'06),
[11] A. Perrig, R. Szewczyk, J. D. Tygar, V. Wen, and D. E. 2006.
Culler, “SPINS: Security Protocols for Sensor
Networks”, Wireless Networks, No. 8, pp. 521-534,
2002.
[12] J. G. Proakis, Digital Communications, 4th Ed. New
York:McGraw-Hill, 2001.
248
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Zhenwei Yu
World Evolved Services, LLC, New York
273
In our intrusion detection system, the architecture
is similar with the netted architecture, where every Base Station Sensor Node
sensor node will be equipped an intrusion detection ID Agent
agent (IDA). But no cooperation exists between two IDS Console
IDAs since no node can be trusted. Like the attacks Model Tuner PIDC
against the traditional wired networks, the attacks in
wireless sensor network could be inside attacks or
outside attacks. The outside attacks could come from LIDC
more powerful adversary nodes like laptop, while the
inside attacks might be launched by compromised
sensor nodes that have the legitimate access to the Figure 1. System block diagram
sensor network. Sensor networks are
application-oriented, the codes in the sensor nodes are 3.2. Audit data for LIDC
written in its ROM before the sensor network is
deployed. An adversary can physically capture a In the domain of intrusion detection for traditional
sensor node from a sensor network and reprogram it wired networks, comprehensive research works have
with extracted security sensitive data (such as id, key) been done on the audit data for intrusion detection.
and malicious codes. The subverted node could join Many system features were identified to be useful for
the senor network to attack the sensor network further intrusion detection. For example, 41 features were
as a compromised node. Unlike the traditional wired conducted on the network connection in the
network, where HIDS (Host based Intrusion Detection KDDCup’99 Intrusion Detection dataset [21].
System) can analyze the host features to detect However, due to the resource constraints of a sensor
whether the host is compromised or misused. We can node, there are only few features that could be used to
not expect to design a similar intrusion detection detection intrusion. Moreover, a sensor network will
component to report that its host node is compromised have its own application requirement and employ only
or misused because all original codes (including the necessary protocols. Thus not all of features
intrusion detection codes) in its ROM could be erased identified below could be available for one particular
or modified in such a compromised node. However, sensor network application.
we could design a similar Local Intrusion Detection The sensing component, processor, radio and
Component (LIDC) to analyze local features to detect energy provider are the core parts of a sensor node.
whether its host node is suffering attacks from other Beside the CPU usage, memory usage and changes on
malicious nodes. storage which have been identified to detect attacks in
One of the goals of intrusion detection is to stop HIDS for traditional wired networks, more features
any ongoing attacks if it is possible. Wireless sensor can be identified related to communication, energy
networks mainly rely on wireless broadcast and sensing to detect intrusion in sensor nodes.
communication with certain effective range, thus it is
possible to locate the inside intruder (subverted node) 3.2.1. Packet collision ratio. Packet collision occurs
and isolate it from the sensor network. To locate the when two or more neighbor sensor nodes try to send
subverted node, the intrusion detection system must packet at the same time through the shared
monitor some suspect nodes and identify subverted communication channel. Collided packets have to
nodes by monitoring communication activities of been discarded and retransmitted and waste the
neighbor nodes, which is the task of Packet based constrained energy. Collisions are handled by MAC
Intrusion Detection Component (PIDC) in our IDS. (Media Access Control) protocol. Scheduled protocols
However, the density of nodes in wireless sensor (such as TDMA-based LEACH [22] ) are collision
networks is usually high. Many WSNs related research free protocols and all transmissions are scheduled on
work were based on the network where each node had different time/frequency slots. However, adversary
eight or more neighbor nodes. If a PIDC has to nodes could break the schedule intended to attack the
monitor communication activities of its all neighbor sensor network. Contention based protocols (such as
nodes, it will cost too much its precious energy. Based CSMA based protocol [23] ) allocate the shared
on the analysis of the LIDC, the IPDC could monitor channel on-demand and employ some mechanism to
only one or couple of its neighbor nodes which could avoid the collision but accept some level collisions. A
be particular suspect nodes. The PIDCs in its good MAC protocol should archive relative low
watchdog nodes could cooperate together to identify collision rate when the sensor network works
the real subverted node. normally, thus abnormal high collision ratio indicates
The intrusion alerts are sent to the base station, the existence of adversary.
where the user may be able to verify some possible
intrusion. For some false alerts, the base station could 3.2.2. Packet delivery waiting time. In contention
do some tuning of the intrusion detection model to based MAC protocols, a packet will be buffered to
reduce further false alerts, and pass the tuning result to wait for the shared channel. The fairness of accessing
sensor nodes. The system block diagram of our shared channel of the MAC protocol will ensure the
proposed intrusion detection is shown Figure 1. waiting time of a packet in a reasonable level. The
statistic of waiting time could be used to detect some
attacks against the fairness of MAC protocol.
274
applications have different sensing reading report
3.2.3. RTS packets rate. To avoid packet collision, requirement. Some applications require each sensor
contention based MAC protocols adopt RTS/CTS node report its reading periodically. In these
mechanism. When the channel is idle, the sender is applications, if a sensor node couldn’t report its
required to send RTS (Request-to-Send) packet to the sensing reading following the desired interval, the
receiver, and the receiver acknowledges the CTS sensing component could be under attacks. Some other
(Clear-to-Send) packet. The sender starts to send its applications require each sensor node reports its
data after receives the CTS packet from the receiver. reading as the answer of the query from the base
This RTS/CTS mechanism could be attacked by station. Subverted node could query the sensing
sending lots of RTS packets to gain unfair channel or reading more frequently to exhaust the energy of
to exhaust the receiver’s energy. victim nodes.
3.2.4. Neighbor count. Sensor nodes have limited 3.3. Packet features for PIDC
radio transmission range, while the sensor network
could be very large. A large sensor network usually Packet based Intrusion Detection Component
employs a multi-hop routing protocol to (PIDC) analyzes the packets from a suspect node to
communication. Each sensor node maintains a know whether the suspect node is attacking the host
neighbor table to record its neighbor information (e.g. node. The following identified features are calculated
nodes id, link cost etc) to build its routing. Unlike the on the packets from the same sender (a suspect node).
mobile ad-hoc network (MANET), most of nodes in
sensor network are supposed to be stationary. The 3.3.1. Distribution of packet type. There are several
neighbor table should be stable in relative short period, packets to be transmitted over the air in the wireless
although new nodes could be added and existed node sensor network, such as sensing data, route update,
could be removed since fault or energy exhaust over a query/command from the base station, HELLO
long time. The change of its neighbor count could be packets. But the main purpose of a sensor network is
used to detect some attacks. For example, The Sybil to sense certain interesting information, thus the main
attack [24] is where a malicious node illegitimately part of the packets should be sensing data.
claims multiple identities and works as if it were many
nodes. 3.3.2. Packet received signal strength. In wireless
transmission, the sender radiates electromagnetic
3.2.5. Routing cost. In wireless sensor networks, a energy into the air through its antenna and the receiver
multi-hop routing protocol maintains a route table in picks up the electromagnetic wave from its
every node to route its packets. The route table mainly surrounding air through its antenna. The received
records the next node of the path from one node to signal strength (RSS) measures the energy of the
base station and its cost, such as hop count or latency. electromagnetic wave. To receive a packet correctly,
Attacks against routing protocol (such as the received signal strength must be greater than a
sinkhole/wormhole) usually broadcast fake routing threshold known as receiver sensitivity. The received
information to attract more packets to route to its signal strength gradually decreases as the distance
node. Monitoring the routing cost and analyzing its between the sender and receiver increases. The
change could be used to detect those attacks. distance between the sender and receiver can be
estimated according to the RSS and propagation
3.2.6. Power consumption rate. Sensor nodes have model. The estimated distance could be used to detect
constrained power. The components of the sensor the attacker with much powerful radio (such as laptop)
node, including processing unit, sensing unit and compared to the radio of the sensor node. In the other
radio, are designed to be powered off to save the hand, the received signal strength should decrease as
energy if it is possible. The node spends most of time the system runs since the energy of the sensor node
in sleep mode to extend the node life. Some proposed will be consumed. If the received signal strength
energy-aware routing protocols (e.g. SPIN) have increases, it is possible that the node identification was
access to the current energy level of the node and stolen by a powerful malicious node.
adapt the protocol it is running based on how much
energy is remaining. Some DOS (Denial of Service) 3.3.3. Sensing data arrival rate. There are two types
attacks aim at the limit power of the sensor nodes. For of sensor network applications according to how the
example, an intruder interferes the transmission to sensor nodes are driven to sense data. In the first
increase the collision ratio or send RTS packets flood applications, the sensor nodes are driven by some
to exhaust the victim’s energy. The power particular events. In this type of applications, the
consumption ratio could be monitored to detect such sensing data will arrive without any pattern. However,
attacks. Usually sensor node (e.g. MICA2/MICAz in the second type of applications, the sensor nodes
nodes) has its own resource manager which keeps sense the data every preset interval, i.e., driven by the
track of resource consumption including the power time. In those applications, either missing an expected
consumption. sensing data or receiving unexpected sensing data
identifies some abnormality of the target node.
3.2.7. Sensing reading report rate. Sensing is one of
the main functions of sensor nodes. Different
275
3.3.4. Sensing reading value changing ratio. Sensor magnitude of PC represents the confidence of the
networks are mainly used to monitor some prediction.
environment parameter, such as temperate, sound, Since the detection model consists of multiple
wind speed and so on. Some parameters will change binary classifiers, a final arbiter is needed to pick one
within a certain range in a short time. For those of the prediction results from those binary classifiers
applications, if the sensing reading value changes as its final prediction. The prediction confidence ratio
beyond the normal range, there may be some (PCR) based arbitral strategy [26] could be used in the
abnormality. final arbiter in our intrusion detection system for
wireless sensor network, because the computation
3.3.5. RTS packets rate. This feature is calculated on required by this arbitral strategy is very light and meet
the packets sent from the particular sender, the the constrained computational power of sensor nodes.
suspicious node. The PCR is defined by:
PCR = PC / MAX { PC 1 , PC 2 , … , PC m } (2)
3.3.6. Packet drop ratio. We have stated that a large
sensor network usually employs a multi-hop routing Where PC stands for prediction confidence on a
protocol to communication since sensor nodes have data record in test dataset while PC i stands for the
very limited radio transmission range. Most sensor prediction confidence on the ith data record in the
nodes also work as a route to forward its received training dataset with total m records. The prediction
packets. A subverted node could attack this confidence ratio based final arbitral strategy can be
forwarding function by dropping packets or selectively expressed as follow:
forwarding some packets. To calculate this drop ratio,
the host node must know the received packets and the i = { j | PCR j = MAX {PCR1 , PCR2 , …, PCRn }} (3)
forwarded packets of the suspicious node.
Where PCRj is prediction confidence ratio and
3.3.7. Packet retransmission rate. A packet could be computed by Equation (2), and the i is the index of the
retransmitted when the previous transmission is failed binary classifier whose prediction result is selected to
due to conflict. However, such retransmission be the final prediction result. We had built a detection
mechanism could be attacked. A subverted node could model for traditional network and evaluated it on
retransmit a packet multiple times to exhaust the KDDCup’99 intrusion detection dataset, which was
energy of the receiver or try to alter the aggregation constructed from the raw TCP data for a wired
value. Abnormal retransmission rate can be used to local-area network (LAN) simulating a typical U.S.
detect intrusion. Air Force LAN. The performance of the detection
model on the test dataset was better than the winner of
3.4. Detection model and optimization the KDDCup’99 classifier contest [26].
However, the relationships among rules are not
We would like to apply a machine learning explored and rules in the model are disjunctive in
algorithm called SLIPPER [25] to build the detection default. Therefore, at least one condition in every rule
model. The model will consist of multiple binary which has multiple conditions has to be evaluated on
classifiers, which includes a set of rules. SLIPPER is a every data to make the final prediction. In wireless
confidence-rated boosting algorithm, and each rule sensor networks, the CPU has limited computational
learned from its training dataset might not have very power and the sensor node has constrained energy, so
high prediction accuracy on new data. However, the it is desired to optimize the rule evaluation procedure
predictions based on the entire set of rules are to reduce unnecessary computation. Rules are in
expected to be highly true. A rule R in binary classifier IF-THEN form. Most of rules have one or more
is forced to abstain on all data records not covered by conjunctive conditions (see rule examples in Figure 2).
R, and predicts with the same confidence CR on every Each condition consists of a feature name, an operator
data record x covered by R. The confidence CR was and a reference value. For example, “Service = telnet”,
calculated when the rule was built in the training “SourceBytes <= 147”. Some conditions in different
phase. A default rule which covers all data has rules could have same features. To optimize the
negative confidence, while all other rules have detection model, we will explore the relationship
positive confidence. The binary prediction engine is among those conditions with same features while
same as the final hypothesis in SLIPPER [25], which ignore any possible relationship among different
is: features since we assume the features are independent.
Among those conditions with the same features, we
H ( x) = sign( ∑R :x∈R C R )
t t t
(1) realize that two kinds of relationships could be used to
optimize the rule evaluation procedure. The first
In other words, the final hypothesis sums up the relationship is mutually exclusive relationship among
confidence values of all rules that cover the data and conditions such as “Service = login” and “Service =
the sign of the sum represents the predicted class label. ftpdata” where these two conditions couldn’t be true at
However, our binary prediction engines will output a the same time. The second relationship is implicit
signed sum of the confidence values of all rules that relationship between conditions such as “Duration >=
cover the data (not just the sign). We refer this 134” and “Duration >= 67” where the former implies
signed sum to prediction confidence (PC). The the latter. For conditions with mutually exclusive
relationship, at most only one condition could be true,
276
while all other conditions must be false. So when these R3, ). The structure shown in Figure 3 can be stored in
conditions are evaluated one by one, as long as the text mode as:
true condition is evaluated, the evaluations on ( ( , NumFiles >= 1 , R3, ), Service = ftpdata, ( ( ,
remained conditions with mutually exclusive
relationship could be skipped. These conditions with Duration >= 134 , ( , DstHostErrRate <= 0, R4, ), ),
mutually exclusive relationship could be ordered DstBytes<=5, R2, ), ( , Service = login , ( , Duration
further by its possibility to be true if such information
is available. For example, the feature “Service” is >= 134, (R1, DstHostErrRate<=0, R4, ), ( , Duration
expected more likely to be “ftpdata” than to be
“login”, so the condition “Service = ftpdata” should be >= 67, R1, ) ), ( , Duration >= 134 , ( , DstHostErrRate
evaluated earlier than condition “Service = login”. For <= 0, R4, ), ))).
conditions with implicit relationship, the implied
condition (“Duration >= 67”) should be evaluated only
if the implying condition (“Duration >= 134”) is 3.5. Model tuning
evaluated to be false.
An intrusion detection system will alert possible
R1: IF Service = login, Duration >= 67. intrusions, however the alert could be false. The false
alerts are also anticipatable in our system. We have
R2: IF Service = ftpdata, DstBytes <= 5. developed a model tuning algorithm [27], which can
tune the model (rule’s associate confidence)
R3: IF NumFiles >= 1. automatically to improve its performance in the future
R4: IF Duration >= 134, DstHostErrRate <= 0. data. The tuning algorithm utilizes a property of the
binary classifier that only rules that cover a data record
Figure 2. A rule set with four rules contribute to the final prediction on this data record.
Our tuning algorithm changes the associated
confidence values to adjust the contribution of each
To utilize these relationships to optimize the rule to the binary prediction. Consequentially, tuning
condition evaluation, we organize conditions in all ensures that if a data record is covered by a rule in the
rules into a tree structure. Each node consists of a original model, then it will be covered by this rule also
condition to be evaluated and three child trees. The in the tuned model and vice versa.
left child tree (true child) will be evaluated when its When a binary classifier is used to predict a new
condition is true, while the right child (false child) tree data record, two different types of false predictions
will be evaluated when its condition is false. Of may be generated according to the sum of confidence
course, there are some rules such that none of its values of all rules that cover this data record. When
conditions has mutually exclusive or implicit the sum is positive, the binary classifier predicts the
relationship with any condition in other rules. The data record to be in the positive class. If this prediction
middle tree (unconditional child) is built on all is false, it is treated as a false positive prediction.
conditions from those rules, which will be evaluated When the sum is negative, the binary classifier
before its condition is evaluated. For example, we can predicts the data record to be in the negative class. If
organize the four rules listed in Figure 2 into a tree this prediction is false, it is considered a false negative
structure shown in Figure 3. prediction. Obviously, when the classifier makes a
false positive (FP) prediction, the confidence values of
those positive rules involved should be decreased to
avoid the false positive prediction made by these rules
on subsequent data. When the classifier makes a false
negative (FN) prediction, the confidence values of the
positive rules involved should be increased to avoid
false negative predictions made by these rules on
successive data. Formally,
p ⋅ C R if rule R → FP
contributes to
C R′ = (4)
q ⋅ C R if rule R → FN
contributes to
277
experiments showed that the system could achieve sensor network in [9]. Total 9 traffic related features
about 20% improvement with quick tunings while based on AODV (Ad hoc On-demand Distance Vector
only 1.3% of the false predictions were used to tune [28]) routing protocol were identified to describe the
the model [27]. conditions of the traffic flow through the node. Three
Due to the limited computation power of the non-traffic related features were selected to monitor
sensor node, the model tuning function is separated changes of the path to the base station. The proposed
from the detection agent logically and physically. The system adopted a fixed-width clustering algorithm,
model tuner with the system console is resident in the which had been applied for anomaly detection in IP
base station. To tune the model of a particular sensor network.
node, the system must keep a copy of detection model Attacks against on MAC protocol in wireless
for every intrusion detection agent. Only the tuned sensor networks were studied and classified into
results will be delivery from the base station to save collision attack, unfairness attack and exhaustion
communication cost. attack in [10]. Three statistics collision ratio, packet
waiting time and RTS packet ratio were identified as
4. Related Work intrusion indicators respectively. The probability of
particular attacks was calculated by a soft decision
The general guidelines for IDS in sensor networks function along with an overall probability of attacks
were discussed in [5]. A hierarchical architecture of related to packet successful delivery ratio.
IDS was suggested, where the local agent monitors the A decentralized high-level rule-based IDS model
node local activity to detect intrusions and the global was proposed in [11]. All IDS functions, from data
agent monitors the packets sent by its all neighbors to acquiescing to analyzing, are implemented in monitor
detect attacks. nodes. Only intrusion alerts are sent to the base
A centralized detection algorithm against station. Seven high level rules (interval rule,
sinkhole/selective forwarding attack was proposed in retransmission rule, integrity rule, delay rule,
[6]. The base station identifies a list of suspicious repetition rule, radio transmission range rule and
nodes by detecting data inconsistency use a statistical jamming rule [11]) were defined to detect intrusions.
method. Then the base station can estimate the attack This IDS performs analysis on data message listened
area where the sinkhole node locates. A requested to by the monitor node that is not addressed to it and
network data flow message will be sent by the base message collision when the monitor node tries to send
station to the nodes in attack area with the suspicious a message. After messages are collected in
node IDs. All suspicious nodes will reply this request promiscuous mode and the important information is
with its network flow information including its ID, filtered and stored, a sequent rule-matching procedure
next-hop ID and cost. The network flow information is executed on every message. The order of rules
can be represented by a directional edge from source depends on the message type. When a rule fires on a
ID to its next-hop ID in a base station. The base message, the rule-matching procedure will stop and
station will realize routing pattern by constructing a the message will be discarded to save the storage
tree using these direction edges. An area invaded by a space. Instead of reporting an alarm on attack, a
sinkhole attack processes special routing pattern where failure counter is incremented when a rule fires on a
all network traffic flows toward the same destination, message. An attack is alerted only if the counting
the root in the tree of network flow, which is failure number is greater than an expected value by the
compromised by the intruder. monitor node during the analysis of messages
A specification-based network intrusion detection transmitted on its neighborhood in a round. This
system principally against the sinkhole/selective expected number is calculated dynamically by the
forward attack was presented in [7]. A rule specifies monitor node according to the failure history for each
that a normal node should forward the packets at a rate node in its neighborhood.
over a threshold. Otherwise, the node could be The intrusion detection problem in WSN was
abnormal. For a link A->B (Node A sends packets to formulated as a non-cooperative two-player
Node B), Node A and the watchdog nodes of link nonzero-sum game between the intrusion detection
A->B monitor the behavior of node B and make the system and the attacker in [12], [13]. The basis is that
decision cooperatively through a majority-vote policy. in non-cooperative games there exist sets of optimal
To identify an intruder impersonating a legitimate strategies (so-called Nash equilibrium) used by the
neighbor, a low-complexity anomaly detection players in a game such that no player can benefit by
algorithm was proposed in [8]. A sensor node recorded unilaterally changing his or her strategy if the
the arrival time and received power of each incoming strategies of the other players remain unchanged. The
packet for last N packets from each neighbor. A relationship between an attacker and the IDS is
simple dynamic statistical model (the min and max of non-cooperative in nature because no outside authority
received power, the packet arrival rate on last N could assure any agreement between an attacker and
packets and on last N2 packets) was built. The simple the IDS. The proposed IDS is able to monitor all
statistical model was used to detect any abnormality sensor nodes, but due to system limitations it can only
by monitoring received packet power level and packet protect one sensor node at each time slot, and based on
arrival rates from a neighbor node. a game theoretic framework it will choose such a
An unsupervised anomaly detection technique sensor node (called cluster head) for protection.
was proposed to detect routing attacks in wireless
278
5. Conclusion and Future Work [12] A. Agah, S.K. Das, S.K. and K. Basu, “A
Non-cooperative Game Approach for Intrusion
In this paper, we presented a framework of a Detection in Sensor Networks”, IEEE Vehicular
machine learning based intrusion detection for Technology Conference (VTC), fall 2004.
wireless sensor network. In our system, each sensor [13] A. Agah, et al., “Intrusion Detection in Sensor
node will equip a detection agent. The detection agent Networks: a non-cooperative game approach”, the 3rd
will analyze the local data and packet data from IEEE Int. Symp. on Network Computing and
suspicious node to identify an intruder. When the user Applications, (NCA'04), 343-346, 2004.
found a false alert, the system can automatically tune [14] Online ATMEGA128L datasheet,
the model to improve its performance in the future http://www.atmel.com/dyn/resources/prod_documents/
data. In the future, we plan to set up an experiment doc2467.pdf, Jun, 2007.
environment to test our framework. [15] Online MICA2 datasheet,
http://www.xbow.com/Products/Product_pdf_files/Wir
6. References eless_pdf/MICA2 _Datasheet.pdf, Jun, 2007.
[16] Online MICAz datasheet,
[1] A. Perrig, et al., “SPINS: Security Protocols for Sensor http://www.xbow.com/Products/Product_pdf_files/Wir
Networks”, Wireless Networks, 8(5):521- 534, Sep. eless_pdf/MICAz _Datasheet.pdf, Jun, 2007.
2002. [17] C.Y. Chong and S.P. Kumar, “Sensor Networks:
[2] S. Zhu, S. Setia, and S. Jajodia, “LEAP: Efficient Evolution, Opportunities and Challenges”, Proc. of the
Security Mechanisms for Large-scale Distributed IEEE, 91(8):1247-1256, Aug. 2003.
Sensor Networks”, Proc. of the 10th ACM Conference [18] E. Shi and A. Perrig, “Designing Secure Sensor
on Computer and Communications Security (CCS '03), Networks”, IEEE Wireless Communications,
Oct. 2003. 11(6):38-43, Dec. 2004.
[3] J. Deng, R. Han, and S. Mishra, “A Performance [19] I. F. Akyildiz, et al., “A Survey on Sensor Networks”,
Evaluation of Intrusion-tolerant Routing in Wireless IEEE Communications Magazine, 40(8):102-114, Aug.
Sensor Networks”, Proc. of the 2nd Int. IEEE 2002.
Workshop on Information Processing in Sensor [20] M. Tubaishat and S. Madria, “Sensor Networks: an
Networks (IPSN’03), Apr. 2003. overview”, IEEE Potentials, 22(2):20-23, Apr. 2003.
[4] J. Undercoffer, et al., “Security for Sensor Networks”, [21] http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.ht
CADIP Research Symposium, 2002. ml.
[5] R. Roman, J. Zhou and J. Lopez, “Applying Intrusion [22] W. R. Heinzelman, A. Chandrakasan, and H.
Detection Systems to Wireless Sensor Networks”, Balakrishnan, “Energy-efficient Communication
Proc. of the 3rd IEEE Consumer Communications and Protocols for Wireless Microsensor Networks,” Proc.
Networking Conference (CCNC 2006), Jan. 2006 Vol. of the Hawaii International Conference on Systems
1, pp. 640- 644. Sciences, Jan. 2000.
[6] E. Ngai, J. Liu, and M. Lyu. “On the Intruder Detection [23] A. Woo and D. Culler, “A Transmission Control
for Sinkhole Attack in Wireless Sensor Networks”, Scheme for Media Access in Sensor Networks,” Proc.
IEEE International Conference on Communications of the ACM/IEEE International Conference on Mobile
(ICC'06), Istanbul, Turkey, June 11-15, 2006. Computing and Networking, Rome, Italy, July 2001,
[7] K. Ioannis, T. Dimitriou and F. Freiling, “Towards pp. 221–235, ACM.
Intrusion Detection in Wireless Sensor Networks”, in [24] J.R. Douceur, “The Sybil Attack”, Proc. of the 1st Int.
13th European Wireless Conference, Paris, France, Workshop on Peer-to-peer Systems (IPTPS ’02), Mar.
April 2007. 2002.
[8] I.Onat, A. Miri, “An Intrusion Detection System for [25] W. Cohen and Y. Singer, “A Simple, Fast, and
Wireless Sensor Networks”, IEEE International Effective Rule Learner”, Proc. of 16th national
Conference on Wireless and Mobile Computing, Conference on Artificial Intelligence and 11th
Networking and Communications, 2005. Conference on Innovative Applications of Artificial
(WiMob'2005), V. 3, Aug. 2005, pp. 253 – 259. Intelligence, Orlando, Florida, pp.335-342, July 1999.
[9] C. E. Loo, M. Y. Ng, C. Leckie and M. Palaniswami, [26] Z. Yu and J. Tsai, “An Efficient Intrusion Detection
“Intrusion Detection for Routing Attacks in Sensor System using Boosting Based Learning Algorithm”,
Networks”, International Journal of Distributed Sensor Int'l Journal of Computer Applications in Technology
Networks, Vol. 2, No. 4, October-December 2006, pp. (IJCAT), Vol. 27, No. 4, pp.223–231. 2006.
313-332. [27] Z. Yu, J. Tsai and T. Weigert, “An Automatically
[10] Q. Ren; Q. Liang, “Secure Media Access Control Tuning Intrusion Detection System”, IEEE
(MAC) in wireless sensor networks: intrusion Transactions on Systems, Man, Cybernetics, Part B,
Detections and Countermeasures”, 15th IEEE Vol. 37, No. 2, pp.373-384, April 2007.
International Symposium on Personal, Indoor and [28] C. Perkins and E. Royer, “Ad-hoc On-Demand
Mobile Radio Communications (PIMRC 2004), Sept. Distance Vector Routing”, Proc. of the 2nd Workshop
2004 Volume 4, pp. 3025 – 3029. on Mobile Computing Systems and Applications
[11] A.P. Silva, et al., “Decentralized Intrusion Detection in (WMCSA'99), February 1999, pp. 90-100.
Wireless Sensor Networks”, Proc. of the 1st ACM Int.
Workshop on Quality of Service and Security in
Wireless and Mobile Networks, 16-23, Oct. 2005.
279
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
2. Related Work
250
roaming relationships. Thus, if a domain has roaming list from the home CA to verify the authenticity of the
agreements with ‘m’ other domains, the AAA server of certificates.
the domain carries ‘m’ corresponding certificates. The In a different approach, as suggested in [4], the MN
certificate issued by a partnering domain is known as a could delegate the validation of the foreign domain’s
Roaming-Certificate. certificate to a trusted third party. The MN only needs
In a similar work by Long, Wu, & Irwin [13], pub- to be sure of the revocation status of the trusted third
lic-key certificates are used for localized authentication party.
without connecting to the home network of the MN as However, if there is no direct trust relationship be-
the certificate proves the identity of the MN. As shown tween the home domain and the foreign domain, both
in Figure 3, the AAAF stores certificates issued by the MN and the foreign domain require a chain of certifi-
CA of every domain it has roaming relationships with. cates with a common root CA as the trust anchor be-
A MN belonging to the home domain carries with it a tween them. The construction of this certificate path
certificate issued by its home domain’s CA. It uses this requires certificate retrieval from several CAs until a
certificate, H<<MN>> to authenticate at foreign do- trust anchor is reached, which causes long delays in the
mains that have trust relation with its home domain. authentication process.
For mutual authentication, AAAF also sends the
roaming-certificate H<<F>> to MN to prove its iden- 2.2. Media-Independent Pre-Authentication
tity, which the MN verifies using the public key of its (MPA)
home domain.
MPA [6] is a pre-configuration and pre-
Home authentication scheme that is executed by a MN to a
Domain (H)
target network before the actual handoff takes place. It
AAAH CA
can be used to enhance the performance of existing
mobility protocols by proactively performing layer 3
and layer 4 associations and bindings before the actual
H<<F>> handoff takes place, thereby saving time for these op-
erations that usually only take place after the layer 2
Foreign
Domain (F)
association.
H<<MN>> MPA is successful only when the MN can detect
deteriorating signal strength and then have enough time
AAAF to discover and select candidate networks to connect
to, and initiate pre-authentication and pre-configuration
MN
procedures with the candidate network. However in a
highly mobile scenario, pre-authentication steps might
be broken abruptly which is undesirable.
Figure 3. Certificate based authentication 2.3. Shadow Registration
There are a few difficulties associated with public In the Shadow Registration method [11], a security
key certificates regarding certificate validation. Both
association is established between a MN and every
MN and AAAF must validate each other’s certificates
neighboring wireless network’s AAA servers before
during mutual authentication. This involves verifying
the MN handoffs to one of the regions. This procedure
the CA’s signature on the certificates and checking operates like the shadow as one walks, thus the name –
their revocation status. If the MN’s and foreign do-
shadow registration. The registration will already be
main’s certificates are signed by the CA of MN’s home
completed when the MN moves to a particular cell, and
domain, the signature can be verified using the home
the only necessary AAA operations that are required
domain’s public key. However, the retrieval of the re- will be processed locally in the new domain without
vocation status requires communicating with the home
communicating with the MN’s home domain.
domain’s CA. Also, MN does not have network access
With a similar concept, Han et al. [8] have pro-
during the authentication phase to retrieve a revocation
posed Region-based Shadow Registration (RSR) which
list. Therefore, the AAAF and the MN can carry out tries to increase the efficiency of Shadow Registration
the authentication protocol without checking the revo- by performing a Shadow Registration only when the
cation list. Once MN is authenticated and gets network MN moves to a section with high probability of hand-
access, both MN and AAAF can retrieve the revocation off.
251
2.4. Optimistic Access cated in the previously connected wireless domain.
Thus, in cases where the newly connected domain has
Aura and Roe [3] have proposed the Optimistic trust relations with one of the MN’s previously con-
Access scheme of network access control to minimize nected domain but not with its home domain, the MN
authentication delay. Instead of executing a stronger may utilize proof tokens to authenticate itself. If the
higher-delay authentication mechanism during the newly connected domain has direct trust relations with
handoff process, the MN is granted optimistic access to its home domain, it can use the certificate issued to it
the new network. The strong authentication is delayed by its home domain’s CA.
until the handoff is actually completed. In the proposed method, accounting messages are
When the MN handoffs to a new network, a faster sent to the home domain only after the authentication
but weaker authentication takes place, and after it is process is complete. The MN thus gets a quicker net-
successful the MN is authorized for an optimistic ac- work access with local authentication, which provides
cess to the new network. When the layer 2 handoff better seamlessness than existing methods.
process is complete, the MN must be involved in a new The fields of a proof token resemble the fields of an
stronger authentication to continue using the resources X.509 certificate but the interpretations are modified as
of the new network. shown in Table 1. The proof token is signed by the
The weaker authentication mechanism does not re- issuer using its private key for integrity protection.
quire any communication with the home network of
the MN, thus making the optimistic access a fast au- Table 1. The Proof Token
thentication mechanism. However, security can be eas-
ily compromised with optimistic access, and it might Version Number
be suitable only for private networks where users are
Serial Number
more trustworthy. For less secure applications, opti- Uniquely assigned by the Issuer
mistic access is not recommended as it creates a win-
dow of opportunity for malicious users to try to exploit Signature Algorithm
vulnerabilities. Thus, authentication using optimistic Signature Algorithm ID used by the Issuer
access is a tradeoff between security and performance. Issuer
The Distinguished Name of the Issuing Domain
3. Proof Token Based Authentication
Not Valid Before
Date & Time of Authentication
A proof token binds a subject’s identity with a pub-
lic key as a digital certificate does. Additionally, a Not Valid After
proof token also proves the fact that the subject was Date & Time after which the token is not valid
successfully authenticated at the issuer’s domain at the Subject’s Name
time it was issued. The Distinguished Name of MN
The proof token method of authentication is an al-
Subject’s Public Key Algorithm
ternative to other authentication methods which in- The algorithm used by MN’s public key
volves the participation of the home domain. In this
method, whenever a MN successfully authenticates in Subject Public Key
a wireless domain using any of the authentication me- The public key of MN
thods, it requests and obtains a proof token from the Signature
AAA server in that domain, which proves the fact that Signature over the entire message signed by the issuer
the MN was successfully authenticated in that domain
at that time. Similarly, the MN carries with it proof The proposed EAP method for the Token Based au-
tokens issued by all the visited domains in a structure thentication, called the EAP-Token method is essen-
called the ‘token store’, which also contains the corre- tially based on the industry standard EAP-TLS method
sponding certificates of the issuing domains, and a list [2]. It differs from EAP-TLS in that instead of the MN
of distinguished names of roaming partners of the issu- presenting a fixed X.509 certificate issued by a root
ing domains. CA, it presents a proof token issued by a foreign do-
Once the MN moves to another wireless network in main it has recently visited and with which the current
a different domain, it has to re-authenticate with the domain also has roaming relations with. Another dif-
new domain’s AAA server. To decrease the re- fering point is that the AAA server carries with it a
authentication delay, the MN may present a proof to- number of roaming-certificates instead of a single cer-
ken proving the fact that it was successfully authenti- tificate issued by a root CA. The roaming-certificates
252
are issued by other wireless domains with which it has the figure as it is operates in the EAP pass-through
roaming relations with. The roaming-certificate binds mode.
the AAA server’s identity with its public key. The Similar to EAP-TLS, the MN initially sends a Cli-
AAA server of each domain carries with it ‘m’ number entHello message identifying the protocol version,
of cross-certified certificates from its ‘m’ roaming cryptographic algorithms to use and a random number
partner domains. The MN will use this public key to to use as a nonce. The MN next sends a list of domain
authenticate the AAA server and to encrypt the pre- names which it has visited recently, and for which it
master secret. possesses a proof token in a DomainList message.
For authentication of the MN, we require a com- The DomainList message includes the X.500 Dis-
mon certificate authority as a trust anchor between the tinguished Name (DN) of its home domain and a
MN and the visited domain. A mechanism is thus re- sorted list of DNs of visited domains. The list is sorted
quired to find a common domain between all domains so that the AAA Server may use the roaming relation-
the MN has visited and obtained a proof token from, ship of the domain which is closest to MN’s home do-
and all the domains the currently visited domain has main in the trust path as shown in Figure 5.
roaming relationships with.
To find out which proof token to use, the MN sends
a list of all visited domain’s Distinguished Names in a
message called DomainList after sending the initial
ClientHello message. The AAA server chooses a
common domain between MN’s visited domain list
and its roaming partner domain list, and sends the cor-
responding roaming-certificate. The rest of the mes-
sage exchange is same as EAP-TLS. Figure 5. MN moves through visited domains
253
Hello and ClientHello messages. If the AAA server is 4. Comparison
able to decrypt the PMK and complete the protocol, the
MN is assured about the authenticity of the AAA serv- In the proposed token based approach for inter-
er. domain authentication, the EAP-TLS method has been
The remaining messages exchanged are similar to extended to use tokens instead of certificates and a
EAP-TLS. The MN uses its private key to sign a hash token selection and a roaming-certificate selection me-
of all the messages exchanged up to this point and chanism has been added as described in the previous
sends it in a CertificateVerify message. The AAA serv- section. Exploiting trust relationships between various
er can verify the signature using the public key of the domains in a heterogeneous wireless network with the
MN as specified in the token. This proves the authen- help of tokens and roaming-certificates, mutual authen-
ticity of the MN. tication is performed between the MN and the AAAF
After sending the CertificateVerify message, the server without contacting the home domain.
MN sends the ChangeCipherSpec message which noti- The proof token based mechanism can be compared
fies the AAA server that all the messages that follow with the simple certificate based authentication as pro-
the ClientFinished message will be encrypted using the posed by Long, et. al. [13], MPA [6], Shadow Regis-
keys and algorithms just negotiated. Following this tration [11], and Optimistic Access [3]. In Table 2, the
message, the ClientFinished message is sent to verify comparison is shown in terms of the use of public key
the success of the key exchange and the authentication vs. secret key, mutual authentication support, privacy
processes. support, non-repudiation support, and the inter-domain
The AAA server then sends the final response to trust required. Shadow Registration and MPA does not
the MN with the ChangeCipherSpec and the Server- specify whether to use public key or secret key cryp-
Finished message. The ChangeCipherSpec message tography to use, and any one of them can be used.
notifies the MN that the AAA server will begin en-
crypting messages with the keys just negotiated and the Table 2. Protocol comparison: Security
ServerFinished message again verifies the success of
key exchange and the authentication processes. Public Key Mutual Privacy Non- Inter-Domain
Thus, after completing the EAP-Token method, vs . Secret Authentication Repudiation Trus t
Key
both the MN and the AAA server authenticate each S ha dow Not Defined No No No F ull
R eg istra tion
other’s identity and obtain master keys to derive fur- MP A Not Defined Yes No No Inter-Dom a in
ther transient keys for data encryption and integrity Not required
Optimistic S ecret Key Yes Yes No F ull
protection. Since the EAP-Token method is based on Acces s
EAP-TLS with the only difference being the use of Long , e t. a l. P ublic Key Yes Yes Yes F ull
tokens and roaming-certificates instead of PKI certifi- P roof-Token P ublic Key Yes Yes Yes Well-
Connected
cates, our proposed protocol has all the security fea-
tures of EAP-TLS.
The use of EAP-Token can be beneficial for mobile For MPA to work, the current domain is not re-
nodes in future heterogeneous wireless networks to quired to have a trust relationship with the future do-
achieve fast re-authentication when roaming from one main. Only the MN needs to have trust relation with
domain to another. With increasing number of wireless the domain it is trying to connect to.
networks globally, it is infeasible to have one-to-one For the proof token method, the various domains
trust between them. However, if wireless networks are are required to have a well connected trust relation-
well-connected, an international traveler who roams ships. The various domains are not required to have a
across political and network boundaries can first con- one-to-one trust, but, the degree of separation from one
nect to a major operator in a foreign country which has domain to the other should be minimal. The essence of
roaming agreements with his home network and then well-connected domains is that if a MN has proof to-
get a proof token to establish a trust path to connect to kens of a few domains that it has visited recently, it can
other wireless networks which have roaming agree- use the proof tokens to authenticate in most of the oth-
ments with that major network operator. Once the trav- er domains it wants to visit.
eler hops around a few wireless networks, he should be In Table 3, a comparison is made with respect to
able to connect to most of the wireless networks in that the handoff type: intra or inter-domain, proactive or
country. reactive, fast, smooth, or seamless and the number of
required roundtrips to the home domain.
254
Table 3. Protocol comparison: Mobility 6. References
Intra-Domain or Proactive or Fas t, Roundtrips to [1] Aboba, B., & Beadles, M. (1999). The Network Access
Inter-Domain Reactive Handoff Smooth, Home Domain
Handoff Seamles s during Identifier. IETF RFC 2486.
Handoff Handover
S ha dow Both P roa ctive S e a mle ss 1 [2] Aboba, B., & Simon, D. (October 1999). PPP EAP TLS
R eg is tra tion Authentication Protocol. IETF RFC 2716.
MPA Both P roa ctive S e a mle ss 1
Optimis tic Both R ea ctive Not De fine d 0 [3] Aura, T., & Roe, M. (2005). Reducing Delay in Wireless
Acces s
Networks. SECURECOMM.
Long , e t. al. Both R ea ctive S e a mle ss 0
255
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
257
the previous proposed method to detect the possible text scale changes, the angle is the same. The search range is 40
region. This method is based on the contrast of the text and x 40 and the size of block is 5 x 5.
uses horizontal and vertical projection to localize the
possible text regions. After recognition of the videotext, the
regions have to be completed in the next step. Considering
to the edges in structural videos, we complete them in
advance to achieve the consistency. There are several edge
detection methods producing different types of edge, such as
sobel edge detector, canny edge detector and Laplacian of
Gaussian Edge Detection. When connecting the edge in
frames, only the thin edges with one pixel could be Fig. 3. The lost structural region in video.
connected well. In our evaluation, canny edge detector is
easy to achieve consistency due to its thin characteristic.
After obtaining the most similar pixel in reference
The comparison of Canny edge detector and Sobel edge
frame, we can illustrate the spline by temporal interpolation.
detector is shown in Fig. 2. In Fig. 2, the edge obtained from
The concept of generating the lost edge is shown in Fig. 4.
Canny edge detector represents the actual detail edges. The
In Fig. 4, the edge in the center frame is broken by the
edges obtained from Sobel edge detector is double hardly to
videotext represented as blank regions. The lost edge is
connect. Thus, the canny edge detector is applied in our
connected by this edge-pair comparison and completion
proposed video completion method.
algorithm with the two edges map in the reference frames.
After obtaining the edge, the lost edge shown in Fig. 3 Fig. 4. The concept of generating lost structural region in video.
is needed to connect. As described in Section 2, the
consistency of edges is sensitive for vision especially in 3.3 Region based gradient interpolation
temporal domain. Thus, keep consistency of edge in
temporal domain is a critical issue for video completion. After the obtaining the edge, it needs to recover the
When exploiting the temporal consistency, it needs to remaining spatial region. The neighboring information is
compare the edge in reference frame to obtain the trajectory. used to fill the lost region in our algorithm. The reason why
As for connecting edges with temporal consistency, the not use the information in other frames is described below.
edge-pair comparison algorithm is performed to recognize Firstly, there is a little difference in each frame. If the
the same edge in frames. This issue is related to the information in other frame is applied straightly, it is not
detection of local motion and global motion of pixels. suitable for vision. Secondly, the pixels in the lost region
Because the traditional local motion computational methods should have consistency with the neighboring region in the
such as optical flow detection have high complexity and same frame. Thirdly, it needs more computation and
need much computation to complete, thus we proposed a memory access to fill the remaining regions from other
low complexity edge-pair comparison algorithm for real- frames comparing with filling from the same frame. Based
time requirement. In our edge-pair comparison algorithm, on this consideration, the neighboring pixels in the same
without performing each pixel in the frame, pixels of edge frame are applied to fill the edge filled region.
are labeled as the interesting points to obtain the edges in
next frame. Comparing these pixels in frames, the same It is realized that the remaining region except edge in
edges in frames could be obtained. The matching criterion is Fig. 3 is a texture region without structural information.
Although there are some existing methods proposed to fill
α = υ2 + φ2 +τ 2 (2 ) the lost texture region, the complexity of these methods is
very high. In our view, the gradient information plays an
Where υ is the color space, φ is the angle of the important role on textural region and needs the consistency
gradient and τ is the magnitude of the gradient. Applying with the neighboring region. Besides the gradient, the order
the angle of the gradient is because that no matter what the of block to fill is also critical in successful inpainting
258
techniques. While some researchers decide this order as the The lost region could be completed by this approach
ratio of number of know pixels. But in our finding, we think with gradient consistency. Thus, the text regions of the
the gradient in the neighboring of unknown pixels is also whole sequence can be recovered and completed after being
important to this order especially in texture regions. The processed by our algorithm. The experimental results are
order of completion could be expressed as shown in Section 4.
Pr (Ψ ) = [G (ρ ), G (ρ ')] (3 )
4. Experimental Results
Where ρ and ρ ' is the neighboring pixels, G is the
The proposed algorithm is constructed on the PC
gradient. The gradient is normalized into 8 modes based on platform, and the development environment is Microsoft
the characteristics of texture regions. That means if the Visual Studio C++. All test video sequences are 720 x 480
successive neighboring points have the same mode of with 30 fps in YUV color space. The video sequences are
gradient, these points have high priority and are completed captured from the cable broadcast system. We acquire the
firstly. With this consideration, the gradient of pixels in lost video sequences from nine different TV program. To
region is resembled to the known pixels. recover the original regions occupied by scrolling videotext
After deciding the order of videotext completion, the in video sequence, we perform detection and recovery
pixels of lost regions are filled with gradient consistency. process at two frames per second to make sure the
The gradient consistency is inspired from the bi-cubic overlapping of the videotext. All operations are performed
interpolation where the outside pixels are completed by on the YUV color space. The outputs are recovered
inside pixels for zooming application. In bi-cubic sequences without videotext.
interpolation, the outside 16 points are obtained from inside General image processing is analyzed as the PSNR.
points. Based on this primary consideration, the regions But image reconstruction is not proper to use this evaluation
occupied by videotext could be completed if the occupied causing there is no true original video content for
regions are treated as the regions after zooming. But it may comparing. Thus, several simulation results and comparison
lose a lot of information applying so many points in bi-cubic are shown below for evaluating the performance of
interpolation for video completion. Thus, 4 inside points are completion. From our simulated video sequences, we
used to complete 12 outside pints in our method. The choose three kinds of video contents to evaluate our
neighboring pixels are filled in 8 directions as shown in Fig. algorithm. They are news program, drama and sports video.
5. The red pixel is the interesting point with a direction of The detail video database is shown in Table 1. The result of
gradient to represent the direction of 4 points and the yellow completed videotext region is shown in Fig. 6. The top row
pixels are known for patching. The outside points are is the original successive frames which structure is moving
completed with the gradient direction of the interesting in these 3 frames. The middle row is the frames in which
point and obtained from the known pixels. For example, if text is detected and removed. And the bottom row is the
the direction of gradient of the interesting point is in upper- completed videotext region. It shows that the regions have
right direction, the upper-right region containing unknown spatial and temporal consistency and been reconstructed by
pixels is completed from the region with the center in the our proposed approach.
upper-right yellow pixel.
For completing the structural regions, some
completions of structural regions are shown in Fig. 7. In Fig.
7, the performance of edge completion is shown in Fig. (b).
The top row is the edge of clothes and the bottom row is the
baseball field. The result of region completion after
performing our approach is shown in Fig. 7 (c). In Fig. 8,
the result of textural region completion is shown. Some
regions without edge are simulated to obtain the completed
result. Based on the consideration as described in Section 2
and 3, the results show that the edge could be connected
well and the textural region could also be completed well.
Fig. 9 is the completion of whole frame. Our algorithm is
not only applied for videotext removal but also for logo
Fig. 5. The direction of gradient filling. The light gray region is the removal.
unknown region and the remaining region is the known region.
To demostrate the performance of our proposed
algorithm in advance, we also compare with the method
proposed in [3] which used the characteristic of stroke for
videotext removal. The comparison is shown in Fig. 10. The
259
structure is reconstructed and better than [3]. That means
our approach has better performance especially in structural
regions. Because our proposed algorithm is based on the
consideration of the edge detection and the gradient method,
it can reach a better performance comparing with other
video completion algorithm.
(a) (b)
Table1. Database of the test sequences.
Video type Length Numbers of Frames with
Scrolling Videotext Scrolling Videotext
Daai (Drama) 1237 1 945
SET-TV(Drama) 1008 1 802
TVBS-G (News) 281 1 281
CtiTV (News) 1015 2 922
SET-NEWS 1358 1 933
TVBS (News) 320 2 302
ETTVS (News) 394 1 302
USTV (News) 610 1 610
Videoland (Sport) 204 1 196 (c)
Fig. 8. texture region completion.
5. Discussion
Based on our experimental result, the recovering rate is
determined by the resolution of the videotext and the
extraction performance. In the vertical scrolling videotext,
(a) Removal region (b)edge completion (c)region completion the background is often complex than horizontal ones.
Fig. 7. Structural region completion. Besides, the font size of the horizontal videotext is often
smaller than vertical ones. The proposed gradient based
completion algorithm could enhance the performance of
260
restoration for regions of vertical videotext. In the method for original image recovery for caption areas in
experimental result, the discrete videotext regions can be video,’’ in Proc. Conf. IEEE Syst., Man, Cybernet., '99.
recovered more accuracy because the ratio of neighboring [3] T. H. Tsai, C. L. Fang and H. Y. Lin, ‘‘Progressive
Videotext Regions Inpainting Based on Edge Detection and
regions is larger than a whole region. On the other hand, the Statistic Method,’’ in Proc. Int'l Multi Conf. on Engineening
whole videotext region has small neighboring regions, and and Computer Scientists. 2006.
the performance is worse than the discrete regions. [4] Marcelo Bertalmio, Guillermo Sapiro, Vicent Caselles and
Coloma Ballester.’’ Image Inpainting’’, in Proc. ACM Conf.
The larger region of videotext in video often decreases Comp. Graphics (SIGGRAPH), New Orleans, LA, July
the performance of completion. After completing the texture 2000.
[5] Antonio Criminisi, Patrick Pérez, and Kentaro
region, it sometimes has no consistency with neighboring
Toyama,‘‘Region filling and object removal by exemplar-
regions as shown in Fig. 8(b) because there is no edge at the based image inpainting’’, IEEE Trans. Image Processing,
boundary of hairs. If the edge detector could be improved to vol. 13, Issue 9, Sep 2004, pp. 1200 --- 1212.
detect more accurate edge, such a situation in Fig. 8(b) can [6] Manuel M. Oliveira Brian Bowen Richard McKenna Yu-
be completed well. Sung Chang, ‘‘Fast Digital Image Inpainting’’ in Proc. Conf.
on Visualization, Imaging and Image Processing (VIIP.
Considering the structural region, the structure could 2001), 2001, pp. 261-266.
[7] Wexler Y, Shechtman E, Irani M, ‘‘Space-Time video
be completed by the reference frame. If there is no similar completion’’ in Proc. of the IEEE Int'l Conf. on Computer
edge in the previous or next frame, more reference frames Vision and Pattern Recognition. 2004. 120-127.
will be compared. The maximum number of reference [8] Jiaya Jia, Yu-Wing Tai, Tai-Pang Wu, Chi-Keung Tang,
frames is 10. Besides, there is a static logo in videos ‘‘Video repairing under variable illumination using cyclic
sometimes. The removal of a static logo with a static motions’’ IEEE Trans. on Pattern Analysis and Machine
background is more complex because there is no temporal Intelligence, vol. 28, no. 5, pp. 832---83, May 2006.
information to keep consistency for completion. Although [9] Patwardhan, K. A, Sapiro, G, Bertalmio, M, ‘‘Video
Inpainting Under Constrained Camera Motion’’ IEEE
our experimental results only calculate the scrolling Trans. Image Processing, vol. 16, Issue 2, Feb 2007, pp.
videotext, static videotext lay on the boundary of the video 545 --- 553.
frame is also recovered by our proposed algorithm. It can be [10] T. H. Tsai, Y. C. Chen and C. L. Fang ‘‘A Comprehensive
removed well by our proposed algorithm as shown in Fig. 9. Motion Videotext Detection、 Localizaiton and Extraction
Method’’ in Proc. Int’l Conf. on Communications Circuits
and Systems, 2006.
6. Conclusions
In this paper, we propose an algorithm for motion
videotext region completion with temporal and spatial
consistency in digital video. It utilizes the previous proposed
videotext recognition method to localize the text region. The
information of edge is used to decide the completion method
employed due to its importance in temporal consistency. We
propose an edge-pair comparing method for the purpose of
connecting. The interesting pixels are moved to compare
and obtain the possible edge in reference frames. Then the
lost structural region is completed by temporal interpolation.
The remaining textural region is filled by the neighboring
pixels based on the direction of gradient and the order of
confidence. We choose versatile video contents to recover
the original images occupied by the text region. By our
proposed completion algorithm, the performance is higher
than the novel video completion algorithm from the
simulation results. No matter the videotexts are moved in
vertical, horizontal direction or in structural or texture
regions, our results reveal a good performance in subjective
simulation results.
References
[1] J. B. Kim, H. J. Kim, and S. Wachenfeld, ‘‘Restoration of
regions occluded by a caption in TV scene,’’ in Proc.
TENCON Conf., 2003.
[2] Byung Tae Chun, Younglae Bae, and Tai-Yun Kim, ‘‘A
261
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
281
Fig.2 Service workflow
MI has three main layers: Mobile information access
layer, Query Information Service (QIS) layer and 4.3 MRN routing protocols
Mobile relay layer. Mobile information access layer
provides multiple service access points for subscribers In the current coverage of typical network
of other application. QIS layer consists of information infrastructure, there are great amount of connection
processing servers and Queuing query server, AAA partitions in the networks according to network
(Authentication, Authorization, and Accounting) server. connection status. In MRN, mobile nodes for mobile
Mobile relay layer consists of RFID networks, devices relay fill the gap between there partitions. Cluster-
in home network, sensor networks, Wi-Fi, Internet, etc. sequence routing as Fig.3 is adopted [13].
MRN will provide message relay and seamless
handover among heterogeneous networks. The
architecture of the system can be described as the
following fig.1.
5. Performance evaluation
The second and following pages should begin 1.0
inch (2.54 cm) from the top edge. On all pages, the
bottom margin should be 1.2 inches (3.05 cm) from the
bottom edge of the page.
The feasibility of our work relies on how well the
Fig.1 Layered architecture MRN performs and how worthwhile the sophistication
of our techniques is. To evaluate the responsiveness and
4.2 Service work flow performance of MRN, We model the mobility of the
relay nodes in MRN as the transitions in Markov chain.
In the QIS service, the work flow diagram is shown The duration of the ON phase (Wake/Appear) and OFF
as Fig.2. The RFID_proxy server will forward the phase (Sleep/Disappear) follows an exponential
requests to correspondence server, RFID database distribution with parameter and respectively. As a result
server for example, after the authentication by the AAA of Markov property, the duration of the OFF state is
security server. The RFID database server maintains the exponentially distributed with mean E[TOFF] = 1/ µ
queuing status in service site by RFID middleware. The and the duration of the ON state is exponentially
dynamic situation will be monitored by the RFID distributed with mean E[TON] = 1/ λ . According to
network deployed in the service site. When the response the process of the MRN protocol, we get the packet
is echoed to the users, users can be informed by the delivery rate of the MRN as the following:
queue number or the recommended scheduling.
282
1.2
n N i N −i −1 (Tµ )k
⋅ ρ
Full_IP_Calc
1.0
Full_IP_Simu
QIS_MRN_Sim
PSucc = ∑ i (1 + ρ ) n
⋅ 1 −
∑ m
k!
e −Tµ m
Packet delivery ratio QIS_MRN_Calc i =0 k =0 ,
.8
where
ρ =µ m / λ m .
.6
When the packet arrives at the k-th hop, route node
.4
will compute the tentative emergency of the forwarding
to adjust the activity of the succeeding nodes.
.2 Supposing that the packet arrives at the k-th hop and
still n-k hop to go with consumed time Tk . The packet
0.0
delivery ratio should be no less than Pe(e.g. 80%), and
the duty cycle is designated before hand (e.g. 50%,
0.0 .1 .2 .3 .4 .5 .6 40%, 30%). The duty cycle is defined as the following:
Failure ratio 1/ λ
Dutycycle =
Packet delivery ratio vs. Failure ratio 1/ µ + 1/ λ .
Fig.4 packet delivery ratio vs. failure ratio The result of the computing is shown in the Fig.5.
The delta delay is defined as the error of the consumed
Self adaptation of sleep ratio at the Kth hop
delay differed from the average expected delay of the k
.05
hop forwarding which is as following:
Duty cycle 50% k
Duty cycle 40%
Duty cycle 30%
∑ t i − kT / N
i =1
.04
.03
of hops.
.02
6. Summary and conclusion
.01
In this paper, we present Mobile Intelligence (MI) to
develop delay tolerant RFID networks for enabling a
0.00 few logistics and supply chain operations. MI provides
-.6 -.4 -.2 0.0 .2 .4 .6
intelligent and ubiquitous information access, relay,
Delta Delay search and delivery over Mobile Relay Networks
Fig.5 Self-adaptive sleep scheduling (MRN) – a critical and ubiquitous infrastructure with
convergence of RFID, wireless and sensor networks,
An inhibition mobility model is developed where and IP networks. It leverages mobile nodes to “bridge
node can enter or leave certain unit section (or partition) the network gap” towards enabling delay tolerant
randomly. The entry and leave events are independent logistics and supply chain management. Performance of
with each other. Let the events follow the Poisson MRN for information relay efficiency via mobile nodes
stream process with parameter of m and m , the
µ λ is studied. Results valid the feasibility of our MI and
surface area of the roaming field be S, and let the MRN approach. Future work in this MI research
includes mobility pattern and impact study.
surface area of unit section be S h . The total number of
divided sections is W=[ S h /S] and the number of nodes References
is M. Let all the unit sections be of the same surface [1] C. Schurgers, V. Tsiatsis, S. Ganeriwal, and M.
area. The event can be seen as the node with the packet Srivastava, Topology Management for Sensor Networks:
enters a unit section and wait for another node to arrive. Exploiting Latency and Density. In Proc. ACM
Then the event is waiting for other nodes entering the MobiHoc Conf., June 2002.
section of the node holding the packet. The entry and [2] M. Nosovic, T. Todd, Low power rendezvous and
leave events follow the Poisson stream process with RFID wakeup for embedded wireless networks, In
µm Annual IEEE Computer Communications Workshop,
2000.
µ ' λ ' µ '
parameter of m and m , where m =
W ⋅ Cn2 ,
[3] P. Skraba, Hamid Aghajan, Ahmad Bahai, RFID
λm Wake-up in Event Driven Sensor Networks. Technical
λm ' = W ⋅ C n2 . report, U.C. Berkeley, 2001.
[4] A.G. Ruzzelli, R. Jurdak, and G.M.P O’Hare, On
Then the probability of successful N hop packet
the RFID Wake-up Impulse for Multi-hop Sensor
forwarding within T delay will be:
283
Networks. In Proc. of the 1st ACM Workshop on [8] S. Burleigh et. al., Delay-Tolerant Networking -- An
Convergence of RFID and Wireless Sensor Networks Approach to Interplanetary Internet, IEEE
and their Applications at the Fifth ACM Conference on Communications Magazine, June 2003
Embedded Networked Sensor Systems, Sydney, [9] Ocakoglu, O. Ercetin, O., Energy Efficient Random
Australia. November, 2007. Sleep-Awake Schedule Design. IEEE Communications
[5] V. Cerf et. al., Delay-Tolerant Networking Letters, 2006, 10 (7): 528~530.
Architecture, http://www.ietf.org/rfc/rfc4838.txt, Draft [10] M. Grossglauser and D. Tse, Mobility increases the
1.0, Oct 2003. capacity of ad hoc wireless networks, IEEE/ACM
[6] Wei Wang, Vikram Srinivasan and Mehul Motani, Transactions on Networking, 2002.
Adaptive Contact Probing Mechanisms for Delay [11] Chaintreau, P. Hui, J. Crowcroft, C. Diot, R. Gass,
Tolerant Applications, MobiCom07, September 9-14, and J. Scott, Impact of human mobility on the design of
2007, Montrol, Qubec, Canada. opportunistic forwarding algorithms, in Proceedings of
[7] Gunnar Karlsson, Vincent Lenders, and Martin May, IEEE INFOCOM, 2006.
Delay-Tolerant Broadcasting, IEEE TRANSACTIONS [12] J. Su, A. Chin, A. Popivanova, and E. d. L. Ashvin
ON BROADCASTING, VOL. 53, NO. 1, pp369-381, Goel, User mobility for opportunistic ad-hoc
MARCH 2007 networking, in Proceedings of IEEE WMCSA, 2004.
Kevin Fall, A Delay-Tolerant Network Architecture for [13] Tianle Zhang, Z. Li, M. Liu, Routing in Partially
Challenged Internets, SIGCOMM 2003, August 25-29, Connected Wireless Network. Journal of System
2003, Karlsruhe, Germany. Simulation, 2006, 18(10): 2972~2975.
284
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
263
The details of these functions available in WEKA could few training examples by minimizing a bound on the
be found in [19]. An important step of using a feature selec- empirical error and the complexity of the classifier at
tion method is to set up the stopping criterion, which deter- the same time. WEKA uses the Sequential Minimal
mines when the feature selection algorithm stops and con- Optimization (SMO) algorithm for SVM.
cludes that the subset found at that point is the best feature
subset. Some of the stopping criteria adopted by the feature • Naive Bayesian (Bayes).
selection methods in the literature are (i) complete search;
(ii) a threshold, such as minimum number of features; (iii) The Bayesian classifier is a statistical classifier, which
subsequent addition, such as in CFS; and (iv) classification has the ability to predict the probability that a given
error rate [14]. instance belongs to a particular class. The probabilis-
tic Naive Bayes classifier is based on Bayes’s rule and
2.2 Classification Algorithms assumes that given the class, features are independent,
which is called class conditional independence. In the-
ory, Bayesian classifiers have the minimum error rate
There are several categories of classifiers. Some of
in comparison to all other classifiers. However, this
them are trees, functions, Bayesian classifiers, lazy clas-
is not always the case in practice, because of the pre-
sifiers, rules-based, and meta-learning algorithms [19].
viously mentioned assumption. Even so, the Naive
The most popular classification algorithms in data mining
Bayesian classifier has exhibited high accuracy and
voted in [20] are C4.5 (trees), Support Vector Machine
high speed when applied to large databases.
(functions), Naive Bayesian (Bayesian), K-Nearest Neigh-
bor (lazy), Apriori (rules), and Adaptive Boosting (meta-
learning). Based on this fact, we chose to use the afore- • K-Nearest Neighbor (KNN).
mentioned classification algorithms in our experiments with The K-Nearest Neighbor algorithm is used under the
the exception of the association rule-based classification, as assumption that instances that are closer to each other
WEKA does not include an implementation for that clas- generally belong to the same class. Thus KNN is an
sifier. The following are the definitions of those classifiers instance-based learner. The testing sample is labeled
that are used in our experiments taken from [10]: according to the class of its first K nearest neighbors.
The weight is converted form the distance between the
• Decision Tree (C4.5). test instance and its predictive neighbors in the train-
C4.5 decision tree learner is a tree structure where ing instances. As new training instances are added, the
each non-leaf node represents a test on a feature, each oldest ones are removed to keep the number of training
branch denotes an outcome of the test, and each leaf instances at the size of K. The most common metric for
node represents a class label. The Decision Tree clas- computing the distance is the Euclidean distance. For
sifier became popular due to the fact that the construc- nominal data, the distance between instances accord-
tion of a decision tree classifier does not require any ing to a particular feature is 0 if their values are the
domain knowledge, and the acquired knowledge in a same and 1 otherwise.
tree form is easy to understand. In addition, the clas-
sification step of decision tree induction is simple and • Adaptive Boosting (AdaBoost).
fast. C4.5 uses the information gain ratio as its feature
selection measure. Besides the splitting criterion, an- Boost is a general strategy to improve the accuracy of
other interesting challenge of building a decision tree the classifiers. In boosting, weights are assigned to the
is to overcome the over-fitting of the data. To achieve training instances and a series of classifiers is itera-
that, C4.5 uses a method called pessimistic pruning. tively learned. WEKA includes the Adaptive Boosting
M1 method. One advantage of the AdaBoost is that it
• Support Vector Machine (SVM). is fast. It can be accelerated by specifying a threshold
Support Vector Machine is built on the structural risk for weight pruning.
minimization principle to seek a decision surface that
can separate the data points into two classes with a
3 The Proposed Framework
maximal margin between them. The choice of the
proper kernel function is the main challenge when us-
ing a SVM. It could have different forms such as Ra- The algorithm proposed in this paper achieves the goal
dial Basis Function (RBF) kernel and polynomial ker- of reducing the feature space of a semantic concept detec-
nel. The advantage of the SVM is its capability of tion system by applying Multiple Correspondence Analysis
learning in sparse, high-dimensional spaces with very (MCA) to multimedia feature data.
264
3.1 Multiple Correspondence Analysis the right singular vectors (expression level vectors) in the
(MCA) singular value decomposition (SVD) theorem. MCA will
provide the principle components using SVD as follows.
Multiple correspondence analysis (MCA) extends the 1 1
D− 2 (Z − M M T )(DT )− 2 = P ∆QT . (1)
standard Correspondence Analysis (CA) by providing the
ability to analyze tables containing some measure of cor- Finally, the multimedia data could be projected into a
respondence between the rows and columns with more new space by using the first and the second principle com-
than two variables [15]. In its basic format, a multimedia ponents discovered using Equation 1. The weight of the cor-
database stores features (attributes) and class labels for sev- relation between the different items and the different classes
eral instances such as frames, shots, or scenes, for example. can be used as an indication to the similarity between them.
If we consider the instances as the rows in the MCA table, Such similarity could be calculated as the inner product of
and the features (attributes) and class labels as the columns each item and each class, i.e., the cosine of the angle be-
of that table, we can see that when using MCA, the cor- tween each item and each class. Since the difference be-
respondence between the features and the classes could be tween an item and a class ranges from 0 to 180 degrees, and
captured, which could help us narrow the semantic gap be- the cosine function decreases from 1 to −1 for that range,
tween the low level features and the concepts (class labels) the higher correlated item and class would be the pairs that
in a multimedia database. project to the new space with a smaller angel between them.
MCA is used to analyze a set of observations described
by a set of nominal variables, and each nominal variable 3.2 MCA-based Feature Selection
comprises several levels. In general, the features that are
extracted from multimedia streams are numerical in their The proposed framework consists of several stages as
nature. Therefore, in order to be able to properly use MCA, can be seen in Figure 1.
the extracted quantitative features should be quantized into
bins in some manner. Assuming that there are I rows and K
columns in the MCA table, the nominal features will have
Jk levels, and the total number of items (bins) will be equal
to J. Therefore, if there are I data instances in a multime-
dia database, which are characterized by a set of low-level
features, after discretization (i.e., converting the numerical
features into nominal ones), there will be K nominal fea-
tures (including the classes), and each feature will have Jk
items (feature-value pairs).
Next, MCA will scan the discretized data to generate the
indicator matrix. The indicator matrix is a binary represen-
tation of the different categorical values. Each column in
this matrix represents a level (item) generated during the
data discretization process, while each row represents an
instance. The indicator matrix will indicate the appearance
of items using the value 1. For a specific instance, only
one level (item) can be present for each feature, and there-
fore each feature can only have one value of 1 in the indi-
cator matrix for each instance. Standard CA analyzes the
indicator matrix; while MCA calculates the inner product
of the indicator matrix, which generates the Burt matrix
Y = X T X, and uses it later for analysis. The size of the
indicator matrix is I × J, and the size of the Burt matrix is
J × J.
Now, let the grand total of the Burt matrix be N and
the probability matrix be Z = Y /N . The vector of the Figure 1. The Proposed Framework.
column totals of Z is a 1 × J mass matrix M , and D =
diag(M ). Furthermore, let ∆ be the diagonal matrix of
the singular values, the columns of P be the left singular First, the audiovisual low-level features are extracted
vectors (gene coefficient vectors), and the rows of QT be from the data. A total of 28 different features, including
265
11 visual features, 16 audio features, and 1 feature that rep- tive instances to the number of negative instances for each
resents the length of the shot are extracted. The normal- concept is listed in Table 1.
ization process is done right after the features have been
extracted. Next, we discretize the data in order to be able to • Vegetation: Shots depicting natural or artificial green-
properly use MCA, since all the features are numerical and ery, vegetation woods, etc.;
MCA requires the input data to be nominal. We discretize • Sky - Shots depicting sky;
the training data set first, and then use the same partitions
for discretizing the testing data set. Each interval of the dis- • Crowd - Shots depicting a crowd;
cretization is considered as an item.
Following that, MCA is applied to the discretized train- • Outdoor - Shots of outdoor locations;
ing data set and the angles between each item and each class • Face: Shots depicting a face.
are computed. As mentioned before, the angle between an
item and a class has been observed to quantify the correla-
tion between them, and therefore, we have decided to use Concept Name P / N Ratio
the angle as our stopping criterion for the proposed fea- Vegetation 0.12
ture selection algorithm. One possible threshold condition Sky 0.14
could be those items whose angle values are smaller than Crowd 0.28
90 degrees, but it may not be a good choice. In order to Outdoor 0.51
determine the proper angle threshold value, the angles gen- Face 0.96
erated by MCA for each concept are sorted in the ascending
order. We used the first big gap from the distribution of Table 1. Positive (P) to Negative (N) instance
the sorted angles before 90 degree as the lower boundary, ratio per investigated concept.
and used 90 degrees as the upper boundary. The average of
the angles falling into this range was used as our threshold
value. Based on this threshold value, the items which have We evaluated our system using the precision (Pre), recall
the corresponding angle values that were smaller than the (Rec), and F1-score (F1) metrics under the 3-fold cross vali-
threshold value were kept. This automatic procedure facil- dation approach, i.e., three different random sets of training
itates our proposed framework the capability of identifying and testing data sets were constructed for each concept. To
different angle thresholds for positive and negative classes. show the efficiency of our proposed framework, we com-
Therefore, we could always get enough best selected items pared its performance to the performance of the four differ-
to identify the positive class from the data set. ent feature selection algorithms using five different classi-
After the different items generated by the discretization fiers available in WEKA [2]. The average precision, recall,
stage are evaluated, the best features will be selected when and F1-score values of all the feature selection methods for
most of the items from a particular feature are kept. Fi- the aforementioned concepts are shown in Table 2 through
nally, the classification for the selected semantic concepts Table 6. These tables can be read as follows: columns 3 to 7
by using the aforementioned five well-known classifiers is represent the different feature selection algorithms we have
conducted. used. These algorithms are: Correlation-based feature se-
lection (CFS), Information gain (IG), Relief (RE), Principal
components analysis (PCA), and Multiple correspondence
4 Experiments and Results analysis (MCA). The rows represent the different classi-
fication algorithms used as follows: Decision tree (DT),
To evaluate the proposed framework, we used the news Support vector machine (SVM), Naive Bayesian (NB), K-
broadcast and movies provided by TRECVID [1]. Using nearest neighbor (KNN), and Adaptive boosting (AB).
23 video data as our testbed, we have chosen five concepts, We observe that SVM always yields zero precision and
namely vegetation, sky, outdoor, crowd, and face. These recall in those concepts with extremely imbalanced data,
concepts were taken from the list of concepts provided namely vegetation (ratio=0.12) and sky (ratio=0.14). This
for the TRECVID 2007 high level feature extraction task. is because when the class distribution is too skewed, SVM
We chose these concepts because (i) there are sufficient will generate a trivial model by predicting everything to the
amounts of instances to build useful training and testing majority class, i.e., the negative class. In the case of the
data sets for these concepts, and (ii) these concepts repre- Information Gain, Relief, and PCA methods, WEKA pro-
sent both balanced and imbalanced data sets, which allows duced a ranked list of the features without performing the
us to demonstrate the robustness of our framework. The actual feature selection. Due to this fact, we had to se-
concept names and their corresponding definitions from [1] lect the best stopping criteria. After an extensive empiri-
are discussed as follows. The ratio of the number of posi- cal study, we have set the stopping criteria for these three
266
CFS IG RE PCA MCA
Pre 0.00 0.00 0.00 0.00 0.17
DT Rec 0.00 0.00 0.00 0.00 0.01
F1 0.00 0.00 0.00 0.00 0.02 CFS IG RE PCA MCA
Pre 0.00 0.00 0.00 0.00 0.00 Pre 0.59 0.42 0.17 0.78 0.59
SVM Rec 0.00 0.00 0.00 0.00 0.00 DT Rec 0.06 0.04 0.03 0.05 0.08
F1 0.00 0.00 0.00 0.00 0.00 F1 0.11 0.07 0.05 0.09 0.14
Pre 0.00 0.35 0.28 0.13 0.38 Pre 0.00 0.00 0.00 0.00 0.00
NB Rec 0.00 0.03 0.02 0.01 0.09 SVM Rec 0.00 0.00 0.00 0.00 0.00
F1 0.00 0.05 0.04 0.01 0.14 F1 0.00 0.00 0.00 0.00 0.00
Pre 0.00 0.50 0.35 0.19 0.37 Pre 0.44 0.23 0.32 0.47 0.37
KNN Rec 0.00 0.05 0.04 0.06 0.11 NB Rec 0.20 0.31 0.13 0.10 0.47
F1 0.00 0.09 0.06 0.09 0.16 F1 0.28 0.26 0.17 0.16 0.40
Pre 0.00 0.00 0.00 0.00 0.33 Pre 0.51 0.50 0.41 0.36 0.47
AB Rec 0.00 0.00 0.00 0.00 0.01 KNN Rec 0.12 0.13 0.12 0.20 0.19
F1 0.00 0.00 0.00 0.00 0.01 F1 0.19 0.20 0.17 0.25 0.27
Pre 0.60 0.38 0.35 0.62 0.59
Table 2. Average precision (Pre), recall (Rec) AB Rec 0.02 0.03 0.02 0.04 0.06
and F1-score (F1) for “vegetation” over five F1 0.04 0.06 0.04 0.08 0.12
classifiers
Table 3. Average precision (Pre), recall (Rec)
and F1-score (F1) for “sky” over five classi-
methods as follows. We have calculated the average score fiers
of each of the previously mentioned ranked lists and used
this average value as a threshold for selecting the features,
i.e., those features that had a higher score than the average
value were selected as the best subset of features produced
by these three methods.
As can be observed in Tables 2 through 6, our proposed
framework achieves promising results compared to all the
other feature selection methods over all classifiers, espe- CFS IG RE PCA MCA
cially in the cases of the imbalanced data sets (i.e., vege- Pre 0.60 0.80 0.62 0.37 0.57
tation, sky, and crowd concepts). We can further observe DT Rec 0.19 0.10 0.19 0.16 0.23
that the recall values and the F1-scores for the proposed F1 0.28 0.15 0.28 0.22 0.32
framework are always higher over all the classifiers. This Pre 0.82 0.79 0.79 0.33 0.79
encouraging observation demonstrates the fact that the pro- SVM Rec 0.06 0.08 0.08 0.01 0.08
posed framework has the ability to help the classifiers to de- F1 0.11 0.15 0.15 0.02 0.15
tect more positive instances in the testing data set without Pre 0.49 0.49 0.48 0.48 0.46
misclassifying too many negative instances by identifying NB Rec 0.40 0.31 0.34 0.17 0.41
the best feature subset for each of the investigated concepts. F1 0.44 0.37 0.39 0.25 0.44
In addition, the proposed framework was able to reduce the Pre 0.46 0.60 0.55 0.43 0.48
feature space by approximately 50% for all the investigated KNN Rec 0.29 0.20 0.23 0.35 0.31
concepts in the experiments, which is considered a signif- F1 0.36 0.29 0.30 0.37 0.38
icant feature space reduction. This demonstrates that the Pre 0.63 0.76 0.77 0.66 0.64
proposed framework can better represent the semantic con- AB Rec 0.12 0.10 0.04 0.05 0.14
cepts using the reduced feature set. F1 0.19 0.16 0.07 0.09 0.22
267
imbalance data in a multimedia database. The TRECVID
2007 benchmark data is used to evaluate the concept de-
tection performance of our proposed framework compared
CFS IG RE PCA MCA with several widely used feature selection schemes under
Pre 0.59 0.59 0.58 0.54 0.60 several well-known classifiers. We utilize the functionality
DT Rec 0.47 0.41 0.41 0.44 0.48 of MCA to measure the correlation between extracted low-
F1 0.52 0.48 0.48 0.49 0.53 level audiovisual features and classes to infer the high-level
Pre 0.58 0.57 0.38 0.59 0.64 concepts (semantics). The experimental results show that
SVM Rec 0.34 0.32 0.22 0.33 0.42 our proposed framework performs well in improving the de-
F1 0.43 0.41 0.28 0.42 0.50 tection of the high-level concepts, namely vegetation, out-
Pre 0.54 0.53 0.52 0.58 0.53 door, sky, crowd, and face. Furthermore, the results demon-
NB Rec 0.51 0.51 0.44 0.39 0.54 strate the superiority of the proposed framework over the
F1 0.53 0.52 0.46 0.47 0.54 other feature selection methods used in the case of the im-
Pre 0.58 0.56 0.53 0.50 0.54 balanced data over all five classifiers. The proposed feature
KNN Rec 0.50 0.45 0.49 0.50 0.57 selection framework proves to play a major role in assisting
F1 0.53 0.50 0.50 0.50 0.56 semantic concept detection systems to better understand the
Pre 0.59 0.59 0.56 0.56 0.58 semantic meaning of multimedia data under real world con-
AB Rec 0.32 0.35 0.21 0.29 0.39 straints such as imbalanced data sets.
F1 0.41 0.43 0.30 0.38 0.47
References
268
[9] M. A. Hall. Correlation-based feature selection for discrete
and numeric class machine learning. Proc. International
Conference of Machine Learning, pages 359–366, 2000.
[10] J. Han and M. Kamber. Data Mining: Concepts and Tech-
niques, 2nd Edition. The Morgan Kaufmann, 2006.
[11] N. Japkowicz and S. Stephen. The class imbalance problem:
A systematic study. Intelligent Data Analysis, 6(5):429–449,
2002.
[12] Y. Kim, W. Street, and F. Menczer. Feature selection for un-
supervised learning via evolutionary search. ACM SIGKDD
International Conference of Knowledge Discovery and Data
Mining, pages 365–369, 2000.
[13] L. Lin, G. Ravitz, M.-L. Shyu, and S.-C. Chen. Video se-
mantic concept discovery using multimodal-based associa-
tion classification. IEEE International Conference on Mul-
timedia and Expo, pages 859–862, July 2007.
[14] H. Liu and L. Yu. Toward integrating feature selection al-
gorithms for classification and clustering. IEEE Trans. on
Knowledge and Data Engineering, 17(4):491–502, April
2005.
[15] N. J. E. Salkind. Encyclopedia of Measurement and Statis-
tics. Thousand Oaks, CA: Sage Publications, Inc, 2007.
[16] H. Schneiderman and T. Kanade. Object detection using the
statistics of parts. International Journal of Computer Vision,
56(3):151–177, February 2004.
[17] M.-L. Shyu, S.-C. Chen, Q. Sun, and H. Yu. Overview and
future trends of multimedia research of content access and
distribution. International Journal of Semantic Computing,
1(1):29–66, March 2007.
[18] G. M. Weiss and F. Provost. Learning when training data
are costly: The effect of class distribution on tree induction.
Journal of Artificial Intelligence Research, 19:315–354, Oc-
tober 2003.
[19] I. H. Witten and E. Frank. Data Mining Practical Machine
Learning Tools and Techniques, 2nd Edition. Morgan Kauf-
mann, 2005.
[20] X. Wu, V. Kumar, J. R. Quinlan, J. Ghosh, Y. Q., H. Mo-
toda, G. J. McLachlan, A. Ng, B. Liu, P. S. Yu, Z.-H. Zhou,
M. Steinbach, D. J. Hand, and D. Steinberg. Top 10 algo-
rithms in data mining. Knowledge and Information Systems,
pages 1–37, December 2007.
[21] E. Xing, M. Jordan, and R. Karp. Feature selection for high-
dimensional genomic microarray data. Proc. International
Conference of Machine Learning, pages 601–608, 2001.
[22] L. Yu and H. Liu. Feature selection for high-dimensional
data: A fast correlation-based filter solution. Proc. Inter-
national Conference of Machine Learning, pages 856–863,
2003.
269
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Industry Panel 1
Ming-Whei Feng
Institute for Information Industry
One of the key technologies associated with Wireless sensor network enables connectivity and
ubiquitous network society services is wireless sensor intelligence for sensor applications that will provide
network (WSN). The WSN technology incorporates advanced monitoring, automation, and control
multiple technology components such as wireless, solutions for a range of industries. There are nearly
sensor, and embedded system. WSN was quoted by unlimited numbers of WSN markets that have different
the MIT Technology Review as one of the technology considerations such as frequencies,
technologies that will create giant impact to future life sampling rate, topologies, sensor to use, etc. In this
styles and various industrial segments. For WSN panel section, it is our honor to invite experts in WSN
applications, the sensor device is the key since they applications or industries to discuss (1) what will be
need to be deployed to collect environmental data for the killer applications for wireless sensor network, and
further analysis. According to the analysis report by On (2) their associated technology requirements.
World, the CAGR for sensor nodes deployed
worldwide will be 216%, and the revenue of sensor
chips will reach US$12.1 billions in 2010. Therefore it
becomes one of the most important & potential
technologies.
286
The users can specify their response strategies with deformed wheels). A train is stopped as soon as a de-
respect to the tradeoff between comfort level and cost. fective bearing or wheel is detected, and is not allowed
These strategies are implemented on home controllers to continue the journey until the problem is fixed.
that can adjust the heaters, air conditioners, refrigera- The AEI and sensor infrastructure has delivered sig-
tors and other consumer products according to the lat- nificant benefits to the railroad operations; however,
est energy prices. As such, the energy demand, for the the trackside-based approach has a major drawback:
first time, becomes not only visible but also controlla- the cost for installing sensors along the railroad net-
ble to the grid in a real-time or near-real-time manner. work (e.g. over 140K miles in US) amounts to signifi-
While the intelligent grid holds great promise in the cant capital expenditures. As a result, the read points
new services and capabilities that it can enable, it also are sparse; it may take too long from the time a prob-
requires great deployment and integration efforts lem occurs to reach a sensor along the route to detect
across the industry. The vast amount of sensors, actua- the problem.
tors and controller devices at different levels, distrib- An alterative to the trackside-based sensor infra-
uted over wide areas and administered by different structure is to develop an on-board sensor infrastruc-
parties, must be integrated through a unified architec- ture that enables continuous monitoring of the cars and
ture, where the availability, reliability, scalability and delivers near real-time information to the train operator
efficiency are of paramount importance in the system and the relevant stakeholders. Given that most of the
design. railcars are unwired and un-powered, recent advance-
ments in wireless sensor networks (WSN) [5] may
2.3 Railroad Equipment Tracking and Moni- provide a technology base for this approach: placing
toring motes on railcars to form a train network using a mesh-
networking protocol specially tuned to support railroad
Rolling stock, including locomotives and railcars, applications. The train network dynamically updates
represent a significant portion of the capital assets in- itself as cars join and disjoin the train. Readings from
vested by the railroad industry and their customers. sensors attached to the motes are reported based on a
They form trains as the operating unit in rail transpor- pre-determined schedule or out-of-band for urgent
tation – taking goods or passengers from location to alerts. A gateway located in the locomotive bridges the
location. A manifest freight train in North America, for train network with the enterprise system, and it also
example, may comprise up to 150 freight cars from hosts on-board applications.
different customers to be delivered to different destina- The WSN-based approach faces domain specific
tions. At every stop of a route, cars may be dropped off challenges arising from the fact that a train may extend
or added to the train. Maintaining the accurate and up- over a mile long and travel at a speed exceeding 40
to-date information about the train consist is an essen- miles per hour. Any battery deployed cannot be re-
tial requirement for railroad operations. Such informa- placed outside of the normal maintenance schedule at a
tion may be used for correcting and preventing opera- period over five years. Reliable and energy-efficient
tional mistakes, logistic planning and optimization, wireless protocols remain to be a research focus for
billing and other financial settlements. this application.
The North American Railroads industry adopted an
RFID-based Automatic Equipment Identification 3 Challenges
(AEI) system in the early 1990’s to identify and track
railroad equipment while en route. By 2000, over 95% It is interesting to draw the following observations
of the railcars in operation have been tagged with a from the three application examples described in the
standard-based UHF RFID transponder on each side of previous section.
a car, and more than 3000 RFID readers have been • In all three examples, sensors and actuators are
deployed across North America. As a train passes by a deployed at geographically dispersed locations
trackside reader, the unique identification numbers of where operations take place. They are connected
the locomotives and railcars are automatically captured to enterprise information infrastructure using com-
by the reader and transmitted to a central server to in- munication networks with different QoS charac-
fer the train’s consist, which comprises of the informa- teristics in terms of bandwidth, latency, reliability,
tion about the relative position and the type of the cars resilience, and so on.
making up the train. To improve safety and prevent
• In all three examples, the success of the applica-
derailment, the railroad companies are deploying addi-
tions depends on industry-wide cooperation that
tional trackside sensors such as hot box detectors (for
typical involves setting industry specific technol-
hot bearings) and wheel impact load detectors (for
287
ogy and operational standards. Technology stan- from a proof-of-concept to limited pilot to full de-
dards promote an ecosystem to provide building- ployment, as illustrated in Figure 1.
block technology elements and compete in func- Although as an architectural style, SOA applies to
tion and price, while operational standards enable sensor and actuator applications, several characteristics
interoperability and information sharing among of these applications present unique challenges.
the stakeholders. First, sensors usually generate events asynchro-
• The overall cost of an application, that includes nously; they can represent conditions of the physical
the costs of infrastructure and software develop- world or situations in a computing system. A modeling
ment and deployment, is typically the biggest im- language designed for event-driven applications will
pediment to its broad adoption as some of the be much better suited for sensor and actuator applica-
benefits may take a long time to realize, especially tions than a flow-based model such as BPEL.
for the ones that require inter- or intra-industry Second, sensor and actuator applications are usually
collaboration. Minimizing the cost in every step of distributed, sometimes over a wide geographical area.
a phased deployment would help reduce the in- Traditional cluster-based runtime approaches found in
vestment risk for the participating parties and ac- data centers may not perform well. This calls for a
celerate the adoption. truly distributed runtime platform.
Third, an immediate corollary of a distributed run-
time is that non-functional aspects of the runtime, such
as node capacity, link bandwidth, latency, reliability,
security, and so on, may vary greatly spatially and tem-
Full deployment porally. Thus, the proper modeling of Quality of Ser-
Assemble
vice (QoS) requirements of applications and the man-
Pilot agement of QoS capabilities of the infrastructure are
Deploy
Proof-of-concept paramount to the overall success of any such sensor
Model and actuator applications.
Manage
4 Approach and Prototypes
288
gether through matching of the requirement and capa- An agent can be used to model a sensing device us-
bility specifications. In what follows, we will describe ing output ports, an actuating device using input ports,
the research prototypes that we have developed for or a controller device or processing logic with both
each layer in an effort towards realizing the grand vi- input and output ports. Developers can use either Java
sion of this architecture. or EventScript, an event pattern matching language, to
specify the behavior of an agent [8] .
4.1 DRIVE for solution life cycle management DRIVE further extends the traditional EPN pro-
gramming model by incorporating SOA concepts.
DRIVE, or Distributed Responsive Infrastructure When defining an EPN, the constituent agents are
Virtualization Environment [6] , is designed to manage specified using only their interface definitions. The
the SOA life cycle of distributed sensor and actuator actual implementations of the agents are specified us-
applications. The current version of DRIVE is limited ing bindings. The binding information is captured in a
to the functional aspects of an overall application. configurable model file instead of being hard coded in
DRIVE includes an Eclipse-based model-driven the EPN implementation. Thus, composite applications
development tool and a distributed runtime platform can be easily assembled by binding EPN’s or EPA’s
that executes the solution artifacts created by the tools. together.
DRIVE further insulates application logic from the
SOA Composition of Solution Modules
infrastructure by allowing EPN models to be defined
independently of actual network topology. An applica-
tion can be deployed on a single computing node or a
network of distributed nodes with no modification to
the code. The mapping from agents to runtime nodes is
done at deployment time. DRIVE provides a runtime
DRIVE Component Binding
container that makes this deployment flexibility possi-
Programming-in-the-large
event
ble. The DRIVE container is implemented on top of an
v
t Event stream
en Processing
Event eve
Processing stre nt
OSGi environment [9] . It manages the life cycle of the
e am am
Event
str
e Agent Agent
Event
agent code on the target runtime. Most importantly, the
Event
Processing Processing Processing container handles the event transport from producer
Agent event Agent Agent
stream eve
nt stre Event
stre
am (for example, an output port of a source agent) to con-
am nt
Processing eve sumer (for example, an input port of a target agent)
Agent
Event Processing Network transparently whether the source and target agents are
Programming-in-the-small co-located on the same runtime or distributed across
the network.
Thus, DRIVE presents a distributed computing in-
frastructure as a single sensor and actuator runtime
platform and allows applications to be deployed and
managed in this virtualized environment.
EventScript
4.2 HARMONY for QoS management
Figure 3. Modeling and assembly of sensor HARMONY [10] is a technology we have devel-
and actuator applications using DRIVE oped to manage networked systems of sensors, actua-
DRIVE uses Event Processing Network (EPN) to tors and processing nodes in a runtime environment for
model a distributed sensor and actuator application, as distributed, event-driven applications. In particular,
shown in Figure 3. An EPN consists of multiple Event HARMONY provides a virtualization layer that allows
Processing Agents (EPA) that are connected via wires. the applications to monitor and manage the system
This concept is widely used in the event processing QoS performance along multiple dimensions, such as
community [7] . An EPA in DRIVE is characterized by delay, throughput, and reliability.
its interface, which is defined by input ports, output In HARMONY, the available nodes in the system
ports, and parameters. An EPN can also have its own are organized into multiple domains, and each domain
interface definition, thus allowing recursive and hier- corresponds to one virtual “clique” where an instance
archical composition of agents to form an arbitrarily of the DRIVE applications can be deployed. Note that
complex network of processing logic. there could be multiple instances of applications (e.g.,
local RFID tracking) running on different localities
289
and these instances collectively realize applications tion of functions and capabilities. We are evaluating
with larger scope (e.g., global pharmaceutical track- the benefits of this architectural approach and validat-
ing). As such, these domains can inherit a hierarchical ing the value proposition of DRIVE and HARMONY.
structure from the application decomposition and de-
ployment. 6 Acknowledgement
Within each HARMONY domain, the nodes form
an overlay network on top of the physical connectivity This paper is built on the work by many IBM col-
such as wireless or wired communication channels. leagues. We would like to thank Francis Parr for pro-
The advantage of such an overlay approach is that it viding the architecture leadership, Ron Ambrosio and
enables the applications to configure their end-to-end Mark Yao for the insights of the Intelligent Grid, Joh-
paths to achieve desired QoS properties and adapt to nathan Reason and John Dorn for the WSN-based
occasional failures without any direct control over the Railroads application, John Del Pizzo for the Pharma-
underlying network infrastructure. As such, the mes- ceutical Track and Trace, and many others who con-
sages sent from one node to another are routed in the tributed to the design and implementation of the archi-
overlay network through QoS-aware routing protocols, tecture and solution. The DRIVE project was partially
which seek to find the best currently available paths supported by the IT839 project from the Institute of
that satisfy the application’s QoS requirements. On the Information Technology Assessment and the Ministry
other hand, the nodes continuously monitor the link of Information and Communication of the Republic of
quality between each other and update their (overlay) Korea.
routing tables accordingly. These monitoring results
are also exposed to the applications through perceived
7 References
end-to-end QoS performance, and the applications may
adapt their behavior to the current network conditions. [1] D. Delen, B. Hardgrave, and R Sharda “RFID for Better
In addition to managing the QoS of communication Supply-Chain Management through Enhanced Informa-
between distributed endpoints, another important task tion,” Information Technology Research Institute, Sam
of HARMONY is to discover changes to the domain M. Walton College of Business, University of Arkansas,
structure such as node join and leave. In each domain, January 2007.
there is a domain controller that serves as the initial [2] International Medical Products Anti-Counterfeit Task-
contact for any newly joined node. On the other hand, force (IMPACT), “Counterfeit Medicines: an update on
node departure or failure is detected through neighbor estimates, 15 November 2006”.
monitoring and then reported to the domain controller. [3] EPC Information Services Specification,
www.epcglobalinc.org, EPCglobal, 2007.
The domain controller maintains a directory service by
[4] R, Anderson, P. Chu, R.Oligney, and R. Smalley,
which the applications can find the currently available “Smart Electric Grid of the Future: The Distributed
nodes and their associated properties. Such informa- Store-Gen Test Bed”. White paper, 2004.
tion can be used to enable automatic deployment as [5] K. Romer and F. Mattern, “The Design Space of Wire-
well as re-configuration of DRIVE applications in a less Sensor Networks,” IEEE Wireless Communica-
dynamic environment. tions, vol. 11, no. 6, Dec 2004, pp. 54-61.
[6] H. Chen, P. Chou, N. Cohen, S. Duri, and C. Jung,
“DRIVE: A tool for developing, deploying, and manag-
5 Conclusions ing distributed sensor and actuator applications,” to ap-
pear in IBM Systems Journal, Vol. 47, No. 2, May
Large-scale sensor and actuator applications have 2008.
started to emerge, enabling businesses to address far- [7] D. Luckham, The Power of Events. Boston: Addison-
reaching problems and to better respond to real-world Wesley, 2002
conditions. This paper described three industry exam- [8] H. Cohen, and K. Kalleberg, “EventScript: an event-
ples to illustrate the opportunities and challenges, in processing language based on regular expressions with
particular from the perspectives of addressing deploy- actions.”, to appear in ACM SIGPLAN/SIGBED 2008
ment scalability regarding overall cost, function, and Conference on Languages, Compilers, and Tools for
Embedded Systems, Tucson, Arizona, June 2008.
QoS. DRIVE and HARMONY together represent an [9] OSGi Alliance, “About the OSGi Service Platform,”
implementation of an architecture that is designed for Technical Whitepaper, www.osgi.org,, June 2007.
large scale sensor and actuator application deploy- [10] P. Dube, N. Halim, K. Karenos, M. Kim, Z. Liu, S.
ments. The architecture is based on SOA; it supports Parthasarathy, D. Pendarakis and H. Yang, “Harmony:
the separation of functional specification and QoS Holistic Messaging Middleware for Event-Driven Sys-
management, and also supports hierarchical composi- tems”, to appear in IBM Systems Journal, Vol. 47, No.
2, May 2008.
290
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
292
smart-skin building to test this mechanism. The entire equipment is installed in accordance with the three
principles stated as follows. The upper section of the smart
PMV and Environment skin is responsible for illumination and ventilation. The
middle section is designed as a sunshade and penetrating
Information regarding the indoor condition of the building can vision. The design of the lower section also focuses on
be obtained by detecting the air temperature and humidity. ventilation and heat insulation.
The value of air flow is obtained from the data measured
using practical equipment. In the absence of sunlight, the Furthermore, we proposed an algorithm to control the
mean radiant temperature indoors is close to the mean air intelligent building system. This algorithm uses PMV and
temperature. The values of activity level and clothing are energy efficiency ratio (EER) to evaluate the efficiency of the
obtained from the previously determined values of the equipments. The efficiency of improved comfort for the
reference [8]. equipment can be expressed as
293
Request of resident In experimental area
In contrastive area Outdoors
2
1.5
1
0.5
PMV
0
-0.5
-1
Figure 1. The appearance of practical intelligent building. -1.5
-2
14 0
14 0
15 0
15 0
15 0
15 0
15 0
15 0
16 0
16 0
16 0
16 0
16 0
16 0
17 0
17 0
17 0
0
The procedure for the experiments is described as follows:
:3
:4
:5
:0
:1
:2
:3
:4
:5
:0
:1
:2
:3
:4
:5
:0
:1
:2
14
Time
1. First, the number of people indoors and the
characteristics of the area are defined. Figure 2. Comparison of PMV between outdoors, experimental area and
2. Next, a comparison of the performance of the equipment contrastive area.
and the environmental conditions is carried out.
3. (a) In the experimental area, an intelligent area with air-
conditioners is set up. (b) In the contrastive area, Request of resident In experimental area
traditional air-conditioners are set up. In contrastive area Outdoors
4. Information about the quality of the environment and 50
power consumption is collected and analyzed. 40
15 0
15 0
15 0
15 0
16 0
16 0
15 0
16 0
16 0
16 0
17 0
17 0
16 0
0
17 0
:3
:4
:5
:0
:1
:2
:4
:5
:3
:1
:2
:0
:4
:5
:3
:1
:2
:0
14
0
0
0
0
:30
0
:50
0
0
:20
0
:40
0
:00
:5
:0
:1
:2
:4
:0
:1
:3
:5
:1
14
14
14
15
15
15
15
15
15
16
16
16
16
16
16
17
17
294
obtain a better performance.
Cumulative power consumption(KWH) In experimental area In constrastive area
0.7
0.6
V. REFERENCE
0.5
[1]. S Sharples, V. Callaghan and G. Clarke “A Multi-agent
0.4
architecture for intelligent building sensing and control,”
0.3 International Sensor Review Journal, pp.1-8, May 1999.
0.2 [2]. Hani Hagras, Victor Callaghan, Martin Colley and
0.1 Graham Clarke, “A hierarchical fuzzy–genetic multi-
0 agent architecture for intelligent buildings online learning,
adaptation and control,” Information Sciences (Elsevier),
0
0
0
:00
:10
:20
:30
0
0
0
:10
:20
:30
:40
0
0
0
:3
:4
:5
:4
:5
:0
:5
:0
:1
14
14
14
15
15
15
15
15
15
16
16
16
16
16
16
17
17
vol. 150, pages 33-57, March 2003.
Times [3]. I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E.
Cayirci, “A survey on wireless sensor networks,” IEEE
Figure 5. Comparison of cumulative power consumption in experimental and Communications Magazine, Vol. 40, 2002, pp. 102-114
contractive areas. [4]. D. Culler, D. Estrin, and M. Srivastava, “Overview of
sensor networks,” IEEE computer, Vol. 37, 2004, pp. 41-
V. CONCLUSION 49.
[5]. ISO. 1994. International Standard 7730, Moderate
In this study, we provide an algorithm to coordinate smart- thermal environments - Determination of the PMV and
skin equipment and air conditioners in order to improve PPD indices and specification of the conditions of
thermal comfort. In addition, our proposed power Thermal Comfort, 2nd ed. Geneva: International
consumption scheme ensures a better performance than the Standards Organization.
traditional methods. [6]. T.-P. Ku, “A study on the improvement of exterior wall
construction by the double walls system,” thesis, national
The main distinguishing factor between our method and the Cheng Kung university, 2003.
traditional methods is that we have utilized the PMV model in [7]. The Institute for Information Industry, III ZigBee
our algorithm to coordinate the air conditioners and the Advanced Platform (iZAP), http://zigbee.iii.org.tw.
devices in the smart skin to conduct light, provide shelter [8]. Fanger, P.O., “Improvement of human comfort and
from sunlight, ensure heat insulation and ventilation, and resulting effects on working capacity,” Biometeorology
control temperature. Further, the coordinative equipment is (II): 31-41, 1972
operated on the basis of the thermal comfort indices defined
in ISO 7730 and the principles of power consumption to
295
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
297
The SMS service module includes the following tial to manage the attribute data and spatial data in
functions: (a) receiving SMS messages from RFID the system.
readers in base stations, (b) sending confirmation Asset Management Subsystem (AMS) - The
messages to RFID readers, (c) sending SMS mes- AMS works in a browser/server (B/S) mode. The
sages to RFID readers of base stations to inspect main modules of this subsystem are introduced as
their working status, and (d) analyzing from which follows.
RFID reader an incoming SMS comes. In our Basic Information Management - This module
RAMS, a Subscriber Identity Module (SIM) card is takes the charge of maintaining the entire database,
applied to the GSM module, which is integrated into such as asset data, base station data, SMS data, and
a RFID reader that holds personal identity informa- so on. System administrators can add or modify asset
tion, cell phone number, phone book, text messages, information, such as asset name, asset number, asset
and other relevant data. The SMS source can be type, manufacturer, production time, specification,
identified according to the cell phone number of the purchase time. The relations between RFID tags and
SIM card. In this way, the RFID readers can be man- asset entities are established in this module.
aged individually. The content of the message is Automated Assets Management - This module util-
converted to an appropriate format for storage in the izes RFID technology and wireless data transfer
database. technology to implement asset data automated gath-
The MapXtreme module employs the WebGIS ering and processing so that the asset management
software from MapInfo MapXtreme to provide a can be automated. The detailed implementation is
visual representation of the relevant spatial informa- further discussed in the next subsection.
tion of the assets (http://www.mapinfo.com). When a WebGIS Module - This module utilizes Web-based
user query of spatial data is sent to the Web server in GIS technology to support the integration with geo-
the system from the user’s browser, the Web server
graphic information. Users can search and display
transfers the related parameters to the MapXtreme
spatial information of assets on the electronic geo-
module. MapXtreme queries the corresponding map
graphical map, such as basic information, location
data from the GIS database and the asset data from
information, statistic information, usage status, trans-
the basic database. The result is then returned to the
Web server and finally rendered on the user’s ferring record, maintenance record, and malfunction
browser. information. The system adopts MapInfo MapX-
Database Management System (DMS) - All treme to implement the WebGIS functions. MapX-
data that are used in the RAMS are stored in a rela- treme can read and display map data of GIS data-
tional database, including basic data, spatial data, bases. On the client-side, it supports many functions
and attribute data so that data storage and manage- on the electronic geographical map, such as map
ment is separated from the application logic. We search, map visualization, layer control, zoom in/out,
separate the data into two databases, namely the Ba- roam, creation of the special subject map, etc.
sic Database and the GIS Database. The Basic Data- SMS Notifications and Alarms Module - The func-
base stores the information about base stations, as- tions of this module can be customized in the AMS.
sets, and SMS messages. The GIS Database is a For example, the system can be configured so that a
dataset to describe the geographical characteristics of SMS is sent to the administrators of a base station
an area that is to be controlled by the system. Be- whenever an asset moves in or out of it. It is also
sides regular attribute data of geographical factors, it possible for the system to send an alarm SMS to the
also has a large volume of spatial data which de- corresponding maintainers of a base station to repair
scribes the spatial distribution of geographical fac- it as soon as possible when a RFID reader or a GSM
tors. So, such information is separated from the Ba- module is not usable.
sic Database. Other modules include user management module,
There is an indivisible relation between the attrib- operation log management module, statistics report
ute data and the spatial data. The MapXtreme mod- module, print module and so on.
ule can adopt either file strategy or spatial data strat-
egy to manage GIS data. We adopt the spatial data
strategy to manage the GIS data because this enables 4. Automated Asset Management Functions
integrated management of spatial data and attribute
data. This can take advantage of commercial data-
4.1. Asset Acquisition Process (AAP)
base systems to implement distributed structures and
support multi-user queries. We adopt the OracleSpa- The Asset Acquisition Process (AAP) adds an as-
set into the RAMS at a base station. We combine
298
RFID technology with WebGIS technology in this 2) The AMS records the location and the time of the
process. The steps of the AAP are described as fol- movement of the transferred asset and changes the
lows. asset state to a transit state. It then sends a SMS to
1) The information of a new asset is entered into notify the administrators of A.
database with the basic Info Management Mod- 3) When the asset arrives at B, the RFID reader at B
ule. The status of asset is marked as newcomer. reads the asset data from its tag. The information
2) When the new asset is moved into base station A, of the incoming asset is then uploaded to the ap-
the RFID reader there reads the data from the tag plication server through the GSM module.
attached on the asset. The new information is 4) The AMS stores the location and time of the
then uploaded to the application server through movement of the incoming asset and changes the
the GSM module. The application server then in- asset state back to a normal state.
serts the new asset data into the database system. 5) The AMS records all the data of the incoming
3) The AMS stores the location and coming time of asset to the base station B and finalizes the asset
the new asset automatically and changes the asset transfer accordingly.
state to normal. 6) After finishing an asset transfer, the administra-
tors of both station A and B will get SMS mes-
sages about the asset transfer.
299
asset. Such information is then uploaded to the ble 1 lists the different auditing status of assets. Fig-
application server through the GSM module. ure 5 shows a screen shot of the auditing result.
2) The application server stores the removal time of
the abnormal asset and changes the asset state to Table 1. Auditing Status of Assets
a transit state. Auditing Status Description
3) When the abnormal asset arrives at the mainte- Normal Asset exists in correct base sta-
nance station, the RFID reader there reads the as- tion
set data from its tag. Such information is then up- Losing Asset does not exist in any base
loaded to the application server through the GSM station
module. Surplus Asset exists in database, but
4) The application server stores the time of the in- cannot been audited.
coming asset and changes the asset state to a Mistake Asset exists in incorrect base
maintenance state. station
5) After the asset is repaired and returned to the
base station A, the RFID reader there reads the
asset data from the tag attached on the asset.
Such information is then uploaded to the applica-
tion server through the GSM module.
6) The application server changes the asset state
back to a normal state and finalizes the mainte-
nance record in the database.
4.4. Asset Retirement Process (ARP)
The Asset Retirement Process (ARP) records re-
tired asset when the asset becomes no longer useful. Figure 5. Auditing Result of Assets
The steps of the ARP are described as follows.
1) When an asset is moved out of base station A 5. Experiment and Evaluation
because of retirement, the RFID reader there
reads the asset data from the tag attached on the We collaborate with a subsidiary company of the
asset. Such information then uploaded to the ap- China Mobile Communications Corporation for the
implementation requirements on a real application of
plication server through the GSM module。
asset management in mobile base stations. A proto-
2) The application server changes the asset state to a type of the RAMS has been developed based on the
transit state. J2EE architecture, with which we carry out the
3) When the retired asset arrives at the retirement evaluation experiments. The system has been de-
station, the RFID reader there reads the asset data ployed to 30 base stations of the company distributed
from its tag. Such information is then uploaded to in different districts of a city.
the application server through the GSM module Only a browser is needed to be installed on a cli-
to confirm the retirement. ent-side machine. The application server operates
4) The application server changes the asset state to a under the operating system of Windows 2003 Server
retired state and creates a retired record of asset with MapXtreme for Java installed for supporting
in database. WebGIS functions. Tomcat 5.0 and Sun JDK-
1.5.0.07 is used for supporting JSP programs. An
4.5. Asset Auditing Process (AAuP) Oracle9i database is employed to manage basic and
The RAMS schedules the Asset Auditing Process GIS data.
(AAuP) according to the auditing plan pre-defined The asset information of the 30 base stations is
by the administrators. Auditing data such as tag, lo- first entered into the database system. Then, the
cation, amount, etc., are collected with RFID hand- automated asset identification system starts to gather
held readers according to the auditing schedule. Then the asset data of the 30 base stations, such as the as-
the auditing data are uploaded to the application set movement information, the working status of
server through the GSM module. The AAuP then RFID readers and GSM modules, and so on. Those
compares the auditing data with asset data in data- data are submitted to the application server using
base. The AAuP records the auditing status of the SMS. The application server processes the SMS
assets and produces the auditing analysis report. Ta- messages and updates the database system accord-
ingly. Those data can be queried and represented on
the WebGIS interface. The system can also send
300
notification SMS messages to the administrators of statistics based on spatial distribution and other re-
the base station about the movement and status of the lated information of the assets using electronic geo-
assets. Figure 6 shows a partial list of alarm and noti- graphical map. It greatly enhances the system ma-
fication SMS messages of the system. neuverability and user experience. (c) Our RAMS
utilizes SMS technology to inform administrators of
base stations about asset transfer and other alerts in
real time. The monitoring of assets becomes highly
effective and efficient.
Future enhancements of the system include the
following. The current speed of sending SMS is
somewhat slow. It sometimes takes about four min-
utes to receive a SMS message. We are investigating
the possibilities of improving the speed of wireless
data transfer so that the system processing speed can
be improved. In addition, we are working on an addi-
Figure 6. Alarm SMS Message List tional subsystem to enhance the system security.
301
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Yao-Ting Wu
Networks and Multimedia Institute, Institute for Information Industry
7FL., No.133, Sec. 4, Minsheng E. Rd., Taipei, 105, Taiwan, R.O.C.
solarph@nmi.iii.org.tw
ZigBee device object been found, the status will be set to success. If
Application framework
(ZDO)
nodes receive the route request and route
discovery table has already existed, the nodes
APS
SECURITY
will compare the cost in the table. If received
NWK cost is less than the existed one, the sender
address, cost in the route discovery table will be
MAC replaced by a new value and next-hop address in
the routing table will be changed too.
PHY Table 1. Routing Table Entry
Field Name Size
Figure 1. ZigBee Stack Archetecture Destination address 2 octets
Status 3 bits
II. Method No route cache 1 bit
303
Many-to-one 1 bit initialized to 1 less than the relay count by the
Route record required 1bit concentrator of the packet, and it is decremented
Group ID flag 1 bit by 1 by each relaying nodes. If its own address
Next-hop address 2 octets is not found in the rely list, the node will discard
Table 2. Route Discovery Table Entry the packets and no further action. Only if the
Path Variable
B. Route record
concentrator, the packet will be sent following ZigBee Relay Relay Relay list
the next-hop address field in the routing table, Header count index
and the relaying nodes will put their own address Figure 2. Source route packet format
address is listed in order form concentrator to the concentrator, and many sensing nodes. User can
sensing node. monitor the sensing area and control the area in
Before concentrator sending control concentrator side. In the past, it would spend
packets, it should search the route record table much time to find a route, and it would make
first. If the sensing node is listed in route record network noisy. Using source route technology,
table, concentrator doesn’t need to find a route to we only need route one time and record the route
the sensing node. It only needs sending control information in the concentrator. In this way, we
packets following the relay list of the route can find a route easily, and don’t need to find the
record table. The relay list will be set in the route frequently. It is useful to reduce network
source route packet payload, depicted in Figure noisy, the probability of data loss and packets
address is found in the relaying list of the packet, Overview of Sensor Networks, Computer,
it will change the relay index field. This field is August 2004
304
[2] Shigeru Fukunaga Tadamichi Tagawa Kiyoshi
Fukui Koichi Tanimoto Hideaki Kanno
“Development of Ubiquitous Sensor Network”
Oki Technical Review October 2004/Issue 200
Vol.71 No.4
[3] ZigBee Alliance, http://www.zigbee.org/.
[4] IEEE 802.15.4: “IEEE 802.15 WPANTM Task
Group 4 (TG4)”, http://www.ieee802.org
[5] Zigbee.iii.org.tw
305
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
307
ceiling. With a spherical model of 5-m radio range, the is thus proposed in the next section to overcome this
deployed beacons would be as shown in Figure 4. problem.
308
3.2 Case Study Revisited
309
the coverage area should be calculated with the
obstacles in place when selecting the candidate
beacons. To take into account the effect of the
obstacles, a 3D modeling tool, Autodesk 3ds Max, is
used to construct the 3D model of the indoor
environment along with the obstacles. Take one of our
labs in NTU, BL-621 as shown in Figure 3, as an
example; its constructed 3D model is as shown in
Figure 11.
310
space. Taking into consideration of the obstacles, we
find that (1) many more beacons are needed to localize
the listeners since the ultrasound signals can be
blocked by the obstacles in the environment, (2) the
requirement of beacons grows about inversely
proportionally with the height of the listeners since
when the listener is higher the less effect the obstacles
will have to block the ultrasound signal from beacons,
and (3) the placement of the obstacles have significant
Figure 14. Beacon deployment when furniture is
present in (a) the center area (b) the surrounding area.
impact on the beacon deployment especially when the
listener is lower. The cost of deploying for a smart,
interactive room is approximately US$ 7,000 in order
to locate listeners at height of 150 cm, around the
height of one’s shoulder, in our lab BL-621 with full
set of furniture when an about US$ 100 sensor node is
used as a beacon or a listener.
References
[1] S-W Lee, S-Y Cheng, Jane Y-J Hsu, Polly Huang,
C-W You, “Emergency Care Management with
Location-Aware Services,” In Proceedings of
Figure 15. Number of deployed beacons for different Pervasive Health Conference and Workshops,
sets of furniture. 2006, Nov. 29, 2006-Dec. 1, 2006, pp.1–6.
[2] N Talukder, , S I Ahamed, R M Abid, “Smart
4.4 Effect of Furniture Distribution Tracker: Light Weight Infrastructure-less Assets
Tracking solution for Ubiquitous Computing
Two more indoor environments with different Environment,” In Proceedings of Fourth Annual
setting of furniture as shown in Figure 13 are examined International Conference on Mobile and
further to observe how the location of the furniture in Ubiquitous Systems: Networking & Services, 2007
the environment affects the beacon deployment plan. (MobiQuitous 2007), 6-10 Aug. 2007, pp. 1–8.
The deployments for environments with two different [3] J Koch, J Wettach, E Bloch, K Berns, “Indoor
furniture settings when the listeners are at the height of Localization of Humans, Objects, and mobile
0 cm are shown in Figure 14. As can be seen in Figure Robots with RFID Infrastructure,” In Proceedings
14, when only the centered/surrounding furniture is of 7th International Conference on Hybrid
present, the beacons tend to be deployed toward the Intelligent Systems, 2007 (HIS 2007), 17-19 Sept.
surrounding/center to avoid the obstacles. The numbers 2007, pp. 271 – 276.
of deployed beacons for different sets of furniture [4] R Huang, , G V Zaruba, “Beacon Deployment for
including full set of furniture are as shown in Figure Sensor Network Localization,” In Proceedings of
15. As can be observed in Figure 15, the obstacles in IEEE Wireless Communications and Networking
the center area affect more than the ones in the Conference (WCNC 2007), March 2007, pp.3188-
surrounding area especially when the height of the 3193.
listeners is low. [5] N. Priyantha, A. Chakraborty, and H. Balakrishnan,
“The cricket location support system,” In
5. Conclusions Proceedings of the Sixth Annual ACM/IEEE
International Conference on Mobile Computing
Radio model and environmental obstacles play a and Networking (MobiCom 2000), pp. 32-43,
critical role in determining how many and where to Boston, Massachusetts, USA, August 6-11 2000
place the beacons for localization. Using a realistic [6] J Deng, Y.S. Han, P-N Chen, and P.K. Varshney,
radio model, we discover that (1) more beacons are “Optimal Transmission Range for Wireless Ad Hoc
needed to provide full coverage of the listeners since Networks Based on Energy Efficiency,” IEEE
the covering space of an ultrasound transmitter is Transactions on Communications, Volume 55,
smaller than a perfect sphere and (2) the number of Issue 9, pp. 1772 – 1782, Sept. 2007.
required beacons grows linearly with the size of the
311
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Hendrik F. Hamann
IBM T.J Watson Research Center
hendrikh@us.ibm.com
313
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Yury Kosov
IBM Software Group, Burlingame, CA, U.S.A.
Email: kosov@us.ibm.com
315
synchronize the item information between trading mediate the conflict between two message formats
partners. It is a third-party external exchange that during wiring.
provides product registry services to enable
synchronization of item and location information to 4. Solution Composition and Transformation
reduce mis-shipment and return, and shorten setup time
for new products. It targets high-volume, low margin, Solution Template is a reusable asset at a higher
inefficient industries such as retail, grocery. While the level of abstraction that can be transformed into a
EPC Network [8] offering dynamic product solution (or application) in service oriented architecture
information specific to an individual item, such as environment. We used it for creating e-business
expiration dates and shipping details held on the Radio integration solutions to reduce the complexity and the
Frequency Identification (RFID) [9] tag, the UCCnet cost of creating the integration solution by providing
contains static attributes common to all products. more repeatable, cumulative and transferable
The solution (UCCnet_ItemSync) integrates the knowledge obtained during the life cycle of the
supplier’s backend system (SAP) with the UCCNet hub integration solution.
(AS2 Server) for registration and validation of data.
The product order information (via Item Data) from the 4.1. Solution Composition
supplier will trigger the registration (new item
publication request and registry catalogue item Solution can be composed by capturing the reusable
registration) of the product information in the UCCNet components (other templates or Solution Artifacts) and
catalogue. The rest of the paper will reference this define the relationships amongst its components
example when we describing features and functionality. according to the business requirements. Solution
Artifacts can be a service container usually
representing process flows (Collaborations), adapters
(Connectors), screen views, and other elements that can
XML Document
(worklist requests)
be reused [3]. These components can be created new
AS2 Server
AS2 Adapter JText Adapter
or imported along with its definition, and its platform
requirements and performance characteristics.
UCCnet_
REQUEST WORKLIST
Request
Worklist
POLL FOR
ANY WORK
Components are then wired according to their business
PUBLICATION RESPONSE
RCIR
RESPONSE
(WORKLIST) UCCnet_
Process
LIST
REQUESTS logic. Once created, it becomes a reusable business
CATALOGUE ITEM NOTIFICATION
(CIN)
NEW ITEM PUBLICATION
REQUEST UCCnet_
CIN
Dispatcher
Worklist
(OPTIONAL)
services (templates) that publish or operate on business
Notify_by_
REGISTRY CATALOGUE ITEM ItemSync
REGISTRATION (RCIR)
ITEM
eMail data. As shown in Figure 3, the UCCnet item
DATA
WebSphere InterChange Server
(WICS)
synchronization artifacts illustrated in Figure 2 is
SAP Adapter
composed as a Solution Template using the PIM
Composer of the proposed Solution Template Tool.
316
shown in Figure 4, the Process flow of Connector supports point of variability by providing
UCCnet_ItemSync defined in a collaboration artifact choices of the connectors under the same component, a
could have two points of variability: “New Item generic connector container. So more connector
Publication Request” and “Registry Catalogue Item implementations can be added for different suppliers
Registration”. Similarly, in a connector artifact, under a generic connector container (e.g., ERP
inbound/outbound message formats, business rules, connector) as shown in Figure 5, and allow more
functional options, properties, etc could be defined. options (SAP or JDEdwards) later when configuring
This tool detects if a variability point is available and the template. Only one connector can be selected to be
presents the Solution Creator with options to choose active and the active one is the one considered when
amongst them, further more would a mismatch occur, doing the composition with other components.
this tool offers options to resolve the incompatibility. Collaborations offer point of variability for their
When appropriate, an interaction is initiated by the tool properties and interfaces. The tool supports three types
to move ahead the integration process and minimize of conditions to govern the point of variability:
any second-guessing by the user. mandatory, optional and conditional as illustrated in
Figure 6. Some interfaces of the collaboration are
mandatory and needs to be presented when the
template is configured. Some interfaces are optional
Process Flow
and it can be enabled or disabled at configuration time
at the discretion of the Solution Creator. Some
Process UCCnet_ItemSync interfaces will be automatically enabled if the rule
New Item associated with the point of variability is met;
Publication
Request otherwise, it will be disabled.
Variable Selection:
Receive UCCnet_ItemSync
Synchronization
Item Data Completion
Methods
Registry
Catalogue
Item Registration
317
collaboration’s operation to Wal-Mart or Target store the template can be augmented to provide a
as an operation of choice as shown in Figure 6. deployment layout that matches the solution
The rule can also constrain the value of the property requirements. This will further enrich the solution with
and the default value can be set to a literal or a component specific information to fine tune each
reference to another property. In most cases rules can component in terms of configuration settings and
be used to define the point of variability. A very performance parameters. As the template is enriched
simple rule set has been defined to create this notion. during deployment, the added information can be
Associated with the artifact or template properties, provided to the deployed solution management phase
these rules can be used to perform configuration to and allow the management tool to provide a complete
determine the behavior of the solution. Artifact view of the solution. Solution upgrades can reuse this
properties, treated as string values, can be used in the information, expediting the process to deploy the new
rule expression where two types of rules are supported. version. Furthermore, collected information can be
First one is the Boolean expressions where the applied (or reused) to the different configuration with
operators are <, >, !=, ==, ||, &&, (, ), and the second similar requirements. Template becomes the unifying
one is the choice selection driven by the value of a artifact throughout the life cycle of the integration
property. For example, if RETAIL_PARTNER == solution.
Target then the Retrieve operations from In our example, we used WBI SE as our platform
“ValidateTarget” collaboration is used; otherwise, the and all artifacts (Collaborations and Connectors) and
Retrieve operation from “Wal-Mart” collaboration. their related assets (Business Objects and Maps) will
be registered under a new or existing Integration
4.2. Solution Transformation Component Library (ICL) in WBI SE. The links will
determine the Collaboration Objects to be created and
Solutions are composed in a platform independent necessary compilations will be performed. At this
fashion regardless of their ultimate execution point the ICL is ready to be configured into a User
environment and become reusable templates to create Project and ready for the deployment to test the
other solutions. Solutions templates, once created, can integration solution.
be published in the form of a jar file to the file system
for later reuse, sharing, or upload to asset library. 5. Models Transformation Functions
Platform Independent Model
Component
Abstraction
Artifact
A = ƒ(C,MP) (A)
Connector Connector
Component
Instance Component
Traceability Abstraction
AURI = URI(Cr, MP)
Cr = ƒ-1(∆A,(C|Cr),MP) A = ƒ(∆Cr, MP)
Cr URI = URI-1(A, MP)
Component
Collaboration Realization
component
(C)
Specific Component
(Cr)
318
5.1. Component Abstraction 6. Conclusions
The objective of the Model-Driven approach is to In this paper, we present a Solution Template Tool
move the focus from programming to solution for enterprise applications integration to simplify the
modeling. A PIM artifact is a high level abstraction of life cycle of an integration solution, through flexible
the corresponding components in PSM. To abstract the design and customization of Solution Templates and an
PSM components into PIM artifact, only the required interactive environment driven by Wizards. The tool
elements in PSM components are extracted. A provides levels of abstraction, separation of concerns,
transformation function, f, converts PSM component, and reusable assets to ease the task of solution
C, into the corresponding PIM artifact, A, is expressed composition. The WBI Express SE is chosen as our
as A = ƒ(C,MP), where MP is the mapping table platform specific platform with the model
representing for a particular PSM P. The transformation functions introduced. The tool is
transformation is based upon the mapping table which adapted as a WBI SE Tech Preview, and is available
defines the relationships between PSM components and from IBM Developer Works website [6].
PIM artifacts. Ideally, same transformation function We also describe the implementation of UCCnet as
can be applied to different PSM with the change of the a Solution Template, how it is composed as a platform
mapping table. independent model, how the points of variability are
In a runtime environment as shown in Figure 8, the defined, and its transformation to the platform specific
transformation function is expressed as A = ƒ(∆Cr, model for instantiation and deployment in WBI SE.
MP), where only the changed elements (∆) of the
runtime PSM component (Cr) are converted. Our tool References
keeps track of instances of components in a runtime
environment. This is made possible by the Component [1] J. Lee, K. Siau, and S. Hong, “Enterprise Integration
with ERP and EAI,” Communication of the ACM, pp.
Instance Traceability function as described in the next
54-60, Feb. 2003.
subsection. [2] Joaquin Miller and Jishnu Mukerji, ”MDA Guide
Version 1.0.1,” OMG/2003-06-01.
5.2. Component Instance Traceability http://www.omg.org/docs/omg/03-06-01.pdf
[3] Ying Huang, Kumar Bhaskaran, and Santhosh
The Component Instance Traceability function Kumaran, “Platform-Independent Model Templates for
utilizes URI to dynamically trace the component Business Process Integration and Management
instances in both PIM and PSM. Given a particular Solutions,” 2003 IEEE International Conference on
PSM component (Cr) and the corresponding mapping Information Reuse and Integration (IRI), pp. 617-622,
table (MP) of a particular PSM platform, the Oct. 2003.
[4] “Solution Templates Tool for WebSphere Business
transformation function (ƒURI) generates and traces the
Integration Server Express technology preview,” Dec.
corresponding URI value (AURI) of the artifact in the 2006.
PIM space, i.e., AURI = ƒURI(Cr, MP). http://www.ibm.com/developerworks/websphere/downl
Reversely, given a PIM artifact (A) and the mapping oads/simpleWBISE.html
table (MP) of a particular PSM platform, the reverse [5] Bill Moore, Knut Inge Buset, Dennis Higgins, Wagner
transformation function (ƒURI-1) generates and traces the Palmieri, Mads Pedersen, Joerg Wende, Alison Wong,
corresponding URI value (Cr URI) of a component in “WebSphere Business Integration Server Express The
that particular PSM space, i.e., Cr URI = ƒURI-1(A, MP). Express Route to Business Integration,” IBM Redbooks,
ISBN0738492035, Feb. 2005.
http://www.redbooks.ibm.com/abstracts/SG246353.html
5.3. Component Realization ?Open.
[6] UCCnet. http://www.uccnet.org.
The Component Realization transformation is [7] Lee Gavin, Geert Van de Putte, Suresh Addala,
expressed as Cr=ƒ-1(∆A,(C|Cr),MP). The transformation Rajaraman Hariharan, Daniel Max Kestin, Pushkar Suri,
function (ƒ-1), a reverse of component abstraction Kiran Tatineni , “Implementing WebSphere Business
function, dynamically transforms changed elements (∆) Integration Express for Item Synchronization,“ IBM
of the PIM artifact into the corresponding components Redbooks, ISBN0738498084, May 2004.
of a particular PSM. Similar to Component Abstraction http://www.redbooks.ibm.com/abstracts/SG246083.html
function, it requires a mapping table (MP). The ?Open.
different part is that it selects an existing PSM [8] EPCglobal Inc. http://www.epcglobalinc.org.
component if such one exists in the runtime PSM; [9] “A Guide to Understanding RFID,” RFID Journal.,
http://www.rfidjournal.com/article/gettingstarted/.
otherwise, a PSM component template is selected.
319
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
321
information. Intermediate nodes in the network
Davg = α × Davg + (1 − α ) × Dcur (1) maintain the sum of the queuing delay (Qt) and the
transmission delay (Tt) experienced by packets
traversing through intermediates. The queuing delay is
3. Improved Transport Protocol (ITP) the time spent by a packet from the time it is inserted
into the queue to the time it reaches the head of the
In this section, we describe the proposed improved queue to be dequeued by the MAC layer. The
transport protocol (ITP). The whole ITP operation transmission delay is measured as the time spent by the
model will first be introduced. When the ITP protocol packet in the MAC layer form the time it is dequeued
starts, the source node will send a probe packet to by the MAC layer to the time it gets transmitted
gather information of the entire route. This packet will successfully through the channel.
trace all the nodes of the route. This tracing procedure
is called the probe state. During the probe state, the 3.3. Data Rate Estimation with Fuzzy Logic
probe packet is relayed to each intermediate node. The
Control
probe packet can get the state of each node on the
route. The node states include transmission delay and
As mentioned before, once an intermediate node
queuing delay. After calculating the transmission delay
gets the data rate, the intermediate node should pass
and the queuing delay, the intermediate node can sum
through the fuzzy logic controller and then piggyback
up both the delay times. The delay time and the
on the packet to the next hop. When it passes the fuzzy
transmission rate are inversely proportional. We can
controller, the fuzzy logic controller will calculate the
use this relation to estimate the transmission rate. The
current data rate and the last data rate to get an
estimation scheme is based on fuzzy logic control,
appropriate rate for transmission.
which will be discussed later. After the probe state,
In the proposed ITP, we use EWMA with fuzzy
ITP will trigger the calculating scheme periodically
logic control to get the data rate. The equation for
with the sent packets.
EWMA with fuzzy logic control is shown in Eq. (2).
The parameter f is a variable.
3.1. Layer Coordination
D avg = (1 − f ) × D avg + f × Dcur (2)
The difference between the ITP and the traditional
TCP is that ITP needs the coordination of the MAC
layer. In the traditional TCP protocol, different layers In the following, we will introduce how to use the
have different control issues. For instance, the media fuzzy logic controller to get an appropriate data rate.
access control layer uses RTS/CTS and ACK The base logic for a fuzzy logic controller is that if the
mechanisms to provide transmission for each mobile data rate is low, the effect is more, and if the data rate
node. The routing layer enables the sender to find the is high, the effect is less. We first set up the fuzzication
destination node. In the ITP protocol, we use the MAC rule base. Then we compute the appropriate rate using
layer to gather other information, as discussed in the the rule base. The fuzzification membership function
last subsection. The queuing delay and the of the perceived data rate and the fuzzification
transmission delay are measured in the MAC layer. membership function of the signal power are shown in
Using the sum of the two parameters, we can find the Figs. 2 and 3, respectively.
data rate, which is an inverse of the sum of the delays.
The data propagation model is shown in Fig. 1. As the
probe packet passes through the current node, the
MAC layer will calculate the data rate.
322
p
∑ x × µ(x )
i i
f = i =1 p (3)
∑ µ (x )
i =1 i
323
4. Simulation Results
3.5.1. Probe State
We conducted a performance evaluation using NS2
During connection initiation, or when a sender (Network Simulation 2). NS2 is the most popular of all
recovers from a timeout, the slow start of TCP will network simulators. The mobility model used for
take a few round trip times to make the bandwidth topology generation was the random waypoint model.
available. During slow start, TCP wastes a lot of time. The simulation environment was a 1000 m × 1000 m
Due to frequent path failures and resultant timeouts in network grid of 100 nodes. The mobility speeds were
MANETs, a TCP connection can end up spending a from 3 m/s to 21 m/s. The signal power range was 150
considerable portion of its lifetime in the slow-start m. The amount of flows was 5 flows. The application
phase, thus degrading network utilization. layer generated the FTP flow, and the routing layer
ITP uses a probe packet to probe the available used the DSR protocol. 802.11b was used as the MAC
network bandwidth in a round trip time during the layer protocol. The simulation result was an average of
probe state. ITP performs the operation both during 100 different results from tests conducted for 100
connection initiation and when the network path seconds.
changes. The probe packets that are sent out during the In the simulations, we used TCP New Reno and
probe state to elicit rate feedback form the receiver. ATP as the transport protocol in the simulations. The
The function of the probe state is straightforward when simulations include time spent in slow/quick start and
the path change occurs. When a new path is used, the throughput versus mobility. The time spent in
sender is not aware of the available bandwidth of the slow/quick start was defined as the time from flow
path. Therefore, performing the rate estimation again start to the time the flow approach was stable.
allows the sender to operate at the true available Throughput was defined as the average bytes per
bandwidth. second.
Fig. 5 shows the time spent in slow/quick start
3.5.2. Reliability versus mobility speeds for 5 flows. From Fig. 5, we
can see that the time ITP uses is less than that of TCP.
ITP adopted the SACK for reliability. For each ITP uses more time from 1 m/s to 20 m/s. It presents
epoch time, ITP sends a probe packet and the receiver the average number of times connections enter the
sends the SACK feedback, which is larger than the slow start during a 100 seconds simulation period for
TCP-SACK. The estimate data rate D will piggyback different rates of mobility and different loads. It
on the SACK packets. In this SACK packet, ITP presents the average time spent in the slow start by the
provides reliability that ITP will again send the lost connections during the 100 seconds simulation. It can
packets. The lost packets sequence numbers are be observed that TCP connections spend a
recorded in the SACK block. The SACK format is considerable amount of time in the slow start phase,
discussed later. In the mechanism, ITP can enable the with a proportion of time going above 50 percent for
receiver to get all the data which may have been lost the higher loads.
during transmission. We can conclude that our proposed ITP in any case
the time spent increasing is less than TCP. We follow
3.6. Congestion Control the operation of the ATP quick start and the ITP time
spent is same as that of ATP. If the mobility speed is
After the probe state, ITP will enter the congestion higher, the time will increase. With the same mobility,
control state. In the congestion control state, ITP TCP spent more time in slow start than ITP did. ITP
mainly prevents congestion from occurring. The utilizes the network resource more efficiently than
mechanism is determined when the feedback packet is TCP.
received. Once the source node receives the feedback, Fig. 6 shows the throughput versus mobility speeds
it will determine how to control the flow. If the for 5 flows. Fig. 6 shows the throughput under various
received data rate D is higher than the previous data mobility speeds with 5 flows. As was expected, the
rate D, the source node will increase the sending rate. throughput decreased as the mobile nodes became
If the received data rate D is lower than the previous more mobile. The reason is that there were more
data rate D, the source node will decrease the sending chances for routes to break when the speed of the
rate. This mechanism prevents congestion. In addition, mobile nodes was faster. Thus, the number of packet
ITP will determine the lost packets to be retransmitted. loss increased. Because the proposed ITP estimates
each node’s condition for transmission, the
performance of throughput is better than ATP and
324
TCP. Even if mobility is enhanced, ITP still can This work was supported by the National Science
provide better performance than TCP New Reno and Council of Republic of China under grants NSC-94-
ATP. 2213-E-324-025 and NSC-95-2221-E-239-052.
70
References
60 ITP and ATP
Time in slow/quick start (s)
Acknowledgments
325
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Spread :
(2)
s2
s3
327
III. Region-based sensor selection special sensors, so sensors can easily exchange roles. In
our simulations, the leader sensor at time is one of
Region-based sensor selection is a sensor selection the sensors selected at time .
technique that makes a trade-off between accuracy and the
computational workload. In this scheme, all the sensors are Leader Sensor
selected for each selection. In this case, the increase in the target position,
amount of processing becomes a problem. Therefore, the region range
sensors chosen to observe a target are selected from the
if within region,
candidate sensors that are nearest to the observation target. send sensor position
sensor position
The candidate sensors are limited to a circular area called a
region. The computational workload of the sensor selection Sensor Selection
is substantially reduced by evaluating the effectiveness of selected sensorID
only the candidate sensors. Moreover, energy consumption if selected,
is reduced by limiting the number of sensors related to sensing result start sensing
the sensor selection processing. Section III-A describes the estimate
procedure of region-based sensor selection. Section III-B target position
describes the method of dynamically adjusting the region
size.
Fig. 3. Flow of sensor selection
328
㪊
the appropriate region size. If the target is moving fast,
even a small prediction error becomes significant. The
㪉㪅㪌 number of observation errors increases when selecting sen-
sors from a small region. Therefore, the appropriate region
㪉 㫍㪔㪈
size increases as the target’s speed increases. However,
㪸㫍㫉㩷㪼㫉㫉㫆㫉㩷㩿㫄㪀
㫍㪔㪌
㪈㪅㪌 㫍㪔㪈㪇 if the region size is decided only based on the target’s
㫍㪔㪈㪌 speed, when it is slow moving it becomes very small
㪈 㫍㪔㪉㪇
size. In that case, there are not enough sensors within a
㪇㪅㪌
region and an appropriate arrangement of the necessary
sensors can not be found. Therefore, a minimum size is
㪇 needed. This is decided by the number of sensor within the
㪇 㪉㪇 㪋㪇 㪍㪇 㪏㪇
㫉㪼㪾㫀㫆㫅㩷㫉㪸㪻㫀㫌㫊㩷㩿㫄㪀
region. However, a sensor is sometimes added or deleted
in wireless sensor networks, and the density of the sensor
Fig. 4. straight line is not constant. Therefore, the density of sensors at time
is unknown. Since the target’s position at time will
㪋
be close to the one at , the densities of the sensors
㪊㪅㪌 nearest the target will be close to being the same at these
㪊 times. Thus, by letting the density of the region at time
㪉㪅㪌 㫍㪔㪈 be ·½ , we can approximate ·½ by using ,
㪸㫍㫉㩷㪼㫉㫉㫆㫉㩷㩿㫄㪀
㪉
㫍㪔㪌
i.e., ·½ . The simulation results indicated that the
㫍㪔㪈㪇
㫍㪔㪈㪌 appropriate region size is related to the target’s speed and
㪈㪅㪌
㫍㪔㪉㪇 sensor density. Thus, we can calculate the region radius
·½ in the following way:
㪈
㪇㪅㪌
㪇
㪇 㪉㪇 㪋㪇 㪍㪇 㪏㪇
·½ ·½
·½
(4)
㫉㪼㪾㫀㫆㫅㩷㫉㪸㪻㫀㫌㫊㩷㩿㫄㪀
Fig. 5. circle where, ·½ is the target’s speed at time k+1, and and
are constants. ·½ can be calculated using the target’s
moving history, and ·½ can be approximated by .
target’s speed took on values from , Three sensors or more are needed within the region so
and we took the averages from 100 simulations. A move- that our technique evaluates the position by three point
ment history was needed to predict the moving target’s measurement. Thus, and from Figs. 4 and 5.
position. Therefore, it was assumed that it was possible We can calculate the region radius ·½ as follows
to accurately pursue the target and to maintain a correct
movement history. The AVERAGE heuristic proposed by
reference [3] was used to predict the target’s position. In
·½ ·½
(5)
this heuristic, it is assumed that the distance and direction
of a target’s movement is the mean value of the past IV. Performance Evaluation
movement.
The results from the simulation are shown in Figs. 4 In this section, accuracy, computational workload, and
and 5, which specifically show results for straight line energy consumption of region-based sensor selection are
and circle target movement models, respectively. In these evaluated. The simulation setting and the prediction tech-
cases, the number of errors increases not only when the nique are the same as that described in Section III-B.
region is small, but also when the region is too large. The Given the above settings, we evaluated the number of
sensors were first evaluated according to the distance from errors when the total number of sensors and the
the target, because our technique selects sensors from the region radius are varied. took on the values from
region. When the region is large, the sensors are selected
, and we averaged the values
by evaluating their arrangement (collinearity and spread). from 100 simulations.
Therefore, the number of errors included in the observation The errors in the actual target’s position and the esti-
results increase because a sensor that was far from the mated target’s position were used for the evaluation metrics
target was selected. Therefore, the region only needs to be of accuracy. The processing time for the sensor selection
small for an appropriate size to exist. was used as an evaluation metric of the computational
Figs. 4 and 5 also show that the target’s speed influences workload. PowerTOSSIM [4] was used as a simulator for
329
㻠㻚㻡
㻠
TABLE I. Energy consumption
㻟㻚㻡
1 5 10 15 20
㼍㼢㼞㻌㼑㼞㼞㼛㼞㻔㼙㻕
㻟
spread-based [mA] 297 301 287 308 303
region-based [mA] 110 139 186 239 285 㻞㻚㻡
㼞㼑㼓㼕㼛㼚
㻞
㼟㼜㼞㼑㼍㼐
TABLE II. Processing time 㻝㻚㻡
㻝
100 120 140 160
select 3 sensors [s] 4.80 10.70 20.21 36.52 㻜㻚㻡
region-based [s] 0.84 1.21 1.35 1.72 㻜
spread-based [s] 0.81 0.85 0.90 0.96 㻤㻜 㻝㻜㻜 㻝㻞㻜 㻝㻠㻜 㻝㻢㻜 㻝㻤㻜 㻞㻜㻜
㻺
the energy consumption evaluation. It is difficult to mea- Fig. 6. Estimation error (v=10)
sure the exact processing time of a simulator. Therefore,
we used a real sensor to measure the processing time. The
sensor was a MICAz [5] made by the Crossbow company. 㪏
㪸㫍㫉㩷㪼㫉㫉㫆㫉㩿㫄㪀
㪌
tion was influenced by the number of sensors related to 㪋 㫉㪼㪾㫀㫆㫅
the sensor selection. Since region-based sensor selection 㫊㫇㫉㪼㪸㪻
㪊
changes the region size to correspond to the target’s speed,
the target’s speed changed and Æ
fixed at 140. The 㪉
330
V. Related works One approach is to make multiple predictions and to
select the best sensor combination. In that case, it will be
Previous works [6], [7] proposed evaluation metrics necessary to reconsider the trade-off between observation
for sensor selection. The evaluation metrics proposed in accuracy and the computational workload and the power
[7] involve a lot of computation calculations and are not consumption.
suitable when a sensor calculates them. References [8],
[9], [10], [11], and [12] researched other sensor selections.
References [9] and [11] assumed that a sensor was a References
directional sensor, like a camera, and these approaches are
[1] V.Sadaphal and B.Jain, “Spread-based heuristic for sensor selection
not suitable for sensors that observe at a distance from the in sensor networks.” in COMSWARE. IEEE, 2006.
target. References [8] and [12] assumed that a sensor has [2] P.Levis, N.Lee, M.Welsh, and D.Culler, “Tossim: accurate and
the ability to move, and these approaches are not suitable scalable simulation of entire tinyos applications,” in SenSys ’03:
Proceedings of the 1st international conference on Embedded
for common sensors that have no mobility. Reference [10] networked sensor systems. New York, NY, USA: ACM Press,
took into consideration the reduction of information due 2003, pp. 126–137.
to communication delays. A sensor was selected based on [3] Y.Xu, J.Winter, and W.C.Lee, “Dual prediction-based reporting for
object tracking sensor networks,” mobiquitous, vol. 00, pp. 154–
the present target’s position. However, because the actual 163, 2004.
target’s position was uncertain, it was necessary to predict [4] V.Shnayder, M.Hempstead, B.Chen, G.W.Allen, and M.Welsh,
the target’s position from past movements. References [3], “Simulating the power consumption of large-scale sensor network
applications,” in SenSys ’04: Proceedings of the 2nd international
[13], and [14] proposed heuristics to predict a target’s conference on Embedded networked sensor systems. New York,
position. The AVERAGE heuristics proposed in reference NY, USA: ACM Press, 2004, pp. 188–200.
[3] and [13] ware used for simulation purposes in Section [5] J.Hill and D.Culler, “A wireless embedded sensor architecture for
system level optimization,” UC Berkeley Technical Report, January
IV. Reference [15] was another approach that reduced 2001.
the energy consumption of a sensor. In reference [15], [6] F.Bian, D.Kempe, and R.Govindan, “Utility based sensor selection,”
the energy consumption was reduced by changing the in IPSN ’06: Proceedings of the fifth international conference on
Information processing in sensor networks. New York, NY, USA:
radio strength according to the distance from the receiver, ACM Press, 2006, pp. 11–18.
because the energy consumption was larger when the data [7] H.Wang, K.Yao, G.Pottie, and D.Estrin, “Entropy-based sensor
was transmitted. selection heuristic for target localization,” in IPSN ’04: Proceedings
of the third international symposium on Information processing in
sensor networks. New York, NY, USA: ACM Press, 2004, pp.
VI. Conclusion and future work 36–45.
[8] A.Verma, H.Sawant, and J.Tan, “Selection and navigation of mobile
We proposed region-based sensor selection, which takes sensor nodes using a sensor network,” in PERCOM ’05: Pro-
ceedings of the Third IEEE International Conference on Pervasive
into account the trade-off between accuracy and the com- Computing and Communications. Washington, DC, USA: IEEE
putational workload. Region-based sensor selection selects Computer Society, 2005, pp. 41–50.
an appropriate combination of sensors for a target observa- [9] P.V.Pahalawatta, T.N.Pappas, and A.K.Katsaggelos, “Optimal sen-
sor selection for video-based target tracking in a wireless sensor
tion. The computational workload is reduced by selecting network,” in ICIP, 2004, pp. 3073–3076.
only the candidate sensors that are within the region around [10] S.Kagami and M.Ishikawa, “A sensor selection method considering
the target. We showed that the number of sensors within communication delays,” The Transactions of the Institute of
Electronics, Information and Communication Engineers. A,
the region and the target’s speed are related to the trade- vol. 88, no. 5, pp. 577–587, 20050501. [Online]. Available:
off between accuracy and the computational workload, and http://ci.nii.ac.jp/naid/110003314052/en/
therefore, we proposed a method to dynamically adjust the [11] V.Isler and R.Bajcsy, “The sensor selection problem for bounded
uncertainty sensing models,” in IPSN ’05: Proceedings of the
region. The simulation results showed that region-based 4th international symposium on Information processing in sensor
sensor selection reduces the computational workload and networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 20.
energy consumption in comparison with the spread-based [12] Y.Mostofi, T. Chung, R. Murray, and J. Burdick, “Communication
and sensing trade-offs in decentralized mobile sensor networks:
heuristics, and its accuracy improves even more when a cross-layer design approach,” in IPSN ’05: Proceedings of the
the target moves slowly. In region-based sensor selection, 4th international symposium on Information processing in sensor
sensors are selected by referring to the predicted target’s networks. Piscataway, NJ, USA: IEEE Press, 2005, p. 16.
[13] Y.Xu, J.Winter, and W.C.Lee, “Prediction-based strategies for en-
position. Therefore, if the predicted target’s position differs ergy saving in object tracking sensor networks,” mdm, vol. 00, p.
from the actual target’s position, the selected sensors will 346, 2004.
not be effective enough for an observation. The AVERAGE [14] Y.Xu and W.C.Lee, “On localized prediction for power efficient
object tracking in sensor networks,” in ICDCSW ’03: Proceedings
heuristics predicts the target’s position from a target’s past of the 23rd International Conference on Distributed Computing
movement. Therefore, when a target moves at random and Systems. Washington, DC, USA: IEEE Computer Society, 2003,
a target’s velocity greatly changes, region-based sensor p. 434.
[15] J.P.Wagner and R.Cristescu, “Power Control for Target Tracking
selection will be ineffective. Finding a way to reduce the in Sensor Networks,” in Conference on Information Sciences and
influence of prediction accuracy will be a future work. Systems, 2005.
331
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
2.1. IEEE 802.11 PS mode in ad hoc networks Recently many researchers had proposed the PS
protocols for asynchronous environment to increase the
The battery of a wireless host can provide only lim- survivability of asynchronous ad hoc networks [5, 6, 7].
ited energy. Thus, the design of an energy-efficient A kind of asynchronous PS protocols based on quorum
systems had been applied greatly in arranging wakeup
333
frequency. They utilize the intersection property of Host1 0 1 2 3 4 5 6 7
quorum systems to guarantee that any pair of wireless Host2 6 7 0 1 2 3 4 5
hosts can wake up simultaneously to transmit the uni- Figure 2. Quorum-based asynchronous PS protocol.
cast messages. The definition of the quorum system is
The difference pair is based on the notion of cyclic
defined as follows.
difference set in combinatorial theory [6]. Let
Definition 1 A quorum system C under U={0,1, …, U={0,1, …, N−1} and Q is a subset of U. A cyclic dif-
N–1} is a collection of non-empty subsets of U, called ference set of Q is defined that Q(i)={(q+i) mod N |
quorums, which satisfies the intersection property: ∀q∈Q}, where i is a positive integer. Thus the cyclic
∀Qs , Qt ∈ C: Qs ∩ Qt ≠ ∅. difference set Q(i) denotes the drifting of Q with a
volume i. The difference pair is defined by two subsets
For example, C′={{0,1},{0,2},{0,3},{1,2,3}} is a of U such that their cyclic difference sets have the
quorum system under U′={0,1,2,3}. The wireless host same value. The definition of the difference pair is de-
in the quorum-based asynchronous PS protocol divides fined as follows.
the time axis into equal-length beacon intervals. Thus,
each wireless host chooses a quorum arbitrarily and Definition 4 Let C = {c1 ,c2 ,…,ck } and D = {d1 ,d2 ,…,dl }
takes this quorum as its wakeup frequency of beacon be two subsets of U={0,1, …, N−1}. The ordered pair
interval. By the intersection property, any pair of wire- (C, D) is called an (N, k, l)-difference pair if ∀δ∈U,
less hosts will wake up simultaneously at the inter- there exists at least one pair (ci , dj ), ci ∈C, dj ∈D, such
sected beacon interval if their clocks are synchronous. that ci = dj + δ(mod N).
However, the clock-drifting problem may occur on the
wireless hosts due to their asynchronous clocks. Two For example, consider the two subsets C={0,1,2,4}
wireless hosts with clock-drifting problem can not and D={3,4,5,7} under U={0,1,2,3,4,5,6,7}. The or-
wake up simultaneously even though their quorums dered pair (C, D) is a (8,4,4)-difference pair because
have an intersection. Hence, not all quorum systems 4 = 4 + 0(mod 8), 4 = 3 + 1(mod 8), 1 = 7 + 2(mod 8),
are suitable to arrange wakeup frequency for asyn- 0 = 5 + 3(mod 8), 1 = 5 + 4(mod 8), 0 = 3 + 5(mod 8),
chronous PS protocol. In [5], J.R. Jiang et al. showed 2 = 4 + 6(mod 8), 2 = 3 + 7(mod 8).
that only the quorum systems satisfying the rotation For a difference pair (C, D), a value dj in D which
closure property can tolerate the clock-drifting problem.
The definition of the rotation closure property is de- drifts δ volumes will still equal to a value ci in C, that
fined as follows. is C ∩ D(δ) ≠ ∅, ∀δ∈U. Therefore, when two quo-
rums are a difference pair, these two quorums with dif-
Definition 2 Given a positive integer i and a quorum Q ferent rotation volumes still have an intersection.
in a quorum system C under U={0,1, …, N–1}, we de- The cyclic quorum systems utilize the concept of
fine rotate(Q , i)={(j + i) mod N | j∈Q}. difference pair to construct the quorum systems such
that any pair of quorums in the cyclic quorum is a dif-
Definition 3 A quorum system C under U={0,1, …,
ference pair. Thus, the cyclic quorum systems obvi-
N–1} is said to have the rotation closure property if
ously satisfy the rotation closure property.
∀Qs , Qt ∈ C, i∈{0,1, …, N–1}: Qs ∩ rotate(Qt , i) ≠ ∅.
C={{0,1,2,4},{1,2,3,5},{2,3,4,6},{2,3,4,6},{3,4,5,7 2.4. Problem statement
},{4,5,6,0},{5,6,7,1},{6,7,0,2},{7,0,1,3}} is a quorum
system under U={0,1,2,3,4,5,6,7}. Two wireless hosts The quorum-based asynchronous PS protocols can
‘1’ and ‘2’ choose {0,1,2,4} and {3,4,5,7} to be their not guarantee that more than one receiver is awake
wakeup frequencies of beacon interval respectively. As when the transmitter requests to transmit the multicast
the example shown in Fig. 2, when the clock of the message. Therefore, the transmitter may adopt the busy
wireless host ‘2’ drifts a volume 2, {0,1,2,4} ∩ ro- waiting approach to notify the receivers to keep awake
tate({3,4,5,7},2) is still non-empty subsets. Thus, these one by one and then transmit the multicast message
two wireless hosts can still wake up simultaneously at when all receivers are awake. However, a wireless host
the same beacon interval even their clocks drift. It is may adjust its wakeup frequency according to its rest
not hard to verify that for any pair of quorums in the of energy for extending its lifetime. Thus, the trans-
quorum system C, Qs ∩ rotate(Qt , i) ≠ ∅ such that the mitter can not predict when the receivers will wake up.
Hence, the early wakeup receivers will enter the busy
rotation closure property holds.
waiting state and consume a lot of energy in idle
monitoring for waiting the multicast message until the
2.3. Difference pair last receiver wakes up. In this paper, we try to design a
334
PS multicast protocol, named CRT-MAC PS protocol, satisfied the difference m-pair property by using Chi-
for the asynchronous ad hoc networks to reduce energy nese Remainder Theorem.
consumption in waiting multicast messages. When the
transmitter requests to transmit the multicast message, 3.2. Chinese Remainder Theorem
each receiver will choose a new wakeup frequency ac-
cording to the notification sequence such that the ear- The Chinese Remainder Theorem was posed by
lier wakeup receivers wake up with less frequency and Sun Tzu Suan-Ching, the problem is certain things
the later wakeup receivers wake up with more fre- whose number is unknown. The Chinese Remainder
quency. Eventually, m wireless hosts will wake up si- Theorem could be formally described as follows [12].
multaneously to receive the multicast message and
save energy consumption in waiting multicast message. Theorem 1 Let p1 , p2 , …, pm be m positive integers
which are pairwise relatively prime, i.e. gcd(pi , pj )=1
3. The CRT-MAC PS Protocol when i≠j. Let P=p1 ×p2 × …×pm and let r1 , r2 , …, rm be
m integers. Then the system of linear congruences
3.1. Difference m-pair I ≡ r1 (mod p1 ) ≡ r2 (mod p2 ) ≡ ... ≡ rm (mod pm )
has a common solution I to all of the congruences, and
The difference m-pair property is an extension of any two solutions are congruent to one another modulo
the difference pair. The definition is formally defined P. Furthermore, there exists exactly one solution I be-
as follows. tween 0 and P–1.
Definition 5 Let Q1 , Q2 , …, Qm are m subsets of In the Chinese Remainder Theorem, a common so-
U={0,1, …, N−1}. The ordered m-pair (Q1 ,Q2 , …, Qm ) lution I can generated by each multiple of pt and then
is called an (N, k1 , k2 , …, km )-difference m-pair if ∀ plus rt , for 1≤ t ≤ m. When the remainders r1 , r2 , …, rm
δ1 ,δ2 , ...,δm ∈U, there exist x1 ∈Q1 , x2 ∈Q2 , …, xm ∈Qm are different, the common solution I between 0 and
such that y = xi + δi (mod N), where ki =|Qi | for 1 ≤ i ≤ P−1 is also different. Hence, we utilize the concept of
the Chinese Remainder Theorem to generate m subsets
m, y∈U.
and guarantee that these m subsets have the intersec-
By definition 5, we observe that if Q1 , Q2 , …, Qm tion after different rotation volumes. Let p1 , p2 , …, pm
are an (N, k1 , k2 , …, km )-difference m-pair, they have be m positive integers which are pairwise relatively
at least an intersection after different rotation volumes P
prime and P=p1 ×p2 × …×pm . Qt ={pt k | 0≤ k ≤ – 1},
δ1 , δ2 ,..., δm among them. That is, Q1 (δ1 )∩Q2 (δ2 ) pt
∩ …∩Qm (δm ) ≠ ∅. In the following, an (N, k1 , k2 , …, for 1≤ t ≤ m, are m subsets under U={0,1, …, P−1}. By
the Chinese Remainder Theorem, we observe that
km )-difference m-pair may simply be called a differ-
∃I∈U, I∈Q1 (r1 )∩Q2 (r2 )∩ …∩Qm (rm ) ≠ ∅, ∀rt ∈U,
ence m-pair when no confusion may arise.
for 1≤ t ≤ m. The ordered m-pair (Q1 ,Q2 , …, Qm ) is a
For example, consider the three subsets Q1 ={0,5,10,
difference m-pair.
15,20,25}, Q2 ={0,3,6,9,12,15,18,21,24,27} and Q3 ={0,
For example, consider the three pairwise relatively
2,4,6,8,10,12,14,16,18,20,22,24,26,28} under U={0, prime 5, 3 and 2. We can construct three subsets
1, …,29}, where |Q1 |=6, |Q2 |=10, |Q3 |=15 and N=30. Q1 ={0,5,10,15,20,25}, Q2 ={0,3,6,9,12,15,18,21,24,27}
When δ1 =0, δ2 =1 and δ3 =8, we can find that 10∈Q1 , and Q3 ={0,2,4,6,8,10,12,14,16,18,20,22,24,26,28}
9∈Q2 , 2∈Q3 such that y = 10 = 10 + 0(mod 30) = 9 + under U={0,1, …, 29}. When the remainders are r1 =0,
1(mod 30) = 2 + 8(mod 30). It is not hard to verify that r2 =1 and r3 =0, Q1 (0)={0,5,10,15,20,25}, Q2 (1)=
∀δ1 , δ2 , δ3 ∈U, these exist x1 ∈Q1 , x2 ∈Q2 , x3 ∈Q3 such {1,4,7,10,13,16,19,22,25,28} and Q3 (0)={0,2,4,6,8,10,
that y = xi + δi (mod N), for 1 ≤ i ≤ 3, y∈U. Thus, the 12,14,16,18,20,22,24,26,28} have a common solution
ordered 3-pair (Q1 ,Q2 ,Q3 ) is a (30,6,10,15)-difference 10. It is not hard to verify that ∀r1 , r2 , r3 ∈U, those
3-pair. Hence, for any rotation volumes δ1 , δ2 and δ3 three subsets exist an intersection. Thus, the ordered
among Q1 , Q2 and Q3 , Q1 (δ1 )∩Q2 (δ2 )∩Q3 (δ3 ) ≠ ∅. It 3-pair (Q1 ,Q2 ,Q3 ) is a difference 3-pair.
will guarantee that m wireless hosts with different rota-
tion volumes can wake up simultaneously when m 3.3. CRT-MAC PS protocol
wireless hosts take these m subsets satisfied the differ-
ence m-pair property as their wakeup frequencies. The In asynchronous PS protocols, the wireless host di-
following will introduce how to generate m subsets vides the time axis into equal-length beacon intervals.
335
It is more difficult to synchronize m wireless hosts than R1 0 1 2 3 4 5 6 7 8 R1 0 1 2 3 4 5 6 7 8 9 10
two wireless hosts. The busy waiting approach is a R2 0 1 2 3 4 5 6 7 R2 0 1 2 3 4 5 6 7 8 9
R3 0 R3 0 1 2
simple approach that can lead m wireless hosts to wake
(a) (b)
up simultaneously. In this approach, the transmitter no-
Figure 3. Examples of Busy waiting approach and
tifies the receivers to keep awake one by one and then
CRT-MAC PS protocol for the multicast message.
transmit the multicast message after all receivers are
awake. The receivers notified early will enter the busy Procedure CRT-MAC_ transmitter (Int m){
waiting state and consume a lot of energy in idle Set p1 , p2 , …, pm are pairwise relatively prime descending;
monitoring for waiting the multicast message. In the For( Receiver_i=0; Receiver_ i <m; Receiver_ i ++) do{
Listen Receiver_ i wakeup;
worst case for waiting the multicast message, m–1 Send CRT-MAC_ receiver( pReceiver_i +1);
wireless hosts have entered the busy waiting state but }
the transmitter still has to wait for the last wireless host Wait every Receiver_i wakeup;
to wake up and then starts to transmit the multicast Send MulticastMessage;
}
messages. Fig. 3(a) shows a simple example of the
busy waiting approach. The transmitter transmits the Figure 4. The procedure of CRT-MAC transmitter.
multicast message to the receivers ‘1’, ‘2’ and ‘3’. The Procedure CRT-MAC_ receiver (Int p){
receivers ‘1’ and ‘2’ have already entered the busy Clock_temp = 0;
waiting state in the beginning, whereas the receivers Do{
If (Clock_temp mod p == 0) Then
‘3’ is notified to enter the busy waiting state after the Listen a Beacon Interval;
eighth beacon interval passed. Thus, the receivers ‘1’ …..;
Else
and ‘2’ consume a lot of energy in idle monitoring for Sleep a Beacon Interval;
waiting the multicast message. End
} Loop (Clock_temp++)
In our CRT-MAC PS protocol, the transmitter noti- }
fies m receivers to wake up one by one and dispatches Figure. 5. The procedure of CRT-MAC receiver.
the pairwise relatively primes p1 , p2 , …, pm to m re-
ceivers as their wakeup frequencies respectively ac- 9,12,15,18,21,24,27} and Q3 ={0,2,4,6,8,10,12,14,16,
cording to the notification sequence, where the sizes of 18,20,22,24,26,28} under U={0,1, …, 29}. According
p1 , p2 , …, pm are descending. Then each receiver t to their new wakeup frequencies and the rotation vol-
generates its new wakeup frequency Qt by using Chi- umes δ1 =0, δ2 =1 and δ3 =8, these three receivers will
nese Remainder Theorem according to its assigned wake up simultaneously at the beacon interval 10 = 10
prime and takes Qt as its new wakeup frequency. Due + 0 = 9 + 1 = 2 + 8, where 10∈Q1 , 9∈Q2 , 2∈Q3 and
to the descending property of p1 , p2 , …, pm , the fre- 10∈Q1 (δ1 )∩Q2 (δ2 )∩Q3 (δ3 ) ≠ ∅. Then, the transmitter
quencies of Q1 , Q2 , …, Qm are ascending such that the starts to transmit the multicast message to them.
earlier wakeup receivers wake up with less frequency Fig. 4 illustrates the procedure of the transmitter
and the later wakeup receivers wake up with more fre- when the transmitter wants to transmit the multicast
quency. Thus, the receivers can reduce the energy con- message. Fig. 5 illustrates the procedure of the receiver
sumption in idle monitoring for waiting the multicast when the receiver receives the notification of choosing
message. We let δ1 , δ2 , ..., δm to be the rotation vol- a new wakeup frequency.
umes for m receivers respectively. According to Chi-
nese Remainder Theorem, these m receivers will wake 4. Simulation setting and results
up simultaneously at the beacon interval I∈Q1 (δ1 )∩
In the simulations, we adopt the QualNet simulator
Q2 (δ2 )∩ …∩Qm (δm ) ≠ ∅. Hence, after all receivers [16] to simulate our CRT-MAC PS protocol. We mod-
are awake, the transmitter starts to transmit the multi- ify the ad hoc module of MAC-layer in the QualNet to
cast message to them. fit our CRT-MAC PS protocol. We assume that the
Fig. 3(b) shows an example of CRT-MAC. When transmission radius is 250 meters and the transmission
the transmitter wants to transmit the multicast message rate is 2M bits/sec. The MAC-layer of wireless hosts
to three receivers ‘1’, ‘2’ and ‘3’ and notifies them se- basically follows the IEEE 802.11 standard, except the
quentially, the transmitter dispatches p1 =5, p2 =3 and power management. Table 1 summarizes the power
p3 =2 to three receivers ‘1’, ‘2’ and ‘3’ as their wakeup model parameters used in our simulations, which are
frequency respectively according to the notification obtained from real experiments using Lucent Wave-
sequence. These three receivers generate their new LAN cards [13]. Transmitting or receiving a broadcast
wakeup frequencies Q1 ={0,5,10,15,20,25}, Q2 ={0,3,6, packet of L bytes has a cost Pbase+Pbyte× L, where Pbyte
is the energy consumption per byte. We set three
336
Table 1. tee that m different wakeup frequencies have the inter-
Energy consumption parameters in the simulation. section even though they drift with different rotation
Transmit rate:2Mbps volumes. When m wireless hosts are required to trans-
Measured Power consumed
Power Supply:4.74 V mit the multicast messages, each wireless hosts will
Sleep Mode 14 mA 27 uW/ms choose a new wakeup frequency generated by the con-
Idle Mode 178 mA 843 uW/ms
Broadcast Receive 204 mA
cept of Chinese Remainder Theorem. The new wakeup
56+0.5×L uW/packet
Broadcast Transmit 280 mA 266+1.9×L uW/packet
frequency satisfies the difference m-pair property.
Eventually, these m wireless hosts will wake up simul-
taneously and receive the multicast message. Finally,
we simulate our CRT-MAC PS protocol to evaluate its
energy consumption and compare with the busy wait-
ing approach. The simulation results have confirmed
that the energy consumption of our PS protocol is less
(a) (b) than that of the busy waiting approach.
Figure 6. (a) Energy consumption of vary number
of multicast packets. (b) Energy consumption of the 6. References
CRT-MAC PS protocol and busy waiting approach.
[1] C.E. Perkins, “Ad Hoc Networking,” Addison Wesley,
wireless hosts in the simulation and transmit the mul- 2001.
ticast message to them. In the first simulation, we [2] X. Jiang, J. Polastre, and D. Culler, “Perpetual environ-
compare the energy consumption of vary number of mentally powered sensor networks,” IEEE SPOTS, 2005.
multicast packets. Fig. 6(a) shows the comparison of [3] IEEE Std 802.11-1999, “Wireless LAN Medium Access
the energy consumption of transmitting multicast mes- Control (MAC) and Physical Layer (PHY) specifications,”
sages and retransmitting multicast messages. We can IEEE, 1999.
observe that the multicast messages need to be re- [4] C.M. Chao and J.P. Sheu, “An Adaptive Quorum-Based
transmitted while the receivers are in PS mode. Hence, Energy Conserving Protocol for IEEE 802.11 Ad Hoc Net-
works,” IEEE Transactions On Mobile Computing, 2006.
the energy of the transmitter will be rapidly consumed
[5] J.R. Jiang, Y.C. Tseng, C.S. Hsu, and T.H. Lai, “Quo-
with the increasing of retransmission. rum-Based Asynchronous Power-Saving Protocols for IEEE
In order to reduce the possibility of retransmitting 802.11 Ad Hoc Networks,” ACM Journal on Mobile Net-
the multicast messages, the transmitter needs to wait works and Applications, 2005.
for all receivers to be awake in both the busy waiting [6] Y.C. Tseng, C.S. Hsu, and T.Y. Hsieh, “Power-Saving
approach and the CRT-MAC PS protocol and then Protocols for IEEE 802.11-Based Multi-Hop Ad Hoc Net-
transmit the multicast messages once. However, wait- works,” IEEE INFOCOM, 2002.
ing for other receivers to wake up will increase energy [7] P. Hurni, T. Braun, and L.M. Feeney, “Simulation and
consumption of idle monitoring. Hence, in the second Evaluation of Unsynchronized Power Saving Mechanisms in
Wireless Ad Hoc Networks,” WWIC, pp. 311-324, 2006.
simulation, we evaluate the energy consumption of the
[8] M. Maekawa, “A √N Algorithm for Mutual Exclusion in
busy waiting approach and that of the CRT-MAC PS Decentralized Systems,” ACM Trans. Comput. Syst., 1985.
protocol. Fig. 6(b) shows that the energy consumption [9] W.S. Luk and T.T. Huang, “Two New Quorum Based
of the CRT-MAC PS protocol is less than that of the Algorithms for Distributed Mutual Exclusion,” Proc. Int’l
busy waiting approach before the transmitter starts to Conf. Distributed Computing Systems, pp.100-106, 1997.
transmit the multicast message. The reason is that in [10] C.M. Lin, G.M. Chiu, and C.H. Cho, “A New Quo-
CRT-MAC protocol the receiver notified to wake up rum-Based Scheme for Managing Replicated Data in Dis-
will choose a new wakeup frequency and wakeup or tributed Systems,” IEEE Trans. Computers, vol.51, 2002.
doze according to its new wakeup frequency, whereas [11] T. You, H.S Hassanein, and C.-H. Yeh, “SeMAC: Ro-
in the busy waiting approach the receiver notified to bust broadcast MAC Protocol for multi-hop,” IPCCC, 2006.
[12] C.H. Wu, J.H. Hong, and C.W. Wu, “RSA Cryptosystem
wake up need to keep awake until the multicast trans- Design Based on the Chinese Remainder Theorem,” Pro-
mission is finished. Hence, the CRT-MAC PS protocol ceedings of the ASP-DAC, pp. 391-395, 2001.
consumes less energy in waiting the multicast message. [13] L.M. Feeney and M. Nilsson, “Investigating the Energy
Consumption of Wireless Network Interface in an Ad Hoc
5. Conclusion Networking Environment,” IEEE INFOCOM, 2001.
[14] J. So and N.H. Vaidya, “A Multi-Channel MAC Proto-
In this paper, we propose a new asynchronous PS col for Ad Hoc Wireless Networks,” ACM Mobihoc, 2004.
[15] M. Hall Jr., Combinatorial Theory. John Wiley & Sons,
protocol, named CRT-MAC PS protocol, for the mul- 1986.
ticast transmission in the asynchronous ad hoc network. [16] QualNet, http://www.scalable-networks.com/.
We introduce the difference m-pair property to guaran-
337
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract In order to support multiple types of service for delivering high speed Internet access to businesses,
with different QoS requirements in heterogeneous wireless homes and hot spots.
networks, efficient resource management, call admission The systems in heterogeneous wireless networks are
control strategies, and mobility management are important able to maintain the delivered QoS to different users at the
issues. In this paper, we propose Bandwidth Management target level with the combination of call admission control
Strategy 1 (BMS1), Bandwidth Management Strategy 2 and resource management techniques. In this paper, two
(BMS2) and reservation scheme with Fuzzy controller for bandwidth management and reservation schemes
real-time services. Simulation result shows that the Bandwidth Management Strategy 1, Bandwidth
proposed methods balance resource utilization outperforms Management Strategy 2 are proposed to decrease call
the previous work and traditional CAC by improving the reject probability for better resource utilization. The
call reject probability (CRP). bandwidth management strategies include admission
Keywords: Heterogeneous wireless network, QoS, CAC, control, resource reservation mechanism for real-time
CRP. services. And in real-time services, some traffic has bursty
features, it is hard to reserve appropriate bandwidth for
such traffic, so we propose Fuzzy controller to adjust
1. Introduction bandwidth of real-time service adaptively and enhance
The future wireless network trend is to connect to the resource reservation mechanism [4,5].
network anywhere and anytime. Thus, the integration of This paper is organized as follows. Section 2 introduces
different wireless data networks such as WiFi, WiMAX the related work. Section 3 depicted the system model and
and UTRAN [1] to become a multi-tier heterogeneous the call management flow. The proposed BMS algorithms
wireless network is a more and more popular issue. and Fuzzy controller are described in section 4. In section
Heterogeneous wireless network has the feature that all 5, the simulation model is proposed and simulation results
users are able to switch different access technologies are evaluated and compared. Conclusion is given in section
according to their demands. How to provide such a 6.
multiple types of applications with different QoS
requirements, the efficient resource management and call 2. Related Work
admission control strategies play an important role [2,3].
In nowadays, the WiFi network can provide Lots of call admission control (CAC) and resource
communication coverage in a close area. WiFi connect to reservation schemes designed for different choices and
the Internet only in a limited range with an access point approaches have been proposed [6,7]. But those CAC
(AP). The limited coverage range of WLAN makes it scheme are static method. Then, some adaptive method in
difficult to fulfill the future wireless network trend to dealing with resource reservation schemes, CAC and
connect to the network anywhere and anytime. Unlike bandwidth control mechanisms have been proposed to
802.11, WiMAX has been designed specifically for cope with the complex wireless network [8,9]. A dynamic
deployment in outdoor environments. WiMAX, also known admission control for WiMAX networks and a handoff
as IEEE 802.16 offers a high speed data, voice and video algorithm for the hybrid network or for WiFi and WiMAX
services with a bandwidth of up to 72Mbps over a range of are proposed in [10,11]. Besides, how many neighboring
30 miles. It offers a non-line-of-sight (NLOS) range of 4 cells and which cells will make resource reservation are
miles and supports a point-to-multipoint distribution. two important issues [12]. The resource reservation in
Therefore, a natural trend of combining WiMAX with WiFi neighboring cells can provide real-time traffic with more
will need to create a system, a complete wireless solution stationary call for handoff call. In [13], it proposed a
339
in the target cell. We provide no resource reservation for 4.3 BMS2
these kinds of traffic due to nonreal-time packets or data
packets which can tolerate longer transmission delay and Figure 3 shows the BMS2 algorithm of WiMAX new
packet loss. call for sharing. In WiMAX cell, if a new call of real-time
The real-time traffic type in WiMAX new call traffic type arrives and the target cell or neighboring cells
procedure, WiMAX horizontal handoff call procedure, do not have enough capacity to support traffic QoS
WiFi horizontal handoff call procedure and WiFi vertical requirements. The target cell is allowed to “share” some of
handoff call procedure all are needed to reserve resource the bandwidth from the passive capacity (reserved capacity
resulted in higher threshold of admission control for real- for handoff calls) to improve the call blocking probability
time traffic type. On the contrary, our proposed strategy performance.
adopts lower threshold of admission control for nonreal- For a real-time new call, the BMS 2 works as follows.
time traffic and it maybe introduces higher blocking or First, the BMS 2 is verified if Cdown_ resi + Cdown_ s and
dropping probability for real-time traffic. To avoid this, the Cup _ resi + Cup _ s are sufficient for the call. If they are able
balance mechanism is proposed in next section. to support the traffic QoS requirement and the resource
reservation succeeds, the new call is accepted and reserves
For a WiMAX new call bandwidth in ε neighboring cells. If either reservation
IF UGS or ERT-VR traffic type failed or the available capacity is not enough for the call,
IF Cdown_ resi ≧ desired amount of downlink bandwidth the call is blocked. As for a nonreal-time new call, it is
AND Cup _ resi ≧desired amount of uplink bandwidth
blocked as long as no enough residual capacity available
Allocate desired amount of bandwidth
Resource Reservation for this call.
ELSE
Call blocked For a WiMAX new call
IF RT-VR traffic type IF UGS or ERT-VR traffic type
IF Cdown_ resi ≧ desired amount of downlink bandwidth
IF Cdown_ resi desired amount of downlink bandwidth
AND Cup _ resi ≧desired amount of uplink bandwidth
Fuzzy Bandwidth controller AND Cup _ resi desired amount of uplink bandwidth
Resource Reservation Allocate desired amount of bandwidth.
ELSE Resource Reservation
Call blocked IF There is enough passive resource capacity to be shared
IF NRT-VR traffic type Fuzzy Ratio controller
IF Cdown_ resi ≧ minimum amount of downlink bandwidth ELSE
AND Cup _ resi ≧minimum amount of uplink bandwidth Call blocked
Balance mechanism IF RT-VR traffic type
ELSE IF Cdown_ resi desired amount of downlink bandwidth
Call blocked AND Cup _ resi desired amount of uplink bandwidth
IF BE traffic type
Fuzzy Bandwidth controller
IF Cdown _ resi ≧ 0 AND Cup _ resi ≧0 Resource Reservation
Balance mechanism. ELSE
ELSE Call blocked
Call blocked IF NRT-VR traffic type
IF Cdown_ resi ≥ minimum amount of downlink bandwidth
Figure 2 BMS 1 for WiMAX new calls.
AND Cup _ resi ≥ minimum amount of uplink bandwidth
Allocate desired amount of bandwidth.
4.2 Balance Mechanism ELSE
Call blocked
Actually CRP is the sum of call dropping probability IF BE traffic type
(CDP) and call blocking probability (CBP). In our IF Cdown_ resi ≥ 0
proposed strategy, it adopts higher threshold of admission AND Cup _ resi ≥ 0
control for real-time traffic type. In order to avoid higher Balance mechanism.
CBP and CDP of real-time traffic type as a result of higher ELSE
Call blocked
threshold of admission control, the resource reservation
balance mechanism records the CBP and the CDP of real- Figure 3 BMS 2 algorithm.
time traffic type that the handoff calls are blocked or
dropped as a result of a fail in reserving resource, then the
4.4 Fuzzy Bandwidth Controller
threshold update accordingly.
The status of network always changes from time to
340
time. Therefore, static resource reservation mechanism can inference according to the Fuzzy Rule Base. In our case,
not adjust accordingly. Thus, the Fuzzy controller within the Fuzzy Rule Base is expressed as the following format:
the resource reservation mechanism alters the parameters
dynamically and adaptively. For example, a real-time Rule i:
service like variable bit rate (VBR) traffic that exhibits IF Cγ 1 is U Cmγ 1 and PD is U PmD
highly bursty and nonstationary properties. Inefficient Then set the ρ for τ , m = 1, 2, 3.
resource allocation may lead to under-utilization of
network resources or excessive traffic delay. To prevent
more bandwidth being allocated than needed, a Fuzzy
5. Simulation Results
bandwidth controller is introduced in the bandwidth Six types of calls are considered in the simulation in
management scheme to adaptively adjust the amount of terms of WiMAX new calls, WiFi new calls, WiMAX
allocated bandwidth for new and handoff calls based on the horizontal handoff calls, WiFi horizontal handoff calls,
current network conditions. WiMAX vertical handoff calls, and WiFi vertical handoff
The fuzzy bandwidth controller adjusts the allocated calls. Traffics are generated following Poisson distribution
bandwidth to the target RT-VR traffic based on system with average arrival rates. The call holds duration for data,
state, e.g. residual bandwidth and call dropping voice, and video traffic are exponentially distributed. The
probability. The system residual bandwidth can be derived, value of target dropping probability PD_tar is set to 0.02 [8].
and recall the bandwidth management strategy, every time The threshold of dwelling time of a mobile user staying in
a handoff call is accepted or dropped, system call dropping a cell is estimated periodically by using the dwelling time
probability PD is updated. When PD reaches or exceeds statistics that is updated.
the target cell dropping probability PD _ tar , the system
calculates the dropping probability change ∆PD , current
residual capacity Cresi are derived, the fuzzy bandwidth
controller is initiated. ∆ P D= | P D − P D _ tar | .
Fuzzification is the process that translates the real
number inputs of each feedback into linguistic terms. Fig. 5
shows the dropping probability change ∆PD , three
linguistic terms are defined as {low, medium, high} of
each of them with corresponding membership function.
(a)
341
The CRP is evaluated for each strategy, the CRP is the Amendment 2: Physical and Medium Access Control
summation of CBP and CDP, and the proposed BMS1 and Layers for Combined Fixed and Mobile Operation in
BMS2 are compared with two resource management Licensed Bands,” Feb. 2006.
methods in [13], called Com_RMS 1 and Com_RMS 2, [2] N. Nasser, A. Hasswa and H. Hassanein, “Handoffs in
respectively. First, the CRP of real-time traffic of the fourth generation heterogeneous Networks,” IEEE
proposed BMS1 and BMS2 is smaller than Com_RMS 1 Communication Magazine, vol. 44, issue 10, Oct. 2006,
and Com_RMS 2. There are 2 main reasons: 1. BMS1 and pp. 96-103.
BMS2 adopt fuzzy bandwidth controller for VBR traffic [3] S. Xu and B. Xu, “A fair admission control scheme for
resource reservation. Besides, newly arriving calls are multimedia wireless network,” International Conference
allowed to share capacity to improve the performance in on Wireless Communications, Networking and Mobile
BMS2, thus the CBP is reduced; 2. Due to some of the Computing, vol. 2, Sept. 2005, pp. 859-862.
passive capacity is “shared” by the real-time new calls so [4] I.S. Hwang, S.N. Lee and I.C. Chang, “Performance
less reserved capacity is available for real-time handoff Assessment of Fuzzy Logic Control Routing Algorithm
calls, to reduce the CDP. Figure 6(a) depicts the with Different Wavelength Assignments in DWDM
improvements of BMS1 and BMS2 compared with Networks”, Journal of Information Science and
Com_RMS1 and Com_RMS2 are 34% and 46%, Engineering, vol. 22, no. 2, Mar. 2006, pp. 461-473.
respectively. [5] I.S Hwang, I.F Huang and S.C. Yu, “Dynamic Fuzzy
However, for non-real-time calls, the BMS1 and BMS2 Controlled RWA Algorithm for IP/GMPLS over WDM
encountered a worse CRP than the Com_RMS1 and Networks”, Journal of Computer Science and
Com_RMS 2. The reason is that the CBP increases rapidly Technology, vol. 20, no. 5, Sept. 2005, pp. 717-727.
as the arrival rate increases due to real-time traffic. Since [6] M.H. Ahmed, “Call admission control in wireless
the call duration of a real-time call is relatively long (180 communications: a comprehensive survey,” IEEE
secs for voices calls, 360 secs for video calls) when Communication Surveys, vol. 7, no. 1, First Quarter
compared to non-real-time calls, more capacity will be 2005, pp. 50-69.
occupied by the real-time calls (64kbps~384kbps for video [7] D. Niyato and E. Hossain, “Call admission control for
calls). As the arrival rate increases, more real-time calls are QoS provisioning in 4G wireless networks: issues and
accepted to enter into the system leading to the increase of approaches,” Special Issue of IEEE Network on 4G
non-real-time CBP. The reason of CDP is the same as the Network Technologies for Mobile Telecommunications,
CBP. Figure 6(b) shows the CRP vs. non-real-time calls. vol. 19, no. 5, Sept.-Oct. 2005, pp. 5-11.
[8] B.J. Hwang, J.S. Wu and Y.C. Nieh, “Improving the
6. Conclusion performance in a multimedia CDMA cellular system with
resource reservation,” IEICE Trans. on Communications,
The main benefit of combining different wireless access vol. E84-B, no. 4, Apr. 2001, pp. 727-738.
technologies with multiple tiers topology to become [9] P. Siripongwutikorn, S. Banerjee and D. Tipper, “A
wireless heterogeneous network is the system loading can survey of adaptive bandwidth control algorithms,” IEEE
be shared between different wireless access technologies, Communication Surveys, vol. 5, no. 1, Third Quarter
so we can improve system performance such as decreasing 2003, pp. 14-26.
rejecting probability and increasing system throughput. In [10] W. Li, and X. Chao, “Call Admission Control for an
this paper, two bandwidth management strategies with Adaptive Heterogeneous Multimedia Mobile Network,”
resource reserving mechanism are proposed in IEEE Transactions ON Wireless Communications, vol.6,
heterogeneous wireless network. Simulation results show no. 2, Feb. 2007, pp. 515-525.
that the proposed BMS1 and BMS2 indeed improve the [11] J. Nie, J.C. Wen, Q. Dong and Z. Zhou, “A seamless
CRP of real-time calls due to the mobile users’ fuzzy handoff in IEEE 802.16a and IEEE 802.11n hybrid
controller. However, the CRP of the proposed BMS1 and networks,” International Conference on Communication,
BMS2 in non-real-time calls are higher than Com_RMS 1 Circuits and Systems, Hong Kong, May 27-30, 2005,
and Com_RMS 2. Future work is how to avoid non-real- vol. 1, pp. 383-387.
time service to become starvation when system in heavy [12] J. Ni, H. K. Tsang, S. Tatikonda, and B. Bensaou,
loading and consider the how to dynamically adjust passive “Optimal and Structured Call Admission Control Policies
capacity which can be borrow in neighboring cells. for Resource-Sharing Systems,” IEEE Transactions on
Communications, vol. 55, no. 1, Jan. 2007, pp. 158-170.
References [13] I.S. Hwang, B.J. Hwang and L.F. Ku, “Adaptive
[1] IEEE 802.16e-2005, “Part 16: Air Interface for Fixed resource management in two-tier wireless networks”,
and Mobile Broadband Wireless Access Systems – International Computer Symposium, Taipei, Taiwan, vol.
2, Dec. 4-6, 2006, pp. 634-639.
342
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
344
B must broadcast to its neighbors because B is not a desti- If any node sends a RREQ, it records the RREQ se-
nation. A can check whether the RREQ arrives within the quence number and sending time of the RREQ. Then, on
timer. If A receives the message after the timer expires, it overhearing a RREQ from any node, it records the address
suspects B or one of B’s next nodes to be wormhole nodes. of the neighbor node and the time when it receives the
packet. If the node receives the RREQ after the timer count,
called as WPT, it considers the neighbor node sending the
RREQ as a node affected by wormhole nodes. The count
value in its table will be increased by 1. It must be noted
that the count value does not exceed the previously config-
ured threshold. If the count value exceeds the threshold, the
node cannot engage in the network. This method ensures
RRE
Q
that wormholes nodes are avoided in all the future data con-
nections.
RRE
Q
RREQ
TUNN
E L
RREQ
3.2.2 Wormhole Prevention Timer
RR E We detect wormholes by using a special timer. For using
g Q
earin
Overh this timer, all the nodes do not require clock synchroniza-
tion, except the source node. As soon as a node sends a
earing RREQ packet, it must set the WPT and wait after send-
Overh
ing the RREQ packet until it overhears its neighbor’s re-
E1HLJKERUQRGHPRQLWRULQJRIZRUPKROHQRGHV transmission. The WPT consider the maximum amount of
time required for a packet to travels from a node to a neigh-
Figure 1. Example of Neighbor Node Monitor- bor node and back to the node. If WPT is too small, the
ing legitimate nodes can be excluded. On the other hand, if it is
too large, it is difficult to detect wormhole attacks.
Two formulas are considered to determine whether or not
Once a malicious node overhears a RREQ, the node can the nodes have a mobility. If the nodes are fixed like sensor
claim to be another wormhole node that is actually not node, the WPT is estimated by
within the transmission range of a neighbor node. For this
reason, two nodes may believe that the other is its neigh- 2 × T ransmission Range(T R)
WPT = (1)
bor which does not want to expose itself. In order to pre- Vp
vent this problem, nodes monitor the malicious behavior of
Here, T R denotes a distance that a packet can travel and
neighbors and record it in the own neighbor node table.
Vp denotes the propagation speed of a packet. It is assumed
that the maximum propagation speed of the radio signal is
3.2.1 Neighbor Node Table the speed of light and the delay from sending and receiving
packets is negligible.
Each node maintains a Neighbor node table that contain a On the other hand, if the nodes have a mobility with an
RREQ sequence number, neighbor node ID, sending time average velocity of Vn , the distance that packet can travel
and receiving time of the RREQ and count. By using this may be different. The maximum transmission distance of a
table, all nodes monitor the activities of neighbors in its ta- packet is calculated by
ble and check for malicious behavior of the neighbors. All
the fields of neighbor node table set to zero. Table 1 shows 2 × TR 2 × Vn × T R
Radius = Vn × = (2)
an example of the neighbor node table. Vp Vp
345
Consequently, when network are formed in the mobile
Malicious Node
environment, the WPT of nodes is given by
Good Node
2 × Vn × T R
WPT = 2 (3)
(Vp )
By using the formulas 1, 3, when a node overhears
its neighbor node’s re-transmission, it checks whether the
packet has arrived before the WPT expired. If a hidden
wormhole attack is launched, the packet transmission time
between two fake neighbor nodes may be longer than the
normal transmission time of one hop. Therefore, we can
detect a route through a wormhole tunnel.
346
size of data payload is 512 bytes. Five data sessions with
randomly selected sources and destinations are simulated.
Each source transmits data packets at the rate of 4 packets/s.
Duration of the simulations is 900 seconds.
347
Acknowledgement networks for IPv4. RFC 4728, The Internet Engineer-
ing Task Force, Network Working Group, Feb 2007.
http://www.ietf.org/rfc/rfc4728.txt.
This research was supported by the Ministry of Knowl-
[14] R. V. Boppana and S. P. Konduru. An adaptive distance
edge Economy, Korea, under the ITRC(Information Tech- vector routing algorithm for mobile, ad hoc networks. In
nology Research Center) support program supervised by the IEEE Computer and communications Societies (INFOCOM
IITA(Institute of Information Technology Advancement) 2001), pages 1753–1762, 2001.
(IITA-2008-C1090-0801-0016) [15] P. Papadimitratos and Z. J. Haas. Secure routing for mobile
ad hoc networks. In Proceedings of SCS Communication
Networks and Distributed Systems Modeling and Simulation
References Conference (CNDS 2002), Jan 2002.
[16] Y.-C. Hu, D. B. Johnson, and A. Perrig. SEAD: Secure ef-
[1] L. Buttyán and J.-P. Hubaux. Report on a working session ficient distance vector routing for mobile wireless ad hoc
on security in wireless ad hoc networks. ACM SIGMOBILE networks. In IEEE Workshop on Mobile Computing Systems
Mobile Computing and Communications Review, 7(1):74– and Applications (WMCSA), pages 3–13. IEEE Computer
94, Jan 2003. Society, Dec 2002.
[2] H. Yang, H. Luo, F. Ye, S. Lu, and L. Zhang. Security in [17] Scalable Network Technologies (SNT). QualNet.
mobile ad hoc networks: challenges and solutions. IEEE http://www.qualnet.com/.
Wireless Communications, 11(1):38–47, Feb 2004. [18] J. Broch, D. A. Maltz, D. B. Johnson, Y.-C. Hu, and J. G.
[3] L. Hu and D. Evans. Using directional antennas to prevent Jetcheva. A performance comparison of multi-hop wire-
wormhole attacks. In Network and Distributed System Secu- less ad hoc network routing protocols. In ACM/IEEE Inter-
rity Symposium (NDSS). The Internet Society, Feb 2004. national Conference on Mobile Computing and Networking
[4] Y.-C. Hu, A. Perrig, and D. B. Johnson. Packet leashes: (MOBICOM), pages 85–97, Oct 1998.
A defense against wormhole attacks in wireless networks.
IEEE INFOCOM, Mar 2003.
[5] J. Zhen and S. Srinivas. Preventing replay attacks for secure
routing in ad hoc networks. In ADHOC-NOW, LNCS 2865,
pages 140–150, 2003.
[6] Y.-C. Hu, A. Perrig, and D. B. Johnson. Rushing attacks
and defense in wireless ad hoc network routing protocols.
In W. D. Maughan and A. Perrig, editors, ACM Workshop
on Wireless Security (WiSe), pages 30–40, Sep 2003.
[7] S. Capkun, L. Buttyán, and J.-P. Hubaux. SECTOR: secure
tracking of node encounters in multi-hop wireless networks.
In ACM Workshop on Security of Ad Hoc and Sensor Net-
works (SASN), pages 21–32, Oct 2003.
[8] I. Khalil, S. Bagchi, and N. B. Shroff. LITEWORP: A
lightweight countermeasure for the wormhole attack in mul-
tihop wireless networks. In Dependable Systems and Net-
works (DSN), pages 612–621, Jun 2005.
[9] I. Khalil, S. Bagchi, and N. B. Shroff. MOBIWORP: Mit-
igation of the wormhole attack in mobile multihop wireless
networks. Securecomm and Workshops 2006, pages 1–12,
Aug 2006.
[10] L. Tamilselvan and D. V. Sankaranarayanan. Prevention of
impersonation attack in wireless mobile ad hoc networks.
International Journal of Computer Science and Network Se-
curity (IJCSNS), 7(3):118–123, Mar 2007.
[11] C. E. Perkins, E. M. Belding-Royer, and S. R. Das. Ad hoc
on-demand distance vector (AODV) routing. RFC 3561, The
Internet Engineering Task Force, Network Working Group,
Jul 2003. http://www.ietf.org/rfc/rfc3561.txt.
[12] D. B. Johnson and D. A. Maltz. Dynamic source routing in
ad hoc wireless networks. In Imielinski and Korth, editors,
Mobile Computing, volume 353, pages 153–181. Kluwer
Academic Publishers, 1996.
[13] D. A. Maltz and D. B. Johnson and Y. Hu. The dy-
namic source routing protocol (DSR) for mobile ad hoc
348
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
350
(a)
Figure 1 An example of topology in LEACH
with q=5 [8]
351
where Pr and Pt are the received power at receiver and 3. Energy Efficiency Analysis
the transmitted power at transmitter respectively, c is
the propagation coefficient, and α is the path loss In this paper, we assume that the sensor nodes are
exponent, 2≤α<6. For a free space area, the path loss uniformly distributed in the area of the cluster.
exponent is set by α = 2. The location of the nodes is Therefore, the power dissipation of a CH to relay the
assumed to be known to base station by GPS. information of the cluster in one round can be obtained
In Mac layer, the sensing nodes are assumed to by
know the belonging CH by centralized based station
Q
broadcasting. Based on the configuration of square E ch,i = η i ⋅ el ⋅ Wi ⋅ , (4)
area, Figure 3 shows the investigated environment in q
this paper. In Figure 3, the total Q sensors are supposed
where el is the energy dissipation sending one packet
to be spread out uniformly to the whole area where is
per square meters, the energy dissipation due to the
divided into q clusters. The data from each cluster will
path loss of a distance between the ith CH and the base
be collected by the CH and these data will be sent back
station is expressed by
to the base station located at the point (0, -B).
To evaluate the lifetime of the network, one round Wi = E[diα/c] = E[ di2 ]= E[xi2+[yi +B] 2], (5)
is defined as a cycle in which the base station receives
data from the sensor node. In one round, it contains the where α = 2, c = 1, and (xi, yi) is coordinates of the
time from the data collected at sensor to the centre of the ith cluster area. Moreover, the energy
corresponding CH and the time from the CH to the dissipation for a sensor node to transmit one packet in
base station. a clustering area can be obtained by
Thus, the total energy of networks in one round can E n , j = el ⋅ Z j , (6)
be expressed by
q
Q Q−q where Z j = d 2j is the random variable of the
ET = ∑ η i ⋅ Ech ,i ⋅ + ∑ E n, j (3) rectangular square of the distance between the jth
i =1 q j =1
normal sensor node and the CH. Thus, the expected
where ηi is a data compressing factor for the ith power dissipation for a sensor node to transmit one
cluster with 0< ηi ≤1, Ech,i and En,j are the transmission packet to CH in a rectangular clustering area can be
energy of one packet for the ith CH and the jth normal obtained by [3]
sensor, respectively. Moreover, the dissipation energy 2 L1L2 2 2 z
of nodes depends on the path loss. E[ Z ] = ∫ z − dz , (7)
L1 L2 L1 L2
0
where L1 and L2 are the width and length of the
rectangular area of the cluster.
In the LEACH, the CH is selected randomly as
shown in Figure 1. Therefore, the energy dissipation of
each cluster in transmitting one packet is expressed by
5D 2
E[ Z ] = E[ x 2 + ( y + B ) 2 ] = + B ⋅ D + B2 , (8)
12
where D is the length of the square and B is the
distance between the sensing field and the base station.
Therefore, by the number of clusters we can choose the
suitable algorithm to equally cluster the cluster area.
4. Simulation Results
Figure 3. An example of EEFCH with q=4. In order to verify and compare the energy efficiency
of the proposed FCA, a simulation work is presented.
In the simulation, we assumed that the energy
dissipation sending one packet by each sensor is
352
el= 5 × 10 −7 Joule (J)/m2. In our simulation, the total
number of sensors nodes is one hundred, Q=100. Then,
the normal sensor nodes are 100-q. The length of
sensing square area is set D=50 meters. To be
generalized, the worst case in data fusion with data
compressing factors for all clusters ηi=1 is performed
in the simulations. To perform fixed clustering, in the
nodes deployments, we assume that the sensor nodes
are scattering uniformly distributed in the sensing field.
To verify the energy efficiency of the proposed
LEFC, we performed the computer simulation in
MATLAB programming. In our simulation, the el
=5×10-7(J/m2) for α = 2. The initial energy in the
battery each nodes is 5 J. At first, the simulation
parameters are set by q =5, D=50m, α=2, and B=10m.
In order to illustrate the energy efficiency of the Figure 4. Comparison of network life time for
clustering method, we compare a direct transmission proposed LEFC, Direct and LEACH.
scheme with the proposed clustering scheme. In direct
scheme, denoted by Direct, each node transmits the Table 2. The comparison of lifetime with
data obtained by sensing to base station directly with LR=70% and 50% for Direct, LEACH and LEFC.
assuming that the amplifier of the nodes can broadcast
sufficient power to base station.
From Figure 4, simulation results show that the LR
proposed LEFC prolongs the network lifetime 70% 50%
evidently. In the direct scheme, the nodes which are far LT
away from base station suffer the extremely short LT
lifetime. Even though the near node can last ling life
time, the network suffers lower coverage problems. Direct 2226 3471
The LEACH scheme balances the energy consumption
due to the CH, yet not of the energy efficiency of the LEACH 3508 4245
normal sensing nodes. The proposed LEFC can not
only compromise the balancing on energy consumption LEFC 5771 7537
in performing CH, but also improve the energy
efficiency of the sensing nodes. Therefore, it is easily
observed that the proposed LEFC outperforms the Table 3. The comparison of total transmission
LEACH and Direct schemes. packets for Direct, LEACH and LEFC.
To depict the advantage of the proposed LEFC,
with the living rate (LR) 70% and 50%, the network Total Transmission
lifetime for the routing schemes are compared in Table (packets)
2. The LR means the percentage survival nodes in the
WSNs. From Table 2, it is obviously observed that the Direct 581617
proposed LEFC largely outperform both LEACH and
Direct no matter of 70% and 50% living rate. LEACH 450229
Moreover, to compare the real energy efficiency, Table
3 shows the comparison in total transmission packets LEFC 742919
of the three schemes for the WSN. From Table 3, it is
observed that the proposed LEFC can transmit more
65% and 27% packets than the LEACH and Direct To find the most energy efficient for various
schemes, respectively. number of CHs and compare the energy efficiency of
LEACH and LEFC schemes, we simulate the network
energy consumption in one round as shown in Figure 5.
From Figure 5, it is observed that the highest energy
efficiency is with the number of clusters 6≤q≤10 for
both LEACH and LEFC. Moreover, with highest
353
energy efficiency of q=8, the consumed energy in [2] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, E.
LEFC is less than half of the LEACH in one round. Cayirci, “Wireless sensor network: a survey,” Computer
Networks, vol. 38, pp. 393-422, 2002.
[3] E. J. Duarte-Melo and M. Liu. “Analysis of energy
consumption and lifetime of heterogeneous wireless
sensor networks,” Proceedings. Global
Telecommunication Conference, pp. 21–25, Nov. 2002.
[4] M. Chatterjee, Sajal K. Das, and D. Turgut, “A
weighted clustering algorithm for mobile ad hoc
networks,” Proceedings of the 7th International
Conference on High Performance Computing, pp. 511-
521, Dec. 2000.
[5] R. C. Shah and J. M. Rabaey, “Energy aware routing for
low energy ad hoc sensor networks,” Proceedings of
IEEE Wireless Communications and Networking
Conference, pp. 17–21, 2002.
[6] C. Schurgers and M.B. Srivastava, “Energy efficient
routing in wireless sensor networks,” Proceedings of
IEEE Military Communications Conference for
Network-Centric Operations, vol.1, pp. 357-361, 28-31
Oct. 2001.
[7] B. Huang, F. Hao, H. Zhu, Y. Tanabe, and T. Baba,”
Figure 5. The comparison of network energy Low-energy static clustering scheme for wireless sensor
consumption in a round between LEFC and network,” Proceedings of International Conference on
LEACH. Wireless Communications, pp. 1-4, 22-24 Sept. 2006.
[8] W. Heinzelman, “Application-specific protocol
architectures for wireless networks,” Ph.D. thesis,
5. Conclusion Massachusetts Institute of Technology, 2000.
[9] S. D. Muruganathan, D. C. F. Ma, R. I. Bhasin, and A.
In this paper, an energy efficient clustering O. Fapojuwo, “A centralized energy-efficient routing
algorithm is proposed to prolong the lifetime of protocol for wireless sensor networks,” IEEE
cluster-based WSN. The proposed LEFC gives Communication Magazine, vol. 43, no.3, pp. 8-13,
uniform area of cluster area for the WSN and save the March 2005.
energy dissipation of normal senor nodes in the cluster. [10] W. Heinzelman, A. Chandrakasan, and H. Balakrishnan.
Simulation results show that the LEFC can efficiently “Energy-efficient communication protocols for wireless
microsensor networks (LEACH),” Proceedings of the
cluster the sensing nodes to minimize the energy 33rd Hawaii International Conference on Systems
dissipation and then outperform LEACH with 60% Science, vol. 8, pp. 3005-3014, Jan. 4-7, 2000.
longer lifetime for WSN. [11] K. Sohrabi, J. Gao, V. Ailawadhi, G.J. Pottie, “Protocols
for self-organization of a wireless sensor networks,”
6. Acknowledgements IEEE Personal Communications, vol. 7, pp. 16-27, Oct.
2000.
This work was funded in part by National Science [12] Y.-F. Huang, W.-H. Luo, J. Sum, L.-H. Chang, C.-W.
Chang and R.-C. Chen, “Lifetime Performance of an
Council, Taiwan, Republic of China, under Grant NSC energy efficient clustering algorithm for cluster-based
94-2213-E-324-029 for Y.-F. Huang. wireless sensor networks,” LNCS 4743, Springer-
Verlag Berlin Heidelberg, pp. 455---464, Aug. 2007.
7. References
[1] D. Culler, D. Estrin, M. Srivastava, “Guest editors'
introduction: overview of sensor networks,” IEEE
Computer, vol. 37, issue 8, pp. 41- 49, Aug. 2004.
354
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
David Hecht2,5, Rouh-Mei Hu2, Rong-Ming Chen3, Jong-Waye Ou2, Chao-Yen Hsu2, Haitao
Gong1, Ka-Lok Ng2, Han C.W. Hsiao2, Jeffrey J.P. Tsai2,4, and Phillip C-Y Sheu1,2
End Designer
Semantic Object User
Filtering
WebTools Object
Designer
Binding
SO SO
Query Classes
Semantic Knowledge Retrieval
387
Three major classes currently exist in the BSS. These “existing” are adjectives and are used to refine the query.
classes are meant to be representative and are by no means Other adjectives can readily be defined as needed.
comprehensive.
“Find” is the BioSemantic operator in these statement. For
4.1 GENE CLASS the literature searches this is PubMed at NCBI [8]. For the
patent searches it is the United States Patent and Trademark
The Gene Class is perhaps the central cornerstone of the
Office [9].
BioSemantic vocabulary. This class (with its associated
subclasses) stores all the general information of a gene, such 5.2 BLAST PROBLEM:
as id, source database and accession number, species,
One of the most common tasks in biological research today
sequence, as well as the proteins they code for.
is that of identifying genes and proteins related or similar to
4.2 PROTEIN CLASS a particular sequence. This is often performed with Blast
(NCBI) [10].
The Protein Class is also a central part of the BioSemantic
vocabulary. This class (with its associated subclasses) stores Some typical queries are presented below:
all the general information of a protein, such as id, source
FIND NUCLEOTIDE SEQUENCE FROM SPECIES HOMOLOGOUS
database and accession number, species, sequence, as well
TO [INPUT] \\ INPUT IS A NUCLEOTIDE SEQUENCE
as the associated genes.
(BLASTN) OR PEPTIDE SEQUENCE (TBLASTN)
4.3 LITERATURE CLASS
FIND PROTEIN HOMOLOGOUS TO[INPUT] \\ INPUT IS A
The Literature Class (with its associated subclasses) stores NUCLEOTIDE SEQUENCE (BLASTX) OR PEPTIDE
all the relevant information for reference material that SEQUENCE(BLASTP)
includes: author(s), titles, journal, dates, and pages.
FIND SNPS SIMILAR TO [INPUT] \\ INPUT IS A
NUCLEOTIDE SEQUENCE, ACCESSION OR GI
5 BIOSEMANTIC SYSTEM QUERY COMMANDS
In these examples the objects are “nucleotide sequence”,
Once a framework for the data and class structures have
“protein” and “SNP”. These fall in the protein and gene
been defined it is possible to put together semantic
classes. “Species” is an attribute of these classes and is used
statements and apply these to real-life research problems.
to refine the queries. The adjectives are “homologous” and
Operators or verbs need to be defined. For purposes of the
“similar”. These can be further refined depending upon the
examples presented in this paper these will be limited to
tool(s) and databases used in the queries. “Find” is the
existing bioinformatics software and tools. It is anticipated
operator or verb and refers to BLAST.
that new tools and operators will be developed as a natural
expansion of BioSemantic System. 5.3 ALIGNMENT PROBLEM:
Presented below are several examples chosen to Another common problem is that of aligning multiple
demonstrate the wide applicability of BioSemantic System. sequences of nucleic acids and/or proteins. The goal is to
see which regions are conserved and which are different.
5.1 LITERATURE SEARCH:
This problem is made difficult by the fact that there can be
Common to every biological and biomedical research intervening sequences of varying length that play little or no
problem is the need to find the relevant literature and prior functional/structural role.
art. As is too often the case, these searches result in too
Some typical queries are presented here:
many hits that are not exactly what is required.
ALIGN [INPUT] \\ WHERE INPUT IS A SERIES OF
Several typical BioSemantic queries are presented below:
PROTEIN, PROTEIN OR NUCLEOTIDE SEQUENCES
FIND RELEVANT LITERATURE FOR [INPUT]
STRUCTURALLY ALIGN [INPUT] \\ WHERE INPUT IS A
FIND EXISTING PATENTS FOR [INPUT] \\ IDENTIFY IF SERIES OF EITHER PROTEINS, AMINO ACID OR NUCLEIC
THE RESEARCH TOPIC IS NOVEL INTELLECTUAL PROPERTY ACID SEQUENCES
OR NOT
FIND CONSENSUS SEQUENCE FROM [INPUT] \\ WHERE
FIND ALL RELEVANT LITERATURE FOR [INPUT] \\ INPUT INPUT IS A SERIES OF EITHER PROTEINS, AMINO ACID
IS A STRING OR NUCLEIC ACID SEQUENCES
The BioSemantic objects are “literature” and “patents” MATCH CONSENSUS [INPUT] ON A SEQUENCE [INPUT]
which fall in the Literature object class. “Relevant” and
MATCH CONSENSUS [INPUT] ON A GENOME [INPUT]
388
FIND CONSENSUS FROM MULTIPLE SEQUENCE \\ PATTERN Some typical queries include:
DISCOVERY
PREDICT THE PI OF [INPUT] \\ INPUT AMINO ACID
MATCH CONSENSUS ON A GENOME (GENOME-SCALE PATTERN SEQUENCE AND CALCULATE THE ISOELECTRIC POINT
MATCHING)
PREDICT THE MOLECULAR WEIGHT OF [INPUT] \\
The objects in these queries are “sequences” which fall in INPUT IS AMINO ACID SEQUENCE
the Gene and Protein classes. “Consensus” is used as an
PREDICT THE LOCATION OF LEUCINE ZIPPERS IN [INPUT]
adjective. The verbs are “Align”, “Structurally Align”,
\\ INPUT IS AMINO ACID SEQUENCE
“Find” and “Match”. These use the following tools: Align at
NCBI [11]; CLUSTALW at the European Bioinformatics PREDICT THE LOCATION OF COIL REGIONS IN [INPUT]
Institute [12]; Mutalin [13]; Weblogo [14]; STRAP [15]; \\ INPUT IS AMINO ACID SEQUENCE
and various Regulatory Sequence Analysis Tools [16].
The objects are all part of the protein class and the verb
5.4 PREDICT PROTEIN FAMILIES, DOMAINS AND “Predict” uses the following tools: Compute pI/Mw [23]
FUNCTIONS (computes the theoretical isoelectric point (pI) and
molecular weight (Mw) from a UniProt Knowledgebase
Prediction of the class of protein family domain and
entry or for a user sequence); 2ZIP [24] (predicts Leucine
function is another important set of tasks often performed.
Zippers); Coils [25] (predicts coiled coil regions in proteins);
Sample queries are presented below: and Multicoil [26] (predicts of two and three stranded coiled
coils).
PREDICT PROTEIN [FAMILY] GIVEN A SEQUENCE [INPUT]
\\ E.G. WHERE INPUT IS A SEQUENCE OF AMINO ACIDS 5.5.2 SECONDARY STRUCTURE PREDICTION PROBLEMS:
PREDICT PROTEIN [DOMAIN] GIVEN A SEQUENCE [INPUT] The secondary structures of proteins and peptides are based
\\ E.G. WHERE INPUT IS A SEQUENCE OF AMINO ACIDS on the intra- and inter-chain hydrogen-bonding interactions
OR NUCLEOTIDE SEQUENCES of the amino acids. The three major classes of secondary
structure include alpha helices, beta-sheets, turns, and
PREDICT PROTEIN [FUNCTION] GIVEN A SEQUENCE
random coil regions.
[INPUT] \\ E.G. WHERE INPUT IS A GENE OR PROTEIN
NAME The following query predicts the presence of alpha-helices,
beta-sheets, turns, and coils. based on the amino acid
PREDICT GENE [FUNCTION] GIVEN A SEQUENCE [INPUT]
sequence:
\\ E.G. WHERE INPUT IS A SEQUENCE OF AMINO ACIDS
PREDICT THE SECONDARY STRUCTURE OF [INPUT] \\
All objects are part of the Protein class. The operator or verb
INPUT AMINO ACID SEQUENCE
is “Predict” and the tools include: Pfam HMM search (scans
a sequence against the Pfam protein families database [17] The tool used in this query is: APSSP (Advanced Protein
[18]; SMART [19]; NCBI Conserved Domains Search [20] Secondary Structure Prediction Server) [27].
[21]; and Gene Ontology [22].
5.5.3 TERTIARY STRUCTURE AND FOLDING PROBLEM
5.5 PROTEIN STRUCTURE PROBLEMS: (FOR RNA AND PROTEINS):
Ultimately as genes are expressed as proteins, it is their Ultimately it is the tertiary 3D structure of a protein (as well
three dimensional structures that determine their function(s) as RNA) that determines function. Presented below are two
and activity. There are four levels of protein structure sets of queries: the first for retrieving solved protein
problems presented below: primary, secondary, tertiary and structures and structurally aligning them, the second for
quaternary. predicting 3D structures of both proteins as well as RNA
molecules.
5.5.1 PRIMARY STRUCTURE ANALYSIS PROBLEMS
FIND THE 3D STRUCTURE OF [INPUT] \\ INPUT IS IS
Primary structure analyses of proteins depend solely on the
NUCLEIC ACID OR AMINO ACID SEQUENCE
sequence of the amino acids (and the underlying gene
sequences). These analyses often include the BLAST, STRUCTURALLY ALIGN [INPUT] \\ INPUT IS NUCLEIC
Alignment, and Prediction of Protein Families, Domains ACID OR AMINO ACID SEQUENCE
and Functions problems presented previously.
PREDICT THE 2D STRUCTURE OF [INPUT] \\ INPUT
Additional information (derived from protein primary IS NUCLEIC ACID OR AMINO ACID SEQUENCE
structure) is often required.
PREDICT THE 3D STRUCTURE OF [INPUT] \\ INPUT
IS NUCLEIC ACID OR AMINO ACID SEQUENCE
389
The operator or verb in the first query is “find’ and the tool A working demonstration of this workflow is currently in
is the PDB database [28]. For the second query, the operator development.
or verb is “align” and the tool is STRAP [29] (a structural
6.2 PATIENT SELECTION AND DEMOGRAPHICS
alignment program for proteins). For the last two queries,
the operator or verb is “predict” and the tools used include: The very first step in this analysis is to select the patient
MFOLD [30] (for RNA 2D/3D structure prediction); and pool to study. This will require access to patient medical
SWISS-MODEL [31] (an automated knowledge-based records and databases and will require appropriate
protein modeling server). safeguards for confidentiality.
5.5.4 Q UATERNARY STRUCTURE AND PROTEIN-PROTEIN For purposes of this workflow we are interested in
INTERACTIONS: identifying genes that can act as biomarkers and/or drug
targets for HCC cancer (a form of liver cancer).
Quaternary structure refers to proteins that form dimers,
tetramers or higher-order macro-molecular assemblies. The very first BioSemantic query is:
Systems Biology is a relatively new area of research
Select patients having HCC from the
concerned with mapping out and modeling these complex
patient database.
regulatory protein-protein interactions. Some representative
BioSemantic queries have already been presented above in This results in 48 patients. All other patients having other
Section 5.3. Additional queries and modeling of pathways diseases are excluded.
are currently in development.
Additionally, queries and patient selection can be made on
6. A WORKFLOW FOR THE IDENTIFICATION OF patient demographic information that includes sex, age,
LIVER CANCER BIOMARKERS other diagnoses, risk factors, and tumor characteristics
among others. The patients selected for this study will then
In the previous section individual queries were performed
have new biopsies taken or have new analyses performed on
using BioSemantic statements. In practice, biological and
biopsies already taken from which microarray gene
biomedical research and development is much more
expression experiments will be performed.
complicated. There is in fact a complex workflow,
consisting of multiple steps requiring different sets of 6.3 MICROARRAY GENE EXPRESSION ANALYSIS
data/attributes to be passed from step to step.
The next step in this workflow is to data-mine and analyze
In this section, we try to model a representative workflow in the microarray data in order to identify genes that are over-
order to demonstrate the broader applicability of or under-expressed. The microarray experiments will have
BioSemantic System. already been conducted on normal (controls) as well as
tumor tissues from liver biopsies obtained from these 48
6.1 WORKFLOW OVERVIEW
patients. These data are normalized and processed “off-line”
The goal of this workflow is to identify and validate genes to generate log2 ratios of expression of mRNA’s from tumor
that can act as biomarkers and/or potential drug targets for vs normal tissues. The data was loaded into a proprietary
cancer. These biomarkers can be used for diagnosis or for tool for data-mining and report generation.
monitoring endpoints to evaluate the efficacy of a therapy.
Again for purposes of this demonstration, data for five
The workflow for this demo will consist of 5 sets of genes have been loaded into the microarray tool. One of
semantic queries to 5 different underlying databases – both these is “negative” (e.g. having no significant difference
public and non-public domain. These include: a database of between expressions levels in tumor vs normal tissues) in
patient information and demographics; microarray gene order to illustrate how decisions can be made to select or
expression data; quantitative Real-Time Polymerase Chain reject genes. These 5 genes are: HPRT1 (Hypoxanthine
Reaction (RT-PCR) data; analyses of tumor biopsy images; phosphoribosyl transferase) which is a “housekeeping gene”
and queries to public domain databases at the NCBI as and will be negative for this analysis; CCND1 (Cyclin D1
discussed above. (PRAD1: parathyroid adenomatosis 1) which will be
positive for under expression; CDK4 (Cyclin-dependent
After each semantic query it is envisioned that there will be
kinase 4) which will be positive for over expression;
an interactive decision making tool to allow the user to
PTP4A1 (Protein tyrosine phosphatase type IVA, member 1)
make appropriate selections for the next semantic query.
which will be positive for under expression; and
Please note that the data presented and the semantic queries
THY1(Thy-1 cell surface antigen) which will be positive for
(and their results) are meant to be representative and for
over expression.
illustration purposes only.
390
BioSemantic queries are sent to the microarray analysis tool At this point, an interactive step is performed where the
which will perform the analyses requested and pass back the researcher will select the 4 positive genes and reject the
output. These queries include: negative one for further testing.
IDENTIFY GENES THAT ARE SIGNIFICANTLY OVER OR 6.4 REAL-TIME POLYMERASE CHAIN REACTION
UNDER EXPRESSED. DATA ANALYSIS
ANALYZE EXPRESSION LEVELS FOR EACH GENE For the four genes selected from the microarray analysis,
confirmation studies are performed using Real-Time
CREATE A HISTOGRAM FOR EACH GENE FOR VISUAL
Polymerase Reaction data from both tumor as well as
INSPECTION
normal tissue samples from each patient. Depending upon
Table 1 presents the output of the analysis tool to the first where these studies are to be performed, the data may reside
two queries which consists of p-values from a T-test of in a relational database such as Oracle or simply in a
tumor vs normal expression levels for each gene (alpha = spreadsheet or text document residing on a server or a
0.05). From this analysis, HPRT1 is determined to be not shared drive.
significantly different from control whereas the other four
The values represent Quantified mRNA levels in tumor and
genes were.
normal cells. A significant difference (as determined by a t-
test, α = 0.05) will confirm the conclusion from the
microarray data, while an insignificant difference
Table 1. Gene Expression T-test p values (alpha = 0.05).
contradicts the conclusion.
CDK4 PTP4A1 THY1 CCND1 HPRT1
The BioSemantic queries are:
2.70E-07 1.12E-02 6.64E-16 3.75E-3 1.00 IDENTIFY GENES THAT ARE SIGNIFICANTLY OVER OR
UNDER EXPRESSED.
391
WHERE IS THE BOUNDARY BETWEEN NORMAL AND CANCER
CELLS?
6.7 SUMMARY REPORT
DESCRIBE THE DISTRIBUTIONS OF NUCLEI IN NORMAL VS.
At the very end of the workflow, an automated report will
CANCER CELLS.
be generated to facilitate reporting and publication of the
IS THERE A ‘SIGNIFICANT’ DIFFERENCE IN PROTEIN analysis.
EXPRESSION BETWEEN THE NORMAL AND CANCER CELLS?
7. SERVICE DISCOVERY AND SYNTHESIS
‘Typical’ images (for THY1) are shown below in Figure 5
illustrating the differential distributions of nuclei and THY1 Many of the bioinformatics problems addressed in
protein expression in normal vs cancerous cells. BioSemantic are combinatorial problems. If an algorithm is
readily available, a description of the problem it solves
needs to be matched by a query so that the algorithm can be
used. In BioSemantic, the “capability” of a service is
A). B). C).
described in the Semantic Capability Description Language
(SCDL) expressed in the following form:
Over Under No Over where £qi designates all possible subsequences of qi; £Q×Q
Expression Expression Difference Expression designates all possible subsequence pairs of nucleotide
sequences that may be derived from Q; s1 and s2 refer to the
first and second element of a pair s, respectively. Q is
6.6 PUBLIC DOMAIN DATABASE QUERIES initialized to empty by default.
The next step in the workflow is to retrieve all known,
Example 2: (The blastN problem): finds regions of local
published and public domain information available for the similarity between sequences by comparing nucleotide or
three genes identified in order to allow for hypothesis protein sequences to sequence databases and calculates the
generation. The set of BioSemantic queries generated will statistical significance of matches
include many (if not most) of the queries presented in
Section 5. SELECT s1, s2
392
FROM nucleotide_sequence(input) qi ,, £(qi, w)
s1,
nucleotide_sequence(input) db, £(db, w) s2, [6.] P.P. Filipe, N.J. Mamede, Database and Natural Language
float(input) threshold Interfaces, 2000, Jornadas Ingeniería de Software y Bases de
WHERE HSP(s1,s2) > threshold Datos (JISBD2000), Pages 321-332.
where £(qi, w) designates all possible subsequences of qi of [7.] A.-M. Popescu, O. Etzioni, H. Kautz, Towards a Theory of
length w ; HSP (high scoring pair) computes the score and Natural Language Interfaces to Databases, 2003, Intelligent
compare with predefined threshold to decide it is blast. User Interfaces, Pages 149-157.
[5.] C.B. Rivera, N. Cercone, Hermes: Grammar and Lexicon, [31.] http://www.charite.de/bioinf/strap/
1998 University of Regina Technical Report CS-98-02.
393
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
356
podcasts with users in his nearby environment. 3.2. Hierarchical Cluster-based Neighborhood
Nevertheless, this fact does not except that the tourist Resolution (HCNR)
has no similar taste with other users in the local
neighborhood. The tourist can have rated different Our first algorithm uses a weighted cluster topology
podcasts that are similar concerning the content of generated by the Weighted Application Aware
those in the nearby neighborhood. For this purpose we Clustering Algorithm (WACA) presented in [12].
calculated the similarity between two users based on an WACA creates clusters in a hierarchical fashion. For
approach proposed by Pazzani in [11] called this purpose each device elects exactly one device as
collaboration via content. The idea behind this its cluster-head, i.e. the neighbor with the highest
approach is to exploit a content-based profile for each weight. This cluster-head also investigates its one-hop
user in order to calculate the similarity between two neighborhood, similarly electing the device with the
users via their content-based profiles instead of their highest weight as its cluster-head. This process
commonly rated items. In the context of the HyCast terminates in case of a device electing itself as its own
application such a content-based profile is represented cluster-head, due to the fact of having the highest
by a list of weighted keywords. For this purpose we weight among all its neighbors. We call all
presume that each podcast feed contains a set of intermediary devices along such cluster-head chains
keywords describing its content. Given the sub-heads. Each device on top of a chain is called a
corresponding rating values for all podcasts rated by full cluster-head, or, in short, just cluster-head. Hence,
a specified user together with the appropriate set of in each network partition, multiple cluster-heads might
keywords describing these podcasts, a weight for coexist.
each keyword can be calculated as follows: Based on such a topology, our algorithm works as
follows. At first, in order to determine a set of similar
∑ neighbors, each slave sends its own profile to the
, currently elected cluster-head. To keep the message
complexity low, each device maintains a list of cluster-
The function returns the number of heads that have already received the current profile. As
soon as the own profile changes this list will be
podcasts containing keyword . Thus, for each user
cleared.
a vector of weighted keywords After receiving the profiles from its slaves, the
, ,…, , can be calculated, that cluster-head and all sub-heads calculate a similarity
represents his preferences. Given these content based matrix via the received profiles. Subsequent to this
profiles we can define the similarity between two users calculation, the sub-head sends the calculated
, via the cosine between the corresponding similarity matrix and the list of received profiles to the
weighted keyword vectors: cluster-head. The cluster-head stores this profile list
together with the corresponding similarity values and
∑ calculates the similarity values for all missing pairs in
, ,
order to complete the similarity matrix. Figure 1 shows
∑ ∑ how the algorithm is using the cluster topology to
exchange the information.
In order to provide recommendations to the active
user, the system starts with a search for other like-
60 S
minded users in the mobile ad-hoc network. In the M
following sections we introduce two different P
P
algorithms that determine such a set of similar 80 90 70
neighbors. Due to the fact that the mobility in such a P
network entails to high dynamic and also to unreliable S
M
connections, both algorithms are designed to use short 70 S
communication paths and avoid additional
communication overhead. For this purpose both
algorithms use only local information instead of any P Profile S Similar devices M Similarity matrix
routing protocols for the communication.
Figure 1. HCNR similarity calculation and
similar neighbor discovery
357
Thus the matrix on the cluster-head stores the together with their ratings via a tuple-set and a
similarities between all users connected to the current triple-set . Furthermore, each entry in can be also
cluster. Finally, in order to determine the similar considered as a directed weighted edge between the
neighborhood for all slaves that are not directly active user and a similar neighbor, while each entry in
connected with the cluster-head a copy of this can be seen as a directed weighted edge between a
similarity matrix is replicated to each sub-head in the similar user and a podcast. Consequently, each set can
cluster. The cluster-heads and the sub-heads provide a be represented via a corresponding graph. The whole
list of similar neighbors to each slave in the current set of votes stored in defines a directed bipartite
cluster. graph , where are nodes that
represents similar users, are item nodes, and is the
3.3. Weighted Neighborhood Resolution set of directed weighted edges from user nodes to item
(WNR) nodes. The tuple set defines a complete bipartite
graph , that represents the similarities
The second algorithm is based on a simple peer-to- between the active user and his most similar
peer communication pattern. However, in contrast to neighbors.
our first algorithm each device calculates only Given the above described model we can calculate a
similarities between the active user and other users in prediction for an item for the active user via
range. In order to decide on which device the computing the average of the rating values contained in
corresponding similarity should be calculated, each each weighted by the corresponding similarity value
device computes a weight and includes this weight in in .
its beacon. Thus when a device detects a new neighbor
with a higher weight as the own, it sends its profile to ∑ ,
this neighbor. The receiving device calculates then the ,
#
corresponding similarity value. If this value is higher
than a given threshold then the device is considered as 4. Experiments and results
similar and it is stored in the list of similar devices.
The own profile together with the computed similarity
In order to check the proper operation of the above
value is sent back. Figure 2 shows a WNR information
introduced ad hoc recommender system, we
exchange example.
implemented it on the top of the JANE simulator [13]
and performed several experiments comparing the
60 S precision of the calculated predictions as well as the
P P number of messages and Kbytes sent using HCNR and
P WNR for the neighborhood determination.
80 90 70
P P
S
S 4.1. Dataset
S
70 S
Due to the lack of a podcast rating database, we used
the MovieLens Data Set [14] that consists of 100,000
P Profile S Similarity ratings for 1682 movies by 943 users, where each user
has at least rated 20 movies. Additionally, each movie
Figure 2. WNR similar neighbor discovery is also mapped onto different genres. Thus, we can
consider each movie as a podcast and the
3.4. Recommender model and prediction corresponding genres as keywords.
calculation For our experiments, we generated 5 different
training sets containing 15 votes that are considered as
Each time the system detects one or more new the observed votes for each user and 5 different test
similar neighbors, the system updates the local sets containing the remaining votes. After each
recommender model. This model aggregates the ratings simulation run we compare the predicted votes with the
of the -most similar neighbors with a similarity value corresponding votes in the test set and calculated the
higher than a threshold . While a similar neighbor is Mean Absolute Error (MAE), which has been used to
defined as a pair , , and a vote is measure prediction performance in several cases [4],
defined as a triple , , , . The [15], and [16]. If a predicted item did not have an
implementation of our recommender model maintains adequate entry in the test set it was eliminated from the
the similarity values of the most similar neighbors evaluation. Note that we used the MAE only to
358
compare how accurately our algorithms predict a In HCNR, where certain elected devices gather and
randomly selected item rather than evaluating the user provide similarity information about the entire cluster,
experience of generated recommendations. a big part of the messages contain a list of profiles and
similarities, which results in a distinctly bigger
4.2. Environmental settings bandwidth usage.
1.22
For each experiment we chose a 150 x 150 and a 300 HCNR 150x150
x 300 unit square with 50, 60, 70, 80, 90 and 100 1.2 HCNR 300x300
WNR 150x150
mobile devices, where the transmission range of each WNR 300x300
1.18
device was 50 units. Furthermore, we used random
HCNR and WNR in order to compare their message 3.5 WNR 300x300
complexity. As figure 4 shows, HCNR needs distinctly 3
lesser unicasts than WNR and scales much better with
2.5
the number of devices, particularly in dense network
settings. However, as figure 5 shows the total number 2
of Kbytes sent and for that reason the message size is 1.5
too a large extend bigger when using HCNR instead of
1
WNR. Due to the fact, that in WNR a message
contains at most the own profile together with one 0.5
359
5. Conclusion and future work [4] U. Shardanand and P. Maes, “Social information
filtering: Algorithms for automating “word of mouth”, in
Proceedings of ACM CHI’95 Conference on Human Factors
In this work we presented a collaborative filtering in Computing Systems, vol. 1, 1995, pp. 210-217.
based recommender system for mobile ad hoc [5] R. Cöster, M. Svensson, “Incremental
networks to augment the HyCast application and Collaborative Filtering for Mobile Devices”, in Proceedings
overcome the potential problem of information of the 2005 ACM symposium on Applied Computing
overload. For this purpose we defined a suitable (SAC’05), 2005, pp. 1102-1106, Santa Fe, New Mexico,
similarity measure and introduced two algorithms to USA.
determine a set of similar neighbors. Furthermore we [6] B. N. Miller, J. A. Konstan, and J. Riedl., “PocketLens:
presented a local model for calculating predictions Toward a Personal Recommender System”, in ACM
which is incrementally built up on the way. In order to Transactions on Information Systems, Vol. 22, No. 3, July
2004, Pages 437-476
check the introduced system for proper operation it has [7] A. Tveid, “Peer-to-peer based Recommendations for
been implemented and tested on top of the JANE Mobile Commerce”, in Proceedings of the 1st International
simulator by performing several experiments. As the Workshop on Mobile Commerce (WMC 01), 2001, pp. 26-29,
results of these experiments show, HCNR provides a Rome, Italy.
slightly better precision and scales distinctly better [8] A. de Spindler, M. C. Norie, M. Grossniklaus and Beat
concerning the number of sent unicasts if we increase Signer., “Spatio-Temporal Proximity as a Basis for
the network connectivity. However, WNR has the Collaborative Filtering in Mobile Environments”, in
advantage that the used bandwidth is very small Workshop on Ubiquitous Mobile Information and
compared to HCNR. In WNR each message contains at Collaboration Systems (UMICS 2006), 2006, Luxembourg,
Grand Duchy of Luxembourg.
most one profile together with one similarity value [9] R. Belotti, C. Decurtins, M.C. Norrie, B. Signer, and L.
between the corresponding neighbors, while a big part Vukelja, “Experimental Platform for Mobile Information
of the messages sent by HCNR contains similarity and Systems”, in Proceedings of the 11th Annual International
profile information of several devices. A further Conference on Mobile Computing and Networking
difference is that in WNR each device only calculates (MobiCom 2005), 2005, pp. 258-269, Cologne, Germany.
and stores similarity information which is useful for [10] M. Jacobsson, M. Rost and L. E. Holmquist, “When
the own interest. In HCNR we suppose an altruistic Media Gets Wise: Collaborative Filtering with Mobile Media
behavior of the cluster-heads and the sub-heads. Agents” in Proceedings of the 11th International Conference
Thus in future work additional research has to be on Intelligent User Interfaces (IUI’06), 2006, pp. 291-293,
Sydney, Australia.
done in order to decide which algorithm should be used [11] M.J. Pazzani, “A Framework for Collaborative,
in which case. Furthermore, we intend to extend our Content-Based and Demographic Filtering”, in Artificial
ad hoc approach by using available backbones in order Intelligence Review, Dec. 1999, pp. 393-408.
to exchange similarity information between different [12] A. Andronache, M. R. Brust, and S. Rothkugel,
partitions. Additionally, regarding to the “Big City “Multimedia Content Distribution in Hybrid Wireless
Life” scenario—where the tourists visiting different Networks using Weighted Clustering” in Proceedings of the
cities are primary interested in the local offers from the 2nd ACM Workshop on Wireless Multimedia Networking and
nearby environment—we plan an extension by using Performance Modeling (WMuNeP’06), 2006, pp. 1-10,
additional context information, e.g. position Torromolinos, Spain.
[13] D. Görgen, H. Frey and C. Hiedels, “JANE-The Java
information to further improve our system. Ad Hoc Network Development Environment”, in 40th Annual
Simulation Symposium (ANSS’07), 2007, pp. 163-176.
6. References [14] MovieLens Data Set. Available at:
http://www.grouplens.org/node/73.
[1] B. Sarwar, et al., “Item-based Collaborative Filtering [15] J.S. Breese, D. Heckerman, and C. Kadie, “Empirical
Recommendation Algorithms”, in Proceedings of the 10th analysis of predictive algorithms for collaborative filtering”,
International World Wide Web Conference (WWW10). Hong in Proceedings of the 14th Conference on Uncertainty in
Kong. Artifical Intelligence (UAI-98), 1998, pp. 43-52.
[2] A. Andronache, M. R. Brust, and S. Rothkugel., “HyCast [16] J. L. Herlocker, J. A. Konstan, A. Borchers, and J.
–Podcasts Discovery in Mobile Network”, in Proceedings of Riedl, “An algorithmic framework for performing
the 3rd ACM Workshop on Wireless Multimedia Networking collaborative filtering”, in Proceedings of the 22nd
and Performance Modelling (WMuNeP’07), 2007, pp. 27-34, International Conference on Research and Development in
Chania, Crete Island, Greece. Information Retrieval (SIGIR’99), 1999, pp. 230-237.
[3] P. Resnick, N. Iacovou, M. Suchak, P. Bergstrom, and
J.Riedl, “Grouplens: An open architecture for collaborative
filtering of netnews,” in Proceedings of ACM 1994
Conference on Computer Supported Cooperative Work.
Chapel Hill, North Carolina: ACM, 1994, pp.175-186.
360
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
362
Non-broker selects the one which is having lower ID brokers (having higher ID) changes its role from
as its broker and also concludes that there is a path broker to non-broker.
between broker 1 and broker 2 through itself. This
information is passed to both broker 1 and broker 2. 4. Message dissemination among brokers
hello hello Every selected broker-node maintains a
subscription table. This table contains the following
Broker 1 Non-Broker Broker 2 fields: {subscriber node ID, subscription filter}.
Figure.2 Subscriber’s messages are stored in this table. Due to
2) Two brokers are separated by two non-broker nodes the mobility of subscriber, it is possible that its
as depicted in Figure.3. In this case broker 1 and subscriptions are stored in one broker and it is
broker 2 communicate through non-broker 1 and non- currently attached to any other broker. This creates a
broker 2. Non-broker 1 and non-broker 2 both problem in notifying the subscriber when event match
exchange hello-broker messages and gather the is there. To solve this problem, subscriber maintains a
knowledge that broker 1 and broker 2, are the brokers list of its subscription messages. When subscriber
for non-broker 1 and non-broker 2 respectively. They moves in to range of another broker, it again sends
also conclude that path from broker 1 to broker 2 is subscription messages to new broker using this list.
through non-broker 1 and non-broker 2. This The entries related to subscriber are purged from
information is passed to both broker 1 and broker 2. subscription table of previous broker. The movement
of broker node does not pose a big problem. As soon
hello hello hello
as broker node moves it flushes its subscription table.
This broker moves near to another broker and if, it is
selected as a broker for that area as discussed in
Broker 1 Non-Broker 1 Non-Broker 2 Broker 2
previous section, then the old broker transfers its
subscription table to this new broker. Other wise new
Figure.3 broker changes its role from broker to non-broker. This
In this way every broker node gets the ID, path and scheme ensures that during reconfiguration, subscriber
distance in hop number for all neighbor brokers. More is always attached to that broker where its
specifically, every broker gets a small subset view of subscriptions are stored. These subscriptions are never
complete broker network. This view always gets propagated beyond the broker receiving them, instead
updated as nodes continuously exchange hello-broker we use publication forwarding scheme discussed next
messages. In our approach, published messages are forwarded
Due to mobility of nodes, structure of broker by a broker to all other broker along the broker
network gets disturbed. In Figure.1 suppose non- network. Every broker node maintains a publication
broker nodes moves away from its current location, table to store published messages. The fields of this
then broker 1 and broker 2 will get disconnected if this table are: {publisher ID, published message}. A
was the only non-broker node between them (contrary publisher sends its message to broker which propagate
to our assumption as we have assumed a connected ad- this message to all other brokers in network. Each
hoc network), then in this situation brokers have to published message is uniquely identified by the 2-tuple
wait for some time for any other non-broker node to {publisher ID, sequence number}. This 2-tuple
move between them and to make them connected information is attached with the published message by
again. If there are more than one non-broker nodes the publisher itself. Each broker knows the routes to its
between broker 1 and broker 2 then the movement of neighbor brokers as mentioned in section 3. The
non-broker node will not affect the connectivity of published message is forwarded to the neighbor broker
brokers. They get connected through other non- and stored in its publication table. This message is
broker node. forwarded to its neighbors and so on. To avoid looping
The movement of broker node is little bit trickier. and duplicate message forwarding, a list of broker IDs
Broker movement leaves behind some nodes having no to whom the message is forwarded is kept with the
broker in their range. This causes change in their role published message. Suppose in Figure.4, where an
from non-broker to initial. All these initial nodes again example broker network is depicted (only broker nodes
enter in broker selection phase and elect a new broker are shown), broker node-1 initiates publication
for them. This broker node can move in the range of forwarding. At this instant, published message is
any other broker node. In this situation, one of the having node 1, 2, 7 and 4 in its forwarded list as 2, 7
363
and 4 are neighbor brokers and node 1 is initiator.
When this message reaches at node 2, it checks its Parameter Value
forwarded list and forward this only to those neighbors Number of nodes 100, 50 and 80
which are not there in this list and also append those Area 2000×2000 m2
neighbor IDs in that list. The list will now contain Minimum speed 0 m/s
1,2,4,7 and 3 when message reaches at node 3. This Maximum speed 10 m/s, 20 m/s,50 m/s
process continues till all the broker nodes are there in Hello packet period 0.2 sec
the forwarded list. This strategy ensures that messages Number of publisher 25% of the total nodes
are not forwarded in loops and avoids duplicate No. of subscribers 75% of the total nodes
message reception to some extent. Duplicate message Publishing rate 1 message/ 3 second
are detected by 2-tuple unique identifier attached with t-rand period Random between 1-5
published message, and they are discarded after seconds
reception. In this way every published message is
received and stored by all brokers in network. Table.1
We performed a simulation experiment to evaluate
6 performance our broker selection algorithm with
respect to variation in node density of ad-hoc network.
For this experiment mobility speed was fixed in the
2
3 range from 0 to 10 m/s. Figure.5 contains three graphs
for three different node densities (100, 80 and 50
nodes). Horizontal axis of graph represents the time
7 elapsed in minutes where as the vertical axis represents
1 5 the number of elected brokers. As can be seen from the
graph, the number of brokers for 100 nodes is less than
that for 80 and 50 nodes. This numbers of brokers, for
different node density is stable too. In other words, the
4 number of brokers for a given node density is varying
in very small range (6 to 8 for 100 nodes).
Figure.4
5. Simulation Results
We have used J-Sim [8] for the simulation purpose.
It is an open-source, component-based network
simulation environment, developed in Java. It provides
No. of brokers
364
relatively stable as compared to the mobility speed of approach. It is evident from the curves that our scheme
50 m/s. It implies that as the speed goes beyond certain outperforms the pure gossip approach in the context of
threshold limits, number of elected brokers become message delivery.
unstable.
Broker selection 4. Related work
14
12
In this section we summarize some of the most
relevant work in the area of publish/subscribe systems
10 for mobile ad hoc networks. The related research
No. of brokers
0
then examined the effects of broker mobility on the
0 50 100 150 network performance. In [9], an algorithm for restoring
Tim e elapsed (in m inutes) the event routing tables is presented, after a
disconnection in a tree topology of overlay network. It
Figure.6
is difficult to achieve robustness by this approach since
a single link failure partitions the tree. In [10], a
distributed protocol to construct optimized
publish/subscribe trees in ad-hoc wireless networks is
% of message delivery
365
and then use controlled flooding of published [9] G. P. Picco, G. Cugola, and A. L. Murphy. Efficient
messages for event dissemination among them. In our content-based event dispatching in presence of toplogical
approach, overlay among elected brokers is not reconfiguration. In International Conference on Distributed
maintained. Broker nodes are just aware of their Computing Systems (ICDCS), 2003
[10] Y. Huang and H. Garcia-Molina, “Publish/subscribe tree
neighbor brokers and they do not have a complete construction in wireless ad-hoc networks,” In Proc. of the 4th
view of broker topology. A different form of content- Int. Conf. on Mobile Data Management (MDM), 2003.
based publish-subscribe is proposed in [14], where the [11] P. Costa, M. Migliavacca, G. P. Picco, and G. Cugola,
authors describe mechanisms, to reconfigure an “Epidemic algorithms for reliable content-based publish-
overlay network according to the changes in the subscribe: An evaluation”, In Proc. of the 24th Int. Conf. on
physical topology and to the current brokers’ load. Distributed Computing Systems (ICDCS), 2004.
Unlike our solution, each broker must be provided [12] P. Costa and G. P. Picco. Semi-probabilistic content
with a global view of the system and for this a GSR based publishsubscribe. In Proc. of the 25th Int. Conf. on
(global state routing) protocol is used. Further, the Distributed Computing Systems (ICDCS), 2005.
[13] R. Baldoni, R. Beraldi, G. Cugola, M. Migliavacca, and
authors do not provide any mechanism for selection of
L. Querzoni, “Structure-less content-based routing in mobile
brokers; they simply assume the existence of some ad hoc networks,” In Proc. of the IEEE Int. Conf. on
broker nodes in MANET which may lead to a situation Pervasive Services, 2005
where non-broker nodes can not find any nearby [14] Y. Chen and K. Schwan, “Opportunistic overlays:
broker to interact with. Efficient content delivery in mobile ad hoc networks”, In
Proc. of the 5th Int. Middleware Conf., 2005.
5. Conclusion [15]G. Cugola, D. Frey, A. Murphy, and G. P. Picco,
“Minimizing the reconfiguration overhead in content-based
publish-subscribe”, In Proc. of the 19th ACM Symp. on
We have presented an algorithm for dynamic Applied Computing (SAC), 2004.
selection of brokers, and formation of their network for [16] G. Cugola and G.P. Picco, “REDS: A reconfigurable
the successful dissemination of published and dispatching system”, In Proc. of the 6th Int. Workshop on
subscribed messages. Our proposed scheme combines Software Engineering and Middleware (SEM), 2006.
the benefits of deterministic approaches, based on [17] P. Eugster, P. Felber, R. Guerraoui, and A.-M.
overlay structures and probabilistic approaches based Kermarrec, “The many faces of publish/subscribe,” ACM
on gossip or flooding. Simulation results show that our Computing Surveys, 2(35), June 2003.
approach can establish a broker network with fairly [18] Y. Huang and H. Garcia-Molina, “Publish/subscribe in a
mobile environment,” In Proc. of the 2nd ACM Int.
less number of brokers and provide efficient message
Workshop on Data engineering for Wireless and Mobile
delivery. access (MOBIDE), 2001.
6. References
366
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
3. Relaxation Labeling for Conceptual the evidence it has received from the labels of the
neighboring objects at iteration S. The denominator is
Graph Matching a normalization factor. The relaxation labeling formula
iteratively compute the support value of a label for
3.1. Relaxation Labeling each object and update the probability of each object
until it converges where all the probabilities are
Relaxation labeling has been applied to image stabilized.
processing and computer vision that has been
described in details in [8]. The major idea of the 3.2. Conceptual Graph Matching
method is that a label of an image object is influenced
by the features of the object’s neighborhood in the Definition 1. (Triple) Given a conceptual graph G, a
image. The features are usually points, edges and triple is an ordered 3-tuple elements (r-vertex, el, c-
surfaces in image processing. It is a technique that vertex) where el is the edge label linking r-vertex with
involves the propagation of local information gradually c-vertex.
via an iterative process in order to reach a global
coherent interpretation The purpose of relaxation To apply the relaxation labeling to maximal common
labeling in image processing problem is to assign a edge conceptual subgraph matching from G to G’, the
label to each image object so that it leads to an triples of G are considered as a set of objects while
appropriate image interpretation in the sense that the those of G’ are considered as a set of labels. For each
total evidence is compatible with all contextual
information conveyed. In a labeling problem, one is triple ti ∈ G, the relaxation labeling process attempts
given: to find a triple t j
' ∈ G’ that can have the maximal final
- A set of objects A = { A1 , A2 ,..., An };
'
- A set of labels for each object = { λ1 , λ2 ,..., λ m }; posterior probability while the number of t j can be
- A set of neighbor relations ov er the objects; >1.
- A set of constraint relations over labels for each
pair (or n-tuples) of neighboring objects.
t 'j = arg max Pt
final '
(tk ) (3.3)
' ' i
t k ∈G
Definition 2. (Isolated Triple) In a maximal common
In relaxation labeling, a compatibility coefficient
edge conceptual subgraph matching between G and G’,
r ( Ai = λl , A j = λk ) represents that contextual information
for each triple ti ∈ G, if ∀t 'j ∈ G ' → Pt final (t 'j ) = 0 ,
conveyed by assigning label λk to object A j and i
Then the support for labeling λl to vertex Ai by edge conceptual subgraph matching between G and G’,
vertex A j at iteration S can be defined as for each triple ti ∈ G, if ti is not an Isolated Triple,
final
m then arg max Pti (t k' ) the set of is the Mapping
q (λl ) = ∑r( Ai = λl , Aj = λk )P (λk )
S
Ai
S
Aj (3.1)
' '
tk ∈G
k =1
Set of ti .
395
The concept compatibility coefficient pij (Ta , Tb' )
Definition 4. (Decidable Triple vs. Ambiguous Triple)
In a maximal common edge conceptual subgraph represents how well the Ta matches with Tb as shown
matching between G and G’, for each triple ti ∈ G, if in formula 3.5.
ti is not an Isolated Triple and the Mapping Set of ti ⎧1, E quality (Ta , Tb' )
p ij (Ta , Tb' ) = ⎨ (3.5)
consists of only one single element, then ti is a ⎩0, otherwise
3.4. The conceptual graph matching Algorithm
Decidable Triple, otherwise it is an Ambiguous Triple
that have more than one possible mapping in G’.
Definition 7. (Anchored Pair) In the relaxation
labeling procedure for maximal common edge
Definition 5. (Neighbor of Triples) For each triple
conceptual subgraph matching between G and G’, if
Ta(vr,el,vc), the Neighbor of Triples of Ta is the set of
NTS={(va,e,vb) ∈ Triple | va=vr or vh=vc} ∀ti ∈ G, ∀t 'j ∈ G ' , ( ti , t 'j ) is an Anchored Pair
⇒ Pt ( t j ) = 1 and Pt ( t q ) = Pt ( t j ) = 0
s ' s ' s '
i i p
Definition 6. (Equality of two Triples) In a maximal
for ∀ p ≠ i , ∀ q ≠ j , S ≥ 0
common edge conceptual subgraph matching between
G and G’, if Triple1( vi - elip - v p ) ∈ G and The anchored pair allows the algorithm to anchor a
Triple2( v - el
'
j
'
jq
'
-v )
q ∈ G’, Triple1 and Triple2 are particular pair ( ti , t 'j ) of triple mapping by fixing their
mapping probability at one at every iteration. Figure 1
equal ⇔
' '
lab( vi ) = lab( v j ), elip = el jq , and
shows an algorithm of conceptual graph matching
' between G and G’. The initial prior probabilities for
lab( v p ) = lab( vq ).
each pair of triples Pt ( 0 ) (t `j ) is 1 if Equality( ti , t 'j ) is
i
3.3. Noise Evidence vs. Support Function true (line 5). The relaxation labeling cycle (lines 7–15)
are repeated until the difference between prior
In the graph matching, the evidence for two Triples probability Pt ( s −1) (t `j ) and posterior probability
i
ti and t 'j , where ti ∈ G and t 'j ∈ G’, are the set of Pti( s ) (t `j ) becomes smaller than a certain threshold. If
their Neighbor of Triples, NTSi and NTS’j, there is no Ambiguous Triple at the convergence of
respectively. For each Ta ∈ NTSi, there may be more the relaxation labeling, the algorithm adds ( ti , t 'j ) to
than one Tb' ∈ NTS 'j that can make Ta and Tb’ equal
the triple_mapping for each ti in G where
and vice versa. For two equal triples, they may connect
different number of Neighbor of Triples. To resolve t = arg max
'
j
s '
Pt i (t ) (lines 24–27). If there are more
k
' '
t k ∈G
the Noisy Evidence, we modify the support function so
that it only receives the evidence that has the maximal than one Ambiguous Triple at the convergence step of
influence from all Equality pairs in NTS. The support relaxation labeling, the system will select an
function for the pair of triples of ti and t `j receives Ambiguous Triple and iteratively calls the anchored
relaxation labeling procedure before deciding each ( ti ,
the evidence that has the maximal influence from all
Equality pairs of NTS is shown in formula 3.4. t 'j ) as an Anchored Pair where t 'j ∈ MappingSet( ti )
Notable, pt( S ) (t q` ) is the matching probability between (lines 17–21). After the exit of the relaxation labeling
p
(3.4)
1. AnchoredPairs = Φ ;
2. MCES_Solutions = Φ ;
396
3. ARL(G, G’, AnchoredPairs, MCES_Solutions)
4. {
5. InitialPriorProbability();//initial prior probabilities of Pt ( 0 ) (t `j )
i
6. S= 1; // S is the iteration
7. while(true){
8. // update the matching probability between triples
9. for (each triple ti in G)
10. for (each triple tj’ G’)
11. Evaluate Pt ( S ) (t `j ) ;
i
Figure 2 is an example of graph matching from G to iteratively re-run the relaxation labeling again by
G’ with more than one solutions. There are 4 mapping adding (f-1-g,i-1-h) and (f-1-g,m-1-n) to
solutions, {(b-1-a, b-2-c) to (m-1-n, m-2-l)}, {(f-1-g, f- AnchoredPairs where “i-1-h” and “m-1-n” are found in
2-e) to (i-1-h, i-2-j)}, {(b-1-a, b-2-c) to (i-1-h, i-2-j)} the MappingSet(f-1-g) as shown in Figure 5 and
and {(f-1-g, f-2-e) to (m-1-n, m-2-l)}. Figure 3 is the Figure 6.
prior probabilities for the vertices of G and G’. After
the first convergence of relaxation labeling as shown in
Figure 4, 4 triples (b-1-a), (b-2-c), (f-1-g), and (f-2-e)
are Ambiguous Triples, the algorithm selects the
Ambiguous Triples “f-1-g” as an anchoring triple and
397
Figure 3. Initial prior probabilities convergence again, the algorithm finds two solutions,
{(b-1-a, b-2-c) to (i-1-h, i-2-j)} and {(f-1-g, f-2-e) to
(m-1-n, m-2-l)}
398
Figure 7. Part of maximal common edge subgraph between patent 6045439 and 5893796
5. Conclusion and Future Work [3] H. Kalviainen, E. Oja, “Comparisons of Attributed Graph
Matching Algorithms for Computer Vision”, STeP-90
Finnish Artificial Intelligence Symposium, University of Oulu,
In this paper, we have proposed a maximal common 1990, pp. 354-368.
edge subgraph algorithm based on the relaxation [4] M. Marneffe, B. MacCartney, amd D.C. Manning,
labeling. There are two problems of traditional “Generating Typed De-pendency Parses from Phrase
relaxation labeling: (1) Ambiguity Mapping; and (2) Structure Parses”, Inter-national Conference On Lerc
Noisy Evidence. To resolve the Ambiguity Mapping, Language Resources and Evaluation, 2006
at each final convergence of relaxation procedure, the [5] G. Mineau, R. Missaoui, R. Godinx, “Conceptual
algorithm iteratively anchors two triples and modeling for data and knowledge management”, Data &
recursively run relaxation procedure. To resolve the Knowledge Engineering, 33, 2000, pp. 137 – 168.
Noisy Evidence, we modified the support function in [6] C.S. Peirce, Reasoning and the Logic of Things. The
Cambridge Conferences Lectures of 1898. Ed. by K. L.
relaxation labeling so that it allowed only receiving the
Kremer, Harvard Univ. Press, Cambridge, 1992
maximal influence evidence for each set of same [7] J. Raymond, P. Willen, “Maximum common subgraph
evidence. However, it may also increase the elements isomorphism algorithms for the matching of chemical
in the Mapping Set of an Ambiguous Triple. Although structures”, Journal of Computer-Aided Molecular Design,
we have applied to conceptual graphs, the anchored 16, 2002, pp. 521-533.
relaxation labeling framework is a general one and can [8] R. Rosenfeld, R. Hummel, S. Zucker, “Scene labeling by
be applied to other types of graph matching as well. In relaxation operations”, IEEE Trans. Systems Man Cybernet,
the future, we will utilize the proposed method to 6, 1976, pp. 420–433.
facilitate patent processing such as patent retrieval, [9] J.F. Sowa, Conceptual Structures: Information
Processing in Mind and Machine, Addison-Wesley, 1984.
patent cluster, patent comparison and patent
[10] D. Williams, J. Huan, W. Wang, “Graph Database
summarization to help more profound judgment of Indexing Using Structured Graph Decomposition”,
patent infringement. Proceedings of the 23rd IEEE International Conference on
Data Engineering, 2007.
10. References [11] S. Yi, B. Huang, W.T. Chan, “XML Application
Schema Matching Using Similarity Measure and Relaxation
[1] G. Amati, I. Ounis, “Conceptual Graphs and First Order Labeling”, Information Sciences, 169, 2005, pp. 27 – 46.
Logic”, The Computer Journal, 43, 2000, pp.1-12. [12] S.Y. Yang and V.W. Soo, “Extract Conceptual Graphs
[2] F. Giunchiglia, M. Yatskevich, P. Shvaiko, “Semantic from Plain Texts in Patent Claims”, The 6th Mexican
Matching: Algorithms and Implementation”, Journal on International Conference on Artificial Intelligence,
Data Semantics, 2007, pp. 1-38. November 4-10, 2007 (Post Presentation).
399
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
1 2 7 6 57 56 61 62
2. Background 0 3 4 5 58 59 60 63
(c)
In the wireless environments, a broadcast cycle consists
of a collection of data items, which are cyclically broadcast Figure 1. The Hilbert curve: (a) order 1; (b)
on the wireless channel. Mobile clients listen to the wireless order 2; (c) order 3.
channel to retrieve the data item of interest. In this section,
we briefly describe the Hilbert curve, one kind of space-
filling curves.
A space-filling curve is a continuous path which passes feasible [1]. These assumptions include:
through every point in a multi-dimensional space once to
1. Spatial objects are represented as a point in a two-
form a one-one correspondence between the coordinates of
dimensional space.
the points and the one-dimensional sequence numbers of
the points on the curve [4]. Some examples of space-filling 2. Spatial objects appear once in a broadcast cycle, i.e.,
curves are the Peano curve, the RBG curve and the Hilbert the uniform broadcast.
curve. Among them, the Hilbert curve can preserve the spa-
tial locality of points. The spatial locality means that points 3. A bucket is a logical transmission unit on a broadcast
that are close to each other in a multi-dimensional space are channel. Index tuples can be put into an index bucket
remained to close to each other in a one-dimensional space. and a spatial object can be put into a data bucket. The
Figure 1-(a) shows the Hilbert curve of order 1. The curve size of a data bucket is far larger than that of an index
can keep growing recursively by following the same rota- bucket, and the size of a data bucket is a multiple of
tion and reflection pattern at each point of the basic curve. that of an index bucket.
Figures 1-(b) and 1-(c) show the Hilbert curves of orders
2 and 3, respectively. In this paper, to preserve the spatial 4. Clients make no use of their upstream communications
locality, we allocate spatial objects to the broadcast channel capability.
in the ascending order of the Hilbert curve. 5. When a client switches to the public channel, it can
retrieve buckets immediately.
3. The Hilbert Curve-Based Distributed Index
6. The server broadcasts buckets over a reliably single
To provide an efficient way to process window queries in channel.
the wireless broadcast environments, we propose a Hilbert
curve-based distributed index (HCDI). In this section, we
first state the assumptions of our proposed algorithm and
then present our proposed algorithm. For a window query of spatial objects, the answered ob-
jects may be the neighbors of each other. To provide an ef-
ficient way to support the window query, we propose neigh-
bor links to guide clients to receive related objects. The
This paper focuses on the wireless environment. Some policy for adding neighbor links to the base unit is that
assumptions should be restricted in order to make our work the base unit has neighbor links pointing to the neighbor
368
units of the northern, southern, eastern, western, northeast-
ern, southeastern, northwestern and southwestern directions
that have the Hilbert-curve value greater than its one. The
efficient way to find these neighbor units of the current base
unit in the Hilbert curve can be found in [2]. In [2], Chen 21 22 25 26 37 38 41 42
and Chang presented a method to find the sequence num-
20 23 24 27 36 39 40 43
bers of the neighboring blocks next to the current base unit
based on its bit shuffling property in the Peano curve, and 19 18 29 28 35 34 45 44
the transformation rules between the Peano curve and the 16 17 30 31 32 33 46 47
Hilbert curve. That is, the sequence numbers of the neigh-
15 12 11 10 53 52 51 48
boring blocks next to the current base unit can be easily
found in the Peano curve, and then transformed to the ones 14 13 8 9 54 55 50 49
in the Hilbert curve. 1 2 7 6 57 56 61 62
0 3 4 5 58 59 60 63
: An object inside : No object inside
The proposed algorithm for efficiently processing win-
dow queries is proceeded as follows. Figure 2. A Hilbert curve of order 3
1. Allocate spatial objects in the ascending order of the
Hilbert curve of order .
;;
;
lows. 21 22 25 26 37 38 41 42
20 23 24 27 36 39 40 43
5 6 9 10
(a) Add neighbor links (the neighbor-link index) to 19 18 29 28 35 34 45 44
the corresponding index buckets from base units 16 17 30 31 32 33 46 47
4 7 8 11
(blocks) of order to those of order 1. 15 12 11 10 53 52 51 48
14 13 8 9 54 55 50 49
3 2 13 12
(b) Check if the index tuples of the neighbor-link in- 1 2 7 6 57 56 61 62
dex in the index buckets have the same pointer 0 3 4 5 58 59 60 63
0 1 14 15
(offset). If yes, remove the index tuples with the
short range. (a) (b)
(c) Add the local index, which has information about
the objects in the same group, to the correspond-
ing index buckets.
1 2
Now, we use an example to illustrate our proposed al-
gorithm. Figure 2 shows an example of the Hilbert curve
of order 3, where the gray block contains a spatial object
0 3
inside and the white one contains no object. In Step 1, we
allocate spatial objects to the one-dimensional space in the (c)
order of the Hilbert curve of order .
Next, in Step 2, we allocate one index bucket before each Figure 3. Block levels: (a) order 1; (b) order 2;
data bucket. The objects covered by the same Hilbert-curve (c) order 3.
value of order are considered as a group.
Block of order , , is covered
in block of order . Take objects 8, 9 and 11 shown
in Figure 3-(a) for example. Their Hilbert-curve values are
covered by block
of order
369
Table 1. Neighbor links
Order Start Block Neighboring Blocks (Range)
0 1 ([17,31]), 2 ([32,40]), 3 ([51,61])
1 2 ([32,40]), 3 ([51,61])
1
2 3 ([51,61])
3 -
1 2 ([8,11])
2 4 ([17,17]), 7 ([28,31]), 8 ([32,32])
4 6 ([27,27]), 7 ([28,31])
6 7 ([28,31]), 8 ([32,32])
2 7 8 ([32,32])
8 10 ([40,40]), 12 ([51,51]) [17, 17] I4 [17, 17] I4
10 - [17, 31] I4
[28, 31] I6
[17, 31] I4
[28, 31] I6
12 15 ([61,61]) neighbor-link
[32, 32] I9 [32, 32] I9
[32, 40] I9 [32, 40] I9 [28, 31] I6
15 - index
[51, 61] I11 [51, 61] I11 [32, 32] I9
[8, 8] 2 [8, 8] 2' [32, 40] I9
* “-”: no neighbor link local index [9, 9] 3 [9, 9] 3' [51, 61] I11
[11, 11] 4 [11, 11] 4 [27, 27] 6
I I I I I I I
2 shown in Figure 3-(b). Therefore, these objects are in the 0 6 1 8 2 9 3 11 4 17 5 27 6 28
bucket
same group. 1 2 3 4 5 6 7
number
[8, 11] I1 [17, 17] I4 [27, 27] I5 [32, 32] I9
Then, in Step 2-(a), to provide an efficient way to support [17, 31] I4 [17, 31] I4 [28, 31] I6 [32, 40] I9
[32, 40] I9 [28, 31] I6 [32, 40] I9 [51, 61] I11
the window query, neighbor links (the neighbor-link index) [51, 61] I11 [32, 32] I9 [51, 61] I11 [28, 28] 7
[32, 40] I9
are allocated to the corresponding index buckets for each [6, 6] 1
[51, 61] I11
[17, 17] 5 [29, 29]
[31, 31]
8
9
object in the group from base blocks of order [8, 8] 2'
[9, 9] 3
to those of order 1. Consider the group containing objects [11, 11] 4
which contain objects inside. Moreover, the neighbor links [32, 32] 10 [51, 51] 12
370
Furthermore, from Figures 3-(a), 3-(b) and 3-(c), we get that should be examined.
object 8 is contained in block 0 of order 1. In Table 1, we
get the neighboring blocks of block 0 of order 1 and their (a) Check index tuples of the neighbor-link index,
corresponding ranges, 1 ([17,31]), 2 ([32,40]), 3 ([51,61]). which have the shortest range covering one of the
As a result, in index bucket , the neighbor-link index has intersected segments, to get the offsets to the re-
these three index tuples,
,
, and lated index buckets.
shown in Figure 4.
In Step 2-(b), to save the space in the index bucket, (b) Check index tuples of the local index to get the
we check if the index tuples of the neighbor-link index in offsets to the related data buckets.
the index buckets have the same pointer (offset). For the
index tuples with the same pointer, since the index tuple 3. Determine the nearest offset of the related bucket to
with the wide range can contain more information about the tune in, and then go into the doze mode to save power
neighboring objects than that with the short one, the latter consumption.
one is removed from the index bucket. Take index tuples
and
in index bucket for ex- 4. Repeat Step 2 to Step 3 until all the intersected seg-
ample. Range [17,31] of index tuple
is wider ments are checked.
than range [17,17] of index tuple
. Therefore,
index tuple
is removed from index bucket . Take the query window (the dash-line box) in Figure 2
Moreover, index tuple
is removed from index for example. This query window can be divided into three
bucket for the same reason. The removed index tuples segments covered with the Hilbert curve,
,
are the ones with a strikethrough line shown in Figure 4. and
. Assume that the client first tunes in to the
In Step 2-(c), we add the local index, which has informa- channel at the beginning of the index bucket in Figure
tion about the objects in the same group, to the correspond- 4. After checking this bucket, the client gets the offsets
ing index buckets. Take index bucket for object 8 shown to index buckets , ,
and , which have informa-
in Figure 4 for example. Since objects 8, 9, and 11 are in tion about the intersected segments. Next, the client tunes
the same group, the local index in index bucket has three in at the nearest-related index bucket . By examining
index tuples pointing to the data buckets containing these the neighbor-link index in this bucket, the client finds tuple
objects, i.e.,
,
, and
shown in
that has the shortest range covering segment
Figure 4. Note that in Figure 4, when index bucket is
. Since the range covering segment
of index
broadcast, bucket number 2 containing object 8 has been bucket is longer than that of index bucket , the offset
broadcast; therefore, index tuple
¼ in index bucket to index bucket is replaced by that to index bucket .
points to bucket number 2 in the next cycle. The index At the same time, from the local index of index bucket ,
tuples of the local index in index buckets , and are the client gets the offset to object 11, which is in
.
in the same manner. After receiving object 11, the client reaches index bucket
Each index bucket has an index tuple pointing to the be- . From the local index of this bucket, the client gets the
ginning of the next cycle to retrieve objects that have been offset to receive object 31, which is in
. After that,
broadcast. Each data bucket has an offset to direct clients to the client reaches object 32 through index bucket
. The
the nearest index bucket to start receiving the related buck- client finally examines index bucket and knows that
ets. there is no object in segment
. Up to this point, all
the intersected segments have been checked and the query
processing is terminated. The answered objects for this
query are objects 11, 31, and 32.
To process a window query with our proposed algorithm,
all the segments along the Hilbert curve that are intersected
with a given query window should be found [5]. The access 4. Performance
protocol for window queries is proceeded as follows.
1. Tune in to the broadcast channel to receive the current In this section, we study the performance of the proposed
bucket to get the offsets to the nearest index bucket algorithm. We compare our proposed algorithm with the
and the beginning of the next cycle, and then go into distributed spatial index, DSI [5]. DSI divides the spatial
the doze mode. objects, which are allocated in the Hilbert-curve order, into
frames. Each frame has an index table that maintains infor-
2. Tune in to receive the bucket, a data bucket or an index mation about spatial objects which are exponentially away
bucket. If an index bucket is received, index tuples from the current frame.
371
5. Conclusions
HCDI
500000 DSI
In this paper, we have proposed a Hilbert curve-based
distributed index with neighbor links for window queries
Average Tuning Time (Bytes)
Acknowledgement
Figure 5. The average tuning time
This research was supported in part by the National Sci-
ence Council of Republic of China under Grant No. NSC-
95-2221-E-110-079-MY2 and by “Aim for Top University
Plan” project of NSYSU and Ministry of Education, Tai-
In our simulation model, two integer numbers of wan.
( ) byte are used to represent two coordinates
in a two-dimensional space, so that an integer number of 2
bytes is used to represent a Hilbert-curve value. Each spa- References
tial object occupies
( ) bytes. The search
region of a window query is controlled by
, [1] Y. I. Chang and C. N. Yang. A Complementary Approach to
the ratio of the side length of a window query to that of the Data Broadcasting in Mobile Information Systems. Data and
search space. Given
and the side Knowledge Eng., 40(2):181–194, Feb. 2002.
[2] H. L. Chen and Y. I. Chang. Neighbor Finding Based on
length of the search space is equal to , the search
region of a window query is a 26 ( ) 26
Space Filling Curves. Information Systems, 30(3):205–226,
May 2005.
square. In our simulation, 10,000 points are uniformly gen- [3] B. Gedik, A. Singh, and L. Liu. Energy Efficient Exact kNN
erated in a square Euclidean space [5], and 10,000 queries Search in Wireless Broadcast Environments. In Proc. of the
are randomly issued. Therefore, our experimental results 12th ACM Int. Workshop on Geographic Info. Systems, pages
are the average of 10,000 queries. The average tuning time 137–146, 2004.
is measured in terms of bytes. [4] J. K. Lawder and P. J. H. King. Querying Multi-Dimensional
Data Indexed Using the Hilbert Space-Filling Curve. ACM
! " # SIGMOD Record, 30(1):19–24, March 2001.
[5] W. C. Lee and B. Zheng. DSI: A Fully Distributed Spatial
Index for Location-Based Wireless Broadcast Services. In
For the distributed spatial index (DSI), we set the num- Proc. of the 25th IEEE Int. Conf. on Distributed Computing
ber of objects in a frame and the exponential base for index Systems, pages 349–358, 2005.
tuples to 8 and 2, respectively. In this performance eval- [6] J. H. Shen and Y. I. Chang. A Skewed Distributed Indexing
uation, we vary
from to . Figure 5 for Skewed Access Patterns on the Wireless Broadcast. The
shows the average tuning time. In this figure, as the value of Journal of Systems and Software, 80(5):711–723, May 2007.
[7] B. Zheng, W. C. Lee, and D. L. Lee. Search K Nearest Neigh-
increases, the average tuning time of both
bors on Air. In Proc. of the 4th Int. Conf. on Mobile Data
algorithms increases. As the value of
in- Management, pages 181–195, 2003.
creases, the search region increases. It means that the ob- [8] B. Zheng, W. C. Lee, and D. L. Lee. Spatial Queries in Wire-
jects in the search region to be examined increase, resulting less Broadcast Systems. Wireless Networks, 10(6):723–736,
in the increase of the average tuning time. In Figure 5, we Nov. 2004.
can observe that the average tuning time of our proposed al- [9] B. Zheng, J. Xu, W. C. Lee, and D. L. Lee. Grid-Partition
gorithm is shorter than that of DSI. Our proposed algorithm Index: A Hybrid Approach to Nearest-Neighbor Queries
has an average improvement of 36% on the average tuning in Wireless Location-Based Services. The VLDB Journal,
time over DSI. This is because our proposed HCDI utilizes 15(1):21–39, Jan. 2006.
the neighbor-link index to reduce the number of the tune-in
buckets, resulting in the reduction of the tuning time.
372
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
374
Definition 6. Backup Quorum Set Ǻ The set that Qk except for HAk, and the bindings of MNs in the
ª Nº second segment are backuped by the HAs in Q((k-1) mod N)
comprises all the backup quorums of the MN is
« »
except for HAk, …, and so forth.
called the backup quorum set of the MN or the backup
Consider the above example again. In the network
quorum set of HAk.
with 8 HAs, for the primary home agent HA1, the backup
quorum set is {Q1, Q8, Q7}, where Q1 = {HA1, HA2,
Definition 7. Backup Quorum ArrayǺ The array that
HA3}, Q8 = {HA8, HA1, HA2}, Q7 = {HA7, HA8, HA1}.
contains all the ª« N º» backup quorums of HAk is called Assume that the address of the network segment that is
backup quorum array of HAk and is denoted as managed by HA1 is A.B.C.DX1~A.B.C.DX4. Then, it is
BQk[0..d-1]=[Qk, Q((k-1) mod N),…, Q((k-d+1) mod N)], d= ª« N º» . divided into ª 8 º =3 segments and the three segments
« »
are A.B.C.DX1~A.B.C.DX2, A.B.C.DX2+1~A.B.C.DX3,
Theorem 1. For a primary home agent HAk ( 1 d k d N ), and A.B.C.DX3+1~A.B.C.DX4 respectively. For each MN
its backup quorum set is {Qk, Q((k-1) mod N),…, Q((k-d+1) mod managed by HA1, if the MN’s home address belongs to
ª Nº A.B.C.DX1~A.B.C.DX2 segment, the MN’s bindings will
N)}, d= « » , and there are exactly d backup quorums in
the backup quorum set. be stored and backuped in all the HAs of the backup
quorum BQ1[0] = Q1. And, if the MN’s home address
Definition 8. Backup Home Agent (Backup HA), belongs to A.B.C.DX1+1~A.B.C.DX3 segment, the MN’s
Backup Home Agent Set (Backup HA Set)Ǻ bindings will be stored and backuped in all the HAs of
For a mobile node MN with its primary home agent HAk the backup quorum BQ1[1] = Q8. Further, if the MN’s
( 1 d k d N ), every HA (except the primary HAk) in the home address belongs to A.B.C.DX3+1~A.B.C.DX4
segment, the MN’s bindings will be stored and backuped
backup quorum of HAk is called the backup HA of the
in all the HAs of the backup quorum BQ1[2] = Q7.
MN or the backup HA of HAk. The set includes all
backup HAs in the backup quorum set of HAk is called
the backup HA set of HAk. 3.3. Maintenance and Backup of Bindings
Definition 9. Backup Home Agent ArrayǺThere are N In the conventional Mobile IP protocol, the mobility
binding consists of a MN’s home address, its CoA and
HAs in mobile network. For each HAk ( 1 d k d N ), the
registration lifetime. In our cyclic quorum-based
array contains the array of all backup HAs of the HAk
mechanism, the binding also include the HA’s IP address
called backup HA array of the primary HA and presents
and the chosen backup quorum. That is, the binding
as BHAk[0..m-1] = [HA((k-d+1) mod N), HA((k-d+2) mod N),…,
contains home address, CoA, lifetime, HA’s IP address
HA((k-1) mod N), HA((k+1) mod N), HA((k+2) mod N),…, HA((k+d-1)
and the backup quorum that the HA selects. We call this
mod N)], where m = 2( ª« N º» -1). binding as “extended binding”.
The registration and backup management
Theorem 2. For a primary home agent HAk ( 1 d k d N ), mechanism is described as follows. In a mobile network
the backup HA set is {HA((k-d+1) mod N), HA((k-d+2) mod N), …, with N HAs, when a MNi ( 1 d i d N ) roams to a foreign
HA((k-1) mod N), HA((k+1) mod N), HA((k+2) mod N),…, HA((k+d-1) network, the FA is going to allocate a CoA for it.
mod N)}, and there are exactly 2( «
ª N º -1) backup HAs in
» Supposing that the MNi’s HA is HAk ( 1 d k d N ), the
the backup HA set. MNi will send a registration request with its CoA to HAk.
According to the backup mechanism based on network
For example, in the mobile network with 8 HAs, for segments above, HAk determines that the the MNi
the MNs that register to the home agent HA1, the backup belongs to which network segment (assume the jth
quorums of HA1 are Q1, Q8, and Q7. That is, the backup segment) in accordance with the MNi’s home address
quorum set is {Q1, Q8, Q7}, where Q1 = {HA1, HA2, and then HAk takes BQk [j-1] as the backup quorum of
HA3}, Q8 = {HA8, HA1, HA2}, and Q7 = {HA7, HA8, this MN. After that, HAk delivers a backup registration
HA1}. According to Theorem 2, the backup HA set is request to all active backup HAs in the quorum BQk [j-1]
(except for HAk) and the request message contains the
{HA2, HA3, HA7, HA8} and there are 2( ª« 8 º» -1) = 4 HAs extended binding of the MNi. When a backup HA
in this set. accepts the request message, it will backup the extended
binding of the MNi and transmits a response message
3.2. Backup Quorum Management back to HAk. In case that HAk acquires all reply
Our proposed backup quorum management messages (at most ª« N º» -1) from all the active backup
mechanism is based on network segmentation. In a HAs of the quorum BQk[j-1], HAk will dispatch a
mobile network with N HAs, the network that is registration reply message with successful authentication
managed by the primary HAk ( 1 d k d N ) is divided into to the MNi. Finally, the processes of the registration and
backup are finished.
d = ª« N º» network segments. The first segment is
backuped with BQk [0] = Qk, the second segment is with
BQk[1] = Q((k-1) mod N),…, and the dth segment is with Consider the previously described example again.
BQk[d-1] = Q((k-d+1) mod N) in order. That is, the bindings of In a mobile network with 8 HAs, when a MN1 roams to a
the MNs in the first segment are backuped by the HAs in
375
foreign network, the FA will allocate a CoA to the MN1 ª º
and the MN1 will send a registration request message (BQi[0], BQi[1], …,BQi[d-1], where d= « N » -1) which
with its CoA to HA1 after obtaining the CoA. Then HA1 belongs to HAj in the backup bindings of the failed HAi.
determines that MN1 belongs to which network segment When HAk acquires the load messages from all active
in accordance with the MN1’s home address. If the MN1 backup HAs of the faulty HAi, HAk will execute the
belongs to the third segment, HA1 will assign the takeover procedure and select the HA with minimum
BQ1[3-1] = BQ1[2] as the backup quorum of the MN. load (that is, number of binding maintenance) from each
Afterward, the procedure of the registration and backup backup quorums (BQi[0], BQi[1], …,BQi[d-1], where
is started. This is, HA1 will deliver the backup request d= ª« N º» -1) of the failed HAi in order.
message with the MN1’s extended binding to all active In other words, HAk that is with the minimum
backup HAs in the backup quorum BQ1[2]. Every active number in the backup HA set is responsible for selecting
backup HA should finish the backup procedure and one HA with the minimum load (that is, minimum
transmits a backup reply message back to HA1. When number of binding maintenance) to take over the backup
HA1 receives all backup reply messages from all the binding of the faulty HAi from each backup quorum of
active backup HAs, HA1 will dispatch a registration the faulty HAi in order. And then, HAk broadcasts the
reply message to MN1. After finishing the registration check result to all backup HAs except for the faulty HAi.
and backup process, HA1 will maintain the current After the takeover process, the load of the chosen HA
extended binding for MN1 and other active backup HAs becomes the sum of the minimum load and the backup
in the BQ1[2] will also store the extended binding. Table number of the bindings in the backup quorum of the
2 shows the record of the extended binding in the failed HA. Finally, the chosen HA begins to take care of
primary home agent HA1 and backup HAs of BQ1[2]. the failed HAi’s bindings and resumes the operation
transparently. For maintaining the synchronization of
load information sent by each HA, when all backup HAs
Table 2. Bindings in HA1 and in the Backup HAs
deliver the load messages to the HA with the minimum
number in the backup HA set, they will enter a critical
section and do not take any registration at the same time.
However, they leave the critical section and accept the
registration till they obtain the messages with check
result from the HA with the minimum number. After
getting the check result message, supposing that HAk is
the takeover home agent in a backup quorum of the
faulty HA, HAk will take charge of all extended bindings
of the backup quorum and serve the MNs in the extended
binding. On the other hand, if a HA is not the takeover
home agent in any quorum, it will just record the
takeover message and leave the critical section and
resume accepting new registration of MNs.
For example, in a mobile network with 8 HAs, as
3.5. Failure Detection and Takeover shown in Table 3, the mobility bindings of HA1 are
recorded by all the backup HAs in the BHA set of HA1.
The failure of a HA can be detected by using agent When HA1 fails, the backup HAs (HA2, HA3, HA7, HA8)
advertisements. In Mobile IP protocol, all MAs will send in the BHA set of HA1 know that HA2 is the HA with the
the agent advertisement [1, 2] messages periodically to minimum number and they (HA3, HA7, HA8) will deliver
advertise their existence and service for the MNs on any the binding load (see Table 4) to HA2. After receiving
attached network. With the agent advertisements, we can the binding load messages from all the backup HAs, HA2
check if a MA operates or not. A HA has N-1 timers for starts the takeover of the check process in each backup
the other N-1 HAs except itself. When a timer runs out quorum. In Table 5(a), HA2 has minimum load (number
of time, it means that the correspondent HA fails since of binding maintenance) in Q1. Hence, HA2 will take
its agent A\advertisement has not been received after a over the Q1, and, after the takeover, its binding load
certain period of time. become 3 (the sum of maintenance number and backup
number in Q1) as shown in Table 5(b). Similarly, the
Provided that a HAi crashes, other active HAj in the takeovers in Q8 and Q7 are HA8 and HA7 as shown in
same network will discover the failure of HAi because of Tables 6 and 7, respectively. Finally, after the check
not acquiring an agent advertisement message from HAi process, HA2 will send the takeover reply message (see
after a period of time. According to Theorem 2, HAj is Table 8) to each backup HA in the BHA set. The backup
able to figure out the backup HA set from the faulty HAi HAs receive the takeover reply message and then leave
and finds out the HA with the minimum number in this the critical section to accept the registration or take over
set, say HAk. If k is not equal to j ( k z j ), HAj will the bindings. The extended bindings in the backup HA of
transmit a load message to HAk. The load message is HA1 after the takeover are as shown in Table 9.
taken down the amount of all the MNs served by faulty
HAi at present and the quantities of the backup quorum
376
Table 3. Bindings in the backup HAs of HA1 Table 8. The takeover reply message from HA2
377
References
[1] C. E. Perkins, “IP Mobility Support,” IETF RFC
2002, Oct. 1996.
[2] C. E. Perkins, “IP Mobility Support for IPv4,” IETF
RFC 3220, Jan. 2002.
[3] C. Graff, M. Bereschinsky, M. Patel, and L. F. Chang,
“Application of Mobile IP to Tactical Mobile
Internetworking,” Military Communication Conference,
Vol. 2, pp. 409-414, 1998.
[4] C. M. Lin, G. M. Chiu, and C. H. Cho, “A new
quorum-based scheme for managing replicated data in
Figure 2. Bindings per backup HA
distributed systems,” IEEE Transactions on Computers,
Vol. 51, pp. 1442-1447, 2002.
As shown in Figure 3, in case that the number of [5] H. Ahn and C. S. Hwang, “Low-Cost
HAs is 2, the FTMIPP and CQFTP almost spend the Fault-Tolerance for Mobile Nodes in Mobile IP Based
same time. In such a case, the same number of messages Systems,” 15th International Parallel and Distributed
is sent in two protocols. However, when the number of Processing Symposiums, pp. 508-513, 2001.
HAs is more than 4, in FTMIPP, it spends much time [6] I. H. Bae, “A quorum-based dynamic location
than our CQFTP. The reason is that the number of management method for mobile computings,” in
backup HAs is N-1 in FTMIPP and ª« N º» 1 in CQFTP. Proceedings of the 6th International Conference on
Real-Time Computing Systems and Applications
(RTCSA), 1999, pp. 398-401.
[7] J. W. Lin and J. Arul, “An Efficient Fault-Tolerant
Approach for Mobile IP in Wireless Systems,” IEEE
Transactions on Mobile Computing, VOL. 2, NO. 3,
Jul.-Sep. 2003.
[8] J. H. Ahn and C. S. Hwang, “Efficient Fault-Tolerant
Protocol for Mobility Agents in Mobile IP,” Proceedings
of the 15th International Parallel and Distributed
Processing Symposiums, pp. 1273 -1280, Apr. 2001.
[9] M. J. Yang, Y. M. Yeh, and Y. M. Chang, “Legion
Structure for Quorum-Based Location Management in
Figure 3. Average registration delay
Mobile Computing,” Journal of Information Science and
Engineering, Vol. 20, pp. 191-202, 2004.
As shown in Figure 4, we simulate the registration [10] M. Naor and A. Wool, “Access control and
delay of total 100 MNs with different mobility rates in signatures via quorum secret sharing,” IEEE
the network with 20 HAs. It shows that our proposed Transactions on Parallel and Distributed Systems, Vol.
protocol has smooth and smaller registration delay than 9, pp. 909-922, 1998.
FTMIPP. [11] R. Ghosh and G. Varghese, “Fault-Tolerant Mobile
IP,” Technical Report WUCS-98-11, Washington Univ.,
Apr. 1998.
[12] R. Jimenez-Peris, M. Patino-Martinez, G. Alonso,
and B. Kernme, “How to Select a Replication Protocol
According to Scalability, Availability and
Communication Overhead,” in Proceedings of 20th
IEEE Symposium on Reliable Distributed Systems, pp.
24-33, 2001
Figure 4. Registration delay with different mobility [13] R. Mistry, P. Savill, and A. Tofanelli, “OA&M for
rates Full Services Access Networks,” IEEE Communications
Magazine, pp. 70-77, Mar. 1997.
5. Conclusions [14] Y. Mun, Y. Kim, Y. J. Kim, and G. Hwang, “IP
Mobility Support over Wireless ATM,” IEEE
In this paper, we propose a cyclic-quorum-based International Conference on Communications, pp.
fault-tolerant protocol in the Mobile IP network with 319-323, 1999.
redundant HAs. Simulation results show that our [15] Y. T. Wu, Y. J. Chang, S. H. Yuan, and H. K.
proposed mechanism has many merits: it does not need Chang, “A New Quorum-Based Replica Control
the extra hardware cost; it reduces the number of the Protocol,” in Proceedings. Pacific Rim International
backup bindings by using the small quorum size; it Symposium on Fault-tolerant System, pp. 116-121, Dec.
balances the load of the takeover process; it has low 1997.
registration overhead.
378
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
401
more, to achieve information sharing and exchange objec- mantic web layer cake 1 . There are several possible hy-
tives on the current Web 1.0 and Web 2.0, we need to collect brid ontologies+rule combinations, such as AL-log, DL-
most of this information from multiple relational databases log, and DL+log, to consider as a policy language for the
in the deep web. Therefore, the information disclosure poli- representation and enforcement of privacy protection poli-
cies and mechanisms for satisfying privacy protection prin- cies [9] [23] [24]. Under hybrid ontologies+rules com-
ciples are usually embedded into the relational database bination, some of the terms in privacy protection policies
systems. Certainly it is not easy to have either informa- will not be explicitly declared or defined in ontologies but
tion sharing or information disclosure actions across multi- they will be declared as predicates in each rule. Therefore
ple relational databases from these heterogeneous database the knowledge flow between ontologies and rules might be
schema. bi-directional to re-enforce ontologies and rules expressive
power of each other. At this moment, it is unclear which
3.2 Privacy Protection on Web 3.0 homogeneous/hybrid ontologies+rules combinations to use
as an ideal representation and enforcement of privacy pro-
If we successfully migrate from Web 1.0 and Web 2.0 tection system policies. This still needs further study.
to Web 3.0 (Semantic Web), then all of users’ profiles and Another issue is that most of the current privacy pro-
digitally traced information will be annotated via ontology- tection systems with their policies can be expressed and
based markup language, such as RDF(S) or OWL. We do enforced only as positive permission but no negative per-
not know whether this semantic web evolution process will mission (or deny) on the rule’s conclusion for each infor-
be a benefit or a detriment on the realizing of privacy protec- mation disclosure request. Similarly, people do not allow
tion. From the pro side, because all of the information will weak (or strong) negation premises on each privacy pro-
be modeled and marked up by a well-defined semantic web tection policy. All of these constraints are due to the lack
ontology structure we can easily apply similar techniques of negation as failure (NAF) assumptions for ontologies
for the expression and enforcement of privacy protection that certainly restrict wide information dissemination and
policies. On the con side, if the privacy protection sys- disclosure capacity on privacy protection. In fact, how to
tem was not perfectly designed and implemented, certainly merge open world assumption (OWA) from the ontology
this system would be much easier for any privacy violators side with closed world assumption (CWA) from the rule
to challenge our protection policies by using pre-existing side on the ontologies+rules integration is also one of the
highly semantically connected information to inference (or emerging critical research issues when we combine ontolo-
reason) where are the possible weak links to attack. This is gies with rules together. Furthermore, we might face on-
a two-edged sword scenario when we introduce the seman- tologies merging and rule composition challenges when we
tic techniques into both information modeling and privacy integrate the information cross heterogeneous multiple do-
protection policy on Web 3.0. mains that might induce a dilemma for a global inconsistent
ontologies+rules protection polices from each collected lo-
4 Ontologies+Rules for Privacy Protection cal consistent ontologies+rules protection policies [5].
Policy
4.1 Ontologies for Privacy Protection
Policies
We usually classify ontologies+rules combination as two
approaches: homogeneous integration and hybrid combina-
We proposed three types of ontology in the DL+log-
tion [18]. In a homogeneous integration, ontologies will be
based ontologies+rules combination for the semantic en-
the main body of concept for information structure, where
forcement of privacy protection policies, e.g., data user on-
DLP is the most restricted one for this approach [11]. All
tology, data type ontology, and purpose ontology. More de-
of the major terms and representations for privacy protec-
tailed structures with their associated class and property hi-
tion will be declared and defined in ontologies and later
erarchies are shown as the followings:
move to the rules for further inferencing processes, such
as SWRL [12]. So the knowledge flow is uni-directional in 1. The structure of data user ontologies for both class
a homogeneous integration of ontologies+rules. Here rules and property hierarchies are proposed to categorize the
can be regarded as an added-on component to the ontologies type of users and with their memberships correspond-
component to enhance/extend the expression limitations of ing to an organization (see Figure 1).
ontologies.
In a hybrid combination, the ontologies module is rep- 2. The data type ontologies to describe both the hierar-
resented as OWL or RDF(S) and it sits side by side with chies of class and property for personal profiles and
the rules module represented as RIF to enforce the knowl- 1 See W3C Semantic Web Activity for the latest ”layercake” diagram at
402
Figure 1. A data user hierarchy to classify the
data user class hierarchy
Figure 2. A class hierarchy classification for
both personal profiles and digital traces
digital traces can be shown as Figure 2.
403
Figure 3. A purpose ontology for the classifi-
cation of different data usage purposes
404
isfy DL-safeness conditions because some of the
cando(?c,?b-email, nill) ⇐= variables c1 and c2 in IS STAFF OF DL predicate
opt-out(?b,?b-email,?p)), data-user(?c), did not occur in any Datalog predicates.
data-owner(?b),
HAS EMAIL ADDRESS(?b, ?b-email). ← (a2) • Use case two scenario: The auditing officer Bob
serves in one of government auditing agencies In-
opt-in(?b,?b-email,?p) ⇐= ternal Revenue Service (IRS), where IRS ∈
IS STAFF OF(?b,?c1), IS STAFF OF(?c, ?c2), GOV AGEN CY v P U BLIC . Bob is going to en-
HAS SUBSIDIARY(?c1,?c2), force a routine auditing check to a company M ∈
HAS MAIL TRACE ONLINE(?a-email,?c-email), COM P AN Y v P RIV AT E through its representa-
O EMAIL SENDER(?a-email),
tive Charlie. An auditing announcement officer Alice
O EMAIL RECEIVER(?c-email),
data-owner(?b), data-user(?c), purpose(?p),
from IRS is going to send an email to a representative
data-type(?b-email). ← (a3) employee Charlie ∈ M and other company represen-
tatives to notify the account-auditing schedule. Under
opt-out(?b,?b-email,?p) ⇐=
government’s auditing regulations, the real acting au-
IS STAFF OF(?b,?c1), IS STAFF OF(?c, ?c2),
ditor Bob as one of the mailing list recipients served in
HAS COOPERATIVE(?c1,?c2),
IRS cannot disclose his email address in this account-
HAS MAIL TRACE ONLINE(?a-email,?c-email),
auditing notification email. Therefore, a chief privacy
O EMAIL SENDER(?a-email),
officer (CP O) ∈ IRS has to opt-out the acting auditor
O EMAIL RECEIVER(?c-email),
recipient Bob’s email address to comply the regula-
data-owner(?b), data-user(?c), purpose(?p), tions while Alice is sending an account-auditing noti-
data-type(?b-email). ← (a4)
fication message (see Figure 5).
405
his email address to the data user c who also serves tration. There are several issues they did not exploit in their
in IRS. Otherwise, the data owner b will opt-out(..) approach, shown as follows:
his email address to the data user c who is not an IRS
employee. 1. They did not explicitly separate the ontologies mod-
ule and rules module in their policy specification so
the rules to enforce privacy protection policies have
5 Discussion
to be classified as four categories: direct authoriza-
tion rules, derived authorization rules, decision rules,
5.1 Which Ontologies+Rules Combina- and integrity rules. In our approach, the decisions for
tion? the derived authorization rule can be enforced directly
from the reasoning of ontologies using class and sub-
A variety of ontologies and rules (ontologies+rules) class subsumption relationships. Then the rules mod-
combinations had been proposed for the past few years, ule only has to deal with the final permission of infor-
such as DLP, SWRL, AL-log, DL-log, DL+log, and MKNF, mation disclosure.
etc [11] [12] [9] [23] [24] [19]. We subjectively choose
DL+log as the ontologies+rules combination for two use 2. They did not really demonstrate how to achieve the au-
case scenarios of privacy protection because DL+log consti- thorization decision of private information disclosure
tutes the most powerful decidable combination of Descrip- using the combination of hierarchy of groups, data ob-
tion Logic (DL) ontologies and disjunctive Datalog rules jects, and purposes. We explicitly show this authoriza-
with a weak DL-safeness rule condition [23]. tion decision can be obtained by the ontology merging
This condition of DL-safeness can be expressed as fol- techniques from our three ontologies, e.g., data subject
lows: every variable occurring in an atom with a DL predi- ontology, object ontology, and purpose ontology.
cate must occur in an atom with a Datalog predicate in the
body of the rule [24]. In other words, the DL-safeness con- 3. They did not model and enforce the disclosure of data
dition ensures that each rule variable must occur in one of between enterprises, i.e., exporting and importing data
the Datalog predicates. In DL+log ontologies+rules combi- with their associated privacy policy from/into a sys-
nation, DL-safeness can be weakened as weak DL-safeness tem. We are aware that this problem can be solved by
without losing its nice decidable computational properties using ontologies merging and rule composition tech-
where a Datalog rule with only on the head variables of the niques across multiple domains [5].
rule imposed DL-safeness condition [23], e.g., every head
4. Finally, they did not consider the profile information
variable of Datalog rule must appear in at least one of the
disclosure as well as the digitally traced information
atoms in a Datalog predicate.
disclosure and this will be an emerging research area
A Semantic Web Rule Language (SWRL) used to be
for Web 2.0 and Web 3.0 privacy protection. In our
a semantic web language for the combination of ontolo-
above mail server use case, we demonstrated how the
gies+rules [12]. But the complexity of reasoning for query
personal profile information disclosure opt-in/opt-out
of SWRL-based ontologies+rules is undecidable, which
selection influences the later on digitally traced infor-
prevents people from using this combination without hes-
mation disclosure.
itation. Decidability of reasoning is a crucial issue in sys-
tems when we combine DL-based knowledge bases (KBs)
and Datalog rules together [20] [22]. The loose integra- 6. Conclusion and Future Prospects
tion between DL-based KB and rule-based KB with weak
DL-safeness conditions apply to all of the rules in a privacy There are several challenges for us to elaborate the se-
protection policy set that guarantee the semantic enforce- mantic web core technologies on modeling of privacy pro-
ment of privacy protection policies to be a decidable deci- tection’s policy representation and enforcement. At this
sion process. moment, we are not quite sure which ontologies+rules com-
bination will be the most appropriate one under certain in-
5.2 Privacy Protection Language and formation usage purposes and conditions [9] [19] [23] [24].
Policy In summary, we express and enforce all profile informa-
tion and digital traces with associated disclosure policies
A privacy protection language and policy was proposed using a specific ontologies+rules combination on Web 3.0,
by Karjoth, G. as an extending Flexible Authorization e.g., DL + log. This information modeling structure and
Framework (FAF) with grantors and obligations [15]. In access mechanism will be quite different from Web 1.0 and
this extended FAF approach, a privacy control language in- Web 2.0, where profile information will be defined as re-
cludes user consent, obligations, and distributed adminis- lational database tables in the deep web, and digital traces
406
for recording each user’s surfing activities will be defined [15] G. Karjoth and M. Schunter. A privacy policy model for
and collected as an unstructured weblog. On the Web 3.0 enterprises. In 15th IEEE Computer Security Foundations
information cyberspace, we might face all personal profile Workshop (CSFW). IEEE, June 2002.
information as well as associated digital traces are modeled [16] G. Karjoth, M. Schunter, and M. Waidner. Platform for
as a ontologies+rules combination with semantic query as enterprise privacy practices: Privacy-enabled management
of customer data. In 2nd Workshop on Privacy Enhancing
the only feasible access mechanism; then the challenge for
Technologies (PET), LNCS. Springer, 2002.
semantic representation and enforcement of privacy protec- [17] N. Li, T. Yu, and A. I. Antón. A semantics-approach
tion policies just begins. to privacy languages. Computer Systems and Engineering
(CSSE), 21(5), Sep. 2006.
References [18] J. Maluszynski. Hybrid integration of rules and dl-based on-
tologies. In J. Maluszynski, editor, Combining Rules and
Ontologies. A survey, pages 55–72. EU FP6 Network of Ex-
[1] A. H. Anderson. A comparison of two privacy policy lan-
cellence (NoE), Feb. 2005. REWERSE.
guages: Epal and xacml. In Proceedings of the 3rd ACM
[19] B. Motik et al. Can owl and logic programming live together
Workshop on Secure Web Services (SWS’06), pages 53–60.
happily ever after? In 5th International Semantic Web Con-
ACM, 2006.
ference (ISWC) 2006, LNCS 4273, Athens, GA, USA, Nov.
[2] I. A. Antón et al. A roadmap for comprehensive online for
2006.
privacy policy management. Comm. of the ACM, 50(7):109–
[20] B. Motik, U. Sattler, and R. Studer. Query answering
116, July 2007.
for owl-dl with rules. In 3rd International Semantic Web
[3] G. Antoniou et al. Rule-based policy specification. In T. Yu
Conference (ISWC) 2004, LNCS 3298, pages 549–563.
and S. Jajodia, editors, Secure Data Management in Decen-
Springer, 2004.
tralized Systems, pages 169–216. Springer, 2007.
[4] M. Blaze, J. Figenebaum, and M. Strauss. Compliance [21] J. Park and R. T. Sandhu. The uconABC usage control
checking in the policymaker trust management system. In model. ACM Trans. on Information and System Security,
Proc. of the Financial Cryptography, LNCS 1465, pages 7(1):128–174, 2004.
[22] R. Rosati. On the decidability and complexity of integrating
254–274. Springer, 1998.
[5] A. P. Bonatti, S. D. C. di Vimercati, and P. Smarati. An ontologies and rules. Web Semantics: Science, Services and
algebra for composing access control policies. ACM Trans. Agents on the World Wide Web 3, pages 61–73, 2005.
[23] R. Rosati. DL+log: Tight integration of description logics
on Information and Systems Security, 5(1):1–35, February
and disjunctive datalog. In Proc. of the 10th International
2002.
[6] A. P. Bonatti et al. Semantic web policies - a discussion of Conference on Principles of Knowledge Representation and
requirements and research issues. In 3rd European Semantic Reasoning (KR), 2006.
Web Conference (ESWC 2006), Budva, Montenergro, June [24] R. Rosati. Integrating ontologies and rules: Semantic and
2006. computational issues. In Reasoning Web 2006, LNCS 4126,
[7] L. Cranor et al. The platform for privacy pref- pages 128–151, 2006.
erences (p3p) 1.0 (p3p 1.0) specification, 2002. [25] G. Tonti et al. Semantic web languages for policy represen-
http://www.w3.org/P3P/. tation and reasoning: A comparison of kaos, rei, and pon-
[8] L. Cranor, M. Langheinrich, and M. Marchiori. A der. In 2nd International Semantic Web Conference (ISWC)
p3p preference exchange language 1.0 (appel 1.0), 2002. 2003, LNCS 2870, pages 419–437, 2003.
http://www.w3.org/TR/P3P-preferences/. [26] S. D. C. d. Vimercati et al. Access control policies and lan-
[9] M. F. Donini et al. AL-log: Integrating datalog and de- guages in open environments. In T. Yu and S. Jajodia, ed-
scription logics. Journal of Intelligent Information Systems, itors, Secure Data Management in Decentralized Systems,
10(3):227–252, 1998. pages 21–58. Springer, 2007.
[10] S. Fischer-Hübner. IT-Security and Privacy - Design and [27] D. J. Weitzner et al. Creating a policy-aware web: Discre-
Use of Privacy-Enhancing Security Mechanisms. LNCS tionary, rule-based access for the world wide web. In E. Fer-
1958. Springer, 2001. rari and B. Thuraisingham, editors, Web and Information Se-
[11] N. B. Grosof et al. Description logic programs: Combining curity, pages 1–31. Idea Group Inc., 2006.
logic programs with description logic. In World Wide Web [28] Y. C. T. Woo and S. S. Lam. Authorization in distributed
2003, pages 48–65, Budapest, Hungary, 2003. systems: a new approach. Journal of Computer Security,
[12] I. Horrocks et al. Swrl: A semantic web 2(2-3):107–136, 1993.
rule language combing owl and ruleml, 2004. [29] T. Yu, A. N. Li, and I. Antón. A formal se-
http://www.w3.org/Submission/SWRL/. mantics for p3p. In ACM Workshop on Se-
[13] S. Jajodia et al. Flexible support for multiple access control cure Web Services, Fairfax, VA, USA, Oct. 2004.
policies. ACM Trans. on Database Systems, 26(2):214–260, http://citeseer.ist.psu.edu/750176.html.
June 2001.
[14] L. Kagal, T. Finin, and A. Joshi. A policy based approach
to security for the semantic web. In International Semantic
Web Conference (ISWC) 2003, LNCS 2870, pages 402–418,
2003.
407
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract with close play offset can share their available segments
with other peers and reduce service load of the media server.
Multimedia streaming service, such as IPTV and VoD, Peer-to-peer network exploits resources of end hosts,
is one of killer applications in 4G network. Exploiting such as computing power, storage space and upload band-
well resources of end hosts to extend the service scalabil- width, and reduces service load of streaming servers. One
ity of a media server is a critical approach in multime- of the key elements in improving service scalability of P2P
dia streaming services. This paper proposes a Peer-to- streaming system is to exploit well the resource of end
peer NEtwork COding based Streaming system (PNECOS) hosts. Therefore, how to use the buffer space allocated
to provide overlay multimedia streaming service. PNECOS in each peer efficiently to improve the scalability of P2P
employs the network coding technology to supply stateless streaming system is an important issue.
and independent encoded content, efficient utilize end hosts’ Network coding technology can improve throughput and
buffer space, and balance network traffic load and server reduce bandwidth consumption under variant multicasting
load. Simulation results show that with network coding, the environments. Network coding technology has two fea-
effective buffer length of peers can be extended by reducing tures: 1) multicasting neutrality: raise the throughput and
storage spaces for coded content, and the server bandwidth reduce the redundant data transfer; 2) stateless storage: pro-
consumption can be reduced. vide a stateless coding mechanism to encode and decode
data without considering the sequential issues.
This research proposes a Peer-to-peer NEtwork COding
1 Introduction based Streaming system which called PNECOS. PNECOS
use a network coding technology to utilize end hosts’ buffer
space and reduce the server load. The improved key of
Multimedia streaming services, such as IPTV and VoD,
PNECOS is to extend the effects of end hosts’ buffer space
are the killer applications on Internet today. Continuous
by stateless storage feature of network coding.
media is characterized as large data rate and delay sensi-
To evaluate the benefit of this combination, extensive
tive, and the continuous media streaming services are often
simulations are performed. The simulation results show
asynchronous multicast in nature, i.e., more than one user
that PNECOS performs superior to traditional multimedia
may request different parts of the video at the same time.
streaming system, oStream [6], in various user arrival rates.
Thus, a multimedia server must disseminate the multimedia
In the rest of this article is organized as follows. Section
content to multiple users simultaneously. However, with
2 describes the related works about peer-to-peer based mul-
limited server capacity and lack of multicast support, scal-
timedia streaming systems and network coding approach.
ing up multimedia streaming services to a large number of
In section 3, the architecture of PNECOS is presented.
users has been a great challenge.
Then, section 4 analyzes the performance of PNECOS. Fi-
Recently, peer-to-peer based Application-Layered Mul-
nally, Section 5 draws conclusions.
ticast (ALM) was proposed to implement multicast mecha-
nisms at the application layer by using only end-hosts. In
P2P based ALM systems, participants are organized to form 2 Related Works
an overlay topology for data disseminating. The stream-
ing data is divided into a sequence of segments, which are 2.1 Multimedia Streaming Systems
distributed by the media server to peers with asynchronous
demands. Each peer has a finite buffer to caches a few con- In the past, many peer-to-peer based multimedia stream-
tiguous segments around its play offset. Thus, the peers ing systems [1–12] have been proposed to provide overlay
Network coding technology was first proposed by In a peer-to-peer streaming system, each end host may
Ahlswede et al. [9]. Network coding technology can become a light-weighted proxy to reduce the bandwidth
save bandwidth and promote throughput utilization. It re- consumption of the VOD server by allocating a buffer space
gards the information flows in a network topology as trans- to cache data. If a new client acquires streaming data, pre-
formable flows by coding at peer nodes, rather than individ- decessor end hosts can serve as hosts to stream the client
ual isolated ones. Later, Li et al [14, 15] proposed an ef- when the acquired data exists in their buffer spaces.
fective coding scheme by using the linear algebra. This lin- Figure 2 shows a general diagram of a peer-to-peer
ear network coding scheme (LNC) formulates the behavior streaming system. Generally, streaming data is divided into
380
several segments for transferring and playing. Each peer has coded format (1/ω size). We use α to indicate the size of the
a finite buffer to cache the segments. In the streaming sys- raw ITIU area and β to indicate the size of the coded ITIU
tem, segments arrive at a request client continually. In order area. The size ratio between α and β is determined by an
to cache new segments, when the client’s buffer is full, the alpha ratio R, which is expressed as follows:
older segments must be dropped. Hence, the data caching
α
time is determined by the buffer length. R= (2)
In Fig. 2, end host B can acquire data from host A with- α+β
out the VOD server because host A has its desired data. Es- An raw ITIU stored in 2-ILB can be encoded by using
sentially, longer the length of buffer a client has, higher the liner network coding procedures and divided into ω-coded
probability of a client obtaining data from other clients is. ITIUs. Then, Γ copies of these coded ITIUs are picked up
and saved in 2-ILB. The rest of coded ITIUs are discarded.
3.2 Isochronic Time Interval Unit (ITIU) According to the stateless-storage feature of network cod-
ing, the saved coded ITIUs still reserve partial information
In PENCOS, every multimedia data, such as movie clips of the original ITIU. In other words, only partial space of
or sound data, needs to be divided into the same length data the ITIU is used for storing coded ITIUs. Comparing with
fragments by network coding technology. These fragments regular circular buffers without using the network coding,
are named as Isochronic Time Interval Units (ITIUs) which 2-ILB can keep more information of media objects for a
mean their playback times are all the same. given fixed buffer. That means 2-ILB extends the effective
ITIU can be classified into two types, raw ITIU and buffer lengths of clients virtually.
coded ITIU. When a raw multimedia file is encoded, the
multimedia file is divided into several raw ITIUs firstly. 3.4 Centralized Code Distribution
Then, each raw ITIU is encoded and divided into ω equal-
sized copies of coded ITIU by linear network coding Each coded ITIU includes coefficient vectors and a
(LNC). Finally, each coded ITIU is encapsulated as coded coded content. When a peer receives all ω coded ITIUs of a
packet. raw ITIU that their coefficient vectors are linear dependent,
A coded ITIU includes its own coefficient vectors and a the peer can recover the original ITIU. To avoid a client
coded content. The coefficient vectors present the composi- acquiring linear dependent coded ITIUs, how to assign co-
tion of the linear combination and the coded content denotes efficient vectors is a critical issue. In PNECOS, we use an
calculation of the linear combination. ordered prime sequence as identifier and assign them to ev-
The size of the coefficient vectors is defined as S that ery joined end host. Each end host can only use its identifier
represents fields of coefficient vectors, and the number of as coefficient vectors to encode ITIUs. There are at least
coefficient vectors depends on the dimension ω of the net- two advantages provided by this method. First, the linear
work coding. Usually, the field size of 16-bits for each coef- dependences between coded ITIUs are guaranteed if coded
ficient vector should be enough in most practical cases [16]. ITIUs come from different participants. Second, receivers
The size of a coded ITIU can be formulated as can identify the source of a coded ITIU by its coefficient
vectors.
The size of a coded ITIU
= The size of a raw ITIU × ω1 + ω × S. (1) 3.5 Media Distribution Tree
3.3 2-phased ITIU-LNC Based Circular In a peer-to-peer streaming system, organizing peers into
Buffer (2-ILB) groups for transferring media data is the key to bootstrap the
system performance. In PNECOS, each peer requires a spe-
In PNECOS, each client peer uses a circular buffer to cific offset position of a media object for playback. Thus,
cache streaming data. The buffer is called 2-phased ITIU- PNECOS arranges the peers by their required offset posi-
LNC based circular Buffer, or 2-ILB for abbreviation. In tion. PNECOS applies a Media Distribution Tree (MDT)
PNECOS, each client allocates a fixed 2-ILB to cache re- from oStream [6] for constructing and maintaining an over-
ceived ITIUs. After the ITIUs are played, the client keeps lay network. Before constructing a MDT, a Media Distri-
them in 2-ILB temporarily. When some new incoming bution Graph (MDG), which is a directed acyclic weighted
clients request those ITIUs, this peer forwards the cached graph, must be set up for providing temporal information
ITIUs to the requested peers. among requests.
2-ILB is divided into two areas, raw ITIU area and coded Figure 3 demonstrates the diagram of MDG and MDT.
ITIU area. In the raw ITIU area, ITIUs are cached in raw In Fig. 3, S presents the VOD server, Rn denotes requests,
format. In the coded ITIU area, ITIUs are cached in their and n indicates the joining order of requests. In MDG, the
381
Table 1. System parameters in the simulation.
Parameter Set Description
Symbol Value
T 60 min- The time length of the dis-
utes tributed CBR visual media ob-
ject.
W 0.05 The ratio of buffer length for
buffering the media object.
Γ 1 The reserved number of coded
ITIU, after the original ITIU is
Figure 3. The diagram of MDG (a) and MDT
encoded.
(b).
ω 2, 4 The network dimension, which
also denotes the number of seg-
ments that an ITIU divided into.
VOD server is the default server for all requests. Every re- R 0 — 0.9 The ratio between the size of
quest peer has edges that connected from all reachable pre- at 0.1 the streaming buffer areas, for
decessors which have cached streaming data to support this inter- caching ITIUs and coded ITIUs,
request peer. This graph called MDG. As shown in Fig. vals respectively. R indicates the
3(a), peer R3 can be supported by R1 and S, but R4 is only length proportion to cache ITIUs
supported by S. After constructing a minimum spanning of the whole buffer.
tree (MST) from the MDG, a MDT is ready to be built and
media data can be streamed from the streaming server.
PNECOS can provide raw ITIUs and coded ITIUs to re-
quest peers. For participants, a peer acquires coded ITIUs from candidate set is to provide a chance for the re-
means that it must spend more computing power to decode quest peer to use coded ITIUs from other sources.
the coded ITIUs. However, PNECOS may assign the peer 2. If no parent is found for raw data download service,
to acquire coded ITIUs from other peers due to the using of pick ω coded parents ranged in the coded ITIU buffer
minimum spanning tree algorithm as in oStream [6], even length, where ω denotes the member of dimension
though one or more sources can forward raw ITIUs to this used in the network coding. In this phase, the VOD
new request peer. It is because the difference between all server is included for candidate selection.
qualified parent candidates is only their distances to the new
request peer in oStream. 3. Complement the rest of needed coded ITIUs by us-
Therefore, picking a suitable parent from candidate peers ing the VOD server. If the acquired request only gets
can not only rely on the physical characteristic, such as RTT one coded parent, it means no other source peer, ex-
(Round Trip Time) or hop count, but also the difference be- cept the VOD server can provide needed coded ITIUs.
tween raw ITIU buffer and coded ITIU buffer must be taken Therefore, assign the VOD server to be its parent for
into consideration. Thus, PNECOS extended the distributed coded ITIU streaming. If less than ω but larger than
algorithms in [6] to maintain MDT: MDT-Insert and MDT- one coded parents are found, The VOD server is also
Delete. MDT-Insert and MDT-Delete are executed when a used to complement the rest of needed coded ITIUs.
new request arrives and an existing request leaves, respec- Notably, with the modified MDT-Insert and MDT-
tively. Delete, PNECOS is not using a minimum spanning tree. It
The difference between the original MDT-Insert/MDT- causes larger latency in receiving streaming data. However,
Delete and the modified ones is in the selection procedure. since appropriate parents or coded parents are allocated to
In the original MDT-Insert/MDT-Delete, the VOD server every acquired request, the workload of the VOD server is
and other candidates are selected based on their link cost. substantially reduced.
In PNECOS, the VOD server is selected only when required
media data has no sufficient source. The proposed selection
procedure is divided into 3 phases: 4 Performance Evaluation
1. Pick a parent ranged in the ITIU buffer length. To 4.1 Simulation Environment
avoid the complicated decoding process, the acquired
request should connect to a raw ITIU source as possi- We evaluate the performance of PNECOS in terms of
ble as it can. The reason to exclude the VOD server Server Bandwidth Consumption (SBC) by computer simu-
382
Figure 4. Server bandwidth consumption Figure 5. Server bandwidth consumption
(W =0.05T , Γ=1, ω=2). (W =0.05T , Γ=1, ω=4).
lations. The inter-arrival time of requests for acquiring an for caching, and ω/Γ shows the extended playback time
entire media object follows the Poisson distribution with ar- of media cached in W × (1 − R). Accordingly, the ef-
rival rate λ. In all of simulations, the case for distributing fective buffer length can be adjusted by R and Γ. With
a single CBR visual media is considered. The simulated small R, W ×(1 − R) offers a longer physical buffer length
time is 12 hours. The distributed media object is 1-hour for streaming. With larger Γ, ω/Γ provides larger augment
long, and its playback rate is 1 bit/sec [6]. Although the factor to amplify physical buffer length to effective buffer
bitrates setting is seemed inscrutable, it simplifies the con- length. Although both parameters are devoted to prolonged
version process of simulating data for statistical analyses. lengths of streaming buffer, the effect brought by R and Γ
Also, we implement oStream [6] to be the reference evalu- are different.
ation for comparing the difference between using network In PNECOS, the degree of improvement on SBC is dom-
coding and not using it. In the simulation, all requests ac- inated by R, ω and Γ. Γ denotes the reserved number of
quire the entire content of the media object. The unit for coded ITIU segments. If Γ equals to ω, there would be no
SBC is the average amount (multiples of one media object storage space saved, because the coded buffer is fully ex-
total size) of streamed data per hour. The system parameters ploited to cache the coded ITIUs of a raw ITIU. If Γ is more
of the simulations can be found in Tab. 1. than one, every predecessor would support one descendant
for more than one coded ITIUs. In this case, the predecessor
4.2 Simulation Results need to avoid linear-dependence between generated coded
ITIUs. In our simulation, Γ is always set to one for maximal
As shown in Fig. 4 and Fig. 5, the curve of oStream storage space saving.
is higher than PENCOS due to oStream uses while buffer The parameter R states the ratio of buffer area for storing
to cache raw streaming data. With network coding, the ef- ITIUs. Clearly, if R is small, the available buffer space for
fective buffer length can be extended by reducing storage coded ITIUs is large. When R is zero, all buffer space is
spaces for coded ITIU. Because each ITIU is encoded and used to store coded ITIUs. Thus, the buffer can save media
divided into ω coded ITIUs and only Γ coded ITIUs are data span the longest playback time. Also, all descendants
saved, even though each coded ITIU keeps less information can only receive coded ITIUs from their predecessors. The
than a raw ITIU. parameter ω defines the number of coded ITIUs an ITIU
As mentioned in last section, by using network coding, is divided into. Increasing ω, can effectively extend play-
the effective buffer length can be prolonged, and a longer back time of the media data cached. At the meantime, a
buffer length gives more chances to support new requests request also needs additional coded sources to acquire suf-
without involving the VOD server. The effective buffer ficient number of coded ITIUs for media recovering. How-
length is calculated by the following formula: ever, the increased required source number augments the
W × (1 − R) × ω chance to acquire coded ITIUs from the VOD server and
The effective buffer length = , (3) raises SBC. Thus, there is a tradeoff in selecting ω. The
Γ
prolonged buffer length can effectively increase hit rate and
where W × (1 − R) indicates the physical buffer length helps PNECOS to reduce SBC.
383
As demonstrated in Fig. 4 and Fig. 5, SBC becomes [4] P. Rodriguez-Rodriguez and E. Biersack, “Dynamic
much small when ω increasing. The effect is especially ap- parallel access to repicated content in the internet,”
parent while using whole buffer to store coded ITIUs. For IEEE/ACM Trans. Netw., vol. 10, no. 4. pp. 455–465,
each curve in Fig. 4 and Fig. 5, the peak of a curve indi- 2002.
cates the maximal volume of SBC. As discovered in oS-
[5] J. Byers, M. Luby, and M. Mitzenmacher, “Accessing
tream [6], these peaks denote the thresholds that the ex-
multiple mirror sites in parallel: Using tornado codes
pected length of streaming trees starts to overcome intervals
to speed up downloads,” in Proc. IEEE INFOCOM 99,
between individual requests and enable to concatenate them
vol. 1, pp. 275–283, 1999.
after corresponding arrival rates. Obviously, in Fig. 4 and
Fig. 5, when R is decreasing, the peak of curve would shift [6] Y. Cui, B. Li, and K. Nahrstedt, “oStream: Asyn-
from right to left. This phenomenon shows that the effective chronous Streaming Multicast in Application-Layer
buffer length is indeed prolonged by using network coding. Overlay Networks,” IEEE J. on Sel. Areas in Com-
mun., vol. 22, no. 1, pp. 91–106, Jan. 2004.
5 Conclusion [7] D. Kostic, A. Rodriguez, J. Albrecht, and A. Vahdat,
“Bullet: High bandwidth data dissemination using an
This work proposes a Peer-to-peer NEtwork COding overlay mesh,” in Proc. ACM SOSP 03, pp. 282–297,
based Streaming architecture (PNECOS). PNECOS ex- 2003.
ploits the storage feature of network coding to extend the [8] J. Byers, J. Considine, M. Mitzenmacher, and S. Rost,
effective buffer length and simplify the data downloading “Informed content delivery across adaptive overlay
process. In PNECOS, network coding provides a solution mesh,” IEEE/ACM Trans. Netw., vol. 12, no. 5, pp.
to recover encoded data without noticing the sequential or- 767–780, Oct. 2004.
der and reduce storage space by blending and distributing
the data information into all divided data parts. We com- [9] J. Byers, M. Luby, M. Mitzenmacher, and A. Rege,
pare PNECOS with oStream system by computer simula- “A digital fountain approach to reliable distribution of
tion in terms of server bandwidth consumption. Simulation bulk data,” in Proc. ACM SIGCOMM 98, pp. 56–67,
results show that with network coding, the effective buffer 1998.
length of peers can be extended by reducing storage spaces [10] P. Maymounkov and D. Mazires, “Rateless codes and
for coded content, and the server bandwidth consumption big downloads,” in Proc. IPTPS’03, pp. 247–255,
can be reduced. 2003.
[11] C. Gkantsidis and P. R. Rodriguez, “Network Coding
Acknowledgment for Large Scale Content Distribution,” in Proc. IEEE
INFOCOMM 2005, vol. 4, pp. 2235–2245, 2005.
This paper was sponsored in part by “Aim for the Top [12] S. Acedanski, S. Deb, M. Medard, and R. Koetter,
University Plan” of Yuan Ze University and Ministry of Ed- “How Good is Random Linear Coding Based Dis-
ucation, Taiwan, R.O.C., and the National Science Council, tributed Networked Storage?,” in Proc. NetCod 2005,
Taiwan, R.O.C. under Contract No. NSC96-2221-E-155- Italy, Apr. 7.
033.
[13] R. Ahlswede, N. Cai, S. -Y. R. Li and R. W. Yeung,
“Network information flow,” IEEE Trans. Inf. Theory,
References vol. 46, no. 4, pp. 1204–1216, July 2000.
[14] S. -Y. R. Li, R. W. Yeung, and N. Cai. “Linear network
[1] Y. -H. Chu, S. G. Rao, and H. Zhang, “A case of end- coding,” IEEE Trans. Inf. Theory, vol. 49, no. 2, pp.
system multicast,” in Proc. ACM SIGMETRICS 00, 371–381, Feb., 2003
pp. 1–12, 2000.
[15] S.-Y. R. Li, N. Cai, and R. W. Yeung, “On Theory of
[2] P. Francis, S. Ratnasamy, R. Govindan, and C. Alaet- Linear network coding,” in Proc. IEEE ISIT 05, pp.
tinoglu. Yoid project. http://www.icir.org/yoid/ 273–277, Sept. 2005.
[16] T. Ho, R. Koetter, M. Medard, D. R. Karger, and
[3] M. Castro, P. Druschel, A. -M. Kermarrec, A. Nandi,
M. Effros, “The benefit of coding over routing in a
A. Rowston, and A. Singh, “Splitstream: High-
randomized setting,” in Proc. IEEE ISIT, pp. 442, July
bandwidth multicast in cooperative environments,” in
2003.
Proc. ACM SOSP, pp. 298–313, 2003.
384
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Mitsuru Ishizuka
School of Information Science and Technology
The University of Tokyo
ishizuka@i.u-tokyo.ac.jp
Extended Abstract architecture, each user site can act as content provider
and requester as well. The peer-to-peer way of social
In the emerging Web 2.0, the popular services are collaboration would also relieve the efforts to build
sharing of contents of various sorts, including, for centralized servers, by making use of the storage and
example, audio 1 , photo 2 , weblog 3 , encyclopedia 4 , computing capabilities in each site. In this paper, we
friend5, social network6, and peer-to-peer file sharing7, propose to develop an integrated platform for social
etc. Because of information sharing, the flow of collaborations that supports user autonomous
content becomes multi-directional, i.e., user can not management over their contents.
only be consumer but also provider of content [1]. The infrastructure of the platform is a semi-
Adding the newer services to the web comes up with a structured on peer-to-peer network, consisting of
more collaborative environment, for example, in e- simple nodes that provide common collaborative
learning [2, 3]. Using the newer services, learners can services for user, and rendezvous nodes that provide
not only obtain course material from instructors’ web additional information aggregation services for node
sites but also share their opinions with other peer users. Through the collaboration service interface user
learners to form more collaborative work [4]. The can access the services used to see in social software,
current Web 2.0 services, or social software systems, including weblog, wiki, annotation, bookmark sharing,
are primarily implemented by using the current web etc. Using the service interface, user can manage,
technology with lightweight programming in XML[5]. including add, modify, delete, query her own contents
From user’s aspect, she can access the services using and metadata, and acquire from other nodes. Users
ordinary browser without worrying installing new register their favorite profiles to the aggregation
programs in their machines. The social software services in specific rendezvous nodes and the latter
systems all have their own proprietary databases. acquires newly created contents from other nodes and
Therefore, to access various services, user has to disseminate the matched ones to the appropriate
disperse, having little autonomy, her profiles and destination nodes.
contributed contents all over different sites and pay To support the above technical architecture, we
attentions to manage them in different formats. design three-layered system architecture in each peer
Furthermore, the situation is getting worse as more node. The bottom layer is a peer network providing the
services are acquired. Obviously, keeping user connections, and message services among peer nodes.
generated contents, including articles and their The middle layer is a distributed knowledge-based
associated metadata, in her site instead of distributing system constructed by using the Semantic Web
all over the social systems would facilitate user technology. The knowledge-based system consists of
managing the contents. On the resulting peer-to-peer knowledge base and service interfaces. The former is
built based on the Semantic Web languages, RDF[6],
1 OWL[7] and SWRL[8], and the latter is a number of
http://youtube.com/ management and inference functions on the knowledge
2
http://www.flickr.com/ base for the collaboration services at the top layer.
3
https://www.blogger.com/ According to the “Semantic Web Stack” [9, 10], this
4
http://wikipedia.org/ layer corresponds to the ontology and rule layers in the
5
http://www.myspace.com/
6 Semantic Web architecture.
http://www.facebook.com/
7
http://www.bittorrent.com/
409
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
A Survey of State of the Art Biomedical Text Mining Techniques for Semantic
Analysis
411
Table 1. Openly available NER tools or services
Name Description URL
AbbreviationServer [5] Biomedical abbreviation server http://bionlp.stanford.edu/abbreviation/
AbGene [50] Protein name tagger ftp://ftp.ncbi.nlm.nih.gov/pub/tanabe
ABNER [46] Protein/Gene/DNA/RNA/cell tagger http://pages.cs.wisc.edu/~bsettles/abner/
AIIAGMT [22] Gene and protein name tagger http://140.109.23.113/AIIAGMT/index.html
AliasServer [23] Protein alias handler http://cbi.labri.fr/outils/alias/index.php
BANNER [33] Gene and protein name tagger http://banner.sourceforge.net/
BioCaster [13] Health protection roles tagger http://biocaster.nii.ac.jp/
BCMS Gene and protein name tagger http://bcms.bioinfo.cnio.es
GAPSCORE [6] Protein name tagger http://bionlp.stanford.edu/gapscore
GENIA Tagger [56] Protein/Gene/DNA/RNA/cell tagger http://text0.mib.man.ac.uk/software/geniatagger/
NERBio [12] Gene and protein name tagger http://asqa.iis.sinica.edu.tw/biocreative2/
NLPort Tagger [36] Protein name tagger http://cubic.bioc.columbia.edu/services/NLProt/
Penn BioTagger [18] Gene and protein name tagger http://www.seas.upenn.edu/~strctlrn/BioTagger/
BioTagger.html
trained the BioCaster tagger with the Näive Bayes such as time, manner, and location. In 2004, the
classifier [31]. PASBio [49] project released a set of PASs for a small
We reviewed nine NER tools described in [25], and set of biometrically relevant verbs. PASBio is
summarize all currently available NER tools in Table 1. specifically designed for annotating molecular events
and defining core arguments that are important for
3. Biological Relation Corpora completing the meaning of an event.
Because the PASBio project only focused on the
In this section, we shift our focus from the creation of a semantic lexicon and annotation
fundamental NER task to the task of extracting verbal guidelines, some researchers have extended it to create
information that represents the relations between NEs. useful biomedical applications. For instance, Kogan et
The simplest way to detect the relations between al. [23] extended PASBio to build a domain-specific
NEs is to collect texts in which they co-occur. In most set of PASs for the medical domain, while Shah et al.
cases, co-occurrence statistics provide high recall but [40] used the PASBio’s representation scheme to
poor precision, but they can often be used as a baseline construct semantic patterns for the LSAT (Literature
system against which other methods can be compared Support for Alternative Transcripts) database system.
[16]. Advanced approaches that determine the roles In 2006, Shah et al. [41] annotated a small PASBio
played by NEs can be roughly classified into three corpora to build a semantic role labelling system. They
categories. (1) Pattern-based methods, which map showed that a prior binary classification step could
words, parts-of-speech, or NEs sequences into constrain the number of predicates, and provided
structural information slots according to predefined greater insight into the semantic roles of sentence
patterns and matching rules [32-34]. (2) Natural constituents for biomedical event extraction. These
language processing based methods, which may use successful applications show that the PASBio method
full parsing or shallow parsing information to extract and its specific representational schemes are adequate
subject/object information from predefined frames [35, for the general problem of representing molecular
36]. Huang et al. [37] proposed using a hybrid method biology concepts [8].
with both shallow parsing and pattern matching. A In 2006, Chou et al. [6] proposed another realizable
completely different technique that utilizes a Web approach for constructing a biomedical proposition
search engine was proposed by Mukherjea et al. [32]. bank on top of GENIA Treebank (GTB) [43]. To
(3) The semantic role labeling (SRL) technique, which construct their biomedical proposition bank, they first
we discuss in detail below. employed the rich resources of PropBank [33] in the
In SRL, sentences are represented by one or more general English domain to build an SRL system [47].
predicate-argument structures (PASs), also known as They then used the SRL system to automatically
propositions [33]. Each PAS is composed of a annotate the semantic roles in GTB and construct the
predicate (e.g., a verb) and several arguments (e.g., biomedical proposition bank called BioProp [6]. The
noun phrases and adverbial phrases) that have different project involved annotating the arguments of 30
semantic roles. The roles include main arguments, such frequent biomedical verbs. In contrast to PASBio,
as an agent and a patient, as well as adjunct arguments, BioProp does not place any biomedical constraints on
412
Table 2. Biological Relation corpora
Name Description URL
BioInfer [42] A biological relationships corpus http://mars.cs.utu.fi/BioInfer/
GENIA event A biological event annotation corpus http://www-tsujii.is.s.u-
corpus [26] tokyo.ac.jp/GENIA/home/wiki.cgi?page=Event+Annotation
Kogan et al. [27] A medical domain SRL corpus http://ycmi.med.yale.edu/krauthammer/rolelabeling.htm
LSAT [48] Literature Support for Alternative Transcripts http://www.bork.embl.de/LSAT/
PASBio [57] A set of PAS for semantic roles of http://research.nii.ac.jp/~collier/projects/PASBio/
biomedical verbs
413
navigating the pool of published scientific literature.
MEDIE, developed by the Tsujii Laboratory, can
identify subject-verb-object (syntactic) relations and
biomedical entities in sentences.
Another novel text mining service called
BIOSMILE Web Search (BWS) was released in
February 2008. BWS has similar features to iHOP and
MEDIE. It can annotate entities as well as a wider
range of relation types (Figure 1). For example, the
sentence “KaiC enhanced KaiA-KaiB interaction in
vitro and in yeast cells,” describes an enhancement
relation. BWS can identify the elements in this relation,
such as the action “enhanced”, the enhancer “KaiC”,
the enhanced “KaiA-KaiB interaction”, and the
location “in vitro and in yeast cells”. Relations are
classified by their main verbs and put in different tabs.
This makes it easy for researchers to browse through
all the relations in an article verb by verb, helps them
locate passages of interest easily, and significantly
speeds up overall comprehension (see Figure 1b).
BWS also provides a search result summary in table
format, showing all the relations found in multiple
articles during one session (see Figure 1c). This is a
convenient function for summarizing several related
papers. Furthermore, for researchers interested in PPI,
BWS classifies articles as PPI-relevant or –irrelevant
[36].
We summarize the current biological web services
in Table 3.
5. Conclusion
As the goals of biomedical information extraction
applications have become more ambitious, the range of
bio-NLP application types has become
correspondingly broader. In this paper, we have Figure 1. The features of the BWS search interface. (a) Users
summarized state of the art bio-NLP applications can enter either a PMID or keywords. For each abstract,
ranging from fundamental NER to more complex BWS annotates gene or protein names in light blue, and a
relation extraction and online integrated text mining graduated bar meter indicates the abstract’s relevance to PPI.
services. Needless to say, there are still significant (b) Analysis results are shown in the tab pane with
unsolved problems in the field. However, biomedical biomedical verbs marked in red. The semantic roles related to
text mining is an extremely active research area, and a verb are listed on the right-hand side. (c) An analysis
the outlook for continued progress is positive. summary table that contains all relations in abstracts.
414
Table 3. Biological Web Services
Name Description URL
BIOSMILE Web Search Biomedical relation extraction service http://140.138.150.34/BIOSMILER
BioText [20] Scientific literature figures and http://biosearch.berkeley.edu/
captions search engine
Chilibot [7] Relationships search engine http://www.chilibot.net/
EpiLoc Subcellular localization prediction http://epiloc.cs.queensu.ca
system
iHOP [15] Information on hyperlinked proteins http://www.ihop-net.org/
MEDIE Syntactic relations extraction system http://www-tsujii.is.s.u-tokyo.ac.jp/medie/
KinasePathway database [28] Tool for extraction of protein, gene http://kinasedb.ontology.ims.u-tokyo.ac.jp:8081/
and compound interactions from text
PreBIND [14] Classifier of protein interaction http://bond.unleashedinformatics.com/
documents
PRIME [29] Tool for extraction of protein, gene http://prime.ontology.ims.u-tokyo.ac.jp:8081/
and compound interactions from text
PubMed Entrez [44] Biomedical citation retrieval system http://www.ncbi.nlm.nih.gov/sites/entrez?db=pubmed
Textpresso [39] C. elegans literature information http://www.textpresso.org/
retrieval and extraction tool
6. References [9] H.-J. Dai, H.-C. Hung, R. T.-H. Tsai, and W.-
L. Hsu, "IASL Systems in the Gene Mention
[1] B. Alex, C. Grover, B. Haddow, M. Tagging Task and Protein Interaction Article
Kabadjov, E. Klein, M. Matthews, S. Sub-task," in Proceedings of Second
Roebuck, R. Tobin, and X. Wang, BioCreAtIvE Challenge Workshop, 2007.
"ASSISTED CURATION: DOES TEXT [10] S. Doan, A. Kawazoe, and N. Collier, "The
MINING REALLY HELP?," Pac Symp Role of Roles in Classifying Annotated
Biocomput, vol. 556, p. 67, 2008. Biomedical Text," in BioNLP 2007, 2007.
[2] S. Ananiadou, J. Chruszcz, J. Keane, J. [11] I. Donaldson, J. Martin, B. de Bruijn, and C.
McNaught, and P. Watry, "The National Wolting, "PreBIND and Textomy-mining the
Centre for Text Mining: Aims and biomedical literature for proteinprotein,"
Objectives," UKKDD'5, 2007. 2003.
[3] B. Baldwin and B. Carpenter, "LingPipe," in [12] J. M. Fernandez, R. Hoffmann, and A.
http://www.alias-i.com/lingpipe/. Valencia, "iHOP web services," Nucl. Acids
[4] S. Brady and H. Shatkay, "EpiLoc: a Res., vol. 35, 2007.
(working) text-based system for predicting [13] J. Finkel, S. Dingare, H. Nguyen, M. Nissim,
protein subcellular location," Pac Symp C. Manning, and G. Sinclair, "Exploiting
Biocomput, vol. 604, p. 15, 2008. Context for Biomedical Entity Recognition:
[5] N. Chinchor, "MUC-7 named entity task From Syntax to the Web," Joint Workshop on
definition," Proceedings of the 7th Message Natural Language Processing in Biomedicine
Understanding Conference, 1997. and Its Applications at Coling 2004, 2004.
[6] W. C. Chou, R. T. H. Tsai, Y. S. Su, W. Ku, [14] K. Fukuda, A. Tamura, T. Tsunoda, and T.
T. Y. Sung, and W. L. Hsu, "A Semi- Takagi, "Toward information extraction:
Automatic Method for Annotating a identifying protein names from biological
Biomedical Proposition Bank," Proceedings papers," Pacific Symposium on Biocomputing,
of the Workshop on Frontiers in Linguistically pp. 707-718, 1998.
Annotated Corpora, pp. 5-12, 2006. [15] K. Ganchev, K. Crammer, F. Pereira, G.
[7] K. B. Cohen and L. Hunter, "Natural Mann, K. Bellare, A. McCallum, S. Carroll,
Language Processing and Systems Biology," Y. Jin, and P. White, "Penn/UMass/CHOP
Artificial Intelligence Methods and Tools for Biocreative II systems," in Proceedings of
Systems Biology, 2004. Second BioCreAtIvE Challenge Workshop,
[8] K. B. Cohen and L. Hunter, "A critical review 2007.
of PASBio's argument structures for [16] Z. GuoDong, S. Jian, N. Collier, P. Ruch, and
biomedical verbs," BMC Bioinformatics, vol. A. Nazarenko, "Exploring Deep Knowledge
7 Suppl 3, p. S5, 2006. Resources in Biomedical Name Recognition,"
COLING 2004 International Joint workshop
415
on Natural Language Processing in Sumbitted to Second BioCreAtIvE Challenge
Biomedicine and its Applications Workshop, 2007.
(NLPBA/BioNLP) 2004, pp. 99-102, 2004. [28] R. Leaman and G. Gonzalez, "BANNER: AN
[17] M. A. Hearst, A. Divoli, H. Guturu, A. EXECUTABLE SURVEY OF ADVANCES
Ksikes, P. Nakov, M. A. Wooldridge, and J. IN BIOMEDICAL NAMED ENTITY
Ye, "BioText Search Engine: beyond abstract RECOGNITION," Pac Symp Biocomput, vol.
search," Bioinformatics, vol. 23, p. 2196, 652, p. 63, 2008.
2007. [29] R. McDonald, K. Crammer, and F. Pereira,
[18] L. Hirschman, A. Yeh, C. Blaschke, and A. "Online Large-Margin Training of
Valencia, "Overview of BioCreAtIvE: critical Dependency Parsers," Ann Arbor, vol. 100,
assessment of information extraction for 2005.
biology," feedback, 2005. [30] R. McDonald and F. Pereira, "Identifying
[19] H. S. Huang, Y. S. Lin, K. T. Lin, C. J. Kuo, gene and protein mentions in text using
Y. M. Chang, B. H. Yang, C. N. Hsu, and I. F. conditional random fields.," BMC
Chung, "High-Recall Gene Mention Bioinformatics, vol. 6, p. (Suppl)(1:S6), 2005.
Recognition by Unification of Multiple [31] T. M. Mitchell, Machine Learning: McGraw-
Backward Parsing Models," Proceedings of Hill, 1997.
the Second BioCreative Challenge Evaluation [32] S. Mukherjea and S. Sahay, "DISCOVERING
Workshop, p. 109?11, 2007. BIOMEDICAL RELATIONS UTILIZING
[20] K. Jin-Dong, O. Tomoko, Y. T. Yoshimasa THE WORLD-WIDE WEB," Pac Symp
Tsuruoka, and N. Collier, "Introduction to the Biocomput, vol. 11, pp. 164-75, 2006.
bio-entity recognition task at JNLPBA," [33] M. Palmer, D. Gildea, and P. Kingsbury, "The
Proceedings of the International Workshop on proposition bank: An annotated corpus of
Natural Language Processing in Biomedicine semantic roles," Computational Linguistics,
and its Applications (JNLPBA-04), p. 70?5, vol. 31, pp. 71-106, 2005.
2004. [34] K. M. Park, S. H. Kim, D. G. Lee, and H. C.
[21] J.-D. Kim, T. Ohta, Y. Tateisi, and J. Tsujii, Rim, "Boosting Lexical Knowledge for
"GENIA corpus--a semantically annotated Biomedical Named Entity Recognition,"
corpus for bio-textmining," Bioinformatics, Proceedings of the Joint Workshop on
vol. 19, pp. 180-182, 2003. Natural Language Processing in Biomedicine
[22] J.-D. Kim, T. Ohta, and J. i. Tsujii, "Corpus and its Applications (JNLPBA-2004), p. 75?9,
annotation for mining biomedical events from 2004.
literature," BMC Bioinformatics, vol. 9:10, [35] S. Pyysalo, F. Ginter, J. Heimonen, J. Bjorne,
2008. J. Boberg, J. Jarvinen, and T. Salakoski,
[23] Y. Kogan, N. Collier, S. Pakhomov, and M. "BioInfer: a corpus for information extraction
Krauthammer, "Towards Semantic Role in the biomedical domain," BMC
Labeling & IE in the Medical Literature," Bioinformatics, vol. 8, p. 50, 2007.
AMIA Annual Symposium Proceedings, vol. [36] T. RT-H, H. H-C, D. H-J, and H. W-L,
2005, p. 410, 2005. "Exploiting Likely-Positive and Unlabeled
[24] A. Koike, Y. Niwa, and T. Takagi, Data to Improve the Identification of Protein-
"Automatic extraction of gene/protein Protein Interaction Articles," 6th InCoB -
biological functions from biomedical text," Sixth International Conference on
Bioinformatics, vol. 21, pp. 1227-1236, 2005. Bioinformatics, 2007.
[25] M. Krallinger and A. Valencia, "Text-mining [37] G. D. Schuler, J. A. Epstein, H. Ohkawa, and
and information-retrieval services for J. A. Kans, "Entrez: molecular biology
molecular biology," Genome Biology, 2005. database and retrieval system," Methods
[26] T. Kudo and Y. Matsumoto, "Chunking with Enzymol, vol. 266, pp. 141-62, 1996.
support vector machines," North American [38] B. Settles, "Biomedical Named Entity
Chapter Of The Association For Recognition Using Conditional Random
Computational Linguistics, pp. 1-8, 2001. Fields and Rich Feature Sets," in Proceedings
[27] C. J. Kuo, Y. M. Chang, H. S. Huang, K. T. of the Joint Workshop on Natural Language
Lin, B. H. Yang, Y. S. Lin, C. N. Hsu, and I. Processing in Biomedicine and its
F. Chung, "Rich Feature Set, Unification of Applications (JNLPBA-2004) Geneva,
Bidirectional Parsing and Dictionary Filtering Switzerland, 2004.
for High F-Score Gene Mention Tagging,"
416
[39] B. Settles, "ABNER: an open source tool for [48] Y. Tsuruoka, Y. Tateishi, J. D. Kim, T. Ohta,
automatically tagging genes, proteins and J. McNaught, S. Ananiadou, and J. Tsujii,
other entity names in text." vol. 21: Oxford "Developing a robust part-of-speech tagger
Univ Press, 2005, pp. 3191-3192. for biomedical text," Lecture notes in
[40] P. K. Shah, L. J. Jensen, S. Boue, and P. Bork, computer science, pp. 382-392, 2005.
"Extraction of transcript diversity from [49] T. Wattarujeekrit, P. K. Shah, and N. Collier,
scientific literature," PLoS Computational "PASBio: predicate-argument structures for
Biology, 2005. event extraction in molecular biology," BMC
[41] P. K. Shah and P. Bork, "LSAT: learning Bioinformatics, vol. 5, p. 155, Oct 19 2004.
about alternative transcripts in MEDLINE," [50] S. Zhao, "Named Entity Recognition in
Bioinformatics, vol. 22, pp. 857-865, 2006. Biomedical Texts using an HMM Model,"
[42] L. Smith, L. K. Tanabe, R. J. n. Ando, C.-J. Proceedings of the COLING 2004
Juo, I.-F. Chung, C.-N. Hsu, Y.-S. Lin, R. International Joint Workshop on Natural
Klinger, C. M. Friedrich, K. Ganchev, M. Language Processing in Biomedicine and its
Torii, H. Liu, B. Haddow, C. A. Struble, R. J. Applications (NLPBA), 2004.
Povinelli, A. Vlachos, W. A. B. Jr., L. Hunter, [51] P. Zweigenbaum, D. Demner-Fushman, H.
B. Carpenter, R. T.-H. Tsai, H.-J. Dai, F. Liu, Yu, and K. B. Cohen, "Frontiers of
Y. Chen, C. Sun, S. Katrenko, P. Adriaans, C. biomedical text mining: current progress,"
Blaschke, R. T. Perez, M. Neves, P. Nakov, Briefings in Bioinformatics, 2007.
A. Divoli, M. Mana, J. Mata-Vazquez, and W.
J. Wilbur., "Overview of BioCreative II Gene
Mention Recognition," Genome Biology,
2007.
[43] Y. Tateisi, A. Yakushiji, T. Ohta, and J.
Tsujii, "Syntax Annotation for the GENIA
corpus," Proc. IJCNLP 2005, Companion
volume, pp. 222–227, 2005.
[44] R. T.-H. Tsai, C.-L. Sung, H.-J. Dai, H.-C.
Hung, T.-Y. Sung, and W.-L. Hsu, "NERBio:
using selected word conjunctions, term
normalization, and global patterns to improve
biomedical named entity recognition," BMC
Bioinformatics, vol. 7 Suppl 5, p. S11, 2006.
[45] R. T.-H. Tsai, W.-C. Chou, Y.-S. Su, Y.-C.
Lin, C.-L. Sung, H.-J. Dai, I. T. Yeh, W. Ku,
T.-Y. Sung, and W.-L. Hsu, "BIOSMILE: A
semantic role labeling system for biomedical
verbs using a maximum-entropy model with
automatically generated template features,"
BMC Bioinformatics, vol. 8, p. 325, 2007.
[46] R. T. H. Tsai, H. J. Dai, H. C. Hung, R. T. K.
Lin, W. C. Chou, Y. S. Su, M. Y. Day, and
W. L. Hsu, "BESearch: A Supervised
Learning Approach to Search for Molecular
Event Participants," Information Reuse and
Integration, 2007. IRI 2007. IEEE
International Conference on, pp. 412-417,
2007.
[47] T. H. Tsai, C. W. Wu, Y. C. Lin, and W. L.
Hsu, "Exploiting Full Parsing Information to
Label Semantic Roles Using an Ensemble of
ME and SVM via Integer Linear
Programming," Proceedings of CoNLL-2005,
2005.
417
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Yu-Len Huang, PhD*, Yu-Lang Jao*, Tsu-Yi Hsieh, MD†, Chia-Wei Chung*
*Department of Computer Science and Information Engineering
Tunghai University, Taichung, Taiwan
†
Division of Allergy, Immunology and Rheumatology, Taichung Veterans General Hospital,
Taichung, Taiwan
ylhuang@thu.edu.tw
419
alternately utilized to fill the gaps within a cell and element were performed to diminish the region with a
smooth outline of the segmented cell. Figures 4 unreasonable size and then obtained the precise outline
demonstrate the processing results by this module in of the cells. Figures 5 show the processing results by
the proposed method. segmentation module for Type 1 images.
(c) (d)
(e) (f)
Figure 4. An IIF image (with coarse speckled
patterns) processed with the Type 0
segmentation module: (a) original RGB image,
(b) transformed brightness image after the
anisotropic diffusion filtering, (c) after Canny
edge detection, (d) after morphological
dilation, (e) after morphological smoothing,
and (f) the outline of the segmented cell
Figure 3. The flowchart of the proposed
4. Results
adaptive method
This study totally experimented 2573 autoantibody
Furthermore, for image with mass region cells, the fluorescence patterns with manual sketched outlines
original RGB image was transformed to CMY (Cyan, (including 519 diffuse patterns, 482 peripheral
Magenta, and Yellow channels) color space. We found patterns, 788 coarse speckled patterns, 634 fine
that the intensity dissimilarity between fluorescence speckled patterns, 64 discrete speckled patterns and 86
cells and background was massive in the cyan nucleolar patterns) from 45 IIF images to test the
component. Thus the proposed method utilized the accuracy of the proposed method. These simulations
cyan component as input image to segment cells in the were made on a single CPU Intel Pentium-VI 3.0 GHz
image with mass region cells. The anisotropic diffusion personal computer with Microsoft Windows XP
filter was also performed to enhance cell regions from operating system.
background. The binary image with cell region In this work, the Otsu’s algorithm was first
segmentation could be generated by using the Otsu performed to calculate the number of connected region
algorithm. In this module, the morphological operator that used as the input of the IIF image classifier. With
opening and closing with a larger sized structuring
420
the predefined threshold T ranged from 200 to 400, the outlines that are similarly to those manually sketched.
proposed adaptive segmentation system obtained a From the segmentation results, only a small number of
stable and the highest accuracy. Moreover, the cases might generate an undesired segmentation.
morphological dilation operators for image with sparse
region cells (Type 0) utilized a 3×3 diamond-shaped Table 1. Comparisons for fluorescence
structuring element. The morphological dilation patterns segmentation between the proposed
operators for image with mass region cells (Type 1) method and the Otsu’s automatic thresholding
employed a 17×17 diamond-shaped structuring with morphological operators
element.
5. Conclusion
(a) (b)
This article presented an efficient method for
automatically detecting outlines of fluorescence cells
in IIF images. The preprocessing of the proposed
method applied an anisotropic diffusion filter to reduce
the any amount of noises but preserved the shape and
contrast of fluorescence cell. This study classified an
IIF image into two cases based on the number of
connected region in an image. The proposed adaptive
(c) (d) segmentation method was used to generate precise
outline of the cells based on the types of image. The
IIF image database including 2573 cases were used to
evaluation. We found that the proposed method
determines the outlines of fluorescence cells that are
very similar to manual sketched ones. The
experimental results revealed that the proposed method
can practically segment fluorescence cells from IIF
(e) (f) images.
Figure 5. An IIF image (with discrete speckled
patterns) processed with the Type 1 6. References
segmentation module: (a) original RGB image,
(b) transformed cyan image after the [1] Conrad K, Schoessler W, Hiepe F. Autoantibodies in
anisotropic diffusion filtering, (c) after systemic autoimmune diseases. Lengerich, Berlin, Riga, Rom,
automatic thresholding, (d) after Viernheim, Wien, Zagreb: Pabst Science Publishers, 2002.
morphological closing, (e) after morphological
[2] Conrad K, Humbel RL, Meurer M, Shoenfeld Y, Tan EM.
opening, and (f) the outline of the segmented Autoantigens and autoantibodies: diagnostic tools and clues
cell to understanding autoimmunity. Lengerich, Berlin, Riga,
Rom, Viernheim, Wien, Zagreb: Pabst Science Publishers,
Table 1 lists the segmentation results that made a 2000.
comparison between the proposed method and the Otsu
automatic thresholding with morphological operators. [3] Perner P, Perner H, and Müller B, “Mining Knowledge
The number of the segmented divided and mixed cells for Hep-2 Cell Image Classification,” Journal Artificial
Intelligence in Medicine, vol. 26, pp. 161-173, 2002.
might be used to evaluate the accuracy of the
segmentation results. However, there are various cases [4] Sacka U, Knoechnera S, Warschkaub H, Piglac U,
are mixed indeed. In these cases, serious overlapping Emmricha F, and Kamprada M, “Computer-assisted
could be found between the cells. Besides this classification of HEp-2 immunofluorescence patterns in
circumstance, the proposed system clearly yielded cell
421
autoimmune diagnostics,” Autoimmunity Reviews, vol. 2, pp.
298–304, 2003.
422
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Yu-Len Huang, PhD*, Chia-Wei Chung*, Tsu-Yi Hsieh, MD†, Yu-Lang Jao*
*Department of Computer Science and Information Engineering
Tunghai University, Taichung, Taiwan
†
Division of Allergy, Immunology and Rheumatology, Taichung Veterans General Hospital,
Taichung, Taiwan
E-mail: ylhuang@thu.edu.tw
424
intensity to segment cells. The median filter was approved and output the outline of cells when RN2 was
performed to reduce noise and a common contrast larger than RN1. Figures 4 show the outlining results by
adjustment was performed to enhance cell regions from using the second stage module.
background. For an image with L intensity levels, the
original intensity f(x, y) was transformed to the
processed pixel intensity g(x, y) as
g(x, y) = f ( x, y ) − f min × ( L − 1) , (1)
f max − f min
where fmin and fmax are the minimal intensity and
maximal intensity, respectively. After preprocessing,
the proposed method employed the watershed
transform to segment cell region. For reducing over- (a) (b)
segmentation, the region merging procedure was
utilized to merge the small connected regions. The
region elimination procedure removed the segmented
region with an unreasonable size (smaller than 100
pixels). Then the first stage module counted the
number of obtained cell (connected region) RN1 in the
image. The RN1 was utilized to determine whether the
image required the second stage segmentation or not. If (c) (d)
RN1 of an image was larger than a predefined threshold Figure 3. IIF images segmented by the first
T, the segmentation result of the first stage module was stage module: (a) original RGB image with
approved and then generated the outline of cells. coarse speckled patterns, (b) image with
Figures 3 demonstrate the results of the first stage diffuse patterns, (c) segmentation result of (a),
module in the proposed method. On the contrary, if and (d) segmentation result of (b)
RN1 was smaller than T, the first stage segmentation
might obtain unsatisfied outline of cells due to the Furthermore, for image with mass region cells, the
most cell regions were removed by the region original RGB image was transformed to CMY (Cyan,
elimination procedure. This situation was often seen in Magenta, and Yellow channels) color space. We found
image with discrete speckled and nucleolar patterns. that the intensity dissimilarity between fluorescence
Thus the second stage segmentation was necessary for cells and background was massive in the cyan
extracting the more precise cells. component. Thus the proposed method utilized the
In the second stage segmentation, the method based cyan component as input image to segment cells in the
on the concept of markers was utilized for controlling image with mass region cells. The anisotropic diffusion
over-segmentation. Lotufo and Falcao [6] proposed an filter was also performed to enhance cell regions from
algorithm for detecting watershed boundaries based on background. The binary image with cell region
similarity using the markers. For the image with segmentation could be generated by using the Otsu
discrete speckled and nucleolar patterns, we found that algorithm. In this module, the morphological operator
the intensity dissimilarity between fluorescence cells opening and closing with a larger sized structuring
and background was massive in the cyan component. element were performed to diminish the region with a
Thus the second stage module utilized the cyan unreasonable size and then obtained the precise outline
component as input to avoid over-segmentation. The of the cells. Figures 5 show the processing results by
original RGB image was transformed to CMY (Cyan, segmentation module for Type 1 images.
Magenta, and Yellow channels) color space [7]. The
marker was defined as a connected component in 4. Results
image and typically select by a set of criteria from the
pre-processed cyan component. In this work, the This study totally experimented 2305 autoantibody
Otsu’s algorithm [8] was first performed to generate fluorescence patterns with manual sketched outlines
the marker for watershed segmentation. The similarity- (including 456 diffuse patterns, 417 peripheral
based watershed algorithm is performed herein to patterns, 719 coarse speckled patterns, 55 fine speckled
control over-segmentation in the images. Then the patterns, 517discrete speckled patterns and 141
second stage module also calculated the number of nucleolar patterns) from 44 IIF images to test the
obtained cell (connected region) RN2 in the image. The accuracy of the proposed method. These simulations
segmentation result of the second stage module was were made on a single CPU Intel Pentium-VI 3.0 GHz
425
personal computer with Microsoft Windows XP automatic thresholding with morphological operators.
operating system. The number of the segmented divided and mixed cells
In this study, the preprocessing procedure utilized might be used to evaluate the accuracy of the
the sized 3×3 median filter to reduce noise. In the first segmentation results. However, there are various cases
stage segmentation, the predefined threshold T for RN1 are mixed indeed. In these cases, serious overlapping
ranged from 20 to 30, the proposed system obtained a could be found between the cells. Besides this
stable and the highest accuracy. The performance circumstance, the proposed system clearly yielded cell
measures, i.e. true-positive (TP), false-negative (FN), outlines that are similarly to those manually sketched.
false-positive (FP) and sensitivity, were used to From the segmentation results, only a small number of
estimate the performance of the proposed system. The cases might generate an undesired segmentation.
TP value denotes the number of correct segmented
cells; FN value denotes the number of missed cells; FP Table 1. Fluorescence patterns segmentation
value denotes the number of incorrect segmented results of the proposed method
region without any fluorescence cell; and the
Autoantibody
sensitivity is defined as TP / (TP+FN). Table 1 lists the fluorescence pattern TP FP FN
Sensitivity
segmentation results of the proposed method. From the (%)
( number of slices)
segmentation results, only a small number of cases Diffused (10) 449 1 7 98.5%
might generate an undesired segmentation. Peripheral (10) 411 0 6 98.6%
Coarse speckled (10) 681 2 38 94.7%
Fine speckled (1) 55 0 0 100%
Discrete speckled (10) 449 5 68 86.8%
Nucleolar (3) 138 0 3 97.9%
Total 2183 8 122 94.7%
TP = true-positive; FN = false-negative; FP = false-positive;
Sensitivity = TP/(TP+FN)
5. Conclusion
(a) (b)
This paper presented a multi-staged segmentation
method for automatically detecting outlines of
fluorescence cells in IIF images. The preprocessing
filter and enhancement were utilized for the first stage
watershed algorithm automatically produces the
outline of the cell. In the second stage segmentation,
the similarity-based watershed algorithm performed
the marker to prevent over-segmentation. The IIF
(c) (d) image database including 2305 fluorescence cells were
used to evaluation. It can be found that the proposed
method determines the outlines of cells that are very
similar to manual sketched ones. The experimental
results revealed that the proposed method can
practically outline fluorescence cells from IIF images.
6. References
(e) (f)
Figure 4. IIF images processed with the [1] Conrad K, Schoessler W, Hiepe F. Autoantibodies in
second stage segmentation module: (a) systemic autoimmune diseases. Lengerich, Berlin, Riga, Rom,
original RGB image with discrete speckled Viernheim, Wien, Zagreb: Pabst Science Publishers, 2002.
patterns, (b) image with nucleolar speckled
[2] Conrad K, Humbel RL, Meurer M, Shoenfeld Y, Tan EM.
patterns, (c) the marker of (a), (d) the marker Autoantigens and autoantibodies: diagnostic tools and clues
of (b), (e) the cell outlining of (a), and (f) the to understanding autoimmunity. Lengerich, Berlin, Riga,
cell outlining of (b) Rom, Viernheim, Wien, Zagreb: Pabst Science Publishers,
2000.
Table 1 lists the segmentation results that made a
comparison between the proposed method and the Otsu
426
[3] Perner P, Perner H, and Müller B, “Mining Knowledge
for Hep-2 Cell Image Classification,” Journal Artificial
Intelligence in Medicine, vol. 26, pp. 161-173, 2002.
427
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
429
Another complex example is the word “不”(no). Kinds of Samples Ratio
“不” have six different kinds of pronunciation. They Pronunciation
are /bhuaih/, /bho/, /m/, /bhei/, /mai/, and /but/. Ex /bhuaih4/ 1,152 3.3%
5~8 show some examples of pronunciations of “不”. /bhei7/ 4,230 12.1%
(Ex5)『一般人並不/bho/容易看出它的重要性 /bo5/ 14,482 41.3%
。』 (It is not easy for a person to see its /m7/ 11,726 33.5%
importance.) /but4/ 3,103 8.9%
(Ex6)『不/m/知浪費了多少國家資源。』 (We /mai3/ 344 0.9%
do not know how much national resources
Total 35,037 100%
are wasted.)
(Ex7)『讓人聯想不/bhei/到他與機械的關係。 We can see that the pronunciations of /bo5/ and
/m7/ are the most, while the pronunciation of /mai3/ is
』 (It cannot remind the relationship
the least.
between him and machines.)
(Ex8)『華航使用之航空站交通已不/put/如從 3.2. Description of language model approach
前方便。』 (The traffic of airport is not as
convenient as before for China Airlines.) Formulas (1) and (2) are our approaches in solving
In our opinion, according to above description of polysemy problem. We call the approach WU. There
the polysemy problem in Taiwanese, we find that are two kinds of statistical results. Statistical results
deciding the proper pronunciation for each word is were compiled for words with their corresponding
very important in a C2T TTS system. We have some frequencies that appear on the left side of the word
outstanding results in solving some polysemy problems “ 不 ” and the words with their corresponding
by using combined language models approaches. We frequencies that appear on the right side of the word
will focus on solving the polysemy problem of the “不” for each training sample. Each punctuation mark
word “不” in this paper. is treated as a word.
j ∑ C ( p j & W i)
i
430
words on the left side of “不” and 1 words on the right two patterns from training data, the pronunciation
side of “不”. Table 2 shows the detail accuracy rates cannot be decided in this layer yet.
for each different pronunciation. There are 3,893 There are three patterns used in layer 2. They are
samples for outside testing which mentioned in 3.1. (種,說,不), (說,不,出來), and (不,出來,的). And
we find that the pattern ( 種 , 說 , 不 ) have been
Table 1. Results of using WU. appeared in training data. The frequencies are 1 for
Kinds of # of correct Accuracies pronunciation of /bhuaih4/, 2 for pronunciation of
Pronunciation /# of test samples /bhei7/, and 0 for other pronunciations. The
/bhuaih4/ 67/128 52.34% probabilities for each possible pronunciation of “不” in
/bhei7/ 318/469 67.80% Ex 5 are 1/3 for /bhuaih4/, 2/3 for /bhei7/, 0 for others.
/bo5/ 1006/1610 62.48% We can conclude the predicted pronunciation of “不”
/m7/ 1079/1303 82.81% is /bhei7/ in this layer.
/but4/ 202/344 58.72% Compared with language models in Section 3, the
/mai3/ 21/39 53.84% main advantage of layered approach is that we can
Total 2693/3893 69.18% keep up to 5-gram words information for training data.
There is no data spare problem in our approach. In the
4. Layered approach, the second approach layered approach, we also keep lower n-gram
information. If there is no pattern found in higher layer,
we can back to the lower layer. This is the concept of
4.1. Proposed layered approach
back-off strategy.
According to our previous researches, we find that
to decide the correct pronunciation of a word with 4.2. Results of using layered-approach
polysemy problem needs to make considerations of its
neighborhood words. We find that there some We use the experimental data mentioned in 3.1.
drawbacks using language models. Such as the There are 311,180 samples for training. We use these
distances of the neighborhood words are not fixed. Our 311,180 samples to train the four layers. The other
proposed layered approach is to improve such 3,893 samples which are the same as used in 3.3 are
drawback. the outside test data.
Figure 1 is the proposed layered approach to the Table 2 shows the accuracies of using layered
polysemy problem with an input testing sentence. We approach based on word pattern. The total result is
use the Ex 5 to illustrate how the layered approach about 5% over that using language model (73.49% vs.
works. 69.18%).
(Ex 5) 體驗出(VC) 一(Neu) 種(Nf) 說(VB) 不
Table 2. Results of using layered approach by word
(D) 出來(VB) 的(DE) 感覺(Na)
pattern.
Ex 5 is a fragment in Chinese with segmentation
Kinds of # of correct Accuracies
and part-of-speech (POS) information. The value in Pronunciation /# of test samples
each pair of parentheses is the POS of the
/bhuaih4/ 44/128 34.38%
corresponding word. Such as the POS of “說” is VB.
The POS tags are defined in ASBC 3.0. We want to /bhei7/ 300/469 63.96%
predict the correct pronunciation for the word “ 不” in /bo5/ 1240/1610 77.02%
Ex 5. /m7/ 1114/1303 84.50%
In Figure 1, there are four layers designed in our /but4/ 157/344 45.64%
layered approach. We denote that /mai3/ 6/39 15.38%
( w−2 , w−1 , w0 , w+1 , w+ 2 ) is (種,說,不,出來,的). Total 2861/3893 73.49%
The first pattern, (種,說,不,出來,的), will be input
of the layer 4. Since there is no such pattern found in
layer 4, we cannot decide the pronunciation of “不” 4.3. Modified layered-approach
with this pattern in layer 4. We then use two patterns,
Theoretically, the priority of higher layer should be
( w− 2 , w−1 , w0 , w+1 ) for ( 種 , 說 , 不 , 出 來 ) and
higher than the lower layer in our layered approach.
( w−1 , w0 , w+1 , w+ 2 ) for (說,不,出來,的), as input of That is, if we can determine the pronunciation of the
layer 3. We cannot find any patterns tally with these word with polysemy problem, we may not use the
answer of the lower layer. There may be a drawback if
431
the probability of predicted pronunciation of lower /bhei7/ 306/469 65.25%
layer is higher, some correct predicted answer may be /bo5/ 1262/1610 78.39%
neglected. We use the concepts of confidence measure /m7/ 1125/1303 86.34%
to measure the confidence of the four layers. The final
predicted pronunciation is that with the highest /but4/ 158/344 45.93%
confidence. /mai3/ 5/39 12.82%
Figure 2 shows the confidence curves of the four Total 2899/3893 74.47%
layers. These confidence curves are used to measure
the confidence for each layer. We will choose the 5. A comparison with decision list classifier
pronunciation predicted by the layer with the highest
confidence. As we know, there are no researchers looking at the
polysemy problem in translating from C2T in a C2T
TTS system except our proposed language models. In
this paper, it is treated as a problem of word sense
disambiguation. The main task of the research in this
paper is to determine the pronunciation of the word
“不” in Taiwanese.
There are a number of papers that have looked at
(a) The confidence curve of layer 4. disambiguation in recent years [17] [15] [3] [10] [4] [5]
[20]. In 1997 Yarowsky built a decision list classifier
(DLC) using the local context cues within a 20-word
window for the target word. A log-likelihood ratio is
generated, which stands for the strength of each clue of
local context. The decision will be made for matching
sorted ratio sequence to decide the sense of a target
word. The accuracy reached over 96% on a wide
(b) The confidence curve of layer 3.
variety of binary decision tasks. The decision list
classifier proposed by Yarowsky is among the best in
solving the problem of word sense disambiguation. We
will apply the decision list classifier in determining the
correct pronunciations of the word “ 不 ”, and then
compare the accuracy with our three approaches. A
(c) The confidence curve of layer 2. brief description of the decision list classifier is as
follows.
432
P ( S 1 | ev i ) which are the same as used in 3.3 are the outside test
Abs ( Log ( ),........ ......( 3)
P ( S 2 | ev i ) data. Table 5 shows that the accuracy of using DLC is
55.80%. Compared that with using language models in
Where S1 and S2 denote the two senses of the target Section 3 and layered approach in Section 4. The
word respectively, evi denotes the evidence i. As results of using DLC are not better than the above
shown in Table 4, the target word bass has two proposed approaches.
possible meanings, fish and music.
Table 5. Results of using DLC.
Table 4. Decision List for Disambiguating Meaning of Kinds of # of correct Accuracies
1
Word bass, where bass means fish and bass2 Pronunciation /# of test samples
means music. /bhuaih4/ 60/128 46.88%
logL Evidences(rules) Sense /bhei7/ 279/469 59.49%
/bo5/ 671/1610 41.68%
10.98 1. fish within window bass1 /m7/ 992/1303 76.13%
10.92 2. striped bass bass1 /but4/ 157/344 45.64%
/mai3/ 13/39 33.33%
9.70 3. guitar within window bass2 Total 2172/3893 55.80%
9.20 4. bass player bass2
9.10 5. piano within window bass2
6. Conclusion
9.01 6. tenor within window bass2
We proposes an elegant approach, layered approach
8.87 7. sea bass bass1
to determine the pronunciation of the word “ 不 ”
translating from C2T in a C2T TTS system.
Ex 6 shows how the decision list classifier works. Experimental results also show that the models used
The target word bass has two possible meanings show better results than the decision list classifier and
depending on the context in which it is used in a language models. The polysemy problems in
sentence. Bass can mean a fish or can be a musical translating C2T are very common and it is imperative
instrument or music player. The decision list classifier that they be done in a C2T TTS system. We will
will choose the correct meaning musician for the target continue to focus on other important polysemy
word bass in the sentence. In Table 4, there are three problems in a C2T TTS system in the future.
possible evidences for the word bass in the context in To build a quality C2T TTS system is a long-term
which it is used in the sentence - first; fish within project because of the many issues in the text analysis
window; fourth, bass player; or fifth, piano within phase. In contrast to a Mandarin TTS system, we need
window. The 4th evidence “bass player” and the 5th more functions in text analysis of a C2T TTS system.
evidence “piano within window” will choose the Two imperative tasks are the polysemy problems and
meaning music while the first evidence meaning “fish the tone sandhi problem.
within window” selects the meaning fish because its
likelihood ratio is the highest, 10.98, in the sequence of 7. References
evidence. It is obvious that the meaning fish chosen by
the decision list classifier for the target word bass is 1. H. Bao, A. Wang, and S. Lu, “A Study of
incorrect. The contextual width of window employed Evaluation Method for Synthetic Mandarin
in decision list classifier is ±20-words (Yarowsky, Speech”, in Proceedings of ISCSLP 2002, The
1997). Third International Symposium on Chinese
Spoken Language Processing, pp. 383-386.
(Ex 6) “The fish, eaten by the piano player and bass
player, is from New Zealand.” 2. S. H. Chen, S. H. Hwang, and Y. R. Wang, “A
Mandarin Text-to-Speech System”,
Computational Linguistics and Chinese
5.2. Results of using DLC Language Processing, Vol. 1, No. 1, Aug. 1996,
pp. 87-100.
The contextual width of window is ±20-words. We 3. A. Fuji, K. Inui, T. Tokunaga and H. Tanaka,
use the experimental data mentioned in 3.1. There are “Selective Sampling for Example-Based Word
311,180 samples for training; the other 3,893 samples
433
Sense Disambiguation,” Computational International Conference on Advanced Learning
Linguistics, Vol. 24, No. 4, pp. 573-579, 1998. Technologies, 2004.
4. W. A. Gale, “Cognition, Computation and 14. H. M. Lu, “An Implementation and Analysis of
Formal Systems: Some of Tomos Havranek’s Mandarin Speech Synthesis Technologies”, M.
Interests and Disambiguating Word Senses,” S. Thesis, Institute of Communication
Computational Statistics and Data Analysis, Vol. Engineering, National Chiao-Tung University,
19, pp. 135-148., 1995. June 2002.
5. W. A. Gale, K. W. Church, and D. Yarowsky, 15. H. Schutze, “Ambiguity and Language Learning:
“A Method for Disambiguating Word Sense in a Computational and Cognitive Models,” Ph. D.
Large Corpus,” Computer and the Humanities, Thesis, Stanford University, 1995.
Vol. 26, 1992.
16. C. Shih and R. Sproat, “Issues in Text-to-Speech
6. C. C. Ho, “A Hybrid Statistical/RNN Approach Conversion for Mandarin”, Computational
to Prosody Synthesis for Taiwanese TTS” Master Linguistics and Chinese Language Processing,
thesis, Department of Communication Vol., 1, No. 1, Aug. 1996, pp. 37-86.
Engineering, National Chiao Tung University,
17. J. Veronis and N. Ide, “Word sense
2000.
Disambiguation with very Large Natural Corpus
7. J. Y. Hunag, “Implementation of Tone Sandhi Extracted from Machine Readable Dictionaries,”
Rules and Tagger for Taiwanese TTS”, Master in Proceeding of COLING-90, 1990.
thesis, Department of Communication
18. Y. C. Yang, "An Implementation of Taiwanese
Engineering, National Chiao Tung University,
Text-to-Speech System", Master thesis,
2001.
Department of Communication Engineering,
8. C. H. Hwang, "Text to Pronunciation Conversion National Chiao Tung University, 1999.
in Taiwanese", Master thesis, Institute of
19. D. Yarowsky, “Decision Lists for Lexical
Statistics, National Tsing Hua University, 1996.
Ambiguity Resolution: Application to Accent
9. F. L. Hwang, M. S. Yu, and M. J. Wu, “The Restoration in Spanish and French,” in
Improving Techniques for Disambiguating Non- Proceedings of the 32nd Annual Meeting of the
Alphabet Sense Categories”, in Proceedings of Association for Computational Linguistics, Las
ROCLING XIII, 2000, pp. 67-86. Cruces, NM, 1994, pp. 88-95.
10. C. Leacock and M. Chodorow, “Using Corpus 20. D. Yarowsky, “Homography Disambiguation in
Statistics and WordNet Relation for Sense Text-to-Speech Synthesis,” in van J. Santen,
Identification,” Computational Linguistics, Vol. Sproat R., Olive J. and Hirschberg J., (Eds),
24, No. 1, pp. 147-165, 1999. Progress in Speech Synthesis, Springer-Verlag,
New York, 1997, pp. 159-175.
11. Y. J. Lin and M. S. Yu, “An Efficient Mandarin
Text-to-Speech System on Time Domain”, 21. M. S. Yu and F. L. Huang, “Disambiguating the
IEICE Transactions on Information and Systems, Senses of Non-Text Symbols for Mandarin TTS
Vol. E81-D, No. 6, June 1998, pp. 545-555. Systems with a Three-Layer Classifier”, Speech
Communication, Vol. 39, Issue 3-4, 2003, pp.
12. Y. J. Lin, M. S. Yu, and C. J. Huang, “The
191-229.
Polysemy Problems, An Important Issue in a
Chinese to Taiwanese TTS System”, to be 22. X. R. Zhong, “An Improvement on the
appeared in proceeding of CISP 2008, 2008. Implementation of Taiwanese TTS System”
Master thesis, Department of Communication
13. M. S. Liang, R. C. Yang, Y. C. Chiang, D. C.
Engineering, National Chiao Tung University,
Lyu, and R. Y. Lyu, “A Taiwanese Text-to-
1999.
Speech System with Application to Language
Learning”, in Proceedings of the IEEE
434
Word Position (w-2 , w-1 ,w0 , w+1,w+2)
/bhuaih4/=0
/bhei7/=0
/bo5/=0
Layer 4 (種) (說) 不 (出來) (的) /m7/=0
/but4/=0
/mai3/=0
No pattern found, go to next layer /bhuaih4/=0
/bhei7/=0
/bo5/=0
Layer 3 (說) 不 (出來) (的)
/m7/=0
/but4/=0
+ /mai3/=0
/bhuaih4/=0
(種) (說) 不 (出來)
/bhei7/=0
/bo5/=0
/m7/=0
/but4/=0
No pattern found, go to next layer /mai3/=0
/bhuaih4/=1
(種) (說) 不 /bhei7/=2
/bo5/=0
+ /m7/=0
Layer 2 /but4/=0
/mai3/=0
(說) 不 (出來)
:
:
+
/bhuaih4/=0
/bhei7/=0
不 (出來) (的) /bo5/=0
/m7/=0
/but4/=0
Output(1/3,2/3,0/3,0/3,0/3,0/3) /mai3/=0
/bhuaih4/=0
(種) (說) /bhei7/=0
/bo5/=0
/m7/=0
(說) 不 /but4/=0
+ /mai3/=0
Layer 1
:
+ 不 (出來) :
+ /bhuaih4/=0
(出來) (的) /bhei7/=0
/bo5/=0
/m7/=0
/but4/=0
/mai3/=0
435
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
2.3. Methods
437
species of 49 species in 7 categories which are detected “genetic function” (UI=T045), which is (1) disease
in our research. effects genetic function and (2) disease is the result of
In human cases, 19 tissues are tagged and genetic function.
nervous and muscle instances are much more than Therefore, we recognize that exon 3b is involved
other tissues. These results agree with other in a mutually exclusive alternative splicing event and is
tissue-specific AS research [1]. About the AS type, related with prostate cancer.
only 11 exon skipping and 3 mutually exclusive are
detected. The two reasons why other AS type do not 4. Discussion and Conclusion
detect well are that (a) the method to descript AS type
are variety, (b) authors often descript alternative exon Basically, the results are encouraged; the
by numbers but not type. captions also provide the unique information which
Let’s take the abstract of “Finding signals that abstracts do not. But, some issue still need to
regulate alternative splicing in the post-genomic era” discussion deeper. Taking figure 2 as an example, there
[10]. (pubid=12429065) In the figure 1, the authors is still some information lost in this research. For
descript functionally significant examples of different example, exon 3c is not recognized due to “3c” does
types of alternative splicing (Fig.2). We tag the caption not follow exon. Second, the detail of how AS regulate
b in figure1 as following: biology function does not extract. In this research we
Alternative exons may be <genetic function> only know FGFR-2 are related with prostate cancer,
<AS type > mutually exclusive </AS type> </genetic but we don’t get the information that loss 3b isoform
function>, such as <exon>exons IIIb </exon> and IIIc plays important role in it. We will both use statistical
in the fibroblast growth factor receptor 2 Natural Language Processing technology and grammar
(<gene>FGFR-2</gene>). Use of IIIb produces a based technology to improve it. Meanwhile, AS is a
receptor with high affinity for keratinocyte growth dynamic mechanism. Besides circumstance, how to
factor (KGF), whereas use of IIIc produces a extract the dynamic process is another important
high-affinity FGF receptor. Loss of the IIIb isoform is direction to be applied.
thought to be important in <disease> prostate cancer
</disease>. 5. References
[1] C. Lee, L. Atanelov, B. Modrek, Y. Xing,” ASAP: the
Alternative Splicing Annotation Project”, Nucleic Acids Res.
2003, pp. 101-5
[2] http://www.ncbi.nlm.nih.gov/PubMed/
[3] http://www.nlm.nih.gov/mesh/
[4] L. Hunter, and K. Bretonnel Cohen, “Biomedical
Language Processing Perspective: What's Beyond
PubMed?”,Molecular Cell, 2006, pp. 589-594
[5]P.K. Shah, L.J. Jensen, S. Boue,P. Bork,” Extraction of
transcript diversity from scientific literature”, PLoS Comput
Biol. 2005,pp. e10.
[6] O. Bodenreider, Text mining for biology and
biomedicine, Artech House, 2006
Figure 2. The caption 1-B and figure 1-B of [7] http://semanticnetwork.nlm.nih.gov/
“Finding signals that regulate alternative splicing in [8] William W. Cohen, Richard Wang, Robert F. Murphy,
the post-genomic era”. “Understanding Captions in Biomedical Publications”, KDD
2003, pp. 499-504.
[9]M. A. Hearst, A. D., H. Guturu, A. Ksikes, P. Nakov,
Through “mutually exclusive” is not one of a
M.A. Wooldridge and J. Ye, “BioText Search Engine:
term of genetic function in UMLS, in the AS cases, beyond abstract search”, Bioinformatics, 2007,pp. 2196 –
“mutually exclusive” usually indicate “mutually 2197
exclusive alternative splicing”. Hence, we see all the [10] A.N. Ladd, T.A. Cooper “Finding signals that regulate
splicing type, such as exon skipping, as genetic alternative splicing in the post-genomic era”, Genome
function terms. Biology, 2002, 3: reviews0008
In the UMLS semantic network, two non
hieratical relations link “disease” (UI=T140) and
438
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
440
not been affected, on the contrary it gives the state-of- Toggle Switches
the-art knowledge to the students.
To further increase the capabilities of the daughter
The C8051F020 microcontroller is a ‘big brother’ of
card to provide digital inputs, there are eight toggle
the ever popular 8051 chip [3]. Many features and
switches on it. These are in the form of DIP (Dual-In-
capabilities have been added to the basic 8051 to create
Line package) micro-switches.
a very powerful microcontroller suitable for high-end
high-speed industrial applications as well as for use in Potentiometer
numerous electronic products.
A potentiometer is used as a voltage divider. It
allows the ADC to be used with no danger of the input
4. Expansion Board
exceeding the maximum rated voltage. The variable
Most of the microcontroller development systems analogue voltage (0 to 3.3V) from the potentiometer is
have very limited peripheral resources built on the connected to the input of the 12-bit ADC on channel 2.
target board. Usually a couple of switches, a few Temperature Sensor Input
buttons and occasionally a LCD module are all that one
gets. This leaves the onus of expanding the target board A thermistor can be connected on the daughter card.
on the end user. The SiLab microcontroller board, Liquid Crystal Display
C8051F020-TB, has only one push-button and an LED.
An expansion board was thus developed to provide The LCD provided on the expansion board is a 2
several peripheral resources. Figure 1 shows the lines x 16 characters display module built around the
functional block diagram of the Expansion Board. Hitachi HD44780 micro-controller. The LCD has a
parallel interface and thus very convenient for
connection to the digital I/O port of C8051F020. The
P7 b2-0 Control
3 16 Character x 2 Lines
LCD greatly enhances the versatility of the expansion
P6 Data Liquid Crystal Display board since a convenient means of displaying program
8 output is now at the disposal of the user.
96 pin
DIN P5 b7-4 Four LEDs Figure 2 shows the expansion board and Figure 3
4
connector shows it connected to the C8051F020-TB target board.
to SiLab P5 b3-0 Four Push Button Switches
MCU 4
Board P4 DIP 8 Switches
8
AIN0.2 Potentiometer
AIN0.3 Temperature Sensor
DAC1 LCD Contrast (via JP1)
DAC0 Test Point 2
LEDs
In most applications, several LEDs are required,
often to depict port status and program diagnostics.
Thus four LEDs are provided on the board.
Pushbutton Switches
Pushbuttons and toggle switches are required in any
micro-processor development system for generating
digital input signals. Four Pushbuttons are provided on
the daughter card
Figure 3. Expansion Board Connected to
C8051F020-TB
441
5. SiLab ToolStick University Daughter Analog Signal Connections
Card Pin header connections are provided on the daughter
card for external connections to analog comparator
Silicon Labs, USA, has developed a C8051F020 inputs and DAC outputs. For various experiments, the
based target board specifically aimed for use in teaching DAC outputs or analog voltages at AIN0.2
microcontrollers and embedded programming. All the (potentiometer) and AIN0.3 (thermistor) can be
peripheral resources that were there on the expansion connected to the comparator inputs.
board, namely four push buttons, eight toggle switches,
four LEDs and a potentiometer to generate a variable Toggle LED Push Button
analog voltage for ADC input, are all there. In addition, Switches Switches
P5 b3-0 Four Push Button Switches diagram. The connection between the daughter card and
SiLab
4
P4 DIP 8 Switches
the base adapter uses the Card Edge connector.
8
AIN0.2 Potentiometer PC Base Adapter Daughter Card
AIN0.3 Temperature Sensor
DAC1 Silicon Labs IDE Debug Logic MCU
Debug HW
DAC0 Card
USB UART & GPIO
Edge
UART
Figure 4. University Daughter Card Functional ToolStick Terminal External HW
Block diagram GPIO
5.1 Additional Peripheral Resources and Figure 6. Connecting the University Daughter Card
Connections to a PC using a ToolStick Base Adapter
As can be seen, there is no LCD on the university The base adaptor provides a USB debug interface
daughter card which has been now implemented in to a Windows PC and the firmware for UART serial
software which is discussed in a later section in the communication between the PC and the Daughter Card.
paper. The additional features are- Figure 7 shows the ToolStick University Daughter Card
physically connected to the ToolStick Base Adapter.
I/O Port Connections
Pin header connections are provided on the daughter
card for external connections to ports 0 to 2.
442
ToolStick Base Two types of information may be written to or read
Adapter
from the LCD – data and control (command) bytes.
Control bytes are used to program the LCD features
such as cursor off, cursor blinking, display scroll, clear
screen etc. Data bytes are the characters that are
displayed on the LCD. A short program segment is
shown below to initialise the LCD-
Silicon Lab’s Virtual Display incorporates a LCD, a A routine to display a string is shown below-
multi-channel oscilloscope and a Terminal for serial
communication. This greatly facilitates the learning of void LCD_display(char *str, int length)
the microcontroller embedded programming without {
having to use laboratory instruments. It also brings int i;
for (i=0; i<length; i++)
down the cost of setting up a laboratory. One can do all {
the experiments even in the comfort of a home, as long //-- write one byte of data to LCD
as there is access to a PC. LCD_DataWrite(*str);
str++;
}
6.1 Virtual LCD }
443
To program the oscilloscope, one needs to master only The routine shown below may be called to write a string
two functions, the prototypes of which are given below- to the Terminal-
8. References
[1] M. T. Chew, “Enhancing Engineering Creativity Through
New ID Technology”, Journal of Teaching Practice,
Singapore Polytechnic, 1998/1999, pp.51-56
Figure 10. ToolStick Terminal interface for serial
communication [2] M. T. Chew and G. Sen Gupta, “Embedded Programming
with Field-Programmable Mixed-Signal microcontrollers”,
Only two functions are required to communicate Silicon Laboratories, Austin, TX, USA, 2005, 353 p
with the Virtual Terminal program, one to read from
and one to write to. The function prototypes are as [3] David Calcutt, Fred Cowan, Hassan Parchizadeh, “8051
follows- Microcontrollers: an Applications-Based Introduction”,
Boston, Mass., USA: Newnes, 2003
void TerminalWrite (BYTE SendChar);
BYTE TerminalRead (void); [4] www.silabs.com/MCUniversity
444
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
)
*&$%+ )
)
( (5) B<CD B>CD B2CD
:$;< =< , ;> => , … , ;2 =2 %
72 8 8 … 8
Notice that the expression in equation (5) has the ?@A:$;< =< , ;> => , … , ;2 =2 %
B<C< B>C< BEC<
2
As novel sensor applications are deployed to provide :DJQ A?@VS? =TT P (11)
>
reliable data over the life-time [3] of the sensor network,
with current routing algorithms [3] which are dependent to
communicate with a central coordinator the instantaneous Where W is total number of sensors placed in a cluster
drain on the sensors are very demanding. A typical 9V head. Here the probability of sampling similar values are
battery communication for an RF sensor to transmit over highly correlated as in the case of environmental sensing
10 meters range will drain out as per the capacity table [4]. the :DJQ X 0.5 then the entropy can be re-calculated as
As shown in the previous equation in logarithmic scale for -K\\O 0.6 ?@A> 0.6 0.4 ?@A> 0.4 0.958 (12)
point to point transmission, we can extend this by per cluster head. For a good distributed clustering
clustering C nodes in the same range as shown in algorithm it uses 20% cluster heads [3] then the total
equation(6). entropy of the network will be 0.958 a 20% 19.16
per round. To further calculate the algorithm efficiency
&$% ( $ % (6) the most popular being Huffman coding [1] which has a
lower and upper bound for a given Pmax. The Kraft-
McMillan inequality there exist a uniquely decodable code
&$
% ($
%
( &$% , &$% (7)
481
with code word {?B F. The average length of the code can A. Localalized Classifier – Fault 0
be upper-bounded by using the right inequality.
g g
1
?JeK 8 :$SB %?B f 8 :$SB % h?@A> 1i
:$SB %
BC< BC<
?JeK -$.% 1
482
significant task as shown in figure 5 to compare and KND1(Pmax) :
correct the values to an expected value. The classifier N+ (Pmax)
uses a Bayesian approach in which it has to maximize on return [Pmax [0:i] + c + Pmax [i+1:] for i in range(n) for
the posterior probability with existing prior probability. c in the sampled live measurement]
The classifier uses Pmax as a reference if it is not able to
resolve then, it takes all the faulty nodes and uses the With the implementation of this classifier we get an fault
highest Pmax of the classified nodes and extracts the value rate of < %10. The input and outputs corrections are
as the best approximation for all the correlated sensors. shown in TABLE I.
We will say that we are trying to find the correction c, out
of all possible corrections, that maximizes the probability
of c given the original measurement M: V. TRAIN FEATURES
z
:DJQz : { } (14)
|
|
:DJQz : { } :$R% (15)
~
Figure 6. Classifying faulty sensors across cluster boundaries
:$R% the probability that a proposed correction c stands using near neighborhood algorithms.
on its own. This is called the correlated cluster model.
|
: { } the probability that M would be measured by itself
TABLE I.
z
CLASSIFIER PERFORMANCE COMPARISON
when the network meant c. This is the error model. Sample Correction Algorithms
:DJQz ,the control mechanism, which says to enumerate Training K-Neighbor K-Neighbor
Text Fault Rate
all feasible values of c, and then choose the one that gives Distance- 1 Distance- 2
the best combined probability score. Simulation
98% 1% 1%
Run-1
Simulation
91% 1% 8%
Run-2
IV. PMAX GLOBAL
In simple cases the sensor network uses local cluster
The off-line process helps to train the model with the head functions to predict the best correction but as the
frequency of Pmax generated by the sensors as in equation fault rate increases which is the case in large sensor
(10) and (11) which are in the fault mode but could have network deployments. The central coordinator needs a
good readings. Below is the pseudo-code for the training way to cross validate the measured data to accept it or to
the features. make possible corrections by using the nearest correction
found by using a global function. As this performed at the
Model = collection.defaultTopologyID() coordinator is not limited to any energy constraints and
can use sophisticated methods such as training and feature
For f in features: classifiers. The main goal of the cross-validation logic as
Model[f] += 1 shown in figure 7 is to compare with live values as the
Return model primary factor, the more connected the network the better
NSENSORS=train(Pmax (file(‘snapshot-
sensor.db’).read())
483
VI. MULTI-FEATURE TRAINING TABLE II.
CLASSIFIER PERFORMANCE USING PMAX LOCAL
We like to train the feature vectors in a way that it can
handle most of the aggregation locally and minimally Raw Sensor readings
globally. The two features are PMAX which takes off the Classification Temperature
PMAX PMAXC
redundancy based on value locally equation (10, 11) and Value ()
original data
M 40.00 0.10
0.70
0.60 M 32.00 0.20
0.50
0.40 data1
Y
0.30
data2
M 44.00 0.30
0.20
Data3
0.10
0.00 M 35.00← 0.40 0.40
0.00 20.00 40.00 60.00 80.00
X
(M) 75.00 0.10
Figure 8. Measured values using local PMAX LDA with Aggregated 35.00 0.40
classes 1, 2.
LDA
LDA
110
100 110
90 100
80 90 data1
70 80
f2 data2
60 70
2
f
50 60 threshold
line
40 50
Data3
30 40
30 50 70 90 110 30
f1
30 50 70 90 110
f1
original data
0.45
0.40
0.35
0.30 TABLE III.
0.25
Y
0.20
data1
CLASSIFIER PERFORMANCE USING PMAX- PMAXR-RELEVANT
0.15 data2
0.10 Data3
0.05
0.00
Raw Sensor readings
0.00 20.00 40.00
X
60.00 80.00 Classification Temperature Value
()
PMAX PMAXC PMAXR
Figure 10. Measured data set across sensor clusters C 57.20 0.10
PMAXR which is based on the relevance of the current C 53.60 0.10
measurement when exceeding a given threshold based on
C 55.40 0.20
the trained data.
Table II shows example local temperature reading in C 75.00 0.30 0.30 75.00
this case the PMAX= 0.40, hence a high measured value of C 55.40 0.20
75.0 can be safely ignored. This can be adapted efficiently
using a linear discriminate analysis (LDA) as shown in M 40.00 0.10
Figure 8, 9. As this needs a lot of computing resources we
M 32.00 0.20
differ such machine learning techniques to be
implemented globally. In table III the trained values are M 44.00 0.30
corrected and are shown in ‘C’ and the new measured data
M 35.00 0.40 0.40
set is shown as ‘M’. Here again the sensor measures a
high value at 75.0 with a corresponding of PMAX= 0.10 the (M) 75.00 0.10
classifier’s other feature vector is matching similar
readings reported earlier or newly available fused values Relevant 75.00 0.40 0.30
from boarder nodes, in this case there is a such high
relevant values in the training data set so comparing the VII. SUMMARY
measured data set the training data set we have Theoretically we show that study of wireless sensor
:DJQz 0.40, :DJQL 0.30 network energy management is a significant part of
The global classifier updates the new measured value solving the reliability issue. Also we show that the energy
over :DJQz , as it is highly a probable event to be reported constraint is network size invariant and converges to an
at the central coordinator. In the faulty case which is given optimal cluster size. To achieve a balance we use
in table IV where shown similar as before compression algorithms to bring down the transmitted bits
:DJQz 0.40, :DJQL 0.30 to known entropy at the cluster head as in equation (12).
The same model serves as the reliability index for a
The high value measured is treated as faulty as in this central classifier which uses multi-feature and brings
training data set it cannot find any matching value.
down the fault rate to a minimum in our case around 10%.
Figure11, shows LDA based Classifier using dot product. This technique can also be shown that in training data, as
484
the data is measured to known source entropy at each REFERENCES
cluster head then the training data set over time for a large [1] Introduction to Data compression by Khalid Sayood.
sensor network has the self mutual-information of all the [2] Pattern Classification by Richard O. Duda, Peter E. Hart, David G.
nodes in the network with respect to the new measured Stork.
values. This helps to further classify the current data set [3] Software Stack Architecture for Self-Organizing Sensor Networks,
by reducing any faults due to measurements locally. The Vasanth Iyer, G.Rama Murthy and M.B. Srinivas- ICST 2007,
classifier is based on the probability model and is Palmerston North New Zealand.
independent of the actual measured value making it [4] Battery drain (http://www.techlib.com/reference/batteries.html).
reliable, resilient and robust. [5] Power Law math (http://en.wikipedia.org/wiki/Power_law).
TABLE IV.
CLASSIFIER PERFORMANCE USING PMAX- PMAXR -FAULTY
C 55.40 0.20
C 55.40 0.20
M 40.00 0.10
M 32.00 0.20
M 44.00 0.30
M 35.00 0.40 0.40
485
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
446
help developers to create applications easily and
speedy without considering the hardware construction
in low-level and the driving methods.
In the utilization of embedded system, there is
usually a great amount of input/output (I/O) demand
for communicating with external component to carry
out the application's intention. Accordingly, the main
purpose of API and driver is to encapsulate I/O flow of
the system that helpfully let the developers can
concentrate on application's algorithm developing and
high-level management and decision program’s
designing without worrying about the I/O control flow. Fig. 2. The software part of embedded computing platform
Section 3.2 will discusses API and driver in more for robots
detail.
3.3. Processor
3.2. OS
Base on the interactive requirement of intelligent
By the foundation of robot's attribute, a satisfied OS robot and outer physical environment, robot-dedicated
for robotic purpose needs a well management processor must possess a number of reconfigurable IPs
mechanism to deal with tasks and devices that can which can progress in a fast integrated development.
coordinate various tasks inside the robot to work fine. These IPs should be reusable and thereby depend on
As well as offering real-time kernel to let the robot different circumstance can be increased/decreased or
react quickly and operate smoothly, the OS kernel substituted. We then can base on the actual need to
ought to have IPC methods which are dedicated to the arrange IPs and optimize the hardware design for the
convenient of robot's applications developing. embedded computing platform.
Fig. 2 presents the structure of OS kernel. API On our platform, we implement a reconfigurable
provides the interface between OS and top-level 8051 processor core, MIAT51, which is modified from
applications. Driver provides the interface between OS the open source MC8051 IP-core of Oregano Systems
and low-level devices (e.g. actuator, sensor, etc.). [12]. Because the robotic applications may often
In this paper, we adopt uC/OS-II [11] as an communicate with the interface of external component
implementation example of robotic OS. uC/OS-II is a (e.g. I2C and UART) and the controllers for accessing
RTOS which is open source and widely used especially RAM or flash memory, we can do a flexible
for control system, and it has the advantages of high adjustment for the special function register (SFR) of
performance, small footprint, excellent real-time and the processor that lets the processor can easily map to
scalable. the peripheral interface of new added device. Thus the
In our design, inside OS layer which requires API, control and utilization of the device can be more
system call, kernel and driver. To meet the requirement convenient. Fig. 3 shows the architecture of our
of intelligent robot's behavior control, we rewrite API processor and interface IPs for the platform.
and driver. API and driver mainly encapsulate the I/O
control flow as mentioned in section 3.1. We
implement the more top-level part of the I/O control
flow into API and the more low-level part of the I/O
control flow into driver since API is the top-level
interface, driver is the low-level interface and the
coverage of the I/O control flow includes top layer and
low layer.
447
3.4. Device behavior module of subsumption system (refer to Fig.
5(b)).
As the design consideration of API and driver
which is mentioned in section 3.2. According to the
improvement of the robot's functionality and the
increasing of the system's complexity, the driving
method of the device becomes more difficult. At the
moment, using software to achieve the device's control
flow is comparatively more complex. Moreover, the
robot may work inefficiently because the waste of CPU
resources and Bus bandwidth. For example, the PWM
signal generation, which is needed for motors,
becomes the most serious problem. Consequently, we
make a parametric PWM generator which is also a
PWM hardware controller [13], [14] and can be
synthesized very fast. This PWM hardware controller,
which makes the robotic system can be controlled
effectively and eases the load of the top-level
application, receives the parameter from applications
and generates the high efficiency PWM signal
automatically. Fig. 5. (a) is the hexapod robot (b) is the subsumption system
Fig. 4 is a basic function block in the PWM
hardware IP. To describe the complex behavior mode In our platform, the high-level intelligent decisive
and control strategy precisely, we will use GRAFCET behavior in subsumption system can be built on the
[15] as a discrete-event behavior modeling tool. We application layer of our platform. And we can complete
follow a set of automatic synthesis rules which is the robot's behavior design by using the mechanisms of
proposed by Chen et al. [16] to synthesize a scheduler and inter-process communication (IPC)
customized PWM hardware IP which can be integrated which are the components in OS and can perform as
into an automatic system of robot easily. the utility of suppressor node and inhibiter node.
According to layer approach design, we may offload
most part of the robot’s complex and repeated software
control flow into hardware portion by using
GRAFCET for modeling and constructing the
hardware IPs which can ease the load of processor for
computing and enhance the whole system’s
performance.
To show the effectiveness of this designed platform,
the PWM hardware IP introduced in section 3.4 can be
used to explain the demonstration. We assume that the
Fig. 4. The basic function block of PWM controller robot involves an 8-stage procedure to complete a
movement, such as a step to go forward/backward,
4. Experimental system implementation in left/right or turn in place etc. However, there are 6 legs
a hexapod robot of the hexapod robot and each leg has 3 motors. In
other words, we need to generate 144 PWM signals to
This experimental system, which is based on the control the robot’s single movement by either software
embedded platform that we propose, implements or hardware. Instead of using software control to
subsumption system [17] on a hexapod robot. generate PWM signals for every movement every time,
Subsumption system, a behavior-based robot we create a motion table on the top of the PWM
programming method, is proposed by Rodney Brooks controller to store the 8-stage procedures’ parameter
in 1986. The suppressor node and the inhibiter node value for each basic movement. Once receiving a
inside the system can facilitate the layered and modular command instruction from the application, the PWM
behavior control design. controller then can determine the movement with the
Fig. 5(a) is a hexapod robot used in this instruction and acquire the relative parameter values
experimental system which includes all kinds of from the motion table to generate corresponding PWM
signals.
448
TABLE I References
Impact of different implementation
[1] Brooks, R. A., “A Robust Layered Control System for a
PWM-signal Software Hardware Mobile Robot”, IEEE Journal of Robotics and
generation control control Automation, March 1986, Vol. 2, No. 1, pp. 14–23.
Instruction(s) to [2] Arkin, R. C., Behavior-Based Robotics, MIT Press,
be sent through 144 1 Cambridge, MA, 1998.
bus [3] Joseph L. Jones, Anita M. Flynn, and Bruce A. Seiger,
Wasting Mobile Robots: Inspiration to Implementation, AK
processor much less Peters, Ltd, 1998.
resource [4] Rainer Bischoff, Volker Graefe, “Learning from Nature
Extra memory to Build Intelligent Autonomous Robots”, Intelligent
space no yes Robots and Systems, 2006 IEEE/RSJ International
requirement Conference on Oct. 2006, pp. 3160–3165.
[5] M. Omar Faruque Sarker, ChangHwan Kim, Seungheon
Baek, Bum-Jae You, “An IEEE-1394 Based Real-time
Even though the PWM controller must requires Robot Control System for Efficient Controlling of
extra memory space made on it for the motion table, Humanoids”, Intelligent Robots and Systems, 2006
TableTABLE I shows that the resource requirement IEEE/RSJ International Conference on Oct. 2006, pp.
impact of hardware control is less than software 1416–1421.
control. And this result also indicates good prospects [6] J. Oh, D. Hanson, W. kim, I. Han, J. Kim, and I. Park,
and development advantages: First, without numerous “Design of Android type Humanoid Robot Albert
iterative software control flow, the saving processor HUBO”, Intelligent Robots and Systems, 2006
resource can devote to some other applications’ IEEE/RSJ International Conference on Oct. 2006, pp.
1428–1433.
algorithm computing for increasing the efficacy of the
[7] Fumio Kanehiro, Yoichi Ishiwata, Hajime Saito,
processor; Secondly, a substantial bandwidth saving on Kazuhiko Akachi, Gou Miyamori, Takakatsu Isozumi,
the bus may apply to transfer the sensing data from Kenji Kaneko, Hirohisa Hirukawa, “Distributed Control
sensors to applications, especially the demanded System of Humanoid Robots based on Real-time
information which is urgent and critical to the system. Ethernet”, Intelligent Robots and Systems, 2006
IEEE/RSJ International Conference on Oct. 2006, pp.
5. Conclusions and future works 2471–2477.
[8] http://msdn2.microsoft.com/zh-tw/robotics/default.aspx
[9] http://www.irobot.com/index.cfm
In this paper, we propose an embedded computing [10] http://www.keil.com/
platform of intelligent robot which is layered [11] http://www.micrium.com/
architecture. And the platform can be used to solve the [12] http://www.oregano.at/index2.htm
fast growing of complex designing problem of the [13] Stefano Galvan, Debora Botturi, Paolo Fiorini, “FPGA-
robotic system. This platform considers the based Controller for Haptic Devices”, Intelligent Robots
functionality requirements and resources constrain of and Systems, 2006 IEEE/RSJ International Conference
generic robotic system and the tasks of robot's control on Oct. 2006, pp. 971–976.
in different abstraction layers. The platform, then, is [14] Narashiman Chakravarthy, Jizhong Xiao, “FPGA-based
Control System for Miniature Robots”, Intelligent
programmed and designed by the principle of
Robots and Systems, 2006 IEEE/RSJ International
hierarchical and modular. Conference on Oct. 2006, pp. 3399–3404.
The applications of robotic system will tend to have [15] R.David, “Grafcet :A powerful tool for specification of
diverse functionality and higher complexity in the logic controllers”, IEEE Trans. on Control Systems
future, hence, in the future work we will continue to Technology, 1995, Vol. 3, No. 3, pp. 253-268.
optimize the RTOS kernel according to the feature of [16] CHEN, Ching-Han; DAI, Jia_Hong; “Design and high-
robot's motion and intend to design an optimum on- level synthesis of discrete-event controller”, National
chip RTOS kernel [18]-[21] which is used to Conference of Automatic Control and Mechtronics
coordinate the operation of hardware and software. System, 2002, vol.1, pp. 610–615.
[17] Brooks, R. A., “How To Build Complete Creatures
Besides, we will also design specific robotic multi-
Rather Than Isolated Cognitive Simulators”,
processor [22], [23] which is depend on the nature of Architectures for Intelligence, K. VanLehn (ed),
robotic system's functionality requirements and attempt Erlbaum, Hillsdale, NJ, Fall 1989, pp. 225–239.
to make use of the architectonic property of multi- [18] H. Walder and M. Platzner, “Reconfigurable Hardware
processor to accelerate the overall robotic system's Operating Systems: From Design Concepts to
operating performance. Realizations”, Proceedings of the 3rd International
Conference on Engineering of Reconfigurable Systems
449
and Architectures (ERSA), CSREA Press, June 2003, pp.
284–287.
[19] C. Steiger, H. Walder, and M. Platzner, “Operating
Systems for Reconfigurable Embedded Platforms:
Online Scheduling of Real-time Tasks”, IEEE
Transaction on Computers, November 2004, vol. 53, no.
11, pp. 1392–1407.
[20] M. Ullmann, M. Hubne, B. Grimm, and J. Becker, “On-
Demand FPGA Run-Time System for Dynamical
Reconfiguration with Adaptive Priorities”, Field
Programmable Logic and Application: 14th International
Conference, FPL, Springer-Verlag Heidelberg, August
2004, pp. 454–463.
[21] Theelen B.D.; Verschueren A.C.; Reyes Suarez V.V.;
Stevens M.P.J.; Nunez A., “A scalable single-chip
multi-processor architecture with on-chip RTOS kernel”,
Journal of Systems Architecture, December 2003, Vol.
49, No. 12 , pp. 619–639.
[22] Becker, J., “Configurable systems-on-chip: challenges
and perspectives for industry and universities”,
International Conference on Engineering of
Reconfigurable Systems and Algorithms (ERSA), 2002,
pp.109–115.
[23] Sun, F., Ravi, S., Raghunathan, A., and Jha, N.K.,
“Custom-instruction synthesis for extensible-processor
platforms”, IEEE Transactions on Computer-Aided
Design of Integrated Circuits and Systems 23 (2), 2004,
pp. 216–228.
450
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
2. RELATED WORK In this paper the mechanical design of the modular robot,
the Octabot, a lattice homogeneous reconfigurable robot is
The following pioneering works in 2D self-reconfigurable described. The Octabot has some similarities with the Murata
robot inspire the research discussed in this section. Several system. All are homogeneous and can separate their
types of 2D modular robotic systems that can support self- locomotion and reconfiguration stages.
reconfiguration have been proposed [7-14]. These robots
usually comprise on constructing a large number of
independent modules and on controlling them. This paper
only concern about the hardware and shape aspects of self-
reconfigurable robots, not on the control aspects.
Table 2. Physical properties. The Octabot is included for comparison. where the ∇ is the gradient operator, N is the shape
Weight Dimensions( functions and ω g is the nodal generalized potential vector.
Developer Connector type
(g) cm) From this, the magnetic field intensity is given by
Fracta 1200 Ø12.5 Electro Magnets
Gear-Type
Ø6 Perm. Magnets H = H g + H Ψ = H g − ∇Ψ g (3)
Unit
Chirikjian Mech. Hooks Then the magnetic flux density vector B ( x, y , z ) is related
Crystalline 375 5×5×18 Mech. Lock to H by the constitutive law:
Yoshida 80 4×4×8 Mech. Hooks
Inou 500 8×8×7.5 Mech. Grooves B = µH = B (H) (4)
Perm. Mag. and
Hosokawa
Mech. Arms
where µ is the permeability matrix.
Kirby catoms Ø4.5 Electro Magnets Second, the vector potential results are be discussed. First,
Octabot 1500 Ø13.5 Electro Magnets the magnetic flux density is derived. As the curl of the vector
potential, the magnetic flux density is defined. Using the
element shape functions, this evaluation is performed at the
integration points:
3. ELECTROMAGNETIC FIELDS ANALYSIS AND
FORCE CALCULATION B = µ H = ∇ × N TA A e (5)
A schematic diagram of proposed system is about this where ∇ × is the curl operator, N A is the shape functions
system, there are eight e-type electromagnets. To model this and A e is the nodal magnetic vector potential.
system, the magnet field analyzed becomes a very important
issue. These reasons motivate us to calculate the magnetic Magnetic forces are also been got and are be discussed
field of the e-type electromagnet that used to achieve the below.
objective of the Octabot with motion. Thus, we begin with
the analytic approach by utilizing several useful fundamental
theorems in electromagnetic fields in this section. 3.2 Magnetic Forces
Furthermore, design of such electromagnetic devices with e-
type electromagnets as well as the design of any The force calculation can be classified into two methods.
electromagnetic devices requires the calculation of magnetic The first method contains Maxwell stress. The second is
field. based on the virtual work principle. They are so-called
Maxwell Forces and Virtual work force. They are universal
and can be used to compute the total force on either
3.1 Electromagnetic Field Evaluations ferromagnetic or current-carrying objects. In this paper,
Maxwell forces and Virtual work are discussed.
Magnetic field intensity, magnetic flux density, magnetic
forces and current densities are included in the basic On ferromagnetic regions, the Maxwell stress tensor is
magnetic analysis results [15]. The evaluations have used to determine forces. It provides a convenient way of
somewhat different between these types for magnetic scalar computing forces acting on bodies by evaluating a surface
and vector formulations. First, the scalar magnetic potential integral. This force calculation on surfaces of air material
results are be discussed. From the Electromagnetic Field elements which have a nonzero face loading specified is
Fundamentals, the quasistic laws are obtained from performed [16]. In the following numerically integrated
Maxwell’s equations by neglecting either the magnetic surface integral for the 2-D application, this method uses
induction or the electric displacement current. This reduces extrapolated field values and results:
Maxwell’s equations to:
1 T11 T12 n1
Magnetquasistatic:
FMX =
µ0 ∫ T
S
21 T22 n 2
ds (6)
452
where µ0 is the permeability of free space, only one solution for a given simulated excitation. The
1 2 1 2
Virtual work and the Maxwell stress methods give the total
T11 = B 2x − B , T12 = B x B y , T21 = B x B y , T22 = B 2y − B , force acting on a closed surface through an air region.
2 2
n1 is a component of unit normal in x-direction and n 2 is a By using auxiliary software, simulated results are
component of unit normal in y-direction. The 2-D case cans presented in Fig. 2 and Fig. 3. Fig. 2(a) shows the flux lines
extension to 3-D application. between the e-type electromagnet and the keeper. Magnetic
field intensity is shown in Fig. 2(b). Fig. 3 shows the virtual
The virtual work principle is used to calculate work force and Maxwell stress tensor force. Their ordinates
Electromagnetic nodal forces. These are two formulations are magnetic force and cross axle are the distances. Table 3 is
currently used to calculate force. One is the element shape the parameters that were used in the simulation process. From
method that is used to calculate magnetic forces. The other is the simulation results, the relationship between magnetic
the nodal perturbations method that is to calculate force and distance can be understood. Also, the force of the e-
electromagnetic forces. First, the element shape method is type electromagnet can attract each other.
been discussed. The virtual work method is used to calculate
Magnetic forces that are obtained as the derivative of the
energy versus the displacement of the movable part. This
calculation is valid for a layer of air elements surrounding a
movable part [17]. To determine the total force acting on the
body, the forces in the air layer surrounding it can be
summed. The basic equation for an approximate force of an
air material element in the s direction is:
Fs = ∫ BT
Ve
∂H
∂s
dv+ ∫
V e
(∫0
H
B T dH ) ∂∂sdv (7)
Fig. 1. (a) E-type electromagnet CAD (b) E-type electromagnet 2D section
with a keeper
In this paper, 2D model was designed to investigate the E-type core µr 1000
accuracy and nature of the solutions for force prediction. The Keeper µr 1000
e-type electromagnet CAD model is shown in Fig. 1(a). The
Coil µr 1
dimensions of the e-type electromagnet and a keeper are
represented in Fig. 1(b). Because the e-type electromagnet Turns 727
and a keeper are axial symmetric, two regions surrounding Air µr 1
the half e-type electromagnet are used to graduate the mesh
Excitation DC current applied to the coil 1.5 AMP
and ensure that the meshing of the fringing flux is modelled
well. For a 2D model, two simple and effective methods of Model Axial symmetric
calculating forces are the Virtual work and the Maxwell
stress methods [19-22]. These methods have the advantage of
453
5. HARDWARE STRUCTURE reach the firm connection through the attracting each other of
the electromagnets. Through the magnetic force of them
The hardware structure of the Octabot module must between modules, attraction force allows the robot
support the control of the actuators and a power system. The
connection, disconnection, rotation to change shape and
objectives of the design of the modular robots are to
locomotion. The basic motion required two modular robots at
minimize the number of discrete components, their overall
weight and their power consumption while preserving the least. Because the friction is neglected, the gravity center of
self-sufficiency and autonomy of the module. the two modular robots is not moved. The modular robot
system can achieve the goal of reconfiguration through
The Octabots have been proposed, the module has a motion. This goal requires the interactions of more than two
chassis and eight connecting plane are mounted on it as Octabots.
shown in Fig. 4. The self-reconfiguring modular robot is a 2- Three types of the Octabots are defined in reconfiguration
D unit; it has a special actuation system to attach/detach other procedure. The mover Octabot moves around a pivot Octabot
modular robot [23]. with respect to the rest of the reconfiguration [13]. The other
The e-type electromagnet is shown in Fig. 5 (a). It is used robots connected the pivot Octabot, fixers, keep the pivot
for the actuation of the modular robot. The main feature of Octabot in reconfiguration as the mover moves around it.
this module is for the simplicity of the actuation system. From the basic reconfiguration procedure, the pivot
Since the e-type electromagnet is directly mounted on the Octabot and all connected neighbors expect the mover
module, no additional motion system is required. The e-type Octabot actuate their e-type electromagnets with connected
electromagnet is used to supply attractive or repulsive force force (the blue regions in Fig. 9(a)). Then, the mover and
which enough to align and move the module. Each module pivot drive the electromagnets used to attract each other (the
has eight side formed by eight electromagnets and is fully red regions in Fig. 9(b)). From these basic reconfiguration
self-contained. Every module has an octagonal shape and procedures, the Octabot system can change shape to achieve
actuates by attraction of both modules. self-reconfiguration.
Each module consists of four steel ball rollers to reduce
friction. The steel ball rollers are shown in Fig. 5(b).
Simplicity is also required in circuit design. Fig. 6 shows the
block diagram of the circuit system. An onboard micro-
controller and e-type electromagnet drivers must be packed in
a limited space on the modular robot. We adopt the micro-
controller for this purpose. The program for the micro-
controller is downloaded through the burner which can be
removed after downloading. The micro-controller generates
control signals for e-type electromagnet drivers. A Darlington
pair circuit is shown in Fig. 7. It is used to drive the e-type
Fig. 4. The Octabot module
electromagnet. From Fig. 7, I is the current passing through
the e-type electromagnet, Vm is the control voltage, R is the
resistance, N1 and N2 are the transistors. When the resistance
R is fixed, changing the input voltage Vs and the control
voltage Vin can receive the characteristic curve of this circuit.
In this first prototype, we adopt a centralized control (a) (b)
method. Each module is controlled by a host PC, the micro-
controller decodes a command from the PC and generates Fig. 5. (a) Electromagnet (b) a steel ball roller
necessary control signals for the control circuits.
6. LOCOMOTION
The modular robot can rotate and move via connection
planes. By this connection between modular robots, an Fig. 6. Functional block diagram of a module
arbitrary modular robot can be realized. Two modular robots
are required to perform the simple motion included of
rotation and connection. The shape configuration of the
modular robot system is changed by means of rotation and
connection of them as shown in Fig. 8. From Fig. 8, eight
electromagnets mounted on the Octabot module that
produces two kinds of different polarity (N or S poles) rather
than permanent magnets. The magnet force between modular
robots will create a torque that pivots the two Octabots about
the connect edge and onto the next edge. The modular robots Fig. 7. Darlington pair control circuit
454
command sequence from the host PC, the modules change
their relative connections. Fig. 11 demonstrates of the self-
reconfiguration process of the actual Octabot system. From
this experiment, three modular M1, M2 and M3 are formed as
(a)
a line in Fig. 11(a). They are connected each other. At Fig.
11(b), M2 and M3 are connected together but M1 and M2
attract each other through the magnetic force. M1 revolves M2
clockwisely. At Fig. 11(c), M1 and M2 are connected together
but M2 and M3 attract each other through the magnetic force.
M3 revolves M2 clockwisely. Finally, the shape of robot
(b) system goes back to line.
Fig. 8. Concept of rotation and connection (a) 3D diagram (b) 2D diagram
Fig. 12 demonstrates the line shape to triangle shape. From
this experiment, three modular M1, M2 and M3 are formed as
a line in Fig. 12(a). They are connected each other. At Fig.
12(b), M2 and M3 are connected together but M1 and M2
attract each other through the magnetic force. M1 revolves M2
counterclockwisely. At Fig. 12(c), M1 and M2 are connected
together but M2 and M3 attract each other through the
(a)
magnetic force. M3 revolves M2 clockwisely. Finally, the
shape of robot system forms triangle shape. From experiment,
they have finished repeated rotator motion. They are proved
that only uses the single type component to make the robot
reach the movement and connected characteristics.
455
[11] Yoshida, E., S. Murata, S. Kokaji, K. Tomita and H. Kurokawa,”
Micro self-reconfigurable robotic system using shape memory alloy,”
Distributed Autonomous Robotic Systems 4, Knoxville, USA, pp. 145–
M1 M2 M3 154, 2000.
[12] Inou, N., K. Minami and M. Koseki, ”Group robots forming a
mechanical structure—Development of slide motion mechanism and
estimation of energy consumption of the structural formation,”
Proceedings of IEEE International Symposium on Computational
Intelligence in Robotics and Automation (CIRA), 2003.
(c) [13] Kirby, B., B. Aksak, J. Hoburg, T. Mowry and P. Pillai, “ A Modular
Fig. 11. The experimental result 1: line to line. Robotic System Using Magnetic Force Effectors,” Proceedings of the
2007 IEEE/RSJ Intl. Conference of Intelligent Robots and Systems
(IROS), 2007.
[14] Hosokawa, K., T. Tsujimori, T. Fujii, H. Kaetsu, H. Asama, Y. Kuroda
M1 M2 M3 M2 and I. Endo, ”Self-organizing collective robots with morphogenesis in a
M1 M3 vertical plane,” IEEE International Conference on Robotics and
Automation (ICRA). Leuven, Belgium, pp. 2858–2863, 1998.
[15] Haus, H. A. and J. R. Melcher, Electromagnetic Fields and Energy.
Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1996.
[16] Moon, F. C. ,Magneto-Solid Mechanics, New York, John Wiley and
Sons., 1984.
(a) (b)
[17] Coulomb, J. L., and G. Meunier, ”Finite Element Implementation of
Virtual Work Principle for Magnetic for Electric Force and Torque
Calculation,” IEEE Transactions on Magnetics, vol. Mag-2D, no. 5,
pp. 1894-1896, 1984.
M2 [18] Gyimesi, M., I. Avdeev and D. Ostergaard,”Finite Element Simulation
M3 of Micro Electro Mechanical Systems (MEMS) by Strongly Coupled
M1 Electro Mechanical Transducers,” IEEE Transactions on Magnetics,
vol. 40, no. 2, pp. 557–560, 2004.
[19] Edwards, J. D. and E. M. Freeman, MagNet 5.1 User Guid., Infolytica
Corporation, 1995.
(e) [20] Carpenter, C. J.,”Surface integral methods of calculating forces on
Fig. 12. The experimental result 2: line to triangle. magnetized iron parts,” Proc. IEE, 107C, pp.19-28, 1960.
[21] Edwards, J. D. , Electrical Machines and Drives,” Macmillan, 1992.
[22] ANSYS 9.OA1, Electromagnetic Field Analysis Guide. 001247. 4th
REFERENCES Edition. SAS IP, Inc., 1999.
[1] Østergaard, E. H., K. Kassow, R. Beck and H. H. Lund,” Design of the [23] Shiu, M. C., H. T. Lee, F. L. Lian and L. C. Fu, ”Magnetic Force
ATRON Lattice-based Self-reconfigurable Robot,” Auton Robot, vol. Analysis for the Actuation Design of 2D Rotational Modular Robots,”
21, pp. 165-183, 2006. accepted by the 33rd Annual Conference of the IEEE Industrial
[2] Akiya, K., H. Kurokawa, E. Yoshida, S. Murata, K. Tomita and S. Electronics Society, pp. 2236-2241, Nov. 5-8, Taipei, Taiwan, 2007.
Kokaji, ”Automatic Locomotion Design and Experiments for a
Modular Robotic System,” IEEE/ASME Trans. Mechatronics, vol.10,
pp. 314-325, 2005.
[3] Fukuda, T., M. Buss, H. Hosokai and Y. Kawauchi,”Cell structured
robotic system CEBOT (Control, planning and communication
methods,” Intelligent Autonomous Systems, vol. 2, pp.661-671, 1989.
[4] Fukuda, T., S. Nakagawa, Y. Kawauchi and M. Buss,”Structure
decision method for self organising robots based on cell structures
CEBOT,” IEEE International Conference on Robotics and Automation
(ICRA), Scottsdale, AZ, USA, vol. 2, pp. 695-700, 1989.
[5] Fukuda, T., Y. Kawauchi and H. Asama,” Analysis and evaluation of
cellular robotics (CEBOT) as a distributed intelligent system by
communication information amount,” Proc. of IEEE/RSJ International
Conference on Intelligent Robots and Systems (IROS), pp. 827-834,
1990.
[6] Fukuda, T., Y. Kawauchi and H. Asama, “Analysis and evaluation of
cellular robotics (CEBOT) as a distributed intelligent system by
communication information amount,” Proc. of IEEE/RSJ International
Conference on Intelligent Robots and Systems (IROS), pp. 827-834,
1990.
[7] Murata, S., H. Kurokawa and S. Kokaji, “Self-assembling machine,”
Proceedings of IEEE Int. Conf. on Robotics & Automation (ICRA’94).
San Diego, California, USA, pp. 441–448, 1994.
[8] Tokashiki, H., H. Amagai, S, Endo, K. Yamada and J. Kelly,
“Development of a transformable mobile robot composed of
homogenous gear-type units,” Proceedings of the 2003 IEEE/RSJ Intl.
Conference of Intelligent Robots and Systems (IROS), pp. 1602–1607,
2003.
[9] Chirikjian, G.,”Kinematics of a metamorphic robotic system,”
Proceedings of IEEE Intl. Conf. on Robotics and Automation, pp. 449–
455, 1994.
[10] Rus, D. and M. Vona ,”Crystalline Robots: Self-reconfiguration with
compressible unit modules,” Autonomous Robots, vol. 10(1), pp. 107–
124, 2001.
456
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Ei = ∑∑ cos(θ
x =1 y =1
i
( x, y )
), (1)
Table 1 Interface for user preference selection Fig.2 Zooming center candidates and the θ definition.
487
edge map extraction by using Sobel operator and After the above filtering process on D(x,y), we
binarization process, 2) edge histogramming of the compute MapOutput-D as follows:
left/right half images by horizontal projection, 3) ⎧1, if _ D( x, y ) = 4
deriving the possible caption regions by analyzing MapOutput − D ( x, y ) = ⎨ (3)
these two histograms, 4) if the proportion of the ⎩ 0, otherwise
number of edge points in the candidate region is higher
than a threshold, the caption is then identified. Step 3: Luminance regulation [7, 8]
This process is intended to remove smooth back-
ground areas (in terms of local graylevel variance) that
3.3 Explosion detection
are falsely classified as skin-color areas by assuming
The scene of explosion is often the focus of
that the human face will not be so smooth in graylevels.
attention in watching movie videos. For video clips of
explosion, the intensity is substantially raised and the
Step 4: Connected component labeling
number of flame-color pixels increases. Therefore, we
This is a popular procedure to label connected
detect the explosion frames by analyzing intensities
regions and calculate their region sizes. Regions of
and flame colors in each frame. This is achieved by
small size will be discarded. On the other hand,
making statistics (or, training) of flame colors in
regions of too large size will be undergone a re-check
advance. Generally, the flame colors are distributed
on edge response to possibly split the regions.
around golden (237.5 < R < 246.5) ∩ (245 < G < 255)
∩ (182 < B <212) and reddish orange (234.5 < R <
Step 5: Shape parameter estimation
243.5) ∩ (177.5 < G < 255) ∩ (64 < B < 124).
We evaluate the shape of each labeled area by
On detection, the average luminance intensity L(i)
fitting it to an elliptic model. Model parameters [10]
and the histogram H (i ) of flame colors are made for
include: the long axis (a), the short axis (b), orientation
each frame i. Identify the interval from a to b, between of a (θ), and the center of mass (xc, yc).
which the mean and variance of H (i ) and the mean of
L(i) are larger than some determined thresholds. Step 6: Region growing
This step is designed to compensate the darker
3.4 Human face detection part of the human face that is influenced by bad
Our method of face detection [7-8] is based on lighting. We use the labeled area as seeds for region
skin-color detection, followed by region analysis. growing. The growing condition is based on the
Step 1: Skin-color detection similarity of (Cr,Cb) and the examination of ellipse
We combine two detection algorithms based on shape. Unlabeled pixels neighboring to the grew
YCbCr and RGB color spaces. In the YCbCr color region are checked and selected with a cost function
space, the range of skin colors is Cr ∈ [133, 173], based on (Cr,Cb) similarity. After growth, the (Cr,Cb)
Cb ∈ [77, 127]. In the RGB color space, two values and the shape parameters are re-computed.
conditions proposed in [9] are adopted. After skin- Next, compute the mismatch value ε[7] of the
color testing, a binary image can be obtained, denoted estimated shape, as in Eq.(4).
as Mapskin-color(x,y), x=0,1,…,IH-1, y=0,1,…,IW-1, where
IH and IW are image height and width, respectively. ∑ (1 − b( x, y)) + ( ∑) b(x, y )
( x , y )∈E
ε= x , y ∈L − E
(4)
Step 2: Density regulation [7,8] ∑1
( x , y )∈E
In this step, the dilation and erosion operations
based on a density map are applied to eliminate noises ⎧1 , if ( x, y ) ∈ L
where b ( x, y ) = ⎨ .
and get smooth areas. The density map D(x,y) is ⎩0 , otherwise
calculated from the skin-color map Mapskin-color by Eq.(4) represents the sum of the number of “noise”
1 1
D( x, y ) = ∑∑ Map skin −color (2 x + i,2 y + j ) (2) points of a grew region L that are outside the ellipse
i =0 j =0 and the number of “hole” pixels of the ellipse E that do
where D is of dimensions IH/2×IW/2. Obviously, D’s not belong to L (see Fig.3) .
value is from 0 to 4. The density map is processed with Region growing is stopped by examining the
erosion and dilation operations, which modify D(x,y) relationship between current and previous ε. If ε is
by sliding a 3×3 window and checking the numbers of decreased and the estimated elliptic shape is reasonable
D=4, 0<D<4, and D=0 pixels within the window. (e.g., 0.3 < b / a < 0.95 and θ > 25o ), then return to
recalculate the elliptic parameters for next iteration;
488
otherwise, region growing process is terminated. At the second stage, we train the third classifier
SVMindoor-outdoor, of which the input features are the
distances of the feature vector of each block to the
SVMcolor and SVMtexture hyperplanes.
489
where G is the set of preferences selected by the user. 4.4 Optimal video summarization
Obviously, the confidence is weighted by the A content cost function considering the above
information quantity. Hence, SR in Eq.(5) is three mentioned factors is defined:
considered as the average preference in a shot. Shots NS
HDi (k ) = NS
Ni
N F j =1 subject to ∑k =T (14)
1 128 i =1
∑ H [ m] − H [ m] ,
i
diff ( H ai , H bi ) = i i
(7) where i is the shot number, Ni is the total number of
2 × I H × IW
a b
m =1
frames in the i-th shot, T is the frame constraint
where i is the shot number; k is the sampling rate; j is (related to the time constraint). The optimal
the frame number; NF is the total number of frames in a K * = {k i* i = 1,.., N s } can be solved via the Lagrangian
shot; IH×IW is the frame dimension; H is the 128-D multiplier method [14]. Note that the constraint of
histogram on HIS color space, where the hue, integer k i* makes Eq.(14) hard to be achieved. Hence,
saturation, and intensity are divided into 8, 4, 4 bins,
respectively. We also consider the influence of a tolerance of 1% error is allowed to lead to a
subsampling on relevance to user preference. Denote convergence in our iterative process.
FPj = [fp1, fp2, …, fpc]T as the relevance vector for the
j-th frame, where fpx=1 (relevant) or 0 (irrelevant). 5. Experimental results and discussions
Hence if the i-th shot is subsampled by k, its relevance
distortion can be computed by: In order to evaluate the proposed video
1 N summarization system, we collect 5 movies and 3
∑ sim(FPji , FPki×⎣ j / k ⎦ )
F
490
testees. Each movie is tested two times for each testee gains a MOS of about 4.0, and the comprehension
(hence each movie is tested 10 times). According to about the video contents is good enough.
the results in Table 2, the average score is near 4.0,
implying a satisfactory summary. For the accuracy of 7. References
the summarized interval, each number in parentheses
denotes the number of tests that lead to the indicated [1] Yu-Fei Ma and Hong-Jiang Zhang, “A model of motion
accuracy. It is seen that an error of about 1% is for attention for video skimming,” Proc. of IEEE Int’l
both movies 1 and 4, while the errors for movies 2, 3 Conf. on Image Process., Vol. 1, pp. I-129 -I-132, 2002.
and 5 are higher, but still below 8%. The reason for [2] Wen-Nung Lie and Chun-Ming Lai, “News Video
larger errors is because the total number of frames that Summarization Based On Spatial And Motion Feature
meet user preferences is less than the time constraint Analysis,” Proc. Of Pacific-Rim Conf. on Multimedia
(PCM’04), Tokyo, Japan, Nov. 2004.
(e.g., -7.2% and -39.8%). The other reason is that k i* is [3] Kadir A. Peker and Ajay Divakaran, “An extended
constrained to be integer (e.g., the case of +6.6%). framework for adaptive playback-based video
summarization,” Proc. of SPIE, Vol. 5242, Internet
Table 2 MOS for subject tests and accuracy in Multimedia Management Systems IV, pp.26-33, 2003.
summarized time interval. [4] Ahmet Ekin, A. Murat Tekalp and Rajiv Mehrotra,
“Automatic soccer video analysis and summarization,”
Movie 1 Movie 2 Movie 3 Movie 4 Movie 5 IEEE Trans. on Image Process., Vol. 12, No. 7, pp.
Average 796-807, 2003.
3.8 3.9 4.16 3 3.8
MOS [5] Pedro Miguel Fonseca and Fernando Pereira,
+3.3% “Automatic video summarization based on MPEG-7
+0.8% +6.6% (8) +2.9%
Precision
(8) (9) -0.6% +1.3%( (9)
descriptions,” Signal Processing: Image Comm., Vol.
in time 19, No. 8, pp. 685-699, Sept. 2004.
-0.6% -0.9% (1) 10) -39.8%
interval [6] Belle L. Tseng, Ching-Yung Lin and John R.
(2) (1) -7.2% (1)
(1) Smith, ”Using MPEG-7 and MPEG-21 for
personalization video,” IEEE Multimedia, Vol. 11, No.
Experiments are also conducted with different ρ’s 1, pp. 42-52, Jan.-Mar., 2004.
for movie 1. For ρ=0, only the shots of high relevance [7] Wei Fang and Li Pengfei, “A novel face segmentation
algorithm,” Proc. Of Int’l Conf. on Info-tech and Info-
will be played. For ρ=1, shots adjacent to those of high net (ICII 2001), Vol. 3, pp. 550-556, Nov. 2001.
relevance will be also considered in the summarized [8] Douglas Chai and King N. Ngan, “Locating facial
video. The advantage is that viewers will be able to region of a head-and shoulders color image,” Proc. of
capture more contents of the video (e.g., see a evildoer IEEE Int’l Conf. on Automatic Face and Gesture
that causes the explosion). With ρ=2 or 3, more Recognition, pp. 124-149, April 1998.
comprehensions about the video content can be [9] P. Peer, J. Kovace and F. Solina, “Human skin colour
achieved (due to the inclusion of more shots). clustering for face detection,” EUROCON 2003-Int’l
Conf. on Computer as a Tool. Sep. 2003.
[10] A. K. Jain, Fundamentals of Digital Image Processing,
6. Conclusion Prentice Hall, 1989.
[11] Martin Szummer and Rosalind W. Picard, “Indoor-
A personalized video summarization system is outdoor image classification,” Proc. Of IEEE Int’l
proposed in this paper. That means the video can be Workshop on Content-Based Access of Image and
summarized according to each viewer’s preference. To Video Database, pp.42-51, Jan. 1998.
fit user’s preference, semantic features of each frame [12] Navid Serrano, Andreas Savakis and Jiebo Luo, “A
are extracted so that its relevance to user preference computationally efficient approach to indoor/outdoor
can be determined. Users can be also capable of setting scene classification,” Proc. Of Int’l Conf. on Pattern
Recognition, Vol. 4, pp.146-149, 2002.
time or frame number constraint for video summary
[13] Zhu Li, Guido M. Schuster, Aggelos K. Katsaggelos,
via a friendly interface. and Bhavan Gandhi, “Rate-distortion optimal video
To summarize the video efficiently and summarization: a dynamic programming solution,”
effectively, a constrained optimization problem Proc. of Int’l Conf. on Acoustics, Speech, and Signal
(subject to time constraint and video smoothness) is Process. (ICASSP '04), Vol. 3, pp.III-457-60, 2004.
solved to determine the non-uniform sampling rates for [14] Kuo-Chiang Hsu, MPEG-4 Video Summarization
shots relevant to user preferences. Subjective tests Based on Semantic Feature Analysis and User
show that the detection rate of semantic features is Preference, Master thesis, National Chung Cheng
more than 95%, the quality of the summarized video University, Chia-Yi, Taiwan, July 2005.
491
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
458
holder was then placed into the valve solution.
cavity in the upper pump layer.
bis- (trifluoromethanesulfonyl)imide
Top layer
(LiTFSI, Aldrich). Approximately Inlet Holder for
0.5% water was also added to this check valve
459
mechanical force during actuation.
Inlet Anchoring
points The actuator pump produced highest
Outlet
flow rate initially which decreased
Top PMMA
layer PPy gradually to reach equilibrium within
actuator
10 minutes. The exact reason for this
Bottom layer
observation was not clear but this is a
common feature of PPy based
Figure 4: A photograph of the PPy based actuators. It was believed to be caused
microfluidic pump. by internal restructuring of the polymer
matrix that limits the ion transportation
MEASUREMENTS
to result in a reduced bending
To validate the pump performance, the movement. In light of this, it was
inlet of the pump was connected using decided that a 10 minute warm up time
silicone tubing (ID=1.5mm, should be allowed for all future
OD=1.9mm) to a reservoir that pumping experiments.
contained water. The outlet was
connected to a collecting container Check valve and pump performance
situated on a weighing balance to The check valves were configured in
monitor the quantity of water pumped the pump such that it was naturally in
out into the collector. A potentiostat the ‘closed’ position. The pressure
(Solartron, model 1285A) was used to generated by the actuator diaphragm
drive the PPy actuator using a dc caused the elastic side arm(s) to stretch
square-wave voltage of ±1.5V (vs SCE or bend depending on the design so
reference electrode). A typical pump that liquid could go through the gap.
stroke time of 2s involved switching Therefore the nature of the valve
the working electrode voltage to material (e.g. the adhesiveness of the
+1.5V and held for 1 second; then valve material to the contact surface),
switch to -1.5V and held for 1 second. the size of the contact area and the
The pumping volume or flow rate was thickness of the side arm determines
determined by the weight of water the force required for the valve
delivered during the pumping operation. As the PPy membrane can
experiments. only generate small bending force, fine
tuning of these parameters was crucial
RESULT AND DISCUSSION
for the successful operation of the PPy
Ppy actuator diaphragm pump.
The performance of the Ppy membrane Figure 2 (b) and (c) shows two typical
is responsible for the efficiency of the check valve designs used in this study.
actuator pump. In this Ppy/PDMS The first design (Figure 2c) had only
diaphragm, Ppy was grown on each one side arm and would work as a flap
side of the PVDF substrate. Each side type valve. This design (diameter
of the PPy membrane was connected to 2.4mm, height 0.5mm) required
the potentiostat such that one side minimal force to push open and was
worked as the working electrode and expected to give maximum pumping
the other side as the counter electrode. efficiency. However, it did not provide
When electrical voltage was applied, sufficient mechanical stability to stop
one side would swell while the backward flow during delivery
simultaneously the other side would mode.
contract to produce maximum
460
A second design was a valve with two thus less volume change in the pump
arms which had diameter of 2mm, chamber to produce a slow flow rate,
height of 0.5mm with side arms length whereas a slow switching induces large
of 1.5mm (see Figure 2b). actuation and large volume change to
produce a higher flow rate. Figure 5(b)
ͣ͢ shows that a limiting flow rate of 52
Ϊ ͮ ͪͥͥͨ͟͡Ω ͞ ͧͥͨ͟͢͡
͢͡ µL/min was achieved at and above a
ΦΞ ΡΚΟΘ ΧΠΝΦΞ Ζ ͠µL
ͣ
ͮ ͪͪͤͥ͟͡
ͩ stroke time of 6 s. Conversely,
ͧ switching the PPy membrane faster
ͥ than 1Hz does not produce significant
ͣ
(a)
enough force to deliver sample through
͡
͡ ͣ ͥ ͧ ͩ ͢͡ ͣ͢ ͥ͢
the valves and limits the lower
΄ΥΣΠΜΖ ΥΚΞΖ ͠Τ achievable flow rate. Linear regression
ͧ͡ from Figure 5 (a) yields a flow rate of
18 µL/min for a stroke time of 1s
Pumping rate ͙ µ ͽ͠min͚
ͦ͡
which would be approaching the lower
ͥ͡
limit of this device. The back pressure
ͤ͡ generated by this actuator pump was
(b) determined by the height of water it
ͣ͡
͡ ͣ ͥ ͧ ͩ ͢͡ ͣ͢ ͥ͢
could pump up a vertical tube and was
Stroke time /s found to be 11 mbar.
Figure 5: Measured characteristics of PPy
micropump: (a) pumping volume Power consumption
(µL/stroke) as a function of stroke time. (b)
flow rate (µL/min) as a function of stroke The operational cost of this device is
time. The error bars represent standard very low compared to conventional
deviation from 5 repeats in both cases. solenoid or oscillator based
micropumps. Figure 6 is the current
This improved design increased the profile obtained during a 2 minute
force required to stretch and open the pumping operation from time zero. The
valve which stopped the back flow power consumption calculated was 55
from occurring. However, a significant mWcm2 for a 4s stroke time operated
reduction of pumping volume or flow at ±1.5V. Since the stroke time is
rate was observed as expected as the linearly proportional to the degree of
valve movement was much restricted. PPy membrane actuation (or bending),
The plot of stroke time vs volume it is reasonable to deduce that the
delivered by the pump presented in power consumption is somehow
Figure 5(a) showed good linearity (R2 related to the stroke time. Hence,
= 0.993), which suggested that a reducing the stroke time (and also the
consistent pump action was achieved. flow rate) would further reduce the
The data clearly indicates that the power consumption reported above.
amount of deformation of PPy The energy required to induce the
membrane is proportional to the time at electrochemical reaction of the Ppy
which the driving voltage is applied, membrane depends on the amount of
and the pump flow rate can be Ppy molecule present on the membrane.
controlled by varying the stroke time A thick Ppy coating would consume
which is the switching frequency of the more energy but it would exert bigger
input electrical potentials (i.e. actuation force than a thinner one; hence to
frequency). Fast switching (short maintain the mechanical properties and
stroke time) induces less actuation and to achieve low energy consumption
461
one can reduce the size of the Ppy deployment as it can operate for long
membrane if the demand for faster period of time (38 hrs continuous
flow rate is not paramount. running) just from a standard 1.5V AA
battery.
80.00
CONCLUSIONS
60.00 A self-priming micropump based on
40.00 PPy actuator has been fabricated with
I/ mA cm^2
462
Resonantly driven piezoelectric 866, 2007.
micropump fabrication of a micropump [11] K. Yamato, K. Kaneto, Tubular
having high power density, linear actuators using conducting
Mechatronics, 9, 687-702, 1999. polymer, polypyrrole, Analytica
[8] J. Darabi, M. Rada, M. Ohadi, J. Chimica Acta, 568, pp. 133-137, 2006.
Lawler, Design, Fabrication, and [12] R. Zengerle, S. Kluge, M. Richter,
Testing of an Electrohydrodynamic A Bidirectional Silicon Micropump, in:
Ion-Drag Micropump, J. of Proceedings of MEMS ’95,
Microelectomechanical systems, 11(6), Amsterdam, The Netherlands, 29 Jan.-
pp. 684-690, 2002. 2 Feb. 1995, pp. 19-24.
[9] J. Munyan, H. Fuentes, M. Draper, [13] Y. Wu, D. Zhou, G. M. Spinks, P.
R. Kelly, A. Woolley, Electrically C. Innis, W. M. Megill and G. G.
actuated, pressure-driven microfluidic Wallace, TITAN: A Conducting
pumps, Lab on a chip, 3, pp. 217-220, Polymer Based Microfluidic Pump,
2003. Smart Materials and Structures, 14,
[10] T. Hensen, K. West, O. Hassager, 1511-1516(2005).
N. Larsen, An all-polymer micropump [14] S. Hara, T. Zama, W. Takashima,
based on the conductive polymer K. Kaneto, “TFSI-dopped Polypyrrole
poly(3,4-ethylenedioxythiophene) and actuator with 26% strain”, J. Materials
a polyurethane channel system, J. Chemistry, Vol. 14, P. 1516-1517, 2004.
Micromech. Microeng., 17, pp. 860-
463
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Calibration and Data Integration of Multiple Optical Flow Sensors for Mobile
Robot Localization
465
where I is the identity matrix and T(Δθij) is the The pattern εij of can be used to access if the
transformation matrix as, nominal parameters is correct or if the sensor reading
⎡ cos(Δθij ) − sin(Δθij ) ⎤ (8) is reliable. Define the error vector ε as the collection of
T(Δθij ) = ⎢ ⎥
⎣ sin(Δθij ) cos(Δθij ) ⎦ N(N-1)/2 errors εij,
uuuuur T
Suppose the orientation of the vector Oi O j to the ε = ⎡ε12 ε13 L ε1N ε 23 ε 34 L ε ( N −1) N ⎤ = B ⋅ X (18)
⎣ ⎦
global coordinate is βij, the movement represented by where B is a matrix of dimension N(N-1)/2×2N shown
the global coordinate (denoted as Δcij) is in (19) at the bottom of this page. X is defined as
sensor measurements vector as
Δcij = T( βij )Δc′ij (9)
X = [ x1 y1 x2 y 2 L x N y N ]T whose dimension is
Therefore, the robot position and orientation relative to
2N×1. Moreover, denoting the orientation of the sensor
the global coordinate computed from the sensor pair i
i to the robot coordinate is φi and for sensor j is φj, the
and j at time k+1 are,
angle σij can be obtained from σij = φi −βij and similarly,
θ (k + 1) = θ (k ) + Δθij (10)
σji = φj −βij.
c(k + 1) = c(k ) + T(θ (k ))Δcij (11)
For N sensors, there will be C =N(N-1)/2 solutions for
N
2
2 N −1 N
c(k + 1) = c( k ) + T(θ ( k ))∑ ∑ Δcij (13)
N ( N − 1) i =1 j =i +1
(a) (b)
Figure 3. The geometric relations of angles:
3. The rigid-body constraints and
(a) acute angle case. (b) obtuse angle case
geometric relations among sensors
Equation (18) can be used to compute the
Since all sensors are fixed relative to each other, the
parameters in B by minimizing ε. B contains the
measurements must obey the rigid body constraint.
angular parameters of sensors, i.e. all φi’s and βij’s. The
This constraint can be used to perform calibration as
number of φi is N and the number of βij is N(N-1)/2
well as access the correctness of measurement. For
rigid body motion, the constraint between any two (since βji = βij + π and there are no βii’s). However, all
sensors according to Figure 1 is φi’s are independent to each other but βij’s are not. In
li cos(αi +σij) = lj cos(αj +σji) (14) other words, there are relations among βij’s which
or should be satisfied when performing the minimization
li cos(αi) cos(σij)− li sin(αi) sin(σij) to find the parameters. To begin with, define the
coordinate of sensor 1 as the robot coordinate and the
= lj cos(αj) cos(σji)− lj sin(αj) sin(σji). (15)
This means that the projections of the sensor center of sensor 1 as the robot center, i.e. φ1 = 0 and the
measurements onto the joining line in Figure 1 should position of sensor 1 is (0,0). Figure 3 shows the
be the same. For N sensors, there will be N(N-1)/2 relations among sensor number 1, i, i+1, j-1 and j.
constraint equations. Since li cos(αi) = xi and li sin(αi) There are two cases when computing βij.
In Figure 3, suppose that Pij O j is perpendicular to
= yi , where xi and yi are the sensor measurements
during each sampling interval on the sensor coordinate. O1Oi and the point Pij is a point on line O1Oi . In the
The equation becomes first case (Figure 3(a)), ∠PijOiOj is an acute angle and
xi cos(σij)− yi sin(σij) = x j cos(σji) − y j sin(σji) (16) it is easy to see that the angle βij = β1i +
(π−∠PijOiOj). Let ψ a ,b ,c be the notation of angle
and the equation error is defined as
εij = xi cos(σij)− yi sin(σij)− x j cos(σji)+ y j sin(σji) (17) ∠OaObOc. and Dij the length of Oi O j . We can see that
⎢ M M M M M M M M M M M ⎥
⎢ ⎥
⎣ 0 0 0 0 0 0 L cos(σ ( N −1) N ) − sin(σ ( N −1) N ) − cos(σ N ( N −1) ) sin(σ N ( N −1) ) ⎦⎥
466
the length of Pij O j is equal to D1jsin( ψ i ,1, j ) and the Equivalently, we can have
Dij = Gij ⋅ D12
length of Pij Oi is equal to D1i− D1jcos( ψ i ,1, j ). As a (27)
where
result, the angle ∠PijOiOj is
D1 j sin(ψ i ,1, j ) ⎧ sin( β 2 j − β12 )
(20) ⎪ , when i = 1
∠Pij Oi O j = arctan( )
D1i − D1 j cos(ψ i ,1, j ) ⎪ sin( β 2 j − β1 j )
Gij = ⎨
and according to law of cosine, ⎪ sin( β1 j − β1i ) sin( β 2 j − β12 ) , otherwise
sin(ψ 1,i +1,i ) sin(ψ 1,i + 2,i +1 ) L sin(ψ 1, j , j −1 )
⎪ sin( β ij − β1i ) sin( β 2 j − β1 j )
⎩
D1i = D1 j (21)
sin(ψ 1,i ,i +1 ) sin(ψ 1,i +1,i + 2 ) L sin(ψ 1, j −1, j ) As the result, the position of each sensor relative to
Hence, sensor 1 can derive from D12 and βij. These geographic
⎛ ⎞ relations are fundamental to the calibration as well as
⎜ ⎟ consistency check algorithm described in the following
sin( ψ )
∠Pij Oi O j = arctan ⎜ i ,1, j ⎟
⎜ sin(ψ 1,i +1,i ) sin(ψ 1,i + 2,i +1 ) L sin(ψ 1, j , j −1 ) ⎟ context.
⎜⎜ − cos(ψ i ,1, j ) ⎟
sin(ψ ) sin(ψ ) L sin( ψ ) ⎟
⎝ 1,i ,i +1 1,i +1,i + 2 1, j −1, j ⎠
(22) 4. The Calibration method
In the second case (Figure 3(b)), the angle ∠PijOiOj is
an obtuse angle and βij = β1i + ∠PijOiOj. Similarly, we The objective of calibration is to compute the
can arrive at the following equation. parameters of the sensor configuration. Using (18) and
⎛ ⎞ (24), one can determine the angular parameters (φi’s
⎜
sin(ψ i ,1, j )
⎟ and βij’s) and subsequently, the distance among
∠Pij Oi O j = arctan ⎜ ⎟
⎜ sin(ψ 1,i +1,i ) sin(ψ 1,i + 2,i +1 )L sin(ψ 1, j , j −1 ) ⎟ sensors can be computed from (27) given one distance
⎜⎜ cos(ψ i ,1, j ) − ⎟
⎝ sin(ψ 1,i ,i +1 ) sin(ψ 1,i +1,i + 2 )L sin(ψ 1, j −1, j ) ⎟⎠ measurement between a pair of sensors. In other words,
(23) if that distance measurement and all sensor readings
are accurate, it is able to perform self-calibration
Further, it is straightforward to show that that ψ i ,1, j
without using external reference measurements.
=β1j−β1i, ψ 1,i ,i +1 = π−(βii+1−β1i), ψ 1,i +1,i =βii+1−β1i+1, Suppose M sets of measurements are collected by
ψ 1,i +1,i + 2 = βi+1i+2−β1i+1, ψ 1,i + 2,i +1 =π−(βi+1 −β1 moving the sensor module and each set is denoted as
i+2 i+2) ,
the following vector,
and so on. Therefore, the angle βij can be rewritten as, T
X m = ⎡⎣ x1,m y1,m x2,m y2,m L xN ,m yN ,m ⎤⎦ , m = 1, 2,L, M
⎧ sin( β1 j − β1i )
⎪ β1i + π − arctan( ), case (a) The trajectory of sensor motion shall be designed such
⎪ Sij − cos( β1 j − β1i ) (24)
β ij = ⎨ that the vector Xm, m=1 to M spans the remaining
⎪ β + arctan( sin( β 1j − β 1i ) subspace (a condition similar to persistence excitation).
), case (b)
⎪ 1i cos( β − β )
1i − S ij As described in Section 3, the independent angular
⎩ 1j
Given the angle βij’s, there are also geometry To solve this unconstraint optimization problem, we
relations among Dij’s. In fact, there is only one degree can directly use Newton-Raphson method.
of freedom left for Dij’s. To see this, according to law As mentioned above, the distance among sensors
of cosine, can be computed from (27) if D12 is known. It is also
sin(ψ 1,2, j ) likely to calibrate D12 if an external angular
D1 j = D12 . (25)
sin(ψ 1, j ,2 ) measurement is available. To see this, substituting (27)
Then, into (4), we have,
sin(ψ i ,1, j ) sin(ψ i ,1, j ) sin(ψ 1,2, j ) (26)
Dij = D1j = D12
sin(ψ 1,i , j ) sin(ψ 1,i , j ) sin(ψ 1, j ,2 )
467
li2 + l 2j − 2 cos(γ ij )lil j different kinds of strategies to access the reliability.
Δθij = sign(l j sin(α j + σ ij ) − li sin(α i + σ ij )) For example, if one of the sensors gives an incorrect
D12Gij
reading, we can find it out by removing it from X and
At each sample instant k, define a new variable uk as,
the remaining sub-vector should be in the null space.
N −1 N ⎛ l 2 + l 2 − 2 cos(γ )l l
2 Suppose the total number of unreliable sensors moved
∑ ∑⎜
i ,k j ,k ij i , k j , k
uk =
N ( N − 1) i =1 j =i +1 ⎜ Gij every time is Q. The measurement vector at time t is
⎝
⎞ denoted as Xt. The procedure of finding out these Q
⋅ sign(l j ,k sin(α j ,k + σ ij ) − li ,k sin(α i,k + σ ij )) ⎟
⎠ sensors at each time that data coming is defined as
As the result, the product of uk and inverse of D12 is following steps:
equal to average of the orientation estimation of each 1) At beginning, the total number of sensors of Xt is N.
sensor pair. More precisely, 2) Ignore the measurements of one of these sensors
2 N −1 N and redefine a measurement vector, Xr,t, of
uk ⋅ D12−1 = ∑ ∑ Δθij ,k = Δθreal ,k
N ( N − 1) i =1 j =i +1
(29) remained sensors.
3) Find the constraint matrix, Br, of remained sensors
where Δθ real ,k denotes the real rotation angle at each and the null space of Br, N(Br).
sample. By collecting B sets of data, we can set up the 4) Find the orthogonal projection vector X̂ r,t of Xr,t
equation as: onto N(Br).
u ⋅ D12−1 = θ real (30) 5) Calculate the distance from Xr,t to X̂ r,t
where θreal = [Δθ real ,1 Δθ real ,2 L Δθreal , B ]T is desired
6) Repeat step 2 to step 5 until each sensor have been
rotation vector and u = [u1 u2 L uB ]T . Finally, the ignored once. Then compare all of distances that
least-squares method can be used to solve this equation, are collected in step 5 and find the minimum one.
as 7) Remove the sensor that was ignored corresponding
(31) to minimum distance in step 6. If the total number
D = 1
12
(uT u) −1 uT ⋅θ real of removed sensors is equal to Q, then stop. Else,
go to step 2.
5. Consistence check strategy After these steps, we can obtain the (N −Q) reliable
sensors at time t. And Xr,t can be used to compute the
The performance of optical flow sensor depends on movement according to (1) − (11) and estimate the
the condition of sensing surface. Highly reflective overall position and orientation by computing the mean
surface or a sudden change of height might disturb the of these movements as (12) and (13).
sensor measurements seriously. Each pair of sensors
can get a estimation of position and orientation 6. Simulation results
according to (1) to (11). For N sensors, there will be
N(N-1)/2 estimates. In order to reduce the uncertainty The proposed methods are demonstrated by
caused by the non-systematic error, the unreliable simulation using Matlab. Eight optical-flow sensors are
sensor measurements shall be removed from the update. located at the corners of an octagon. The diagonal
The remaining measurements can used to update the distance of the octagon is 5 cm, and the relative
position and orientation of the robot as described orientation between two adjoining sensors is 45
previously in (12) and (13). degrees. 3% random errors are added to the angles and
From (18), if there is no error in the sensor distances to represent the uncertainty of hardware
measurements, ε should be zero. This means that the installation. Further, the sensor measurements are
correct measurement vector X should lie in the null perturbed by a 5% random noise at each sample. The
space of the matrix B (denoted as N(B)). Therefore, for sampling rate is set to be 50 samples/sec.
any vector X not in N(B), the orthogonal projection of First, 1000 samples of data are simulated to calibrate
X onto N(B) can be interpreted as the optimal the parameters using the procedure in Section 4. The
correction of X. Alternatively, the distance of X to N(B) sensor module then moves on a semi-circle (radius 100
(or the error vector after projection) represents degree cm) and its speed is 5 cm/sec hence there are total of
of incorrectness of the measurements. It is then 3142 samples of new data. The estimated trajectory
possible to use this distance to access the reliability of using calibrated parameters and the trajectory using
each sensor measurement. Accordingly, there could be nominal parameters are shown in Figure 4.
468
vector should belong to. The reliability of the sensor
data is determined based on the distance to the null
space. Simulation are conducted to support the
proposed methods and the results show the
effectiveness of the methods in achieving a better
accuracy.
8. Acknowledgment
This work was supported in part by the National
Figure 4. The comparison of localization result with Science Council of Taiwan, ROC under grant NSC 95-
and without using calibration method 2221-E-009-177 and the Ministry of Economic Affairs
under grant 95-EC-17-A-04-S1-054 and grant 96TR04.
9. References
[1] J. Borenstein and L. Feng, “Measurement and Correction
of Systematic Odometry Errors in Mobile Robots,” IEEE
Trans. Robotics and Automation, vol. 12, issue 6, pp.
869-880, Dec. 1996.
[2] D. K. Sorensen, “On-Line Optical Flow Feedback for
Mobile Robot Localization / Navigation,” Texas A&M
University, Master Thesis, May 2003.
[3] S. Lee and J.B. Song, “Robust mobile robot localization
Figure 5. The comparison of localization result with
using optical flow sensors and encoders,” IEEE Int. Conf.
and without using consistence check strategy Robotics and Automation, pp.1039-1044, Apr. 2004
[4] S. Lee, “Mobile Robot Localization using Optical Mice,”
Once again, let the robot move on the same path IEEE Int. Conf. Robotics, Automation and Mechatronics,
with same speed. But this time the measurements of vol. 2, pp.1192-1197, Dec. 2004
sensor 2 and 4 are biased at the midpoint of the semi- [5] A. Bonarini, M. Matteucci, and M. Restelli “Automatic
circle to represent non-systematic error. As shown in Error Detection and Reduction for an Odometric Sensor
Figure 5, the trajectory which doesn’t implement the based on Two Optical Mice,” IEEE Int. Conf. Robotics
consistency check strategy as described in Section 5 and Automation, pp.1675-1680, Apr. 2005
results in a large error. In contrast, the one using the [6] A. Bonarini, M. Matteucci, and M. Restelli “A
strategy successfully eliminates the faulty sensors and Kinematic-independent Dead-reckoning Sensor for
Indoor Mobile Robotic,” IEEE/RSJ Int. Conf. Intelligent
gives more accurate estimations.
Robots and Systems, vol. 4, pp.3750-3755, 28 Sept.-2
Oct. 2005.
7. Conclusion [7] D. Sekimori and F. Miyazaki, “Self-Localization for
Indoor Mobile Robots Based on Optical Mouse Sensor
In this work, an odometer using multiple optical Values and Simple Global Camera Information,” IEEE
flow sensors is introduced. Since the relative positions Int. Conf. Robotics and Biomimetics, pp. 605-610, 2005.
of the sensors are unchanged, their measurements [8] J. Palacin, , I. Valgañon and R. Pernia, “The optical
mouse for indoor mobile robot odometry measurement,”
should obey the rigid body constraint, i.e., the
Sensors and Actuators A: Physical, Volume 126, Issue 1,
projections of velocity measurements of a pair of 26 January 2006, Pages 141-147
sensors onto the line connecting them should be the [9] J.-S. Hu, J.-H. Cheng, and Y.-J. Chang, “Spatial
same. This relation is used first to calibrate the Trajectory Tracking Control of Omni-directional
parameters of sensor configuration. It is shown that all Wheeled Robot Using Optical Flow Sensors,” 1st IEEE
parameters can be computed from the sensor Multi-conference on Systems and Control (MSC),
measurements and the rotation angle of the module. To Singapore, October 1-3, 2007.
find the solution given multiple measurements, a [10] J.-S. Hu, Y.-J. Chang, W.-H. Liu, and C.-H. Yang,
Newton-Rophson like method is used to find the “Localization of an Omni-directional Robot Platform
Using Sound Field Characteristics and Optical Flow
optimal results. To filter out incorrect sensor data
Sensing,” 13th International Conference on Advanced
during operation, the rigid body constraint is again Robotics (ICAR 2007), Aug. 21-24, 2007, Jeju, Korea.
used to construct the null space where sensor data
469
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Vincent S. Tseng, Ja-Hwung Su, Bo-Wen Wang, Chin-Yuan Hsiao, Jay Huang and Hsin-Ho Yeh
Department of Computer Science and Information Engineering
National Cheng Kung University, Tainan, Taiwan, R.O.C.
Email: tsengsm@mail.ncku.edu.tw
1. Introduction
Modern communication technologies ease the
multimedia data exchange on the Internet. From a
massive amount of multimedia data, it is very difficult
for a common user to obtain her/his preferred ones.
The main problem is that the gap between user
Figure 1. The framework of the traditional recommender
contents and multimedia contents is so large that very
system.
little previous work succeeds in building a great
multimedia recommender system. As shown in Figure
Automated annotation of multimedia contents
1, a traditional recommender system usually employs
actually does users a great favor on semantic
Collaborative filtering (CF) technique based on the
multimedia retrieval. In addition to multimedia
assumption that people can be grouped to share their
retrieval, semantic annotation can also convey the
valuable purchase information each other to make an
information about what users want. On the basis of this
choice about the preferred items, such as movies,
notion, in this paper, we implement an intelligent
books, etc. Unfortunately, these contemporary
recommender system by integrating annotation and
recommender systems always put the focus on eliciting
493
annotation. Second, by jointing high-level concept some key-objects. The main tasks of this work are to
terms, user profiles and usage logs, mining engine annotate the shots and the referred key-objects. To this
discovers the implicit rules as the knowledge base to end, we adopt different annotation strategies to finish
help recommendation agent infer the personalized the different kinds of annotation tasks.
recommendation list. Finally, users can rate each item
on the recommendation list and store the rating results z Multi-level CBA (Classified By Association)
into the usage database. The detailed descriptions are model
stated in the following subsections.
This method is mainly based on the work in [18]. In
this work, we proposed a new image classification
approach by using multiple level association rules
based on these image objects. The proposed approach
can be decomposed of three phases: (1) Building of
conceptual object hierarchy, (2) Discovery of
classification rules, and (3) Classification and
prediction of images.
.
Then we can obtain a probability list containing the
probability of each keyword while annotating an
unknown shot. In these functions, w is the set of all
Figure 3. The self-learning annotation model. candidate keywords, r is the set of all regions, N is the
number of all shots and J is a specific un-annotated
3.2.1 Annotation for images and videos shot.
In this work, as illustrated with Figure 3, a video z ICOA model (Intelligent Concept-Oriented
clip can be decomposed into several shots containing Annotation model)
494
visual distance between the objects of different
As shown in Figure 6, this work proposes a hierarchies is close enough, for example as shown in
framework to catch the high-level concepts by Figure 7, {r7→r4}, {r6→r3} and {r5→r4}.
performing content-based image understanding
approach. It first segments the shot into several regions
and identifying each segmented region by
classification models, e.g., decision tree, SVM, KNN
and so on.
495
Cosine Transform) value. According to the Currently we have implemented an annotation tool
transformed features, four semantic feature terms can that integrates various annotation models for images,
be derived by annotation model or our defined videos and music. In Figure 10, the interface can be
functions. divided into several major panels. The operation
procedure starts with opening an un-annotated
multimedia data by panel (H). Next, the multimedia
data is split into some shots and users can manually
annotate the first-k shots by panel (A) and (C).
Afterward the training operation is performed by panel
(E). Thereby, automated annotation terms can be
inferred by panel (E) and the results are shown in
panel (B), (D), (G) and (F). Finally the annotation
terms are stored into the database. The generated
annotation terms are important elements for
rule/knowledge mining. Without these annotation
terms, the multimedia data cannot be semantically
connected with user’s interest.
496
{(Gender, Female), (Age, Young), (Occupation, Then we continue expressing how to search
Teacher),(Residence, Taipei)} → {(Category, Love), multimedia products by rules. As shown in Figure 12
(Actor, Tom_Cruise)} and Figure 13, if the cardinality of right-hand contents
says that most of female teachers living in Taipei is larger than one, recommendation agent has to look
always like watching love movies presented by for all of the products containing the right-hand
Tom_Cruise. This kind of frequent patterns can assist content pattern by pattern. Then it generates the
not only recommender system in eliciting the best intersection set of the found products. Note that the
recommendation list but also the system administrator final results are still sorted by the issuing date and the
in strengthening the personalized service. purchasing frequency.
497
Horror, Science-Fiction}, which are ever purchased by
3.4.2 Search Multimedia by Personal Log the active user u. Table 2 shows an transaction
example for u. From the transactions, actor X is the
This operation is mainly aimed at the special most favorite actor for u. Table 3 shows that the
members whose contents cannot match any rule in the transaction table of the favorite actor X for u. As
rule database. As shown in Figure 14, first, all of shown in Table 4, for each category, the amount of
transactions for the special member have to be recommended products can be computed by the
collected. Second, select the most five favorite referred ratio.
multimedia categories by the referred purchase
frequency. Third, find the most favorite actor whose 4. Conclusions
purchase count is the largest. Fourth, combine the most
five favorite multimedia categories and the additional Collaborative-filtering based recommender system
category presented by the most favorite actor into six has been shown that it can provide users with the great
candidate categories. At last, according to the purchase support to make a decision among a huge amount of
ratio of each category, select un-purchased products precuts. However, semantic relations between user’s
for each candidate category. interest and the products are ignored in past studies. In
this paper, we have presented an intelligent
Table 2. The transaction table for the active user. recommender system to bridge user’s interest and the
products by integrating annotation and association
mining techniques. The low-level multimedia contents
can be converted into the linguistic terms and the
discovered relations are indeed very valuable for the
recommendation strategy and the system administrator.
In the future, we will further investigate the
aggregation for other recommendation strategies.
Acknowledgement
Table 3. The transaction table of the favorite actor X for the This research was supported by Ministry of Economic
active user. Affairs, R.O.C., under grant no. 96-EC-17-A-02-51-
024.
References
[1] W. H. Adams, G. Iyengar, C. Y. Lin, M. R. Naphade, C.
Table 4. The resulting table for recommendation. Neti, H. J. Nock, and J. R. Smith. “Semantic Indexing of
Multimedia Content Using Visual, Audio, and Text Cues.”
EURASIP Journal on Applied Signal Proceeding, Vol. 2003,
Issue 2, pp. 170-185, 2003.
[2] Kamal Ali and Wijnand van Stam,”TiVo: Making
Show Recommendations Using a Distributed Collaborative
Filtering Architecture”, in Proceedings of KDD, 2004.
[3] Chumki Basu, Haym Hirsh, and William Cohen.
Recommendation as Classification: Using Social and
Content-Based Information in Recommendation. In
Proceedings of AAAI, 1998.
[4] John S. Breese, David Heckerman, and Carl Kadie.
Empirical Analysis of Predictive Algorithms for
Collaborative Filtering. In Proceedings of the 14th
Conference on Uncertainty in Artificial Intelligence, 1998.
[5] S. L. Feng, R. Manmatha, and V. Lavrenko, “Multiple
Bernoulli Relevance Models for Image and Video
Annotation,” IEEE Computer Society Conference on
Example 1. Suppose that there are 12 products Computer Vision and Pattern Recognition, Vol. 2, pp. 1002-
belonging to 3 categories {Action, Adventure, Love, 1009, 2004.
498
[6] J. Jeon, V. Lavrenko, and R. Manmatha, “Automatic “Classify By Representative Or Associations (CBROA): A
Image Annotation and Retrieval using Cross-Media Hybrid Approach for Image Classification”, in Proceedings
Relevance Models.” In Proc. of the 26th annual of the Sixth International Workshop on Multimedia Data
international ACM SIGIR conference on Research and Mining (KDD/MDM), Chicago, IL, USA, August 21-24,
development in information retrieval, pp. 119 – 126, 2003. 2005.
[7] V. Lavrenko, S. L. Feng, and R. Manmatha, “Statistical [14] Vincent. S. Tseng, Ja-Hwung Su, and Chih-Jen Chen,
Models for Automatic Video Annotation and Retrieval,” in "Effective Video Annotation by Mining Visual Features and
Proc. of the International Conference on Acoustics, Speech Speech Features", in Proceedings of the third International
and Signal Processing, May 2004. Conference on Intelligent Information Hiding and
[8] Daniel Nikovski and Veselin Kulev. Induction of Multimedia Signal Processing, Kaohsiung, Taiwan,
Compact Decision Trees for Personalized Recommendation. November 26-28, 2007.
In Proceedings of the ACM symposium on Applied [15] Vincent. S. Tseng, Ja-Hwung Su and Jhih-Hong Huang,
computing, 2006. “A Novel Video Annotation Method by Integrating Visual
[9] J.A. Pouwelse, M. van Slobbe, J. Wang, H.J. Sips, Features and Frequent Patterns”, in Proceedings of the
"P2P-based PVR Recommendation using Friends, Taste Seventh International Workshop on Multimedia Data Mining
Buddies and Superpeers", Beyond Personalization 2005, (KDD/MDM), Philadelphia, PA, USA, August 20-23, 2006.
Workshop on the Next Stage of Recommender Systems [16] Vincent. S. Tseng, Ja-Hwung Su, Jhih-Hong Huang and
Research, San Diego, USA, Jan 2005. Chih-Jen Chen, "Integrated Mining of Visual Features, Speech
[10] J.Y. Pan, H.J. Yang, C. Faloutsos, P. Duygulu, Features and Frequent Patterns for Semantic Video
“Automatic multimedia cross-modal correlation Annotation," IEEE Transactions on Multimedia, vol. 10, no. 1,
discovery.” In Proc. of the tenth ACM SIGKDD 2008.
[17] Vincent. S. Tseng, Ja-Hwung Su, Bo-Wen Wang and
international conference on Knowledge discovery and
Yu-Ming Lin, "Web Image Annotation by Fusing Visual
data mining, August 22-25, 2004, Seattle, WA, USA. Features and Textual Information", in Proceedings of the
[11] Ja-Hwung Su and Wen-Yang Lin, “CBW: An Efficient
22nd ACM Symposium on Applied Computing, Seoul, Korea,
Algorithm for Frequent Itemset Mining,” in Proceedings of
March 11 – 15, 2007.
the 37th Annual Hawaii International Conference on System
[18] Vincent S. Tseng, Ming-Hsiang Wang and Ja-Hwung
Sciences, Hawaii, January 2004.
Su, “A New Method for Image Classification by Using
[12] U. Shardanand and P. Maes. Social Information
Multilevel Association Rules”, in Proceedings of the 1st
Filtering: Algorithms for automating “word of mouth”. In
IEEE International Workshop on Managing Data for
Proceedings of the SIGCHI conference on Human factors in
Emerging Multimedia Applications (EMMA), Tokyo, Japan,
computing systems, Pages 210 - 217, 1995.
April 2005.
[13] Vincent. S. Tseng, Chon-Jei Lee and Ja-Hwung Su,
499
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract: This paper presents a combined platform Such wireless detonation and control systems are
of wireless sensors and actuators based on embed- already commercially available, but none offer a
ded controller. To proof the concept a fireworks modern, all-in-one package that includes control
detonation system utilizing MOSFETs to switch and choreography software along with hardware
high current bursts has been developed. All required modules that are up to a high standard and designed
electronics, enclosure panel and control software for use with the latest operating systems. Such sys-
have been fabricated. Commands are intelligently tems are also extraordinarily expensive, ranging in
issued using an intuitive user interface. Manual con- price from US$2000 for a very basic system up to
trol of channel firing and testing as well as a script- several thousand dollars US for a high end system.
ing system allow for complex and visually stunning
firework demonstrations to be put together. Most of the systems, in the higher price brackets at
least, include the ability to script firework detona-
Keywords: Wireless sensors and actuators, tions and there are very, very few software systems
MOSFET, Fireworks, Embedded Microcontroller, on the market that allow you to synchronize the
Detonation, Wireless, Electric-Match. detonations to music and simulate the show as a
graphical 3D visualization. Such a system of this
nature could cost the user upwards of $10,000 USD
for the hardware and software. This is by far out of
reach of smaller national and regional firework dis-
1 INTRODUCTION play operators.
The main idea is to develop a combined platform of A system is required that offers comparable features
wireless sensors and actuators based on embedded at a much reduced cost. The presented system con-
controller. In order to achieve the above objective, a sists of two main aspects, the remote firing module
project on wireless fireworks detonation systems to and the PC control and choreography software.
entertain public has been taken under consideration.
The implementation of the complete project will
match very well within the broader objective of
wireless sensors and actuators.
471
with the electric-match will deliver about 3A of
2.6 SWITCHING DEVICE current.
Relays are commonly used in similar situations Testing is accomplished through a similar process,
where high current switching is required. They of- but limiting the current much further. While current
fer many benefits such as electrical isolation and is switched on to the electric match an ADC reading
ability to switch very large currents with minimal is taken to measure the voltage developed across the
power loss, but also have several disadvantages match, and thus the resistance of the match can be
also, which primarily include needing relatively derived, giving an indication as to whether the
high currents to do the switching, large size and match/channel’s connection is good or has failed
lifespan. Due to their mechanical nature, contact short circuit or open circuit. This is very important
bounce and electrical arcing can reduce the lifespan for diagnostic analysis of the show’s setup and en-
of relays significantly. suring the safety of technicians.
472
3 FIRMWARE DESIGN
3.1 ADDRESSING
4 CONTROL SOFTWARE
473
we will focus primarily on the manual and scripting belongs to. These timecodes are then uploaded to
interfaces. the remote module which will start stepping through
and firing them at the precise times when given the
start command.
5 ACKNOWLEDGEMENTS
module A
{
# comments
fire 1, 00:01:000
fire 2, 00:01:500
fire 3, 00:05:200
}
474
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
∫J ⋅ ds = I
e
Figure 1. Inspection geometry of the photo- (5)
inductive field measurement technique. S
476
for comparing the characteristics of EC imaging temperature from 100 oC to 700 oC. Owing to the crack,
method and PI imaging method as shown in Figure 2. the eddy current density on the specimen goes around
the crack. The temperature fluctuation causes a local
change in the electrical conductivity of the specimen
and the current density of the specimen, and then the
impedance of the coil.
The simulation results of the signals interaction
with various temperature and frequency will be first
presented. In order to clearly exhibit the crack’s effect,
the impedance difference between signals with crack
and without crack is reported. The effects of EC
frequency on the EC imaging signal for a 0.5-mm long
and 0.2-mm wide notch is shown in Figure 3. The
Figure 2. The simplified 2D model for PI and position of the coil is 0.0 mm in x-axis and 0.1 mm
EC imaging method. (the bold dotted lines lift-off distance in y-axis. As can be seen from Figure
are the coil moving path and laser point 3, an increase in frequency, leads to a decrease in
moving path) rising quantity of coil impedances. Therefore, higher
eddy current frequencies give larger signals, and the
signals approach saturation when the frequency is
Table 1. higher than MHz. Although the signal amplitude is
Parameter levels used in the simulation increased when higher eddy current frequencies are
Coil Frequency (kHz)
100, 200, 400, 600, 800, applied, the skin depth is smaller. For smaller cracks in
1000, 1500, 2000, 3000 this titanium alloy, the current frequency should be
100, 150, 200, 250, 300, raised for imaging the cracks as far as possible.
Laser point temperature (oC)
350, 400, 500, 600, 700
The effects of temperature on the PI imaging signal
Crack length and depth (mm) 0.25, 0.5, 0.75
for a 0.5-mm long and 0.2-mm wide notch is shown in
Figure 4. The position of the coil is the same above,
We designed the coil that with a height equal to or and the position of the laser point is -0.5 mm in x-axis
greater than the depth of the notch. This was to be sure and 0.5 mm in y-axis. When lower laser beam
that the eddy currents surround the whole notch and so temperatures are applied, the amplitude of signal is
that the depth information can be revealed. The decreased. Because reducing the temperature will
distance between the specimen and the coil (diameter = generates higher current density and the deeper
1 mm, length = 0.76 mm) was 0.1 mm. In the case of penetration on the surface of this specimen. The rising
EC scan that without the laser point, the coil is moving
along the x-axis and cross the notch on the specimen.
In the PI scan, the coil is fixed right on the center of
the notch and the laser is moving in the same direction
as the previous case. The uniform scan plan with
closely spaced scan lines so that flaw orientation and
scan spacing would not affect the outcome was
assumed. To calculate the impedance ( ΔZ = Vloop / I )
of the coil in the simulations, the total induced eddy
current of the coil can be obtained by carrying out sub-
domain integration of the total current density for the
cross-section of the excited coil.
477
Figure 4. Increasing impedance of variant
laser point temperatures using PI method for Figure 5. Variation of EC signals with the
a 0.5-mm rectangular notch in Ti-6A1-4V. length and depth of rectangular notch in Ti-
6A1-4V. EC frequency, 600 kHz.
478
affect the determination of shape and length. For the
effects of notch size at 600-kHz EC frequency and 300
o
C laser temperature, the combination of parameters is
more suitable to inspect the smaller crack.
Acknowledgment
This research was supported by the grant from
National Science Council, Taiwan (NSC 96-2628-E-
006-256-MY3). Also, this work made use of Shared
Facilities supported by the Program of Top 100
Universities Advancement, Ministry of Education,
Taiwan.
References
[1] J. C. Moulder, N. Nakagawa, K. S. No, Y. P. Lee, and J. F.
McClelland, "Photoinductive imaging: a new NDE technique,"
Review of Progress in Quantitative NDE edited by D. O.
Thompson and D. E. Chimenti (Plenum Press, New York), vol.
8A, p. 599, 1989.
[2] N. Nakagawa and J. C. Moulder, "Eddy Current Probe
Calibration via the Photoinductive Effect," NDT and E
International, vol. 28, pp. 245-246, 1995.
[3] J. C. Moulder and N. Nakagawa, "Characterizing the
performance of eddy current probes using photoinductive field-
mapping," Research in Nondestructive Evaluation, vol. 4, pp.
221-236, 1992.
[4] M. S. Hughes, J. C. Moulder, M. W. Kubovich, and B. A. Auld,
"Mapping eddy current probe fields using the photoinductive
effect " NDT & E International vol. 28, p. 251, 1995.
[5] C.-C. Tai and J. C. Moulder, "Bolt-Hole Corner Crack
Inspection Using the Photoinductive Imaging Method " Journal
of Nondestructive Evaluation, vol. 19, pp. 81-93, 2000.
[6] N. Tsopelas and N. J. Siakavellas, "Electromagnetic-thermal
NDT in thin conducting plates," NDT and E International, vol.
39, pp. 391-399, 2006.
[7] F. Yu and P. B. Nagy, "Dynamic Piezoresistivity Calibration
for Eddy Current Nondestructive Residual Stress
Measurements," Journal of Nondestructive Evaluation, vol. 24,
pp. 143-151, 2005.
[8] B. A. Auld, S. R. Jefferies, and J. C. Moulder, "Eddy-current
signal analysis and inversion for semielliptical surface cracks,"
Journal of Nondestructive Evaluation, vol. 7, pp. 79-94, 1988.
479
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Po-Yi Shih, Jhing-Fa Wang, Hsiao-Ping Lee, Hung-Jen Kai, Hung-Tzu Kao, Yuan-Ning Lin
Department of Electrical Engineering, National Cheng Kung University, Tainan, Taiwan, R.O.C.
501
Table 1. An example of a confusion matrix the minimum function gives a large value. This means
Classified as that the sum over all the models, i.e. the value sij , is
‘a’ ‘b’ ‘c’ large and the models are considered similar. On the
‘a’ 100 0 0 other hand, if one of the models is often confused to a
Source class ‘b’ 0 67 33 model, and the other is not confused to that particular
‘c’ 10 0 90
model, the output of the minimum function is small. In
such a case the sum over all the models is small, and
the models are considered dissimilar.
matrix correspond to the results of classification. The
The Houtgast algorithm can be viewed almost as a
rows correspond to the true pattern classes of the
special case of fuzzy similarity, a concept used in soft
observations. Thus, the element cij of a confusion
computing [19]. The only differences between the
matrix C, is the number of classifications of
Houtgast and this fuzzy similarity relation are that, the
observations of class i as class j. The diagonal elements
similarity value is the mean of the summed elements,
thus show the number of correctly classified
and the diagonal values of the similarity matrix equal to
observations for each case, and the off-diagonal
one, i.e
elements show the number of misclassifications, i.e.
substitution errors.
Table 1 is an example of a confusion matrix.
Observations of class ‘a’ are classified correctly every
time, i.e. there are no confusions of ‘a’ to ‘b’ or ‘c’. , (3)
However the observations of class ‘c’ are confused to
class ‘a’ ten times out of 100. The values in the table where sij' is the fuzzy similarity corresponding the
are percentages.
The confusion matrices are usually represented such Houtgast similarity sij' . Therefore, the elements of the
that the rows of the matrix are normalized by the total
number of tokens evaluated. This way the value in the
similarity matrix S’ satisfy 0 ≤ sij' ≤ 1, and the
estimated matrix shows relative number of confusions, maximum similarity, i.e. value one, is achieved when
i.e. the confusion frequency, this can be given as the models are the same.
3.2.3. Mixed-language phone set. The mixed-
language acoustic model for Mandarin and English
using the following steps:
, (1) 1. We group the phones into acoustically and
phonetically similar clusters, for each of the
where card denotes the number of elements in the set. language.
2. Develop single Gaussian acoustic model for all
Once a confusion matrix estimate C is obtained for the monophones.
the set of models, it contains the estimates of how 3. For each phone in Mandarin, we calculate the
likely it is that a given model is classified as other dissimilarity of the phone set based on the
model. confusion matrix to all the phones in the same
3.2.2. Phoneme model HMMs estimation of a group for English. If the value is below a
confusion matrix. One conversion method of a threshold, the source phone in Mandarin would
confusion matrix into a symmetric similarity matrix is be mapped to that phone in English. Otherwise,
the Houtgast algorithm [1][11][23]. It is given as both the phones would be modeled separately in
the bilingual system.
4. For some phones in Mandarin, there may not be
a phone in English that belongs to the same
, (2) cluster. In such cases, the algorithm will not try
to map that phone in Mandarin to a phone in
where cij is the element of the confusion matrix C English
and Sij is the similarity between the models i and j, i.e. 5. After getting the list of phones for the bilingual
an element of the similarity matrix S. The conversion system, the lexicon for Mandarin is edited using
essentially measures the simultaneous confusability of the rules obtained for mapping
the both models i and j to all models k. If the both Finally, we get the mixed-language phone set as the
models are very often confused to a particular model, table 2.
502
Table 2. Mixed-Language phone set for Mandarin The framework of the proposed system is depicted
and English in Figure 1. The details are stated in the following
subsections.
503
4.3. Recognition phase of the proposed system each frame. It is a time-synchronous search algorithm
in that it processes all states completely at time t before
4.3.1. Tree lexicon(A pronunciation dictionary). The moving on to time t + 1.
dictionary provides an association between words used The beam search heuristic reduces the average cost
in the task grammar and the acoustic models which of search by orders of magnitude in medium and large
may be composed of sub word (phonetic, syllabic etc.,) vocabulary systems. The combination of Viterbi
units. Since this project provides a voice operated decoding using beam search heuristic is often simply
interface the dictionary could have been constructed by referred to as Viterbi beam search
hand but the researcher wanted to try a different 4.3.4. Recognition process. The recognizer is now
method which could be used to construct a dictionary complete and its performance can be evaluated. The
for a large vocabulary ASR system. In order to train the recognition network and dictionary have already been
HMM network, a large pronunciation dictionary is constructed, and test data has been recorded. Thus, all
needed. that is necessary is to run the recognizer. The
4.3.2. The task grammar. The task grammar defines recognition process can be summarized as in the Figure
constraints on what the recognizer can expect as input. 2.
As the system built provides a voice operated interface
for name recognition, it handles words strings. For the
Input Signal
limited scope of this project, only the syllable making (.wav)
name grammars were needed. The grammar was
defined in BN-form, as follows: $variable defines a Configuration
phrase as anything between the subsequent = sign and File
the semicolon, where | stands for a logical or. Brackets
have the usual grouping function and square brackets HCOPY
Script
denote optionality. The used toy grammar was
File
Table 4. Lexicon file (A pronunciation dictionary)
sil [] Input Signal
ba B AA sp (.wav)
buo B OW sp
bai B AY sp
bei B ei sp Network
bau B AW sp (.slf)
ban B an sp
HVite HMMs
born B @n sp
(.mmf)
bang B a_n_b sp Dictionary
bng B @n_b sp
bi B IY sp
bie B IY EH sp
………….. HMM
List
seven S EH V AH N sp Transcription
eleven IH L EH V AH N sp (.mlf)
samsung S AE M S AH NG sp
taiwan T AY W AA N sp Figure 2. Recognition process of an input signal.
yahoo Y AA HH UW sp
taipei T AY P EY sp An input speech signal is first transformed into a
kaohsiung K EY OW S IY AH NG sp series of ”acoustical vectors” (here MFCCs) using the
washington W AA SH IH NG T AH N sp HTK tool HCopy, in the same way as what was done
state S T EY T sp with the training data.
SENT-END [] sil The input observation was then processed by a
SENT-START [] sil Viterbi algorithm, which matches it against the
recognizer’s Markov models using the HTK tool HVite.
4.3.3. Viterbi beam search. Viterbi search is The recognizer is shown as Figure 3.
essentially a dynamic programming algorithm,
consisting of traversing a network of HMM states and
maintaining the best possible path score at each state in
504
There are 10 people to test this system. They
randomly pick twenty patterns that are mixed Chinese
and English sentence. The below table is the speech
recognition result record.
5.2. Experimental results [5] C.L. Huang, C-H Wu, “PHONE SET GENERATION
BASED ON ACOUSTIC AND CONTEXTUAL ANALYSIS
FOR MULTILINGUAL SPEECH RECOGNITION”
505
Department of Computer Science and Information [17] Rabiner L. Fundamentals of Speech Recognition. PTR
Engineering, National Cheng Kung University, Tainan, Prentice-Hall Inc., New Jersey, 1993.
Taiwan, R.O.C. (2007)
[18] Shengmin Yu Sheng Hu Shuwu Zhang Bo Xu,
[6] C.L. Huang, C-H Wu, “Generation of Phonetic Units for “CHINESE-ENGLISH BILINGUAL SPEECH
Mixed-Language Speech Recognition Based on Acoustic and RECOGNITION”, Hi-Tech Innovation Center, Institute of
Contextual Analysis”, Department of Computer Science and Automation Chinese Academy of Sciences, Beijing, P. R.
Information Engineering,National Cheng Kung University, China (2003)
Tainan, Taiwan, R.O.C. (2007)
[19] Turunen E. Survey of theory and applications of
[7] C. Y MA, Pascale FUNG, “Using English Phoneme Lukasiewicz-Pavelka fuzzy logic. In di Nola A. and Gerla G.,
Models for Chinese Speech Recognition” , The Human editors, Lectures on Soft Computing and Fuzzy Logic.
Language Technology Center Department of Electrical and Advances in Soft Computing, Physica-Verlag, Heidelberg,
Electronic Engineering Hong Kong University of Science and 2001, pp. 313–337.
Technology (HKUST), Hong Kong
[20] Vihola M., Harju M., Salmela P., Suontausta J. and
[8] F. Seide. N. J. C. Wang, 1998. Phonetic modeling in the Savela J. Two dissimilarity measures for HMMs and their
Philips Chinese continuous-speech recognition system. In application in phoneme model clustering. Accepted to
Proc. Proceedings of International Conference on Acoustics,
Speech and Signal Processing, Orlando, USA, 2002.
[9] Harju M., Salmela P., Lepp¨anen J., Viikki O. and
Saarinen J. Comparing parameter tying techniques for [21] Y. J. Chen, C-H. Wu et al. Generation of robust phonetic
multilingual acoustic modelling. In Proceedings of the set and decision tree for Mandarin using chi-square testing.
European Conference of Speech Communication and Speech Communication, 2002, Vol. 38 (3-4), pp. 349-364.
Technology, Aalborg, Denmark, Sept. 2001, pp. 2729–2732.
[22] Young, S. et al. HTKbook(V3.2), Cambridge University
[10] H. C. Wang, “MAT – A project to collect Mandarin Engineering Dept, 2002.
speech data through telephone networks,” Computational
Linguistics and Chinese Language Processing, 1997, vol.2, no. [23] Zgank A., Imperl B. and Johansen F. Crosslingual
1, pp. 73-90. speech recognition with multilingual acoustic models based
on agglomerative and tree-based triphone clustering. In
[11] Imperl B. and Horvat B. The clustering algorithm for the Proceedings of the European Conference of Speech
definition of multilingual set of context dependent speech Communication and Technology, Aalborg, Denmark, Sept.
models. In Proceedings of the European Conference of 2001, pp. 2725–2728.
Speech Communication and Technology, Budabest, Hungary,
1999, pp. 887–890.
506
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
508
As mentioned in [7], BCH has an intimate relation The best band selection algorithm will choose an
between generator polynomial and minimal encode optimal band signal to embed the watermark. Here the
length with a minimum distance dmin. In addition, BCH optimal sub-band means that the embedded watermark
code holds the following relationships: in this band would have the least distortion as well as
n 2m 1 MSE after speech compression. This paper applies
G.711, G.726, and GSM 6.10 speech coding standards
n k d mt
to evaluate the selection of best band.
d min t 2t 1
For more information about BCH code, see [7]. In
Inverse
this paper, various BCH codes with different n and k Input Wavelet Best Band
Wavelet
Speech Packet Selection
parameters are applied to speech watermarking. Packet
509
27, 29, 32
k =21 2, 6, 8, 9, 10, 11, 12, 15, 17, 18, 22, 26, k =29 1, 2, 3, 6, 8, 9, 11, 16, 17, 18, 19, 20,
27 22, 23, 24, 26, 27, 28, 29, 30, 31, 32
k =26 1 k =37 1, 3, 7, 8, 9, 10, 12, 14, 15, 16, 18, 19,
21, 23, 25, 26, 27, 29, 32
Table 4. Best band distribution for (63, k) BCH code k =45 1, 8, 9, 15, 16, 19, 20, 22, 23, 27, 28,
k value Best band distributions 29, 32
k =7 Any sub-band k =47 3, 5, 7, 9, 15, 16, 19, 20, 23, 32
k =10 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14,
15, 16, 17, 18, 19, 20, 21, 22, 24, 25, Table 7. Best band distribution for (511, k) BCH code
26, 27, 28, 29, 30, 31, 32 k value Best band distributions
k =16 1, 2, 3, 4, 7, 9, 10, 11, 12, 15, 16, 17, k =10 Any sun-band
18, 19, 20, 22, 23, 24, 25, 26, 28, 29, k =19 Any sub-band
30, 31, 32 k =28 Any sub-band
k =18 1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, k =31 Any sub-band
17, 18, 19, 20, 22, 24, 25, 26, 27, 28, k =40 1, 2, 3, 4, 6, 8, 10, 11, 12, 13, 15, 16,
29, 30, 31, 32 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
k =24 1, 5, 7, 9, 10, 12, 15, 16, 17, 18, 22, 25, 28, 29, 30, 31, 32
28, 32 k =49 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14,
k =30 1, 14, 16, 17, 22, 29, 31 15, 16, 17, 18, 19, 20, 21, 23, 24, 25,
k =36 8, 10, 12, 18, 19, 20, 22, 28 26, 28, 29, 30, 31, 32
k =39 21, 22, 31, 32 k =58 1, 3, 6, 8, 10, 11, 12, 15, 16, 17, 18, 19,
k =45 No best sub-band 20, 23, 24, 25, 26, 28, 29, 30, 31, 32
k =51 18 k =67 1, 2, 4, 7, 8, 10, 12, 16, 17, 20, 22, 24,
k =57 No best sub-band 25, 26, 30, 32
k =76 1, 2, 4, 9, 10, 11, 12, 20, 22, 23, 26, 27,
Table 5. Best band distribution for (127, k) BCH code 30, 32
k value Best band distributions k =85 1
k =8 Any sub-band
k =15 1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, Figure 6 shows the best band distribution among 32
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, sub-band signals. One can find the highest and lowest
26, 27, 28, 29, 30, 31, 32 frequency bands are usually selected as the best
k =22 1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, watermark embedded bands in the most BCH code
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, setting conditions.
28, 29, 30, 31, 32 Finally, the watermarked speech can be obtained by
k =29 1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 15, 16, the use of inverse wavelet packet transform.
17, 18, 20, 21, 22, 24, 25, 26, 28, 29,
30, 31, 32
k =36 1, 10, 11, 14, 17, 18, 19, 20, 24, 26, 29,
32
k =43 18
k =50 26
k =57 No best sub-band
k =64 8
510
4. Watermark extracting scheme Figure 8 illustrates the average PSNR values of
various BCH code setting and different sub-bands.
In the watermark extracting scheme, the first step is This experimental result is obtained without using
to decompose the watermarked speech into 32 sub- speech compressions. In other words, the PSNR listed
band signals by the use of five-level Haar wavelet in Figure 8 is derived from the original speech and the
packet transform. Then, each optimal sub-band signal watermarked speech signals. One can find that the
will be operated (n, k) BCH decoding where the lower variable n of BCH code results in higher PSNR
parameters of (n, k) are notified by the watermark value.
embedding scheme. This BCH decoding operation will Table 8 gives the average PSNR values and
not be stopped until all of optimal sub-band signals are watermark detection rates for various speech
tested or the correct BCH decoding is performed. compression standards, including G.711, G.726, and
Finally, the watermark pattern can be extracted from GSM 6.10. G.711 standard is based on A-law or P-law
the optimal sub-band signal with correct BCH non-linear quantization whereas G.726 standard is
decoding. The main advantage of the proposed based on adaptive differential pulse code modulation
algorithm is that it does not require a match with an (ADPCM). The core algorithm of GSM 6.10 is
uncorrupted original speech signal or training database. regular-pulse-excited-long-term prediction (RPE-LTP).
Figure 7 is the block diagram of the watermark The bit-rates of G.711, G.726, and GSM 6.10 used in
extracting scheme. paper are 64Kbps, 32Kbps, and 13.3 Kbps,
respectively. This experimental results show that the
proposed watermarking algorithm is inaudible and
Watermark
Watermarked Wavelet BCH
Pattern robust against G.711, G.726, and GSM 6.10 speech
Speech Packet Decoding
Extracting coding standards.
511
References
[5] Yoiti Suzuki, Ryouichi Nishimura and Hao Tao, “Audio
watermark enhanced by LDPC coding for air transmission,”
[1] M. Swanson, B. Zhu, and A. Tewfik, “Current state of the
in Proceeding IIH-MSP 2006, pp. 23-26, 2006.
art, challenges and future directions for audio
watermarking,” in Proceeding ICMCS 1999, pp. 19-24, 1999.
[6] Xiang-Yang Wang and Hong Zhao, “A Novel
Synchronization Invariant Audio Watermarking Scheme
[2] Mohamed F. Mansour and Ahmed H. Tewfik, “Audio
Based on DWT and DCT,” IEEE Trans. On Signal
watermarking by time-scale modification,” in Proceeding
Processing, vol. 54, no. 12, pp. 4835-4840, 2006
ICASSP 2001, vol. 3, pp. 1353-1356, 2001.
[7] J.H. van Lint. Introduction to Coding Theory. Springer-
[3] Nian Gui-jun , Zhiyuan Xie and Shu-xun Wang,” Audio
Verlag, Berlin, 1982.
watermarking based on reverberation,” in Proceeding IIH-
MSP 2006, pp. 37-40, 2006.
[8] L. Rabiner and B.H. Juang, Fundamentals of Speech
recognition, Prentice Hall, 1993.
[4] Ming Li, Yun Liu and Yonghong Yan, “A novel audio
watermarking in wavelet domain,” in Proceeding IIH-MSP
2006, pp. 27-32, 2006.
512
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
514
response time for a request typically comprises the q.value − q. min
q. max − q. min if q. max − q. min ≠ 0
measurement of the execution time and waiting time.
q.value =
Reliability of Web services refers to the ability of 1 if q. max − q. min = 0
successfully performing service’s functionality for a
request. Availability of Web services is the degree to positive attribute ─ Eq.1
which a service is operational and accessible when it is q. max − q.value
required for use. Price is the expense of service q. max − q. min if q. max− q. min ≠ 0
execution for a request. q.value =
1 if q. max− q. min = 0
4. QoS-based learning services composition negative attribute ─ Eq.2
515
the maximal one in the latter. As well as sequence to find out the best service combination, we define
pattern, the aggregative reliability, availability and variables sij as follows.
price can be acquired by the product and sum of sij = 1 if the qualified service i is selected for the task j
sij = 0 otherwise
constituent services’ respectively.
Synchronization pattern also depicts a particular In a service combination, there is exactly one service
sequential process where the completion of all parallel which is selected for a task and thus we have the
services in the former will cause a service execution in following constraint of previously defined variables.
m
the latter.
Arbitrary cycles pattern is a kind of sequential process
∑s
i =1
ij =1 1≤ j ≤ 7
where the completion of the service will bring another Besides, we can derive the objective function of sij
round execution of the same service. Consequently, the from the aggregative QoS effects of constituent
aggregative QoS effects will depend on the number of workflow patterns as illustrated below.
repeat executions.
Exclusive choice pattern is similar to parallel split
pattern but differs with it in that there is only one
alternative is performed after the completion of the
former service. Hence, the aggregative QoS effects are
represented as there are multiple sequence patterns.
Synchronizing merge pattern includes two execution
models. One is the variant of sequence pattern with
exclusive choice and the other is the combination of
parallel split pattern and synchronization pattern.
Multiple merge pattern encompass three execution
models. The first two are the same as synchronizing
merge pattern and the third model is the variant of
parallel split pattern without synchronization. Since
there is no synchronization in the third model, the
terminate service will be executed once whenever each
former service is done. In the expressions, qrt, qr, qa and qp represent the value
of a service’s response time, reliability, availability and
4.2.2 A mathematical programming based solution price respectively. In order to solve the objective
The problem of finding out a service combination function with ease, we apply logarithm to transform
whose aggregative QoS performance is the best among Qreliability and Qavailability into linear form of sij as shown
others’ for a given composition is a kind of below.
combinatorial optimization that can be solved by
mathematical programming techniques [19]. In terms
of mathematical programming, there are a set of
variables, an objective function and a set of constraints.
For better illustration, we use an example of ubiquitous
learning as shown in Figure 2 to demonstrate how the
proposed solution works.
Figure 2. An example of ubiquitous learning As well as single QoS-aware service discovery, the
attribute values should be normalized into the same
Suppose a teacher tries to make the composition for scale with Eq1 and Eq2 correspondingly. As response
providing ubiquitous learning service and there are m time is a negative attribute, the max expression in
qualified services available for each task after aggregative response time will be converted into a min
functional and text-based QoS matchmaking. In order one after normalization. Finally, we can determine the
516
best service combination by finding out the maximal 0.01ms under the same setting. In fact, the time
value of refined objective function as follows. complexity of enumeration method is proportional to
O(mn) where m is the number of qualified services and
n is the number of tasks. Even though there are
numerous tasks in a composition with a lot of qualified
services for each task, the performance of our
mathematical programming based solution is still very
efficient as illustrated below.
600
493
500
400 390
Time (ms)
308
300 234
174
200
No. of tasks = 98
100
0
60 70 80 90 100
No. of qualified services
5. Experiments on QoS-based optimization 600
493
of services composition 500 409
444
374
400
Time (ms)
307 339
In order to evaluate the efficiency of proposed 273
300 240
mathematical programming based solution, we perform
a series of experiments on comparing our solution with 200
No. of qualified services = 100
enumeration method by a desktop with Pentium 4 3.0 100
GHz CPU and 1GB RAM. Based on the travel 0
planning scenario as illustrated in Figure 3, we 49 56 63 70 77 84 91 98
generate 10000 populations for each task randomly.
No. of tasks
For higher accuracy, each experiment is carried out 30
times and it has to randomly pick out qualified services Figure 4. The performance of mathematical
from the populations again every time. programming based solution
Suppose there are 6, 7, 8, 9 and 10 qualified
services for each task in Figure 3, the corresponding The top of Figure 4 depicts the performance for a
measurement of enumeration method’s time cost are composition with 98 tasks and it is shown that the
illustrated in Figure 3. increase of available qualified services for each task
does not impose a heavy computational burden on our
10000
solution. Similarly, we can also find that the
7844 performance of our solution is almost linear to the
8000 degree of a composition’s complexity in the bottom of
Figure 4. Based on the experimental data in [20], their
Time (ms)
6000
4422 IP with DAG solution needs to take 1.6 seconds when
4000 there are 40 tasks and 40 qualified services for each
2182 task. Obviously, our solution outperforms Zeng et al’s
2000 1027 since it only takes 0.240 seconds when there are 49
59 171 456
0 tasks and 100 qualified services for each task as shown
6 7 8 9 10 11 12
in the underside of Figure 4. Finally, we carried out
more experiments on testing the efficiency of our
No. of qualified services solution for very large service composition as shown in
Figure 3. The performance of enumeration method Table 2. The experimental results have proved our
with 7 tasks solution is not only better than other related work but
also very useful for the presence of considerable tasks
It is obvious that the time cost grows rapidly when and qualified services.
more qualified services are available for each task.
Conversely, the time cost of our mathematical Table 2. Experimental data of mathematical
programming based solution is always less than programming based solution
517
No. of tasks
No. of qualified services [7] R.M. Kekwaletswe,and D. Ngambi, "Ubiquitous Social
60 70 80 90 100 Presence: Context-Awareness in a Mobile Learning
525 919ms 1247ms 1629ms 2055ms 2564ms Environment", IEEE International Conference on Sensor
630 1111ms 1507ms 1975ms 2506ms 3082ms Networks, Ubiquitous, and Trustworthy Computing, 2006,
735 1290ms 1761ms 2325ms 2915ms 3648ms
pp. 90-95.
840 1483ms 2064ms 2667ms 3304ms 4064ms
945 1656ms 2246ms 2927ms 3705ms 4589ms [8] Wikipedia., 2006. Quality of Service. Available from:
1050 1880ms 2589ms 3308ms 4205ms 5242ms <http://en.wikipedia.org/wiki/Quality_of_service>.
[9] Jay, F. and Mayer, R., 1990. IEEE Standard Glossary of
Software Engineering Terminology, IEEE Std 610.12-1990.
6. Conclusions and future work [10] Garvin, D. A., 1988. Managing quality: The strategic
and competitive edge, Free Press, New York. PP.49-68.
The development of QoS-aware Web services is a [11] Cardoso, J., Miller, J., Sheth, A. and Arnold, J., 2002.
popular research issue as it is seen as the foundation Modeling Quality of Service for Workflows and Web Service
toward trustworthy service-oriented computing. The Processes, LSDIS lab, Computer Science, University of
promise of providing services with certain QoS Georgia, Tech. Rep. #02-002.
performance will make people be more confident of [12] Jaeger, M.C., Rojec-Goldmann G. and Muhl, G., 2005.
QoS aggregation in Web service compositions, in Proc. of
adopting Web services for critical tasks, e.g. business IEEE International conference on e-Technology,
transaction and personal financial etc. According to e-Commerce and e-Service (EEE), PP. 181-185.
different data types of service attributes, services are [13] Menasce, D.A., 2002. QoS Issues in Web Services,
evaluated through three stages and the solutions have IEEE Internet Computing, Vol. 6, Issue 6, PP. 72-75.
been illustrated correspondingly. Besides, the [14] Cardoso, J., Miller, J., Sheth, A. and Arnold, J., 2002.
experimental results have exhibited the practicability Modeling Quality of Service for Workflows and Web Service
of our mathematical programming based solution and Processes, LSDIS lab, Computer Science, University of
proved it outperforms other related work as well. In the Georgia, Tech. Rep. #02-002.
near future, we will focus on QoS-aware failure [15] O’sullivan, J., Edmond, D. and Hofstede, A. T., 2002.
What’s in a service? Towards Accurate Description of
recovery by extending proposed service selection Non-Functional Service Properties, Kluwer Academic
scheme to provide non-interrupted service execution. publishers Distributed and Parallel Databases, Vol. 12, PP.
117-133.
7. Acknowledgement [16] Hwang, C.L. and Yoon, K., 1981. Multiple attribute
decision making: Methods and applications, Springer-Verlag.
This work is supported by National Science Council, [17] Aalst, W. M. P. van der, 2003. Don’t Go with the Flow:
Web Services Composition Standards Exposed, in S. Staab
Taiwan under grants NSC95-2520-S008-006-MY3 and
(eds.) Web Services: Been There, Done That? IEEE
NSC96-2628-S008-008-MY3 Intelligent Systems, Vol. 18, Issue 1, PP. 72-76.
[18] Murata, T., 1989. Petri nets: Properties, Analysis and
8. References Applications, Proc. of the IEEE, Vol. 77, No. 4, PP. 541-580.
OASIS WSS TC., 2006. Web Services Security. OASIS.
[1] E. Christensen, F. Curbera, G. Meredith and S. Available from: <http://www.oasis-open.org/
Weerawarana, “Web Service Description Language (WSDL) committees/wss/>.
1.1,” W3C, http://www.w3.org/TR/WSDL, 2001. [19] Korte, B. and Vygen, J., 2005. Combinatorial
[2] UDDI coalition, “Universal Description, Discovery and Optimization: Theory and Algorithms, Springer-Verlag.
Integration,” OASIS, http://www.uddi.org/, 2000. [20] L. Zeng, B. Benatallah, A.H.H. Ngu, M. Dumas, J.
[3] Bajaj, S. et al., 2006. Web Services Policy 1.2 – Kalagnanam, and H. Chang, "QoS-Aware Middleware for
Framework (WS-Policy). WWW Member Submission. Web Services Composition", IEEE International Conference
Available from: on Sensor Networks, Ubiquitous, and Trustworthy
<http://www.w3.org/Submission/WS-Policy/>. Computing, 2006, pp. 311-327.
[4] J.C. Lin, and Y.M. Yeh, "A Research on
Telephone-Supported Multimodal Accessible Website",
IEEE International Conference on Sensor Networks,
Ubiquitous, and Trustworthy Computing, 2006, pp.118-123.
[5] I. Kim, H. Park, B.N. Noh, Y.L. Lee, S.Y. Lee, and H.H.
Lee, "Design and Implementation of Context-Awareness
Simulation Toolkit for Context learning", IEEE International
Conference on Sensor Networks, Ubiquitous, and
Trustworthy Computing, 2006, pp. 96-103.
[6] C. Stergiopoulos, P. Tsiakas, D. Triantis, and M. Kaitsa,
"Evaluating Electronic Examination Methods Applied to
Students of Electronics. Effectiveness and Comparison to the
Paper-and-Pencil Method", IEEE International Conference
on Sensor Networks, Ubiquitous, and Trustworthy
Computing, 2006, pp. 143-151.
518
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Abstract 1. Introduction
The importance of annotation as personal
expression of individuals on documents of Annotation is being defined as specific
interest can not be over emphasized in decision expression of interpretation of a document by a
support systems and experience sharing. An user of the document on the document. It is an
annotation model (AMIE: Annotation model for action as well as the resulting object. The
information exchange) proposed the integration personal expression of users is of interest
of the peculiarity of annotation creator for because; an annotation reflects the user’s view
decision making. The fact that annotation can and not the view of document creator. Because
assist in decision making was well discussed in of the personal traits in annotation, it has been
AMIE. If annotation is to be used for decision proposed as a useful tool for decision support
support, peculiarity of decision maker must be systems (Robert, 2007). In this same work, an
given proper attention specifically when it has to annotation model AMIE (Annotation model for
do with collaborative efforts. It is a known fact information exchange) was developed bearing in
that more and more decision makers are favored mind the specificities of document users who in
to the use of divergent access to information turn are annotation creators in a decision support.
devices including PDA and other non The model was based on principles of
convectional devices. Possibility of information information systems and decision making.
access specifically in annotation through The model can be summarized as
divergent sources must be considered with
substantial attention. The work gave a reviewed ∆ = Cx.Dt. Ar.(T 1 − T 2)
description of AMIE model in relation to Where
divergences of information sources. It presented Cx is the context of annotation. The context
efforts made in making annotation available is related to an object, signal and hypotheses.
across divergent devices in a collaborative It also has to do with the objective of
environment for decision making and for annotation, type of collaboration involved,
experience sharing. The platform of Microsoft information research problem, experience
visual studio dot net was used to experiment the sharing and decisional problem
proposal. Database running on SQL server CE Dt is the associated document, described
from PDA was synchronized to the standard SQL with bibliographic parameters such as title,
server to permit divergent information creation publication date, authors, etc…
and access. Ar is the document user who is also the
annotation creator. He has identity,
Keywords preferences, experiences, social values and
Annotation, heterogeneous environment, environments
devices, users parameters, access, creation (T1-T2) is the period when annotation was
made
520
this work, information is made available to data dictionaries to understand content of
annotation database and from annotation databases.
database using a parallel access mode. The context of annotation determined what
In the methodology adopted, three parts can be was passed into the information system. For
identified for data integration. The base example, if the context of annotation was
databases that were hosted on participating academic, the interest may be in the attributes of
devices, dynamic database generated on the the generalized (compound) database that has to
server end and the interface. The base databases do with education. The content of each database
are heterogeneous and diverse. Each database was made known through the delineator.
was built for a particular purpose and with a The platform of Microsoft visual studio dot
schema. Though the content of different net was used to experiment the proposal.
databases may be the same, their representation Database running on SQL server CE from PDA
may be different. Each database is was synchronized to the standard SQL server to
Base
Dict Delineator
1
1 (Content)
Base
Dict 2
2
Information
Base decoder Harmonizer System
(Structure) Interface
Base
n
Dict
n
Integration
Context
521
Referenced
information
source
Integrated heterogeneous
Information system
www.loria.fr. This layer was presented as a form content and combined in a dynamic environment
of web browser. The client machine on this layer on the web server. Practically, devices are
was linked to the web server by TCP/IP network. integrated into the system using existing
User’s request was assured on the internet technology proposed by Microsoft.
connection by the HTTP and GPRS protocol. The report underlined experimentation of the
The application layer was a functional layer proposal in decision making process and
that assures the processing of sent request and experience sharing, its adaptation to learning
corresponding response. For this prototype, processes is on course. In this case, three types of
Microsoft visual studio was used at the back end. learning were identified as
The data layer was linked to a database server. • Cognitive: mental skills (Knowledge)
The essence of the database was to store and • Affective: growth in feelings or
manage the associated information. Commands emotional areas (Attitude)
sent by the query of users are managed using • Psychomotor: manual or physical skills
SQL server at the server end. (Skills)
522
Formal framework and standard for device
integration in a collaborative annotation for [4.] Keyani Pedram, mRNA: A digital
decision making is being developed. Such annotation system to facilitate multi-
framework will be independent of technology disciplinary group collaboration
that may be employed.
[5.] Landsman Seth M., Alterman Richard,
Feinman Alex and Introne Joshua,
6. Reference “VesselWorld and ADAPTIVE”, R CS-
01-213,. Brandeis University. Demo
[1.] Brush A.J. Bernheim, Bargeron David, given at CSCW 2000, 2000
Grudin Jonathan, and Gupta Anoop,
“Notification for shared annotation of [6.] Marshall Catherine C., 1997,
digital documents”, Proceedings of CHI “Annotation: from paper books to the
2002, April 20-25, 2002, Minneapolis, digital library”, Proceedings of ACM DL
Minnesota, USA. , 2002 97 Philadelphia PA, USA
[2.] Chong Ng S. T., FlexNetDiscuss: “A [7.] Neuwirth Christine M., Kaufer David S.,
Generalized Contextual Group Chandhok Ravinder and Morris James
Communications System to Support H., “Issues in the Design of Computer
Learning Inside and Outside the Support for Co-authoring and
Classroom”, Proceedings of the The 3rd Commenting”, Proceedings of CSCW
IEEE International Conference on 1990, pages 183-195, 1990
Advanced Learning Technologies
(ICALT’03) , 2003 [8.] Oladipupo Oluremi, 2007, Distributed
Decision support system (DDSS) for
[3.] Freeman Jared and Hess Kathleen P., C2 Nigeria Bottling Company, BSc
Experimentation, C2 Decision making Computer Science thesis, University of
and cognitive analysis, C2 Assessment Ibadan
tools & metrics: Collaborative critical
thinking, 8th International command and [9.] Robert Charles Abiodun, 2007,
control research and technology L’annotation pour la recherche
symposium, June 17 – 19, 2003, National d’information dans le contexte
Defense University, Washington, DC, d’intelligence économique, Thèse
2003 doctorat de l'université Nancy 2, Nancy,
France, 16 février, 2007, 278 Pp
523
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
525
with context-aware capability were also proposed [15]. conditions for each learning step are defined in the
In the following sections, a U-learning Procedure third phase. In addition, this approach not only
Acquisition Method (UPAM) is proposed based on the provides preview service to prevent the domain expert
notations of these approaches. from feeling irritable, but also shows the progress of
content acquisition to the experts. The UPAM
3. U-learning procedure acquisition algorithm is given as follow:
method (UPAM)
Phase 1: Define context-aware parameters to be
In a context-aware u-learning activity, several considered.
kinds of interactions between the students and the 1.1: Initially, Learning Area Set (LAS) is defined as the
real-world contexts need to be taken into accounts. main activity zone and the Context Parameter Set
Usually, the domain expert will conduct several (CPS) is defined as the environmental parameters of
learning activities in a course unit. Each learning the main activity zone.
activity consists of several phases to guide the 1.2: While (there are more sub-activity areas to be
students to different learning contexts; furthermore, a identified in the main activity area)
phase consists of some relevant steps. Usually a {
learning activity is allowed to halt among phases; Add the new activity area to LAS and the
nevertheless, it would be better to prevent from the corresponding environmental parameters to CPS.
halt of the learning activity among steps, unless some }
accident has happened. 1.3: FOR (each Sub-activity area i)
Three kinds of learning activities can be conducted {
in a context-aware u-learning environment. For (each device j in Sub-activity area i)
(1). Learning material presentations based on the {
sequence of curriculum defined by the domain expert. Add device j and the corresponding context
Learning sequence and context awareness for this parameters to CPS.
kind of curriculum design is not absolutely required. }
The learning sequence is set for making learning more }
systematic by guide students to learn in the real world 1.4: Add personal context parameters of the students
with the supplemental materials provided by the to CPS.
learning system. In such a learning activity, usually 1.5: Add the parameters of personal profile and
the learning sequence would not affect the learning learning portfolios to CPS.
result. (2). A sequence of learning steps that guide the 1.6: Define the possible feedbacks that will be sent to
student to identify or classify a set of real-world the students via the mobile devices.
objects. The purpose of the curriculum design not
only emphasizes the learning sequence, but also Phase 2: Define the structure of the learning activity.
evaluates if the students understand the concepts to be 2.1 Set the general attributes for the learning activity.
learned. Therefore, for such a learning activity, the 2.2 Construct the conspectus of the learning activity.
learning sequences need to be more strictly followed 2.3 Preview the conspectus of the learning activity.
than that of the former. (3). The training of a series of
equipment operations as well as the operating Phase 3: Provide content and conditions for each
procedure. The operating procedure and the learning step.
operations of the equipment are highly correlated. The 3.1: FOR (each learning phase)
learning sequence of such a learning activity must be {
entirely followed. Give teaching content for each learning step in the
According to the foregoing and the past phase.
experiences, we propose a U-learning Procedure Define finishing conditions for each learning step
Acquisition Method, short for UPAM, to assist in the phase.
domain experts to plan the context-aware u-learning Confirm finishing conditions for each learning
activities in a more efficient and effective manner. step in the phase.
The UPAM algorithm consists of three phases: the Preview the teaching content and the learning
first phase is to get context parameters for the learning procedure in the phase
activities; the structure of the learning activities is }
defined in the second phase; the content and relevant 3.2: Preview the entire procedure of curriculum
(Optional).
526
4. Development of a computer-assisted u-
In order to clearly present the results acquired by learning activity design system
UPAM. Five context-aware parameters are used to
define the structure of UPAM [6]: To demonstrate the usefulness of our innovative
approach, two experts with great experiences in
(1) Personal context, including student’s location, planning u-learning curriculums were asked to
arrival time, body temperature, heartbeat rate, blood organize the context-aware learning activity of a
pressure etc. (2) Environmental context, including science course with UPAM. Sixth-grade students are
sensor’s ID, location, temperature, humid, gradient of the main students, and the aim of curriculum is to
atmosphere and other environmental context and understand seasons changed on the Earth and time
objects around the sensors. (3) Feedback returned from differences in different areas of the world.
sensors equipped on learning device, which includes The learning activity consists of a sequence of
data from target object, such as temperature, pH of learning targets specified and organized by the
water, value of air pollution, shape of tree and color. (4) teachers, such that the students can learn the domain
Personal information and learning portfolio derived knowledge by observing the real world objects with
from, including student’s calendar, starting time to the guidance and support from the digital world. The
learning activity, the shortest and longest time to learn learning system will actively and timely guide student
activity, internet on-line discussing statement, learning to operate equipments, which may improve student’s
place, learning portfolio and sequence and the learning effect.
restriction of learning activity etc. (5) Environmental Illustration and system presentation for UPAM are
information derived from database, including detailed shown in Figure 1. In phase 1, UPAM asked the expert
information about learning place, such as sequence of to provide context-aware parameters by showing the
learning activity, location limitation and management most frequently used attributes. If none of the default
rules, usage records, in location and equipments in parameters is preferred, the expert can add new
learning place. parameters to the candidate attribute list.
Although several previous studies have mentioned
the use of the context-aware parameters in the learning
activities, it is difficult for both the domain experts to
define the context-aware parameters while designing
the learning activities. The learning system developers
might be more aware of the context-aware parameters;
however, they are not the learning activity designers.
Therefore, the most efficient and effective way of
defining the parameters is to show the domain experts
the candidate parameters and to guide them to make
decisions, which is the strategy used in UPAM.
In addition to the definition of context-aware
parameters, UPAM guides the domain experts to
complete various contents for the learning activities,
including (1) Context-aware parameters and
architecture for curriculum; (2) Teaching content,
procedure and finishing conditions for each step; (3)
Additional information, such as expected learning path Figure 1. Context-aware Parameters
and the estimate for wireless sensor devices deployed. Acquisition
The learning path depends on the combination of
curriculum scheme and complete condition of each After defining the context-aware parameters, the
step. Moreover, the estimate of wireless sensor devices expert was asked to organize the learning events of the
relies on the integration of complete conditions for curriculum and establish dependent relationships
each step and context-aware parameters. Next section among the parameters and the events. In order to
we will take case study to introduce how UPAM to be manage the sequence of the learning events, it is
executed. necessary to set up finishing conditions for each step.
During the learning process, the learning system will
acquire learning contexts from the sensors or the
mobile devices, and compare them with expected
527
values. For the contexts that cannot be acquired from student. (2) Teaching content and procedure of the
the sensors, such as the comprehension status of the curriculum, as shown in Figure 3. (3) Additional
student, the learning system will try to acquire the information, such as learning sequence and the target
contexts by ask questions to the student through the locations for sensing students’ arrival, as shown in
mobile device. That is, the experts need to provide Table 3.
questions and the corresponding answers in advance.
Here is the scenario for illustrating these steps. First, Table 1. Category for Context-aware
students will be appointed to a projection screen; Parameters
besides, they need to watch an appointed movie then. Context of the learning environment & Environmental
System will ask them the question after 10 seconds data
they arrive the appointed place, “What scene do you Major active attributes
see in the movie? Option A, option B, option C.” The area
students are allowed to proceed to the next step if they (Tropic of (Opening
select the correct answer. Cancer Solar hours)
If the step can not be completed after several trials, Exploration
which implies that the students have encountered a Center)
problem in the learning activity, there are three Sub active attributes equipments Attributes of
alternative ways to deal with the situation (as shown in are area equipment
Figure 2): (The Nine (Opening (Projection (Location) ǵ
(1) Lead to the specific step. Planets hours) Screen) (Administrator)
(2) Let the student select one of the following actions: Exhibition (Globe) (Opening
“keeping the record and go next step”, “Asking the Chamber) hours) ǵ
domain expert for help” and “Asking the
(Location)
classmates who have completed the step for help”.
(World Time (Opening (Projection (Opening
(3) Inform the domain expert to terminate the current
clock hours) Screen) hours) ǵ
learning activity.
Exhibition (Location) ǵ
Chamber) (Administrator)ǵ
(Usage status)
(World (Location)
Time
clocks)
… … … …
528
planned procedure and additional information while
Table 3. Additional Information guides the domain experts to design the learning
Expected learning sequence of the curriculum. activities. From the practical application on a science
[The Nine Planets Exhibition Chamber]! ! [The course, it can be seen that UPAM is capable of
Nine Planets Exhibition Chamber- Globe]! ! [The improving the efficiency and effectiveness of creating
Nine Planets Exhibition Chamber - Projection Screen] context-aware u-learning activities. In the future, more
! [World Time clock Exhibition Chamber] ! practical experiments will be conducted by applying
World Time clock Exhibition Chamber -[ World Time UPAM to various kinds of science and language
clocks]! ! [World Time clock Exhibition Chamber courses.
- Projection Screen]…
Make sure the place where students must arrive. Acknowledgement
[Tropic of Cancer Solar Exploration Center] This study is supported in part by the National
[The Nine Planets Exhibition Chamber - Globe] Science Council of the Republic of China under
[The Nine Planets Exhibition Chamber - Projection contract numbers NSC 96-2520-S-024-004-MY3 and
Screen] NSC 95-2520-S-024-003-MY3.
[The Nine Planets Exhibition Chamber ]
[World Time clock Exhibition Chamber - World Time References
clocks]
[World Time clock Exhibition Chamber - Projection [1] Allard Strijker and Betty Collis, “Strategies for Reuse
Screen] of Learning objects: Context Dimensions,”
… International Journal on E-Learning, vol. 5, 2006,
pp.89-94.
[2] Cheng, L., and Marsic, I., “Piecewise Network
Figure 3 shows the UPAM interface for defining Awareness Service for Wireless/Mobile Pervasive
teaching materials, relevant parameters and finishing Computing,” Mobile Networks and Applications
condition of each step. (MONET), vol.7, no.4, 2002, pp. 269-278.
[3] Cheng, Z., Sun, S., Kansen, M., Huang, T., and He, A,
“A personalized ubiquitous education support
environment by comparing learning instructional
requirement with learner's behavior,” In the
Proceedings of the IEEE 19th International
Conference on Advanced Information Networking and
Applications, TamKang University Taiwan, March
2005, pp. 567-573.
[4] Christos Doulkeridis, Nikos Loutas and Michalis
Vazirgiannis, “A System Architecture for Context-
Aware Service Discovery,“ Electronic Notes in
Theoretical Computer Science, vol.146, 2006, pp.101–
116.
[5] G. D. Abowd, “Classroom 2000: An Experiment with
the Instrumentation of a Living Educational
Environment,” IBM Systems Journal, vol.38, no.4,
1999, pp. 508-530.
[6] Gwo-Jen Hwang, “Criteria and Strategies of
Ubiquitous Learning,” Proceedings of the IEEE
Figure 3. Teaching content and planned International Conference on Sensor Networks,
procedure Ubiquitous, and Trustworthy Computing (SUTC’06),
vol.2, 2006, pp.72-77.
5. Conclusions and feature research [7] Gwo-Jen Hwang, Chin-Chung Tsai and Stephen J.H.
Yang, “Criteria, Strategies and Research Issues of
Context-Aware Ubiquitous Learning (Periodical
In this study, an innovative approach, UPAM, to
style—Accepted for publication),” Educational
acquire related data for curriculum is proposed, which Technology & Society, to be published.
can assist the domain experts to scheme curriculum in [8] Joiner, R., Nethercott, J., Hull, R., and Reid, J,
an efficient and effective way with friendly student “Designing Educational Experiences Using
interfaces. UPAM will produce some useful references, Ubiquitous Technology,” Computers in Human
such as context-aware parameters, teaching content, Behavior, vol.22, no.1, 2006, pp. 67-76.
529
[9] Karen Henricksen and Jadwiga Indulska, “Developing Technical Reports (UBI-1-1), vol.39, April, 2003,
context-aware pervasive computing applications: pp.1-6.
Models and approach,” Pervasive and Mobile
Computing, vol.2, 2006, pp.37–64.
[10] Lonsdale, P., Baber, C., Sharples, M., and Arvanitis,
T, “A context awareness architecture for facilitating
mobile learning,” Paper presented at the meeting of
the second European conference on learning with
mobile devices (MLEARN 2003), London, UK, May,
2003.
[11] M. Khedr and A. Karmouch, “ACAI: agent-based
context-aware infrastructure for spontaneous
applications,” Computer Applications, vol.28, 2005,
pp.19–44.
[12] Marek Hatala, Ron Wakkary and Leila Kalantari,
“Rules and ontologies in support of real-time
ubiquitous application,” Web Semantics: Science,
Services and Agents on the World Wide Web , vol. 3,
2005, pp.5–22.
[13] Ogata, H., and Yano, Y., “Context-Aware Support for
Computer-Supported Ubiquitous Learning,” In
proceedings of the 2nd IEEE International Workshop
on Wireless and Mobile Technologies in Education
(WMTE'04), JungLi, Taiwan, March 2004, pp. 27-34.
[14] Ohbyung Kwon, Keedong Yoo and Euiho Suh,
“ubiES: Applying ubiquitous computing technologies
to an expert system for context-aware proactive
services,” Electronic Commerce Research and
Applications, vol.5, 2006, pp.209-219.
[15] Ohbyung Kwon, “The potential roles of context-aware
computing technology in optimization-based
intelligent decision-making,” Expert Systems with
Applications, vol.31, 2006, pp.629-642.
[16] Rogers, Y., Price, S., Randell, C., Fraser, D. S., Weal,
M., and Fitzpatrick, G, “Ubi-learning Integrating
Indoor and Outdoor Learning Experiences,”
Communications of the ACM, vol.48, no.1, pp.55-59,
2005.
[17] S. J. H. Yang, “Context Aware Ubiquitous Learning
Environments for Peer-to-Peer Collaborative
Learning, “ Journal of Educational Technology and
Society, vol. 9, no.1 , 2006, pp.188-201.
[18] Soe-Tsyr Yuan and Fang-Yu Chen, “UbiSrvInt- a
context-aware fault-tolerant approach toward wireless
P2P service provision,” Expert Systems with
Applications, vol. 32, 2007, pp.726–752.
[19] Uemukai, T., Hara, T., and Nishio, S, “A Method for
Selecting Output Data from Ubiquitous Terminals in a
Ubiquitous Computing Environment,” In the
proceedings of the 24th International Conference on
Distributed Computing Systems Workshops
(ICDCSW’04), Tokyo, Japan, March 2004, pp.562-
567.
[20] Wei-Po Lee, “Deploying personalized mobile services
in an agent-based environment,” Expert Systems with
Applications, vol.32, 2007, pp. 1194-1207.
[21] Y. Kawahara, M. Minami, H. Morikawa, and T.
Aoyama,, “ A Real-World Oriented Networking for
Ubiquitous Computing Environment,” IPSJ SIG
530
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Chih-Kai Chang
National University of Tainan
Department of Information and Learning Technology
chihkai@mail.nutn.edu.tw
drag-and-drop
stand and handheld the mobile device to drag-and-drop Learner accuracy Research
532
the orientation of the dots (2), and the proximity of the
dots (2). Hence, researchers can verify whether the
arrangement of dots affects learners’ usability testing
results of selection or not. The right snapshot of Figure
3 shows tasks of dragging a misspelled letter into a
waste bin. The system will produce 4 (2*2) conditions
according the distance (i.e. short and long) and
orientation (i.e. vertical and horizontal). Moreover, the
total time, reaction time, and movement speed are
calculated and recorded for further analysis.
3. Experimental results
Seventy seven children from Grade 1 (mean age 7
years) and Grade 2 (mean age 8 years) participated in
the experiment of measuring usability on a tablet PC.
Figure 2. The testing system snapshot on tablet PC. Sixty two children from Grade 1 and Grade 2
participated in the experiment of measuring usability
Figure 3 shows the snapshots of the usability testing on a PDA. The children had not received formal
system on a PDA. The design and functionality of the training in reading English, but some of they had learn
system is the same as the system on a tablet PC, how to recognize English letters in Kindergarten.
illustrated in Figure 2. However, the size and distance Every child is asked to complete the usability test in
of targets (i.e. the dots and characters) are different the situation of standing-up and holding the tablet PC
from those on a tablet PC. Although a dot uses 13 or PDA because mobile learning device for a learning
pixels on a tablet PC and 10 pixels on a PDA, the size activity of the field investigation is used in similar
of a dot on both systems is 0.3 centimeter; meanwhile, situation. Table 1 presents the experimental results of
the size of the trash can on both systems is 1 the reaction time, proportion of selecting errors,
centimeter width and 2 centimeter height. Hence, a dot horizontal accuracy, and vertical accuracy for the
on a PDA looks larger than a dot on a tablet PC point-and-click testing on a tablet PC or PDA. The
relatively. The distance between dots of the usability experimental results on a PDA are listed as the
testing system is 0.3 centimeter (i.e. 13 pixels) or 0.8 numbers in brackets.
centimeter (i.e. 33 pixels) on tablet PC. The distance On a tablet PC, children averagely need 7.47s to
between dots is shorter on the PDA because of the click the red dot. Although children in Grade 2 clicked
screen size limitation. The distance between dots is 0.2 faster than Grade 1, the data analysis result, F(1,
centimeter (i.e. 7 pixels) or 0.8 centimeter (i.e. 20 75)=0.592, p=0.444>0.05, indicates that there is no
pixels). For the drag-and-drop interaction, the distance significant difference between Grade 1 and Grade 2.
between a character and the trash can is 17 or 8 Similar with previous studies of mouse input, placing
centimeter on a tablet PC; meanwhile, the distance dots close together causes longer reaction times (7.56s
between a character and the trash can is 5 or 2 > 7.17s). However, the data analysis result, F(1,
centimeter on a PDA.
76)=0.543,p=0.463>0.05, indicates that there is no
significant difference between far and close distracting
objects. This suggests that the children need more time
to complete an aiming and clicking task by a pen than
by a mouse in previous study. Hence, the time
difference between far and close distracting objects
becomes insignificant.
On a PDA, children averagely need 8.47s to click
the red dot. Children in Grade 2 significantly clicked
faster than Grade 1, indicated by statistical result F(1,
533
60)=17.745, p=0.000<0.05. The data analysis result, Moreover, the proportion of errors on a tablet PC is
F(1, 61)=5.921, p=0.018<0.05, indicates that there is significant higher than it on a PDA according to the t-
significant difference between far and close distracting test result t(61)=-2.707, p=0.009<0.05. According
objects. To compare the results on both mobile informal interview, children reported that the thickness
devices, the independent t-test is used to make degree of the pen affects their usability. The pen of a
judgments from small samples. The result, t(61)=- PDA is too thin to handle; meanwhile, they get used to
2.738, p=0.008<0.005, shows that the reaction time on the thickness of the pen for a tablet PC.
a tablet PC is significant smaller than it on a PDA.
534
6. Acknowledgements
4. Discussion and future work This study was supported by a grant from National
Science Council of Taiwan under contract number
Usability of input methods for learners is a critical NSC 95-2520-S-024-007 and NSC95-2524-S-008-001.
issue for an instructor considering adopting a mobile
learning device. Therefore, the aim of this study is to 7. References
investigate young children’s capability of using pen-
based input on two mobile devices for the mobile [1] Smith, D., & Keep, R. (1986). Children's
learning situation. The experimental results clearly Opinions of Educational Software. Educational
showed that young children can use a pen-like stylus to Research, 28(2), 83-88.
select and move an object although the reaction time,
[2] Strommen, E. F. (1993). Is It Easier to Hop or
accuracy, and speed are not as good as a mouse for
Walk? Development Issues in Interface Design.
selection and movement. In educational software for
Human-Computer Interaction, 8(4), 337-352.
mobile learning, the objects may need to be designed
larger for clicking and closer for dragging. In previous [3] Hourcade, J. P. (2002). It’s too small!
research, the operation of click-move-click is reported Implications of children’s developing motor skills
as a more appropriate procedure for young children on graphical user interfaces: Technical Report
than the operation of drag-and-drop. This study HCIL-2002.
suggests similar conclusion on both PDA and a table
[4] Inkpen, K. M. (1997). Three Important Research
PC because keeping pressure for a dragging movement
Agendas for Educational Multimedia: Learning,
on the touch screen of a mobile learning device seems
Children, and Gender. AACE World Conference
difficult for children. Especially, the physical distance
of moving an object by a pen on a tablet PC is much on Educational Multimedia and Hypermedia, 97,
longer than doing that on a PDA or by a mouse. 521-526.
[5] Inkpen, K. M. (2001). Drag-and-Drop versus
5. Conclusion Point-and-Click Mouse Interaction Styles for
Children. ACM Transactions on Computer-
This study investigated young children’s capability Human Interaction, 8(1), 1-33.
of pen-based input because the stylus, a pen-like [6] MacKenzie, I. S., Sellen, A., & Buxton, W. A. S.
drawing apparatus, is a popular and common input (1991). A comparison of input devices in element
device on a table PC. Some pilot classroom had been pointing and dragging tasks. Proceedings of the
introduced the mobile learning devices, such as PDA SIGCHI conference on Human factors in
or tablet PC, for supporting field investigation activity. computing systems: Reaching through technology,
In the near future, a personal, portable, wirelessly- 161-166.
networked learning device may be ready-to-hand
accessed for every child. Hence, understanding young [7] Joiner, R., Messer, D., Light, P., & Littleton, K.
children’ capability on those novel devices is crucial (1998). It is best to point for young children: a
for creating a “seamless learning” environment, which comparison of children's pointing and dragging.
implies that a student can learn by using the personal Computers in Human Behavior, 14(3), 513-529.
device as a mediator whenever they are curious in a
[8] Chambers, B., Abrami, P. C., McWhaw, K., &
variety of scenarios. This study focused on testing
Therrien, M. C. (2001). Developing a Computer-
young children’s aiming and moving capabilities on a
Assisted Tutoring Program to Help Children at
table PC while they are standing-up and holding the
Risk Learn to Read, Educational Research and
tablet PC. In conclusion, the experimental results show
Evaluation, Vol. 7, Issue 2&3, pp. 223-239.
that young children are clearly capable of using the
pen-based input for selection and movement on a tablet [9] Elliott, D., Hansen, S., Mendoza, J., & Tremblay,
PC although their capability of movement by the stylus L. (2004). Learning to optimize speed, accuracy,
is significantly worse than using a mouse. Therefore, and energy expenditure: a framework for
young children may be more comfortable to use the understanding speed-accuracy relations in goal-
device with the proper interface design for them than directed aiming. J Mot Behav, 36(3), 339-351.
the “normal” interface, which is originally designed for
[10] Grossman, T., Hinckley, K., Baudisch, P.,
an adult.
Agrawala, M., & Balakrishnan, R. (2006). Hover
widgets: using the tracking state to extend the
capabilities of pen-operated devices. Proceedings
535
of the SIGCHI conference on Human Factors in ACM Transactions on Computer-Human
computing systems, 861-870. Interaction (TOCHI), 7(3), 384-416.
[11] Kuhtz-Buschbeck, J. P., Boczek-Funcke, A., [14] Saund, E., & Lank, E. (2003). Stylus input and
Illert, M., Joehnk, K., & Stolze, H. (1999). editing without prior selection of mode.
Prehension movements and motor development in Proceedings of the 16th annual ACM symposium
children. Experimental Brain Research, 128(1), on User interface software and technology, 213-
65-68. 216.
[12] Donker, A., & Reitsma, P. (2007). Young [15] Djeziri, S., Guerfali, W., Plamondon, R., &
children's ability to use a computer mouse. Robert, J. M. (2002). Learning handwriting with
Computers & Education, 48(4), 602-617. pen-based systems: computational issues. Pattern
Recognition, 35(5), 1049-1057.
[13] Ren, X., & Moriya, S. (2000). Improving
selection performance on pen-based systems: a
study of pen-based interaction for selection tasks.
536
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
Siew-Rong Wu
Center for General Education
National Yang-Ming University
srwu@ym.edu.tw
538
learning tool different from what he or she had chosen projects to ensure even better learning outcomes
in Project 1. Each group was then divided into smaller through deep learning. Secondly, materials should be
groups for collaborative learning. One thing different the same for all learners in the experiments. This will
from Project 1 was that this time students were free to enable objective comparisons of learning effects.
search for any audio or video podcasts of their group’ s Podcasts used in the two projects were different. In
interests, download them to the MPs or MP4s for Podcast Project 1, the only podcast used for all
learning, and then share with their partners. Students in students’learning was the same, while in Podcast
the PC group would use the traditional way of Project 2, students were asked to choose much longer
learning – just using the podcasts on the Internet podcasts they liked. Some of them did not collaborate
directly, together with their partners. with others because they preferred to work on the
In the learning process, half of the members in each topics they liked alone, rather than working with
group would do concept-mapping and submit the partners for topics they were less interested. Therefore,
online concept maps they drew. Concept maps were for statistical reasons, only questionnaire assessment
either hand-drawn or drawn by using the online results obtained from Podcast Project 1 will be
concept-mapping tool at: http://ihmc.us. All concept reported here.
maps were saved. To exclude interaction with other Table 1 shows that MP3s were the most frequently
factors, students were not allowed to refer to any on- used tool for learning by using podcasts. The frequency
line or off-line materials. They were asked to focus of the use of MP3s was almost 5 times of that of the
only on the podcasts they found. Class podcasts were MP4s and PCs groups. However, when the students
produced after these two projects were completed. used MP4s, their average learning duration was 7 times
of that of the MP3s group, and its total time of use was
2.3. Learning attitude assessments 1.4 times of that of the MP3s group. That was exactly
an indication of deep learning! In the questionnaires,
At the end of each project, learning attitudes, participants also reported that portability and
motivation, and interests in the learning of scientific convenience were the most decisive factors for them
listening and speaking were assessed by identical when they chose tools to assist their learning of
questionnaires, as shown in the Appendix. The scientific English because they were very busy with
frequency/time/duration/location of learning, and studies, and their time was fragmental.
feelings/difficulties in the learning of science and These results indicate that MP3s were much more
scientific English from podcasts in the PCs, MP3s, and frequently used for the learning of scientific listening
MP4s scenarios were also assessed. and speaking because they could be used anywhere and
anytime the users wanted. Comparatively, MP4s were
3. Results and Discussion less frequently used because, according to the
respondents, they could not watch the film as they
3.1. Major findings and their implications walked or dined, although it was helpful to increase
their comprehension of the content. The use of PCs was
The most exciting results in this study are as follows: easy and convenient, but the location of use was
(a) the deep learning that occurred autonomously in confined.
Podcast Project 2; (b) the participants’use frequency of However, when it comes to the duration of learning
tool, as well as the dramatically different duration of per time, the MP4s tremendously outperformed the
learning in MP4s and MP3s. In the experimental design, MP3s! This apparently shows how MP4s could
to prevent interactions with irrelevant variables, the facilitate deep learning and meanwhile enhance
students were not allowed to refer to any scientific participants’interests in learning scientific listening
articles or papers. And yet, surprisingly, in the learning and speaking, although MP3s were shown to be the
processes, students were inspired by the content of the most frequently used tool among the three. Besides,
science podcasts. Hence, they autonomously searched MP4s also outperformed the other two tools in
for scientific essays or papers that were related to their participants’total time of tool use.
topics. Their in-depth oral presentations on the learning
outcomes were impressive. This phenomenon is a proof
that podcasting strongly motivated participants’
learning. This finding was also pedagogically
meaningful. Firstly, in the future, deep learning
activities should be implemented into the podcast
539
the concept maps. Much higher-order thinking was
Table 1.St
ude
nts
’us
eoft
het
hre
etool
sforl
ear
ning. displayed in their concept maps and oral presentations.
Even if some critical higher-order relations might have
been missed out, concept-mapping enabled the learners
to put it all together [8].
Duration Total
Learning attitude is another important factor in
Average of time of
learning. Figure 1 shows the assessment results
frequency learning tool obtained through questionnaires.
Podcast of tool per time use
Project 1 use (min.) (min.)
MP4 ( n=11) 4.8 20.5 76.1 Podcast Project 1
100%
MP3 ( n=9) 22.4 3.2 54.8
MP4
Percentage of responses
80%
PC ( n=15) 4 13 47.1 MP3
60% PC
40%
3.2. Findings about the enhancement of students’
motivation and learning attitude 20%
0%
Results of questionnaire assessments also show that Podcast Project 2
in Podcast Project 2, when participants were free to 100%
choose science podcasts for topics of their interests, in MP4
80%
Class A, 90% of the participants who collaborated in MP3
Percentage of responses
540
the content of science learning is more difficult and the English and their preference of using the MP4s for
length is longer, both MP4s and MP3s can more deep learning, as well as the longest duration of tool
effectively enhance students’learning attitude. use have suggested an important implication
The learning attitude of the participants in the PC pedagogically. MP4s are effective tools in the learning
group in both projects, however, show the least of scientific English in the podcasting scenarios.
enhancement of learning attitude, despite the fact that Concept-mapping was also proved to be an excellent
in Project 2, the learning attitude of participants started tool for the consolidation of new knowledge in science
out as the best. This was probably because participants [3].
were asked to choose a different tool than the one they
used in Project 1. The participants now in the PC group 5. Acknowledgements:
were those signed up to the MP4 and MP3 groups, and
they already had exciting and successful learning This study was supported in part by the National
experiences from Project 1. Likewise, those in the MP4 Science Council of Taiwan, Republic of China (Grants
and MP3 groups were mostly those from the PC group no. NSC-96-2524-S-008-002 and NSC-95-2520-S-010-
in Project 1, so their learning attitude was not as good 001).
as that of the other two groups.
Another interesting finding in the PC group’ s 6. References
participants in both projects is that there was not much
variation in their learning attitude before and after the
projects. This is very different from that of the MP4 [1] Chen, N.S., Kinshuk, J., Wei, C.W., & Chen, H.J.
and MP3 groups. Perhaps it was because they are using (2007). Mining e-Learning Domain Concept Map from
PCs everyday; therefore, using the podcasts on the PC Academic Articles. Computers & Education, pp. 694-
is not exciting. Therefore, their learning attitude was 698.
not enhanced much. [2] Godwin-Jones, R. (2005). Emerging Technologies:
Skype and Podcasting: Disruptive Technologies for
3.3. Findings about students’use of tools Language Learning, Language Learning and
Technology, 5 (3), 9-12. Retrieved from:
Questionnaire assessments also found dormitories to http://llt.msu.edu/vol9num3/emerging/.
be the most popular location where all three groups of
participants used the MP4s, MP3s, or PCs, esp. for [3] Hilbert, T.S. & Renkl, A. (2007). Concept mapping
those in the MP3 group, as its frequency tremendously as a follow-up strategy to learning from texts: what
outnumbered that of the other two groups. On the train characterizes good and poor mappers? Instructional
or MRT (Mass Rapid Transit), the MP3s were much Science, 2007, DOI 10.1007/s11251-007-9022-9.
more often used for the learning of science in these [4] Novak, J.D., & Gowin, D.B. (1984). Learning how
projects than the MP4s. All participants who signed up to learn. New York: Cambridge University Press.
for the MP4s were excited and cherished the
opportunity of using it for science learning, even [5] Novak, J.D. (1990). Concept mapping: A useful
though a few of them also admitted that it was a bit tool for science and education. Journal of Research in
embarrassing to use it on the MRT because they might Science Teaching, 10, 923-949.
attract other passengers’attention. [6] Novak, J.D. (1995). Concept mapping to facilitate
teaching and learning. Prospects. XXV(1),79-85.
4. Conclusion [7] Offir, B., Lev, Y., & Bezalel, R. (2007). Surface and
deep learning processes in distance education:
The findings in this study were significant in that Synchronous versus asynchronous systems, Computers
they provide insights for the teaching of scientific & Education, doi:10.1016/j.compedu.2007.10.009.
English for EFL (English as a foreign Language)
students. The deep learning that has occurred in the [8] Perini, L. (2005). Visual representation. In S.
participants’ learning processes [7] was exciting. Sarkar and J. Pfeifer (Eds.), Philosophy of Science: An
Apparently, higher-order thinking and cognitive Encyclopedia, 2, 863-870. London: Routledge.
engagement [9] were enhanced by the use of podcasts [9] Stoney, S., & Oliver, R. (1999). Can Higher Order
in the MP4s, MP3s, and PCs scenarios. Thinking and Cognitive Engagement Be Enhanced with
Major findings about the participants’preference of Multimedia? Interactive Multimedia Electronic
using the MP3s for surface learning of scientific Journal of Computer-Enhanced Learning 1(2).
541
7. Appendix ____________________________________________
________________.
Questionnaire for post-project assessment.
Did your way of learning in this project, that is, either
Fill out the following questionnaire, post it in our by using the PC or doing mobile-learning, enhance
forume n t
it
led“ Questionnairea bou tt h e podc ast
ing your motivation and interest in learning scientific
expe rience s
”a nds u
bmi tallv ersionsofy ou ron li
n e listening and speaking in English?
concept-maps on Oct. 10, 2008 when we meet again.
In our class assessment, on your concept maps, please ______ Yes, because
specify that they are the final concept maps. Your ____________________________________________
participation in answering this questionnaire will be ____________________________________________
counted toward your participation score for this course. ____________________________________________
__.
Your name: ____________; Department:
_____________________; gender: ______. ______No, because
____________________________________________
1. Which group do you belong to? ___PC group; ___ ____________________________________________
P3 group; ___P4 group. ____________________________________________
_______________.
Why did you choose to use this tool? (Reasons)
____________________________________________
_____________________. 4. Feelings of these learning experiences. Difficulties
and excitement should be reported as well. Also, please
2. In the space below, please record the following explain your attitude about podcasting. Is it helpful or
information about your learning from the podcasts: not, and why? Will you suggest me to implement
frequency (= how many times), duration (= for how podcasting by using MP4s and MP3s in this course in
long each time; the exact period of time for learning), the future?
when (at what time, and the dates) and where (e.g.
wh iley ou’r eta ki
n gtheMRTorwh ileyou ’rewa it i
ngi
n
line); and strategies you used for science learning.
542
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
544
UMTS were prepared. WCDMA or CDMA2000 falls required by broadcasting a frame. The bottom value of
into the category of 3G, and TD-SCDMA popular in data size at this unit time point is represented by the
Mainland China is also a type of 3G. 3G is capable of vector d (t). From the 1st time point to the t time point,
transmitting digital data at high rate and adopts the the total amount of vectors of data sizes is represented
same package transmission and IP network addressing by D (t). Please see Formula (4.3.1) shown as follows:
techniques as the computer network, and its highest
¦
t
D (t ) d (i ) ʳ ʳ ʳ ʻˇˁˆˁ˄ʼʳ
transmitting rate reaches up to 384K/bps ~2M/bps. i 1
The 3.5G (HSDPA) is the high-speed version of ˪˸ʳ ˶˴́ʳ ̈̆˸ʳ ̇˻˸ʳ ˶˴̃˴˶˼̇̌ʳ ̂˹ʳ ̇˻˸ʳ ˵̈˹˹˸̅ʳ ̍̂́˸ʳ ˴̇ʳ ̇˻˸ʳ
WCDMA 3G technology. HSDPA is the abbreviation ̈̆˸̅ϗ̆ʳ ˸́˷ʳ ˴́˷ʳ ̇˻˸ʳ ̇̂̇˴˿ʳ ́̈̀˵˸̅ʳ ̂˹ʳ ˹̅˴̀˸̆ʳ ̇̂ʳ ˶˴˿˶̈˿˴̇˸ʳ
of High-Speed Downlink Packet Access, which is a ̇˻˸ʳ̈̃̃˸̅ʳ̅˸˶˸˼̉˼́˺ʳ˿˼̀˼̇ʳ̂˹ʳ̇˻˸ʳ˵̈˹˹˸̅ʳ̍̂́˸ˁʳ˧˻˸ʳ˶˴̃˴˶˼̇̌ʳ
mobile communication protocol, and it is used to ̂˹ʳ ̇˻˸ʳ ˵̈˹˹˸̅ʳ ̍̂́˸ʳ ˼̆ʳ ̅˸̃̅˸̆˸́̇˸˷ʳ ˵̌ʳ ˵ʳ ˴́˷ʳ ̇˻˸ʳ ̇̂̇˴˿ʳ
improve the downlink connection rate of 3G. This ́̈̀˵˸̅ʳ ̂˹ʳ ˹̅˴̀˸̆ʳ ˼̆ʳ ̅˸̃̅˸̆˸́̇˸˷ʳ ˵̌ʳ ˡˁʳ ˧˻˸ʳ ̀˸̇˻̂˷ʳ ˹̂̅ʳ
protocol provides packet data services in the down
˶˴˿˶̈˿˴̇˼́˺ʳ ̇˻˸ʳ ̅˸˶˸˼̉˼́˺ʳ ̈̃̃˸̅ʳ ˿˼̀˼̇ʳ ˕ʻ̇ʼʳ ̂˹ʳ ̇˻˸ʳ ˵̈˹˹˸̅ʳ
chain of W-CDMA. The transmitting rate may reach 8-
10 Mbit/s in a 5MHz signal carrier (If MIMO ̍̂́˸ʳ˼̆ʳ̆˻̂̊́ʳ˼́ʳ˙̂̅̀̈˿˴ʳʻˇˁˆˁ˅ʼˁʳʳ
technology is used, it may reach 20 Mbit/s.). In its ʳ B(t ) min{D(t 1) b, D( N )} ʳ ʻˇˁˆˁ˅ʼʳ
actual realization, Adaptive AMC, MIMO, HARQ, for t 2,...., N B(1) b B(0) 0
quick dispatch and Fast Cell Selection are adopted [6]. ˜˹ʳ̇˻˸ʳ̉˸˶̇̂̅ʳ̀˸˸̇˼́˺ʳ̈̃̃˸̅ʳ˴́˷ʳ˿̂̊˸̅ʳ̅˸˶˸˼̉˼́˺ʳ˿˼̀˼̇̆ʳ
In Taiwan, the highest 3.5G speed rate is 3.6Mbps. ̂˹ʳ ̇˻˸ʳ ˵̈˹˹˸̅ʳ ̍̂́˸ʳ ˴̇ʳ ˴ʳ ̈́˼̇ʳ ̇˼̀˸ʳ ̃̂˼́̇ʳ ˼̆ʳ ˴ʻ̇ʼʿʳ ̇˻˸ʳ ̇̂̇˴˿ʳ
˴̀̂̈́̇ʳ ̂˹ʳ ̉˸˶̇̂̅̆ʳ ʻ˹̅̂̀ʳ ̇˻˸ʳ ˄̆̇ʳ ̇˼̀˸ʳ ̃̂˼́̇ʳ ̇̂ʳ ̇˻˸ʳ ̇ʳ ̇˼̀˸ʳ
4.3 Streaming Technology ̃̂˼́̇ʼʳ̀˸˸̇˼́˺ʳ̈̃̃˸̅ʳ˴́˷ʳ˿̂̊˸̅ʳ˿˼̀˼̇̆ʳ̊˼˿˿ʳ˵˸ʳ˔ʻ̇ʼˁʳˣ˿˸˴̆˸ʳ
̆˸˸ʳ˙̂̅̀̈˿˴ʳʻˇˁˆˁˆʼʳ̆˻̂̊́ʳ˴̆ʳ˹̂˿˿̂̊̆ˍʳʳʳ
The so-called streaming technology refers to the
¦
t
audio-visual technology of transmitting multi-media ʳʳ A(t ) i 1
a (i ) ʳʳ ʳ ʳʻˇˁˆˁˆʼʳ
data (audio-visual information and written language, ˧˻˸ʳ̀˸̇˻̂˷ʳ˹̂̅ʳ̀˴˾˼́˺ʳ̆̀̂̂̇˻ʳ̆̇̅˸˴̀˼́˺ʳ̆˶˻˸˷̈˿˸ʳ˼̆ʳ
etc), by utilizing current network equipments, to a
̇̂ʳ ̀˴˼́̇˴˼́ʳ ̇˻˸ʳ ˷˴̇˴ʳ ̆˼̍˸ʳ ˹̂̅ʳ ̆̇̅˸˴̀˼́˺ʳ ̇̅˴́̆̀˼̆̆˼̂́ʳ
single point or multiple points. Protocols such as
Multicast, Unicast, RTSP, RTP and TCPIP are adopted. ˵˸̇̊˸˸́ʳ̇˻˸ʳ̈̃̃˸̅ʳ˴́˷ʳ˿̂̊˸̅ʳ̅˸˶˸˼̉˼́˺ʳ˿˼̀˼̇̆ʳ̂˹ʳ̇˻˸ʳ˵̈˹˹˸̅ʳ
Based on these communication protocols, multi- ̍̂́˸ʿʳ ˴́˷ʳ ̊˻˸́ʳ ˔ʳ ʻ̇ʼʳ ̀˸˸̇˼́˺ʳ ̈̃̃˸̅ʳ ˴́˷ʳ ˿̂̊˸̅ʳ ˿˼̀˼̇̆ʳ ̂˹ʳ
media data are divided into several small frames, and ̇˻˸ʳ ˵̈˹˹˸̅ʳ ̍̂́˸ʳ ̂˹ʳ ˕ʳ ʻ̇ʼʳ ˴́˷ʳ ˗ʳ ʻ̇ʼʿʳ ˴ʳ ˹˸˴̆˼˵˿˸ʳ ̆̇̅˸˴̀˼́˺ʳ
then transmitted based on appropriate frame rate/sec, ̆˶˻˸˷̈˿˸ʳ ˼̆ʳ ˺˸́˸̅˴̇˸˷ˁʳ ˣ˿˸˴̆˸ʳ ̆˸˸ʳ ˙̂̅̀̈˿˴ʳ ʻˇˁˆˁˇʼʳ ̆˻̂̊́ʳ
and next read at the receiving end only if sufficient ˴̆ʳ˹̂˿˿̂̊̆ˍʳʳ
frames are received; and therefore, there is no need to D(t ) A(t ) B(t ) ʳʻˇˁˆˁˇʼʳ
receive all multi-media data. Figure 2 shows the
ʳʳ˕˴̆˸˷ʳ ̂́ʳ ˙̂̅̀̈˿˴ʳ ʻˇˁˆˁˇʼʿʳ ̊˸ʳ ˶˴́ʳ ̂˵̇˴˼́ʳ ˴ʳ ̆̀̂̂̇˻ʳ
locations of all communication protocols in the
protocol framework. ̆̇̅˸˴̀˼́˺ʳ̆˶˻˸˷̈˿˸ʳ˴̆ʳ̆˻̂̊́ʳ˼́ʳFigureˁˆˁʳ
545
˵˸˶˴̈̆˸ʳ ̂˹ʳ ˼́̆̈˹˹˼˶˼˸́̇ʳ ˵̈˹˹˸̅ʳ ̆̃˴˶˸ʳ ˴̅˼̆˼́˺ʳ ˹̅̂̀ʳ ˴ʳ ̉˸̅̌ʳ Considering that network communication
˹˴̆̇ʳ̆̇̅˸˴̀˼́˺ʳ̇̅˴́̆̀˼̇̇˼́˺ʳ̆̃˸˸˷ˮˊʿˋ˰ˁʳ techniques such as 3G, 3.5G, WiMax, WLAN, RFID,
4.4 Sure Stream Technology Bluetooth and irDA are becoming increasingly mature,
Because of the WilMax basement stations have not
The Sure Stream refers to the technology of been widely constructed, and the transmitting distance
transmitting A/V files by means of streaming via of RFID, irDA or Bluetooth is still too short (see Table
Stream Server and then broadcasting media transmitted 1: Communication Techniques Comparison).So this
with special condensation algorithm and based on the research put importance to environments such as 3.5G,
bandwidth of the user’s end. With the SVT (scalable 3G and WLAN.
video technology), even a low-speed device can select
the optimum condensation code rate to broadcast Table1 : Communication Techniques Comparison
media data in a smooth fashion, without releasing all
media data. Its main operating methods are shown as
follows:
1) First, establish a coding framework, which allows
several streams at different speed rates to be coded
at the same time and then incorporates them into a
file.
2) Adopt a complicated Client/Server mechanism to
detect changes in bandwidth. Considering that
software, equipments and data transmitting speeds
may be different, media data at different speed rates
are coded and recorded and then stored in a single
file, in other words, a streaming audio-visual file
that may be extended is established. Upon receiving 5.2 System Architecture
request from the client, it will send bandwidth
capacity to the server, and the server will, based on To effectively apply the sure stream technology to
the bandwidth of the client, send those parts in the Mobile/WLAN heterogeneous network environment,
Sure Stream file that meet the size of bandwidth to we adopted a three-tier mode to design this optimum
the client end, as shown in Figure. 5. system. Its architecture is divided into LMS Server,
When the user makes the request for a piece of Stream Server and mobile device platform. LMS
media content, the system’s coding instrument will Server (Business Logic Tier) is for providing users
record media at different speeds, and send bandwidth with teaching materials; Stream Server (Data Service
information at the client end to the stream server. Upon Tier) will, based on operations conducted by front-end
receiving the request of the client end, stream server user (Presentation Tier) on mobile device, process data
will, based on the part in the package that corresponds transmitted by LMS Server in an optimum way, and
to the bandwidth and the possible highest bandwidth, then send it back to mobile device, so that the learner
transmit files by means of streaming. This is the so- may read and learn, as shown in Figure.6.
called Sure Stream technology.
!
Fig.5: Sure Stream Automated Bandwidth Adjustment (Real,
2008) Fig.6: System Architecture
ʳ
546
The purpose of this research is to demonstrate When a person is learning in situated environment,
teaching materials on mobile device such as PDA or Mobile Device will send out demand information, and
UMPC (Ultra Mobile PC). And therefore, the system then use RAM sent by the browser to communicate
design architecture is divided into 1. teaching materials with Stream Server based on RTSP protocol, The
development and 2. system programs establishment. automated bandwidth judgment algorithm as shown in
1) Teaching Materials Development: Figure7. At this moment, Stream Server will, based on
Based on the theory of context language learning package signals sent by the Player, transmit data
and by introducing awareness technology, the streams in Multiple Encoded Stream File of Data
learning environment will be provided based on Storage at an optimum speed rate. And RTCP and RTP
location-specific content. The method for providing will provide flow volume control and congestion
teaching materials is online content providing. And control services.
the design of teaching contents is the ADDIE mode
frequently mentioned in Instruction System Design
(ISD).
2) System Programs Establishment:
This system is mainly in ASP. Net program
language and is developed by adopting distributed
structure. Webpage is the major user interface.
547
3) Ubiquitous Environment Testing results show: although the widespread use of 3.5G
a. Mobil Device: ASUS P750 and R2H UMPC environment has not been realized, Ubiquitous
b. Testing platform: Chunghwa Telecom’s 3.5G/3G Learning Environment can still be realized in Mobile
c. Testing places: Twenty-eight places in Tainan, Device by using Sure Stream, SMIL and other
Kao Hsiung, and Ping Tong techniques.
4) Results Analysis Follow-up researches shall focus on
Results show that: Because the 3.5 G system of supplementing teaching materials satisfying learning
telecom companies has not been upgraded situations, developing better user’s interfaces, and
completely, signals are received only in one places providing quantized researching results as to the
during the course of testing. For the 3G system, application of cooperative learning mechanism, tracing
signals are received in all testing places. Although of learning process and efficiency of the context
the theoretical value of the download bandwidth of learning mechanism with the aim of learning whether
HSDPA system can reach 3.6Mb/s, the the learning efficiency under Ubiquitous Learning
measurement value is only 1.2Mb/s. The following Environment has been improved..
Fig 8,9 shows the results of applying Sure Stream to
Ubiquitous learning Environment. 9. References
[1] Kinshuk., (2003), Adaptive mobile learning technologies.
˨˵˼̄̈˼̇̂̈̆ʳ˘́̉˼̅̂́̀˸́̇ʳʳ˕˴́˷̊˼˷̇˻˧˸̆̇˼́˺
URL:http://www.globaled.com/articles/Kinshuk2003.pdf.
˄ˇ˃˃ Accessed 20/02/2008.
˦˼˺́˴˿˂˕˴́˷̊˼˷̇˻
˄˅˃˃
˄˃˃˃ ᑇ٨˄
ˋ˃˃ [2] Chia-Hui Huang, Chiung-Hui Chiu., (2005), “The
ˉ˃˃ ᑇ٨˅
ˇ˃˃ ᑇ٨ˆ excellent learning plans:Build high performance
˅˃˃
˃ integration environment with reality and digital learning”,
ৠࣟ՞چ॰
ৠ్ࣟխᖂ
ৠࣟీ߫־
ৠՕᖯ
ն壂ሁ៱Օอ
ႂዧ壀ۍຄ
խ՞Օᖂ
ႂઝՠ塢
তᢌՕᖂ
তઝᖂႼ
࡛ભ᠔ೃ
פګՕᖂ
তߧᑔ
ত֞ᐔ
Technique Reports.
ዧ อ
խ ຄ
ઝ ᖂ
࡛
ᑔ
॰
ీ
ᢌ 塢
ሁ ᖯ
ႂ ᖂ
ګೃ
ত ᖂ
ႂ Օ
ۍ
ত Օ
ࣟ چ
ত ՠ
壂 Օ
Օ
Օ
֞
్
៱
ߧ
ৠ ՞
־
ઝ
ն ৠ
פ
ত
ࣟ
ৠ
548
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
1, 2, 3
Dept. of Computer Science and Information Engineering, National Central
University, Taiwan
1
oilcat2003@gmail.com ,2addison@csie.ncu.edu.tw, 3jhyang@csie.ncu.edu.tw
550
3. Method similarity and categorize peers according to the
similarity 2.Peer rank : System will utilize the interest
Figure 2. is a rough description about Adutella score to revise the similarity and rank the peers
application scenario. Adutella is a P2P bibliography according to the revised similarity. Finally, user will
resource sharing software developed by our research get a categorized and ranked peer list. Because of our
team. It is applying in computer science research domain is based on research environment. Therefore,
environments. Adutella support some services about our domain knowledge is using ACM topic ontology.
finding adaptive peers, personalized category and rank, ACM topic ontology is very convincing paper
and collect user’s behavior to produce feedback categorized ontology in computer science. We will use
mechanism. Edge-Counting approach to calculate similarity. We
will discuss about similarity calculation in detail in a
later section.
551
topic is categorized in H.3.3.3 and peer B’s interesting will categorize peer B into group tk. The variable S
degree is 7. We are setting the interest score number means the average similarity between peer A and peer
range into 1 to 10. Peer’s interesting degree is B. The value of S can use to rank peers. In our
accompany the interest score increasing. Therefore, mechanism, we must set up a threshold value. If the
from the above example we can know that peer A is value S of peer B more than threshold. It means peer B
interesting in Query formulation and Dictionaries and is having similar interest with peer A. Peer B’s interest
having high interesting degree with both topics. Peer B profile will store into peer A’s cache. Otherwise, if the
is interesting in Computer-Communicationworks and value S of peer B less than threshold. Peer A will
Application. Although peer B is very interesting in abandon the peer B’s interest profile. The threshold
Computer-Communicationworks. But peer B just value must be determined by user. Peers similar or not
having normal interest degree of Application. are determined by user after all.[10]
If we want to find out the shortest path between two
3.3ʳPeer classification nodes, we must understand the node location in the
taxonomy first. In other words, we need to match peer
After we collect other peer’s interest profiles interest profile into the ACM topic hierarchy. Because
completely, we need to calculate other peer’s similarity we know that peer interest profile recorded the interest
to user. According to this similarity, we can categorize topic index. According to the index, we can easily
peers into different group. What are the groups? The know the topic’s location in the ACM topic hierarchy.
groups are user’s interest ACM topics. We can use For example, we can look at Figure 4. Figure 4. is a
above interest profile example to explain it. Suppose partly ACM topic hierarchy. We notice the peer A’s
peer B’s interest profile collected by peer A. Because interest topic [ H.3.3.3 Query formulation (7) ]. The
peer A’s interest profile record that peer A is index H.3.3.3 include two kind important information.
interesting in Query formulation and Dictionaries. First is the depth of this topic, second is the path from
Therefore, peer B will categorize into group “Query this node to root. Therefore, we can easily know that
formulation” or group “Dictionaries”. If peer B is peer A’s interest topic will map to the red circle. Peer
categorized into group “Query formulation”. It means B’s interest topic will map to the green circle. After
that if peer A want to search some academic articles getting the location of interest topic, we can calculate
about Query formulation, peer A can transmit query to
peer B directly. Because peer B also have interest in
Query formulation. Below is our peer categorization
algorithm:
552
this method, we can know the parent node of topic C.2 But it doesn’t mean peer A and peer B are interesting
and I.5.4 is root. Second, we need to calculate the in database very much. Maybe peer B just want to
distance from comparison nodes to parent node. Index know the common sense with database, but peer A is
string length also tell us the node depth further we can the database technology fanatic. So we can use interest
calculate the distance by sub the depth. Therefore , we score to separate them. Further we can find out exact
can find out the distance from root to C.2 is 2 and the peer’s interest. The output peer list also will more
distance from root to I.5.4 is 3. At last, we sum the accurate. In below section, we will use the real
distance from root to C.2 and the distance from root to example to apply interest-based peer selection
I.5.4. Finally, We find out the shortest path between mechanism.
topic C.2 and I.5.4 is 5. Although this method is very
Case 1 : 2 peer’s interest are similar, but interest scores are
convenient to find out the shortest path between two
different
nodes. But this method need one precondition – the Peer A : ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ
taxonomy hierarchy must be a tree. In other words, H.3.3.4 Relevance feedback ( 10 )ʳ ʳ ʳ ʳ ʳ
every node in the taxonomy have only one path to H.3.3.2 Information filtering ( 8 )ʳ ʳ ʳ ʳ ʳ
H.3.1 Content Analysis and Indexing (6 )ʳ ʳ
other node. Although we know ACM topic hierarchy is
H.4.1.6 Word processing ( 7 )ʳ ʳ ʳ ʳ ʳ ʳ ʳ
an ontology, we can abandon the additional relation I.5.4.3 Text processing ( 3 )ʳ
and only use the body of ACM topic hierarchy. It is a Peer B :
tree not a ontology. H.3.3.4 Relevance feedback ( 4 )
H.3.3.2 Information filtering ( 2 )
If we only use the path length to determine the
B.3.3.1 Formal models ( 8 )
similarity, it will bring some situations we cant explain. F.3.1.3 Logics of programs ( 8 )
For example, we can notice Figure 4. The shortest path F.3.2.1 Algebraic approaches to semantic ( 7 )
between node H and I is 2. The shortest path between
node H.3.1 and H.3.3 is 2. If we only consider path Case 2 : 2 peer’s interest are similar, and interest scores are
similar
length to determine similarity. We will get a ridiculous Peer A : ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ
result - the similar degree of articles belong to H.3.1 H.3.3.4 Relevance feedback ( 10 )ʳ ʳ ʳ ʳ ʳ
and h.3.3 are equal to the similar degree of articles H.3.3.2 Information filtering ( 8 )ʳ ʳ ʳ ʳ ʳ
H.3.1 Content Analysis and Indexing (6 )ʳ ʳ
belong to I and H. It is not accord with classification
H.4.1.6 Word processing ( 7 )ʳ ʳ ʳ ʳ ʳ ʳ ʳ
principle. It is intuitive that concepts at upper layers of I.5.4.3 Text processing ( 3 )ʳ
the hierarchy have more general semantics and less Peer C :
similarity between them, while concepts at lower H.3.3.4 Relevance feedback ( 10 )
H.3.3.2 Information filtering ( 8 )
layers have more concrete semantics and stronger
B.3.3.1 Formal models ( 8 )
similarity. Therefore, the depth of concept in the F.3.1.3 Logics of programs ( 6 )
hierarchy should be taken into account. We survey lots F.3.2.1 Algebraic approaches to semantic ( 4 )
of methods to solve depth problems. For example, Wu
and Palmer, Li et al., Rodriguez et al., Tversky etc. At We can notice the first case two peer’s interest are
last, we choose Li et al. approach to solve the depth similar, but the interest score are very different . The
problems. We apply Li et al. formula into the above second case, two peer’s interest are similar, and the
example. We will get simLi ( H, I ) = 0.3599 , simLi interest score are similar. If only according Li et al.
( H.3.1 , H.3.3 ) = 0.5588. In other words, Li et al. formula to calculate similarity, we can’t separate the
approach means the similar degree of articles belong to case2 and case3. Therefore, we add a interest revise
H.3.1 and h.3.3 are bigger to the similar degree of parameter ICorrection after the Li et al. formula as below :
articles belong to I and H. Therefore, we will use the Li
et al. formula be similarity function in the peer I (A) = { v1 , v3 , v4 , … , vx }
categorization algorithm. I (B) = { v3 , v5 , v8 , … , vy }
Similarity interest( I(A) , I(B) ) =
3.4ʳPeer ranking For all ti I(A),For all tj I(B) Similarity Li at al.( ti , tj )
x ICorrectionʳ
In the section, we introduce that how to utilize if ti = tj
interest score to revise the similarity calculated by Li et ʳ ʳ ʳ ʳ ICorrection = ( vavg / || ( vi –v j ) || + vavg )
al. formula and rank the peer list order. In the before Else
section, we mention that we record interest score in the ICorrection = 1
peer interest profile. Interest score describe the vavg = ( v1 + v3 + v4 + … + vx ) + / | I(A)|
interesting degree. Because we must separate the
interesting degree from different topics or people. For I(A) and I(B) are two interest score sets which we want
example, peer A and peer B are interesting in database. to compare. Similarity Li at al. .( ) function is Li et al.
553
formula. vi and vj are interest scores of topic ti and tj. system will save the peer information into cache.
The number range of parameter ICorrection is from 0 to Otherwise, system will abandon the peer information.
1. At first we must determine the compared topics After this filter mechanism, user will get an arranged
equal or not. If topic i equals topic j then the parameter peer list. Query can transmit to the selected peers by
ICorrection = ( vavg / || ( vi –v j ) || + vavg ). It means that if user directly. This mechanism can reduce the broadcast
the interest score of topic i and topic j are more frequency and query routing cost.
different. Then the value of ICorrection will fewer and
similarity will decrease. Because the interest degree of 6. Acknowledgement
the topic i (same as topic j) are more different with
peer A and peer B. Otherwise, if the interest score of This work is supported by National Science Council,
topic i and topic j are the same. Then ICorrection = 1. it Taiwan under grants NSC95-2520-S008-006-MY3 and
means the parameter won’t revise the original NSC96-2628-S008-008-MY3
similarity. Because of it, we can utilize different
interest degree to find out the exact peer’s similarity. 7. References
Apply the new formula to above example. Because of
the interest score are very different of peer A and peer [1] D. S. Milojicic, V. Kalogeraki, R. Lukose, K. Nagaraja, J.
C. We can separate with case2 and case3 and find that Pruyne, B. Richard, S. Rollins, and Z. Xu, “Peer-to-peer
the peer D is more similar to peer C. computing,” Technical Report HPL-2002-57, HP Lab, 2002.
[2] Q. Gao, Z. Qiu, “An Interest-based P2P RDF Query
4. Discussion Architecture, “CNDS lab, Peking university, Beijing, China,
Proceedings of the First International Conference on
Semantics, Knowledge, and Grid (SKG 2005).
Although we choose Edge-Counting Measure to [3] P. Haase, R. Siebes, F. van Harmelen, “Peer selection in
calculate similarity. But we will supply for other peer-to-peer networks with semantic topologies,”in:
approach applying on ACM topic ontology and International Conference on Semantics of a Networked
comparison in future research. Besides, we will World: Semantics for Grid Databases, June 2004, Paris.
challenge to use complete ACM topic ontology for [4] Z. Wu and M. Palmer, “Verb Semantics and Lexical
domain knowledge not the main body. Selection,” in Proceedings of the 32nd Annual Meeting of the
We will make more case to test interest revised Associations for Computational Linguistics (ACL'94), pp.
parameter ICorrection. In fact, we need to consider the 133-138, Las Cruces, New Mexico, 1994.
[5] Yuhua Li, Zuhair A. Bandar, and David McLean, “An
condition as below : Approach for Measuring Semantic Similarity between Words
Using Multiple Information Sources,” IEEE Transactions on
Peer A : ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ ʳ
Knowledge and Data Engineering, pp. 871-882, July/August
H.3.3.4 Relevance feedback ( 10 )ʳ ʳ ʳ ʳ ʳ
H.3.3.2 Information filtering ( 8 )ʳ ʳ ʳ ʳ ʳ 2003.
H.3.1 Content Analysis and Indexing (6 )ʳ ʳ [6] P.W. Lord, R.D. Stevens, A. Brass, and C.A, “Goble.
H.4.1.6 Word processing ( 7 )ʳ ʳ ʳ ʳ ʳ ʳ ʳ Investigating Semantic Similarity Measures across the Gene
I.5.4.3 Text processing ( 3 )ʳ ʳ ʳ ʳ ʳ ʳ ʳ Ontology: the Relationship between Sequence and
Peer B : Annotation," Bioinformatics, pp. 1275-1283, 2003.
H.3.3.3: Query formulation ( 10 ) [7] A. Tversky. Features of Similarity. Psycological Review,
H.3.3.6: Search process ( 8 ) pp. 327-352, 1977.
H.3.3.7: Selection process (6)
[8] M.A. Rodriguez and M.J. Egenhofer, “Determining
H.5.2.10: Prototyping ( 8)
C.4.6: Reliability, availability, serviceability ( 3 ) Semantic Similarity Among Entity Classes from Different
Ontologies,” IEEE Tramsactions on Knowledge and Data
Engineering, pp. 442-456, March/April 2003.
Although peer A and peer don’t have the exact same [9] A. Hliaoutakis P. Raftopoulou E. G.M. Petrakis, G.
interesting topic. But almost topic are in the category H. Varelas, “X-Similarity: Computing Semantic Similarity
We need to consider about this situation how to between Concepts from Different Ontologies,” Journal of
influence the similarity revising. Digital Information Management (JDIM), 4(4):233{238,
December 2006.
5. Conclusions and future work [10] P. Haase et al, “Bibster - a semantics-based
bibliographic peer-to-peer system,” In F. van Harmelen, S.
McIlraith, and D. Plexousakis, editors, Proceedings of the
This paper advance interest-based peer selection Third International Semantic Web Conference (ISWC2004),
mechanism in order to find out right peers by analyzing LNCS, pp. 122–136, Hiroshima, Japan, 2004. Springer.
user’s interest. System will collect other peer’s interest
information and analyze it. Next system will calculate
the user’s interest similarity with other peers. If system
find out the peer having similar interest with user,
554
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
556
ks:annoColor Annotation color
ks:annoStyle Text annotation type (boldface,
italic, underline)
ks:annoComment Annotation content
ks:ink Free-form annotation address
ks:recording Voice annotation address
ks:isClassifiedTo Annotation topic
ks:annoStart Annotation start anchor
position
ks:annoEnd Annotation end anchor
position
Table2. Annotation metadata Figure.3 Recognized annotation type and anchoring
mechanism
3.3 Annotation creation When user writes a drawing, the tool will recognize
it as an ink stroke. After user finishes his drawing the
Web page is composed by frames and each frame tool will send these ink strokes to analysis and
contains many objects. We use the object content to be classification. The analysis and classification
anchor information for an annotation. We can mechanism contain several parts as figure.3. The ink
decompose the web page objects by W3C standard strokes will be analysis its layout and non-text or text
easily. Then save the information into web document strokes group. Then recognize the annotation type for
repository. Annotation will be send to the recognized each non-text strokes group. New annotation type can
annotation type and anchoring mechanism for analysis add into classification types if user set a new personal
when free-form annotation is created. Final user need annotation type. In order to retrieve annotations after
decide saving annotation as file to complete annotation classification, the annotation will be anchored before
creation. As figure.2 show, we introduce 4 examples user save the annotation finally.
for annotation creation. First, John annotated his idea
to Tom’s annotation when Tom annotated object 1. 3.4.1 Annotation layout analysis
Second, Mary and Tom annotates at object 2 in turn.
The third, Tom, John and Mary annotate the same First, layout the ink strokes into text and non-text
object4. The fourth, Tom annotate his commit to john strokes group by their propriety of length and curvature.
and Mary’s annotation. We define the text drawing as text strokes, and the
others are non-text strokes. We layout the non-text
strokes by two steps. 1) Layout each stroke’s time
information when ink stroke is created. 2) Layout each
stroke’s by space information. Assume the user writing
each annotation is continuously. We think that is good
to analysis and classification immediately when each
annotation is created.
557
We design the detectors to detect annotation types
for each non-text strokes group. Each strokes group 3.4.3.1 Correcting anchor position
will be detect by these detectors, each detector will We need correcting the anchor position because the
give a value of similarity. The annotation type is text range is not the same as we see on the screen. The
decided by detector which gave the highest value. We text range is always bigger then we see (as figure.6).
can create new personal annotation type as a new This difference will affect the anchor to the mistake
detector which provided by user itself. The new range easily. Besides we use handwritten input device
detector can be adding into existing detectors and to create annotation. It means that we are not anchor
improving the ability of detection. The advantage of precisely then mouse selection.
the detector is that we just need set a detector when
user encounter with a new annotation type without
modifying the program.
558
Figure.9 An example of annotation search and retrieval
We can search and retrieve annotations what we assign the order to solve the problem of annotation
interested when we want to browse the annotation from order. Annotation data recorded as the form of XML
annotation owner. First choose the other user’s ID at then transmission as string stream when broadcast to all
IM platform then open the search window. User can participates.
key in the information what he wants to search in our As example as figure.10, IM server will broadcast
interface. The tool will find and list all annotations the annotation information to each participate after
after we send searching request. User can choose which Albert creates an annotation. If Chris want to read the
annotations that he wants to browse. Then tool will ask annotation which created by Albert. Chris just selects
the annotation owner to transmitting the annotation the annotation then browses it. The tool will ask Albert
data to user. After annotation transmission complete to send annotation to Chris. Albert gets the annotation
that user can browse the annotation. in the same way when Chris answers the question by
free-form annotation. It achieves the purpose of
3.6 IM-based annotation discussion board collaboration that we want.
559
We use the ROM that presented by W3C to be our
anchor method. We will record the start position and 7. References:
end position as our anchor information. We think that
anchor will be more precisely for annotation which [1] Ng S. T. Chong, “Annotation-based Web
related to web document. But disadvantage is that the Communications Systems: A Review”, United Nations
method can’t anchor the content from the script. University , Tech. Rep. CS-3408,2003
Because of we cannot exact the context information [2] S.J.H. Yang , V.M.Z. Du , N.W.Y. Shao, and I. Chen,
with our method. “Applying Personalized Annotation Mechanism to
e-Documentation,” Proceedings of the E-Commerce
For now, our design still need user to decide or
Technology for Dynamic E-Business, IEEE International
input the options. Although there are many annotation Conference,2004,pp. 142 - 145
tools that it has the same condition. But we want to [3] Po-Kuan Chiang, Heng-Li Yang, “Annotation Tool in
reduce any actions that corrupting annotation. We also Electronic Documents”, International Conference of Digital
can annotate document as similar as tradition Technology and Innovation Management, 2006, pp.418 ~ 427
annotating. [4] K. Jain, A.M. Namboodiri, J. Subrahmonia,” structure
We can communicate and discuss for the same in online documents”, Document Analysis and Recognition,
group by using our annotation tool though IM platform. Proceedings. Sixth International Conference ,2001, pp.
Each user can create their annotation database locally. 844-848
[5] M. Shilman, Wei Zile Raghupathy Sashi P.
Then they can share the annotations to the others
Simard, D. Jones,” discerning structure from freeform
through peer-to-peer network. The advantages are that handwritten notes”, Document Analysis and Recognition,
can avoid the cast of maintaining of server, separating Proceedings. Seventh International Conference,2003, pp. 60-
the annotation data form tool and improving its 65
flexibility. We can transmit a little data to getting [6] Thomas A. Phelps, Wilensky Robert,”Robust
annotation information from the other. It is also can intra-document locations”, Proceedings of the 9th
maintain the user’s privacy international World Wide Web conference on Computer
networks : the international journal of computer and
telecommunications netowrking,2000, pp. 105 - 118
5. Conclusion [7] David Bargeron , Tomer Moscovich ,” Reflowing
digital ink annotations”, Proceedings of the SIGCHI
We developed a free-form handwritten annotation tool conference on Human factors in computing systems,
to support user annotating web document quickly. Then 2003,pp.385 - 393 ;
analysis the anchor position then preserve the original [8] M.A. Chatti, , T.Sodhi, , M.Specht, , R.Klamma, ,
meaning of free-form annotation in web document. R.Klemke, , “u-Annotate: An Application for User-Driven
Moreover that we can share annotations, collaborate Freeform Digital Ink Annotation of E-Learning Content”,
discussion and annotate to web document correctness Advanced Learning Technologies, 2006. Sixth International
without any restrictions. Conference ,2006, pp.1039-1043
[9] Philippe Le Hégaret, and The W3C DOM Interest
The advantages of free-form handwriting annotation
Group ΔThe W3C and NIST,W3C Data Object ModuleΔ
tool are that can preserve personal meaning annotation, match 2001, http://www.w3.org/DOM/
quick and habituated writing form, convenient for [10] Robert Zeleznik, Timothy Miller,” Fluid
annotation sharing and annotation searching. inking: augmenting the medium of free-form inking with
We think that there may have better methods need to gestures” , Proceedings of Graphics Interface,2006,pp. 155 –
explore and use for early questions that we purposed 162
before. We have discovered other questions that can [11] Peter Saint-Andre,” Streaming XML with
help us reduction the gap of writing between tradition JabberXMPP”, IEEE Internet Computing, Volume 9 Issue
annotation and digital annotation. For instances, how to 5, IEEE Educational Activities Department Piscataway, NJ,
express the digital annotation as the same as hardcopy USA ,2005,pp.82-89
[12] F.M.Shipman, M.N.Price, C.C.Marshall,
annotation, annotate document more convenient and
G.Golovchinsky and B.N. Schilit, “Identifying Useful
use the tool in the different platform. Not only the Passages in Documents Based on Annotation Patterns”. In
problems we introduce before, but also these questions Proceedings of ECDL., 2003, pp.101-112.
are the research targets at feature. Peter Sharpe, Vidur Apparao, Lauren Wood,"Document
Object Model Range”, November 2000,
http://www.w3.org/TR/DOM-Level-2-Traversal-Range/range
6. Acknowledgement s.html
This work is supported by National Science Council,
Taiwan under grants NSC95-2520-S008-006-MY3 and
NSC96-2628-S008-008-MY3
560
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
1. Introduction
A questionnaire survey was carried out in a lecture oral explanation. These results would indicate that the
for fundamental experiment using computer-scored an- students discriminate between 30fps and the others, but
swer sheet to students at first grade of university. The do not discern low frame rate of the video materials.
sheet consists of questions and five-grade evaluations:
positive, slightly-positive, neutral, slightly-negative and 3.2. Experimental precautions
negative. Before filling in the questionnaires, the fps-
adjusted video materials were displayed to approxi- In general, students might not predict a danger in
mately 200 students in a classroom via 29-inch CRT chemistry laboratory. Heightening safety awareness in
monitors. Mean distance from the students was 2 meter the chemistry laboratory encourages students to pay
with 45 degrees angle upside eye-level. In addition, A careful attention to health and safety issues in all as-
few groups of the students had an oral explanation at pects of their lives as individuals and social beings.
casting video to study an effect of interactive commu- To make clear the effect of interactive communica-
nication. tion with video materials, we gave an oral explanation
In aggregate analysis, the sheets including unan- of cautions at handling apparatus and questioned "How
swered questions and all answers filled with same score do you recognize a danger in this procedure?" to the
were omitted. After the post-process, the answers were students.
classified, counted and summarized to three-grade: pos-
itive, neutral and negative. The number of distributed
questionnaires and effective answers were 1211 and
1023, respectively.
562
Figure 3 indicates that there is no difference in Regardless of frame rate, almost same answers were
recognition ratio at every frame rate. However, the obtained in all rate as opposed to recognition of quality.
ratio was doubled with oral explanation. The results In addition, an oral explanation would not make a dif-
suggest us that cautions in chemistry laboratory would ference in the results. The result shows that the frame
not be identified through video materials. rate of the video materials and additional explanations
might not affect to enhance recognition of operations
3.3. Safety handling of instruments and substances in chemistry laboratory.
5. Future prospect
Figure 4. Scene from video material: A cap-
In response to the results of the survey, we have a
tion shows ”Stick a capillary into a powder of
plan to develop a distance leaning system for general
sample”
chemistry laboratories between our main campus and
satellite campus. The system will be established and
tested through a T1 hookup and a PHS network.
To estimate a leaning effect of the video materials,
we hold a referendum "How do you recognize handling
and operations from the video material?". The results References
are summarized in figure 5.
[1] Rita Porcell Donata Francescato and Paolo Renzi.
Evaluation of the efficacy of collaborative learning
in face-to-face and computer-supported university
contexts. Computers in Human Behavior, 22:163–
176, January 2006.
[2] Jui Feng Meilun Shih and Chin-Chung Tsai. Re-
search and trends in the field of e-learning. Com-
puters & Education, page in Press, 2007.
[3] N. Christmann E. Schaer, C. Roizard and
A. Lemaitre. Development and utilization of an
e-learning course on heat exchangers at ensic. Ed-
ucation for Chemical Engineers, 1(1):82–89, 2006.
563
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
565
visualization. love, and desire for approval are realized activities of
It follows that sensorimotor interest is a social interest. This social interest of children is deeply
significant area where computers can play an active intertwined with that of other children, or the interests
role in education. That is, with computers, the of their teachers and family members, as well as their
one-on-one tutoring environment can be achieved collective hopes, desires, plans, and experiences.
easily in a classroom. Due to its nature of social interest, social interest
as well as hopes, desires, plans, and experiences
2.3. Distinctive Intellectual Interest cannot be shared with other artificial intelligence
forms. Other artificial intelligence forms cannot be
The distinctive intellectual interest is concerned like human to share the cultural heritage and
with the interest in discovering or finding out what knowledge in the democratic society. Social interest
happens under given circumstances. This interest is must be fulfilled only by human teachers because
realized in activities such as planning ahead, taking human teachers can share this social interest with
notice of what happens, relating the process and its children. There is no room for computers to replace
result. Because the fundamental principle of science is human teachers in this respect. There is no question
connected with the relation of cause and effect, this about it.
type of interest must be enhanced and amplified in However, it should be noted that the Internet,
schools once children show this type of interest. This listserv, forum discussion boards, on-line chat rooms
interest requires higher order thinking, primarily and email can be good tools to reinforce and satisfy
because it involves more abstract concepts. social interest of children. They bring efficiency in
Like the area of sensorimotor interest, computers communication between children and teachers. Here
would be highly more effective than real teachers in the computer serves as media for communication
this area. The technology of virtual reality can create between children and teachers.
situations so that students can take individual flight or
driving lessons, or even learning how to operate a 3. Proposal
nuclear power plant or how to conduct a surgical
operation. Life-threatening experiences such as With the advance of technology, social interest,
learning to drive on a hazardous road or to fly an which was once thought of belonging solely to human
aircraft in a bad weather condition cannot be teachers, could be achieved by such technology as
conducted in a real classroom. Furthermore, dangerous QED or TVML. In such technology, computer
chemistry or physics experiments can also be graphics figures simulate human teachers. In other
performed in the virtual reality lab. Students can also words, computer graphics figures perform as teachers
learn how the Universe develops and how cancer or in the virtual learning situation. (See. Figure 1, Figure
AIDS affects human bodies from various angles with 2, & Figure 3.)
computer visualization.
In order to satisfy children's distinctive
intellectual interest, and provide stimulus in the form
of visualization of complex structures or variables,
computers can perform a better job than human
teachers alone. There is no comparison.
566
technology in which a content author can choose a
character to perform and voice over a browser page
according to text-based programming. The
sophistication of these technologies is currently being
explored, and with greater reactions, inflections, and
variable feedbacks becoming available, social interest
is deepened.
Figure 3. TVML
From: http://www.nhk.or.jp/strl/tvml/japanese/mini/
Edgar Dale claims that after two weeks humans Figure 5. e-Learning Home Page
tend to remember 10% of what we read, 20% of what
we heard, 30% of what we saw, 50% of what we heard 4. Conclusion
and saw, 70% of what we said, and 90% of what we
both said and did. In the category of what we both said In this paper, clear boundaries of what computers
and did, doing the real thing as well as simulating the can do in education and what teachers can do in
real experience is included. It follows that education are established. Four types of interests
experiencing in the virtual world is equally effective as according to Dewey are explained. They are
experiencing in the real world. instinctive interest, sensorimotor interest, distinctive
intellectual interest, and social interest.
In Dewey’s argument, due to the nature of the
social interest which is rooted deeply with other
567
humans, the human to human interaction is only
created by the human teacher. However, it is proposed
that 3-D CG figures can replace the human teacher as
long as the learner personifies the 3-D CG figures and
treats them as members of his or her society group.
This paper presentation includes demonstrations
of QED.
References
568
2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
role in museums to help learners learn more about the Adaptive content Interactive
selection content
exhibitions. However, the development of intelligent
interpretative services is costly, time consuming, and Adaptive Service Interactive Service
needs many kinds of domain knowledge. How to provide Consider the user's Consider the context
a platform to help experts of different domain work Information Information
(profile, preference, etc.) (location, time, etc.)
collaboratively to reduce the construction cost of
designing an intelligent interpretative service for new Personalized Context-aware
requirements is an important issue. Thus, we propose a Service Service
Collaborative Interpretative Service Assisted Design
System (CISAD), containing Requirement Integration Figure 1: The classification of interpretative services
Process to assist designers to collaboratively determine performed by the applications.
the requirements of the new service, and Intelligent
Query Processor to reuse previous successful In the modern museum, the design of interpretative
application from coarse-grained to fine-grained to services becomes more interactive, personal and
improve the reliability and reduce the construction cost context-aware. For example, in the National Museum of
of the solution application. Finally, we show an Nature Science of Taiwan, the interactive services and
example to describe the construction process of an digital exhibition contents are widely used to support
interpretative service for elder people by CISAD. better guidance, interpretation or digital learning, and
other museums [1, 2] apply ubiquitous learning
1. Introduction technology in their interpretation, where the computing
and communicating devices (such as sensors or RFID
Museum is the important learning environment, tags) can be embedded to ordinary things. It makes this
which assists learners to learn directly from objects and learning environment perceive different context
living, and its interpretative services play an important information and behave smartly [3]. While designing
role in museums to help learners learn more about the the U-learning applications, the context information of
exhibitions. As shown in Figure 1, the mechanism of learning environment, such as location, device, time,
interpretative services can be classified into static etc., can be utilized to provide better learning services
services and dynamic services according to the time that for learners.
the contents to be delivered. The dynamic learning However, the development of these kinds of
services can be classified into adaptive services or intelligent interpretative services is costly, time
interactive services according to the contents. The consuming, and needs many kinds of domain
adaptive services can be further classified into personal knowledge, such as the knowledge of sensors, hardware
learning services and context-aware learning services control, repository control, content management,
according to the attributes that are considered for the presentation device control and content adaptation, so it
content selection. is difficult for only one expert to complete all the design.
Thus, how to provide a platform to help experts of
570
2.3. e-Services of Museum flow of sensor service, content repository service and
audio player service in this example for visual handicap
In the research about mobile services of museum, visitors, it seems that the case-based reasoning approach
many interactive and wireless technologies were used to is a suitable approach to support the design of service by
provide the services such as personalized guiding, reusing the successful cases. As shown in the lower part
guiding by sharing, experience remembering, guide on of Figure 2, when the designer inputs his/her
demand, guiding in activity, etc. With the development requirement, our idea is to retrieve the similar cases and
of computer technology, many researches pay more required services for reusing. However, in the SOA
attention to support the handicap with new technologies. domain, without considering the application
Several researches about services design [3, 21] to requirements and the compatibility of service units, the
support the consideration of the children and elder also case reuse can not be done. Thus, how to provide a good
become more and more important. Thus, the support of case representation model to support the case-based
designing the service for the handicaps in public places reasoning is an important issue.
such as museum is an interesting and challenging issue.
We aim to support the design of interpretative services 3.4. Hierarchical Case Representation
in SOA environment. However, as mentioned in [22],
how to provide the case reusing that meet the business With our observation, the interpretative services in
process requirement in application level and museum domain can be represented as three granularity
environment constraints in service unit level is the levels. The application level is the use cases with the
challenging issue. features such as the application type, user’s ability,
intended content, environment or hardware device
3. Hierarchical Case Representation for constraints. Thus, the cases of interpretative services
Museum Interpretative Service can be managed as the three levels Service Ontology.
Figure 3 shows an example of Adaptive Application in
As described above, the growth of e-services is Service Ontology, where an adaptive interpretative
increasing rapidly in museum domain. Assume that in service application contains three parts of tasks, User
the museum, there are RFID sensors have been Info Querying Task, Content Fetching Task, and
deployed in front of exhibitions, each visitor is given a Content Presentation Task, to detect the learner’s
RFID card, and the service designer wants to develop an information, fetch the appropriate contents and present
adaptive interpretative service for visual handicap to the learner, and each task contains a kind of service
visitor. In the Service Oriented Architecture (SOA), to unit to perform this task. Different kinds of application
provide the adaptive service for visual handicap visitor, may have various kinds of tasks and service units, and a
our service scenario is that the sensor service can sense task or a service unit may be used in various kinds of
the personal profile, retrieve the appropriate content applications or tasks, respectively.
from content service and present the content by the
audio player service, as shown in Figure 2.
Service Scenario Solution
SID3: Audio Player
Service
RFID
tag
SID1: Sensor
service SID2: Content repository
service
Requested
Case ID
Requirement Services SID1: Sensor,
SID2: Content Repository,
SID3: Audio Player
Features of
Requirement Query
Designer
Suggesting Cases &
Case Base Figure 3: The Service Ontology for museum
Cases
Casesand
and
Reuse Required
RequiredServices
Services
Required Services
interpretative service
Figure 2: The case reuse of the interpretative service Based on the Service Ontology, an interpretative
service application can be represented as a hierarchical
However, the designing and programming tasks for case, where an application contains specific kinds of
the museum interpretative services are usually costly tasks according to the application type, and each task
and time consuming. Since the interpretative service can contains a set of service units, representing the real web
be described with cases of service scenarios such as the services. The semantic meaning of an application are
571
represented as a set of case features, and its contained collaboratively design the features of required
tasks also have sets of case features, which is a sub set of application to generate the query feature list, Intelligent
the case features in the application, to describe the Query Processor (IQP), which is used to recursively
semantic meaning of the tasks. generate queries and direct case retrieval in different
levels, and three level case retrieval processes, which
Example 1: The Hierarchical Case of adaptive visual can find the appropriate cases for coarse-grained and
handicap interpretative fine grained reuse.
As shown in Figure 4, the adaptive application
hierarchical case of the visual handicap interpretative
Expert Expert Expert
service contains three tasks, where the first task use a Requirement Integration Process
RFID to detect visual handicap property from learner Query Feature Collaborative Interpretative Service
List
profiles, the second task find the interpretative text from Assisted Design System
Intelligent Query Processor
repository, and the last task transform text to speech and
Application Level Query
present it in speaker. The text of italic font is the case Application
features of the tasks and application. Level Retrieval
Task Level Query
Integrate Task Level Hierarchical
Reject
Tasks Retrieval Case Base
Service Unit Level Query
Integrate Service Unit
Service Units Level Retrieval
Case Retain
Solution
Case
Solution
Evaluation and Accept
Revision
572
//query feature list (Query). if there are no cases in the application level that can
meet the requirements, the partial case reusing is needed.
Step 2: Call IQP(Query, “Application”, APtype). Since the hierarchical case base retained the service
//Get the solution case cases as levels of granularities, to support the partial
case reusing, the Intelligent Query Processor (IQP) is
Step 3: Experts perform the solution evaluation. provided to support the fine-grained case retrieval by
If the solution case can satisfy the requirements. decomposing the query. While the designer input the
Then feature values of requirement, the application level
Perform solution case revision by experts. query is processed by IQP firstly. Next, if the
Retain the refined solution case to the case base. application level case retrieval failed to satisfy the query,
Return the solution case. the IQP further decomposes the query into sub-queries
Else of task level or service unit level for partial case reusing.
Redo CISAD The IQP and query generation algorithm is given as
follows.
4.1. Requirement Integration Process Algorithm 3: Intelligent Query Processor (IQP)
(CF, level, APtype)
In RIP, shown in Algorithm 2, firstly, experts have to
determine the goal and type of the required application, Definition of Symbols:
such as a personal interpretative service for people of CF: Requirements features and values.
slight visual handicap. In the service ontology, the APtype: The application type, such as personal
features, used to describe the specific kind of application.
application, can be found according to the application level: “Application”, “Task” or “Service unit”.
type. The tasks of determining different features are
assigned to different experts depending on their Given: Service Ontology
expertise, and the determined features are integrated in
to a query feature list, which can be used to Input: CF, level, APtype
automatically generate solution case by IQP. Output: The query result case
Algorithm 2: Requirement Integration Process
(RIP) Step 1: Switch Case: level = “Application”
Then fire application level retrieval with CF.
Definition of Symbols: If the result failed to satisfy the query Then call
Query: The query feature list, determined by designers. IQP(CF, Task, APtype).
APtype: The application type, such as personal Else return the result application.
application.
Step 2: Case: level = “Task”
Given: Service Ontology Then generate task level CF from CF for each task,
containing in this kind of application, according to the
Step 1: Experts discuss the goal and application type APtype in Service Ontology.
(APtype) of the desired application. Fire task level retrieval with the task level CF.
Integrate the retrieved task into the original
Step 2: According to Service Ontology, find the case application.
feature types, belonged to the application of APtype. If the service units fail in connection
Then call IQP(CF, Service unit, APtype).
Step 3: Assign different feature design tasks to Else return the result application.
different experts according to their domain expertise.
Step 3: Case: level = “Service unit”
Step 4: Integrate the designed features as the query Then fire service unit level retrieval with the same
feature list (Query) task.
If the result failed to satisfy the query, return “query
Step 5: Return Query and APtype failed”.
Else
Integrate the retrieved service unit into the original
4.2. Intelligent Query Processor
application.
Return the result application.
In the application level, since there are case features,
the similarity among cases can be calculated. However,
573
4.3. Hierarchical Case Retrieval
574
and UbicKids. International Journal of Pervasive Comp.
and Comm., 2005. 1(1).
[4] W3C. Web Services Description Language 2001 [cited 2007
Dec]; http://www.w3.org/TR/wsdl.
[5] W3C. Simple Object Access Protocol. 2000 [cited 2007 Dec];
http://www.w3.org/TR/2000/NOTE-SOAP-20000508/.
[6] Fielding, R.T., Architectural Styles and the Design of
Network-based Software Architectures, in Information and
Computer Science. 2000, UNIVERSITY OF
CALIFORNIA, IRVINE.
[7] Shaw, M. and P. Clements, A Field Guide to Boxology:
Preliminary Classification of Architectural Styles for
Software Systems, in Proceedings of the 21st International
Computer Software and Applications Conference. 1997:
Washington, DC, USA.
[8] Madhusudan, T., J.L. Zhao, and B. Marshall, A case-based
reasoning framework for workflow model management.
Data & Knowledge Engineering 2004. 50(1): p. 87-115.
[9] Yin, C., H. Ogata, and Y. Yano. Ubiquitous-Learning System for
the Japanese Polite Expressions
in International Workshop on Wireless and Mobile Technologies in
Education (WMTE). 2005.
Figure 8: Hierarchical case retrieval and integration [10] Kunito, G., et al. Architecture for Providing Services in the
Ubiquitous Computing Environment. in IEEE Internal
6. Conclusion Conference on Distributed Computing Systems Workshops
(ICDCSW). 2006.
[11] Zhang, G., Q. Jin, and M. Lin. A Framework of Social Interaction
In this paper, we propose a collaborative design Support for Ubiquitous Learning. in International
approach and a hierarchical case reuse approach based Conference on Advancd Information Networking and
on a hierarchical case representation to facilitate Application (AINA). 2005.
[12] Cho, J. and E. Hwang. An Exhibition Reminiscent System for
interpretative service design. The requirement Ubiquitous Environment. in IEEE International
integration process is designed to assist experts of Conference on Computer and Information Technology
different domains to collaborative determine (CIT). 2006.
requirements of the new interpretative service, and [13] Sakamura, K. and N. Koshizuka. Ubiquitous Computing
Technologies for Ubiquitous Learning. in IEEE
intelligent query processor is used to perform the International Workshop on Wireless and Moblie
coarse-grained and fine-grained case reuse to generate Techinologies in Education (WMTE). 2005.
the solution case from different applications. To make [14] El-Bishouty, M.M., H. Ogata, and Y. Yano. Personalized
sure the feasibility of generated service, the application, Knowledge Awareness Map in Computer Supported
Ubiquitous Learning. in International Confernece on
task objective functions and linkage predicate function Advanced Learning Technologies (ICALT). 2006.
are proposed to evaluate the satisfaction of applications, [15] Yang, S.J.H., Context Aware Ubiquitous Learning Environments
tasks and service units, respectively. Thus, this for Peer-to-Peer Collaborative Learning. Educational
approach can assist experts to design and generate Technology & Society, 2006. 9(1): p. 188-201.
[16] Vogiazou, Y., et al. A research process for designing ubiquitous
feasible interpretative cases from previous successful social experiences. in Nordic conference on
application to satisfy the new requirements. Human-computer interaction. 2006.
[17] Cheng, Z., et al. A Proposal on a Learner's Context-aware
Personalized Education Support Method based on
7. Acknowledgement Principles of Behavior Science. in Internation Conference
on Advanced Information Networking and Application
This research was partially supported by National (AINA). 2006.
[18] Oppermann, R. and M. Specht. Adaptive mobile museum guide
Science Council of Republic of China under the number for information and learning on demand. in the 8th
of NSC95-2520-S009-007-MY3 and International Conference on Human-Computer
NSC95-2520-S009-008-MY3. Interaction. 1999: Lawrence Erlbaum Associates, Inc.
[19] Abowd, G.D., et al., CyberGuide: A Mobile Context-Aware Tour
Guide. Wireless Networks, 1997. 3(5).
8. Reference [20] Dey, A.K., et al., The Conference Assistant: Combining
context-awareness with wearable computing, in
[1] Fleck, M., et al., From informing to remembering: ubiquitous Proceeding of the 3rd International Symposium on
systems in interactive museums. Pervasive Computing, Wearable Computers. 1999
IEEE, 2002. 1(2): p. 13- 21. [21] Weng, J.-F., S.-S. Tseng, and N.-K. Si, Constructing the
[2] TateMuseum. Tate Modern Multimedia Tour. 2002 [cited 2008 Ubiquitous Intelligence Model based on Frame and
Jen]; http://www.tate.org.uk/modern/multimediatour/. High-Level Petri Nets for Elder Healthcare, in Fourth
[3] Ma, J., et al., Towards a Smart World and Ubiquitous Intelligence: International Conf. on Information Technology and
A Walkthrough from Smart Things to Smart Hyperspaces Applications. 2007: Harbin, China.
575
[22] Lewis, G.A., et al., Common Misconceptions about
Service-Oriented Architecture, in Sixth International IEEE
Conference on Commercial-off-the-Shelf (COTS)-Based
Software Systems. 2007.
576
Author Index
577
Huang, Chin-Tser ..................................................241 Lin, Huan-Yu.........................................................569
Huang, Fu-Ming ....................................................513 Lin, Jaimie Yi-Wen ...............................................410
Huang, Jay .............................................................492 Lin, Kawuu W. .....................................................170
Huang, Polly ..................................................271, 306 Lin, Lin ..................................................................262
Huang, R. Y. M. ...................................................470 Lin, Yih-Jeng.........................................................428
Huang, Ying ..........................................................314 Lin, Yuan-Ning......................................................500
Huang, Yu-Len ..............................................418, 423 Lin, Yuan-Tsun......................................................428
Huang, Yung-Fa ............................................320, 349 Liou, Sz-Ting.........................................................445
Hwang, Bor-Jiunn..................................................338 Liu, Chuan-Ming ...................................................185
Hwang, Gwo-Jen ...................................................524 Liu, Jung-Chun ........................................................74
Hwang, I-Shyan .....................................................338 Liu, Wei-Lun .........................................................320
Ishizuka, Mitsuru ...................................................385 Liu, Wen-Lin .........................................................233
Iyer, Vasanth..........................................................480 Liu, Xue.....................................................................1
Jan, Rong-Hong .......................................................28 Lopez-Gomez, M. A. ............................................138
Jao, Yu-Lang .................................................418, 423 Lu, Kuo-Hsiang .......................................................36
Jardak, Christine ....................................................146 Luo, Zongwei ........................................................280
Jiang, Chang-Jie ......................................................28 Mähönen, Petri ......................................................146
Jimenez-Plaza, J. M. .............................................138 Makki, S. Kami........................................................52
Jin, Ming-Hui ........................................................291 Matsuishi, Masakatsu ............................................561
Joshi, James B. D. .................................................249 Meng, Shengguang ................................................296
Jung, Jae-il.............................................................343 Meshkova, Elena ...................................................146
Kai, Hung-Jen........................................................500 Milojevic, Dragomir ..............................................209
Kao, Hung-Tzu ......................................................500 Miyashita, Ryo ......................................................564
Kemp, John..............................................................81 Moi-Tin, Chew ......................................................439
Kemper, Alfons .....................................................162 Mukhopadhyay, S. C. ...........................................470
Kim, Doo-young....................................................343 Nakamura, Yoshiyuki............................................326
Kim, Jung Ho.........................................................457 Navet, Nicolas .......................................................209
Kim, Sungil..............................................................44 Nélis, Vincent ........................................................209
Knoll, Alois ...........................................................162 Ng, Ka-Lok............................................................386
Ko, Yangwoo...........................................................44 Ni, Lionel M. ..........................................................19
Konstantas, Dimitri................................................193 Oldewurtel, Frank..................................................146
Kosov, Yury ..........................................................314 Ou, Jong-Waye ......................................................386
Ku, Ling-Feng .......................................................338 Pan, Meng-Shiuan .................................................130
Ku, Wei-Shinn.........................................................90 Pan, Yen-Lin..........................................................475
Kumar, Subodha ....................................................177 Pandey, Mayank ....................................................361
Kumaran, Santhosh................................................314 Peng, Wen-Chih ......................................................90
Kuo, Fan-Ray ........................................................524 Pirttikangas, Susanna.............................................154
Kuo, Tei-Wei.........................................................225 Plessl, Christian .....................................................201
Kuo, Yu-Chen........................................................332 Rammurthy, Garimella ..........................................480
Lan, Ci-Wei ...........................................................513 Ravitz, Guy............................................................262
Laredo, Jim ............................................................314 Riihijärvi, Janne.....................................................146
Lau, King Tong .....................................................457 Robert, Charles ......................................................519
Lee, Chiang............................................................217 Rothkugel, Steffen .................................................355
Lee, Do-hyeon .......................................................343 Sakamoto, Mune-Aki.............................................561
Lee, Dongman .........................................................44 Sandhu, Ravi............................................................10
Lee, Hou-Tsan .......................................................451 Scholz, Andreas .....................................................162
Lee, Hsiao-Ping .....................................................500 Seifert, Jean-Pierre...................................................10
Li, Po-Yi ..................................................................90 Sha, Lui .....................................................................1
Lian, Feng-Li.........................................................451 Shah, Nirav ............................................................177
Lie, Wen-Nung ......................................................486 Sheikh, Kamran .......................................................98
Lim, Roman...........................................................201 Shen, Jun-Hong .....................................................367
Lin, Chin-Yu..........................................................428 Sheu, Phillip C.-Y. ................................................386
Lin, Chu-Hsing ........................................................74 Shih, Ming-Te........................................................185
Lin, Guang-De.......................................................400 Shih, Po-Yi ............................................................500
578
Shimamoto, Shigeru ................................................59 Wang, Qixin ..............................................................1
Shiu, Ming-Chiuan ................................................451 Wang, Tsung-Wei....................................................90
Shyu, Mei-Ling......................................................262 Weng, Jui-Feng......................................................569
Singhal, Mukesh ....................................................106 Wenyin, Liu...........................................................296
Sommer, Stephan...................................................162 Wibbels, Martin .......................................................98
Soo, Von-Wun.......................................................394 Woehrle, Matthias .................................................201
Srinivas, M. B. ......................................................480 Wong, Edward C. .................................................280
Su, Addison ...........................................................549 Wu, Han-Zhen .......................................................555
Su, I-Fang ..............................................................217 Wu, Richard.............................................................20
Su, Ja-Hwung ........................................................492 Wu, Siew-Rong .....................................................537
Su, Jun-Ming .........................................................569 Wu, Xu ....................................................................67
Su, Yu-Sheng.........................................................555 Wu, Yao-Ting........................................................302
Sun, Koun-Tem .....................................................543 Wu, Yiju ..................................................................59
Sung, Jing-Tian......................................................291 Xu, Fei .....................................................................67
Tai, Cheng-Chi ......................................................475 Xu, Jianliang............................................................90
Tan, C. J. ...............................................................280 Yamamoto, Toshiyuki ...........................................564
Tang, Chuan Yi .....................................................436 Yang, Chuan-Yue ..................................................225
Tei, Kenji...............................................................326 Yang, Hao..............................................................285
Tejero-Calado, J. C. ..............................................138 Yang, Jeaha............................................................314
Thake, C. Douglas ...................................................81 Yang, Shih-Yao .....................................................394
Thiele, Lothar ........................................................201 Yang, Stephen J. H. .............................. 513, 549, 555
Tokmakoff, Andrew ................................................98 Yang, Tzu-Chi .......................................................524
Tsai, Jeffrey J. P. ..........................................272, 386 Yeh, Chi-Hsiang ......................................................20
Tsai, Kun-Cheng....................................................291 Yeh, Ching-Long ...................................................408
Tsai, Richard Tzong-Han.......................................410 Yeh, Hsin-Ho.........................................................492
Tsai, Tsung-Han ....................................................256 Yeh, Lun-Wu.........................................................130
Tsai, Yuan-Jiun......................................................114 Yen, I-Ling ............................................................177
Tsai, Yuh-Ren........................................................114 Yu, Ming-Shing .....................................................428
Tseng, Shian-Shyong.............................................569 Yu, Shih-Yin..........................................................507
Tseng, Vincent S............................................170, 492 Yu, Zhenwei ..........................................................272
Tseng, Yu-Chee .....................................................130 Zeadally, Sherali......................................................52
Tuladhar, Summit R. ............................................249 Zhang, Chengcui....................................................233
Wang, Bo-Wen ......................................................492 Zhang, Tianle.........................................................280
Wang, Chih-Cheng ................................................379 Zhang, Xinwen ........................................................10
Wang, Jhing-Fa......................................................500 Zhou, Feng.............................................................280
Wang, Neng-Chung .......................................320, 349
579
IEEE Computer Society
Conference Publications
Operations
ations Committee
CPOC Chair
Chita R. Das
Professor, Penn State University
Board Members
Mike Hinchey, Director, Software Engineering Lab, NASA Goddard
Paolo Montuschi, Professor, Politecnico di Torino
Jeffrey Voas, Director, Systems Assurance Technologies, SAIC
Suzanne A. Wagner, Manager, Conference Business Operations
Wenping Wang, Associate Professor, University of Hong Kong
IEEE Computer Society Executive Staff
Angela Burgess, Executive Director
Alicia Stickley, Senior Manager, Publishing Services
Thomas Baldwin, Senior Manager, Meetings & Conferences
IEEE Computer Society Publications
The world-renowned IEEE Computer Society publishes, promotes, and distributes a wide variety of authoritative
computer science and engineering texts. These books are available from most retail outlets. Visit the CS Store at
http://www.computer.org/portal/site/store/index.jsp for a list of products.
CPS Online is our innovative online collaborative conference publishing system designed to speed the delivery of
price quotations and provide conferences with real-time access to all of a project's publication materials during
production, including the final papers. The CPS Online workspace gives a conference the opportunity to upload
files through any Web browser, check status and scheduling on their project, make changes to the Table of Contents
and Front Matter, approve editorial changes and proofs, and communicate with their CPS editor through discussion
forums, chat tools, commenting tools and e-mail.
The following is the URL link to the CPS Online Publishing Inquiry Form:
http://www.ieeeconfpublishing.org/cpir/inquiry/cps_inquiry.html
580
Proceedings
SUTC 2008
Proceedings
SUTC 2008
11-13 June 2008 • Taichung, Taiwan
Editors
Mukesh Singhal, University of Kentucky, USA
Giovanna Di Marzo Serugendo, University of London, UK
Jeffrey J. P. Tsai, University of Illinois, Chicago, USA
Wang-Chien Lee, Pennsylvania State University, USA
Kay Romer, ETH Zurich, Switzerland
Yu-Chee Tseng, National Chiao-Tung University, Taiwan
Han C. W. Hsiao, Asia University, Taiwan
Sponsors
IEEE Computer Society
National Science Council, Taiwan, ROC
Academia Sinica, Taiwan, ROC
Institute for Information Industry, Taiwan, ROC
Asia University, Taiwan, ROC
Copyright and Reprint Permissions: Abstracting is permitted with credit to the source. Libraries may photocopy
beyond the limits of US copyright law, for private use of patrons, those articles in this volume that carry a code at
the bottom of the first page, provided that the per-copy fee indicated in the code is paid through the Copyright
Clearance Center, 222 Rosewood Drive, Danvers, MA 01923.
Other copying, reprint, or republication requests should be addressed to: IEEE Copyrights Manager, IEEE Service
Center, 445 Hoes Lane, P.O. Box 133, Piscataway, NJ 08855-1331.
The papers in this book comprise the proceedings of the meeting mentioned on the cover and title page. They reflect
the authors’ opinions and, in the interests of timely dissemination, are published as presented and without change.
Their inclusion in this publication does not necessarily constitute endorsement by the editors, the IEEE Computer
Society, or the Institute of Electrical and Electronics Engineers, Inc.
Welcome to the IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing
(SUTC 2008). SUTC 2008 is an international forum for researchers to exchange information regarding
advancements in the state of the art and practice of sensor networks, ubiquitous and trustworthy computing as well
as to identify the emerging research topics and define the future of sensor networks, ubiquitous and trustworthy
computing. The technical program of SUTC2008 consists of invited talks, paper presentations, and panel
discussions.
SUTC 2008 covers broad and diverse topics, which include
• Applications (novel use cases, deployment experience)
• Algorithms and Protocols (topology, coverage, routing, distributed coordination)
• Data Management and Processing (gathering, storage, fusion, dissemination)
• Deployment, Testing, and Debugging
• Design and Programming Methodologies
• Energy Management
• Embedded Processors, Sensors, and Actuators
• Management Aspects (configuration, adaptation, healing)
• Mobility, Location, and Context
• Modeling and Performance Evaluation (simulation, complexity analysis, user studies)
• Networking Technologies (ad hoc networks, personal area networks)
• Operating Systems and Middleware
• Privacy
• Protocol Design, Modeling, and Implementation Experiences
• QoS Aspects
• Reliability
• Security (authentication, access control, intrusion detection, and tolerance)
• Social Issues
• System and Network Architectures
• Trust (establishment, negotiation, management)
• User Interface Technologies
Many high-quality papers were submitted from four main continents and other areas. To maintain the high
standard of the conference, only 25% of regular papers were accepted for presentation in the conference. To address
the future R&D problems of senor network and ubiquitous systems, we have invited six distinguished speakers: Dr.
Jeannette Wing, US National Science Foundation; Dr. Lui Sha, University of Illinois; Dr. S. Sitharama Iyengar,
Louisiana State University; Dr. Ravi Sandhu, University of Texas at San Antonio; Dr. Kane Kim, University of
California, Irvine; and Dr. Lionel Ni, Hong Kong University of Science and Technology. We are greatly honored to
have them present their experience and vision for the future trend ubiquitous computing. Six workshops, one
industrial track, one special session, and two panels are also offered to debate the most important issues facing the
sensor networks research community.
The success of an international conference such as this depends greatly on the involvement of many individuals.
First of all, we would like to thank the Conference Committee and Program Committee members, especially
Program Co-Chairs, Wang-Chien Lee, Kay Römer, Yu-Chee Tseng; Program Vice Chairs, Pedro Marron, Trent
Jaeger, Andreas Willig, Tei-Wei Kuo, Gerd Kortuem, Yunhao Liu, Kun-Lung Wu, Chien-Chao Tseng; Workshop Co-
Chairs, Stephen Yang, Shu-Ching Chen, Jong Hyuk Park, Raja Jurdak; Industrial Program Co-Chairs, Jen-Yao
Chung, Nageswara Rao, Emile Aarts; Special Track Co-Chairs, Mei-Ling Shyu, Guna Seetharaman, Tzong-Chen
Wu; Finance Chair, Rong-Ming Chen; Publication and Registration Chair, Han C. W. Hsiao; Local Arrangement
Chair, Anthony Y. H. Liao; Web Co-Chairs, Fu-Ming Huang, Shih-Nung Chen; Publicity Co-Chairs, Alan Liu,
Shangping Ren, Sam Michiels; Best Paper Award Committee Co-Chairs, Lionel Ni, Ajay Kshemkalyani, Chung-Ta
xiii
King, and staff from Asia University. Finally, we would like to express our special thanks to the Advisory
Committee who provided the invaluable help and guidance necessary to put this conference together.
We also wish to thank Asia University, National Science Council, Institute for Information Industry, and
Academia Sinica for their contribution to the success of this conference.
We hope that you will have a great time at SUTC 2008.
Mukesh Singhal
Giovanna Di Marzo Serugendo
Jeffrey J. P. Tsai
General Co-Chairs
xiv
Welcome from
the Conference Program Co-Chairs
This volume contains the proceedings of SUTC 2008, the second IEEE International Conference on Sensor
Networks, Ubiquitous, and Trustworthy Computing. The conference took place in Taichung, Taiwan, 11-13 June
2008. Its objective was to bring together leading researchers from the closely related fields of sensor networks,
ubiquitous computing, and trustworthy computing to present and discuss the latest results in this rapidly developing
area.
A total of 102 papers were submitted to the conference by researchers from all over the world. After a thorough
review by members of the Program Committee and external reviewers, 26 papers were selected for inclusion in the
conference program. The technical program of SUTC 2008 represents a collection of excellent papers on important
aspects of sensor networks, ubiquitous computing, and trustworthy computing—thus bringing together researchers
from these related fields in a unique setting to exchange the latest results. In addition to the full technical papers, the
conference program included six keynote presentations, two panel discussions, an industrial track as well as several
workshops. The technical program was structured into three parallel tracks.
We would like to thank the Program Vice-Chairs Pedro J. Marron (University of Bonn, Germany), Trent Jaeger
(Pennsylvania State University, USA), Andreas Willig (Technical University of Berlin, Germany), Tei-Wei Kuo
(National Taiwan University, Taiwan), Gerd Kortuem (Lancaster University, UK), Yunhao Liu (Hong Kong
University of Science and Technology, Hong Kong), Kun-Lung Wu (IBM Watson Research Lab, USA), and Chien-
Chao Tseng (National Chiao-Tung University, Taiwan) for their tireless efforts which were instrumental in putting
together a strong technical program for the conference. We would also like to thank the members of the Technical
Program Committee for their excellent work in making this conference a success. We are greatly indebted to the
General Co-Chairs Mukesh Singhal (University of Kentucky, USA), Giovanna Di Marzo Serugendo (University of
London, UK), and Jeffrey P. Tsai (University of Illinois, Chicago, USA) for their generous help and successful
coordination of the many activities involved in this conference.
xv
Committees
Program Committee
Luis Almeida, Universidade de Aveiro, Portugal
Stefan Arbanowski, Fraunhofer FOKUS, Germany
Walid Aref, Purdue University, USA
Sanjoy Baruah, University of North Carolina at Chapel Hill, USA
Vandy Berten, National Taiwan University, Taiwan
Rajendra Boppana, University of Texas, San Antonio, USA
Eric Bouillet, IBM T. J. Watson Research, USA
Giorgio Buttazzo, Scuola Superiore Sant'Anna, Italy
Chih-Ming Chao, National Taiwan Ocean University, Taiwan
Han-Chieh Chao, National Dong Hwa University, Taiwan
Samarjit Chakraborty, National University of Singapore, Singapore
Chien Chen, National Chiao-Tung University, Taiwan
Guihai Chen, Nanjing University, China
Lei Chen, Hong Kong University of Science and Technology, Hong Kong
Shyh-Kwei Chen, IBM Watson Research Center, USA
Ming-Syan Chen, National Taiwan University, Taiwan
Ya-Su Chen, National Taiwan University of Science and Technology, Taiwan
Kuang-Hui Chi, National Yunlin University, Taiwan
Narankar Dulay, Imperial College, UK
Schahram Dustdar, Vienna University of Technology, Austria
Eylem Ekici, Ohio State University, USA
Patrik Floreen, Helsinki Institute for Information Technology, Finland
Andrea Forte, Columbia University, USA
Xiaoming Fu, Georg-August-University of Goettingen, Germany
Vinod Ganapathy, Rutgers University, USA
Bugra Gedik, IBM Watson Research Center, USA
Alain Gefflaut, Microsoft, Germany
Joel Goossens, Brussels University, Belgium
Lin Gu, Google, USA
Tao Gu, Institute For Infocom Research, Singapore
Dimitrios Gunopulos, University of California, Riverside, USA
Joerg Haehner, University of Hannover, Germany
Jinsong Han, Hong Kong University of Science and Technology, Hong Kong
Marcus Handte, University of Bonn, Germany
Takahiro Hara, Osaka University, Japan
Klaus Herrmann, University of Stuttgart, Germany
Jiman Hong, Kwangwoon University, Korea
Seongsoo Hong, Seoul National University, Korea
Vincent Hu, NIST, USA
Kien A. Hua, University of Central Florida, USA
Sajid Hussain, Acadia University, Canada
Salil Kanhere, University of New South Wales, Australia
Apu Kapadia, Dartmouth College, USA
Holger Karl, University of Paderborn, Germany
Abdelmajid Khelil, TU Darmstadt, Germany
Chin-Fu Kuo, National Kaohsiung University, Taiwan
xvi
Ricky Yu Kwong Kwok, Hong Kong University, China
Andreas Lachenmann, University of Stuttgart, Germany
Yee Wei Law, University of Melbourne, Australia
Chiang Lee, National Cheng Kung University, Taiwan
Dik Lun Lee, Hong Kong University of Science and Technology, China
Mei Li, Microsoft, USA
Ninghui Li, Purdue University, USA
XiangYang Li, Illinois Institute of Technology
Yingshu Li, Georgia State University, USA
Maria Lijding, University of Twente, Netherlands
Ee-Peng Lim, Nanyang Technological University, Singapore
Ting-Yu Lin, University of Illinois at Urbana-Champaign, USA
Feng Ling, Tsinghua University, China
Chuan-Ming Liu, National Taipei University of Technology, Taiwan
Donggang Liu, University of Texas at Arlington, USA
Li Lu, Hong Kong University of Science and Technology, Hong Kong
Yung-Hsiang Lu, Purdue University, USA
Chung-Horng Lung, Carleton University
Michael R. Lyu, Chinese University of Hong Kong, China
Steve McLaughlin, University of Edinburgh, UK
Nirvana Meratnia, University of Twente, Netherlands
Daniele Miorandi, Create-Net, Italy
Henk Muller, University of Bristol, UK
Nicolas Navet, INRIA, France
Tatsuo Nakajima, Waseda University, Japan
Nidal Nasser, University of Guelph, Canada
Beng Chin Ooi, National University of Singapore, Singapore
Luis Orozco, Universidad de Castilla La Mancha, Spain
Wen-Chih Peng, National Chiao Tung University, Taiwan
Stefan Petters, National ICT Australia Ltd., Australia
Thomas Plagemann, University of Oslo, Norway
Ashutosh Sabharwal, Rice University, USA
Reiner Sailer, IBM Research, USA
George Samaras, University of Cyprus, Cyprus
Pierangela Samarati, University of Milan, Italy
Dae-Hee Seo, Korea Information Security Agency, Korea
Lui Sha, University of Illinois, USA
Zili Shao, Hong Kong Polytechnic University, Hong Kong
Chien-Chung Shen, University of Delaware, USA
Haiying Shen, University of Arkansas, USA
Chi-Sheng Shih, National Taiwan University, Taiwan
Gunter Schafer, Technische Universitat Ilmenau, Germany
Gregor Schiele, University of Mannheim, Germany
Jochen Schiller, FU Berlin, Germany
Loren Schwiebert, Wayne State University, USA
Aruna Seneviratne, University of New South Wales, Australia
Sakir Sezer, Queen’s University Belfast, N. Ireland, UK
Shi-WuLo, National Chung Cheng University, Taiwan
Françoise Simonot-Lion, LORIA-INPL, France
Ye-Qiong Song, LORIA-INPL, France
Junehwa Song, KAIST, South Korea
Anna Squicciarini, Purdue University, USA
Avinash Srinivasan, Florida Atlantic University
Oliver Storz, Lancaster University, UK
xvii
Kian-Lee Tan, National University of Singapore, Singapore
Xueyan Tang, Nanyang Technological University, Singapore
Bulent Tavli, Tobb University, Turkey
Eduardo Tovar, ISEP-IPP, Portugal
Patrick Traynor, Penn State University, USA
Elisabeth Uhlemann, Halmstad University, Sweden
Athanasios Vasilako, University of Western Macedonia, Greece
Michail Vlachos, IBM T. J. Watson Research Center, USA
Thiemo Voigt, SICS, USA
Matthias Wagner, DoCoMo Communications Laboratories Europe, Germany
Farn Wang, National Taiwan University, Taiwan
Brent Waters, SRI, USA
Andreas Willig, Technical University of Berlin, Germany
Shih-Lin Wu, Chang Gung University, Taiwan
Bin Xiao, Hong Kong Poly University
Jianliang Xu, Baptist University, Hong Kong
Vivian Xu, Cisco, USA
Chu-Sing Yang, National Cheng Kung University, Taiwan
Chu-Sing Yang, National Taiwan University, Taiwan
Wei-Zu Yang, Asia University, Taiwan
Fan Ye, IBM T. J. Watson Research, USA
Li-Hsing Yen, National University of Kaohsiung, Taiwan
Hee Yong Youn, Sungkyunkwan University, Korea
Jeffrey Xu Yu, Chinese University of Hong Kong, China
Ting Yu, North Carolina State University, USA
Andrea Zanella, University of Padova, Italy
Dimitris Zeinalibour, University of Cyprus
Hongke Zhang, Beijing JiaoTong University, China
Xiaolan Zhang, IBM Research, USA
Xinwen Zhang, Samsung Research, USA
Dakai Zhu, University of Texas at San Antonio, USA
Sencun Zhu, Penn State University, USA
Marco Zuniga, Xerox Research Labs, USA
xviii
Organizing Committee
Advisory Committee
C. V. Ramamoorthy (Chair), University of California at Berkeley, USA
Wen-Tsuen Chen, National Tsing Hua University, Taiwan
S. S. Iyengar, Louisiana State University, USA
Kinji Mori, Tokyo Institute of Technology, Japan
Lionel M. Ni, Hong Kong University of Science and Technology, Hong Kong
Makoto Takizawa, Tokyo Denki University, Japan
Benjamin Wah, University of Illinois, Urbana, USA
Steering Committee
Jeffrey J. P. Tsai (Chair), University of Illinois, Chicago, USA
S. S. Iyengar, Louisiana State University, USA
Lionel M. Ni, Hong Kong University of Science and Technology, Hong Kong
Giovanna Di Marzo Serugendo, University of London, UK
General Co-Chairs
Mukesh Singhal, University of Kentucky, USA
Giovanna Di Marzo Serugendo, University of London, UK
Jeffrey J. P. Tsai, University of Illinois, Chicago, USA
Program Co-Chairs
Wang-Chien Lee, Pennsylvania State University, USA
Kay Romer, ETH Zurich, Switzerland
Yu-Chee Tseng, National Chiao-Tung University, Taiwan
Program Vice-Chairs
Sensor Networks Track
Pedro J. Marron, University of Bonn, Germany
xix
Trustworthy Computing Track
Yunhao Liu, Hong Kong University of Science and Technology, Hong Kong
Workshop Co-Chairs
Shu-Ching Chen, Florida International University, USA
Jong Hyuk Park, Kyungnam University, Korea
Raja Jurdak, University College Dublin, Ireland
Stephen J. H. Yang, National Central University, Taiwan
Finance Chair
Rong-Ming Chen, National University of Tainan, Taiwan
xx
Local Arrangement Chair
Anthony Y. H. Liao, Asia University, Taiwan
Publicity Co-Chairs
Sam Michiels, K.U. Leuven, Belgium
Shangping Ren, Illinois Institute of Technology, USA
Alan Liu, National Chung Cheng University, Taiwan
Web Co-Chairs
Shih-Nung Chen, Asia University, Taiwan
Fu-Ming Huang, National Central University, Taiwan
xxi