efficient placement and dispatch of sensors in a wireless sensor network
DESCRIPTION
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network. Prof. Yu-Chee Tseng Department of Computer Science National Chiao-Tung University. Outline. Introduction Sensor Placement Sensor Dispatch Conclusions. Introduction. Wireless sensor networks (WSN) - PowerPoint PPT PresentationTRANSCRIPT
1
Efficient Placement and Dispatch Efficient Placement and Dispatch of Sensors in a Wireless Sensor of Sensors in a Wireless Sensor NetworkNetwork
Prof. Yu-Chee TsengProf. Yu-Chee Tseng
Department of Computer ScienceDepartment of Computer ScienceNational Chiao-Tung University National Chiao-Tung University
3
Introduction Wireless sensor networks (WSN)
Tiny, low-power devices Sensing units, transceiver, actuators, and even
mobilizers Gather and process environmental information
WSN applications Surveillance Biological detection Monitoring
4
Introduction Sensor deployment is a critical issue because
it affects the cost and detection capability of a wireless sensor network
A good sensor deployment should consider both coverage and connectivity
+ +
+
++
++ +
+
+
+ + +
+
+ + + +
+
+ + + ++
+
+
+ ++
+
++ +
++
++
+ + +
++ ++
+
+
++
+
Coverage Connectivity
5
Review The art gallery problem (AGP) asks how to use a
minimum set of guards in a polygon such that every point of the polygon is watched by at least one guard.
However, the results cannot be directly applied to sensor deployment problem because AGP typically assumes that a guard can watch a point as
long as line-of-sight exists Sensing distance of a sensor is normally finite
AGP does NOT address the communication issue between guards Sensor deployment needs to address the connectivity issue
6
Two Issues in Sensor Deployment Sensor placement problem:
Ask how to place the least number of sensors in a field to achieve desired coverage and connectivity properties.
Sensor dispatch problem: Assume that sensors are mobilized Given a set of mobile sensors and an area of interest II
inside the sensing field AA, to choose a subset of sensors to be delegated to II with certain objective functions such that the coverage and connectivity properties can be satisfied
8
Sensor Placement Problem Input: sensing field AA
AA is modeled as an arbitrary-shaped polygon AA may contain several obstacles
Obstacles are also modeled by polygons Obstacles do NOT partition AA
Each sensor has a sensing distance rs and communication distance rc
But we do NOT restrict the relationship between rs and rc
Our goal is to place sensors in AA to ensure both sensing coverage and network connectivity using as few sensors as possible
Obstacle
Obstacle
9
Two Intuitive Placements
rc
rs
3rs
Consider coverage first Consider connectivity first
Need to add extra sensorsto maintain connectivity when 3c sr r
Need to add extra sensorsto maintain coverage when 3c sr r
rs
3rs
3rs 3rsrc
3rs
rc rc
rc rc
10
Proposed Placement Algorithm Partition the sensing field AA into two types of sub-re
gions: Single-row regionsSingle-row regions
A belt-like area between obstacles whose width is NOT larger than , where rmin= min(rs, rc)
We can deploy a sequence of sensors to satisfy both coverage and connectivity
Multi-row regionsMulti-row regions We need multi-rows sensors to cover such areas Note: Obstacles may exist in such regions.
min3r
11
Step 1: Partition the Sensing Field From the sensing field AA, we identify all single-row regions
Expand the perimeters of obstacles outwardly and AA’s’s boundaries inwardly by a distance of rmin
If the expansion overlaps with other obstacles, then we can take a projection to obtain single-row regions
The remaining regions are multi-row regions.
3rmin
Expansions
Obstacle
Obstacle
Obstacle
3rmin
12
An Example of Partition
Obstacle
Obstacle
min3r
Obstacle
2
7Obstacle
1
3
4 5
6
Obstacle
12
4 56
3Multi-row regions
Single-row regions
13
Step 2: Place Sensors in a Single-row Region Deploy sensors along the bisector of region
< 3rminwidth
Obstacle
Obstacle
Obstacle
Obstacle
< 3rminwidth+ +
+ ++ +
+
Case
(a)
(b)
Small Regions Bisectors Sensor Deployment
+ + + +
+
+
+
14
Step 3: Place Sensors in a Multi-row Region We first consider a 2D plane without boundaries & o
bstacles Deploy sensors row by row A row of sensors needs to guarantee coverage and connec
tivity Adjacent rows need to guarantee continuous coverage
Case 1: Sensors on each row are separated by rc Adjacent rows are separated by
Case 2: Each sensor is separated by
3c sr r
3c sr r
224cr
s sr r
3 sr
15
Case 1: 3c sr r
rs
rs
rc
rs rs -2 rc2
4
rc2
rs
rs/rc
rs23
rs2
rs
rs
rs
rc
rs -2 rc2
4
rs
rc2
rs > rc rs = rc rs < rc < 3rs
17
Refined Step 3: For a multi-row region with boundaries and
obstacles, We can place sensors one by one according to the
following locations (if it is not inside an obstacle or outside the region)
18
Step 4:
Obstacle
uncovered areas
connectivity
Obstacle
Three unsolved problems Some areas near the boundaries
are uncovered Need extra sensors between
adjacent rows to maintain connectivity when
Connectivity to neighboring regions needs to be maintained
3c sr r
Solutions Sequentially place sensors along
the boundaries of the regions and obstacles
19
Simulation Results Sensing fields
(a) Rectangle (b) Circle (c) Non-convex polygon
(d) H-shape (e) Office 1 (f) Office 2
40
75
89
41
1987
37
57 40
35
4828
75
89
6 4
4
3
28
3
12
17 28
49
20
75
89
20
Simulation Parameters We use (rs, rc) = (7,5), (5,5), (3.5,5), (2,5) to re
flect the four cases Comparison metric
Average number of sensors used to deploy Compare with two deployment methods
rs
3rs
3rs 3rs
rc
rc
Coverage-first Connectivity-first
, , 3 , 3s c s c s c s s cr r r r r r r r r
21
Simulations (rs vs. rc)
227268
341267
315
500
360 361 386
0
100
200
300
400
500
600
700
800
Num
ber
of D
eplo
yed
Sens
ors Ours
Cov.-firstConn.-first
217254
323
253298
470
341341363
0
100
200
300
400
500
600
700
Num
ber
of D
eplo
yed
Sens
ors Ours
Cov.-firstConn.-first
141171
225
174210
353
252 253 265
0
100
200
300
400
500
Num
ber
of D
eplo
yed
Sens
ors Ours
Cov.-first
Conn.-first
126159
220
169206
367
273 273 273
0
100
200
300
400
500
Num
ber
of D
eplo
yed
Sens
ors Ours
Cov.-first
Conn.-first
148193
275
201253
470
328 340328
0
100
200
300
400
500
600
Num
ber
of D
eplo
yed
Sen
sors Ours
Cov.-firstConn.-first
(a) Rectangle (b) Circle
(d) H-shape (e) Office 1 (f) Office 2
rs > rc rs = rc rs < rc < 3rs rs > rc rs = rc rs < rc < 3rs
rs > rc rs = rc rs < rc < 3rs rs > rc rs = rc rs < rc < 3rs rs > rc rs = rc rs < rc < 3rs
111135
178142
168
284
215 215 215
0
100
200
300
400
500
Num
ber
of D
eplo
yed
Sens
ors Ours
Cov.-first
Conn.-first
(c) Non-convex polygon
rs > rc rs = rc rs < rc < 3rs
22
Simulations (Shapes of A)
738
556428
553
744 786
962
717
907
1168 12351281
0
200
400
600
800
1000
1200
1400
Rectangle Circle Non-convex
H-shape Office 1 Office 2
Num
ber
of D
eplo
yed
Sen
sors
Ours
Conn.-first
24
Problem Definition We are given
A sensing field AA An area of interest II inside AA A set of mobile sensors SS resident in AA
The sensor dispatch problem asks how to find a subset of sensors S’S’ in SS to be moved to II such that after the deployment, II satisfies coverage and connectivity requirements and the movement cost satisfies some objective functions.
28
Two Objective Functions Minimize the total energy consumption to move sens
ors
: unit energy cost to move a sensor in one step di : the distance that sensor i is to be moved
Maximize the average remaining energy of sensors in S’ after the movement
ei : initial energy of sensor i
'
min m ii S
d
'
( )max
| ' |
i m ii S
e d
S
m
29
Proposed Dispatch Algorithm (I) Run any sensor placement algorithm on II to get the t
arget locations L={(x1, y1),… ,(xm, ym)} For each sensor , determine the energy cost c(si,
(xj, yj)) to move si to each location (xj, yj))
Construct a weighted complete bipartite graph , such that the weight of each edge is w(si, (xj, yj)) = - c(si, (xj, yj)) , if objective function (1) is us
ed; or as w(si, (xj, yj)) = ei - c(si, (xj, yj)), if objective function (2) is
used
is S
( , ( , )) ( , ( , ))i j j m i j jc s x y d s x y
( , )G S L S L
30
Proposed Dispatch Algorithm (II) Construct a new graph from G,
where L is a set of |S|-|L| elements, each called a virtual location. The weights of edges incident to L are set to wmin, where wmin ={min. weight in G}-1.
Find the maximum-weight perfect-matching M on graph G by using the Hungarian method.
For each edge c(si, (xj, yj)) in M such that , move sensor si to location (xj, yj) via the shortest path. If , it means that we do not have sufficient
energy to move all sensors. Then the algorithm terminates.( , ( , )) 0i i j je c s x y
( , )j jx y L^
^^
( , { })G S L L S L L ^ ^^
^
32
An Example of Dispatch
II
A
BD
C
E
Run sensor placement algorithm on II to get the target locations
L={(x1, y1), (x2, y2), (x3, y3), (x4, y4)}1 2
3 4
33
An Example of Dispatch
II
A
BD
C
E
1 2
3 4
Compute energy cost (assume =1)m
1 1 2 2
3 3 4 4
1 1 2 2
3 3 4 4
1 1 2 2
3 3 4 4
1
( , ( , )) 9 ( , ( , )) 12
( ,( , )) 8 ( , ( , )) 11
( ,( , )) 11 ( , ( , )) 11
( ,( , )) 9 ( , ( , )) 9
( ,( , )) 10 ( , ( , )) 6
( ,( , )) 11 ( , ( , )) 8
( ,( ,
c A x y c A x y
c A x y c A x y
c B x y c B x y
c B x y c B x y
c C x y c C x y
c C x y c C x y
c D x
1 2 2
3 3 4 4
1 1 2 2
3 3 4 4
)) 14 ( , ( , )) 13
( ,( , )) 12 ( , ( , )) 10
( ,( , )) 33 ( , ( , )) 35
( ,( , )) 30 ( , ( , )) 31
y c D x y
c D x y c D x y
c E x y c E x y
c E x y c E x y
34
An Example of Dispatch Construct the weighted complete bipartite graph G and assign weight on each
edge
A
B
C
D
E
1
2
3
4
S L
Weights of edges (assume that all sensors havethe same initial energy 40 & 1st objective function is used)
A B C D E
1 31 29 30 26 7
2 28 29 36 27 5
3 32 31 29 38 10
4 29 31 32 30 9
35
An Example of Dispatch Construct the new graph G from G by adding |S|-|L| virtual locations
S L
Weights of edges
A B C D E
1 31 29 30 26 7
2 28 29 34 27 5
3 32 31 29 28 10
4 29 31 32 30 9
5 4 4 4 4 4
^
Virtual location
A
B
C
D
E
1
2
3
4
5
Min.
36
An Example of Dispatch Use the Hungarian method to find a maximum-weighted perfect-matching M
S L
Weights of edges
A B C D E
1 31 29 30 26 7
2 28 29 34 27 5
3 32 31 29 28 10
4 29 31 32 30 9
5 4 4 4 4 4
A
B
C
D
E
1
2
3
4
5
37
An Example of Dispatch Move sensors to the target locations
S L
A
B
C
D
E
1
2
3
4
5
II
A
BD
C
E
1 2
3 4
Do not move
A
B D
C
II
E
38
Find the Shortest Distance d(si, (xj, yj)) Find collision-free shortest path
A sensor is modeled as a circle with a radius r Expand the perimeters of obstacles by the distance of r to find the col
lision-free vertices. Connect all pairs of vertices, as long as the corresponding edges do n
ot cross any obstacle. Using Dijkstra’s algorithm to find the shortest path.
Obstacle 1
si
Obstacle 2
(xj, yj)
r
r Obstacle 3
r
a
b
c
d
e
f
g
h
collision-free vertices
collision-free edges
expanded area
shortest path
41
Time complexity The time complexity of our sensor dispatch
algorithm is O(mnk2 + n3) m: number of target locations in II n: number of mobile sensors k: number of vertices of the polygons of all
obstacles and II
42
Simulations
0
2000
4000
6000
8000
10000
12000
14000
20 40 60 80 100 120
Number of Sensors in I
Tot
alE
nerg
yfo
rM
ovem
ent
Ours
Greedy
Random
500
520
540
560
580
600
620
640
660
20 40 60 80 100 120Number of Sensors in I
Ave
rage
Rem
aini
ngE
nerg
yof
Sens
ors
Ours
Greedy
Random
Greedy: sensors select the closest locations Random: sensors randomly select locations
43
Conclusions We propose a systematical solution for sensor deplo
yment Sensing field is modeled as an arbitrary polygon with obs
tacles Allow arbitrary relationship between rc and rs
Fewer sensors are required to ensure coverage and connectivity
An optimal-energy dispatch algorithm is presented to move sensors to the target locations under two energy-based objective functions