Bounding the Lifetime of Sensor Networks Manish Bhardwaj Massachusetts Institute of Technology November 2001 Acknowledgments: Timothy Garnett, Anantha Chandrakasan Data Gathering Wireless Networks: A Primer Sensor Relay Aggregator Asleep r B R Wireless Sensor Networks Sensor Types: Low Rate (e.g., acoustic and seismic) Bandwidth: bits/sec to kbits/sec Transmission Distance: 5-10m (< 100m) Spatial Density 0.1 nodes/m2 to 20 nodes/m2 Node Requirements Small Form Factor Required Lifetime: > year Step I r B Single Source No topology information (only N) Degenerate R (Fixed Source) Step II r B Single Source No topology information (only N) Resides over R with a certain PDF R Step III r B Single Source Topology information Degenerate R Step IV r B Single Source Topology information Degenerate R Aggregation Step V r B Multiple Fixed Sources Topology information Degenerate R Step VI r B Single Source Topology information Resides over R with a certain PDF R Step VII r B Single Moving Source Topology information Specified Trajectory R Step VIII r B r Multiple Moving Sources Topology information Specified Trajectories R Preview of Tools Energy Conservation Arguments Simple properties of convex functions LLN Linear Programming Transformation of Programs Network Flow Formulations Miscellaneous tricks … Step I r B Single Source No topology information (only N) Degenerate R (Fixed Source) Analog Sensor Signal Sensor+ Analog Pre-Conditioning Functional Abstraction of DGWN Node “Raw” Sensor Data Processed Sensor Data A/D DSP+RISC +FPGA etc. Sensor Core Computational Core Radio+ Protocol Processor Communication & Collaboration Core Energy Models d Etx = a11+ a2dn Transmit Energy Per Bit 1. Transceiver Electronics 2. Startup Energy n = Path loss index Power-Amp Erx = a12 Receive Energy Per Bit d Relay Energy Per Bit Erelay = a11+a2dn+a12 = a1+a2dn Prelay = (a1+a2dn)r Sensing Energy Per Bit Aggregation Energy Per Bit Esense = a3 Eagg = a Step I r B Bound the lifetime of a network given: The number of nodes (N) and initial energy in each node (E) Node energy parameters (a1, a2, a3), path loss index n Source observability radius (r) Source rate (r bps) Note: Bound is topology insensitive Preliminaries: Minimum-Energy Links and Characteristic Distance D meters B Sink A Source K-1 nodes available Given: A source and sink node D m apart and K-1 available nodes that act as relays and can be placed at will (a relay is qualified by its source and destination) Solution: Position, qualification of the K-1 relays Measure of the solution: Energy needed to transport a bit or equivalently, the total power of the link – K Plink ( D) a12 Prelay (d i ) i 1 Problem: Find a solution that minimizes the measure Claim I: Optimal Solution is Collinear w/ Non-Overlapping Link Projections S B A ST B A Proof: By contradiction. Suppose a non-compliant solution S is optimal Produce another solution ST via the projection transformation shown Trivial to prove that measure(ST) < measure(S) (QED) Result holds for any radio function monotonic in d Reduces to a 1-D problem Claim II: Optimal Solution Has Equal Hop Distances d1 S d2 B A (d1+d2)/2 ST B A Proof: By contradiction. Suppose a non-compliant solution S is optimal Produce solution ST by taking any two unequal adjacent hops in S and making them equal to half the total hop length For any convex Prelay(d), measure(ST) < measure(S) (recall that 2f((x1+x2)/2) < f(x1)+f(x2) for a convex function f) (QED) Optimal Solution D/K B A Measure of the optimal solution: -a12+KPrelay(D/K) Prelay convex KPrelay(D/K) is convex The continuous function xPrelay(D/x) is minimized when: D x n a1 D Dchar a 2 (n 1) D na1 D min xPrelay x x n 1 Dchar Hence, the K that minimizes Plink(D) is given by: K opt D D or D D char char na1 D Plink ( D) a12 r n 1 Dchar Corollary: Minimum Energy Relay D meters B Sink A Source It is not possible to relay bits from A to B at a rate r using total link power less than: na1 D Plink ( D) a12 r n 1 Dchar with equality D is an integral multiple of Dchar Key points: It is possible to relay bits with an energy cost linear in distance, regardless of the path loss index, n The most energy efficient multi-hop links result when nodes are placed Dchar apart Digression: Practical Radios Results hinge only on communication energy versus distance being monotonically increasing and convex Overall radio behavior Inflexible power-amp d2 behavior Energy/bit Perfect power control d4 behavior Distance Complex path loss behavior • Not a problem! • Energy/bit can be made linear • Equal hops still best strategy • But … Dchar varies with distance Distance Finite Power-Control Resolution • “Too Coarse” quanta a problem • Energy/bit no longer linear • Equal hops NOT best for energy • No concept of Dchar Digression: The Optimum PowerControl Problem What is the best way to quantize the radio energy curve(for a given number of levels)? Or? Distance Maximizing Lifetime r d B A N nodes available Problem: Using N nodes what is maximum sensing lifetime one can ever hope to achieve? Take I r d B A Take II r d A d/K B Take III r A d2 B d1 Need an alternative approach to bound lifetime … Bounding Lifetime r A d B Claim: At any instant in an active network: There is a node that is sensing There is a link of length d relaying bits at r bps Pnetwork Plink (d ) Psensing na1 d Pnetwork a12 r a 3r n 1 d char If the network lifetime is Tnetwork, then: na1 d Ei a12 r a 3 r Tnetwork i 1 n 1 d char N Tnetwork N .E na1 d a12 a 3 r n 1 d char 1000 node network, 2 J on a node has the potential to listen to human conversations 1 km away for 128 hours Simulation Results Sources Residing in Regions Source locations X1, X2, … assumed IID drawn from a “source location pdf”, fX(x) Each sustained for time T Lifetime: kT x1 x2 x3 … xk-1 xk xk+1 … Assumption: E, T chosen such that k >> 1 Step II r B Single Source No topology information (only N) Resides over R with a certain PDF R Bounding Strategy r d(x) A R B Pnetwork ( x) Plink (d ( x)) Psensing na1 d ( x) Pnetwork ( x) a12 a 3 r n 1 d char na1 E[d ( x)] E[ Pnetwork ( x)] a12 a 3 r n 1 d char Bounding Strategy N E P P P T i 1 i 1 2 k na1 di Pi a12 r a 3r n 1 d char P P PK N E 1 2 K Tnetwork Tnetwork N E Pav 2 PrPav E[ Pnetwork ( x)] K 2 2 N E Pr Tnetwork 2 E [ P ( x )] K network Bounding Strategy 2 N E Pr Tnetwork 2 K na E[d ( x)] 1 a12 a 3 r n 1 d char Bound depends on region only via E[d(x)] For brevity, we abuse notation thus: N E Tnetwork na1 E[d ( x)] a12 a 3 r n 1 d char Source Moving Along A Line S0 dW r dN A d(x) dB B Tnetwork N .E d1 d 2 2 d1d 2 d 3d 4 dW ln na1 d 3 d 4 r r (n 1)d char 2d N S1 Simulation Results Source in a Rectangular Region r dW A B y dB dW x dN Tnetwork d rect 1 12d N dW N .E d rect n a1 r n 1 d char d1 d 2 d 4 dW 3 3 d 3 ln 4dW (d1d 2 d 3d 4 ) 2dW ln d3 d 4 d 4 dW d 2 dW 3 d1 ln d 2 dW r Simulation Results Source in a Semi-Circle dR dR Tnetwork dW dB N .E d sector n a1 r n 1 d char d R dW 2d d B d R dW d ln dB 3( (d B2 dW2 ) d B dW ) 3 R d sector r 3 B r 2 d semi -circle d R r 3 Simulation Results Bounding Lifetime for Sources in Arbitrary Regions: Partitioning Theorem Rj, pj B Partitioning Relation: P pj Tnetwork ( R ) j 1 T ( R ) j 1 Lifetime bound for region Rj Step III r B Single Source Topology information Degenerate R Including Topology Topology insensitive bounds can be grossly unfair in scenarios where the user does not have deployment control Topology: Graph of the network Flavor 1: Accept a graph and solve the problem exactly Flavor 2: Accept a probabilistic description of a graph and produce a p.d.f. of the lifetime bound The Role Assignment Problem: Jargon r d A B Node Roles: Sense, Relay, Aggregate, Sleep Role Attributes: Sense: Destination Relay: Source and Destination Aggregate: Source1, Source2, Destination Sleep: None Feasible Role Assignment: An assignment of roles to nodes such that valid and non-redundant sensing is performed Feasible Role Assignment 11 1 6 2 5 15 13 12 8 14 7 4 9 B 10 FRA: 1 5 11 14 B 3 Infeasible Role Assignment (Redundant) B Infeasible Role Assignment (Invalid) B Infeasible Role Assignment (Invalid) B Infeasible Role Assignment (Invalid) B Infeasible Role Assignment (Redundant) B Feasible Role Assignment 11 1 6 2 5 15 13 12 8 14 7 4 9 B 10 FRA: 1 5 11 14 B; 2 3 9 14 B 3 Infeasible Role Assignment B Enumerating FRAs (Collinear Networks) 5 4 3 2 1 B Collinear networks: All nodes lie on a line Flavor being considered: Sensor given, no aggregation (Max Lifetime Multi-hop Routing) Property: Self crossing roles need not be considered 5 4 3 2 1 5 4 3 2 1 B B Enumerating Candidate FRAs 5 4 3 2 1 B Property allows reduction of candidate FRAs from (N-1)! to 2N-1 R0: 1 B R1: 1 2 B R2: 1 3 B R3: 1 4 B R4: 1 5 B R5: 1 2 3 B R6: 1 2 4 B R7: 1 2 5 B R8: 1 3 4 B R9: 1 3 5 B R10: 1 4 5 B R11: 1 2 3 4 B R12: 1 2 3 5 B R13: 1 2 4 5 B R14: 1 3 4 5 B R15: 1 2 3 4 5 B Collaborative Strategy Collaborative strategy is a formalism that precisely captures the mechanism of gathering data Is characterized by specifying the order of FRAs and the time for which they are sustained A collaborative strategy is feasible iff it ends with nonnegative energies in the nodes R2, t0 R13, t1 R15, t2 R2, t4 R6, t5 R0, t3 R11, t8 R2, t9 R11, t10 R8, t6 R5, t7 5 B 4 3 2 1 Canonical Form of a Strategy Canonical form: FRAs are sequenced in order. Some FRAs might be sustained for zero time It is always possible to express any feasible collaborative strategy in an equivalent canonical form Ra0, t0 Ra1, t1 Ra2, t2 Ra4, t4 Ra5, t5 R1, t’1 R2, t’2 R6, t’6 R3, t’3 R5, t’5 R4, t’4 Canonical Form Ra9, t9 Ra10, t10 Ra6, t6 Ra3, t3 R0, t’0 Ra8, t8 Ra7, t7 R7, t’7 R9, t’9 R8, t’8 R10, t’10 R12, t’12 R14, t’14 R11, t’11 R13, t’13 R15, t’15 The Role Assignment Problem How to assign roles to nodes to maximize lifetime? Same as: Which collaborative strategy maximizes lifetime? Same as: How long should each of the FRAs be sustained for maximizing lifetime (i.e. determine the t’ks)? Solved via Linear Programming: t k - Time spent in k th FRA P(i, k ) - Power dissipated by node i in k th FRA E (i ) - Initial energy in node i Objective: N FRA max subject to: t k 1 0 tk N FRA t k 1 k k [Non-negativity of role time] P(i, k ) E (i ), 1 i N [Non-negativity of residual energy] Example dchar dchar/2 3 dchar/2 2 1 B Min-hop R0: R1: R2: R3: 1B 12B 13B 123B Total Lifetime R0: R1: R2: R3: 0.25 0 0 0 0.25 Min-Energy R0: R1: R2: R3: 0 0 1.0 0 1.0 Persistent R0: R1: R2: R3: 0.09 0.23 0 1.0 1.32 Optimal R0: R1: R2: R3: 0 0.375 0.375 0.625 1.38 7 Node Non-Collinear Network General N-node network with specified sensor has e(N-1)! FRAs 326 FRAs for a 7 node network! 132 B 1326B 15246B 152B (32%) (20%) (19%) (18%) Attack Strategy Polynomial time separation oracle + Interior point method Transformation to network flows Key observation (motivated by Tassiulas et al.) Broad class of RA problems can be transformed to network flow problems Network flow problems solved in polynomial time Flow solution RA solution in polynomial time Equivalence to Flow Problems Role Assignment View 3/11 R0: R1: R2: R3: 0 (0) 0.375 (3/11) 0.375 (3/11) 0.625 (5/11) 1.375 (11/11) 3/11 3 3/11 2 1 B 3/11 5/11 3/11 5/11 Network Flow View 3/11 + 3/11 f12: f13: f1B: f23: f2B: f3B: 8/11 3/11 0 3/11 5/11 6/11 3/11 3 3/11 + 5/11 2 B 5/11 3/11 1 Equivalent Flow Program Extensions to k-of-m Sensors S B Set of potential sensors (S), |S| = m Contract: k of m sensors must sense Flow framework easily extended Total net volume emerging from nodes in S is now k Constraints to prevent monopolies Constraints to prevent consumption k of m sensors Program (additional constraints) 2-Sensor Example 3/11 Single Sensor Lifetime 1.375 s R0: R1: R2: R3: 0 (0) 0.375 (3/11) 0.375 (3/11) 0.625 (5/11) 1.375 (11/11) 3 2 B 3/11 2 Sensor Lifetime 1.816 s R0: R1: R2: R3: 0.246 (2/15) 0.615 (5/15) 1.0 (8/15) 0 (0) 1.816 (15/15) 1 5/11 2/15 1a 3 2 1b B 8/15 5/15 Sensing time divided equally between 1a and 1b Note the complete change in optimal routing strategy Step IV r B Single Source Topology information Degenerate R Aggregation Extensions to Aggregation 3 2 B Flavor: 1 and 2 must sense, aggregation permitted Roles increase from 2N-1 to 3.(2N-2)2 (for N-node collinear network with two assigned sensors) Non-Aggregating FRAs Aggregating FRAs R0: 1 B; 2 B R1: 1 2 B; 2 B R2: 1 3 B; 2 B R3: 1 2 3 B; 2 B R4: 1 B; 2 3 B R5: 1 2 B; 2 3 B R6: 1 3 B; 2 3 B R7: 1 2 3 B; 2 3 B R8: 1 2 B; 2 B R9: 1 2 3 B; 2 3 B R10: 1 3 B; 2 3 B R11: 1 2 3 B; 2 3 B 1 Aggregation Example 3 2 1 B R8: 1 2 B; 2 B (56%) R10: 1 3 B; 2 3 B (20%) R6: 1 3 B; 2 3 B (20%) Aggregation energy per bit taken as 180 nJ Total lifetime is 1.195 (1.596 for 0 nJ/bit, 0.8101 for nJ/bit) It is NOT optimal for network to aggregate ALL the time The aggregator roles shifts from node to node Aggregation Flavors 9 8 B 10 3 9 8 1 11 8 2 3 4 5 6 7 3 4 4 1 1 2 5 General 6 2 5 7 Flat 2-Level 6 7 Flat and 2-Level are Poly-Time Key Idea: Multicommodity Flows Two classes of bits: Bits destined for aggregation Bits not destined for aggregation Already aggregated Never aggregated Total of P+1 commodities 0 P-2 P-1 P Constraints Non-aggregating, non-sensing nodes Conserve all commodities Aggregating nodes (1/k) aggregated-flow is sent out as unagg commodity No out flows on aggregated commodity Sensing nodes Net agg commodity must match that from other sources What can I say … Step V r B Multiple Fixed Sources Topology information Degenerate R Multiple Sources B Constraints non-trivial due to possible overlaps … Key: Virtual Nodes B Constraints as before (but using virtual nodes when there are overlaps) Virtual nodes connected via an overall energy constraint Probabilistic Extension C B A B Single source, but lives at A, B and C probabilistically Discrete source location pmf What is the lifetime bound now? Previous program except weigh the flow by the probability Bounding Strategy: WLLN + Perturbations of Linear Programs Claim 1a [WLLN]: With enough trials, the fraction of time spent at A can be made as close to pA as we like Claim 1b [WLLN]: With enough trials, the sample fraction vector can be made as close to (pA, pB, pC) as we like Difference is defined elementwise Claim 2: For well behaved linear programs, small perturbations from the constraint parameters cause small perturbations in the optimal Picture for well-behaved programs T(sA, sB, sC) (sA, sB, sC) 1 Pr T Tp 1 2 Fraction Vector Space 1 determines 2 and determine number of trials Lifetime Space Step VI r B Single Source Topology information Resides over R with a certain PDF R Extensions to Arbitrary PDFs B R Given topology and the source location pdf how can we derive a lifetime bound? No more difficult than the discrete problem … Key: Partitioning R b 1 B g c 3 e f 2 j l 5 k i d h 4 a R Partition into sub-regions (a through k) Every point in a sub-region has the same S Calculate the probabilities of all the sub-regions Same as the discrete problem! Reduction to discrete probabilistic source B R Growth of number of regions fixed density and r, grows linearly with the number of nodes For Step VII r B Single Moving Source Topology information Specified Trajectory R Dealing with Trajectories B r(t) R Is an absolute trajectory feasible? How can one maximize the lifetime if the trajectory is relative? Simple extension … B R Calculate fraction of time spent in every region Treat as single source problem with fractional residence Find out maximum time (T) possible Solves both relative and absolute versions Multiple Moving Sources B R Same strategy as for single source Time spent in region summed over all sources Recall … Sensor Relay Aggregator Asleep r B R “Future Work” PDFs of lifetime using PDFs of input graphs Lifetime loss in the absence of an oracle Multiple access issues Translating optimal role assignment into feasible data gathering protocols