Source code for world_models.envs.ale_atari_env

from typing import Any, Optional
import gymnasium as gym
import ale_py

gym.register_envs(ale_py)


[docs] def make_atari_env( env_id: str, obs_type: str = "rgb", frameskip: int = 4, repeat_action_probability: float = 0.25, full_action_space: bool = False, max_episode_steps: Optional[int] = None, **kwargs: Any, ) -> gym.Env: """ Create any Atari environment from Arcadic Learning Environment (ALE). Args: env_id (str): The id of the Atari environment to create. obs_type (str): The type of observation to return ("rgb" or "ram"). frameskip (int): The number of frames to skip between actions. repeat_action_probability (float): The probability of repeating the last action. full_action_space (bool): Whether to use the full action space. max_episode_steps (Optional[int]): Maximum number of steps per episode. **kwargs: Additional keyword arguments for environment configuration. Returns: gym.Env: The created Atari environment. """ return gym.make( env_id, obs_type=obs_type, frameskip=frameskip, repeat_action_probability=repeat_action_probability, full_action_space=full_action_space, max_episode_steps=max_episode_steps, **kwargs, )
[docs] def list_available_atari_envs() -> list[str]: """ Get a list of all available Atari environments in Arcadic Learning Environment (ALE). Returns: list[str]: List of available Atari environment IDs. """ all_envs = list(gym.envs.registry.keys()) atari_envs = [env for env in all_envs if env.startswith("ALE/")] return sorted(atari_envs)