Rapid Integrator for a Class of Multi-Contact Systems
Marion Anderson, Shai Revzen
TL;DR
This work introduces a novel universal numerical integrator for multi-contact robotics built on Event Selected Systems (ESS). By alternately performing conventional ODE integration and Bouligand Derivative–based projections, it resolves multiple near-simultaneous contact events within a single hybrid domain, achieving first-order correctness and practical second-order accuracy. The method is implemented in Python and benchmarked against MuJoCo, showing comparable per-contact efficiency across models with 2–100 contacts and favorable potential for real-time, high-contact robotics applications. The approach generalizes beyond traditional rigid-body simulators and holds promise for online optimization and model-predictive control in complex contact-rich tasks. The paper provides theoretical justification, empirical order verification, and performance comparisons that support its viability for fast, accurate multi-contact simulation and control.
Abstract
Many problems in robotics involve creating or breaking multiple contacts nearly simultaneously or in an indeterminate order. We present a novel general purpose numerical integrator based on the theory of Event Selected Systems (ESS). Many multicontact models are ESS, which has recently been shown to imply that despite a discontinuous vector field, the flow of these systems is continuous, piecewise smooth, and has a well defined orbital derivative for all trajectories, which can be rapidly computed. We provide an elementary proof that our integrator is first-order accurate and verify numerically that it is in fact second-order accurate as its construction anticipated. We also compare our integrator, implemented in NumPy, to a MuJoCo simulation on models with 2 to 100 contacts, and confirm that the increase in simulation time per contact is nearly identical. The results suggest that this novel integrator can be invaluable for modelling and control in many robotics applications.
