處于完全合作關系的多智能體的利益一致,獲得的獎勵相同,有共同的目標。比如多個工業(yè)機器人協(xié)同裝配汽車,他們的目標是相同的,都希望把汽車裝好。
在多智能體系統(tǒng)中,一個智能體未必能觀測到全局狀態(tài) S。設第 i 號智能體有一個局部觀測,記作 Oi,它是 S 的一部分。不妨假設所有的局部觀測的總和構成全局狀態(tài):
完全合作關系下的MARL:
策略學習
下面由policy-based的MARL方法入手。(value-based MARL也有很多工作)
MARL 中的完全合作關系 (Fully-Cooperative) 意思是所有智能體的利益是一致的,它們有相同的獎勵R,回報U,動作價值函數(shù)Q,狀態(tài)價值函數(shù)V。Q和V依賴于所有agent的策略π。
通常來說,團隊成員有分工合作,所以每個成員的策略是不同的,即 θi ≠ θj。
如果做策略學習(即學習策略網絡參數(shù) θ1, · · · , θm),那么所有智能體都有一個共同目標函數(shù):
所有智能體的目的是一致的,即改進自己的策略網絡參數(shù) θi,使得目標函數(shù) J 增大。那么策略學習可以寫作這樣的優(yōu)化問題:
(注意,只有“完全合作關系”這種設定下,所有智能體才會有共同的目標函數(shù),其原因在于 R1 = · · · = Rm。對于其它設定,“競爭關系”、“混合關系”、“利己主義”,智能體的目標函數(shù)是各不相同的。)
可能有人好奇R,U,Q,V都一樣了,為什么訓練出來π不一樣?主要是每個agent的動作空間有區(qū)別,各司其職,所以agent的策略會有區(qū)別。
由于無法計算策略梯度?θiJ,我們需要對其做近似。下面用 價值網絡
近似 策略梯度
,從而推導出一種實際可行的策略梯度方法。
多智能體A2C
下面介紹“完全合作關系”設定下的多智能體 A2C 方法 (Multi-Agent Cooperative A2C),縮寫 MAC-A2C。簡單點入手,本文只考慮離散控制問題。
策略網絡和價值網絡
MAC-A2C 使用兩類神經網絡:價值網絡 v
與策略網絡 π
。
所有智能體共用一個價值網絡。
每個智能體有自己的策略網絡。
訓練和決策
實現(xiàn)中的難點
最大的問題,在 MARL 的常見設定下,第 i 號智能體只知道 oi,而觀測不到全局狀態(tài)。
下面介紹中心化 (Centralized) 與去中心化 (Decentralized) 的實現(xiàn)方法。
- 中心化讓智能體共享信息;優(yōu)點是訓練和決策的效果好,缺點是需要通信,造成延時,影響速度。
- 去中心化需要做近似,避免通信;其優(yōu)點在于速度快,而缺點則是影響訓練和決策的質量。
三種架構
下面介紹MAC-A2C的三種實現(xiàn)方法。
完全中心化
中心化訓練 + 中心化決策,這是MAC-A2C最忠實的實現(xiàn)方法,作出的決策最好,但是速度最慢,在很多問題中不適用。
訓練和決策全部由中央控制器完成。智能體只負責與環(huán)境交互,然后把各種數(shù)據(jù)傳給中央。智能體只需要執(zhí)行中央下達的決策,而不需要自己“思考”,純純工具人。
完全去中心化
想要避免通信代價,就不得不對策略網絡和價值網絡做近似,變?yōu)椤叭ブ行幕柧?+ 去中心化決策”。
MAC-A2C 變成了標準的 A2C,每個智能體獨立學習自己的參數(shù) θi 與 wi。
去中心化訓練的本質就是單智能體強化學習 (SARL),而非多智能體強化學習 (MARL)。在 MARL 中,智能體之間會相互影響,而本節(jié)中的“去中心化訓練”把智能體視為獨立個體,忽視它們之間的關聯(lián),直接用 SARL 方法獨立訓練每個智能體。用上述 SARL 的方法解決 MARL 問題,在實踐中效果往往不佳。
中心化訓練 + 去中心化決策
當前更流行的MARL 架構是“中心化訓練 + 去中心化決策”,相對于上面兩種方法,有效結合了它們的優(yōu)點又緩解了它們的缺點,近年來很流行。
訓練的時候使用中央控制器,輔助智能體做訓練;
訓練結束之后,不再需要中央控制器,每個智能體獨立根據(jù)本地觀測 oi 做決策。
訓練:
決策:
智能體只需要用其本地部署的策略網絡π做決策,決策過程無需通信。
中心化執(zhí)行的速度很快,可以做到實時決策。
本文內容為看完王樹森和張志華老師的《深度強化學習》一書的學習筆記,十分推薦大家去看原書!