原文:https://www.cnblogs.com/Twobox/p/16791412.html
熵
熵:表述一個概率分布的不確定性,例如一個不倒翁和一個魔方拋到地上,看他們平穩后狀態,很明顯,魔方可能有6種狀態,而不倒翁很大可能就一個狀態,那么我們說在這種情況下,不倒翁的確定性高于魔方,也就是魔方的熵大于另外一個,那么我看運算式:
\(H(p)=-\sum_i^n P_i logP_i\)


很明顯,當p的概率是0或1時,沒有不確定性,熵值為0,當為0.5時,熵最大,最不確定,
相對熵
https://zhuanlan.zhihu.com/p/372835186zui
兩個分布相似度的一種度量
定義:

性質:
D(P||Q) >= 0,當 P=Q時,D(P||Q)=0;
Maximum Entropy RL
https://zhuanlan.zhihu.com/p/444441890
名字很長,但是實際很簡單,

1、加上這個實際體現是什么?2、有什么好處?
一般來說,我們將state輸入神經網路后,輸出的action是分布,即每個動作的概率值,例如 向左0.8 向右0.1 開火0.1,我們具體執行那個動作是通過抽樣來選擇的,
剛才我們說到,熵是衡量一個概率分布的不確定性,各變數概率越相近,熵值越大,例如上述例子,當p為0.5時候,熵最大,也就是說,所謂最大熵目標,也就是希望各動作的概率盡可能的小,換句話說,希望獲得高獎勵的同時,動作的可選擇性盡可能多,

如圖,上面的路線更短,傳統RL方法會學習到向上,而最大熵RL則都能夠學習到,說白了就是增加應對不同情況的魯棒性!
MEP背景

強化學習在對抗人類方面取得了很多成功,例如 ??、刀塔、星際爭霸等,但是在合作協作方面都有待進展,一般Agent是通過自博弈,例如??,來進行訓練,那么造成了這么一個問題:只對特定的對手策略起作用,當換成人的時候時候,因為沒見過,很大可能就傻了,啥也不是,
論文中有個形象的例子,我們來看下:

一個相互協作的烹飪游戲,2玩家,下面紅色框里是洋蔥、左邊橙色框里是盤子、上面藍色框里是烹飪臺,中間一條和周圍一圈是褐色的是桌面,游戲目標很見到那,首先將下面3個洋蔥放到上面烹飪臺上,等烹飪時間結束后,再用左邊的盤子裝盤,送到最右邊的出口,
那么傳統自博弈將出現下面這種情況:一個人在下面不停的送,上面不停的接,并且他只送一個臺面,因為這樣整體獎勵是最高的,但是這時候下面那個換成一個人,并且就不放洋蔥到那個臺面,這時候上面那個Agent就蒙了,顯然,最直接的原因,就是之前訓練的機器人沒有學習到伙伴的其他情況,

MEP
那么本文的思想很簡單,那不是見識少嗎,那我就先訓練一大堆不同的策略的伙伴,然后讓我們的Agent和這些伙伴協作訓練就行了,梳理下就是 1、先訓練一大堆不同策略的伙伴 2、Agent和這些伙伴協作訓練
PD目標
那么我們要先訓練出來的這個群里,我們真對其2個部分進行優化,首先是當中的每個個體,使用最大熵獎勵,鼓勵每個個體自身有exploratory and multi-modal,也說就是其自身盡可能有不同的操作,其次是對于整個群里而言,互相之間盡可能差別大,那么可以用KL散度作為目標的另一部分,數學形式如下:

細看很簡單,就是每個個體的熵值求平均、每倆之間的相對熵求平均,看公式很明顯,這個演算法的時間復雜度為\(O(n^2)\),\(n\)為種群的個體數,對此,提出另一個替代目標PE,該文章通過數學證明,證明PE為PD的下界,即PD>=PE,

PE目標

運算式相當簡單,就是把先群體中每一個策略加起來求個平均,得出一個平均策略,然后對這個平均策略求一個熵就可以了,
訓練最大熵群體

回顧下之前說的最大熵強化學習目標運算式,就是在原來獎勵的基礎上,加上了一個熵作為附加獎勵,

相似的,本文最大熵種群的訓練目標也是原來獎勵的基礎熵,加上我們的PE目標,也就是群平均策略的熵,

流程很簡單,每次抽一個個體出來與環境互動,根據目標函式,利用互動資料進行訓練,直至收斂,
訓練魯棒性Agent
想法很簡單,每次選群里中配合最難的個體出來進行協作訓練,\(\pi^{(A)}\)就是我訓練的最終策略,他的目標就是,不斷提高與最垃圾的那個人配合的分數,形象表達,在作業中最難配合的人都適應了,其他人還算啥,

那么怎么計算具體的概率呢:我們希望概率正相關難度,也就是負相關合作收益,收益越高,約靠后,

最終,我們選取了下面這個形式,將他們以難度排序,例如3個分別排 1、2、3 ,那么第一個的概率就是1/(1+2+3) = 1/6、第二個就是2/6、第三個就是3/6,就是這個意思,

總結
我們希望在沒有人類資料的情況下,通過自博弈能夠實作與人類的合作,因為不同的人行為不同,所以我們希望我們在訓練之前,盡可能的先訓練一大批行為不同的行為模型,然后再和這些模型進行訓練,以提升和真人的配合的魯棒性,如果我們訓練的這個群里,行為越豐富,那么越能代表大多數真人,那么我們最終訓練的Agent越能配合形形色色的真人,其中難點是群體訓練,體現在兩方面,個體多樣性,個體之間的多樣性,這個進化計算的思想是一致的!對于個體多樣性,我們使用熵來進行控制,對于倆倆之間的多樣性,通過相對熵,也就是KL散度來控制,這篇文章做的只是這樣,更重要的是通過推到,找到了一個線性復雜度的替代目標,來代替原先\(n^2\)復雜度的目標,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/514261.html
標籤:其他
