Optimal Observation for Cyber-physical Systems
Zhen Song • YangQuan Chen Chellury Ram Sastry • Nazif Cihan Tas
Optimal Observation for Cyber-physical Systems A Fisher-information-matrix-based Approach
123
Zhen Song, PhD Siemens Corporate Research Automation and Control Department 755 College Road East Princeton NJ 08540 USA
[email protected]
Chellury Ram Sastry, PhD Siemens Corporate Research Automation and Control Department 755 College Road East Princeton NJ 08540 USA
[email protected]
YangQuan Chen, PhD Utah State University Department of Electrical and Computer Engineering 4160 Old Main Hill Logan UT 84322 USA
[email protected]
Nazif Cihan Tas Siemens Corporate Research Automation and Control Department 755 College Road East Princeton NJ 08540 USA
[email protected]
ISBN 978-1-84882-655-7 e-ISBN 978-1-84882-656-4 DOI 10.1007/978-1-84882-656-4 Springer Dordrecht Heidelberg London New York British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library Library of Congress Control Number: 2009929034 © Springer-Verlag London Limited 2009 MATLAB® and Simulink® are registered trademarks of The MathWorks, Inc., 3 Apple Hill Drive, Natick, MA 01760-2098, USA. http://www.mathworks.com Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licences issued by the Copyright Licensing Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers. The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use. The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made. Cover design: eStudioCalamar, Figueres/Berlin Printed on acid-free paper Springer is part of Springer Science+Business Media (www.springer.com)
To our mentors and families
Preface
Cyber-physical systems (CPSs) are emerging as an integrative research field aimed towards a new generation of engineered systems. From a dynamic systems and control point of view, CPS can be defined in the following way: “computational thinking and integration of computation around the physical dynamic systems form CPSs where sensing, decision, actuation, computation, networking, and physical processes are mixed.” CPS applications can be found in medical devices and systems, patient monitoring devices, automotive and air traffic control, advanced automotive systems, process control, environmental monitoring, avionics, instrumentation, oil refineries, water usage control, cooperative robotics, manufacturing control, smart greener buildings, etc. CPSs are mostly distributed parameter systems (DPSs) and dynamic evolutions happen not only along the time axis but also along spatial axes. Within the spatial domain of interest, due to the infinite-dimensional nature, it is natural and fundamental to consider the optimal observation or optimal measurement problems in CPSs. Recently, wireless sensor networks (WSNs) have attracted many researchers from both industry and academia and it is widely believed that the technology will bring important changes to our society in this century. An important class of application for the WSN is to observe physical systems, where the sensor networks together with the physical processes are considered as part of CPSs. The research and development of WSNs incorporate knowledge from many disciplines, such as communications, computer engineering and computer science, electronic engineering and mathematics, to name a few. The authors of this book come from both academia and industry and bring expertise from both sides. Overall, we intend to make this book practical since the authors were motivated by real engineering challenges. In the past 6 years, based on our award-winning hardware experiment systems, we have attempted to solve challenging problems and to generalize the results to address a large class of WSN design issues. Two hardware platforms have been described in this book. The MASnet (mobile actuator and sensor networks) project won 2nd place on the 2005 Crossbow’s Smart Dust Challenge and was demonstrated on the TinyOS Technical Exchange at UC Berkeley. Our sensor selection testbed was demonstrated at the 2006
vii
viii
Preface
DSN Symposium (International Symposium on Innovations and Real Time Applications of Distributed Sensor Networks). Later, some preliminary results of our sensor selection method were presented at the 2007 IEEE Sarnoff Symposium at Princeton University and we won 3rd Best Paper Prize in the student paper/poster competition session. Some theoretical analysis results are presented in the book with clear practical motivations to address some important design questions. Therefore, this book is not intended to be a pure theoretical research monograph. Based on our hands-on experiences, we think that the fundamental challenge in the area of WSN is to design and implement systems that are robust and reliable for real-world safety-critical applications. In practice, the design frequently involves delicate tradeoffs between precise estimates and physical system constraints. In addition, the disturbances should be quantitatively analyzed in order to ensure the quality of the sensor network service. Due to the complexity of the problems, it is usually very difficult to balance the tradeoffs by heuristic or ad hoc methods. For example, energy costs and estimation precision are counteractive under certain cases, in terms that putting too many sensors in the dormant mode may save precious onboard energy but also nullify the observation. In light of this challenge, this book presents a unified theoretical framework, which is based on the well-established theory of optimal experiment design (OED), to solve a large class of optimal observation problems involving WSNs. The Fisher information matrix (FIM), which has been studied for decades, plays a key role in the theoretical framework. We would like to demonstrate in this book that, the FIM framework is fundamental in solving a wide spectrum of design problems for WSNs in CPSs. We addressed three major problems in the book. The first addressed problem is the trajectory optimization for observation of DPSs, where wireless sensors were mounted on mobile robots. In this example, the cost function in the problem was constructed based on the FIM. The problem was formulated as an optimal control problem. It is demonstrated that FIM is applicable to mobile sensor networks for CPSs modeled by partial differential equations (PDEs). The second problem is the optimal sensor selection problem (SSP) illustrated in a target tracking scenario. In this case, the positions of the sensors are fixed. Instead of driving the sensors along certain trajectories like the first problem, we activate or scan “just enough” sensors in order to save the precious on-board energy. Thanks to FIM, we proved that the observation based on a small number of sensors could be as precise as the observation based on the whole network. We proposed a convex optimal sensor selection (COSS) framework to select the proper sensors for generic parameters identification problems. We also discussed how to place sensors to ensure that the network is optimal sensor selection feasible. Finally, we discussed the optimal beacon placement problem, where the balance between the positioning error and beacon placement is discussed. Since the positioning errors of many localization systems are affected by the placement of the beacon nodes, it is desirable to place the beacons properly, such that the maximum positioning error is minimized. To solve the problem, we formulate a semi-infinite programming (SIP) problem, where the cost function is again based on FIM.
Preface
ix
In summary, the optimal observation problems of WSNs considered in this book share the same theoretical framework in terms of OED that are formulated as an optimization problem with a cost function in terms of FIM. The topic of CPS is fantastic as well as challenging. Due to the multidisciplinary nature of the topic, we frequently come across problems that are out of our expertise. We are lucky that we can always gain valuable knowledge from our colleagues and friends. We are grateful to all the people helped us and supported our research. Some of them shared their valuable knowledge and experiences with us. Many of them spent their valuable time to review our work and provided faithful and insightful feedback. First of all, we appreciate Dr. Kevin L. Moore of Colorado School of Mines for his invaluable contributions to the MAS-net project. He even served as a carpenter to make the wooden frame of the fog box of the MAS-net platform. He spent uncountable hours discussing the details with us and helped us to bring the idea into reality. Our sincere thanks go to Dr. Dariusz Uci´nski of the Institute of Control and Computation Engineering, University of Zielona G´ora for constructive research collaborations over the years. His book on OED introduced us to this fantastic topic. We would like to thank Dr. Tamal Bose for his encouragement and support when we participated in the 2005 Smart Dust Challenge. We are grateful to all the people who helped the MAS-net project, including Dr. Kevin L. Moore and the team members, Mr PengYu Chen, Mr ZhongMin Wang, Ms Anisha Arora, Mr HaiYang Chao and Mr William Burgeous; former CSOIS members, Dr. Lili Ma, Dr. JinSong Liang, Mr Dan Stormont, Mr Bharath Ramaswamy. We would also present our appreciation to friends and colleagues: Dr. XiaoChun Xu, Dr. Vehbi Cagri Gungor, Dr. Hyo-Sung Ahn, Dr. Mohsen Jafari and Dr. Stanislava Soro. The work presented in this book was supported in part by Utah State University (USU) Space Dynamics Laboratory (SDL) Skunk-works Research Initiative Grant (2003-2005), USU CURI Grant (2005-2006), NSF DDDAS/SEP Grant CMS-0540179 (2005-2007), the Dissertation Fellowship Program of Utah State University and Siemens Corporate Research. We appreciate generous support by Dr. George Lo, Mr. Vladimir Zahorcak, and Mr. Hartmut Ludwig at Siemens Corporate Research. We sincerely appreciate this valuable support, which contributed significantly to our research. Last but not least, we are grateful to Oliver Jackson, Editor, Springer UK, for his visionary management that made this book project possible. We also wish to thank Aislinn Bunning, Editorial Assistant, Springer UK for her great patience and help in the copy editing phase.
Princeton, New Jersey, Logan, Utah, Princeton, New Jersey, Princeton, New Jersey,
Zhen Song YangQuan Chen Chellury Ram Sastry Nazif Cihan Tas March 2009
Contents
Abbreviations and Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv 1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 Motivation for the Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1 Challenges of Observation for Cyber-physical Systems . . . . . 1.1.2 Lessons Learned from Experience . . . . . . . . . . . . . . . . . . . . . . 1.2 Summary of Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 A Short Overview of CPSs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 The Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.2 What Is a Sensor Network? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.3 Introduction to WSNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.4 Applications of WSNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.5 Research on WSNs from Different Aspects . . . . . . . . . . . . . . 1.5 Motivation and Application Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.1 Motivation and Scenarios for MAS-net . . . . . . . . . . . . . . . . . . 1.5.2 Scenarios for Sensor Selection . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.3 Scenario for WSN-Based Localization . . . . . . . . . . . . . . . . . . 1.6 Mathematical Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 1 1 3 5 5 6 6 7 7 9 11 14 14 18 20 21
2
Mobile Sensor Trajectory Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Motivation and the Application Scenario . . . . . . . . . . . . . . . . . . . . . . . 2.2 System Identification for DPSs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 The Dynamic Model of Differentially Driven Robots . . . . . . 2.3.2 The Model of the Diffusion Process . . . . . . . . . . . . . . . . . . . . . 2.3.3 The Objective Function for Sensor Motion Scheduling . . . . . 2.3.4 Problem Reformulation in the Optimal Control Framework . 2.4 Finding a Numerical Solution for the Problem . . . . . . . . . . . . . . . . . . 2.4.1 A Brief Introduction to RIOTS . . . . . . . . . . . . . . . . . . . . . . . . . R PDE Toolbox Together with RIOTS . . . . 2.4.2 Using MATLAB
27 27 27 30 30 32 33 35 36 36 37
xi
xii
Contents
2.5 Illustrative Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Differentially Driven and Omnidirectionally Driven . . . . . . . 2.5.2 Comparison of Robots with Different Capabilities . . . . . . . . . 2.5.3 On the Effect of the Initial Orientation . . . . . . . . . . . . . . . . . . . 2.6 Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38 38 41 41 43
3
Sensor Selection Methods for Cyber-physical Systems . . . . . . . . . . . . . . 45 3.1 The Motivation and the Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.2 Just-Enough Sensor Selection and the Solution . . . . . . . . . . . . . . . . . . 46 3.2.1 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.2.2 Overview of Our Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.3 The Heuristic Sensor Selection Method . . . . . . . . . . . . . . . . . . . . . . . . 53 3.3.1 Formulation of Heuristic Sensor Selection . . . . . . . . . . . . . . . 53 3.3.2 Pseudocode of the hCOSS Algorithm . . . . . . . . . . . . . . . . . . . 61 3.3.3 Analysis of the hCOSS Algorithm . . . . . . . . . . . . . . . . . . . . . . 63 3.4 The Elimination-Based Sensor Selection Method . . . . . . . . . . . . . . . . 75 3.4.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.4.2 An Intuitive Interpretation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.3 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.4 Convex Elimination Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.4.5 Analysis of Convex Elimination Algorithm . . . . . . . . . . . . . . 79 3.4.6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 3.4.7 Pseudocode of the eCOSS Algorithm . . . . . . . . . . . . . . . . . . . 90 3.5 Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.5.2 Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.5.3 Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.5.4 Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 3.5.5 Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 3.5.6 Case 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 3.6 Hardware Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 3.7 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 3.7.1 Remarks on the Speed and Memory Requirements . . . . . . . . 114 3.7.2 Comments on Non-Gaussian Noise . . . . . . . . . . . . . . . . . . . . . 115 3.7.3 Relationships with Geometric Approaches . . . . . . . . . . . . . . . 116 3.7.4 Entropy-Based Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 3.7.5 Discussion of Correlations of Sensor Data . . . . . . . . . . . . . . . 122 3.7.6 Comments on Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 3.8 Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4
Design of Localization Systems for Wireless Sensor Networks . . . . . . . 129 4.1 The Motivation and the Research Problem . . . . . . . . . . . . . . . . . . . . . . 129 4.2 Localization Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 4.2.1 Received Signal Strength Indicator . . . . . . . . . . . . . . . . . . . . . 129 4.2.2 Angle of Arrival . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Contents
xiii
4.2.3 Acoustic TOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 4.2.4 RF TOF Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 4.3 The Proposed Phase-Based Localization Method . . . . . . . . . . . . . . . . 132 4.3.1 Review of TDOA Localization Algorithms . . . . . . . . . . . . . . . 132 4.3.2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 4.4 Beacon Placement Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 4.4.1 Application Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 4.4.2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 4.4.3 Solution and Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 4.5 Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 5
Conclusions and Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 5.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
A
Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 A.1 Simulation of Trajectory Optimization . . . . . . . . . . . . . . . . . . . . . . . . . 153 A.2 Sensor Selection Demonstration System . . . . . . . . . . . . . . . . . . . . . . . 157
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Abbreviations and Notation
Abbreviations ADC AOA ASIC CBR CDMA COSS CPS CRLB CSS DPS eCOSS FIM FPGA GPS GUI hCOSS ICS IEEE LQI LS MAP MAS-net ML OED OWR PDE PDF PMF
analog-to-digital converter angle of arrival application specific integrated circuit chemical, biological, and/or radiological code division multiple access convex optimal sensor selection cyber-physical system Cram´er–Rao lower bound chirp spread spectrum distributed parameter system elimination-based convex optimal sensor selection Fisher information matrix field programmable gate array global positioning system graphical user interface heuristic convex optimal sensor selection integrated control system Institute of Electrical and Electronic Engineers link quality indicator least squares maximum a posteriori mobile actuator-sensor network maximum likelihood optimum experimental design one-way ranging partial differential equation probability density function probability mass function
xv
xvi
POA RF RFID RSSI RIOTS RTT SIP SNR SSP TOA TDOA TOF UAV UWB WLS WSN
Abbreviations and Notation
phase of arrival radio frequency radio-frequency identification received signal strength indicator recursive integration optimal trajectory solver round-trip time semi-infinite programming signal-to-noise ratio sensor selection problem time of arrival time difference of arrival time of flight unmanned aerial vehicles ultra-wideband weighted least squares wireless sensor network
Comments on Symbols Fonts
Subscripts
Vectors are typed in bold math font, such as vector v. Matrices are indicated by capital math font, e.g., M . Note that random variables are also denoted by capital font, e.g., X. Thus, p = p = P = p, since p is a vector, p is a scalar, and P is a matrix. default, are column vectors. For example, ⎛ By⎞ ⎞ ⎛ all vectors p1 p(1) ⎜ p2 ⎟ ⎜ p(2) ⎟ ⎜ ⎟ ⎜ ⎟ p = ⎜ . ⎟ = ⎜ . ⎟ . Note that p(1) is the first entry of the ⎝ .. ⎠ ⎝ .. ⎠ pn p(n) vector p, and p(1) is a scalar. p1 is a vector. By default, M and M1 are two difference matrices, and M = M1 . The subscripts in brackets indicate scalar entries of a matrix or vector. The subscripts without brackets are instances of variables. Capital subscripts are parts of the variable’s name. So, t and tA are different scalars. Lower case subscripts, e.g., i, j, k, are used as indices for positive integers. For example, p(i) is the ith entry of the vector p, and p(i) is a scalar. Similarly, M(i,j) is the ith row and jth column scalar entry of matrix M . M(i,:) is the ith row vector of matrix M , and M(:,i) is the ith column vector of matrix M . pi is the ith p vector, where i = 1, 2, 3, · · · . Note that pi is the ith p, and pi is a scalar. Thus, pi = pi . However, p(i) = pi by default, and both of them are scalars. The sign represents Q.E.D., which is the end of a proof.
Abbreviations and Notation
xvii
The sign indicates the end of a remark or an example.
Notation in Chapter 2 m I l r α (x, y) τl ,τr A, B, x, τ AT , BT , xT , τT b χ(t) χdl (t) Ω ∂Ω n c
The weight of one robot. The inertia of the robot along the z axis. Note that I is a scalar. The length of the robot’s axis. Wheel radius. The left and right wheels have the same radius. The yaw angle as shown in Fig. 2.1. The coordinate of the center of the axis. Note that x is not x. The torque applied on the left and right wheel, respectively. τ = [τl , τr ]T . The parameters, states and the control signal for a single robot. The parameters, states and the control signal for three robots. The edge length of the robot’s square chassis. It is assumed that the wheels and the axis are mounted on a square chassis. Mayer state. Stacks all the entries on the diagonal and below the diagonal of χ to a vector. The domain for valid input variables. The boundary of Ω. Number of robots. The vector of unknown parameters. c = [c1 , c2 , c3 ]T .
Notation in Chapter 3 n ni or n(i) Pr m tS nS c1 , c2 , etc. σi , σ ¯i , σ ˜i
yi or y(i) vi si or s(i)
The total number of sensors. Note that n = n. The number of samples that sensor i collects in each tS , the sampling period. Note that n = [n1 , n2 , · · · ]T = n. Probability function. The number of parameters for identification. The total sampling time. In tS , sensor i collects ni samples. The maximum total number of samples of the whole WSN in tS time slot. The coefficients in sensor models. σi is the standard deviation of the noise of the ith sensor. σ ¯i is the standard deviation for the ith averaged sensor measurement. σ ˜i is similar to σ ¯i but averaged over nominal sampling rates. The nominal value of sensor i. It is computed by the model of events. The noise of sensor i. Real value of the reading of sensor i. si [k] := yi [k] + vi [k].
xviii
s¯i N(μ, σ) p ri q, q∗ 1 ∇ a≥b AB
Abbreviations and Notation
Averaged sensor i’s reading. Gaussian (normal) distribution with the expectation of μ and variance of σ. ˆ [k] is the optimized normalNormalized sampling rate of sensor i. p ized sampling rate for the kth iteration. Position of sensor i. ri is assumed precisely known. addition ri = In xi rj , for any i = j. By default, ri is a 2D vector like . yi q is the nominal position of the target. Specifically, q∗ is the true position of the target. An all-one vector, i.e., [1, 1, · · · , 1]T . Gradient. For example, ∇q is the gradient with respect to q. Each entry of vector a is no less than the scalar b. ai ≥ b; e.g., p ≥ 0. Matrix A − B is positive semidefinite.
Notation in Chapter 4 Ω qi pi m n
The domain for deployed mobile node and beacons. The position of the ith beacon. The position of the ith mobile node. Number of mobile nodes. Number of beacons.
Chapter 1
Introduction
1.1 Motivation for the Book 1.1.1 Challenges of Observation for Cyber-physical Systems This book covers several design issues on wireless sensor network (WSN) based physical quantity observation in cyber-physical systems (CPSs). In brief, we are interested in observing physical systems by massively deployed, small, embedded low-power and low-cost wireless sensor nodes, where microprocessors, sensors, power, communication unit and other peripherals are integrated on one board or even one chip. More specifically, we focus on how to utilize the physical laws, or models, to systematically design WSNs and enhance their performances under realworld scenarios. CPS is emerging as an integrative research field aimed toward a new generation of engineered systems. From the dynamic systems and control point of view, CPS can be defined in the following way: “Computational thinking and integration of computation around the physical dynamic systems for CPS where sensing, decision, actuation, computation, networking and physical processes are mixed.” CPS applications can be found in medical devices and systems, patient monitoring devices, automotive and air traffic control, advanced automotive systems, process control, environmental monitoring, avionics, instrumentation, oil refineries, water usage control, cooperative robotics, manufacturing control, smart greener buildings, etc. CPSs are mostly distributed parameter systems (DPSs) and dynamic evolutions happen not only along the time axis but also along spatial axes. Within the spatial domain of interest, due to the infinite-dimensional nature, it is natural and fundamental to consider the optimal observation or optimal measurement problems in CPSs. The topic of WSN has attracted much research attention lately and academia and industry are actively promoting the technology. Researchers from various backgrounds are incorporated into the WSN community and new promising applications are being reported regularly. Despite many intelligent proposals on prospective ap-
1
2
1 Introduction
plications in the area, the technology has not yet been widely adopted by the industry. Many factors, such as lack of a “killer application,” insufficient scalability, need of energy efficiency, etc., have been incriminated as the bottleneck of WSN adoption and many are working to improve these factors. In this book, we attack the optimal observation problem from the aspect of system-level design methodology. We argue that in order to ensure the observation quality, the impact of each design factor on the observation error should be studied quantitatively. Because real-world WSNs usually incorporate analysis methods in multiple disciplines, we propose to use the Fisher information matrix (FIM) as the unifying framework for comprehensive optimal observation designs. We will apply the FIM to some interesting WSN design problems and compare the alternative approaches. To understand the importance of the FIM, some background knowledge is helpful. For the system-level design, it is important to ensure the observation quality by precision and robustness criteria, which are described as follows. • Precision. If the sensor network is used to observe a physical quantity, the estimated value should also be bounded by a confidence interval or region, such as 100 ± 0.1, in order to precisely describe the quality of the observation. Higher reliability requires more precise observation, i.e., smaller confidence intervals. If a state, such as normal state or exception state, is being observed by the sensor network, the estimation precision should be characterized by statistical errors, such as false positive and false negative probabilities. • Robustness. The observation should be immune to disturbances, such as unrelated cell phone or WiFi signals. Compared with precision, robustness is relatively loosely defined. In practice, we analyze robustness by studying the impact of each disturbance factor on the estimation precision. Let us consider the following proposed WSN applications: • Structural health monitoring [1]. Apply WSNs to monitor the mechanical structural integrity of buildings, bridges, and vehicles etc. • Predictive maintenance [2, 3]. Utilize WSNs to detect potential faults on expansive machines, such as the engine of a ship, and deliver alarms accordingly. • Wildfire monitoring [4]. Detect and monitor wildfires in forests. • Landslide prediction [5]. Forecast landslides, save lives and valuable assets. There are more example applications in the following chapters. Obviously, these safety-critical applications have high demands on the reliability of the sensor networks. A faulty observation may result in loss of millions of dollars and even death. Therefore, they must be designed based on more systematic methods compared with many other wireless communication systems, such as WiFi or cell phone. Let us take the structure monitoring application as an example. The typical method to check the structural health of a bridge is to close it and examine its components using human experts, which takes around one day per year. Even if the sensor network can observe accurately the status of the bridge, i.e., healthy or
1.1 Motivation for the Book
3
unhealthy, such that 99% of the time its prediction is correct, that means, roughly speaking, that the bridge may be closed three days a year due to false alarms from the sensor network, which is worse than the current approach. In addition, there are chances that the system cannot predict collapse when the event is really about to happen. Given the fact that wireless communication is intrinsically not reliable, this application is rather challenging. To guarantee industry-acceptable reliability and accuracy, we may have to study quantitatively the impact of every small factor, such as sensor placement errors or interferences from a cell phone user on the bridge, on the system observation error. Notice that understanding the impacts of these factors on communication metrics, such as the throughput of the sensor network, is not enough, because the ultimate task is to monitor the status of the bridge, not to of construct a fast communication channel. The theory of observability indicates that a high performance communication module may not secure the design of the observer. If a physical state is unobservable, or cannot be observed accurately, it is not helpful to improve the communication channel alone. We will address the theory in the math background part of this chapter. For such cases, the solution is to find an alternative way to observe the physical system of interest, such as measuring different physical quantities. The aforementioned applications and numerous other ideas all share the same characteristic: they may have significant positive impacts on society only if the observation qualities are high enough.
1.1.2 Lessons Learned from Experience In the following, we explain our motivation based on our first-hand experiences. We started the journey from our MAS-net project. Our proposed application is to monitor and eliminate diffusing pollutions using mobile wireless sensor nodes. Instead of considering the sensor network as a pure communication system, we take it as an observer that provides feedback signals to the controller of the application. Rather than pursuing the traditional metrics for communication systems, such as the throughput, we design and optimize the sensor network based on how much valuable information it provides to the specific pollution monitoring task. The project won 2nd place in 2005 Crossbow’s Smart Dust Challenge and was demonstrated on TinyOS Technical Exchange at UC Berkeley. While working on the project, we came across many design problems. The difficulty usually came from questions like “in order to guarantee the error of certain value is within a certain bound, what is the acceptable interval or optimal value of another design factor?” For example, what is the optimal sampling rate of the network in order to assure the observation error is smaller than a threshold? How much positioning error on the sensor nodes can be tolerated? How much clock drift is acceptable? How many sensor nodes are required and how to drive them? Related problems have been more or less discussed in the literature, but they were attacked by various methods based on distinct theories, thus it is usually difficult to combine them into one framework. This raises many design
4
1 Introduction
issues and introduces difficulties on trouble shooting. For example, the positioning errors on the mobile sensor nodes depend on the resolution of the encoders on the sensors, the precisions of a head camera that locates each robotic sensor node based on the markers on their tops, and the network communication protocol, through which the base station, which is a PC, broadcasts calibration messages to mobile sensors for better positioning. In brief, we tried to design a protocol that can tolerate less precise encoders. Because the effort to find an off-the-shelf solution in the literature was in vain, we had to take the notorious trial-and-error approach. However, we finally had to use encoders with higher resolution in order to make the system reasonably stable. This problem was not the only one in the project. After the platform development, we summarized the lessons that we learned from the development and we gain time for a literature review. The theory of FIM and information matrix1 and the semigroup theory caught our attention. Both are capable of answering some puzzles in our mind. We preferred FIM since it is more practical for our engineering applications. We collaborated with Dr. Uci´nski and Dr. Liang on a paper to address the robotic sensor trajectory optimization issue using the FIM. Later, we developed a hardware demonstration system called “sensor selection testbed” following the engineering disciplines. Equipped with the FIM, we can estimate the impacts of all the design factors on the observation error; trouble shooting was very systematic, and the hardware platform was quite stable. As will be described in Chap. 3, the sensor selection testbed was designed to track a halogen lamp using 15 wireless sensor nodes equipped with light sensors. The design started from a couple of error analysis equations based on the FIM followed by some simulations on a PC. While working on the hardware, we first conducted several experiments to profile the characteristics of the light sensor. Second, after plugging in the sensor’s characteristic curve into the simulation program, it is clear that a small, bright and nonflashing light source is required. Therefore a halogen lamp, rather than a fluorescent or incandescent lamp, was selected. More comparisons on halogen and fluorescent lamps are shown in Chap. 3. Third, the FIM analysis was also useful to identify sources of external disturbances. The effects of communication packet loss and ambient light were distinguished and compensated separately. Finally, the system was stable enough so that we could take it to Washington DC and demonstrate it at the 2006 DSN symposium (International Symposium on Innovations and Real Time Applications of Distributed Sensor Networks). Once the hardware is set up, we only need to measure the intensity of the ambient light, which takes less than a minute, and then the 15 sensors can collate to track the lamp without problems. Thanks to the guidance of the theory, we constructed a stable demonstration without working overtime, because we have a good understanding of each impact factor. Later, some preliminary results of our sensor selection method were presented at the 2007 IEEE Sarnoff Symposium at Princeton University and we won 3rd Best Paper Prize in the student paper/poster competition session. 1 As will be explained later, the two matrices are not only tightly connected in concept but also equivalent in many cases. In this book, unless explicitly stated, we usually use the term FIM to refer to the two matrices.
1.3 Organization
5
The lesson that we learned from our WSN design experiences is that a math tool that supports quantitatively analysis of the impact of various factors on the observation error is of vital importance to assure the reliability of the sensor network systems. So far, the FIM seems to be the best candidate for this purpose.
1.2 Summary of Contributions In this book, several WSN problems are unified under the framework of OED, where the FIM plays an important role. The essential contributions include the following: • Formulate and solve a wide spectrum of cyber-physical observation system design problems based on FIM. • We practiced this design methodology on our projects. According to our experiences, the FIM-based design is very helpful to secure the precision and robustness of the observation systems. • Propose a numerical method to optimize the trajectories of mobile sensor nodes to estimate parameters of DPSs. • Propose a class of sensor selection methods, namely convex optimal sensor selection (COSS), to select the “just-enough” number of sensors with the least communication energy cost for the optimal parameter estimation. • Prove the existence of a class of implicit optimal sensor selection methods. The proof also provides guidance on the design of future sensor selection methods as well as the parameter tuning of those methods. • Verify the robustness and performances of the sensor selection algorithm using extensive hardware experiments and simulations. • Propose an asynchronous time difference of arrival (TDOA) localization method for energy efficient localization by WSNs. • Based on the TDOA method, develop a method to optimize the beacon placement for robust localization.
1.3 Organization The organization of the book is as the follows. In the rest of this chapter, we will introduce some concepts and math ground knowledge. The mobile sensor trajectory optimization problem is discussed in Chap. 2, based on the context of MAS-net project. This is an example on how to apply the FIM on optimization problems which are modeled by partial differential equations (PDEs) and ordinary differential equations. In practice, static sensors and mobile sensors are cooperative rather than competitive. We then naturally introduce an interesting and important design problem for static sensor networks: Chap. 3 focuses on the sensor selection problem (SSP). A just-enough sensor selection method is presented and analyzed. While many related
6
1 Introduction
methods require users to define the number of sensors to be selected, our proposed method automatically chooses the just-enough number of sensors. In this example, a problem modeled by both real numbers and binary numbers is solved with the FIM. If sensors are not properly deployed, there is no way to select a set of sensors to precisely observe the system of interest. The sensor placement problem is introduced in the next chapter. Chapter 4 presents research on localization and beacon placement problems. The term beacon is used, but it is in fact a kind of sensor for localization purposes. We propose a method to place the beacon such that the maximum localization error is minimized. Chapter 5 concludes the book. Finally, some comments on the implementations are presented in the Appendix. Please be aware that while the definitions of some notation, e.g., M and n, are consistent through the book, other notation, such as m, has different definitions in different chapters. Although the notation is explained where it is introduced, or where new definitions are introduced, to avoid confusion, please check the list of notation at the beginning of this book for consistent definitions of the notation, as well as their specific meanings in each chapter.
1.4 A Short Overview of CPSs 1.4.1 The Concepts Recently, the CPS was described as a key area of research by National Science Foundation [6]. The CPS can be defined as the computational thinking and integration of computation around the physical dynamic systems where sensing, decision, actuation, computation, networking and physical processes are mixed [7]. A CPS does not necessarily involve wireless technologies or design for sensing purposes. In this book, we will discuss those CPSs that are implemented by WSN technologies. Therefore, from now, we interchangeably use the terms CPS or WSN to describe the CPS based on WSN technologies. We expect that a large class of applications in the future will use low-cost embedded sensor nodes for physical systems monitoring and control. In this scenario, the physics law is one of the major considerations in the system design. In this regard, CPSs have significant different design approaches from other communication systems based on the Internet. As the book title suggests, the aim of this book is to design optimal observation schemes for CPSs involving WSN based on the knowledge of physical laws (physical models). We formulate design problems based on real-world engineering challenges. Even though we present some theoretical results, we organize the theory along a natural design procedure. However, theoretical books usually focus on theory development and use applications for illustration purposes. Based on realworld problems, we are trying to solve practical design issues with the most suitable
1.4 A Short Overview of CPSs
7
theory. Even though we are in favor of theoretical tools based on FIM, competing methods have been compared in depth around clearly defined applications. Knowing that great designs should be based on rational planning and elegant analysis, rather than the trial-and-error approach, we present key theoretical analysis as guidance for the designer. As typical engineering material, this book presents theoretical results in the context of engineering applications.
1.4.2 What Is a Sensor Network? The sensor network [8] is considered to be “one of the important technologies of the 21st century” [9]. In general, the term sensor network refers to sensors that have been connected by computer networks. The sensors measure physical quantities in the environment, while computer networks integrate and interpret sensor data. This concept was first proposed decades ago. For example, it is common to see networked data acquisition systems in industry. However, many researchers have recognized that modern computer, sensor, and communication technologies have significantly changed sensor networks. Since microprocessors are very affordable now, sensor data can be processed by local processors before being transmitted to the base station (the “sink”). The concept of a “smart sensor” has now been realized. Communication technologies, either wired or wireless, have significantly improved in the past several years. Wireless technologies have been developed particularly quickly. More and more new communication technologies have also been developed; examples include WiFi, Bluetooth, code division multiple access (CDMA), and ultra-wideband (UWB). Compared with the past, it is much easier today to connect thousands of sensor nodes with the help of these new technologies. Due to these new enabling technologies, the methods to deploy sensors and collect the sensor data are also different from before. In general, these new technologies have the potential to reduce the cost of sensor networks while improving their energy efficiency, network scalability, and reliability. How to properly use these new technologies is the subject of active research today. Sensor networks can be classified into different categories. Among them, WSNs [10, 11] and distributed sensor networks (DSNs) [12] are among the two most important categories. This book focuses on WSNs.
1.4.3 Introduction to WSNs WSNs [10, 11, 13] are not just traditional sensor networks with wireless communications. In fact, WSNs are very different from the sensor networks of the past. The deployment methods, power consumption requirements, and network protocols for WSNs are different from those of wired sensor networks.
8
1 Introduction
Currently, computer and communication technologies have arrived at a stage where the hardware cost is so low that massive dense deployment of wireless sensor nodes is affordable. A densely deployed WSN provides more samples from the physical world and improves the observation. However, the costs of replacing batteries for large-scale sensor networks are significant. It is very important to improve the network lifetime by employing various energy saving methods. The energy efficient protocols of WSN is a topic under active investigation. Compared with generic wireless communication protocols, the energy efficient protocols of WSN commonly use knowledge on the structure of the sensor data to improve the performance of the WSN . For example, a data-centric routing approach [14] is proposed to replace IP-based routing: the route is computed based on the relative position between the data and the sensors, instead of the IP addresses of the sensors. In addition, due to the nature of wireless communication, the topology of the network is not static. The wireless communication protocols must adjust the route accordingly [15]. The future of WSNs may resemble the “smart dust” scenario [16]: each sensor node is very small, approaching the size of a speck of dust. On the sensor nodes, microprocessors, sensors, communication devices, or energy harvesting apparatus are fully integrated. To explore the capability of the sensors, the sensor nodes are deployed at a massive scale at high densities. Compared with traditional sensor networks, WSNs are larger in scale and normally work in a distributed fashion. The following are some common features of WSNs: • The WSN protocols support large-scale networks. For example, IEEE 802.15.4 standard [17] is used in some sensor network products. The standard supports 232 sensor nodes per network, in theory. In the literature of sensor network protocol design, it is common to see that a certain algorithm is tested on a network with tens of sensor nodes [15, 18] and simulated with hundreds or thousands of nodes [12, 19]. The sizes of WSNs are larger than most other wireless communication protocols. For example, the Bluetooth standard was designed for use in a wireless personal area network instead of a sensor network. The Bluetooth standard only supports eight devices per network. • The costs of wireless communication are relatively low, in terms of price, energy, and computation. For example, the maximum power consumption of a Telos Mote [20], an example of a WSN sensor node, is in the region of tens milliwatts and the communication stack is small enough for low-cost microprocessors [21]. At present, the price of such a Telos sensor node is around US $70. In comparison, WiFi (IEEE 802.11) devices are normally powered by wires, instead of by common AA batteries, because their energy consumption is much higher. In addition, WiFi devices are normally more costly and have larger form factors. • The sensor nodes have certain computing capabilities. Sensor data are normally preprocessed on the sensor nodes. Preprocessing may include data filtering, compression, or encryption on the information of interest. For example, the sensor data may be stored on a local database [22] so that the node only delivers the data that are queried by the base station. By taking advantage of the on-
1.4 A Short Overview of CPSs
9
board processing power, the valuable communication resources are used more efficiently. • The sensor nodes are usually deployed densely. Dense deployment is preferable as long as it is affordable. A denser deployment provides better estimation resolution of the physical world, in general. • Sensor networks are normally supported by specially designed communication hardware or protocols. Due to the difference between sensor data and generic communication data, such as speech or video, generic communication systems are not the most efficient approach for sensor data transportation. For example, instead of pursuing high communication speed, as many other communication standards do, the IEEE 802.15.4 standard employs low-rate communication. Since high speed is not required by many sensor systems, adopting low-rate communication is a better strategy, in terms of cost, size, and energy requirements. WSN can be used in a wide variety of remote monitoring and control applications ranging from reconnaissance tasks [10] to environmental and human body monitoring [23], military surveillance [24, 25, 26], building automation [27], industrial monitoring and control [2], homeland security [28], air pollution detection [29], detection of persons and vehicles in open areas [30], and wildfire monitoring [4], etc. In typical remote monitoring applications, sensor nodes are deployed in an ad hoc manner over an area of interest. Individual sensor nodes can measure physical quantities and communicate sensing information to other sensors or to a sink by radio. Furthermore, sensor nodes have a limited ability to process information on an on-board CPU, and can store that information in memory. This is the reason why such wireless sensors are sometimes referred to as smart sensors or “smart dust.” The on-sensor processing and on-sink processing can cooperatively interpret sensor data to observe environments in an energy efficient manner. Although each individual node has limited capability, several such nodes can cooperate to accomplish complex tasks.
1.4.4 Applications of WSNs WSN applications can be categorized in many ways from design characteristics and technical preferences [31] to application domains [8]. In this section, we will follow a different approach and look at WSN applications from the functionality perspective. We classify the WSN applications into three main groups: monitoring and detection applications, tracking applications and control applications. In the following sections, we describe these groups in more detail and give examples for each group.
10
1 Introduction
1.4.4.1 Monitoring and Detection Applications As sensing is the essential capability of a WSN, the fundamental use cases of such systems are the applications where the main objective is to monitor a certain phenomenon and ensure that the observed system maintains a healthy state, e.g., a system operating correctly and as expected, an environment that does not create dangerous situations for its occupants, etc. In such applications, the sensor data is usually collected, stored and processed in a centralized location and any essential data or result is relayed to the user directly. Environmental applications are among the most common examples of monitoring and detection applications, in which sensor nodes are distributed onto the physical entity of interest. Such applications include early fire detection in forests [32], water level and quality management in water supplies [33], monitoring volcanic eruptions through seismic activity [34,35], collapse detection in coal mines through structural variations [36] and observation of seabird nesting statistics and characteristics [37]. With the increased population age in the USA, medical care is another active domain in which several WSN-related applications are proposed. These applications include vital sign monitoring for emergency medical response [23], providing in-home care [38] and ensuring timely and correct medication [39] for assisted livings, and preventive care and chronic disease management for patients via biosensors [40]. As the typical sensor nodes are low in cost, self-configurable and easy to deploy without any infrastructural needs, they are commonly used in military applications where human interaction is minimized because of the hostile conditions. Some of these applications are battlefield surveillance for intrusion detection [41], battle damage assessment, and nuclear, biological and chemical attack detection [8]. Several other WSN-related applications utilizing the convenience of low-cost wireless connectivity of sensor nodes can be found in the literature. Among these are judge supporting systems for martial arts competitions [42]; home monitoring systems through integrated motion, garage door and water sensors [43]; and improved wireless in-car sensor communication in order to reduce production complexity [44]. In addition, condition-based maintenance applications enabling proactive maintenance and reducing the cost by eliminating faulty conditions before they occur are also proposed for several systems, including building structures [45] and small machinery [46]. 1.4.4.2 Tracking Applications In monitoring and detection applications, the main aim of the system is to sense and provide information about a given system in order to detect the occurrence of a certain event. Thus, even though it might be a very important parameter depending on the application, location information is not necessarily a crucial part of the functional system. Tracking applications, on the other hand, heavily depend on
1.4 A Short Overview of CPSs
11
the location information and commonly make use of localization-related technologies such as a global positioning system (GPS) and radio-frequency identification (RFID) labeling. Several tracking applications are proposed for different kinds of physical entities and patterns, such as asset tracking and workflow optimization for warehouse management [47], movement patterns of zebras in Kenya using sensor nodes armed with GPSs [48], positioning of hostile targets in military surveillance missions [49], workplace applications assisting workers in finding available conference rooms through motion sensors and guiding visitors around an office environment [50], and even detecting and locating snipers using acoustic sensors [28]. 1.4.4.3 Control Applications In addition to the sensing capability of the WSN frameworks, in some applications the sensor network is also responsible for decision making and action taking. In such networks, the sensor nodes are not only a part of the passive identification process but also part of the active response procedure as they are closely integrated with the control system. We will refer to these kinds of applications as control applications as they represent sensor networks in which sensing and actuating terms are blended together. In the road tunnel monitoring application [51], sensors are deployed in a road tunnel in order to sense temperature, light and the presence of the vehicles, and several devices integrated in the tunnel are activated upon specific events. For instance, in the case of fire, air fans and traffic lights are automatically adjusted. Similar applications for building and home automation systems, which aim to optimize heating TM and cooling operations, are also proposed [52]. Siemens’ Synco [53] is such an end-to-end building automation system, which automatically controls actuator devices (radiators, cooling units, power blinds, etc.) according to the data gathered from the building sensors (temperature, smoke, etc.). Other control-related applications include autonomous animal control using electrical stimuli and GPS localization in order to prevent fighting between bulls [54]; and emergency first responder application in which sensor robots monitor a burning building through autonomous trajectory calculation and inter-sensor communication, and assist the emergency staff by minimizing human intervention in such harsh conditions [55].
1.4.5 Research on WSNs from Different Aspects As an interdisciplinary topic, WSNs have been studied from many different aspects by researchers from different backgrounds. Because interpretation of the sensor data and the structure of the sensor data are application dependent, to the best of our knowledge, there is no unified theory that integrates all sensor network design
12
1 Introduction
problems into one framework. Most of the research in sensor networks has been conducted under the guidance of one of the following aspects: • Communication and networking aspect: how to send information using WSNs. • Signal and system aspect: what information is useful and should be sent. • Data and service aspect: how to store and query data. This section will classify and review the current literature based on a set of proposed classification methods. 1.4.5.1 Communication and Networking WSNs can be considered to be networked communication systems. From the aspect of networking, new protocols or communication devices can be designed in order to transport the input data to the sink and satisfy certain quality of services (QoS). Some examples of commonly considered QoS include network throughput, packet reception rate, and delay. Based on a comprehensive survey of protocols of WSNs [8], the differences between WSNs and traditional ad hoc networks can be summarized as follows: • WSNs are deployed in much larger numbers with higher densities and are prone to failure. • The topologies of WSNs are frequently changing. • WSN sensor nodes have limited capabilities of power, computation, and storage. • Each WSN sensor node may not have a unique ID. WSNs are also compared with the Internet [13, 56]. Differences between the two include: • Many WSNs are designed to observe physical systems, and their data flows are determined by physical laws. Those WSNs are also CPSs. On the other hand, the inputs of the Internet usually come from human interactions. The Internet is essentially a communication channel among humans and thus the network flow is better studied from the aspect of psychology as opposed to physics. • Self-organizing is more important for WSNs. • The routing method used in the Internet is not practical for WSNs. Instead, routing methods based on sensor location or sensor values may be more effective. • Constraints on bandwidth and energy are more stringent for WSNs. Traditionally, computer networks are implemented in different layers. The classical TCP/IP model has five layers: a physical layer, data link layer, network layer, transport layer, and application layer. Most of the layers have their counterparts in WSN protocols. For the physical layer, the central task for researchers is to develop low-cost and energy-efficient radios, for which both academia and industry continually propose
1.4 A Short Overview of CPSs
13
new solutions [17,57,58,59,60]. For the data link layer, different media access control protocols are proposed. Some are developed for general sensor networks [61] and some are designed for specific applications [19]. The network layer is responsible for network routing. Common routing metrics include the number of hops, received signal strength indicator (RSSI), and link quality [62]. This layered network communication model is widely adopted. However, since it was developed for generic communication, it may not satisfy the requirements of WSNs. It is observed [63] that a key challenge for the current sensor network systems is the lack of a general communication model. Many protocols behave well by themselves, but do not cooperate with each other. In fact, the layered model is not the only solution. For example, hybrid designs do not follow the layered model [8, 63]. In the hybrid models, one or several modules operate across several layers. In summary, WSNs can be viewed as a new type of computer network. In addition to the pursuit of classical network performance, such as high throughput, high packet reception rate (PRR), and low message delivery delay, some new criteria, such as energy efficiency, fault tolerance, and scalability, should also be considered. A good network model should be able to balance cost with desired performance levels for various functions, in order to satisfy the requirements for individual applications as well as possible. 1.4.5.2 Signal and System WSNs are commonly used to observe physical systems. The sensor measurements can be thought of as signals, while the network is an imperfect communication channel which introduces problems such as delays and packet drops. Thus, there are many challenges in signal processing and system identifications involving WSNs. The following are some examples: • Sensor calibration: unlike the calibration for a single-sensor system, calibration on sensor networks is more complex. Since there are normally a large number of sensors in the network, it is normally impossible to manually calibrate sensors one by one. Automatic and systematic calibration methods are required [64,65]. • Sensor selection and placement: due to the properties of the physical systems, the “quality” of the sensor data is position-dependent. In order to minimize the amount of energy used for communications, we need to ensure that just enough “good” data are sent through the communication channels; no “bad” data or “more than enough” data should be transmitted. It is important to select sensors or sensor positions based on the quality of the sensed data [19, 66, 67, 68]. • Mobility of sensor node: mobile sensor nodes are feasible in the context of WSNs. Some methods are proposed to take advantage of the mobility of sensor nodes for better sensing [69, 70, 71, 72]. • Detection and estimation: it is desirable to have distributed detection or estimation algorithms, in order to enhance the scalability and fault tolerance of WSNs. For example, distributed regression [73], distributed least squares (LS) fitting [74], and other distributed algorithms [29, 75] are discussed.
14
1 Introduction
• Target tracking: as an extension to the classic target tracking problem, energy efficient or distributed tracking are discussed [76, 77, 78, 79], in the context of WSNs. Of course, there are significant overlaps on the above topics. For example, mobility can be used for robotic wireless sensor nodes on target tracking applications [79]. Knowledge of the physical model of the system under observation may significantly improve estimation precision and reduce the energy cost. For example, a WSN-based predictive maintenance system may be required to predict possible failures of an expensive engine [2] in the future. If the model of the engine is known, some important questions can be answered. By analyzing the physical model of the engine, we can determine the observability of an internal physical quantity, e.g., an internal state. If it is not observable, then the quantity cannot be estimated, no matter how many sensors are installed. Based on the model, the sensor deployment can be optimized. For example, one approach for the optimal sensor placement problem is to formulate it as a convex optimization problem. The problem can be solved in the framework of optimal experimental design (OED) [80, 81, 72]. 1.4.5.3 Data and Service WSNs can be thought of as distributed database systems. Users may query the data that have been collected by the sensor nodes. Due to the unique properties of WSNs, the queries on WSNs may not be the same as the queries on standard databases. For WSNs, users are interested in high-level information, and data aggregations are usually required. For example, one may query “the average temperature of the 4th floor,” instead of the measurements on temperature values of each sensor. One method to implement the above query is to aggregate the sensor data at sink [22]. Although the query on WSNs can be considered to be a special routing problem [82] and implemented by the standard address-centric routing, this approach may not be efficient, since the raw sensor data have much redundant information. It may be more efficient to transmit raw data by the address-centric routing methods, where the sensor data may be aggregated during the transmission. The route may be affected by the sensor data [14].
1.5 Motivation and Application Scenarios 1.5.1 Motivation and Scenarios for MAS-net Chapter 2 is motivated by our project named MAS-net, which stands for mobile actuator-sensor networks (MAS-net) [83, 84, 85, 86, 87, 88]. This project was proposed to combine the latest sensor network technologies with robotic technologies for an application-oriented high-level task, namely, to characterize, estimate, and
1.5 Motivation and Application Scenarios
15
control a diffusion process using networked mobile actuators and sensors. The advances in robotics [89] make it possible to develop small mobile sensor nodes for environmental monitoring. The future working scenario of the MAS-net system is discussed in our former publication [83]. We review it here in brief. The scenario is shown in Fig. 1.1. The numbers of the following comments are associated with the plots with the same numbers in Fig. 1.1. 1. In the middle of a city, terrorists release a plume of chemical, biological, and/or radiological (CBR) fog into the air. The diffusion of the plume is influenced by the city building structures and the air flow. The poisonous plume is detected by a static sensor network. 2. A group of unmanned aerial vehicles (UAVs) receive commands from a base station to estimate the boundary of the dangerous plume. Equipped with proper sensors and wireless communication modules, these UAVs make up an ad hoc WSN. 3. UAVs fly toward the plume and transmit their sensor data back to the base station in real-time. 4. Initially, the plume estimation program running at the base station does not have full knowledge on the parameters of the plume diffusion model. While getting more and more information from the sensors, the estimated parameters converge to the true values, and the plume boundary prediction becomes increasingly precise. Meanwhile, the base station sends commands to direct the UAVs to the estimated future boundary area, where they gather new information. 5. Once the CBR plume is satisfactorily defined, the UAVs are redirected to the appropriate locations to release proper anti-agents to eliminate the plume. 6. The plume is eliminated within the minimum possible time frame (or other optimization constraints are satisfied). The city becomes safe again. The MAS-net problem is challenging and calls for long-term efforts. Thus, a simplified problem is discussed in the book. In the problem, differentially driven robots equipped with sensors measure a diffusing fog. The fog is within a flat container with a transparent cover. Since the height of the container is small, the diffusion can be considered within a 2D domain, instead of 3D. In the current stage, the motivation is to observe the fog using those mobile robots. The configuration of the MAS-net testbed is shown in Fig. 1.2. A program called integrated control system (ICS) is executing on a PC named “base station.” From the graphical user interface (GUI) of the ICS, users can control the MAS-net testbed. The base station is connected to a wireless sensor node, MICA2 board, through the programming board. The base station communicates with the so-called MASmote [86] robots via this sensor node. The MASmotes are palm-size differentially driven robots that are equipped with fog sensors and wireless sensor boards, which can communicate with the base station and other MASmotes. The fog sensors estimate the concentration of the fog underneath the transparent cover, on top of which the MASmotes maneuver. A camera is hung on top of the testbed and connected to the base station. Based on the video stream from the camera, the ICS on the base
16
1 Introduction
Fig. 1.1 A typical working scenario for mobile actuator-sensor network
Fig. 1.2 The 2D testbed configuration for the MAS-net project
station detects the positions and orientations of the MASmote robots according to the unique markers on top of each robot. The fog is generated by a stage fog machine and diffuses under the cover. An electrical fan is placed close to the fog machine to simulate the wind. To simu-
1.5 Motivation and Application Scenarios
17
late city structures, some obstacles are placed under the cover to provide complex boundary conditions that are similar to urban situations. A photo of the testbed is shown in Fig. 1.3. In this photo, the markers are not placed on top of the robots. The MASmote robots with markers are shown in Fig. 1.4.
Fig. 1.3 The MAS-net testbed
The pictures in Fig. 1.4 were captured from our movie [90]. The movie is merged from two video streams. A video from a camcorder (bottom left) is overlapped on a video (background) from the GUI of the ICS. This movie demonstrates simple collaborative fog estimation. In this demonstration, a white paper board is used to simulate the fog because it is static and it is easy to verify the correctness of robots’ behaviors. Once they enter the “foggy” area, the robots should wander inside the area and report the simulated fog concentration to the ICS on the base station. Those dots on the screen are the augmented reality images that present the concentration of the “fog.” After the first robot finds a plume large enough, it sends a “help me” message to the other robots and guides them into the area with fog. In Chap. 2, a problem motivated by the MAS-net project is discussed. Given several differentially driven robots, how can we determine their optimal trajectories such that observation of the parameters of a diffusing fog is optimized? Since the fog is a DPS modeled by PDEs, mathematically speaking, the problem is as the follows: find an optimal control law for sensors with realistic constraints to observe parameters of a DPS. A numerical method is proposed and studied in Chap. 2.
18
1 Introduction
(a)
(b)
(c) Fig. 1.4 Cooperative fog estimation: a. start; b. one robot is estimating the concentration; c. the other robot is called to help
The system diagram of the MAS-net project is shown in Fig. 1.5. The diffusing pollution is described by certain PDEs. Several robots take the role of mobile sensors and transmit the measurements back to the base station, where prediction of the polluted region is computed. Other robots are actuators that release anti-agents properly to neutralize the pollution. The key challenge of the problem is to design a controller that sends proper commands to the sensors and actuators, in order to achieve the mission effectively.
1.5.2 Scenarios for Sensor Selection Chapter 3 focuses on a SSP. As discussed previously, energy conservation is a key issue for WSNs. When WSNs are involved in real-time observation tasks, such as environmental monitoring or target tracking, some sensors must stay in active mode and submit their measurements to the sink (base station) periodically. Of course, the smaller the number of sensors selected the better, provided the observation error is
1.5 Motivation and Application Scenarios
19
Fig. 1.5 System diagram of the MAS-net project
small enough. The problem of sensor selection is to choose the proper sensors and to use just enough sensors such that high-precision estimation is achieved with the least energy cost. In WSN applications such as building automation, an event of interest could be a fire in some area of a building; it could also be the leakage of toxic gases in a certain region. However, the exact location at which such an event takes place is not known. Moreover, the sensors in the vicinity of the event in question measure physical parameters like temperature, but they may not by themselves establish the location of the event. It is even possible that no physical sensor could measure the event’s location directly. Thus, in order to take appropriate action (such as turning on the sprinklers), it is first necessary to accurately establish the location of the event. The location of the event is thus an unknown quantity that should be estimated based on sensor data.
20
1 Introduction
Once an event in question is detected by one or more sensor nodes and its location can be established, the sensors communicate their measured readings to a sink to facilitate appropriate responsive actions. However, in order to conserve the limited energy budget on each sensor node, and also to optimally utilize the limited radio bandwidth, it is not efficient to have every sensor that detected the event communicate its readings at the maximum possible transmission rate. This will result in not only rapid depletion of on-board battery power on each node, but also lead to severe network congestion resulting in loss of valuable communication packets pertaining to the event. Intuitively, it does not make sense to assign a high transmission rate to a sensor far away from the fire, as such a sensor fetches only limited information. These samples will contain more noise and the quality of the information will be unsatisfactory. It is wise to increase the transmission rate for those sensors that are closer to the fire, since they can provide “good” data. The sensors with high transmission rates are labeled “selected” and those with low transmission rates are “unselected.” The sensors that are far from the fire should not be selected. This does not mean that every sensor that is “close,” e.g., within some threshold distance, to the event in question is guaranteed to be selected. We need a systematic, analytic approach to select sensors. In fact, the results in Chap. 3 indicate that the closest sensors are not always selected. It is also proved in the chapter that only a small number of sensors need to be selected in order to achieve the optimal precision. These conclusions may be counterintuitive. The detailed analysis and experiment results are presented in Chap. 3.
1.5.3 Scenario for WSN-Based Localization Localization is a fundamental function for WSNs [91], as well as many other applications, such as mobile robots [92, 93] and navigation [94]. Currently, GPS is a localization technology well-known to the public. However, despite the achievements of GPS, this technology is not ideal or not available for many applications. For example, GPS signals may be blocked by buildings, heavy foliage, large metal objects, or a strong electrical field [95]. In addition, the costs and energy requirements of GPS receivers may render them unacceptable for some applications [96]. GPS is not available for indoor localization, since the satellite signals of the GPS system are blocked by building structures. For outdoor application, although GPS is an option, it is mainly complimentary to the WSN-based localization systems, rather than competitive. In typical WSN deployments, a large number of sensor nodes should be equipped with low-cost, energy efficient localization devices that are designed for WSNs [59, 97]. GPS equipments are installed only on several beacon nodes (anchor nodes) to provide global positions. Compared with the localization technologies used for robotics and navigation, WSN-based localization is different. Common sensors used for robot localization and navigation, such as sonar or laser scanners, are too costly for WSNs, in terms of price, energy cost, and physical size.
1.6 Mathematical Background
21
Although the importance of WSN-based localization has been recognized, and active research has been conducted for years, the technology is still not mature in the sense that no off-the-shelf WSN localization systems are available today. As a brief summary, we list the unique constraints or challenges of the WSN localization problem. • To fit into the strategy of WSNs, the localization hardware for sensor nodes must be portable, low-cost, energy efficient, and sufficiently precise. So far, no commercial hardware solution satisfies all these requirements. • Since the sensor nodes are commonly deployed in ad hoc approaches, rough estimates of the positions of the sensor nodes may not be available. If the localization algorithm is based on the common LS approach, the position estimates may not converge to the real values, since the randomly generated initial positions may not be close enough to the global minimum, which is the true value of the sensor’s position [98]. In addition, since both sensor nodes (whose positions are unknown) and beacon nodes (whose positions are known) may be placed in ad hoc manners, the positioning of some sensor nodes may be ambiguous since not enough of the beacons’ signals may be received [99]. • It is common to deploy the beacon nodes progressively. If the batteries on certain beacons are depleted or the positioning errors are not satisfied, more beacon nodes should be added. In fact, adaptive progressive beacon placement is discussed in the context of WSN [100]. • Some sensor nodes in a WSN may be mobile. This is yet another challenge for localization. • Multi-hop is common for WSNs. A beacon node may not be able to directly communicate with a sensor node. Some WSN localization methods, e.g., the DV-hop algorithm [100], locate sensors by sensor networks with multi-hops.
1.6 Mathematical Background From a certain aspect, OED is the inverse of the parameter estimation problem, which can be formulated as follows: y = f (θ), s = y + v, where θ is the parameter vector, f is the a linear or nonlinear function that represents the system model, y is the nominal measurement, v is the sensor noise, and s is the sensor measurement. The mission of parameter estimation is to make the estimate ˆ as close to the real parameter vector, of the parameter vector, which is denoted θ, ∗ θ , as is possible. In the aforementioned parameter estimation procedure, we have no control over the experiments. In other words, there are no “tuning knobs” for us to improve the quality of the sensor measurement s, which is given but may not be acquired by
22
1 Introduction
the approach that we prefer. In the real world, we often face the reverse problem. We can control many conditions of the experiments and we are subject to certain constraints. The question is to design the experiment conditions properly in order to achieve the best estimate of the parameter vector θ∗ . The “conditions” are usually denoted as a vector, which is referred as the “design” of the experiment. Therefore, the formulation is as follows y = f (r, θ), s = y + v, ˆ the distance where r is the design. Still referring the estimate of the parameter as θ, ∗ ˆ between θ and θ in vector space is usually defined as a metric associated with the covariance matrix E[(θˆ − θ∗ )(θˆ − θ∗ )T ]. Obviously, the smallest covariance matrix is desirable. In practice, there are different metrics to measure the volume of the matrix. Common metrics include D-, A-, E-, T-optimality criteria. In this work, we adopt the D-optimality criterion because it is linearly invariant, which implies that we can ignore the units of the physical quantities while searching for the optimal design, and it is relatively easy to compute. Due to the tight connections between parameter estimation and OED, we introduce the FIM, a key concept in OED, in the context of parameter estimation. Maximum likelihood (ML) and LS are two standard methods for parameter estimation. Following the aforementioned notation, the likelihood function of parameter θ is defined as L(θ|s) = Pr (s|θ), where Pr (·) is the probability density function (PDF)2 , s is the given sensor measurement, θ is the unknown parameter, and L(·) is the likelihood function. For simplicity, we also write L(θ|s) as L(θ). The maximum likelihood estimator, θˆML , is the θ that makes L(θ) the maximum. Usually, we use the following condition to find θˆML : ∂L(θ) = 0. ∂θ The Fisher information, which is closely related to ML and the FIM, is defined as I in the following equation: I = −E[
∂ 2 ln L(θ) ], ∂θ2
where θ and L are scalars. The matrix form of the Fisher information is the FIM, such that It is trivial to extend Pr (·) to the probability mass function (PMF) and study the problem for the cases of discrete random variables. However, this is not of interest here.
2
1.6 Mathematical Background
23
MF = Eθ [(
∂ ln L(θ) ∂ ln L(θ) T )( ) ], ∂θ ∂θ
(1.1)
where MF is the FIM and θ and ∂ ln∂θL(θ) are column vectors. The relation between FIM and ML is shown in the Cram´er–Rao lower bound (CRLB) or Cram´er–Rao inequality. Theorem 1.1 (Cram´er–Rao inequality [101], p.551) If t(θ) is any unbiased estimator of θ based on a differentiable likelihood function, then E{(t(θ) − θ)(t(θ) − θ)T } M −1 (θ),
(1.2)
where M (θ) is the FIM. Remark. According to this theorem, the inverse of the FIM is the indicator for the minimum possible covariance of any unbiased estimators. In fact, if the maximum likelihood estimator, θML , exists, the following equation holds [102]: E{(θML − θ)(θML − θ)T } = M −1 (θ). In other words, reducing the right hand side of (1.2) actually improves the estimator θML , if it exists. A concept related to LS is called information matrix [103, 104], which is defined as MI in the following equation MI = (
∂f (θ) ∂f (θ) T )( ) . ∂θ ∂θ
(1.3)
The inverse of MI is the covariance matrix of the estimation error of the weighted least squares (WLS) estimator. This is an established result. For presentation purposes, we include the proof in Chap. 3. In other words, the inverse of the information matrix indicates the precision of the WLS method. For many cases, it is easier to compute the FIM than the information matrix. It is natural to seek for connections between the FIM and the information matrix. In cases when the sensor noise is Gaussian, they are identical. The proof is shown in [105]. Therefore, in these cases, the estimator achieved by information-matrix-based (or FIM-based) optimal design is as good as the ML estimator, if the ML estimator exists. When the sensor noise is not Gaussian, the information-matrix-based design is comparable with WLS. Depending on the PDF of the sensor noise, the FIM could be much more complex than the information matrix under this scenario. Because WLS is usually good enough for many applications, we use the information matrix for non-Gaussian noise. In this book, to avoid lengthy descriptions like “the FIM and the information matrix,” we use the term FIM to represent the two matrices by default. We only distinguish the two matrices when we are addressing non-Gaussian noise.
24
1 Introduction
An important theorem in this book is Carath´eodory’s theorem, which is essential to understand that “just-enough” sensor selection is feasible. The intuitive interpretation of this theorem will be included in Chap. 3. The proof is included as follows, if readers are interested. Theorem 1.2 (Carath´eodory’s theorem [104], p. 72) Let S be a subset of Rn . Every element x in conv(S) can be expressed as a convex combination of no more than n + 1 elements of S. If x is on the boundary of conv(S), n + 1 can be replaced by n. ¯ , where Proof. We extend each element x in conv(S) to x
1 ¯= x . x x is conv(S) can be represented as a convex combination of m elements, xi , in conv(S). Then m ci xi , x= where
i=i
m
i=1 ci
= 1, ci ≥ 0. It is immediate that ¯= x
m
ci x ¯i ,
i=i
¯i = where x
1 ¯ i vectors are linearly dependent, such that . For m > n + 1, the x xi 0=
m
di x ¯i .
(1.4)
i=i
Since the first entry of x ¯i is 1, we have 0=
m
di .
i=1
Let c¯i = ci − em di em = mini (ci /di ) then it is easy to see that c¯i ≥ 0. In fact, there is at least one c¯i equal to 0. Due to (1.4), we have
(1.5)
1.6 Mathematical Background
25 m
c¯i =
i=1
=
m i=1 m
ci − e m
m
di
i=1
ci
i=1
(1.6)
= 1.
m
¯ i is a convex combination of x ¯ i , therefore Based on (1.5) and (1.6) i=1 c¯i x
m c ¯ x is a convex combination. Repeat the procedure until m = n+ 1. Because i=1 i i the vectors may not be linear dependent anymore, there is no guarantee to reduce more elements. The next part of the argument can be proved by contradiction. Assuming x is a boundary point in conv(S) and x can be expressed as the convex combination of at least n + 1 support points, then ¯= x
n+1
¯i, ci x
i=1
ci > 0, ¯1, x ¯2 , · · · x ¯ n+1 are linearly independent. For an arbitrary element y ¯ ∈ Rn+1 , and x the following holds: n+1 ¯i . ¯= di x y i=1
Since ci > 0, for a small enough > 0, ci + di > 0. Thus, x + y ∈ conv(S), which contradicts the assumption.
Chapter 2
Mobile Sensor Trajectory Optimization
2.1 Motivation and the Application Scenario Thanks to technology advances, large-scale WSNs and mobile WSNs are now more affordable than ever, and WSNs may be useful in many different applications. Many current wired sensor systems in industry are used to monitor lumped parameter systems such as electrical motors. Replacing the wired systems by WSNs can be very attractive, because wireless systems are much easier to install and maintain. In addition, if we deploy a larger number of wireless sensors, the system may be more robust against sensor failures. However, WSNs are not simple replicas of their wired counterparts. There exists a wide class of processes whose behaviors are described by PDEs due to the inherent spatial and temporal variability of their states. These are commonly referred to as DPSs. Since parameters of a DPS are, as the name suggests, distributed, it makes sense to deploy many sensors to measure the parameters at many different positions. This many result in a fine grid and more precise observation than traditional wired sensing systems, which are normally much smaller in scale due to the difficulties of wired connections. Thus, it may be useful to apply WSNs in a variety of scenarios, including the following applications: • • • • • •
Wildfire monitoring [4] Landslide prediction [106] Volcano status monitoring [35] Diffusive pollution monitoring and control [84, 85] Water pollution monitoring [24] Chemical plume tracking [107]
2.2 System Identification for DPSs Currently, DPSs occupy an important place in control and systems theories [108, 109, 110, 111, 112, 113]. One of the basic and most important questions in DPSs is 27
28
2 Mobile Sensor Trajectory Optimization
parameter estimation, which refers to the determination of unknown parameters in the system model from observed data such that the predicted response of the model is close, in some well-defined sense, to the process observations. For that purpose, the system behavior or response is observed with the aid of some suitable collection of discrete sensors, which reside at predefined spatial locations. However, the resulting measurements are incomplete in the sense that the entire spatial state profile is not available. Moreover, the measurements are inexact by virtue of inherent errors of measurement associated with sensing systems and also because of the measurement environment. These factors lead to the question of where to locate sensors to ensure that the information content of the resulting outputs with respect to the distributed state and PDE model is as good as possible. It is widely accepted that making use of sensors placed in an “intelligent” manner may lead to dramatic gains in the achievable accuracy of the resulting parameter estimates, so efficient sensor location strategies are highly desirable. In turn, the complexity of the sensor location problem implies that there are very few sensor placement methods that are readily applicable to practical situations and these are not well known among researchers. This generates a keen interest in the potential results, as the motivation to study the sensor location problem stems from practical engineering issues. Optimization of air quality monitoring networks is one such issue of interest. One of the tasks of environmental protection systems is to forecast expected levels of pollutant concentrations. To produce such a forecast, a smog prediction model is necessary, which is usually presented in the form of a PDE. As more sensor measurements unavoidably introduce higher energy costs and thereby increase the maintenance budget, we are faced with the problem of how to optimize their locations to obtain the most precise model with a limited number of sensors. Other stimulating applications include, among other things, groundwater modeling, recovery of valuable minerals and hydrocarbons from underground permeable reservoirs, gathering measurement data for calibration of mathematical models used in meteorology and oceanography, automated inspection in static and active hazardous environments where trial-and-error sensor planning cannot be used (e.g., in nuclear power plants), and emerging smart material systems. The sensor placement problem has been considered from various angles, but the results communicated by most authors are limited to the selection of stationary sensor positions [80, 114, 115]. An intuitively clear generalization is to apply sensors that are capable of continuously tracking points, providing at any given moment the best information about the parameters (such a strategy is usually called continuous scanning). However, communications in this field are rather limited. One piece of work [116] considers the determinant of the FIM associated with the parameters to be estimated as a measure of the identification accuracy and looks for an optimal time-dependent measure, rather than for the trajectories themselves. On the other hand, Uci´nski [80, 115, 117, 118, 119] apart from generalizations of Rafajłwicz’s results, develops some computational algorithms based on the FIM. The problem is then reduced to a state-constrained optimal-control one for which solutions are obtained via gradient techniques capable of handling various constraints imposed on sensor motions. Another piece of work [120] attempted properly formulate and
2.2 System Identification for DPSs
29
solve the time-optimal problem for moving sensors, which observe the state of a DPS so as to estimate some of its parameters. Notice that the idea of moving observations has also been applied in the context of state estimation [121, 122, 123, 124], but those results can hardly be exploited in the framework considered here as those authors make extensive use of some specific features of the problem addressed (e.g., the linear dependence of the current state on the initial state for linear systems). It should be emphasized that technological advances in communication systems and the growing ease in making small, low-power, and inexpensive mobile systems now make it feasible to deploy a group of networked vehicles in a number of environments [9,24,121,125,126]. A cooperative and scalable network of vehicles, each equipped with a single sensor, has the potential to substantially improve the performance of the observation systems. Applications in various fields of research are being developed and interesting ongoing projects include extensive experimentation based on testbeds. The problem to be discussed in this chapter caught our attention while working on our MAS-net experimental platforms [83, 84, 85, 86, 87, 88]. The MAS-net project is proposed to combine the latest sensor network technologies with mobile robotics for an application-oriented high-level task, namely, characterization, estimation, and control of an undesired diffusion process by networked mobile actuators and sensors. One potential solution is to estimate the parameters in a “closed-loop” or “online” approach [127]. This idea can be explained as follows. With the guessed initial values of the unknown parameters, the system starts to drive sensors in an “optimal” trajectory with respect to the parameters. Sensor data are then collected while the sensors are moving. Using the collected data, parameter estimates are improved and the moving sensor trajectories are then updated accordingly. Then, the sensors are driven to follow the newly updated trajectories based on the parameters estimated. Through this “closed-loop” iteration or recursive online adaptation, the estimated parameters converge to the true values of the DPS. This so-called “online” mode was listed as one of the important future research efforts [127]. In this chapter, we focus on the “control for sensing” part of the procedure; that is, given an estimate of the DPS parameters, how to drive the mobile sensors optimally so that the effect of the sensor noise can be minimized. We present a numerical solution for a mobile sensor motion trajectory scheduling problem under nonholonomic constraints as in MASmotes [86], the two-wheeled differentially driven mobile robots, in our MAS-net project. More details about the project are presented in Chap. 1. From the theoretical perspective, the key challenge is to develop real-time parameter estimation and state estimation of a class of DPSs by a swarm of mobile sensors with nonholonomic constraints and limited communication capability. In addition, mobile actuators (e.g., a mobile robot equipped with a chemical neutralizer dispenser or sprayer) with the same nonholonomic constraints will be added to control the DPS (basically, to reduce the concentration) with the help of the mobile sensors. The model-based adaptive measurement and control problem in the MAS-net project is formulated in our work [84, 85]. To implement this distributed control
30
2 Mobile Sensor Trajectory Optimization
system, the parameter estimation for the DPS is required, and the choice of the best experimental conditions for that purpose is referred to as an OED problem [128, 129, 130, 131]. Recently, the dynamic-sensor-motion scheduling problem has been studied intensively, with many practical considerations such as robust design and collision avoidance [80, 127] using kinematic sensor models. In this chapter, we extend the work in [80] by introducing realistic robot mechanical configurations and solving R optimal control toolbox. the problem with RIOTS, a MATLAB The rest of this chapter is organized as follows. The formulation of the MASnet estimation problem is described in Sect. 2.3, in which the dynamic model for differentially driven mobile robots is presented in Sect. 2.3.1 and a module for the diffusion process is presented in Sect. 2.3.2. The objective function for the optimal sensor motion scheduling is described in Sect. 2.3.3. Section 2.3.4 reformulates the problem in the framework of optimal control. In Sect. 2.4, a numerical solution R optimal procedure for this problem is presented. The RIOTS [132], a MATLAB control solver, is described briefly in Sect. 2.4.1 and Sect. 2.4.2 describes a method TM R to incorporate the MATLAB Partial Differential Equation Toolbox [133] and RIOTS. Some illustrative simulation results are presented in Sect. 2.5 with remarks on the results obtained. Section 2.6 concludes this chapter. Further comments on the implementation of the simulation are presented in Appendix A.
2.3 Problem Formulation 2.3.1 The Dynamic Model of Differentially Driven Robots MASmote [86] is a differentially driven ground mobile robot as illustrated in Fig. 2.1. Its dynamic model can be described by (2.1), where the symbols are defined as follows: • • • • •
m: the weight of the robot I: the inertia of the robot along the z axis. Note that I is a scalar l: the length of the robot’s axis r: wheel radius. The left and right wheels have the same radius b: the edge length of the robot’s square chassis. It is assumed that the wheels and the axis are mounted on the square chassis • α: the yaw angle as shown in Fig. 2.1 • (x, y): the coordinate of the center of the axis • τl ,τr : the torque applied on the left and right wheel, respectively ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ x˙ r cos(α) r cos(α) m 0 0 x¨ 2b 0 0 ⎣ 0 m 0⎦ ⎣ y¨⎦ + ⎣ 0 2b 0 ⎦ ⎣ y˙ ⎦ = ⎣ r sin(α) r sin(α) ⎦ τl . τr −rl/2 rl/2 0 0 I α ¨ 0 0 bl2 /2 α˙
(2.1)
2.3 Problem Formulation
31
x2 α r
Axis
x1 b
Left Wheel
Right Wheel Fig. 2.1 A differentially driven mobile robot
In (2.1), the mobile robot is represented in the form of a second-order system. For convenience, the corresponding state space form can be easily derived by introducing x, the extended system state vector, defined as ⎡ ⎤ x ⎢y⎥ ⎢ ⎥ ⎢α⎥ ⎥ x := ⎢ ⎢ x˙ ⎥ , ⎢ ⎥ ⎣ y˙ ⎦ α˙ and τ is defined as
τ τ= l . τr
Note that x = x. x is the state vector, while x is the robot’s position on the x-axis. In this chapter, x is always a function of time, t, so are the state variables, i.e., x, y, α, x, ˙ y, ˙ and α. ˙ For simplicity, the time indices of these state variables are frequently dropped, e.g., x(t) and x are interchangeable in this chapter. To have a compact notation, let us define matrices A and B as
32
2 Mobile Sensor Trajectory Optimization
⎤ 000 1 0 0 ⎥ ⎢0 0 0 0 1 0 ⎥ ⎢ ⎥ ⎢0 0 0 0 0 1 ⎥, A := ⎢ ⎥ ⎢0 0 0 −2b/m 0 0 ⎥ ⎢ ⎦ ⎣0 0 0 0 −2b/m 0 2 000 0 0 −bl /(2I) ⎡
and ⎤ 0 0 ⎥ ⎢ 0 0 ⎥ ⎢ ⎥ ⎢ 0 0 ⎥. ⎢ B(x) := ⎢ ⎥ r cos(α)/m r cos(α)/m ⎥ ⎢ ⎣ r sin(α)/m r sin(α)/m ⎦ −rl/(2I) rl/(2I) ⎡
Thus, the robot dynamics can be written as x˙ = Ax + B(x)τ.
(2.2)
For simplicity, B(x) is denoted B in this chapter. In the following example, we assume that there are three robots in the network. It is easy to generalize the result to a network with an arbitrary number of robotic sensor nodes. To solve the multi-robot-motion-scheduling problems described in Sect. 2.5, we need to write the dynamics of three robots as a single dynamic system. Denote the states of each robot in (2.2) as x1 , x2 , and x3 , respectively. After defining ⎤ ⎡ ⎤ ⎡ x1 A1 0 0 xT := ⎣x2 ⎦ , AT = ⎣ 0 A2 0 ⎦ , 0 0 A3 x3 ⎤ ⎡ ⎤ B1 0 0 τ1 BT = ⎣ 0 B2 0 ⎦ , and τT = ⎣τ2 ⎦ , τ3 0 0 B3 ⎡
where Aj , Bj are for the jth robot, the dynamics of all three robots can be written compactly as follows: x˙ T = AT xT + BT τT . (2.3)
2.3.2 The Model of the Diffusion Process For the purpose of comparison, here we use the same diffusion system model as in Example 4.1 of book [80]. We rewrite it using our notation in the following form:
∂ ∂u(x, y, t) ∂u(x, y, t) = κ(x, y) ∂t ∂x ∂x
2.3 Problem Formulation
33
∂ ∂u(x, y, t) κ(x, y) ∂y ∂y + 20 exp(−50(x − t)2 ), (x, y) ∈ Ω = (0, 1) × (0, 1), t ∈ T, u(x, y, 0) = 0, (x, y) ∈ Ω, u(x, y, t) = 0, (x, y, t) ∈ ∂Ω × T, T := {t|t ∈ (0, 1)}, κ(x, y) = c1 + c2 x + c3 y, c1 = 0.1, c2 = −0.05, c3 = 0.2, +
where u(x, y, t) is the concentration of the pollution, (x, y) is the spatial coordinate, c1 , c2 , c3 are the nominal parameters, and t is the time.
2.3.3 The Objective Function for Sensor Motion Scheduling In this chapter, the aim of the optimization is to reject sensor noise as much as possible. For the ith mobile sensor, its observation is assumed to be the following: zi (t) = u(xi (t), t) + (xi (t), t), where is white noise with statistics E{ (x, y, t)} = 0, E{ (x, y, t) (x∗ , y ∗ , t∗ )} = σ 2 δ(x − x∗ )δ(y − y ∗ )δ(t − t∗ ). The positions are in the domain of the diffusion process, i.e., (x, y) ∈ Ω and (x∗ , y ∗ ) ∈ Ω. δ is the Dirac delta function, and σ is a positive constant. The objective function is chosen to be the so-called D-optimality criterion defined on the FIM, which will be presented in detail soon. If a measurable random variable x depends on parameter c and x follows the standard normal distribution, then the FIM [80] is M=
n j=1
0
tf
pj σj−2
∂u(xj (t), t) ∂c
∂u(xj (t), t) ∂c
T dt,
where n is the number of sensors; tf is the duration of the observation; pj and σj are the number of sensors at the position xj (t) and the standard deviation of sensor j’s noise, respectively; u(xj (t), t) is the expected sensor measurement under the noisefree scenario on the time instance t and at the position xj (t); the column vector c is the parameters of interest in the diffusion model. The derivatives of a scalar with respect to a column vector is defined as
34
2 Mobile Sensor Trajectory Optimization
⎡
∂u ∂c1
⎤
∂u ⎢ ∂u ⎥ = ⎣ ∂c2 ⎦ , ∂c .. . where u ∈ R, c ∈ Rm , and c = [c1 , c2 , · · · , cm ]T . In this chapter, we assume that the sensors are identical, hence σi = σj for i, j ∈ [1, 2, · · · , n]. In addition, no two sensors are placed at the same position, i.e., pi = pj = 1 for i, j ∈ [1, 2, · · · , n]. The constant values pj and σj are ignored in the following, since they do not affect the optimization process. Up to a constant multiplier, the FIM constitutes the inverse of the covariance matrix for the LS estimator, defined by the following criterion: J1 (c) =
1 2
tf
z(t) − u ˆ(x, t; c) 2 dt.
(2.4)
0
The notation ˆ in (2.4) indicates the predicted value. For n robots, J1 (c) becomes n 1
J1 (c) =
j=1
2
tf
zj (t) − u ˆj (x, t; c) 2 dt.
0
Then, the FIM of n robots is defined as follows: M=
n j=1
0
tf
∂u(xj (t), t) ∂c
∂u(xj (t), t) ∂c
T dt,
(2.5)
where the vector c is defined as follows in this particular diffusion case: ⎡ ⎤ c1 c = ⎣ c2 ⎦ . c3 Note that xj is the state vector of the jth robot. Here, c is the parameter vector in the DPS to be identified, and the partial derivatives are evaluated at c = c0 , a preliminary estimate of c. Note that the FIM, M, is a matrix. Thus, there are many metrics that can be defined to indicate the “size” of the matrix. The D-optimality criterion [134] used in this chapter is defined as Ψ (M) = − ln det(M). Other optimality criteria are applicable but not discussed in this chapter. The comparisons among different criteria are presented in Chap. 3. The objective function for the MAS-net estimation problem is to minimize J2 (x) = Ψ (M). Our goal here is to find the optimal control function τ ∈ L2n ∞ [t0 , tf ] for n two-wheel differentially driven mobile sensors together with the initial states
2.3 Problem Formulation
35
x(t0 ) = ξ ∈ RK where K = 6n and t ∈ [t0 , tf ] = [0, 1], such that J2 (x) is minimized. The notation Ln∞ [t0 , tf ] represents the space of Lebesgue measurable and bounded functions [a, b] → Rm .
2.3.4 Problem Reformulation in the Optimal Control Framework We use RIOTS to solve the proposed problem. More details on RIOTS will be presented later. According to the general optimal control problem formulation in RIOTS [135], our optimal mobile sensor motion scheduling problem can be formulated as follows: J(τ, ξ), (2.6) min K (τ,ξ)∈L2n ∞ [t0 ,tf ]×R
where
J(τ, ξ) = g0 (ξ, x(tf )) +
tf
t0
lo (t, x, τ )dt
is subject to the following conditions and constraints: x˙ = h(t, x, τ ), x(t0 ) = ξ, t ∈ [t0 , tf ], τj,min (t) ≤ τj (t) ≤ τj,max (t), j = 1, · · · , n, t ∈ [t0 , tf ], ξj,min (t) ≤ ξj (t) ≤ ξj,max (t), j = 1, · · · , k, t ∈ [t0 , tf ], lti (t, x(t), τ (t)) ≤ 0, t ∈ [t0 , tf ], gei (ξ, x(tf )) ≤ 0, gee (ξ, x(tf )) = 0,
where τj,min (t), τj,max (t), ξj,min (t), ξj,max (t) are upper or lower bounds; lti (·), gei (·), gee (·) are equality or inequality constraints. For our optimal motion scheduling problem, x˙ = h(t, x, τ ) = Ax + Bτ for the single robot case and for the threerobot case x˙ T = h(t, xT , τT ) = AT xT + BT τT . Here, we define l0 (ξ, x(tf )) = 0 and g0 (ξ, x(tf )) = Ψ (M) to simplify the numerical computation. This technique is called solving an “equivalent Mayer problem” [136]. To understand the equivalent Mayer problem, let us start from the definition of some new notation. g(xi ) is called the sensitivity function, where
∂u(xi , t) g(xi , t) := ∂c
T .
Then, the FIM in (2.5) is M=
n j=1
tf
t0
g(xj (t), t)g T (xj (t), t)dt.
(2.7)
36
2 Mobile Sensor Trajectory Optimization
Define the Mayer states as χ(i,j) (t) := where (i,j) (t) :=
n
t
t0
(i,j) (τ )dτ,
(2.8)
g(i) (xl (t), t)g(j) (xl (t), t).
l=1
Therefore, (t) is a matrix, so is χ(t). Denote χdl (t) the stack vector which stacks all the entries on the diagonal and below the diagonal of the matrix χ(t) to a vector. For example, if χ(t) is a 2 × 2 matrix, ⎤ ⎡ χ(1,1) (t) χdl (t) = ⎣ χ(2,1) (t) ⎦ . χ(2,2) (t) Then, the extended Mayer state vector x ˜(t) can be expressed as
x(t) x ˜(t) := . χdl (t) Comparing (2.7) and (2.8), one can easily observe the key idea. That is, χ(tf ) = M and χdl (t) contains all the information of M since M is symmetric. Ignoring the time indices, after replacing the extended state vector x with the extended Mayer vector x ˜, we can get M without explicit integration. Thus, when considering the equivalent Mayer problem, the models used for RIOTS are as follows:
Ax + Bτ ˙x ˜= , dl
AT x + BT τT ˙x ˜T = . dl
2.4 Finding a Numerical Solution for the Problem 2.4.1 A Brief Introduction to RIOTS R RIOTS stands for “recursive integration optimal trajectory solver.” It is a MATLAB toolbox designed to solve a very broad class of optimal control problems as defined R in (2.6). When executing under MATLAB script mode, the following configuration files need to be provided: sys l.m, sys h.m, sys g.m, sys init.m, sys acti.m. They are the lo , h, go functions in (2.6) and two initial conditions, respectively. Detailed instructions on how to prepare these files and many sample
2.4 Finding a Numerical Solution for the Problem
37
problems can be found in [135]. The most important function in this optimal control toolbox is riots, explained in detail in [132], p.73. [u,x,f,g,lambda2] = riots([x0,{fixed,{x0min,x0max}}], u0,t,Umin,Umax, params,[miter,{var,{fd}}], ialg,{[eps,epsneq,objrep,bigbnd]},{scaling}, {disp},{lambda1}). The parameters useful for understanding our numerical experiments here are as follows: • x0: initial values of x ˜ • fixed: a vector to specify which entries in x0 are fixed and which entries are not. Later in Sect. 2.5, results for two configurations are presented by changing fixed, which are cases of “fixed initial states” and “unfixed initial states,” respectively. For the first case, the robots’ initial conditions, x0 , are fixed. For the second case, χdl is fixed so that the robots start from the optimal starting positions • x0min, x0man: bounds of the initial conditions • u0: initial values of the control functions τ • t: time • Umin, Umax: bounds for τ The definitions of other parameters are described in the manual [132].
R 2.4.2 Using MATLAB PDE Toolbox Together with RIOTS
R The sensitivity function is generated before the function call of riots by MATLAB PDE Toolbox . The procedure for solving the sensitivity function amounts to finding solutions for the following equations: ⎧ ∂u ⎪ ⎪ = ∇ · (κ∇u) + 20 exp(−50(x1 − t)2 ), ⎪ ⎪ ∂t ⎪ ⎪ ⎪ ∂g ⎪ ⎨ (1) = ∇ · ∇u + ∇ · (κ∇g(1) ), ∂t ∂g(2) ⎪ ⎪ = ∇ · (x∇u) + ∇ · (κ∇g(2) ), ⎪ ⎪ ∂t ⎪ ⎪ ⎪ ∂g ⎪ ⎩ (3) = ∇ · (y∇u) + ∇ · (κ∇g(3) ), ∂t
where ∇ = (∂/∂x, ∂/∂y). Note that there are three g functions since there are three parameters c1 , c2 , c3 in Sect. 2.3.2.
38
2 Mobile Sensor Trajectory Optimization
2.5 Illustrative Simulations 2.5.1 Differentially Driven and Omnidirectionally Driven One type of robot model is a simple kinematic model [80]:
x(t) ˙ x(0) x = rω(t), = 0 , y(t) ˙ y(0) y0
(2.9)
where ω(t) is the angular speed vector, and r is the radius of the wheels. Obviously, (2.9) is an approximation. In this chapter, we refer to a robot that is subject to the kinematic in (2.9) as a proximal “omnidirectionally driven robot” since the velocity can be set arbitrarily. When the robot is differentially driven, we are interested to see the difference in the optimal sensor motion scheduling. The following four cases are compared first: • Case 1: omnidirectionally-driven robots starting from a fixed initial state vector. In the context of the MAS-net project, the fixed initial positions are the homes of those robots. • Case 2: differentially driven robots with a fixed given initial state vector. Moreover, we consider two subcases. Case 2a has an initial yaw angle of 15◦ and case 2b of -15◦ . • Case 3: omnidirectionally driven robots without a fixed initial state vector. We assume that the optimal static sensor location problem is solved first, then use this optimal position obtained as the initial state and seek the optimal sensor trajectories. • Case 4: the same as in case 3 but using differentially driven mobile robots. According to the above definitions, Fig. 2.2 shows the results for case 1; Fig. 2.3 for case 2a; Fig. 2.4 for case 2b; Fig. 2.5 for case 3; and Fig. 2.6 for case 4. From these figures, we note the following observations: • Differentially driven robots are less likely to change the orientation. The optimal mobile sensor trajectories in cases 2 and 4 have smaller curvatures compared with that in cases 1 and 3. • No matter what the robot dynamics are, the robots tend to move along the same rough direction. This can be observed by comparing cases 1, 2a, 2b and cases 3, 4. • For multi-robot cases, the final positions of the robots tend to be evenly distributed. A comparison of Fig. 2.3 and Fig. 2.4 is especially interesting. The two figures support each other, as the trend of the trajectories tend to align with each other.
2.5 Illustrative Simulations
39
1 Robot 1 Robot 2 Robot 3 Start End
0.9 0.8 0.7
y
0.6 0.5 0.4 0.3 0.2 0.1 0 0
0.2
0.4
0.6
0.8
1
x
Fig. 2.2 The optimal sensor trajectories of omnidirectionally driven robots (case 1) 1 Robot 1 Robot 2 Robot 3 Start End
0.9 0.8 0.7
y
0.6 0.5 0.4 0.3 0.2 0.1 0 0
0.2
0.4
0.6
0.8
1
x
Fig. 2.3 The optimal sensor trajectories of differentially driven robots: 15◦ initial yaw angle (case 2a)
40
2 Mobile Sensor Trajectory Optimization 1 Robot 1 Robot 2 Robot 3 Start End
0.9 0.8 0.7
y
0.6 0.5 0.4 0.3 0.2 0.1 0
0
0.2
0.4
0.6
0.8
1
x
Fig. 2.4 The optimal sensor trajectories of differentially driven robots: -15◦ initial yaw angle (case 2b)
1 Robot 1 Robot 2 Robot 3 Start End
0.9 0.8 0.7
y
0.6 0.5 0.4 0.3 0.2 0.1 0 0
0.2
0.4
0.6
0.8
1
x
Fig. 2.5 The optimal sensor trajectories of omnidirectionally driven robots using optimal initial conditions (case 3)
2.5 Illustrative Simulations
41
1 Robot 1 Robot 2 Robot 3 Start End
0.9 0.8 0.7
y
0.6 0.5 0.4 0.3 0.2 0.1 0
0
0.2
0.4
0.6
0.8
1
x
Fig. 2.6 The optimal sensor trajectories of differentially driven robots using optimal initial conditions (case 4)
2.5.2 Comparison of Robots with Different Capabilities Here we consider two more cases to compare robots with different capabilities. • Case 5: using a single weak-and-heavy robot, whose weight is 0.5 and the range of its torque for each wheel is ±10. • Case 6: using a single strong-and-light robot, whose weight is 0.05 and the range of its torque for each wheel is ±100. With the same fixed initial states and the same time interval, the robot in case 5 moves a shorter distance than that in case 6, as seen from Fig. 2.7 and Fig. 2.8. This matches our intuition that it is desirable for the sensors to measure the DPS states at more spatial locations whenever possible. This simulation also implies that mobile sensors are more favorable than static sensors, if the cost issues are ignored. The static sensors can be considered as extremely weak and infinitely heavy robots.
2.5.3 On the Effect of the Initial Orientation In addition to case 2a and case 2b, the effects of different initial yaw angle is studied in this section. The robots associated with each figure in this section have the same mechanical configurations and the same initial conditions.
42
2 Mobile Sensor Trajectory Optimization Control signals in the time domain.
Trajectory of the robot.
2
1 τ l τr
1.5
Start End
0.8
control
0.6 y
1
0.4 0.5
0
0.2
0
0.2
0.4
0.6
0.8
0
1
0
0.5 x
time
Position and angle states in the time domain. 0.35 v x 0.3 vy ω 0.25 α signal
signal
Position and angle states in the time domain. 0.5 x y α 0.4
0.3
1
0.2 0.15 0.1
0.2
0.05 0.1
0
0.2
0.4
0.6
0.8
0
1
0
0.2
0.4
time
0.6
0.8
1
time
Fig. 2.7 The optimal trajectory of a weak-and-heavy differentially driven robot (case 5) Control signals in the time domain.
Trajectory of the robot.
3
1 τl τr
2.5
Start End
0.8 0.6
1.5
y
control
2
0.4 1 0.2
0.5 0
0
0.2
0.4
0.6
0.8
0
1
0
0.5 x
time
1
Position and angle states in the time domain. 5 vx 4 v y ω 3 α
signal
signal
Position and angle states in the time domain. 2 x y 1.5 α
0.5
1
2 1 0
0 −0.5
−1 0
0.2
0.4
0.6 time
0.8
1
−2
0
0.2
0.4
0.6
0.8
1
time
Fig. 2.8 The optimal trajectory of a strong-and-light differentially driven robot: initial yaw angle is 15◦ (case 6)
2.6 Chapter Summary
43
Let us compare the following figures: • • • •
Figure 2.3: three robots with 15◦ initial yaw angle Figure 2.4: three robots with −15◦ initial yaw angle Figure 2.8: one robot with 15◦ initial yaw angle Figure 2.9: one robot with −15◦ initial yaw angle
The initial yaw angle affects the curvature of the optimal trajectory, but does not change the trend of the optimal trajectory. This indicates that the initial yaw angle matters, but is not critical. Figures 2.8 and 2.9 support the above statement. With different initial yaw angles, the two robots starting at the same position have different trajectories, but their final positions are close. For multi-robot cases, the formation pattern of the robots tends to be similar. Control signals in the time domain.
Trajectory of the robot.
4
1 τl τr
3
Start End
0.8 0.6
1 y
control
2
0
0.4
−1 0.2
−2 −3
0
0.2
0.4
0.6
0.8
0
1
0
0.5 x
1
Position and angle states in the time domain. 3 x 2.5 y α 2
Position and angle states in the time domain. 8 vx v 6 y ω
1.5
4
α
signal
signal
time
1
2
0.5 0
0 −0.5
0
0.2
0.4
0.6 time
0.8
1
−2
0
0.2
0.4
0.6
0.8
1
time
Fig. 2.9 The optimal trajectory of a strong differentially-driven robot: initial yaw angle -15◦ (case 6)
2.6 Chapter Summary This chapter presents a numerical procedure for optimal sensor-motion scheduling for diffusing plume observation. Given a DPS with nominal parameters, differentially driven mobile robots move along their optimal trajectories such that the sensor noise effect on the estimation of system parameters is minimized. This optimal
44
2 Mobile Sensor Trajectory Optimization
measurement problem is an important module for a potential closed-loop DPS parameter identification algorithm. This chapter reformulates a differentially driven robot dynamic model in the framework of optimal control. Through the combined R toolboxes for optimal control (RIOTS) and PDEs use of two existing MATLAB TM R (MATLAB Partial Differential Equation Toolbox ), the optimal sensor-motion scheduling problem can be solved numerically. Simulation results and their observations are presented.
Chapter 3
Sensor Selection Methods for Cyber-physical Systems
3.1 The Motivation and the Problem In the previous chapter, we solved some design problems for mobile sensor networks using the FIM. In this chapter, we will show that the FIM is also useful for designing static sensor networks. Parameter estimation is an important application for WSNs, where physical parameters or quantities are being estimated. Sensor fusion plays an important role for parameter estimation. Many physical quantities of interest are either expensive or even impossible to measure with small sensors. For example, we may want to use several low-cost temperature sensors to estimate the position of a fire, instead of using an expensive IR camera. We may also want to use several gas sensors to locate the source of a certain invisible leaking gas, whose location cannot be measured by a physical sensor directly. Some possible applications of parameter estimation include air pollution detection [29], detection of persons and vehicles in open areas [30], wildfire monitoring [4], and reconnaissance tasks [66]. A fundamental problem for those applications is to trade off between the need to communicate useful information and the requirement to do so in an energy efficient manner. It is expected that a WSN, once deployed, will work for a long period of time with minimal human intervention. In most remote monitoring applications, individual sensor nodes run on a limited supply of energy (from batteries), hence frequent invocation of the sensor’s radio rapidly depletes the sensor’s energy source. On the other hand, if an energy conservation policy introduces too much estimation error, this will lead to unacceptable results. Thus, to meet these challenges, in recent years, a major research effort in modern computing has been devoted to the development of sensor network protocols and algorithms with energy-efficient capabilities.
45
46
3 Sensor Selection Methods for Cyber-physical Systems
3.2 Just-Enough Sensor Selection and the Solution 3.2.1 Literature Review Sensor selection is an important technique for energy efficient observation. In brief, the SSP can be considered as the selection of the proper set of sensors to observe physical phenomena. Before we proceed to the details of this problem, the first question we should ask is: is sensor selection feasible and worthwhile? The fact that an algorithm could select, say, twenty sensors out of one hundred does not automatically justify the effort. What if we “save” 80% energy but collect garbage data? That is in fact a 20% waste. To show the potential problem, we illustrate some examples in Fig. 3.1. For common estimator designs, we want to get the best estimation from the sensor network with the least energy costs on wireless communications, which dominate the energy costs. Assuming there are n sensors in total, if case a in the figure is always true, then we may not need to develop a generic SSP solver to choose kS sensors out of n. A brute force method that selects the best one or two sensors might be good enough. Meanwhile, if case b holds, then, as we explained, SSP solvers can do nothing but waste energy and collect useless data. Sensor selection is more meaningful for case c and case d. If case c is true, then, naturally, we need a solid method to estimate the necessary number of selected sensors based on the requirement for estimation accuracy. However, our analysis reveals an interesting phenomenon: case d is closer to reality, even though it might be counter-intuitive at first look. In fact, the estimation error can be minimized when the number of selected sensors is equal or bigger than a threshold Cl , which we named Carath´eodory’s limit, and Cl is usually a number much smaller than n. Notice that the minimum error may be achievable with even less than Cl sensors, but it is not guaranteed. Before we summarize the existing methods to solve the SSP, we highlight that the key idea of our proposed method is that Carath´eodory’s limit is applicable to SSP. This property is illustrated in Fig. 3.2. The relationship among the estimation error, the number of selected sensors, and the total sample of the whole sensor network is shown in the figure. We can see from the figure that the estimation error gradually decreases as the number of samples increases. On the other hand, the estimation error does not decrease once the number of selected sensors is larger than a certain threshold, which is Carath´eodory’s limit. In the related existing methods [137, 138, 139, 140] each sensor takes one sample and transmits it back to the base station, which is the computer that executes the sensor selection algorithms. Those methods are referred as “single sampling” in Fig. 3.2. In our method, however, a sensor node may take several samples, process them, and transmit one measurement back to the base station. Most of the time, our multi-sampling scheme, which is denoted “our method” in Fig. 3.2, can achieve the same estimation error with less activated sensors than with single-sampling approaches. Because of this feature, we call our method a just-enough sensor selection
3.2 Just-Enough Sensor Selection and the Solution
47
Estimation Error case a case b case c case d
1
Cl
Sensor Number
Fig. 3.1 Possible error curves for SSP
approach. If we study Fig. 3.1, case d is our method, while case c is the scenario for the single-sampling methods. We present the details of our method and prove the existence of Carath´eodory’s limit in this chapter. Notice that the brute force sensor selection approach is too expensive, in terms of computation and hardware costs. Each sensor has two states: selected and unselected. Thus, the solution space for n sensors has 2n states. Some formulations of the SSP are believed to be NP-hard [141], which stands for nondeterministic polynomial-time hard, and it is impossible to use the brute force approach in practice. The SSP has been discussed from different aspects in the literature. Our classification of the existing sensor selection methods is shown in Fig. 3.3. Our proposed COSS methods are implicit optimization methods. Here, we briefly describe each method and compare them with our proposed method. For presentation purposes, we use a lamp tracking scenario as the example, even though our method is applicable to more general parameter estimation problems. In our scenario, sensor nodes equipped with light sensors are placed on a table. A lamp is placed at a constant height above those sensors and can be moved by hand. The task is to track the position of the lamp based on the data collected by the light sensors. We assume that the locations of the sensors are known.1 On the highest level of Fig. 3.3, there are semantic and numerical methods. From the database aspect, the semantic method considers sensor selection as a semantic routing problem [22, 82]. This method can select sensors based on properties of the sensor nodes, or simple properties of the sensor data. For example, the method is capable of selecting “all sensors on the 4th floor” or “all sensors who detect high 1
Although the sensor positions are required by the sensor selection algorithms, the sensor localization problem and the SSP can be solved independently. It is common for sensor selection papers to assume that the positions of the sensors are known [76, 77, 141, 139].
48
3 Sensor Selection Methods for Cyber-physical Systems
single sampling our method
estimation error
15
10 0 5
2 4
0 0
6
2 4 8
6
total sample
8 10
10
number of selected sensors Fig. 3.2 Estimation error surface of the SSP
temperature” [22]. This problem is essentially formulated as a tree search problem [82]. Our application scenario here is different. There is no simple threshold choosing the proper sensors. For example, if several sensors are close to each other and have high light values, we may choose just one of them since much of their sensor data are redundant. There is also no simple threshold method to tell which sensor’s data is better. Numerical methods select the proper sensor based on quantitative computations. Sensors can be selected based on the intrinsic properties of their measurements, or other sensor measurements, based on sensor fusion technologies. The model-free methods do not require models of the physical world. For example, utility-based sensor selection methods [142, 143] select sensors by maximizing utility functions. Our method is however model-based. There are also many model-based sensor selection methods, in which the physical models are used. Since many physical quantities are distributed and subject to physical laws, some sensor data can be inferred from other data. Given the model, it is not necessary to estimate physical phenomena with all the sensor data. A model-based geometric method is presented [141]. Based on geometrical analysis of camera-like sensors, it is concluded that the SSP can be solved in polynomial time. The paper also observed that “the estimates that are obtained by four sensors
3.2 Just-Enough Sensor Selection and the Solution
49
are as good as the estimates obtained from all sensors.” This observation is consistent with the algebraic analysis in this chapter. Section 3.3.3 presents more details. The SSP can be studied from the perspective of information theory. Sensor data with high uncertainty or redundancy should not be transmitted via the communication channel. Uncertainty can be measured by information entropy. For example, a sensor selection method based on entropy filtering and Bayes’ theorem has been developed [77]. This is a grid-based method. The area of interest is segmented into many small cells, and the entropy of the target’s location is computed based on a probability mass function (PMF). Since smaller entropy indicates less information uncertainty, an algorithm is proposed [77] to select proper sensors by minimizing the entropy. Thus, only the “good” information with more certainty is sent to the sink. The PMF can be recursively updated according to the dynamics of the target. The updating method is based on Bayes’ theorem. More details about this method are available [10, 66, 144]. Based on the same framework, a faster heuristic entropybased sensor selection method has been developed [145]. Compared with the above methods, our proposed sensor selection is different. The major difference is that for the information theoretical approaches, a predefined sensor number, n, is required. Those methods then choose the n, which is usually equal to 1, optimal sensor(s) in terms of a criterion based on the information entropy. Our methods, however, automatically select the just-enough number of sensors in terms of the estimation error. More specifically, we formulate the SSP as a convex optimization problem and propose the multi-sampling scheme. Due to the properties of convex functions, some fundamental limits, such as the required number of sensors, can be addressed within the framework. Several other differences are as follows: 1. Our proposed method is not grid-based therefore it requires less computation and memory. 2. Our method minimizes estimation error, instead of uncertainties in sensor data. 3. We can study if a WSN is sensor selection feasible based on the framework of our method. 4. Our method is based on FIM. It is easy to incorporate other WSN design problems, such as sensor trajectory optimization, sensor placement, DPSs observation, disturbance analysis, etc., with our SSP solver to design complex WSNbased observation systems. An approach based on signal processing has been developed [19], where sensors are directly deployed to measure the physical quantity of interest. The measurements are subject to a tempo-spatial correlation model. The variance of the estimation noise is minimized by selecting proper sensors. Our application scenario is different. First, we are interested in the parameter estimation problem, where the quantity of interest cannot be measured directly by sensors. Second, we observed from experimental data that our sensor data should be considered uncorrelated. Figure 3.4 is a plot of an 11 × 11 correlation coefficient matrix for the light sensors on Tmote Sky [20] sensor nodes. In the experiment, we placed 11 sensors uniformly under a lamp at different distances. Figure 3.4 shows that the magnitudes of the cross-
50
3 Sensor Selection Methods for Cyber-physical Systems
correlations between two sensors at different distances are much smaller than that of the auto-correlations (the diagonal values in the figure). Details are presented in Sect. 3.7. In fact, the mean of the absolute value of the cross-correlation coefficients of the experiment data is only 0.1181. Thus, our sensor data should not be considered correlated. Our sensor selection method does not depend on cross-correlations and we have verified our sensor selection method by hardware experiments, which will be presented later in this chapter.
Fig. 3.3 A classification of sensor selection methods
Sensor selection can be discussed within the framework of optimal estimation, where the estimation error is normally used as the cost function of the optimization. In previous works [76, 139, 146, 147], the SSP has been formulated as a constrained 0–1 integer programming problem, where the estimation error is minimized. The number of sensors is given and used as the constraint. Recently, sensor selection has been formulated as a 0–1 integer programming (or binary integer programming) problem and solved by a branch and bound (B&B) method [76]. In another piece of work [147], the SSP is formulated as a combinatorial optimization problem as well as a binary integer programming problem. The problem is solved using genetic algorithm (GA) software. Those methods are closest to our proposed method, but the difference is still obvious. Our method is a multi-sampling method, which implicitly minimizes the number of selected sensors. Our method is an example of implicit optimization. The key feature of this class of methods is that the number of selected sensors is not explicitly shown in the cost function or constraints of the optimization. Therefore, unlike others, our method does not require the number of sensors to be selected or a threshold of the acceptable estimation error, which are not easy to choose in practice. The reason for this feature is Carath´eodory’s limit that we presented in Fig. 3.2. Before presenting the details in Sect. 3.2, we summarize the key features of our method:
3.2 Just-Enough Sensor Selection and the Solution
51
The correlation coefficients of Tmote Sky light sensors under a halogen lamp.
Corr. coef.
1
0.5
0
40 20
20
40
0 0 Distance (cm) Distance (cm) mean abs. corr. coef.=0.2090 mean abs. cross corr. coef.=0.1181 Fig. 3.4 The correlation coefficients of Tmote Sky light sensors (based on our hardware experiment data)
1. It can simultaneously achieve the optimal estimate with the just-enough number of sensors, as well as the least energy costs. No compromise is required between the estimation precision and energy cost. 2. Because the method is based on a specific convex optimization approach, it is simpler and faster than generic optimization methods. 3. The robustness of the method has been verified by extensive hardware experiments.
3.2.2 Overview of Our Strategy As described earlier, certain formulations of the SSP are believed to be NP-hard. Thus, our strategy is to formulate the problem in a simplified form that is easy to analyze, and to solve the approximated problem using a fast optimization approach. We do not add the two cost functions (costs for estimation errors and for the number of selected sensors) together and minimize the sum, nor do we construct a vector based on the cost functions. These are standard multi-objective optimization techniques. Instead, we only minimize a convex cost function that is associated with the estimation error. More precisely, we propose two strongly related sensor selection algorithms. Heuristic convex optimal sensor selection (hCOSS) and elimination-based convex
52
3 Sensor Selection Methods for Cyber-physical Systems
optimal sensor selection (eCOSS). The eCOSS method is an enhancement of the hCOSS method. Due to their similarities, they are both referred as the COSS algorithm in this book. In the hCOSS method, we intentionally select a proper convex cost function that has a convex constraint. In other words, the just-enough number of sensors are automatically selected due to properties of the convex function and we do not interfere with the procedure with our subjective decisions. Normally, the hCOSS method can effectively pick a small set of sensors. However, there is no guarantee that the number of selected sensors is within Carath´eodory’s limit. Based on the output of the hCOSS, the eCOSS algorithm eliminates most of the unnecessary sensors from the set of selected sensors. It is proved that the number of sensors selected by the eCOSS method is no more than Carath´eodory’s limit. The system block diagram of our proposed method is shown in Fig. 3.5, where the physical parameter q∗ is the position of the lamp, yi is the ideal light value under noise-free conditions, vi is the sensor measurement noise, and si is the sensor sample, which is contaminated by noise. Notice that our COSS algorithms include the three blocks on the right, i.e., “wireless sensor network,” “least squares fitting,” and “optimal sensor selection.” We can see in Fig. 3.5 that the three blocks interact with each other, and they are interdependent. Thus, all the blocks are included in our COSS algorithm. The “wireless sensor network” is associated with part 1 of Algorithm 3.1 and is carried out on individual sensor nodes. Part 2 in Algorithm 3.1 selected refers to the other two blocks, i.e., “least squares fitting,” and “optimal sensor selection,” in Figure 3.5. Part 2 is the task for the sink. An example working scenario is shown in Fig. 3.6. In the figure, a target tracking scenario is demonstrated. However, the method is applicable to generic parameter estimation problems as well. After a target appears within the field of view, a subset of the sensor nodes observe the event and start measuring the physical quantity (e.g., light, temperature, gas concentration, etc.) that is associated with the target. At the beginning, many of the sensor nodes detect the target and they enter an active mode. Their sampling rates and transmission rates are raised to a high level, as shown in Fig. 3.6(a). Although the transmission rate is high, not too much energy is required, since this initial stage does not last for a long time. Soon, several sensors are selected to stay in the active mode and continuously monitor the target. Other sensors switch back to the inactive mode. Their sampling rates and transmission rates are considerably lower. One selected leader sensor among the active sensors takes the responsibility to report monitoring data to the sink. This case is shown in Fig. 3.6(b). As the target moves, the selected sensors smoothly shift from one to another. This is shown in Fig. 3.6(c). Our current hardware implementation is presented in Sect. 3.6. Although the current implementation is not at the level of this example working scenario, the experiment indicates that the proposed COSS algorithm is fast and memory efficient. It has the potential to be implemented on low-cost sensor nodes. As mentioned previously, the original SSP has a large solution space and is hard to solve. Thus, our strategy is to simplify the problem using several reasonable approximations and to solve the approximated problem using a fast optimization approach.
3.3 The Heuristic Sensor Selection Method
53
v1 s1
y1 Physical Parameter
q
y2
v2
s2
Network Settings
*
…
…
Sensor Model
yn-1
vn-1 sn-1
Optimal Sensor Selection
Wireless Sensor Network
qˆ
vn yn
sn
Sensor Readings
Least Squares Fitting
qˆ
Fig. 3.5 System block diagram of the proposed method
Fig. 3.6 The WSN sensor selection working scenario
3.3 The Heuristic Sensor Selection Method 3.3.1 Formulation of Heuristic Sensor Selection Our method follows the framework of OED and is applicable to general parameter estimation problems, not just limited to target tracking. However, for presentation purposes, we use a lamp tracking case as the example to interpret our formulation. This is the exact working scenario of our hardware testbed. Assuming the true position of the lamp at the time instance k is q∗ [k], and the position of the ith sensor is ri . The following equations hold: yi [k] = f (q∗ [k]; ri ), i = 1, 2, · · · , n; si [k] = yi [k] + vi [k], where f is the sensor model, yi [k] is the ideal reading from the ith sensor, and the associated real sensor reading is si [k], which is corrupted by the independent
54
3 Sensor Selection Methods for Cyber-physical Systems
Gaussian noise vi [k]. In this chapter, we use a common energy model [79] as the sensor model. Definition 3.1 (Energy model). c1 , h2 + d2i [k] vi [k] ∼ N(0, σ), di [k] = ri − q∗ [k] , yi [k] =
(3.1)
where h is the height of the lamp, di [k] is the distance from the sensor to the exact position under the lamp, c1 is a constant, and σ is the standard deviation. Remark. The energy model can reasonably be interpreted using physics. The energy emitted from the target is uniformly spread in space and propagates in spheres. Thus, the energy density is proportional to 1/r2 , where r is the radius of the sphere, or the distance from the target to the sensor. Under ideal conditions, if the sensor characteristics are linear, i.e., the sensor reading is proportional to the energy received, the energy model holds. The configuration scenario of the energy model is shown in Fig. 3.7, where the target is on top of the plane on which the sensor sits. It is easy to see that r2 can be replaced by h2 + d2 . Thus, (3.1) is derived.
Fig. 3.7 Generic settings of energy model
In the simulations discussed in this chapter, we use the following constants: • c1 = 3.3032 × 106 , • h = 20.32 cm. These parameters are chosen such that the energy model approximates the data measured by experiments. The following polynomial model is fitted based on the experiment data.
3.3 The Heuristic Sensor Selection Method
55
Definition 3.2 (Polynomial model). c2 + c3 di [k] + c4 d2i [k], yi [k] ≥ yL , yi [k] = Invalid, otherwise, vi [k] ∼ N(0, σi (di [k])), c5 + c6 di [k] + c7 d2i [k], yi [k] ≥ yL , σi (di [k]) = Invalid, otherwise, di [k] = ri − q∗ [k] , where c2 to c7 are constants, and di [k] is the distance from the sensor to the exact position under the lamp. Remark. The polynomial model is characterized based on our hardware experiment data. The data are plotted in Fig. 3.8. The left plot in the figure is the light intensity value, which is measured by a sensor node, with respect to the distance (cm) while the right plot is the standard deviation with respect to the distance. Notice that the value of the standard deviation depends on the distance. From the figure, it can be observed that the fitting errors of the polynomial model are relatively small. The experiment data can be fitted to the energy model. However, the fitting error is larger than that of the polynomial model. This may be due to the nonlinear effect of the sensors. The exact reason is not important to us. In the hardware implementations, we use the following parameters: • c2 = 6720.0, c3 = −216.0, c4 = 2.524 • yL = 2500 • c5 = 824.0, c6 = −36.26, c7 = 0.4577 In the polynomial model, “invalid” means that the optimization for sensor selection does not consider the invalid sensors, as if those invalid sensors did not exist. yL is the threshold below which the ambient light is more significant than the lamp’s light. In Fig. 3.8, when the distance between the light and the sensor is more than about 35 cm, the sensor reading is considered invalid and the associated minimal sensor reading is simply yL . In order to reduce the noise vi , the ith sensor node measures the ni light values in the time slot tS , averages them, and sends the averaged value back to the sink. The averaged light value is s¯i [k], whose standard deviation is smaller than that of the raw data: σ ¯i2 = σi2 /ni . If we could afford an infinite number of samples, we could completely eliminate the noise. Of course, in practice there is an upper limit on sample number. For simplicity, we set nS as the upper limit on the total number of samples for all the sensors in the time slot tS . The intuitive interpretation is as follows. We estimate the position of a target based on sensor measurements. Since sensor measurements are noisy, the target observations are not perfect. Now, noise in the sensor measurements can be reduced by modifying the sensor design (use better hardware) or by filtering out
56
3 Sensor Selection Methods for Cyber-physical Systems 7000 Raw data Quadric fit 6500
6000
5500
Light reading
5000
4500
4000
3500
3000
2500
2000
0
5
10
15
20
25
30
35
40
45
50
(a) Raw data Quadric fit
90
80
70
Deviation of light
60
50
40
30
20
10
0
0
10
20
30 Distance (cm)
40
50
60
(b) Fig. 3.8 The characteristics of the light sensors on Tmote Sky: a. light intensity; b. standard deviation
sensor noise, which, however, may not be an interesting research problem and is always the last resort in practice. Assuming the noise has zero mean, we can totally eliminate the sensor noise by averaging as infinite number of samples. Of course, as infinite number of samples are impossible in practice. However, it is possible to achieve arbitrary high precision if we can afford to take enough samples. If the noise is not zero mean, we can first calibrate the sensors, which is not discussed here. After receiving all the sensor data, the sink estimates the lamp’s position using ˆ A , which is also called the a the standard nonlinear LS method, and the output is q ˆ A is given by priori position. For a network of n sensors, the q
3.3 The Heuristic Sensor Selection Method
57 n
ˆ A [k] = argminq q
1 (¯ si [k] − yi (q; ri ))2 . 2 i=1
(3.2)
Now, we introduce several approximations to simplify the problem. • Instead of assigning each sensor a binary value that indicates the “selected” or “unselected” state, we assign a normalized sampling rate pi [k] to sensor i. That is, pi [k] = 1. pi [k] ∈ [0, 1] and i
Thus, the integer programming problem is approximated by a continuous design problem. • Our cost function is based on the FIM, M[k], whose inverse matrix is the CRLB [80, 94]. The relationship between FIM and CRLB is presented in Sect. 1.6. Ideally, the optimal sampling rate is p∗ [k] = argminp Ψ (M(p; q∗ [k])), where Ψ is a function that maps a matrix to a scalar. We will soon discuss on ˆ A [k], how to choose this function. Since q∗ [k] is unknown, we replace it by q which is another approximation. Thus, ˆ [k] = argminp Ψ (M(p; q ˆ A [k])). p • The nonlinear sensor models are locally linearized as shown in (3.5), such that y[k] = AT [k]ˆ qA [k]. This is a common approximation technique [80]. Thus, we have simplified the original problem to the following sampling rate optimization problem. Recall that the vector 1 in the following problem formulation is an all-one column vector with proper dimension. Definition 3.3 (Sampling rate optimization problem). ˆ [k] = arg min Ψ (M(p; q p ˆA [k])), p
subject to :p 0, 1T p = 1, where
(3.3)
58
3 Sensor Selection Methods for Cyber-physical Systems
M[k] = A[k]Σ−1 [k]AT [k],
(3.4)
A[k] = ∇q y|q=ˆqA [k] ,
(3.5)
T
ˆ A [k], y[k] = A q ⎡ −2 0 σ˜1 [k] −2 ⎢ −1 [k] 0 σ ˜ 2 Σ =⎣
⎤ ..
⎥ ⎦, .
n×1
ˆ [k], y[k] ∈ R , p, p m×1 ˆ A [k] ∈ R q, q . The scalar σ˜i [k] is model dependent. • For energy model: σ˜i −2 [k] = σ −2 pi [k], and σ > 0. • For polynomial model: σ˜i −2 [k] = σi−2 (di [k])pi [k], and σi (di [k]) > 0. The definition of Ψ (M[k]) is Ψ (M[k]) = − ln det(M[k]).
(3.6)
Accordingly, the optimized FIM is denoted as MA , i.e., MA = M(ˆ p[k], q ˆA [k]).
(3.7)
Intuitively, det(M[k]) is a metric to measure the size of M[k]. Since det(M[k]−1 ) = 1/ det(M[k]), det(M[k]−1 ) is minimized when − ln det(M[k]) is minimized. Commonly used optimality criteria include: • The D-optimality criterion: Ψ (M[k]) = − ln det(M[k]) = ln det(M−1 [k]). • The E-optimality criterion: Ψ (M[k]) = −λmax (M−1 [k]). • The A-optimality criterion: Ψ (M[k]) = −tr(M−1 [k]). The notation λmax is the maximum singular value and tr is the trace of a matrix. Even though there are other optimality criteria available, the D-optimality criterion is more commonly used. The unique feature of D-optimization compared with the other criteria is that the result of the D-optimization is not affected by linear transforms. That is, the result of the D-optimization is not affected by whether the unit of the measurement is in centimeters or in inches. In addition, the D-optimality criterion is differentiable. To determine D-optimal designs is easier than to compute E-optimal solutions, since the latter involves difficulties related to minimization of nonsmooth functions. Although different optimality criteria may lead to significantly different results, when M[k] is not close to singular, the results of different optimality criteria are often close to each other. The details are presented in Sect. 3.7.3.
3.3 The Heuristic Sensor Selection Method
59
If the system is static, we denote the FIM as M. It is known that the inverse of the FIM is the covariance matrix of estimation error e. Hereby we summarize the proof using our notation system. Theorem 3.1 For the linear system s = AT q∗ + v, where vi is a zero mean noise with a standard deviation of σi , we have M−1 equal to the covariance matrix of the estimation error. That is cov(e) = M−1 , ˆ − q∗ and q ˆ is the WLS estimator of q∗ . q ˆ is defined where M = AΣ−1 AT , e = q as q ˆ = argmin(Aq − s)T Σ−1 (Aq − s). Proof. It is well known that q ˆ = (AΣ−1 AT )−1 AΣ−1 s. Because q ˆ is unbiased, ∗ E{ˆ q} = q . cov(e) = E{(e − E{e})(e − E{e})T } = E{(ˆ q − q∗ − 0)(ˆ q − q∗ − 0)T } = cov(ˆ q) = E{(M−1 Mq∗ + M−1 AΣ−1 v − q∗ ) (M−1 Mq∗ + M−1 AΣ−1 v − q∗ )T } = M−1 AΣ−1 E{vvT }Σ−T AT M−1 = M−1 . In summary, cov(e) = M−1 .
In this book, we consider static or slowly varying systems. In our sensor selection application, the FIM can be considered as a constant for each iteration in the lamp localization procedure. Since M−1 [k] is an approximation to the bound of CRLB [94, 80] (cf. Sect. 1.6), and Ψ = ln det(M−1 [k]), (3.3) minimizes the estimation error and pushes down the estimation error close to the CRLB. Notice that the estimation error may not reach the CRLB due to the introduced approximations. It is observed that some D-optimization algorithms have a “sensor clusterization” effect [80]. That is, the optimal positions to place sensors are usually focused on several spots. In our SSP, each sample is comparable with a sensor. If we place the samples at a finite number of positions, the sensor clusterization effect implies that most of the samples should be assigned to several sensors. This effect has been reported by different researchers [80, 148] but has not been formally proved. In the current literature, this effect is considered undesirable, and researchers were focused on proposing algorithms to compensate this effect [148]. However, the sensor clusterization effect is ideal for our sensor selection purpose, under the context of WSNs. The reason why sensor clusterization is undesirable is due to the differences between the formulations of our sampling rate optimization and the standard OED [134, 103]. In short, our sampling rate optimization problem shares the same form as the standard OED but the interpretations and objectives are different.
60
3 Sensor Selection Methods for Cyber-physical Systems
Following the aforementioned notations, in OED, we call ri the design, which is the variable under control. p is the normalized trial (experiment) number of each design and p is not under direct control. The intuitive interpretation of the reason why sensor clustering in undesirable under the standard OED is as follows. If we have resources for 100 experiments to determine, for example, the optimal percentage of octane in gas, in terms of engine performances. It is not wise to try the same percentage 100 times. In a proper experiment design, we should experiment with several percentages and with each percentage several times. In our formulation, however, ri is a constant. Notice that the positions of sensors are variables in Chapt. 2 and 4, but not in this chapter. In the current chapter, the sensors are not mobile and we do not study the optimal placement of the sensors. Instead, we select sensors whose positions are known and static. Hereby the normalized sampling rate p is our design and under our control. If we strictly follow the current OED method, we should take k independent trials, with the sampling rate vectors of each trial p1 , p2 , · · · and pk . The repetition numbers of the trials are nT 1 , nT 2 , · · · , nT k . The associated sensor reading vectors ˜2 , · · · , y ˜k . Then, it is reasonable to avoid clusterization, i.e., too many repare y ˜1 , y etitions on several designs. However, in our formulation, only one trial is taken for energy conservation purposes. In the formulation, the design p takes the place of the repetition numbers in the standard OED and the constant variable ri is comparable with the design in the standard OED formulation. Given the connection between our formulation and the standard OED framework, many theoretical results of the standard OED are either directly applicable or require only slight adjustments. In our heuristic sensor selection (hCOSS) scheme, we select sensors whose sampling rates are higher than a threshold hS . The set of selected sensors is SS : SS [k] = {i|ˆ pi [k] ≥ hS }.
(3.8)
Based on Carath´eodory’s theorem, we can prove that the optimal estimate can be achieved by processing data from no more than m(m + 1)/2 sensors, where m is the number of unknown parameters (parameters under observation). However, as the name of this algorithm suggests, there is no guarantee that the existing Doptimum design algorithms [103, 80, 149] can find those sensors. However, it is not difficult to tune the hS in practice, such that the number of selected sensors is within Carath´eodory’s limit. Our experiments indicate that this heuristic approach has reasonable performance and very low computational costs. In addition, the heuristic method is the foundation of the rigorous eCOSS method, which is proved to select the number of sensors within Carath´eodory’s limit. Once (3.8) is finished, the sink turns off the sensors that have not been selected and collects the data from the selected sensors. Finally, the so-called a posteriori position of the lamp is estimated by the LS method: ˆ B [k] = argminq q
1 (¯ si [k] − yi (q; ri ))2 . 2 i∈SS [k]
3.3 The Heuristic Sensor Selection Method
61
The system keeps estimating the lamp using the selected sensors, until a certain time, ˆ B [k + i], has a large error, at which k + i, when the a posteriori position estimate, q ˆ B [k + i] is time we restart from the a priori estimation again. The error bound of q estimated by its associated FIM, MB [k + i]. AB [k] = ∇q y|q=ˆqB [k] , MB [k] = AB [k]Σ−1 [k]ATB [k].
(3.9)
In fact, if the target is moving smoothly, we can also restart from the sampling rate optimization. That is, we just choose another three proper sensors to observe the lamp, instead of turning on all 15 sensors and then selecting three sensors out of the 15. This strategy is more energy efficient. However, this approach assumes a limit on the dynamics of the target, i.e., the target cannot move too fast. In the current scenario, the dynamic of the target is assumed to be unknown. In the worst case, a target may shift from one side of the field of view to the other side in no time. The above strategy, although it may cost more energy, is capable of capturing the target’s position under the worst case, when the lamp is suddenly shifted from one side to the other side. For some applications, since the target is moving smoothly, it is desirable to consider target dynamics for better estimation precision.
3.3.2 Pseudocode of the hCOSS Algorithm Definition 3.3 is formulated as a convex optimization problem, which can be solved using a multiplicative algorithm that updates pi [k + 1] as pi [k]φi (p[k])/m, where φ(p[k]) = ∇p Ψ (M (p))|p=p[k] . It is proved that this method yields a minimum of the D-optimality criterion [80, 103]. We use this method as a part of our hCOSS algorithm, which is listed as Algorithm 3.1. The computation of the algorithm is separated into the sensors and the sink. Before we explain the mathematic foundation of Algorithm 3.1, let us review its structure in brief. In fact, the eCOSS algorithm shares the same structure with hCOSS. The major part of the algorithm is executed on the sink node, while the sensor nodes are responsible for simple computations, which are presented in “Part 1: onsensor computation” of Algorithm 3.1. The sensor node starts from a listening mode. After it receives a command message from the sink node, it interprets the sampling period, tS , and the sample number in each period, ni , from the message and starts measuring physical quantities accordingly. Once a sampling period is over, the sensor node averages all the data that it collected during the past period, and sends the average value s¯i to the sink. Each sensor waits for a small random time before sending the communication package to the sink. Thus, the possibility of package collision is reduced. If a packet is lost, no additional packet will be transmitted. This simple collision avoidance mechanism is easy to implement, yet sufficient for
62
3 Sensor Selection Methods for Cyber-physical Systems
our application. Recall that only the averaged value is transmitted, in order to save the valuable energy resource. The sink node has two modes: the selection mode and the tracking mode. In the selection mode, the sink node broadcasts the configurations, i.e., ni and tS , to the sensor nodes. After one sampling period, the sink node receives the sensor data s¯i , based on which the sink node estimates the parameters using the standard nonlinear LS method, and the result is obtained as q ˆA . Next, the sink node solves the sampling rate optimization problem by a multiplicative method, which is presented in Theorem 3.5. The constant 1 will be discussed later. At this moment, we just need to know that the output of the algorithm is the normalized sampling rate vector p[k]. The sensors with sampling rates higher than hS are selected to continuously estimate the physical quantities and transmit the results to the sink in the following iterations. After converting the normalized sampling rate, p[k], to the sample numbers, n[k], the sink broadcasts n[k], and tS to each sensor node. After broadcasting, the sink node transfers to the tracking state. In this state, the sink node collects the sensor
Algorithm 3.1 The hCOSS algorithm Part 1: on-sensor computation. Receive tS and ni [k] from the sink; Collect ni [k] samples in the time slot tS , and s¯i [k] is the average of those samples; Wait for a small random time, then send s¯i to sink; Part 2: on-sink computation. Initially pi = 1/n and State←selection; if State=selection then Send ni [k], tS to the i-th sensor; Wait for time tS , collect s¯i [k]; ˆA [k]; Estimate parameter q∗ by the LS method, and the result is q while true do if φi (p[k + 1]) < m + 1 , i = 1, 2, · · · , n then exit the while loop; else ; pi [k + 1] = pi [k] φi (p[k]) m end end if pi [k + 1] ≥ hS then ni [k + 1] = round(pi [k + 1] × tS ) else ni [k + 1] = 0; Send n[k + 1] to the proper sensors and State←tracking; end if State=tracking then while true do Wait for time tS , collect sensor reading s¯i [k], i ∈ SS [k]; ˆB [k] and its associated Estimate parameter q∗ [k] by the LS method. The result is q FIM is MB [k]; if Ψ (MB [k]) is big then State←selection, exit the while loop; end end
3.3 The Heuristic Sensor Selection Method
63
data and fits parameters recursively. The estimated tracking error is characterized by MB . If Ψ (MB ) is too big, the current selected sensors do not provide enough tracking precision and the sink node switches back to the selection mode. The eCOSS algorithm shares the same structure as the hCOSS algorithm. Most operations of the eCOSS and hCOSS algorithms are the same, except that a convex elimination module is introduced after the multiplicative method.
3.3.3 Analysis of the hCOSS Algorithm Although hCOSS is a heuristic algorithm, it is actually supported by theory. The algorithm is titled heuristic since there is no guarantee that the algorithm will select a number of sensors within Carath´eodory’s limit. However, the analysis shows that a solution exists. That is, there exists a solution for the sampling rate optimization problem (Definition 3.3) such that the number of positive sampling rate entries is no more than Carath´eodory’s limit. Although it is very fast, the hCOSS is not the most rigorous approach. In the following sections, we will present the eCOSS algorithm and prove that it can find the solution. Now, we need to prove the existence of the solution. Let us start from some definitions. The definitions with citations are adopted from the literature with some notation adjusted following the conventions of this book. Definition 3.4 (Convex set [150, p. 557]). Let S be a subset of Rn . We say that S is a convex set if αx + (1 − α)y ∈ S, ∀x, y ∈ S, ∀α ∈ [0, 1]. Definition 3.5 (Convex function). A function f : S → R is called convex over a convex set S if f (αx + (1 − α)y) ≤ αf (x) + (1 − α)f (y), ∀x, y ∈ S, ∀α ∈ [0, 1]. The function is called strictly convex if the ≤ sign is replaced by <. Definition 3.6 (Convex hull [80, p. 264]). The convex hull of a set SC , denoted conv(SC ), is the set of all convex combinations of points in SC conv(SC ) = {
n i=1
ci xi |xi ∈ SC , ci ≥ 0,
n
ci = 1}.
i=1
Definition 3.7. The solution domain is SP , which is a canonical simplex defined as SP = {p|p ∈ Rn , 1T p = 1, p ≥ 0}. Definition 3.8. Define the set of all possible FIM with the uniformed sampling rate as the set SM . That is, given a ∈ Rm and σi > 0,
64
3 Sensor Selection Methods for Cyber-physical Systems
SM = {M|M =
n i=1
pi σi−2 ai aTi , p ∈ SP }.
Next, we present an important result, which is the foundation of the hCOSS method. The notation 0 is an all-zero column vector. Lemma 3.1 For the sampling rate optimization problem in Definition 3.3, if rank(A[k]) = m and rank(M[k]) = m, then the gradient is not zero inside Sp . That is, ∇p Ψ (M[k]) = 0, ∀p ∈ SP .
Proof. We are going to show that ∇p Ψ (M ) = 0 when i pi = 1, and p is finite. Then, it is impossible for the gradient to be 0 within the simplex 1T p = 1, p 0. For simplicity, we drop the time index [k] in this proof. Define ai as A = [a1 , a2 , · · · , an ]. Recall that A ∈ Rm×n , and A is defined in (3.5). So n Ψ (M) = − ln det( pi σi−2 ai aTi ). i=1
Recall that σi > 0 and M is full rank. So, we have ∂Ψ (M) = −trace(M−1 σj−2 aj aTj ), ∂pj ∂Ψ (M) = −aTj M−1 σj−2 aj , ∂pj ⎤ ⎡ −σ1−2 aT1 M−1 a1 ⎢ −σ −2 aT2 M−1 a2 ⎥ 2 ⎥ ⎢ ∇p Ψ (M) = ⎢ ⎥. .. ⎦ ⎣ . −σn−2 aTn M−1 an
We now show that there exists some positive ∂Ψ (M)/∂pj . First, M is positive definite. To show this, we choose any v ∈ Rm , v = 0, and multiply by v on both sides of M: vT Mv = σi−2 pi (vT ai )2 . i
Since rank(A) = m, or full rank, we have null(AT ) = ∅. Thus, there does not 0, such that vT ai = 0 for ∀i ∈ [1, n]. Or, vT ai = 0 for any exist a v ∈ Rm , v = ai . In addition, since i pi = 1, and pi ≥ 0, there is at least one positive pi . That is, pk > 0. Then pk (vT ak )2 > 0. For other i = k, we have So,
pi (vT ai )2 ≥ 0.
3.3 The Heuristic Sensor Selection Method
i
65
σi−2 pi (vT ai )2 > 0.
T
Thus, v Mv > 0, i.e., M is positive definite. Second, it is known that the inverse of a positive definite matrix is also positive definite. A matrix Q is positive definite if and only if trace(QS) > 0 for all nonnegative-definite and nonzero matrix S. Since rank(A) = m, there exists a nonzero vector aj . For the positive definite matrix M, we have trace(σj−2 M−1 aj aTj ) > 0. In summary, not all entries of ∇p Ψ (M) are equal to 0. Thus ∇p Ψ (M) = 0. Remark. The geometric interpretation is shown in Fig. 3.9. In this figure, each FIM is associated with a point in a 3D vector space. It is easy to see that the FIM is symmetric. Therefore, a two by two FIM contains three unique entries. Given four sensor’s measurements, with each one associated with an FIM named Mi , which is defined as Mi := σi−2 ai aTi , then the convex combination of them is a convex hull, as shown in Fig. 3.9. Their convex combination, M, can also be considered as a point in the 3D space. If there exists a global minimum point with gradient equal to 0 (stationary point), which is marked as the black ball in the figure, Lemma 3.1 says that the global minimum point is out of the triangle, which is the same as Fig. 3.9. In the figure, the contours around the stationary point indicate the places where the function takes the same value. The darker color indicates smaller function values. It is easy to see that the minimal value within the triangle must take place on the boundary of the triangle. Actually, for our SSP, the stationary point (∇p Ψ = 0) is infinitely far away, where p → ∞ and M−1 → 0. In other words, the estimation error is totally rejected if we take an infinite number of samples. It is easy to see that the minimum value on the triangle must take place on the boundary of the triangle. While the 3D example is straightforward, we need to prove that such relationships are still true for an arbitrary high dimension. The requirement on nonsingular A is easy to judge. For example, given the energy model, we have y2 ai = ∇q yi = 2 i (ri − q). c1 The matrix A is not singular if the target and the sensors are not aligned on one line, where ri − q are in the same direction, and the sensor reading yi is positive.2 However the rank of M is not that easy to check before the optimization, since M depends on p, which is unknown until we run a sensor selection algorithm. The requirement on the nonsingularity of M can be wavered if a proper method for the sampling rate optimization is chosen. In practice, yi should be much larger than 0 since ai should be bigger than the level of sensing noise.
2
66
3 Sensor Selection Methods for Cyber-physical Systems M 2 M 2
M M 44 ¯M ∗* M zz
M1
M 1
M
M 33
xx
yy
Fig. 3.9 A geometric interpretation of Lemma 3.1
Next, we claim that SM is convex for an arbitrary high dimension. If it is convex, Carath´eodory’s theorem is valid on the set. For presentation purposes, we consider matrices as if column vectors, because there are one-to-one mappings between a matrix and a vector. An easy mapping from a matrix to a column vector is to arrange all the columns of the matrix to 13 one vector. For example, the matrix can be mapped to this column vector 24 T 1 2 3 4 . Obviously, the reverse mapping exists. Therefore, the definition of convex set can be extended to S ∈ Rn×m . Lemma 3.2 SM is a convex set. Proof. We want to prove the following: if M(p1 ) ∈ SM , M(p2 ) ∈ SM , and ¯ = αM(p1 ) + (1 − α)M(p2 ), M ¯ ∈ SM , where α ∈ R, α ∈ [0, 1]. Define then M pT := αp1 + (1 − α)p2 .
3.3 The Heuristic Sensor Selection Method
67
If M(p1 ) ∈ SM and M(p2 ) ∈ SM , then we have ¯ = M
n i=1
pT (i) σi−2 ai aTi .
It is easy to see n
pT (i) = α
i=1
So, we have
n
p1(i) + (1 − α)
i=1 n
n
p2(i) .
i=1
pT (i) = α + (1 − α) = 1,
i=1
and pT (i) 0. ¯ ∈ SM . Thus, pT (i) ∈ SP . Following the definition of SM , we have M
Comparing the definitions of SM and that of the convex hull, it is easy to see that SM is a special convex hull, where a matrix belongs to the set SM must be symmetric, as it is a convex combination of ai aTi . Since SM is convex, Carath´eodory’s theorem is valid on the set. Theorem 3.2 (Carath´eodory’s theorem [104, p. 72]) Let S be a subset of Rn . Every element x in conv(S) can be expressed as a convex combination of no more than n + 1 elements of S. If x is on the boundary of conv(S), n + 1 can be replaced by n. Proof. This is an established result. One method of proof is shown in the mathematical background in Sect. 1.6. Remark. An illustration of Carath´eodory’s theorem in 2D domain is shown in Figure 3.10. In the figure, points A to D are 2D points within the same convex hull conv({A, B, C, D}). According to Carath´eodory’s theorem, no more than three of the support points A, B, C, D are required to produce any point in the convex hull. It is intuitive to see that point E can be expressed as a convex combination of points A, B, and D, since E is inside the triangle ABD. This convex combination may not be unique. The point E can also be expressed by points A, C, and D. Point F is on the boundary. According to Carath´eodory’s theorem, it can be expressed by no more than two points. It is easy to see that point F can be expressed by points A and B. We still need several theorems in order to prove that it is possible for the hCOSS algorithm to select sensors within Carath´eodory’s limit.
68
3 Sensor Selection Methods for Cyber-physical Systems
Fig. 3.10 An illustration of Carath´eodory’s theorem in a 2D domain
Theorem 3.3 (Convexity of the D-optimality criterion [103, p. 81]) The function Ψ : M → − ln det(M) is convex if M is non-negative definite and strictly convex if M is positive definite. Remark. This theorem indicates that the D-optimality criterion is convex in general. In the context of WSNs, it is reasonable to assume that the candidate sensors for the sensor selection algorithms always have nonzero outputs and A is full rank. Hereby, M is positive definite3 and the D-optimality criterion is strictly convex. A convex function on a convex domain has nice features, as revealed by the following theorem. Theorem 3.4 (Based on [150, p. 571]) If S ⊂ Rn is a convex set and g : S → R is a convex function, then a local minimum of g is also a global minimum. If in addition g is strictly convex, then there exists at most one global minimum of g. Remark. An illustrative example of the theorem is shown in Figure 3.9, where strictly convex function has a convex domain (the triangle plane). It is intuitive to see that the minimum of the function is unique and it is on the boundary of the convex hull. With a simple extension to the theorem, we can prove that the optimal FIM, M∗ , is unique. In addition, M∗ is on the boundary of a convex hull. For presentation purposes, let us define the following operators. (Refer to the stack variable in Chap. 2.) Definition 3.9. The operator stack(M) : M → v maps a symmetric matrix M to a column vector that stacks column-wise entries on or below the main diagonal of M. 3
In the proof of Lemma 3.1, we show that M is positive definite, under proper conditions.
3.3 The Heuristic Sensor Selection Method
69
For example, if M is a 3 × 3 matrix, then ⎤ ⎡ M(1,1) ⎢ M(2,1) ⎥ ⎥ ⎢ ⎢ M(3,1) ⎥ ⎥ = stack(M). ⎢ v=⎢ ⎥ ⎢ M(2,2) ⎥ ⎣ M(3,2) ⎦ M(3,3) It is easy to see that the stack(M) operator is a bijection [101, p. 860] if M is symmetric, thus the inverse operator exists, which is also a bijection. Definition 3.10. The operator unstack(v) : v → M is the inverse operator of stack(M). Similar to the above example, the following example illustrates the unstack(v) operator. ⎡ ⎤ v(1) v(2) v(3) M = ⎣ v(2) v(4) v(5) ⎦ = unstack(v). v(3) v(5) v(6) Remark. If v = stack(M), obviously, M = unstack(v) = unstack(stack(M)), and v = stack(unstack(v)). Since v contains all the unique entries of M without redundancies, v is actually identical to M, in terms of mathematical properties. Obviously, if M is a m by m matrix, then v is a column vector with m(m + 1)/2 entries. Notice that the dimension of stack(M) is generally larger than that of ai . As is shown in this chapter, if stack(M) can be represented as a convex combination, which is a class of linear combinations of ai , it is easy to prove that even less sensors are required for the estimation. Unfortunately, remind that the mapping from ai to M is nonlinear and there are no analytical results for the mapping within the current theoretical framework. The multiplicative updating law, which is proposed years ago [151], in hCOSS can find the optimal solution, due to the following theorem. Theorem 3.5 (Based on p. 140 in [103] and p. 65 in [80]) The sequence {det(M[k])} in Algorithm 3.2 is nondecreasing, where k is the number of iterations in the computation. That is lim det(M) = supp∈SP det(M), j→∞
where j is the iteration number. Remark. The constant 1 in Algorithm 3.2 is a small positive number defined by users. According to Theorem 3.5,
70
3 Sensor Selection Methods for Cyber-physical Systems
φi (p[j]) = 1. j→∞ m lim
In practice, the iterative computation should stop when φi (p[j])/m is close enough to 1. Obviously, a small 1 can result in a better approximation of the optimal FIM with more computation costs. If a Ψ (M) versus iteration number plot is available, such as Fig. 3.16, it is not hard to select a proper 1 , in the terms that the value of 1 does not change Carath´eodory’s limit. 1 should be small enough such that Ψ (M) is close to its limit. Meanwhile, the value should be large enough such that not too many iterations are required. The details are presented in the remark following Theorem 3.6. Considering our application, one more sensor is not of vital importance. Therefore, the 1 is considered as a tuning knob to tradeoff computation and precision, and it is not related to sensor selection itself. It is easy to see that Algorithm 3.2 is embedded in Algorithm 3.1. However, notice that the initialization of the sampling rate p[0] in the two algorithms is different. While Algorithm 3.2 only requires 1T p[0] = 1 and pi [0] ≥ 0, Algorithm 3.1 takes the averaged value, 1/n, as the initial sampling rate. Such an initial value in Algorithm 3.1 is necessary but not unique. As Corollary 3.1 suggests, given that A[k] is full rank, if the initial sampling rate is 1/n, then M[k] is also full rank. As an extension of Theorem 3.3, the following corollary is immediate. Corollary 3.1 In Algorithm 3.2, if A is full rank, then M[k] is also full rank, for k = 0, 1, · · · . That is, rank(M[k]) = m, where m is the number of parameters under estimation. Proof. Without loss of generality, we assume σi = 1. Indeed, if σi = 1, we can replace σi−1 ai by ai . Hence,
Algorithm 3.2 Multiplicative D-optimization method (p. 65 in [80], p. 140 in [103]) Define φ as
φ(p[k]) = ∇p Ψ (M(p))|p=p[k] ,
where M is the symmetric real matrix defined in Definition 3.3. • Choose any p[0] such that 1T p[0] = 1 and pi [0] ≥ 0. • At the jth iteration φi (p[j]) ; i = 1, · · · , n. pi [j + 1] = pi [j] m • Repeat Step 2. Stop the computation when φi (p[j]) < 1 + 1 ; i = 1, · · · , n, m where 1 is a small positive number.
3.3 The Heuristic Sensor Selection Method
M[k] =
71
n
pi ai [k]ai [k]T .
i=1
Review of Algorithm 3.2. Let us put the time index inside the angular brackets and the iteration numbers inside the brackets. At the kth time instance, we start from an initial value of the FIM, i.e., M[k](0), then update the FIM iteratively. Finally, M[k](j) is the estimate of FIM, where j is the iteration number as shown in Algorithm 3.2. For simplicity, we drop the time index, k, in the following proof. Recall that the initial sampling rate in Algorithm 3.2 is pi (0) = n1 . We obtain M(0) =
1 AAT . n
Next, we show that M(0) is positive definite. Assuming v is a nonzero vector and v ∈ Rm . The following is immediate: vT M(0)v =
n
1 T (v ai )(aTi v). n i=1
Since A is full rank, there must exist at least one nonzero ai . We have vT M(0)v > 0. Therefore M(0) is positive definite and all its eigenvalues are positive. That is λ1 > 0, λ2 > 0, · · · , where λi are the eigenvalues of M(0). Recall that for a real or complex square matrix, its determinant equals to the multiplication of all its eigenvalues. It is obvious that n λi > 0, det(M(0)) = i=1
so that M(0) is nonsingular. According to Theorem 3.5, Algorithm 3.2 is nondecreasing, therefore det(M(j)) ≥ det(M(0)) > 0, where j is the iteration number and j ≥ 0. In short, if A is full rank, M(0) in Algorithm 3.2 is full rank. Accordingly, all the M(j) matrices are full rank. Remark. The significance of Corollary 3.1 is that it constructs a connection between the sensor placement schemes and a necessary condition of applying the COSS algorithm. Think about the lamp tracking scenario in this chapter. From Definition 3.1 the similarity between light field gradient and the ith sensor’s sensitivity to the lamp, i.e., ai , is straightforward. If sensor data are nonzero and the light gra-
72
3 Sensor Selection Methods for Cyber-physical Systems
dients at the sensors are not aligned, Corollary 3.1 tells us that the COSS (or the multiplicative) algorithm will not generate a singular FIM during the computation. In this case, no exception handling in the code is required, which simplifies the implementation of the algorithm. In practice, we should check this necessary condition before executing the COSS algorithm, rather than developing a complex exception handling program for the algorithm. For the tracking application, sensors should not be placed in line. As a summary of the aforementioned theorems, the following theorem is immediate. Theorem 3.6 Following the notation of Definition 3.3, if rank(A) = m and n ≥ m(m + 1)/2 + 1 then there exists one and only one M∗ [k] such that M∗ [k] = min Ψ (M(p[k])), where p ∈ Sp . p
Under the same conditions, Algorithm 3.1 finds an optimal sampling rate p ˆ[k], such that M∗ [k] = M(ˆ p[k]). ˜ that satisfies In addition, there exists a p ˜ ∈ Sp , M∗ [k] = M(˜ p[k]), where p ˜ has no more than and p
m(m+1) 2
nonzero entries.
Proof. Without loss of generality, we ignore iteration index [k] in this proof. Given rank(A) = m, A is full rank. Based on Corollary 3.1, M in Algorithm 3.1 is also full rank. In the proof of Lemma 3.1 it is shown that M is positive definite when A and M are full rank. Thus M is positive definite in the algorithm. According to Theorem 3.3, when M is positive definite, the function Ψ : M → − ln det(M) is strictly convex. As Lemma 3.2 shows, the set SM is convex. Let us denote Mi = σi−2 ai aTi ,
(3.10)
and v = stack(M), vi = stack(Mi ). Then, the convex combination of Mi , which is defined in (3.10), can be presented in a vector space
3.3 The Heuristic Sensor Selection Method
v=
73 n
pi vi ,
i=1
where
v, vi ∈ Rm(m+1)/2 .
According to Theorem 3.4, the optimal solution, denoted by v∗ , is unique. In other words, there is one and only one FIM, M∗ , as the solution, where M∗ = unstack(v∗ ). In addition, Theorem 3.5 proves that Algorithm 3.2 (Algorithm 3.1) p). find an optimal sampling rate p ˆ, such that M∗ = M(ˆ From Theorem 3.4 and the fact that SM is convex (Lemma 3.2), it follows that M∗ must be on the boundary of SM . Remind that the support points in SM has m(m + 1)/2 unique entries, i.e., stack(Mi ) ∈ Rm(m+1)/2 . Based on Carath´eodory’s theorem (Theorem 3.2), the FIM, M∗ , can be expressed as a convex combination of no more than m(m + 1)/2 support points, which are Mi (as defined in (3.10)). In other words, there exists at least one p ˜ with no more than m(m + 1)/2 nonzero entries such that M∗ = M(˜ p). Remark. First, let us clarify the term heuristic. The hCOSS method selects the sensors heuristically. Nevertheless, the sampling rate generated by the hCOSS is optimized and there is no heuristic design in this regard. Second, the solution is optimal in terms of mathematical optimization of the problem defined in Definition 3.3, which is a mathematical abstraction of the physical SSP and some approximations (cf. Sect. 3.3.1) are introduced. Therefore, although the solution is the optimal solution of the mathematic problem, we do not claim its optimality for the physical problem. Third, numerical errors in the computation of optimization algorithms are unavoidable but this should not be confused with optimality. If the outputs of an algorithm converge to the optimal solution, we ignore the imprecision due to the roundoff errors of the computer systems and claim the algorithm is “optimal.” Fourth, let us review the multiplicative method. In practice, an infinite number of iterations are not possible. Thus, practical solutions are always very close to the boundary but not perfectly on the boundary. According to Theorem 3.6, if the solution is perfectly on the boundary, no more than three sensors are required for a 2D tracking system, where m = 2. If the solution is close to the boundary but still within the simplex, no more than four sensors are selected for the same scenario. Recall that Theorem 3.2 predicts that one more support point is required if the element, i.e., the desired M, is inside the simplex. Normally, in our tracking experiments, we observed that three sensors usually have high sampling rates (more than 0.2, or 20% of the total sampling rate), one sensor’s sampling rate is in the middle, and the rest of the sampling rates are much smaller. If four sensors are selected, we can tune our system to select no more than three sensors by increasing hS or decreasing 1 . The tuning drives the solution closer to the boundary of the simplex, thus less sensors may be selected. The tuning is not difficult in practice. Recall that some published results [141] are consistent with our analysis (see Sect. 1).
74
3 Sensor Selection Methods for Cyber-physical Systems
Fifth, Algorithm 3.2 is fast and memory efficient. The the speed of the Algorithm is discussed [103, pp. 129-169]. Our experimental results are presented in Sect. 3.5. As a method specially design for D-optimization, Algorithm 3.2 is simpler and faster4 than the generic nonlinear optimization method, such as the one in R MATLAB optimization toolbox [152]. Sixth, a further study of Theorem 3.6 indicates that the key feature of the hCOSS algorithm is not the D-optimality criterion, nor the multiplicative algorithm. As we see in the proof of Theorem 3.6, the details of the multiplicative method are not used. The reason why the COSS can select sensors is due to that fact that Ψ (M) is a convex function on a convex set. Recall that D-optimality criterion has similar properties to the A- and E-optimality criteria. In this chapter, we focus on the D-optimality criterion. In addition to the advantages of D-optimality that we list after Definition 3.3, the solution of the optimization, i.e., the multiplicative method, is simple and fast. It has the potential to be implemented on low-cost sensor nodes, where computation resources are very limited. A necessary condition for the sensor selection algorithm is sufficient sensor density. If the sensors are deployed so sparsely that not enough sensors can detect the target, then the sensor selection is unnecessary. Under those cases, all the sensors that detect the target should be selected. Normally, WSNs should have rather high densities [11], where carefully selected sensors provide high quality data with limited energy costs. As an extension of Theorem 3.6, we hence give a theorem on the requirements of sensor deployment density. Theorem 3.7 If each point sensor detects targets in its vicinity with a radius of r, sensor deployment density is ρ, and the energy cost of turning on all the sensors is eA , then the minimal sensor density required by the hCOSS algorithm is ρL , and its associated energy requirement is eS , which are given as follows: m(m + 1) , 2πr2 m(m + 1) eA , eS = 2πr2 ρ
ρL =
where m is the number of parameters under observation. Proof. When a target appears, all the sensors within its vicinity will detect it. The detection range is r. Based on Theorem 3.6, the COSS algorithm selects no more than m(m + 1)/2 sensors. Thus, within the disc with a radius of r, we need to deploy at least m(m + 1)/2 sensors. The area covered by the disc is πr2 . It is easy to see that the minimal sensor density is ρL with ρL = m(m+1) 2πr 2 . Assume there are n sensors deployed inside the square s. Thus, the number of sensors being selected by 4
According to our simulations, the speed of Algorithm 3.2 could be two or three orders of magnitude faster than that of nonlinear optimization methods.
3.4 The Elimination-Based Sensor Selection Method
75
the COSS algorithm is ρL s. Assuming the energy cost is uniformly spread among all the sensors, we have eS = (ρL · s · eA )/n. Thus, eS = (m(m + 1) · eA )/(2πr2 ρ).
Remark. This theorem gives another necessary condition for the hCOSS algorithm, which serves as guidance for sensor deployment. That is, the sensor density must be no less than ρL . For the lamp tracking scenario, it is obvious that no meaningful estimate will be available if the lamp is out of the observation domain, i.e., it is too far away, while the sensor data is virtually zero at the time. In this case, increasing sensor density to higher than ρL does not help. On the other hand, if the sensor density is less than ρL , then the tracking precision cannot be guaranteed when the lamp moves to certain points in the observation domain. What is r in practice? r is the detection range of a sensor and should be found based on data sheets for the sensor. Recall that the polynomial model in Definition 3.2 has a constant yL . From the sensor characteristics plot, such as Fig. 3.8, it is easy to find the distance that is associated with yL . This distance is the maximum allowed r. If we define an energy saving factor as 2πr2 ρ eA , = eS m(m + 1) then it is clear that the larger the r and ρ, the more energy saving is introduced.
3.4 The Elimination-Based Sensor Selection Method 3.4.1 Motivation The hCOSS algorithm can find the optimal FIM and represent the FIM with a small set of sensors. However, there is no guarantee that the number of selected sensors is equal to or less than Carath´eodory’s limit (cf. Sect. 3.2.1), which is m(m + 1)/2 + 1 for the problem in Definition 3.3. To select sensors within Carath´eodory’s limit, we propose an eCOSS algorithm, which is actually an extension of the hCOSS algorithm. On one hand, the two algorithms share the same structure. On the other hand, a convex elimination module is introduced into the eCOSS, in order to make sure that the number of selected sensors is no more than Carath´eodory’s limit. The convex elimination algorithm iteratively “removes” unnecessary sensors from the set of selected sensors, until the number of selected sensors is within Carath´eodory’s limit. This pruning process is rigorously proved. In addition, for the applications of WSN, the proposed algorithm has the following desirable features: • The proposed convex elimination algorithm is fast in the sense that the computation time is comparable with that of the hCOSS. As shown in Sect. 3.5 and
76
3 Sensor Selection Methods for Cyber-physical Systems
Sect. 3.7, eCOSS is appropriate for many real-time applications and can strictly select the sensors. • As an algebraic approach, the proposed convex elimination algorithm is suitable for arbitrary high order. Actually, it is possible to design another elimination method only based on 2D or 3D geometries. Nevertheless, the disadvantages of geometric approaches are the difficulties to generalize the methods to estimate arbitrarily large numbers of parameters. If we want to estimate the position (x and y values) and speed (x˙ and y) ˙ of a target on a 2D plane, then there are four parameters under observation, i.e., m = 4. The corresponding Carath´eodory’s limit is m(m + 1)/2 + 1 = 11 sensors. It is hard, if not impossible, to select the 11 sensors based on geometries.
3.4.2 An Intuitive Interpretation Before presenting the convex elimination algorithm, we give an intuitive interpretation on the problem. As the remark of Lemma 3.1 points out, the convex combination of several vectors, which are called support points, is a vector in the convex hull defined by those support points. In 2D space, the convex combination has a geometric interpretation, which is illustrated in Figure 3.11. Since point F is inside the convex hull of the set of support points {A, B, C, D, E, F, G}, the position of F can be written as the convex combination of the coordinates of A, B, C, D, E, F, G. However, according to Carath´eodory’s theorem, in 2D scenarios, no more than three support points are required. In this case, G can be represented by points A, D, F. Notice that the solution is not unique. G can be represented as a convex combination of points A, E, F, also. The mission of the convex elimination, in this example, is to find a triangle that contains the point G. Specifically, a line (or a point) is considered as a degenerated triangle.
3.4.3 Problem Formulation To our best knowledge, the convex elimination problem has not been discussed in the literature. For convenience, we introduce a new math symbol k and define some notation as follows: Definition 3.11 (Math symbol k ). We say a real vector v ∈ Rm is “positive semi-definite of order k” and denote it as v k 0, if every entry of the vector is non-negative and at least k entries of v equals 0, where k is a non-negative integer number and m ≥ k. Remark. Our proposed symbol, k , looks similar to the symbol of generalized inequalities in some publications, which is denoted as v K y in some work [149,
3.4 The Elimination-Based Sensor Selection Method
77
G
Fig. 3.11 Geometric interpretation of convex elimination
p. 265, p. 698]. For generalized inequalities, K is not an integer number, but a convex cone, which is not related to the number of zero entries of vector v. Another related symbol is . See Sect. , if v 0 vi ≥ 0. Thus equals 0 . Hence if v k 0, then v l 0 for all l ≤ k, where l and k are non-negative integers. For example, if vector ⎡ ⎤ 1 v = ⎣2⎦, 0 then the following relations hold • v0 • v 0 0 • v 1 0 On the contrary, v 2 0 is not true.
In addition to the symbol, the following notation is used in the problem formulation.
78
3 Sensor Selection Methods for Cyber-physical Systems
• B is the matrix of n support points. Each support point is a column vector with l rows, with the ith support point denoted as bi . Thus B ∈ Rl×n , and B = b1 b2 · · · bn . In the eCOSS algorithm, bi is stack(Mi ). • vB is the convex combination of the support points. That is vB = B p, where p 0 and 1T p = 1. Ignoring the time index, in the eCOSS algorithm, vB is stack(M∗ ). • p is the weight vector of each support point, which is the sampling rate in the eCOSS algorithm. Specifically, pA is the optimal sampling rate for the problem in Definition 3.3, i.e., the p ˆ in Theorem 3.6. • n is the number of support points, i.e., the number of sensors. • l is the dimension of the vector space that B and vB belong to. In the context of sensor selection l = m(m + 1)/2 + 1, where m is the number of parameters under estimation. • 2 is a small positive constant used in the convex elimination algorithm. Now we formulate the convex elimination problem using the above symbol and notations. Definition 3.12 (Convex elimination problem). Given pA ∈ Rn a solution of the following convex combination: vB = B pA , pA 0, 1 pA = 1, T
where vB ∈ Rl and B ∈ Rl×n are known, find a weight pB such that vB = B pB , n−l−1 0, pB 1T pB
=
1.
Remark. Although the formulation of the convex elimination problem looks like a convex optimization problem, it is different. Instead of constructively finding a weight vector, the key challenge is to “eliminate” unnecessary entries of an existing weight vector pA .
3.4.4 Convex Elimination Algorithm The pseudocode of the proposed convex elimination method is listed in Algorithm 3.3, where the function “find(p > 2 )” returns the indices of those p entries that are larger than 2 . For convenience, the vector v is also considered as a set.
3.4 The Elimination-Based Sensor Selection Method
79
Hence, “j ∈ v” suggests that the variable j is the same as one of the entries of the vector v. Finally, the “:” signs are used in the subscripts to indicate the range of indices. For example, N(:,i) is the ith column. The transform matrix T is defined as
−1T T= , I where I is an identity matrix.
3.4.5 Analysis of Convex Elimination Algorithm Now, we analyze the proposed convex elimination algorithm. Theorem 3.8 Following the notation of Definition 3.12, if n > l+1 and rank(B) = l, Algorithm 3.3 finds at least one solution of the convex elimination problem in the definition. Proof. Given the inputs, B and pA , we have the following: vB = B pA , 1 pA = 1, T
pA 0, B ∈ Rl×n , rank(B) = l, pA ∈ Rn . Since the transform matrix T is defined as ⎡ ⎤ −1 −1 · · · −1 ⎢ 1 0 0 ⎥ ⎢ ⎥ ⎢ 0 1 0 ⎥ T=⎢ ⎥, ⎢ ⎥ .. ⎣ ⎦ . 0 0 1 we have B T = [b2 − b1 b3 − b1
· · · bn − b1 ].
Because rank(B T) ≤ l, ¯ such that and n > l + 1, there exists a nonempty null space N ¯ := null(B T), N and
80
3 Sensor Selection Methods for Cyber-physical Systems Algorithm 3.3 Convex elimination algorithm Input: B, 2 and pA Output: pB p = pA ; N = T · null(B · T). So N ∈ Rn×k ; for i=1:k do The indices of all significant positive entries of p is the vector v. That is, v=find(p > 2 ); uj = pj /ni,j , for each j ∈ v; uS is the smallest uj , where j ∈ v. If there are more than one minimum values, uS is one of them; Let Z be an identity matrix of k rows by k columns; Update the Z matrix by Z(i,i+1:k) = −N(i,i+1:k) /uS ; N = N · Z; p = p − uS · N(:,i) ; end pB = p;
¯ ∈ R(n−1)×k , N where k is a positive integer and k = n − 1 − rank(B T), which indicates k ≤ ¯ is n n − l − 1. That is, if the ith column of matrix N ¯ i , then we have n−1
n ¯i(j) (bj+1 − b1 ) = 0,
j=1
i = 1, 2, · · · , k. According to Algorithm 3.3, matrix N is ¯ = T null(B T). N=TN We have n
ni(j) bj = 0.
j=1
In fact, ni(1) = −
n−1
n ¯i(j) ,
j=1
ni(l) = n ¯ i(l−1) , l = 2, · · · , n. In summary, the constructed N matrix has the following properties:
3.4 The Elimination-Based Sensor Selection Method n
81
(3.11)
ni(j) bj = 0,
j=1 n
(3.12)
ni(j) = 0,
j=1
i = 1, 2, · · · , k. For real numbers c1 , c2 , · · · , ck , we have vB =
n
pA(i) bi −
i=1
n k
cj nj(i) bi .
i=1 j=1
The key point of the algorithm is to find a p such that p=
n
pA(i) −
i=1
n k
cj nj(i) ,
i=1 j=1
and many entries of p are zeros. The process is achieved by k iterations, where k is the number of columns of N. In the first iteration, we choose c1 = α1 , c2 = c3 = · · · = ck = 0, where α1 is defined as α1 = min { 1≤j≤n
α1 =
pA(j) : n1(j) > 0}, n1(j)
(3.13)
pA(w1 ) , n1(w1 )
where w1 is the index that satisfies (3.13). Now we have vB =
n i=1
pA(i) bi − α1
n
n1(i) bi .
i=1
For presentation purposes, introduce notation for the weight of the convex combination, p1 , which is defined as p1 := pA(i) − α1 n1(i) . It is easy to see that every entry of p1 is non-negative, due to the following: • If n1(j) ≤ 0, since α1 > 0, we have p1(j) ≥ pA(j) ≥ 0. • For the w1 th entry, p1(w1 ) = 0. Recall that w1 is defined in (3.13). • For other positive entries, p1(i) , p1(i) ≥ p1(w1 ) , hence p1(i) ≥ 0.
82
3 Sensor Selection Methods for Cyber-physical Systems
Thus for all i = 1, 2, · · · , n, we have p1(i) ≥ 0,
(3.14)
and p1 has at least one zero entry. According to our notation, p1(w1 ) = 0. Due to (3.11) and (3.12), we have B p1 = vB , 1T p1 = 1T pA = 1. Together with (3.14), p1 is a weight for the convex combination. We have eliminated one or more support points in p1 . Notice that α1 always exists. Based on the definition of null space, n1 cannot have only zero entries. In addition, since 1T n1 = 0, the vector n1 has at least one positive entry, which guarantees the existence of α1 . Now, we update the null space matrix N to make sure that the w1 th entry (one of the zero entries) of the weight vector will still be a zero entry in the following elimination procedure. Since the linear combination of the columns of N matrix is still in the null space, we construct a Z matrix as ⎤ ⎡ n2(w1 ) n3(w1 ) n 1) − n1(w · · · − nk(w 1 − n1(w 1(w1 ) 1) 1) ⎥ ⎢0 1 0 ··· 0 ⎥ ⎢ ⎥ ⎢0 0 1 ··· 0 Z=⎢ ⎥. ⎥ ⎢. ⎦ ⎣ .. 0
0
0
···
1
Similar to Gaussian elimination, after replacing N by N Z, the entries in the second to the kth columns of the w1 row are eliminated. That is, the updated N matrix has the following structure: ⎡ ⎤ ··· ⎢ .. ⎥ ⎢ . ⎥ ⎢ ⎥ ⎢ 0 0 0 · · · ⎥ ← w1 th row ⎢ ⎥ ⎥ N=⎢ , (3.15) ⎢ ···⎥ ⎢ ···⎥ ⎢ ⎥ ⎢ . ⎥ ⎣ .. ⎦ ··· N = n1 n2 n3 n4 · · · , where the symbol denotes a real number.
3.4 The Elimination-Based Sensor Selection Method
83
If k = 1, i.e., the null space has only one column, the elimination is finished. Otherwise, we update p1 in the second iteration. This time, we choose c1 = 0, c2 = α2 , c3 = · · · = ck = 0, where α2 = min { 1≤j≤n
α2 =
p1(j) : n2(j) > 0} n2(j)
(3.16)
p1(w2 ) . n2(w2 )
Similar to w1 , w2 is the index that satisfies (3.16). Following the logic that we used to prove the existence of w1 , we can prove that w2 exists. In addition, from the structure in (3.15) we know that n2(w1 ) = 0, thus w1 = w2 due to (3.16). In summary, if we define the new weight vector p2 as p2 = p1 − α2 n2 , since n2(w1 ) = p1(w1 ) = 0, p2(w1 ) = 0. There are at least two zero entries in p2 , with indices w1 and w2 . To update N, we define ⎡
10 0 ··· 0 nk(w2 ) 2(w2 ) ⎢0 1 −n · · · − n1(w2 ) n1(w2 ) ⎢ ⎢ 1 ··· 0 Z = ⎢0 0 ⎢. ⎣ .. 00
0
···
⎤ ⎥ ⎥ ⎥ ⎥. ⎥ ⎦
1
Update N by N ← N Z, such that N has the following structure: ⎡ ⎤ ··· ⎢ .. ⎥ ⎢ . ⎥ ⎢ ⎥ ⎢ 0 0 0 · · · ⎥ ← w1 th row ⎢ ⎥ ⎥ N=⎢ , ⎢ ···⎥ ⎢ 0 0 · · · ⎥ ← w2 th row ⎢ ⎥ ⎢ . ⎥ ⎣ .. ⎦
(3.17)
··· The third column of N in (3.17) has at least two zero entries. We repeat the elimination procedure until at least k entries of the weight vector are 0.
84
3 Sensor Selection Methods for Cyber-physical Systems
3.4.6 Examples In order to clarify Algorithm 3.3 and the associated proof, several numerical examples are given in this section. Example 3.1 is associated with Fig. 3.12. In this 2D example, there are six points on a plane. Hence, l = 2 and n = 6. Example 3.1. Assume the coordinates of the support points are as follows:
0.8699 0.4442 0.9517 0.2473 0.1879 0.4093 B= . 0.7694 0.6206 0.6400 0.3527 0.4906 0.4635 If the first row of B is the x coordinates of support points and the second row is the associated y coordinates, the support points are plotted in Fig. 3.12. A point, vB , inside the convex hull of those support points can be represented by a convex combination of the support points with the corresponding weight pA , where
0.5414 , vB = 0.5430 and
⎡
⎤ 0.2545 ⎢ 0.0296 ⎥ ⎢ ⎥ ⎢ 0.1309 ⎥ ⎥ pA = ⎢ ⎢ 0.2534 ⎥ . ⎢ ⎥ ⎣ 0.0729 ⎦ 0.2587
Obviously, 1T pA = 1 and pA 0. Recall that the targeted problem in Definition 3.12 is to eliminate nonzero entries of pA as much as possible. At the very beginning, N is computed based on B as ⎡ ⎤ 0.79025 0.06964 0.31241 ⎢ −0.48457 −0.63255 −0.35991 ⎥ ⎢ ⎥ ⎢ −0.51521 0.20881 −0.37064 ⎥ ⎢ ⎥. N=⎢ ⎥ ⎢ 0.63512 −0.19989 −0.26724 ⎥ ⎣ −0.15891 0.70295 −0.11925 ⎦ −0.26668 −0.14896 0.80464 Choosing the constant5 as
2 = 10−3 ,
then the vector v in Algorithm 3.3 that stores the positive entries is
1 v = find(pA > 2 ) = . 4 5
More comments on 2 are presented in Example 3.2.
(3.18)
3.4 The Elimination-Based Sensor Selection Method
85
0.8 bi 0.75
p Selected
0.7
0.65
0.6
0.55
0.5
0.45
0.4
0.35 0.1
0.2
0.3
0.4
0.5
0.6
0.7
Fig. 3.12 Select three support points out of six points
It is clear that
⎡
⎤ 0 ⎢ 0.18568 ⎥ ⎢ ⎥ ⎢ 0.29681 ⎥ ⎥ p1 = ⎢ ⎢ 0.048887 ⎥ , ⎢ ⎥ ⎣ 0.12407 ⎦ 0.34455
where the first entry is eliminated to 0. Following Algorithm 3.3, the Z matrix is ⎡ ⎤ 1 −0.088124 −0.39534 ⎣0 ⎦. 1 0 0 0 1 Replacing N by N Z, then we have
0.8
0.9
1
86
3 Sensor Selection Methods for Cyber-physical Systems
⎤ 0.79025 0 0 ⎢ −0.48457 −0.58985 −0.16835 ⎥ ⎥ ⎢ ⎢ −0.51521 0.25421 −0.16696 ⎥ ⎥ N=⎢ ⎢ 0.63512 −0.25586 −0.51833 ⎥ , ⎥ ⎢ ⎣ −0.15891 0.71695 −0.056431 ⎦ −0.26668 −0.12546 0.91007 ⎡
where the first entries of the second and third columns are both zeros. Hence, the zero entry of p1 is not changed when we compute p2 in the second iteration. In the second iteration, the 5th entry is eliminated to zero. Thus, ⎡ ⎤ 0 ⎢ 0.28776 ⎥ ⎢ ⎥ ⎢ 0.25282 ⎥ ⎢ ⎥. p2 = ⎢ ⎥ ⎢ 0.093164 ⎥ ⎣ ⎦ 0 0.36626 Accordingly, we have
⎡
⎤ 10 0 Z = ⎣ 0 1 0.078709 ⎦ , 00 1
and N is updated as ⎤ 0.79025 0 0 ⎢ −0.48457 −0.58985 −0.21477 ⎥ ⎥ ⎢ ⎢ −0.51521 0.25421 −0.14695 ⎥ ⎥. ⎢ N=⎢ ⎥ ⎢ 0.63512 −0.25586 −0.53847 ⎥ ⎦ ⎣ −0.15891 0.71695 0 −0.26668 −0.12546 0.90019 ⎡
Next, in the third iteration, we finally get a sampling rate within Carath´eodory’s limit: ⎡ ⎤ 0 ⎢ 0.37514 ⎥ ⎢ ⎥ ⎢ 0.31261 ⎥ ⎥ p3 = ⎢ ⎢ 0.31225 ⎥ . ⎢ ⎥ ⎣ ⎦ 0 0 That is, p3 is the solution and pB = p3 . Comparing pA , p1 , p2 , p3 , which is also called pB , it is clear the at least one more zero entry is introduced in each iteration until Carath´eodory’s limit is reached. Example 3.1 is good for illustrating the concept but not challenging enough, since the 2D scenario is intuitive and it is not very difficult to develop algorithms to cancel
3.4 The Elimination-Based Sensor Selection Method
87
unnecessary support points based on geometries. Notwithstanding the potentials for the geometry methods to process 2D and 3D cases, they can hardly be generalized to arbitrarily high dimension, if it is ever possible. This limitation is highly undesirable, since Theorem 3.6 suggests that the dimension for the convex elimination procedure depends on the number of parameters and the dimension could be much larger than three. To demonstrate the advantage of the proposed convex combination algorithm, we introduce Example 3.2, whose dimension is five. The proposed algorithm finds a weight within Carath´eodory’s limit in the example. Example 3.2. In this high-dimension example, l = 5 and n = 8. Given the coordinates of support points as B, where ⎤ ⎡ 0.1708 0.3651 0.4586 0.8729 0.8704 0.8903 0.1556 0.8159 ⎢ 0.9943 0.3932 0.8699 0.2379 0.0099 0.7349 0.1911 0.4608 ⎥ ⎥ ⎢ ⎥ B=⎢ ⎢ 0.4398 0.5915 0.9342 0.6458 0.1370 0.6873 0.4225 0.4574 ⎥ . ⎣ 0.3400 0.1197 0.2644 0.9669 0.8188 0.3461 0.8560 0.4507 ⎦ 0.3142 0.0381 0.1603 0.6649 0.4302 0.1660 0.4902 0.4122 The weight vector pA and the vB are as follows: ⎡ ⎤ 0.2182 ⎢ 0.0014 ⎥ ⎢ ⎥ ⎢ 0.0720 ⎥ ⎢ ⎥ ⎢ 0.0119 ⎥ ⎢ ⎥, pA = ⎢ ⎥ ⎢ 0.1677 ⎥ ⎢ 0.1573 ⎥ ⎢ ⎥ ⎣ 0.2379 ⎦ 0.1337 and
⎡
⎤ 0.5133 ⎢ 0.5072 ⎥ ⎢ ⎥ ⎥ vB = ⎢ ⎢ 0.4644 ⎥ . ⎣ 0.5605 ⎦ 0.3581
In the first iteration, the matrices are as follows: ⎤ ⎡ −0.19579 −0.28091 ⎢ −0.34029 −0.24835 ⎥ ⎥ ⎢ ⎢ 0.63603 −0.17184 ⎥ ⎥ ⎢ ⎢ −0.36044 −0.37832 ⎥ ⎥, ⎢ N=⎢ ⎥ ⎢ 0.3175 −0.32303 ⎥ ⎢ −0.39307 0.41956 ⎥ ⎥ ⎢ ⎣ 0.03027 0.52503 ⎦ 0.3058 0.45785
88
3 Sensor Selection Methods for Cyber-physical Systems
and
1 0.27018 Z= . 0 1
Hence, one entry of the weight vector is cancelled. We have ⎡ ⎤ 0.24032 ⎢ 0.039854 ⎥ ⎢ ⎥ ⎢ ⎥ 0 ⎢ ⎥ ⎢ 0.052678 ⎥ ⎢ ⎥. p1 = ⎢ ⎥ ⎢ 0.13181 ⎥ ⎢ 0.20178 ⎥ ⎢ ⎥ ⎣ 0.23443 ⎦ 0.099132 In the second iteration, N is replaced by NZ and the result is ⎤ ⎡ −0.19579 −0.3338 ⎥ ⎢ −0.34029 −0.34029 ⎥ ⎢ ⎢ 0.63603 −2.7756 × 10−17 ⎥ ⎥ ⎢ ⎥ ⎢ −0.36044 −0.47571 ⎥. N=⎢ ⎥ ⎢ 0.3175 −0.23725 ⎥ ⎢ ⎥ ⎢ −0.39307 0.31336 ⎥ ⎢ ⎦ ⎣ 0.03027 0.53321 0.3058 0.54047 The associated weight is ⎡
⎤ 0.30154 ⎢ ⎥ 0.10227 ⎢ ⎥ ⎢ 5.0908 × 10−18 ⎥ ⎢ ⎥ ⎢ ⎥ 0.13993 ⎢ ⎥. p2 = ⎢ ⎥ 0.17532 ⎢ ⎥ ⎢ ⎥ 0.14431 ⎢ ⎥ ⎣ ⎦ 0.13663 0 In this particular example, the small entries in N and p2 , −2.7756 × 10−17 and 5.0908 × 10−18 , are virtually zeros and they should be zeros in theory. The small numbers are introduced due to numerical noise. Remember that we choose 2 = 10−3 (cf. (3.18)) in Algorithm 3.3. Therefore, the algorithm is not sensitive to the noises. Since we execute the algorithm with double word length, the numerical noises are rather small, it is straightforward to choose the 2 : it should be a small positive number yet much larger than the level of the noise, which is 10−17 in our case. At this point, it should be clear that the proposed Algorithm 3.3 can eliminate unnecessary entries in the weight vector. Now, we study the speed of the algorithm.
3.4 The Elimination-Based Sensor Selection Method
89
As Example 3.3 suggests, slow elimination methods are not difficult to design. Nevertheless, fast computation is of vital importance for our applications. Recall that our ultimate long-term goal is to estimate parameters in real-time on sensor nodes, where computation powers are limited, cf. Sect. 3.1. One advantage of the Algorithm 3.3 is the computational speed. In Example 3.3 and Sect. 3.5, we present simulation experiments for Algorithms 3.2 and 3.3. Both algorithms share one common feature: they have alternative methods. However, the algorithms are chosen or proposed because they are fast and/or simple. Example 3.3. This example demonstrates the speed of Algorithm 3.3. In this 2D large-scale problem, there are 60 supporting points and 57 or more points are elimiR and executed on a 3 GHz nated. The testing program is implemented in MATLAB P4 PC with 1 Gb memory. After repeating the program several times, we observed that the execution time for this example is around 15 ms to 25 ms. One output of the simulations is shown in Fig. 3.13. 1 b
i
p Selected
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Fig. 3.13 Select three support points out of 60 points
For comparison purposes, we also designed Algorithm 3.4, which eliminates unnecessary support points based on standard nonlinear optimization techniques. The 3 of the input is a small positive number. Matrix B and vector vB follow the definition in Algorithm 3.3.
90
3 Sensor Selection Methods for Cyber-physical Systems
The way that Algorithm 3.4 works is straightforward. Since Theorem 3.6 guarantees that optimal FIM, M∗ , can be replaced by m(m + 1)/2 sensors and vB = stack(M∗ ), it is clear that n − l sensors can be eliminated. While the outer loop of Algorithm 3.4 eliminates one point in each iteration, the inner loop goes through each support point and checks if it can be eliminated, i.e., vB can be represented by a convex combination of the remaining points. Thanks to Theorem 3.6, one point can be eliminated in each iteration of the outer loop and a solution within Carath´eodory’s limit is achieved finally. However, solving the nonlinear optimization problem, i.e., minimize vB −BT p , is not trivial and takes much more computation. In practice, we found that Algorithm 3.4 is much slower than Algorithm 3.3. While it usually takes Algorithm 3.3 tens of milliseconds to process 60 sensors, Algorithm 3.4 could take more than 10 seconds to select sensors from no more than 10 sensors.
3.4.7 Pseudocode of the eCOSS Algorithm Including Algorithm 3.3 within the framework of Algorithm 3.1, we have the eCOSS algorithm, as shown in Algorithm 3.5. Notice that MA is defined in (3.7). As aforementioned, the structure of Algorithm 3.5 is similar to that of Algorithm 3.1. However, the variable hS in Algorithm 3.5 can be zero or positive real numbers. If hS = 0, the Algorithm 3.1 only provides a weight vector p. In this case, Algorithm 3.5 is almost “tuning-free.” Users only need to decide 1 in Algo-
Algorithm 3.4 A simple support-point-elimination method Input: B, vB and 3 Output: pB Let l and n be such that B ∈ Rl×n ; for i=1, · · · , (n-l) do for j=1, · · · , (n-i+1) do BT = B(:, 1 : j − 1) B(:, j + 1 : n − i + 1) ; Find a weight p such that min vB − BT p subject to :pi ≥ 0
i
pi = 1
if vB − BT p < 3 then next i else next j end end end pB = p;
3.4 The Elimination-Based Sensor Selection Method
91
Algorithm 3.5 The eCOSS algorithm Part 1: on-sensor computation. Receive tS and ni [k] from the sink; Collect ni [k] samples in the time slot tS , and s¯i [k] is the average of those samples; Wait for a small random time, then send s¯i to sink; Part 2: on-sink computation. Initially pi = 1/n and State←selection; if State=selection then Send ni [k], tS to the i-th sensor; Wait for time tS , collect s¯i [k]; ˆA [k]; Estimate parameter q∗ by the LS method, and the result is q Solve the sampling rate optimization problem in Definition 3.3 by Algorithm 3.2 and the result is p[k + 1]; if pi [k + 1] < hS then pi [k + 1] = 0 end B = stack(Mj1 ) stack(Mj2 ) · · · , where pj1 [k + 1], pj2 [k + 1], · · · , ≥ hS ; vB = stack(MA ); Let pA = p[k + 1] ; Eliminate unnecessary support points by Algorithm 3.3 and the output is pB ; n[k + 1] = round(pB × tS ); Send n[k + 1] to the proper sensors and State←tracking; end if State=tracking then while true do Wait for time tS , collect sensor reading s¯i [k], i ∈ SS [k]; ˆB [k] and its associated Estimate parameter q∗ [k] by the LS method. The result is q FIM is MB [k]; if Ψ (MB [k]) is big then State←selection, exit the while loop; end end
rithm 3.2 and 2 in Algorithm 3.3. As the remarks of Theorem 3.5 and Example 3.2 explained, the tunings on 1 and 2 are well guided and not difficult. Moreover, the number of selected sensors by eCOSS could be more than that of hCOSS. If hS > 0, Algorithm 3.2 is essentially a “filter” for Algorithm 3.3, in the sense that the sensors are eliminated firstly by Algorithm 3.2 and then by Algorithm 3.3. Hence, the workload on Algorithm 3.3 is reduced. In addition, the number of sensors selected by eCOSS is no more than that by hCOSS. More details are included in Sect. 3.5.
92
3 Sensor Selection Methods for Cyber-physical Systems
3.5 Simulations 3.5.1 Overview Simulation results are shown in Fig. 3.14 to Fig. 3.31, where we first present simulations for hCOSS and then comparisons for hCOSS and eCOSS. In short, although hCOSS does not have the rigorous theoretical foundation of eCOSS, the two have similar outputs in most cases. Considering the speed and simplicity of hCOSS, it could be a reasonable choice for many practical applications. For other critical applications, where the number of sensors selected must be tightly controlled, eCOSS provides reliable results with computation speed close to that of hCOSS. Both have the potential to achieve real-time sensor selection and parameter identification with limited computation resources. We first present simulations of hCOSS. In the simulations, 15 light sensors are spread 20.32 cm apart from each other. The ID of each sensor is shown in Fig. 3.15. The sampling period, tS , is 1 second, and the total sample number is 100. The signalto-noise ratio (SNR) is 8 dbm. The a priori position in the figure is qA . The a priori confidence ellipsoid is plotted based on MA , which is the FIM in (3.7) associated with qA . We follow the definition of confidence ellipsoid [149, p. 388] as {x|xT Mx ≤ 1}. The a posteriori position is qB , which is computed after sensor selection. It is clear that the a posteriori estimation is more precise in this case. The location error of the a priori estimation is 5.5883 cm, while the error of the a posteriori is 3.7749 cm. From Fig. 3.16 we see that the algorithm converges quickly. In this example, it only takes four iterations for the sampling rates to converge close enough to the optimal value. It took about 8 ms for the hCOSS algorithm to select sensors for a network with R and the execution time 60 sensors. The algorithm is implemented in MATLAB R is measured by the profile tool within MATLAB . This speed is enough for many real-time target tracking applications. Notice that the COSS (both hCOSS and eCOSS) algorithms do not require the sensors to be placed uniformly. Sixty sensors are randomly placed for the example in Fig. 3.19. In this example, the positioning error of the a priori estimate is 1.7038 cm and that of the a posteriori estimate is 1.6193 cm. The determinants of the FIMs that are associated with the a priori and a posteriori estimates are 12.9581 and 10.9482, respectively. The simulations indicate that the sensors selected are not necessarily the closest sensors to the target. In Fig. 3.18, 3.19, and 3.20, the closest sensor is actually not selected. Figure 3.17 is the light field for the example in Fig. 3.18. We see that the selected sensors have relatively high, but not the highest, light values. Figure 3.21 and Fig. 3.22 are some extreme cases to show the performance of the COSS algorithm. In the figures, the target is not inside the WSN. We see that when the target is out of the coverage of the WSN, but not too far away, the position esti-
3.5 Simulations
93 A Pri. conf. ellip. A Post. conf. ellip. A Priori Pos. A Posteriori Pos. Target Selected sensor
60
50
40
30
20
10
0
−10
−20 −20
0
20
40
60
80
100
Fig. 3.14 A simulation based on the hCOSS algorithm
mate is still precise. When the target is too far away, the a priori estimate measured
Indices of sensor nodes.
50
40
11
12
13
14
15
6
7
8
9
10
1
2
3
4
5
y (cm)
30
20
10
0
−10
0
10
20
30
40 x (cm)
50
60
Fig. 3.15 The indices for sensor nodes of the sensor selection testbed
70
80
90
94
3 Sensor Selection Methods for Cyber-physical Systems 13.5
−ln det(Ψ(M))
13
12.5
12
11.5
11
0
2
4
6
8
Iteration
10
12
14
16
Fig. 3.16 Convergence speed of the hCOSS algorithm
by the LS method and the a posteriori estimate based on hCOSS cannot locate the target properly.
3.5 Simulations
Light field based on energy model (brightness=3303219.2/(20.322 + r 2 )).
Fig. 3.17 Light field
95
96
3 Sensor Selection Methods for Cyber-physical Systems 120
A pri. conf. ellip. A post. conf. ellip. A pri. est. A post. est. Target Selected sensor
100
80
60
40
20
0
−20
0
50
100
150
200
Fig. 3.18 Sensor selection for a network of 60 sensors by hCOSS
Next, we compare hCOSS and eCOSS algorithms. In Fig. 3.23 to Fig. 3.31, the algorithms are compared for the following cases:
3.5.2 Case 1 For this case, 60 sensors are randomly placed and the level of sensor noise is 8 dbm. The hS in hCOSS is 0.1 and the hS in eCOSS is 0. The thresholds are chosen for comparison purposes, since when hS in eCOSS is 0, the multiplicative algorithm in eCOSS does not eliminate any sensor. Therefore, the comparison of the number of selected sensors is considered as fair enough. In this example, the sensors selected by eCOSS and hCOSS are different and both are within Carath´eodory’s limit. Recall that m = 2 and m(m + 1)/1 + 1 is Carath´eodory’s limit for the lamp tracking example in this book. Despite the difference in the selected sensors, the target positions observed by the two algorithms are very close to each other. In this example, the estimation error of the a priori estimate is 1.8542 cm. The corresponding error of hCOSS is 1.1745 cm and that of eCOSS is 1.4308 cm. Figure 3.23 shows that the a posteriori estimates of hCOSS and eCOSS (denoted “heuristic” and “elimination,” respectively) are close to each other, although the sensors selected are different.
3.5.3 Case 2 In this case, there are 15 sensors uniformly deployed in the defined domain. The total sample number is only four. The constant hS for hCOSS is 0.1 and the hS for eCOSS is 10−3 . In Figs. 3.24 and 3.25, it is observed that different sensors selected
3.5 Simulations
97
40 A pri. conf. ellip. A post. conf. ellip A pri. est. A post. est. Target Selected sensor
35
30
25
20
15
10
5
0
0
5
10
15
20
25
30
35
40
Fig. 3.19 An example of applying the hCOSS algorithm to randomly placed sensors A pri. conf. ellip. A post. conf. ellip A pri. est. A post. est. Target Selected sensor
30
25
20
15
10
5
0
−5
0
10
20
30
Fig. 3.20 Applying the hCOSS algorithm to densely deployed sensors
40
50
98
3 Sensor Selection Methods for Cyber-physical Systems A pri. conf. ellip. A post. conf. ellip. A pri. est. A post. est. Target Selected sensor
80 70 60 50 40 30 20 10 0 −10 −20 −20
0
20
40
60
80
100
120
140
Fig. 3.21 An example of applying the hCOSS algorithm when the target is outside the boundary of the WSN
by the two algorithms have similar estimates. In this example, the noise is still 8 dbm, while the errors of the a priori , hCOSS and eCOSS estimates are 23.4641 cm, 5.9206 cm, and 3.7108 cm, respectively. Although both hCOSS and eCOSS carry out estimates much more precisely than the a priori estimate, it is shown in Fig. 3.24 that the confidence ellipsoids are rather big. This is unavoidable due to the limited total sample number with respect to the noise level.
3.5.4 Case 3 For the example in Figs. 3.26 and 3.27, all the settings are the same as those in Case 2, except that the total sample number is 20. As we expected and shown in Fig. 3.26, the estimate errors of hCOSS and eCOSS have much smaller confidence ellipsoids compared with those in Fig. 3.24, because the larger number of samples rejects sensor noise better in this example. Comparing the sampling rates in Fig. 3.27, we observe that the sampling rates due to different algorithms have the same profile. Recall that the hCOSS method in this example truncates all those sampling rates that are less than hS , which is 0.1. The similarity between hCOSS and eCOSS is obvious.
3.5 Simulations
99 A pri. conf. ellip. A post. conf. ellip. A pri. est. A post. est. Target Selected sensor
100
80
60
40
20
0
−20 −20
0
20
40
60
80
100
120
140
Fig. 3.22 An example of applying the hCOSS algorithm when the target is far outside the boundary of the WSN
3.5.5 Case 4 In this case, the settings are the same to those in case 2 and case 3, except that the total sample number is 200. Comparing Figs. 3.28 and 3.29 to the above figures, it is clear that hCOSS is a close approximation of eCOSS.
3.5.6 Case 5 In this case, we compare the robustness of hCOSS and eCOSS in terms of their estimation for out-of-domain targets. It is seen in Fig. 3.30 that when the target is not far out of the domain where sensors are deployed, then the estimates are comparable. Figure 3.31 shows the similarities between the optimized sampling rates of the two methods. In summary, both hCOSS and eCOSS methods select proper sensors robustly and provide optimal estimates. In theory, eCOSS is more advanced than hCOSS, since the number of sensors selected by eCOSS is guaranteed by theoretical analysis. When the total number of samples are relatively large, we cannot observe much difference in the outputs of the two methods in our simulations. The heuristic method, i.e., hCOSS, is a good approximation to the theoretically rigorous eCOSS method. Therefore, from now we normally do not distinguish hCOSS and eCOSS.
100
3 Sensor Selection Methods for Cyber-physical Systems A pri. conf. ellip. A post. conf. ellip. (heuristic) A post. conf. ellip. (elimination) A pri. est. A post. est. (heuristic) A post. est. (elimination) Target Selected sensor (heuristic) Selected sensor (elimination)
30
25
20
15
10
5
0
−5
0
10
20
30
40
50
Fig. 3.23 Comparisons of hCOSS and eCOSS, Case 1
3.6 Hardware Experiments Since we introduced several approximations in our algorithm, it is important to verify the validity of those approximations using a physical testbed. A picture of our testbed in shown in Fig. 3.32, where 15 Tmote Sky sensor nodes [20] are placed under a halogen lamp. The positions and IDs of the sensors are shown in Fig. 3.15. The sink Tmote Sky node (not in the picture) is connected to a base station PC. A GUI is running on the PC. Currently, only hCOSS is implemented due to its simplicity. As the simulations suggest, eCOSS should have similar results. Figures 3.33, 3.34, 3.35, 3.36, and 3.37 are captured frames from our movie [153] that demonstrates the testbed. Notation on Figs. 3.33, 3.34, and 3.35 are added manually. Figure 3.33 shows the GUI running on the sink. Figure 3.34 shows the initial stage of the tracking. The tracking trajectory is clearly seen in Fig. 3.35. The important frames of the movie are shown in Figs. 3.36 and 3.37. The picture at the left bottom is from a movie taken by a camcorder. The selected sensors are the green dots on the screen, and the unselected sensors are the red dots. In the movie, we can see that no matter whether the lamp is moved smoothly or shifted suddenly, the system can always track the lamp motion.
3.6 Hardware Experiments
101 A pri. conf. ellip. A post. conf. ellip. (heuristic) A post. conf. ellip. (elimination) A pri. est. A post. est. (heuristic) A post. est. (elimination) Target Selected sensor (heuristic) Selected sensor (elimination)
120
100
80
60
40
20
0
−20
−40 0
50
100
150
200
Fig. 3.24 Comparisons of hCOSS and eCOSS, Case 2 Comparisons on the sampling rates of selected sensors. 0.6 heuristic elimination 0.5
Normalized sampling rate
0.4
0.3
0.2
0.1
0
−0.1
0
5
10 Sensor ID
Fig. 3.25 Comparisons of the sampling rates of hCOSS and eCOSS, Case 2
15
102
3 Sensor Selection Methods for Cyber-physical Systems A pri. conf. ellip. A post. conf. ellip. (heuristic) A post. conf. ellip. (elimination) A pri. est. A post. est. (heuristic) A post. est. (elimination) Target Selected sensor (heuristic) Selected sensor (elimination)
120
100
80
60
40
20
0
−20
−40 0
50
100
150
200
Fig. 3.26 Comparisons of hCOSS and eCOSS, Case 3 Comparisons on the sampling rates of selected sensors. 0.5 heuristic elimination 0.45
0.4
Normalized sampling rate
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0
5
10 Sensor ID
Fig. 3.27 Comparisons of the sampling rates of hCOSS and eCOSS, Case 3
15
3.6 Hardware Experiments
103 A pri. conf. ellip. A post. conf. ellip. (heuristic) A post. conf. ellip. (elimination) A pri. est. A post. est. (heuristic) A post. est. (elimination) Target Selected sensor (heuristic) Selected sensor (elimination)
120
100
80
60
40
20
0
−20
−40 0
50
100
150
200
Fig. 3.28 Comparisons of hCOSS and eCOSS, Case 4 Comparisons on the sampling rates of selected sensors. 0.5 heuristic elimination 0.45
0.4
Normalized sampling rate
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0
5
10 Sensor ID
Fig. 3.29 Comparisons of the sampling rates of hCOSS and eCOSS, Case 4
15
104
3 Sensor Selection Methods for Cyber-physical Systems A pri. conf. ellip. A post. conf. ellip. (heuristic) A post. conf. ellip. (elimination) A pri. est. A post. est. (heuristic) A post. est. (elimination) Target Selected sensor (heuristic) Selected sensor (elimination)
120
100
80
60
40
20
0
−20
−40 0
50
100
150
200
Fig. 3.30 Comparisons of hCOSS and eCOSS, Case 5 Comparisons on the sampling rates of selected sensors. 0.5 heuristic elimination 0.45
0.4
Normalized sampling rate
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0
5
10 Sensor ID
Fig. 3.31 Comparisons of the sampling rates of hCOSS and eCOSS, Case 5
15
3.6 Hardware Experiments
105
Fig. 3.32 A snapshot of our sensor selection testbed
*'
#
% " #)
'
(
Fig. 3.33 A screen shot of the sensor selection testbed: the GUI
106
3 Sensor Selection Methods for Cyber-physical Systems
# #
#
Fig. 3.34 A screen shot of the sensor selection testbed: tracking the lamp motion
#
# #
+
!
+
!
Fig. 3.35 A screen shot of the sensor selection testbed: the tracking process
3.6 Hardware Experiments
107
(a)
(b)
(c)
(d)
(e)
(f)
Fig. 3.36 Screen shots for tracking mobile target using the proposed sensor selection algorithm (hCOSS): a. frame 1; b. frame 2; c. frame 3; d. frame 4; e. frame 5; f. frame 6
108
3 Sensor Selection Methods for Cyber-physical Systems
Fig. 3.37 Tracking the shifted target using the proposed sensor selection algorithm (hCOSS): frame 7
80 60 40
40
y (cm)
0
x (cm)
0
40
0 40
0
x (cm)
0
Positioning error of the a posteriori estimate.
error (cm)
5
20
20
y (cm)
Positioning error of the a priori estimate.
error (cm)
80 60
40
20
20
Positioning error of the a posteriori estimate.
error (cm)
error (cm)
Positioning error of the a priori estimate.
5
0 40
20
20
80
80
60
y (cm)
40 0 0
20
x (cm)
60
y (cm)
Fig. 3.38 Estimation errors of the sensor selection testbed
40 0 0
20
x (cm)
3.6 Hardware Experiments
109
Fig. 3.39 A “before-and-after” comparison of the sensor selection testbed: ratio of the a posteriori estimation error (after sensor selection) to the a priori (before sensor selection) estimation error
Compared with the simulation, the hardware implementation is more challenging for the following reasons: • Imperfect communication introduces packet drops. • There are disturbances from ambient light. • The light bulb is not a perfect point light source. In fact, the size of the light bulb is about 3 cm in diameter, which is comparable with the tracking error achieved by the testbed. • The light reflector behind the light bulb is not perfect and the reflection is not very smooth. That is, the distribution on the light field is not perfectly uniform. According to the experiment results, these approximations are valid under realistic application conditions. The algorithm is robust enough for us to demonstrate the system under different ambient light conditions. The system is also robust to other WiFi (IEEE 802.11.x) devices in the laboratory. Notice that our hardware experiments [154] suggest that IEEE 802.11.x devices may interfere with IEEE 802.15.4 devices, such as the sensor nodes being used for the sensor selection/lamp tracking experiment, in terms of substantially reducing the throughput of IEEE 802.15.4 networks. No performance degradation is observed after introducing those WiFi devices in the vicinity of the testbed. Despite these difficulties, we can still achieve our goals. The COSS algorithm selects no more than four sensors and, statistically, the a posteriori estimates are more precise than the a priori estimates. We measure the positioning errors on 21 points on the testbed. The indices of these 21 points are shown in Fig. 3.40. After placing the lamp at one of the positions, we manually measure the position and take it as the real position. The a priori and a posteriori positions are logged in a data file. Figure 3.38 is plotted based on the experimental data. The mean tracking error for the a priori estimate is 3.1387 cm, and the mean error for the a posteriori estimate is 3.0269 cm. Not surprisingly, the advantages of the a posteriori estimates over the a
110
3 Sensor Selection Methods for Cyber-physical Systems Est. Pos Sensor
Indices of positions used for error estimation. 45 40 35 30
3,1
3,2
3,3
3,4
3,5
3,6
3,7
2,1
2,2
2,3
2,4
2,5
2,6
2,7
1,1
1,2
1,3
1,4
1,5
1,6
1,7
y (cm)
25 20 15 10 5 0 −5
0
10
20
30
40 x (cm)
50
60
70
80
Fig. 3.40 Indices of positions used for error estimation
priori estimates in the hardware experiments are not as significant as those shown in the simulations. This is due to the listed hardware imperfections. The top two plots in Fig. 3.38 are drawn to scale. We can observe that the positioning error, i.e., the height on the z-axis, is very small. In order to show the positioning error clearly, the bottom two plots in Fig. 3.38 have a zoomed z-axis. In Fig. 3.39, the ratio of the a posteriori estimation error to the a priori estimation error is plotted as a surface. Thus, the COSS improves estimation precision at those places where that ratio is lower than 1. In the figure, we can see that at most positions the error of the a posteriori estimate is smaller than that of the a priori estimate. Although the error of the a posteriori estimate is not always smaller than that of the a priori estimate, the a posteriori estimates are better for most of the area. Figures 3.41, 3.42, 3.43, and 3.44 are captured from a movie [153] which is rendered based on the same experiment data used in Fig. 3.38 and Fig. 3.39. The plots in Figs. 3.41, 3.42, 3.43 , and 3.44 contain additional information not presented in Fig. 3.38 or Fig. 3.39, including the manually measured positions of the lamp, and the selected sensors, and the a priori and a posteriori position estimates.
3.6 Hardware Experiments
111 Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
40
35
35
30
30
25
25 y (cm)
y (cm)
45
20
20
15
15
10
10
5
5
0
−5
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(a)
35
30
30
25
25 y (cm)
y (cm)
40
35
20
70
80
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
20
15
15
10
10
5
5
0
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(c)
40 x (cm)
50
60
70
80
(d) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
35
35
30
30
25
25
20
20
15
15
10
10
5
5
0
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
y (cm)
y (cm)
60
45
40
−5
50
(b) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
−5
40 x (cm)
0
0
10
20
30
40 x (cm)
(e)
50
60
70
80
−5
0
10
20
30
40 x (cm)
50
60
70
80
(f)
Fig. 3.41 Hardware test results for sensor selection: a. position (1,1); b. position (1,2); c. position (1,3); d. position (1,4); e. position (1,5); f. position (1,6)
112
3 Sensor Selection Methods for Cyber-physical Systems Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
40
35
35
30
30
25
25 y (cm)
y (cm)
45
20
20
15
15
10
10
5
5
0
−5
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(a) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
40
40
35
35
30
30
25
25
20
15
10
10
5
5
0
70
80
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(c)
40 x (cm)
50
60
70
80
(d) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
35
35
30
30
25
25
20
20
15
15
10
10
5
5
0
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
y (cm)
y (cm)
60
20
15
−5
50
45
y (cm)
y (cm)
45
−5
40 x (cm)
(b)
0
0
10
20
30
40 x (cm)
(e)
50
60
70
80
−5
0
10
20
30
40 x (cm)
50
60
70
80
(f)
Fig. 3.42 Hardware test results for sensor selection: a. position (1,7); b. position (2,1); c. position (2,2); d. position (2,3); e. position (2,4); f. position (2,5)
3.6 Hardware Experiments
113 Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
40
35
35
30
30
25
25 y (cm)
y (cm)
45
20
20
15
15
10
10
5
5
0
−5
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(a) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
40
35
35
30
30
25
25
20
15
10
10
5
5
0
70
80
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
0
0
10
20
30
40 x (cm)
50
60
70
−5
80
0
10
20
30
(c)
40 x (cm)
50
60
70
80
(d) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
40
35
35
30
30
25
25
20
Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
y (cm)
y (cm)
60
20
15
20
15
15
10
10
5
5
0
0
−5
50
45
y (cm)
y (cm)
45
40
−5
40 x (cm)
(b)
0
10
20
30
40 x (cm)
(e)
50
60
70
80
−5
0
10
20
30
40 x (cm)
50
60
70
80
(f)
Fig. 3.43 Hardware test results for sensor selection: a. position (2,6); b. position (2,7); c. position (3,1); d. position (3,2); e. position (3,3); f. position (3,4)
114
3 Sensor Selection Methods for Cyber-physical Systems Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
35
30
y (cm)
25
20
15
10
5
0
−5
0
10
20
30
40 x (cm)
50
60
70
80
(a) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
35
30
y (cm)
25
20
15
10
5
0
−5
0
10
20
30
40 x (cm)
50
60
70
80
(b) Measured Pos. A pri. Pos. A post. Pos. Sensor Active Sensor
45
40
35
30
y (cm)
25
20
15
10
5
0
−5
0
10
20
30
40 x (cm)
50
60
70
80
(c)
Fig. 3.44 Hardware test results for sensor selection: a. positions (3,5); b. positions (3,6); c. positions (3,7)
3.7 Discussion 3.7.1 Remarks on the Speed and Memory Requirements In summary, the proposed COSS algorithm is simpler, faster, and more memory R and efficient than other related methods. We used the Profile tool from MATLAB R tested the speed of our MATLAB version COSS algorithm. On a 3 GHz Pentium 4 PC with 1 GB memory, it takes the hCOSS algorithm around 8 ms to optimize
3.7 Discussion
115
a network with 60 sensors. The time for the eCOSS algorithm to solve the same problem on the same PC is around 15 to 25 ms. In our hardware testbed, the hCOSS algorithm is implemented in C# and executed in real-time. After the sensor nodes submit their data to the sink, no delay is observed before the sink selects the sensors based on the COSS and broadcast the results to the sensor nodes. It is reported [76] that sensor selection based on the branch and bound integer programming method “allows us to schedule up to 50–60 sensors typically in the order of seconds.” In some work [141], the sensor selection patterns are computed off line and stored in a reference table, where is claimed that “in an application where less than six sensors must be allocated per target, the O(n5 ) running time may be prohibitive for real-time implementation.” The hCOSS algorithm requires memory to store ∇q Ψ , M, and ai with 2mn+m2 float or double variables, where m is the number of parameters and n is the sensor number. This is a small number with respect to the grid-based methods, such as the IDSQ method [66]. Since m is small (m=2 or 3 for tracking problems) not much memory is required. The memory requirement of eCOSS is obviously more than that of hCOSS, since matrices N and Z are required and their sizes are Rn×k and Rk×k , respectively (cf. Algorithm 3.3). Compared with grid-based methods, especially when the dimension of the unknown parameters is rather big, the memory requirement of eCOSS is significantly smaller. In addition, the multiplicative algorithm (the core of hCOSS, cf. Algorithms 3.1 and 3.5) can normally reject many sensors such that eCOSS only needs to select sensors from a small set. In those cases N ∈ RnF ×k , where nF is the number of sensors selected after the multiplicative algorithm. As a comparison, grid-based Bayesian or entropy approaches [66,67] need 2 3 or kC cells for 2D tracking problems, where kC is the number memory to store kC of cells in each dimension.
3.7.2 Comments on Non-Gaussian Noise The formulation of FIM in (3.4) is derived under the assumption that the sensor noise is Gaussian. What if the noise is not Gaussian? In practice, non-Gaussian noise is not unusual. The question can be answered from theoretical analysis and hardware experiments. Please refer to Chap. 1 for definitions on the information matrix and the FIM in (1.3) and (1.1), respectively. From the theoretical perspective, if the noise is non-Gaussian, the M matrix in Theorem 3.1 is the information matrix, instead of the FIM. Under this condition, our algorithm based on the information matrix minimizes the estimation error covariance matrix of the WLS estimator, which may not be the best unbiased linear estimator. If our optimization is still based on FIM in this case, according to Theorem 1.1 on the Cram´er–Rao inequality in Sect. 1.6, there are chances that the estimation based on the optimization of FIM could be more precise than that of the information matrix. Recall that Theorem 1.1 has a strong claim that the inverse of the FIM establishes an estimate on any unbiased estimators, including the WLS estimator. However, for many applications, the precision of the
116
3 Sensor Selection Methods for Cyber-physical Systems
WLS algorithm should be good enough. As will be shown soon, the PDF of realworld noise may be very irregular, and computing the FIM may not be very easy. It may not be worth the efforts to seek the slim chance of getting an estimator better than WLS. If the precision does not meet the requirement under this scenario, we could improve the estimation by simply taking more samples. To ensure that our algorithm is robust to non-Gaussian noise, it is valuable to test the algorithm on a physical testbed with non-Gaussian sensor noise. In fact, our experimental data indicates that the sensor noise is not ideally Gaussian. Based on the hardware experiments, we observed that the COSS algorithm is not sensitive to the non-Gaussian noise. Under this condition, the a posteriori estimates and the a priori estimates have comparable estimation errors. Figure 3.45 includes plots of the noise histogram. During the experiments, Tmote Sky sensor nodes are placed under a halogen lamp at 11 positions whose ranges are uniformly distributed. One hundred samples per distance are collected. One histogram can be drawn for each distance. For easy comparison, the centers of those histograms are shifted to 0 and they are plotted as 3D figures. The 11 histograms are plotted as 11 curves in Fig. 3.45a and Fig. 3.45b. The histograms are also plotted as 3D surfaces in Fig. 3.45c and Figure 3.45d. The sensor data that were collected at ranges closer than 30 cm have irregular histograms. The sensor noise is not always Gaussian according to this experimental test. Figure 3.46 is the same as Fig. 3.45 except under different lamps. All the data in Fig. 3.45 is collected under a halogen lamp, while Fig. 3.46 is from a scenario under a fluorescent lamp. It is easy to see that non-Gaussian noise exists in both situations. In summary, the COSS algorithm does not require the sensor noise to be Gaussian. In theory, there are chances that the estimation might be more precise when the sensor noise is Gaussian, as opposed to cases when the sensor noise is nonGaussian. However, the worst performance of the COSS algorithm should still be comparable with that of the WLS method, which is precise enough for most applications. Hardware experiments confirm that the algorithm is applicable to real-world non-Gaussian (or not-perfect Gaussian) noise.
3.7.3 Relationships with Geometric Approaches The sensor selection method in [141] is based on pure geometric approaches. Therefore, it is interesting for us to compare our algebraic approach with the geometric approaches. Figure 3.47 illustrates the rough ideas of the two methods. The geometric method is depicted in Fig. 3.47a and Fig. 3.47b. The other four plots are associated with our algebraic method. A camera-like sensor studied in [141] can be characterized as a cone in Fig. 3.47a. The angular estimation error on the target is the same as the angle of the cone. At least two sensors are required in order to estimate the position of the target, i.e., (x, y). Figure 3.47b depicts an example in which two sensors locate the position of a target. The estimation error is defined as
3.7 Discussion
117 Histogram of light sensor noise.
Histogram of light sensor noise.
Num. Samp.
25
Num. Samp.
20 15
20 10 0
10 50
5
50
40 30
0
0 50
0
20
40 020
−50
−50
Dist.
Light val.
10
Light val.
(a)
0
Dist.
(b)
Histogram of light sensor noise.
Num. Samp.
25
Histogram of light sensor noise.
20
20
10 50
0
100
15
40 30
50 50
10
20
30 20
−50 10
Light val. −100
(c)
0
Dist.
Num. Samp.
40
0
10 20 10 0 100
Dist.
5
0 50
0 Light val.
−50
−100
(d)
Fig. 3.45 3D plots of the sensor noise histogram (under a halogen lamp): a. front view; b. top view; c. side view; d. another top view
the overlapping region6 of the cones, since the estimate on the position of the target must fall inside both cones. As more sensors are introduced, the overlapping region becomes a convex polygon [141]. It is proved in Lemma 4 of [141] that no more than six sensors are required in order to reduce the area of the overlapping region to be no more than twice the minimum area. Consider the algebraic approach using our formulation. Assume that the real position of the target is (0.5, 0.5). In Fig. 3.47c, the only sensor measurement is θA = 45◦ , which is corrupted by additive Gaussian noise v, and v ∼ N(0, σ). The sensor position is (0, 0). The possible positions of the target, based on θA only, are indicated by the stars. There are two angular sensors in Fig. 3.47d, with their positions (0, 0) and (1, 0), and their nominal angular measurements θA = 45◦ and θB = 135◦ , respectively. 6
It is called the minimum enclosing parallelogram (MEP) in [141].
118
3 Sensor Selection Methods for Cyber-physical Systems
7
10
6 Num. samp.
Num. samp.
8 6 4 2
5 10 4 5 3 2000
0 2000
120 100
1000 100
0 50 Light val.
−2000
Dist. (cm)
2
80
1
20 −2000 Dist. (cm)
0
0
60 −1000
40
Light val.
Fig. 3.46 3D plots of the sensor noise histogram (under a fluorescent lamp)
θA and θB are contaminated by independent Gaussian noises. After simple computations, we have: − tan(θB ) , tan(θA ) − tan(θB ) − tan(θA ) tan(θB ) yˆ = . tan(θA ) − tan(θB )
x ˆ=
In other words, one position, (ˆ x, yˆ), can be estimated from one tuple of the angular measurements, {θA , θB }. Each star in Fig. 3.47d is associated with an estimated position, i.e., (ˆ x, yˆ). It seems that the stars roughly fall inside an ellipse, which can be parameterized by a 2 × 2 covariance matrix. Since the noise in Fig. 3.47d is Gaussian, the envelope of those stars are more like an ellipse than a polygon. If more sensors are introduced, the position can be estimated by LS or WLS methods, and the size of the covariance is unchanged. Refer to (3.9) for details. For our algebraic approach, the estimation errors are always measured in ellipsoids whose dimensions are the same as that of the parameters under estimation. It is easy to see that the ellipsoid area with stars in Fig. 3.47d is an approximation to the overlapping polygon region in Fig. 3.47b. Under certain conditions, the optimization on the ellipsoids is similar to the optimization on the polygons. Notice that, it has been suggested [102] that independent Gaussian distributions can be used to estimate the covariance matrix of any distribution. Refer now to Fig. 3.47e and Fig. 3.47, which illustrate the cases when the noises are subjected to uniform distributions. Except for the fact that the noise is uniformly distributed, Fig. 3.47e is the same as Fig. 3.47c. The stars in Fig. 3.47f are the estimated target positions. The envelope of the stars is the same as the polygon in Fig. 3.47b. Since the noise is uniform, the algebraic method in Fig. 3.47f is comparable to the Monte Carlo approach to compute the polygon in Fig. 3.47b. As mentioned earlier, under proper conditions, the optimization on the covariance matrix of the stars in Fig. 3.47d is the same as that in Fig. 3.47f. The similarity between Fig. 3.47d and Fig. 3.47b is also obvious. Thus, the difference between Fig. 3.47b
3.7 Discussion
119
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
0.5
1
0
0
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0.5 (c)
1
0
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
0.5 (e)
1
(b)
(a)
0
0.5
1
0
0
0.5 (d)
1
0
0.5 (f)
1
Fig. 3.47 Comparing the algebraic and geometric interpretations of estimation errors
120
3 Sensor Selection Methods for Cyber-physical Systems
and Fig. 3.47d may not be as significant as it first appeared. The interesting fact is that the observations from the two different approaches are consistent with each other. It is observed [141] that “the estimates obtained by the four best sensors are as good as the estimates obtained from all sensors. Hence, the lifetime of the network can be significantly increased by restricting the number of active sensors to a small number without losing too much from the quality of the estimates.” Following the algebraic approach, we conclude that no more than m(m + 1)/2 + 1 sensors are good enough to provide the optimal estimate, for the worst case; that is, when the sampling rate optimization is not optimized. (For the optimal solutions, m(m+1)/2 sensors are actually required. Refer to Sect. 3.3.3 for details.) When the target is in a 2D domain, m = 2, and m(m + 1)/2 + 1 is exactly four! Despite the similarities, there are some differences between the two approaches: • The polygon representations of the geometric approach may be more precise than the ellipsoid of the algebraic approach, for example, when the sensor noise is uniformly distributed. • It is easier to consider high-dimensional systems using the algebraic approach. For example, if there are four or more parameters that need to be estimated, it is not easy to draw overlapping polygons and compute their areas. For the algebraic approach, the change is trivial. Only the size of the matrices must be adjusted. • Replacing different cost functions in the geometric method (currently there is only one cost function) is not as easy as in the algebraic method. This is explained in the following paragraphs. In the discussion of Definition 3.3, several optimality criteria are listed. They all have geometric interpretations. Here, we explain them under the scenario in Fig. 3.47. The D-optimal solutions are proportional to the volume of the covariance matrix, i.e., the area of the star clouds in Fig. 3.47d and Fig. 3.47f. The geometric meaning of the D-optimality criterion is the same as the area of the overlapping region [141]. The D-optimality is the most widely used criterion and its advantages are described after the Definition 3.3. However, it is not perfect. For example, it is possible that the volume of a covariance matrix is small but the positioning error is significant (for example, when the confidence ellipsoid is very tall or wide). In those cases, the A-optimality, which indicates the positioning error measured in Euclidean distances, or E-optimality, which is proportional to the maximum diameter of the confidence ellipsoid, are desirable options. Since E- and A-optimality criteria are not invariant to linear transforms, we may need to scale measurements into common units before applying the optimality criteria. For more discussions on other optimality criteria, such as the C-, T-, Turing, and MV criteria, refer to the related works [102, 155].
3.7 Discussion
121
3.7.4 Entropy-Based Method The idea that rises behind entropy-based methods can be interpreted intuitively: the sensor data that enhance the certainty of the estimate of the target’s position are useful, and sensors whose data are useful should be selected. The theory of information entropy and Bayesian theory play central roles for some sensor selection methods [66, 77, 144, 145, 156]. This approach is also referred to as the information theoretic method [145]. In our work, instead of optimizing a function based on information entropy, we minimize the covariance matrix of the estimated values. The IDSQ algorithm [144] is an example of the entropy-based methods. In this method, the belief in the position of a target is updated according to sequential Bayesian filtering. Based on the measurement of information, i.e., entropy, the sensor within the vicinity of the estimated target position that provides the “most information” is selected. A heuristic interpretation of the entropy is as follows: the selected sensor has the largest number of bits to contribute to the estimation on the target’s new position. Compared to IDSQ, the COSS follows a different logic: the gradient of the Fisher information is a metric of sensitivity. The valuable information contained in sensor data is measured by the sensitivity of the sensor readings with respect to the physical parameters under observation. If a sensor is “sensitive” to the parameter, its reading changes significantly due to perturbations of the parameter. In plain words, the COSS method selects sensors that are most sensitive to the target’s position (or other parameters). The Bayesian filtering in IDSQ is similar to the LS in COSS, in the sense that they both update estimates based on sensor data. Of course, they are also significantly different since the target’s dynamics can be considered in the framework of Bayesian filtering, but not in the LS framework. Table 3.1 compares the IDSQ and the proposed COSS algorithms. As we can see, most entries are complementary. The following are some remarks on the table. The IDSQ is fully distributed, which is an advantage over the COSS method. Although the COSS has the potential to be implemented in a fully distributed fashion, most of the computation of the COSS method is currently carried out by the sink, and the sensor nodes are responsible for a small part of the computation. Notice that the distributed D-optimization and LS fitting have been developed [72,74]. The dynamics of the target are considered by the IDSQ method, due to the sequential Bayesian filter. Currently, the dynamics are not included in the COSS, and a future task will be to incorporate distributed Kalman-filter-like algorithms within the COSS, similar to [138, 157]. A Kalman filter can be considered to be a special Bayesian filter. A significant difference between the two is that the Kalman filter is not a grid-based algorithm, but the Bayesian filter is. Just like the Kalman filter, the COSS methods are also not grid-based. The original Kalman filter is centralized and subject to Gaussian noise. Currently, there are distributed Kalman filters [157] and the Gaussian noise is not mandatory. One obvious difference is that the IDSQ is a grid-based algorithm while the COSS is not. The IDSQ method requires several 2D meshes to store the PMFs. The higher the resolution, the more grids are required. In contrast, the COSS only requires two arrays to store the sampling rates and sensitivities of each sensor. The
122
3 Sensor Selection Methods for Cyber-physical Systems
length of the arrays is determined by the number of sensors. This approach may be faster and may demand less memory. Both methods tolerate the non-Gaussian sensor noise, but for different reasons. The IDSQ method is grid-based, thus nonparametric. Any probability distribution can be represented by the grids. The COSS is a parametric non-grid-based method and deduced based on Gaussian noise. However, as Sect. 3.7.2 demonstrates, non-Gaussian noise may be acceptable, with some sacrifices to the achievable estimation precision. The key feature of the COSS method is that it optimizes the estimate with a small number of sensors. That is, the estimation error is close to CRLB and the number of sensors selected is determined by Carath´eodory’s theorem. For the IDSQ, the single most “informative” sensor is selected. If all the sensors are selected, the Bayesian method (in the IDSQ) provides the “maximum a posteriori ” (MAP) estimate of the parameter. The MAP estimate is close to the LS estimate under many conditions [102]. Intuitively, if only one sensor is selected, the estimate may not be better than the MAP estimate. Finally, both methods have been tested using hardware. The IDSQ testing scenario is outdoor vehicle tracking. The COSS is tested using the aforementioned testbed. Table 3.1 Comparison of IDSQ and COSS methods Properties IDSQ COSS Target dynamics yes no Fully distributed yes no Grid-based method yes no Computation cost high low Memory requirements high low Estimation precision in theory unknown close to CRLB Number of selected sensors one at a time guided by Carath´eodory’s theorem Hardware experiment yes yes
3.7.5 Discussion of Correlations of Sensor Data One of the assumptions in this chapter is that the sensor noise signals are independent. Such an assumption is important for the analysis in Sect. 3.7.2 and Sect. 3.7.3. In the following, we argue that such an assumption is reasonable. We first present our experiment data and conclude from the data that the sensor noise is independent. Next, our simulations indicate that noise dependency can be canceled by properly designed hardware systems. The dependency of sensor noise can be measured by the correlations of sensor data. Recall that the correlation between random variables, X and Y , is measured by the correlation coefficient ρX,Y . ρX,Y =
E{(X − μX )(Y − μY )} , σX σY
3.7 Discussion
123
where μX , μY are the mathematical expectations of the random variables, and σX and σY are the standard deviations. Thus, if the sensor noise signals are vX and vY , we have vX = X − μX and vY = X − μX . If and only if the sensor noises are independent, the following equation holds: E{vX vY } = E{vX }E{vY }. One might think that the correlation between sensor data increases as the intersensor distance reduces, but this intuition is incorrect. When the sensors are close to each other, their measurements are also close. However, data from these sensors may or may not be correlated. Figure 3.48 is a visual interpretation of this claim. Suppose two sensors are so close to each other that their measurements, X and Y , have the same expectation (mean), or μX ≈ μY . Figure 3.48 shows that X and Y may or may not be correlated. In Fig. 3.48a, there are three point clouds, representing three sets of measurements. The centers of the clouds, i.e., the expectations, are (0, 0), (1, 1), (2, 2). For sensor selection purposes, one out of the two sensors should be selected, since their mean measurements are the same. In Fig. 3.48b, Xi and Yi are the ith measurement of X and Y , respectively. The contour in Fig. 3.48b represents the values of the correlation coefficients between X and Y . As Fig. 3.48b indicates, X2 and Y2 are not correlated. X1 and Y1 have positive correlations, while X3 and Y3 have negative correlations. In summary, no conclusion on the correlation can be drawn from the fact that μX ≈ μY . (a) Measurements. (b) Correlation coefficients.
3
2
0.6
y2
0.4 0.2
y
y1 1
0
x3 1st Measure 2nd Measure 3rd Measure
0
−1 −1
0.8
y3
x2 x1 x1
0
1 x
2
3
−0.2 −0.4 −0.6
x2
x3
y1
y2
y3
−0.8
Fig. 3.48 Illustration on correlations
The question remains: when is the sensor data correlated? In the context of sensor networks, we argue that confounding variables introduce correlations between the sensor data. The so-called confounding variables are the phenomena that influence many sensor measurements at the same time. Examples of the confounding variables include ambient light, room temperature, and lamp flashing pattern, which will be discussed soon. Local impact factors include sensor node ADC quantization errors, battery imperfectness, and sensor noise. Why do the confounding variables
124
3 Sensor Selection Methods for Cyber-physical Systems
introduce correlations? This is due to the fact that the confounding variable perturbs the readings from different sensors with certain predictable trends. For example, if X is increased due to the brighter ambient light, Y should also increase due to the same ambient light. This case is similar to the first measure (at the position (0,0)) in Fig. 3.48, where Y tends to increase while X increases. Thus, as mentioned above, X and Y are correlated. Compared with the local impact factors, such as the quantization errors, there is no predictable trend among different sensors. When a sensor takes one measurement on the light value, some error is introduced due to the quantization of the ADC chip on the particular sensor node. No other sensors are affected by the same ADC chip. Therefore, no common trend between sensor data exists. Thus, there is no correlation between the sensors. This case is similar to the second measurement in Fig. 3.48. Let us now examine the statements based on our experimental observations. In addition, we will provide an example of how to cancel sensor data correlations, if they exist, based on our experiments. Figure 3.49a is the same as Fig. 3.4. From these figures, we conclude that under halogen lamps, the light sensor measurements are statistically uncorrelated, since the absolute values of the coefficients of crosscorrelations are close to zero. If we had chosen a fluorescent lamp, the degree of correlation among sensors would be higher. Figure 3.49b shows the correlation coefficients for the light sensors on Tmote Sky nodes under a fluorescent lamp. This figure is also plotted based on experimental data. Unlike the halogen lamps or incandescent lamps, which do not flash, the fluorescent lamp flashes at the same frequency as the power line (60 Hz in the USA). Comparing Fig. 3.49a and Fig. 3.49b, it is easy to see that the correlation of the sensors under the fluorescent lamp is more obvious. The mean absolute values of the correlation-coefficients and the cross correlation coefficients for data under the fluorescent lamp are larger than those under the halogen lamp. From this perspective, the halogen lamp is better than a fluorescent lamp for our application. We also simulate flashing lamps based on the experimental data. In addition, to show that the flashing lamp is a common impact factor, the simulation also indicates that there could be many types of correlation patterns. Figure 3.49c and Fig. 3.49d are plotted based on the simulation results. The scenario in Fig. 3.49c is as the follows: the flashing frequency is half the sampling rate of the sensors. At the time instances when the lamp is off, the sensors measure the ambient light, which is a constant. While the lamp is on, the measurement is the addition of the ambient and lamp light. If dE is the data collected in experiment, and dA is the simulated flashing light, then dA is defined as: dA [2k] = dE [k], dA [2k + 1] = cA , where cA is a constant to simulate the ambient light, and k is the trial number. From Fig. 3.49c we see that correlations among the sensor data are significant: most of the correlation coefficients are either close to 1 or −1. Figure 3.49d is the simulation for time-varying ambient light: the intensity of the ambient light follows a sinusoid
3.7 Discussion
125
signal, thus is time-varying. The illumination of the lamp is steady. The readings from the sensors are the summation of ambient light and lamp light. If dB is the simulated varying light, the following holds: dB [k] = dE [k] + sA [k], where sA [k] is a sinusoid function with respect to k. From Fig. 3.49d, we see that the correlations among sensor data are also very high. However, the correlation patterns between Fig. 3.49c and Fig. 3.49d are different. Comparing Figs. 3.49b, c, and d, we see that the correlation patterns could be significantly different and irregular, since the correlation pattern changes as the confounding variable changes. This is not likely to indicate all the possible correlations of the several groups. The reasons are the following: • It is unacceptable for an engineering project to have an unknown confounding variable. Instead of studying the statistical characteristics of the impact factor, the engineer must find the source of the impact. Otherwise, the project is unreliable, since its success depends on some uncontrolled factor, which change at any time. • After finding the confounding variable, we can cancel the factor using either hardware improvement or low-level filtering. Taking the sensor selection testbed as the example, the dependency of sensor noise can be canceled if the fluorescent lamp is replaced by a halogen lamp, or by using a software band stop filter which rejects 60 Hz signals. • As mentioned previously, due to the complexities of the correlation pattern, it may be difficult to develop a generic sensor selection method for a large class of correlations. After understanding the physics of the confounding variable, it is easier to reject correlation at the lower level. Still using the flashing fluorescent lamp as the example, it is much easier to replace a lamp than it is to design a D-optimization method that does not require independent sensor noise signals. In summary, it is reasonable to assume that the sensor noise signals are independent. If the raw sensor data are correlated, it may be desirable to cancel correlation at the lower level.
3.7.6 Comments on Networking Traditional networked communication systems are designed based on stacks, or layers. The layered structure of the sensor selection testbed is not shown by the system architecture in Fig. 3.5. For comparison purposes, the layered model of the sensor selection testbed is plotted in Fig. 3.50. One of the key features of this model is that the physical model plays an important role, as a layer in the communication stack. Another key feature is that the parameters of communication layers are tuned by the observer layer. Thus the ob-
126
3 Sensor Selection Methods for Cyber-physical Systems The correlation coefficients of Tmote Sky light sensors under a fluorescent lamp.
The correlation coefficients of Tmote Sky light sensors under a halogen lamp.
1 Corr. Coef.
Corr. coef.
1
0.5
0
0.5 0
−0.5 100 80
40 20
60
40
20
60
40
80
100
40 20 Distance (cm) 20 Distance (cm)
0 0 Distance (cm) Distance (cm) mean abs. corr. coef.=0.2090 mean abs. cross corr. coef.=0.1181
mean abs. corr. coef.=0.2887 mean abs. cross corr. coef.=0.1637
(a)
(b) The correlation coefficients of Tmote Sky light sensors. (simulated varying light)
The correlation coefficients of Tmote Sky light sensors. (simulated flashing light) 1
Corr. Coef.
0.5
Corr. Coef.
1 0
0
−0.5
−1
−1 60
60
60
40
40
40 20 Dist. (cm)
20 Dist. (cm)
0 mean abs. corr. coef.=0.7423 mean abs. cross corr. coef.=0.6514
(c)
60
20 Dist. (cm)
40 20 0
Dist. (cm)
mean abs. corr. coef.=0.7812 mean abs. cross corr. coef=0.6903
(d)
Fig. 3.49 Correlation coefficients of sensor data: a. experimental data for a halogen lamp; b. experimental data for a fluorescent lamp; c. simulated flashing light; d. simulated varying light
server not only transmits and receives information from the communication stack, but also controls the stack. As can be seen in Fig. 3.50, the model of the physical world is required for the design of the observer, which is essentially the application layer of other communication models. The feature of this model is that a parameter of the communication stack, the transmission rate, is tuned by the observer. Recall that if a sensor is not selected, its transmission rate is zero. If it is selected, the rate is a constant. Since the
3.8 Chapter Summary
127
observer is model based, the parameter is in fact determined by the measurements of the physical world.
Fig. 3.50 Communication stacks of the COSS method
3.8 Chapter Summary In this chapter, we proposed a COSS algorithm to solve the SSP. The algorithm not only selects the just-enough number of sensors allowed by Carath´eodory’s theorem, but also pushes the estimation errors closer to the theoretical lower limit, i.e., the CRLB. After extensive simulation and hardware experiments, we conclude that the approximations are reasonable for engineering practices. Our theoretical analysis reveals the existing of a class of sensor selection methods that are similar to the COSS method. In this example, the transmission rate, a parameter of the communication protocol, is designed with the help of the FIM. In future, we will develop fully distributed COSS and implement it on low-cost sensor nodes for real-time target tracking.
Chapter 4
Design of Localization Systems for Wireless Sensor Networks
4.1 The Motivation and the Research Problem Localization is a fundamental function of WSNs. Many higher-level functions, such as routing [158], either depend on localization or work better if the sensors’ positions are available. Because of its importance, WSN localization has been discussed intensively. For example, a decentralized WSN localization system based on signal strength of radio frequency (RF) signals has been proposed, namely MoteTrack [18]. A time of flight (TOF)-based acoustic localization system called Cricket Board was presented [159]. Currently, in the de facto WSN hardware standard, IEEE 802.15.4, the localization aspect is not specified [17], and the widely used CC2420 chip [160] only supports received signal strength indicator (RSSI) and link quality indicator (LQI) as measurements of distances. Some researchers propose algorithms to locate sensor nodes with the current IEEE 802.15.4 standard [18, 161]. However, RSSI and LQI have proven to be unreliable as distance indicators, especially for indoor environments [21, 162].
4.2 Localization Hardware 4.2.1 Received Signal Strength Indicator This approach takes the RSSI of RF signals as the indicator of distance. This method entails virtually no additional hardware cost and little demand for energy. However, the method is also not precise. Compared with acoustic TOF-based methods, the resolution of the RF RSSI-based methods is very limited. While the acoustic methods have centimeter-level precision, the resolution for RSSI-based methods may be in the range of several meters [18]. Due to multipath fading effects of RF signals, there is no direct relationship between RSSI and the distance between transmitter and receiver [21], especially for indoor environments [18]. In addition, experiments
129
130
4 Design of Localization Systems for Wireless Sensor Networks
reveal that the RF signals are also strongly time-varying [154]. This is yet another challenge for RSSI-based localization systems. To our best knowledge, no state-ofthe-art RSSI-based method supports a resolution under 2 meters in realistic indoor environments, which may not be ideal for many applications. In addition, based on experiments, RSSI-based systems require careful tuning.
4.2.2 Angle of Arrival Methods based on angle of arrival (AOA) [95, 144] are also used for sensor node or target positioning. Acoustic AOA measurement [144] is easier than RF AOA, since the latter method may require high-speed signal processing. Although AOA has been discussed in theory [95], it is not a common localization method for low-cost sensor nodes, probably due to its hardware cost.
4.2.3 Acoustic TOF This method measures TOF of acoustic signals, such as sonar signals [159]. This method may provide centimeter-level precision. Compared with the RF TOF method, the measurement of acoustic TOF is much easier, since the speed of sound is much less than that of RF signals. However, RF signals have several advantages over acoustic approaches. • The speed of a sound wave is not as stable as that of the RF signals. The speed of sound wave is affected by the temperature and humidity of the environment. Thus, the measurement of TOF of RF signals, although it may be more difficult, may be more precise. For example, it is reported that sub-millimeter-level precision can be achieved by RF TOF measurements [163]. • Ultrasonic sound wave is directional. The orientation of the acoustic device may affect the positioning results [159]. Lower frequency sound, although it is omnidirectional, can be heard by human ears, and thus may not be desirable. Since the RF signal can be emitted omnidirectionally with a proper antenna, there are fewer restrictions on the placement of RF TOF-based sensors [25]. • RF devices may be more energy efficient than their acoustic counterparts. A RF TOF device may require power at the microwatt level [164], while milliwatt level power may be required by sonar devices [159].
4.2.4 RF TOF Measurement This method could be both accurate and energy efficient. However, it is also very challenging. We need a low-cost clock with very high precision. Currently, there are
4.2 Localization Hardware
131
several solutions within this domain. The difference and relationship between the proposed method and existing methods will be discussed later in this chapter. Because light travels at a speed of 3 × 108 m/s, we need a device equivalent to a counter running at 300 MHz in order to get submeter-level distance measurements. Although counters with such speed are common these days, they are too costly for WSN applications. Since the typical clock speed of the processor on a sensor node is about 8 MHz to 16 MHz, it is obvious that the TOF cannot be measured directly by the processors and special hardware for TOF measurement is required. Several hardware implementation methods are listed below: • Application specific integrated circuit (ASIC): several ASIC chips with RF TOF measurement capability have been developed [160, 162]. Using modern technologies, we can even include counters running at 300 MHz on the chip. Hence, the TOF can be measured through brute force approaches. However, the development costs of even simple ASIC chips are very high. Although the cost per chip is the lowest compared with other TOF solutions, the high initial development cost makes this method unsuitable for many applications. • Field programmable gate array (FPGA): FPGA is a lower-cost replacement for ASIC. In a report [165], a FPGA along with a 100 MHz physical clock is proposed to achieve a resolution that approaches a 4 GHz clock. The acceleration factor (4 GHz/100 MHz) is 40. The system is specially designed for FPGA and no processor is required. The TOF measurement system [166, p. 79] has a stand alone communication system and is targeted for ASIC implementations, similar to another solution [167]. • Discrete components: there are several systems that measure TOF using commercial off-the-shelf electronic components. For example, McEwan developed several TOF measurement devices using UWB radios, such as a short-range localization system [168]. In order to increase the SNR and enable low-cost TOF measurement, the UWB transmitter [168] sends thousands of impulses to get one distance measurement. The IEEE document that discusses the next generation WSN protocol, IEEE 802.15.4a, indicates that new RF hardware which measures the TOF of RF signals may be used to improve the localization accuracy significantly [169]. Actually, the candidate technologies, UWB [170] and chirp-based localization [171], such as chirp spread spectrum (CSS) [172], are not totally new and have been studied for over ten years. Technically, both approaches have TOF localization as well as communication capabilities, and commercial products using both approaches are available. The IEEE 802.15.4a standard group proposed using the UWB method for localization and using both UWB and CSS methods for communication. From the perspective of localization, the differences between the methods are negligible, since both provide narrow impulses as the indicators of the TOA of the RF signals. In addition, both are robust to the multipath effect since the impulses associated with multipath echoes follow the line of sight impulse, which is received first and
132
4 Design of Localization Systems for Wireless Sensor Networks
can be segmented from the rest. Thus, for both methods, the TDOA can be precisely estimated, and the measurements are robust to multipath effects.
4.3 The Proposed Phase-Based Localization Method 4.3.1 Review of TDOA Localization Algorithms Figures 4.1 and 4.2 come from a technical proposal [173] of the IEEE 802.15.4a standard group. The TWR (two-way ranging) method in Figure 4.1 is also called RTT (round-trip time) in other references [96]. This method is very intuitive: node A sends a message to node B, and the node B acknowledges the message, with the reply time, TReply , included in the acknowledgement. Thus, after measuring the time between sending the message and receiving the acknowledgement, node A subtracts the TReply and the TOF can be easily computed. That is TOF =
T1 − T0 − TReply , 2
where TOF is the TOF.
Fig. 4.1 Two-way ranging method
The acknowledgement from node B is undesirable for the following reasons: • It is likely that the number of mobile nodes, m, is much greater than the number of beacons, n. Assuming that peer-to-peer communications are available, this RTT measurement requires at least m+n messages in total for each mobile node to get its position. That is, beacons broadcast first, which requires n message
4.3 The Proposed Phase-Based Localization Method
133
Fig. 4.2 One-way ranging method
packets. Then, the mobile nodes reply and m packets are sent. Thus, n − 1 packets are required for one sink beacon to collect the range information from the remaining n − 1 beacons. This sink beacon has the capability to locate each mobile node. To broadcast the positions to each beacon, at least one more packet is required. Thus, at least m+2n packets are required in total. If there are many mobile nodes, their positions cannot be encapsulated in one packet and broadcast from the sink beacon, hence more than m + 2n packets are required. This is a centralized method wherein the sink beacon does all the computation. • If the information flow is in the other direction, where mobile nodes broadcast to beacons and wait for the reply from the beacons, then at least 2m packets are required. This is a distributed method wherein the computation is uniformly distributed to each mobile node. • For both the centralized and distributed methods, the required number of communication packets is large if the number of mobile nodes is big enough. The high communication demands of the RTT method also imply high demands on energy. • In practice, including TReply in the acknowledgement message may not be a precise method. From Fig. 4.1, the measurement of TReply requires nanosecondlevel time stamps when the acknowledgment is sent from node B. Thus, when node B is preparing the acknowledgement package, only the prediction, instead of the measurement, of TReply is available. Because the light may transfer hundreds of meters in the time that a sensor node executes one command, TReply is hard to predict precisely to support cm-level location accuracy. In the worst case, another acknowledgement should be sent from the mobile node in order to report the accurate measurement on the TReply , thus sacrificing further bandwidth and energy. Another method is called the one-way ranging (OWR) method [174], which is also implemented in a commercial UWB localization system [175]. The method is a TDOA algorithm. From Fig. 4.2, note that the only message is sent from the mo-
134
4 Design of Localization Systems for Wireless Sensor Networks
bile node. The beacons (the anchor nodes in the figure) only listen to the mobile node. Thus, if the time intervals between the times when mobile nodes send the messages are large enough, the system is immune to multipath effects. However, OWR requires the beacons to be synchronous. The nanosecond-level time synchronization is not trivial, especially if the synchronization signals are transmitted via lossy wireless channels. Note that the anchor nodes [175] are connected by communication cables. In addition, the message flow from the mobile node still exists, which indicates that the energy and bandwidth cost of OWR is about the same as that of RTT and the localization is centralized. There is no significant improvement of OWR over RTT. Following the conventions in RTT analysis, the OWR method requires at least m + n + k packets for each mobile node to get its position, where k is the number of packets required for beacon synchronization. The number of packets is computed as follows: • First, the m mobile nodes broadcast m packets. • Second, n − 1 beacons send n − 1 packets to a sink beacon, which then has full knowledge of the range information. • Third, the sink beacon computes the positions of the mobile nodes and broadcasts the information to the mobile nodes. At least one more packet is required. • In total, we have m + (n − 1) + 1 packets, that is m + n. Note that the OWR method is a centralized method. If the information flow of OWR is in the reverse direction, i.e., from beacons to the mobile nodes, the system is more suitable for WSNs, which has a large number of mobile nodes.
4.3.2 Problem Formulation 4.3.2.1 Design Considerations It is desirable for an RF TOF-based localization system for WSNs to have the following features: • Distributed: the positions of each sensor node should be computed by the sensor nodes themselves, thus the burden on the communication and central computing unit is relaxed. • Asynchronous: the TOF of RF signals are so small that the synchronization precision requirements are very high, which may not be possible without wired connections or atomic clocks. In order to reduce the hardware costs, asynchronous localization systems are highly desirable. • Energy efficient and hardware costs: the ideal system should be less expensive in terms of both energy and hardware costs.
4.3 The Proposed Phase-Based Localization Method
135
4.3.2.2 Phase of Arrival We introduce the term phase of arrival (POA) to represent a measurement that is close to the TOA, but not identical. The use of POA is motivated by engineering considerations. Cost wise, the measurement of POA should be lower than that of TOA. In addition, if a communication packet is lost, it is easy to handle the situation in the proposed POA systems. The transmitter can simply retransmit the packet after one or more periods of the phase signal. Details of this process are presented later in this chapter. Assume there is a “wrap up” counter, as shown in the bottom plot of Figure 4.3. In the figure, the horizontal axis is time, while the vertical axis is phase. The phase signal is in a sawtooth form. The value of the counter starts from 0, increases by 1 at
Signal Strength
time Phase
time
Fig. 4.3 Phase detection
every time tick, arrives at the maximum value, nP , and starts over from 0 again. For hardware implementation purposes, it is desirable if nP + 1 is raised to the power of 2. The top plot of Figure 4.3 shows that a signal arrives at a certain moment in time. The counter value at that time is called the phase. The phase in this chapter is an integer within [0, nP ]. The cycling period of the counter is called the period of the reference signal, tR . Accordingly, there exists a frequency, f , and wavelength, λ, of the reference signal. The integer valued phase is introduced due to the relative ease of hardware implementation. The POA measurement is close to that of the TOA. However, POA measurement requires a high-speed counter with fewer bits, which reduces the hardware costs. In cases when beacon packets are lost, the POA method retransmits the message packet after tR . For TOA approaches, at least two high-speed counters are required for each node. For POA measurement, only one high-speed counter is required for
136
4 Design of Localization Systems for Wireless Sensor Networks
each node. The length of the counter should be long enough such that within the time tOF it is not wrapped up. Although this chapter focuses on RF signals, the POA is a general idea whose usefulness is not limited by communication medium or communication protocols, such as RF, sound, UWB, or CSS. 4.3.2.3 Phase-based Localization The idea of phase-based localization is presented in Fig. 4.4. The top of the figure illustrates the topological relation of the beacons and the mobile node. Since the positions of the beacons are known, the distance r12 and its associated TOF t1 are known. The distances r1A , r2A are unknown, as are their associated TOF t2 , t3 . The three charts, from top to bottom, at the bottom of Fig. 4.4 are associated with the clocks on beacon 1, beacon 2, and the mobile node, respectively. Comments on Fig. 4.4 are as follows:
t1 Beacon 1
r1A
r12
r2A
t2
Beacon 2
t3
Mobile Node A Signal from Beacon 1
Phase 0 Phase
time
tA Received by Beacon 2
ș12 Phase ș2A ș1A
Received by Mobile Node A
Signal from Beacon 2
tB
time
Received by Mobile Node A time
Fig. 4.4 Phase detection for TOF localization
• The clocks on the beacons and the mobile nodes are not synchronized. At the bottom of Fig. 4.4, we see that the sawtooth-like phases of the three clocks are not aligned. • At time tA , beacon 1 broadcasts an impulse message, which is received promptly by beacon 2 and the mobile node. The POA measured by beacon 2 is θ12 and
4.3 The Proposed Phase-Based Localization Method
137
that by the mobile node is θ1A . Since the clocks are not synchronized, the initial phases on the three axes in Fig. 4.4 are different. • Beacon 2 then must send an impulse message as soon as possible, with the same phase as that received in the impulse from beacon 1. If the impulse is lost, e.g., communication collision is detected while transmitting the impulse, then beacon 2 simply retransmits the impulse with a delay of one period of the reference signal. In the example shown in Fig. 4.4, at time tB , beacon 2 broadcasts a message with the phase θ12 . The POA of this message at the mobile node is θ2A . The delay between tB and tA is one or multiple periods of the reference signal. Compared with Fig. 4.1, it is likely that TReply must be a nonnegative integer multiplication of Tr , the period of the reference signal. • Thus, two communication packets are required. One from beacon 1 is broadcast to beacon 2 and the mobile node. Another packet is broadcast from beacon 2 to beacon 1 and the mobile node. Beacon 1 does not need to respond to the second packet. In the 2D domain, at least three beacons are required to provide a unique location of the mobile node. Figure 4.5 illustrates the reason why synchronization is not required. Because beacon 2 receives and transmits the message from beacon 1 with the same phase, it is like a virtual “mirror” that reflects the message from beacon 1. Thus, the difference between θ1A and θ2A indicates the difference between r12 +r2A and r1A . More precisely, if λ is the wavelength of the reference signal, we have (θ2A − θ1A )λ + k1 λ = r12 + r2A − r1A , nP where k1 is a natural number. Recall that nP is the maximum phase value. When λ is large enough, wrapping on the phase counter is not possible. Thus, mapping the phase to the distance does not allow for any ambiguity. That is (θ2A − θ1A )λ = r12 + r2A − r1A , nP (θ2A − θ1A )λ r2A − r1A = − r12 . nP That is, the mobile node is on a hyperbolic curve that is subject to the following form (4.1) r2A − r1A = d12 , where d12 =
(θ2A − θ1A )λ − r12 . nP
In practice, estimation noise is always unavoidable. If we denote the noise associated with dij as ej , the following equation holds z12 = r2A − r1A + e2 ,
(4.2)
138
4 Design of Localization Systems for Wireless Sensor Networks
where z12 is the measure of d12 based on sensor readings and r2A , r1A , e2 are the unknown parameters. To locate the mobile node uniquely on a 2D domain, more independent equations in the form of (4.1) are required. Let us take the three-beacon scenario as an example. The cases with more beacons are similar to this case. As shown in Fig. 4.5, once installed, beacon 3 gets the message from beacon 1 when it is broadcast. Then, beacon 3 transmits the received signal just like beacon 2.
P
C23
Beacon 2
Beacon 1
C13 C12 Beacon 3 Fig. 4.5 2D phase-based TDOA localization with three beacons
Repeat the above analysis and apply it to beacon 3. That is, replace beacon 2 in Fig. 4.5 by beacon 3. We have (θ3A − θ1A )λ = r13 + r3A − r1A , nP (θ3A − θ1A )λ r3A − r1A = − r13 , nP or r3A − r1A = d13 . Since beacon 3 and beacon 2 received the same broadcast packet from beacon 1, only one more packet is required. If measurement noise is considered, the following equation holds z13 = r3A − r1A + e3 ,
4.3 The Proposed Phase-Based Localization Method
139
where z13 is the measurement on d13 . As an extension, if there are more than three beacons, the formulation for the POA method is as follows: (θ2A − θ1A )λ − r12 , nP (θ3A − θ1A )λ = − r13 , nP .. . (θiA − θ1A )λ = − r1i , nP .. . (θnA − θ1A )λ = − r1n . nP
r2A − r1A = r3A − r1A
riA − r1A
rnA − r1A
The formulation can be converted into the standard TDOA form. After defining di as (θiA − θ1A )λ − r1i , di = nP we have di = riA − r1A , i ≥ 2, zi = di + ei , i ≥ 2. For simplicity, the notation rjA , j ≥ 1 is replaced by rj . That is di = ri − r1 , i ≥ 2,
(4.3)
zi = di + ei . The TDOA can be solved by standard nonlinear LS methods, which can be formulated as the following equations: min J1 (p; Q) p
n
J1 =
n
1 2 1 ei = (di − ri + r1 )2 , 2 i=2 2 i=2
ri = p − qi , Q = {q1 , q2 , · · · , qn }, where qi is the position of the ith beacon; p is the position of the mobile node; ri is the distance between the mobile node and the ith beacon; and di is defined in (4.3). ˆ as shown in di is subject to measurement noise ei . The optimal estimate of p is p the following equation:
140
4 Design of Localization Systems for Wireless Sensor Networks
ˆ = arg min J1 (p; Q). p p
(4.4)
4.4 Beacon Placement Optimization 4.4.1 Application Scenarios From (4.4), it is easy to see that estimation of p depends on the positions of the beacons, i.e., q. A question then naturally arises: what are the best positions for the beacons, in order to guarantee precision for the estimation of p? In typical WSN TDOA localization systems, users have the freedom to choose the positions of the beacons. Placement of the beacons may affect the localization error significantly. For example, if any two beacons of a three-beacon TDOA localization system are very close to each other, then one of the beacons is virtually redundant, and the positioning error may be significant. When the domain of interest is unbounded or regular, placement of the beacons may be intuitive. Beacons should be placed far apart from each other and not aligned on one line. However, placement may not be intuitive in practice, for example, when the deployment domain of the beacons is irregular. Imagine a WSN-based localization system deployed inside a building. The nonrestrictive optimal beacon positions would be outside of the building, or within concrete walls, or at other locations where beacon placement is impossible. Such constraints should be considered. For outdoor environments, many obstacles, such as lakes, highways, and buildings could place constraints on beacon deployment. In addition, some researchers [100] suggest introducing perturbation factors on beacon placement and spatial noise also call for systematic beacon placement methods. The beacon placement problem has been discussed [67, 68, 100] from different aspects. Motivated by improving the precision of proximity localization systems, [100] presented a heuristic adaptive beacon placement method. Based on the positioning errors associated with current beacon placement in a regular domain, this method selects grid points on which to place beacons to enhance localization precision. In some work [67, 68], beacon placement is optimized for multilateral localizations, which are commonly formulated as LS problems. The beacon placement problem is formulated as a binary integer programming problem in [68], where the domain of interest is divided into 16 × 10 grids. One binary variable is associated with one grid point and indicates whether a beacon is on the point or not. The total number of beacons is minimized using binary integer programming, subject to a constraint that the maximum distance from beacons to the mobile node must not exceed a certain threshold. The optimal beacon placement pattern discussed in paper [67] is based on an information theoretical approach, which is also a grid-based algorithm. In an open domain, several beacon placement patterns are compared based on the information entropy of the beacon signals. This method is applicable to domains where there are no constraints, or domains that are so large
4.4 Beacon Placement Optimization
141
that most of the beacons are placed internally without being affected by constraints on the boundary of the domain. The problem studied in this book is similar to that in paper [68], with some differences. In this book, beacon placement is optimized for robustness of the positioning. In the context of TDOA localization, we first solve a direct beacon placement problem where a given number of beacons are placed within a complex domain such that the maximum positioning error is minimized. In other words, the deployment provides robust, uniform small positioning errors everywhere in the domain. Next, a progressive beacon placement problem is addressed. Assume the estimation precision does not satisfy our requirements and thus the system should be upgraded. Given the existing beacons, the progressive beacon placement method adds a given number of beacons, such that the maximum positioning error based on all the beacons is minimized. The concept and goal of progressive beacon placement are similar to those of the adaptive beacon placement method in [100]. However, irregular domains, robustness, and multilateral localization have not been discussed the latter.
4.4.2 Problem Formulation In order to design the beacons’ positions, q properly, we formulate the problem as a rigorous optimization problem and solve it within the framework of OED [81] and semi-infinite programming (SIP) [176, 177]. First, a cost function should be constructed based on the covariance matrix of p ˆ, or cov(ˆ p), as presented in Chap. 2 and 3, cov(ˆ p) = M−1 , where M is the FIM. Again, the D-optimality criterion, Ψ (M) = − ln det(M), is applied. Now, the beacon position optimization problem can be formulated as a min–max problem as follows: ˆ = arg min max Ψ (M(p; Q)), q qi ∈Ω p∈Ω
M = AT A, di = ri − r1 ,
(4.5) (4.6)
ri = p − qi , A = (∇p d)T , where Ω is the domain inside which the beacons and the mobile node are to be deployed. To solve the problem in (4.5), the sensitivity, A, is computed as follows:
142
4 Design of Localization Systems for Wireless Sensor Networks
A = ∇p d =
∂ ∂p.x d2 ∂ ∂p.y d2
··· ···
∂ ∂p.x dn ∂ ∂p.y dn
= r1−1 (p − q1 ) − r2−1 (p − q2 ), · · · , r1−1 (p − q1 ) − rn−1 (p − qn ) = [a2 , · · · , an ] ,
where ai is defined as ai = r1−1 (p − q1 ) − ri−1 (p − qi ). Thus, ai is the ith column of the matrix A, i.e., A(:, i) = ai , i = 1. In summary, M = AAT =
n
ai aTi .
i=2
This problem can be solved using the SIP method. A generic SIP problem is defined as the following: Definition 4.1 (SIP). When f (x) and g(x, s) are two functions, SIP solves the following optimization problem: min f (x), x
subject to : ∀s ∈ Ω, g(x, s) ≤ 0, where Ω is the domain of s. Thus, the direct optimal beacon placement problem can be formulated as an SIP problem. Definition 4.2 (Direct optimal beacon placement). Given an acceptable beacon placement domain as Ω1 and the mobile node’s placement domain Ω2 , the direct beacon placement problem is to solve qi , i ∈ [1, n] satisfying the following:
min
qi ∈Ω1 ,i∈[1,n]
Ψ [M(ˆ p; qi )],
subject to : max Ψ [M(p; qi )] − Ψ [M(ˆ p; qi )] ≤ 0, p∈Ω2
p ˆ = arg max Ψ [M(p; qi )]. p∈Ω2
Remark. The equivalence between (4.5) and the Definition 4.2 is more obvious if the above equations are simplified as:
4.4 Beacon Placement Optimization
143
min y(q), q
(4.7)
subject to : max Ψ (M) ≤ y(q). p
Although not as precise as Definition 4.2, (4.7) captures the key concept and is easy to understand. For simplicity, the examples in this book have the same placement domains for beacons and the mobile nodes, i.e., Ω1 = Ω2 = Ω. The aforementioned progressive optimal beacon placement problem can also be formulated within the SIP framework. Definition 4.3 (Progressive optimal beacon placement). Given n beacons placed at the positions qi ∈ Ω1 , i ∈ [1, n], the optimal position of additional k beacons are qj ∈ Ω1 , j ∈ [n + 1, n + k], which are solved by the following: min
qj ∈Ω1 ,j∈[n+1,n+k]
Ψ [M(ˆ p, qj ; qi )], i ∈ [1, n]
p, qj ; qi )] ≤ 0, subject to : max Ψ [M(p, qj ; qi )] − Ψ [M(ˆ p∈Ω2
p ˆ = arg max Ψ [M(ˆ p, qj ; qi )], i ∈ [1, n]. p∈Ω2
4.4.3 Solution and Simulation R All the simulations in this chapter are based on a MATLAB function named R fseminf. According to the documentation of MATLAB , the function is defined as follows:
FSEMINF solves problems of the form: min { F(x) | C(x)<=0 , Ceq(x) = 0 , PHI(x,w)<=0 } x for all w in an interval. X=FSEMINF(FUN,X0,NTHETA,SEMINFCON) starts at X0 and finds minimum X to the function FUN constrained by NTHETA semi-infinite constraints in the function SEMINFCON. FUN accepts vector input X and returns the scalar function value F evaluated at X. R functions, Jsip and JsipCont, to charWe need to provide two MATLAB acterize the cost function and constraints, which are the C(x), Ceq(x), and PHI(x,w) in the declaration of fseminf. In our simulation, the function takes the following form:
Q=fseminf(@Jsip,Q0,2,@JsipCont),
(4.8)
144
4 Design of Localization Systems for Wireless Sensor Networks
where Q0 is the initial guess on Q, which is the optimized beacon positions in the following form: Q = [q1 , q2 , · · · , qn ]. That is, qi = Q(:, i). Each qi is a column vector that represents the position of a beacon. The key task for the implementation is to incorporate the SIP in the two user specified functions, Jsip and JsipCont. In addition, for convenience, we write a function named isInDomain which judges if an array of points are inside the domain of interest or not. The function returns an array after getting a list of positions, Q, as the input. Each entry in the output array is associated with one position in the inputs. If the position of the input is not within the domain of interest, the associated output entry is −1, otherwise the entry is 1. This output array is actually the C(x) constraint in the fseminf function. The use of the isInDomain function is shown in Tables 4.1 and 4.2. The pseudocode of the direct and progressive optimal beacon placement algorithms are listed in Tables 4.1 and 4.2, respectively. The computation of the FIMs, i.e., MG and M , have been discussed. After the functions Jsip and JsipCont R are called by MATLAB in the form in (4.8), the output is Q. Comparing the two algorithms in Tables 4.1 and 4.2, we see that the similarities between the two are significant. The behavior differences between them are mainly due to the fact that the positions for the existing beacons, i.e., QS , are a global variable in the JsipCont function for the progressive beacon placement algorithm, but not in the direct beacon placement algorithm. The positions for the beacons yet to be optimized is embedded in Q, which is the input variable for Jsip and JsipCont functions of the two algorithms. In other words, Q is configured as the parameter to be optimized, but QS is not. The input variable s for the two JsipCont functions in Tables 4.1 and 4.2 is not R optimization process used, since s is required for internal usage by the MATLAB only. At this point, it is easy to understand the number 2 in (4.8), which is the number of semi-infinite constraints. Observe from the JsipCont functions in Tables 4.1 and 4.2 that there are two semi-infinite constraints, i.e., PhiCon and QCon, in the returned parameter list for each JsipCont function. The global variable p is the max error position of the mobile node, where the associated DM entry has the largest value. Thus, p in the pseudocode is arg maxp∈Ω Ψ (M ). Observing the pseudocode, it is easy to see that other multilateral localization methods, such as TOA and AOA, can be studied in the same framework. Almost everything in the pseudocode is applicable, with the exception of the computations on FIMs. Thus, the proposed beacon placement methods are not limited to TDOA localization only. The simulation results are included in Figs. 4.6 to 4.11. In Figs. 4.6 to 4.10 the red diamonds indicate the optimized beacon positions. If the beacons are placed at the positions of the red diamonds, the worst case position estimation in this domain is minimized. Based on these figures and on experiments, we observe the following: • There is virtually no restriction on the shape of the domain of interest. As long as the function isInDomain distinguishes the internal and external positions
4.4 Beacon Placement Optimization
145
Table 4.1 Pseudocode for direct optimal beacon placement 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
f u n c t i o n J = J s i p (Q) g l o b a l p MG ;
T MG = n i=1 ai (p; qi )ai (p; qi ) ; J =Ψ (MG ) ; return ;
f u n c t i o n [ c , ceq , PhiCon , QCon , s ] = J s i p C o n t ( Q, s ) g l o b a l p MG ; % Q is the positions of all the beacons. Q = [q1 , q2 , · · · , qn ]. p= meshgrid ( l i n s p a c e ( 0 , 1 , nG ) , l i n s p a c e ( 0 , 1 , nG ) ) ; % segment the domain that surround the Ω into nG × nG grids. For e a c h g r i d p o i n t p(r, c) , where r and c a r e t h e row and column indices , respectively . I f p(r, c) ∈ Ω DM (r, c) = Ψ {M[p(r, c); Q]} ; else DM (r, c) = 0 ; end end PhiCon =DM − Ψ (MG )∗ o n e s ( s i z e ( DM ) ) ; QCon= i s I n D o m a i n (Q) ; p= t h e p o s i t i o n a s s o c i a t e d w i t h max DM ; c =[]; ceq = [ ] ; return ;
of the domain, the algorithms in Tables 4.1 and 4.2 are valid. As a comparison, the algorithms in some references [67, 100] are not applicable for arbitrary domains. • There is no restriction on the number of beacons to be placed or that have been placed. For example, in Fig. 4.11, five beacons have been placed, and the positions of the two additional beacons are optimized. In Figs. 4.6 to 4.9, the deployment of three beacons has been optimized. It can be seen from the pseudocode in Tables 4.1 and 4.2 that the number of beacons is unrestricted. • The speed of the simulation is fast. On a Pentium 4 3 GHz PC, the execution time is from about 9 s to 160 s Considering that the grid size in our simulation is 100 × 100 = 10, 000 (nG = 100 in Tables 4.1 and 4.2), which is very large, the speed of the simulation is very fast. • The optimal beacon placement for irregular domains may not be intuitive. For example, intuitively, the right beacon in Fig. 4.8 may be placed on the rightmost hemisphere boundary of the domain, since this position ensures that more area is covered by the triangle created by the three beacons. However, the result of optimization does not support this intuition. In fact, the beacon placements in Figs. 4.7 to 4.11 are not very intuitive. These results support the claim that systematic optimization of the beacon placement is necessary.
146
4 Design of Localization Systems for Wireless Sensor Networks
Table 4.2 Pseudocode for the progressive optimal beacon placement 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
f u n c t i o n J = J s i p (Q) g l o b a l p MG QS ; % QS are the static beacons which have been placed. % QS = [qS1 , qS2 , · · · , qSn ]. % Q is the positions of the additional beacons. Q = [qn+1 , qn+2 , · · · , qn+k ].
T MG = n i=1 ai (p; qSi )ai (p; qSi ) + J =Ψ (MG ) ; return ;
n+k
j=n+1
aj (p; qj )aj (p; qj )T ;
f u n c t i o n [ c , ceq , PhiCon , QCon , s ] = J s i p C o n t ( Q, s ) g l o b a l p M G QS ; p= meshgrid ( l i n s p a c e ( 0 , 1 , nG ) , l i n s p a c e ( 0 , 1 , nG ) ) ; % segment the domain that surround the Ω into nG × nG grids. For e a c h g r i d p o i n t p(r, c) , where r and c a r e t h e row and column indices , respectively . I f p(r, c) ∈ Ω DM (r, c) = Ψ {M[p(r, c); QS ]} + Ψ {M[p(r, c); Q]} ; else DM (r, c) = 0 ; end end PhiCon =DM − Ψ (MG )∗ o n e s ( s i z e ( DM ) ) ; QCon= i s I n D o m a i n (Q) ; p= t h e p o s i t i o n a s s o c i a t e d w i t h max DM ; c =[]; ceq = [ ] ; return ;
• The optimized solution may not be unique. For example, the domain of interest in Fig. 4.6 is a square, which is symmetric. The optimal positions of the beacons must be symmetric. Thus, if the beacon positions in Fig. 4.6 are rotated by 90 degrees, the new positions should have the same cost as the current solution. • Following the above observation, it seems that, like common nonlinear optimization, the outputs of the algorithms are local optimum solutions. There is no guarantee of finding the global minimum solution. In the simulations, we also observed that the initial values affect the final results. In practice, it is advisable to execute the optimization several times with different random initial values. This simple strategy helps to find the global minimum solution. Of course, there are many other strategies for global optimization, which is a rich research topic.
4.4 Beacon Placement Optimization
147
Optimal beacon placement by min max design for TDOA localization. (with SIP) 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2
0.4
0.6
0.8
1
Fig. 4.6 Direct optimal beacon placement for TDOA localization, domain 1 Optimal beacon placement by min max design for TDOA localization. (with SIP) 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
−0.2
0
0.2
0.4
0.6
Fig. 4.7 Direct optimal beacon placement for TDOA localization, domain 2
0.8
148
4 Design of Localization Systems for Wireless Sensor Networks Optimal beacon placement by min max design for TDOA localization. (with SIP) 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2
0.4
0.6
0.8
1
Fig. 4.8 Direct optimal beacon placement for TDOA localization, domain 3 Optimal beacon placement by min max design for TDOA localization. (with SIP) 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2
0.4
0.6
0.8
Fig. 4.9 Direct optimal beacon placement for TDOA localization, domain 4
1
4.4 Beacon Placement Optimization
149
Optimal beacon placement by min max design for TDOA localization. (with SIP) 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2
0.4
0.6
0.8
1
Fig. 4.10 Direct optimal beacon placement for TDOA localization, domain 5 Optimal beacon placement by min max design for TDOA localization. (with SIP) 1 Init. Prog. Add 0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2
0.4
0.6
0.8
1
Fig. 4.11 Progressive optimal beacon placement for TDOA localization, domain 5
150
4 Design of Localization Systems for Wireless Sensor Networks
4.5 Chapter Summary In this chapter, an asynchronous TDOA localization method for energy efficient and low-cost WSN localization is proposed: POA localization. The solution can be transferred into the standard TDOA formulation. In order to minimize the maximum positioning errors within deployment domains, two algorithms are proposed to optimize the placement of the beacons, based on SIP approaches. These two algorithms are targeted at direct and progressive optimal beacon placement, respectively. Compared with the related beacon placement methods, the proposed approaches are fast and place no constraints on the shapes of the beacon deployment domains.
Chapter 5
Conclusions and Future Work
5.1 Conclusions WSN is an important technology for physical world observation. While WSN has significant advantages over the traditional wired data collection systems, it is facing unique challenges. For example, the massive and densely deployed WSN could provide more cost-efficient and fine-grid sensing of physical phenomena, compared with the traditional methods. The mobilities of the wireless sensor nodes may further enhance the performance of the observation. To facilitate the above applications, many challenges must be addressed, including energy efficient observation, localization, scalability, fault tolerance, etc. Among them, energy efficiency is a central challenge that has received much attention and been attacked from different aspects, but is still under active research. Much of this book is motivated by reducing energy costs. This discussion details on several key challenges of WSNs within a unified theoretical framework, i.e, the theory of OED. Our first challenge is to take the advantages of mobilities of sensors for better observation of physical phenomena. In order to drive mobile sensors along the optimum trajectories for parameter estimations of DPSs, a numerical optimal control R R PDE toolbox and RIOTS, a MATLAB method is proposed. Based on MATLAB optimal control toolbox, this proposed method generates the optimal sensor trajectories to minimize a metric that indicates the estimation error, i.e., the volume of the FIM that is associated with the covariance matrix of the parameters under estimation. With this method, we simulate difference application scenarios, including observing a diffusing fog with single or multiple robotic sensors, and by sensors with different dynamics. The second challenge is to design a sensor selection algorithm for energy efficient observation. A sensor selection algorithm named COSS is designed and analyzed. We prove that there is a class of COSS methods that can achieve the optimal estimation predicted by the CRLB with the minimal number of sensors that is allowed by Carath´eodory’s theorem.The robustness and efficiency of the COSS are tested extensively by simulations and hardware experiments. Compared with the existing
151
152
5 Conclusions and Future Work
methods, the proposed COSS algorithm is fast and memory efficient, and thus more suitable for low-cost WSN sensor nodes. In addition, COSS optimizes the observation precision as well as the number of selected sensors. Thus, the COSS algorithm optimizes the tradeoff between estimation precision and energy costs. The last but not least important challenge is WSN localization. Motivated by reducing hardware and energy costs, an asynchronous TDOA method is proposed, the POA method, which can be converted into the standard TDOA problem formulation. Based on the TDOA method, two fast beacon placement optimization algorithms are developed based on SIP. The methods are applicable not only to the proposed asynchronous TDOA, but also to the generic TDOA and TOA as well. Compared with the related beacon placement methods, the proposed approaches are fast and have no constraints on the shapes of the beacon deployment domains. All these challenges are formulated as convex optimizations on cost functions based on the FIM, which plays a key role in the theory of OED. The abstractions of the three problems in this book share the same theoretical framework, and are strongly related to each other. A main contribution of this book lies in formulating and solving observation problems involving WSNs within the FIM framework as shown in detail in Chapts. 2, 3 and 4. Specifically, in Chapt. 2, using FIM, we are able to decide optimally the mobile sensor trajectories to achieve the minimum variance parameter estimation of DPSs with mobile sensors under nonholonomic constraints. In Chap. 3, the minimum number of sensors are selected implicitly while minimizing a class of FIM-based convex cost functions with convex constraints. The optimal estimation is achieved simultaneously with the selected sensors. Finally, the beacon placement problems in Chap. 4 are formulated and solved as SIP problems on FIM-based cost functions. Currently, FIM is not commonly discussed in the literature of WSNs. In this book, we extend the applications of FIM, formulate and solve several important WSN observation problems based on FIM. This book demonstrates that FIM and convex analysis are promising mathematical tools for observation problems in WSNs.
5.2 Future Work The future work includes developing distributed COSS algorithms and extending the COSS algorithm by considering the dynamics of targets. Regarding the beacon placement problem, we will further discuss global optimization by SIP-based methods and compare the performances with current solutions. In addition, more WSN problems could be formulated within the framework of FIM and OED. It is believed that more connections between FIM and physical quantities, such as delay and reliability, could be established which may open many possible research opportunities.
Appendix A
Implementations
A.1 Simulation of Trajectory Optimization This section presents the implementation of simulations in Chap. 2. Table A.1 is an example of how to set up common parameters of the simulation and how to invoke the riots function. Tables A.2, A.3, and A.4 are examples of two key functions for the riots function. sys_init.m is the initialization function for the optimization. The robots’ dynamics model is formulated in sys_h.m, while the optimization criteria is presented in sys_g.m. The variable Sensitivity is R PDE toolbox. the sensitivities of sample points, and is computed by the MATLAB The function Interpolate is a function to interpolate sensitivity values.
153
154
A Implementations
Table A.1 An example setting for RIOTS simulations 1 2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18
19 20
m= 0 . 0 5 ; % weight of each robot: 0.05 kg b = 0 . 0 8 ; % edge length of each robot: 8 cm l = 0 . 0 8 ; % length between the two wheels of a robot: 8 cm I =m∗b∗b ∗ 2 / 1 2 ; % inertial of a robot with respect to the z-axis r = 0 . 0 4 ; % radius of the wheel: 4 cm MinU = −100; % bound of the input torque is positive and negative 100 kg-m MaxU = 1 0 0 ; s0 = [ 0 . 2 ; 0 . 1 ; 1 5 / 1 8 0 ∗ p i ; z e r o s ( 3 , 1 ) ; . . . % The initial states of the 1st robot: initial position is (0.2, 0.1). Initial orientation is 15 degree and the initial linear and rotatory speeds are all 0. 0 . 2 ; 0 . 5 ; 1 5 / 1 8 0 ∗ p i ; z e r o s ( 3 , 1 ) ; . . . % The initial states of the 2nd robot 0 . 2 ; 0 . 8 ; 1 5 / 1 8 0 ∗ p i ; z e r o s ( 3 , 1 ) ] ; % The initial states of the 3rd robot BoundXY = 1 ; % B o u n d V e l o c i t y = 0 . 5 ; % 0.5 m/s BoundAlpha = 2 ; % 2 rad/s N u m b e r O f P a r a m e t e r s = 3 ; % to observe three parameters: C1, C2, C3 NumberOfMayerVariable = N u m b e r O f P a r a m e t e r s ∗ ( N u m b e r O f P a r a m e t e r s + 1) / 2 ; % compute to number of Mayer states as the augmentation of robot’s state variables. x0 = [ s0 ; z e r o s ( Num berOfM ayerVari abl e , 1 ) ] ; N u m b e r O f S e n s o r S t a t e s = 6∗3; % there are three robots with 6 internal states for each one. f i x e d = [ ones ( NumberOfSensorStates , 1) ; zeros ( NumberOfMayerVariable , 1 ) ] ; % Inform riots which variables are fixed thus should not be optimized by assigning 1 to the associated values in the “fixed” vector. X0 = [ x0 , f i x e d , x 0 l o w e r , x 0 u p p e r ] ; [ u o p t m l , x o p t m l , f ] = r i o t s ( X0 , u0 , TGRID , −u max ∗ o n e s ( n c t r l s , 1 ) , u max ∗ o n e s ( n c t r l s , 1 ) , [ ] , [ 8 0 , 0 , 1 ] , 4 ) ; Table A.2 An example of the sys init.m file for RIOTS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
f u n c t i o n neq = s y s i n i t ( param s ) g l o b a l S e n s i t i v i t y Num berSensors S t a t e s P e r S e n s o r = 6 ; % f o r d i f f e r e n t i a l l y −d r i v e n r o b o t s i f i s e m p t y ( param s ) N u m b e r C o n t r o l s = 2 ∗ Num berSensors ; NumberParameters = s i z e ( S e n s i t i v i t y , 4) ; N u m b e r S t a t e s = S t a t e s P e r S e n s o r ∗ Num berSensors + NumberParameters ∗ ( NumberParameters + 1) / 2; % 6 s t a t e s f o r each d i f f e r e n t i a l d r i v e r o b o t % n ∗ ( n +1) / 2 i s t h e number o f u n i q u e e n t r i e s i n t h e FIM neq = [ 1 N u m b e r S t a t e s ; 2 N u m b e r C o n t r o l s ] ; % neq = 1 : number o f s t a t e v a r i a b l e s . % neq = 2 : number o f i n p u t s else g l o b a l SysParam s SysParam s = param s ; end return
A.1 Simulation of Trajectory Optimization
155
Table A.3 An example of the sys h.m file for RIOTS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
f u n c t i o n x d o t = s y s h ( neq , t , x , u ) g l o b a l SysParam s I n d e x M a y e r V a r i a b l e Num berSensors global b m l I r S t a t e s P e r S e n s o r = 6 ; % for differentially-driven robots Num berSensorDynam i cs = Num berSensors ∗ S t a t e s P e r S e n s o r ; N u m b e r P a r a m e t e r s =round ( s q r t ( I n d e x M a y e r V a r i a b l e ( end ) ) ) ; x1 = x ( 1 : S t a t e s P e r S e n s o r : Num berSensorDynam i cs − 1 ) ; % x1 is the x-axis x2 = x ( 2 : S t a t e s P e r S e n s o r : Num berSensorDynam i cs ) ; % x2 is the y-axis % the states of one robot is x=[x1 x2 alpha dx1 dx2 dalpha]’ g = I n t e r p o l a t e S e n s i t i v i t i e s ( x1 , x2 , t , neq ( 4 ) ) ; a = z e r o s ( Num berParam e t e r s , N u m b e r P a r a m e t e r s ) ; f o r l o o p = 1 : Num berSensors a = a + g ( l oop , : ) ’ ∗ g ( l oop , : ) ; end A33=[−2∗ b /m 0 0 ; 0 −2∗b /m 0 ; 0 0 −b∗ l ∗ l / ( 2 ∗ I ) ] ; A1 = [ z e r o s ( 3 ) eye ( 3 ) ; z e r o s ( 3 ) A33 ] ; % the A matrix for one robot A= [A1 z e r o s ( s i z e ( A1 , 1 ) , s i z e ( A1 , 2 ) ∗ ( Num berSensors −1) ) ] ; f o r c n t = 1 : Num berSensors −1 A= [A; z e r o s ( s i z e ( A1 , 1 ) , s i z e ( A1 , 2 ) ∗ c n t ) A1 z e r o s ( s i z e ( A1 , 1 ) , s i z e ( A1 , 2 ) ∗ ( Num berSensors −1−c n t ) ) ] ; end % A is comparable to A1, but for n sensors N u m b e r P h y s i c a l S t a t e= Num berSensors ∗ S t a t e s P e r S e n s o r ; B=[] ; Zero = z e r o s ( S t a t e s P e r S e n s o r , 2 ) ; a l p A r r a y =x ( 3 : S t a t e s P e r S e n s o r : N u m b e r P h y s i c a l S t a t e ) ; f o r c n t = 1 : Num berSensors alp=alpArray ( cnt ) ; B1 = [ z e r o s ( 3 , 2 ) ; . . . r ∗ c o s ( a l p ) /m r ∗ c o s ( a l p ) /m ; . . . r ∗ s i n ( a l p ) /m r ∗ s i n ( a l p ) /m ; . . . −r ∗ l / ( 2 ∗ I ) r∗ l /(2∗ I ) ]; B= [B ; r e p m a t ( Zero , 1 , c n t −1) B1 r e p m a t ( Zero , 1 , ( Num berSensors−c n t ) ) ] ; end x d o t = [A∗x ( 1 : N u m b e r P h y s i c a l S t a t e ) +B∗u ; a ( M a y e r V a r i a b l e ) ] ; return
156
A Implementations
Table A.4 An example of the sys g.m file for RIOTS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
f u n c t i o n J = s y s g ( neq , t , x0 , x f ) g l o b a l SysParam s I n d e x M a y e r V a r i a b l e S t a t e s P e r S e n s o r =6; Num berSensors = round ( neq ( 2 ) / 2 ) ; N u m b e r P h y s i c a l S t a t e= Num berSensors ∗ S t a t e s P e r S e n s o r ; N u m b e r P a r a m e t e r s =round ( s q r t ( I n d e x M a y e r V a r i a b l e ( end ) ) ) ; Num berSensorDynam i cs = neq ( 1 ) ; FNum = neq ( 5 ) ; i f FNum == 1 fi m = z e r o s ( Num berParam et e r s , N u m b e r P a r a m e t e r s ) ; fi m ( I n d e x M a y e r V a r i a b l e ) = x f ( N u m b e r P h y s i c a l S t a t e + 1 : end ) ; % comput FIM based on the Mayer states fi m = fim ’ ; fi m ( I n d e x M a y e r V a r i a b l e ) = x f ( N u m b e r P h y s i c a l S t a t e + 1 : end ) ; J = −l o g ( d e t ( fi m ) ) ; else e r r o r ( ’ R e f e r e n c e t o a non−e x i s t i n g c o n s t r a i n t on i n i t i a l / final state ’) end return
A.2 Sensor Selection Demonstration System
157
A.2 Sensor Selection Demonstration System The example sensor selection code is shown in Table A.5, with the following comments on the variables. • • • • •
NSample: the total number of samples SenPos: positions of all the sensors C,LampHeight: parameters of the lamp sigma: standard deviation eta: tuning knob for sampling rate optimization
Table A.5 Example sensor selection code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
SenVal= S e n s o r D a t a W i t h N o i s e ( S e l S e n P o s , LampPos ) ; % collect sensor data Pos0 =mean ( SenPos , 2 ) ; LSDat= s t r u c t ( ’ SenPos ’ , SenPos , ’ SenVal ’ , SenVal , ’C ’ ,C , ’ LampHeight ’ , LampHeight ) ; O pt set = o p t i m s e t ( ’ fmincon ’ ) ; Pos1 = f m i n c o n ( @EnergyErr , Pos0 , [ ] , [ ] , [ ] , [ ] , . . . [ 0 ; 0 ] , [ GridNumX ; GridNumY ] ∗ G r i d S i z e I n ∗ in2cm , [ ] , O p t s e t , LSDat ) ; SenST = S e n s i t i v i t y C o m p ( SenPos , Pos1 , ’ e n e r g y ’ ) ; ErrM1= z e r o s ( 2 , 2 ) ; f o r c n t = 1 : SensorNum ; ErrM1=ErrM1+ si gm a ˆ( −2) ∗SenST ( : , c n t ) ∗SenST ( : , c n t ) ’ . . . ∗ round ( NSample / SensorNum ) ; end p l o t E l l i p s e ( Pos1 , i n v ( ErrM1 ) , ’ : k ’ ) ; p=SampOpt ( Pos1 , SenST , sigma , e t a ) ; % Sampling rate optimization S e n I n d = f i n d ( p>=T h r e s h o l d S e l e c t i o n ) ; SelSenP = p ( SenInd ) ; S e l S e n P o s = SenPos ( : , S e n I n d ) ; S e l S e n V a l = S e n s o r D a t a W i t h N o i s e ( S e l S e n P o s , LampPos ) ; % collect another set of sensor data LSDat2= s t r u c t ( ’ SenPos ’ , S e l S e n P o s , ’ SenVal ’ , S e l S e n V a l , ’C ’ , C , ’ LampHeight ’ , LampHeight ) ; Pos2 = f m i n c o n ( @EnergyErr , LampPos , [ ] , [ ] , [ ] , [ ] , . . . [ 0 ; 0 ] , [ GridNumX ; GridNumY ] ∗ G r i d S i z e I n ∗ in2cm , [ ] , O p t s e t , LSDat2 ) ; SenST2 = S e n s i t i v i t y C o m p ( S e l S e n P o s , Pos2 , ’ e n e r g y ’ ) ; ErrM2= z e r o s ( 2 , 2 ) ; f o r c n t = 1 : s i z e ( SenST2 , 2 ) ; ErrM2=ErrM2+ si gm a ˆ( −2) ∗ SenST2 ( : , c n t ) ∗SenST2 ( : , c n t ) ’ ∗ round ( NSample ∗ S e l S e n P ( c n t ) ) ; end h 2 b a l l = p l o t E l l i p s e ( Pos2 , i n v ( ErrM2 ) , ’ g ’ ) ; h2pos = p l o t ( Pos2 ( 1 ) , Pos2 ( 2 ) , ’ xg ’ ) ; h2SelSen = pl ot ( SelSenPos ( 1 , : ) , SelSenPos ( 2 , : ) , ’ r s ’ ) ; return
158
A Implementations
Table A.6 Example code for sensitivity computation 1 2 3 4 5 6 7 8 9 10 11 12
f u n c t i o n SenST= S e n s i t i v i t y C o m p ( Pos , LampPos ) % Pos: the position of each sensor node % LampPos: the position on the lamp global C SenN= s i z e ( Pos , 2 ) ; SenVal = SensorM ode l ( Pos , LampPos ) ; % nominal value, without error Len= s i z e ( Pos , 2 ) ; SenST= z e r o s ( 2 , Len ) ; f o r c n t = 1 : Len SenST ( : , c n t ) = 2 ∗ ( Pos ( : , c n t )−LampPos ) ∗ ( SenVal ( c n t ) . ˆ 2 ) ’ / C ; end return
References
1. K. Chintalapudi, J. Paek, N. Kothari, S. Rangwala, J. Caffrey, R. Govindan, E. Johnson, and S. Masri, “Monitoring civil structures with a wireless sensor network,” IEEE Internet Computing, March/April 2006. 2. T. Kevan, “Shipboard machine monitoring for predictive maintenance,” Sensors Magazine, February 2006 [Online]. Available: http://www.sensorsmag.com/sensors/article/articleDetail.jsp?id=314716. 3. L. Krishnamurthy, R. Adler, P. Buonadonna, J. Chhabra, M. Flanigan, N. Kushalnagar, L. Nachman, and M. Yarvis, “Design and deployment of industrial sensor networks: experiences from a semiconductor plant and the north sea,” in SenSys’05: Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems, pp. 64–75. New York, NY, USA: ACM, 2005 [Online]. Available: http://doi.acm.org/10.1145/1098918.1098926. 4. D. M. Doolina and N. Sitara, “Wireless sensors for wildfire monitoring,” in Proceedings of SPIE Symposium on Smart Structures & Materials, 2005 [Online]. Available: http://firebug.sourceforge.net/publications.php. 5. A. Anandarajah, K. Moore, A. Terzis, and I. J. Wang, “Sensor networks for landslide detection,” in SenSys’05: Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems, pp. 268–269. New York, NY, USA: ACM Press, 2005 [Online]. Available: http://dx.doi.org/10.1145/1098918.1098948. 6. W. Wolf, “The good news and the bad news,” Computer, vol. 40, no. 11, pp. 104–105, 2007 [Online]. Available: http://dx.doi.org/10.1109/MC.2007.404. 7. C. Tricaud and Y. Chen, “Optimal mobile actuator/sensor network motion strategy for parameter estimation in a class of cyber physical systems,” in Accepted by IEEE American Control Conference (ACC), Jun. 2009. 8. I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “A survey on sensor networks,” IEEE Communications Magazine, vol. 40, no. 8, pp. 102–114, August 2002. 9. C. Y. Chong and S. Kumar, “Sensor networks: Evolution, opportunities, and challenges,” Proceedings of the IEEE, vol. 91, no. 8, pp. 1247–1256, August 2003. 10. F. Zhao and L. Guibas, Wireless Sensor Networks: An Information Processing Approach. San Francisco, CA: Morgan Kaufmann Publishers, 2004. 11. I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “Wireless sensor networks: a survey,” Computer Networks, vol. 38, pp. 393–422, 2001. 12. H. Qi, S. S. Iyengar, and K. Chakrabarty, “Distributed sensor networks – a review of recent research,” Journal of the Franklin Institute, vol. 338, pp. 655–668, 2001. 13. D. Estrin, L. Girod, G. Pottie, and M. Srivastava, “Instrumenting the world with wireless sensor networks,” in Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), pp. 2033–2036, Salt Lack City, UT, USA, May 2001 [Online]. Available: http://dx.doi.org/10.1109/ICASSP.2001.940390.
159
160
References
14. B. Krishnamachari, D. Estrin, and S. Wicker, “Modelling datacentric routing in wireless sensor networks,” 2002 [Online]. Available: http://citeseer.ist.psu.edu/article/krishnamachari02modelling.html. 15. S. Rangwala, R. Gummadi, R. Govindan, and K. Psounis, “Interference-aware fair rate control in wireless sensor networks,” SIGCOMM Comput. Commun. Rev., vol. 36, no. 4, pp. 63–74, 2006. 16. B. Warneke, M. Last, B. Liebowitz, and K. S. J. Pister, “Smart dust: communicating with a cubic-millimeter computer,” IEEE Computer, vol. 34, no. 1, pp. 44–51, January 2001. 17. IEEE Computer Society, “Part 15.4: Wireless medium access control (MAC) and physical layer (PHY) specifications for low-rate wireless personal area networks (LR-WPANs),” Oct. 2003 [Online]. Available: http://standards.ieee.org/catalog/olis/lanman.html. 18. K. Lorincz and M. Welsh, “MoteTrack: A robust, decentralized approach to RF-based location tracking,” Springer Personal and Ubiquitous Computing, Special Issue on Location and Context-Awareness, pp. 1617–4909, October 2006 [Online]. Available: http://dx.doi.org/10.1007/s00779-006-0095-2. 19. M. C. Vuran, O. B. Akan, and I. F. Akyildiz, “Spatio-temporal correlation: Theory and applications for wireless sensor networks,” Computer Networks Journal, vol. 45, no. 3, June 2004. 20. Moteiv Corporation, “Tmote Sky datasheet,” November 2006 [Online]. Available: http://www.moteiv.com/products/tmotesky.php. 21. J. Polastre, R. Szewczyk, and D. Culler, “Telos: Enabling ultra-low power wireless research,” in Proceedings of International Symposium on Information Processing in Sensor Networks (IPSN), pp. 364–369, April 2005 [Online]. Available: http://www.moteiv.com/products/docs/an002-telos.pdf. 22. J. Gehrke and S. Madden, “Query processing in sensor networks,” IEEE Pervasive Computing, vol. 3, no. 1, pp. 46–55, Jan.-Mar. 2004 [Online]. Available: http://dx.doi.org/10.1109/MPRV.2004.1269131. 23. D. Malan, T. F. Jones, M. Welsh, and S. Moulton, “CodeBlue: An ad-hoc sensor network infrastructure for emergency medical care” [Online]. Available: http://www.eecs.harvard.edu/∼ mdw/papers/codeblue-bsn04.pdf. ¨ 24. P. Ogren, E. Fiorelli, and N. E. Leonard, “Cooperative control of mobile sensor networks: Adaptive gradient climbing in a distributed environment,” IEEE Transactions on Automatic Control, vol. 49, no. 8, pp. 1292–1302, August 2004. 25. P. K. Dutta, A. K. Arora, and S. B. Bibyk, “Towards radar-enabled sensor networks,” in Proceedings of The Fifth International Conference on Information Processing in Sensor Networks (IPSN’06) Special Track on Platform Tools and Design Methods for Network Embedded Sensors (SPOTS’06), pp. 467–474, April 2006. 26. A. Arora, P. Dutta, S. Bapat, V. Kulathumani, H. Zhang, V. Naik, V. Mittal, H. Cao, M. Gouda, Y. Choi, T. Herman, S. Kulkarni, U. Arumugam, M. Nesterenko, A. Vora, and M. Miyashita, “A line in the sand: A wireless sensor network for target detection, classification, and tracking,” Computer Networks, Special Issue on Military Communications Systems and Technologies, vol. 46, no. 5, pp. 605–634, July 2004. 27. Crossbow, “Life fitness exercises efficiencies with wireless mesh networking,” 2006 [Online]. Available: http://www.xbow.com/Industry solutions/BuildingAutomation.aspx. ´ 28. G. Simon, M. Mar´oti, Akos L´edeczi, G. Balogh, B. Kusy, A. N´adas, G. Pap, J. Sallai, and K. Frampton, “Sensor network-based counter sniper system,” in Proceedings of ACM Conference on Embedded Networked Sensor Systems (SenSys), pp. 1–12, New York, NY, USA, November 2004. 29. J. Liu, P. Cheung, L. Guiba, and F. Zhao, “A dual-space approach to tracking and sensor management in wireless sensor networks,” Palo Alto Research Center, Tech. Rep. P200210077, March 2002 [Online]. Available: http://citeseer.ist.psu.edu/liu02dualspace.html. 30. P. K. Dutta and A. K. Arora, “Integrating micropower impulse radar and motes,” Ohio State University, Tech. Rep. OSU-CISRC-12/03-TR67, 2004 [Online]. Available: http://tinyurl.com/82jvv5.
References
161
31. K. Romer and F. Mattern, “The design space of wireless sensor networks,” IEEE Wireless Communications, vol. 11 (6), pp. 54–61, December 2004. 32. M. Hefeeda and M. Bagheri, “Wireless sensor networks for early detection of forest fires,” in Proc. IEEE Internatonal Conference on Mobile Adhoc and Sensor Systems (MASS), pp. 1–6, 8–11 Oct. 2007. 33. J. Lundquist, D. Cayan, and M. Dettinger, “Meterology and hydrology in yosemite national park: A sensor network application,” Lecture Notes in Computer Science, vol. 2634, pp. 518– 528, 2003. 34. G. Werner-Allen, J. Johnson, M. Ruiz, J. Lees, and M. Welsh, “Monitoring volcanic eruptions with a wireless sensor network,” in Proceeedings of the Second European Workshop on Wireless Sensor Networks, Istanbul, Turkey, January 2005. 35. W. G. Allen, K. Lorincz, M. Ruiz, O. Marcillo, J. Johnson, J. Lees, and M. Welsh, “Deploying a wireless sensor network on an active volcano,” IEEE Internet Computing, Special Issue on Data-driven Applications in Sensor Networks, vol. 10, no. 2, pp. 18–25, March-April 2006 [Online]. Available: http://dx.doi.org/10.1109/MIC.2006.26. 36. M. Li and Y. Liu, “Underground structure monitoring with wireless sensor networks,” in International Conference on Information Processing in Sensor Networks (IPSN), pp. 69–78. ACM, 2007. 37. A. Mainwaring, D. Culler, J. Polastre, R. Szewczyk, and J. Anderson, “Wireless sensor networks for habitat monitoring,” in Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications (WSNA), pp. 88–97. New York, NY, USA: ACM Press, 2002. 38. M. Buettner, B. Greenstein, A. Sample, J. Smith, and D. Wetherall, “Revisiting smart dust with RFID sensor networks,” in Proceedings of the 7th ACM Workshop on Hot Topics in Networks (HotNets), 2008. 39. L. Ho, M. Moh, Z. Walker, T. Hamada, and C.-F. Su, “A prototype on RFID and sensor networks for elder healthcare: progress report,” in Proceedings of the ACM SIGCOMM Workshop on Experimental Approaches to Wireless Network Design and Analysis (E-WIND), pp. 70–75. New York, NY, USA: ACM, 2005. 40. B. P. L. Lo and G.-Z. Yang, “Key technical challenges and current implementations of body sensor networks,” in Proceedings of the International Workshop on Body Sensor Networks (BSN), 2005. 41. K. Pister, “Military applications of sensor networks,” in Defense Science Study Group of Institute for Defense Analyses Paper P-3531, 2000 [Online]. Available: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.17.1513. 42. E. H. Chi, J. Song, and G. Corbin, “‘killer app’ of wearable computing: wireless force sensing body protectors for martial arts,” in Proceedings of the 17th Annual ACM Symposium on User Interface Software and Technology (UIST), pp. 277–285. New York, NY, USA: ACM Press, 2004. 43. “Eaton home heartbeat system” [Online]. Available: http://www.homeheartbeat.com/HomeHeartBeat/Packages/index.htm. 44. H.-M. Tsai, H.-M. Tsai, O. Tonguz, O. Tonguz, C. Saraydar, T. Talty, M. Ames, and A. Macdonald, “Zigbee-based intra-car wireless sensor networks: a case study,” IEEE Wireless Communications, vol. 14, pp. 67–77, 2007. 45. J. Paek, K. Chintalapudi, R. Govindan, J. Caffrey, and S. Masri, “A wireless sensor network for structural health monitoring: performance and experience,” in Proceedings of The Second IEEE Workshop on Embedded Networked Sensors (EmNetS), pp. 1–10, 30–31 May 2005. 46. A. Tiwari, P. Ballal, and F. L. Lewis, “Energy-efficient wireless sensor network design and implementation for condition-based maintenance,” ACM Transactions on Sensor Networks, vol. 3, no. 1, p. 1, 2007. 47. M. Faschinger, C. R. Sastry, A. H. Patel, and N. C. Tas, “An RFID and wireless sensor network-based implementation of workflow optimization,” in IEEE International Symposium on World of Wireless, Mobile and Multimedia Networks. (WoWMoM), pp. 1 – 8, Espoo, Finland, June 2007.
162
References
48. P. Juang, H. Oki, Y. Wang, M. Martonosi, L. S. Peh, and D. Rubenstein, “Energy-efficient computing for wildlife tracking: design tradeoffs and early experiences with ZebraNet,” in Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-X), pp. 96–107. New York, NY, USA: ACM, 2002. 49. T. He, S. Krishnamurthy, L. Luo, T. Yan, L. Gu, R. Stoleru, G. Zhou, Q. Cao, P. Vicaire, J. A. Stankovic, T. F. Abdelzaher, J. Hui, and B. Krogh, “VigilNet: An integrated sensor network system for energy-efficient surveillance,” ACM Transactions on Sensor Networks, vol. 2, no. 1, pp. 1–38, 2006. 50. W. Conner, J. Heidemann, L. Krishnamurthy, X. Wang, and M. Yarvis, Wireless Sensor Networks: A Systems Perspective, ch. Workplace Applications of Sensor Networks, pp. 289–307. Artech House, Inc., august 2005 [Online]. Available: http://www.isi.edu/∼johnh/PAPERS/Conner05a.html. 51. L. Mottola and G. P. Picco, “Programming wireless sensor networks with logical neighborhoods: a road tunnel use case,” in Proceedings of the 5th ACM International Conference on Embedded Networked Sensor Systems (SENSYS), Sydney (Australia), November 2007. 52. A. Wheeler, “Commercial applications of wireless sensor networks using ZigBee,” IEEE Communications Magazine, vol. 45, no. 4, pp. 70–77, 2007. 53. Siemens AG, “Synco living: Home Automation System Living with heart and brain” [Online]. Available: https://www.hqs.sbt.siemens.com/syncoliving/en/downloads/Broschuere-Synco-living.pdf. 54. T. Wark, C. Crossman, W. Hu, Y. Guo, P. Valencia, P. Sikka, P. Corke, C. Lee, J. Henshall, K. Prayaga, J. O’Grady, M. Reed, and A. Fisher, “The design and evaluation of a mobile sensor/actuator network for autonomous animal control,” in Proceedings of the 6th International Conference on Information Processing in Sensor Networks (IPSN), pp. 206–215. New York, NY, USA: ACM, 2007. 55. V. Kumar, D. Rus, and S. Singh, “Robot and sensor networks for first responders,” Pervasive Computing, vol. 3, no. 4, pp. 24–33, Oct–Dec 2004. 56. D. E. Culler, D. Estrin, and M. B. Srivastava, “Guest editors’ introduction: Overview of sensor networks.” IEEE Computer, vol. 37, no. 8, pp. 41–49, 2004. 57. H. J. K¨orber, H. Wattar, G. Scholl, and W. Heller, “Embedding a microchip PIC18F452 based commercial platform into TinyOS,” in Workshop on Real-world Wireless Sensor Networks (REALWSN), 2005 [Online]. Available: http://www.sics.se/realwsn05/. 58. Sensicast Inc., “Sensicast EMS for environmental management” [Online]. Available: http://www.sensicast.com/downloads/brochure controls ems.pdf. 59. Nanotron Inc., “nanoNET chirp-based wireless networks,” 2004 [Online]. Available: http://www.nanotron.com/nanotron intern/en/technology/css.php?navId=20. 60. J. M. Rabaey, M. J. Ammer, J. L. da Silva, D. Patel, and S. Roundy, “Picoradio supports ad hoc ultra-low power wireless networking,” IEEE Computer, vol. 33, no. 7, pp. 42–48, Jul. 2000 [Online]. Available: http://dx.doi.org/10.1109/2.869369. 61. W. Ye, J. Heidemann, and D. Estrin, “An energy-efficient MAC protocol for wireless sensor networks,” in Proceedings of the 21st International Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), New York, NY, USA, Jun. 2002 [Online]. Available: http://www.isi.edu/scadds/projects/smac/. 62. TinyOS group, “Multihop routing,” September 2003 [Online]. Available: http://www.tinyos.net/tinyos-1.x/doc/multihop/multihop routing.html. 63. D. Culler, P. Dutta, C. T. Ee, R. Fonseca, J. Hui, P. Levis, J. Polastre, S. Shenker, I. Stoica, G. Tolle, and J. Zhao, “Towards a sensor network architecture: lowering the waistline,” in Proceedings of the Tenth Workshop on Hot Topics in Operating Systems (HotOS X), 2005 [Online]. Available: http://www.cs.berkeley.edu/∼pal/pubs/sna.pdf. 64. J. Feng, G. Qu, and M. Potkonjak, “Actuator-based infield sensor calibration,” IEEE Sensors Journal, vol. 6, no. 6, pp. 1571–1579, 2006 [Online]. Available: http://dx.doi.org/10.1109/JSEN.2006.877986.
References
163
65. K. Whitehouse and D. Culler, “Calibration as parameter estimation in sensor networks,” in WSNA ’02: Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications, pp. 59–67. New York, NY, USA: ACM, 2002. 66. F. Zhao, J. Liu, J. Liu, L. Guibas, and J. Reich, “Collaborative signal and information processing: an information-directed approach,” IEEE Proceedings, vol. 91, no. 8, pp. 1199–1209, August 2003. 67. H. Wang, K. Yao, and D. Estrin, “Information-theoretic approaches for sensor selection and placement in sensor networks for target localization and tracking : communication and signal processing in sensor networks,” Journal of Communication and Networks, vol. 7, no. 4, pp. 438–449, 2005. 68. J. Yick, A. Bharathidasan, G. Pasternack, B. Mukherjee, and D. Ghosal, “Optimizing placement of beacons and data loggers in a sensor network - a case study,” in Proceedings of IEEE Wireless Communications and Networking Conference (WCNC), vol. 4, 2004 [Online]. Available: http://ieeexplore.ieee.org/xpls/abs all.jsp?arnumber=1311479. 69. Z. Song, Y. Chen, J. Liang, and D. Uci´nski, “Optimal mobile sensor motion planning under nonholonomic constraints for parameter estimation of distributed parameter systems,” in Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 3163–3168, Edmonton, Canada, August 2005 [Online]. Available: http://dx.doi.org/10.1109/IROS.2005.1545192. 70. H. Cao, E. Ertin, V. Kulathumani, M. Sridharan, and A. Arora, “Differential games in large-scale sensor-actuator networks.” in Proceedings of the Fifth International Conference on Information Processing in Sensor Networks (IPSN), pp. 77–84, Nashville, Tennessee, April 2006 [Online]. Available: http://doi.acm.org/10.1145/1127777.1127792. 71. A. Meliou, D. Chu, J. M. Hellerstein, C. Guestrin, and W. Hong, “Data gathering tours in sensor networks,” in Proceedings of the Fifth International Conference on Information Processing in Sensor Networks (IPSN). Nashville, Tennessee: ACM, April 2006. 72. T. H. Chung, V. Gupta, J. W. Burdick, and R. M. Murray, “On a decentralized active sensing strategy using mobile sensor platforms in a network,” in Proceedings of 43rd IEEE Conference on Decision and Control (CDC), vol. 2, pp. 1914– 1919, Atlantis, Paradise Island, Bahamas, December 2004. 73. C. Guestrin, P. Bodik, R. Thibaux, M. Paskin, and S. Madden, “Distributed regression: an efficient framework for modeling sensor network data,” in Proceedings of the 3rd International Symposium on Information Processing in Sensor Networks (IPSN), pp. 1–10. New York, NY, USA: ACM, 2004 [Online]. Available: http://doi.acm.org/10.1145/984622.984624. 74. L. Xiao, S. Boyd, and S. Lall, “A space-time diffusion scheme for peer-to-peer least-squares estimation,” in Proceedings of International Conference on Information Processing in Sensor Networks (IPSN), pp. 168–176, Nashville, TN, April 2006. 75. L. A. Rossi, B. Krishnamachari, and J. C. C. Kuo, “Distributed parameter estimation for monitoring diffusion phenomena using physical models,” in Proceedings of IEEE Conference on Sensor and Ad Hoc Communications and Networks (SECON), 2nd, Ed., pp. 460–469. Santa Clara, CA.: Kluwer Academic/Plenum Publishers, October 2004. 76. A. S. Chhetri, D. Morrell, and A. P. Suppappola, “Sensor scheduling using a 0-1 mixed integer programming framework,” in Proceedings of IEEE Workshop on Sensor Array and Multichannel Processing, pp. 471–475, Waltham, MA, July 2006. 77. F. Zhao, J. Shin, and J. Reich, “Information-driven dynamic sensor collaboration for tracking applications,” IEEE Signal Processing Magazine, vol. 19, no. 2, pp. 61–72, March 2002. 78. J. Aslam, Z. Butler, Florin, G. Cybenko, and D. Rus, “Tracking a moving object with a binary sensor network,” in Proceedings of the First International Conference on Embedded Networked Sensor Systems (SenSys), pp. 150–161. Los Angeles, CA: ACM Press, 2003 [Online]. Available: http://dx.doi.org/doi.acm.org/10.1145/958491.958509. 79. S. Aranda, S. Martinez, and F. Bullo, “On optimal sensor placement and motion coordination for target tracking,” in Proceedings of International Conference on Robotics and Automation, pp. 4544 – 4549, Barcelona, Spain, April 2005. 80. D. Uci´nski, Optimal Measurement Methods for Distributed Parameter System Identification. Boca Raton, FL: CRC Press, 2005.
164
References
81. V. Fedorov and P. Hackl, “Optimal experimental design: Spatial sampling,” Calcutta Statistical Association Bulletin, vol. 44, pp. 173–174, 1994 [Online]. Available: http://citeseer.ist.psu.edu/fedorov94optimal.html. 82. S. Madden, M. Franklin, J. Hellerstein, and W. Hong, “The design of an acquisitional query processor for sensor networks,” in Proceedings of ACM Sigmod, pp. 491–502. ACM Press, 2003. 83. K. L. Moore and Y. Chen, “Model-based approach to characterization of diffusion processes via distributed control of actuated sensor networks,” in Proceedings of the 1st IFAC Symposium on Telematics Applications in Automation and Robotics. Helsinki University of Technology Espoo, Finland: IFAC, Jun. 2004 [Online]. Available: http://mechatronics.ece.usu.edu/mas-net/XbowComp/. 84. Y. Chen, K. L. Moore, and Z. Song, “Diffusion boundary determination and zone control via mobile actuator-sensor networks (MAS-net): challenges and opportunities,” in Proceedings of Intelligent Computing: Theory and Applications II, part of SPIE’s Defense and Security, vol. 5421, pp. 102–113. Orlando, FL: SPIE, April 2004 [Online]. Available: http://mechatronics.ece.usu.edu/mas-net/XbowComp/. 85. K. L. Moore, Y. Chen, and Z. Song, “Diffusion based path planning in mobile actuator-sensor networks (MAS-net) - some preliminary results,” in Proceedings of SPIE Conference on Intelligent Computing: theory and Applications II, part of SPIE’s Defense and Security, vol. 5421, pp. 58–69. Orlando, FL: SPIE, April 2004 [Online]. Available: http://mechatronics.ece.usu.edu/mas-net/XbowComp/. 86. Z. Wang, Z. Song, P. Y. Chen, A. Arora, D. Stormant, and Y. Chen, “MASmote–a mobility node for MAS-net (mobile actuator sensor networks),” in Proceedings of IEEE International Conference on Robotics and Biomimetics, pp. 816–821. Shenyang, China: IEEE, August 2004. 87. P. Chen, “Pattern formation in mobile wireless sensor networks,” Master’s thesis, Utah State University, Logan, UT, 2005. 88. A. Arora, “Sensing a diffusion process using distributed robots,” Master’s thesis, Utah State University, Logan, UT, 2005. 89. G. Bekey, R. Ambrose, V. Kumar, D. Lavery, A. Sanderson, B. Wilcox, J. Yuh, and Y. Zheng, Robotics: State of the Art and Future Challenges. Imperial College Press, September 2008. 90. P. Chen and Z. Song, “Cooperative fog estimation by MASmote robots.” [Online]. Available: http://mechatronics.ece.usu.edu/mas-net/index files/Movie FogDemo.avi. 91. D. Niculescu and B. Nath, “Localized positioning in ad hoc networks,” Elsevier Journal of Ad Hoc Networks, vol. 1, no. 2-3, pp. 247–259, September 2003 [Online]. Available: http://paul.rutgers.edu/∼dnicules/research/. 92. J. Borenstein, H. R. Everett, and L. Feng, “Where am I, sensors and methods for mobile robot positioning,” 1996 [Online]. Available: http://www-personal.umich.edu/∼johannb/shared/pos96rep.pdf. 93. S. Thrun, “Probabilistic algorithms in robotics,” Computer Science Department, Carnegie Mellon University, Pittsburgh, PA, Tech. Rep. CMU-CS-00-126, April 2000 [Online]. Available: http://www.ri.cmu.edu/pubs/pub 3353.html. 94. K. W. Cheung, H. C. So, W. K. Ma, and Y. T. Chan, “Least squares algorithms for time-of-arrival-based mobile location,” IEEE Transactions on Signal Processing, vol. 52, no. 4, pp. 1121–1130, 2004 [Online]. Available: http://ieeexplore.ieee.org/xpls/abs all.jsp?arnumber=1275684. 95. D. Niculescu and B. Nath, “Ad hoc positioning system (APS) using AOA,” in Proceedings of IEEE Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), vol. 3, pp. 1734–1743, 2003 [Online]. Available: http://ieeexplore.ieee.org/xpls/abs all.jsp?arnumber=1209196. 96. N. Patwari, Ash, S. Kyperountas, Moses, Correal, and A. O. Hero, “Locating the nodes: cooperative localization in wireless sensor networks,” IEEE Signal Processing Magazine, vol. 22, no. 4, Jul. 2005. 97. Aether Wire & Locations, Inc., “Ultra-wideband localizers: executive summary,” 1999 [Online]. Available: http://www.aetherwire.com/Aether Wire/aether.html.
References
165
98. P. Biswas, T. C. Lian, T. C. Wang, and Y. Ye, “Semidefinite programming based algorithms for sensor network localization,” ACM Trans. Sensor Network, vol. 2, no. 2, pp. 188–220, 2006 [Online]. Available: http://dx.doi.org/http://doi.acm.org/10.1145/1149283.1149286. 99. D. Niculescu, Forwarding and Positioning Problems in Ad Hoc Networks. Ph.D. dissertation, Rutgers, The State University of New Jersey, 2004 [Online]. Available: http://paul.rutgers.edu/∼dnicules/research/. 100. N. Bulusu, J. Heidemann, and D. Estrin, “Adaptive beacon placement,” in Proceedings of the The 21st International Conference on Distributed Computing Systems, p. 489. Washington D.C.: IEEE Computer Society, 2001. 101. T. K. Moon and W. C. Stirling, Mathematical Methods and Algorithms for Signal Processing, 2nd ed. Upper Saddle River, NJ: Prentice Hall, 1999. 102. A. F. Emery and A. V. Nenarokomovz, “Optimal experiment design,” Measurement Science & Technology, vol. 9, no. 6, pp. 864–876, 1998 [Online]. Available: http://dx.doi.org/10.1088/0957-0233/9/6/003. 103. A. Pazman, Foundations of Optimum Experimental Design. Veda, Bratislava, Czechoslovakia: D. Reidel Publishing Company, 1986. 104. S. D. Silvey, Optimal Design: An Introduction to the Theory for Parameter Estimation. New York: Chapman and Hall, 1980. 105. S. Mart´ınez and F. Bullo, “Optimal sensor placement and motion coordination for target tracking,” Automatica, vol. 42, no. 4, pp. 661–668, 2006. 106. A. Anandarajah, K. Moore, A. Terzis, and I. J. Wang, “Sensor networks for landslide detection,” in Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems (SenSys), pp. 268–269. New York: ACM Press, 2005 [Online]. Available: http://dx.doi.org/10.1145/1098918.1098948. 107. D. Zarzhitsky, D. F. Spears, D. R. Thayer, and W. M. Spears, “Agent-based chemical plume tracing using fluid dynamics,” Lecture Notes in Computer Science, Springer-Verlag, vol. 3228, pp. 146–160, 2004 [Online]. Available: http://www.cs.uwyo.edu/∼dspears/cpt/. 108. Christofides, Nonlinear and Robust Control of PDE Systems: Methods and Applications to Transport-Reaction Processes, Foundations and Applications, ser. Systems and Control. Boston: Birkh¨auser, 2001. 109. R. F. Curtain and H. Zwart, An Introduction to Infinite-Dimensional Linear Systems Theory, Texts in Applied Mathematics. New York: Springer-Verlag, 1995. 110. I. Lasiecka and R. Triggiani, Control Theory for Partial Differential Equations: Continuous and Approximation Theories, ser. Encyclopedia of Mathematics and Its Applications, Vol. I and II. Cambridge: Cambridge University Press, 2000. 111. P. Neittaanm¨aki and D. Tiba, Optimal Control of Nonlinear Parabolic Systems, ser. Algorithms and Applications, Monographs and Textbooks in Pure and Applied Mathematics. New York: Marcel Dekker, Inc., 1994. 112. S. Omatu and J. H. Seinfeld, Distributed Parameter Systems: Theory and Applications, ser. Oxford Mathematical Monographs. New York: Oxford University Press, 1989. 113. H. Zwart and J. Bontsema, “An application-driven guide through infinite-dimensional systems theory,” in European Control Conference, G. Bastin and M. Gevers, Eds., pp. 289–328, CIACO, Ottignies/Louvain-la-Neuve, 1997. 114. C. S. Kubrusly and H. Malebranche, “Sensors and controllers location in distributed systems: a survey,” Automatica, vol. 21, no. 2, pp. 117–128, 1985. 115. D. Uci´nski, “Optimal sensor location for parameter estimation of distributed processes,” International Journal of Control, vol. 73, no. 13, pp. 1235–1248, 2000. 116. E. Rafajłowicz, “Optimum choice of moving sensor trajectories for distributed parameter systems,” International Journal of Control, vol. 43, no. 5, pp. 1441–1451, 1986. 117. D. Uci´nski, “Optimization of sensors’ allocation strategies for parameter estimation in distributed systems,” Systems Analysis Modelling Simulation, vol. 37, pp. 243–260, 2000. 118. D. Uci´nski, “Sensor motion planning with design criteria in output space,” in Proceedings of the 6th International Workshop on Model-Oriented Data Analysis (mODa 6), Hackl and W. M¨uller, Eds., pp. 235–242. Puchberg/Schneeberg, Austria: Physica-Verlag, Heidelberg, 2001.
166
References
119. D. Uci´nski and J. Korbicz, “On robust design of sensor trajectories for parameter estimation of distributed systems,” in Proceedings of the 14th IFAC World Congress, vol. H, pp. 73–78, Beijing, China, July 1999. 120. D. Uci´nski and Y. Chen, “Time optimal path planning of moving sensors for parameter estimation of distributed systems,” in Proceedings of 44th IEEE Conference on Decision and Control and the European Control Conference, pp. 5257–5262, 2005. 121. L. Carotenuto, P. Muraca, and G. Raiconi, “Optimal location of a moving sensor for the estimation of a distributed-parameter system,” International Journal of Control, vol. 46, no. 5, pp. 1671–1688, 1987. 122. A. Y. Khapalov, “Optimal measurement trajectories for distributed parameter systems,” Systems and Control Letters, vol. 18, no. 6, pp. 467–477, 1992. 123. K. Nakano and S. Sagara, “Optimal measurement problem for a stochastic distributed parameter system with movable sensors,” International Journal of Systems Science, vol. 12, no. 12, pp. 1429–1445, 1981. 124. K. Nakano and S. Sagara, “Optimal scanning measurement problem for a stochastic distributed-parameter system,” International Journal of Systems Science, vol. 19, no. 7, pp. 1069–1083, 1988. 125. S. Mart´ınez and F. Bullo, “Optimal sensor placement and motion coordination for target tracking,” Automatica, vol. 42, pp. 661–668, 2006. 126. B. Sinopoli, C. Sharp, L. Schenato, S. Schaffert, and S. Sastry, “Distributed control applications within sensor networks,” IEEE Proceedings, vol. 91, no. 8, pp. 1235–1249, August 2003. 127. M. Patan, Optimal Observation Strategies for Parameter Estimation of Distributed Systems. Ph.D. dissertation, University of Zielona Gora, Zielona Gora, Poland, 2004. 128. R. K. Mehra, “Optimization of measurement schedules and sensor designs for linear dynamic systems,” IEEE Transactions on Automatic Control, vol. 21, p. 1, 1976. 129. W. G. M¨uller, Collecting Spatial Data: Optimum Design of Experiments for Random Fields, 2nd ed., ser. Contributions to Statistics. Heidelberg: Physica-Verlag, 2001. 130. E. Rafajlowicz, “Design of experiments for parameter identification of the static distributed system,” International Journal of Systems Science, vol. 4, no. 4, pp. 349–361, 1978. 131. E. A. Ja¨ı and A. J. Pritchard, Sensors and Actuators in Distributed Systems Analysis, ser. Ellis Horwood Series in Applied Mathematics. Chichester, West Sussex: Ellis Horwood: Ellis Horwood, John Wiley, 1988. 132. A. Schwartz, E. Polak, and Y. Chen, “RIOTS- a matlab toolbox for solving optimal control problems,” May 1997 [Online]. Available: http://www.schwartz-home.com/∼adam/RIOTS/. 133. I. MathWorks, “Partial differential equation toolbox,” 2005 [Online]. Available: http://www.mathworks.com/products/pde/. 134. A. C. Atkinson and A. N. Donev, Optimum Experimental Designs. Clarendon Press, Oxford, 1992. 135. Y. Chen and A. L. Schwartz, Recent Developments in Optimization and Optimal Control in Chemical Engineering, ch. RIOTS 95 – a MATLAB toolbox for solving general optimal control problems and its applications to chemical processes. Rein Luus Editor, Transworld Research Publishers, 2002 [Online]. Available: http://www.csois.usu.edu/ilc/riots/. 136. W. Fleming and R. Rishel, Deterministic and Stochastic Optimal Control. Berlin Heidelberg, Germany: Springer-Verlag, 1975. 137. S. Joshi and S. Boyd, “Sensor selection via convex optimization,” IEEE Transactions on Signal Processing, 2008 [Online]. Available: http://www.stanford.edu/∼boyd/papers/sensor selection.html. 138. A. S. Chhetri, Sensor Scheduling and Efficient Algorithm Implementation for Target Tracking. Ph.D. dissertation, Arizona State University, 2006. 139. D. Uci´nski and M. Patan, “D-optimal design of a monitoring network for parameter estimation of distributed systems,” Journal of Global Optimization, 2006. 140. L. M. Kaplan, “Local node selection for localization in a distributed sensor network,” IEEE Transactions on Aerospace and Electronic Systems, vol. 42, no. 1, 2006.
References
167
141. V. Isler and R. Bajcsy, “The sensor selection problem for bounded uncertainty sensing models,” IEEE Transactions on Automation Science and Engineering, vol. 3, no. 4, pp. 372–381, October 2006 [Online]. Available: http://www.cs.rpi.edu/∼isler/new/pub/pubs/isler05tase.pdf. 142. J. Byers and G. Nasser, “Utility-based decision-making in wireless sensor networks,” in Proceedings of International Symposium on Mobile Ad Hoc Networking & Computing, pp. 143– 144, 2000. 143. F. Bian, D. Kempe, and R. Govindan, “Utility-based sensor selection,” in Proceedings of International Conference on Information Processing in Sensor Networks (IPSN), Nashville, TN, April 2006 [Online]. Available: http://citeseer.ist.psu.edu/747271.html. 144. J. Liu, J. Reich, and F. Zhao, “Collaborative in-network processing for target tracking,” EURASIP Journal on Applied Signal Processing, vol. 4, pp. 378–391, Mar. 2003 [Online]. Available: http://citeseer.ist.psu.edu/liu02collaborative.html. 145. H. Wang, K. Yao, G. Pottie, and D. Estrin, “Entropy-based sensor selection heuristic for target localization,” in Proceedings of the Third International Symposium on Information Processing in Sensor Networks (IPSN), pp. 36–45. Berkeley, CA: ACM Press, 2004 [Online]. Available: http://citeseer.ist.psu.edu/wang04entropybased.html. 146. A. S. Chhetri, D. Morrell, and A. P. Suppappola, “Energy efficient target tracking in a sensor network using non-myopic sensor scheduling,” in Proceedings of IEEE International Conference on Information Fusion, Philadelphia, PA, 2005. 147. A. L. Buczak, H. . Wang, H. Darabi, and M. A. Jafari, “Genetic algorithm convergence study for sensor network optimization,” Information Sciences, vol. 133, pp. 267–282, 2001. 148. V. V. Fedorov, “Design of spatial experiments: Model fitting and prediction,” Ork Ridge National Lab, Tech. Rep. ORNL/TM-13152, 1996 [Online]. Available: http://citeseer.ist.psu.edu/449577.html. 149. S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge, England: Cambridge University Press, 2004 [Online]. Available: http://www.stanford.edu/∼boyd/cvxbook/. 150. D. Bertsekas, Nonlinear Programming. Nashua, NH: Athena Scientific, 1999. 151. D. M. Titteringtong, “Algorithms for computing D-optimal designs on a finite design space,” in Proceedings of conference on information science and systems, pp. 213–216, Department of electronic engineering, Johns Hopkins University, Baltimore, MD, 1976. 152. I. MathWorks, Optimization toolbox, Mathworks, Inc., 3 Apple Hill Drive, Natick, MA [Online]. Available: http://www.mathworks.com/access/helpdesk/help/toolbox/optim/. 153. Z. Song, R. Sastry, and N. C. Tas, “Experiment results of convex optimal sensor selection (COSS) methods,” February 2007 [Online]. Available: http://cc.usu.edu/∼zhensong/coss. 154. C. V. Gungor, C. Sastry, Z. Song, and R. Integlia, “Resource-aware and link quality based routing metric for wireless sensor and actor networks,” in Proceedings of IEEE International Conference on Communications (ICC), pp. 3364–3369, 2007. 155. D. Uci´nski, “Sensor network design for parameter estimation of distributed systems using nonsmooth optimality criteria,” in Proceedings of the Joint 44th IEEE Conference on Decision and Control, and the European Control Conference, 2005. 156. E. Ertin, J. W. Fisher, and L. C. Potter, “Maximum mutual information principle for dynamic sensor query problems,” in Procedings of International Conference on Information Processing in Sensor Networks (IPSN), Palo Alto, CA, Apr. 2003. 157. R. O. Saber, “Distributed tracking for mobile sensor networks with information-driven mobility,” in Proceedings of IEEE Conference on Decision and Control, San Diego, CA, 2006. 158. I. F. Akyildiz, X. Wang, and W. Wang, “Wireless mesh networks: a survey,” Elsevier Computer Networks, vol. 47, no. 7, pp. 445–487, 2004 [Online]. Available: http://www.ece.gatech.edu/research/labs/bwn/mesh.pdf. 159. N. B. Priyantha, The Cricket Indoor Location System. Ph.D. dissertation, Massachusetts Institute of Technology, 2005. 160. Chipcon, CC2420: 2.4 GHz IEEE 802.15.4 / ZigBee-ready RF Transceiver, 2005 [Online]. Available: http://www.chipcon.com/files/CC2420 Data Sheet 1 4.pdf. 161. D. Niculescu, “Positioning in ad hoc sensor networks,” IEEE Network Magazine, pp. 24–29, July–August 2004.
168
References
162. D. Lymberopoulos, Q. Lindsey, and A. Savvides, “An empirical analysis of radio signal strength variability in IEEE802.15.4 networks using monopole antennas,” in Proceedings of European Workshop on Wireless Sensor Networks (EWSN), Zurich, 2006. 163. T. McEwan, “Radiolocation system having writing pen application,” US Patent 6,747,599. 164. S. Azevedo and T. McEwan, “Micropower impulse radar” [Online]. Available: http://www.llnl.gov/str/pdfs/01 96.2.pdf. 165. Actel Inc., “Laser range finder using Actel’s axcelerator FPGA” [Online]. Available: http://www.actel.com/documents/AX Laser AN.pdf. 166. T. C. Karalar, Implementation of A Localization System for Sensor Networks. Ph.D. dissertation, University Of California, Berkeley, 2006. 167. R. J. Fontana and S. J. Gunderson, “Ultra-wideband precision asset location system,” in IEEE Reprinted from 2002 IEEE Conference on Ultra Wideband Systems and Technologies, Baltimore, MD, May 2002. 168. T. McEwan, “Short range radio locator system,” US Patent 5,589,838, August 1995. 169. P. Kinney, “TG4a opening/closing report for Atlanta” [Online]. Available: http://www.ieee802.org/15/pub/05/. 170. K. Pahlavan, X. Li, and J. P. Makela, “Indoor geolocation science and technology,” IEEE Communications Magazine, vol. 40, no. 2, pp. 112–118, February 2002. 171. R. A. Fleming and C. E. Kushner, “Spread spectrum localizers,” US Patent 6,795,491, December 2000. 172. J. Lampe and Z. Ianelli, Introduction to Chirp Spread Spectrum (CSS) Technology, Nanotron Technologies, November 2003. 173. I. Oppermann, M. Jamtgaard, L. Ouvry, and P. Rouzet, “Aetherwire 15.4a CFP response” [Online]. Available: http://www.ieee802.org/15/pub/05/. 174. I. Oppermann, L. Stoica, A. Rabbachin, Z. Shelby, and J. Haapola, “UWB wireless sensor networks: UWEN - a practical example,” IEEE Communications Magazine, vol. 42, no. 12, pp. S27–S32, Dec. 2004 [Online]. Available: http://dx.doi.org/10.1109/MCOM.2004.1367555. 175. R. J. Fontana, “Recent system applications of short-pulse ultra-wideband (UWB) technology,” IEEE Transactions on Microwave Theory And Techniques, vol. 52, pp. 2087–2104, 2004. 176. L. Vandenberghe and S. Boyd, Semi-infinite Programming, ch. Connections between semi-infinite and semidefinite programming, pp. 277–294. Norwell, MA: Kluwer, 1998 [Online]. Available: http://www.stanford.edu/∼boyd/sip.html. 177. R. Hettich and K. O. Kortanek, “Semi-infinite programming: theory, methods, and applications,” SIAM Rev., vol. 35, no. 3, pp. 380–429, 1993 [Online]. Available: http://dx.doi.org/http://dx.doi.org/10.1137/1035089.
Index
0±1 integer programming, 50 A-optimality criterion, 22, 58, 74, 120 ambient light, 55, 124 analog-to-digital converter (ADC), xv, 124 angle of arrival (AOA), xv, 130, 144 angular sensor, 117 a posteriori estimate, 61, 92, 109, 110 a posteriori position, 60, 92 application specific integrated circuit (ASIC), xv, 131 approximation, 52, 100 a priori estimate, 61, 92, 98, 110 a priori position, 56, 92 Bayes’ theorem, 49 Bayesian filtering, 121 beacon placement, 5, 21, 140 binary integer programming, 50, 140 branch and bound, 50, 115 C-optimality criterion, 120 Carath´eodory’s limit, 46, 52, 60, 67, 75, 86, 87, 90, 96 Carath´eodory’s theorem, 60, 67, 73, 76, 122, 127, 151 chirp spread spectrum (CSS), xv, 131, 136 code division multiple access (CDMA), xv, 7 confidence ellipsoid, 92, 98, 120 convex combination, 63, 67, 73, 76, 81, 82, 84, 90 convex elimination, 76, 78, 79, 87 convex hull, 63, 67, 68, 76, 84 convex optimal sensor selection (COSS), viii, xv, 5, 47, 52, 71, 72, 74, 75, 92, 109, 110, 114–116, 121, 122, 127, 151, 152 convex optimization, 14, 49, 61, 78, 152
correlation coefficient, 49, 123, 124 cost function, 50, 51 covariance matrix, 59, 118 Cram´er–Rao inequality, 23, 115 Cram´er–Rao lower bound (CRLB), xv, 23, 57, 59, 122, 127, 151 cross-correlation, 50, 124 cyber-physical system (CPS), vii–ix, xv, 1, 6, 12, 45 D-optimality criterion, 22, 33, 34, 58, 68, 74 D-optimization, 58, 59, 74, 121, 125 data acquisition system, 7 database, 14 detection range, 74, 75 determinant, 28, 71, 92 direct optimal beacon placement, 142, 144, 147–149 distributed parameter system (DPS), vii, viii, xv, 1, 5, 17, 27, 29, 30, 34, 41, 43, 44, 49, 151, 152 distributed sensor network (DSN), viii, 4, 7 E-optimality criterion, 22, 58, 74, 120 eigenvalues, 71 elimination-based convex optimal sensor selection (eCOSS), xv, 52, 60, 61, 63, 75, 76, 78, 90–92, 96, 98–104, 115 energy efficient observation, 46, 151 energy model, 54, 55, 58, 65, 95 entropy, 49, 115, 121, 140 equivalent Mayer problem, 35, 36 estimation error, 23, 45–47, 49–51, 59, 65, 96, 100, 109, 110, 115, 116, 118, 122, 127, 151 estimation noise, 49, 137 169
170 field programmable gate array (FPGA), xv, 131 Fisher information matrix (FIM), viii, ix, xv, 2, 4–7, 22, 23, 28, 33–35, 45, 49, 57–59, 61–63, 65, 68, 70–73, 75, 90–92, 115, 116, 127, 141, 144, 152 flashing lamp, 124 fluorescent lamp, 4, 116, 118, 124–126 full rank, 64, 70–72 Gaussian noise, 54, 117, 118, 121, 122 generalized inequality, 77 genetic algorithm, 50 geometric interpretation, 65, 66, 76, 77, 119 global positioning system (GPS), xv, 11, 20 gradient, 28, 64, 65, 71, 72, 121 halogen lamp, 4, 100, 116, 117, 124, 125 heuristic convex optimal sensor selection (hCOSS), xv, 51, 52, 60–64, 67, 69, 73–75, 91–94, 96–104, 107, 108, 114, 115 identity matrix, 79, 80 IDSQ, 115, 121, 122 IEEE 802.15.4 standard, 8, 9, 109, 129 incandescent lamp, 4, 124 information matrix, 4, 23, 115 Institute of Electrical and Electronic Engineers (IEEE), viii, xv, 4, 8, 9, 109, 129, 131, 132 integer programming, 50, 57, 115, 140 Kalman filter, 121 lamp tracking, 47, 53, 75, 96 least squares (LS), xv, 13, 21–23, 34, 56, 60, 62, 91, 94, 118, 121, 122, 139 light sensor, 4, 47, 49, 51, 56, 92, 124 link quality indicator (LQI), xv, 129 localization, viii, 5, 6, 11, 20, 21, 47, 59, 129–134, 136, 138, 140, 141, 144, 147–152 MAS-net, xv, 14, 15, 29, 34 MASmote, 15, 29, 30 R PDE toolbox, 30, 37, 153 MATLAB R optimization toolbox, 74 MATLAB R , 30, 36, 37, 44, 74, 89, 92, 114, MATLAB 143, 144, 151, 153 maximum a posteriori (MAP), xv, 122 maximum likelihood (ML), xv, 22, 23 Monte Carlo, 118 multiplicative method, 63, 73, 115
Index MV optimality criterion, 120 non-Gaussian noise, 23, 115, 116, 122 NP-hard, 47, 51 null space, 79, 82, 83 one-way ranging (OWR), xv, 133, 134 optimal control, viii, 17, 28, 30, 34–37, 44, 151 optimal estimation, 50, 151, 152 optimality criteria, 34, 58, 120 optimum experimental design (OED), viii, ix, xv, 5, 14, 21, 22, 30, 53, 59, 60, 141, 151, 152 parameter estimation, 5, 21, 22, 28–30, 45, 47, 49, 52, 53, 151, 152 partial differential equation (PDE), viii, xv, 5, 17, 18, 27, 28, 37, 151, 153 phase of arrival (POA), xvi, 135–137, 139, 150, 152 polynomial model, 54, 55, 58 positive definite, 64, 65, 68, 71, 72 positive semi-definite, 76 probability density function (PDF), xv, 22, 23, 116 probability mass function (PMF), xv, 49, 121 quality of services (QoS), 12 radio frequency (RF), xvi, 129–131, 134, 136 radio-frequency identification (RFID), xvi, 11 random variable, xvi, 22, 33, 122, 123 real-time, 15, 18, 29, 76, 89, 92, 115, 127 received signal strength indicator (RSSI), xvi, 13, 129, 130 recursive integration optimal trajectory solver (RIOTS), xvi, 30, 35–37, 44, 151, 154–156 robotic sensor, 4, 32, 151 round-trip time (RTT), xvi, 132–134 routing, 8, 12–14, 47, 129 sampling rate, 52, 70, 73, 78, 92, 98 sampling rate optimization, 57, 59, 61–65, 120 selection mode, 62, 63 semi-infinite programming (SIP), viii, xvi, 141–144, 150, 152 sensitivity, 35, 37, 121, 141, 153, 158 sensor clusterization, 59 sensor model, xvii, 30, 54, 57 sensor selection, 5, 45, 46, 50, 55, 70, 74, 115, 125 sensor selection problem (SSP), viii, xvi, 46–52, 59, 65, 73, 127
Index
171
signal-to-noise ratio (SNR), xvi, 92, 131 simplex, 63, 64, 73 sink, 18, 52, 60–62, 91, 115 smart dust, vii, ix, 3, 8, 9 standard deviation, 54, 55 support point, 67, 73, 76, 78, 87 system block diagram, 52, 53
total sample number, 92, 96, 98, 99 trajectory optimization, viii, 5, 27, 49, 153 transmission rate, 20, 52, 126, 127 Turing optimality criterion, 120
T-optimality criterion, 22, 120 target tracking, viii, 14, 18, 52, 53, 92, 127 TCP/IP, 12 time difference of arrival (TDOA), xvi, 5, 132, 133, 138–141, 144, 147–150, 152 time of arrival (TOA), xvi, 131, 135, 144, 152 time of flight (TOF), xvi, 129–132, 134, 136 Tmote Sky, 49, 51, 56, 100, 116, 124
weight vector, 83, 88, 90 weighted least squares (WLS), xvi, 23, 59, 115, 116, 118 WiFi, 7, 8, 109 wireless sensor network (WSN), vii–ix, xvi, xvii, 1, 2, 5–15, 18–21, 27, 45, 49, 53, 59, 68, 74, 75, 92, 98, 99, 129, 131, 134, 140, 150–152
ultra-wideband (UWB), xvi, 7, 131, 133, 136