多智能體強化學習
獨立 Q 學習(independent Q-learning)
獨立 Q 學習是在多智能體世界裡能嘗試的最簡單做法:給每個智能體一個普通的單智能體學習器,讓它假裝其他人都只是環境的一部分。每個智能體就在自己的觀測、動作與獎勵上跑純粹的 Q 學習,渾然不顧這個「環境」裡其實還有其他同樣在變的心智。它是很自然的第一個基準,而且出乎意料地常常還算不錯。
機制上,智能體 i 在自己的局部觀測與動作上維護自己的動作價值函數,並用一般的時序差分規則更新。更新式裡完全沒有承認其他智能體的存在。這讓 IQL 實作起來毫不費力,並在智能體數量上完美可擴展,因為每個都只跑自己的副本,也徹底繞開了指數級的聯合動作空間。
這份簡單要付的代價是非平穩性。由於其他智能體也在學,每個智能體面對的有效動態不斷改變,這違反了 Q 學習收斂證明所倚賴的平穩性——於是價值可能去追一個移動的目標,進而震盪或發散。儘管如此,搭配深度網路的 IQL 仍是受敬重、有時還很強的基準,這提醒我們:理論上的最壞情形,未必是實務上的情形。
Q_i(o_i,a_i)\leftarrow Q_i(o_i,a_i)+\alpha\big[r_i+\gamma\max_{a_i'}Q_i(o_i',a_i')-Q_i(o_i,a_i)\big]
每個智能體在自己的視野上跑普通 Q 學習,把其他智能體當成環境的一部分。
又称
另见