Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
OCO - a method for target tracking in wireless sensor networks T. Andrew Yang ([email protected]) with Sam Tran Computer Science Program University of Houston – Clear Lake Houston, Texas 6-7-2006 Yang (SUTC 2006) 1 Outline • • • • • Introduction The Methods Simulation-based Evaluation Evaluation Results Conclusion and Future Work 6-7-2006 Yang (SUTC 2006) 2 Acknowledgement • 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) 6-7-2006 Yang (SUTC 2006) 3 Introduction • 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. 6-7-2006 Yang (SUTC 2006) 4 WSN applications An example of wireless sensor network for data collection in agriculture 6-7-2006 Yang (SUTC 2006) 5 WSN applications A scenario of enemy tracking using sensor networks 6-7-2006 Yang (SUTC 2006) 6 The 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 6-7-2006 Yang (SUTC 2006) 7 Requirements • Accuracy of target detection – The primary goal is to ensure consistent accuracy without sacrificing the network’s 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 reconstruct 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. 6-7-2006 Yang (SUTC 2006) 8 The Methods 1. 2. 3. 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 6-7-2006 Yang (SUTC 2006) 9 The 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. 6-7-2006 Yang (SUTC 2006) 10 OCO • 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). 6-7-2006 Yang (SUTC 2006) 11 OCO - 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 base’s 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. 6-7-2006 Yang (SUTC 2006) 12 OCO - Processing phase • 3 steps: 1. 2. 3. 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 1) 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. 2) Initialize a list of nodes that are supposed to cover the whole network area, called Area_List. 3) Add the base node to the Area_List. 4) 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. 5) 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. 6) Nodes that are not in the Area_list after the “for” loops in steps 4, and 5 are redundant nodes. 6-7-2006 Yang (SUTC 2006) 13 OCO: Processing phase Clean up redundant nodes 6-7-2006 Yang (SUTC 2006) 14 OCO’s reduction of sensor nodes 6-7-2006 Number of nodes in the sensing area OCO: number of nodes after redundancy removal + (number of border nodes) 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 3152006) (61 border nodes) Yang (SUTC 67% 1000 295 (60 border nodes) 71% % of reduction 15 OCO: Processing phase - Determine the border nodes 1. 2. 3. 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 1) For each pixel in the image, check if the color value =1. 2) 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. 6-7-2006 Yang (SUTC 2006) 16 OCO: Processing phase Finding the Border Nodes 6-7-2006 Yang (SUTC 2006) 17 Number of nodes vs percentage of border nodes 6-7-2006 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% 61 6% 60 6% 950 1000 Yang (SUTC 2006) 18 OCO: Processing phase - find the shortest path Algorithm for finding the shortest path to the base for each node in the Area_List 1) Work only with nodes in the Area_List of the ‘cleaning up redundant nodes’ step (Table 1). 2) Assign parent_ID = 0 for all nodes. 3) Assign parent_ID = the base’s ID for all neighbors of the base and add these nodes to a list, called Processing List. 4) For each node in the Processing List, consider all its neighbors. If the neighbor has parent_ID = 0, assign the neighbor’s parent_ID = the node’s ID. Add the neighbor to the Processing List. 5) 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. 6-7-2006 Yang (SUTC 2006) 19 Find the shortest path to the base for each node in the Area_List. 6-7-2006 Yang (SUTC 2006) 20 Assigning 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. 6-7-2006 • 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). Yang (SUTC 2006) 21 Roles of the nodes & initial states Border nodes Forwarding nodes Redundant Nodes + Sensor Active Sleep Sleep Radio Receive Receive Sleep MCU board Sleep; Sleep; Sleep wake up to create messages only wake up to create messages only + Periodically wake up to receive commands from the base 6-7-2006 Yang (SUTC 2006) 22 OCO: 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. 6-7-2006 Yang (SUTC 2006) 23 OCO: 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. • 6-7-2006 Yang (SUTC 2006) 24 Base OCO: Maintenance phase O new M N X Sample case: The dead node is a forwarding node. new M x A C C 2 B A 1 A 2 6-7-2006 new new Yang (SUTC 2006) B 1 C 1 25 Base OCO: Maintenance phase O X A Sample case: The dead node is a border node. C B new A 1 C 2 new A 2 A 3 GAP B 2 B 1 A3 Sensor RangeB2 Sensor Range C 1 B1 Sensor Range 6-7-2006 Yang (SUTC 2006) 26 Simulation • The tool used for simulation is OMNET++. • There are 3 basic components needed for the simulation: – – – • 6-7-2006 sensor node intruder object sensor network In addition, we need a module called manager to help configure and run the simulation. Yang (SUTC 2006) 27 Simulation of Sensor Nodes Application Sensor Coordinator Module MAC Radio Energy Layer 0 6-7-2006 Yang (SUTC 2006) 28 Simulation - Intrusion object simulation An object has only two layers: the application layer + the physical layer. Simulating a sensor network with intruder objects 6-7-2006 Yang (SUTC 2006) 29 Energy 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. Create/Receive a data message Create/Receive a signal message 100 µJ 3 µJ Send a data message (d<= 60m) Send a signal message (d<=60m) 820 µJ 26 µJ Send a message (d > 60m) 100 µJ + 0.1*d^2 Sensor board (full operation) 66 µJ/s Radio board (idle/receive mode) 100 µJ/s 6-7-2006 Yang (SUTC 2006) 30 Metrics • 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 network’s ‘well-being’ or longevity. 6-7-2006 Yang (SUTC 2006) 31 Simulation Settings 6-7-2006 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 Yang (SUTC 2006) 1000 295 (60 border nodes) 32 Simulation Results • in the case of no intruder object Energy consumption 6-7-2006 Yang (SUTC 2006) 33 Simulation Results • in the case of no intruder object time before first dead node 6-7-2006 Yang (SUTC 2006) 34 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. 6-7-2006 Yang (SUTC 2006) 35 Simulation Results (one intruder) Energy consumption 6-7-2006 Yang (SUTC 2006) 36 Simulation Results (one intruder) time before first dead node 6-7-2006 Yang (SUTC 2006) 37 Simulation Results (one intruder) accuracy 6-7-2006 Yang (SUTC 2006) 38 Simulation Results (one intruder) cost per detected points 6-7-2006 Yang (SUTC 2006) 39 Summary • 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. 6-7-2006 Yang (SUTC 2006) 40 Limitations & 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 6-7-2006 Yang (SUTC 2006) 41 A WSN Test Bed 6-7-2006 Yang (SUTC 2006) 42 Questions? Contact: T. Andrew Yang [email protected] University of Houston – Clear Lake Houston, TX 6-7-2006 Yang (SUTC 2006) 43