Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by David Camarillo CS326a: Motion Planning, Spring Prof. Jean-Claude Latombe
Inspection Problem Given: –Known workspace W –Observer traveling on path p in W –Omni-directional camera w/ visibility constraints Compute: A short path s.t. the entire boundary ( W ) of the workspace is visible at some point on the path Applications: Inspection of bridges, space station, or any other structures Exploration of virtual worlds W WWWW p
Visibility “Visible” The line of sight from the guard point to the point in question lies entirely in the workspace W Constraints – Max. viewing distance – Max. angle of incidence
Visibility (cont’d) The node can only see the resulting red lines
Visibility (cont’d) Some environments can’t be fully covered If this ‘corner’ angle is less than
Inspection Strategy Step 1: Perform sensing operation at discrete points; Guard Selection –To find a true minimal set of ‘art gallery’ guards is NP-hard –Use Randomized, Incremental algorithm [Gonzalez-Banos, Latombe 1998] Step 2: Remaining portion of path is transportation; Guard Connection –n! ways to visit n points –Approximation to TSP* using Shortest Paths Graph * Traveling Salesman Problem
Step 1: Guard Selection Algorithm Randomized, incremental approach While unguarded border exists, 1: Randomly pick an unguarded point p from 2: Find region which can see p under visibility constraints 3: Pick k samples from the region 4: Find the sample that can guard the most new length of border and pick this as a guard 5: Update the border representation (balanced tree)
Step 1: Guard Selection (cont’d) Randomized, incremental approach
Step 2: Guard Connection Traveling Salesman Problem –Preorder walk of a minimum spanning tree has total length less than or equal to twice the weight of a shortest Traveling Salesman tour Guard distribution Minimum spanning tree Preorder walk – TSP Requirements Workspace connected (complete graph) Triangle inequality:
Step 2: Guard Connection (cont’d) –Workspace-guard roadmap One node for each guard One node for each vertex on border of workspace One edge for each pair of nodes visibility graphShortest path generated using search of visibility graph Shortest Paths Graph
Step 2: Guard Connection (cont’d) Optimized Graph Building –Complete graph of n nodes yields n 2 edges –Desirable to keep the guard connection step sub-quadratic: Each node is only connected to a constant number of nearby nodes Number of computed shortest paths reduced to O(n)
Step 2: Guard Connection (cont’d) Shortest Paths Graph complete – A complete graph since the inspection problem has connected workspace – Composed of shortest paths which satisfy the triangle inequality Can be approximated to TSP and can use minimum spanning tree
Experimental Results guard selectionguard connectiontestnumber of guardsconstraints sec sec sec sec sec sec. 60 deg./1 grid 60 deg./none none Test 2Test 3 Most of the computation time is spent computing visibility polygons Possible future improvement in utilizing maximum constraint and ignoring distant workspace features
Future Works Practical Criteria for path optimality (ex. dynamics, lowest fuel consumption) Flexibility by replacing nodes with small regions Directional cameras
Algorithm for 3D Basic procedure unchanged Challenge: Very hard to compute a visibility polyhedron Solution: Avoid explicit representation
Step 1: Guard Selection Use of the visibility polyhedron –Visible surface determination Arrange faces in front-to-back order using Binary Space Partitioning tree Find the visible surfaces by clipping –Sampling in the visibility polyhedron Represent visibility constraints as the intersection of a sphere and a cone Sample in the intersection and check for visibility
Step 2: Guard Connection No simple algorithm to compute optimal shortest paths Random points in the free space are chosen instead of obtaining workspace-guard roadmap
Preliminary Results 2 unit cubes: computed in 20 sec. 4 cubes and 3 tetrahedra: 143 sec.