+ All Categories
Home > Documents > SIGMOD'061 Energy-Efficient Monitoring of Extreme Values in Sensor Networks Adam Silberstein Kamesh...

SIGMOD'061 Energy-Efficient Monitoring of Extreme Values in Sensor Networks Adam Silberstein Kamesh...

Date post: 22-Dec-2015
Category:
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
28
SIGMOD'06 1 Energy-Efficient Monitoring of Extreme Values in Sensor Networks Adam Silberstein Kamesh Munagala Ju n Yang Duke University
Transcript

SIGMOD'06 1

Energy-Efficient Monitoring of Extreme Values in Sensor Networks

Adam Silberstein Kamesh Munagala Jun Yang

Duke University

SIGMOD'06 2

Papers

C. Olston, B. Loo, and J. Widom, “Adaptive Precision Setting for Cached Approximate Values,” SIGMOD’01.

A. Silberstein, K. Munagala and J. Yang, "Energy-Efficient Monitoring of Extreme Values in Sensor Networks," SIGMOD '06.

SIGMOD'06 3

Outline

Introduction to Max/Min Query Algorithms

Query non-specificTemporal Suppression (TS)Range Caching (RS)

Query-specificSLAT (single-level adaptive thresholds)SLAT-A (single-level adaptive thresholds with aggregation)HAT (hierarchical adaptive thresholds)

Experimental Results

SIGMOD'06 4

Max Query

Max query Returns (node id, value) for node with highest value in

network

Addressed problem How to energy-efficient continually maintains the max

result

Uses: environmental, machine room monitoring Observe trends, get early alerts

SIGMOD'06 5

Temporal Suppression (TS)

Simple monitoring algorithm Not specifically tailored to query

Node transmits its value if it has changed since its last report Absence of report implies the value has not

changed

SIGMOD'06 6

65

86

30

Temporal Suppression

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6874

72

60

82

74 76

Low value Dropping value

p30

p30

p30

p30

k86

k86

q65

q65

q65

k86, q65

Trigger

SIGMOD'06 7

Range Caching (RS)

Range caching [Olston et al. SIGMOD 01]

Range: [20 60]

Sensed value: 40

Range: [55 80]

Sensed value: 82

Range: [75 90]

Sensed value: 89

Root: cache ranges [75 90], [21 68], [55 80], [20 60]

No send

Send 82No send

Range: [21 68]

Sensed value: 70

Send 70

SIGMOD'06 8

Range Caching (RS)

Range: [75 90]

Sensed value: 89

Root: cache ranges [75 90], [21 68], [55 80], [20 60]

Since 90 > max{70, 82}

QueryReply 89

SIGMOD'06 9

Range Caching (RS)

Range setting If a value fall outside its current range, it

expands the range by a factor > 1.To avoid value-initiated packets, the interval should

be wide enough to make it unlikely that modifications to the exact value will exceed the interval.

When a node receives a “Query”, it contracts the range length by a factor of .to avoid “Reply” packets, the interval should be as

narrow as possible.

SIGMOD'06 10

Total cost

[Olston et al. SIGMOD 01]

the probability that a value-based transmission will occur at each round.

the probability that a query-based transmission will occur at each round.

Assume the costs of value-based andquery-based updates are equal

SIGMOD'06 11

30

{20,40}

86

{70,102}

{78,86}

{68,84}

Range Caching

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6874

72

60

82

74 76

{60,76}

{18,28}

{74,90}

{60,92}

p30

p30

p30

p30

k86

k86

k86

Q

Q

Q

Q

Low value Queries

SIGMOD'06 12

SLAT

Direct translation of adaptive caching SLAT : “single level adaptive thresholds”

Ignore topology (use it for routing only) Current max node is temporally monitored Thresholds

At node ui, vi <= t(ui) <= current_max

Node sends Trigger if value breaks thresholdIf current_max falls, root queries all nodes with threshol

d higher than current_max

SIGMOD'06 13

8683

818470

SLAT Reporting

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75t=80

t=78t=84 t=75

j84k86 l83

m80

j84,k86,l83,m81

j84,k86,l83,m81

UnbrokenThreshold,no Trigger

Broken thresholds,all nodes send Triggers

nodethresh

i j k75 80 84

Root stores thresholds

85 86

……

SIGMOD'06 14

72

SLAT Querying

20

15 23

70

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75

b

a

c

d e f g

h i jk l

m n

o pq r

nodethresh max drops: 82 72

Threshold higher than max,node must be queried

Q

Q

Q

Query

n72

n72

n72

i j k75 80 84

71 (or 72)

SIGMOD'06 15

SLAT-A

SLAT-A : “single level adaptive thresholds-aggregation” In particular round, if multiple values converge a

t an intermediate node for transmission, only the highest is forwardedSimilar to TinyAgg

SIGMOD'06 16

8683

818470

SLAT-A Reporting

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75t=80

t=78t=84 t=75

j84k86 l83

m80

k86

k86

Unbrokenthreshold

Broken thresholds

nodethresh

SIGMOD'06 17

72

SLAT-A Querying

20

15 23

70

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75

b

a

c

d e f g

h i jk l

m n

o pq r

max drops: 82 72

Root does not know any thresholds, so must query all nodes, including those with very low thresholds

Q

Q

Q

Q

Q

Q Q

t=20 t=25

t=23

t=24n72

n72

n72

SIGMOD'06 18

HAT

HAT – “hierarchical adaptive thresholds” Additional invariant: t(ui) <= t(parent(ui))

Node’s threshold greater than all values in subtree

Each node stores child thresholds Combine advantages of SLAT, SLAT-A

Reporting: only propagate highest value in subtreeQuerying: prune subtrees with threshold lower than f

allen max

SIGMOD'06 19

HAT Reporting

8683

818470

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75t=80

t=78t=84 t=75

j84k86 l83

m80t=88

t=90

t=95

threshnode d e

Unbrokenthreshold

Broken thresholds,Nodes send Triggers

f’s thresholdshort-circuits Triggers

Node stores child thresholds

SIGMOD'06 20

72

HAT Querying

20

15 23

70

18 43

32

52

62

65

70 6874

72

60

82

74 76

t=75

b

a

c

d e f g

h i jk l

m n

o pq r

max drops: 82 72

Q72

Q72

Q72

t=80

t=85

t=90

t=70

threshnode d e

70 80d pruned from queries, e not pruned

n72

n72

n72

SIGMOD'06 21

Suppression across Space/Time

Another important feature of HAT: state at intermediate nodes carries over temporally E.g. nodes a and b have common ancestors;

both rise, but in subsequent rounds;b benefits from a’s raising of thresholds

One node’s previous value can help suppressing other nodes’ subsequent values at intermediate nodes!

SIGMOD'06 22

100100

100

100

100

100

r100

r100

r100

r100

9595

More Suppression with HAT

b

a

c

d e f g

h i jk l

m n

o pq r

20

15 23

60

18 43

32

52

62

65

70 6880

72

60

82

70 76t=76

t=76

t=80

t=80

t=76

t=73

Green: r rises, value propagates to rootGold: q rises, short-circuited at n, which now has higher threshold

q95

SIGMOD'06 23

Experiments

Simulation of Mica2 motes Computation of energy cost in mJ based on

number of bytes sent+received Both actual data and transmission overhead

200 nodes, 400x400 m area

SIGMOD'06 24

Comparison of 5 algorithms Nodes change its value with some probability, and then by a random amount chosen randomly from

[v-100, v+100]

Experimental Results

SIGMOD'06 25

Experimental Results

Nodes rise with some probability HAT beats SLAT-A at low probabilities, due to sharing between rounds

SIGMOD'06 26

Experimental Results

All nodes fall in value by some percent SLAT, HAT can prune when fall is small SLAT-A must search whole network

SIGMOD'06 27

Intel Lab Data (Temperature)

SIGMOD'06 28

Extensions & Conclusion

Straightforward to extend max to min, top-k Two key points for continuous query, in-

network processing Leverage query semantics Leverage network hierarchy: store state in-

network, rather than treating intermediate nodes as only conduitsEnables nodes to make decisions (drop messages)Enables filtering/aggregation across time steps


Recommended