Title: OCO - a method for target tracking in wireless sensor networks
1OCO - a method for target tracking in wireless
sensor networks
- T. Andrew Yang (yang_at_uhcl.edu)
- with Sam Tran
- Computer Science Program
- University of Houston Clear Lake
- Houston, Texas
2Outline
- Introduction
- The Methods
- Simulation-based Evaluation
- Evaluation Results
- Conclusion and Future Work
3Acknowledgement
- This work is supported in part by
- National Science Foundation (Grant DUE-0311592)
- Institute of Space Systems Operations (ISSO)
- UHCL Faculty Research and Support Fund (No. 859)
4Introduction
- wireless sensor networks (WSN)
- a network of wireless sensor nodes.
- Each node is a computer with attached sensors
(aka mote) that can process, exchange sensing
data, as well as communicate wirelessly among
themselves to perform various tasks. - WSN have many applications in both military and
civilian systems. - Sample applications
- data collection, surveillance, object tracking,
etc.
5WSN applications
An example of wireless sensor network for data
collection in agriculture
6WSN applications
A scenario of enemy tracking using sensor networks
7The Challenges
- Small size of sensor node
- ? Limited battery capacity and lower hardware
performance - Overlapping sensing areas (redundancy)
- ? The network may be formed by randomly throwing
thousands or even millions of sensor nodes in an
area. - Frequent change of network topology
- ? The network is usually installed in a large
area with many physical effects, such as
earthquake, explosion, etc. - Limited bandwidth of wireless links
interferences in the environment - ? Problems such as dropped packets and
disconnected links
8Requirements
- Accuracy of target detection
- The primary goal is to ensure consistent
accuracy without sacrificing the networks
longevity. - Efficient energy dissipation
- The goal is to increase the overall longevity
of the WSN. - Effective computation
- Due to the limited processor and battery power
of a sensor, computation performed on the sensor
must be effective, in order to incur minimum
energy dissipation. - Re-configurability
- When one or more of the sensors cease to
function, the network should be able to
self-organize or re-configure itself, in order to
re-construct a functional WSN allowing the
mission to continue to be fulfilled. - Secure communications
- In the context of WSN security,
prevention-based security features such as
authentication, data integrity, confidentiality,
and availability are needed.
9The Methods
- OCO Optimized Communication Organization
- DC Direct Communication
- LEACH Low Energy Adaptive Clustering Hierarchy
Heinzelman, Chandrakasan, etc., 2000
- Direct Communication
- The sensor modules of all nodes are ON.
- Nodes send data directly to the base.
- Advantages
- Gives the best accuracy.
- Disadvantages
- Unrealistic because the base has limited number
of channels, and node energy is limited. - Cannot be applied to a large area.
- Suffer redundancy
10The Methods
- Cluster-based method (e.g., LEACH)
- Build a hierarchy tree by using LEACH algorithm
- Nodes randomly self-elect to become cluster
heads. - The cluster head invites its neighbors to join to
the group. - Re-elect cluster heads after a period of time for
energy balancing. - Nodes send data to the base through the cluster
heads. - Cluster heads communicate to the base directly.
- Advantages
- Simple
- Disadvantages
- All nodes are supposed to communicate directly
with the base - Cannot be applied to a large area
- suffer the channel limitation of the base
- Suffer redundancy.
11OCO
- 4 phases
- - position collection, processing, tracking, and
maintenance - In the position collection phase, the
base-station collects positions of all reachable
nodes in the network. - In the processing phase, it applies image
processing techniques to clean up the redundant
nodes, detect border nodes, and find the shortest
path from each node to the base. - In the tracking phase, the sensors in the network
all work together to detect and track intruding
objects. - The maintenance phase involves re-organizing the
network when, for example, a change in the
topology of the network occurs, or some of the
sensor nodes die (i.e., running out of power).
12OCO- Position collection phase
- Assumption The sensor nodes are randomly
scattered in the geographical area. - The base station sends a message to its neighbors
to gather their IDs and positions, and at the
same time advertise its own ID as the parent ID
of the neighbor nodes. - The bases neighbor nodes, after sending its ID
and position to its parent (the base), marks
itself as recognized, and then performs the same
actions as the base does by collecting IDs and
positions from their neighbors, and advertising
itself as the parent node, and so on. - When a node gets the position and ID information
from its neighbor, it forwards the information to
its parent.
13OCO- Processing phase
- 3 steps
- Clean up redundant nodes
- Define the border nodes
- Find the shortest path from each node to the base
Table 1 Algorithm for Determining Redundant Nodes Build a geographic image of the network by assigning color value 1 for all points that is covered by at least one sensor node. The rest of the points are assigned color value 0. Initialize a list of nodes that are supposed to cover the whole network area, called Area_List. Add the base node to the Area_List. For all the nodes in the area, if a node is not overlapping with any node in the Area_List, add it to the Area_List. The purpose of this step is to optimize node distribution. For each point in the network area, if the point is not covered by any node in the Area_List, add the node that contains the point to the Area_List. Nodes that are not in the Area_list after the for loops in steps 4, and 5 are redundant nodes.
14OCO Processing phase
Clean up redundant nodes
15 Number of nodes in the sensing area OCO number of nodes after redundancy removal (number of border nodes) of reduction
200 178 (126 border nodes) 11
250 212 (136 border nodes) 15
300 230 (126 border nodes) 23
350 251 (131 border nodes) 28
400 269 (110 border nodes) 33
450 280 (101 border nodes) 38
500 285 (101 border nodes) 43
550 291 (86 border nodes) 47
600 287 (88 border nodes) 52
650 278 (83 border nodes) 57
700 299 (72 border nodes) 57
750 297 (74 border nodes) 60
800 294 (73 border nodes) 63
850 293 (73 border nodes) 66
900 279 (66 border nodes) 69
950 315 (61 border nodes) 67
1000 295 (60 border nodes) 71
OCOs reduction of sensor nodes
16OCO Processing phase- Determine the border nodes
- Clean up redundant nodes
- Define the border nodes
- Find the shortest path from each node to the base
Table 2 Algorithm for Finding the Border For each pixel in the image, check if the color value 1. If true (meaning this pixel belongs to an object), scan all its neighbors to see if any of them having the color value 0. If true, this pixel belongs to the border.
- Finally, find a minimum set of nodes in the
Area_List that contain all the border points,
which are the border nodes.
17OCO Processing phase
Finding the Border Nodes
18 Number of nodes in the sensing area OCO number of border nodes of border nodes / number of nodes
200 126 63
250 136 54
300 126 42
350 131 37
400 110 28
450 101 22
500 101 20
550 86 16
600 88 15
650 83 13
700 72 10
750 74 10
800 73 9
850 73 9
900 66 7
950 61 6
1000 60 6
Number of nodes vs percentage of border nodes
19OCO Processing phase- find the shortest path
Algorithm for finding the shortest path to the base for each node in the Area_List Work only with nodes in the Area_List of the cleaning up redundant nodes step (Table 1). Assign parent_ID 0 for all nodes. Assign parent_ID the bases ID for all neighbors of the base and add these nodes to a list, called Processing List. For each node in the Processing List, consider all its neighbors. If the neighbor has parent_ID 0, assign the neighbors parent_ID the nodes ID. Add the neighbor to the Processing List. Repeat step 4 until all nodes are assigned parent_ID. After the loop, each node in the Area_list has a parent_ID. When a node wants to send a message to the base, it just delivers the message to its parent. The message is then continually forwarded until it reaches the base.
20Find the shortest path to the base for each node in the Area_List.
21Assigning roles to the nodes
- At the end of the processing phase, all nodes are
assigned missions. - The base broadcasts messages with node IDs to
assign tasks for them. - The redundant nodes are turned off to conserve
energy. They just wake up after a long period
(predefined) to receive commands from the base.
If there is no command or the commands do not
relate to them, they again switch to off totally. - The border nodes have the sensor modules and the
radio receiver modules ON (called ACTIVE state). - The rest of the nodes in the sensor network are
called forwarding nodes, which have their sensor
modules OFF but the radio receiver modules is ON
(called FORWARD state).
22Roles of the nodes initial states
Border nodes Forwarding nodes Redundant Nodes
Sensor Active Sleep Sleep
Radio Receive Receive Sleep
MCU board Sleep wake up to create messages only Sleep wake up to create messages only Sleep
Periodically wake up to receive commands from the base
23OCO Tracking phase
- Objects are assumed to have come from the
outside. - Normally, only the border nodes are ACTIVE.
- When a border node detects an object, it
periodically sends its position information to
the base by first forwarding the information to
its parent.
24OCO Maintenance phase
- Maintenance phase
- To reconfigure the network in the case of
topology change (probably due to dying or dead
nodes) - Examples exhausted nodes, damaged nodes,
re-positioned nodes - Exhausted nodes
- ? turns all its child nodes to SLEEP (orphan
nodes) - ? sends a report to the base.
-
- Global re-configuration When the base gets the
report, it enters the processing phase to
reconfigure the whole network, with dead nodes
being removed and the network restructured. - Local re-configuration Find new parent(s) to
adopt the orphans.
25OCO Maintenance phaseSample caseThe dead
node is a forwarding node.
26OCO Maintenance phaseSample caseThe dead
node is a border node.
27Simulation
- The tool used for simulation is OMNET.
- There are 3 basic components needed for the
simulation - sensor node
- intruder object
- sensor network
- In addition, we need a module called manager to
help configure and run the simulation.
28Simulation of Sensor Nodes
29Simulation
- Intrusion object simulation An object has only
two layers the application layer the physical
layer.
Simulating a sensor network with intruder
objects
30Energy consumption calculation
- We use the assumptions in 5 as the basis when
calculating the energy dissipation for our
simulations. 5 Wendi Rabiner Heinzelman,
Anantha Chandrakasan, and Hari Balakrishnan
(2000). Energy-Efficient Communication Protocol
for Wireless Microsensor Networks. THE HAWAII
INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, 2000.
31Metrics
- Four types of metrics are considered when
comparing the performance of the three selected
methods - The total energy consumption is defined as the
total energy that the network spends in a
scenario. - The accuracy is a percentage of the number of
detected object positions of the method over the
number of detected positions of the DC. - The cost per detected point is an average number
of energy units that are spent for a detected
position. - The time before first dead node is the time when
the first node of the network runs out of energy.
This matrix is a significant indication of the
sensor networks well-being or longevity.
32Simulation Settings
Num of nodes DC LEACH-based OCO
200 200 200 178 (126 border nodes)
250 250 250 212 (136 border nodes)
300 300 300 230 (126 border nodes)
350 350 350 251 (131 border nodes)
400 400 400 269 (110 border nodes)
450 450 450 280 (101 border nodes)
500 500 500 285 (101 border nodes)
550 550 550 291 (86 border nodes)
600 600 600 287 (88 border nodes)
650 650 650 278 (83 border nodes)
700 700 700 299 (72 border nodes)
750 750 750 297 (74 border nodes)
800 800 800 294 (73 border nodes)
850 850 850 293 (73 border nodes)
900 900 900 279 (66 border nodes)
950 950 950 315 (61 border nodes)
1000 1000 1000 295 (60 border nodes)
33Simulation Results
- in the case of no intruder object
Energy consumption
34Simulation Results
- in the case of no intruder object
time before first dead node
35- Paths of intruding objects
- Intruder objects move following specific paths
and come from outside of the network area. - The moving paths of objects are created by draw
images. - A MATLAB program reads the images and generates
appropriate text files of positions of the path
images.
36Simulation Results (one intruder)
Energy consumption
37Simulation Results (one intruder)
time before first dead node
38Simulation Results (one intruder)
accuracy
39Simulation Results (one intruder)
cost per detected points
40Summary
- We have devised a method, OCO, for efficient
target tracking in wireless sensor networks, and
have evaluated its performance in various
simulation scenarios against two other methods
(DC and LEACH). - Based on the evaluations, OCO appears to consume
less energy than the other methods while
achieving superior accuracy. - The main strengths of OCO include its efficiency
and easy maintenance, meaning that, when too many
nodes have exhausted their energy, new nodes can
be refilled to the tracking area and the OCO
method will be able to dynamically build up a new
network.
41Limitations On-going Work
- The sensor network usually works in hostile
environments therefore, security features need
to be added to OCO. - ? node-to-base and node-to-node authentications
- Re-configuration of the networks
- ? algorithms in the maintenance phase
- OCO needs to be implemented in a real sensor
network to further verify its performance. - ? WSN test beds
42A WSN Test Bed
43Contact T. Andrew Yang yang_at_uhcl.edu University
of Houston Clear Lake Houston, TX