趙婷婷,孔 樂,韓雅杰,任德華,陳亞瑞
天津科技大學(xué) 人工智能學(xué)院,天津300467
深度強(qiáng)化學(xué)習(xí)(deep reinforcement learning,DRL)作為機(jī)器學(xué)習(xí)領(lǐng)域重要研究方向之一,是將深度學(xué)習(xí)的智能感知能力與強(qiáng)化學(xué)習(xí)的決策能力相結(jié)合,直接通過對高維感知輸入的學(xué)習(xí)最終實(shí)現(xiàn)智能體的自主行為控制[1],描述的是智能體為實(shí)現(xiàn)任務(wù)而連續(xù)作出決策控制的過程。DRL已經(jīng)在無人駕駛[2-3]、智能交通系統(tǒng)[4]、機(jī)器人系統(tǒng)[5-6]、游戲[7]等領(lǐng)域取得了突破性進(jìn)展,被認(rèn)為是最有希望實(shí)現(xiàn)通用人工智能這個目標(biāo)的研究領(lǐng)域之一。
深度強(qiáng)化學(xué)習(xí)具有一定的自主學(xué)習(xí)能力[8],無需給定先驗(yàn)知識,只需與環(huán)境進(jìn)行不斷交互獲得經(jīng)驗(yàn)指數(shù),最終找到適合當(dāng)前狀態(tài)的最優(yōu)動作選擇策略,取得整個決策過程的最大累積獎賞[9],基本框架如圖1 所示(因?yàn)樯疃葟?qiáng)化學(xué)習(xí)與強(qiáng)化學(xué)習(xí)兩者本質(zhì)相同,本綜述將交替使用深度強(qiáng)化學(xué)習(xí)與強(qiáng)化學(xué)習(xí))。根據(jù)智能體所交互環(huán)境信息的利用方法,強(qiáng)化學(xué)習(xí)可分為無模型強(qiáng)化學(xué)習(xí)(model-free reinforcement learning)和模型化強(qiáng)化學(xué)習(xí)(model-based reinforcement learning)兩大類[10]。
Fig.1 Framework of reinforcement learning圖1 強(qiáng)化學(xué)習(xí)基本框架
無模型強(qiáng)化學(xué)習(xí)方法是智能體通過不斷探索環(huán)境,不斷試錯,學(xué)習(xí)得到最優(yōu)策略的方法[9]。為了達(dá)到預(yù)期的學(xué)習(xí)效果,無模型強(qiáng)化學(xué)習(xí)方法需要與環(huán)境進(jìn)行大量的交互才能保證智能體的充分學(xué)習(xí)。無模型方法通常需要大量訓(xùn)練樣本及訓(xùn)練時間,例如MuJoCo[11]根據(jù)任務(wù)的不同需要10 萬以上的學(xué)習(xí)步數(shù)[12];Deepmind 團(tuán)隊(duì)提出的學(xué)習(xí)酷跑的策略,需要64個GPU 學(xué) 習(xí)100 h 以 上[13];DeepMind 提 出 的RainbowDQN 需要1 800 萬幀Atari 游戲界面或大約83 h游戲視頻對模型訓(xùn)練學(xué)習(xí),而人類掌握游戲所用時間遠(yuǎn)遠(yuǎn)少于此算法[14]。然而,在實(shí)際物理場景中,收集充分的學(xué)習(xí)樣本不僅需要花費(fèi)大量時間與財力,甚至可能損壞智能系統(tǒng)。故而樣本利用率及學(xué)習(xí)效率成為無模型強(qiáng)化學(xué)習(xí)在實(shí)際應(yīng)用中的重要瓶頸問題。
模型化強(qiáng)化學(xué)習(xí)方法首先需要對環(huán)境建模,得到環(huán)境模型后,此類方法無需與真實(shí)環(huán)境交互,可直接利用學(xué)得的環(huán)境模型生成所需訓(xùn)練樣本進(jìn)行策略學(xué)習(xí),從而在一定程度上緩解樣本利用率低及學(xué)習(xí)效率低的問題。另外,如果所學(xué)得的環(huán)境模型足夠精確,智能體就可根據(jù)該模型在其從未訪問過的區(qū)域進(jìn)行策略搜索。然而,學(xué)得的環(huán)境模型與真實(shí)環(huán)境間往往存在模型誤差,難以保證算法的最優(yōu)解漸近收斂[10]。因此,如何獲得精準(zhǔn)的環(huán)境模型是模型化強(qiáng)化學(xué)習(xí)領(lǐng)域的研究重點(diǎn),這也是本文將要探討的主要內(nèi)容。
強(qiáng)化學(xué)習(xí)任務(wù)通常建模為馬爾可夫決策過程(Markov decision process,MDP)描述(S,A,PT,PI,r,γ)[9],其中S表示智能體的狀態(tài)空間;A表示智能體的可選動作空間,狀態(tài)S和動作A均可以是離散空間,也可以是連續(xù)空間,這取決于具體應(yīng)用問題;PT(s′|s,a)表示當(dāng)前狀態(tài)st下執(zhí)行動作at后,轉(zhuǎn)移到下一狀態(tài)st+1的狀態(tài)轉(zhuǎn)移概率密度函數(shù);PI(s)表示選擇初始狀態(tài)s1的概率;r(st,at,st+1)表示當(dāng)前狀態(tài)st執(zhí)行動作at后轉(zhuǎn)移到下一狀態(tài)st+1的瞬時獎賞;γ(0 <γ<1)表示未來獎賞折扣因子。
如圖2 是MDP 動態(tài)過程:首先,某智能體(agent)從初始狀態(tài)概率分布p(s1)中隨機(jī)選擇狀態(tài)s1后,依據(jù)當(dāng)前策略π選擇動作a1,然后智能體根據(jù)狀態(tài)轉(zhuǎn)移密度函數(shù)p(s2|s1,a1)從狀態(tài)s1隨機(jī)轉(zhuǎn)移到s2,獲得此次狀態(tài)轉(zhuǎn)移的瞬時獎賞r(s1,a1,s2)。此過程重復(fù)T次,可得到一條路徑,T為時間步長。
Fig.2 Markov decision process圖2 馬爾可夫決策過程
強(qiáng)化學(xué)習(xí)的目標(biāo)是找到最優(yōu)策略π*,從而最大化期望累積回報。
其中,累積期望回報表示為Jπ:=∫p(h)R(h)dh,p(h)=表示路徑的概率密度函數(shù),p(st+1|st,at)表示當(dāng)前狀態(tài)st執(zhí)行動作at到達(dá)下一狀態(tài)st+1的概率;累積回報,其中γ是折扣因子,通常0 <γ<1,折扣因子γ決定了回報的時間尺度。
根據(jù)智能體與環(huán)境交互模式的不同,強(qiáng)化學(xué)習(xí)可分為模型化強(qiáng)化學(xué)習(xí)與無模型強(qiáng)化學(xué)習(xí),二者的區(qū)別主要是智能體是否已知或需要計算環(huán)境動態(tài)模型,即狀態(tài)轉(zhuǎn)移密度函數(shù)P(st+1|st,at)[15-16],如圖3所示。
Fig.3 Two types of reinforcement learning圖3 兩種強(qiáng)化學(xué)習(xí)模式
無模型強(qiáng)化學(xué)習(xí)中,智能體直接與真實(shí)環(huán)境交互獲得數(shù)據(jù)進(jìn)行策略學(xué)習(xí)。此類方法不需要擬合環(huán)境模型,也不存在模型誤差,因而實(shí)現(xiàn)簡單,應(yīng)用廣泛;然而無模型強(qiáng)化學(xué)習(xí)方法學(xué)到的策略只針對特定問題,一次只能學(xué)習(xí)一項(xiàng)具體任務(wù),當(dāng)任務(wù)更換時需重新收集大量樣本進(jìn)行學(xué)習(xí)[17];此外進(jìn)行策略學(xué)習(xí)時,智能體需要訓(xùn)練學(xué)習(xí)大量樣本才可能取得良好的性能表現(xiàn),這會降低樣本利用率[17],造成資源浪費(fèi)。重復(fù)使用樣本(importance sampling)可以提高樣本利用率,但樣本重復(fù)使用技術(shù)需要提前設(shè)定學(xué)習(xí)樣本的使用方式,若樣本利用不當(dāng),會造成學(xué)習(xí)目標(biāo)方差大、收斂慢的問題[15]。近年,隨著硬件計算能力的提升,一定程度上弱化了樣本利用率低的問題,但并沒有從根本上解決樣本利用率低的問題。
模型化強(qiáng)化學(xué)習(xí)方法首先利用智能體與環(huán)境交互獲得的數(shù)據(jù)學(xué)習(xí)環(huán)境模型,然后收集所得模型產(chǎn)生的訓(xùn)練樣本,最后使用強(qiáng)化學(xué)習(xí)算法優(yōu)化動作選擇策略,完成任務(wù)。整個過程不涉及提前設(shè)計樣本使用模式的問題[18]。此外,相比無模型強(qiáng)化學(xué)習(xí)中智能體必須與真實(shí)環(huán)境交互才能得到其他未知狀態(tài)值的情況,模型化強(qiáng)化學(xué)習(xí)中,環(huán)境模型一旦擬合,智能體就無需再與真實(shí)環(huán)境交互,可直接利用學(xué)到的模型預(yù)測未來狀態(tài),極大提高數(shù)據(jù)利用率。另外,環(huán)境模型通常包含外界環(huán)境模型與系統(tǒng)自身模型,如果能夠得到一個精準(zhǔn)的環(huán)境模型,便意味著智能體得到了一個較好的描述自身系統(tǒng)的模型,當(dāng)外界環(huán)境變化時,系統(tǒng)自身的模型通常是不變的,因此只需要簡單學(xué)習(xí),環(huán)境模型便可適應(yīng)新的外部環(huán)境,使智能體可以利用學(xué)到的模型快速進(jìn)行推理。因此,模型化強(qiáng)化學(xué)習(xí)中學(xué)得的環(huán)境模型易于在不同任務(wù)及環(huán)境間進(jìn)行遷移,具有較強(qiáng)的泛化能力[17,19]。
綜上,如果環(huán)境模型能被準(zhǔn)確建模,模型化強(qiáng)化學(xué)習(xí)將具有以上所述所有優(yōu)勢。然而,面對復(fù)雜的狀態(tài)、動作空間,在有限可用樣本的情況下,準(zhǔn)確估計環(huán)境模型是極具挑戰(zhàn)的。本文將以如何學(xué)習(xí)環(huán)境模型為核心內(nèi)容,介紹并分析現(xiàn)有模型化強(qiáng)化學(xué)習(xí)方法。
Abbeel 等指出在確定性環(huán)境下,模型化強(qiáng)化學(xué)習(xí)無需精確的環(huán)境估計模型就可完成任務(wù)[20]。然而,實(shí)際應(yīng)用中面臨的環(huán)境往往是復(fù)雜的、動態(tài)的,因而對環(huán)境建模得到的狀態(tài)轉(zhuǎn)移模型與真實(shí)環(huán)境間存在模型誤差,此時使用不準(zhǔn)確的環(huán)境模型產(chǎn)生的數(shù)據(jù)進(jìn)行策略學(xué)習(xí)還會產(chǎn)生更大的誤差,從而帶來雙模誤差。為減小模型誤差,提高模型準(zhǔn)確性,相關(guān)研究提出了很多解決辦法,如Dyna模型化強(qiáng)化學(xué)習(xí)框架[21]、學(xué)習(xí)控制的概率推理方法[22]、基于最小二乘條件密度估計方法的模型化策略搜索算法[15]、嵌入控制方法[23]、基于神經(jīng)網(wǎng)絡(luò)動力學(xué)和無模型微調(diào)的模型化深度強(qiáng)化學(xué)習(xí)方法[24]、世界模型[25]等。本章將圍繞上述相關(guān)研究進(jìn)行討論,分別從它們的主要思想、具體流程、方法優(yōu)缺點(diǎn)進(jìn)行詳細(xì)綜述。
Dyna 算法框架是將模型化強(qiáng)化學(xué)習(xí)和無模型強(qiáng)化學(xué)習(xí)結(jié)合,既從模型中學(xué)習(xí),也從與環(huán)境交互的經(jīng)歷中學(xué)習(xí),從而更新價值函數(shù)或策略函數(shù)的一類方法[21]。Dyna 算法框架并不是一個具體的強(qiáng)化學(xué)習(xí)算法,而是一類算法框架。
在Dyna 算法框架中,訓(xùn)練是在兩個步驟之間迭代進(jìn)行的:首先,使用當(dāng)前策略,從與環(huán)境的交互中收集數(shù)據(jù);然后,利用收集到的數(shù)據(jù)學(xué)習(xí)動態(tài)模型;其次,用所學(xué)的環(huán)境動態(tài)模型生成數(shù)據(jù);最后,使用生成數(shù)據(jù)對策略進(jìn)行更新。具體實(shí)現(xiàn)流程如算法1 所示。
算法1Dyna算法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及相應(yīng)的獎勵函數(shù)、狀態(tài)轉(zhuǎn)移模型。
步驟1初始化價值函數(shù)或策略函數(shù),獎勵模型r(st,at,st+1)和狀態(tài)轉(zhuǎn)移模型P(st+1|st,at);
步驟2依據(jù)當(dāng)前策略選擇動作a,更新價值函數(shù)或策略函數(shù),更新狀態(tài)轉(zhuǎn)移模型P(st+1|st,at)和獎勵模型r(st,at,st+1);
步驟2.1隨機(jī)選擇狀態(tài)s和動作a,并依據(jù)狀態(tài)轉(zhuǎn)移模型P(st+1|st,at) 得到st+1,基于模型r(st,at,st+1)得到瞬時獎勵r;
步驟2.2更新價值函數(shù)或策略函數(shù)。
算法1 中步驟2 可使用經(jīng)典Q-Learning 系列的價值函數(shù)[26]、基于Actor-Critic 的策略函數(shù)[27]進(jìn)行策略選擇?;贒yna 框架的模型化強(qiáng)化學(xué)習(xí)方法是該領(lǐng)域的主流方法,具體算法包括經(jīng)典的學(xué)習(xí)控制的概率推理方法[22]及基于最小二乘條件密度估計方法的模型化策略參數(shù)探索方法[15],下面詳細(xì)介紹這兩個算法。
3.1.1 學(xué)習(xí)控制的概率推理方法
模型化強(qiáng)化學(xué)習(xí)最大的問題是對環(huán)境建模時會產(chǎn)生模型誤差。業(yè)界就如何減小模型誤差,提高模型準(zhǔn)確性展開了大量研究。學(xué)習(xí)控制的概率推理方法(probabilistic inference for learning control,PILCO)是該領(lǐng)域最經(jīng)典的方法之一[15,28],其主要思想是將環(huán)境中的狀態(tài)轉(zhuǎn)移模型建模為高斯過程(Gaussian process,GP)[29],即以狀態(tài)-動作對作為輸入,輸出是關(guān)于下一狀態(tài)的概率分布?;贕P 的狀態(tài)轉(zhuǎn)移概率模型不僅可以捕捉到狀態(tài)轉(zhuǎn)移的不確定性,還將模型不確定性集成到了長期規(guī)劃和決策中[30]。PILCO算法的具體流程如算法2 所示。
算法2PILCO 算法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及相應(yīng)狀態(tài)轉(zhuǎn)移模型。
步驟1隨機(jī)收集樣本數(shù)據(jù)并初始化策略參數(shù)ρ;
步驟2使用收集的樣本,通過無參數(shù)的GP 學(xué)習(xí)狀態(tài)轉(zhuǎn)移模型;
步驟3使用當(dāng)前策略π與上述模型交互,通過確定性近似推理評估累積期望回報J(ρ);
步驟4基于解析梯度的策略提升;
步驟5更新策略π,π*←π(ρ*)。
在隨機(jī)收集樣本后,通過無參數(shù)的GP 表示環(huán)境動態(tài)模型:
其中,st、at分別表示t時刻的狀態(tài)和動作,μt+1=st+Ef[Δt]為均值,Σt=varf[Δt]為方差。
隨后基于學(xué)到的環(huán)境動態(tài)模型將模型偏差納入策略評估中,通過確定性近似推理評估累積期望回報J(ρ):
其中,c(xt)表示人為指定的獎勵函數(shù),T表示路徑長度。
最后通過可解析的策略梯度進(jìn)行策略搜索并更新提升策略參數(shù)ρ。
PILCO 算法在機(jī)器人控制等復(fù)雜的實(shí)際問題中得到了廣泛的應(yīng)用[30],也有相關(guān)研究針對PILCO 存在的問題提出了改進(jìn)算法,如可實(shí)現(xiàn)多任務(wù)策略搜索的PILCO 算法[31],以及面對復(fù)雜的高維度狀態(tài)空間的深度PILCO 算法[32]。上述基于PILCO 的改進(jìn)算法在不同方面改進(jìn)了其性能,但此類方法假設(shè)條件狀態(tài)轉(zhuǎn)移概率密度函數(shù)為高斯分布,狀態(tài)-動作聯(lián)合概率密度函數(shù)為高斯分布,且獎賞函數(shù)須為指定的指數(shù)形式以保證策略估計及策略梯度能夠解析地計算,這極大程度地限制了PILCO 算法在實(shí)際問題中的應(yīng)用。
3.1.2 基于最小二乘條件密度估計方法的模型化策略搜索算法
針對PILCO 算法存在的根本問題,Tangkaratt 等提出了基于最小二乘條件密度估計的模型化策略搜索算法(model-based policy gradients with parameterbased exploration by least-squares conditional density estimation,Mb-PGPE-LSCDE)[15]。該算法首先使用最小二乘條件密度估計方法(least-squares conditional density estimation,LSCDE)[18]學(xué)習(xí)狀態(tài)轉(zhuǎn)移模型,再利用基于參數(shù)探索的策略梯度算法(policy gradient with parameter-based exploration,PGPE)[33]進(jìn)行策略學(xué)習(xí)。學(xué)習(xí)流程如算法3 所示。
算法3基于最小二乘條件密度估計的模型化策略搜索算法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及相應(yīng)狀態(tài)轉(zhuǎn)移模型。
步驟1智能體與環(huán)境交互,隨機(jī)收集轉(zhuǎn)移樣本;
步驟2利用收集的樣本對環(huán)境建模得到狀態(tài)轉(zhuǎn)移模型;
步驟3初始化當(dāng)前策略π和策略參數(shù)ρ;
步驟4將學(xué)到的狀態(tài)轉(zhuǎn)移模型和當(dāng)前策略交替使用,生成足夠的樣本序列。
智能體首先與環(huán)境交互進(jìn)行隨機(jī)采樣,并使用采樣得到的樣本,通過LSCDE 方法對環(huán)境建模得到:
其中,φ(st,at,st+1)是基向量,α是M維參數(shù)向量,最小化下列平方誤差就可得到最優(yōu)參數(shù)α。
在得到穩(wěn)定狀態(tài)轉(zhuǎn)移模型后,將該模型與當(dāng)前策略交替使用生成足夠的樣本序列,并使用PGPE 方法進(jìn)行策略搜索,更新策略參數(shù):
式中,ε>0 表示學(xué)習(xí)率,J(ρ)表示含參累積期望回報。
LSCDE 是一種非參擬合方法,相對比基于GP 的模型化方法,其最大的優(yōu)勢在于能擬合任意條件概率密度函數(shù)。此外,利用LSCDE 算法學(xué)到的狀態(tài)轉(zhuǎn)移模型易于生成樣本;能夠直接處理多維度的輸入-輸出問題[15];對異常值很魯棒;可以通過求解線性方程得到解析解;能夠以非參最優(yōu)速率收斂到真實(shí)條件概率密度函數(shù)[18]?;贚SCDE 的模型化策略搜索方法在采樣預(yù)算有限的情況下具有很好的性能,極大提高了樣本利用率,但難以處理高維度問題。
目前,神經(jīng)網(wǎng)絡(luò)已在眾領(lǐng)域取得巨大成功[34],與此同時研究者也在探索利用神經(jīng)網(wǎng)絡(luò)解決模型化強(qiáng)化學(xué)習(xí)中復(fù)雜、高維任務(wù)的方法[19]。其中,Nagabandi等人提出基于神經(jīng)網(wǎng)絡(luò)動力學(xué)和無模型微調(diào)的模型化深度強(qiáng)化學(xué)習(xí)方法(neural network dynamics for model-based deep reinforcement learning with modelfree fine-tuning,MBMF)[24],該算法只需收集機(jī)器人與環(huán)境幾分鐘的交互數(shù)據(jù)就可找到最優(yōu)策略,完成任務(wù)。
MBMF 方法將神經(jīng)網(wǎng)絡(luò)和模型預(yù)測控制方法(model predictive control,MPC)[35]結(jié)合,利用神經(jīng)網(wǎng)絡(luò)捕捉學(xué)習(xí)有效步態(tài)的動力學(xué)模型,所得模型可用于不同的軌跡跟蹤任務(wù),還可以用所得模型生成樣本初始化智能體,使用無模型強(qiáng)化學(xué)習(xí)對初始步態(tài)微調(diào),獲得高任務(wù)獎勵。
算法4MBMF 方法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及神經(jīng)網(wǎng)絡(luò)動力學(xué)模型。
步驟1建立神經(jīng)網(wǎng)絡(luò)動力學(xué)模型f,擬合狀態(tài)變化與當(dāng)前狀態(tài)和動作的非線性關(guān)系;
步驟2使用梯度下降方法更新模型f;
步驟3定義模型化的控制器(controller)預(yù)測動作序列A(H);
步驟4選擇對應(yīng)于最高累積獎賞的序列A*,執(zhí)行動作序列中的第一個動作;
步驟5重復(fù)步驟3、步驟4 直到序列最終狀態(tài),并更新神經(jīng)網(wǎng)絡(luò)動力學(xué)模型(步驟2)。
算法4 表示的是僅使用模型化強(qiáng)化學(xué)習(xí)方法(model-based,MB)的學(xué)習(xí)過程。具體過程如下:
首先,建立神經(jīng)網(wǎng)絡(luò)動力學(xué)模型(狀態(tài)轉(zhuǎn)移模型):
其中,st、at分別為t時刻智能體的狀態(tài)和采取的動作,st+1表示t+1 時刻智能體狀態(tài),fθ(st,at)表示參數(shù)為θ的神經(jīng)網(wǎng)絡(luò)動力學(xué)模型,用于捕捉在執(zhí)行某動作a的相鄰狀態(tài)間的變化。
其次,更新模型參數(shù)θ,損失函數(shù)為:
然后,使用任務(wù)獎賞函數(shù)和習(xí)得的動力學(xué)模型建立的模型化的控制器預(yù)測動作序列A(H):其中,每個時間步t均隨機(jī)生成K個動作候選序列,H為序列長度。
盡管強(qiáng)化學(xué)習(xí)中模型化方法比無模型方法學(xué)習(xí)特定任務(wù)的策略時更具樣本效率和靈活性,但若存在模型偏差,其性能通常比無模型強(qiáng)化學(xué)習(xí)方法差。因此文章結(jié)合兩者優(yōu)勢,又提出了一種簡單且高效的MBMF 方法[24]。具體地,首先使用上述模型化方法中的控制器生成樣本序列作為“專家知識”初始化無模型強(qiáng)化學(xué)習(xí)方法的策略參數(shù),然后使用無模型方法——信任區(qū)域策略優(yōu)化(trust region policy optimization,TRPO)[36]方法微調(diào)策略參數(shù)進(jìn)行策略搜索。
嵌入控制方法(embed to control:a locally linear latent dynamics model for control from raw images,E2C)是一種面向高維圖像流的隨機(jī)最優(yōu)控制(stochastic optimal control,SOC)系統(tǒng)[23]。為解決原始圖像作為輸入帶來的維度過高問題,E2C 方法將高維非線性系統(tǒng)的最優(yōu)控制問題轉(zhuǎn)化為低維隱空間中的局部線性問題,使得最優(yōu)控制能夠快速、簡便地進(jìn)行。
如圖4 所示[23],E2C 模型將高維、非線性的原始像素圖像st作為系統(tǒng)輸入,經(jīng)變分自編碼器(variational autoencoder,VAE)[37]的編碼器(encoder)部分,將系統(tǒng)輸入映射到低維隱空間中,隨后在隱空間中將動態(tài)環(huán)境約束為局部線性模型,并計算KL 散度(Kullback-Leibler divergence)[38]進(jìn)行模型更新。在模型穩(wěn)定收斂后,E2C 模型可直接根據(jù)當(dāng)前狀態(tài)st和動作at,預(yù)測下一狀態(tài)st+1。
Fig.4 Information flow in E2C model圖4 E2C 方法信息流
算法5E2C 方法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及相應(yīng)狀態(tài)轉(zhuǎn)移模型。
步驟1利用VAE 將收集到的當(dāng)前狀態(tài)st映射到隱空間,得到隱狀態(tài)zt;
步驟2在當(dāng)前隱空間根據(jù)隱狀態(tài)zt建立線性狀態(tài)轉(zhuǎn)移模型htrans;
步驟3對所得狀態(tài)轉(zhuǎn)移模型htrans更新訓(xùn)練,直至收斂;
步驟4將SOC 和狀態(tài)轉(zhuǎn)移模型htrans聯(lián)合使用,獲得最優(yōu)控制。
算法5 為E2C 模型化強(qiáng)化學(xué)習(xí)方法具體流程。由于原始圖像是高維的,很難直接處理,因此文章提出首先通過變分自編碼器將高維圖像輸入數(shù)據(jù)st映射為低維隱空間中的zt:
其中,zt是st的低維隱表征,m是高維圖像st到低維向量zt的映射函數(shù),ω為系統(tǒng)噪聲。
為得到局部線性模型的概率生成模型,此方法直接在隱表征z中令潛在表征線性化:
其中:
其中,htrans(zt)表示參數(shù)是ψ輸入是zt的三層神經(jīng)網(wǎng)絡(luò),vec表示向量化,WA、WB、Wo表示權(quán)重矩陣,bA、bB、bo表示偏差矩陣。
隨后訓(xùn)練更新模型:利用得到的隱空間狀態(tài)轉(zhuǎn)移模型htrans和當(dāng)前隱狀態(tài)zt以及當(dāng)前動作at預(yù)測隱空間中的下一狀態(tài);并使用上述VAE 對下一狀態(tài)st+1編碼得到zt+1,求與zt+1′間的KL 散度,微調(diào)線性狀態(tài)轉(zhuǎn)移模型htrans。
在模型穩(wěn)定收斂后,將SOC 和狀態(tài)轉(zhuǎn)移模型htrans聯(lián)合使用,獲得最優(yōu)控制。
E2C 方法不僅支持圖像序列的長期預(yù)測,而且在解決復(fù)雜控制的相關(guān)任務(wù)有很大優(yōu)勢。與E2C 方法思想相比,Assael 所提出的基于深度動態(tài)卷積網(wǎng)絡(luò)的策略學(xué)習(xí)方法[39]同樣使用VAE 從圖像中提取控制的隱空間表示,并在此基礎(chǔ)上學(xué)習(xí)非線性模型。不同的是后者使用PCA(principal components analysis)進(jìn)行預(yù)處理[40],然而預(yù)處理后的數(shù)據(jù)在隱空間中不能保證長期預(yù)測不發(fā)散,也不能保證數(shù)據(jù)的線性,最終實(shí)驗(yàn)結(jié)果并不理想。
然而當(dāng)系統(tǒng)動力學(xué)中存在噪聲時,用于嵌入的編碼器通常具有較大的近似誤差,魯棒的局部線性可控嵌入方法(robust locally-linear controllable embedding,RCE)[41]提出嵌入后驗(yàn)的變分近似方法,最終使得RCE 方法性能優(yōu)于E2C 模型。
世界模型(world models)是為通用強(qiáng)化學(xué)習(xí)環(huán)境所構(gòu)建的神經(jīng)網(wǎng)絡(luò)生成模型,它可以在無監(jiān)督的情況下快速學(xué)習(xí)到低維隱空間下的環(huán)境狀態(tài)表示,甚至能夠?qū)⒅悄荏w在學(xué)得的世界模型中訓(xùn)練,并將其策略遷移至真實(shí)環(huán)境[25]。世界模型框架如圖5所示[25],模型包含三個主要部分:將原始觀測圖像映射到低維隱空間中的視覺組件(V);用于在低維潛在空間對未來狀態(tài)的預(yù)測的記憶組件部分(M);基于視覺組件和記憶組件的輸出決定智能體所采取動作的控制組件(C)。
Fig.5 Flow diagram of world models圖5 世界模型數(shù)據(jù)流
t時刻,智能體首先與真實(shí)環(huán)境交互觀測得到高維原始圖像,在V 部分利用VAE 得到原始圖像的潛在編碼zt,因此此部分的主要任務(wù)是狀態(tài)的抽象、低維表示。隨后在M 部分根據(jù)當(dāng)前狀態(tài)的潛在編碼zt和采取動作at,使用基于混合密度網(wǎng)絡(luò)的遞歸型神經(jīng)網(wǎng)絡(luò)(mixture density network combined with a recurrent neural networks,MDN-RNN)[42]預(yù)測下一狀態(tài)的潛在編碼zt+1,其中RNN(recurrent neural networks)[43]學(xué)習(xí)潛在空間的狀態(tài)轉(zhuǎn)移概率密度函數(shù)p(zt+1|at,zt,ht),ht表示RNN 的隱藏狀態(tài)。在智能體與環(huán)境的交互過程中,C 部分實(shí)現(xiàn)當(dāng)前狀態(tài)的潛在編碼zt和系統(tǒng)自身的隱藏狀態(tài)ht到動作的映射:
其中,Wc和bc分別表示權(quán)重矩陣和偏差向量。
算法6 的訓(xùn)練過程中,將大規(guī)模神經(jīng)網(wǎng)絡(luò)置于V部分和M 部分,利用無監(jiān)督的學(xué)習(xí)方式分開訓(xùn)練學(xué)習(xí)智能體的環(huán)境模型;將C 模型設(shè)計為一個小型神經(jīng)網(wǎng)絡(luò),使用協(xié)方差矩陣自適應(yīng)進(jìn)化策略(covariance matrix adaptation evolution strategy,CMA-ES)最大化累積獎勵,對控制器進(jìn)行優(yōu)化[44]。
算法6世界模型方法
輸入:隨機(jī)決策行為數(shù)據(jù)。
輸出:算法得到的策略以及狀態(tài)轉(zhuǎn)移模型。
步驟1隨機(jī)收集數(shù)據(jù);
步驟2訓(xùn)練VAE(V)部分,將原始輸入映射到維度較小的隱空間中;
步驟3訓(xùn)練MDN-RNN(M)部分,得到轉(zhuǎn)移模型P(zt+1|at,zt,ht);
步驟4訓(xùn)練C選取下一步的行動,at=Wc[zt,ht]+bc;
步驟5使用協(xié)方差自適應(yīng)調(diào)整的進(jìn)化策略(CMAES)最大化獎賞,更新參數(shù)Wc、bc。
世界模型摒棄了傳統(tǒng)深度強(qiáng)化學(xué)習(xí)的端到端的學(xué)習(xí)方式,采用對各個組件分開訓(xùn)練的模式進(jìn)行學(xué)習(xí),從而極大地加快學(xué)習(xí)速率。它針對不同任務(wù)能夠取得較好結(jié)果,且易于復(fù)現(xiàn),方法整體性能穩(wěn)定。但使用VAE 作為V 模型壓縮空間維度并將其訓(xùn)練為獨(dú)立模型有其局限性,這是由于編碼器可能編碼與任務(wù)無關(guān)的部分觀測結(jié)果。另外,受限于硬件存儲能力,難以存儲所有數(shù)據(jù)信息,會產(chǎn)生諸如災(zāi)難性遺忘之類的問題。
深度強(qiáng)化學(xué)習(xí)通過端到端的學(xué)習(xí)方式實(shí)現(xiàn)從輸入到輸出的直接控制,使強(qiáng)化學(xué)習(xí)能夠擴(kuò)展到以前難以處理的具有高維狀態(tài)和動作空間的決策問題。它為整個社會實(shí)現(xiàn)真正智能化提供了有力的技術(shù)支撐,在機(jī)器人控制、游戲、自然語言處理、自動駕駛等領(lǐng)域取得了令人矚目的成就,成為當(dāng)前備受關(guān)注的研究領(lǐng)域。深度強(qiáng)化學(xué)習(xí)的成功依賴于大量的數(shù)據(jù)樣本、計算資源及良好的學(xué)習(xí)算法,而獲得大量的學(xué)習(xí)樣本恰恰是DRL 在實(shí)際應(yīng)用中的瓶頸問題。鑒于模型化強(qiáng)化學(xué)習(xí)在樣本利用率方面的優(yōu)勢,本文對其展開了詳細(xì)的綜述、分析及展望。
對模型化強(qiáng)化學(xué)習(xí)而言,其核心的問題是如何提高環(huán)境模型預(yù)測的準(zhǔn)確率。近年,生成模型,如變分自編碼器[37]及對抗生成網(wǎng)絡(luò)[45],在數(shù)據(jù)生成方面取得了令人矚目的成果,如何將成熟的概率生成模型更好地應(yīng)用到模型化強(qiáng)化學(xué)習(xí)領(lǐng)域,進(jìn)行精準(zhǔn)的環(huán)境狀態(tài)轉(zhuǎn)移的預(yù)測是重要的研究方向。深度強(qiáng)化學(xué)習(xí)往往面對的是高維度、復(fù)雜的狀態(tài)空間,針對此應(yīng)用場景,樣本利用率及維度災(zāi)難問題是該領(lǐng)域在實(shí)際中的瓶頸問題[15]。因此,如何在高維狀態(tài)空間的低維表示空間預(yù)測狀態(tài)轉(zhuǎn)移模型是模型化強(qiáng)化學(xué)習(xí)能在實(shí)際中得以廣泛應(yīng)用的重要探索方向[25]。此外,現(xiàn)有深度強(qiáng)化學(xué)習(xí)方法面對給定的任務(wù)可以在訓(xùn)練環(huán)境中表現(xiàn)極好,但是往往不能泛化至環(huán)境中看似微小的變化,因此如何學(xué)習(xí)能夠自適應(yīng)的環(huán)境模型是模型化強(qiáng)化學(xué)習(xí)在實(shí)現(xiàn)通用人工智能過程中的重要課題。影響狀態(tài)轉(zhuǎn)移的因素包括智能體對于自身行動所引發(fā)的環(huán)境變化的內(nèi)部隱狀態(tài)的變化及外部環(huán)境的變化,智能體在學(xué)習(xí)環(huán)境的狀態(tài)轉(zhuǎn)移函數(shù)時,應(yīng)該同時學(xué)習(xí)自身系統(tǒng)的內(nèi)部隱狀態(tài)變化[25],從而在面對新環(huán)境時,能更快、更有效地將所學(xué)的環(huán)境模型適應(yīng)到新的環(huán)境中。
模型化強(qiáng)化學(xué)習(xí)算法和無模型強(qiáng)化學(xué)習(xí)算法各有優(yōu)缺點(diǎn),將兩種算法聯(lián)合使用可以綜合兩者的優(yōu)點(diǎn),這將成為未來深度強(qiáng)化學(xué)習(xí)發(fā)展的熱點(diǎn),從而讓深度強(qiáng)化學(xué)習(xí)算法更實(shí)用。未來工作的一個重要方向是將模型化方法和無模型方法更緊密、更高效地集成在一起,以便進(jìn)一步提高樣本效率,學(xué)習(xí)最優(yōu)策略。另外,模型化強(qiáng)化學(xué)習(xí)與控制理論聯(lián)系緊密,未來二者可互相借鑒成果,互相促進(jìn)共同發(fā)展。