Algorithmic Robotics and Motion Planning Dan Halperin Tel Aviv University Fall 2006/7 Dynamic Maintenance and Self-Collision Testing for Large Kinematic.

Slides:



Advertisements
Similar presentations
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
Advertisements

Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Fast Algorithms For Hierarchical Range Histogram Constructions
Augmenting Data Structures Advanced Algorithms & Data Structures Lecture Theme 07 – Part I Prof. Dr. Th. Ottmann Summer Semester 2006.
Dynamic Planar Convex Hull Operations in Near- Logarithmic Amortized Time TIMOTHY M. CHAN.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
Computer graphics & visualization Collisions. computer graphics & visualization Simulation and Animation – SS07 Jens Krüger – Computer Graphics and Visualization.
Geometric Representations & Collision Detection Kris Hauser I400/B659: Intelligent Robotics Spring 2014.
Zoo-Keeper’s Problem An O(nlogn) algorithm for the zoo-keeper’s problem Sergei Bespamyatnikh Computational Geometry 24 (2003), pp th CGC Workshop.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
Fractional Cascading CSE What is Fractional Cascading anyway? An efficient strategy for dealing with iterative searches that achieves optimal.
Geometric Algorithms for Conformational Analysis of Long Protein Loops J. Cortess, T. Simeon, M. Remaud- Simeon, V. Tran.
Navigating Nets: Simple algorithms for proximity search Robert Krauthgamer (IBM Almaden) Joint work with James R. Lee (UC Berkeley)
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Collision Detection and Distance Computation: Feature Tracking Methods.
Bounding Volume Hierarchy “Efficient Distance Computation Between Non-Convex Objects” Sean Quinlan Stanford, 1994 Presented by Mathieu Brédif.
1 1 Static & Dynamic Maintenance of Kinematic Structures Spheres, Molecules, and Hidden Surface Removal D. Halperin and M-H. Overmars Dynamic Maintenance.
Self-Collision Detection and Prevention for Humonoid Robots Paper by James Kuffner et al. Presented by David Camarillo.
Adaptive Dynamic Collision Checking for Many Moving Bodies Mitul Saha Department of Computer Science, Stanford University. NSF-ITR Workshop Collaborators:
Algorithmic Robotics and Motion Planning Dan Halperin Tel Aviv University Fall 2006/7 Algorithmic motion planning, an overview.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2004/index.htm Collision Detection and Distance Computation: Feature Tracking Methods.
Exact Collision Checking of Robot Paths Fabian Schwarzer Mitul Saha Jean-Claude Latombe Computer Science Department Stanford University.
Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2004/index.htm Collision Detection and Distance Computation.
OBBTree: A Hierarchical Structure for Rapid Interference Detection Gottschalk, M. C. Lin and D. ManochaM. C. LinD. Manocha Department of Computer Science,
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Kinetic Data Structures and their Application in Collision Detection Sean Curtis COMP 768 Oct. 16, 2007.
Algorithm for Fast MC Simulation of Proteins Itay Lotan Fabian Schwarzer Dan Halperin Jean-Claude Latombe.
Crossing Lemma - Part I1 Computational Geometry Seminar Lecture 7 The “Crossing Lemma” and applications Ori Orenbach.
Bounding Volume Hierarchies and Spatial Partitioning Kenneth E. Hoff III COMP-236 lecture Spring 2000.
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
Efficient Distance Computation between Non-Convex Objects By Sean Quinlan Presented by Sean Augenstein and Nicolas Lee.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
Algorithmic Robotics and Molecular Modeling Dan Halperin School of Computer Science Tel Aviv University June 2007.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
Collision Detection David Johnson Cs6360 – Virtual Reality.
CS B659: Principles of Intelligent Robot Motion Collision Detection.
Efficient Maintenance and Self-Collision Testing for Kinematic Chains Itay Lotan Fabian Schwarzer Dan Halperin Jean-Claude Latombe.
Spatial Data Structures Jason Goffeney, 4/26/2006 from Real Time Rendering.
Efficient Maintenance and Self- Collision Testing for Kinematic Chains Itay Lotan Fabian Schwarzer Dan Halperin Jean-Claude Latombe.
B-trees and kd-trees Piotr Indyk (slides partially by Lars Arge from Duke U)
12/4/2001CS 638, Fall 2001 Today Managing large numbers of objects Some special cases.
PRESENTED BY – GAURANGI TILAK SHASHANK AGARWAL Collision Detection.
Computational Geometry Piyush Kumar (Lecture 10: Point Location) Welcome to CIS5930.
Open Problem: Dynamic Planar Nearest Neighbors CSCE 620 Problem 63 from the Open Problems Project
Stabbing balls and simplifying proteins Ovidiu Daescu and Jun Luo Department of Computer Science University of Texas at Dallas Richardson, TX
1 Energy Maintenance for Molecular Simulation kinematics + energy  motion + structure Main computational issue: Proximity computation.
Flexible Spanners: A Proximity and Collision Detection Tool for Molecules and Other Deformable Objects Jie Gao, Leonidas Guibas, An Nguyen Computer Science.
Chapter 11 Collision Detection 가상현실 입문 그래픽스 연구실 민성환.
Presented by Paul Phipps
1 CSIS 7101: CSIS 7101: Spatial Data (Part 1) The R*-tree : An Efficient and Robust Access Method for Points and Rectangles Rollo Chan Chu Chung Man Mak.
Dynamic Maintenance of Molecular Surfaces under Conformational Changes Eran Eyal and Dan Halperin Tel-Aviv University.
Interactive Continuous Collision Detection for Polygon Soups Xin Huang 11/20/2007.
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Minkowski Sums and Distance Computation Eric Larsen COMP
Bounding Volume Hierarchies and Spatial Partitioning
Computational Geometry
Distance Computation “Efficient Distance Computation Between Non-Convex Objects” Sean Quinlan Stanford, 1994 Presentation by Julie Letchner.
Collision Detection Spring 2004.
Bounding Volume Hierarchies and Spatial Partitioning
C-obstacle Query Computation for Motion Planning
Efficient Energy Computation for Monte Carlo Simulation of Proteins
Comparative RNA Structural Analysis
Computing Shortest Path amid Pseudodisks
Introduction Wireless Ad-Hoc Network
Kinetic Collision Detection for Convex Fat Objects
June 12, 2003 (joint work with Umut Acar, and Guy Blelloch)
Collision Detection.
David Johnson Cs6360 – Virtual Reality
New Jersey, October 9-11, 2016 Field of theoretical computer science
Presentation transcript:

Algorithmic Robotics and Motion Planning Dan Halperin Tel Aviv University Fall 2006/7 Dynamic Maintenance and Self-Collision Testing for Large Kinematic Chains

Kinematic structures A collection of rigid bodies hinged together---motion along joints LARGE structures: hyper-redundant robots [Burdick, Chirikjian, Rus, Yim and others], macro- molecules

The static model n links of roughly the same size possibly slightly interpenetrating many favorable properties and simple algorithms (HSR, union boundary construction), in particular, data structures for intersection queries: O(n log n) preprocessing -> O(n) rand. O(n) space O(log n) query -> O(1)

The kinematic model links joints chain, tree, graph

Dynamic maintenance, self collision testing the problem: Carry out a sequence of operations efficiently update of joint values the query is for self collision sample motivation: monte carlo simulation of protein folding paths

Dynamic maintenance: what ’ s available dynamic spatial data structures insertions and deletions kinetic data structures [Basch, Guibas, Hershberger 97] independent movements robot motion planning small number of degrees of freedom dynamic maintenance for kinematic struct ’ s link-size queries [H-Latombe-Motwani 96,Charikar-H- Motwani 98]

Dynamic maintenance, self collision testing the problem (reminder): Carry out a sequence of operations efficiently update of joint values the query is for self collision n: # of links ~ # of joints theory, worst case: rebuild spatial structure at each update

Collision testing, existing techniques UpdatingSelf-collisions I-COLLIDE (Cohen et al ’ 95) GRID (e.g. Halperin and Overmars ’ 98) BV Hierarchies (Quinlan ’ 94, Gottschalk et al ’ 96, van den Bergen ’ 97, Klosowski et al ’ 98)

Self-collision testing, assumptions a small number of joint values change from one step to the other the chain was self-collision free at the last step

Chain representation A Sequence of reference frames (links) connected by rigid-body transformations (joints) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) TT(R,t)TT(R,t) Hierarchy of “shortcut” transformations

Bounding Volume Hierarchy Chain-aligned: bottom-up, along the chain Each BV encloses its two children in the hierarchy Shortcuts allow to efficiently compute relative position of BVs At each time step only BVs that contain the changed joints need to be recomputed

Self-collision detection Test the hierarchy against itself to find collisions. But … Do not test inside BVs that were not updated after the last set of changes Benefits: Many unnecessary overlap tests are avoided No leaf node tested against itself

Self-collision: Example

Experimental results We tested our algorithm (dubbed ChainTree) against three others: Grid – Collisions detected by indexing into a 3D grid using a hash table 1-OBBTree – An OBB hierarchy is created from scratch after each change and then tested against itself for collisions K-OBBTree – After each change an OBB hierarchy is built for each rigid piece of the chain. Each pair of hierarchies is tested for collisions

Results: Extended chain (1) Single Joint Change

Results: Extended chain (2) 100 Joint Changes

Protein backbones 1SHG (171 atoms) 1B4E (969 atoms) 1LOX (1941 atoms)

Results: Protein backbones (1) Single Joint Change

Results: Protein backbones (2) 10 Joint Changes

Analysis – updating For each joint change: shortcut transformations need to be recomputed BVs need to be recomputed For k simultaneous changes time, but never more than Previous BV hierarchies required O(N log N) updating time

Upper bound holds for “ not so tight ” hierarchies like ours Lower bound holds for any convex BV Slightly worse than bound we prove for a regular hierarchy If topology of regular hierarchy is not updated, can deteriorate to Guibas et al '02: bounds for spherical hierarchy in the worst case Analysis – collision detection

Upper bound we first show for tight spherical hierarchy, the extend to OBBs tight hierarchy: the bounding sphere is the minimal for the original links at each level Reminder, well-behaved chain, two constants: (1) the ratio between the biggest and smallest bounding sphere of a link (2) the minimum distance between the centers of two bounding sphere of links

Upper bound, cont ’ d Step 1: regularize chain all spheres of same radius r two successive spheres in the chain are not disjoint level i=0, tree leaves at level i there are g i = 2 i each bounding volume, a bounding sphere of radius g i r the number of bounding spheres at level i intersecting a single bounding sphere is

Upper bound, cont ’ d M i can be as large as n/g i Max Mi is attained for the smallest i such that which, since g i = 2 i, occurs when T i denotes the number of sphere overlaps at level I, T is the overall number of sphere overlaps

Upper bound, cont ’ d

OBBs are larger than tight bounding spheres by a constant factor at each level This factor is fixed for all levels of the hierarchy Will the bound hold for a “ not so tight ” hierarchy like ours? Upper bound, cont ’ d YES!

Upper bound, cont ’ d lemma: given two OBBs contained in a sphere D of radius R, the OBB bounding both of them is contained in a sphere of radius √3R concentric with D

Upper bound, cont ’ d lemma: at level I of an OBB hierarchy, each OBB is contained in a sphere of radius c2 i r, where c is an absolutre constant Proof: C1 is chosen such that this is true for levels i = 0,1, …, 4 assume for i-1 (i>4) and prove for i S sphere of radius 2 i r containing the subchain bounded by the 32 boxes at level i-5 S 0 sphere concentric with S with radius 2 i r(1+c/16)

Upper bound, cont ’ d Consider the OBB at level i-4 S 1 sphere concentric with S 0 with radius √3 times the radius of S 0 contains all the OBBs at level i-4 Continuing up to level I we get sphere S5 of radius √3 5 2 i r(1+c/16) that contains the OBB at this level that contains all the 32 OBBs of level i-5 in its subtree c must be such that

Upper bound, cont ’ d finally we choose

Lower bound parameter d d

Lower bound, one unit (3d links)

Lower bound, a layer a copy of a unit tranalted by (2r,-2r,0) a layer: d/8 units

Lower bound, overall construction a copy of a layer tranalted by (0,-2r,2r) overall: d/8 layers a unit consists of cn 1/3 links

Lower bound, overall construction, cont ’ d there are c'n 2/3 units at the level where the links of a unit are grouped together the convex hull of each unit contains the point (2(d-1)r, (d-1)r, (d-1)r/4) overall  (n 4/3 ) overlaps

Based on the papers: I.Lotan, F. Schwarzer, D. Halperin and J.-C. Latombe Algorithm and data structures for efficient energy maintenance during Monte Carlo simulation of proteins Journal of Computational Biology 11 (5), 2004, Algorithm and data structures for efficient energy maintenance during Monte Carlo simulation of proteins II.Efficient maintenance and self-collision testing for kinematic chains, Proc. 18th ACM Symposium on Computational Geometry, Barcelona, 2002, pp,

THE END