320 likes | 324 Views
This work by LaValle et al. addresses the pursuit/evasion problem in polygonal regions, assuming a map is available and the pursuer has 360° vision. The desired solution is an algorithm that guarantees capture, or outputs a "can't do" if such a plan doesn't exist. The concepts of visibility polygons, invisibility sets, and critical gap events are crucial in solving this problem. This problem can also be extended to non-polygonal regions, regions without a map, and probabilistic search scenarios.
E N D
Pursuit / Evasion in Polygonal and General Regions The Work: by LaValle et al. The Presentation: by Geoff Hollinger and Thanasis Ke(c)hagias
The Problem: • Pursuit / Evasion in a Polygonal Region • The Assumptions: • Region is simply connected polygon (no holes) • The pursuer has a map • There is one pursuer, with 360 vision • The evader is captured as soon as seen by the pursuer • The evader is arbitrarily fast • The evader always knows the pursuer’s position • The Desired Solution: An algorithm which gives • a motion plan which guarantees capture (if such a plan exists) • a “can’t do” output (if a guaranteed capture plan doesn’t exist).
Variants • Non-polygonal region (e.g. with curved boundary) • Map of the region is not available • Probabilistic search (capture is not guaranteed but has high probability) • Pursuit / evasion on a graph (not a region)
Key Concepts • The polygonal region is denoted by P. • For every point x in P, the visibility polygon is • and the invisibility setP–V(x) is the union of several disjoint • simple connected polygons. • Some of these polygons are clean (i.e. they certainly do not contain the evader) and some are dirty (i.e. they may contain the evader). • The boundary of V(x)consists of edges; • some of these are edges of the original P; • the remaining are gap edges (facing “free space”)
Invisibility set Visibility polygon Gap edges (black is clean, Red is dirty)
Given some point x, it will have a V(x), with n associated gaps (n 0) each of which can be clean or dirty (i.e. the invisible component behind that gap will be clean or dirty). This information can be encoded in an n-long string (say of 0’s and 1’s) which we denote by B(x). Note: B(x) can also be the empty string.
Information Space • We need an appropriate state space for the problem. • We could use (x,S) where • x is the position of the pursuer • S is the set of dirty points • But, we would prefer a discrete state space.
Note: when we know x, we also know V(x) and so P–V(x), i.e. the invisible components. And S P–V(x). So we don’t really need to put S in the state, B(x) suffices (and it is discrete). Also: we can discretize P (break it into cells) provided we do not lose any critical information. Critical information is how gaps change. We need a discretization that preserves this information.
Critical Gap Events • A gap disappears • A gap appears (it gets a 0 label) • A gap splits into two gaps (they inherit the parents label) • Two gaps merge into a new one (it gets a 1 label if any of the original gaps had a 1) • Note: gaps can also change in noncritical ways (continuous transformation) • Assumption: we never have an event which involves three gaps simultaneously
A gap disappears / appears A gap splits into two / two gaps merge.
Conservative Discretization • Form a discretization D={D1,…, DN} by: • extending all edges of P (insideP), • extending outward segments from all pairs of vertices (insideP) • and taking all resulting sub-polygons as cells Di of the discretization. • This is a conservative discretization, i.e. no critical gap events occur while the pursuer moves inside one of the cells.
The rulez: Example:
Finally instead of (x, B(x)) use as state (Di, B(Di)) (which takes values in a discrete state space, theinformation space).
Now that we have the state space, we need the state transition function. It will be a state transition graph. • We actually have two graphs: • Gc is the connectivity graph; it has Nnodes (one per cell) and its edges follow the connectivity of the cells; it is an undirected graph. • GI is the information graph (the state transition graph) • nodes: for the i-th cell Di it has 2ninodes, where ni is the number of gaps associated with any x in Di • edges: they respect critical gap events and information changes. • Note: GI is a directed graph.
Example 1: Undirected adjacency graph Discretized polygon Example clearing sequence: 1-2 1/1 -> 2 Directed information graph
Now we can formulate and solve the Pursuit/Evasion problem: • In GI , find a (shortest) path which starts from a given “all-dirty” node and ends at some “all-clean” node (provided such a path exists).
Example 1: Undirected adjacency graph Discretized polygon Example clearing sequence: 1-2 1/1 -> 2 Directed information graph
Undirected adjacency graph Example 2: Discretized polygon • Example clearing sequences: • 5-4-3-2 • 5/1 -> 4/1 -> 3/10 -> 2/0 • 3-4-3-2 • 3/11 -> 4/1 -> 3/10 -> 2/0 Directed information graph
Directed information graph Example 3: Discretized polygon Undirected adjacency graph • Example clearing sequences: • 1-2-3-4-5 • 1/1 -> 2/11 -> 3/1 -> 4/01 -> 5/0 • 4-5-4-3 • 4/11 -> 5/1 -> 4/10 -> 3/0
Example 4: Example clearing sequences: 1) 1-2-3-4-5 1/1 -> 2/11 -> 3/1 -> 4/01 -> 5/0 2) 7-6-5-4-3 7/11 -> 6/111 -> 5/1 -> 4/01 -> 3/0 Discretized polygon
Example 5: Example clearing sequence: 10-9-8-7-6-5-4-3-2-3-4-5-12-13-18-19-20-19-18-13-14-15-16 Discretized polygon
Example 6: Any path leads to recontamination, for instance: 10-9-8-7-6-5-4-3-2-1-22 Recontaminated!! Oh no!
Example 7: Undirected adjacency graph Not a chance…can’t clear anything Discretized polygon Directed information graph
Some Markov Chain Connections • Every node of GI can transit to • two other nodes. If we assign • equal probabilities to trans’s • we get a Markov chain. • Its states can be divided into two • classes: • Transient • Persistent • Trapping (subset of persistent) • Furthermore, some states can • be collapsed.
It might be interesting to address questions such as: • Decompose the chain to ergodic classes (connected components) • Determine how many trapping classes exist. • Is a particular trapping class (the all-clean one) accessible from a • particular node? • If the pursuer performs a random walk on the graph • what is the probability of hitting the trapping class? • what is the expected time to hit the trapping class? • is there an equilibrium probability distribution? • what is the rate of convergence to the equilibrium?
Variant 2: Map of the region is not available The region A sequence of gap navigation trees: tree2tree transitions take place at critical gap events. A gap can be chased until it disappears; when it reappears it is cleared!!!
Questions, Issues etc. • Is there an information quantity ? • If yes, how does it evolve during the pursuit? • Does recontamination help? • Can we reduce polygon problem to graph problem? • If not exactly, then approximately? • Conjecture: if the polygon can be cleared starting from a • particular all-dirty state, then it can be cleared starting from • any all-dirty state. • How to use all this for Ember?
Biblio • S. M. LaValle, D. Lin, L. J. Guibas, J.-C. Latombe, and R. Motwani. Finding an unpredictable target in a workspace with obstacles. In Proc. IEEE Int'l Conf. on Robotics and Automation, pages 737--742, 1997. • L. J. Guibas, J.-C. Latombe, S. M. LaValle, D. Lin, and R. Motwani. Visibility-based pursuit-evasion in a polygonal environment. In F. Dehne, A. Rau-Chaplin, J.-R. Sack, and R. Tamassia, editors, WADS '97 Algorithms and Data Structures (Lecture Notes in Computer Science, 1272), pages 17--30. Springer-Verlag, Berlin, 1997. • L. J. Guibas, J.-C. Latombe, S. M. LaValle, D. Lin, and R. Motwani. Visibility-based pursuit-evasion in a polygonal environment. International Journal of Computational Geometry and Applications, 9(5):471--494, 1999. • L. Guilamo, B. Tovar, and S. M. LaValle. Pursuit-evasion in an unknown environment using gap navigation graphs. In Proc. IEEE International Conference on Robotics and Automation, 2004. Under review. • B. Tovar, S. M. LaValle, and R. Murrieta. Locally-optimal navigation in multiply-connected environments without geometric maps. In IEEE/RSJ Int'l Conf. on Intelligent Robots and Systems, 2003. • Great Downloadable Book: Planning Algorithms(by Steven M. LaValle) at http://planning.cs.uiuc. edu/book.pdf • Lavalle’s home page: http://msl.cs.uiuc.edu/~lavalle/ Great Downloadable Book