finding a polygon hull in wireless sensor...
TRANSCRIPT
Finding a Polygon Hull in Wireless Sensor
Networks
Ahcène Bounceur, Reinhardt Euler, Ali Benzerbadj, Farid Lalem,
Massinissa Saoudi, Tahar Kechadi and Marc Sevaux
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Motivations
2
Secure site
Border nodes
Radio link
Non border nodes
Intrusion Dead baEery
Interference Failure
Explosion
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Motivations
3
Secure site
Intrusion Dead baEery
Interference Failure
Explosion
ALARM
New border
Border nodes
Radio link
Non border nodes
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Outline
1. Polygonal hull in a connected Euclidean graph
1. PHFP : Polygon Hull Finding Problem & PHVP : Polygon Hull Visiting
Problem
2. The proposed Algorithm
3. Simulation: Demo
2. Material implementation of the algorithm
1. The distributed version of the proposed algorithm
2. Simulation: Demo
3. Material implementation: Demo
3. Conclusion & Perspectives
4
PHFP & PHVP
1.1
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
Convex Hull Euclidean point set
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
Convex Hull Euclidean point set
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
Convex Hull Connected Euclidean Graph
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
Convex Hull Connected Euclidean Graph
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
PHFP
Polygon Hull Finding Problem
Polygon Hull Connected Euclidean Graph
Only edges of the graph can be used as connec8ons
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
PHFP & PHVP
B
C
D
E
F
A G
H
J
PHFP
Polygon Hull Visiting Problem
Polygon Hull Connected Euclidean Graph
THE PROPOSED ALGORITHM
1.2
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Jarvis’ Algorithm (Euclidean point set)
B
C
D
E
F
A G
H
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
4
3
Jarvis’ Algorithm (Euclidean point set)
B
C
D
E
F
A G
H
2
pa(Pa , Pb , Pc) = Angle formed by edges: PbPa and PbPc N(Pc) : set of neighbors of Pc
Pa Pb Pc
pa(Pa , Pb , Pc )
1
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Jarvis’ Algorithm (Euclidean point set)
• Complexity: O(nh)
• n: Number of the nodes of the graph
• h: Number of the border nodes
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The proposed algorithm (connected graph)
B
C
D
E
F
A G
H
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
1
The proposed algorithm (connected graph)
B
C
A
D
G
[A]
E
F
H
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The proposed algorithm (connected graph)
1
B
C
D
A G
[A]
E
F
H
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
2
The proposed algorithm (connected graph)
1 B
C
D
A
[A, C]
E
F
H
G
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
3
The proposed algorithm (connected graph)
1 B
C
D
E
F
A
2
G
[A, C, D]
H
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
4
The proposed algorithm (connected graph)
1
C
D
F
A
2
3
E
G
H
[A, C, D, E]
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
5
The proposed algorithm (connected graph)
1
C
D
F
A
2
3
4 E
G
H
[A, C, D, E, H]
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
5
6
The proposed algorithm (connected graph)
1 B
C
D
F
G A
2
3
4 E
H
[A, C, D, E, H, G]
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
5
6
The proposed algorithm (connected graph)
1 B
C
D
F
A
2
3
4 E
G
H
Version 1
[A, C, D, E, H, G, A]
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The proposed algorithm (connected graph)
• Version 1
– Complexity: O(kh)
– k: Maximum degree of the graph
– h: Number of the border nodes
PROBLEMATIC SITUATIONS
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Boat graph
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Boat graph
A
C
B D
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Boat graph
A
C
B D
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Boat graph
A
C
D B
1 (to C) 2
P
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
1
3
4
5 6
2
A
B
C
D
E
F
Boat graph
7
8
9
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
1
3
4
2
A
B
C
D
E
F
Boat graph
4
Intersec8on
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
2
i+1
i
Intersection (1)
A B
C
D
i-1
1
The currently found border edge must not intersect with the previously found border edges
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
3
4
2
Intersection (2.1)
A B
C
1
Consider intersecZons with open intervals
and not:
3
4
2
A B
C
5
D
1
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
A
C
D
B
Formed by the edge AC and the triangle BCD
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Graphe à Ancre
A
C
D B
1 (to C) 2
Two angles (PBC et PBD) having the same value à Choose the point which is near to B (ie. C)
P
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
H
D B
E
8 3
4
5 6
F G
A
C 7
J
1
2 9
If the algorithm starts from A then the point A will be reached but not the point J !
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
H
D B
E
8 3
4
5 6
F G
A
C 7
J
1
2 9
If the algorithm starts from A then the point A will be reached but not the point J !
1
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
H
D B
E
2 3
4
13 14
F G
A
C 1
5
6
7 8
9
10
11
12
I
J
K
PHFP : solved? PHVP : solved?
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Anchor graph
H
D B
E
F G
A
C 1
I
J
K
10
9
16 17
11
12
13
14
15
PHFP : solved? PHVP : solved?
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
1
i+2
i
2
i+1i+3
i+4
i+5
n
Non visited Border Nodes
Anchor graph
n-1
B
A hole
n+1
Coming back to the starZng point does not guarantee the terminaZon of the algorithm! à We have to add an addiZonal iteraZon to verify of there exists a non visited border node.
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The proposed algorithm (Version 2)
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Proposed algorithm (connected graph)
• Version 1 (planar graph)
– Complexity: O(kh)
– k: Maximum degree of the graph
– h: Number of the border nodes
• Version 2
– Complexity: O(kh2)
– k: Maximum degree of the graph
– h(h+1)/2: Number of the border nodes by considering
the intersection detection
SIMULATION: DEMO
1.3
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
CupCarbon : www.cupcarbon.com
• A WSN design and simulation platform
• Java API (Application Programming Interface)
à VIZOR
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo hEps://www.youtube.com/watch?v=7VHKW_l9juI
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo (100 points)
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo (500 points)
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo (500 points)
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo (1500 points)
DISTRIBUTED VERSION OF THE PROPOSED
ALGORITHM
2.1
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Sensor node 1. Sensor (Sensor unit) 2. Radio module (communicaZon) 3. Microcontroller ß Script (program) 4. BaEery 5. GPS 6 Mobility
1
3 2
4
1 3
2
4
1
3
2
4 1 3
2
4
5 2
TelosB
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Messages & Packets
• 3 types of messages:
AC (Ask for Coordinates): Send me your coordinates
CS (Coordinate Sending): My coordinates are
SN (Select Node): You are a border node
• Packets format:
Message AC : id | AC
Message CS : id | CS | x,y
Message SN : id | SN | x,y
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S3
S2
S4
S5
S8
S7 S6
S1
S1 is marked as a border node
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S3
S2
S4
S5
S8
S1
S7 S6
1|AC
1|AC
S1 send a broadcast message ‘AC’ and its id
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S3
S2
S4
S5
S8
S1
S7 S6
4|CS|7,7
2|CS|2,4
S2, S3, S4 and S7 receive the message ‘AC’ and send to S1 their coordinates, their id and the message ‘CS’
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S3
S2
S4
S5
S8
S7 S6
S1
S1 will calculate the angles formed by a fic8ve point S1’ and its neighbors and chooses the smallest one
S1’
Minimum
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S2
S4
S5
S8
S7 S6
S1
S1’
S3
Minimum
S1 will send a message ‘SN’ to S3 to inform it that it is the next border sensor, its id and its coordinates
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S2
S4
S5
S8
S7 S6
S3
S1 à S3
S1 saves the id of its neighbor S3
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
The distributed version of the proposed algorithm
S2 S5 à S8
S8 à S7
S6 S7 à S1
S4 à S5
S1 à S3
S3 à S4
SIMULATION: DEMO
2.2
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Simulation: Demo hEps://www.youtube.com/watch?v=ojgZPlvwcMo
MATERIAL IMPLÉMENTATION: DEMO
2.3
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Implementation: Demo
Sensors: TelosB / Arduino-‐XBee
hEps://www.youtube.com/watch?v=vObmCb67jg4
CONCLUSION & PERSPECTIVES
3
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Conclusion & Perspectives
• Presentation of a new algorithm allowing to determine the polygon hull of a wireless sensor network : – Sequential version: allows to validate the theoretical concept
of the algorithm
– Distributed version: allows the real implementation
• Model the same problem by taking into account different parameters: detection, energy, interferences, etc.
• We are working on: – The GPU based simulation in CupCarbon
– Energy Consumption of the proposed algorithm
– Proving the optimality in number of vertices and total distance of the proposed algorithm
Ahcene.Bounceur@univ-‐brest.fr -‐ EURO – 2015
Thank you for your attention
Questions ?
Ahcène Bounceur, Reinhardt Euler, Ali Benzerbadj, Farid Lalem, Massinissa
Saoudi, Tahar Kechadi and Marc Sevaux
www.bounceur.com / www.cupcarbon.com