Procgen
We use procgen==0.10.7 as the codebase.
See https://github.com/openai/procgen/tree/0.10.7
Note
Procgen links against Qt 5. Linux wheels do not vendor the Qt runtime; if
making a Procgen environment reports missing libQt5Core.so.5 or
libQt5Gui.so.5, install the system Qt 5 runtime, for example with
apt install qtbase5-dev or dnf install qt5-qtbase.
Render Compare
Representative first-frame compares for Procgen tasks that support rendering. In each panel, EnvPool is on the left and the exact channel-last observation oracle used by the test suite is on the right.
Options
task_id (str): see available tasks below;num_envs (int): how many environments you would like to create;batch_size (int): the expected batch size for return result, default tonum_envs;num_threads (int): the maximum thread number for executing the actualenv.step, default tobatch_size;seed (int | Sequence[int]): the environment seed. When a sequence is provided, it must contain exactly one seed per environment. Default to42;max_episode_steps (int): the maximum number of steps for one episode, each procgen game has different timeout value;channel_first (bool): whether to transpose the observation image to(3, 64, 64), default toTrue;env_name (str): one of 16 procgen env name;num_levels (int): default to0;start_level (int): default to0;use_sequential_levels (bool): default toFalse;center_agent (bool): default toTrue;use_backgrounds (bool): default toTrue;use_monochrome_assets (bool): default toFalse;restrict_themes (bool): default toFalse;use_generated_assets (bool): default toFalse;paint_vel_info (bool): default toFalse;use_easy_jump (bool): default toFalse;distribution_mode (int): one of(0, 1, 2, 10, 20);0stands for easy mode,1stands for hard mode,2stands for extreme mode,10stands for memory mode, and20stands for exploration mode. Exploration mode follows Procgen’s Python wrapper behavior: it uses hard mode levels, overridesnum_levelsto1, and overridesstart_levelto a game-specific exploration seed. The default value is determined bytask_id.
Note: arguments after env_name are provided by procgen environment itself.
We keep the default value as-is. We haven’t tested the setting of
use_sequential_levels == True, and have no promise it is aligned with the
original version of procgen (PRs for fixing this issue are highly welcome).
Observation Space
The observation image shape is (3, 64, 64) when channel_first is
True (default), (64, 64, 3) when channel_first is False.
Action Space
15 action buttons in total, ranging from 0 to 14.
Available Tasks
BigfishEasy-v0BigfishHard-v0BossfightEasy-v0BossfightHard-v0CaveflyerEasy-v0CaveflyerHard-v0CaveflyerMemory-v0CaveflyerExploration-v0ChaserEasy-v0ChaserHard-v0ChaserExtreme-v0ClimberEasy-v0ClimberHard-v0ClimberExploration-v0CoinrunEasy-v0CoinrunHard-v0CoinrunExploration-v0DodgeballEasy-v0DodgeballHard-v0DodgeballExtreme-v0DodgeballMemory-v0FruitbotEasy-v0FruitbotHard-v0HeistEasy-v0HeistHard-v0HeistMemory-v0HeistExploration-v0JumperEasy-v0JumperHard-v0JumperMemory-v0JumperExploration-v0LeaperEasy-v0LeaperHard-v0LeaperExtreme-v0LeaperExploration-v0MazeEasy-v0MazeHard-v0MazeMemory-v0MazeExploration-v0MinerEasy-v0MinerHard-v0MinerMemory-v0NinjaEasy-v0NinjaHard-v0NinjaExploration-v0PlunderEasy-v0PlunderHard-v0StarpilotEasy-v0StarpilotHard-v0StarpilotExtreme-v0