pursuit problem(追跡問題)
pursuit problemはマルチエージェント強化学習問題のベンチマーク問題の1つです。
このゲームは複数のpredator(捕食者)がうまく協調して、prey(獲物)を追い込むゲームゲームです。
以下はイメージ図。
ロボットがpredatorで、鷹がpreyを表しています。
この問題では、predatorを強化学習によって学習させます。
preyはランダムで行動選択します。
以下のようにpredatorがpreyに隣接すれば、捕獲となります。
強化学習エージェント(predator)の行動、状態、報酬
強化学習エージェントの設定は様々なパターンが考えられますが、
一例を紹介します。
行動
上、下、右、左、何もしないの5つです。
状態
様々なパターンが考えれますが、シンプルな方法は、
preyとpredatorの現在の位置を状態としてしまう方法です。
参考文献だと、
preyとpredatorとの相対的な座標によって表現しています
報酬
報酬についても様々なパターンが考えられます。
ここでは一例を挙げます。
エージェント同士が衝突したら、-10の報酬、
上述したのような形でpreyをpredatorで囲んだら成功となり、報酬+10等。
参考文献の論文だと、
2体のpredatorがpreyに隣接している状態で、
predatorがpreyのマス目に進んだ場合に捕獲になるなど様々なパターンがあります。
実験
単純なindependent q leanerを想定して実装してみます。
最初のイメージと同様に、
predatorが2体、preyが1体としています。
ソースコード
実行結果
5×5のマスで実験してみます。
横軸がエピソード、縦軸が、preyを捕らえるのにかかったステップ数を表しています。
シンプルなindependent q leanerですが、
エピソードが進むにつれて、preyを捕らえるスピードが向上していることがわかります。
もちろん最適解ではないでしょうが、学習はできているようです。
参考文献
https://hal.archives-ouvertes.fr/hal-00187279/document
コメント