Title: A PursuerEvader Game for Sensor Networks
1A Pursuer-Evader Game for Sensor Networks
- Sixth Symposium on Self-Stabilizing Systems, San
Fransisco, June 2003
2Outline
- Introduction
- Problem definition
- Evader-centric Program
- Pursuer-centric Program
- A Hybrid Pursuer-Evader Program
- Efficient Version of Hybrid Program
- Discussion and Future Work
3Introduction
- Due to the importance in military contexts,
pursuer-evader tracking has received significant
attention - Previous work on the pursuer-evader problem is
not directly applicable to tracking in sensor
networks - Limited computing resource
- Centralized algorithms are not suitable
- Energy constrained
- Excessive communication burden on nodes are not
acceptable - Faulty
- Nodes may reach arbitrary states
- On-site maintenance is not feasible
- Must be self-stabilizing
4Problem Definition
- Sensor nodes communication with its neighbors is
symmetric and form a connected graph
(bi-connectivity) - Each sensor node can immediately detect the
pursuer/evader are resident at that node - Both pursuer and evader are mobile, move
atomically from one node to another - Pursuer moves faster than evader
- The movement strategy
- Evader unknown, but can omnisciently inspecting
the entire network to decide the next movement - Pursuer based only on the stat of the node at
which it resides - Eventually the pursuer and evader reside at the
same node (catch)
5Algorithm Design
- Tunability
- Constructing it to be a hybrid between two
orthogonal programs - Evader-centric program
- Pursuer-centric program
- Limit the tracking tree depth to a bounded R in
the evader-centric program to save energy - Tuning R for tracking speed or energy efficiency
- Self-stabilization
- Algorithm will be self-stabilized starting from
any arbitrary states
6A Evader-centric Program
- Nodes action
- Pursuers action
7Steps of Evader-centric Program (1/3)
1
2
3
4
5
Initially, ts.j 0 for all sensor j
6
8
9
7
10
11
12
14
13
15
16
17
20
19
18
21
22
23
24
25
8Steps of Evader-centric Program (2/3)
1
2
3
4
5
6
8
9
7
10
11
12
14
13
15
16
17
20
19
18
21
22
23
24
25
9Steps of Evader-centric Program (3/3)
1
2
3
4
5
6
8
9
7
10
11
12
14
13
15
16
17
20
19
18
21
22
23
24
25
10Properties of Evader-centric Program (1/2)
- The tracking tree is a spanning tree rooted at
the mote where the evader resides - The evader resides the only node which has
highest timestamp - The tracking tree is fully constructed in at most
D steps - The distance between the pursuer and evader does
not increase once the constructed tree includes
the mote where the pursuer resides - The pursuer catches the evader in at most
- M2Ma/(1-a)
11Properties of Evader-centric Program (2/2)
- Stabilization
- The tracking tree stabilizes in at most D steps
- The pursuer catches the evader in at
most D2Da/(1-a) steps when starting from an
arbitrarily corrupted state - Performance
- Not energy efficient ?N communications,
effectively N when all communication treated as
broadcast - (? average degree of a node)
- But fast Pursuer catches evader when starting
from an arbitrary stat at most D2Da/(1-a) steps
12A Pursuer-centric Program
- Nodes action
- Pursuers action
13Steps of Pursuer-centric Program
1
2
3
4
5
8
Evader Action
6
8
9
7
10
4
5
6
7
Pursuer Action
11
12
14
13
15
2
3
16
17
20
19
18
1
21
22
23
24
25
0
14Properties of Pursuer-centric Program (1/2)
- If the pursuer reaches a node j where ts.jgt0, the
pursuer catches the evader in at most Na/(1-a) - The pursuer reaches a mote j where ts.jgt0 within
O(N2logN) steps - Followed by recent research with a local topology
information (degree of neighbor vertices)
15Properties ofPursuer-centric Program (2/2)
- Stabilization
- ts.j resets to zero upon a detection of the
pursuer, arbitrary ts.j eventually disappear - Performance metrics
- Energy efficient only ? communications to the
neighbor that the pursuer resides at each step
(? average degree of a node) - But Slow O(N2logN) steps
16A Hybrid Pursuer-Evader Program (1/3)
- Modified evader-centric program
17A Hybrid Pursuer-Evader Program (2/3)
- Two stabilization actions for the bounded length
tracking tree
For non-valid parents
For fake tree roots
18A Hybrid Pursuer-Evader Program (3/3)
- Modified pursuer-centric program
19Properties of Hybrid Pursuer-Evader Program
- The tracking tree is fully constructed in at most
R steps - The pursuer reaches the tracking tree within
O((N-n)2log(N-n)) steps - (n denotes the number of nodes in the tracking
tree) - Stabilization
- The tracking tree structure stabilizes in at most
2R steps - The pursuer catches the evader within
O((N-n)2log(N-n)) steps starting from an
arbitrary state - Performance metrics
- n ? communications per step
- The random walk takes O((N-n)2log(N-n)) to find
the tracking tree and from the point in takes
Ra/(1-a) steps for the pursuer to catch the
evader
20Efficient Version of the Hybrid Program (1/2)
- Efficient pursuer-centric program
- Concept replace the random talk action by
searching a trace of evader using agents - Agents can be implemented by constructing DFS or
BFS trees rooted at the mote where pursuer
resides - If there is a node with ts.jgt0 in the pursuer
tree, the pursuer is notified and move to j along
the tree - Then take Na/(1-a) steps to catch the evader
- Modified pursuer-centric program
- If pursuer resides a node k with no nbr.k has
ts.(nbr.k)gt0, the node set next.j to ? and start
a tree construction - The tree will be stabilized in D steps
21Efficient Version of the Hybrid Program (2/2)
- Extended hybrid program
- The depth of pursuer tree should be set to D-R
hops instead of D hops - Performance metrics
- From O(N2logN) to 3DNa/(1-a) compared to
pursuer-centric program - (Two D for tree construction and information
propagation, - one D for pursuers movement)
- From O((N-n)2log(N-n)) to 3(D-R) for pursuer to
reach the tracking tree compared to original
hybrid program - Extra overhead, but still energy efficiency
22Illustration of Extended Hybrid Program
1
2
3
4
5
D5, R2
Tracking Tree
6
8
9
7
10
Pursuer Tree
11
12
14
13
15
16
17
20
19
18
21
22
23
24
25
23Discussions (1/2)
- Energy consumption under special cases
- 1-pursuer 0-evader
- Evader-centric good
- Pursuer-centric bad
- Hybrid bad
- Extended Hybrid good with modified pursuer tree
program which triggered if evader tree is
encountered - 0-pursuer 1-evader
- Achieve energy-efficiency with pursuers
authenticate themselves when they join the
network and notify the network when they leave
24Discussions (2/2)
- Shared memory model adopted instead of
message-passing for simplicity - Maximal parallelism v.s. event-based execution
- Asynchronous program
- Instead of underlying clock synchronization
service - Achieved by adding a variable which increases
when detecting the evader - Other energy issues
- The periodicity of soft-state updates for
stabilization should be kept low if the faults
are relatively rare in the network - Maintain the tracking tree over a small number of
nodes - Ex directional
25Future Works
- The communication time between sensor nodes
- message broadcast v.s. shared memory
- Different number of pursuers and evaders
- Range of movement
- Computation interleaving instead of maximum
parallelism - General forms of the tracking problem