algorithmic robotics and motion planning
Skip this Video
Download Presentation
Algorithmic Robotics and Motion Planning

Loading in 2 Seconds...

play fullscreen
1 / 37

Algorithmic Robotics and Motion Planning - PowerPoint PPT Presentation

  • Uploaded on

Algorithmic Robotics and Motion Planning. Fall 2006/7 Dynamic Maintenance and Self-Collision Testing for Large Kinematic Chains. Dan Halperin Tel Aviv University. Kinematic structures. A collection of rigid bodies hinged together---motion along joints

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Algorithmic Robotics and Motion Planning ' - arden-glenn

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
algorithmic robotics and motion planning

Algorithmic Roboticsand Motion Planning

Fall 2006/7

Dynamic Maintenance and Self-Collision Testing for Large Kinematic Chains

Dan Halperin

Tel Aviv University

kinematic structures
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
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
The kinematic model



chain, tree, graph

dynamic maintenance self collision testing
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 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 testing1
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
self collision testing assumptions
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












Chain representation

A Sequence of reference frames (links) connected by rigid-body transformations (joints)

Hierarchy of “shortcut” transformations

bounding volume hierarchy
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
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


  • Many unnecessary overlap tests are avoided
  • No leaf node tested against itself
experimental results
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
Results: Extended chain (1)

Single Joint Change

protein backbones
Protein backbones


(1941 atoms)


(969 atoms)


(171 atoms)

analysis updating
Analysis – updating
  • For each joint change:
    • shortcut transformations need to be recomputed
    • BVs need to be recomputed
  • For k simultaneous changestime, but never more than

Previous BV hierarchies required O(N log N) updating time

analysis collision detection
Analysis – collision detection

in the worst case

  • 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
upper bound
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
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 gi = 2i each bounding volume, a bounding sphere of radius gir

the number of bounding spheres at level i intersecting a single bounding sphere is

upper bound cont d1
Upper bound, cont’d

Mi can be as large as n/gi

Max Mi is attained for the smallest i such that

which, since gi = 2i, occurs when

Ti denotes the number of sphere overlaps at level I,

T is the overall number of sphere overlaps

upper bound cont d3
Upper bound, cont’d
  • Will the bound hold for a “not so tight” hierarchy like ours?


  • OBBs are larger than tight bounding spheres by a constant factor at each level
  • This factor is fixed for all levels of the hierarchy
upper bound cont d4
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 d5
Upper bound, cont’d

lemma: at level I of an OBB hierarchy, each OBB is contained in a sphere of radius c2ir, where c is an absolutre constant


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 2ir containing the subchain bounded by the 32 boxes at level i-5

S0 sphere concentric with S with radius 2ir(1+c/16)

upper bound cont d6
Upper bound, cont’d

Consider the OBB at level i-4

S1 sphere concentric with S0 with radius √3 times the radius of S0 contains all the OBBs at level i-4

Continuing up to level I we get sphere S5 of radius √352ir(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 d7
Upper bound, cont’d

finally we choose

lower bound


Lower bound

parameter d

lower bound a layer
Lower bound, a layer
  • a copy of a unit tranalted by


  • a layer:

d/8 units

lower bound overall construction
Lower bound, overall construction
  • a copy of a layer tranalted by


  • overall:

d/8 layers

  • a unit consists of

cn1/3 links

lower bound overall construction cont d
Lower bound, overall construction, cont’d
  • there are c\'n2/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 (n4/3) overlaps
based on the papers

Based on the papers:

  • Lotan, F. Schwarzer, D. Halperin and J.-C. Latombe Algorithm and data structures for efficient energy maintenance during Monte Carlo simulation of proteinsJournal of Computational Biology 11 (5), 2004, 902-932.
  • Efficient maintenance and self-collision testing for kinematic chains, Proc. 18th ACM Symposium on Computational Geometry, Barcelona, 2002, pp, 43-52.