莊水管, 莊哲明, 翟遠釗, 戴建生
(1.天津大學(xué)機械工程學(xué)院,天津 300350;2.福建省同安第一中學(xué),福建 廈門 361100;3.國防科技大學(xué)計算機學(xué)院,長沙 410015)
多智能體強化學(xué)習(xí)(Multi-Agent Reinforcement Learning with Communication,Comm-MARL)在一系列具有挑戰(zhàn)性的序列決策任務(wù)中取得了廣泛的應(yīng)用[1-2],如交通控制[3]和多用戶策略游戲[4]等。在Comm-MARL中,如何高效地通信仍是一個有待進一步解決的問題,也是多智能體協(xié)調(diào)的關(guān)鍵技術(shù)[5]。智能體可通過通信的方式來交換其本地的觀察結(jié)果,這些通信的消息由分散的智能體聚合和處理后,可用于增強學(xué)習(xí)策略和選擇行動的單個本地觀察,實現(xiàn)智能體共同優(yōu)化的目標[6]。
如何聚合消息是決定通信效率的關(guān)鍵因素[7]。為模擬智能體之間的相互作用關(guān)系,Comm-MARL 普遍使用圖形神經(jīng)網(wǎng)絡(luò)(Graph Neural Networks,GNN),該方法基于圖實現(xiàn)了對多智能體環(huán)境的表征。多智能體系統(tǒng)通常被建模為一個完整的圖,每個智能體對應(yīng)其中的一個節(jié)點[8]。作為最受歡迎的GNN變體之一,圖注意力網(wǎng)絡(luò)(Graph Attention Networks,GAT)在Comm-MARL的開發(fā)中具有巨大的潛力[9-10]。GAT 由節(jié)點和邊組成,經(jīng)過注意力加權(quán)的消息通過邊在節(jié)點之間進行消息傳遞。近年來,GAT在多智能體強化學(xué)習(xí)中被廣泛使用,其中智能體可以被表示為節(jié)點,智能體之間的通信可通過GAT中的消息傳遞來實現(xiàn)。
消息聚合可通過通信圖的注意力加權(quán)消息傳遞來實現(xiàn)。盡管GAT在Comm-MARL中被廣泛應(yīng)用,但研究人員發(fā)現(xiàn)其獲得的消息聚合策略通常缺乏多樣性[11-12]。從本質(zhì)而言,圖中大多數(shù)節(jié)點可能會過度關(guān)注某一個節(jié)點,并經(jīng)常受到其的過度影響[13]。究其原因,對于大部分的多智能體場景,同一消息的重要性對于不同狀態(tài)的智能體而言是不同的。智能體之間采用同構(gòu)的消息聚合策略將導(dǎo)致大部分的智能體過度關(guān)注一部分無意義的消息,導(dǎo)致通信效率低下[14-15]。
為使智能體能夠探索不同的消息聚合策略。研究多智能體通信圖的鄰接矩陣,并提出消息聚合的同質(zhì)性可通過矩陣的秩和核范數(shù)來衡量?;诖颂岢鲆环N基于核范數(shù)的正則化器,用于對鄰接矩陣做正則化約束,以主動豐富Comm-MARL 中消息聚合策略的多樣性。通過這種方式,不同的智能體可以探索不同的行為,以增大獲得最優(yōu)協(xié)調(diào)策略的可能性。
提出了一種即插即用的正則化器,名為“核范數(shù)正則化”(Nuclear Norm Regularization,NNR),圖1 中說明了如何使用該正則化器。對GAT 中每一層的鄰接矩陣做正則化約束。
圖1 將NNR集成到基于GAT的多智能體通信方法
對于每個智能體i,GAT 計算中所有鄰接節(jié)點表示的可被訓(xùn)練的加權(quán)平均值
式中:W'和W包含可學(xué)習(xí)的參數(shù);“‖”為向量的拼接。
鄰接矩陣A 的元素是智能體之間互相的注意力得分,使用Softmax 函數(shù)在所有鄰接節(jié)點之間進行歸一化
式中:i、j為智能體編號;Ni為智能體i的鄰居智能體。鄰接矩陣A滿足以下屬性:
將從鄰接矩陣A的第i行和第j行中選擇的向量為ai和aj。如果智能體i和j具有同質(zhì)的消息聚合策略,則ai和aj的區(qū)別會比較小。在這種情況下,ai和aj可被視為近似的線性相關(guān)。相反,不同的消息聚合策略意味著線性獨立的向量。因此,可用鄰接矩陣A 的矩陣秩來衡量消息聚合的多樣性或同質(zhì)性。
眾所周知,矩陣的秩優(yōu)化問題是多項式復(fù)雜程度的非確定性問題(Non-deterministic Polynomial Hard),因此提出一種利用核范數(shù)的替代方法。鄰接矩陣A的奇異值可表示為σi(i=1,2,…,N),則鄰接矩陣A的核范數(shù)
核范數(shù)也稱為跡范數(shù)或Schatten-1 范數(shù)。可通過約束最大化鄰接矩陣的核范數(shù)來增加消息聚合策略的多樣性(以下在包含兩個智能體的系統(tǒng)中進行分析)。
對于任意二階矩陣
鄰接矩陣A的核范數(shù)
將λ記為ATA的特征值,E為單位矩陣,則有:
令‖λE-A‖=0,則有:
解得:
則有鄰接矩陣A的核范數(shù)
結(jié)合式(3)中給出的鄰接矩陣的屬性,可得核范數(shù)‖A‖*最大的鄰接矩陣
可見,NNR可起到增大鄰接矩陣中消息聚合時的權(quán)重差異,獲得更多樣性的消息聚合策略,豐富多智能體通信的多樣性,促使智能體之間達到更好的任務(wù)分工狀態(tài)。該結(jié)論可推廣到矩陣階數(shù)更高的情況。
在圖注意力通信算法中采用NNR 可使消息聚合的策略具有多樣性。遵循大多數(shù)Comm-MARL 方法,使用共享參數(shù)分散化范式(Policy Decentralization with Shared Parameters,PDSP )的近端策略優(yōu)化算法(Proximal Policy Optimization,PPO)作為框架。則Comm-MARL原始損失函數(shù)的梯度
為發(fā)現(xiàn)不同的消息聚合策略,將NNR應(yīng)用于GAT層的鄰接矩陣A。第l層GAT 中NNR 的相應(yīng)損失函數(shù)
式中,θl為用于生成第l個GAT層的鄰接矩陣A的圖神經(jīng)網(wǎng)絡(luò)參數(shù)。
通過最小化以下?lián)p失函數(shù)來更新模型參數(shù)θ,即
式中,λl是l層的NNR 的正則化權(quán)重。為在訓(xùn)練過程中使λl逐漸衰減,引入新的縮放超參數(shù)βl,則
通過交通路口和星際爭霸II 多智能體挑戰(zhàn)兩個實驗,評估NNR 在兩種廣泛使用的場景中的性能,分別驗證NNR對消息多樣性和實驗成功率的提升作用。
在交通路口的場景中,分析多樣化消息聚合的必要性。而星際爭霸II 多智能體挑戰(zhàn)環(huán)境是近年來評估各種強化學(xué)習(xí)研究成果的常用基準。其中,選擇了兩種最先進的通信Comm-MARL 方法,分別是博弈抽象通信法(Game Abstraction Communication,GAComm)[16]和深度隱式協(xié)調(diào)圖-集中執(zhí)行-長短期記憶法(Deep Implicit Coordination Graphs-Centralized Execution-LongShort-TermMemory, DICG-CELSTM)[17]。將NNR與它們集成后進行實驗。所有的實驗結(jié)果均通過3 次運行后取平均值而得出。
交通路口場景:邊長為18 個網(wǎng)格的正方形實驗場,實驗場上有雙向交叉路線、4 個終點和若干具有1個網(wǎng)格視野的汽車(即智能體)。汽車需要通過通信來避免發(fā)生碰撞。將環(huán)境中最大的汽車數(shù)量設(shè)置為20 輛,并設(shè)置最大的動作執(zhí)行次數(shù)為50 次,新的汽車被添加到環(huán)境中的概率為0.05。實驗成功的定義是一定時間內(nèi)沒有汽車之間的碰撞發(fā)生。每輛汽車在每個時間步內(nèi)的可選擇的動作是前進或剎車,獎勵包括-0.01 的步進成本和-10 的碰撞懲罰。
策略網(wǎng)絡(luò)包含2 個GAT 層,分別設(shè)置GAT 層的NNR的縮放系數(shù)β1=0.01、β2=0.005。對于目標不同終點的智能體,NNR可鼓勵它們獲得不同的消息聚合策略。智能體的消息聚合策略在不同時間點都在不斷地變化。為分析NNR對消息聚合策略的影響,在圖2 時刻中用訓(xùn)練好的策略對2 個智能體的消息聚合策略進行可視化評估。圖中的數(shù)字為智能體的編號。
圖2 交通路口場景中的實驗測試幀
如圖2 所示,智能體5 號位于左上角,智能體9 號位于右下角。即使它們之間可以通信,這些信息對彼此都是無意義的。圖3 為具有代表性的智能體用于消息聚合的注意力分數(shù)值的分布。通過使用NNR,智能體5 號和9 號獲得了不同的消息聚合策略。實驗結(jié)果表明可使得多智能體系統(tǒng)中的消息通信更加高效,也減少了不相關(guān)的智能體之間的不必要的通信干擾。
圖3 智能體5和9的消息聚合策略
基于前述實驗的結(jié)論,可在更復(fù)雜的星際爭霸場景中進行測試,以證明NNR的通用性和有效性。星際爭霸II多智能體挑戰(zhàn)環(huán)境是實時戰(zhàn)略游戲《星際爭霸II》開發(fā)而來,該環(huán)境需要使用算法對多個智能體進行微操作。其中,每個智能體都由獨立的控制器控制,且必須根據(jù)本地觀測的數(shù)據(jù)采取下一步的動作。
NNR通過即插即用的方式,便于和現(xiàn)有的基于圖的多智能體通信方法集成。選擇多智能體通信強化學(xué)習(xí)算法中最先進的算法之一DICG-CE-LSTM[17],并將NNR應(yīng)用于其中。所有超參數(shù)與原方法一致,縮放超參數(shù)β1設(shè)為0.005。選取星際爭霸II 多智能體挑戰(zhàn)環(huán)境中的實驗地圖,其初始化狀態(tài)如圖4 所示。
圖4 實驗地圖的初始化狀態(tài)
在該實驗的地圖中,雙方選手各擁有3 名跟蹤者和5 名狂熱者。相比于跟蹤者,狂熱者可以造成更高的傷害,但其速度更慢。該實驗的算法將控制左側(cè)選手的跟蹤者和狂熱者,與右側(cè)選手的隊伍進行對戰(zhàn),首先消滅對方所有場上角色的一方獲得勝利。
該實驗記錄的采用NNR 作為正則化器與原算法的平均獲勝率如圖5 所示。與不采用NNR 的方法相比,加入NNR 正則化項的方法展現(xiàn)了出色的性能,明顯擁有更高的勝率。因為多樣化的消息聚合策略帶來的多樣化行為策略,使得群體智能得以涌現(xiàn)。
圖5 采用NNR作為正則化器時與原算法的性能比較
更進一步可將最終的訓(xùn)練策略可視化如圖6 所示。在實驗地圖中,3 個狂熱者具有相同的策略網(wǎng)絡(luò)參數(shù),且具有相似的局部觀測,但可做出不同的行動,最終包圍對方的跟蹤者進行攻擊,獲得勝利。復(fù)雜的協(xié)調(diào)策略直接反映了NNR 帶來的消息聚合多樣化的效果,體現(xiàn)了算法的有效性。
圖6 算法訓(xùn)練的最終策略可視化
本文提出用矩陣的秩來度量多智能體通信中消息聚合的多樣性,使用核范數(shù)來量化多樣性。即插即用正則化器NNR,可主動豐富消息聚合的多樣性。實驗結(jié)果表明,相比現(xiàn)有的消息聚合方法,加入NNR 正則化項的GAT可達到更高的漸進性能和更好的訓(xùn)練效率。NNR可以很容易地集成到現(xiàn)有的基于圖建模的多智能體通信方法,而且可有效提高算法的性能,具有較高的應(yīng)用價值。