Presentation is loading. Please wait.

Presentation is loading. Please wait.

AT&T Labs1 The Sensor Cover Problem Alon Efrat (U. Arizona) Adam Buchsbaum (AT&T Labs) Shaili Jain (Harvard) Suresh Venkatasubramanian (AT&T Labs) Ke Yi.

Similar presentations


Presentation on theme: "AT&T Labs1 The Sensor Cover Problem Alon Efrat (U. Arizona) Adam Buchsbaum (AT&T Labs) Shaili Jain (Harvard) Suresh Venkatasubramanian (AT&T Labs) Ke Yi."— Presentation transcript:

1 AT&T Labs1 The Sensor Cover Problem Alon Efrat (U. Arizona) Adam Buchsbaum (AT&T Labs) Shaili Jain (Harvard) Suresh Venkatasubramanian (AT&T Labs) Ke Yi (AT&T Labs)

2 AT&T Labs 2 Sensors Low-power devices with sensing capabilities Sensors monitoring regions We would like to cover a given region for as long as possible Since sensors have limited life, we need to schedule sensor uptime to maximize coverage time

3 AT&T Labs 3 Preemptive and Non-preemptive Preemptive: Sensors can be turned on and off multiple times, and the total duration is constrained by battery Non-preemptive: Each sensor can be turned on only once, and then it runs till death

4 AT&T Labs 4 Problem Definition A sensor s is defined by a region R(s)  U and a duration d(s). A schedule for a sensor is an assignment of a start time t(s), so that the sensor is active for all t(s)  t  t(s) + d(s). A point x  U is covered at time t if there is some active sensor s at time t such that x  R(s). Problem: Given n sensors defined by (R i, d i ), i  [n], schedule all sensors so that U is covered for all 0  t  T, and T is maximized.

5 AT&T Labs 5 Prior Work Previous work assumes that U is an arbitrary finite set, R i ’s are arbitrary subsets of U, and d i = 1 (Set Cover Packing)   (log n)-approximation [Feige et al. 02]  Various heuristics in the networks community Does geometry help?

6 AT&T Labs 6 1-D: Restricted Strip Covering Each sensor covers an interval Problem: Slide rectangles up and down to cover a rectangular area of maximum height Load L = 5 3 5 2 3 2 5 4 5 2 4 3

7 AT&T Labs 7 Restricted Strip Covering: Related Results Packing instead of covering: The dynamic storage allocation problem  (2+  )-approx. [Buchsbaum et al. ’04] Further allow rectangles to move both vertically and horizontally: Strip packing  (1+  )-approx. [Kenyon and Remila ’00]

8 AT&T Labs 8  Our Results Sensor shapeUniform durationVariable duration IntervalsExact in PNP-hard O(log log log n)-approx. (2+  )-approx. for non-nested intervals DisksNP-hard O(log(nd max /L))-approx. O(log(L max /L))-approx. when congruent NP-hard O(log n)-approx. Arbitrary sets  (log n)-approx. [Feige et al. ’02]  (log n)-approx. 

9 AT&T Labs 9 An Easy Start: Uniform Duration A greedy algorithm can achieve optimal solution of duration L

10 AT&T Labs 10 Variable Durations: NP-hard O(log n) 2004 O(log log n) 2005 O(log log log n) 2006

11 AT&T Labs 11 Roadmap to “ Triple-Log ” Dynamic programming for small L  Find the optimal schedule in O(nL O(L) ) time  Poly time for L = O(log n / log log n)  (1+  )-approx. for L < c 1 d min log n / log log n The “grouping” technique for large L  (1+  )-approx. for L > c 2 d max log n Combine the two techniques to get an O(log log log n)-approx. for L in between

12 AT&T Labs 12 Dynamic Programming Check if T is achievable  Try all T=1,2,…,L At any x-coordinate i, consider all possible schedules of sensors covering i. Mark a state “valid” if there is previous compatible valid state i=1i=2 …  

13 AT&T Labs 13 Dynamic Programming Analysis A crude analysis yields an n O(n) bound Observation 1: at most 2T sensors in any state Observation 2: can skip x-coordinates where there are >5T sensors  # states per step:  total running time is O(nL O(L) ). i=1i=2 …  

14 AT&T Labs 14 Dynamic Programming Analysis An exact solution for L = O(log n / log log n) (1+  )-approx. for L < c 1 d min log n / log log n (by truncating)  Replace d i by  New L’ < c 1 /  ∙ log n / log log n  Run the dynamic program

15 AT&T Labs 15 Roadmap to “ Triple-Log ” Dynamic programming for small L  Solves the problem in O(nL O(L) ) time  (1+  )-approx. for L < c 1 d min log n / log log n The “grouping” technique for large L  (1+  )-approx. for L > c 2 /  5 ∙ d max log n Combine the two techniques to get an O(log log log n)-approx. for L in between

16 AT&T Labs 16 Basic idea: group short sensors into longer sensors, then apply the greedy algorithm Need to bound the amount wasted The Grouping Algorithm wasted

17 AT&T Labs 17 Grouping Sensors Stabbed by a Common Anchor

18 AT&T Labs 18 Grouping Sensors Stabbed by a Common Anchor L new (x) = L old (x) / (1+  ) - 4D/  D: height of new sensors

19 AT&T Labs 19 Partitioning A  -grouping is a partition of sensors into a number of subsets such that:  Sensors in a subset are stabbed by a common anchor  For any x-coordinate i, the set of sensors live at i are drawn from no more than  subsets Lemma: We can group a set of unit-duration sensors into sensor with duration D such that L new (x) > L old (x) / (1+  ) - O(  D /  )

20 AT&T Labs 20 Partitioning for a Set of Intervals  =  (log n) for a general set of intervals  = 2 for non-nested intervals

21 AT&T Labs 21 The Algorithm

22 AT&T Labs 22 The Algorithm By repeatedly applying the lemma to make all sensors have equal duration Theorem: For sufficiently small positive , there is a poly-time algorithm that gives a schedule of duration at least L/(1 +  ) - O(  d max /  4 ). Corollary: There is a constant c 2, such that the algorithm gives a schedule of duration at least L/(1 +  ) when L > c 2  d max /  5.

23 AT&T Labs 23 Roadmap to “ Triple-Log ” Dynamic programming for small L  Solves the problem in O(nL O(L) ) time  (1+  )-approx. for L < c 1 d min log n / log log n The “grouping” technique for large L  (1+  )-approx. for L > c 2 d max  /  5 (  = O(log n)) Combine the two techniques to get an O(log log log n)-approx. for L in between

24 AT&T Labs 24 Putting Pieces Together Consider the case when  = O(1). Fix parameter  =  5 /(c 2  ). Partition sensors into blue set of those with duration >  L (large) and red set of the rest (small). For each x-coordinate, one of the sets has load at least L/2. Use each set to cover those x-coordinates where it has the load. Dynamic programming for the blue set gives solution of duration L/(2(1 +  )). Grouping for the red set gives same result. Putting solutions together gives a schedule of duration L/(2 + 2  ).

25 AT&T Labs 25 The General Case Set h = L log log n / log n; fix parameter l. Partition sensors:  R 0 gets large sensors, of duration > h.  R i for i = 1, …, l gets middle sensors, of duration  [h/2 i, h/2 i-1 ); truncate to h/2 i.  R  +1 gets small sensors, of duration < h/2 l = L log log n/(2 l log n). For each x-coordinate, one of the sets has load at least L/( l + 2). Use each set to cover those x-coordinate where it has the load. Dynamic programming for R 0 gives solution of duration L/((1 +  )( l + 2)). Greedy on the middle R i ’s gives solution of duration L/(2( l + 2)). Grouping for R l +1 with  = 1 gives solution of duration Choose l = O(log log log n)

26 AT&T Labs 26 Conclusion and Open Problems 1D:  For non-nested intervals, (2 +  )-approx.  General case: O(log log log n)-approx. We conjecture that constant approx is possible. 2D:  O(log(nd max / L))-approx.  Not much better than the O(log n)-approx. for the arbitrary-set version  Can we improve?

27 AT&T Labs 27 More Open Problems Preemptive Schedules  1D: Can be solved exactly using max-flow Load = Duration of optimal preemptive schedule  2D: NP-hard No approximation known Sensor networks connectivity

28 AT&T Labs28 Thank you!


Download ppt "AT&T Labs1 The Sensor Cover Problem Alon Efrat (U. Arizona) Adam Buchsbaum (AT&T Labs) Shaili Jain (Harvard) Suresh Venkatasubramanian (AT&T Labs) Ke Yi."

Similar presentations


Ads by Google