1 / 40

The Voronoi Diagram

The Voronoi Diagram. David Johnson. Voronoi Diagram. Creates a roadmap that maximizes clearance Can be difficult to compute We saw an approximation in Medial Axis PRM. Voronoi region for points. Points are “sites” Voronoi diagram of points s in set S

lori
Download Presentation

The Voronoi Diagram

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Voronoi Diagram David Johnson

  2. Voronoi Diagram • Creates a roadmap that maximizes clearance • Can be difficult to compute • We saw an approximation in Medial Axis PRM

  3. Voronoi region for points • Points are “sites” • Voronoi diagram of points s in set S • Partition of space into regions VR(s) such that for all points [x,y] in VR(s), d([x,y],s) < d([x,y],t) for all t in S not = s • Cell boundary where D(Obs1) = D(Obs2) for the two closest obstacles

  4. Examples • Voronoi Applet • Voronoi art • Different metrics are possible • Manhattan

  5. Voronoi Roadmap properties • Accessibility • Follow distance gradient away from obstacle to the cell boundary • Departability • Same, but follow gradient in • Connectivity • Free space smoothly deforms onto the GVD, topology is preserved

  6. Computing Voronoi regions • The Voronoi cell boundaries are composed of bisectors of sites. • Bisector B(s,t) is locus of points d(p,s) = d(p,t) • Bisector of two points is what shape?

  7. Another view • Prairie fire analogy • Set each site on fire • Fire burns outwards at same rate • Could use something like a wavefront algorithm to approximate this • Other approaches • Fortune’s algorithm • Incremental construction

  8. This is analogous to

  9. GPU computation • Use graphics for fast 2D Voronoi diagram • Path planning example • Potential field example • Voronoi2D.exe

  10. Extend to Generalized Sites • Generalized Voronoi Diagram (GVD) • Sites are not just points • Everything else is the same

  11. Generalized Voronoi Diagram • Edges formed based on three types of interaction: Edge-Edge Edge-Vertex Vertex-Vertex

  12. Polygonal Boundaries

  13. Wave propagation idea generalizes

  14. 3D • bisector type portion of • point – point plane • point – edge parabolic cylinder • point – triangle paraboloid • edge – edge hyperbolic paraboloid • edge – triangle parabolic cylinder • triangle - triangle plane

  15. 3D Gets Complex

  16. Generalized Voronoi Diagram Computation ApproximateAlgorithms Exact Algorithm Analytic Boundary Discretize Sites Discretize Space

  17. Exact Computation for Polylines • Diagram is composed of segments or portions of parabolas • Many robustness issues (CGAL)

  18. GVD Approximation – Method 1 • Approximation – Discretize Obstacles • Convert each obstacle into a set of points by selecting samples along boundaries. • Compute regular Voronoi diagram on resulting point sets. • Will produce some diagram edges that are not traversable. Must prevent travel along these portions. • Can be slow to compute, depending on samples. Yellow portions are not traversable since they are inside the obstacle. This is no longer a curve.

  19. GVD Approximation – Method 1 • Approximation – Discretize Obstacles (continued) • Consider computing the GVD for the following example:

  20. GVD Approximation – Method 1 • Approximation – Discretize Obstacles (continued) • Compute sample points along obstacle border.

  21. GVD Approximation – Method 1 • Approximation – Discretize Obstacles (continued) • Here is the Voronoi Diagram for the point set:

  22. GVD Approximation – Method 1 • Approximation – Discretize Obstacles (continued) • Can discard (ignore) all edges of GVD that are defined by two consecutive points from the same obstacle: Can also discard all edges that lie completely interior to any obstacle (i.e., green ones here).

  23. GVD Approximation – Method 1 • Approximation – Discretize Obstacles (continued) • Resulting GVD edges can be searched for a path from start to goal (e.g., store GVD as graph, run Dijkstra’s shortest path algorithm)

  24. GVD Approximation – Method 2 • Approximation – Discretize Space • Convert the environment into a grid. • Compute the Voronoi diagram on resulting grid by propagating wavefront from obstacles. • Remember which obstacle point the shortest path came from for each non−obstacle grid cell. • Can be slow to compute, depending on samples. A finer grid produces a more accurate answer but takes longer

  25. GVD Approximation – Method 2 • Approximation – Discretize Space (continued) • Create a grid from the environment

  26. GVD Approximation – Method 2 • Approximation – Discretize Space (continued) • Compute the Voronoi diagram by running a wavefront

  27. GVD Approximation – Method 2 • Approximation – Discretize Space (continued) • Compute a path in the Voronoi diagram

  28. GVD Approximation – Method 2 • Applet - http://www.cs.columbia.edu/~pblaer/projects/path_planner/applet.shtml Green path is discretized space path (i.e., grid). Red path is discretized obstacles path (i.e., previous).

  29. Hierarchical Approximations

  30. The Medial Axis • A related concept to GVD • Fills the interior of an object • Only defined for closed shapes • Instead equality of distance to two objects, it is where distance to self is equal

  31. Real Example Another medial axis definition • medial axis or skeleton is locus of centers of maximal circles that are bitangent to shape boundary

  32. Skeleton classification • Normal points • End points • Branch Points

  33. Computing Medial Axis for Curves • Start at end point • Local maximum in curvature • Numerical methods to trace the bi-tangent circle • Branch at tri-tangencies

  34. Planning Using GVDs • Is a GVD sufficient for path planning? • GVD computed in 2D workspace • Sufficient for a point robot • What about higher dimensions? • Use GVD along with other methods

  35. 3-DOF Potential Field Planner with GVD • Rigid robot moving on a plane in a dynamic environment [Hoff00] • Combines a GVD roadmap with a local (potential field) planner

  36. Voronoi Roadmap/Graph for Dynamic Environments Video (2d.avi)

  37. Solving for GVD in Configuration Space • Hierarchical testing of C-space • Compute distance from C-space point to C-obs • Same as robot-obstacle distance • Main problem • GVD is C-space dimension-1 • Projection into workspace doesn’t do what we hoped

  38. Generalized Voronoi Graphs • Build 1D graphs out of intersections of high-dimensional GVD parts • Not a connected roadmap

  39. Hierarchical Generalized Voronoi Graphs • Add in other structures based on 2nd closest obstacles, etc.

  40. Summary • Voronoi Diagram • Roadmap • Clearance between obstacles • Higher dimensional problems are unsolved

More Related