您當前的位置:首頁 > 攝影

【3 分層強化學習】DIAYN

作者:由 脆皮咕 發表于 攝影時間:2020-10-29

DIAYN的全稱是Diversity is All You Need,這篇屬於基於互資訊的skill discovery,是目前比較火的研究方向,這類skill discovery的思路一般是基於某些互資訊的目標函式學到skill的dynamic,或者說是skill與state的分佈,這是在沒有外界reward參與的條件下實現的,然後將這些學好的skill用到其他應用中,比如作為hierarchical RL的下層policy,這篇文章也是這個思路。

思想

本文主要提出了三個觀點:

(1)有用的skill可以用來控制agent訪問到某些state,即透過skill可以推斷出相應的state,並且不同的skill導向的state不同,使得skill具有可分辨性;

(2)透過state,而不是action,來分辨區分skill,因為不影響環境的action是無法被外界觀察到的,舉例來說,一個機械臂抓著一個杯子,把對杯子施加的力作為action的話,如果杯子不移動的話,那我們從外界是看不到這個力作用的影響的,即無法透過這個action推斷skill,但無論如何是可以通過當前抓杯子這個state推斷出這是一個抓杯子的skill;

(3)鼓勵探索以保證skill具有足夠的多樣性,使得不同的skill之間具有可分辨性。

目標函式構造

鑑於上述觀點,目標函式也基於此進行構建,首先最大化第一項

I(S;Z)

,即最大化skill和state的互資訊,目的是加強skill和state的聯絡,使得透過agent訪問到的state能夠推斷出相應的skill,對應第(1)點;最大化

H(A|S)

目的是增加策略的多樣性,對應第(3)點;最小化

I(A;Z|S)

以保證是用state而不是action來區分skill,對應第(2)點。

【3 分層強化學習】DIAYN

由於

p(z|s)

很難求,所以將上式轉化成變分下界的形式,

H(A|S,Z)

項透過SAC策略訓練時最大化動作的熵解決了,後面那項直接作為強化問題的pseudo-reward去最佳化policy,這樣agent會在訪問到更容易被區分的state時得到獎勵,同時更新discriminator,使它能更好地透過訪問的state推斷skill。

【3 分層強化學習】DIAYN

將目標函式變形為變分下界,再將最佳化原目標變為最佳化下界,同時引入偽reward用於最佳化policy,最終學到skill和state的推斷關係,這是基於互資訊的skill discovery的常用做法。

演算法流程

【3 分層強化學習】DIAYN

效果

【3 分層強化學習】DIAYN

透過導航類任務結果可以看出,本方法可以學習到具有分辨性的skill,每個skill都和狀態空間中不同方向上的state有對應關係,透過特定的state可以推斷出對應的skill。學好的skill可以直接應用於分層強化和模仿學習。

標簽: SKILL  STATE  action  互資訊  推斷出