google/brax
Massively parallel rigidbody physics simulation on accelerator hardware.
What it solves
Brax is designed to accelerate the research and development of robotics, human perception, and reinforcement learning by providing a physics engine that is fast, fully differentiable, and scalable. It eliminates the need for large datacenters by allowing massively parallel simulation on acceleration hardware (like TPUs and GPUs) on a single device or across multiple devices.
How it works
Written in JAX, Brax leverages acceleration hardware to simulate environments at millions of physics steps per second. It provides four interchangeable physics pipelines (MJX, Generalized, Positional, and Spring) that share a single API, allowing researchers to swap between different simulation methods for experiments in transfer learning.
Who it’s for
Researchers and developers working in robotics, materials science, and reinforcement learning who need high-performance, differentiable physics simulations for training agents.
Highlights
- Differentiable Physics: Supports learning algorithms that leverage the simulator's differentiability, such as analytic policy gradients.
- Massively Parallel: Scalable to millions of physics steps per second on TPU.
- Integrated Training: Includes baseline learning algorithms like PPO, SAC, ARS, and evolutionary strategies.
- Flexible Pipelines: Offers four distinct physics pipelines (including a JAX reimplementation of MuJoCo) that can be run side-by-side.
- Framework Agnostic: Can be used with other ML frameworks, including PyTorch.
Related
- Project
- Project
- Project
- Project
- Project