化學(xué)習(xí):破解開(kāi)放系統(tǒng)中分布式在線任務(wù)分配難題)
1. 從“搶單”到“協(xié)同”開(kāi)放多智能體系統(tǒng)中的任務(wù)分配挑戰(zhàn)想象一下在一個(gè)大型物流倉(cāng)庫(kù)里幾十臺(tái)AGV小車(chē)在貨架間穿梭。突然系統(tǒng)彈出了一批新的揀貨任務(wù)有的在A區(qū)有的在B區(qū)有的緊急有的常規(guī)。這些小車(chē)沒(méi)有中央調(diào)度員實(shí)時(shí)指揮它們需要自己決定“我該去搶哪個(gè)任務(wù)”。如果大家都涌向最近的那個(gè)“香餑餑”就會(huì)造成擁堵和效率低下如果都避重就輕那些耗時(shí)但重要的任務(wù)就沒(méi)人處理。這就是開(kāi)放多智能體系統(tǒng)中在線分布式任務(wù)分配的核心難題一群自主的智能體面對(duì)動(dòng)態(tài)涌現(xiàn)的任務(wù)流如何僅依靠局部信息和有限的通信做出全局高效的決策我最近在復(fù)現(xiàn)和優(yōu)化一個(gè)相關(guān)的研究項(xiàng)目核心就是標(biāo)題中的“Submodular Multi-Agent Policy Learning for Online Distributed Task Allocation in Open Multi-Agent Systems”。這串術(shù)語(yǔ)聽(tīng)起來(lái)很學(xué)術(shù)但拆解開(kāi)來(lái)正是解決上述“倉(cāng)庫(kù)小車(chē)搶單”問(wèn)題的鑰匙。“開(kāi)放系統(tǒng)”意味著智能體可以隨時(shí)加入或離開(kāi)任務(wù)也是隨機(jī)、動(dòng)態(tài)出現(xiàn)的這比固定團(tuán)隊(duì)、固定任務(wù)集的場(chǎng)景復(fù)雜得多?!霸诰€分布式”要求每個(gè)智能體基于自己當(dāng)前的觀察比如看到周?chē)心男┤蝿?wù)、其他智能體在干嘛實(shí)時(shí)做出決策而不是等一個(gè)中心節(jié)點(diǎn)算好再分發(fā)。而“次模多智能體策略學(xué)習(xí)”則是我們用來(lái)攻克這個(gè)難題的數(shù)學(xué)工具和訓(xùn)練方法。次模性Submodularity是這個(gè)方法的核心魅力所在。簡(jiǎn)單來(lái)說(shuō)它描述了一種“邊際效益遞減”的性質(zhì)。比如第一臺(tái)小車(chē)去處理一個(gè)區(qū)域的任務(wù)效率提升很大第二臺(tái)再去因?yàn)榭赡墚a(chǎn)生路徑交叉或資源競(jìng)爭(zhēng)帶來(lái)的額外收益就會(huì)變小。將任務(wù)分配的全局收益建模成次模函數(shù)意味著我們可以利用其數(shù)學(xué)性質(zhì)設(shè)計(jì)出性能有理論保證的分布式貪心算法。即使每個(gè)智能體只基于局部信息做出對(duì)自己看似最優(yōu)的選擇只要這個(gè)選擇遵循次模函數(shù)下的貪心規(guī)則整個(gè)系統(tǒng)的表現(xiàn)就不會(huì)離全局最優(yōu)太遠(yuǎn)。這就像告訴每個(gè)小車(chē)“別只盯著離你最近的那個(gè)任務(wù)要想想你的加入對(duì)整個(gè)區(qū)域任務(wù)完成速度的‘邊際貢獻(xiàn)’。”那么如何讓智能體學(xué)會(huì)這種考慮“邊際貢獻(xiàn)”的決策方式呢這就是“策略學(xué)習(xí)”要做的。我們不再手動(dòng)設(shè)計(jì)復(fù)雜的分配規(guī)則而是通過(guò)多智能體強(qiáng)化學(xué)習(xí)讓智能體在與環(huán)境和其他智能體的互動(dòng)中自主學(xué)習(xí)出一套高效的分布式策略。最新的研究熱點(diǎn)比如將大型語(yǔ)言模型的異構(gòu)性考慮進(jìn)來(lái)的服務(wù)框架或者注意力機(jī)制加持的強(qiáng)化學(xué)習(xí)算法都為我們?cè)O(shè)計(jì)更智能、更適應(yīng)復(fù)雜場(chǎng)景的策略網(wǎng)絡(luò)提供了新思路。接下來(lái)我將深入這個(gè)項(xiàng)目的幾個(gè)關(guān)鍵層面分享從問(wèn)題建模、算法設(shè)計(jì)到實(shí)踐調(diào)優(yōu)的全過(guò)程思考與踩坑記錄。2. 問(wèn)題形式化如何為動(dòng)態(tài)“搶單”建立數(shù)學(xué)模型要把一個(gè)現(xiàn)實(shí)問(wèn)題變成算法可以處理的樣子第一步就是建立嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)模型。對(duì)于開(kāi)放多智能體系統(tǒng)中的在線任務(wù)分配我們需要定義幾個(gè)核心要素智能體、任務(wù)、收益函數(shù)以及交互范式。首先智能體集合是時(shí)變的記為A(t)表示在時(shí)間t活躍的智能體。每個(gè)智能體i有其狀態(tài)s_i例如位置、電量、當(dāng)前負(fù)載等。任務(wù)則是隨機(jī)到達(dá)的我們用一個(gè)任務(wù)流來(lái)描述每個(gè)任務(wù)j有其屬性如位置、所需資源、截止時(shí)間、價(jià)值等。關(guān)鍵點(diǎn)在于“在線”和“分布式”當(dāng)一個(gè)任務(wù)出現(xiàn)時(shí)系統(tǒng)不會(huì)等所有任務(wù)到齊再分配而是需要立即或盡快做出分配決策同時(shí)這個(gè)決策不是由中心節(jié)點(diǎn)做出的每個(gè)智能體基于自身局部觀察o_i通常包括一定通信范圍內(nèi)的其他智能體和任務(wù)信息來(lái)獨(dú)立決定是否“競(jìng)標(biāo)”該任務(wù)。整個(gè)系統(tǒng)的目標(biāo)是最大化一段時(shí)期內(nèi)所有被完成任務(wù)的累積收益。如果我們把t時(shí)刻之前所有被智能體集合S完成的任務(wù)所帶來(lái)的收益看作一個(gè)函數(shù)F(S)那么理想的任務(wù)分配就是找到每一步能最大化F增長(zhǎng)的智能體-任務(wù)匹配。這里次模性的引入就至關(guān)重要。我們假設(shè)這個(gè)全局收益函數(shù)F是次模的。這意味著對(duì)于任意兩個(gè)智能體集合A?B和任意一個(gè)智能體i?B都有F(A ∪ {i}) - F(A) ≥ F(B ∪ {i}) - F(B)翻譯過(guò)來(lái)就是一個(gè)智能體加入一個(gè)較小的團(tuán)隊(duì)所帶來(lái)的邊際收益總是不低于它加入一個(gè)較大的團(tuán)隊(duì)所帶來(lái)的邊際收益。這非常符合直覺(jué)當(dāng)系統(tǒng)里已經(jīng)有大量智能體時(shí)新增一個(gè)智能體對(duì)整體效率的提升是有限的反之在系統(tǒng)初始階段每增加一個(gè)智能體都至關(guān)重要。在任務(wù)分配場(chǎng)景中次模性常常自然成立。例如收益可能是覆蓋的任務(wù)數(shù)量、減少的總延遲等。由于智能體間可能存在冗余工作或路徑?jīng)_突第一個(gè)智能體處理某個(gè)區(qū)域任務(wù)的收益最大后續(xù)智能體的邊際收益會(huì)遞減?;谶@個(gè)性質(zhì)我們可以證明一個(gè)簡(jiǎn)單的分布式貪心算法——每個(gè)智能體在每一步選擇能帶來(lái)最大邊際收益的任務(wù)基于其局部信息估算——所能達(dá)到的全局收益至少是最優(yōu)解的 (1 - 1/e) ≈ 63% 以上。這為分布式在線算法的性能提供了一個(gè)堅(jiān)實(shí)的理論下界也是我們后續(xù)設(shè)計(jì)學(xué)習(xí)算法的基石。注意在實(shí)際建模中證明收益函數(shù)的次模性有時(shí)需要一些假設(shè)例如任務(wù)之間相互獨(dú)立或者智能體執(zhí)行任務(wù)的收益可加且受資源容量限制。如果場(chǎng)景中存在強(qiáng)烈的協(xié)同效應(yīng)比如兩個(gè)智能體必須配合才能完成一個(gè)任務(wù)次模性可能不成立需要更復(fù)雜的模型。3. 策略學(xué)習(xí)架構(gòu)設(shè)計(jì)從集中式訓(xùn)練到分布式執(zhí)行有了問(wèn)題模型接下來(lái)就是設(shè)計(jì)智能體的大腦——策略網(wǎng)絡(luò)。我們的目標(biāo)是訓(xùn)練一個(gè)策略π輸入是智能體的局部觀察o_i輸出是它對(duì)當(dāng)前可用任務(wù)的動(dòng)作偏好比如一個(gè)得分向量進(jìn)而根據(jù)這些偏好執(zhí)行分布式?jīng)Q策。這里我們采用了經(jīng)典的“集中式訓(xùn)練分布式執(zhí)行”框架這是多智能體強(qiáng)化學(xué)習(xí)處理協(xié)作問(wèn)題的常見(jiàn)范式。在訓(xùn)練階段我們有一個(gè)模擬環(huán)境可以獲取全局狀態(tài)信息。我們?cè)O(shè)計(jì)一個(gè)集中的“評(píng)論家”網(wǎng)絡(luò)它接收所有智能體的觀察和動(dòng)作來(lái)估算全局的狀態(tài)值函數(shù)或動(dòng)作優(yōu)勢(shì)函數(shù)。這個(gè)全局視角的評(píng)論家用于指導(dǎo)各個(gè)智能體“演員”網(wǎng)絡(luò)的更新讓它們學(xué)習(xí)考慮自身行為對(duì)全局收益的影響。每個(gè)智能體的“演員”網(wǎng)絡(luò)結(jié)構(gòu)通常是相同的但參數(shù)共享與否是一個(gè)需要權(quán)衡的設(shè)計(jì)選擇。參數(shù)共享有助于樣本效率和學(xué)習(xí)穩(wěn)定性特別是在智能體同質(zhì)的場(chǎng)景下但如果智能體角色差異很大比如有的負(fù)責(zé)運(yùn)輸有的負(fù)責(zé)裝配獨(dú)立的策略網(wǎng)絡(luò)可能更合適。策略網(wǎng)絡(luò)的輸入層需要精心設(shè)計(jì)以處理局部觀察。通常我們會(huì)將o_i編碼成幾個(gè)部分1智能體自身的狀態(tài)向量2對(duì)周?chē)渌悄荏w狀態(tài)的聚合表示例如通過(guò)均值池化或注意力機(jī)制3對(duì)周?chē)捎萌蝿?wù)特征的聚合表示。這些編碼后的特征被拼接起來(lái)送入一個(gè)多層感知機(jī)最終輸出每個(gè)可選動(dòng)作的概率分布或Q值。這里的一個(gè)關(guān)鍵技巧是如何在策略中體現(xiàn)“次模性”的誘導(dǎo)。一種直接的方法是將次模貪心算法的決策邏輯作為策略網(wǎng)絡(luò)輸出層的一個(gè)歸納偏置或約束。例如我們可以讓策略網(wǎng)絡(luò)學(xué)習(xí)估算每個(gè)任務(wù)對(duì)全局收益的邊際貢獻(xiàn)然后選擇邊際貢獻(xiàn)最大的任務(wù)。另一種更端到端的方法是在訓(xùn)練時(shí)將次模貪心算法在全局信息下得到的分配結(jié)果作為專(zhuān)家示范通過(guò)模仿學(xué)習(xí)來(lái)初始化策略或者將其作為輔助訓(xùn)練目標(biāo)與強(qiáng)化學(xué)習(xí)的主目標(biāo)相結(jié)合。我在實(shí)驗(yàn)中發(fā)現(xiàn)純粹的強(qiáng)化學(xué)習(xí)探索效率較低容易陷入局部最優(yōu)而結(jié)合了次模優(yōu)化先驗(yàn)知識(shí)的方法收斂更快最終性能也更穩(wěn)定。最新的網(wǎng)絡(luò)熱詞“actor-attention-critic for multi-agent reinforcement learning”在這里非常相關(guān)。我們可以用注意力機(jī)制來(lái)改進(jìn)評(píng)論家網(wǎng)絡(luò)和演員網(wǎng)絡(luò)的觀察編碼部分。例如在計(jì)算智能體i對(duì)其他智能體狀態(tài)的聚合時(shí)不使用簡(jiǎn)單的平均而是讓i學(xué)會(huì)“關(guān)注”那些與當(dāng)前決策最相關(guān)的鄰居智能體。同樣在處理多個(gè)任務(wù)特征時(shí)注意力機(jī)制可以讓智能體動(dòng)態(tài)地關(guān)注那些價(jià)值更高或更匹配自身狀態(tài)的任務(wù)。這大大增強(qiáng)了策略的表達(dá)能力和在復(fù)雜場(chǎng)景下的適應(yīng)性。4. 通信與協(xié)調(diào)機(jī)制在信息受限下實(shí)現(xiàn)高效協(xié)同在完全分布式的設(shè)定下智能體之間沒(méi)有直接的全局信息共享。那么它們?nèi)绾螀f(xié)調(diào)以避免沖突比如兩個(gè)智能體搶同一個(gè)任務(wù)或?qū)崿F(xiàn)互補(bǔ)呢這就引入了通信機(jī)制的設(shè)計(jì)。我們通常假設(shè)智能體可以在有限的通信半徑內(nèi)與鄰居交換簡(jiǎn)短的消息。一種基礎(chǔ)的協(xié)調(diào)方式是“基于一致性的拍賣(mài)”。當(dāng)一個(gè)新任務(wù)出現(xiàn)感知到它的智能體會(huì)廣播一個(gè)任務(wù)公告。收到公告的智能體根據(jù)自身策略計(jì)算對(duì)該任務(wù)的“出價(jià)”可以理解為預(yù)估的邊際收益并將出價(jià)反饋。然后通過(guò)一個(gè)分布式協(xié)商協(xié)議例如采用最大一致性算法所有相關(guān)智能體達(dá)成共識(shí)將任務(wù)分配給出價(jià)最高的智能體。這個(gè)過(guò)程完全分布式不需要中心節(jié)點(diǎn)。策略學(xué)習(xí)需要與這種通信協(xié)調(diào)機(jī)制深度融合。智能體的策略網(wǎng)絡(luò)其輸入o_i就包含了接收到的鄰居消息。因此策略學(xué)習(xí)的一部分就是學(xué)習(xí)如何生成有信息量的消息以及如何解讀收到的消息。例如一個(gè)智能體在決定是否競(jìng)標(biāo)一個(gè)任務(wù)時(shí)除了看任務(wù)本身也會(huì)考慮鄰居智能體廣播的意圖消息。如果鄰居已經(jīng)表示要處理某個(gè)相鄰區(qū)域的任務(wù)那么自己再去處理重疊區(qū)域的任務(wù)可能邊際收益就很小策略網(wǎng)絡(luò)應(yīng)該學(xué)會(huì)抑制這種“內(nèi)卷”行為。更高級(jí)的通信設(shè)計(jì)是學(xué)習(xí)式的。我們?yōu)槊總€(gè)智能體增加一個(gè)通信網(wǎng)絡(luò)它將智能體的內(nèi)部狀態(tài)編碼成一個(gè)消息向量發(fā)送出去。接收方則將收到的消息向量解碼作為自己決策的額外信息。這個(gè)通信網(wǎng)絡(luò)的參數(shù)與策略網(wǎng)絡(luò)一起進(jìn)行端到端的訓(xùn)練。強(qiáng)化學(xué)習(xí)的獎(jiǎng)勵(lì)信號(hào)會(huì)驅(qū)動(dòng)智能體學(xué)會(huì)發(fā)送那些能促進(jìn)團(tuán)隊(duì)協(xié)作、提升全局收益的消息。例如智能體可能會(huì)學(xué)會(huì)發(fā)送“我正在前往東區(qū)”的消息從而無(wú)形中為其他智能體劃分了工作區(qū)域。然而在實(shí)踐中引入學(xué)習(xí)式通信帶來(lái)了新的挑戰(zhàn)。首先是訓(xùn)練不穩(wěn)定消息空間是連續(xù)且高維的探索難度大。其次是如何避免智能體學(xué)到一些無(wú)意義的、甚至干擾性的“黑話”。我們通常需要對(duì)通信施加約束比如限制消息維度、加入消息熵的正則化項(xiàng)以鼓勵(lì)簡(jiǎn)潔明了的通信或者使用注意力機(jī)制來(lái)過(guò)濾無(wú)關(guān)消息。我的經(jīng)驗(yàn)是在任務(wù)相對(duì)簡(jiǎn)單的場(chǎng)景中基于固定規(guī)則的協(xié)商協(xié)議如一致性拍賣(mài)已經(jīng)足夠高效且穩(wěn)定只有在環(huán)境非常復(fù)雜、智能體間協(xié)作模式多樣且難以預(yù)定義時(shí)才值得投入精力去設(shè)計(jì)學(xué)習(xí)式通信并且需要更精細(xì)的超參數(shù)調(diào)優(yōu)和訓(xùn)練技巧。5. 開(kāi)放性與動(dòng)態(tài)性處理智能體的“加入”與“離開(kāi)”開(kāi)放多智能體系統(tǒng)最顯著的特征就是智能體的動(dòng)態(tài)性。這不僅指任務(wù)動(dòng)態(tài)到達(dá)更指智能體集合本身是變化的——新的智能體可能隨時(shí)加入系統(tǒng)現(xiàn)有的智能體也可能因故障、電量耗盡或完成任務(wù)而離開(kāi)。這對(duì)策略學(xué)習(xí)和在線決策都提出了嚴(yán)峻挑戰(zhàn)。對(duì)于策略學(xué)習(xí)而言我們需要訓(xùn)練出的策略能夠泛化到不同規(guī)模的智能體群體。如果我們?cè)谟?xùn)練時(shí)只使用固定數(shù)量的智能體那么學(xué)到的策略在面對(duì)更多或更少的智能體時(shí)性能可能會(huì)嚴(yán)重下降。一種標(biāo)準(zhǔn)的做法是在訓(xùn)練階段隨機(jī)化智能體的數(shù)量。在每一輪訓(xùn)練開(kāi)始我們從一個(gè)人口池中隨機(jī)采樣一定數(shù)量的智能體參與本次回合。這樣策略網(wǎng)絡(luò)就必須學(xué)會(huì)處理可變數(shù)量的輸入鄰居智能體和任務(wù)的信息。這通常通過(guò)使用能夠處理集合輸入的網(wǎng)絡(luò)結(jié)構(gòu)來(lái)實(shí)現(xiàn)例如前面提到的基于注意力機(jī)制的聚合層或者圖神經(jīng)網(wǎng)絡(luò)。無(wú)論輸入集合的大小如何聚合操作如加權(quán)求和、求最大值都能產(chǎn)生一個(gè)固定維度的表示。在在線執(zhí)行階段當(dāng)一個(gè)新智能體加入時(shí)它需要快速融入現(xiàn)有的協(xié)作體系。理想情況下它可以直接加載我們訓(xùn)練好的策略網(wǎng)絡(luò)并開(kāi)始基于其初始觀察進(jìn)行決策。但由于它沒(méi)有歷史交互信息其初始決策可能不夠協(xié)調(diào)。系統(tǒng)需要有一定的容錯(cuò)和自適應(yīng)能力。一種機(jī)制是讓新加入的智能體在最初幾個(gè)時(shí)間步采取更“保守”或更“探索性”的行動(dòng)例如優(yōu)先選擇那些看起來(lái)沒(méi)有其他智能體競(jìng)爭(zhēng)的任務(wù)或者主動(dòng)廣播自己的狀態(tài)和意圖以快速被其他智能體感知到。智能體的離開(kāi)處理起來(lái)相對(duì)直接但需要避免“真空”地帶。當(dāng)一個(gè)智能體離開(kāi)比如去充電時(shí)它原本負(fù)責(zé)或即將負(fù)責(zé)的任務(wù)就變成了“孤兒任務(wù)”。系統(tǒng)需要能快速檢測(cè)到這一點(diǎn)例如通過(guò)心跳超時(shí)機(jī)制并將這些任務(wù)重新釋放到任務(wù)池中觸發(fā)新一輪的分配過(guò)程。這就要求其他智能體的策略不能是“一錘子買(mǎi)賣(mài)”而需要具備持續(xù)監(jiān)控環(huán)境、響應(yīng)變化的能力。在我們的學(xué)習(xí)框架中這通過(guò)讓策略網(wǎng)絡(luò)基于當(dāng)前時(shí)刻的觀察做出決策來(lái)實(shí)現(xiàn)而不依賴于長(zhǎng)歷史序列從而自然具備了應(yīng)對(duì)動(dòng)態(tài)變化的能力。實(shí)操心得處理開(kāi)放性的一個(gè)常見(jiàn)陷阱是“訓(xùn)練-測(cè)試不匹配”。在模擬訓(xùn)練中智能體的加入和離開(kāi)可能是完全隨機(jī)的。但在真實(shí)場(chǎng)景中智能體的離開(kāi)往往與狀態(tài)相關(guān)如低電量加入也可能有特定模式。如果可能盡量讓訓(xùn)練環(huán)境中的動(dòng)態(tài)模式貼近真實(shí)情況或者使用域隨機(jī)化技術(shù)在更廣泛的動(dòng)態(tài)模式上進(jìn)行訓(xùn)練以提升策略的魯棒性。6. 訓(xùn)練環(huán)境構(gòu)建與獎(jiǎng)勵(lì)函數(shù)設(shè)計(jì)多智能體強(qiáng)化學(xué)習(xí)的成功一半取決于算法另一半取決于環(huán)境模擬和獎(jiǎng)勵(lì)設(shè)計(jì)。我們需要構(gòu)建一個(gè)能夠忠實(shí)反映開(kāi)放分布式任務(wù)分配核心挑戰(zhàn)的模擬環(huán)境。環(huán)境的核心模塊包括1智能體動(dòng)力學(xué)模型定義智能體如何移動(dòng)如差分驅(qū)動(dòng)模型、執(zhí)行任務(wù)的速度、通信范圍等。2任務(wù)生成器按照一定的隨機(jī)過(guò)程如泊松過(guò)程在空間和時(shí)間上生成任務(wù)并賦予其屬性。3世界狀態(tài)更新器根據(jù)所有智能體的動(dòng)作更新它們的位置、狀態(tài)以及任務(wù)的完成情況。4觀察生成器為每個(gè)智能體生成其局部觀察o_i這通常包括其自身狀態(tài)、一定半徑內(nèi)的其他智能體狀態(tài)位置、速度、意圖等和任務(wù)信息。為了模擬通信限制觀察生成器只提供通信范圍內(nèi)的鄰居信息。獎(jiǎng)勵(lì)函數(shù)的設(shè)計(jì)是引導(dǎo)智能體學(xué)會(huì)協(xié)作分配的關(guān)鍵。最直接的獎(jiǎng)勵(lì)是全局收益即每完成一個(gè)任務(wù)所有智能體都獲得與該任務(wù)價(jià)值成正比的獎(jiǎng)勵(lì)。但這種“團(tuán)隊(duì)獎(jiǎng)勵(lì)”非常稀疏且信用分配問(wèn)題嚴(yán)重——一個(gè)任務(wù)的成功完成可能歸功于最終執(zhí)行它的智能體但也離不開(kāi)之前其他智能體的協(xié)調(diào)與避讓。為了加速學(xué)習(xí)我們通常需要設(shè)計(jì)更細(xì)致的“塑形獎(jiǎng)勵(lì)”。一種有效的塑形獎(jiǎng)勵(lì)是“邊際貢獻(xiàn)獎(jiǎng)勵(lì)”。在每個(gè)時(shí)間步我們可以估算每個(gè)智能體的動(dòng)作或動(dòng)作意圖對(duì)全局次模收益函數(shù)F的瞬時(shí)邊際貢獻(xiàn)并將此作為該智能體的個(gè)體獎(jiǎng)勵(lì)。這需要環(huán)境能夠訪問(wèn)或估算全局信息來(lái)計(jì)算F但這僅在訓(xùn)練時(shí)可行。這種獎(jiǎng)勵(lì)方式直接對(duì)齊了我們的優(yōu)化目標(biāo)最大化F能非常有效地引導(dǎo)策略學(xué)習(xí)次模貪心的行為模式。另一種常見(jiàn)的獎(jiǎng)勵(lì)是懲罰沖突和鼓勵(lì)覆蓋。例如當(dāng)兩個(gè)智能體試圖執(zhí)行同一任務(wù)時(shí)給予負(fù)獎(jiǎng)勵(lì)當(dāng)一個(gè)任務(wù)在超時(shí)后仍未被執(zhí)行給予負(fù)獎(jiǎng)勵(lì)對(duì)于長(zhǎng)時(shí)間未被智能體覆蓋的區(qū)域可以給予系統(tǒng)一個(gè)小的負(fù)獎(jiǎng)勵(lì)以鼓勵(lì)探索。這些獎(jiǎng)勵(lì)項(xiàng)需要仔細(xì)調(diào)整權(quán)重避免智能體被次要目標(biāo)帶偏。我的經(jīng)驗(yàn)是以邊際貢獻(xiàn)獎(jiǎng)勵(lì)為主干輔以輕量的沖突懲罰通常能取得較好的效果。初期可以設(shè)置較高的探索獎(jiǎng)勵(lì)鼓勵(lì)智能體嘗試不同任務(wù)隨著訓(xùn)練進(jìn)行逐漸衰減。訓(xùn)練這樣的多智能體系統(tǒng)計(jì)算開(kāi)銷(xiāo)很大。我們需要使用并行化模擬同時(shí)跑多個(gè)環(huán)境實(shí)例來(lái)收集經(jīng)驗(yàn)。算法上近端策略優(yōu)化或柔性演員-評(píng)論家這類(lèi)策略梯度算法比較常用因?yàn)樗鼈兿鄬?duì)穩(wěn)定。由于是集中式訓(xùn)練我們可以使用一個(gè)大型的評(píng)論家網(wǎng)絡(luò)它能看到全局狀態(tài)從而更準(zhǔn)確地評(píng)估聯(lián)合動(dòng)作的價(jià)值。每次參數(shù)更新時(shí)我們從所有并行環(huán)境中收集一批經(jīng)驗(yàn)用它們來(lái)同時(shí)更新所有智能體的演員網(wǎng)絡(luò)和中心的評(píng)論家網(wǎng)絡(luò)。7. 實(shí)驗(yàn)評(píng)估與性能瓶頸分析訓(xùn)練出一個(gè)策略后我們需要一套嚴(yán)謹(jǐn)?shù)脑u(píng)估體系來(lái)衡量其性能。評(píng)估必須在獨(dú)立的測(cè)試環(huán)境中進(jìn)行這個(gè)環(huán)境使用訓(xùn)練中未見(jiàn)過(guò)的任務(wù)流序列和智能體動(dòng)態(tài)模式。核心的評(píng)估指標(biāo)包括1任務(wù)完成率在規(guī)定時(shí)間內(nèi)成功完成的任務(wù)比例。2平均任務(wù)完成時(shí)間從任務(wù)發(fā)布到被完成所經(jīng)歷的時(shí)間的平均值。3系統(tǒng)吞吐量單位時(shí)間內(nèi)完成的任務(wù)總價(jià)值。4智能體利用率智能體處于“工作中”而非閑置或移動(dòng)中的時(shí)間比例。5通信開(kāi)銷(xiāo)平均每個(gè)時(shí)間步每個(gè)智能體發(fā)送的消息數(shù)量或大小。我們需要將我們學(xué)習(xí)到的策略與多個(gè)基線方法進(jìn)行比較1中心化最優(yōu)算法假設(shè)有一個(gè)全知全能的中心調(diào)度器可以獲取全局即時(shí)信息并求解最優(yōu)分配例如將問(wèn)題建模為在線二分圖匹配使用匈牙利算法等。這提供了性能上界但在大規(guī)模開(kāi)放分布式場(chǎng)景中通常不現(xiàn)實(shí)。2分布式貪心算法基于手工設(shè)計(jì)的次模貪心規(guī)則每個(gè)智能體局部計(jì)算邊際收益并競(jìng)爭(zhēng)。這是我們方法所借鑒和希望超越的基線。3隨機(jī)分配或最近鄰分配作為最樸素的基線。在多次實(shí)驗(yàn)復(fù)現(xiàn)中我發(fā)現(xiàn)學(xué)習(xí)到的策略通常能顯著超越手工規(guī)則的分布式貪心算法尤其是在任務(wù)密度高、智能體異質(zhì)性強(qiáng)的復(fù)雜場(chǎng)景下。學(xué)習(xí)策略的優(yōu)勢(shì)在于它能通過(guò)經(jīng)驗(yàn)學(xué)會(huì)更精細(xì)的協(xié)調(diào)模式例如預(yù)測(cè)其他智能體的行為并提前規(guī)避沖突或者形成動(dòng)態(tài)的“責(zé)任區(qū)”劃分。然而它很少能達(dá)到中心化最優(yōu)的性能這其中的差距主要來(lái)自信息的不對(duì)稱(chēng)和決策的分布式特性這是理論上的固有局限。性能瓶頸分析至關(guān)重要。一個(gè)常見(jiàn)的瓶頸是觀察空間的局限性。如果智能體的通信/感知半徑太小它就如同在“迷霧”中決策無(wú)法做出有效的協(xié)調(diào)。我們需要分析在不同任務(wù)密度下多大的感知半徑是性價(jià)比最高的。增大半徑能提升性能但也會(huì)增加觀察維度和計(jì)算負(fù)擔(dān)。另一個(gè)瓶頸是策略網(wǎng)絡(luò)的表達(dá)能力。簡(jiǎn)單的MLP可能無(wú)法捕捉智能體之間復(fù)雜的時(shí)空依賴關(guān)系。嘗試使用圖神經(jīng)網(wǎng)絡(luò)來(lái)顯式建模智能體-任務(wù)二部圖的結(jié)構(gòu)或者使用Transformer編碼器來(lái)處理可變長(zhǎng)度的觀察序列往往是突破性能瓶頸的關(guān)鍵。此外訓(xùn)練數(shù)據(jù)的分布直接影響泛化能力。如果訓(xùn)練環(huán)境中的任務(wù)分布過(guò)于簡(jiǎn)單或單一學(xué)到的策略在測(cè)試時(shí)遇到新分布就會(huì)失效。因此在環(huán)境構(gòu)建階段引入足夠的隨機(jī)性和多樣性如不同的任務(wù)生成率、不同的空間分布模式、不同的智能體類(lèi)型組合是保證策略魯棒性的前提。這又引出了與最新熱詞“chimera: latency- and performance-aware multi-agent serving for heterogeneous llms”的潛在聯(lián)系。雖然該工作針對(duì)的是異構(gòu)大語(yǔ)言模型的服務(wù)調(diào)度但其核心思想——考慮異構(gòu)智能體的不同處理延遲和性能進(jìn)行感知調(diào)度的思想——完全可以借鑒到我們的任務(wù)分配場(chǎng)景中特別是當(dāng)我們的智能體在能力、速度、負(fù)載上存在差異時(shí)。8. 從仿真到現(xiàn)實(shí)部署考量與持續(xù)學(xué)習(xí)將訓(xùn)練好的策略部署到真實(shí)的機(jī)器人或軟件智能體上會(huì)面臨仿真到現(xiàn)實(shí)的鴻溝。在仿真中我們假設(shè)智能體可以完美感知局部信息、動(dòng)作被精確執(zhí)行、通信零延遲且可靠?,F(xiàn)實(shí)中這些假設(shè)都不完全成立。感知不確定性真實(shí)傳感器如激光雷達(dá)、攝像頭存在噪聲和誤識(shí)別。因此部署時(shí)策略網(wǎng)絡(luò)的輸入不應(yīng)是完美的狀態(tài)向量而應(yīng)該是經(jīng)過(guò)感知模塊處理后的、帶有置信度的特征。在訓(xùn)練后期我們可以在仿真中為觀察加入噪聲或者直接使用從真實(shí)傳感器數(shù)據(jù)中學(xué)習(xí)到的感知模型來(lái)生成觀察以提高策略的魯棒性。動(dòng)作執(zhí)行誤差機(jī)器人運(yùn)動(dòng)控制存在誤差可能導(dǎo)致它無(wú)法精確到達(dá)任務(wù)點(diǎn)。這要求我們的任務(wù)分配不能是“非此即彼”的硬分配最好能有一定的彈性。例如可以將任務(wù)建模為一個(gè)需要被“服務(wù)”的區(qū)域而非一個(gè)點(diǎn)或者允許智能體在輕微偏離時(shí)仍能執(zhí)行任務(wù)。在獎(jiǎng)勵(lì)函數(shù)中也可以對(duì)接近任務(wù)的行為給予部分獎(jiǎng)勵(lì)而不僅僅是完成時(shí)才給全獎(jiǎng)。通信延遲與丟包真實(shí)的無(wú)線通信存在延遲且可能丟包。這要求我們的分布式?jīng)Q策算法不能依賴于嚴(yán)格的同步。策略需要能夠處理過(guò)時(shí)的鄰居信息。一種方法是在訓(xùn)練時(shí)隨機(jī)對(duì)通信消息施加延遲和丟包讓策略學(xué)會(huì)在信息不完整、不及時(shí)的情況下做決策。另一種方法是設(shè)計(jì)異步的決策協(xié)議智能體不等待所有鄰居的回應(yīng)而是在超時(shí)后基于已收到的信息做出決策。最后現(xiàn)實(shí)世界的任務(wù)模式可能會(huì)緩慢漂移。離線訓(xùn)練好的策略可能隨著時(shí)間推移而性能下降。因此部署系統(tǒng)需要具備持續(xù)學(xué)習(xí)或在線適應(yīng)的能力。這可以通過(guò)在真實(shí)運(yùn)行中收集新的經(jīng)驗(yàn)數(shù)據(jù)定期用這些數(shù)據(jù)對(duì)策略進(jìn)行微調(diào)來(lái)實(shí)現(xiàn)。但必須非常小心避免災(zāi)難性遺忘。一個(gè)穩(wěn)妥的做法是設(shè)立一個(gè)影子模式讓新策略并行運(yùn)行但不實(shí)際控制智能體只記錄其決策并與舊策略的結(jié)果對(duì)比待驗(yàn)證其性能提升后再進(jìn)行切換。整個(gè)系統(tǒng)需要一套完整的監(jiān)控、日志和回滾機(jī)制確保學(xué)習(xí)過(guò)程的安全與可控。這個(gè)從理論建模、算法設(shè)計(jì)、仿真訓(xùn)練到現(xiàn)實(shí)部署的完整閉環(huán)正是“Submodular Multi-Agent Policy Learning for Online Distributed Task Allocation”這一研究方向從論文走向?qū)嵺`所必須經(jīng)歷的路徑。每一步都充滿了工程上的權(quán)衡與挑戰(zhàn)但也正是這些挑戰(zhàn)讓解決此類(lèi)問(wèn)題的過(guò)程充滿了吸引力。每一次算法的迭代每一次性能的提升都讓我們離實(shí)現(xiàn)真正高效、魯棒、自組織的多智能體系統(tǒng)更近一步。