procgen  by openai

Procedurally-generated Gym environments for RL generalization research

created 5 years ago
1,090 stars

Top 35.5% on sourcepulse

GitHubView on GitHub
Project Summary

The Procgen Benchmark provides 16 procedurally-generated, game-like Gym environments designed to measure the generalization capabilities of reinforcement learning agents. It offers a faster and more randomized alternative to Gym Retro, enabling rapid skill acquisition benchmarking.

How It Works

The environments are built using C++ for high performance, achieving thousands of steps per second on a single CPU core. They generate diverse levels on-the-fly, preventing agents from memorizing fixed sequences. Observations are 64x64 RGB pixel arrays, and actions are discrete button combinations.

Quick Start & Requirements

  • Install via pip: pip install procgen
  • Requires Python 3.7-3.10 (64-bit) and CPUs with AVX.
  • Interactive testing: python -m procgen.interactive --env-name coinrun
  • Docker images are available for basic setups.

Highlighted Details

  • 16 distinct environments with unique gameplay mechanics.
  • Customizable via source build for creating new environments.
  • Supports Gym and Gym3 (vectorized) interfaces.
  • Environment options include difficulty modes ("easy", "hard", "extreme", "memory", "exploration") and asset customization.

Maintenance & Community

The project is in maintenance mode, expecting bug fixes and minor updates. Contribution guidelines are available.

Licensing & Compatibility

The project is licensed under the MIT License, permitting commercial use and integration with closed-source projects.

Limitations & Caveats

Some environments have known issues where agents can spawn in unwinnable states or die immediately, which are intentionally left unfixed for reproducibility. The library is not fork-safe unless num_threads=0 is set, and Qt is not guaranteed to be fork-safe. GPU acceleration is not utilized.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
22 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.