模型結(jié)構(gòu)
模型同時(shí)學(xué)習(xí)action value Q、state value V和policy π。
- V中引入Target V,供Q學(xué)習(xí)時(shí)使用;Target Network使學(xué)習(xí)有章可循、效率更高。
- Q有兩個(gè)單獨(dú)的網(wǎng)絡(luò),選取最小值供V和π學(xué)習(xí)時(shí)使用,希望減弱Q的過高估計(jì)。
- π學(xué)習(xí)的是分布的參數(shù):均值和標(biāo)準(zhǔn)差;這與DDPG不同,DDPG的π是Deterministic的,輸出直接就是action,而SAC學(xué)習(xí)的是個(gè)分布,學(xué)習(xí)時(shí)action需要從分布中采樣,是Stochastic的。

Soft
Soft,Smoothing,Stable。
原始的強(qiáng)化學(xué)習(xí)最大熵目標(biāo)函數(shù)(maximum entropy objective)如下,比最初的累計(jì)獎(jiǎng)賞,增加了policy π的信息熵。
A3C目標(biāo)函數(shù)里的熵正則項(xiàng)和形式一樣,只是作為正則項(xiàng),系數(shù)很小。

在Soft Policy Iteration中,近似soft Q-value的迭代更新規(guī)則如下:

其中V(s)為soft state value function:

根據(jù)信息熵的定義:

soft state value function和maximum entropy objective在形式上還是一致的,系數(shù)α能通過調(diào)節(jié)Q-value消掉,可忽略。
TD3的soft state value function V形式與Soft Policy Iteration中類似,但是SAC的action是通過對(duì)policy π采樣確定地得到,每條數(shù)據(jù)數(shù)據(jù)的信息熵就是其不確定性-logπ(a|s);但考慮整個(gè)批量batch數(shù)據(jù),其整體還是π的信息熵,與maximum entropy方向一致。
信息熵越大,分布越均勻,所以最大化信息熵,有利于增加模型的探索能力。
Soft State Value 目標(biāo)函數(shù)
通過Q和π網(wǎng)絡(luò)近似V,注意s來自Experience Replay Buffer,但是a來自當(dāng)前的π。

Soft Q-Value 目標(biāo)函數(shù)
通過V近似Q,這里的V來自TargetNetwork V。
r(s,a)是環(huán)境的即時(shí)獎(jiǎng)賞;s_t+1來自環(huán)境,由于環(huán)境是model-free,可以理解成s_t+1是確定的。

Policy 目標(biāo)函數(shù)
通過Q近似π。
- 基于π分布的采樣增加擾動(dòng),for lower variance estimator。
- KL散度基于Q的分布近似忽略分母析分函數(shù)。
- 采樣之后,a是確定的,KL散度即熵的差容易求解,注意Q值來自神經(jīng)網(wǎng)絡(luò),值可以scale,無需關(guān)注系數(shù)。

學(xué)習(xí)過程
整體采用Replay Buffer,三個(gè)目標(biāo)函數(shù)分別進(jìn)行梯度學(xué)習(xí)。

總結(jié)
- SAC的關(guān)鍵是引入最大熵,優(yōu)化soft value。
- 最大熵會(huì)使action探索能力很強(qiáng),模型效果更平穩(wěn),但注意需要場(chǎng)景也是接受較強(qiáng)的探索。
- 從結(jié)構(gòu)上講,模型冗余,在學(xué)習(xí)π和soft Q的情況下,又學(xué)習(xí)了soft V。
- 由于面臨的是連續(xù)動(dòng)作空間,求期望的地方,采取了采樣近似,需要批次處理的數(shù)據(jù)集更加完整。
- 優(yōu)化技巧比較晦澀,感覺很難通用。