非合作关系设定下的多智能体强化学习
?
1 非合作關(guān)系下的策略學(xué)習(xí)
在合作關(guān)系下,所有智能體的獎(jiǎng)勵(lì)都相等
在合作關(guān)系的剩下,所有智能體有相同的狀態(tài)價(jià)值函數(shù),故而有相同的目標(biāo)函數(shù)?
1.1 非合作關(guān)系下的回報(bào)與目標(biāo)函數(shù)?
如果是非合作關(guān)系
——>兩個(gè)智能體的獎(jiǎng)勵(lì)不相等,即
——>他們的回報(bào)也不相等,即
——>回報(bào)的期望(即價(jià)值函數(shù))也不相等,此時(shí)我們講這些智能體的價(jià)值函數(shù)記作
?第 i 個(gè)智能體的目標(biāo)函數(shù)是狀態(tài)價(jià)值的期望
注意:此時(shí)目標(biāo)函數(shù)是各不相同的,也就是說(shuō)各個(gè)智能體之間沒(méi)有共同的目標(biāo)
注意:第i個(gè)智能體的目標(biāo)函數(shù)依賴于所有智能體的策略網(wǎng)絡(luò)參數(shù)
——>因?yàn)榄h(huán)境狀態(tài)S是由所有智能體共同決定的
——>舉個(gè)例子,你玩MOBA游戲,你自己的策略假設(shè)不變,但你隊(duì)友是菜鳥(niǎo)/大神,他們的策略網(wǎng)絡(luò)參數(shù)θ是不同的,這也會(huì)影響到整局比賽的走勢(shì),進(jìn)而影響你的收益和目標(biāo)函數(shù)值
?1.2?非合作關(guān)系下的策略學(xué)習(xí)
在多智能體的策略學(xué)習(xí)中,第 i 個(gè)智能體的目標(biāo)是改進(jìn)自己的策略參數(shù),使得 盡量大。 多智能體的策略學(xué)習(xí)可以描述為這樣的問(wèn)題:再次注意:此時(shí)目標(biāo)函數(shù)各不相同,也就是說(shuō)各個(gè)智能體之間沒(méi)有共同的目標(biāo)
?策略學(xué)習(xí)的基本思想是讓每個(gè)智能體各自做策略梯度上升:
?1.2.1 收斂的條件
在合作關(guān)系設(shè)定下,所有智能體有相同的目標(biāo)函數(shù), 那么判斷收斂的標(biāo)準(zhǔn)就是目標(biāo)函數(shù)值不再增長(zhǎng)。也就是說(shuō)改變?nèi)魏沃悄荏w的策略都無(wú)法讓團(tuán)隊(duì)的回報(bào)增長(zhǎng)。 在非合作關(guān)系設(shè)定下,智能體的利益是不一致的、甚至是沖突的,智能體各有各的目標(biāo)函數(shù)。該如何判斷策略學(xué)習(xí)的收斂呢?不能用 作為判斷收斂的標(biāo)準(zhǔn)。 (比如在零和博弈的游戲中,雙方的目標(biāo)函數(shù)是沖突的:?,如果捕食者改進(jìn)策略,那么 會(huì)增長(zhǎng),而 會(huì)下降。自始至終, 一直等于零, 不論策略學(xué)習(xí)有沒(méi)有收斂。- 在非合作關(guān)系設(shè)定下,收斂標(biāo)準(zhǔn)是納什均衡。
- 一個(gè)智能體在制定策略的時(shí)候,要考慮到其他各方的策略。
- 在納什均衡的情況下,每一個(gè)智能體都在以最優(yōu)的方式來(lái)應(yīng)對(duì)其他各方的策略。
- 在納什均衡的情況下,誰(shuí)也沒(méi)有動(dòng)機(jī)去單獨(dú)改變自己的策略,因?yàn)楦淖?/span>策略不會(huì)增加自己的收益。
- 這樣就達(dá)到了一種平衡狀態(tài),所有智能體都找不到更好的策略。這種平衡狀態(tài)就被認(rèn)為是收斂。
- 在實(shí)驗(yàn)中,如果所有智能體的平均回報(bào)都不再變化,就可以認(rèn)為達(dá)到了納什均衡。
1.2.2 評(píng)價(jià)策略的優(yōu)劣
?
?
2?非合作設(shè)定下的多智能體 A2C
(Multi-Agent Non-cooperative A2C),縮寫(xiě) MAN-A2C2.1 策略網(wǎng)絡(luò)和價(jià)值網(wǎng)絡(luò)
MAN-A2C 中,每個(gè)智能體有自己的策略網(wǎng)絡(luò)和價(jià)值網(wǎng)絡(luò)
第 i 個(gè)智能體的策略網(wǎng)絡(luò)需要把所有智能體的觀測(cè)
作為輸入,并輸出一個(gè)概率分布第 i 個(gè)智能體依據(jù)該概率分布抽樣得到動(dòng)作
?
?兩類神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)與完全競(jìng)爭(zhēng)關(guān)系下的 MAC-A2C 完全相同。
他們的區(qū)別在于
- MAC-A2C 用于完全合作關(guān)系,所有智能體有相同的狀態(tài)價(jià)值函數(shù) Vπ(s), 所以只用一個(gè)神經(jīng)網(wǎng)絡(luò)近似 Vπ(s),記作 v(s; w)。
- MAN-A2C 用于非合作關(guān)系,每個(gè)智能體各有一個(gè)狀態(tài)價(jià)值函數(shù) ,所 以每個(gè)智能體各自對(duì)應(yīng)一個(gè)價(jià)值網(wǎng)絡(luò)
2.2 算法推導(dǎo)
在非合作關(guān)系設(shè)定下,第 i 號(hào)智能體的動(dòng)作價(jià)值函數(shù)記作 ,策略網(wǎng)絡(luò)記作?
我們用作為定理中的基線,并且用價(jià)值網(wǎng)絡(luò) 近似 和A2C一樣,策略梯度可以近似成:?于是使用TD上升更新策略網(wǎng)絡(luò)參數(shù)
?
2.3 訓(xùn)練流程
?
?和完全合作關(guān)系下是一樣的
?每一個(gè)智能體自己做價(jià)值網(wǎng)絡(luò)更新
?
?每一個(gè)智能體自己做策略網(wǎng)絡(luò)更新
和A2C一樣,MAN-A2C 屬于同策略 (On-policy),不能使用經(jīng)驗(yàn)回放。
2.4 決策
?3 三種架構(gòu)
3.1 中心化訓(xùn)練+中心化決策
這 種方式是不實(shí)用的,僅大家理解算法而已。 中央控制器 (Central Controller)里面部署了所有 m 個(gè)價(jià)值網(wǎng)絡(luò)和策略網(wǎng)絡(luò):?
?訓(xùn)練和決策全部由中央控制器完成。智能體負(fù)責(zé)與環(huán)境交互,執(zhí)行中央控制器的決策, 并把觀測(cè)到的 和 匯報(bào)給中央控制器。
?3.1.1?MAC-A2C 與?MAN-A2C 的區(qū)別
- MAC-A2C 的中央控制器上只有一個(gè)價(jià)值網(wǎng)絡(luò), 而MAN-A2C 則有 m 個(gè)價(jià)值網(wǎng)絡(luò)。
- MAC-A2C 的每一輪只有一個(gè)全局的獎(jiǎng)勵(lì)r,MAN-A2C 的每個(gè)智能體都有自己的獎(jiǎng)勵(lì)
3.2?去中心化訓(xùn)練 + 去中心化決策
為了避免“完全中心化”中的通信,可以對(duì)策略網(wǎng)絡(luò)和價(jià)值網(wǎng)絡(luò)做近似,做到“完 全去中心化”。把 MAN-A2C 中的策略網(wǎng)絡(luò)和價(jià)值網(wǎng)絡(luò)做近似:?
?
此處的的實(shí)現(xiàn)與完全合作關(guān)系設(shè)定下的“完全去中心化”幾乎完全相同 。 唯一的區(qū)別在于此處每個(gè)智能體獲得的獎(jiǎng)勵(lì) ri是不同的,而上一章完全合作關(guān)系設(shè)定下的獎(jiǎng)勵(lì)是相同的?
3.3?中心化訓(xùn)練 + 去中心化決策
與“完全中心化”的 MAN-A2C 相比,唯一的區(qū)別在于對(duì)策略網(wǎng)絡(luò)做近似:?
由于用智能體局部觀測(cè) 替換了全局狀態(tài),策略網(wǎng)絡(luò)可以部署到每個(gè)智能體上。而價(jià)值網(wǎng)絡(luò)仍然是,沒(méi)有做近似。?
中央控制器上有所有的價(jià)值網(wǎng)絡(luò)及其目標(biāo)網(wǎng)絡(luò)?中央控制器用智能體發(fā)來(lái)的觀測(cè)和獎(jiǎng)勵(lì)訓(xùn)練這些價(jià)值網(wǎng)絡(luò)。
- 中央控制器把 TD 誤差反饋給智能體
- 第i號(hào)智能體用,本地的更新自己的策略網(wǎng)絡(luò)
3.3.1 中心化訓(xùn)練
?
?每一個(gè)智能體與環(huán)境交互,獲得數(shù)據(jù)
中央控制器分別更新m個(gè)智能體的?價(jià)值網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò)
?
?中央控制器把 TD 誤差反饋給對(duì)應(yīng)的智能體后,每個(gè)智能體分別更新自己的策略網(wǎng)絡(luò)
?3.3.2 去中心化決策
?
總結(jié)
以上是生活随笔為你收集整理的非合作关系设定下的多智能体强化学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: css强制自动换行
- 下一篇: Visual Studio 2008 安