IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly...

12
DRAGON: Detection and Tracking of Dynamic Amorphous Events in Wireless Sensor Networks Nicholas Hubbell and Qi Han, Member, IEEE Abstract—Wireless sensor networks may be deployed in many applications to detect and track events of interest. Events can be either point events with an exact location and constant shape, or region events which cover a large area and have dynamic shapes. While both types of events have received attention, no event detection and tracking protocol in existing wireless sensor network research is able to identify and track region events with dynamic identities, which arise when events are created or destroyed through splitting and merging. In this paper, we propose DRAGON, an event detection and tracking protocol which is able to handle all types of events including region events with dynamic identities. DRAGON employs two physics metaphors: event center of mass, to give an approximate location to the event; and node momentum, to guide the detection of event merges and splits. Both detailed theoretical analysis and extensive performance studies of DRAGON’s properties demonstrate that DRAGON’s execution is distributed among the sensor nodes, has low latency, is energy efficient, is able to run on a wide array of physical deployments, and has performance which scales well with event size, speed, and count. Index Terms—Event tracking protocols, wireless sensor networks, energy efficiency. Ç 1 INTRODUCTION W IRELESS sensor networks have been considered very useful for event detection and tracking in various applications such as oil spill detection or ground water contaminant monitoring. The challenge here is to devise a method for the sensors to recognize and follow these events as they travel through the network. This identification and tracking capability forms a critical foundation for various higher level processing tasks such as predicting an event’s evolution or conducting queries on the affected area. For instance, for some applications like monitoring the disper- sion of fluids, classic numerical fluid transport models for fluid prediction are extremely computationally intensive and require hours to run to completion. In order to monitor events in real time, the model should be decomposed and computation should be distributed among the sensor nodes to exploit computational parallelism. By identifying and tracking each event in a distributed manner, one node for each identified event can be designated as an interface point for running the model. Events are defined within two classes. The first class is “point events” that have precise locations and possess static, well-defined shapes with crisp boundaries. The second class is “region events” that are less restrictive and can encompass the first. Region events are large amorphous phenomena to which a single location coordinate cannot apply. They are allowed highly dynamic shapes that shift with time. More- over, such events may have “fuzzy” boundaries that are not easily seen and somewhat subjective. The chief shortfall in current efforts as detailed in Section 2 is the universal assumption that events never combine into a large whole nor disintegrate into several smaller phenom- ena. Stated another way, all existing tracking solutions assume that while event shapes may be dynamic and nebulous, event signatures or identities are static and well defined. This implies that either events must remain distinct, never crossing or passing too close together to become indistinguishable to the algorithm, or if they do cross that they were identified prior and nothing new has formed. Scenarios where this assumption does not hold are easily possible. Consider again the chemical spill as it diffuses below ground. If the fluid is pouring out from more than one site, the separate plumes may meet and mix together. In so doing, they lose their individual shapes in a single large cloud. Conversely, changes in the medium through which it permeates may cause the fluid to follow a few preferred paths and break up into separate, smaller concentrations. In practice, keeping track of the dynamic expanding, shrinking, dividing, and merging of contaminant is essential to making treatment decisions. Problem statement. Our goal is to design a protocol that is able to detect and track wide area, amorphous region events with dynamic evolution. Events that exhibit this property are capable of dynamically splitting apart or merging together, thus meaning that events can be created or destroyed. The protocol is expected to run on a wide array of deployments, so the distribution of nodes is allowed to be arbitrary and no particular regular or stochastic node placement is assumed. Moreover, the field IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012 1 . N. Hubbell is with the Lockheed Martin Corporation, 12395 N. Mead Way, Littleton, CO 80125-9782. E-mail: [email protected]. . Q. Han is with the Department of Electrical Engineering and Computer Science, Colorado School of Mines, 1500 Illinois Street, Golden, CO 80401. E-mail: [email protected]. Manuscript received 21 Apr. 2011; revised 20 Aug. 2011; accepted 1 Oct. 2011; published online 19 Oct. 2011. Recommended for acceptance by Y. Liu. For information on obtaining reprints of this article, please send e-mail to: [email protected], and reference IEEECS Log Number TPDS-2011-04-0240. Digital Object Identifier no. 10.1109/TPDS.2011.264. 1045-9219/12/$31.00 ß 2012 IEEE Published by the IEEE Computer Society

Transcript of IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly...

Page 1: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

DRAGON: Detection and Trackingof Dynamic Amorphous Eventsin Wireless Sensor Networks

Nicholas Hubbell and Qi Han, Member, IEEE

Abstract—Wireless sensor networks may be deployed in many applications to detect and track events of interest. Events can be

either point events with an exact location and constant shape, or region events which cover a large area and have dynamic shapes.

While both types of events have received attention, no event detection and tracking protocol in existing wireless sensor network

research is able to identify and track region events with dynamic identities, which arise when events are created or destroyed through

splitting and merging. In this paper, we propose DRAGON, an event detection and tracking protocol which is able to handle all types of

events including region events with dynamic identities. DRAGON employs two physics metaphors: event center of mass, to give an

approximate location to the event; and node momentum, to guide the detection of event merges and splits. Both detailed theoretical

analysis and extensive performance studies of DRAGON’s properties demonstrate that DRAGON’s execution is distributed among the

sensor nodes, has low latency, is energy efficient, is able to run on a wide array of physical deployments, and has performance which

scales well with event size, speed, and count.

Index Terms—Event tracking protocols, wireless sensor networks, energy efficiency.

Ç

1 INTRODUCTION

WIRELESS sensor networks have been considered veryuseful for event detection and tracking in various

applications such as oil spill detection or ground watercontaminant monitoring. The challenge here is to devise amethod for the sensors to recognize and follow these eventsas they travel through the network. This identification andtracking capability forms a critical foundation for varioushigher level processing tasks such as predicting an event’sevolution or conducting queries on the affected area. Forinstance, for some applications like monitoring the disper-sion of fluids, classic numerical fluid transport models forfluid prediction are extremely computationally intensiveand require hours to run to completion. In order to monitorevents in real time, the model should be decomposed andcomputation should be distributed among the sensor nodesto exploit computational parallelism. By identifying andtracking each event in a distributed manner, one node foreach identified event can be designated as an interfacepoint for running the model.

Events are defined within two classes. The first class is

“point events” that have precise locations and possess static,

well-defined shapes with crisp boundaries. The second class

is “region events” that are less restrictive and can encompass

the first. Region events are large amorphous phenomena to

which a single location coordinate cannot apply. They areallowed highly dynamic shapes that shift with time. More-over, such events may have “fuzzy” boundaries that are noteasily seen and somewhat subjective.

The chief shortfall in current efforts as detailed in Section 2is the universal assumption that events never combine into alarge whole nor disintegrate into several smaller phenom-ena. Stated another way, all existing tracking solutionsassume that while event shapes may be dynamic andnebulous, event signatures or identities are static and welldefined. This implies that either events must remain distinct,never crossing or passing too close together to becomeindistinguishable to the algorithm, or if they do cross thatthey were identified prior and nothing new has formed.Scenarios where this assumption does not hold are easilypossible. Consider again the chemical spill as it diffusesbelow ground. If the fluid is pouring out from more than onesite, the separate plumes may meet and mix together. In sodoing, they lose their individual shapes in a single largecloud. Conversely, changes in the medium through which itpermeates may cause the fluid to follow a few preferredpaths and break up into separate, smaller concentrations. Inpractice, keeping track of the dynamic expanding, shrinking,dividing, and merging of contaminant is essential to makingtreatment decisions.

Problem statement. Our goal is to design a protocol thatis able to detect and track wide area, amorphous regionevents with dynamic evolution. Events that exhibit thisproperty are capable of dynamically splitting apart ormerging together, thus meaning that events can be createdor destroyed. The protocol is expected to run on a widearray of deployments, so the distribution of nodes isallowed to be arbitrary and no particular regular orstochastic node placement is assumed. Moreover, the field

IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012 1

. N. Hubbell is with the Lockheed Martin Corporation, 12395 N. Mead Way,Littleton, CO 80125-9782. E-mail: [email protected].

. Q. Han is with the Department of Electrical Engineering and ComputerScience, Colorado School of Mines, 1500 Illinois Street, Golden, CO 80401.E-mail: [email protected].

Manuscript received 21 Apr. 2011; revised 20 Aug. 2011; accepted 1 Oct.2011; published online 19 Oct. 2011.Recommended for acceptance by Y. Liu.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TPDS-2011-04-0240.Digital Object Identifier no. 10.1109/TPDS.2011.264.

1045-9219/12/$31.00 � 2012 IEEE Published by the IEEE Computer Society

Page 2: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

is permitted to be three dimensional. We only require thatthe network forms a connected graph, the minimumnecessary to assure communications. We assume that nodesare location aware. Localization can be done duringdeployment if GPS is not an option. We assume that thenetwork is organized into clusters. Each cluster has exactlyone node or “clusterhead” that serves as the local data sinkfor its respective cluster as well as communication relays forother clusters if clusterheads cannot communicate directly.Within each cluster, members organize themselves into atree with the clusterhead as the root. The clusterheadscollect (and optionally aggregate) the data from allmembers. Then, they forward the data to one or more basestations in the network by relaying it to the heads ofneighboring clusters. This relay between the clusterheadscan be accomplished either by high-powered, long-rangedirect communication or by establishing multihop commu-nication paths using members of the clusters involved.Dealing with packet loss is considered a separate issue thathas been well studied in the literature, so a fault toleranttechnique can be applied and implemented as one of theunderlying services for the protocol.

We have designed and evaluated DRAGON, an algo-rithm which can detect and track fully general, dynamicallyidentifiable region events in an energy efficient manner inan arbitrary, connected, three-dimensional WSN deploy-ment. To the best of our knowledge, DRAGON is the firstwork that have attained all of these goals.

The rest of the paper is organized as follows: In Section 2,we present related work. In Section 3, we present theconcepts and intuitions that are the underpinnings of ourapproach. In Section 4, the design of DRAGON is given. InSection 5, we present the results of a formal analysis ofDRAGON’s properties. In Section 6, the experimentalevaluation is given.

2 RELATED WORK

The approaches to region event tracking in existing researchmay be categorized into statistical methods [25], topogra-phical techniques [3], [5], [12], [13], [14], [23], [29], and edgedetection algorithms [2], [4], [16], [17]. A statistical methodis presented in [25] for detecting and tracking generichomogeneous regions without the benefit of an a prioripredicate to identify events. Instead, it uses a kernel densityestimator to approximate the probability density function ofthe observations. It is suggested that the detection routinebe rerun periodically to accommodate the scenario of anynew regions or holes that evolve in the midst of tracking.Even so, there is not an elegant way to handle newdetections and persistent tracking in the same moment.

An example of the topological and contour mappingtechnique is Iso-Map [14], which builds contour mapsbased solely on the reports collected from intelligentlyselected “isoline nodes” in the network. The approach islimited to a plane. Another technique [13] collects a timeseries of data maps from the network and detects complexevents through matching the gathered data to spatiotem-poral data patterns. Essentially, the work provides a basicinfrastructure and then outsources the problem solution tothe user, instead of directly solving the event tracking

problem. SASA [12] uses a hole detection algorithm tomonitor the inner surface of tunnels, where sensor nodesmay be displaced due to collapses of the tunnels. In ourwork, node positions do not change due to the evolution ofthe phenomena being observed.

In edge detection-based region event tracking, thechallenge is to devise a method for nodes to be identifiedas “edge nodes” that are near the boundary of a region andfrom that, calculate an approximate boundary for the regionin question. Three methods guided by statistics, imageprocessing techniques, and classifier technology are devel-oped and compared in [4]. A novel method for edgedetection of region events makes use of the duel-spaceprinciple [16], [17]. The algorithm is fundamentally cen-tralized. Yang and Fujita [31] identify several critical pointsin a given event region and periodically check thecriticalness of these points, but the scheme can only workfor an event whose shape remains convex.

Existing research on point event tracking includesvarious tracking protocols such as [18], [30] and DynamicConvoy Tree Configuration (DCTC) [32], [33] and theore-tical contributions [1], [10], [20], [22]. One of the mostnotable contributions is DCTC [32]. It uses a “DynamicConvoy Tree” protocol to accomplish both event trackingand communication structure maintenance. DCTC essen-tially forms and maintains a spanning tree over the nodeswhich sense the event, which is perhaps the most obviousand straightforward method of tracking events within thenetwork. Despite its clean conceptual elegance, DCTC isstill unsuitable for our task since it assumes that pointevents will be persistent and distinct.

3 FOUNDATION CONCEPTS

The fundamental insights on which our approach is basedare both unique and intuitive. Two central concepts definehow fully generalized events are detected and tracked. Theyare the notions of event center of mass and node momentum.

3.1 Event Center of Mass

The concept of center of mass has been previously used tocooperatively control mobile sensor networks to track amoving target [9], clustering [27], and localization [15]. InDRAGON, we use an event’s center of mass to delineate theevent’s location. It is a generalized position coordinate thatserves as a reference point for critical operations such asdetecting the occurrence of event splits and merges. Todefine it, we first expound the idea of a mass function.

Definition 1 (Mass Function). The mass value mn;t representsthe “intensity” of the event readings taken by node n at time t.It is a bounded nonnegative real number as a function of thesensor reading. The exact formula of the mass function isapplication specific. There is an implicit binary event detectionpredicate with m ¼ 0 meaning no detection.

Let e be the event in question. Let Ne � N be the set ofsensor nodes that detect event e. Let �n be a measurement ofthe redundant sensing coverage in node n’s sensing region;that is, �n is an average of how many distinct sensingregions of nearby nodes cover any given point within n’s

2 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012

Page 3: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

sensing region. The sensing regions considered include thatof node n itself. Let the vector ln ¼ ½xn; yn; zn� be the three-dimensional position coordinates of node n.

Definition 2 (Event Center of Mass). An event’s center ofmass is the average position of all nodes sensing the eventweighted by the mass values. Let e be the event in question,NeðtÞ � N be the set of sensor nodes that detect event e at timet, MeðtÞ be the total mass. Let �n be a measurement of theredundant sensing coverage in node n’s sensing region; that is,�n is the average number of distinct sensing regions of nearbynodes that cover any given point within n’s sensing region.The sensing regions considered include that of node n itself.Let the vector ln ¼ ½xn; yn; zn� be the three-dimensionalposition coordinates of node n. Then, the center of mass ofevent e at time t denoted by lMðe; tÞ is computed as follows:

lMðe; tÞ ¼1

MeðtÞX

8n2NeðtÞ

mn;t

�nln;where

MeðtÞ ¼X

8n2NeðtÞ

mn;t

�n:

The node density �n is used to ensure that the eventcenter of mass is not skewed toward areas of low massbecause there happen to be more nodes present in the area.One possible method for obtaining �n is to estimate theshape of the average sensing region for a given node. In aparticular deployment, it can be calculated as the expectedamount of multiple overlap in sensing regions for eachnode using numerical integration techniques.

3.2 Node Momentum

To keep track of event splits and merges, we use thefollowing intuition as a guideline. If a high concentration ofan event’s readings is moving far off the event’s center ofmass, then that concentration should be recognized as anautonomous event. Conversely, if two separate events areso close that their reading concentrations are practicallyindistinguishable, then they should be folded into a singlewhole. These thoughts expose what information is requiredin order to detect splits and merges. First, we must considerboth reading strength and that reading’s distance from theevent’s center of mass in tandem. Second, in deciding notjust if but where to split a single event, distance must beaugmented with direction, thus requiring a vector quantity.We hence adapt another concept from the realm of physics,the concept of momentum.

Definition 3 (Node Momentum). The momentum of node nwith respect to event e at time t is denoted by pnðe; tÞ which iscomputed as follows:

pnðe; tÞ ¼ mn;tðln � lMðe; tÞÞ:

A node’s momentum is its position vector relative to theevent center of mass, scaled by its own mass reading. In ourcontext, there is no time difference involved and allquantities are set at time t.

An example of the use of momentum is shown in Fig. 1.While momentum vectors are always on a line passing

through their nodes and the event’s center of mass, theymay not land right on their respective nodes. This is due to

the scaling by the mass value. A momentum vector willonly land on the node if the mass is 1, as is the case withnode b in Fig. 1. All of the other nodes have mass valuesover 1 and so their momenta overshoot their positions. Inthe figure, the momentum vectors are different shades andsizes to illustrate how they are used in a splitting eventsituation. Nodes a and b both have relatively small-magnitude momentum vectors shown as small blackarrows. This is because they either have a high mass valuewith a short distance from lM , as is the case with node a, ora larger distance with a smaller mass, like node b. However,node c is a different scenario. It can be seen that c lies over apart of the event that is about to break off from the whole.Thus, c has a high mass and a large distance, which togetherconspire to produce a momentum with a magnitude morethan double that of the other nodes. This signals a split, sothe momentum arrow is larger and a different shade.Therefore, we have the realization of the aforementionedintuition that if a high concentration of an event’s readingsis moving far off the event center, then that concentrationshould be recognized as an autonomous event. Merges aresymmetric in logic.

3.3 Split and Merge Decision Predicates

The node momentum is the decision variable that controlswhether two events should remain logically distinct orinstead be folded into one entity. The possible outcomes ofthis decision control the event splitting and merging powersunique to our proposed solution. In a naive approach, asplit occurs when a group of nodes have momenta withmagnitudes above a certain value. This, however, isinsufficient. In real situations, nodes will have high-magnitude momenta naturally if an event is simply verylarge. A simple momentum threshold limits the size ofevents that can be detected. What needs to be determinedinstead is if a node’s momentum is large relative to theevent’s overall size. To capture this insight, a cohesionthreshold (TC) will be placed on the ratio of a node’smomentum magnitude to the average mass of a nodesensing the event. The average mass per node is the totalmass MeðtÞ divided by the number of nodes sensing theevent NeðtÞ. One of the problems with simply taking a ratio

HUBBELL AND HAN: DRAGON: DETECTION AND TRACKING OF DYNAMIC AMORPHOUS EVENTS IN WIRELESS SENSOR NETWORKS 3

Fig. 1. An example of node momentum—The event’s center of mass isindicated with the hollow dot at location ð3:4; 4:4Þ. Also shown are threenodes with their locations, mass values, and arrows emanating from thecenter of mass as momentum vectors with their euclidean magnitudeswritten alongside.

Page 4: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

of momentum to event total mass is that the overall numberof nodes could make the total mass grow abnormally,leaving a dependency on the deployment. A split occurs inevent e if there is at least one node with the a momentummagnitude to average mass ratio that exceeds the threshold.This split predicate is formally stated as follows:

Definition 4 (Event Split Predicate). Let TC be a user definedcohesion threshold in units of distance. If the followingpredicate holds, then a split has occurred

ð9n 2 NeðtÞÞkpnðe; tÞk

MeðtÞjNeðtÞj

> TC � 0

0@

1A:

The predicate to decide a merge between events issymmetric to the one above. In this case, for each node ineither of two events, their momentum vectors are calculatedrelative to the combined center of mass of both events takentogether. This combined center of mass is called the jointcenter of mass and is formally defined as follows:

Definition 5 (Event Pair Joint Center of Mass). For twoevents e1 and e2, their joint center of mass is denoted bylMðe1 [ e2; tÞ and is computed in the following manner:

lMðe1 [ e2; tÞ ¼Me1ðtÞlMðe1; tÞ þMe2

ðtÞlMðe2; tÞMe1ðtÞ þMe2

ðtÞ :

A node n’s momentum relative to this combined centerof mass is called its joint momentum.

Definition 6 (Joint Node Momentum). A node n’s jointmomentum with respect to the pairwise combination of eventse1 and e2 is denoted by pnðe1 [ e2; tÞ and is computedaccording to the following formula:

pnðe1 [ e2; tÞ ¼ mn;tðln � lMðe1 [ e2; tÞÞ:

A merge occurs if all of the nodes in both events have ajoint momentum to combined total mass ratio less than thecohesion threshold.

Definition 7 (Event Merge Predicate). Let E be the set of allevents in the network. A merge occurs between two events e1

and e2 if the following predicate holds:

ð9e1; e2 2 EÞ ð8n 2 ðNe1[Ne2

ÞÞ kpnðe1 [ e2; tÞkMe1ðtÞþMe2

ðtÞjNe1[Ne2

j

� TC

0@

1A

0@

1A:

If an event does not satisfy the split predicate, then it isconsidered to be individually stable. Similarly, if two eventsdo satisfy the merge predicate, then they are considered tobe jointly stable.

The values for sensor readings and node locations areonly approximate in any real deployment. To avoid the splitand merge decisions being highly sensitive to the noise, wecould put the error tolerance on the cohesion threshold TC .These inherent inaccuracies will affect the calculations ofthe split and merge predicates. This will in turn causedecisions to be highly sensitive to inputs that have somerandom fluctuations. There are several ways to alleviate thisissue. The first option is to carry the basic tolerances

through all of the calculations and augment calculatedvalues with confidence estimates. The final values whichare evaluated against the cohesion threshold TC will then beintervals with high and low extremes. To be conservative inthis environment, an event would split only if the lowestpossible value for the split predicate ratio of a given node isstill above TC . Similarly, two events would merge only if thehighest possible value for the merge predicate ratio was stillbelow TC for every node in either event. The second optionis to put the error tolerances on the threshold TC . Thecohesion threshold would then essentially become aninterval. Splits occur for momentum size to average massratios clearly above the high side of the interval and mergeswould happen if all nodes had rations below the low side ofthe interval, respectively. The interval could be estimatedbeforehand by prior knowledge of the location and sensingerrors, the deployment, and the expected event size.

4 DESIGN OF DRAGON

Using the foundation concepts, we have designed DRA-GON, a distributed algorithm for detection and tracking ofamorphous events with dynamic evolutions. DRAGON is apowerful solution with a multifaceted approach. Fortu-nately, all of the various routines with their individualcomplexities are effortlessly amalgamated into a singlewhole by way of a unified routine structure.

In this section, first, we present some concepts thatilluminate the distributed nature of our protocol. If an eventis entirely contained within one cluster, then that clustershead can run DRAGON locally in a centralized manner. Aforemost need is to allow clusterheads to take counsel witheach other for cases where an event spans multiple clusters.Also, there is a need for global orchestration when decidingwhich existing events may be merged. To this end, wediscuss the concept of the backbone tree to facilitatecooperation and to control DRAGONs execution through-out the network. On an related note, it is ideal that onlythose areas of the network which are actually tracking anevent participate in the protocol to exploit locality and tosave energy. To this end, the idea of the backbone tree isrefined with the process of active subtree localization. Second,the action triggers that begin the algorithms execution willbe exposed. Third, the relationships between the individualphases will be clearly defined. Last, a universal distributedtemplate is outlined which all phases must follow.

4.1 The Backbone Tree

The links in the backbone tree are made from theinterclusterhead links. Any clusterhead can serve as theroot of the tree as long as the tree is connected and containsall clusterheads. It does not matter how the tree is formed.The underlying clustering protocol may choose to rotateclusterheads to balance energy consumption; it is alsopossible that the network consists of some resourcesufficient nodes that serve as clusterheads.

4.2 Active Subtree Localization

This operation always precedes the main algorithmsexecution and happens as follows: First, the root sends outa small message to the entire tree asking each clusterhead if

4 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012

Page 5: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

they are active or inactive. Active clusters will actuallyparticipate in DRAGON and inactive clusters will remaindormant through the run. Whether a cluster is active or notdepends on whether that cluster is a leaf node or an interiornode in the backbone tree. Leaf nodes respond first to theroots request. A leaf node is active if and only if it hasmember nodes which are sensing an event.

It must be mentioned that the clusterhead in questiondoes not necessarily need to poll the entire cluster todetermine this predicate. In practice, member nodes willtake it upon themselves to inform the clusterhead ofrelevant changes to their readings via a sensor report. Suchreports are sent in accordance with the given node’s dutycycle. A clusterhead will keep track of which nodes havepositive detections in a table. That table is consulted whenthe active subtree localization request is received. A leafclusterhead responds with a report containing this flag.

A clusterhead which is interior to the backbone treewaits to receive reports from each of its children beforesending its own. An interior node cannot only consideritself when deciding if it is active. Although an interior nodemay not be actively tracking an event in its own cluster, itmay need to act as a relay for a child node who is. It is clearthen that the flag sent by an interior node in its report mustrepresent the entire subtree rooted at that node. As such theflag is true if and only if either the interior node itself isactive by the previous definition, or it has a child whoreports as being active.

4.3 Action Triggers

Key phenomena for triggering the start of the algorithm arewhen nodes suddenly start to detect or cease to detect anevent. A node n begins to detect an event if its mass value isgreater than 0 for the first time. These nodes either spawnnew events or join existing ones. A simple solution is toallow a newly detecting node to join an existing event if themass functions are identical and the node preservesindividual stability for the event in question. If there areno neighboring events, or all events would be madeunstable with the addition of n, then n forms a new event.On the reverse side, the algorithm can be triggered when anode’s mass drops to 0 and is removed from the event. Inboth the cases of adding and removing nodes, a minimumrequired node count can be used to avoid excessive calls,this minimum node count approach is called “node shift.”Other possible triggers can be local mass shifts. Each clustermay maintain a local center of mass and total mass and callthe algorithm when they change beyond certain amounts.Regular data collection periods are another possible trigger.

4.4 Algorithm Phases

The abilities and needs of the algorithm motivate threedistinct phases of execution (Fig. 2): Summary, Split, andMerge. As previously explained, the necessary decisionpredicates require three aggregates: center of mass, totalmass, and node count. After active subtree localization, theSummary phase computes these aggregates for each eventand distributes them to all active clusters. Information on allevents is critical to deciding merges. The Split and Mergephases are charged with checking and performing eventsplits and merges, respectively, and they both come afterthe summary phase.

A subtle challenge exists in defining the relationshipbetween the Split and Merge phases. To avoid endlessthrashing between the two phases, we note that if two eventsare jointly stable then the event which results from the union isitself individually stable. Therefore, the product of a mergedoes not need to check for a split. This means that the mergephase can come after the split phase and there will be nocyclical dependency between the two phases, thus avoidingthe thrashing problem.

Further, DRAGON must provide the capability formultiway splits and merges. If DRAGON attempts to testfor multiway operations in one pass then there is thevexing problem of which way to do such operations.Consider the example of merging more than two eventsat a time. Each potential merge has a unique joint center ofmass, this means that every possible merge combinationbetween a set of events must be considered individually.Thus, to test in one pass for a multiway merge amongevents e1, e2, e3, and e4, the merge predicate given inDefinition 7 must be tested for the combinations fe1; e2g,fe1; e3g, fe1; e4g, fe1; e2; e3g, fe1; e2; e4g, fe1; e3; e4g, andfe1; e2; e3; e4g. An obvious combinatorial explosion in timeand message complexity ensues, making the algorithmintractable. Therefore, we devise a simpler and morefeasible scheme. To accomplish multiway operations, weallow the normal two-way Split and Merge phases to runmultiple iterations before moving on.

4.4.1 Intraphase Flow

The elegance of DRAGON lies in the fact all three phases ofDRAGON follow a single unified pattern of state transi-tions, message passing, and computation. There is onealgorithm template or “metaprogram” (Fig. 3) running in allthree phases with the details depending on the phase. Thecommon form is informally a backbone tree-wide aggrega-tion step followed by a multicast. The procedure involvesthree states: Start, Fusion, and Update. The pseudocode forthe complete process is given in Appendix A, which can be

HUBBELL AND HAN: DRAGON: DETECTION AND TRACKING OF DYNAMIC AMORPHOUS EVENTS IN WIRELESS SENSOR NETWORKS 5

Fig. 2. DRAGON’s three phases: summary, split, and merge.

Page 6: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

found on the Computer Society Digital Library at http://doi.ieeecomputersociety. org/10.1109/TPDS.2011.264.

A. The Start State. The program begins in the Start statewhere all clusterheads perform calculations limited only tothose parts of those events within their respective clusters(via the localProcess routine). What transpires nextdepends solely on the clusterhead’s status in the tree: a) Ifthe clusterhead is the backbone tree root and also the onlyactive clusterhead, then the phase can be finalized locallyand the next phase can begin; b) If the clusterhead is a leafnode, then it can immediately send an MSG-SUMMARY

message to its parent and go to the Update state. An MSG-

SUMMARY message encapsulates the results of a cluster-head’s local processing for all the events that it is trackingand is sent to that head’s parent to be combined with theresults from other clusters; c) If a clusterhead is either arelay node or the root node with active children, then ittransitions to the Fusion state and waits for MSG-SUMMARYmessages from its children.

B. The Fusion State. The Fusion state is for a cluster-head (either a relay or the root) to aggregate its localresults with those of its children. Upon receiving an MSG-

SUMMARY message from a child node, the child’s results arecombined with the parent’s results (via the fuse routine)for each event covered somewhere in the subtree. When allchildren have sent their results, the parent has completeresults for its subtree. If the clusterhead is a relay node,then it sends those results to its parent via an MSG-

SUMMARY message and transitions to the Update state. Ifinstead the clusterhead is the tree root, upon receiving allchildren’s results it now has complete information for allevents and can perform final arbitration for the phase (viathe finalizePhase routine) and processes the resultsitself (via the processUpdate routine). With the decisionmade, the root sends a multicast with an MSG-UPDATE

message to all other active tree nodes to inform them of the

outcome and moves directly from the Fusion state to theStart state for the next phase.

C. The Update State. This state is for clusterheads thathave sent their results to the root and are waiting for theroot’s multicast of the phase results. All nodes in theUpdate state upon receiving an MSG-UPDATE message fromtheir parents preform the appropriate responses (via theprocessUpdate routine) before moving to the Start stateand the next phase.

4.4.2 Splitting Groups

The details of the metaprogram subroutines—localPro-

cess, fuse, finalizePhase, processUpdate—foreach of the three algorithm phases are provided inAppendix B, available in the online supplemental materi-al. We next elaborate on one of the most important tasksin the Split phase: how to recognize splitting groupswithin the cluster in question. This is accomplished by thelocalProcess routine. To be more specific, the routinefirst calculates node momenta for all the cluster membersinvolved in a given event. Upon doing this, nodes arethen identified that satisfy the split predicate given inDefinition 4. These nodes are marked and then groupedtogether according to the similarity of their momenta. Thisprocedure is done again separately for each event withinthe cluster. localProcess begins by identifying all thenodes in event e whose momenta satisfy the splitpredicate and sorts them in decreasing order of nodemomentum magnitude. The algorithm repeatedly runsthrough these nodes, forming one split group per pass.For each node that satisfies the split predicate, thedistance between the individual node’s momentum andgroup’s avgMomentum is calculated. This distance valued’s ratio to the split group’s mass is then comparedagainst a new threshold TS . This is the Separation Thresholdused to control how far off a node’s momentum vector

6 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012

Fig. 3. DRAGON’s metaprogram state machine shared by all three phases: summary, split, and merge. The details of the four subroutines (i.e.,localProcess, fuse, finalizePhase, processUpdate) vary from phase to phase.

Page 7: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

may be from the avgMomentum of the group relative to

group size. This defines a new predicate formally

presented as follows:

Definition 8 (The Group Formation Predicate). Let there be

a node n considered for inclusion into split group g. Let MgðtÞbe the total mass of all nodes already in split group g and define

pgðe; tÞ to be the average momentum of all nodes in group g

relative to event e’s center of mass measured at time t. d is the

distance. The quantity KgðtÞ is the number of nodes within

split group g. TS is the separation threshold used to control

how far off a node’s momentum vector may be from the

avgMomentum of the group relative to group size. The group

formation predicate is defined as follows:

dðpnðe; tÞ;pgðe; tÞÞMgðtÞKgðtÞ

< TS:

If this predicate is satisfied, then the node underconsideration is added to the split group and the group’scenter of mass, total mass, and avgMomentum values areupdated to reflect the addition. The node is finallyremoved from the list of nodes under consideration. Uponfinishing a pass over all the nodes, the group beingconstructed is considered finished and the next groupstarts. This process continues until all the nodes beingconsidered are added to a group. It should be noted thatthe average momentum is calculated in a manneranalogous to center of mass. There is an extra wrinkle inthese computations; however, when averaging momenta,the mass values are normalized by the node density terms�n to avoid being skewed by the deployment.

4.4.3 Discussion

In DRAGON, we have delegated the problem of reliable

network communication and robustness in the presence of

node faults to the underlying clustering algorithm. While

we never intend to require that DRAGON’s core logic

handle faults directly, there are some extensions which

could be implemented that would allow DRAGON to

operate more gracefully in faulty situations. We will label

such extensions by whether they are intracluster or

intercluster measures. The major concern for intracluster

fault tolerance would be to allow DRAGON to operate

correctly in the presence of corrupted or missing values

from cluster members. Some remedies include discarding

lost data or replacing it with a guess based on past history

and data from surrounding nodes. There are two major

concerns for intercluster fault tolerance. The first is reliable

message delivery between clusterheads, the second is

recovery if a clusterhead fails. For the former case, third

party nodes which overhear the backbone messages could

cache and repeat the overhead messages in time if an

acknowledgment from the destination is not forthcoming.

The multiple sinks formulation mentioned earlier would

also be a solution. For the latter case, an emergency

backup clusterhead could be elected and request that its

members and the backbone tree root send it the data it

needs to continue.

5 THEORETICAL ANALYSIS

We here summarize theoretical results concerning the

properties of DRAGON. Detailed proof and analysis may

be found in [8].

Theorem 1. DRAGON terminates.

Theorem 2. DRAGON’s decision predicates are invariant with

respect to the range of the mass function m. That is, the

decisions made by DRAGON are the same regardless of the

value of the mass function’s upper bound mmax.

Theorem 3. DRAGON’s execution is invariant to node

placement, i.e., the decisions that DRAGON makes with

respect to event splits and merges are not influenced by local

differences in the density of the sensor deployment.

We have conducted detailed analysis of DRAGON’s

overhead in terms of time and message complexity. Details

of the derivations are omitted for the sake of space. We will

use C to denote the set of clusterheads throughout the

network, CE to denote the set of clusterheads covering

events, NE for the set of all nodes which can sense events,

and E for the set of all events.Time complexity. DRAGON’s execution time is the time

needed for all three phases, including the active subtree

localization. The average case of time complexity

T ¼ OðjEjjCE jdlogbðjCEjÞe þ jEjÞ:

DRAGON’s execution time grows linearly with the number

of events. It also grows jCE jdlogbðjCE jÞe with the network

coverage assuming a worst case which largely comes from

assuming every active cluster contributes some split

groups, and that these groups cannot be folded together

across clusters. This is unlikely in practice. Our empirical

results suggest time should grow linearly or better with

event size and field coverage.Message complexity. The average case of message

complexity concerns the number and size of messages

transmitted during the algorithm’s execution, including the

messaged used for active subtree localization. We do not

explicitly account for transmission power, since it is more

dependent on both the underlying clustering algorithm, the

physical deployment, and the radio model used

M ¼ OðjEjjCE j2 þ jNEj þ jCjÞ:

Though M appears to scale quadratically with the number

of active clusters, this assumes that there are split groups

formed by every cluster for every event and that they

cannot be aggregated together. That being the case, energy

may, in practice, scale more linearly with the number of

active clusters. Also, take note that although there are terms

for the set of all active nodes and for the set of all clusters,

active or inactive, that the messages involved with those

terms are small, one-time expenditures per run.We conclude that DRAGON’s costs scale linearly with

the number of events and grow quadratically or better with

respect to event coverage.

HUBBELL AND HAN: DRAGON: DETECTION AND TRACKING OF DYNAMIC AMORPHOUS EVENTS IN WIRELESS SENSOR NETWORKS 7

Page 8: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

6 PERFORMANCE EVALUATION

6.1 Event Modeling

There are as many ways to model events as there areapplication areas where events occur; it is impossible tocover all conceivable phenomena. In addition, we need totest our algorithm in various environments, so the sizeand number of events should be easily controllable.Therefore, we model events using basic geometric shapes.Region events are modeled with squares and point eventshave a circular sensing profile. We allow simple events tooverlap, so we not only get splits and merges, but also wecreate much more complex and interesting event shapesby compounding simple geometry. Region events haveonly two reading levels, an outer band mass value of 0.5and an inner plateau mass of 1.0. Point events have alinear drop off of mass readings which start at 1.0 at thepoint’s location and fall radially down to 0.0 at the edge.Events start out a given run with a completely anduniformly random initial location on the 500 m by 500 mfield. They also have a uniformly random initial directionof movement. The events move in a straight line, thoughthey randomly change direction as necessary to avoid theedges of the field and, if merges are not allowed, eachother. The speed of their movement remains constant atone of the prespecified values.

6.2 Performance Metrics and Parameters

We measure the communication overhead with respect toenergy consumption and execution time. All of ourcalculations are based on the TelosB mote platform [24].

The other important metric is the notion of eventdetection and tracking accuracy that compares DRA-GON’s answers to an objective standard. In our simula-tions, the modules in charge of collecting statistics havedirect knowledge of these underlying event shapes andevolution (the tracking algorithm being simulated doesnot), i.e., the ground truth. An accuracy measure mustdecide 1) whether DRAGON successfully detects all of thedistinct events in the network and 2) whether eachindividual event is delineated correctly. The first measureis simply the event count difference between DRAGON’sresult and the ground truth. The second measurequantifies the correctness of an event’s shape. We use asingle metric called event membership similarity in a mannersimilar to the Jaccard Coefficient used in data mining [26].It is defined as the ratio of correct matches to total nodes(i.e., the summation of correct matches, false positives,and false negatives).

The ground truth for event splits and merges isdetermined using the exact event centers known only tothe event simulation. The simple event shapes are recur-sively merged if pairs of event centers draw very close.They are split in the reverse case.

6.3 Varying Parameters

We developed our simulation in our own software inspiredby TOSSIM [11], a widely used discrete event-drivensimulator for wireless sensor networks. Our simulationshave perfect packet delivery success. There is no signalattenuation or message collisions. All nodes are deployed in

a 500 m by 500 m field. To showcase DRAGON’s range andreliability faced with a whole range of different eventconfigurations and behaviors and to also demonstrate thatDRAGON is very flexible and performs well on differentdeployments, Table 1 lists five independent variables alongwith each of their respective value ranges. Each node’stransmission range is 20 meters.

6.4 Comparison Algorithm

We chose the optimized DCTC [33] as the competingalgorithm. This is because its overall operation is that of aspanning tree that reconfigures to cover the nodes whichsense the event. As such, it represents a real-world exampleof the most basic, minimal effort “boiler-plate” solutionpossible for the event tracking problem. In addition, manyof the existing high-level services such as EnviroSuite [19]and Regiment [21], [28] either cite DCTC directly or assumea spanning tree structure like it as part of their middlewarefor general query support. Therefore, DCTC holds some ofthe same aspirations for general extensibility as DRAGON.Overall, we pick DCTC for comparison because both itscore abilities and long term goals are most similar toDRAGON’s. We also extended DCTC to R-DCTC to workwith generic event shapes by subsuming the process ofpruning old nodes and adding new ones in tree reconfi-guration which assume no particular event shapes.

6.5 Experimental Results

Our first class of experiments deals with finding the rightcohesion threshold (TC) and separation threshold (TS) forDRAGON while varying each independent parameter.Since accuracy is preeminent among our concerns, we aimto find the best thresholds only with respect to event countdifference and event membership similarity. We havefound, for a sparse network, TC ¼ 0:8 and TS ¼ 0:9 resultin the best tracking accuracy when there are three eventseach moving at 20 m/s; for a medium distribution network,the optimal TC ¼ 1:3 and TS ¼ 1:2; and for a densedistribution network, the optimal TC ¼ 1:4 and TS ¼ 1:2.Several important trends are apparent in the results (whichare omitted due to space constraints but may be found in[8]). First, the metrics of event count difference and eventmembership similarity have a very strong and desirablecorrelation. At the optimal thresholds, the average eventcount difference is well below 1 for sparse and mediumdensity networks, regardless of node placement. Thissuggests that DRAGON reliably discovers the right number

8 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012

TABLE 1Primary Variable Parameters

Page 9: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

of events across an entire run. Second, event membershipsimilarity peaks. This shows that DRAGON can performvery well in a wide range of environments. Third, TS has anegligible impact on performance. Fourth, in these results,the curves change gradually and have a large plateau whereperformance is good. This means that the there are actuallywide intervals of where the thresholds give good results.The parameters are not hypersensitive. Also, the optimalthresholds do not change very much between deploymentsand they always hover in the same general area. Thisconfirms the analysis that DRAGON’s execution is invar-iant to node density.

Among all the four action triggers (i.e., periodic, nodeshift, cluster center of mass shift, and cluster total massshift) we implemented, we found that a node shift thresholdof 3 is the best. Even more encouraging is that the VigilNetsystem [6], [7], a real-world testbed uses a node shiftmechanism similar to ours with a threshold of 3 in order todecide if it has acquired a target. Given our results and theconfirmation found in real-world experiments, we will usea 3-node shift action trigger for our comparative testing.

Cluster size not only affects accuracy, but also energyconsumption and execution time. This is because fewer andlarger clusters have a smaller backbone tree. On the flipside,data gathering within large clusters is much more costly. Ouraim is to find the best possible tradeoff between interclusterand intracluster communication. By evaluating the impact ofcluster size on event count difference, membership similar-ity, total network energy consumption, and execution time,we found that 2-hop clusters are the best.

Our second suite of experiments focuses on comparativetesting between DRAGON and DCTC (for point events) orR-DCTC (for region events). We study the impact of eventsize, event speed, event count, event type, and deploymenttype. In the following results, 95 percent confidence intervalsare depicted and each data point is the average of 10 runs:

6.5.1 Impact of Event Size

We evaluate both protocols for different event sizes in asparse network with three mergable region events moving

at 20 m/s. Fig. 4a shows that DRAGON’s event countdifference is superb and R-DCTC is consistently wrong forvarious event sizes. Fig. 4b indicates that DRAGON’s eventmembership similarity hovers around 80 percent, but R-DCTC is never good. Moving on to Figs. 4c and 4d, we mustadmit that DRAGON’s costs are noticeably higher. Overall,DRAGON shows excellent accuracy, and though it hascomparatively high costs in terms of time and energy, itscales fairly well. More importantly, we observe thatDRAGON’s cost in both time and energy consumption aresomewhere between logarithmic and linear as event sizeincreases. The interesting fact here is that in Section 5, ourcomplexity analysis predicted an average case time com-plexity T that grew order nlogbðnÞ with respect to jCE j. Wealso predicted that the average case message complexity Mcould grow quadratically in the number of covered clusters.Our results here are well within those analytical bounds.

6.5.2 Impact of Event Count

To evaluate both protocols for larger numbers of events, weconsider mergable region events with width of 150 m eachmoving at 20 m/s in a sparse network. Figs. 5a and 5bdemonstrate that DRAGON shows consistently high accu-racy which does not degrade much as the number of eventsincreases. Meanwhile, R-DCTC has its worst accuracyratings so far and results get consistently worse as thenumber of events goes up. The most fascinating results,however, are seen in Figs. 5c and 5d. DRAGON has a veryclear linear growth order for both energy consumption andtime complexity as the number of events increases. Mean-while, the energy consumption or execution time of R-DCTChas a very slight linear growth, but it is almost flat. Thisdifference in asymptotic performance between the twoprotocols is not a problem though. Indeed it is expected.Because it handles splits and merges, DRAGON’s computa-tion and communication must explicitly consider thenumber of events in the network. The costs grow accord-ingly. The growth shown by DRAGON for the time andenergy metrics has very significant value beyond this,however. These results confirm our complexity analysis

HUBBELL AND HAN: DRAGON: DETECTION AND TRACKING OF DYNAMIC AMORPHOUS EVENTS IN WIRELESS SENSOR NETWORKS 9

Fig. 4. Comparative performance versus event size. Fig. 5. Comparative performance versus event count.

Page 10: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

done in Section 5 where we showed that both the averagecase time complexity T and the average case messagecomplexity M are both linear in the number of events jEj.That is exactly what we see in these tests. These results showthat our analysis is extremely accurate.

6.5.3 Impact of Event Speed

We evaluate both protocols for three events moving atvarious speeds in a sparse network with each event widthof 150 m. DRAGON has excellent accuracy with an eventcount difference less than 1 and a similarity of at least 80percent as witnessed by Figs. 6a and 6b. R-DCTC continuesto falter, especially at 40 m/s. Fig. 6c shows that DRAGONin general has a very slight linear increase in energyconsumption as event speed grows. However, it is veryminor and stays within a factor 3 or 4 of R-DCTC’s cost,which is a very good result considering the extra workDRAGON involves. In Fig. 6d, we see that R-DCTC isclearly better with respect to execution time. However,DRAGON still shows good scalability.

6.5.4 Impact of Event Type

To evaluate both protocols for all event types, be they pointor region events, whether they come in contact with eachother or not, we use a sparse network with three eventswith a width of 150 m each moving at 20 m/s. Figs. 7a and7b show again that DRAGON performs handsomely forpoint or region events irrespective of their mergability,while DCTC is very poor. Figs. 7c and 7d show thatDRAGON’s energy costs are consistently within a constantfactor of about 3 or 4 of DCTC’s costs while the timecomplexity of DRAGON, although not comparable toDCTC, is still easily acceptable.

6.5.5 Impact of Deployment Type

To evaluate both protocols on different networks, we usethree mergable region events with a width of 150 m eachmoving at 20 m/s. Fig. 8 reveals that DRAGON’s accuracyis superb while R-DCTC’s is poor. When looking at Fig. 8b,DRAGON’s event membership similarity is consistently

good, hovering around 80 percent. R-DCTC on the otherhand is unsuccessful at about 40 percent. Next, we turn toFigs. 8c. As expected, DRAGON will inevitably cost morethan an idealized, heavily optimized spanning tree-basedprotocol. That said, DRAGON consistently stays within aconstant factor of 4 to 5 times what R-DCTC costs, maybe 6for a couple of scenarios. In terms of scalability, the two arecomparable and the scale of the difference is not prohibi-tively costly. Last, we turn to Fig. 8d. This metric is wherethe comparison between the two protocols breaks down.Because DCTC has a separate tree and execution context foreach event, it is much faster than DRAGON. That beingsaid, even if DRAGON’s raw execution time were multi-plied by a significant factor to estimate the effect of packetloss, DRAGON’s time would still be easily low enough tofollow changes in events. Overall, DRAGON can tackle aharder problem than R-DCTC while being more flexibleabout its underlying network. Moreover, it can do all of thiswhile not incurring much more cost.

10 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012

Fig. 7. Comparative performance versus event type.

Fig. 8. Comparative performance versus network deployment.

Fig. 6. Comparative performance versus event speed.

Page 11: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

6.5.6 Performance Summary

In summation, we draw the following conclusions. First,DRAGON solves the generalized event tracking problemwell, but DCTC or R-DCTC does not. Second, DRAGON isstable and robust to a large variety of environments andproblem sizes, and R-DCTC is fragile. Third, DRAGONdoes cost more energy than R-DCTC due to the nature ofthe expanded problem. Last, DRAGON cannot easilycompete directly with R-DCTC in terms of time complexity.However, it would still be fast enough and scalable enoughto keep up with events. DCTC does not include logic of anykind for even checking for event splits and merges. Becauseof its simplified nature and minimal operation, DCTC andR-DCTC in practice represents a kind of idealized lowerbound for time and energy costs with minimal concern foraccuracy. DRAGON’s proximity to DCTC’s and R-DCTC’scosts should be viewed as its closeness to an “optimum” setof costs for the event tracking problem.

7 CONCLUSIONS

In this work, we have presented DRAGON, a generalpurpose event detection and tracking algorithm that is ableto operate in the presence of event splits and merges.DRAGON has been shown to be highly accurate across awide range of scenarios. It consistently finds the rightnumber of events and outlines the right event shapesregardless of deployment type, and regardless of event size,speed, or count. DRAGON’s energy efficiency scales wellwith problem size and complexity. The energy cost’s orderof growth is always shown to be linear or better withrespect to the number of events. DRAGON’s execution timeis projected to be well within the constraints necessary tokeep up with virtually any kind of event. Overall,DRAGON is promising for applications using wirelesssensor networks for phenomena monitoring.

ACKNOWLEDGMENTS

This project is supported in part by the US National ScienceFoundation (NSF) grant CNS-0915574.

REFERENCES

[1] J. Aslam, Z. Butler, F. Constantin, V. Crespi, G. Cybenko, and D.Rus, “Tracking a Moving Object with a Binary Sensor Network,”Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys),pp. 150-161, 2003.

[2] R.R. Brooks, P. Ramanathan, and A.M. Sayeed, “DistributedTarget Classification and Tracking in Sensor Networks,” Proc.IEEE, vol. 91, no. 8, pp. 1163-1171, Aug. 2003.

[3] C. Buragohain, S. Gandhi, J. Hershberger, and S. Suri, “ContourApproximation in Sensor Networks,” Proc. Int’l Conf. DistributedComputing in Sensor Systems (DCOSS), pp. 356-371, 2006.

[4] K.K. Chintalapudi and R. Govindan, “Localized Edge Detection inSensor Fields,” Proc. Int’l Workshop Sensor Network Protocols andApplications (SNPA), pp. 59-70, 2003.

[5] S. Gandhi, J. Hershberger, and S. Suri, “Approximate Isocon-trours and Spacial Summaries for Sensor Networks,” Proc. Int’lConf. Information Processing in Sensor Networks (IPSN), pp. 400-409, 2007.

[6] L. Gu, D. Jia, P. Vicaire, T. Yan, L. Luo, A. Tirumala, Q. Cao, T. He,J.A. Stankovic, T. Abdelzaher, and B.H. Krogh, “LightweightDetection and Classification for Wireless Sensor Networks inRealistic Environments,” Proc. Int’l Conf. Embedded NetworkedSensor Systems (SenSys), pp. 205-217, 2005.

[7] T. He, P.A. Vicaire, T. Yan, L. Luo, L. Gu, G. Zhou, R. Stoleru, Q.Cao, J.A. Stankovic, and T. Abdelzaher, “Achieving Real-TimeTarget Tracking Using Wireless Sensor Networks,” ACM Trans.Embedded Computing Systems, 2007.

[8] N. Hubbell, “Dragon: Detection and Tracking of AmorphousEvents with Dynamic Signatures in Wireless Sensor Networks,”master’s thesis, Colorado School of Mines, http://www.mines.edu/~qhan/research/techrep/nhubbell-thesis.pdf, 2009.

[9] H. La and W. Sheng, “Flocking Control of a Mobile SensorNetwork to Track and Observe a Moving Target,” Proc. IEEE Int’lConf. Robotics and Automation (ICRA), 2009.

[10] L. Lazos, R. Poovendran, and J.A. Ritcey, “Probabilistic Detectionof Mobile Targets in Heterogeneous Sensor Networks,” Proc. Int’lConf. Information Processing in Sensor Networks (IPSN), pp. 519-528,2007.

[11] P. Levis, N. Lee, M. Welsh, and D. Culler, “Tossim: Accurate andScalable Simulation of Entire Tinyos Applications,” Proc. Int’lConf. Embedded Networked Sensor Systems (SenSys), pp. 126-137,2003.

[12] M. Li and Y. Liu, “Underground Coal Mine Monitoring withWireless Sensor Networks,” ACM Trans. Sensor Networks, vol. 5,no. 2, 2009.

[13] M. Li, Y. Liu, and L. Chen, “Nonthreshold Based EventDetection for 3D Environment Monitoring in Sensor Networks,”IEEE Trans. Knowledge and Data Eng., vol. 20, no. 12, pp. 1699-1711, Dec. 2008.

[14] M. Li, Y. Liu, and L. Chen, “Iso-Map: Energy-Efficient ContourMapping in Wireless Sensor Networks,” IEEE Trans. Knowledgeand Data Eng., vol. 22, no. 5, pp. 699-710, May 2010.

[15] C. Liu, K. Wu, and T. He, “Sensor Localization with RingOverlapping Based on Comparison of Received Signal StrengthIndicator,” Proc. IEEE Int’l Conf. Mobile Ad Hoc and Sensor System(MASS), 2004.

[16] J. Liu, P. Cheung, F. Zhao, and L. Guibas, “A Dual-SpaceApproach to Tracking and Sensor Management in Wireless SensorNetworks,” Proc. Int’l Workshop Wireless Sensor Networks andApplications (WSNA), pp. 131-139, 2002.

[17] J. Liu, P. Cheung, F. Zhao, and L. Guibas, “Apply GeometricDuality to Energy Efficient Non-Local Phenomenon AwarenessUsing Sensor Networks,” IEEE Wireless Comm. Magazine, vol. 11,no. 6, pp. 62-68, Dec. 2004.

[18] J. Liu, J. Liu, J. Reich, P. Cheung, and F. Zhao, “Distributed GroupManagement for Track Initiation and Maintenance in TargetLocalization Applications,” Proc. Int’l Conf. Information Processingin Sensor Networks (IPSN), pp. 113-128, 2003.

[19] L. Luo, T.F. Abdelzaher, T. He, and J.A. Stankovic, “EnviroSuite:An Environmentally Immersive Programming Framework forSensor Networks,” ACM Trans. Embedded Computing Systems,vol. 5, no. 3, pp. 543-576, 2006.

[20] M. Nam, C. Lee, K. Kim, and M. Caccamo, “Time ParameterizedSensing Task Model for Real-Time Tracking,” Proc. IEEE Int’l Real-Time System Symp. (RTSS), pp. 245-255, 2005.

[21] R. Newton, G. Morrisett, and M. Welsh, “The Regiment Macro-programming System,” Proc. Int’l Conf. Information Processing inSensor Networks (IPSN), 2007.

[22] N. Shrivastava, R. Mudumbai, U. Madhow, and S. Suri, “TargetTracking with Binary Proximity Sensors: Fundamental Limits,Minimal Descriptions, and Algorithms,” Proc. Int’l Conf. EmbeddedNetworked Sensor Systems (SenSys), pp. 251-264, 2006.

[23] M. Singh and V. Prasanna, “Energy-Efficient and Fault-TolerantResolution of Topographic Queries in Networked Sensor Sys-tems,” Proc. 12th Int’l Conf. Parallel and Distributed Systems(ICPADS), pp. 271-280, 2006.

[24] Crossbow Solutions, http://www.xbow.com, Jan. 2008.[25] S. Subramaniam, V. Kalogeraki, and T. Palpanas, “Distributed

Real-Time Detection and Tracking of Homogeneous Regions inSensor Networks,” Proc. IEEE Int’l Real-Time System Symp. (RTSS),pp. 401-411, 2006.

[26] P. Tan, M. Steinbach, and V. Kumar, Introduction to Data Mining,Chapter 2. Addison Wesley, 2006.

[27] R. Virrankoski, D. Lymberopoulos, and A. Savvides, “Tasc:Topology Adaptive Spatial Clustering for Sensor Networks,”Proc. IEEE INFOCOM, 2005.

[28] M. Welsh and G. Mainland, “Programming Sensor NetworksUsing Abstract Regions,” Proc. Conf. Symp. Networked SystemsDesign and Implementation (NSDI), pp. 29-42, 2004.

HUBBELL AND HAN: DRAGON: DETECTION AND TRACKING OF DYNAMIC AMORPHOUS EVENTS IN WIRELESS SENSOR NETWORKS 11

Page 12: IEEE TRANSACTIONS ON PARALLEL AND …pecs.mines.edu/docs/tpds12-hubbell.pdfEach cluster has exactly one node or “clusterhead” that serves as the local data sink for its respective

[29] W. Xue, Q. Luo, L. Chen, and Y. Liu, “Contour Map Matching forEvent Detection in Sensor Networks,” Proc. ACM SIGMOD Int’lConf. Management of Data (SIGMOD), pp. 145-156, 2006.

[30] H. Yang and B. Sikdar, “A Protocol for Tracking Mobile TargetsUsing Sensor Networks,” Proc. IEEE Int’l Workshop Sensor NetworkProtocols and Applications (SNPA), pp. 71-81, 2003.

[31] Y. Yang and S. Fujita, “A Scheme for Efficient Tracking ofDynamic Event Region in Wireless Sensor Networks,” Proc.Ann. Int’l Mobile Ubiquitous Systems: Networking and Services(Mobiquitous), 2009.

[32] W. Zhang and G. Cao, “DCTC: Dynamic Convoy Tree-BasedCollaboration for Mobile Target Tracking,” IEEE Trans. WirelessComm., vol. 3, no. 5, pp. 1689-1701, Sept. 2004.

[33] W. Zhang and G. Cao, “Optimizing Tree Reconfiguration forMobile Target Tracking in Sensor Networks,” Proc. IEEEINFOCOM, pp. 2434-2445, 2004.

Nicholas Hubbell received the BS degree inmathematics from the University of Colorado atColorado Springs and the MS degree in com-puter science from Colorado School of Mines in2010. He is currently a software engineer atLockheed Martin Space Systems Company. Hisresearch interests include simulation and highperformance computing.

Qi Han received the PhD degree in computerscience from the University of California, Irvinein 2005. She is currently an associate professorin the Department of Electrical Engineering andComputer Science at the Colorado School ofMines. Her research interests include wirelesssensor networks, mobile and pervasive comput-ing, and network-centric data management. Sheis a member of the IEEE and the ACM.

. For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

12 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 23, NO. X, XXX 2012