next up previous
Next: Visibility Roadmaps Up: Path Planning: Roadmap Methods Previous: General Concepts

Voronoi Roadmaps

A Voronoi roadmap is based on the topological notion of retraction. It corresponds to a skeleton-like structure that is obtained by incrementally shrinking the free space. The shrinking occurs by repeatedly removing a thin strip from the boundary of the free space. Strips are removed until a one-dimensional structure remains.

The resulting roadmap has the following property (see Figure 5.1. For a given point in the free space, consider the closest point or points in the obstacle region. For any point in the Voronoi roadmap there are two or more closest points to the obstacle region. In other words, the Voronoi roadmap yields solutions for which a robot has maximum clearance.

The obstacle region is specified as a set of polygons. Each polygon is specified by an list of vertices. Each edge of the polygon connects two vertices in the list. The terms edge and vertex will be used to refer to the edges and corners of the boundary of the obstacle region. There will be three possible cases when there are two closest points: 1) both points are vertices; 2) one point is a vertex and the other lies in the interior of an edge; and 3) each point lies in the interior of an edge.

One naive way to construct the Voronoi roadmap is as follows. Note that the obstacle region is specified by a set of edges. For every possible pair of edges, generate a line as shown in Figure 5.2.a. The edges that specify the obstacle region specified by endpoints. For every possible pair of endpoints, generate a line as shown in Figure 5.2.b. Also, for every possible combination of endpoint and edge, generate a quadratic curve as shown in Figure 5.2.c. The Voronoi roadmap will be included amongst the curves that were drawn in each of the cases of (edge,edge), (point, point), and (point,edge) pairings. The pieces of these curves that actually belong to the Voronoi roadmap can be determined by computing pairwise intersections of the curves. This naive method takes O(n4) time. By realizing that there are only O(n) curves in the Voronoi roadmap, it is possible to compute the Voronoi roadmap in O(n2) time. The best complexity possible has been achieved in several, more involved, methods. The resulting computation time is $O(n \lg n)$.


 
Figure 5.1:   example.
\begin{figure}
\centerline{
\psfig {file=figs/voronoi-d1.idr,width=3.0truein}
}\end{figure}


 
Figure 5.2:   Voronoi roadmap pieces are generated in one of three possible cases: a) between two edges, b) between two points, and c) between a point and an edge. The third case leads to a quadratic curve.
\begin{figure}
\begin{center}
\begin{tabular}
{ccc}

\psfig {file=figs/voronoi-d...
 ...d4.idr,width=2.0truein}
 \\ (a) & (b) & (c)\end{tabular}\end{center}\end{figure}


next up previous
Next: Visibility Roadmaps Up: Path Planning: Roadmap Methods Previous: General Concepts
Steven M. LaValle
8/29/2001