Analytical Second-Order Partial Derivatives of Rigid-Body Inverse Dynamics

Optimization-based robot control strategies often rely on first-order dynamics approximation methods, as in iLQR. Using second-order approximations of the dynamics is expensive due to the costly second-order partial derivatives of the dynamics with respect to the state and control. Current approaches for calculating these derivatives typically use automatic differentiation (AD) and chain-rule accumulation or finite-difference. In this paper, for the first time, we present analytical expressions for the second-order partial derivatives of inverse dynamics for open-chain rigid-body systems with floating base and multi-DoF joints. A new extension of spatial vector algebra is proposed that enables the analysis. A recursive algorithm with complexity of is also provided where is the number of bodies and is the depth of the kinematic tree. A comparison with AD in CasADi shows speedups of 1.5-3 for serial kinematic trees with , and a C++ implementation shows runtimes of 51 for a quadruped.
View on arXiv