Repolode
Farama-Foundation

Farama-Foundation/PettingZoo

Gymnasiumと同様の標準APIと参照環境を提供する、マルチエージェント強化学習研究向けのPythonライブラリです。

スター
3,551
フォーク
555
未解決の Issue
70
最終コミット
7 日前

これは何?

PettingZooは、マルチエージェント強化学習研究向けのPythonライブラリです。シングルエージェント向けのGymnasiumと同じ役割をマルチエージェント環境で担います。各環境で共通のインターフェースを使えるため、研究者はアルゴリズムを一度実装すれば、さまざまなタスクで実行できます。

環境はAgent Environment Cycle(AEC)ゲームとしてモデル化されており、1つのAPIでターン制と同時行動の両方に対応します。エージェントが同時に行動するゲーム向けには、補完的なParallel APIも用意されています。マルチプレイヤー対応のAtari 2600ゲーム、協力型のグラフィカルゲーム、定番のカードゲームやボードゲーム、協力型SISLタスク群など、複数の環境ファミリーが含まれています。

基本パッケージはpipでインストールでき、pettingzoo[atari]のようにファミリーごとのextrasを指定すると、オプションの依存関係を追加できます。公式サポート対象はLinuxとmacOSです。関連ライブラリのSuperSuitは、PettingZooおよびGymnasiumの環境向けに一般的なRLラッパーを提供します。また、チュートリアルではCleanRL、Tianshou、AgileRLを使った学習方法を紹介しています。

主な機能

  • 01AECゲームを基盤とするマルチエージェント環境向け標準API
  • 02エージェントが同時に行動するゲーム向けParallel API
  • 03Atari、協力型グラフィカルゲーム、定番ゲーム、SISLタスクを網羅する環境ファミリー
  • 04Gymnasiumと同様のreset、step、iterationインターフェース
  • 05pip extrasによる環境ファミリーごとのオプションインストール

ユースケース

  • 共通の環境セットでマルチエージェントRLアルゴリズムをベンチマークする
  • 協力型または競争型のエージェント学習を試作する
  • 標準インターフェースに基づいて独自のマルチエージェント環境を構築する
  • PettingZooのタスクでCleanRL、Tianshou、AgileRLを使ってエージェントを学習させる

クイックスタート

  1. 1

    PettingZoo の基本ライブラリをインストールする

    pip install pettingzoo
  2. 2

    1つの環境ファミリー(例:Atari)の依存関係をインストールする

    pip install 'pettingzoo[atari]'
  3. 3

    環境を作成し、ランダムなアクションを実行するループを動かす

使う前に知っておきたいこと

  • 公式サポート対象は Linux と macOS のみです。Windows は公式にはサポートされていません。
  • 環境ファミリーによっては、一部のシステムへのインストールが難しい場合があります。

収録されている特集

トピック

#reinforcement-learning#multi-agent#gymnasium#python#simulation#research#api#multi-agent-reinforcement-learning#multiagent-reinforcement-learning

よくある質問

PettingZoo とは?
Gymnasiumと同様の標準APIと参照環境を提供する、マルチエージェント強化学習研究向けのPythonライブラリです。 PettingZooは、マルチエージェント強化学習研究向けのPythonライブラリです。シングルエージェント向けのGymnasiumと同じ役割をマルチエージェント環境で担います。各環境で共通のインターフェースを使えるため、研究者はアルゴリズムを一度実装すれば、さまざまなタスクで実行できます。
PettingZoo は無料で使えますか?ライセンスは?
PettingZoo は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
PettingZoo は今もメンテナンスされていますか?
活発にメンテナンス中。PettingZoo の最終コミットは 2026年10月30日 です。
PettingZoo は何に使えますか?
共通の環境セットでマルチエージェントRLアルゴリズムをベンチマークする 協力型または競争型のエージェント学習を試作する 標準インターフェースに基づいて独自のマルチエージェント環境を構築する PettingZooのタスクでCleanRL、Tianshou、AgileRLを使ってエージェントを学習させる
PettingZoo のインストール方法は?
PettingZoo の基本ライブラリをインストールする: pip install pettingzoo 1つの環境ファミリー(例:Atari)の依存関係をインストールする: pip install 'pettingzoo[atari]' 環境を作成し、ランダムなアクションを実行するループを動かす
PettingZoo はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/Farama-Foundation/PettingZoo

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト