Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Prolonging the Lifetime of WiNeMO with
Isolated Node Problem Using
Energy Efficient Clustering Scheme
以高效能叢集機制延長可動節點無線網路壽命
Presenter:Kuan-Wu Su
Date : 10/14/2015
1 Mobilizing Information Technology Lab
@ ECE Dept. @NTUST
Outline
₪ Introduction
₪ Sensor Network Schemes
₪ Mobility Models
₪ Simulation & Visualization
₪ Conclusion
₪ Q&A
2
Rescue & Survey
Introduction
3
Wireless Network with Moving Objects (WiNeMO)
+
Mobile Wireless Sensor Network (MWSN)
Agriculture
Big Events Broadcast
Heterogeneous Sensors/Carriers
4
How close are we to MWS in WiNeMO?
Flying Sensors
Crazyflie Nano
Quadcopter
(7 mins fly time,
20g, 9cm x 9cm) Sensors smaller
than coins
Integrate camera,
wireless, Tiny OS,
and open source
Introduction
5
Integrated into your life very soon
https://youtu.be/3WBUVYZkODI
Issues in MWSN + WiNeMO
6
Issues in integrating mobile nodes for WiNeMO
• Using Cluster Heads (CH) as Relays
• Changing network topology / nodes’ positions
• Energy efficiency
Heterogeneous MWSN
7
clusters
LEACH
8
LEACH (Low-Energy Adaptive Clustering Hierarchy) W. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “Energy-efficient
communication protocol for wireless microsensor networks,” in Proc.
Hawaii Int. Conf. System Sciences, vol. 2, Jan. 2000, p. 10.
• Self-Organizing, adaptive clustering protocol
• Randomized rotation of cluster heads (CH) after each round
• Constant probability for CH election
• Every node rotates to be CH
9
Sensor node Cluster Head
Sink
10
Sensor node Cluster Head
Sink
Too close
Too far
Localized Energy Level
Residual Energy Map
11
Heterogeneous MWSN
12
previous run cluster heads
clusters
isolated
node
new isolated
nodes
Proposed Scheme
13
REAC-IN
Regional Energy Aware Clustering with Isolated Node
• Cluster-Heads Selection Algorithm Improved
• Reduce Data Transmission Energy Consumption on Isolated
Node
Proposed Scheme (REAC-IN)
14
Cluster-Heads Selection Algorithm
Threshold 𝑇 𝑛𝑖 used in LEACH
• 𝑇 𝑛𝑖 =
𝑝
1−𝑝×(𝑟 𝑚𝑜𝑑 1
𝑝 ) 𝑖𝑓 𝑛𝑖 ∈ 𝐺
0 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
r ∶ current cluster-heads selection round number
p ∶ suggested percentage of cluster-heads
G ∶ the set of nodes that have not been selected as cluster-heads in previous round
Proposed Scheme (REAC-IN)
15
Cluster-Heads Selection Algorithm
Threshold 𝑇 𝑛𝑖 used in REAC-IN
• 𝑇 𝑛𝑖 =
𝑝𝑖
1−𝑝𝑖×(𝑟 𝑚𝑜𝑑 1
𝑝𝑖 ) 𝑖𝑓 𝑛𝑖 ∈ 𝐺
0 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
r ∶ current cluster-heads selection round number
p ∶ probability that the node i is selected as a cluster-head in the r round
G ∶ the set of nodes that have not been selected as cluster-heads in previous round
16
Cluster-Heads Selection Algorithm
• 𝐸𝑐,𝑖 𝑟 − 1 = 𝐸𝑖(𝑟−1)
𝑛𝑐𝑖=1
𝑛𝑐
• 𝑝𝑖 = 𝑝𝑜𝑝𝑡 1 −𝐸𝑐,𝑖 𝑟−1 −𝐸i(𝑟)
𝐸𝑐,𝑖 𝑟−1 = 𝑝𝑜𝑝𝑡
𝐸i(𝑟)
𝐸𝑐,𝑖 𝑟−1
𝐸𝑖 𝑟 ∶ residual energy of node 𝑛𝑖
Ec,i r − 1 ∶ regional average energy of node ni in its cluster c at r − 1 round
popt ∶ the optimal probability that a node becomes a cluster head
Proposed Scheme (REAC-IN)
17
Proposed Scheme (REAC-IN) 𝐀𝐥𝐠𝐨𝐫𝐢𝐭𝐡𝐦: 𝐃𝐚𝐭𝐚 𝐓𝐫𝐚𝐧𝐬𝐦𝐢𝐬𝐬𝐢𝐨𝐧 𝐏𝐫𝐨𝐜𝐞𝐬𝐬 𝐨𝐧 𝐈𝐬𝐨𝐥𝐚𝐭𝐞𝐝 𝐍𝐨𝐝𝐞
// Running on each isolated node:
// μ : the cluster head node in the previous round
// i : the current node
// s : the sink node
// r : current cluster-head selection round
// 𝐸i(𝑟) : node i residual energy
// 𝐸𝑐,𝑖 𝑟 − 1 : regional average energy of the cluster which the node i belongs to in the last round
// 𝐷𝑖,𝜇 distance between the node i and the relay node 𝜇 of current round
// 𝐷𝜇,𝑠 distance between the relay node μ and the sink s of current round
// 𝐷𝑖,𝑠 distance between the node i and the sink s of current round
1. IF (𝐸𝑖 𝑟 ≥ 𝐸𝑐,𝑖 𝑟 − 1 𝐀𝐍𝐃 𝐷2𝑖,𝜇 + 𝐷2
𝜇,𝑠 < 𝐷2𝑖,𝑠
2. THEN
3. Send the sensed data to the Sink
4. ELSE
5. Sent its data to a CH node in the previous round
6. ENDIF
18
REAC-IN
• Cluster-Heads Election
probability based on local
average residual energy
• Can be used for heterogeneous
nodes
• Consider isolated node(s) problem
19
previous run cluster heads
new isolated
nodes
Use 𝑻 𝒏𝒊 thresholds to select current
run CHs
Process Isolated Node algorithm
Send aggregated data to sink
New clusters forming, calculate and send 𝐸𝑐,𝑖 , 𝑫𝜇,𝒔
Sensor nodes send data to CHs
r-1 run clusters forming and data transmission
?
? ?
via previous
run cluster
head ?
Sensor nodes moving
20
Mobility Evaluation
Trace based
Using real-time recording or real-life trace as input.
Syntactic/Model based
Synthesis movements for systems yet to be implemented
• Individual vs Group
• Free-scale vs Constrained
• Randomness levels
Low randomness
Traces/Cases
High randomness
Statistical analysis
21
Mobility Models
Random independence
Random Walk (RW), Random Directions (RD), Random
WayPoints (RWP), etc.
Temporal dependency
Gauss-Markov models, Smooth Random mobility models, etc.
Spatial dependency
Reference Points Group mobility models, etc.
Geographical restriction
Simulate streets, freeways, buildings, obstacles/paths.
22
Random Walk (RW)
x
y
nodes wrapping around
moving pass boundary
x
y
nodes reflected from edges
moving pass boundary
Random WayPoints (RWP)
24
Random Waypoints (RWP 3D)
nodes moving toward
waypoints in 3D space
RWP
on spherical surface
25
Gauss-Markov Mobility Models
Current moving parameters
depend on past status
N(t)
N(t+1)
N(t+2)
N(t-1) N(t-2)
26
Hierarchical Mobility Models
pedestrians
vehicles
drones
27
Graph-based Mobility Models
28
Modeling Real Environments
29
Advanced Models
Autoregressive
Flocking and Swarm based
Virtual game-driven
Non-recurrent
Social-Based Community
Knowledge-driven
etc.
Need a platform that can quickly adapt new models
30
Quadcopter Matlab Simulation
https://github.com/gibiansky/experiments/tree/master/quadcopter
31
Quadcopter has limited
vertical (z-axis) moving
ability, but fast horizontal
movement (x-y plane)
Simplified model :
x-y plane :
< 5 ~ 20 m/s
z axis :
< 4 m/s
Quadcopter Simulation
NS-2 Mobility Models Interface
Mobility
generator
Protocol
Simulation
(NS)
Mobility metric Protocol performance
NS trace file format
NS-2 Mobility Model Issues
Mobility trace file
– Format $ns_ at <time> $node_(<id>) setdest <x> <y> <speed>
– Example: $ns_ at 0.000 $MN2 setdest 610.107 230.884 40.608
A(t=0.000)
B(t=1.000)
34
Mobility Models in NS-3
• ConstantPosition (fixed)
• ConstantVelocity (RWP)
• ConstantAcceleration (RWP)
• GaussMarkov (temporal)
• Hierarchical (spatial)
• RandomDirection2D
• RandomWalk2D
• RandomWaypoint (RWP 2D/3D)
• SteadyStateRandomWaypoint (temporal RWP)
Simulation Components
35
Mobility Models
Sensor Network Simulation
Simulation Visualization
NS-2 NS-3 MATLAB
RWP + RW MATLAB
trace file RWP any
etc.
NAM/Javis, NetAnim
Otter, PyViz, MATLAB
H3Viwer, Gnuplot,
etc. etc.
Components Tools
NS-2 + NAM/Otter/H3Viwer
36
Mobility Modules (non-native)
NS-2 Simulation
NAM/Otter/H3Viwer
trace file
Simulation is very robust, but
difficult to update new mobility
models especially when using
3D visualization
NS-3
37
Mobility Modules (non-native)
NS-3 Simulation
C++ implement Visualization
graphic data
objects/API
Certain network simulation not yet
supported, but better integration with
mobility modules (also faster). C++
implement visual interfaces take time
to develop matching mobility models
with desired visualization (2D or 3D)
NS-2 + Matlab Visualization
38
Mobility Modules (non-native)
NS-2 Simulation
Matlab Visualization
trace file
Matlab Sim & Visualization
39
Mobility Modules (matlab)
Matlab Simulation
Matlab Visualization
Network simulation easy to modify
but required further verification,
and usually with less time resolution.
But easy to develop new schemes
with different mobility models, as well
as ready-to-use visualization.
40
Voronoi Diagram Algorithm
Using Voronoi diagram to split nearest cluster
heads’ boundaries.
Matlab Visualization
41
• Easy to separate
different clusters
• Identify cluster heads
• Identify sink
• Easy to visualize
isolated nodes
2D Clusters Visualization
42
3D Voronoi with few
cluster heads (CHs)
difficult to distinguish
clusters with lots of CHs
Dilemma in 3D Voronoi
43
3D coloring scheme with
scaled RGB value
Create localized discrete
color schemes
3D Color Code Schemes [0, 0, 200m]
[0, 0, 255] Blue
[200m, 200m, 0]
[255, 255, 0] Yellow
[0, 200m, 0]
[0, 255, 0] Green
[200m, 0, 0]
[255, 0, 0] Red
[200m, 0, 200m]
[255, 0, 255]
Magenta
[0, 200m, 200m]
[0, 255, 255] Cyan
44
3D nodes without coloring Clusters with 3D color
schemes
3D Clusters Visualization
45
3D clustering rotating view Clustering 3D animation
3D Clusters Visualization
Simulation Environment
46
Number of nodes = 200
Initial cluster head probability = 0.1
Simulation time = 450 seconds (7.5 minutes)
Simulation area = 200m × 200m (× 200m z-axis)
Sink location = [100m, 100m, (10m z-axis)]
Minimum velocity = 1 m/s (flying 1 m/s)
Maximum velocity = 2.2 m/s
(flying horizontal 10 m/s
vertical 4 m/s)
Alive Nodes Over Time
The variance of energy level.
47
Energy Consumption
48
Average Network Lifetime
49
Alive Nodes Over Time (3D)
The variance of energy level.
50
REAC-IN 3D WiNeMO
LEACH 3D WiNeMO
Average Network Lifetime (3D)
51
224.482
291.525
200
210
220
230
240
250
260
270
280
290
300
LEACH 3D WiNeMO REAC-IN 3D WiNeMO
Conclusions
52
Proposed scheme REAC-IN still performs well
under Mobile Scenario (WiNeMO)
Proposed scheme still viable in 3D heterogeneous
nodes environment using flying quadcopter as
sensor carrier platforms.
Matlab as simulation/visualization tools can test
novel schemes under various conditions quickly
and match mobility models with visualization.
53
Q&A
54
Matlab NS-2
Eyisi, E., Bai, J., Riley, D., Weng, J., Yan, W., Xue, Y., ... & Sztipanovits, J. (2012). Ncswt: An integrated modeling and
simulation tool for networked control systems. Simulation Modelling Practice and Theory, 27, 90-111.
55
56
http://www.mathworks.com/matlabcentral/fileexchange/?term=leach
http://www.mathworks.com/help/aeroblks/examples/quadcopter-
project.html
https://github.com/gibiansky/experiments/tree/master/quadcopter
https://uk.mathworks.com/academia/student-challenge/2012/
http://stackoverflow.com/questions/31812031/matlab-quadcopter-pid-
simulation
http://www.mathworks.com/help/matlab/programming-interfaces-for-c-c-
fortran-com.html
Matlab Resouces