vwxyzjn/cleanrl

High-quality single file implementation of Deep Reinforcement Learning algorithms with research-friendly features (PPO, DQN, C51, DDPG, TD3, SAC, PPG)

What it solves

CleanRL は、モジュール化された深層強化学習(DRL)ライブラリの複雑さと不透明さに対処します。多くの RL ライブラリは高度な抽象化とサブクラス化を行っており、研究者がアルゴリズムの正確な実装詳細を把握したり、深いファイル階層を辿らずに新機能をプロトタイプしたりするのが困難です。

How it works

モジュラーアーキテクチャではなく、CleanRL は DRL アルゴリズムの高品質な単一ファイル実装を提供します。特定のアルゴリズムバリアントのすべての詳細が、スタンドアロンの Python ファイル一つに収められています。このアプローチはコード再利用よりも可読性と透明性を優先し、ユーザーが複数モジュールを行き来することなくアルゴリズムの実装を正確に確認できます。

Who it’s for

RL アルゴリズムの内部動作を理解したい、または標準的なモジュラーライブラリではサポートされていない高度な機能をプロトタイプしたい研究者や開発者向けに設計されています。

Highlights

  • Single-file implementation: 各アルゴリズムバリアントが単一ファイルに収められ、読みやすくデバッグしやすい。
  • Benchmarked results: 7 以上のアルゴリズムを 34 以上のゲームでベンチマークした結果を含む。
  • Experiment tracking: Tensorboard と Weights and Biases と統合し、ログと管理を実現。
  • Cloud ready: Docker と AWS Batch をサポートし、実験を数千回の実行にスケール可能。
  • Broad algorithm support: PPO、DQN、C51、SAC、DDPG、TD3、PPG、RND を実装。