国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于層級(jí)深度強(qiáng)化學(xué)習(xí)的間歇控制算法

2019-01-22 06:54李廣源史海波孫杳如
現(xiàn)代計(jì)算機(jī) 2018年35期
關(guān)鍵詞:低層間歇高層

李廣源,史海波,孫杳如

(同濟(jì)大學(xué)電子與信息工程學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系,上海 201804)

0 引言

近年來(lái),人工智能領(lǐng)域中出現(xiàn)了多種針對(duì)強(qiáng)化學(xué)習(xí)算法的測(cè)試平臺(tái),例如OpenAI的Universe、Gym、DeepMind 的 DeepMind Lab 等[1-2]。其中,MuJoCo通過(guò)模擬對(duì)仿真機(jī)器人的控制,搭建了針對(duì)高維、連續(xù)動(dòng)作空間的強(qiáng)化學(xué)習(xí)測(cè)試平臺(tái)[3]。由于在這些測(cè)試平臺(tái)的仿真過(guò)程中,動(dòng)作的執(zhí)行不能獲得即時(shí)的標(biāo)簽,因而動(dòng)作策略的訓(xùn)練多采用如進(jìn)化算法、強(qiáng)化學(xué)習(xí)等學(xué)習(xí)方法。近年來(lái),由深度網(wǎng)絡(luò)和強(qiáng)化學(xué)習(xí)結(jié)合的算法(深度強(qiáng)化學(xué)習(xí))在連續(xù)動(dòng)作空間問(wèn)題中取得了接近人類水平的成績(jī),從而成為求解該類任務(wù)的研究熱點(diǎn)[4-5]。

在連續(xù)動(dòng)作空間任務(wù)中,如果能夠得到任務(wù)環(huán)境的動(dòng)力學(xué)方程就可能構(gòu)建出高效的算法。例如在知道MuJoCo機(jī)械臂(Reacher)的動(dòng)力學(xué)模型的前提下,Hall使用在線軌跡優(yōu)化(Online Trajectory Optimization)算法規(guī)劃?rùn)C(jī)械臂的控制動(dòng)作序列[6]。在沒(méi)有進(jìn)行離線訓(xùn)練的情況下,該算法能夠?qū)崟r(shí)高效的控制機(jī)械臂完成指定動(dòng)作。然而,該算法需要事先確定任務(wù)環(huán)境的動(dòng)力學(xué)模型,而大部分仿真環(huán)境具有較為復(fù)雜非線性動(dòng)力學(xué)系統(tǒng),其動(dòng)力學(xué)方程難以使用解析式表達(dá)。

當(dāng)仿真任務(wù)的環(huán)境支持離線的暫停和探索時(shí),可以用蒙特卡洛樹(shù)搜索(Monte Carlo Tree Search,MCTS)算法對(duì)決策進(jìn)行探索。在可以使用Atari模擬器進(jìn)行探索的前提下,利用MCTS算法對(duì)每一步?jīng)Q策進(jìn)行搜索,最終在多數(shù)Atari游戲中取得超過(guò)人類水平的分?jǐn)?shù)[7]。然而多數(shù)仿真環(huán)境以及真實(shí)世界中是不支持暫停和探索功能。

文獻(xiàn)[6]中的算法利用了任務(wù)環(huán)境的先驗(yàn)知識(shí),文獻(xiàn)[7]中的算法需要仿真平臺(tái)的特殊支持。為了提高算法的魯棒性,Lillicrap等人在2016年提出了深度確定性策略梯度(Deep Deterministic Policy Gradient,DDPG),該算法實(shí)現(xiàn)了端到端、無(wú)模型的學(xué)習(xí)過(guò)程,并且在多種連續(xù)動(dòng)作控制任務(wù)中表現(xiàn)出色。然而該方法在訓(xùn)練時(shí)收斂速度慢,同時(shí)在面對(duì)復(fù)雜的仿真環(huán)境時(shí)學(xué)習(xí)效果不穩(wěn)定。

受到生物運(yùn)動(dòng)控制系統(tǒng)啟發(fā)而提出了間歇控制(Intermittent Control,IC)[8,9]。間歇控制是一種具有層級(jí)結(jié)構(gòu)的算法,其基本思想是將復(fù)雜的任務(wù)分解成具有層級(jí)結(jié)構(gòu)的多個(gè)子任務(wù),再針對(duì)每個(gè)子任務(wù)進(jìn)行單獨(dú)優(yōu)化,從而實(shí)現(xiàn)高效的動(dòng)作空間探索,提高算法的收斂速度[10]。在軌跡跟蹤任務(wù)中,Wada等人提出了基于最小轉(zhuǎn)換原則的曲線生成算法[11-12],用以生成仿真的手寫(xiě)體字母。然而該算法中的目標(biāo)點(diǎn)參數(shù)數(shù)量和位置是由人工調(diào)參得到,整個(gè)調(diào)參過(guò)程需要大量時(shí)間。

為了進(jìn)一步提高算法的收斂時(shí)間,Schroecker提出了基于模仿學(xué)習(xí)的間歇控制算法。針對(duì)Reacher任務(wù),該算法首先收集一批人工控制下得到的樣本,在模型學(xué)習(xí)過(guò)程中,將動(dòng)作的搜索空間限制在已有樣本空間的附近,從而顯著加快模型收斂的速度[13]。然而該算法最終效果和樣本的質(zhì)量相關(guān)性較大,當(dāng)已有樣本偏離最優(yōu)解時(shí),算法最終難以收斂到較好的水平。

針對(duì)具有連續(xù)動(dòng)作空間和非線性動(dòng)力學(xué)系統(tǒng)的仿真任務(wù),為了提高算法的收斂速度和最終效果,以及實(shí)現(xiàn)無(wú)模型、高魯棒性的策略學(xué)習(xí),本文中融合間歇控制框架和DDPG算法提出了層級(jí)深度確定性策略梯度(Hierarchy Deep Deterministic Policy Gradient,HDDPG)模型。該模型由兩個(gè)控制器組成,分別為高層控制器和低層控制器。高層控制器負(fù)責(zé)分解任務(wù),將任務(wù)在時(shí)間上分解成多個(gè)離散的子任務(wù)。低層控制器負(fù)責(zé)完成具體的子任務(wù)執(zhí)行,在每個(gè)時(shí)刻給出智能體(任務(wù)主體,例如在Reacher任務(wù)中,代理表示機(jī)械臂)需要執(zhí)行的動(dòng)作。其中低層控制器使用DDPG模型進(jìn)行學(xué)習(xí),實(shí)現(xiàn)了端到端,無(wú)模型的學(xué)習(xí)過(guò)程,避免了對(duì)任務(wù)環(huán)境的動(dòng)力學(xué)模型的依賴和人工調(diào)參的過(guò)程。高層控制器同樣使用DDPG模型,在模型學(xué)習(xí)的過(guò)程中,引入最小轉(zhuǎn)換原則以啟發(fā)模型找到最優(yōu)的任務(wù)分解模式。最后在經(jīng)典仿真任務(wù)軌跡跟蹤(Tracking)和二連桿機(jī)械臂(Reacher)來(lái)驗(yàn)證算法。兩個(gè)實(shí)驗(yàn)證明了HDDPG相對(duì)DDPG模型可以在更短的學(xué)習(xí)時(shí)間內(nèi)找到最優(yōu)解。

1 HDDPG算法

針對(duì)連續(xù)運(yùn)動(dòng)控制的層級(jí)控制模型HDDPG(Hier?archical Deep Deterministic Policy Gradient,HDDPG)。在HDDPG中,模型分為高層控制器和低層控制器,高層和低層控制器以兩種不同粗細(xì)的時(shí)間粒度工作。高層控制器規(guī)劃次級(jí)目標(biāo)以及次級(jí)目標(biāo)執(zhí)行的時(shí)間。低層控制器在高層控制器規(guī)劃的時(shí)間內(nèi)執(zhí)行與環(huán)境交互的動(dòng)作,以期達(dá)到高層控制器規(guī)劃的次級(jí)目標(biāo)。高層控制器輸出的次級(jí)目標(biāo)和次級(jí)目標(biāo)的執(zhí)行時(shí)間是由連續(xù)的值表示,次級(jí)目標(biāo)一般表示為環(huán)境中某個(gè)坐標(biāo)。高層控制器和低層控制器都使用DDPG模型。

下面給出具體的算法描述:

低層控制器是一個(gè)典型的DDPG模型,在一個(gè)連續(xù)動(dòng)作控制任務(wù)中,低層控制器環(huán)境的狀態(tài)空間S,t時(shí)刻的環(huán)境狀態(tài)st,其動(dòng)作空間為A,時(shí)刻t的動(dòng)作at,狀態(tài)轉(zhuǎn)移概率 p(st+1|st,at),獎(jiǎng)勵(lì)函數(shù)r∈S×A。代理通過(guò)調(diào)整策略πθ的參數(shù)θ∈?n來(lái)最大化獎(jiǎng)勵(lì)函數(shù)。使用隨機(jī)策略梯度法來(lái)更新參數(shù)θ。在每個(gè)時(shí)刻,環(huán)境的狀態(tài)由上一個(gè)時(shí)刻環(huán)境的狀態(tài)st-1和代理的動(dòng)作at-1決定,同時(shí),環(huán)境會(huì)給代理一個(gè)獎(jiǎng)勵(lì)r(st-1,at-1)。根據(jù)狀態(tài)s,動(dòng)作a和獎(jiǎng)勵(lì)r的序列{s1,a1,r1,…,sT,aT,rT} 來(lái)更新策略。每個(gè)時(shí)刻對(duì)應(yīng)的累計(jì)獎(jiǎng)勵(lì)?(s ,a)由公式?jīng)Q定,其中是γ衰減因子,取值范圍為(0,1),其中動(dòng)作價(jià)值函數(shù)為Qπ(st,at)=E[?(s ,a)|s=s1,a=a1,πθ],價(jià)值函數(shù)為 Vt(st)=E[?(s ,a)|s=st,πθ],模型學(xué)習(xí)的目標(biāo)是最大化累計(jì)回報(bào)?(s ,a)。使用梯度 ?aQ(s ,a|θQ)來(lái)優(yōu)化策略,其中Q是一個(gè)可微函數(shù)相應(yīng)的,策略網(wǎng)絡(luò)的梯度可以表示為使用Q-learning來(lái)更新動(dòng)作價(jià)值函數(shù),通過(guò)最小化δQ來(lái)優(yōu)化動(dòng)作價(jià)值網(wǎng)絡(luò),δQ是網(wǎng)絡(luò)預(yù)測(cè)出的價(jià)值與累計(jì)回報(bào)之間的均方差。

DDPG算法在訓(xùn)練連續(xù)動(dòng)作控制模型時(shí)往往需要較長(zhǎng)的訓(xùn)練時(shí)間,且訓(xùn)練時(shí)間和難度隨著任務(wù)自由度上升而變大,同時(shí)在針對(duì)復(fù)雜的運(yùn)動(dòng)控制任務(wù)時(shí)模型最終難以收斂。受到生物運(yùn)動(dòng)控制系統(tǒng)的層級(jí)結(jié)構(gòu)的啟發(fā),我們將DDPG融入到間歇控制的框架中,即HD?DPG。HDDPG分為兩層控制結(jié)構(gòu),每個(gè)控制結(jié)構(gòu)均是由一個(gè)DDPG網(wǎng)絡(luò)組成。高層控制器的目標(biāo)是從宏觀上分解整個(gè)任務(wù),同時(shí)向低層控制器發(fā)出離散的命令,通過(guò)低層控制器間接與環(huán)境交互,從而完成整個(gè)控制任務(wù)。

相對(duì)于低層控制器,高層控制器在整個(gè)決策過(guò)程中的輸出以更大的粒度表示。如圖1所示,高層動(dòng)作網(wǎng)絡(luò) μ(s|θμ)根據(jù)當(dāng)前環(huán)境的狀態(tài)信息輸出次級(jí)目標(biāo)gti∈S和低層控制器持續(xù)時(shí)間T(ti)。在代理執(zhí)行任務(wù)的時(shí)候,低層控制器接受高層控制器輸出的間歇目標(biāo)gti和持續(xù)時(shí)間T(ti),由低層控制器去生成與環(huán)境交互的動(dòng)作ak,并且執(zhí)行持續(xù)時(shí)間T(ti),代理得到新環(huán)境這段時(shí)間的累計(jì)回報(bào)由環(huán)境在時(shí)間T(ti)內(nèi)的累計(jì)回報(bào)。高層控制器的目標(biāo)是最大化整個(gè)間歇控制過(guò)程中的累計(jì)回報(bào)高層控制器中價(jià)值網(wǎng)絡(luò)E[Fti|μθμ]是環(huán)境和高層控制器的動(dòng)作決定(gti,,Tti)的。動(dòng)作網(wǎng)絡(luò)的學(xué)習(xí)策略是

評(píng)價(jià)網(wǎng)絡(luò)的學(xué)習(xí)策略是最小化評(píng)價(jià)網(wǎng)絡(luò)δQ根據(jù)當(dāng)前狀態(tài)s和動(dòng)作a預(yù)測(cè)出的q和累計(jì)回報(bào)之間的均方差。是環(huán)境在時(shí)間Ti內(nèi)的累積回報(bào)。高層控制器根據(jù)來(lái)自環(huán)境的累積回報(bào) fti進(jìn)行學(xué)習(xí)。低層控制器根據(jù) fti進(jìn)行學(xué)習(xí)。是下一個(gè)關(guān)鍵點(diǎn)的預(yù)測(cè)動(dòng)作價(jià)值

圖1 HDDPG的層級(jí)架構(gòu)

2 實(shí)驗(yàn)設(shè)計(jì)

為了驗(yàn)證HDDPG模型能夠有效地完成連續(xù)動(dòng)作控制任務(wù),我們使用了兩個(gè)虛擬任務(wù)來(lái)驗(yàn)證模型的效果。第一個(gè)任務(wù)是軌跡跟蹤任務(wù)軌跡跟蹤(Puck World)。Puck World是一個(gè)虛擬的二維矩形平面,以其中心為原點(diǎn),x和y軸的范圍均為[- 1,1],假設(shè)平面上存在一質(zhì)點(diǎn),并且該質(zhì)點(diǎn)與平面之間存在摩擦力,軌跡跟蹤任務(wù)指在規(guī)定時(shí)間內(nèi)通過(guò)給出作用于質(zhì)點(diǎn)在x和y軸方向的力,使得質(zhì)點(diǎn)從起點(diǎn)到終點(diǎn)所走過(guò)的路徑符合預(yù)期的軌跡。其中環(huán)境(xt,yt)分別為質(zhì)點(diǎn)在t時(shí)刻的坐標(biāo),(vt,ut)為質(zhì)點(diǎn)在t時(shí)刻在x和y軸方向的分速度,(x′,y′) 為終點(diǎn)所在的坐標(biāo),(v′,u′)為終點(diǎn)在x和y軸方向的分速度。作用于質(zhì)點(diǎn)的動(dòng)作at=( ft,gt),( ft,gt)分別為t時(shí)刻作用于質(zhì)點(diǎn)x和y軸方向的力。

圖2 連續(xù)動(dòng)作控制任務(wù)在時(shí)間上分解的示意圖

如圖2所示在軌跡跟蹤任務(wù)中,低層控制器直接與環(huán)境交互(質(zhì)點(diǎn)),低層控制器的環(huán)境 sit=(xt,yt,vt,ut,xi,yi,vi,ui),其中(xi,yi,vi,ui)為高層控制器給出的第i個(gè)間歇目標(biāo)點(diǎn),Ti為高層控制器給出的第i個(gè)執(zhí)行時(shí)間,在時(shí)間Ti中低層控制器每個(gè)時(shí)刻t都給出一個(gè)動(dòng)作at=( ft,gt)直接作用于質(zhì)點(diǎn)。高層控制器的環(huán)境高層控制器給出的動(dòng)作ai=(xi,yi,vi,ui,Ti)。

HDDPG的學(xué)習(xí)過(guò)程分為兩個(gè)階段,第一個(gè)階段是低層控制器的學(xué)習(xí),第二階段是高層控制器的學(xué)習(xí)。低層控制器的學(xué)習(xí)是一個(gè)典型的DDPG學(xué)習(xí)過(guò)程。其中環(huán)境s=(x ,y,v,u,x′,y′,v′,u′) ,每次采集樣本都是隨機(jī)生成一個(gè)新的s,每次迭代固定步數(shù)為40。低層控制器的每步獎(jiǎng)勵(lì)函數(shù)為

3 結(jié)果分析

模型最終學(xué)會(huì)控制低層控制器去跟蹤這些軌跡。圖11展示了HDDPG和DDPG在軌跡跟蹤任務(wù)中的累積獎(jiǎng)勵(lì)隨著訓(xùn)練時(shí)間的變化。DDPG模型收斂于一個(gè)較低的累積獎(jiǎng)勵(lì)值并且具有較大的波動(dòng),而HDDPG則能較快的收斂于一個(gè)很高的累積獎(jiǎng)勵(lì)值,同時(shí)具有較好的穩(wěn)定性。x軸是訓(xùn)練時(shí)間,單位是小時(shí),y軸是累積獎(jiǎng)勵(lì)。這里累積獎(jiǎng)勵(lì)是10個(gè)HDDPG和10個(gè)DDPG模型的累積獎(jiǎng)勵(lì)的平均值。

圖3 DDPG與HDDPG在軌跡跟蹤任務(wù)學(xué)習(xí)過(guò)程中累計(jì)獎(jiǎng)勵(lì)變化

圖4描述了HDDPG模型與DDPG模型在軌跡跟蹤任務(wù)中最終位置與目標(biāo)點(diǎn)的距離。從圖中可以看到,在DDPG模型中,7個(gè)模型不能收斂,3個(gè)收斂的模型也沒(méi)有到達(dá)終點(diǎn)附近(距離終點(diǎn)歐氏距離0.1以內(nèi)算作到達(dá)附近)。在HDDPG中,最終有6個(gè)模型能夠到達(dá)終點(diǎn)附近,剩下4個(gè)模型進(jìn)行了無(wú)效的探索。值得注意的是,如果在運(yùn)行過(guò)程碰到環(huán)境范圍邊界,則本回合直接結(jié)束。

圖4 DDPG與HDDPG任務(wù)完成時(shí)末端與終點(diǎn)距離

4 結(jié)語(yǔ)

HDDPG與普通DDPG相比,在連續(xù)控制任務(wù)中具有更快的收斂速度和更好的效果。其原因可歸于兩點(diǎn),第一點(diǎn)是HDDPG直接在高層空間進(jìn)行探索。高層控制器輸出的是低層控制器的間歇目標(biāo)和持續(xù)時(shí)間,其中微小的變化可以導(dǎo)致最終軌跡出現(xiàn)較大的不同,具有更高的探索效率,有利于模型快速的探索環(huán)境信息。這一點(diǎn)和遺傳算法中的間接編碼有些類似。同時(shí)高層控制器模型的值函數(shù)的復(fù)雜程度隨著層級(jí)的提高而提高,將值函數(shù)以層級(jí)的結(jié)構(gòu)表示有助于學(xué)習(xí)得到更準(zhǔn)確的值函數(shù),從而進(jìn)一步提升復(fù)雜運(yùn)動(dòng)控制的性能。

第二點(diǎn)在學(xué)習(xí)過(guò)程中,估值網(wǎng)絡(luò)通過(guò)時(shí)間差分從后往前的迭代來(lái)逼近正確的值函數(shù)。如果動(dòng)作序列較長(zhǎng),則迭代的次數(shù)較多,所需的計(jì)算資源也較多,訓(xùn)練所需時(shí)間長(zhǎng)。而對(duì)于高層控制器的估值網(wǎng)絡(luò)來(lái)說(shuō),只需產(chǎn)生個(gè)位數(shù)的間歇控制動(dòng)作,具有較短的動(dòng)作序列,減少了計(jì)算所需資源。

猜你喜歡
低層間歇高層
論高層民用建筑施工管理
高強(qiáng)度間歇運(yùn)動(dòng)在慢性病防治中的作用及機(jī)制研究進(jìn)展
高層民用建筑設(shè)計(jì)中綠色建筑設(shè)計(jì)的應(yīng)用
南海夏季風(fēng)垂直結(jié)構(gòu)的變化特征及其對(duì)中國(guó)東部降水的影響
中年女性間歇習(xí)練太極拳的強(qiáng)度、能量消耗與間歇恢復(fù)探究分析
間歇供暖在散熱器供暖房間的應(yīng)用
探析高層民用建筑防火設(shè)計(jì)問(wèn)題及對(duì)策
關(guān)于低層房屋建筑工程造價(jià)的要點(diǎn)及控制措施探討探索
住宅樓層影響壽命
低層高密度住宅設(shè)計(jì)探討