亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Dyna框架的非參數(shù)化近似策略迭代增強學(xué)習(xí)

        2018-07-25 07:41:10挺,張
        計算機應(yīng)用 2018年5期
        關(guān)鍵詞:邊界矩陣樣本

        季 挺,張 華

        (南昌大學(xué)江西省機器人與焊接自動化重點實驗室,南昌330031)

        (*通信作者電子郵箱jxplorer@163.com)

        0 引言

        增強學(xué)習(xí)是一種并列于監(jiān)督學(xué)習(xí)和非監(jiān)督學(xué)習(xí)的機器學(xué)習(xí)方式,它利用外部環(huán)境提供的少量獎懲信號,依靠智能體自身經(jīng)歷獲取知識。經(jīng)典增強學(xué)習(xí)采用離散馬爾可夫決策過程進行建模,采用表格形式存儲并計算V值或Q值,可較好地應(yīng)用于小規(guī)?;螂x散狀態(tài)空間;但應(yīng)用于大規(guī)?;蜻B續(xù)狀態(tài)空間將導(dǎo)致“維數(shù)災(zāi)”問題。

        近似策略迭代是解決經(jīng)典增強學(xué)習(xí)“維數(shù)災(zāi)”問題的主要方法之一,當(dāng)前已有較多研究,但都存在各自的問題:Lagoudakis等[1]證明了近似策略迭代增強學(xué)習(xí)算法的收斂性,并提出了最小二乘策略迭代(Least-Squares Policy Iteration,LSPI)算法,但該算法為離線算法,計算量較大、收斂速度較慢;Busoniu等[2]提出的在線最小二乘策略迭代(Online Least-Squares Policy Iteration,Online LSPI)算法解決了LSPI的在線計算問題;周鑫等[3]提出的批量最小二乘策略迭代(Batch Least-Squares Policy Iteration,BLSPI)算法在Online LSPI的基礎(chǔ)上進一步提高了樣本的利用率,并在一定程度上降低了近似策略迭代算法的計算量;文獻[4-6]提出的一類離策略帶參近似策略迭代算法基于高斯過程對帶參值函數(shù)進行建模,并根據(jù)貝葉斯推理求解值函數(shù)的后驗分布,可在一定程度上加快收斂速度;但以上算法的逼近器均依賴先驗知識或通過反復(fù)試湊確定,不具備自動構(gòu)建的能力?;诤说慕撇呗缘鰪妼W(xué)習(xí)是典型的非參數(shù)化增強學(xué)習(xí),能夠依據(jù)樣本自動確定逼近器中基函數(shù)的數(shù)量和中心,但依然需要手動選擇核寬度矩陣、稀疏度閾值等參數(shù),且隨著樣本數(shù)量的增加計算量逐步增大:Xu等[7]提出了基于核的最小二乘策略迭代(Kernel-based Least-Squares Policy Iteration,KLSPI)算法,利用核稀疏化過程降低基函數(shù)數(shù)量以提升學(xué)習(xí)速度;Barreto等[8]提出了基于核的隨機因式分解(Kernel-Based Stochastic Factorization,KBSF)算法,將模型信息進一步壓縮為固定大小的逼近器結(jié)構(gòu)以提升學(xué)習(xí)速度;朱稷涵[9]提出了基于優(yōu)先級掃描的非參TD最小二乘策略迭代(Prioritized-Sweeping-Based Nonparametric LSPI,PNLSPI)算法,利用優(yōu)先級掃描提升學(xué)習(xí)速度;閆稱[10]提出了一類基于狀態(tài)-動作圖測地高斯基的策略迭代算法,采用測地距離構(gòu)建基函數(shù)以更好地逼近光滑且不連續(xù)的值函數(shù)。以上算法均未能徹底解決逼近器的自動構(gòu)建問題。

        本文提出了一種基于Dyna框架的非參數(shù)化近似策略迭代(Nonparametric Approximation Policy Iteration based on Dyna Framework,NPAPI-Dyna)增強學(xué)習(xí)算法。該算法針對近似策略迭代增強學(xué)習(xí)均需要采集樣本的共性,進一步提高了樣本的利用率:一方面,通過樣本自動生成表征環(huán)境狀態(tài)的基函數(shù)并確定強化學(xué)習(xí)率,徹底實現(xiàn)算法逼近器結(jié)構(gòu)依據(jù)環(huán)境進行自動構(gòu)建的過程;另一方面,通過樣本自動生成環(huán)境估計模型,利用Dyna框架的模型辨識思想,將學(xué)習(xí)和規(guī)劃過程有機結(jié)合,利用計算復(fù)雜度代替采樣復(fù)雜度,進一步加快動態(tài)環(huán)境下的增強學(xué)習(xí)速度[11]。

        下面,按照NPAPI-Dyna算法的實現(xiàn)步驟依次介紹其樣本采集、網(wǎng)絡(luò)結(jié)構(gòu)構(gòu)建、環(huán)境估計模型構(gòu)建和自主學(xué)習(xí)階段,最后將其應(yīng)用于一級倒立擺平衡控制問題,仿真實驗結(jié)果驗證了該算法的有效性和魯棒性,且相比其他算法,NPAPI-Dyna具有收斂速度更快的優(yōu)勢。

        1 采集樣本

        NPAPI-Dyna為非參數(shù)化增強學(xué)習(xí)算法,其狀態(tài)基函數(shù)和環(huán)境估計模型均基于樣本進行構(gòu)建,為使其更為準(zhǔn)確,本文提出了一種二級隨機采樣方法。該方法分為一級采樣和總體采樣兩個層次,依據(jù)預(yù)先設(shè)定的增強學(xué)習(xí)誤差率ε采集總體狀態(tài)樣本集合SP、總體邊界狀態(tài)樣本集合SPE、總體狀態(tài)轉(zhuǎn)移樣本多重集合MSP和總體邊界狀態(tài)轉(zhuǎn)移樣本多重集合MSPE。

        采樣時,系統(tǒng)使用隨機策略運行,從初始狀態(tài)S0開始,當(dāng)越過邊界Sb或到達目標(biāo)Sg時停止,S0、Sb和Sg均由目標(biāo)問題給定。若系統(tǒng)在當(dāng)前狀態(tài)St采取動作at后,下步狀態(tài)St+1越過Sb,則 St為邊界狀態(tài)樣本,記為 Se,(St-1,St,at-1) 為邊界狀態(tài)轉(zhuǎn)移樣本,記為Mse;若St+1既未到達Sg,也不屬于邊界狀態(tài)樣本集合,則St為狀態(tài)樣本,(St,St+1,at)為狀態(tài)轉(zhuǎn)移樣本;相應(yīng)的,Tsp為一次運行采集的非重復(fù)狀態(tài)樣本集合,Tmsp為一次運行包含的所有狀態(tài)轉(zhuǎn)移樣本,Tmsp為多重集合,其中的樣本可以重復(fù)。

        為使采樣過程能夠依據(jù)采樣情況自動結(jié)束,需要定義前后兩個狀態(tài)采樣集合G和G'之間的變化率rate:

        其中:ratei為第i維的變化率,fbcli={fci,bci,fli,bli},fci和bci定義了G'在第i維的范圍,fc=me'-ma',bc=me'+ma';fli和bli定義了G在第i維的范圍,fl=me-ma,bl=me+ma;其中,me和me'分別為G和G'的樣本均值,ma和ma'分別為G和G'在各維分量上的平均絕對離差向量,ma定義為:

        其中:ng為G的數(shù)量,運算abs()用于計算向量在各維分量上的絕對值。ma'類似式(2)進行定義。

        1.1 一級采樣

        一級采樣在狀態(tài)樣本和邊界狀態(tài)樣本單次采樣變化率均小于ε時停止。同時,單次采樣需保證采集的非重復(fù)狀態(tài)樣本數(shù)量ln≥L,L為采樣緩存長度。具體過程如下:

        步驟1 運行一次系統(tǒng),設(shè)置單次采樣次數(shù)T=1,設(shè)置系統(tǒng)運行次數(shù)tr=1。初始化一級狀態(tài)樣本集合SpT=Tsp,一級邊界狀態(tài)樣本集合SpeT=Se,一級狀態(tài)轉(zhuǎn)移樣本多重集合Msp=Tmsp,一級邊界狀態(tài)轉(zhuǎn)移樣本多重集合Mspe=Mse;L為Tsp的樣本數(shù)量。

        步驟2 開始單次采樣,T=T+1。設(shè)置ln=0,SpT=SpT-1。

        步驟3 運行一次系統(tǒng),tr=tr+1,SpT=SpT∪ Tsp,SpeT=SpeT∪ Se,Msp=Msp∪ Tmsp,Mspe=Mspe∪ Mse,依據(jù)式(3)和(4)分別更新L和ln:

        其中nt為Tsp的數(shù)量。若ln≥L,執(zhí)行步驟4;否則,執(zhí)行步驟3。

        步驟4 依據(jù)式(1)計算SpT相對SpT-1的變化率rsp和SpeT相對 SpeT-1的變化率rse,若rsp < ε 且rse< ε,一級采樣結(jié)束;否則,執(zhí)行步驟2。

        1.2 總體采樣

        總體采樣在狀態(tài)樣本和邊界狀態(tài)樣本一級采樣變化率均小于ε時停止。具體過程如下:

        步驟1 系統(tǒng)進行一次一級采樣。設(shè)置一級采樣次數(shù)T'=1,初始化 SPT'=TSP,SPET'=SE,MSP=TMSP,MSPE=MSE。其中,TSP、SE、TMSP、MSE 分別為一級采樣得到的狀態(tài)樣本集合、邊界狀態(tài)樣本集合、狀態(tài)轉(zhuǎn)移樣本多重集合、邊界狀態(tài)轉(zhuǎn)移樣本多重集合。

        步驟2 系統(tǒng)運行一次一級采樣,T'=T'+1,SPT'=SPT'∪TSP,SPET'=SPET'∪ SE,MSP=MSP ∪ TMSP,MSPE=MSPE∪MSE。

        步驟3 依據(jù)式(1)計算SPT'相對SPT'-1的變化率RSP和SPET'相對SPET'-1的變化率RSE,若RSP < ε 且RSE < ε,總體采樣結(jié)束;否則,執(zhí)行步驟2。

        2 構(gòu)建算法網(wǎng)絡(luò)結(jié)構(gòu)

        NPAPI-Dyna算法的網(wǎng)絡(luò)結(jié)構(gòu)由狀態(tài)輸入層、Q值函數(shù)逼近器和動作選擇器三部分組成,如圖1所示。

        圖1 NPAPI-Dyna算法的網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of NPAPI-Dyna

        2.1 狀態(tài)輸入層

        狀態(tài)輸入層由n個輸入神經(jīng)元組成,接收輸入狀態(tài)S=(s1,…,si,…,sn)T∈ Rn。其中,n 為狀態(tài)空間的維數(shù),依據(jù)目標(biāo)問題設(shè)定;si為S在各維空間上的分量。

        2.2 Q值函數(shù)逼近器

        Q值函數(shù)逼近器由基于RBF的線性逼近結(jié)構(gòu)實現(xiàn),狀態(tài)動作對(S,A)對應(yīng)的近似Q值通過式(5)計算:Φ(S)=(Φ1(S),…,Φj(S),…,Φm(S))T為特征向量,定義為:

        φ(S)=(φ1(S),…,φj(S),…,φm(S))T為逼近器的狀態(tài)基函數(shù)向量,其值為狀態(tài)S在各狀態(tài)基函數(shù)下的隸屬度,值越大表示S與基函數(shù)的空間距離越近,使用RBF函數(shù)定義為:

        其中:m 為狀態(tài)基函數(shù)的個數(shù),μj=(μ1j,…,μij,…,μnj)T和δj=(δ1j,…,δij,…,δnj)T分別為 φj的中心和半徑。

        Φ'(S)描述狀態(tài)S在下一步轉(zhuǎn)移到各狀態(tài)基函數(shù)中心附近的可能性,用于彌補φ(S)僅通過歐氏距離判定狀態(tài)S隸屬度的不足。其定義為:

        D為內(nèi)部狀態(tài)轉(zhuǎn)移矩陣,定義如下:

        其中Pjl表示由μj附近轉(zhuǎn)移到μl附近的可能性。

        ω(A)=(ω1(A),…,ωj(A),…,ωm(A))T為逼近器的插值參數(shù)向量,其意義為在各狀態(tài)基函數(shù)中心執(zhí)行所選動作A的Q值,利用插值方法定義為:

        其中:K為可選離散動作的數(shù)量,由目標(biāo)問題定義;ak為第k個可選的離散動作;j為逼近器參數(shù),其意義為在狀態(tài)基函數(shù)φj中心執(zhí)行動作ak的投票數(shù)。

        由上述表示形式可以看出,實現(xiàn)Q值函數(shù)逼近器自動構(gòu)建的核心問題就是要確定內(nèi)部狀態(tài)轉(zhuǎn)移矩陣D和狀態(tài)基函數(shù)φ(S),前者在第3章討論,以下對φ(S)的構(gòu)建方法進行闡述。

        2.2.1 trial-and-error過程

        trail-and-error過程是一種使用相對準(zhǔn)則判定樣本集最佳聚類數(shù)的方法,本文基于輪廓指標(biāo)、采用K均值聚類算法實現(xiàn)該過程,如下所示。

        步驟1 初始化樣本集的可能聚類數(shù)集合NC為:

        步驟2 遍歷NC,對當(dāng)前聚類數(shù)nc運行K均值聚類算法得到聚類結(jié)果CL,并采用輪廓指標(biāo)計算其有效性vc。

        其中:np為聚類CLp的基數(shù),aq為CLp中元素xq到CLp中其他元素的平均距離,bq為xq到除CLp之外的最接近xq的聚類的平均距離,運算(·,·)用于計算一個點到一個集合的平均距離測度。

        步驟3 若NC遍歷結(jié)束,則依據(jù)聚類有效性輸出樣本集最佳聚類結(jié)果,trial-and-error過程結(jié)束;否則,執(zhí)行步驟2。

        2.2.2 確定核心狀態(tài)基函數(shù)

        核心狀態(tài)基函數(shù)用于表征環(huán)境狀態(tài)分布的骨架特征,該特征在一級狀態(tài)樣本集TSP和總體狀態(tài)樣本集SP中都應(yīng)顯著存在,因此,在數(shù)量較少的TSP上預(yù)先判定表征骨架特征的聚類數(shù)量是可行的,同時還可極大降低在SP上直接應(yīng)用trial-and-error過程的計算量。針對SP,確定核心狀態(tài)基函數(shù)的步驟如下。

        步驟2 若總體采樣未結(jié)束,則利用trial-and-error過程在每次一級采樣后計算TSP的最佳聚類數(shù),并將其并入NC;否則,執(zhí)行步驟3。

        步驟 在SP上應(yīng)用trial-and-error過程輸出最佳聚類結(jié)果CL,并通過式(13)和(14)分別計算核心狀態(tài)基函數(shù)φp(S)的中心μp和半徑δp:

        同樣的,上述步驟可基于邊界狀態(tài)樣本集確定邊界狀態(tài)基函數(shù)ψ(S)的中心和半徑,ψ(S)=(ψ1(S),…,ψj'(S),…,ψm'(S))T,依然采用式(7)的形式進行定義。

        2.2.3 生成初始狀態(tài)基函數(shù)

        除骨架特征外,環(huán)境狀態(tài)分布還有一系列次要特征,只有找出這些次要特征,才能對環(huán)境狀態(tài)進行較為準(zhǔn)確的逼近,因此,本文以狀態(tài)樣本空間完全覆蓋為目標(biāo)對核心狀態(tài)基函數(shù)進行擴展,生成初始狀態(tài)基函數(shù),具體步驟如下:

        步驟1 初始化基函數(shù)向量φ(S)={φp(S)|p=1,2,…,nc}。

        步驟2 遍歷SP。通過當(dāng)前樣本(SP)h與φ(S)中心間的歐氏距離定位與(SP)h最鄰近的狀態(tài)基函數(shù),并判定(SP)h是否位于其半徑內(nèi)部。若是,繼續(xù)執(zhí)行步驟2;若否,執(zhí)行步驟3;若SP中所有樣本均位于最鄰近基函數(shù)的半徑內(nèi),則表明狀態(tài)基函數(shù)完成了對樣本空間的完全覆蓋,執(zhí)行步驟4。

        步驟3 新增一個狀態(tài)基函數(shù),將其中心初始化為當(dāng)前樣本,并加入φ(S)中。通過式(15)和(16)調(diào)整所有狀態(tài)基函數(shù)中心和半徑,執(zhí)行步驟2。

        其中:NS為SP的樣本數(shù)量,behj為(SP)h到φj(S)的距離度量。

        步驟4 通過式(18)計算逼近器的平均學(xué)習(xí)率η,初始狀態(tài)基函數(shù)生成過程結(jié)束。

        其中:X=(X,…,X,…,X)T為各狀態(tài)基函數(shù)的構(gòu)建樣本

        1jm數(shù)向量,表示為:

        2.3 動作選擇器

        動作選擇器由1個選擇輸出神經(jīng)元組成,采用貪心策略實現(xiàn),定義為

        其中POk是對當(dāng)前狀態(tài)S下執(zhí)行動作ak的投票結(jié)果,定義如式(20)所示:

        3 構(gòu)建環(huán)境估計模型

        環(huán)境估計模型是對環(huán)境狀態(tài)轉(zhuǎn)移規(guī)律的顯示描述,包括狀態(tài)動作轉(zhuǎn)移模型B和邊界狀態(tài)動作轉(zhuǎn)移模型B':

        其中,矩陣Bj描述在φj(S)中心μj附近采取不同動作后轉(zhuǎn)移到各狀態(tài)基函數(shù)中心附近的可能性,pkjl表示在μj附近采取動作ak轉(zhuǎn)移到μl附近的可能性?;贐,可通過式(24)計算內(nèi)部狀態(tài)轉(zhuǎn)移矩陣D,有:

        其中,矩陣Bj'描述在φj(S)中心μj附近采取不同動作后轉(zhuǎn)移到各邊界狀態(tài)基函數(shù)中心附近的可能性表示在μj附近采取動作ak轉(zhuǎn)移到邊界狀態(tài)基函數(shù)ψj'(S)中心μj'附近的可能性。同樣的,基于B',可通過式(26)計算邊界狀態(tài)轉(zhuǎn)移矩陣

        狀態(tài)動作轉(zhuǎn)移模型B的構(gòu)建過程如下:

        步驟1 初始化Bj為K行m列的零矩陣。

        步驟2 遍歷 MSP,針對當(dāng)前樣本(S,S',ak),通過式(17)分別計算狀態(tài)S和S'到φ(S)的距離度量be=(be1,…,bej,…,bem) 和 be'=(be1',…,bel',…,bem')。

        步驟3 通過式(27)更新Bj中的值,若遍歷未完成則執(zhí)行步驟2,否則構(gòu)建過程結(jié)束。

        相應(yīng)地,上述步驟可基于MSPE構(gòu)建邊界狀態(tài)動作轉(zhuǎn)移模型B'。由模型B和B'的構(gòu)建過程可以看出,其實質(zhì)是對總體(邊界)狀態(tài)轉(zhuǎn)移樣本進行統(tǒng)計,利用訪問頻次來描述狀態(tài)基函數(shù)之間(狀態(tài)基函數(shù)到邊界狀態(tài)基函數(shù)之間)轉(zhuǎn)移的可能性,從宏觀上描述基函數(shù)之間的拓撲特征,加快Dyna框架的學(xué)習(xí)速度。

        4 算法自主學(xué)習(xí)

        算法自主學(xué)習(xí)基于Dyna框架實現(xiàn),包括學(xué)習(xí)過程和規(guī)劃過程,其中,學(xué)習(xí)過程依據(jù)經(jīng)歷自適應(yīng)調(diào)整Q值函數(shù)逼近器與環(huán)境估計模型的結(jié)構(gòu)和參數(shù),規(guī)劃過程利用環(huán)境估計模型產(chǎn)生的虛擬樣本來更新Q值函數(shù)逼近器參數(shù)。

        4.1 學(xué)習(xí)過程

        學(xué)習(xí)過程主要包括新增結(jié)構(gòu)、合并結(jié)構(gòu)、調(diào)整各項參數(shù)等操作。

        4.1.1 新增結(jié)構(gòu)

        新增結(jié)構(gòu)操作圍繞新增狀態(tài)基函數(shù)進行。由于狀態(tài)基函數(shù)在構(gòu)建時已對狀態(tài)樣本空間進行了完全覆蓋,因此所有樣本都至少位于某個初始狀態(tài)基函數(shù)的半徑內(nèi)。學(xué)習(xí)過程中,若與S最鄰近的基函數(shù)為初始狀態(tài)基函數(shù),S位于所有狀態(tài)基函數(shù)的半徑外,且TD誤差率RΔ>ε,應(yīng)新增一個狀態(tài)基函數(shù)以保持對狀態(tài)空間的全覆蓋,判定條件為:

        其中:FLAGinitial表征與S最鄰近的基函數(shù)為初始狀態(tài)基函數(shù);e-0.5為狀態(tài)在某分量的值位于其半徑處的隸屬度;Δ為TD誤差,rt為即時獎勵,γ為折扣率。新增結(jié)構(gòu)操作的步驟如下:

        步驟1 對當(dāng)前狀態(tài)S,依據(jù)式(28)判定是否進行新增結(jié)構(gòu)操作:若是,則執(zhí)行步驟2;否則,不執(zhí)行新增結(jié)構(gòu)操作。

        步驟2 新增狀態(tài)基函數(shù)φnew,并初始化其中心μnew=S,半徑δnew=δnear,near為與S最鄰近的基函數(shù)序號,通過式(29)計算:

        步驟4 對環(huán)境估計模型B和B'進行新增操作,并更新模型中的值,依次為:

        4.1.2 合并結(jié)構(gòu)

        合并結(jié)構(gòu)操作圍繞合并狀態(tài)基函數(shù)進行。由采樣過程的結(jié)束條件可知,樣本在各維分量的誤差率都應(yīng)小于ε,因此,對于狀態(tài) S,若有 2 個或以上的基函數(shù)隸屬度超過(e-0.5ε2)n時,應(yīng)執(zhí)行合并操作,判定條件為:

        其中:e-0.5ε2為狀態(tài)某分量 si位于離該分量中心 μij距離 εδij處的隸屬度。合并結(jié)構(gòu)操作步驟如下:

        步驟1 依據(jù)式(30)判定是否進行合并結(jié)構(gòu)操作:若是,則執(zhí)行步驟2;否則,不執(zhí)行合并結(jié)構(gòu)操作。

        步驟2 合并狀態(tài)基函數(shù),并設(shè)置目標(biāo)基函數(shù)中心為要合并基函數(shù)中心的均值,半徑為要合并基函數(shù)半徑的最大值。

        步驟3 合并逼近器參數(shù)結(jié)構(gòu),并設(shè)置目標(biāo)參數(shù)為要合并參數(shù)的均值。

        步驟4 對環(huán)境估計模型B和B'進行合并操作,并更新模型中的值,依次為:

        其中:IDM為要合并的狀態(tài)基函數(shù)序號集合;aim為合并目

        標(biāo)狀態(tài)基函數(shù)的序號,是集合IDM中的最小值。

        4.1.3 調(diào)整參數(shù)

        調(diào)整參數(shù)操作依次調(diào)整狀態(tài)基函數(shù)參數(shù)、逼近器參數(shù)和模型的值。狀態(tài)基函數(shù)的中心和半徑采用delta規(guī)則調(diào)整,對φj有:

        調(diào)整后的半徑應(yīng)不低于初始半徑的最小值,以避免基函數(shù)產(chǎn)生萎縮。

        逼近器參數(shù)也采用delta規(guī)則進行更新,如式(33)所示:

        環(huán)境估計模型B和B'的值可類似式(27)進行調(diào)整。

        4.2 規(guī)劃過程

        規(guī)劃過程通過環(huán)境估計模型生成的虛擬樣本來更新Q值函數(shù)逼近器參數(shù),其對學(xué)習(xí)速度的提升除了取決于環(huán)境估計模型外,還與規(guī)劃狀態(tài)及每輪學(xué)習(xí)的規(guī)劃次數(shù)密切相關(guān)。由于隨機采樣時,系統(tǒng)在邊界狀態(tài)附近一般會以較快速度進入越界狀態(tài),使得越靠近邊界狀態(tài),模型B和B'越準(zhǔn)確,且考慮到動作噪聲的影響,為保證規(guī)劃的準(zhǔn)確性,文中的Dyna框架在規(guī)劃狀態(tài)離邊界狀態(tài)基函數(shù)ψ(S)較近時進行1次規(guī)劃。具體步驟如下:

        步驟1 通過式(6)計算規(guī)劃狀態(tài)S的特征向量RE,通過式(34)獲取與S最鄰近的狀態(tài)基函數(shù)序號IDs。

        步驟2 通過式(6)分別計算目標(biāo)Sg、ψ(S)中心μ'的特征向量,類似式(34)獲取與Sg最鄰近的狀態(tài)基函數(shù)序號集合IDc、與μ'最鄰近的狀態(tài)基函數(shù)序號集合IDb。

        步驟3 若滿足式(35),則S離邊界更近,轉(zhuǎn)移至步驟4;否則,結(jié)束規(guī)劃過程。

        步驟4 通過式(24)計算得到內(nèi)部狀態(tài)轉(zhuǎn)移矩陣D,通過式(26)計算得到邊界狀態(tài)轉(zhuǎn)移矩陣D';通過式(36)和(37)對D和D'的每行進行歸一化,分別得到矩陣ND和ND'。

        步驟5 通過式(38)計算與S最鄰近的邊界序號id:移到ψid(S)中心的概率矩陣P2B。

        其中,P2B(j,k)表示在μj附近采用動作k轉(zhuǎn)移到μid'附近的可能性。

        步驟7 通過式(40)計算越界可能性最大的動作序號Ia。

        步驟8 通過式(41)計算S下采取動作aIa時轉(zhuǎn)移到φ(S) 中心 μ =(μ1,…,μj,…,μm)T附近的概率向量 RE2I。

        步驟9 通過式(42)計算S下采取動作aIa時轉(zhuǎn)移到ψ(S) 中心 μ'=(μ1',…,μj',…,μm')T附近的概率向量RE2B。

        步驟10 通過式(43)計算S的下步狀態(tài)虛擬樣本S':

        步驟11 若虛擬樣本越過邊界,則r=-1;否則,r=-max(RE2B);通過式(33)更新Q值函數(shù)逼近器參數(shù)。

        5 算法步驟

        NPAPI-Dyna算法的步驟依次分為結(jié)構(gòu)構(gòu)建和自主學(xué)習(xí)兩個階段。

        5.1 結(jié)構(gòu)構(gòu)建階段

        結(jié)構(gòu)構(gòu)建階段的主要任務(wù)是構(gòu)建算法網(wǎng)絡(luò)結(jié)構(gòu)和環(huán)境估計模型,具體步驟如下:

        步驟1 指定增強學(xué)習(xí)誤差率ε。

        步驟2 使用第1章中的二級隨機采樣方法采集目標(biāo)問題的總體樣本集合 SP、SPE、MSP 和 MSPE。同時,使用 2.2.2節(jié)中的步驟在采樣過程中確定核心狀態(tài)基函數(shù){φp(S)|p=1,…,nc}與邊界狀態(tài)基函數(shù)ψ(S)。

        步驟3 使用2.2.3節(jié)中的步驟對核心狀態(tài)基函數(shù)進行擴展,生成初始狀態(tài)基函數(shù)φ(S),計算逼近器的平均學(xué)習(xí)率η。

        步驟4 依據(jù)2.3節(jié)中的定義構(gòu)建動作選擇器。

        步驟5 按照圖1構(gòu)建算法網(wǎng)絡(luò)結(jié)構(gòu)。其中,Q值函數(shù)逼近器參數(shù)向 量初始化為 0向量。

        步驟6 使用第3章中的步驟構(gòu)建狀態(tài)動作轉(zhuǎn)移模型B和邊界狀態(tài)動作轉(zhuǎn)移模型B'。

        5.2 自主學(xué)習(xí)階段

        自主學(xué)習(xí)階段的主要任務(wù)是基于學(xué)習(xí)經(jīng)歷自適應(yīng)調(diào)整逼近器和環(huán)境估計模型的結(jié)構(gòu)與參數(shù),學(xué)習(xí)解決目標(biāo)問題的策略,具體步驟如下:

        步驟1 初始化當(dāng)前狀態(tài)St=S0。目標(biāo)系統(tǒng)開始一次嘗試;

        1)通過式(6)計算St的特征向量Φ(St);

        2)通過式(20)進行策略評估,通過式(19)選擇St下應(yīng)采取的動作At,獲取即時獎勵rt,且環(huán)境轉(zhuǎn)移到下步狀態(tài)St+1;

        3)依次使用4.1.1節(jié)和4.1.2節(jié)中的步驟對算法的逼近器和環(huán)境估計模型結(jié)構(gòu)進行新增、合并操作;

        4)依據(jù)4.1.3節(jié)中的方法調(diào)整逼近器和環(huán)境估計模型的參數(shù);5)將St作為規(guī)劃狀態(tài),使用4.2節(jié)中的方法進行規(guī)劃;6)若本次嘗試結(jié)束,執(zhí)行步驟2;否則,設(shè)置當(dāng)前狀態(tài)St=St+1,執(zhí)行步驟1);

        步驟2 若本次嘗試成功,則學(xué)習(xí)結(jié)束;否則,通過式(27)更新邊界狀態(tài)動作轉(zhuǎn)移模型B',并執(zhí)行步驟1再次進行嘗試。

        6 仿真實驗

        一級倒立擺平衡控制是增強學(xué)習(xí)研究的標(biāo)準(zhǔn)測試問題,本文對其進行仿真實驗來驗證NPAPI-Dyna算法的各項性能。為了與已有類似算法進行對比,采用文獻[1]的倒立擺模型,如式(44)所示:

        實驗中,仿真時間步為0.1 s,折扣率γ =0.95。若擺桿偏離垂直方向角度超過90°則失敗;否則,若擺桿在上述約束條件下保持指定時間步不倒則成功。相應(yīng)的即時獎勵r如式(45)所示:

        此外,按照算法要求,設(shè)定初始狀態(tài)S0=[0 0],邊界Sb=[± 90 inf],指定 Sg= [0 0]。

        6.1 NPAPI-Dyna算法實驗分析

        設(shè)置實驗?zāi)繕?biāo)為倒立擺運行3000時間步不倒,實驗最大嘗試次數(shù)為300,ε 取0.1、0.05、0.01 時分別進行100 次獨立仿真運算,實驗結(jié)果如表1和表2所示。

        表1 ε在不同取值下的實驗結(jié)果(性能數(shù)據(jù))Tab.1 Experimental results under different ε values(performance data)

        表2 ε在不同取值下的實驗結(jié)果(過程數(shù)據(jù))Tab.2 Experimental results under different ε values(process data)

        由表1和表2中的數(shù)據(jù)可以看出,當(dāng)ε逐步降低時,狀態(tài)樣本數(shù)量不斷增加,狀態(tài)基函數(shù)隨之增加,Q值函數(shù)逼近器泛化能力逐漸提升;另一方面,當(dāng)ε逐步降低時,平均學(xué)習(xí)率也隨之降低,但由于近似算法的每步更新均能夠?qū)W(xué)習(xí)結(jié)果傳遞至所有狀態(tài)基函數(shù),因此對學(xué)習(xí)速度不會造成太大影響;從整體上看,基于環(huán)境估計模型的規(guī)劃過程可有效降低因狀態(tài)基函數(shù)增加帶來的學(xué)習(xí)反復(fù)性和不確定性,NPAPI-Dyna算法的學(xué)習(xí)速度較快。ε取 0.1、0.05、0.01時分別進行 100次獨立仿真運算的學(xué)習(xí)速度分布如表3所示,反映了ε取不同值時,在特定嘗試次數(shù)內(nèi)學(xué)習(xí)成功的次數(shù)。

        表3 ε在不同取值下的學(xué)習(xí)速度分布Tab.3 Learning velocity distribution of different ε values

        此外,從角度平均絕對偏差和角度平均振蕩范圍來看,隨著ε逐步降低,二者精度呈逐步增加趨勢,且無論ε(在0.1~0.01)如何取值,二者均能穩(wěn)定在較優(yōu)范圍內(nèi)。

        6.1.1 取消規(guī)劃過程后的實驗結(jié)果

        算法取消規(guī)劃過程后,即從第5章的算法步驟中去掉與規(guī)劃相關(guān)的部分,且將特征向量Φ(S)定義為:

        采用與上述實驗相同的樣本集、初始基函數(shù)和學(xué)習(xí)率,結(jié)果如表4所示。

        表4 取消規(guī)劃過程后ε在不同取值下的實驗結(jié)果Tab.4 Experimental results under different ε values after cancelling plan

        對比表4與表1、2中的數(shù)據(jù)可以看出,取消規(guī)劃過程后,當(dāng)ε逐步降低時,學(xué)習(xí)過程中的基函數(shù)合并次數(shù)、學(xué)習(xí)結(jié)束后的基函數(shù)數(shù)量均有所增加,學(xué)習(xí)速度逐漸降低,且隨著ε減小這一趨勢愈加明顯,從反面印證了算法采用的規(guī)劃過程對由基函數(shù)數(shù)量增加導(dǎo)致的學(xué)習(xí)反復(fù)性和不確定性具有較好的抑制效果。

        此外,在取消規(guī)劃后,角度平均絕對偏差大幅上升,角度平均振蕩范圍也略有增加,從反面證明了算法采用的規(guī)劃過程在提升學(xué)習(xí)精度方面也具有較好的效果。

        6.1.2 對規(guī)劃過程的實驗分析

        為了更好地理解NPAPI-Dyna算法的規(guī)劃過程,現(xiàn)通過實驗對其進行分析說明。當(dāng)ε取0.1時進行一次實驗,采集到的狀態(tài)樣本集合、邊界狀態(tài)樣本集合、初始狀態(tài)基函數(shù)和邊界狀態(tài)基函數(shù)如圖2所示。

        圖2 初始樣本與初始基函數(shù)Fig.2 Initial samples and basis functions

        其中,空心點為狀態(tài)樣本集合,實心點為邊界狀態(tài)樣本集合,初始狀態(tài)基函數(shù)和邊界狀態(tài)基函數(shù)以矩形框表示,標(biāo)號1~14為初始基函數(shù)序號,標(biāo)號Ⅰ和Ⅱ為邊界狀態(tài)基函數(shù)序號。

        由于狀態(tài)動作轉(zhuǎn)移模型B和邊界狀態(tài)動作轉(zhuǎn)移模型B'數(shù)量較多,這里僅列出內(nèi)部狀態(tài)轉(zhuǎn)移矩陣D和邊界狀態(tài)轉(zhuǎn)移矩陣D',如下所示。

        觀察矩陣D的12列和13列,以及矩陣D'可以看出,越靠近邊界狀態(tài)區(qū)分度越大,模型越準(zhǔn)確,同時也驗證了NPAPI-Dyna算法在規(guī)劃狀態(tài)離邊界狀態(tài)基函數(shù)ψ(S)較近時進行規(guī)劃的科學(xué)性。

        學(xué)習(xí)結(jié)束后的狀態(tài)樣本集合、邊界狀態(tài)樣本集合、初始狀態(tài)基函數(shù)和邊界狀態(tài)基函數(shù)如圖3所示。

        圖3 學(xué)習(xí)成功后樣本與狀態(tài)基函數(shù)Fig.3 Samples and state basis functions after learning success

        相應(yīng)的,內(nèi)部狀態(tài)轉(zhuǎn)移矩陣D和邊界狀態(tài)轉(zhuǎn)移矩陣D'如下所示:

        對比學(xué)習(xí)前,矩陣D和D'已經(jīng)學(xué)習(xí)到規(guī)律性,可以更好地指導(dǎo)倒立擺在平衡位置附近(矩陣D的第3列、4列、5列、9列和11列)擺動,學(xué)習(xí)成功的運動曲線如圖4所示。

        圖4 學(xué)習(xí)成功后的擺桿運動曲線(角度)Fig.4 Motion curve(angle)of pendulum after learning success

        從圖4可以看出學(xué)習(xí)成功后擺桿的擺動角度平均偏差為3.4124°,平均振蕩范圍為 2.874 8°,最大振蕩范圍基本穩(wěn)定在10°以內(nèi),顯示出算法具備較好的控制性能。

        6.2 與典型近似策略迭代增強學(xué)習(xí)算法進行對比

        NPAPI-Dyna、Online LSPI、BLSPI均為在線近似策略迭代增強學(xué)習(xí)算法,一般通過不同參數(shù)條件下獲得控制策略的速度進行評價。將ε取0.1時進行100次獨立仿真運算的結(jié)果與 Online LSPI、BLSPI算法的最優(yōu)實驗結(jié)果[3]進行比較,三種算法在不同嘗試次數(shù)下的平均平衡時間步如表5所示。

        表5 與典型在線近似策略迭代增強學(xué)習(xí)算法的對比Tab.5 Comparison with typical online approximation policy iteration reinforcement learning

        從表5可以看出,NPAPI-Dyna算法基本可在50次嘗試內(nèi)學(xué)習(xí)得到一級倒立擺平衡的控制策略,速度遠快于Online LSPI和 BLSPI。

        7 結(jié)語

        NPAPI-Dyna算法只需指定增強學(xué)習(xí)的誤差率就能完全自主地實現(xiàn)樣本采集、網(wǎng)絡(luò)結(jié)構(gòu)構(gòu)建和環(huán)境估計模型構(gòu)建過程,同時算法還引入Dyna框架的模型辨識思想,將學(xué)習(xí)和規(guī)劃過程有機結(jié)合以提升學(xué)習(xí)速度。一級倒立擺平衡控制仿真實驗驗證了算法在不同增強學(xué)習(xí)誤差率取值下的有效性和性能變化趨勢,分析了算法的規(guī)劃過程,與目前典型的在線近似策略迭代增強學(xué)習(xí)算法相比較,NPAPI-Dyna具有收斂速度更快的優(yōu)勢。本文解決了單個智能體的非參數(shù)化增強學(xué)習(xí)問題,非參數(shù)化并行增強學(xué)習(xí)和多智能體非參數(shù)化增強學(xué)習(xí)將是未來的重點研究方向。

        猜你喜歡
        邊界矩陣樣本
        拓展閱讀的邊界
        用樣本估計總體復(fù)習(xí)點撥
        論中立的幫助行為之可罰邊界
        推動醫(yī)改的“直銷樣本”
        隨機微分方程的樣本Lyapunov二次型估計
        初等行變換與初等列變換并用求逆矩陣
        村企共贏的樣本
        矩陣
        南都周刊(2015年4期)2015-09-10 07:22:44
        矩陣
        南都周刊(2015年3期)2015-09-10 07:22:44
        矩陣
        南都周刊(2015年1期)2015-09-10 07:22:44
        蜜桃视频高清在线观看| 欧美mv日韩mv国产网站| 国产成人精品精品欧美| 亚洲av国产大片在线观看| 在线观看视频免费播放| 亚洲无线码一区二区三区| 日韩av高清无码| 久久亚洲精彩无码天堂| 国产中文字幕免费视频一区| 在办公室被c到呻吟的动态图| 欧美性大战久久久久久久| 偷拍区亚洲区一区二区| 日韩精品免费av一区二区三区 | 日韩女同一区二区三区久久| 91久久精品色伊人6882| 男女爱爱好爽视频免费看| 曰韩精品无码一区二区三区| 亚洲国产一区二区精品| 久久无码高潮喷水抽搐| 久青草久青草视频在线观看| 国产欧美日韩不卡一区二区三区| 最新日本女优中文字幕视频| 欧美牲交a欧美牲交aⅴ| 精品性高朝久久久久久久| 亚洲精品国产福利在线观看 | 波多野42部无码喷潮| 国产精品99久久久久久98AV| 男女后入式在线观看视频| 亚洲av无码成h在线观看| 亚洲精品欧美二区三区中文字幕| 久久久www成人免费无遮挡大片| 九七青青草视频在线观看| 蜜臀av午夜一区二区三区| 国产精品福利影院| av手机天堂在线观看| 亚洲av无码无线在线观看| 天天干夜夜操| 国产男女猛烈无遮挡免费视频网址| 精品国产一区二区三区18p| 国产真实偷乱视频| 91久久综合精品国产丝袜长腿|