A Survey and Comparison of Target Tracking and Detection Algorithms for Sensor
Networks
Kelly R. Meredith
University of Binghamton
krmeredi1@binghamton.edu
within an area and the nodes determine whether
Abstract or not a target has entered or is presently within
Detecting and tracking a target as it moves the area. Nodes usually determine if a target is
through a sensor network has become an present by detecting a change in some sort of
increasingly important application for sensor signal, whether it is acoustic, light, temperature
networks. This paper examines some of the or some other type [2]. Since the strength of this
target detection and tracking algorithms in use signal will dissipate throughout the sensor
today. An overview of each algorithm is network the nodes need to collaboratively work
presented along with an analysis of how the together in order to determine if a target has been
detection and tracking algorithms compare to detected or not. Several of these collaborative
one another and how they may be combined to detection algorithms are discussed.
produce a more efficient algorithm.
2.1 Basic Fusion
1.0 Introduction This algorithm is presented first since it has an
As the development of sensor networks has extremely simple design and implementation and
become more advanced, the realm of application serves as an ideal algorithm to use as the
possibilities for their use has increased. One foundation for explaining other more complex
such emerging application area is using sensor detection algorithms.
networks to perform intelligence surveillance or
monitoring of an area [1]. This algorithm collects the captured data from
each of the nodes in a network. Then, to remove
Since sensor nodes are all ready being deployed any invalid data provided by faulty nodes, the
to monitor and capture data in certain areas, it is largest and smallest data values are dropped.
only natural that they are used to detect, track, The remaining data is then averaged together. If
and classify objects. this average exceeds a predetermined threshold
then the system is notified that a target has been
The purpose of this paper is to introduce, detected.
summarize and compare some of the target
detection and tracking algorithms currently used This algorithm has two versions in which the
in sensor networks. Although classification data provided by each node differs. The data is
algorithms are equally interesting, they are not either the original data collected by the node or it
covered in this paper and the reader is referred to is a detection decision already made by the
reference [3] for classification algorithms. individual nodes using their original data [2].
While researching this topic, it became apparent 2.1.1 Hybrid
that there are too many types of detection and This algorithm is similar to the basic fusion
tracking algorithms to mention and analyze algorithm in that a detection decision is based on
within the scope of one paper. To keep this data collected by numerous nodes throughout the
paper manageable, this paper is limited to network. However, this algorithm differs in that
discussing those algorithms that are most either a yes/no target present bit decision is sent
commonly used at this point in time. or the collected data is sent.
In this algorithm each node is given two
2.0 Target Detection Background threshold values for a previously determined
The basic idea behind a target detection detection signal type, such as sound. One of
algorithm is that sensor nodes are deployed these threshold values determines that if the data
collected by the node exceeds this value then a In order to do this, all nodes first determine the
target has been detected. Correspondingly, the schedules for each grid point, then schedule all
other threshold is a minimum in that if the data is their individual point schedules together so that
below it then no target is present. If either of each node is not constantly waking and sleeping
these two thresholds is met then a bit message but instead sleeps a little and then wakes for a
indicating the presence or lack of a target is while.
transmitted. However, if neither of these
thresholds are exceeded then the raw data Once each node determines its own individual
collected by the node is passed on to the base schedule it must be correlated with those of its
station where it is used with the data of other neighbors so that as few as possible nodes are
nodes to determine if a target is present [4]. awake at any point in time but all grid points are
covered at all times.
2.2 Predicate Clustering
In this algorithm nodes are divided into groups Once the schedules are completed for each node,
called clusters in which each group has a cluster the nodes start to follow their schedule, going
head that all sub nodes of the cluster report their through states of being asleep and awake in order
data to. Typically, one cluster is formed around to detect a new target. When a target is detected
a single target with multiple clusters being in the the node’s information is passed on [16].
network if multiple targets are present.
2.4 Wave
Cluster heads are chosen by all nodes within the The Wave protocol has the same goal in mind as
area of a detected target “electing” to become the that of the Grid algorithm, detecting targets
head by broadcasting their intent to become a while conserving energy by not having all the
cluster head. The node with the peak sensor nodes on all the time.
reading is chosen as the cluster head [8]. Once
cluster heads are chosen, the remaining nodes The basic idea of the wave algorithm is to wake
choose which group to join by running a decision up a series of nodes at certain times so that only
predicate on their captured sensor data and the nodes that are awake at one point in time are in
data of their neighbors [8]. If this predicate one concentrated area. Then, over time, this
exceeds a preset value, than it needs to contribute section moves over the network by putting nodes
its collected data to the specified cluster and to sleep and waking new ones. This gives the
therefore joins the cluster. appearance of an awake section of nodes flowing
over the entire network like a wave [17].
One particularly interesting feature of this
algorithm is that a cluster head can be This algorithm proposes three types of waves:
responsible for multiple targets [8]. When it is
Two straight lines of nodes are awake at
detected that multiple targets are going to enter
the same time, with the lines being
the same cluster, both clusters provide the target
parallel to each other. The two lines
information to the “merged” cluster head that is
start on opposite sides of the network
now responsible for tracking both targets [8]. from each other and gradually work
towards each other to meet in the center
2.3 Grids of the network.
In this approach the sensor network is broken up A wide line of nodes are awake at the
into “virtual grids” where each grid contains same time and this line moves across
points. For each grid point, it is determined the network from one edge to the
which nodes’ sensing area covers the grid point opposite edge.
and then these nodes create a schedule so that
they all collaboratively cover this grid point at
A wave of nodes are awake and the
wave traverses from one edge of the
alternating times. So at any point in time t at
network to the other. This approach
least one node’s sensing area covers grid point x.
differs from the wide line in that the
boundary shape is curvy or wave like
Since each node covers multiple grid points each
instead of being a straight line
node will contain several sensing schedules to
boundary. The wave is created by an
keep in sync with so that at any one point in time
awake sensor waking all nodes within
all grid points are covered by at least one node.
its communication range on the side of
it that the wave needs to transition to. 2.5 Mobile Nodes
This approach also differs from the Up until this point all the target detection
previous two in that it uses radio algorithms discussed so far have assumed that
communication to wake up the next the sensor nodes remain stationary. This section
nodes to start sensing instead of time looks at a few target detection algorithms in
syncing the movement of wake/sleep which the nodes are mobile within the network.
nodes across the network.
Even though these algorithms allow nodes to be
Like the other algorithms, when a target is mobile, their goal remains the same as the
detected the node(s) pass the information on for previously mentioned target detection
use [17]. algorithms. These algorithms are still trying to
detect targets in a timely and efficient manner
2.4.1 Patrolling while trying to cover as much of the network as
Patrolling algorithms are similar to the wave possible using as little energy as possible.
algorithms in that only a series of nodes are
awake at one point in time. This algorithm just The theory behind allowing nodes to be mobile
chooses which nodes to wake differently. This is that they may now detect a target that would
can be done on an on-demand basis or a have otherwise gone undetected in a stationary
coverage-orientated basis. The difference node network [19].
between the two is that on-demand is some
predetermined path that is currently interesting 2.5.1 Past Detections
whereas coverage-orientated just repeatedly Like other algorithms, the network in this
watches an area [18]. algorithm is divided into cell areas. Each cell is
unique in that it maintains the current state and
The algorithm for both approaches is the same. past history of targets that are/have been in the
First a patrol is defined as a set of information cell. This includes the location in which the
containing the patrol speed, duration, iteration target was first detected within in the cell. Using
period and path (which is usually a Bezier this data the system calculates the areas of the
curve). Once this information is collected, a cell that are most likely to contain a target based
Patrol Host node is selected, which is usually the on the locations of previously detected targets
first node on the patrol path. The duties of the [20].
Patrol Host are to periodically transmit the patrol
data along with the current patrol time. The idea Once these locations are determined, each node
is that over time the patrol virtually traverses is assigned an area to watch and a priority.
down the specified path. As the patrol advances, These priorities are used in the “coordination
nodes that are closest to the patrol path wake up mechanism” part of the algorithm. The
and collect information. Nodes determine if they coordination part of the algorithm is responsible
are near the patrol path by using the patrol for altering the paths nodes are observing so that
information that the Patrol Hosts broadcast. their observation paths overlap as little as
Additionally, as the patrol moves new Patrol possible. For example, the node that watches the
Hosts must be elected. As the patrol virtually area where targets are the most likely to occur is
moves out of the current patrol host’s range a given the highest priority of the system and its
new patrol host is selected on the path which path is not altered. A second node, who’s
then takes over the patrol host duties and the priority is slightly less than the first node, who’s
previous patrol host can now sleep. This process path also slightly intersects that of the first node
of waking nodes and handing off patrol host has its path altered so that the two paths will not
duties continues until the end of the path is cross. This path altering continues throughout
reached. Once the path end is reached the patrol the system from highest priority down to lowest
is reversed in order to traverse the path back to priority until all node paths are altered to prevent
the original starting point. This process too much overlapping of observation areas [20].
continues according to the duration and iteration
parameters set in the original patrol parameters
[18]. 2.5.2 Collaborative Coverage
This algorithm is a little different in that the
paths the nodes traverse are not coordinated in
any way. Each node is allowed to create and
follow its own arbitrary path. While the node is a simple algorithm that uses simple computation
traveling on this path at different locations and in order to calculate an object’s current location
times it collects data which it then saves. and predict where it is headed and notify those
Usually the sensed data, time and location the nodes near the predicted next location of the
data was sensed at are saved [21]. object [1].
While the nodes move across their paths they This algorithm first assumes that all nodes in the
share their collected data with those nodes they network are localized to a common reference
come into radio communication with. Data is point and can detect and estimate the distance to
usually shared on a request basis. Each node is a target using signal strength [1]. When a node
provided a coverage threshold and confidence detects an object within its range it broadcasts a
threshold. If at any point in time either of these TargetDetected message [1]. This message
thresholds are not met the node requests the contains the location of the sensor node and the
corresponding data from nodes it comes into distance to the target [1]. All nodes that hear this
contact with [21]. message store its data in their local memory.
When a node that has detected the target hears
Actual target detection in this system is two other TargetDetected messages from two
determined by examining the data taken at other nodes it performs triangulation on the three
several points that are close to each other. If the coordinates to calculate the location of the target
combined data collected by this group of close [1]. (Note that this means that more than one
points exceeds some predetermined threshold node may perform this calculation for the same
then it is determined that a target was detected at target at the same time.) This node then
this area. Note that the value of this detection continues on to project the trajectory of the
threshold will determine how target. When the estimated target trajectory has
sensitive/insensitive the system is at detecting been calculated, all nodes that are within some
targets [21]. distance d perpendicular to the target’s trajectory
are sent a Warning message to alert them that the
target is headed towards them [1]. These newly
3.0 Target Tracking Background awoken nodes then track the object as it enters
Target tracking algorithms usually focus on the their area and repeat the TargetDetected and
aspect of the sensor nodes’ interaction with a Warning message sending process [1].
target after the target has all ready been detected
within the area the sensor nodes cover. Once the 3.2 Clusters
object has been detected, the nodes collect The cluster target tracking algorithm was widely
information and then use one of many different discussed through many research papers. The
types of algorithms to calculate the current basic idea of target tracking using clusters is
location of the object relative to the sensor discussed, followed by an overview of the
nodes’ locations. From here it is the goal of the variances in each of the different cluster
sensor network to track the object as it moves algorithm research papers.
through the network. This may or may not
involve predicting the next location the object 3.2.1 Basic Cluster Algorithm
will move to in order to forewarn those nodes it The basic algorithm for tracking an object using
will be heading towards to prepare to capture clusters is as follows:
data [1]. Several of these tracking algorithms are
discussed. Some (or all) of the nodes in a cluster
detect the object and report their data to
3.1 Simple Triangulation a cluster head. Note that a cluster only
This algorithm is presented in that it has an has one cluster head node [5].
extremely simple design and implementation and The cluster head node then uses all the
serves as an ideal algorithm to use as the target detection information from the
foundation for explaining other more complex sensor nodes to estimate the target’s
tracking algorithms. location [5].
The cluster head uses the calculated
As stated above, the whole goal of this algorithm target location and past locations of the
as presented by Samir R. Das in [1] is to provide
target to predict the next location of the cells can have different sizes; the size of cells is
target [5]. determined by the observed velocity of the target
Those sensors around the predicted [9]. So cell size will increase for faster moving
location are woken up to form a new targets.
cluster (if not already in one) to detect
the target [5]. 3.2.5 Probabilistic Localization
When the target is detected in this new This algorithm deviates even further from the
cluster, the previous cluster’s nodes are previously discussed algorithms. Cluster heads
all put into a sleep state. This new are special high powered nodes that know the
cluster then continues the cluster location of every node within their cluster [10].
tracking algorithm [5]. This algorithm takes advantage of the fact that
the cluster head knows these locations. When
sensor nodes detect a target, they send a very
3.2.2 Hierarchical Supernodes small notification message to their cluster head
This algorithm deviates from the basic algorithm and store the target location data, time and other
in that the cluster heads (called supernodes) have relevant data in their local memory [10]. Upon
a higher communication range and more receiving several notifications, the cluster head
computational power [6]. These “supernodes” performs a probabilistic localization algorithm to
are distributed throughout the network and the determine which sensor nodes to query saved
otherwise normal nodes are assigned to data from [10]. In other words, the cluster head
supernodes. Clusters are not dynamically runs an algorithm that helps it predict which
generated in this algorithm. Interestingly sensor nodes are closest to the target and will
enough, supernodes do share target location therefore have the best data to use in order for
information among each other, whereas regular the cluster head to calculate an accurate
sensor nodes do not. estimation of the target location. When the
cluster head determines which nodes to query,
3.2.3 Dynamic Clustering they are asked for the data they saved in their
Like the supernode algorithm implementation local memory and the cluster head uses this to
this algorithm also assumes that cluster head calculate the location of the target [10].
nodes have more power than normal sensor
nodes. However, sensor nodes are not assigned 3.2.6 Distributed Predictive Tracking
to clusters in this algorithm. Instead, they are This algorithm is very similar to the predicate
invited to join a cluster by the cluster head. The localization algorithm in that cluster head nodes
cluster head does this by broadcasting a join know the ID, location and energy level of each
message that includes the time and signature of of the nodes within their cluster [11]. However,
the target the cluster head detected [7]. Those not all nodes belong to a cluster. Nodes on the
sensor nodes that have stored data that matches border of the network are not in a cluster and are
the data in the broadcast message respond to the on and sensing at all times. Similarly, nodes
broadcast by sending their captured data to the next to the border are not in a cluster either [11].
cluster head node. Interestingly, the cluster head Also, cluster heads only choose 3 nodes from
only waits for a certain number of replies and which to obtain target tracking data from, but a
when that number of replies has been received different method is used instead of the predicate
the cluster head calculates the target’s location. algorithm. Cluster heads determine which 3
Also, unlike the supernode algorithm, this nodes to query based on their location in relation
algorithm only has one active cluster head at a to the predicted target location calculated by a
time. In other words, cluster heads do not work previous cluster [11]. When the cluster head has
together [7]. chosen which nodes to query, those nodes are
woken up in order for them to prepare to detect
3.2.4 Cell Collaboration the approaching target. This algorithm differs
Like predicate clustering all nodes in this even further in that if a cluster head can not find
algorithm are of the same type. Nodes are 3 suitable nodes within its own cluster, it can
formed into clusters (called cells) in which all seek the help of neighboring clusters and ask for
nodes within the cells collaboratively decide one or more of their nodes to be turned on and
when a target has entered their cell and if they report information [11].
should track it [9]. It is interesting to note that
3.5 Decentralized Hypothesis
This algorithm operates under the assumption
3.3 Rooted Tree that there is no central processing node. There is
Related to the clusters tracking algorithm is the merely some object that we need to send a final
idea of the rooted tree tracking algorithm. This target detection report to [15]. When an event
algorithm differs somewhat in that instead of occurs in the network, a “hypothesis” is created
having multiple cluster heads, there is only one in which the node theorizes that the event was
head node and it is referred to as the root. The caused by a moving object. This hypothesis is
root node is the node that is closest to the target then broadcast to the surrounding nodes and they
[12]. When a new target location is predicted, if each store it. If an event occurs at these nodes
there is another node that is closer to that that is related to a stored hypothesis, then the
position than the current root then that new node hypothesis is updated and rebroadcast. This
becomes the root. Other nodes around the root process continues until the hypothesis satisfies
work together to form a tree in which their some pre-set detection criteria. When this
sensed data is collected and passed up through happens the hypothesis is reported as a target
the tree (children to parents) until all data detection report [15]. Note that hypotheses older
reaches the root [12]. When the root receives all than some set time t are discarded as are
the data it calculates the target position and duplicate hypothesis [15].
predicts the new target position as mentioned in
the basic target tracking algorithm. The tree
itself is reconfigured on every root change. 4.0 Analysis
When a root change occurs a “reconfigure” Overall, tracking and detection algorithms tend
message is broadcast containing the location of to have some major differences. One of these is
the new root. When a node detects the that the nodes in a target detection algorithm are
“reconfigure” message it detaches itself from the generally awake all the time whereas those in a
old tree and attaches itself to the new tree by target tracking scenario have opportunities to
recognizing its neighbor node that is closest to sleep. Additionally, nodes operating in a
the new root node as its new parent [12]. New tracking scenario are sending out a significantly
data is then collected and passed up the tree for larger amount of messages than those in a
the new root to use. detection scenario [22]. However, when the
theories and techniques of each of the realms of
3.4 Particle Filtering detection and tracking are used together each of
The basic idea behind a particle filtering tracking the algorithm types can reap benefits.
algorithm is that numerous object state
descriptions are saved that contain data This section analyzes each target tracking
necessary to calculate a target’s position at a algorithm mentioned with a focus on how it
certain time. These state descriptions are could be improved by combining it with one or
referred to as particles and each particle has its more of the ideas presented in the target
own weight. The weight of a particle determines detection algorithms.
how much the data it contains will contribute to
the location estimation of an object. When new 4.1 Simple Triangulation
particles are created the weights of the pre- The main problem with this algorithm lies in the
existing particles are adjusted and then all of the fact that when a node has detected a target and
particles are used to calculate a new target hears two other nodes broadcast the same target
location [13]. Eventually, particles with weights detection the nodes starts to perform the
that are below a certain threshold are eliminated triangulation localization calculation. This
as are duplicate particles. means that at the same point in time there will be
multiple nodes calculating the same target
Some of the particles filtering algorithms differ a location. This is a waste of computation and
little. Certain algorithms have all the particles energy resources. This algorithm needs to be
stored in a central node and this node does all the improved so that when a node starts to calculate
target location processing [14]. Other algorithms the location of the target it first broadcasts its
distribute the stored particles across the network intention to calculate the location to all the other
nodes [13]. nodes, similar to the data sharing that is done in
the collaborative coverage mobile detection
algorithm. Then all the other nodes that would algorithm other than a mobile node based one
have performed this same calculation will not since constantly refreshing the nodes’ location
perform it once they hear the broadcasted isn’t an optimal solution.
intention of the first node.
4.2.3 Cell Collaboration
4.2 Basic Cluster This clustering algorithm is already perfectly
The majority of the cluster algorithms had all the setup to use the grid detection algorithm for
nodes on during their target detection phase. It detection of targets. Since the nodes in this
would be better if they instead adopted a algorithm are already divided into cells, the basic
technique similar to that used in the wave structure to use the grid algorithm is already in
detection algorithm to detect targets. Since each place. All that needs to be done is to add the
area of the network is already divided up into grid algorithm for the detection part. Once this
clusters, each node within the cluster could take is done this algorithm would be more efficient
turns monitoring the area for the arrival of a since the nodes would be alternating sleep
target using one of the wave detection methods schedules with each other in order to detect the
mentioned. This would increase the lifetime of target instead of all being awake at the same
the network. time.
However, I wouldn’t recommend using one of 4.2.4 Probabilistic Localization
the mobile detection algorithms since the nodes This algorithm already sounds like it has
have to register with the cluster head. incorporated parts of the hybrid detection
Depending on the mobile detection algorithm algorithm in it. When a target is detected this
used the nodes would constantly be moving in algorithm sends a small message to the cluster
and out of clusters. This would cause an head. Similarly, when a target is detected in the
increase in the amount of message hybrid algorithm a small yes/no bit message is
communications with these nodes in order for sent to the decision maker in the network, or
the cluster heads to keep track of which nodes cluster head. Then the cluster head uses this data
were within their cluster. Only if the mobility of to determine which nodes to query for further
the nodes was limited so that they always stayed data. In determining which nodes to query, it
within the same cluster would the use of a would be a good idea to use an averaging
mobile detection algorithm of this type be technique similar to that used in the basic fusion
possible. detection algorithm in order to eliminate the
affects of any data provided by a faulty node.
Additionally, the cluster algorithms could benefit The similarities to the hybrid algorithm continue.
from the basic fusion detection algorithm. Once When the cluster head determines which nodes
a target has been detected and all the information to query, the nodes respond back to the cluster
is passed to the cluster head the cluster head head with more detailed information. This is
could use the technique used in the basic fusion similar to the hybrid algorithm when nodes send
algorithm in order to eliminate any data provided all their collected data when they are unable to
by faulty nodes. This would help make the make a target detected decision themselves.
network less vulnerable to faulty nodes.
However, this algorithm should not be combined
4.2.2 Dynamic Clustering with a mobile node detection algorithm because
The biggest problem with this algorithm is that it of the way it decides which nodes to query. In
will not work with mobile nodes. This network this algorithm, the cluster heads create
only calculates the sensor node’s locations at probability tables in order to determine which
startup. Since these locations needs to be known sensors to query [10]. The use of a table is
by the cluster head and are calculated only once, acceptable until nodes move outside of or are
this prevents any nodes from moving or even added to the system. When this happens, the
being added to the network. probability table must be updated [10].
Therefore, the use of a mobile detection scheme
This problem could be easily fixed by would cause a lot of additional computational
periodically refreshing the locations of the sensor overhead since these tables would have to be
nodes, although this will decrease the network’s constantly refreshed.
lifetime. So it would be best to use a detection
4.2.5 Distributed Predictive Tracking hybrid detection algorithm. The hybrid
This algorithm is unique in that it is already algorithm stops recording data once the data it
doing its own target detecting. Instead of having currently contains exceeds a threshold so that it
all the nodes contained within clusters, this knows a target is present or not. The particle
algorithm leaves the nodes that border the edges filtering algorithm could use this same principle.
of the network out of the clusters in order to Once enough particle data is collected to exceed
detect targets. Although this technique is good it some threshold the node would stop collecting
can still be improved. Instead of having the data. This would not only decrease the amount
border nodes being on at all times to detect of memory used on the node but would also
nodes it would be beneficial to have these nodes decrease the amount of work it would have to do
adopt a wave or patrol like technique. This way and save energy.
they would still detect targets but would be
consuming a considerably smaller amount of 4.5 Decentralized Hypothesis
energy. This algorithm sounds very similar to the mobile
collaboration algorithm. In the hypothesis
4.3 Rooted Tree algorithm nodes share information among each
One of the basic problems with the rooted tree other in order to determine if a target is present.
technique is that is doesn’t consider any fault The nodes in the mobile collaborative algorithm
tolerance within its algorithm. In order to make also do this for the same reason. Therefore it
this algorithm less vulnerable to problems caused sounds like this algorithm would be ideal to be
by faulty nodes it should use an averaging used with a mobile network by just altering the
technique similar to that used in the basic fusion algorithm a little bit so that it worked more like
detection algorithm. the mobile collaborative detection algorithm.
Additionally, this algorithm encounters problems 5.0 Summary
when the velocity of the target is very high. As Overall it sounds like the best target detection
the velocity of the target increases so does the and tracking algorithms to use would be a
number of times in which the tree must be combination of the wave detection and cluster
reconfigured [12]. This will cause problems tracking algorithms.
when a threshold velocity of the target is reached
in which the tree can no longer be generated The fact that the wave algorithm covers the
quickly enough in order to keep up with the network area in a short amount of time and
moving target. This problem could be enables nodes to sleep at times saves a huge
eliminated by altering this algorithm to work amount of energy. This enables a target to be
more like the patrolling algorithm. Instead of detected, without too much delay, in an energy
constantly rebuilding the tree, treat the tree as a efficient manner.
path that can have steps (or nodes) along the path
added or deleted from it. This way when the The cluster tracking algorithm is also on the right
target moves, just add a new node to the path and track since it only has certain areas of nodes
remove any ones that are too far away to awake at a given point, which also conserves
contribute any longer. This way the basic nodes energy. Additionally, the use of several central
needed in order to collect data are still members localization calculating points instead of one
of the path and new ones are added. It saves an helps reduce the vulnerability of the system to an
enormous amount of time and message attacker. It eliminates the “one point of failure”
communication that would have otherwise been problem. It also shares the burden of energy
needed in order to periodically rebuild the tree usage that one node would face across several
structure each time. nodes.
4.4 Particle Filtering When using a clustering approach, I would
In order to track targets this algorithm saves an definitely use one that uses nodes of the same
enormous amount of data in the form of type. This would allow all the nodes to be
particles. Over time, these particles take up a cluster heads and share the energy burden, plus
large amount of memory space. The amount of allow the possibility of a randomly distributed
memory actually used could be decreased if this network since specialty cluster head nodes would
algorithm were to adopt the idea behind the not have to be specifically placed.
and Tracking of Targets in Distributed
When it comes to determining how much sensor Sensor Networks. IEEE Signal Processing
node data to use in the target location Magazine, March 2002.
calculation, the technique of the cluster head [6] Songhwai Oh and Shankar Sastry. A
querying the sensor nodes for the information Hierarchical Multiple-Target Tracking
seems ideal. The approached used in the Algorithm for Sensor Networks.
probabilistic localization algorithm in which http://www.eecs.berkeley.edu/~sho/papers/i
nodes that have detected a target send a small cra05_hmttsn.pdf
notification message to the cluster head is best. [7] Wei-Peng Chen, Jennifer C. Hou and Lui
This tells the cluster head they can ask the node Sha. Dynamic Clustering for Acoustic
for further information without using too much Target Tracking in Wireless Sensor
communication bandwidth. I would however Networks. 11th IEEE International
expand on the algorithm the cluster head uses in Conference on Network Protocols (ICNP
order to determine which sensor nodes to query. ]03), November 2003.
It seems as though the decided upon three nodes [8] Qing Fang, Feng Zhao and Leonidas Guibas.
in the distributed predictive tracking algorithm is Lightweight Sensing and Communication
too few, yet we don’t want to query every node Protocols for Target Enumeration and
in the cluster either. Experiments in this area of Aggregation. MobiHoc ’03, June 2003.
cluster algorithms should be done in order to [9] Richard R. Brooks, Parameswaran
determine how many sensors should be queried Ramanathan and Akbar M. Sayeed.
in order to calculate an acceptable level of target Distributed Target Classification and
location accuracy. Tracking in Sensor Networks. http://www-
net.cs.umass.edu/cs791_sensornets/papers/b
6.0 Conclusion rooks.pdf
This paper has examined some of the target [10] Yi Zou and Krishnendu Chakrabarty. Target
detection and tracking algorithms in use today. Localization Based on Energy
An overview of each algorithm type was Considerations in Distributed Sensor
presented. The combination and interactions of Networks. 1st IEEE Workshop Sensor
target detection algorithms with target tracking Network Protocols and Applications (SNPA
algorithms was also discussed as a result of the ’03), May 2003.
survey of these algorithms. [11] H. Yang and B. Sikdar. A Protocol for
Tracking Mobile Targets using Sensor
7.0 References Networks.
[1] Rahul Gupta. Tracking Moving Targets in a http://networks.ecse.rpi.edu/~bsikdar/papers
Smart Sensor Network. /hua_icc03.pdf
http://www.cs.sunysb.edu/~samir/Pubs/VTC [12] Wensheng Zhang and Guohong Cao.
03-long.pdf Optimizing Tree Reconfiguration for Mobile
[2] Thomas Clouqueur, Kewel K Saluja and Target Tracking in Sensor Networks.
Parameswaran Ramanathan. Fault Tolerance INFOCOM ’04, March 2004.
in Collaborative Sensor Networks for Target [13] Garrick Ing. Distributed Particle Filters for
Detection. Object Tracking in Sensor Networks.
http://citeseer.ist.psu.edu/clouqueur03fault.h [14] Javed Aslam, Zack Butler, Florin Constantin
tml et al. Tracking a Moving Object with a
[3] C. Meesookho, S. Narayanan, C. S. Binary Sensor Network. The First ACM
Raghavendra. Collaborative Classification Conference on Embedded Networked Sensor
Applications in Sensor Networks. Sensor Systems (Sensys03), November 2003.
Array and Multichannel Signal Processing [15] Donal McErlean, Shrikanth Narayanan.
Workshop, August, 2002. Distributed Detection and Tracking in
[4] Lige Yu, Lin Yuan, Gang Qu and Anthony Sensor Networks. 36th Asilomar Conference
Ephremides. Energy-Driven Detection on Signals, Systems and Computers,
Scheme with Guaranteed Accuracy. November 2002.
Information Processing in Sensor Networks, [16] Ting Yan, Tian He and John A. Stankovic.
April 2006. Differentiated Surveillance for Sensor
[5] Dan Li, Kerry D. Wong, Yu H. Hu and Networks.
Akbar M. Sayeed. Detection, Classification http://www.cs.virginia.edu/papers/diff_surve
illance_sn_p51-yan.pdf
[17] Shansi Ren, Qun Li, Haining Wang and
Xiaodong Zhang. Design and Analysis of
Wave Sensing Scheduling Protocols for
Object-Tracking Applications.
http://www.cs.wm.edu/~liqun/paper/dcoss05
.pdf
[18] Chao Gui and Prasant Mohapatra. Virtual
Patrol: A New Power Conservation Design
for Surveillance Using Sensor Networks.
Information Processing in Sensor Networks,
15 April 2005.
[19] Benyan Liu, Peter Brass, Olivier Dousse,
Philippe Nain and Don Towsley. Mobility
Improves Coverage of Sensor Networks.
International Symposium on Mobile Ad Hoc
Networking & Computing, 2005
[20] K. Madhava Krishna. A T-Step Ahead
Optimal Target Detection Algorithm for a
Multi Sensor Surveillance System.
http://arxiv.org/ftp/cs/papers/0505/0505045.
pdf
[21] Kuang-Ching Wang and Parmesh
Ramanathan. Collaborative Sensing Using
Sensor of Uncoordinated Mobility.
http://www.ece.wisc.edu/~wander/papers/dc
oss05_wang.pdf
[22] Erhan Baki Ermis and Venkatesh Saligrama.
Adaptive Statistical Sampling Methods for
Decentralized Estimation and Detection of
Localized Phenomena.
http://iss.bu.edu/srv/Publications/Manuscript
-final.pdf