Simulador de cuadricópteros basado en JAX que ejecuta simulaciones diferenciables por lotes en CPU y GPU para drones Crazyflie 2.x.
google/brax
Motor de física de cuerpos rígidos basado en JAX que ejecuta simulaciones diferenciables y masivamente paralelas en aceleradores para investigación en robótica y RL.
Alternativa open source a:MuJoCo
- Estrellas
- 3,256
- Forks
- 359
- Issues abiertos
- 117
- Último commit
- hace 18 días
¿Qué es?
Brax es un motor de física escrito en JAX y diseñado para hardware acelerador como GPU y TPU. Está orientado a la investigación en robótica, aprendizaje por refuerzo, percepción humana y ciencia de materiales, y puede escalar las simulaciones entre varios dispositivos.
Ofrece cuatro pipelines de física intercambiables a través de una sola API: MJX, una reimplementación de MuJoCo en JAX; un pipeline de coordenadas generalizadas; un pipeline de Position Based Dynamics; y un pipeline ligero de resortes basado en impulsos. El proyecto también incluye algoritmos de entrenamiento como PPO, SAC, ARS, estrategias evolutivas y gradientes analíticos de políticas, que aprovechan la diferenciabilidad del simulador.
El repositorio está en transición hacia el modo de mantenimiento: a partir de la versión 0.13.0, solo brax/training recibe mantenimiento activo, y el proyecto recomienda MuJoCo Playground y MJX o MuJoCo Warp para las simulaciones de física.
Funciones clave
- 01Ejecuta simulaciones de cuerpos rígidos con JAX en GPU y TPU, y escala entre varios dispositivos.
- 02Ofrece cuatro pipelines de física intercambiables (MJX, coordenadas generalizadas, posicional y de resortes) mediante una sola API.
- 03Incluye PPO, SAC, ARS, estrategias evolutivas y gradientes analíticos de políticas para el entrenamiento.
- 04Admite simulaciones diferenciables para que los gradientes puedan propagarse a través de los pasos de física.
- 05Ofrece notebooks de Colab sobre conceptos básicos, entrenamiento, MJX e integración con PyTorch.
Casos de uso
- Entrenar políticas de locomoción o manipulación para robots simulados mediante aprendizaje por refuerzo.
- Ejecutar grandes lotes de simulaciones de física en paralelo en hardware acelerador.
- Experimentar con física diferenciable y métodos de gradientes analíticos de políticas.
- Usar un simulador como entorno de entrenamiento dentro de PyTorch u otros frameworks de ML.
Inicio rápido
- 1
Crear y activar un entorno virtual
python3 -m venv env && source env/bin/activate - 2
Actualizar pip
pip install --upgrade pip - 3
Instalar Brax desde PyPI
pip install brax - 4
Entrenar un modelo
learn
Antes de usarlo
- Solo brax/training se mantiene activamente; brax/envs ha sido sustituido por MuJoCo Playground.
- Para entrenar en una GPU NVIDIA, es necesario instalar por separado CUDA, cuDNN y JAX con soporte para GPU.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es brax?
- Motor de física de cuerpos rígidos basado en JAX que ejecuta simulaciones diferenciables y masivamente paralelas en aceleradores para investigación en robótica y RL. Brax es un motor de física escrito en JAX y diseñado para hardware acelerador como GPU y TPU. Está orientado a la investigación en robótica, aprendizaje por refuerzo, percepción humana y ciencia de materiales, y puede escalar las simulaciones entre varios dispositivos.
- ¿brax es gratuito? ¿Qué licencia tiene?
- brax es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿brax sigue mantenido?
- Mantenimiento activo. El último commit de brax fue el 20 oct 2026.
- ¿Para qué puedo usar brax?
- Entrenar políticas de locomoción o manipulación para robots simulados mediante aprendizaje por refuerzo. Ejecutar grandes lotes de simulaciones de física en paralelo en hardware acelerador. Experimentar con física diferenciable y métodos de gradientes analíticos de políticas. Usar un simulador como entorno de entrenamiento dentro de PyTorch u otros frameworks de ML.
- ¿Cómo se instala brax?
- Crear y activar un entorno virtual: python3 -m venv env && source env/bin/activate Actualizar pip: pip install --upgrade pip Instalar Brax desde PyPI: pip install brax Entrenar un modelo: learn
- ¿Dónde consigo brax?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/google/brax
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Framework de Python que compila funciones Python comunes con JIT para convertirlas en kernels que se ejecutan en CPU o GPU NVIDIA, para simulación, robótica y ML.
Biblioteca de multiphysics en C++ para simular sistemas multicuerpo rígidos y flexibles, medios granulares, interacción fluido-sólido, vehículos y robots.
Framework de simulación a gran escala, basado en robosuite, para entrenar y evaluar robots generalistas en tareas cotidianas de cocina.
Benchmark de aprendizaje por imitación para el control de cuerpo completo, con entornos MuJoCo y MJX para humanoides, cuadrúpedos y modelos musculoesqueléticos humanos.
Versión del simulador de física MuJoCo acelerada por GPU y basada en NVIDIA Warp, para simulaciones de robótica de alto rendimiento.