Title: Introduction to Probabilistic Roadmaps and Local Planners
1Introduction to Probabilistic Roadmaps and Local
Planners
2Probabilistic Roadmaps
Given two free configurations qinit and qgoal,
try to connect these two configuration to two
vertices u, v in G. Then try to find a path from
u to v.
3The Local Planner
Given two free configurations q and q, segment
the straight line between them to m segments
along the intermediate configurationsq0 q,
q1, , qm q such that qk1 - qk lt
?. Try to connect each pair of adjacent
configurations qk and qk1. This is done by
inflating the robot, and the query is reduced to
an interference query.
4Separation of Convex Polytopes
5Using Linear Programming
This problem can be solved using linear
programming If A p1, , pm and B q1, ,
qn, find a hyperplaneH ax by cz d 0,
such that
ap1x bp1y cp1z d gt 0 ap2x bp2y cp2z d
gt 0 apmx
bpmy cpmz d gt 0
aq1x bq1y cq1z d lt 0 aq2x bq2y cq2z d
lt 0 aqnx
bqny cqnz d lt 0
6The Dobkin-Kirkpatrick Hierarchy
Let P be a convex polytope with avertex set
V(P), where V(P) n.
- Define the hierarchy P1, P2, , Pkwhere
- Pi1 ? Pi and V(Pi1) ? V(Pi).
- The vertices of V(Pi) - V(Pi1) forman
independent set in Pi.
Each face F of Pi1 that is not a face of Pi can
be associated with a unique vertex v of Pi, that
lies in the half-space opposite to Pi1 with
respect to the hyperplane supporting F.
7Polytope Hyperplane Separation
Let ?(Pi,H) be the separating distance of Pi and
a hyperplane H,obtained at some point ri ? V(Pi).
Let H be a hyperplane parallel to H that touches
ri. Then
Thus ?(P,H) can be computedin O(log n) time.
8Separating two Convex Polytopes
Using the Dobkin-Kirkpatrick hierarchies, the
interference query can by answered in O(log m ?
log n) time.
9Separation of Non-Convex Polytopes
10Bounding Volumes Hierarchy
We used simple geometric entities to bound our
polytopes. We keep different levels of bounding
volumes in a hierarchy tree.
11Types of Bounding Volumes
- Axes-Aligned Bounding Box (AABBs),
- Ellipsoids,
- Oriented Bounding Boxes (OBBs),
- Spherical shells,
- and more
12OBB Tree A Hierarchical Structure for Rapid
Interference Detection
- S. GottSchalk, M. C. Lin and D. Manocha
13Oriented Bounding Boxes
14Bounding a Set of Triangles
Compute the 3-dimensional mean vector, and the
3?3 covariance matrix
The matrix ? is symmetric, therefore its
eigenvectors are mutually orthogonal. Use the
normalized eigenvectors as the axes of the
bounding box.
15Separation of Bounding Boxes
16The Separating Axis Theorem
The separating axis of two oriented boxes is
either perpendicular to one of the faces, or can
be obtained as the vector multiplication of two
box axes.
The interference query between two oriented boxes
can be answered by checking 15 axes.
17Separating Axis (Vertex-Vertex)
We can show that there exists a vector L such
that all three terms have the same sign. Thus
18Interference of OBBs
Using careful analysis for the various 15
possible axes, it is possible to implement the
interference test for two OBBs using about 200
floating-point operations.
This method has been implemented and successfully
applied to large models.