莊水管, 莊哲明, 翟遠釗, 戴建生
(1.天津大學機械工程學院,天津 300350;2.福建省同安第一中學,福建 廈門 361100;3.國防科技大學計算機學院,長沙 410015)
多智能體強化學習(Multi-Agent Reinforcement Learning with Communication,Comm-MARL)在一系列具有挑戰性的序列決策任務中取得了廣泛的應用[1-2],如交通控制[3]和多用戶策略游戲[4]等。在Comm-MARL中,如何高效地通信仍是一個有待進一步解決的問題,也是多智能體協調的關鍵技術[5]。智能體可通過通信的方式來交換其本地的觀察結果,這些通信的消息由分散的智能體聚合和處理后,可用于增強學習策略和選擇行動的單個本地觀察,實現智能體共同優化的目標[6]。
如何聚合消息是決定通信效率的關鍵因素[7]。為模擬智能體之間的相互作用關系,Comm-MARL 普遍使用圖形神經網絡(Graph Neural Networks,GNN),該方法基于圖實現了對多智能體環境的表征。多智能體系統通常被建模為一個完整的圖,每個智能體對應其中的一個節點[8]。作為最受歡迎的GNN變體之一,圖注意力網絡(Graph Attention Networks,GAT)在Comm-MARL的開發中具有巨大的潛力[9-10]。GAT 由節點和邊組成,經過注意力加權的消息通過邊在節點之間進行消息傳遞。近年來,GAT在多智能體強化學習中被廣泛使用,其中智能體可以被表示為節點,智能體之間的通信可通過GAT中的消息傳遞來實現。
消息聚合可通過通信圖的注意力加權消息傳遞來實現。盡管GAT在Comm-MARL中被廣泛應用,但研究人員發現其獲得的消息聚合策略通常缺乏多樣性[11-12]。從本質而言,圖中大多數節點可能會過度關注某一個節點,并經常受到其的過度影響[13]。究其原因,對于大部分的多智能體場景,同一消息的重要性對于不同狀態的智能體而言是不同的。智能體之間采用同構的消息聚合策略將導致大部分的智能體過度關注一部分無意義的消息,導致通信效率低下[14-15]。
為使智能體能夠探索不同的消息聚合策略。研究多智能體通信圖的鄰接矩陣,并提出消息聚合的同質性可通過矩陣的秩和核范數來衡量。基于此提出一種基于核范數的正則化器,用于對鄰接矩陣做正則化約束,以主動豐富Comm-MARL 中消息聚合策略的多樣性。通過這種方式,不同的智能體可以探索不同的行為,以增大獲得最優協調策略的可能性。
提出了一種即插即用的正則化器,名為“核范數正則化”(Nuclear Norm Regularization,NNR),圖1 中說明了如何使用該正則化器。對GAT 中每一層的鄰接矩陣做正則化約束。

圖1 將NNR集成到基于GAT的多智能體通信方法
對于每個智能體i,GAT 計算中所有鄰接節點表示的可被訓練的加權平均值
式中:W'和W包含可學習的參數;“‖”為向量的拼接。
鄰接矩陣A 的元素是智能體之間互相的注意力得分,使用Softmax 函數在所有鄰接節點之間進行歸一化
式中:i、j為智能體編號;Ni為智能體i的鄰居智能體。鄰接矩陣A滿足以下屬性:
將從鄰接矩陣A的第i行和第j行中選擇的向量為ai和aj。如果智能體i和j具有同質的消息聚合策略,則ai和aj的區別會比較小。在這種情況下,ai和aj可被視為近似的線性相關。相反,不同的消息聚合策略意味著線性獨立的向量。因此,可用鄰接矩陣A 的矩陣秩來衡量消息聚合的多樣性或同質性。
眾所周知,矩陣的秩優化問題是多項式復雜程度的非確定性問題(Non-deterministic Polynomial Hard),因此提出一種利用核范數的替代方法。鄰接矩陣A的奇異值可表示為σi(i=1,2,…,N),則鄰接矩陣A的核范數
核范數也稱為跡范數或Schatten-1 范數。可通過約束最大化鄰接矩陣的核范數來增加消息聚合策略的多樣性(以下在包含兩個智能體的系統中進行分析)。
對于任意二階矩陣
鄰接矩陣A的核范數
將λ記為ATA的特征值,E為單位矩陣,則有:
令‖λE-A‖=0,則有:
解得:
則有鄰接矩陣A的核范數
結合式(3)中給出的鄰接矩陣的屬性,可得核范數‖A‖*最大的鄰接矩陣
可見,NNR可起到增大鄰接矩陣中消息聚合時的權重差異,獲得更多樣性的消息聚合策略,豐富多智能體通信的多樣性,促使智能體之間達到更好的任務分工狀態。該結論可推廣到矩陣階數更高的情況。
在圖注意力通信算法中采用NNR 可使消息聚合的策略具有多樣性。遵循大多數Comm-MARL 方法,使用共享參數分散化范式(Policy Decentralization with Shared Parameters,PDSP )的近端策略優化算法(Proximal Policy Optimization,PPO)作為框架。則Comm-MARL原始損失函數的梯度
為發現不同的消息聚合策略,將NNR應用于GAT層的鄰接矩陣A。第l層GAT 中NNR 的相應損失函數
式中,θl為用于生成第l個GAT層的鄰接矩陣A的圖神經網絡參數。
通過最小化以下損失函數來更新模型參數θ,即
式中,λl是l層的NNR 的正則化權重。為在訓練過程中使λl逐漸衰減,引入新的縮放超參數βl,則
通過交通路口和星際爭霸II 多智能體挑戰兩個實驗,評估NNR 在兩種廣泛使用的場景中的性能,分別驗證NNR對消息多樣性和實驗成功率的提升作用。
在交通路口的場景中,分析多樣化消息聚合的必要性。而星際爭霸II 多智能體挑戰環境是近年來評估各種強化學習研究成果的常用基準。其中,選擇了兩種最先進的通信Comm-MARL 方法,分別是博弈抽象通信法(Game Abstraction Communication,GAComm)[16]和深度隱式協調圖-集中執行-長短期記憶法(Deep Implicit Coordination Graphs-Centralized Execution-LongShort-TermMemory, DICG-CELSTM)[17]。將NNR與它們集成后進行實驗。所有的實驗結果均通過3 次運行后取平均值而得出。
交通路口場景:邊長為18 個網格的正方形實驗場,實驗場上有雙向交叉路線、4 個終點和若干具有1個網格視野的汽車(即智能體)。汽車需要通過通信來避免發生碰撞。將環境中最大的汽車數量設置為20 輛,并設置最大的動作執行次數為50 次,新的汽車被添加到環境中的概率為0.05。實驗成功的定義是一定時間內沒有汽車之間的碰撞發生。每輛汽車在每個時間步內的可選擇的動作是前進或剎車,獎勵包括-0.01 的步進成本和-10 的碰撞懲罰。
策略網絡包含2 個GAT 層,分別設置GAT 層的NNR的縮放系數β1=0.01、β2=0.005。對于目標不同終點的智能體,NNR可鼓勵它們獲得不同的消息聚合策略。智能體的消息聚合策略在不同時間點都在不斷地變化。為分析NNR對消息聚合策略的影響,在圖2 時刻中用訓練好的策略對2 個智能體的消息聚合策略進行可視化評估。圖中的數字為智能體的編號。

圖2 交通路口場景中的實驗測試幀
如圖2 所示,智能體5 號位于左上角,智能體9 號位于右下角。即使它們之間可以通信,這些信息對彼此都是無意義的。圖3 為具有代表性的智能體用于消息聚合的注意力分數值的分布。通過使用NNR,智能體5 號和9 號獲得了不同的消息聚合策略。實驗結果表明可使得多智能體系統中的消息通信更加高效,也減少了不相關的智能體之間的不必要的通信干擾。

圖3 智能體5和9的消息聚合策略
基于前述實驗的結論,可在更復雜的星際爭霸場景中進行測試,以證明NNR的通用性和有效性。星際爭霸II多智能體挑戰環境是實時戰略游戲《星際爭霸II》開發而來,該環境需要使用算法對多個智能體進行微操作。其中,每個智能體都由獨立的控制器控制,且必須根據本地觀測的數據采取下一步的動作。
NNR通過即插即用的方式,便于和現有的基于圖的多智能體通信方法集成。選擇多智能體通信強化學習算法中最先進的算法之一DICG-CE-LSTM[17],并將NNR應用于其中。所有超參數與原方法一致,縮放超參數β1設為0.005。選取星際爭霸II 多智能體挑戰環境中的實驗地圖,其初始化狀態如圖4 所示。

圖4 實驗地圖的初始化狀態
在該實驗的地圖中,雙方選手各擁有3 名跟蹤者和5 名狂熱者。相比于跟蹤者,狂熱者可以造成更高的傷害,但其速度更慢。該實驗的算法將控制左側選手的跟蹤者和狂熱者,與右側選手的隊伍進行對戰,首先消滅對方所有場上角色的一方獲得勝利。
該實驗記錄的采用NNR 作為正則化器與原算法的平均獲勝率如圖5 所示。與不采用NNR 的方法相比,加入NNR 正則化項的方法展現了出色的性能,明顯擁有更高的勝率。因為多樣化的消息聚合策略帶來的多樣化行為策略,使得群體智能得以涌現。

圖5 采用NNR作為正則化器時與原算法的性能比較
更進一步可將最終的訓練策略可視化如圖6 所示。在實驗地圖中,3 個狂熱者具有相同的策略網絡參數,且具有相似的局部觀測,但可做出不同的行動,最終包圍對方的跟蹤者進行攻擊,獲得勝利。復雜的協調策略直接反映了NNR 帶來的消息聚合多樣化的效果,體現了算法的有效性。

圖6 算法訓練的最終策略可視化
本文提出用矩陣的秩來度量多智能體通信中消息聚合的多樣性,使用核范數來量化多樣性。即插即用正則化器NNR,可主動豐富消息聚合的多樣性。實驗結果表明,相比現有的消息聚合方法,加入NNR 正則化項的GAT可達到更高的漸進性能和更好的訓練效率。NNR可以很容易地集成到現有的基于圖建模的多智能體通信方法,而且可有效提高算法的性能,具有較高的應用價值。