馬廷淮,彭可興,周宏豪,榮 歡
(1. 南京信息工程大學計算機學院,江蘇 南京 210044;2. 南京信息工程大學電子與信息工程學院,江蘇 南京 210044;3. 南京信息工程大學人工智能學院,江蘇 南京 210044)
近年來,隨著人工智能技術的發(fā)展,基于多智能體系統(tǒng)的研究和應用應運而生,這些工作主要集中在研究大規(guī)模多智能體系統(tǒng)中的多智能體強化學習(Multi-agent reinforcement learning, MARL)[1]任務中。在該任務中,智能體龐大的數(shù)量規(guī)模以及復雜的交互給策略學習帶來了巨大的挑戰(zhàn),因此建立智能體之間的通信是必不可少的環(huán)節(jié),優(yōu)化通信的方式以及內容是研究的目標。特別是在部分可觀察的環(huán)境中[2],當主體觀察到環(huán)境的不同部分時,們可以通過交流分享們所觀察到的信息和經驗。
在多智能體的通信工作中,有一部分工作是基于預定義的通信規(guī)則,例如CommNet(Learning multiagent communication with backpropagation)[3]預先定義通信通道;BICNet(Bidirectionally-Coordinated Nets)[4]解決零和隨即博弈問題,為預定義規(guī)則優(yōu)化通信行為;IC3Net(Learning When To Communicate Ae Scale In Multiagent Cooperative And Competitive Tasks)[5]基于CommNet解決信用分配問題;G2Anet(Multi-Agent Game Abstraction via Graph Attention Neural Network)[6]通過一個完整的圖對智能體之間的關系進行建模,內置兩階段注意力網絡決定智能體間是否交互。然而,上述預定義規(guī)則的設計需要很強的環(huán)境先驗知識,且在多智能體環(huán)境中,智能體之間的影響和交互不盡相同,關系非平穩(wěn),預定義的規(guī)則過于簡單。此外,另一類工作主要針對松散耦合的多智能體系統(tǒng),MADDPG(Multi-agent actor-critic for mixed cooperative-competitive environments)[7]不假設智能體之間有固定合作規(guī)則,MAAC(Actor-Attention-Critic for Multi-Agent Reinforcement Learning)[8]考慮每個智能體所受到的各方面影響與關系變化,ATOC(Learning attentional communication for multi-agent cooperation)[9]提出了一個通信模型,學習何時需要溝通以及如何整合共享信息以進行合作決策。然而這類工作給每個智能體訓練一個復雜網絡,這不僅導致了大規(guī)模的計算負擔,還帶來了通信信息的延遲問題。
針對上述問題,本文對多智能體強化學習的策略網絡進行了改進以提升通信效率,設計了一個包含注意力模塊以及通信模塊的策略網絡模型,Attentional Interactions Communication Comment Integration Network(AICNet)。其中,注意力模塊通過在每個時間步中關注智能體之間的交互影響,從而實時更新注意力權重并據(jù)此更新通信信息。通信模塊的設計避免了上述多個網絡的問題,采用聚合模式來處理所有智能體收集到的信息,將智能體的編碼信息進行統(tǒng)一操作。為了在訓練中更加穩(wěn)定,本文將AICNet與執(zhí)行器評價器模式(Actor-Critic)[10]相結合。實驗所采取的環(huán)境是Predator-Prey和Cooperative Navigation[7](https:∥github.com/openai/multiagent-particle-envs)。結果表明,與現(xiàn)有的先進算法相比,AICNet具有最高的環(huán)境獎勵值。此外,在測試環(huán)境中,本文發(fā)現(xiàn)AICNet已經學會了基于交互影響的協(xié)作方法。
本文采用部分可觀測馬爾可夫決策過程(Partially Observable Markov Decision Process, POMDP)[11]的環(huán)境,其性質是非平穩(wěn)的、多智能體的和部分可觀察的,這個環(huán)境定義符合大部分現(xiàn)實任務,本文所使用的模擬環(huán)境基于POMDP的定義,包含競爭與協(xié)作的特質,如圖1所示。
圖1 多智能體強化學習環(huán)境描述
本文在訓練過程部分參考Deep Deterministic Policy Gradient(DDPG)[12]算法, DDPG基于執(zhí)行器評價器模式,主要思想是直接調整策略網絡的參數(shù),使其最大化目標?θuJ←?θuu(s|θu)?aQu(s,a)|a=u(s),函數(shù)J是用來衡量策略u的表現(xiàn),其中Qu(s,a)=E[r(s,a)+γQu(s′,a′)]是狀態(tài)動作值函數(shù),u(s)=a是確定性策略網絡。它們分別使用深度學習參數(shù)θQ和θu訓練其網絡,對于執(zhí)行器部分,策略網絡根據(jù)狀態(tài)值輸出動作;對于評價器部分,Q網絡近似狀態(tài)動作值函數(shù),提供評價器對應梯度。
如圖2所示,AICNet是一種策略網絡模型,與執(zhí)行器評價器模式相結合。本文的模型針對研究執(zhí)行器,添加了一個具有三層全連接網絡的評價器。
圖2 結合執(zhí)行器評價器框架的AICNet模型圖
整體計算過程如算法1所示。
算法1.AICNet計算過程。
① 初始化經驗回放池R的容量;
② 初始化評價器網絡和執(zhí)行器網絡Q(o,a|θQ),u(o|θu)以及其權重θQ,θu;
③初始化目標評價器網絡和目標執(zhí)行器網絡Q′,u′以及其權重θQ′←θQ,θu′←θu;
④ 初始化獎勵折扣因子γ,目標網絡更新參數(shù)τ;
⑤for(episode=1)do
⑥ 隨機初始化動作at進行探索;
⑦ 得到全局觀測值ot;
⑧fort=1,Tdo
⑩ End for
ω=?aQ(o,a|θQ)|o=oi,a=u(oi),u(oi);
θQ′←τθQ+(1-τ)θQ′,
θu′←τθu+(1-τ)θu′;
此節(jié)介紹AICNet的第一個模塊:注意力模塊。注意力模塊采用軟注意力機制[13],學習當前智能體對于其智能體的交互影響,并更新特征向量,之后將更新后的特征向量輸入到通信模塊中。
圖3 注意力模塊概述圖
圖4 通信模塊概述圖
(1)
關系權重wi,j決定了智體i和j之間關系的重要性。對于當前智能體i,軟注意力權重wi,j計算如下
(2)
(3)
其中,wk將ej轉換為key,wq將ei轉換為query。最后,軟注意力權重值wi,j代表智能體之間的關系權重。這樣一來,影響值bi通過DNN從其智能體獲得。這里使用一個簡單的方法來計算,即其智能體對當前智能體的影響的加權和
(4)
為了方便起見,本文給出了一個帶有兩個智能體的示例。
此節(jié)介紹基于CommNet[3]的通信模塊的結構,如圖5所示,計算順序為從下到上。它是用于聚合通信操作的模塊。所有智能體(作為一個整體)的特征輸入映射到相應智能體的動作權重的輸出,它們各占據(jù)一個子集的單位。省去了為每一個智能體配備復雜網絡帶來的計算負擔,同時根據(jù)注意力模塊的權重計算可實時跟進通信信息。
圖5 多智能體粒子實驗環(huán)境
(5)
(6)
其中,ci是ith智能體的通信向量,C是用于將特征向量轉換為通信張量的線性變換矩陣。通過線性變化,獲得當前智能體i與其智能體j通信的掩碼。掩碼將保護智能體i的當前位置,其位置的值將進行非線性加權。
在聚合通信操作之后,ci和hp+2被輸入到GRU模塊進行信息權衡操作并丟棄冗余信息。最后,最終的hp+3被線性解碼并作為動作選擇的權重輸出。
本文采用多智能體粒子模擬環(huán)境[7],它由存在于連續(xù)空間、離散時間的二維世界中的N個智能體和L個地標組成。實驗包含混合合作競爭環(huán)境(智能體有相互沖突的目標)Predator-Prey和合作環(huán)境(所有智能體必須最大限度地共享獎勵)CooperationNavigation。所對比的算法是MADDPG[7]、MAAC[8]、CommNet[3]、BICNet[4]、G2ANet[6]、IC3Net[5]和ATOC[9]。
Predator-Prey。如圖6(a)所示, N個較慢的合作智能體(捕食者)必須在隨機生成的環(huán)境中追逐較快的智能體(獵物),獵物可在L個障礙物后躲藏。獵物已使用DDPG算法訓練完成,任務是訓練捕食者進行合作捕捉。捕食者在捕獲一個獵物時可以得到+10的獎勵,且們會因為與同類的碰撞而受到懲罰,最嚴重的懲罰可以達到-10。
圖6 Predator-Prey環(huán)境下的訓練平均報酬曲線
該環(huán)境分為簡單模式和困難模式。兩種模式的相同設置如下:共訓練了25000個回合,每回合包含25個時間步。訓練模型直到收斂,每次訓練超過1000個時間步(即40個回合)的時候評估它10個回合的平均獎勵值。不同的設置如下:簡單模式有Na=3和Ng=1。困難模式有Na=5和Ng=2,其中Na是捕食者的數(shù)量,Ng是獵物的數(shù)量。
CooperationNavigation。如圖6(b)所示,該任務由N個協(xié)作智能體組成,這些協(xié)作智能體被放置在具有不同顏色的L個地標的環(huán)境中。智能體必須進行合作,到達相應目標的L地標。此外,智能體相互碰撞時將受到懲罰,因此需要學會推斷必須覆蓋哪些地標,并在避開其智能體的同時移動到相應位置。
在這個環(huán)境的簡單和困難的模式下訓練了10000個回合。簡單模式的設置是N=2和L=3,其中N是智能體的數(shù)量,L是智能體需要到達的地標的數(shù)量。與簡單模式不同,困難模式下的智能體和地標數(shù)量增加,N=4和L=5。除上述設置外,測試設置中其相關設置與上述混合環(huán)境是一致的。在上述兩種環(huán)境下,以算法的收斂速度和測試的平均獎勵值作為評價指標。參數(shù)設置如表1所示。
表1 參數(shù)設置
在Predator-Prey環(huán)境下,訓練直至擬合后的八個算法的平均獎勵如圖6所示??梢?經過24000個回合的訓練,AICNet在平均獎勵方面優(yōu)于所有對比算法。在簡單模式下訓練時,經過訓練,AICNet、MADDPG、CommNet以及IC3Net逐漸各自收斂到較優(yōu)水平。
困難模式的平均獎勵如圖6右部分所示。可以看出,有些算法不能適應智能體數(shù)量的增加。例如,G2ANet在困難模式的表現(xiàn)比在簡單模式的性能相對下降。本文認為是G2ANet的硬注意力機制不能及時進行反向傳播。雖然單一的目標和增加的智能體數(shù)量給多智能體訓練帶來困難,但是AICNet和一些算法(MADDPG、CommNet和IC3Net)可以適應這樣的環(huán)境,其中AICNet平均獎勵高于其算法。
為了更清晰地展示AICNet中注意力模塊對智能體之間交互影響學習的作用,在Predator-Prey困難模式訓練后期截取了某一步的環(huán)境渲染圖像。如圖7所示,可以發(fā)現(xiàn)五個捕食者自動分成兩組。每個捕食者只需對同一組中的捕食者多加關注,就可以有效地避免干擾。與圖7相對應的,圖8描述了當前場景下的注意力權重分布。圖8(a)是智能體1對其智能體的注意力權重,顯然,對于智能體1來說,同一組中的智能體2和智能體3之間的交互影響比較大,因為在這一步的目標是相同的,距離也較近。如圖8(b)所示,智能體4與智能體5的交互多于其智能體??梢钥闯?AICNet能夠模擬各階段智能體之間的博弈關系,避免不相關智能體的干擾?;谝陨显诤献鞲偁幁h(huán)境下的實驗,可以得出結論,所提出的模型有助于提高完成混合環(huán)境任務的效率。
圖7 Predator-Prey環(huán)境的困難模式渲染圖
圖8 Predator-Prey環(huán)境的困難模式注意力渲染圖
圖中每個智能體都表現(xiàn)出非常清晰的目的方向性。
圖9顯示了訓練收斂后CooperativeNavigation中簡單和困難模式測試的平均獎勵值。在簡單模式下,大多數(shù)算法的性能相似,這說明智能體數(shù)量較少的環(huán)境對算法的要求并不嚴格。在簡單模式下,除了AICNet外,采用聚合通信網絡的CommNet和G2ANet的表現(xiàn)也不錯,這表示在具有通信特性的環(huán)境中,聚合網絡的算法更為適合。圖中右邊的困難模式AICNet的獎勵依然比其算法高。與簡單模式相比,G2ANet和BICNet的效率較其算法有所下降,由此可見大規(guī)模智能體環(huán)境的訓練增加了難度。具有統(tǒng)一通信網絡的CommNet具有很好的的性能保持能力,但其效率仍不如實時關注智能體之間關系的AICNet。
圖9 Cooperative Navigation環(huán)境的實驗結果
為了評估算法的效率,給出了每個算法實現(xiàn)收斂所需的訓練回合數(shù),如表2所示。這里的收斂意味著智能體可以在有限的步驟內完成任務。可以看出,AICNet的性能優(yōu)于其的算法,即智能體之間不同的通信組合使得AICNet的收斂速度更快。隨著智能體數(shù)量的增加,AICNet仍能保持良好的訓練穩(wěn)定性。也可以看出,當智能體數(shù)量增加時,使用聚合通信網絡的算法收斂所需次數(shù)的增長量普遍低于松散耦合的算法。除此之外,結合了注意力以及統(tǒng)一通信規(guī)則的IC3Net表現(xiàn)也十分優(yōu)秀,這說明在具備通信模式的環(huán)境下,統(tǒng)一通信模式的方法可以快速適應環(huán)境。MADDPG的訓練速率隨著N和L的數(shù)量增加而降低。本文分析因為MADDPG中的每個智能體都有一個網絡,需要更多的計算和通信步驟。因此,當智能體數(shù)較大時,統(tǒng)一的策略網絡計算更有利于提高訓練效率。
表2 訓練到收斂的平均回合數(shù)
為了便于閱讀,本文在原始獎勵的基礎上加了100(因為原始獎勵是負數(shù))
本文提出了一種新的策略網絡AICNet,它根據(jù)智能體之間的實時注意力和交互影響來調整通信模塊前的輸入,提高了聚合通信模塊的效率。在多智能體場景中,智能體之間的關系在不同時間段發(fā)生變化,所提出的AICNet具備適應性和動態(tài)注意力。
未來工作改進。AICNet將重點放在通信模塊的輸入部分,因此,更先進的消息處理機制設計是今后改進的方向。例如,可以應用多頭注意力機制或圖注意力機制[15]來聯(lián)合處理來自不同相關智能體和不同消息表示子空間的通信消息。