今回は最もシンプルなマルチエージェント強化学習アルゴリズムである
Independent Learners(ILs)についてお話します。
この手法は単純に各エージェントが各々独立した価値関数を保持し、
各々独立で学習するアルゴリズムです。
各エージェントは自分以外のエージェントを(環境の一部)とみなして学習します。
各エージェントは自分以外のエージェントの行動、方策や状態等すべて観測できません。
だから、単純に各エージェントが各々勝手に強化学習を行っているだけのアルゴリズムです。
各エージェントがQ学習の場合
Independent Q Learners(IQLs)、
Deep Q Learningによって学習する場合
Independent Deep Q Learners(IDQLs)と呼ばれたりしてます。
(名前は論文によって若干の違いはあります)
Independent Learnersの問題点
Independent Learnersはシングルエージェントの強化学習手法を
マルチエージェント強化学習にただ適用しているだけなので、
大きな問題があります。
それが、同時学習によって非定常環境になってしまう問題です。
各エージェントは自分以外のエージェントを(環境の一部)とみなして学習するのですが、
各エージェントは学習しているため、方策が各々変化します。
そのため、環境が一定ではなく徐々に変化してしまい(非定常)、学習が難しくなるといった問題です。
例えば、じゃんけん問題を考えてみましょう。
2体の強化学習エージェント(A、Bとします)がいます。
最初、Bエージェントはグーだけ出す方策を採用しているとします。
その場合Aエージェントは、徐々にパーを出せば良いことが試行を繰り返すとわかります。
しかしながら、Bエージェントも徐々にグーだと負けることがわかってきて、方策を変化させていきます。
それに応じてAも変化、Bも変化・・・・といった形で、非定常になるのがわかると思います。
これはマルチエージェント強化学習の方策が安定しない、 つまり、学習が収束しない可能性があることを示しています。
これは実用的なシステムに応用する際にも大きな問題になります。
システムがめちゃくちゃな挙動を示してしまう可能性があるためです。
すこし数式で
エージェント\(i\)が状態\(s\)において、行動\(a_i\)を行って、状態\(s’\)に遷移する関数\(P_i(s’|s, a_i, \textbf{a}_{-i})\)は以下のようになります。
\begin{eqnarray}
P_i(s’|s, a_i, \textbf{a}_{-i}) = \sum_{\textbf{a}^{k}_{-i} \in A_{-i}} \prod_{a^z_j \in \textbf{a}^{k}_{-i}} \pi_j (a^z_j) P_i(s’|s, a_i,\textbf{a}^{k}_{-i})
\end{eqnarray}
$$
ここで、\(A_{-i}\)はエージェント\(i\)以外のエージェントの全行動の組み合わせ、
\(\pi_j (a^z_j)\)はエージェント\(j\)の方策で、行動\(a^z_j\)を行う確率を表しています。
この\(P_i(s’|s, a_i, \textbf{a}_{-i})\)はエージェント\(i\)の状態遷移関数ですが、
他エージェントの方策\(\pi_{-i}\)が式に含まれていることがわかります。
そのため、エージェント\(i\)は他のエージェントの学習して変化した方策にも大きく影響を受けることがわかります。
報酬関数に関しても同様になります。
Independent Learnersの問題点の解消のために
この非定常化の問題解決のために、様々なマルチエージェント強化学習のアルゴリズムが提案されてきました。
各アルゴリズムについては現在まとめ中です。
トップページのマルチエージェント強化学習のアルゴリズム一覧を参照してください。(まだ少ないですが)
参考文献
参考文献として、「MultiAgent Reinforcement Learning Independent vs Cooperative Agents」をあげておきます。
http://web.media.mit.edu/~cynthiab/Readings/tan-MAS-reinfLearn.pdf
恐らくこの論文が最も初期のマルチエージェント強化学習の研究になります。
コメント