Lodos-v2: An Efficient Primal Formulation of the Exact Frictional Contact Problem
Organizations: University of Tübingen
Abstract
Lodos-v2 is a GPU-based simulation framework for massively parallel rigid-body dynamics with contact. It is specifically designed to achieve high throughput in scenes involving collisions among large numbers of detailed meshes. Its predecessor, Lodos-v1, had two main limitations. First, it solved the standard convex relaxation of cone-complementarity-based contact dynamics, thereby inheriting well-known physical artifacts, including lift-off and artificial compliance in the normal direction, as well as creep in the tangential direction. Second, its contact-group reparameterization scheme, which rescales spring-damper forces using a single factor per collision pair, could not be integrated with other constraints required by a full-fledged simulator, such as joint limits and welds. Lodos-v2 addresses both limitations through two main contributions. First, it introduces an efficient algorithm for solving the exact frictional contact problem by sequentially solving a cascade of convex relaxations in primal form within an outer proximal minimization loop. Second, it extends the contact-group reparameterization scheme of Lodos-v1 to the primal formulation of cone-complementarity-based contact dynamics, enabling its integration with the other constraints of a full-fledged simulator. Experiments demonstrate that these contributions result in throughput improvements over established rigid-body simulation frameworks. The source code is available at https://github.com/martius-lab/lodos.
Figures & tables
| Lodos-v2, mj mode | |||||
|---|---|---|---|---|---|
| scene | per contact | cone | ray | MJWarp | speed-up |
| cube_walled_5_polytope | 1.61M @8192 | – | – | 1.11M @8192 | 1.45 |
| cube_walled_5_sdf | 551k @4096 | 1.27M @8192 | 1.86M @8192 | 276k @2048 | 6.76 |
| arm_walled_5_polytope | 985k @8192 | – | – | 163k @2048 | 6.04 |
| arm_walled_5_sdf | 1.24M @4096 | 1.25M @8192 | 1.97M @8192 | 238k @2048 | 8.29 |
| shadow_grasp_polytope | 1.18M @8192 | – | – | 432k @32768 | 2.73 |
| Lodos-v2, exact mode | |||||
|---|---|---|---|---|---|
| scene | per contact | cone | ray | Kamino | speed-up |
| cube_walled_5_polytope | 711k @8192 | – | – | 589k @4096 | 1.21 |
| cube_walled_5_sdf | 225k @2048 | 596k @8192 | 1.08M @4096 | – | 1.83 |
| arm_walled_5_polytope | 408k @8192 | – | – | 58.3k @128 | 6.99 |
| arm_walled_5_sdf | 523k @4096 | 544k @4096 | 1.12M @8192 | – | 19.26 |
| shadow_grasp_polytope | 983k @8192 | – | – | 11.1k @512 | 88.33 |
Multibody Dynamics
Multibody dynamics studies how connected rigid or flexible bodies move and interact under forces, constraints, impacts, and friction.
See all 46 papers