kerneltyu’s tech blog

理系学生です.

DeepMindLabのインストール

1年ぶりの投稿になります。お久しぶりです。

インストールで詰まったときの解決策ばかりになるような気もしますが、自分でも見返すんでどんどんメモっていこうと思います。

3年前くらいに強化学習の環境のプラットフォームがどんどん公開されていたときにGoogleDeepMindが公開した強化学習用のプラットフォームのDeepMindLabをインストールしたときに詰まったところをメモしておきます。

DeepMindLabのGitHubこちら

基本的にはREADMEに従えばインストールできます。ちなみにUbuntuにしか対応していません。Macは明示されていませんが使えるらしい。Branchにmacosっていうのがありますね。ただ、自分のMacではうまく行かなかったような気がします。

環境

まずは自分のPC環境はUbuntu LTS 18.04です。Pythonは3.7を使いました。

手順

Bazelのインストール

はじめにビルドツールはBazelを使うので、Bazelをインストールします。

docs.bazel.build

Ubuntuの項目を見て手順に従うと、(他のOSの方はそのOSにあった手順に従ってください。) はじめに、パッケージのダウンロード元をaptに追加する。

$ sudo apt install curl
$ curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
$ echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list

次に、

$ sudo apt update && sudo apt install bazel

インストールをします。 最後に、JDKをインストールします。これは任意です。Javaのコードをビルドしたいときだけです。今回必要無いかと思いますが、一応。

$ sudo apt install openjdk-8-jdk

これでBazelのインストールは終わりです。

DeepMindLabのインストール

次にDeepMindLabのインストールです。git cloneで落としてきます。

$ git clone https://github.com/deepmind/lab.git

これでbazelコマンドを使って、実行すると...

$ cd lab
$ bazel run :python_random_agent --define graphics=sdl -- \
               --length=10000 --width=640 --height=480

下記のメッセージが出て、実行できませんでした。

No package 'libffi' found
中略
FAILED: Build did NOT complete successfully
FAILED: Build did NOT complete successfully

どうやらlibffiが無いとのこと、なのでlibffiをインストールしましょう。 いくつか探していると。

$ apt-get install libffi-dev

でインストールできるとのこと(意外とここに時間がかかった)。インストールして実行すると....

$ bazel run :python_random_agent --define graphics=sdl -- \
               --length=10000 --width=640 --height=480

f:id:kerneltyu:20191204181414p:plain

実行できました!!ランダムエージェントなのでメチャクチャな動きしてます、、、、

これでやっとDeepMindLabで遊べますね〜

追記

なかなか良いレポジトリを発見しました。 ここのWikiの手順通りに進めればよさげ。 github.com