LoginSignup
10
2

More than 3 years have passed since last update.

Animal AI Olympicsの環境を触ってみる

Last updated at Posted at 2019-09-12

基本情報

トップページ動画があるが、このタスクを解くわけでは無い。
タスクは、以下に説明がある。10個。

  1. Food
  2. Preferences
  3. Obstacles
  4. Avoidance
  5. Spatial Reasoning
  6. Generalization
  7. Internal Models
  8. Object Permanence
  9. Advanced Preferences
  10. Causal Reasoning

ルールはこちら
http://animalaiolympics.com/rules.html

順位は、EvalAIというプラットフォームでつけている。

EvalAIは、CLIがあり pip install evalai で簡単インストール

EvalAIにアカウント作成後、トークンが得られるので、CLIは、それを使ってログインする。

評価申請の方法

評価はスクリプトをPushするかDockerイメージをPushすると自動で実行される。
Animal AI Olympicsでは、Dockerイメージを使う。学習済みモデルはDockerイメージに含めておく。(余談だが、AWSを使っているらしい。DockerイメージはECRにPushされる)

評価申請の方法は以下に書かれている。
https://github.com/beyretb/AnimalAI-Olympics/blob/master/documentation/submission.md

以下に評価申請用のサンプルがあり、これを修正する。
https://github.com/beyretb/AnimalAI-Olympics/tree/master/examples/submission

Dockerfileには、必要なライブラリのインストールなどを書く。
学習済みモデルはdata以下に置く。agent.pyを修正し、step毎にActionを推論するようにする。
このdata以下とagent.pyは、Dockerイメージ無いにコピーされる。

実行の仕方

$ git clone https://github.com/beyretb/AnimalAI-Olympics.git
$ pip install animalai

にある"Environment link"からダウンロード。自分の環境のものをダウンロード。

Image from Gyazo

cloneしたディレクトリの中の'env/'にダウンロードした実行ファイルを配置

finder

visualizeArena.pyを実行。

$ cd AnimalAI-Olympics/examples
$ python visualizeArena.py

game screen

cを押すと一人称視点へ

game screen

w, a, s, dで移動できる。

configsの中にタスク1〜7のサンプルがある。これは、審査のサンプル。8〜10は秘密らしい。

$ python visualizeArena.py configs/6-Generalization.yaml

game screen

環境についてメモ

に、ObservationとActionについて記述がある
Action spaceは、[3, 3]で、それぞれ (0: nothing, 1: forward, 2: backward) と (0: nothing, 1: right, 2: left)の意味になる。つまり、2次元のAction。

ただ、Open AI Gymでは、1次元にしないといけないので、AnimalAIEnvというラッパーがある。これで、[3, 3]のAction spaceをflattenしており、action spaceは9になる。つまり

  • 0: [0, 0] nothing, nothing
  • 1: [0, 1] nothing, right
  • 2: [0, 2] nothing, left
  • 3: [1, 0] forward, nothing
  • 4: [1, 1] forward, right
  • 5: [1, 2] forward, left
  • 6: [2, 0] backward, nothing
  • 7: [2, 1] backward, right
  • 8: [2, 2] backward, left
10
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
2