Available Environments¤
Jaxnasium doesn't bundle a large number of environments directly. Instead, it relies on existing work and wraps these environments in various wrappers to conform to the Jaxnasium API. This approach allows users to leverage a wide array of established environments while maintaining the performance and flexibility offered by JAX.
Native Environments¤
For convenience, the five classic control environments are natively implemented and bundled in Jaxnasium, and require no external dependencies:
CartPole-v1MountainCar-v0Acrobot-v1Pendulum-v1MountainCarContinuous-v0
External Environments using the Jaxnasium API¤
These environments run without wrappers.
TODO¤
External Environment Libraries¤
Jaxnasium integrates with the following external environment libraries through wrapper adapters.
See the end of this page for a full list of available environments.
These are not bundled as dependencies and need to be installed manually (e.g. via pip) before use.
Gymnax¤
JAX implementations of OpenAI's Gym environments, offering accelerated and parallelized rollouts. Includes classic control, bsuite, and MinAtar environments.
Jumanji¤
A suite of diverse, scalable reinforcement learning environments implemented in JAX by DeepMind. Focuses on combinatorial problems and general decision-making tasks.
Brax¤
A fast and flexible physics simulation engine for training and evaluating rigid body environments in JAX by Google.
Crax¤
A GPU-accelerated benchmark and algorithm suite for Safe RL, built as a fork of Brax.
Alongside the reward, every environment reports a cost signal in the timestep info.
The safety suites are parameterised by a difficulty level; jaxnasium defaults to the
easiest, so pass level for the harder variants:
env = jym.make("safe_lift_ant", level=3)
Playground¤
MuJoCo Playground by DeepMind: MJX-accelerated robotics environments, spanning the DM Control Suite, locomotion tasks for a range of quadrupeds and humanoids, and dexterous manipulation.
Pgx¤
JAX implementations of various board games and classic environments, including chess, Go, shogi, and more.
JaxMARL¤
Multi-agent reinforcement learning environments implemented in JAX, including MPE (Multi-Particle Environment) scenarios and other multi-agent tasks.
xMinigrid¤
JAX implementation of MiniGrid environments, including XLand variants for procedural generation research.
Navix¤
JAX implementation of navigation environments, providing various gridworld navigation tasks.
Octax¤
JAX CHIP-8 emulator environments (Brix, Pong, Tetris, and other classic games).
Craftax¤
JAX implementation of Craftax environments, inspired by Minecraft-like crafting and survival tasks.
Factoriax¤
A JAX grid world of Factorio-style crafting and logistics: mine ore, place machines, and work up a tech tree towards launching a rocket. Uses the Gymnax API.
PopJym¤
JAX implementation of POPGym, a suite of partially observable environments. Generally requires a recurrent or memory-based policy.
Usage¤
To create any of these environments, simply pass its id to jaxnasium.make:
import jaxnasium as jym
# Native environments
env = jym.make("CartPole-v1")
# External environments (requires installing the respective library)
env = jym.make("Breakout-MinAtar") # Gymnax
env = jym.make("Game2048-v1") # Jumanji
env = jym.make("ant") # Brax
env = jym.make("chess") # Pgx
env = jym.make("octax:brix") # Octax
Every id can also be given with an explicit provider prefix (e.g. gymnax:Breakout-MinAtar),
which is useful when the same name exists in more than one library.
By default, make applies the wrapper for the environment's library (translating it to the
Jaxnasium API) and a LogWrapper. Pass wrappers=[...] to control this.
jaxnasium._registry.Registry
dataclass
¤
__init__(_environments: dict[str, type[Environment]] = dict(), _aliases: dict[str, str] = dict()) -> None
¤
register(id: str, **kwargs)
¤
Register an environment with the registry.
Arguments:
id: The environment ID (e.g., "CartPole-v1")
entry_point: Optional entry point string for lazy loading
**kwargs: currently unused
register_alias(alias: str, target: str)
¤
Register an alias for an environment.
Arguments:
alias: The alias to register
target: The target environment ID
make(id: str, wrappers: list[type[Wrapper] | Literal['external_lib_wrapper']] | None = None, **env_kwargs) -> Environment
¤
Create an environment instance.
Arguments:
id: The environment ID
wrappers: List of wrappers to apply to the environment.
can also be "external_lib_wrapper" (string): Wrapper for external libraries (e.g. Gymnax, Jumanji, Brax).
only used if a environment is loaded from a supported external library.
If None provided, we wrap the external_lib_wrapper (if applicable) and LogWrapper.
**env_kwargs: Environment constructor arguments
get_env_class(id: str) -> type[Environment]
¤
Get the environment class for an environment ID.
Arguments:
id: The environment ID
registered_envs: list[str]
property
¤
List all environments in the registry as a flat list.
print_envs() -> None
¤
Pretty prints the available environments in the registry.
options: heading_level: 3 members: - make - register - register_alias - registered_envs - print_envs
Complete List of Registered Environments¤
Below is the complete list of all registered environment ids available in Jaxnasium.
Auto-generated List
This list is automatically generated from the Jaxnasium registry.
Acrobot-v1CartPole-v1MountainCarContinuous-v0MountainCar-v0Pendulum-v1gymnax:CartPole-v1gymnax:Acrobot-v1gymnax:Pendulum-v1gymnax:MountainCar-v0gymnax:MountainCarContinuous-v0gymnax:Asterix-MinAtargymnax:Breakout-MinAtargymnax:Freeway-MinAtargymnax:SpaceInvaders-MinAtargymnax:DeepSea-bsuitegymnax:Catch-bsuitegymnax:MemoryChain-bsuitegymnax:UmbrellaChain-bsuitegymnax:DiscountingChain-bsuitegymnax:MNISTBandit-bsuitegymnax:SimpleBandit-bsuitegymnax:FourRooms-miscgymnax:MetaMaze-miscgymnax:PointRobot-miscgymnax:BernoulliBandit-miscgymnax:GaussianBandit-miscgymnax:Reacher-miscgymnax:Swimmer-miscgymnax:Pong-miscjumanji:Game2048-v1jumanji:GraphColoring-v1jumanji:Minesweeper-v0jumanji:RubiksCube-v0jumanji:RubiksCube-partly-scrambled-v0jumanji:SlidingTilePuzzle-v0jumanji:Sudoku-v0jumanji:Sudoku-very-easy-v0jumanji:BinPack-v2jumanji:FlatPack-v0jumanji:JobShop-v0jumanji:Knapsack-v1jumanji:Tetris-v0jumanji:Cleaner-v0jumanji:Connector-v3jumanji:CVRP-v1jumanji:MultiCVRP-v0jumanji:Maze-v0jumanji:RobotWarehouse-v0jumanji:Snake-v1jumanji:TSP-v1jumanji:MMST-v0jumanji:PacMan-v1jumanji:Sokoban-v0jumanji:LevelBasedForaging-v0jumanji:SearchAndRescue-v0brax:antbrax:halfcheetahbrax:hopperbrax:humanoidbrax:humanoidstandupbrax:inverted_pendulumbrax:inverted_double_pendulumbrax:pusherbrax:reacherbrax:walker2dcrax:safe_button_pointcrax:safe_circle_pointcrax:safe_goal_pointcrax:safe_height_humanoidcrax:safe_lift_antcrax:safe_lift_humanoidcrax:safe_lift_spidercrax:safe_pathway_walker2dcrax:safe_push_pointcrax:safe_reachercrax:safe_velocity_antcrax:safe_velocity_halfcheetahcrax:safe_velocity_humanoidcrax:safe_velocity_hoppercrax:safe_velocity_swimmercrax:safe_velocity_walker2dpgx:2048pgx:animal_shogipgx:backgammonpgx:chesspgx:connect_fourpgx:gardner_chesspgx:go_9x9pgx:go_19x19pgx:hexpgx:kuhn_pokerpgx:leduc_holdempgx:minatar-asterixpgx:minatar-breakoutpgx:minatar-freewaypgx:minatar-seaquestpgx:minatar-space_invaderspgx:othellopgx:shogipgx:sparrow_mahjongpgx:tic_tac_toejaxmarl:MPE_simple_v3jaxmarl:MPE_simple_tag_v3jaxmarl:MPE_simple_world_comm_v3jaxmarl:MPE_simple_spread_v3jaxmarl:MPE_simple_crypto_v3jaxmarl:MPE_simple_speaker_listener_v4jaxmarl:MPE_simple_push_v3jaxmarl:MPE_simple_adversary_v3jaxmarl:MPE_simple_reference_v3jaxmarl:MPE_simple_facmac_v1jaxmarl:MPE_simple_facmac_3a_v1jaxmarl:MPE_simple_facmac_6a_v1jaxmarl:MPE_simple_facmac_9a_v1jaxmarl:switch_riddlejaxmarl:SMAXjaxmarl:HeuristicEnemySMAXjaxmarl:ant_4x2jaxmarl:halfcheetah_6x1jaxmarl:hopper_3x1jaxmarl:humanoid_9|8jaxmarl:walker2d_2x3jaxmarl:stormjaxmarl:storm_2pjaxmarl:storm_npjaxmarl:hanabijaxmarl:overcookedjaxmarl:overcooked_v2jaxmarl:coin_gamejaxmarl:jaxnavxminigrid:XLand-MiniGrid-R1-9x9xminigrid:XLand-MiniGrid-R1-11x11xminigrid:XLand-MiniGrid-R1-13x13xminigrid:XLand-MiniGrid-R1-15x15xminigrid:XLand-MiniGrid-R1-17x17xminigrid:XLand-MiniGrid-R2-9x9xminigrid:XLand-MiniGrid-R2-11x11xminigrid:XLand-MiniGrid-R2-13x13xminigrid:XLand-MiniGrid-R2-15x15xminigrid:XLand-MiniGrid-R2-17x17xminigrid:XLand-MiniGrid-R4-9x9xminigrid:XLand-MiniGrid-R4-11x11xminigrid:XLand-MiniGrid-R4-13x13xminigrid:XLand-MiniGrid-R4-15x15xminigrid:XLand-MiniGrid-R4-17x17xminigrid:XLand-MiniGrid-R6-13x13xminigrid:XLand-MiniGrid-R6-17x17xminigrid:XLand-MiniGrid-R6-19x19xminigrid:XLand-MiniGrid-R9-16x16xminigrid:XLand-MiniGrid-R9-19x19xminigrid:XLand-MiniGrid-R9-25x25xminigrid:MiniGrid-BlockedUnlockPickUpxminigrid:MiniGrid-DoorKey-5x5xminigrid:MiniGrid-DoorKey-6x6xminigrid:MiniGrid-DoorKey-8x8xminigrid:MiniGrid-DoorKey-16x16xminigrid:MiniGrid-Empty-5x5xminigrid:MiniGrid-Empty-6x6xminigrid:MiniGrid-Empty-8x8xminigrid:MiniGrid-Empty-16x16xminigrid:MiniGrid-EmptyRandom-5x5xminigrid:MiniGrid-EmptyRandom-6x6xminigrid:MiniGrid-EmptyRandom-8x8xminigrid:MiniGrid-EmptyRandom-16x16xminigrid:MiniGrid-FourRoomsxminigrid:MiniGrid-LockedRoomxminigrid:MiniGrid-MemoryS8xminigrid:MiniGrid-MemoryS16xminigrid:MiniGrid-MemoryS32xminigrid:MiniGrid-MemoryS64xminigrid:MiniGrid-MemoryS128xminigrid:MiniGrid-Playgroundxminigrid:MiniGrid-Unlockxminigrid:MiniGrid-UnlockPickUpnavix:Navix-Empty-5x5-v0navix:Navix-Empty-6x6-v0navix:Navix-Empty-8x8-v0navix:Navix-Empty-16x16-v0navix:Navix-Empty-Random-5x5-v0navix:Navix-Empty-Random-6x6-v0navix:Navix-Empty-Random-8x8-v0navix:Navix-Empty-Random-16x16-v0navix:Navix-DoorKey-5x5-v0navix:Navix-DoorKey-6x6-v0navix:Navix-DoorKey-8x8-v0navix:Navix-DoorKey-16x16-v0navix:Navix-DoorKey-Random-5x5-v0navix:Navix-DoorKey-Random-6x6-v0navix:Navix-DoorKey-Random-8x8-v0navix:Navix-DoorKey-Random-16x16-v0navix:Navix-FourRooms-v0navix:Navix-KeyCorridorS3R1-v0navix:Navix-KeyCorridorS3R2-v0navix:Navix-KeyCorridorS3R3-v0navix:Navix-KeyCorridorS4R3-v0navix:Navix-KeyCorridorS5R3-v0navix:Navix-KeyCorridorS6R3-v0navix:Navix-LavaGapS5-v0navix:Navix-LavaGapS6-v0navix:Navix-LavaGapS7-v0navix:Navix-SimpleCrossingS9N1-v0navix:Navix-SimpleCrossingS9N2-v0navix:Navix-SimpleCrossingS9N3-v0navix:Navix-SimpleCrossingS11N5-v0navix:Navix-Dynamic-Obstacles-5x5-v0navix:Navix-Dynamic-Obstacles-5x5-Random-v0navix:Navix-Dynamic-Obstacles-6x6-v0navix:Navix-Dynamic-Obstacles-6x6-Random-v0navix:Navix-Dynamic-Obstacles-8x8-v0navix:Navix-Dynamic-Obstacles-16x16-v0navix:Navix-DistShift1-v0navix:Navix-DistShift2-v0navix:Navix-GoToDoor-5x5-v0navix:Navix-GoToDoor-6x6-v0navix:Navix-GoToDoor-8x8-v0octax:airplaneoctax:blinkyoctax:brixoctax:cavern1octax:cavern2octax:cavern3octax:cavern5octax:cavern6octax:deepoctax:filteroctax:flight_runneroctax:missileoctax:pongoctax:rocketoctax:shooting_starsoctax:space_flight1octax:space_flight2octax:space_flight3octax:space_flight4octax:space_flight5octax:space_flight6octax:space_flight7octax:space_flight8octax:space_flight9octax:space_flight10octax:spacejamoctax:squashoctax:submarineoctax:tankoctax:target_shooter1octax:target_shooter2octax:target_shooter3octax:tetrisoctax:ufooctax:vertical_brixoctax:wipe_offoctax:wormoctax:cavern1octax:space_flight1octax:target_shooter1craftax:Craftax-Classic-Symbolic-v1craftax:Craftax-Classic-Pixels-v1craftax:Craftax-Symbolic-v1craftax:Craftax-Pixels-v1factoriax:MinerBootstrap-v1factoriax:EasyRocket-v1factoriax:Rocket-v1popjym:NoisyStatelessMetaCartPolepopjym:AutoencodeEasypopjym:AutoencodeMediumpopjym:AutoencodeHardpopjym:BattleshipEasypopjym:BattleshipMediumpopjym:BattleshipHardpopjym:ConcentrationEasypopjym:ConcentrationMediumpopjym:ConcentrationHardpopjym:CountRecallEasypopjym:CountRecallMediumpopjym:CountRecallHardpopjym:HigherLowerEasypopjym:HigherLowerMediumpopjym:HigherLowerHardpopjym:MinesweeperEasypopjym:MinesweeperMediumpopjym:MinesweeperHardpopjym:MultiArmedBanditEasypopjym:MultiArmedBanditMediumpopjym:MultiArmedBanditHardpopjym:StatelessCartPoleEasypopjym:StatelessCartPoleMediumpopjym:StatelessCartPoleHardpopjym:NoisyStatelessCartPoleEasypopjym:NoisyStatelessCartPoleMediumpopjym:NoisyStatelessCartPoleHardpopjym:StatelessPendulumEasypopjym:StatelessPendulumMediumpopjym:StatelessPendulumHardpopjym:NoisyStatelessPendulumEasypopjym:NoisyStatelessPendulumMediumpopjym:NoisyStatelessPendulumHardpopjym:RepeatFirstEasypopjym:RepeatFirstMediumpopjym:RepeatFirstHardpopjym:RepeatPreviousEasypopjym:RepeatPreviousMediumpopjym:RepeatPreviousHardplayground:AcrobotSwingupplayground:AcrobotSwingupSparseplayground:BallInCupplayground:CartpoleBalanceplayground:CartpoleBalanceSparseplayground:CartpoleSwingupplayground:CartpoleSwingupSparseplayground:CheetahRunplayground:FingerSpinplayground:FingerTurnEasyplayground:FingerTurnHardplayground:FishSwimplayground:HopperHopplayground:HopperStandplayground:HumanoidStandplayground:HumanoidWalkplayground:HumanoidRunplayground:PendulumSwingupplayground:PointMassplayground:SwimmerSwimmer6playground:WalkerRunplayground:WalkerStandplayground:WalkerWalkplayground:ApolloJoystickFlatTerrainplayground:BarkourJoystickplayground:BerkeleyHumanoidJoystickFlatTerrainplayground:BerkeleyHumanoidJoystickRoughTerrainplayground:G1JoystickFlatTerrainplayground:G1JoystickRoughTerrainplayground:Go1JoystickFlatTerrainplayground:Go1JoystickRoughTerrainplayground:Go1Getupplayground:Go1Handstandplayground:Go1Footstandplayground:H1InplaceGaitTrackingplayground:H1JoystickGaitTrackingplayground:Op3Joystickplayground:SpotFlatTerrainJoystickplayground:SpotGetupplayground:SpotJoystickGaitTrackingplayground:T1JoystickFlatTerrainplayground:T1JoystickRoughTerrainplayground:AlohaHandOverplayground:AlohaSinglePegInsertionplayground:PandaPickCubeplayground:PandaPickCubeOrientationplayground:PandaOpenCabinetplayground:LeapCubeReorientplayground:LeapCubeRotateZAxisplayground:AeroCubeRotateZAxiskinetix:skinetix:random-skinetix:mkinetix:random-mkinetix:lkinetix:random-l