We present a differentiable formulation of rigid-body contact dynamics for objects and robots represented as compositions of convex primitives. Existing optimization-based approaches simulating contact between convex primitives rely on a bilevel formulation that separates collision detection and contact simulation. These approaches are unreliable in realistic contact simulation scenarios because isolating the collision detection problem introduces contact location non-uniqueness. Our approach combines contact simulation and collision detection into a unified single-level optimization problem. This disambiguates the collision detection problem in a physics-informed manner. Compared to previous differentiable simulation approaches, our formulation features improved simulation robustness and a reduction in computational complexity by more than an order of magnitude. We illustrate the contact and collision differentiability on a robotic manipulation task requiring optimization-through-contact. We provide a numerically efficient implementation of our formulation in the Julia language called Silico.jl.
翻译:我们为物体和机器人提出了一种不同的僵硬身体接触动态,这些物体和机器人代表着共形原始体的构成。现有的优化法模拟共形原始体之间的接触,依靠一种双级法,将碰撞探测和接触模拟区分开来。这些方法在现实的接触模拟情景中是不可靠的,因为分离碰撞探测问题会导致接触地点的不独一性。我们的方法将接触模拟和碰撞探测结合成一个统一的单一级优化问题。这以物理知情的方式模糊了碰撞探测问题。与以前的不同模拟法相比,我们的配方特征改善了模拟的坚固性,并减少了计算的复杂性,而不只是一个数量级。我们用数字上高效率的方式应用了我们用叫做Silico.jl的Julia语言的配方。我们用数字上的方法提供了一种高效的配方。