【マルチエージェント強化学習】CLEAN Rewards

今回は Coordinated Learning without Exploratory Action Noise (CLEAN) Rewardsを紹介します。

CLEAN Rewardsはマルチエージェント強化学習におけるReward Shaping(報酬形成)手法の1つです。
各エージェントの探索による報酬の乱れを抑えることにフォーカスした手法です。

探索によるノイズ

マルチエージェント学習では、複数のエージェントが同時に学習しています。
そして、各エージェントの報酬は他のエージェントの行動にも影響を受けます。
基本的には状態遷移、報酬ともすべての行動によって決定されるためです。

探索はランダム行動のようなものなので、あるエージェントの探索は他のエージェントにとってはノイズとなります。
このノイズは各エージェントの学習を阻害するので、うまく取り除くことが重要になります。

CLEAN Rewards

上述したノイズをうまく報酬から取り除く手法がCLEAN Rewardsという
Reward Shaping手法の1つになります。
論文では2つの手法を提案していますが、
本記事ではまず1つの手法(CLEAN 1:C1)を見てみます。
C1ではエージェント\(i\)の報酬\(C1_{i}\)は以下のように決定されます。

$$
\begin{eqnarray}
C1_{i} = G(\textbf{a}_{a_{i} \leftarrow a’_{i}}) – G(\textbf{a})
\end{eqnarray}
$$

\(G(\textbf{a})\)は全エージェントがgreedyを選択をした時の報酬、
\(G(\textbf{a}_{a_{i} \leftarrow a’_{i}})\)はエージェント\(i\)だけが探索した時の報酬を表しています。
CLEAN Rewardsでは、エージェント\(i\)の探索による行動を、他のエージェントがgreedy選択している時の報酬との差分をとっているいるので、純粋な探索した行動のシステム全体への影響を計算できます。

実験

問題設定

協調型マルチエージェントゲームの1つであるGSDを用いて評価していきます。

www.tcom242242.net

比較手法

  • 通常のGlobal Reward
  • Difference Rewards

Difference Rewardsについては以下の記事を参考にしていただければと思います。

www.tcom242242.net

ソースコード

ソースコードgithubにあげておきました。
clone してrun.pyを実行すれば、実験できます。

GitHub – tocom242242/clean_rewards

実験結果

f:id:ttt242242:20190610171832j:plain

横軸がエピソード、縦軸はGlobal Rewardになります。ここでは、1訓練1評価という形にしています。
緑がCLEAN Rewards、オレンジがDifference Rewards、青が純粋なGlobal Rewardとなります。

グラフからわかる通り、C1が最も良い性能を出しています。
理由としては、純粋に各行動を適切に評価できていることが上げられます。
思ったよりきれいに差が出たのでびっくりしてます。
もう少しこのへんのReward Shaping手法について、調査していこうと思います。

参考文献

https://pdfs.semanticscholar.org/22b5/e191c5cab5b70f37772b997518660ef7618b.pdf
https://www.eecs.wsu.edu/~taylorm/Publications/14IAT.pdf

コメント

タイトルとURLをコピーしました