一、多智能體決策大模型面臨的挑戰(zhàn)
現(xiàn)實世界中的大量實際問題可以建模為包含了多個主體的協(xié)同控制和優(yōu)化問題。合作式多智能體系統(tǒng)由多個參與主體,合作地優(yōu)化某個(或多個)相同的目標(biāo)函數(shù),如:游戲AI中的多“英雄”協(xié)作、多用戶-多商品推薦、多車輛運(yùn)輸投遞優(yōu)化、智能倉儲多車輛調(diào)度、云計算多資源調(diào)度、多車輛協(xié)作調(diào)度等。
多智能體問題與單智能體強(qiáng)化學(xué)習(xí)問題的主要區(qū)別在于智能體數(shù)量由單個增加至n個,單個智能體的動作空間變?yōu)榈芽柗e下的指數(shù)型聯(lián)合動作空間,動作作用于環(huán)境,由環(huán)境反饋的狀態(tài)變?yōu)榘琻個智能體信息的狀態(tài)集合,為指數(shù)次方的狀態(tài)空間。通常,該類系統(tǒng)使用MMDP或Dec-POMDP方式進(jìn)行形式化描述。MMDP方法將單智能體的馬爾可夫過程擴(kuò)展至多智能體,核心區(qū)別在于動作空間與狀態(tài)空間的指數(shù)拓展,并假設(shè)系統(tǒng)內(nèi)的每個智能體均可以觀察到系統(tǒng)全局的狀態(tài)。Dec-POMDP方法則使用觀測函數(shù)對系統(tǒng)內(nèi)的每個智能體在有限視野范圍內(nèi)觀測到的信息進(jìn)行建模。合作系統(tǒng)的目標(biāo)在于優(yōu)化所有智能體的聯(lián)合策略以最大化系統(tǒng)全局的累積回報。
求解合作式多智能體系統(tǒng)的最優(yōu)控制策略通常面臨以下三個方面的難點:①由狀態(tài)觀測空間和聯(lián)合動作空間隨實體數(shù)量指數(shù)增長帶來的維度災(zāi)難;②由維度災(zāi)難導(dǎo)致現(xiàn)有的強(qiáng)化學(xué)習(xí)算法學(xué)習(xí)樣本效率低;③在多個任務(wù)之間模型通用性與泛化性較差。
多智能體強(qiáng)化學(xué)習(xí)大模型的根本目的在于設(shè)計一個模型,使其具有比較好的泛化性,一個模型可以解決多個類似問題,包括相同游戲不同場景與不同游戲不同場景。
大模型已在自然語言處理、計算機(jī)視覺等領(lǐng)域已取得突破性成果,最新研究顯示強(qiáng)化學(xué)習(xí)同樣具有BBF(Bigger, Better, Faster)的結(jié)論,當(dāng)模型更大時,模型將具有更好的性能與更快的學(xué)習(xí)速度。在強(qiáng)化學(xué)習(xí)經(jīng)典的Atari-100k測試環(huán)境中,model-based的EfficientZero方法被公認(rèn)為具有較高的sample efficiency,而BBF的研究表明model-free的DQN算法通過增大模型的規(guī)模可以取得與EfficientZero相同的樣本效率并能夠顯著降低訓(xùn)練的開支。隨著網(wǎng)絡(luò)參數(shù)規(guī)模的增大,通過合理的機(jī)制設(shè)計可以使算法性能逐漸提升。
多智能體強(qiáng)化學(xué)習(xí)大模型目前主要面臨四類挑戰(zhàn):①不同場景的智能體數(shù)量、種類不同;②實體的特征、觀測、狀態(tài)不同,導(dǎo)致模型網(wǎng)絡(luò)輸入維度、含義等不同;③動作空間不同,導(dǎo)致策略網(wǎng)絡(luò)輸出維度、含義不同;④獎勵函數(shù)不同,導(dǎo)致價值函數(shù)網(wǎng)絡(luò)輸出尺度不同。
針對以上挑戰(zhàn),需要對多智能體系統(tǒng)構(gòu)建一套完備描述的方法,使得在該描述基礎(chǔ)上設(shè)計通用的決策模型成為可能。類比語言模型,可對多智能體系統(tǒng)內(nèi)部進(jìn)行統(tǒng)一描述。大語言模型的底座由詞表構(gòu)成,詞表構(gòu)成句子,并形成對客觀世界的底層描述。使用tokenizer將詞轉(zhuǎn)化為可學(xué)習(xí)的詞向量,并對齊含義與維度,將詞向量傳遞至神經(jīng)網(wǎng)絡(luò)中并針對具體任務(wù)進(jìn)行訓(xùn)練。對應(yīng)的,多智能體系統(tǒng)中通過全局的屬性表與動作表(動作語義)形成對系統(tǒng)中實體的完備描述(實體表),通過tokenizer的方式將屬性轉(zhuǎn)化為屬性向量與實體向量,將實體向量傳遞至后續(xù)策略網(wǎng)絡(luò)等神經(jīng)網(wǎng)絡(luò)模型中,輸出控制策略。
二、動作語義網(wǎng)絡(luò)
動作語義網(wǎng)絡(luò)研究工作的核心思想是根據(jù)前面定義的語言描述,將系統(tǒng)整體的動作空間按照不同的動作語義進(jìn)行劃分。如星際爭霸中,動作可以劃分為與自身狀態(tài)相關(guān)的移動動作與涉及兩個智能體交互的攻擊動作。在完成動作語義劃分后,根據(jù)不同的動作類型進(jìn)行不同的后續(xù)處理,移動動作僅與智能體自身狀態(tài)相關(guān),攻擊動作使用pairwise的方式表征兩個智能體之間的交互關(guān)系。
該先驗知識的引入使得在星際爭霸、Neural MMO等場景中模型性能有較大提升。該方案也落地到網(wǎng)易《逆水寒》游戲中,顯著提升游戲AI的性能。
三、置換不變性與置換同變性
利用多智能體之間的置換不變性與置換同變性對系統(tǒng)內(nèi)部天然存在的信息冗余進(jìn)行壓縮,以縮小系統(tǒng)的學(xué)習(xí)空間,并間接處理網(wǎng)絡(luò)輸入維度不同的問題。
在含有m個實體(包含n個智能體和m-n個非玩家物體)的系統(tǒng)中,狀態(tài)、觀測空間隨實體數(shù)量指數(shù)增長。系統(tǒng)的狀態(tài)刻畫的是實體集合的客觀信息,不隨輸入順序的變化而變化。在包含同質(zhì)智能體的系統(tǒng)中,實體信息在排列上存在冗余,因此可利用同質(zhì)智能體間天然存在的對稱性,在模型搭建過程中忽略輸入順序的影響可極大程度約減原有呈指數(shù)增長的狀態(tài)空間。
同時,系統(tǒng)內(nèi)部具有不同類型的動作,包括僅與自身狀態(tài)相關(guān)的動作和存在實體之間交互的動作。在考慮排除輸入順序影響的時候,由于實體間交互動作與對應(yīng)實體的狀態(tài)存在一一對應(yīng)的關(guān)系,輸入順序的變化將導(dǎo)致輸出含義的對應(yīng)改變,這對應(yīng)了函數(shù)的置換同變性。另一種僅與自身狀態(tài)相關(guān)的動作類型,改變輸入順序后輸出仍然應(yīng)保持不變,對應(yīng)了函數(shù)的置換不變性。
通過設(shè)計兼具置換同變性與置換不變性的策略網(wǎng)絡(luò)結(jié)構(gòu),利用先驗知識對系統(tǒng)狀態(tài)空間進(jìn)行壓縮,從而能夠極大程度提升后期策略學(xué)習(xí)的效率與效果。
決策網(wǎng)絡(luò)的輸入是由多個實體構(gòu)成的觀測,經(jīng)過典型的inputlayer、backbonelayer(任意網(wǎng)絡(luò)結(jié)構(gòu))和outputlayer,輸出控制策略。我們期望輸出中,僅與自身狀態(tài)相關(guān)的動作不受輸入順序的影響(具備置換不變性),與輸入實體有一一對應(yīng)關(guān)系的動作與輸入順序的改變發(fā)生相同的變化(具備置換同變性)。為了設(shè)計更通用的模型架構(gòu),我們重點遵循“最小改動原理”,在盡量少地去改變已有網(wǎng)絡(luò)結(jié)構(gòu)的條件下達(dá)到期望性質(zhì),最終我們僅改動inputlayerA使其具備置換不變性,并將輸入順序信息告知并修改outputlayerD使其具備置換同變性。
傳統(tǒng)不具備置換不變性的MLP網(wǎng)絡(luò)輸入可以視作每個實體信息乘上獨(dú)立、對應(yīng)的子模塊參數(shù)并對輸出進(jìn)行加和。我們首先提出DynamicPermutationNetwork(DPN),通過增加一個分類選擇函數(shù),實現(xiàn)為每個輸入實體信息一一綁定確定的子模塊參數(shù),進(jìn)而實現(xiàn)輸入層的置換不變性。輸出層要求與輸入具有一一對應(yīng)關(guān)系,構(gòu)造類似的分類網(wǎng)絡(luò),為每一個實體的輸出特征選擇確定性的矩陣,使輸出的順序隨輸入順序的變化發(fā)生協(xié)同的變化,從而實現(xiàn)置換同變性。
基于相同的思想,我們進(jìn)一步提出HyperPolicy Network (HPN),利用“超網(wǎng)絡(luò)”(用一個網(wǎng)絡(luò)為另一個網(wǎng)絡(luò)生成權(quán)重參數(shù))自動化地為每個實體生成相應(yīng)的參數(shù)矩陣。以每個實體的特征作為超網(wǎng)絡(luò)的輸入,超網(wǎng)絡(luò)輸出每個實體對應(yīng)的參數(shù),此結(jié)構(gòu)下實體特征與參數(shù)矩陣天然具有一一對應(yīng)關(guān)系,求和后的輸出具備置換不變性。輸出層利用超網(wǎng)絡(luò)結(jié)構(gòu)為每一個輸入實體特征一一綁定地生成對應(yīng)參數(shù),使輸出與輸入實體存在一一對應(yīng)關(guān)系,具備置換同變性。
在典型的星際爭霸測試環(huán)境中,將HPN的網(wǎng)絡(luò)結(jié)構(gòu)集成到QMIX算法,在所有困難場景均取得100%勝率。
由于設(shè)計遵循最小改動原理,該網(wǎng)絡(luò)結(jié)構(gòu)可非常容易地集成至不同算法(如QPLEX、MAPPO)中,并使算法性能得到較大提升。
此外,在星際爭霸V2、MPE、谷歌足球等更復(fù)雜、隨機(jī)性更強(qiáng)的環(huán)境中,該模型架構(gòu)同樣能夠取得明顯的性能優(yōu)勢。
同時,由于該網(wǎng)絡(luò)結(jié)構(gòu)能自動適應(yīng)由不同實體帶來的輸入維度不同與輸出維度不同的問題,因此具有較好的可泛化性與可遷移性,能夠?qū)崿F(xiàn)不同數(shù)量不同規(guī)模任務(wù)中控制策略的高效復(fù)用。
四、跨任務(wù)自動化課程學(xué)習(xí)
在跨任務(wù)的課程學(xué)習(xí)過程中,系統(tǒng)中存在多個待學(xué)習(xí)的任務(wù),包括難度較大的目標(biāo)任務(wù)、較簡單的起始任務(wù)與其他候選的任務(wù)集合,課程學(xué)習(xí)算法每一步需要從候選任務(wù)集合中選出最合適的任務(wù)從而最終輸出一條“最優(yōu)學(xué)習(xí)序列(路徑)”。解決該問題需要回答兩個核心問題:
①選哪個課程作為下一個學(xué)習(xí)目標(biāo)合適?
②前面學(xué)到的知識在新的課程中如何復(fù)用?
我們提出基于難度和任務(wù)相似度選擇課程。把當(dāng)前策略在備選任務(wù)集合的所有任務(wù)上進(jìn)行評估,得到相應(yīng)的獎勵值。根據(jù)獎勵值排序,選擇處在中間40%的任務(wù),下一課程在這些任務(wù)中產(chǎn)生。同時基于任務(wù)相似度,在難度適中的候選任務(wù)中選擇與目標(biāo)任務(wù)最接近的任務(wù)作為最終選定的課程。為了評估與目標(biāo)任務(wù)的相似度,基于當(dāng)前策略在目標(biāo)任務(wù)和候選任務(wù)中進(jìn)行rollout獲得狀態(tài)訪問分布,利用混合高斯模型對該分布進(jìn)行建模,利用分布相似性衡量任務(wù)相似性。
基于HPN網(wǎng)絡(luò)結(jié)構(gòu)實現(xiàn)策略遷移和復(fù)用。采用前述具有置換不變性和置換同變性,同時支持變長輸入和輸出的HPN網(wǎng)絡(luò)結(jié)構(gòu)實現(xiàn)策略的遷移和復(fù)用。自動化課程學(xué)習(xí)的整體框架為,利用難度和相似度選定下一個學(xué)習(xí)任務(wù),該任務(wù)學(xué)習(xí)過程中利用HPN的結(jié)構(gòu)重載上一個任務(wù)學(xué)得的策略,依次循環(huán),最終在目標(biāo)任務(wù)上取得更好的性能。
我們在星際爭霸場景中進(jìn)行算法驗證,根據(jù)種族類型,將星際爭霸中的游戲場景分成不同的任務(wù)集合(Marines,Stalkers & Zealots,以及Medivac & Marauders & Marines),每個任務(wù)集合均給定起始任務(wù)與難度極大的最終任務(wù)。對比經(jīng)典遷移學(xué)習(xí)算法,不同算法在任務(wù)選擇序列上具有較大差異,我們算法能夠基于任務(wù)難度和對最終任務(wù)的幫助程度選擇出更適合的任務(wù)序列,在最終的任務(wù)中能夠取得非常大的性能提升。
五、pymarl3:代碼開源
最后,我們將系列工作的源代碼開源,將MARL社區(qū)常用的pymarl2代碼庫升級為pymarl3,其特性如下:
(1)增加對SMAC-V2的支持,同時支持SMAC-V1和SMAC-V2,已集成在內(nèi),無需獨(dú)立安裝各個環(huán)境。
(2)升級pymarl2中的算法,使其具備置換不變性和置換同變性,設(shè)計的網(wǎng)絡(luò)結(jié)構(gòu)可非常容易地集成到任意MARL算法中,并提升其性能。
(3)增強(qiáng)版算法,在SMAC-V1和SMAC-V2上均取得SOTA的性能。
本次分享概述多智能體決策大模型面臨的挑戰(zhàn)與類比語言模型對多智能體系統(tǒng)進(jìn)行描述和建模的方案;提出3條重要設(shè)計先驗:動作語義網(wǎng)絡(luò)、置換不變性與置換同變性、跨任務(wù)自動化課程學(xué)習(xí)。歡迎大家一起合作,進(jìn)一步研究強(qiáng)化學(xué)習(xí)大模型!