1 / 54

Generalized Penetration Depth Computation

ACM Solid and Physical Modeling Conference, 2006. Generalized Penetration Depth Computation. http://gamma.cs.unc.edu/pdg. Liang-Jun Zhang Gokul Varadhan Dinesh Manocha Dept of Computer Sci. University of North Carolina Chapel Hill, USA. Young J. Kim Dept of Computer Sci.

Download Presentation

Generalized Penetration Depth Computation

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. ACM Solid and Physical Modeling Conference, 2006 Generalized Penetration Depth Computation http://gamma.cs.unc.edu/pdg Liang-Jun Zhang Gokul Varadhan Dinesh Manocha Dept of Computer Sci. University of North Carolina Chapel Hill, USA Young J. Kim Dept of Computer Sci. Ewha Womans University Seoul, Korea

  2. d d Distance Measure • Separation → Euclidean distance • Interpenetration → Penetration depth

  3. Translational Penetration Depth (PDt) Minimum translational distance needed to separate objects

  4. d Translational Penetration Depth (PDt) Minimum translational distance needed to separate objects

  5. Physically-based animation 6DOF haptic rendering Robot motion planning Tolerance verification Applications of PDt Time of Contact Force

  6. PDg No Rotational Motion in PDt PDt

  7. Generalized Penetration Depth • PDg • Taking into account both translational and rotational motion

  8. Main Contributions • Definition of PDg • New distance metric, Dg • Properties • Practical algorithms for PDg • Convex/convex • Convex/convex complement • Non-convex/non-convex

  9. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  10. Previous WorkTranslational Penetration Depth • Intersection depth • [Dobkin et al. 93] • Convex polytope • [Agarwal et al. 00] • Lower bound[van den Bergen01] • Upper bound[Kim et al. 02b] • Non-convex polyhedra • Highercomplexity: O(n6) • [Kim et al. 02a], [Redon et al. 05]

  11. Previous WorkGeneralized Penetration Depth • No directly related work • 6DOF configuration space: O(n12) complexity • Object Containment problem • [Chazella 83], [Milenkovic 99], [Grinde and Cavalier 96], [Avniam and Boissonnat 89], [Agarwal et al 98] • Rotational overlapping minimization • [Milenkovic 98], [Milenkovic and Schmidl 01] • Quadratic metric

  12. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  13. q1=<x1,y1,θ1> q0=<x0,y0,θ0> Configuration Space (C-space) θ Y Y A X X C-space Workspace

  14. q1 d θ Y q0 X Distance Metric in C-space • To measure the distance for oneobject at two different configurations [LaValle06,Amato00,Kuffner04] • Lp metrics (L2, L1, L∞) • Displacement metric • Maximum displacement • Our Dg distance metric A(q1) Y A(q0) X

  15. l1 A(q1) q0 q1 A(q0) l2 Dg(q0, q1) = Min over every pathconnecting q0 and q1 Max trajectory lengthfor distinct points Dg Metric in C-space Trajectory length Motion Paths in C-Space Y θ Dg(q0,q1) X

  16. Properties of Dg metric

  17. PDg definition PDg The minimum Dg distance over all possible collision-free configurations A B

  18. PDt = Special Case of PDg B d PDt: only by translation A A(q)

  19. PDg(A,B) ≤ PDt(A,B) PDg PDt

  20. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  21. PDg for Convex Objects Theorem PDg(A,B) = PDt(A,B) Pf) • In general, PDg(A,B) ≤ PDt(A,B) • Show that PDg(A,B) < PDt(A,B) is impossible for convex objects

  22. Corollary • Known PDt algorithms directly applicable to computing PDg • PDg(A,B) = PDg(B,A) for convex objects • In general, PDg(A,B)≠PDg(B,A) for non-convex objects

  23. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  24. PDg vs Containment • Object containment • Can Q contain P, when P is allowed to translate and rotate? • PDg • Consider as the container Q • Harder because we need to find an optimal

  25. Object Containment Problem • Complexities • O(m3n3log(mn)) for 2D polygons • O(mn2) for 2D convex polygons • Motivates us to consider PDg between convex and convex complement

  26. Algorithm Overview • Find a containment • Find a locally optimal containment A

  27. Step 1: Find a Containment • Formulate as a linear programming problem • Containment constraint: • Each point on A is contained in a half space defined by each face in B

  28. Dg(q0,q2) Dg(q0,q1) Step 2: Find a locally optimal containment • Another Linear programming • Optimization objective • Dg(q0, q2) ≤Dg(q0, q1)

  29. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  30. PDg for Convex/Non-convex • Difficult to compute the exact PDg • May need to compute 6DOF C-space (O(n12)) • Lower bound algorithm • Upper bound algorithm

  31. Lower Bound on PDg • Convex decomposition • Eliminate non-overlapping pairs • PDt for overlapping pairs • LB(PDg) = Max over all PDts PDt PDt

  32. Upper Bounds on PDg • PDg(A,B) ≤ PDt(CHull(A), CHull(B)) • PDg(A,B) ≤ PDt(A, B) More difficult 3. Better bounds

  33. Separating Planes and Separators Non-convexseparator (b) (c) Separating planes Convex separator

  34. Separating Planes • PDt(Chull(A), Chull(B)) yields a upper bound

  35. Enumerating convex separators S For each convex separator S, use convex/convex complement for an upper bound Min over all these upper bounds Convex Separators

  36. Implementation and Results • Timing measured on 2.8 GHz P4, 2G main memory • Lower bound on PDg • Pairwise PDt • Upper bound on PDg • UB1=Containment Optimization • UB2=PDt(CH(A), CH(B))

  37. Performance

  38. Hammer in Notch • Hammer • 1692 triangles • 215 convex pieces • Notch • 28 triangles • 28 convex pieces • 1 convex separator • Timings • LB: 4.3 msec • UB: 108 msec

  39. Comparison

  40. Hammer in Narrow Notch

  41. Comparison

  42. Spoon in Cup • Cup • 8452 triangles • 94 convex pieces • 53 convex separators • Spoon • 336 triangles • 28 convex pieces

  43. Comparison

  44. Outline • Previous Work • PDg definition • PDg algorithms • Convex/Convex • Convex/Convex complement • Non-convex/Non-convex • Application to motion planning

  45. Application to Motion planning • C-obstacle query • L. Zhang, Y.J. Kim, G.Varadhan, D. Manocha, Fast C-obstacle Query Computation for Motion Planning, ICRA 2006 When the robot’s configuration changes within the C-space cell, Whether the robot ‘escape’ from the obstacle at some moment? Obstacle cell C-space Workspace

  46. PDg for C-obstacle Query • Query criterion: • If the motion of the robot is less than the overlap extent (PDg), the robot can not escape from the obstacle Is Motion bound < PDg ? Motion bound PDg

  47. Results: Motion Planning Time: 110s

  48. Summary • Definition of generalized PD • Proved PDg = PDt for convex objects • Pose PDg problem for convex/convex complement as convex containment optimization • Algorithms for lower and upper bounds on PDg • PDg for motion planning

  49. Limitations • Computes a lower bound and a upper bound for non-convex polyhedra. • Can not guarantee a global minimum. • Convex decomposition and convex separator enumeration impacts on the performance.

  50. Ongoing and Future work • A Simple Path Non-Existence Algorithm for low DOF robots • [L. Zhang, Y.J. Kim, D. Manocha] WAFR2006 • Theoretical side: • Formulate Dg metric in a computational tractable way for exact PDg computation. • Practical side: • Apply PDg for higher DOFs motion planning, dynamic simulation, and tolerance verification.

More Related