Fast and Feature-Complete Differentiable Physics for Articulated Rigid Bodies with Contact
arXiv:2103.16021
Abstract
We present a fast and feature-complete differentiable physics engine, Nimble (nimblephysics.org), that supports Lagrangian dynamics and hard contact constraints for articulated rigid body simulation. Our differentiable physics engine offers a complete set of features that are typically only available in non-differentiable physics simulators commonly used by robotics applications. We solve contact constraints precisely using linear complementarity problems (LCPs). We present efficient and novel analytical gradients through the LCP formulation of inelastic contact that exploit the sparsity of the LCP solution. We support complex contact geometry, and gradients approximating continuous-time elastic collision. We also introduce a novel method to compute complementarity-aware gradients that help downstream optimization tasks avoid stalling in saddle points. We show that an implementation of this combination in an existing physics engine (DART) is capable of a 87x single-core speedup over finite-differencing in computing analytical Jacobians for a single timestep, while preserving all the expressiveness of original DART.
References in corpus (8)
- Interaction Networks for Learning about Objects, Relations and Physics
- A Compositional Object-Based Approach to Learning Physical Dynamics
- Flexible Neural Representation for Physics Prediction
- DiffTaichi: Differentiable Programming for Physical Simulation
- Learning to Control PDEs with Differentiable Physics
- Interactive Differentiable Simulation
- Scalable Differentiable Physics for Learning and Control
- Augmenting Differentiable Simulators with Neural Networks to Close the Sim2Real Gap
Cited by in corpus (6)
- Brax -- A Differentiable Physics Engine for Large Scale Rigid Body Simulation
- GRiD: GPU-Accelerated Rigid Body Dynamics with Analytical Gradients
- Differentiable Simulation of Soft Multi-body Systems
- Extending Lagrangian and Hamiltonian Neural Networks with Differentiable Contact Models
- Leveraging Randomized Smoothing for Optimal Control of Nonsmooth Dynamical Systems
- Gradients are Not All You Need