This is a refactor of collision_driver and some of its surrounding code in order to prepare for condim in MJX. In this change we reify types that are needed for condim: dim, efc_address, efc_type. We make explicit the way contacts are organized and grouped to guarantee that dim and efc_type are statically defined. This change simplifies the way meshes are organized on device and slightly speeds up mesh collisions for cases where a single mesh is instanced across many geoms. PiperOrigin-RevId: 626119500 Change-Id: Ic0c8599bcda2326f2e19cd3246a673e56097886b
MuJoCo XLA (MJX)
This package is a re-implementation of the MuJoCo physics engine in JAX. This library is developed and maintained by Google DeepMind, and is kept up-to-date with the latest developments in MuJoCo itself.
The mujoco-mjx package is API-compatible with MuJoCo, but is missing some
features found in MuJoCo. See our
documentation for more
details concerning feature parity.
Installation
The recommended way to install this package is via PyPI:
pip install mujoco-mjx
Usage
Once installed, the package can be imported via from mujoco import mjx. Please
consult our documentation
for further detail on the package's API.
We recommend going through the tutorial notebook which introduces the MJX API
and trains a reinforcement learning policy in a few minutes:
Versioning
The major.minor.micro portion of the version number matches the version of
MuJoCo that this library provides. Optionally, if we release updates to MJX that
target the same version of MuJoCo, a .postN suffix is added, for example
3.0.1.post2 represents the second update to MJX for MuJoCo 3.0.1.
License and Disclaimer
Copyright 2023 DeepMind Technologies Limited
MuJoCo and its libraries are licensed under the Apache License, Version 2.0. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0.
This is not an officially supported Google product.