40
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University

Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Randomized Planning for Short Inspection Paths

Tim Danner Lydia E. Kavraki

Department of Computer Science

Rice University

Outline• Introduction• Art Gallery and Watchman Route Problems• Adding Realism• 2-D Algorithm

– Selecting Guards– Connecting Guards– Results

• 3-D Algorithm– Differences– Preliminary Results

• Future Work

IntroductionProblem Definition

• Robot with vision capabilities

• Workspace W

• Path p

• Boundary dW W

dW

p

IntroductionProblem Definition

• Find a short p from which every point on dW is visible

W

dW

p

IntroductionUses

• Autonomous inspection of spacecraft exterior

• Flying camera building inspection

• Virtual reality architecture walkthrough

Art Gallery Problem

• Find minimal number of positions for guards to stand so that every point in a gallery is “visible” to at least one guard

• “Visible” is defined as the line of sight between the guard and the point lies entirely in W

Watchman Route Problem

• For workspace W, find the shortest path p in W such that every point on the boundary dW can be seen by a point on path p

Adding Realism

• “Straight-line” visibility is not very realistic for real sensors

• Length of line of sight must have a maximum• Angle of incidence of line of sight must have a

maximum – 60 degrees is a typical value• System is adaptable for different sensors• 2-D vs 3-D

Angle of Incidence

2-D Algorithm

• Sensing with real sensors is time consuming

• Two parts to the algorithm:– Solve “art gallery problem” to find locations for

sensing locations - “guards”– Connect the guards with a short path, the

“watchman route”

2-D AlgorithmSelecting the Guards

• True minimal set of guards is an NP-hard problem

• Randomized planner is used in this case

• Uses Gonzalez-Banos and Latombe’s randomized, incremental algorithm

2-D AlgorithmSelecting the Guards

• Main structure is a loop• At each iteration, a point x on the border

dW of W that is not yet guarded is chosen randomly

• Construct region which can see x (same as region which x can see)

• Apply two range constraints: limited length line of sight and angle of incidence

Choose a point x

Construct its visibility region

Apply maximum line of sight constraint

Apply angle of incidence constraint

Select new guards from blue outlined region

2-D AlgorithmSelecting the Guards

• Sample region k times, evaluating each point as a possible new guard

• Sample which can cover the largest portion of the new length of border is chosen as the new guard and guarded border is updated

• Loop repeats until the entire border is guarded

2-D AlgorithmSelecting the Guards

• One problematic case is sharp interior angles

• A “disproportionately large” number of guards may be needed and hard to place

• Incremental loop can be terminated

2-D AlgorithmConnecting the Guards

• Basically, find an order to connect guards out of a possible n! orders

• Connect guards using a graph algorithm

• In this manner, the problem becomes a “traveling salesman problem”

2-D AlgorithmConnecting the Guards

• Actually use an approximation to the TSP – pre-order walk of a Minimum Spanning Tree

• Applies in cases where the triangle inequality holds, which is the case for graphs in R2 and R3 (which our graph of guards is)

• Path length is bounded by 2X actual TSP for complete graphs

• If workspace is connected, then the graph is complete (for an inspection path to exist, the space must be connected)

2-D AlgorithmConnecting the Guards

• Shortest Paths Graph (SPG)– One node for each guard– One edge for each pair of guards– Weight is assigned to each edge (i,j) that is

equal to the shortest collision-free path from point i to j

– May be straight line or more complex

SPG - Guard locations are nodes

2-D AlgorithmConnecting the Guards

• Shortest path between two points is done by constructing and searching another graph, the workspace-guard roadmap

• Workspace-guard roadmap has one node for each vertex on dW and one node for each guard

• Has an edge between a pair of nodes i and j if and only if it is collision-free

SPG - Add nodes at vertices

SPG - Add edges

Use MST for short path

2-D AlgorithmConnecting the Guards

• Complete graph has n2 edges, but we can use a shortcut

• Only connect close points, by dividing workspace into rectangular grid

• About 10 nodes per cell

• Connection is made with a moving 3X3 window

2-D AlgorithmConnecting the Guards

2-D AlgorithmNote

• The default is to inspect the interior

• To inspect an exterior, surround entire workspace with a rectangle and mark it guarded

W

W

2-D AlgorithmExperimental Results

• Most computing time spent creating visibility polygons

Guard GuardSelection Connection

Figure # Edges Time (s) Time (s)1 9 0.55 0.072 36 4.74 1.023 1026 729.79 328.13

Figure 1 Figure 2

Figure 3

3-D Algorithm

• Necessary for real workspaces

• Algorithm is very similar

• Difficulty – computing visibility polyhedrons in 3-D instead of visibility polygons in 2-D

3-D AlgorithmSelecting the Guards

• Visual constraints remain simple

• Two steps will require visibility volumes– Determining a sampling region– Determining what surfaces a sampled point can

see

• However, explicitly computing visibility polyhedron can be avoided

3-D AlgorithmSelecting the Guards

• Determining sampling region utilizes constraint sphere and cone– Compute the intersection of these– Randomly sample this region and test if point is

valid

• Both of these are much easier than computing a visibility polyhedron

3-D AlgorithmSelecting the Guards

• Once points are sampled, need to:– Determine what surfaces can be seen by them– Subtract already guarded surfaces

• Use a front to back checking method, clipping each additional surface with the previous ones

3-D AlgorithmSelecting the Guards

Front

Back

3-D AlgorithmSelecting the Guards

• Complications– Need a way of defining order– Resolving circular problems– Selecting adequate data structure

• Binary Space Partitioning Tree for defining front to back order

3-D AlgorithmConnecting the Guards

• No analog to creating the optimal shortest paths as in 2-D

• Shortest path is most likely not around vertices• Instead of augmenting guard roadmap with

workspace vertices, random planner is used

3-D AlgorithmPreliminary Results

Two Cubes20 Seconds

Four Cubes & Three Tetrahedra143 Seconds

Future Work

• Considering dynamics in “path goodness” criteria

• Visiting areas rather than points

• Considering non-omnidirectional cameras