270 likes | 376 Views
Fast C-obstacle Query Computation for Motion Planning. Liang-Jun Zhang 1 Young J. Kim 2 Gokul Varadhan 1 Dinesh Manocha 1 1: University of North Carolina - Chapel Hill, USA 2: Ewha Womans University, Korea, http://gamma.cs.unc.edu/cobstacle. Liang-Jun Zhang 12/13/2005.
E N D
Fast C-obstacle Query Computationfor Motion Planning Liang-Jun Zhang1Young J. Kim2 Gokul Varadhan1 Dinesh Manocha1 1: University of North Carolina - Chapel Hill, USA 2: Ewha Womans University, Korea, http://gamma.cs.unc.edu/cobstacle Liang-Jun Zhang 12/13/2005
Configuration space • Free space and C-obstacle Is its configuration in C-obstacle or free space? Do they intersect? Obstacle C-obstacle Robot Free space
C-obstacle query in C-space • C-obstacle query • Does a primitive lie completely inside C-obstacle? • The primitive usually is a cell. • Goal • Design an efficient C-obstacle query algorithm C-obstacle Free space
FULL init EMPTY goal Motivation- An important query for Motion Planning • Cell Decomposition Method • Label Cells as FULL and EMPTY • Complete motion planning • Able to find a path or report path non-existence
Previous work • Computing the boundary of C-obstacle • Exponential complexity [Sacks 99, Sharir 97] • Degeneracy and floating point error • Contact surface constraints • [Latombe 91, Zhu 91] • Complexity of contact surface enumeration • To deal with non-linear contact surfaces
Interpretation of C-obstacle query • Do the robot and obstacle intersect at all configurations? • Does the cell lie inside C-obstacle? C-obstacle Obstacle Free space • Can the robot ‘escape’ from the obstacle at some moment?
Algorithm overview A(q) • Penetration Depth • How much does the robot penetrate into the obstacle at a configuration q ? • Bounding Motion • How much motion the robot can undergo, when its configuration changes from q but within the query primitive? • Query criterion • If Penetration Depth >Bounding Motion the robot can not escape • the query primitive lies inside C-obstacle q
Translational Penetration Depth: PDt B • Minimum translation to separate A, B • [Dobkin 93, Agarwal 00, Bergen 01, Kim 02] • PDt: not applicable • The robot is allowed to both translate and rotate. • Undergoing rotation, A may ‘escape’ from B easier. A A’ B A
Generalized Penetration Depth: PDg • Consider both translation and rotation • [Zhang, Kim, Varadhan, Manocha: UNC-CS TR05] • Difficult for non-convex objects • Convex A, B PDg(A,B)=PDt(A,B)
A1 A1 A A2 A2 B1 B1 B2 B2 B Algorithm-Lower bound on PDg • Convex decomposition • Eliminate non-overlapping pairs • PDt over overlapping pairs • LB(PDg) = Max over all PDts
C-obstacle Query Criterion A(qa): set A’s config as qa C If Lower Bound (PDg(A(qa), B))> Bounding Motion, the cell C is in C-obstacle.
Upper bound of Motion for line segment • Configurations qa and qb • [Schwarzer,Saha,Latombe 04] Max trajectory length over points on the moving robot
Upper bound of Motion for cell qa is the center of the cell C qbis any point on the boundary of the cell. Any diagonal line segment yields maximum bounding motion. C
C-obstacle Query Criterion A(qa): set A’s config as qa C If Lower Bound (PDg(A(qa), B))> the cell C is in C-obstacle.
Application • Star-shaped roadmap: a complete motion planning approach • [Varadhan and Manocha 05] • To identify cells which lie inside C-obstacle • No subdivisions are applied for them
Results-`gear’: 2T+1R video
Results ‘Piano’ ‘World map’
Effective and Performance Culled C-obstacle Cells • Query timing: 0.04ms to 0.12 ms • Cell Culling Ratio = All C-obstacle Cells
Conclusion • A fast C-obstacle query algorithm for rigid robots • Based on generalized penetration depth and bounding motion computation. • Need not explicit computation of the boundary of free space. • Robust and efficient • Applied for accelerating a complete motion planning approach for 2D rigid robot.
Ongoing and Future work • A Simple Path Non-Existence Algorithm for low DOF robots • [L. Zhang, Y.J. Kim, D. Manocha] WAFR2006 • Apply for 3D rigid robots • Handle articulated robots
Acknowledgements • Army Research Office • DARPA/REDCOM • NSF • ONR • Intel Corporation • KRF, STAR program of MOST, Ewha SMBA consortium, the ITRC program (Korea)
Thanks Any Questions?
Generalized Penetration Depth: PDg • Consider both translation and rotation • [Zhang, Kim, Varadhan, Manocha et al. 05] • Trajectory length Separating path Obstacle Robot Robot
Generalized Penetration Depth: PDg • PDg • Difficult for non-convex objects • Convex A, B PDg(A,B)=PDt(A,B) • MIN over all possible separating paths • MAX of the trajectory length • over all on the moving robot
Upper bound of Motion for line segment • [Schwarzer,Saha,Latombe 04] • Max trajectory length over points on the moving robot • The weighted sum of difference for x, y, components between qa and qb R: ‘radius’ of the object