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