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

?

基于時間差分誤差的離線強化學(xué)習(xí)采樣策略

2023-11-28 03:45:58張龍飛梁星星劉世旋程光權(quán)黃金才
工程科學(xué)學(xué)報 2023年12期
關(guān)鍵詞:離線優(yōu)先差分

張龍飛,,梁星星,劉世旋,程光權(quán),黃金才

國防科技大學(xué)系統(tǒng)工程學(xué)院,長沙 410073

近年來,強化學(xué)習(xí)技術(shù)憑借其自主學(xué)習(xí)的優(yōu)勢在游戲[1]、自動駕駛[2]、核能利用[3]、算法發(fā)現(xiàn)[4]和兵棋推演[5]等領(lǐng)域取得重要進(jìn)展.與傳統(tǒng)基于搜索的決策算法不同,強化學(xué)習(xí)通過與環(huán)境交互試錯,根據(jù)獲取的反饋獎勵學(xué)習(xí)狀態(tài)-動作的價值函數(shù),不斷學(xué)習(xí)更新行動策略.這種數(shù)據(jù)驅(qū)動的學(xué)習(xí)方式?jīng)Q定了強化學(xué)習(xí)的策略學(xué)習(xí)依賴于大規(guī)模的學(xué)習(xí)數(shù)據(jù),存在訓(xùn)練效率低、學(xué)習(xí)收斂慢、過程不穩(wěn)定等問題.為此,研究者們提出離策略(Off-Policy)強化學(xué)習(xí)方法,比如異步優(yōu)勢演員-評論者(A3C)[6]、軟性演員-評論者(SAC)[7]、雙延遲深度確定性策略梯度(TD3)[8]等,基于模型的強化學(xué)習(xí)方法,比如深度規(guī)劃網(wǎng)絡(luò)(PlaNet)[9]、想象者(Dreamer)[10]、想象者-v2(Dreamer-v2)[11]等,可以有效提升樣本利用率、加快學(xué)習(xí)效率.盡管這些方法在多個復(fù)雜決策和控制任務(wù)上展現(xiàn)出優(yōu)異性能,但仍需通過與環(huán)境交互獲取訓(xùn)練數(shù)據(jù),屬于在線強化學(xué)習(xí)方法的范疇.

與在線強化學(xué)習(xí)方法不同,批量-約束的深度Q 學(xué)習(xí)(BCQ)[12]、基于數(shù)據(jù)增強的離線強化學(xué)習(xí)方法(ORAD)[13]、基于模型的離線-在線強化學(xué)習(xí)方法(MOORE)[14],雙延遲深度確定性策略梯度-行為克?。═D3-BC)[15]等離線強化學(xué)習(xí)方法,是指智能體無需與環(huán)境進(jìn)行實時交互,而是利用預(yù)先收集的離線數(shù)據(jù),在離線的情況下學(xué)習(xí)策略.在交互成本高、在線樣本采集難的場景下,離線強化學(xué)習(xí)方法具有一定節(jié)省交互成本、降低交互風(fēng)險的優(yōu)勢.然而,離線強化學(xué)習(xí)不與環(huán)境交互的特性,也給其訓(xùn)練帶來了“外推誤差”的問題.當(dāng)離線訓(xùn)練的智能體在實際環(huán)境中進(jìn)行交互時,會對訓(xùn)練時未見過的新狀態(tài)、新動作出現(xiàn)樂觀估計,導(dǎo)致學(xué)習(xí)的價值函數(shù)估計誤差累積,從而引發(fā)性能下降.為此,大量離線強化學(xué)習(xí)方法通過在目標(biāo)函數(shù)中增加懲罰項、正則項等方式,使離線學(xué)習(xí)的策略保持在預(yù)先收集的數(shù)據(jù)分布的附近,從而約束了離線學(xué)習(xí)的策略在實際環(huán)境中的過度探索.盡管這些方法在一定程度上緩解了外推誤差的問題,但因引入了額外的約束項和超參數(shù),使得訓(xùn)練更為復(fù)雜,限制了其在實際場景中的推廣應(yīng)用.

本文提出一種基于時間差分誤差的采樣策略,通過將優(yōu)先經(jīng)驗回放的優(yōu)先采樣方法與標(biāo)準(zhǔn)經(jīng)驗回放的標(biāo)準(zhǔn)采樣方法相結(jié)合,在不同的訓(xùn)練階段采用不同的訓(xùn)練機制,以提升訓(xùn)練效率,降低樣本采樣率.然而,以往的研究經(jīng)驗表明,使用優(yōu)先經(jīng)驗采樣會因采樣偏好導(dǎo)致出現(xiàn)訓(xùn)練偏差,為消除這種偏差,本文使用重要性采樣機制.時間差分誤差作為強化學(xué)習(xí)中衡量策略優(yōu)劣的指標(biāo),通常被用于優(yōu)先采樣的優(yōu)先度.本文結(jié)合離線強化學(xué)習(xí)算法—保守Q 估計離線強化學(xué)習(xí)方法[16](Conservative Q-learning for offline reinforcement learning,CQL),基于不同的目標(biāo)函數(shù)估計方法,比較了以3 種不同的時間差分誤差值作為優(yōu)先采樣的優(yōu)先度度量指標(biāo)時的算法性能.經(jīng)過在離線數(shù)據(jù)集—深度數(shù)據(jù)驅(qū)動強化學(xué)習(xí)數(shù)據(jù)集(Datasets for deep data-driven reinforcement learning,D4RL)上的實驗可以看出,本文的方法在樣本利用率、最終性能和訓(xùn)練穩(wěn)定性上都明顯優(yōu)于其他同類算法[17].此外,通過消融實驗也可發(fā)現(xiàn),優(yōu)先采樣和標(biāo)準(zhǔn)采樣相結(jié)合的采樣方式是本文算法的關(guān)鍵.同時,使用最小化雙Q 值目標(biāo)估計的時間差分誤差優(yōu)先度度量所對應(yīng)的算法,在多個任務(wù)上具有最優(yōu)的性能.本文的方法主要貢獻(xiàn)如下:(1)提出了一種新的包含優(yōu)先采樣和標(biāo)準(zhǔn)采樣的離線強化學(xué)習(xí)采樣策略,可有效提升樣本效率;(2)比較了3 種基于時間差分誤差的優(yōu)先度度量指標(biāo)所對應(yīng)的算法的性能.本文的方法聚焦于樣本采樣策略,無需在算法的目標(biāo)函數(shù)中額外引入偏置歸納項,避免了對原始算法的修改,易于與其他離線學(xué)習(xí)算法結(jié)合,具有較好的實用性和可擴(kuò)展性.

1 強化學(xué)習(xí)中的采樣方法

1.1 基于經(jīng)驗回訪池的采樣方法

強化學(xué)習(xí)需利用智能體和環(huán)境交互產(chǎn)生的數(shù)據(jù)不斷更新策略直至收斂,這些數(shù)據(jù)往往質(zhì)量不一、標(biāo)簽稀缺,且無法重復(fù)使用.為提升數(shù)據(jù)利用率,強化學(xué)習(xí)引入了經(jīng)驗回放機制,即將智能體與環(huán)境在一定時間段內(nèi)交互生成的數(shù)據(jù)存儲起來組成一個經(jīng)驗池,訓(xùn)練時再從經(jīng)驗池中采集訓(xùn)練樣本.為保持樣本的多樣性,一般都使用隨機采樣的方法.優(yōu)先經(jīng)驗回放(Prioritized experience replay,PER)則是考慮到數(shù)據(jù)的質(zhì)量不同,部分具有更高價值的訓(xùn)練數(shù)據(jù)應(yīng)被更多次采樣,因此使用每條數(shù)據(jù)的時間差分誤差值來定義優(yōu)先度,每次訓(xùn)練時按照數(shù)據(jù)的優(yōu)先度進(jìn)行采樣,可有效提升樣本利用率[18].此外,競爭經(jīng)驗回放(Competitive experience replay,CER)通過使用雙經(jīng)驗回放池,從2 個經(jīng)驗池中采樣訓(xùn)練數(shù)據(jù),鼓勵2 個智能體相互競爭實現(xiàn)對環(huán)境的探索,引導(dǎo)智能體在目標(biāo)導(dǎo)向的任務(wù)中探索出最優(yōu)策略[19].Fu 等[20]在優(yōu)先采樣策略的基礎(chǔ)上,定義了時間差分誤差、N步獎勵返回值、虛擬計數(shù)、似然估計、通用自模仿學(xué)習(xí)、虛擬計數(shù)6 種不同的優(yōu)先度指標(biāo),通過大量實驗表明,以上指標(biāo)均可有效提升離線強化學(xué)習(xí)的采樣效率.Lee 等[21]提出針對離線訓(xùn)練的智能體在線微調(diào)再學(xué)習(xí)時,易因數(shù)據(jù)分布偏差產(chǎn)生嚴(yán)重的自舉誤差的問題,使用一個平衡的經(jīng)驗回放機制,優(yōu)先采樣遇到的在線樣本,同時也鼓勵使用來自離線數(shù)據(jù)集的接近策略的樣本,該方法主要是解決數(shù)據(jù)分布偏差問題,并未對離線數(shù)據(jù)本身進(jìn)行優(yōu)先度度量以提升學(xué)習(xí)效率.

1.2 時間差分誤差

時間差分誤差是智能體自舉產(chǎn)生的目標(biāo)值與價值網(wǎng)絡(luò)評估值之間的差異,反映的是在當(dāng)前策略和價值函數(shù)下,狀態(tài)或狀態(tài)-動作對的相對優(yōu)劣,是對狀態(tài)或狀態(tài)-動作對的評估指標(biāo)[22].按照時間差分中使用的自舉步數(shù),可將其分為1 步時間差分和N(N>1)步時間差分.PER 使用1 步時間差分誤差作為數(shù)據(jù)元組優(yōu)先度的度量指標(biāo),并把數(shù)據(jù)存儲在SumTree 結(jié)構(gòu)中,每次按照優(yōu)先采樣方式采集出批量數(shù)據(jù)進(jìn)行訓(xùn)練,并在每次網(wǎng)絡(luò)更新后重新計算時間差分誤差,以賦予數(shù)據(jù)元組新的優(yōu)先度.PER 使得時間差分誤差值大的數(shù)據(jù)獲得更多采樣次數(shù),有效提升了深度Q 網(wǎng)絡(luò)算法(Deep Q-network,DQN)的樣本利用率和最終性能.Rainbow 則是采用N步返回值計算時間差分誤差,通過N步返回值計算目標(biāo)值與價值網(wǎng)絡(luò)估計值的差值,以該差值作為數(shù)據(jù)元組的優(yōu)先度[23].相比于1 步時間差分誤差,N步時間差分誤差具有更小的估計偏差,但同時也增加了后續(xù)推演的計算量,增大了算法的復(fù)雜度.

1.3 重要性采樣機制

重要性采樣是通過給樣本添加重要性系數(shù),修正因偏好采樣產(chǎn)生的訓(xùn)練偏差.優(yōu)先經(jīng)驗回放中的優(yōu)先采樣,盡管是從完整數(shù)據(jù)集中采集樣本,但因偏好優(yōu)先度高的數(shù)據(jù),易造成神經(jīng)網(wǎng)絡(luò)梯度更新偏向于優(yōu)先度高的數(shù)據(jù)集,帶來訓(xùn)練偏差.為此,很多算法采用了重要性采樣來修正該訓(xùn)練偏差.鑒于本文賦予數(shù)據(jù)元組的初始優(yōu)先度為1,且隨著訓(xùn)練步數(shù)增長不斷降低優(yōu)先度,數(shù)據(jù)元組相對應(yīng)的重要性權(quán)重也應(yīng)遵循隨訓(xùn)練步數(shù)增大逐漸遞減的變化規(guī)律.重要性采樣在強化學(xué)習(xí)算法中應(yīng)用廣泛,置信域策略優(yōu)化[24](Trust region policy optimization,TRPO)為隨機策略更新添加了一個置信域,通過KL 散度(Kullback-Leibler divergence)懲罰來約束梯度更新,保證了梯度的正向更新.近端策略優(yōu)化[25](Proximal policy optimization,PPO)則是計算新策略與舊策略的重要性比率,以此衡量新策略與舊策略的差異,通過設(shè)置截斷比率的范圍值,約束新策略的梯度正向更新.

2 離線強化學(xué)習(xí)方法

2.1 強化學(xué)習(xí)

強化學(xué)習(xí)通常被表示為馬爾科夫決策過程[22](Markov decision process, MDP) ,M=(S,A,P,R,p0,γ,H) , 其中st∈S表 示狀態(tài)空間,at∈A表示動作空 間,P:st+1~P(·|st,at)表 示 狀 態(tài) 轉(zhuǎn) 移 概 率 函 數(shù),R:rt=R(st,at) 表 示獎勵函數(shù),p0表示初始狀態(tài)分布, γ表示折扣因子,H表示任務(wù)的尺度,一般是指片段環(huán)境中一個片段的固定步數(shù),st,at,p0,rt分別表示t時刻的狀態(tài)、動作、0 時刻的狀態(tài)轉(zhuǎn)移概率和t時刻的獎勵.強化學(xué)習(xí)的目標(biāo)是使用經(jīng)驗來學(xué)習(xí)一個行動策略 π:S→A,以最大化累積折扣期望獎勵:其中s0~p0,Eπ表示當(dāng)使用策略 π時的累積折扣期望獎勵,J(π)表示關(guān)于策略 π的目標(biāo)函數(shù),并且對于每個時間步t,都有at~π(·|st),st+1~P(·|st,at) , 且rt=R(st,at).每個策略 π都有一個相對應(yīng)的Q 值函數(shù)Qπ(st,at)=Eπ[Rt|st,at], 表示在狀態(tài)st采取動作at后,執(zhí)行策略π所獲得的獎勵期望.Q 值函數(shù)可通過如下貝爾曼算子得到:

其中, Tπ表示貝爾曼算子.Q 學(xué)習(xí)(Q-learning)[26]是通過迭代使用貝爾曼算子Qk+1=TπQk,直至Qk收斂到Qπ, 之后通過貪婪動作選擇獲取最優(yōu)值函數(shù)Q*(st,at)=maxπQπ(st,at)所對應(yīng)的最優(yōu)策略,其中Q*(st,at) 表 示在狀態(tài)st采取動作at的最優(yōu)Q 值.DQN 是在Q 學(xué)習(xí)基礎(chǔ)上,使用深度網(wǎng)絡(luò)表示連續(xù)狀態(tài)空間或巨大動作空間所對應(yīng)的值函數(shù),按照如公式(1)所示的計算方法,以值迭代的方式更新網(wǎng)絡(luò)參數(shù),獲取最優(yōu)價值函數(shù)[27].DQN 通過最小化如下目標(biāo)實現(xiàn)值函數(shù)的更新:

其中, ?表示價值網(wǎng)絡(luò)參數(shù), ?′表示延遲更新的價值網(wǎng)絡(luò)參數(shù).

2.2 保守Q 估計離線強化學(xué)習(xí)方法

保守Q 估計離線強化學(xué)習(xí)方法(CQL)是通過在SAC 算法的基礎(chǔ)上,為Q 值估計網(wǎng)絡(luò)添加一個保守約束項,懲罰Q 函數(shù)對分布外數(shù)據(jù)的樂觀估計.SAC 算法的策略評估通過最小化軟貝爾曼殘差來更新價值函數(shù)網(wǎng)絡(luò)的參數(shù):

其中, α是溫度系數(shù),正則項 logπ(at|st)鼓勵策略進(jìn)行探索和增強對噪聲的魯棒性.SAC 算法的策略提升則是通過最小化策略 π(·|s)和一個基于價值網(wǎng)絡(luò)Q(st,π(st))的波茲曼分布之間的KL 散度來實現(xiàn)的,策略網(wǎng)絡(luò)的目標(biāo)函數(shù)表示如下:

其 中, Q(st,·) 表 示 基 于 能 量 的 策 略,Q(st,·)∝D表示數(shù)據(jù)集分布,DKL表示KL 散度.CQL 的通用目標(biāo)函數(shù)如下:

其中, μ(at|st)是用來近似可以最大化當(dāng)前Q 值函數(shù)迭代的策略, Bπk表示策略 πk對應(yīng)的貝爾曼算子,(st,at) 表 示目標(biāo)Q 值函數(shù),(at|st)表示某個近似 μ(at|st) 的 策略, R(μ) 表 示約束 μ(at|st)和上一次迭代的策略分布的正則項.如果選擇 R(μ) 為μ(at|st)和上一次迭代的策略的KL 散度,且假設(shè)上一次的策略分布為標(biāo)準(zhǔn)分布,則CQL 的目標(biāo)可以定義為:

從CQL 的目標(biāo)函數(shù)可以看出,其是對數(shù)據(jù)集中的樣本進(jìn)行價值函數(shù)的樂觀估計,而對數(shù)據(jù)集之外的數(shù)據(jù)進(jìn)行保守估計,通過懲罰項為真正的Q 值函數(shù)估計設(shè)定一個下界,防止其在分布外數(shù)據(jù)上的過高估計.

2.3 優(yōu)先經(jīng)驗回放機制

經(jīng)驗回放是離策略強化學(xué)習(xí)中的重要機制.智能體通過從存放有歷史數(shù)據(jù)的經(jīng)驗回放池中標(biāo)準(zhǔn)采樣,既打破了數(shù)據(jù)間的時序依賴關(guān)系,使得輸入神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)符合獨立同分布的特性,又能利用歷史數(shù)據(jù)更新當(dāng)前網(wǎng)絡(luò)參數(shù),提升數(shù)據(jù)利用率.然而,經(jīng)驗數(shù)據(jù)的價值不一,對所有經(jīng)驗數(shù)據(jù)采取等價采樣概率的標(biāo)準(zhǔn)采樣,忽略了數(shù)據(jù)本身的價值特性.為此,PER 提出使用時間差分誤差(TDerror)作為數(shù)據(jù)元組的優(yōu)先度度量指標(biāo),并依據(jù)優(yōu)先度進(jìn)行采樣,進(jìn)而更新神經(jīng)網(wǎng)絡(luò)參數(shù).時間差分誤差的定義如下:

其中, ? 和 ?′表示Q網(wǎng)絡(luò)參數(shù).在實際應(yīng)用中,通常使用 |δ|作為優(yōu)先度度量,并通過如下公式計算最終的采樣概率:

其中N表示數(shù)據(jù)量,i表示數(shù)據(jù)的序號, ? >0表示一個小數(shù)值的常量,用以保證即使在 |δ(i)|為0的情況下,其對應(yīng)的數(shù)據(jù)元組的采樣概率pi始終為正.但優(yōu)先經(jīng)驗回放會因采樣偏好而引起樣本偏差,通常把重要性采樣作為優(yōu)先采樣數(shù)據(jù)的梯度更新系數(shù)來修正該偏差:

其中 β ∈[0,1], 當(dāng) β=0 時 ,wi=1,表示重要度為1,即不對采樣的數(shù)據(jù)進(jìn)行修正,完全按照優(yōu)先采樣的數(shù)據(jù)更新網(wǎng)絡(luò)梯度;當(dāng) β=1 時 ,wi=即使用wi對優(yōu)先采樣的數(shù)據(jù)進(jìn)行修正.實際應(yīng)用中,本文設(shè)置 β的初始值為1,使用線性退化機制,隨著訓(xùn)練進(jìn)行逐漸降低 β的值直至為0.即在訓(xùn)練初始階段,加大對數(shù)據(jù)的修正值,隨著訓(xùn)練進(jìn)行,網(wǎng)絡(luò)參數(shù)更新趨于穩(wěn)定,減小修正直至不再進(jìn)行修正.

3 基 于 時 間 差 分 誤 差 的 離 線 強 化 學(xué) 習(xí) 采樣方法

3.1 高效樣本采樣方法

本文提出一種新的離線強化學(xué)習(xí)智能體采樣策略,在訓(xùn)練初期采用優(yōu)先采樣策略對高價值數(shù)據(jù)進(jìn)行優(yōu)先偏好采樣,之后采用標(biāo)準(zhǔn)采樣策略對數(shù)據(jù)進(jìn)行無偏采樣.優(yōu)先采樣策略的執(zhí)行步數(shù)區(qū)間,按照不同任務(wù)特點,以超參數(shù)的形式設(shè)定.根據(jù)實驗經(jīng)驗,一般在整個訓(xùn)練過程的前 1/5至1/3步數(shù)之前使用優(yōu)先經(jīng)驗回放,之后再使用標(biāo)準(zhǔn)采樣策略.為此,本文為智能體分別建立2 個經(jīng)驗回放池:優(yōu)先經(jīng)驗回放池和標(biāo)準(zhǔn)經(jīng)驗回放池.為保證離線數(shù)據(jù)集完整性,兩個經(jīng)驗回放池的大小相同,初始化數(shù)據(jù)一致.優(yōu)先經(jīng)驗回放池中的數(shù)據(jù)初始優(yōu)先度均設(shè)置為1,以保證采樣時對新數(shù)據(jù)的優(yōu)先探索.與以往方法類似,本文采用時間差分誤差作為數(shù)據(jù)元組的優(yōu)先度度量,同時采用重要性采樣來糾正因優(yōu)先采樣引起的訓(xùn)練偏差.除在訓(xùn)練不同階段使用不同的采樣策略外,算法其余部分包括超參數(shù)設(shè)置均保持一致.本文使用CQL 作為基礎(chǔ)離線強化學(xué)習(xí)算法.本文的算法整體結(jié)構(gòu)如圖1 所示.

圖1 本文方法的框架和網(wǎng)絡(luò)的具體架構(gòu).(a) 本文方法的框架; (b) 網(wǎng)絡(luò)的具體架構(gòu)Fig.1 Framework of the method and the specific architecture of the network in this paper: (a) framework of the method in this paper; (b) the specific architecture of the network

如圖1 所示,圖1(a)中包括了本文提出的方法的3 個步驟:數(shù)據(jù)采樣、網(wǎng)絡(luò)更新和算法評估,其中數(shù)據(jù)采樣部分包括2 個經(jīng)驗回放池,智能體從2 個經(jīng)驗回放池中采集訓(xùn)練樣本;網(wǎng)絡(luò)更新部分是指利用采樣的數(shù)據(jù)進(jìn)行算法的離線策略學(xué)習(xí);算法評估部分是指對學(xué)習(xí)的智能體在實際環(huán)境中進(jìn)行性能評估.(b)本文的算法主要涉及策略網(wǎng)絡(luò)和價值網(wǎng)絡(luò)的訓(xùn)練.本文采用雙價值網(wǎng)絡(luò)架構(gòu),鑒于本文實驗環(huán)境中的任務(wù)都是連續(xù)動作空間,本文假設(shè)動作服從高斯分布,策略網(wǎng)絡(luò)的輸出為動作分布的均值和方差,最終的動作通過在策略網(wǎng)絡(luò)的分布中采樣得到.

3.2 多種類時間差分誤差度量

正如本文在2.2 章節(jié)中的介紹,強化學(xué)習(xí)算法通常使用時間差分誤差來衡量當(dāng)前策略和價值函數(shù),并據(jù)此對策略和價值函數(shù)進(jìn)行更新.PER 等使用時間差分誤差作為樣本優(yōu)先度度量均取得較好性能,結(jié)合計算復(fù)雜度考量,本文的方法采用1 步時間差分誤差作為優(yōu)先經(jīng)驗回放的優(yōu)先度度量.根據(jù)時間差分誤差計算公式(8)可知,時間差分誤差取決于目標(biāo)Q 值函數(shù)Q?′(st+1,at+1).本文的雙Q 價值網(wǎng)絡(luò)采用3 種計算目標(biāo)Q 值的方法:

最小化的雙Q 值網(wǎng)絡(luò):使用雙目標(biāo)Q 值網(wǎng)絡(luò)的最小值作為Q 值網(wǎng)絡(luò)的目標(biāo)值.

最大化的雙Q 值網(wǎng)絡(luò):使用雙Q 值目標(biāo)網(wǎng)絡(luò)的最大值作為Q 值網(wǎng)絡(luò)的目標(biāo)值.

凸組合的雙Q 值網(wǎng)絡(luò):使用兩個目標(biāo)Q 值網(wǎng)絡(luò)的凸組合作為Q 值網(wǎng)絡(luò)的目標(biāo)值.

其中 λ ∈(0,1)是溫度系數(shù),表示凸組合中最小化的雙Q 值的權(quán)重,j表示網(wǎng)絡(luò)的序號.可以看出,最小化和最大化的雙Q 值是凸組合的雙Q 價值網(wǎng)絡(luò)的特殊形式,分別代表 λ=1 和 λ=0時的凸組合的雙Q 值.當(dāng)目標(biāo)Q 值確定后,本文方法中的時間差分誤差可表示為:

其中, δ(st,at)表示數(shù)據(jù) (st,at) 的時間差分誤差,Qtarget(st,at) 表 示Qtargetmin(st,at),Qtargetmax(st,at)和Qtargetcomb(st,at)共3 種計算目標(biāo)Q 值方式之一.與公式(9)類似,基于時間差分誤差的樣本優(yōu)先度如下:

其中,p(st,at)表示數(shù)據(jù) (st,at) 的 樣本優(yōu)先度, ? >0保證每個數(shù)據(jù)元組都有被采樣的可能性.本文的方法也使用了重要性采樣,但與PER 不同的是,本文只在計算樣本優(yōu)先度p(st,at)時使用了重要性采樣,在梯度更新時,則并未使用.實驗結(jié)果表明,本文這種改動并未影響實驗效果.本文的方法中的策略網(wǎng)絡(luò)與CQL 中的策略網(wǎng)絡(luò)更新方法一致:

其中, η為策略網(wǎng)絡(luò)的更新步長, θ 為策略 π的參數(shù).本文的算法偽代碼如下:

算法1:基于時間差分誤差的離線強化學(xué)習(xí)采樣方法(CQL版本)初始化:雙Q值網(wǎng)絡(luò) , ,雙Q值目標(biāo)網(wǎng)絡(luò) , ,策略網(wǎng)絡(luò) ,Q值網(wǎng)絡(luò)更新步長 ,策略網(wǎng)絡(luò) 的參數(shù)更新步長 ,片段長度為 ,批處理大小為 ,初始優(yōu)先度設(shè)置為1,最大訓(xùn)練步數(shù) ,優(yōu)先采樣的最大步數(shù) ,標(biāo)準(zhǔn)經(jīng)驗回放池 ,優(yōu)先經(jīng)驗回放池 ,Q網(wǎng)絡(luò)參數(shù) 的梯度 ,Q網(wǎng)絡(luò)參數(shù) 的更新步長 ,數(shù)據(jù)序號,目標(biāo)Q值網(wǎng)絡(luò)參數(shù)軟更新系數(shù).t <T Qφ1 Qφ2 Qφ′1 Qφ′2 πθ τ πθ η H N T Tp B Bp φ Δ φ ζ i τ對于訓(xùn)練步數(shù) :t <Tp 如果 (即從優(yōu)先經(jīng)驗池中采樣):1.據(jù)公式(15)計算優(yōu)先采樣率并從優(yōu)先經(jīng)驗池中采樣 個批處理數(shù)據(jù)wi=(N·P(i))-β/maxiwi 2.算重要性采樣權(quán)重:N 3.據(jù)公式 (11)、(12)或(13)估計Q目標(biāo)值Qtarget(st,at)4.算Q值網(wǎng)絡(luò)梯度變化Δ ←Δ+δi·??[(E(st,at)~D[Qφ(st,at)]-Qtarget(st,at))2]5.新Q值網(wǎng)絡(luò):φ ←φ+ζ· Δ φ′←τφ+(1-τ)φ′6.更新目標(biāo)Q值網(wǎng)絡(luò):7.據(jù)公式(16)更新策略網(wǎng)絡(luò)#否則(即從標(biāo)準(zhǔn)經(jīng)驗池中采樣):8.根據(jù)公式 (11)、(12)或(13)估計Q目標(biāo)值Qtarget(st,at)9.計算Q值網(wǎng)絡(luò)梯度變化Δ ←Δ+?φ[(E(st,at)~D[Qφ(st,at)]-Qtarget(st,at))2]10.更新Q值網(wǎng)絡(luò):φ ←φ+ζ· Δ φ′←τφ+(1-τ)φ′11.軟更新目標(biāo)Q值網(wǎng)絡(luò):12.根據(jù)公式(16)更新策略網(wǎng)絡(luò)

4 基 于 時 間 差 分 誤 差 的 離 線 強 化 學(xué) 習(xí) 采樣方法的實驗驗證

4.1 實驗設(shè)置

本文在離線強化學(xué)習(xí)公測數(shù)據(jù)集D4RL 上進(jìn)行實驗.D4RL 是DeepMind 公司開發(fā)的一套仿真模擬數(shù)據(jù)集,包括機器人、迷宮、自動駕駛等多種任務(wù)下的數(shù)據(jù).每種任務(wù)分別使用隨機策略、中等策略、中等回放、中等—專家策略生成4 種數(shù)據(jù)集,不同策略生成的數(shù)據(jù)質(zhì)量不同,這些生成數(shù)據(jù)的策略被稱為行動策略(Behavior policy).每個數(shù)據(jù)集有約1000000 或2000000 個 (s,a,r,s′,done)數(shù)據(jù)元組,其中 done為一個片段(episode)的結(jié)束標(biāo)志.本文的實驗是在D4RL 中的Hopper(圖2(a))、Half-Cheetah(圖2(b))和Walker2d(圖2(c))3 種任務(wù)的數(shù)據(jù)集上進(jìn)行訓(xùn)練,在對應(yīng)的DMControl 實際環(huán)境中進(jìn)行驗證,這3 種任務(wù)分別對應(yīng)不同維度的連續(xù)狀態(tài)空間和動作空間.本文在實驗中使用3 種任務(wù)相對應(yīng)的隨機策略、中等策略和中等—專家策略生成的9 個數(shù)據(jù)集,具體如表1 所示.

表1 實驗所用的D4RL 數(shù)據(jù)集Table 1 D4RL dataset used in our experiment

圖2 本文實驗所使用的DMControl 中的3 個仿真環(huán)境.(a) Hopper;(b) HalfCheetah;(c) Walker2dFig.2 The three simulation environments in DMControl used for the experiments in this paper: (a) Hopper; (b) HalfCheetah; (c) Walker2d

4.2 主要實驗

為驗證本文方法的性能,本文利用上述提到的數(shù)據(jù)來訓(xùn)練智能體,并和已有的結(jié)合采樣機制的離線強化學(xué)習(xí)算法進(jìn)行比較.設(shè)置訓(xùn)練總步數(shù)為1000000 步,優(yōu)先經(jīng)驗采樣的步數(shù)為200000,之后的訓(xùn)練從標(biāo)準(zhǔn)經(jīng)驗回放中標(biāo)準(zhǔn)采樣.為公平比較,本文在所有的實驗中均使用相同的超參數(shù).算法評估是通過智能體與DMControl 中相對應(yīng)的環(huán)境交互實現(xiàn)的,每5000 步進(jìn)行一次評估.每個任務(wù)共評估10 次,每次評估執(zhí)行1000 步,以1000 步的累積獎勵值作為當(dāng)次評估的值,以10 次評估的平均值作為最終的評估值.本文采用最小化雙Q 值作為本次實驗的3 種算法的目標(biāo)Q 值.本次實驗主要涉及3 種算法:(a)CQL_PER 算法:表示使用優(yōu)先采樣方式進(jìn)行樣本采樣的CQL 算法,該方法為常用的結(jié)合采樣策略的離線強化學(xué)習(xí)方法之一;(b)CQL_H 算法:本文提出的方法,表示使用標(biāo)準(zhǔn)采樣和優(yōu)先采樣相結(jié)合的方式進(jìn)行樣本采集的CQL 算法;(c)CQL_PER_N_return:表示使用N步返回計算樣本優(yōu)先度并使用優(yōu)先采樣方式進(jìn)行樣本采集的CQL 算法,該方法為常用的結(jié)合采樣策略的離線強化學(xué)習(xí)方法之一.

如圖3 所示,主要實驗部分是對CQL_PER、CQL_H(本文的方法)和CQL_PER_N_return 這3 種方法在DMControl 仿真控制平臺上的Hopper(圖3(a))、HalfCheetah(圖3(b))和Walker2d(圖3(c))這3 種環(huán)境中進(jìn)行了性能測試.其中,橫軸表示不同質(zhì)量的數(shù)據(jù)類型(Data types),縱軸表示片段獎勵值(Episode return),柱狀圖中的紅色誤差棒表示算法性能的方差.

圖3 本文的方法CQL_H 與CQL_PER、CQL_PER_N_return 算法在3 種環(huán)境的3 類數(shù)據(jù)上的性能比較.(a) Hopper; (b) HalfCheetah; (c) Walker2dFig.3 The performance of the methods CQL_H and CQL_PER, CQL_PER_N_return algorithms in this paper is compared on three types of data for three environments: (a) Hopper; (b) HalfCheetah; (c) Walker2d

按照實驗設(shè)定,本文針對3 種任務(wù)上的random、medium 和medium-expert 3 類數(shù)據(jù),分別使用3 種離線強化學(xué)習(xí)方法進(jìn)行了策略訓(xùn)練.由圖3可知,在進(jìn)行1000000 步的網(wǎng)絡(luò)梯度更新后,CQL_H 在Hopper、HalfCheetah 中的3 類數(shù)據(jù)上的策略的最終性能均優(yōu)于CQL_PER 和CQL_PER_N_return.在Hopper 環(huán)境中,CQL_H 在medium 數(shù)據(jù)集的最終性能超過CQL_PER 約40.6%,超過CQL_PER_N_return 約4.9%;在medium-expert 數(shù)據(jù)集上的最終性能超過CQL_PER 約4.2%,超過CQL_PER_N_return 約11.2%;在HalfCheetah 環(huán)境中,CQL_H 在medium 數(shù)據(jù)集上的最終性能超過CQL_PER 約15.5%,超過CQL_PER_N_return 約7.5%;而在Walker2d 中的medium 數(shù) 據(jù)集上,CQL_PER 的效果反而相對而言更優(yōu),這可能是因為Walker2d 的medium 數(shù)據(jù)集更易于策略進(jìn)行優(yōu)先采樣.

此外,圖3 也展示了3 種算法在不同環(huán)境不同類型數(shù)據(jù)集上的性能的方差,可以看出,CQL_H相比于其他2 種方法,在大部分環(huán)境中具有最小的誤差,表明使用CQL_H 學(xué)習(xí)到的策略性能更為穩(wěn)定.

4.3 消融實驗

下面針對CQL_H 開展消融實驗,主要分為2 部分:

(1)CQL_H 使用標(biāo)準(zhǔn)采樣和優(yōu)先采樣相組合的采樣方式,將使用該采樣方式與單獨使用標(biāo)準(zhǔn)采樣方法和單獨使用優(yōu)先采樣方法的性能進(jìn)行比較.(2)采用3 種時間差分優(yōu)先度時,CQL_H 對應(yīng)3 種不同的算法,研究在相同的仿真環(huán)境下,不同優(yōu)先度的算法對算法性能的影響.

在消融實驗(1)中,本次實驗使用500000 步的訓(xùn)練次數(shù),即對網(wǎng)絡(luò)參數(shù)更新500000 次.與主要實驗的設(shè)置一致,為緩解訓(xùn)練偏差,本文每1000 步進(jìn)行一次評估.每個任務(wù)共評估10 次,每次評估執(zhí)行1000 步,以1000 步的累積獎勵值作為當(dāng)次評估的值,使用10 次訓(xùn)練的均值和方差作為最終的均值和方差,每次訓(xùn)練均使用隨機種子.本實驗對CQL_H 和CQL_Uniform、CQL_Priority 進(jìn)行性能對比,這3 種算法分別是:(a)CQL_H,本文的方法,表示使用標(biāo)準(zhǔn)采樣策略和優(yōu)先采樣策略的CQL_H 算法;(b)CQL_Uniform,表示完全使用標(biāo)準(zhǔn)采樣的策略的CQL_H 算法;(c)CQL_Priority,表示完全使用優(yōu)先采樣策略的CQL_H 算法,其中優(yōu)先采樣中的優(yōu)先度度量使用最小化雙Q 值的時間差分誤差.

如圖4 所示,本文對CQL_Uniform、CQL_H(本文的方法)和CQL_Priority 這3 種方法在Hopper(圖4(a) ) 、 HalfCheetah(圖4(b) ) 和Walker2d(圖4(c))這3 種環(huán)境中進(jìn)行了性能測試.

圖4 本文的方法CQL_H 使用不同采樣方式在3 種環(huán)境的3 類數(shù)據(jù)上的性能比較.(a) Hopper; (b) HalfCheetah; (c) Walker2dFig.4 The performance of the method CQL_H using different sampling methods in this paper is compared on 3 types of data for a total of 3 environments: (a) Hopper; (b) HalfCheetah; (c) Walker2d

從圖中可知,在進(jìn)行500000 步的網(wǎng)絡(luò)梯度更新后,CQL_H 在Hopper、HalfCheetah 中的3 類數(shù)據(jù)上的策略的最終性能都優(yōu)于CQL_Uniform 和CQL_Priority.在Hopper 環(huán)境中,CQL_H 在medium 數(shù)據(jù)集的最終性能超過CQL_Uniform 約10.4%,超過CQL_Priority 約7.3%;在medium-expert 數(shù)據(jù)集上的最終性能超過CQL_Uniform 約 11.8%,超過CQL_Priority 約17.2%;在HalfCheetah 環(huán)境中,CQL_H 在medium 數(shù)據(jù)集上的最終性能超過CQL_Uniform 約43.9%,超過CQL_Priority 約14.7%.而在Walker2d 中的medium 數(shù)據(jù)集上,CQL_Priority 的效果相對而言更優(yōu),這與主要實驗中的結(jié)果一致,即Walker2d 數(shù)據(jù)集更適合使用優(yōu)先采樣的采樣方式訓(xùn)練策略.

從圖4 中的誤差棒也可看出,CQL_H 相比于其他2 種方法,在大部分環(huán)境中具有最小的性能方差,這也反映出使用標(biāo)準(zhǔn)采樣和優(yōu)先采樣組合的采樣方式的CQL_H 算法相比于僅使用標(biāo)準(zhǔn)采樣的CQL_Uniform 算法和僅使用優(yōu)先采樣的CQL_Priority 算法,策略穩(wěn)定性更強.

在消融實驗(2)中,本文采用3 種基于雙Q 值網(wǎng)絡(luò)目標(biāo)值的時間差分誤差,分別利用最小化雙Q 網(wǎng)絡(luò)值、最大化雙Q 網(wǎng)絡(luò)值和凸組合的雙Q 網(wǎng)絡(luò)值計算得到.基于3 種時間差分誤差,本文采用3 種不同的優(yōu)先采樣策略,從優(yōu)先經(jīng)驗回放池中采集訓(xùn)練數(shù)據(jù).除了目標(biāo)Q 值計算方式不同,3 種算法的網(wǎng)絡(luò)結(jié)構(gòu)和其余的超參數(shù)均設(shè)置一致.鑒于計算資源有限,本文只在Hopper-medium, HalfCheetah-medium,Walker2d-medium 這3 種任務(wù)上進(jìn)行訓(xùn)練和評估.本次訓(xùn)練和評估的設(shè)置和上文中的介紹相同.和BCQ 算法一致,本文將凸組合的雙Q 網(wǎng)絡(luò)值的計算公式(13)中的調(diào)節(jié)因子超參數(shù)λ設(shè)置為0.75.3 種算法分別為:(a)CQL_H_min,表示以雙Q 值估計的最小值計算時間差分誤差,以此作為CQL_H 算法中優(yōu)先經(jīng)驗采樣策略部分的優(yōu)先度度量,是相對而言更為悲觀的優(yōu)先度度量方式,也是本文中的CQL_H 默認(rèn)形式;(b)CQL_H_max,表示以雙Q 值估計的最大值計算時間差分誤差,以此作為CQL_H 算法中優(yōu)先經(jīng)驗采樣策略部分的優(yōu)先度度量,是相對而言更為樂觀的優(yōu)先度度量方式;(c)CQL_H_medium_0.75,表示以雙Q 值估計的最大、最小值的凸優(yōu)化組合計算時間差分誤差,以此作為CQL_H 算法中優(yōu)先經(jīng)驗采樣策略部分的優(yōu)先度度量,是比較中庸的優(yōu)先度度量方式.其中0.75 表示最小化雙Q 值的溫度系數(shù).

如圖5 所示,本次實驗是對使用不同方式計算的時間差分誤差的CQL_H 算法的性能進(jìn)行驗證,以比較不同計算方式的時間差分對算法的性能有何不同影響.圖中的曲線表示評估值均值,陰影部分表示評估值的方差.可以看出,CQL_H_min 在3 個環(huán)境中相比CQL_H_max 和CQL_H_medium_0.75 具有更好的數(shù)據(jù)利用率和最終性能.在Hopper-medium(圖5(a))環(huán)境中,CQL_H_min 在250000訓(xùn)練步即達(dá)到了3000 左右,但隨即又下降,直至最終和CQL_H_max、CQL_H_medium_0.75 收斂至2000.在HalfCheetah-medium(圖5(b))環(huán)境中,CQL_H_min 在200000 訓(xùn)練步即達(dá)到了7400,在后續(xù)的訓(xùn)練中穩(wěn)定在5000 至7500,而CQL_H_max、CQL_H_medium_0.75 則未能學(xué)習(xí)到有效策略,網(wǎng)絡(luò)一直未收斂.在Walker2d-medium(圖5(c))環(huán)境中,CQL_H_min 在250000 訓(xùn)練步后逐步穩(wěn)定,最終收斂在1500 附近.CQL_H_max 則收斂在200 附近,而CQL_H_medium_0.75 則未能學(xué)習(xí)到有效策略,策略網(wǎng)絡(luò)未收斂.從圖中可以看出,本文的3 種方法在Hopper-medium 上性能較好,但CQL_H_max 和CQL_H_medium_0.75 在HalfCheetah-medium, Walker2d-medium 上性能較差,CQL_H_min 在3 種任務(wù)上均表現(xiàn)較好.

圖5 本文的方法CQL_H 使用3 種時間差分誤差的優(yōu)先采樣策略的性能比較.(a) Hopper-medium; (b) HalfCheetah-medium; (c) Walker2d-mediumFig.5 Comparison of CQL_H with three different TD-error: (a) Hopper-medium; (b) HalfCheetah-medium; (c) Walker2d-medium

從圖5 中代表策略方差值的陰影部分可知,盡管CQL_H_min 在數(shù)據(jù)利用率和最終性能上具有較大優(yōu)勢,但策略在部分訓(xùn)練環(huán)節(jié)的方差較大.

5 結(jié)論

本文圍繞離線強化學(xué)習(xí)數(shù)據(jù)利用率低、易加劇外推誤差的問題,提出一種新的結(jié)合優(yōu)先采樣策略和標(biāo)準(zhǔn)采樣策略的離線強化學(xué)習(xí)采樣策略,通過設(shè)立2 個經(jīng)驗回放池,在訓(xùn)練初期從優(yōu)先經(jīng)驗回放池中優(yōu)先采樣,之后從標(biāo)準(zhǔn)經(jīng)驗回放池中標(biāo)準(zhǔn)采樣,并使用雙Q 價值網(wǎng)絡(luò)計算的時間差分誤差作為優(yōu)先度度量,可與任何基于Q 值估計的離線強化學(xué)習(xí)算法相結(jié)合.在D4RL 上的實驗表明,本文的方法相比于已有的結(jié)合采樣機制的基于CQL 的離線強化學(xué)習(xí)算法,具有更優(yōu)的樣本利用率和最終性能,較好地緩解了外推誤差問題,且訓(xùn)練過程更穩(wěn)定.消融實驗表明,優(yōu)先采樣和標(biāo)準(zhǔn)采樣相結(jié)合的采樣方式對算法至關(guān)重要,此外,與最大化雙Q 值和凸組合的雙Q 值相比較,使用最小化雙Q 值目標(biāo)估計的時間差分誤差更適合作為優(yōu)先采樣度量.本文的方法是從采樣策略的角度研究離線強化學(xué)習(xí)算法,與之前的研究相比,無需調(diào)整算法的基本架構(gòu)和網(wǎng)絡(luò)的基本結(jié)構(gòu),最大限度避免增加網(wǎng)絡(luò)參數(shù),實現(xiàn)簡單,可擴(kuò)展性強.本文的研究旨在提升數(shù)據(jù)利用率,克服離線強化學(xué)習(xí)外推誤差問題,為解決數(shù)據(jù)采集難、樣本數(shù)據(jù)有限、質(zhì)量不一的控制決策任務(wù),提供了新的研究思路和方法支撐,有助于相關(guān)研究者探索高效、安全、魯棒的離線強化學(xué)習(xí)算法,進(jìn)一步推動強化學(xué)習(xí)在復(fù)雜實際場景中的落地應(yīng)用.

猜你喜歡
離線優(yōu)先差分
異步電機離線參數(shù)辨識方法
防爆電機(2021年4期)2021-07-28 07:42:46
數(shù)列與差分
呼吸閥離線檢驗工藝與評定探討
淺談ATC離線基礎(chǔ)數(shù)據(jù)的準(zhǔn)備
40年,教育優(yōu)先
商周刊(2018年25期)2019-01-08 03:31:08
多端傳播,何者優(yōu)先?
傳媒評論(2018年5期)2018-07-09 06:05:26
離線富集-HPLC法同時測定氨咖黃敏膠囊中5種合成色素
中成藥(2018年2期)2018-05-09 07:20:09
站在“健康優(yōu)先”的風(fēng)口上
基于差分隱私的大數(shù)據(jù)隱私保護(hù)
相對差分單項測距△DOR
太空探索(2014年1期)2014-07-10 13:41:50
漳浦县| 文山县| 柏乡县| 盐山县| 永善县| 濉溪县| 江永县| 积石山| 资兴市| 阳东县| 汕尾市| 腾冲县| 通江县| 汝南县| 宜春市| 吉林省| 凤山市| 通山县| 自治县| 祥云县| 武夷山市| 虞城县| 凤山市| 固始县| 苗栗县| 南雄市| 左云县| 新宁县| 商南县| 高淳县| 中江县| 化德县| 蒙城县| 海口市| 阿克陶县| 汪清县| 阳朔县| 罗定市| 洛隆县| 花垣县| 冀州市|