Installation¶
Setup¶
EvoRL is based on jax. So jax should be installed first, please follow JAX official installation guide.
Then install EvoRL from source:
# Install the evorl package from source
git clone https://github.com/EMI-Group/evorl.git
cd evorl
pip install -e .
RL Environments¶
By default, pip install -e . will automatically install environments on brax. If you want to install other supported environments, you need manually install the related environment packages. We provide useful extras for different environments.
# ===== GPU-accelerated Environments =====
# Mujoco playground Envs:
pip install -e ".[mujoco-playground]"
# gymnax Envs:
pip install -e ".[gymnax]"
# Jumanji Envs:
pip install -e ".[jumanji]"
# JaxMARL Envs:
pip install -e ".[jaxmarl]"
# ===== CPU-based Environments =====
# EnvPool Envs:
pip install -e ".[envpool]"
# Gymnasium Envs:
pip install -e ".[gymnasium]"
Environment Library |
Descriptions |
|---|---|
Robotic control |
|
Robotic control |
|
classic control, bsuite, MinAtar |
|
Multi-agent Envs |
|
Game, Combinatorial optimization |
|
High-performance CPU-based environments |
|
Standard CPU-based environments |
Attention
These experimental environments have limited supports, some algorithms are incompatible with them.
Attention
Users with NVIDIA Ampere architecture GPUs (e.g., RTX 30 and 40 series) may experience reproducibility issues in mujoco_playground due to JAX’s default use of TF32 for matrix multiplications. See Reproducibility / GPU Precision Issues
For CPU-based Envs, please refer to the following API References:
EnvPool:
evorl.envs.envpoolUse C++ Thread Pool, more efficient than Gymnasium.
Gymnasium:
evorl.envs.gymnasiumUse Python
multiprocessing. The most commonly used Env API.