Dynamic robotic simulation
O(n3) convex complementarity-free contact model
Our multi-rigid body contact model requires time O(n3) in the number of contact points to solve. Using any one of numerous widely available interior point solvers yields numerical robustness, true friction cones, and scaling to thousands of contact points.
Frame from grasp.mp4 showing simulated manipulator grasping a ball (notoriously difficult to simulate) while moving in a sinusoidal trajectory. Our contact model is employed.
Videos:
- [grasp.mp4] (1.5MB) Robot grasping
Relevant publications:
- Evan Drumwright and Dylan Shell. Modeling Contact Friction and Joint Friction in Dynamic Robotic Simulation Using the Principle of Maximum Dissipation. Proc. of the Ninth Intl. Workshop on the Algorithmic Foundations of Robotics (WAFR). Singapore, 2010.
- Evan Drumwright and Dylan Shell. "A Robust and Tractable Contact Model for Robotic Simulation". Proc. of the 24th ACM Symp. on Applied Computing (SAC). Honolulu, 2009.
Advanced penalty method for rigid body simulation
Our advanced penalty method works by applying forces over the volume of penetration, rather than applying a force due to only a single, virtual spring and damper at the point of deepest penetration. Applying forces at multiple points reduces the oscillation that emerges from the standard penalty-based approach. An integrative reduces steady-state error, permitting less stiff gain constants to be used for the virtual springs and dampers; the resulting equations of motion are less “stiff”.
A still from a video that demonstrates the ability of the advanced penalty method to handle a stable pile of objects.
Relevant publication:
- Evan Drumwright. A Fast and Stable Penalty Method for Rigid Body Simulation. IEEE Trans. on Visualization and Computer Graphics. vol. 14, no. 1, pp. 231-240, January/February, 2008.