Listen to this article
DeepMind, an AI research lab and subsidiary of Alphabet Inc., acquired the MuJoCo physics engine for robotics research and development. DeepMind is currently working to open-source MuJoCo and make it free for everyone in 2022.
When open-sourcing the system is complete, the GitHub repository will become the new home for MuJoco. Customers with existing paid licenses for MuJoCo can go to roboti.us for continued support.
MuJoCo, which stands for Multi-Joint Dynamics with Contact, is a physics engine that aims to facilitate R&D in robotics, biomechanics, graphics and animation, and other areas where fast and accurate simulation is needed. Initially developed by Roboti LLC, it is a C/C++ library with a C API. The runtime simulation module is tuned to maximize performance and operates on low-level data structures which are preallocated by the built-in XML parser and compiler.
The user defines models in the native MJCF scene description language – an XML file format designed to be as human readable and editable as possible. URDF model files can also be loaded. The library includes interactive visualization with a native GUI, rendered in OpenGL.
MuJoCo can be used to implement model-based computations such as control synthesis, state estimation, system identification, mechanism design, data analysis through inverse dynamics, and parallel sampling for machine learning applications. It can also be used as a more traditional simulator, including for gaming and interactive virtual environments.
One example of robotics research that used MuJoco was the Shadow hand from OpenAI. OpenAI developed a model that enabled a single-handed solution to a Rubik’s cube. OpenAI has since abandoned robotics research altogether, but it captured the community’s attention with this research.
What DeepMind sees in MuJoCo
DeepMind wrote a blog about the acquisition, saying MuJoCo has been the “physics simulator of choice” for its robotics team. According to DeepMind, many simulators used by robotics engineers were initially designed for purposes like gaming and cinema. So they sometimes take shortcuts that prioritise stability over accuracy. DeepMind said that’s not the case with MuJoCo.
“MuJoCo is a second-order continuous-time simulator, implementing the full Equations of Motion,” it wrote. “Familiar yet non-trivial physical phenomena like Newton’s Cradle, as well as unintuitive ones like the Dzhanibekov effect, emerge naturally. Ultimately, MuJoCo closely adheres to the equations that govern our world.”
“[MuJoCo] hits a sweet spot with its contact model, which accurately and efficiently captures the salient features of contacting objects,” DeepMind continued. “Like other rigid-body simulators, it avoids the fine details of deformations at the contact site, and often runs much faster than real time. Unlike other simulators, MuJoCo resolves contact forces using the convex Gauss Principle. Convexity ensures unique solutions and well-defined inverse dynamics. The model is also flexible, providing multiple parameters which can be tuned to approximate a wide range of contact phenomena.”
DeepMind said it has been using MuJoCo as a simulation platform for various projects, mostly via its dm_control Python stack. It highlighted a few robotics examples, which you can watch via the playlist below, noting it’s only a fraction of the possibilities.