Extending Open Dynamics Engine for the DARPA Virtual Robotics Challenge

  • John M. Hsu
  • Steven C. Peters
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8810)


The DARPA Virtual Robotics Challenge (VRC) [1] was a cloud-based robotic simulation competition. Teams competed by writing control software for a humanoid robot to perform disaster response tasks in real-time simulation. Simulating the physics and sensors of a humanoid robot in real-time presented challenges related to the trade-off between simulation accuracy and computational time. The Projected Gauss-Seidel (PGS) iterative solver was chosen for its performance and robustness, but it lacks the accuracy and the fidelity required for reliable simulation of task-level behaviors. This paper presents the modeling decisions and algorithmic improvements made to the Open Dynamics Engine (ODE) physics solver that improved PGS accuracy and fidelity without sacrificing its real-time simulation performance in the VRC. These improvements allowed for stable simulation regardless of user input during the VRC, and supported reliable contact dynamics during VRC tasks without violating the near real-time requirement.


Rigid Body Humanoid Robot Linear Complementarity Problem Defense Advance Research Project Agency Contact Constraint 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Defense Advanced Research Project Agency (DARPA), DARPA Robotics Challenge (DRC) and Virtual Robotics Challenge (VRC), http://theroboticschallenge.org/about
  2. 2.
    Boston Dynamics, Boston Dynamics Atlas Robot, http://www.bostondynamics.com/robot_Atlas.html
  3. 3.
    Open Source Robotics Foundation, Sandia Hand Project Webpage, https://bitbucket.org/osrf/sandia-hand
  4. 4.
    Stronge, W.: Rigid body collisions with friction. Proceedings of the Royal Society of 431(1881), 169–181 (1990)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Brogliato, B., ten Dam, A., Paoli, L., Genot, F., Abadie, M.: Numerical simulation of finite dimensional multibody nonsmooth mechanical systems. Applied Mechanics Reviews 55(2), 107 (2002)CrossRefGoogle Scholar
  6. 6.
    Anitescu, M., Potra, F.: Formulating dynamic multi-rigid-body contact problems with friction as solvable linear complementarity problems. Nonlinear Dynamics 14, 231–247 (1997)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Trinkle, D., Stewart, D.E., Trinkle, J.C.: An implicit time-stepping scheme for rigid body dynamics with inelastic collisions and coulomb friction. International Journal for Numerical Methods in Engineering 39(15), 2673–2691 (1996)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Pang, J., Trinkle, J.: Complementarity formulations and existence of solutions of dynamic multi-rigid-body contact problems with coulomb friction. Mathematical Programming 73(2), 199–226 (1995)MathSciNetCrossRefGoogle Scholar
  9. 9.
    Cottle, R., Pang, J.-S., Stone, R.E.: The Linear Complementarity Problem (2009)Google Scholar
  10. 10.
    Cottle, R., Dantzig, G.: Complementary pivot theory of mathematical programming. Linear Algebra and its Applications, 103–125 (1968)Google Scholar
  11. 11.
    Featherstone, R.: A short course on Spatial Vector Algebra the easy way to do rigid body dynamics (2005)Google Scholar
  12. 12.
    Featherstone, R.: Rigid Body Dynamics Algorithms. Springer US, Boston (2008)CrossRefMATHGoogle Scholar
  13. 13.
    Smith, J., Gerkey, B.: Drcsim issue #378, https://bitbucket.org/osrf/drcsim/issue/378
  14. 14.
    Bridson, R., Fedkiw, R., Anderson, J.: Robust Treatment of Collisions, Contact and Friction for Cloth Animation (1994)Google Scholar
  15. 15.
    Koolen, T., Hsu, J., et al.: Drcsim issue #320, https://bitbucket.org/osrf/drcsim/issue/320
  16. 16.
    Smith, R.: Open Dynamics Engine ODE. Multibody Dynamics Simulation Software, http://www.ode.org
  17. 17.
    Smith, R.: Open Dynamics Engine ODE. User’s Manual, http://opende.sourceforge.net/wiki/index.php/Manual
  18. 18.
    Weinstein, R., Teran, J., Fedkiw, R.: Dynamic simulation of articulated rigid bodies with contact and collision. IEEE Trans. Visualization and Computer Graphics 12(3), 365–374 (2006)CrossRefGoogle Scholar
  19. 19.
    Sherman, M.A., Seth, A., Delp, S.L.: Simbody: multibody dynamics for biomedical research. In: Procedia IUTAM, vol. 2, pp. 241–261 (January 2011)Google Scholar
  20. 20.
    Baumgarte, J.: Stabilization of constraints and integrals of motion in dynamical systems. Computer Methods in Applied Mechanics and Engineering 1(1), 1–16 (1972)MathSciNetCrossRefMATHGoogle Scholar
  21. 21.
    Catto, E.: Soft Constraints reinventing the spring. In: Game Developer Conference (2011)Google Scholar
  22. 22.
    Stewart, D.E.: Rigid-Body Dynamics with Friction and Impact. SIAM Review 42(1), 3 (2000)MathSciNetCrossRefMATHGoogle Scholar
  23. 23.
    Silcowitz, M., Niebe, S., Erleben, K.: Nonsmooth Newton Method for Fischer Function Reformulation of Contact Force Problems for Interactive Rigid Body Simulation (2009)Google Scholar
  24. 24.
    Atkeson et al.: Simulating hands is killing performance, http://answers.gazebosim.org/question/1427
  25. 25.
    Atkeson et al.: Constraint stabilization methods discussion, http://www.cs.cmu.edu/~cga/drc/constraint-stabilization.html
  26. 26.
  27. 27.
    Zhang, L., Betz, J., Trinkle, J.: Comparison of simulated and experimental grasping actions in the plane. In: First International Multibody Dynamics... (2010)Google Scholar
  28. 28.
    Drumwright, E., Shell, D.: A robust and tractable contact model for dynamic robotic simulation. In: Proc. ACM symposium on Applied Computing, pp. 1176–1180. ACM (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • John M. Hsu
    • 1
  • Steven C. Peters
    • 1
  1. 1.Open Source Robotics FoundationMountain ViewUSA

Personalised recommendations