Inverse Dynamics vs. Forward Dynamics in Direct Transcription Formulations for Trajectory Optimization

Benchmarks of state-of-the-art rigid-body dynamics libraries have reported better performance for solving the inverse dynamics problem than the forward alternative. Those benchmarks encouraged us to question whether this computational advantage translates to direct transcription formulations, where calculating the rigid-body dynamics and their derivatives often accounts for a significant share of computation time. In this work, we implement an optimization framework where both approaches for enforcing the system dynamics are available. We evaluate the performance of each approach for systems of varying complexity, and for domains with rigid contacts. Our tests revealed that formulations employing inverse dynamics converge faster, require less iterations, and are more robust to coarse problem discretization. These results suggest that inverse dynamics should be the preferred approach to enforce nonlinear system dynamics in simultaneous methods, such as direct transcription.

[1]  Twan Koolen,et al.  Benchmarking and Workload Analysis of Robot Dynamics Algorithms , 2019, 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[2]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..

[3]  Jiahao Chen,et al.  Robust benchmarking in noisy environments , 2016, ArXiv.

[4]  Nicolas Mansard,et al.  SL1M: Sparse L1-norm Minimization for contact planning on uneven terrain , 2019, 2020 IEEE International Conference on Robotics and Automation (ICRA).

[5]  Olivier Stasse,et al.  TALOS: A new humanoid research platform targeted for industrial applications , 2017, 2017 IEEE-RAS 17th International Conference on Humanoid Robotics (Humanoids).

[6]  Olivier Stasse,et al.  The Pinocchio C++ library : A fast and flexible implementation of rigid body dynamics algorithms and their analytical derivatives , 2019, 2019 IEEE/SICE International Symposium on System Integration (SII).

[7]  Darwin G. Caldwell,et al.  RobCoGen: a code generator for efficient kinematics and dynamics of articulated robots, based on Domain Specific Languages , 2016 .

[8]  Manolis I. A. Lourakis,et al.  Modified Rodrigues Parameters: An Efficient Representation of Orientation in 3D Vision and Graphics , 2018, Journal of Mathematical Imaging and Vision.

[9]  M. Arbib,et al.  Role of the cerebellum in reaching movements in humans. I. Distributed inverse dynamics control , 1998, The European journal of neuroscience.

[10]  Jorge Nocedal,et al.  An interior algorithm for nonlinear optimization that combines line search and trust region steps , 2006, Math. Program..

[11]  Frank Chongwoo Park,et al.  Newton-type algorithms for dynamics-based robot movement optimization , 2005, IEEE Transactions on Robotics.

[12]  Martin L. Felis RBDL: an efficient rigid-body dynamics library using recursive algorithms , 2017, Auton. Robots.

[13]  Peter Fankhauser,et al.  ANYmal - toward legged robots for harsh environments , 2017, Adv. Robotics.

[14]  Jonas Buchli,et al.  Evaluating Direct Transcription and Nonlinear Optimization Methods for Robot Motion Planning , 2015, IEEE Robotics and Automation Letters.

[15]  Emanuel Todorov,et al.  A convex, smooth and invertible contact model for trajectory optimization , 2011, 2011 IEEE International Conference on Robotics and Automation.

[16]  Sethu Vijayakumar,et al.  Online Hybrid Motion Planning for Dyadic Collaborative Manipulation via Bilevel Optimization , 2020, IEEE Transactions on Robotics.

[17]  Stefan Schaal,et al.  Forward models in visuomotor control. , 2002, Journal of neurophysiology.

[18]  Yoshihiko Nakamura,et al.  Leveraging Cone Double Description for Multi-contact Stability of Humanoids with Applications to Statics and Dynamics , 2015, Robotics: Science and Systems.

[19]  Jorge Nocedal,et al.  Knitro: An Integrated Package for Nonlinear Optimization , 2006 .

[20]  Marco Hutter,et al.  Gait and Trajectory Optimization for Legged Systems Through Phase-Based End-Effector Parameterization , 2018, IEEE Robotics and Automation Letters.

[21]  Twan Koolen,et al.  Julia for robotics: simulation and real-time control in a high-level programming language , 2019, 2019 International Conference on Robotics and Automation (ICRA).

[22]  Russ Tedrake,et al.  A direct method for trajectory optimization of rigid bodies through contact , 2014, Int. J. Robotics Res..

[23]  John T. Betts,et al.  Practical Methods for Optimal Control and Estimation Using Nonlinear Programming , 2009 .

[24]  Vladimir Ivan,et al.  Optimizing Dynamic Trajectories for Robustness to Disturbances Using Polytopic Projections , 2020, 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[25]  Emanuel Todorov,et al.  Trajectory optimization for domains with contacts using inverse dynamics , 2012, 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[26]  Anil V. Rao,et al.  Practical Methods for Optimal Control Using Nonlinear Programming , 1987 .