Top Banner
Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe
23

Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Dec 20, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains

Lotan, Schwarzer, Halperin, Latombe

Page 2: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Kinematic structures

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

Page 3: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

The static model

n links of roughly the same sizepossibly slightly interpenetratingmany 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)

Page 4: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

The kinematic model

linksjoints

chain, tree, graph

Page 5: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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

Page 6: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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]

Page 7: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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

Page 8: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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)

( )O N ( )O N

( )O N( )O N

( log )O N N ( )N

Page 9: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Self-collision testing, assumptions

a small number of joint values change from one step to the otherthe chain was self-collision free at the last step

Page 10: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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)

Hierarchy of “shortcut” transformations

Page 11: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Bounding Volume Hierarchy

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

Page 12: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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

Page 13: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Self-collision: Example

Page 14: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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

Page 15: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Results: Extended chain (1)

Single Joint Change

Page 16: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Results: Extended chain (2)

100 Joint Changes

Page 17: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Protein backbones

1SHG (171 atoms)

1B4E(969 atoms)

1LOX (1941 atoms)

Page 18: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Results: Protein backbones (1)

Single Joint Change

Page 19: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Results: Protein backbones (2)

10 Joint Changes

Page 20: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

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

(log )O N

(log )O N( log )O k N( )O N

Page 21: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Upper bound holds for “not so tight” hierarchies like oursLower bound holds for any convex BVSlightly worse than bound we prove for a regular hierarchy If topology of regular hierarchy is not updated, can deteriorate to

in the worst case

Analysis – collision detection

43( )N

( )N

2( )N

Page 22: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

• 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

YES!

Page 23: Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.

Lower bound

3d links form a unitd/8 units shifted by 1 along X and -Y form a layerd/8 layers shifted by 1 along –Y and Z form a chain

[chain]

[layer]

Convex hull of all units overlaps!

P=[2(d-1),d-1,(d-1)/4]