270 likes | 382 Vues
This paper presents a novel algorithm for C-obstacle queries in motion planning, crucial for rigid robots in complex environments. We explore the configuration space of robots and obstacles to determine if a robot's configuration intersects with the C-obstacle, enabling effective pathfinding. Our approach leverages generalized penetration depth and bounding motion, eliminating the need for explicit free space boundary computations. We report significant improvements in query timing and culling ratios, contributing to efficient motion planning for 2D rigid robots, with future work extending to 3D applications.
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