Visibility-Based Pursuit-Evasion in a Polygonal Environment
L.J. Guibas, J.C. Latombe, S.M. LaValle, D. Lin, and R. Motwani
Finding an Unpredictable Target in a Workspace with Obstacles
S.M. LaValle, D. Lin, L.J. Guibas, J.C. Latombe, and R. Motwani
Presented by Ben Wong, Gregory Kron
Overview
Searching the environment for a moving evader
Application in air traffic control, military strategy and trajectory tracking.
Overview
Number of pursuers needed Information space Planning paths of pursuers
Number of pursuers
Depends on the environment Assumptions:
Evader’s motion is continuous Evader can move arbitrarily fast Pursuers can see in all directions.
Effect of Geometry on Number of Robots
Two robotsare needed
Upper Bounds
Simply-connected with hole
Upper Bounds
Simply-connected: O(lg n), n is # edgesF1F2
Partition into two regions
Each partition has>= 1/3 of the edges
A triangle needs 1 pursuer.
k k
(k+1)th
Upper Bounds
Hole: O(h + lg n), h is # holes, n is # edges
Reduce to simply-connected
Lower bound
Simply connected: Ω(lg n) Θ(lg n) Graph searching: Parsons’ problem
2
3
4
Example
Upper bound
Hole: Θ(sqrt(h)+lg n)
Sqrt(h)+sqrt(2h/3)+sqrt(4h/9) O(sqrt(h))
Partition into two regionsEach partition has<= 2/3 holes
Recontamination
1 pursuer but O(n) recontaminations !
Outline
In fact, finding the minimum number of pursuers is NP-hard
Complete Algorithm for Single pursuer Information space (recontamination) Space partitioning into conservative cells Information space graph
Greedy Algorithm for Multiple Pursuers
Information space
The information space is the set of all the information states of the pursuer(s)
An information state is characterized by: The position of the pursuer(s) The regions where the evader may be (contaminated)
Note: The positions of the evader can be grouped into equivalence classes
Single Pursuer: Information State
We label in binary the gap edges: 0: safe 1:contaminated here:(0,0), (0,1), (1,0) or (1,1)
By knowing the location in the Free Space and the state of the gap edges, we uniquely define the Information State
1 or 0
1 or 0
(x,y)
Changes of Information State
Information state only changes when a gap edge appears or disappears
Conservative Cell Partitioning Keep track of just these transitions to simplify without
losing completeness
Information State: (x1,y1,0,1)Information State: (x2,y2,0,1)Information State: (x3,y3,0,1)Information State: (x4,y4,0)Information State: (x3,y3,0,0)Information State: (x,y,x, x)
Clean
Contaminated
Partitioning into Cells
We partition the free space into convex cells that would correspond to the equivalence classes
The edges of such a partition correspond to visibility changes
Partitioning into Cells
Shoot rays off edges in both directions if possible and from vertices if no collisions in either direction
Information Space Graph
Create/connects all Information States All edge gap contaminated/clean combinations for each point A point with 2 edge gaps will have four nodes (00, 01, 10, 11) in this graph Can grow exponentially (problem of checking opt not even know to be NP)
Keep track of gap edges splitting or merging Connections between Information Space States Number of gaps may change; need to preserve the connectivity Preserve contamination
Information Space Graph: example
00
01
10
11
0
1
Search the graph for a solution (Dijkstra’s Algorithm) Initial State has all contaminated edges (11…) Goal State has all clean edges (00…) Each vertex is only visited once Cost function based on Euclidean distance between points
Information Space Graph: research
Example
Clean
Contaminated
Visible
In More Detail
Re-contamination
Multiple Pursuers
Do one as best you can (greedy algorithm) Add another to cover the missed spaces Less complete, but works pretty well
Conclusion
Works well on the case presented Requires a simple, 2D geometry
A recent work by LaValle et al. allows to have curved obstacles
Information State Graph can be very big A recent work by Sang-Min Park developed a quadratic-cost algorithm
for 1 pursuer
Real-world vision is not perfect Can deal with cone vision
Animated Visibility
2 Robots
3 Robots
Robot with Cone of Vision