OpenAI gym

OpenAI Gymを試してみる [インストール編]

はじめに

OpenAI Gymは、強化学習アルゴリズムを開発、比較するためのツールキットです。

OpenAI Gumには、environmentsと呼ばれるテスト問題のライブラリがあります。強化学習の開発者は、このライブラリを利用することで、対象の問題やゲームのロジックを開発する必要がなくなり、強化学習のみの開発に集中することができます。

OpenAI Gymはpipコマンドで簡単にインストールすることができます。しかし、導入する環境のPythonのバージョンが古かったり、他の検証などで利用している場合、Pythonやライブラリのバージョンを変更しなければなりません。
本記事では、OpenAI Gymを独立した環境で検証するために、pyenvvenvを利用してインストールする方法を紹介します。

この記事を読んで、できること

pyenvvenvを利用したPythonの仮想環境にOpenAI Gymをインストールすることができるようになります。

検証環境

  • macOS Catalina 10.15.3
  • MacBook Pro (13-inch, 2017, Core i5 2.3GHz, 8GB Mem)

OpenAI Gymのインストール

OpenAI GymはPythonで作成されています。Python3.5以上の環境が必要なります。OpenAI Gymをインストールするための大まかな手順は、以下の通りです。

  1. pyenvをインストールする
  2. pyenvで新しいPython環境を作る
  3. venvで仮想環境を作る
  4. OpenAI Gymをインストールする

pyenvで新しいPython環境を作る

すでにあるPython環境のバージョンと競合を起こさないように、pyenvで新しいPython環境を作ります。

はじめにPythonのバージョン管理をするpyenvをインストールします。ここではmacOSのパッケージマネージャであるHomebrewを使ってpyenvをインストールします。

% brew update% brew install pyenv

pyenvをインストールしただけでは、pythonコマンドのパスはOSデフォルトのパスを示したままになっています。

% which python
/usr/bin/python

pyenv initコマンドをユーザーのシェルで実行することで、pythonコマンドのパス変更とシェル補完を有効にすることができます。
今回ユーザのデフォルトシェルはzshなので、~/.zshrcに設定を行います。

% echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshrc
% source ~/.zshrc

もう一度、pythonコマンドのパスを確認してみます。

% which python
/Users/XXXX/.pyenv/shims/python

pyenvが制御するパスに変更されました。

pyenvのインストールが終わったら、Pythonをインストールします。OpenAI GymはPython3.6以上のバージョンが必要です。ここではPython3.8.2をインストールしました。

% pyenv install 3.8.2

Pythonのインストールが完了したら、OpenAI Gymのプロジェクトディレクトリを作成します。

% mkdir Gym

プロジェクトディレクトリに移動して、pyenvで利用するPythonのバージョンを設定します。

% cd Gym
% pyenv local 3.8.2

Pythonのバージョンが正しく設定されたか、確認をしておきましょう。

% pyenv version
3.8.2 (set by /Users/XXXX/Projects/Gym/.python-version)
% python --version
Python 3.8.2


正しいバージョンを利用するように設定されました!

venvで仮想環境を作成する

OpenAI Gymはpipコマンドでインストールをすることができます。既存のPythonパッケージとの競合やバージョンの不一致を避けるために、OpenAI Gym用の仮想環境を作成します。仮想環境はvenvで作ります。
プロジェクトディレクトリでvenvコマンドを実行します。

% python -m venv env/gym

仮想環境を有効にするためにアクティベートを行います。

% source env/gym/bin/activate

アクティベートをすると、プロンプトの先頭に仮想環境名が追加されます。

(gym) %

OpenAI Gymをインストールする

OpenAI Gymをpipコマンドでインストールします。

(gym) % pip install gym

インストールされたパッケージを確認しておきます。

% pip freeze
cloudpickle==1.3.0
future==0.18.2
gym==0.17.1
numpy==1.18.2
pyglet==1.5.0
scipy==1.4.1
six==1.14.0

以上でOpenAI Gymのインストールは完了です。

おわりに

OpenAI Gymは、強化学習のアルゴリズムを開発、比較をするためのツールキットです。本記事では、macOSにOpenAI Gymをインストールする方法を紹介しました。

  1. pyenvでPythonのバージョン管理を行う。
  2. venvでPythonの仮想環境を作成する。
  3. pipでOpenAI Gymをインストールする。

OpenAI Gymはpipでインストールするだけなので、とても簡単に導入することができます。