多智能體強化學(xué)習(xí)中的非平穩(wěn)性問題 - hoogle的文章 - 知乎 https://zhuanlan.zhihu.com/p/72553328
深度學(xué)習(xí)變革了在復(fù)雜環(huán)境中開發(fā)自主行動的智能體的方式.傳統(tǒng)的強化學(xué)習(xí)(RL)方法使用表格表示或線性函數(shù)逼近器,從而難以擴展到高維環(huán)境中,主要應(yīng)用于提供高層狀態(tài)(high level state)表示的小網(wǎng)格世界或環(huán)境中.將深度學(xué)習(xí)與現(xiàn)有的RL算法相結(jié)合,可以開發(fā)在更大的狀態(tài)空間(如圖像)中發(fā)揮作用的智能體.近年來,可以處理具有大規(guī)模狀態(tài)的環(huán)境與連續(xù)和離散的行動空間互相混雜的深度強化學(xué)習(xí)算法被不斷提出.
多智能體系統(tǒng)由多個智能體在共享環(huán)境中進(jìn)行操作和學(xué)習(xí).許多現(xiàn)實世界中的決策問題可以建模為多智能體系統(tǒng),如自主車輛控制、資源分配問題、機器人集群和人-機器人交互.盡管深度強化學(xué)習(xí)在單智能體環(huán)境中取得了一定的成功,但是傳統(tǒng)的方法在多智能體系統(tǒng)中中還面臨著一些額外的挑戰(zhàn).一個主要的挑戰(zhàn),也是本文的重點,是由在訓(xùn)練過程中智能體不斷改變其策略從而導(dǎo)致的多智能體環(huán)境的非平穩(wěn)性.這種非平穩(wěn)性源于打破了大多數(shù)單智能體強化學(xué)習(xí)算法都遵循的馬爾可夫假設(shè).由于狀態(tài)轉(zhuǎn)移概率和獎勵依賴于所有智能體的行為,然而這些智能體的決策策略在學(xué)習(xí)過程中不斷變化,因此每個智能體都可以進(jìn)入一個適應(yīng)其他智能體所創(chuàng)建的環(huán)境的無終止循環(huán).
多智能體系統(tǒng)的其他問題包括多智能體之間的信用分配、對環(huán)境的部分可觀測性和智能體本身的異質(zhì)性.在第一個問題中,可能只有一小部分智能體對獎勵有貢獻(xiàn),我們需要識別并獎勵它們,同時避免懲罰行為最優(yōu)的代理.局部可觀察性由只訪問其局部觀察值而不訪問環(huán)境的實際狀態(tài)的智能體組成,對環(huán)境的部分觀測可能會顯著阻礙訓(xùn)練性能.異質(zhì)性是指智能體可能具有不同的感知和行為能力,并且它們的學(xué)習(xí)算法可能不同.
本文重在對多智能體強化學(xué)習(xí)中的非平穩(wěn)問題進(jìn)行一個綜述介紹,最后對一些開放的問題和未來的研究方向進(jìn)行討論.
在這一小節(jié)中,我們對之前強化學(xué)習(xí)工作中的定義和符號進(jìn)行簡單介紹,并且對多智能體強化學(xué)習(xí)中的非平穩(wěn)問題進(jìn)行描述.
在表格任務(wù)或者簡單的線性近似中,時間差分方法和策略梯度方法很難用到大的狀態(tài)和動作空間中.因此,深度網(wǎng)絡(luò)被用來解決這一問題.
有兩種主流的結(jié)構(gòu)可以被用在多智能體系統(tǒng)中.第一種結(jié)構(gòu)是集中訓(xùn)練.在一個集中訓(xùn)練的范式中,智能體被聯(lián)合建模來學(xué)習(xí)一個聯(lián)合的策略.該結(jié)構(gòu)的輸入是所有智能體觀測值的拼接,輸出是所有智能體的聯(lián)合動作.這種集中式結(jié)構(gòu)的最大缺點是巨大的輸入和輸出空間,伴隨著智能體數(shù)量的增加,輸入維度線性增加,輸出的聯(lián)合策略的空間指數(shù)增加.
另一種結(jié)構(gòu)便是去中心化結(jié)構(gòu),每個智能體被獨立于其他智能體來訓(xùn)練.每個智能體有其自己的策略網(wǎng)絡(luò),該網(wǎng)絡(luò)將其的觀測值輸入并輸出其要采取的動作.盡管這一范式能夠很好的處理智能體數(shù)量的增長所帶來的問題,但是其他一些新的問題也在不斷顯現(xiàn).其中包含環(huán)境的不穩(wěn)定的問題,獎勵分配問題和智能體之間缺乏顯式的合作.本文主要致力于介紹如何處理與不穩(wěn)定性相關(guān)的問題.
在馬爾科夫博弈中,環(huán)境的狀態(tài)轉(zhuǎn)移函數(shù)$T$和單個智能體的獎勵函數(shù)$r_i$受到所有智能體動作的影響.在訓(xùn)練多個智能體的過程中,每個智能體的策略隨著時間在不斷變化,因此,每個智能體所感知到的轉(zhuǎn)移概率分布和獎勵函數(shù)也會發(fā)生變化.通常的單智能體強化學(xué)習(xí)算法假定這些函數(shù)具有平穩(wěn)性,因而這些算法不能很好的用在多智能體的場景下.
下面幾個小節(jié)主要介紹多智能體強化學(xué)習(xí)中處理不穩(wěn)定性的幾類方法.這些方法包括了對經(jīng)典的強化學(xué)習(xí)算法的改進(jìn)以及計算和共享額外的對手信息.
處理非平穩(wěn)性的一個步驟是采用一個集中的評論家體系結(jié)構(gòu).該體系結(jié)構(gòu)采用了一種演員-批評家算法,該算法由兩個部分組成.評論家的訓(xùn)練是集中的,這使得其可以接觸到所有智能體的觀察和行動,而演員的訓(xùn)練是分散的.由于策略的計算是由每個演員獨立完成的,因此可以在測試期間刪除評論家所對應(yīng)的結(jié)構(gòu),從而該方法是一種分散的執(zhí)行方法.通過在訓(xùn)練過程中接觸到對手的觀察和行動,智能體不會經(jīng)歷環(huán)境動態(tài)的意外變化,這將使得學(xué)習(xí)過程更為穩(wěn)定.
MADDPG算法將靜態(tài)的策略梯度算法(DDPG)算法改造作為為一種多智能體結(jié)構(gòu).在這一方法中,每個智能體有一個單獨的集中式的評論家和非集中的演員.由于在訓(xùn)練過程中每個智能體都依賴于其他所有智能體的觀測值和動作值,因此每個智能體都可以認(rèn)為是處在一個穩(wěn)定的環(huán)境中.MADDPG的一個擴展是MiniMax MADDPG (M3DDPG),它使用MiniMax Q-learning在評論家中展示了對不同政策下的對手的魯棒性.
在多智能體系統(tǒng)中處理非平穩(wěn)性并不一定需要進(jìn)行集中訓(xùn)練.在多智能體深度強化學(xué)習(xí)問題中,一種處理非平穩(wěn)性的替代方法被稱之為自我博弈(self-play)算法.這種方法訓(xùn)練一個神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)使用每個智能體自身的觀察作為輸入,通過將其與當(dāng)前或以前的版本進(jìn)行比較,來學(xué)習(xí)可以推廣到任何對手的策略.這種方法可以追溯到TD-Gammon,它設(shè)法在雙陸棋中戰(zhàn)勝人類冠軍.最近,自我博弈算法被擴展到更復(fù)雜的領(lǐng)域,如圍棋,甚至具有連續(xù)狀態(tài)和動作空間的復(fù)雜運動環(huán)境.
在TD-Gammon中,利用時間差分方法訓(xùn)練神經(jīng)網(wǎng)絡(luò)來預(yù)測游戲結(jié)果。與最近的方法不同,TD-Gammon中的自我博弈只針對當(dāng)前神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置.以這種方式進(jìn)行自我博弈可能會導(dǎo)致訓(xùn)練中缺乏探索,因為在不同情景中,神經(jīng)網(wǎng)絡(luò)總是選擇相同的動作序列.由于雙陸棋的動力學(xué)是隨機的,所以在原始論文中該現(xiàn)象沒有發(fā)生.
在最近的自我博弈應(yīng)用中,對訓(xùn)練過程進(jìn)行了額外的修改,以確保訓(xùn)練在具有確定性動力學(xué)的環(huán)境中是有效的.在這種情況下,最近的自我博弈方法將神經(jīng)網(wǎng)絡(luò)參數(shù)存儲在學(xué)習(xí)過程中的不同位置.然后,在自我博弈過程中,在當(dāng)前和以前版本的神經(jīng)網(wǎng)絡(luò)參數(shù)中隨機選擇對手.除了將自我博弈擴展到確定性環(huán)境之外,這還允許神經(jīng)網(wǎng)絡(luò)對更廣泛的對手進(jìn)行泛化.因此,自我博弈成功地訓(xùn)練了策略,并且這些策略可以很好地推廣到圍棋甚至復(fù)雜的移動任務(wù)等環(huán)境中。
另一種被用來分散訓(xùn)練的方式是通過經(jīng)驗回放(replay buffer)穩(wěn)定訓(xùn)練.盡管這一方式在單智能體強化學(xué)習(xí)中占據(jù)非常重要的部分,但是在去中心化的學(xué)習(xí)過程中由于環(huán)境的不穩(wěn)定性,這一機制可能存儲了大量的與去中心化學(xué)習(xí)無關(guān)的信息,從而導(dǎo)致性能變差.解決這一問題的一個簡單方法是通過重要性采樣動態(tài)調(diào)整以往經(jīng)驗的權(quán)重.這一方式與獨立Q學(xué)習(xí)相結(jié)合,可以在星際爭霸微管理任務(wù)上取得比較好的結(jié)果.
另一個處理非平穩(wěn)性的可行方向是為對手進(jìn)行建模。通過模擬其他智能體的意圖和政策,可以穩(wěn)定智能體的訓(xùn)練過程。在多智能體系統(tǒng)中建模其他智能體已經(jīng)得到了廣泛的研究,并由很多更進(jìn)一步的研究方向.在本文中,我們主要關(guān)注最近的方法,即學(xué)習(xí)對手的模型或使用它們來約束代理的策略.
Raileanu等人提出了一種方法,其中當(dāng)前智能體使用他們的策略來預(yù)測其他智能體的行為.該方法使用一個演員-批評家體系結(jié)構(gòu),并重用相同的網(wǎng)絡(luò)來估計其他智能體的目標(biāo).詳細(xì)來說,通過構(gòu)建一個神經(jīng)網(wǎng)絡(luò)$f(s_{s} / o, z_{s}, \overline{z}_{o})$來輸入智能體的動作,其中神經(jīng)網(wǎng)絡(luò)的輸入分別是狀態(tài)、當(dāng)前智能體的目標(biāo)和其他智能體的目標(biāo).然而,同樣的網(wǎng)絡(luò)也可以通過改變$z_s$和$\bar{z}_o$的順序來推斷其他智能體的目標(biāo).通過觀察其他智能體的實際動作,當(dāng)前智能體可以對可訓(xùn)練參數(shù)$\bar{z}_o$進(jìn)行反向傳播和優(yōu)化. 另一種方式是利用一個單獨的網(wǎng)絡(luò)為其他智能體建模.這兩個網(wǎng)絡(luò)的組合可以通過連接它們的隱藏狀態(tài),也可以通過混合使用專家來實現(xiàn). 這個獨立的網(wǎng)絡(luò)使學(xué)習(xí)變得更快,甚至允許對不斷改變的其他智能體的行為進(jìn)行建模. 關(guān)于對手建模的更多信息參見參考資料.
在深度強化學(xué)習(xí)算法研究取得進(jìn)展之前,跟蹤和上下文檢測等方法被提出用來更快地適應(yīng)非平穩(wěn)的環(huán)境.這兩種方法在處理非平穩(wěn)性方面都采用了一種更加主動反應(yīng)的觀點,即使用學(xué)習(xí)方法,一旦環(huán)境動態(tài)發(fā)生變化,就嘗試快速更改策略或環(huán)境模型.然而,F(xiàn)inn等人提出的運動任務(wù)的結(jié)果突出表明,諸如跟蹤等反應(yīng)性方法仍然無法快速適應(yīng)深度強化學(xué)習(xí)算法,使其僅使用少量的學(xué)習(xí)更新就能應(yīng)用到動態(tài)的環(huán)境.
另一種方法是預(yù)測環(huán)境的變化,而不是制定一種訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)對環(huán)境變化作出反應(yīng)的學(xué)習(xí)算法.然后當(dāng)給定環(huán)境的動態(tài)變化時可以制定一個優(yōu)化過程來尋找初始神經(jīng)網(wǎng)絡(luò)參數(shù),這樣便可以使用少量的更新過程來更好的學(xué)習(xí).像模型無關(guān)元學(xué)習(xí)(Model Agnostic Meta Learning,MAML)這樣的元學(xué)習(xí)方法專門針對這個特定問題進(jìn)行優(yōu)化. Al-Shedivat等人進(jìn)一步擴展了MAML來處理多代理問題中的非平穩(wěn)性.
最后,我們討論的非平穩(wěn)性度量的最后一類方法是通信. 通過通信機制,不同的智能體可以交換關(guān)于他們的觀察、行動和意圖的信息,以穩(wěn)定其訓(xùn)練過程.雖然多智能體系統(tǒng)中的通信是一個很好的研究主題,但我們將重點介紹最近使用多智能體深度強化學(xué)習(xí)進(jìn)行通信的方法.
前面的這些方法都假定所有智能體都能訪問其他智能體的隱藏層. Foerster等人在2016年提出了一種方法消除了這一假設(shè).作者首先提出了增強的智能體間學(xué)習(xí),其中每個智能體都有兩個Q網(wǎng)絡(luò).第一個Q網(wǎng)絡(luò)輸出動作值,第二個Q網(wǎng)絡(luò)用來將其他智能體的輸入信息轉(zhuǎn)換為通信消息,并且這兩個網(wǎng)絡(luò)都是利用DQN進(jìn)行訓(xùn)練的.作者同時提出了可微的智能體間學(xué)習(xí),這里只需利用DQN訓(xùn)練一個動作網(wǎng)絡(luò),這一網(wǎng)絡(luò)的訓(xùn)練過程中通過通信信道用到其他智能體的梯度信息.這種方法類似于Mordatch和Abbeel的2018年的工作很想,其中作者提出了一個模型,該模型將其他代理的消息作為輸入,并學(xué)習(xí)輸出一個動作和一個新的通信消息.
根據(jù)本調(diào)查所概述的方法,我們確定了幾個與非平穩(wěn)性有關(guān)的開放問題和未來可能的研究方向.
本文研究了多智能體系統(tǒng)的幾種遷移學(xué)習(xí)方法.在這種情況下,從元學(xué)習(xí)和學(xué)習(xí)對手表示的方法中獲得的表征和初始化值可以看作是遷移的知識,從而更快地適應(yīng)非平穩(wěn)性.盡管最近取得了一些進(jìn)展,但在知識遷移的形式以及如何利用這些知識形式加快適應(yīng)方面仍存在一些懸而未決的問題.
在實際問題中,環(huán)境中的代理的數(shù)量可以是很大的,也可以是多種多樣的.此外,由于代理離開或進(jìn)入環(huán)境,代理的數(shù)量可能會發(fā)生變化.這種問題設(shè)置通常被稱為一個開放的多代理系統(tǒng).智能體數(shù)量的變化會導(dǎo)致一個動作在學(xué)習(xí)過程中的不同時間點產(chǎn)生不同的結(jié)果.比方說,當(dāng)另一個起到合作作用的智能體在環(huán)境中時,某個行為可能會導(dǎo)致高回報的情況,而當(dāng)其離開環(huán)境時,該行為也會變得無關(guān)緊要.
本文中提出的所有技術(shù)都沒有在不斷變化的代理數(shù)量的環(huán)境中進(jìn)行測試.一般來說,在具有不同數(shù)量代理的問題之間重用知識的遷移學(xué)習(xí)方法可能是本主題的一個潛在研究方向.此外,研究智能體如何有效地處理能力和學(xué)習(xí)算法的異構(gòu)性也將起到重要的作用.
我們在對手模型中所做的大量工作,都需要接近對手的觀察和選擇交流.雖然在集中培訓(xùn)期間這不是一個強有力的假設(shè),但在測試期間,尤其是在代理之間沒有建立通信時,這是非常有限的.更確切地說,假設(shè)我們在觀測過程中能夠接觸到對手的觀測和行動是過于強烈的.因此,創(chuàng)建不依賴于此假設(shè)的模型是一個開放的問題.
目前多智能體深RL方法存在的一個開放性問題是缺乏對其收斂性和收斂結(jié)果類型的理論認(rèn)識。博弈論均衡,如相關(guān)均衡和納什均衡,是一個可以用來鼓勵并購的理論概念.這些方法的一個缺點是需要計算均衡解,以及均衡的非唯一性,這需要某種形式的協(xié)調(diào)均衡選擇.最近在這個方向上的一個例子是Li等人(2019)的工作,他們使用了極大極小平衡的近似解.因此,一個有趣的研究方向是研究近似解,以納入這些均衡的概念在多智能體深RL.
另一個由分散執(zhí)行的方法引起的問題與在環(huán)境中為智能體的獎勵分配有關(guān).盡管改進(jìn)了集中訓(xùn)練或?qū)W習(xí)對手的表示,但仍然可以改進(jìn)處理這個問題的方法.一般來說,尋找替代的神經(jīng)網(wǎng)絡(luò)架構(gòu)和學(xué)習(xí)方法,可以分解較小的智能體集合內(nèi)部的獎勵,這可能是未來的研究方向.
在本文中我們首先介紹了五類多智能體強化學(xué)習(xí)中處理環(huán)境平穩(wěn)性的方法,然后給出了幾種在多智能體強化學(xué)習(xí)場景下的不穩(wěn)定性研究的可能幾個方向.
參考文獻(xiàn):
[1] Papoudakis G, Christianos F, Rahman A, et al. Dealing with Non-Stationarity in Multi-Agent Deep Reinforcement Learning[J]. arXiv preprint arXiv:1906.04737, 2019.
[2] Foerster J, Nardelli N, Farquhar G, et al. Stabilising experience replay for deep multi-agent reinforcement learning[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017: 1146-1155.