任紅格+劉偉民+李福進(jìn)
摘 要: 針對強(qiáng)化學(xué)習(xí)算法訓(xùn)練網(wǎng)絡(luò)規(guī)模較大、運(yùn)行時間較長、過度擬合等問題,提出一種記憶可修剪型強(qiáng)化學(xué)習(xí)仿生模型(H?RLM)作為兩輪機(jī)器人的學(xué)習(xí)機(jī)制。該算法將神經(jīng)網(wǎng)絡(luò)輸出與期望輸出的最小均方差作為代價函數(shù),采用Hessian矩陣和Markov相結(jié)合的決策進(jìn)行尋優(yōu),選擇最大評價值對應(yīng)的最優(yōu)行為。這樣既可以保證初期網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練內(nèi)容的完整性,又降低了系統(tǒng)對初始條件的約束性,提高了控制算法的泛化能力。利用H?RLM和強(qiáng)化算法對兩輪機(jī)器人進(jìn)行速度跟蹤實(shí)驗(yàn),結(jié)果表明,H?RLM算法能夠提高網(wǎng)絡(luò)學(xué)習(xí)效率、消除延遲影響、減小輸出誤差,獲得了良好的動態(tài)性能。
關(guān)鍵詞: 強(qiáng)化學(xué)習(xí); 可修剪仿生模型; Hessian矩陣; 兩輪機(jī)器人
中圖分類號: TN911?34;TP391.4 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)15?0141?05
Abstract: Since the reinforcement learning algorithm has the problems of large scale, long running time and over fitting for network training, a pruning reinforcement learning model (H?RLM) taken as the learning mechanism of the two?wheeled robot is proposed. The output of neural network and least mean square error of expected output are deem as the cost function of the algorithm. The Hessian matrix and Markov decision model are combined to select the optimal behavior corresponding to the maximum evaluation value, which can ensure the integrity of the training content of the network learning in initial period, and reduce the system contraints for initial conditions, and improve the generalization ability of the control algorithm. The speed tracking experiments were carried on by means of H?RLM algorithm and reinforcement learning algorithm. The experimental results show that the H?RLM algorithm can improve the network learning efficiency, eliminate the delay effect, reduce the output error, and obtain better dynamic performance.
Keywords: reinforcement learning; pruning bionic model; Hessian matrix; two?wheeled robot
0 引 言
仿生的思想就是使機(jī)器具有像人一樣的學(xué)習(xí)能力,在沒有人為參與的情況下,機(jī)器人能夠自主完成任務(wù)來適應(yīng)未知環(huán)境,其自主學(xué)習(xí)能力的強(qiáng)弱是十分關(guān)鍵的。強(qiáng)化學(xué)習(xí)是一種基于“感知?行動”的學(xué)習(xí)過程,待訓(xùn)練系統(tǒng)感知外界環(huán)境狀態(tài),選取某一策略作用于環(huán)境,環(huán)境接受該動作后狀態(tài)發(fā)生變化,同時給出一個激勵信號(獎勵/懲罰)給強(qiáng)化學(xué)習(xí)系統(tǒng),其系統(tǒng)根據(jù)強(qiáng)化信號和環(huán)境的當(dāng)前狀態(tài)再選擇下一個動作,選擇的原則是使受到獎勵的概率增大[1?3]。強(qiáng)化學(xué)習(xí)其優(yōu)秀的自適應(yīng)調(diào)節(jié)性能在自動化技術(shù)、智能控制、分析預(yù)測等領(lǐng)域得到了廣泛的應(yīng)用,但其網(wǎng)絡(luò)規(guī)模過大、網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜和高度結(jié)構(gòu)化造成的過擬合、泛化能力低等現(xiàn)象越來越引起研究人員的注意。
國內(nèi)外研究人員希望在保持良好性能的同時使網(wǎng)絡(luò)的規(guī)模最小化,通過選擇有序的方式削弱或者消除某些突觸權(quán)值來修剪多層感知器,既可以提高系統(tǒng)的降噪能力,又減少網(wǎng)絡(luò)訓(xùn)練時間,增強(qiáng)系統(tǒng)網(wǎng)絡(luò)的泛化能力[4?5]。修剪算法?最優(yōu)腦外科過程算法(OBS)對神經(jīng)元網(wǎng)絡(luò)連接權(quán)值進(jìn)行修剪[6]。文獻(xiàn)[7]利用修剪技術(shù)與參數(shù)調(diào)整使動態(tài)模糊神經(jīng)網(wǎng)絡(luò)具有強(qiáng)大的泛化能力,快速的學(xué)習(xí)速度,緊湊的系統(tǒng)結(jié)構(gòu)。文獻(xiàn)[8]實(shí)現(xiàn)控制系統(tǒng)參數(shù)的自整定和消除控制系統(tǒng)的延遲,利用隨機(jī)產(chǎn)生數(shù)組的方法減少強(qiáng)化學(xué)習(xí)偏差的過渡時間和增強(qiáng)系統(tǒng)的尋優(yōu)能力。文獻(xiàn)[9]將擴(kuò)展信息濾波和“生長?修剪”訓(xùn)練基函數(shù)神經(jīng)網(wǎng)絡(luò),獲得了緊湊的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),提高了在實(shí)際工程中復(fù)雜非線性問題的泛化能力,降低了預(yù)測誤差。文獻(xiàn)[10]將PWG技術(shù)(Pruning?While?Growing)應(yīng)用到多輸入歐拉多項式神經(jīng)網(wǎng)絡(luò),使其選擇隱層和輸出層最佳的連接權(quán)重,并優(yōu)化隱層神經(jīng)元數(shù)目和層數(shù),提高了系統(tǒng)的預(yù)測精度和實(shí)時性。
本文針對強(qiáng)化學(xué)習(xí)算法訓(xùn)練神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)存在冗余、過擬合、泛化能力差等現(xiàn)象,提出一種記憶可修剪型強(qiáng)化學(xué)習(xí)仿生模型(H?RLM),作為兩輪機(jī)器人的學(xué)習(xí)機(jī)制。利用誤差曲面的二次導(dǎo)數(shù)信息得到網(wǎng)絡(luò)復(fù)雜度和訓(xùn)練誤差性能之間的折中方案。H?RLM算法根據(jù)神經(jīng)元輸出最小均方差對強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行修剪,仿真結(jié)果表明,該模型有效地提高了兩輪機(jī)器人的學(xué)習(xí)效率,修剪后的網(wǎng)絡(luò)處理信息能力強(qiáng),獲得了較穩(wěn)定的動態(tài)平衡過程。表明該認(rèn)知模型的自學(xué)習(xí)動態(tài)變化特性,并生動地模擬了記憶遺忘的認(rèn)知過程。
1 兩輪機(jī)器人系統(tǒng)結(jié)構(gòu)及動力學(xué)模型
兩輪機(jī)器人是一類結(jié)構(gòu)性能較為復(fù)雜的移動式機(jī)器人,以經(jīng)典的移動倒立擺模型為基礎(chǔ)進(jìn)行設(shè)計,其構(gòu)造有兩個輪子,每個輪子由直流電機(jī)直接驅(qū)動,并以電機(jī)軸心線為中心前后運(yùn)動。其結(jié)構(gòu)如圖1所示。
本文采用與文獻(xiàn)[11]相同的動力學(xué)模型,模型建立及推導(dǎo)過程參見文獻(xiàn)[11]。采用Lagrange方法對兩輪自平衡機(jī)器人進(jìn)行系統(tǒng)動力學(xué)建模,其數(shù)學(xué)表達(dá)式為:
式中:系統(tǒng)的3個廣義坐標(biāo)為左輪角速度右輪角速度擺桿角度廣義坐標(biāo)下的系統(tǒng)廣義力為左輪轉(zhuǎn)矩、右輪轉(zhuǎn)矩,車體作用在軸的轉(zhuǎn)矩。
根據(jù)以上動力學(xué)方程可以得到MIMO非線性動力學(xué)模型。在條件下,,動力學(xué)方程選擇狀態(tài)變量控制量分別代表左右兩輪的角速度,機(jī)器人擺桿速度和角度。得到系統(tǒng)的狀態(tài)方程:
2 記憶可修剪型神經(jīng)網(wǎng)絡(luò)模型設(shè)計
神經(jīng)網(wǎng)絡(luò)規(guī)模過大造成其存儲量和計算量也會加大,通過改變Hessian矩陣,Hessian矩陣的逆矩陣為從一個多層感知器中修剪(即刪除)不重要的突觸權(quán)值提供基礎(chǔ),得到簡潔有效的網(wǎng)絡(luò)結(jié)構(gòu),修剪后的網(wǎng)絡(luò)處理信息能力強(qiáng),初始條件的要求低,學(xué)習(xí)效率也很高。在線調(diào)整網(wǎng)絡(luò)權(quán)值,提高了網(wǎng)絡(luò)的最終性能,有效地解決了過擬合和泛化能力差的問題。
2.1 Hessian矩陣的神經(jīng)網(wǎng)絡(luò)修剪
記憶可修剪型優(yōu)化算法主要利用誤差曲面的二次導(dǎo)數(shù)信息得到網(wǎng)絡(luò)復(fù)雜度和訓(xùn)練誤差性能之間的折中方案。利用Hessian矩陣有利于構(gòu)造誤差曲面的一個局部模型,并且能夠解析預(yù)測突觸權(quán)值的擾動造成的影響。構(gòu)造這樣一個模型結(jié)構(gòu)的出發(fā)點(diǎn)是在運(yùn)行點(diǎn)附近使用泰勒級數(shù)給出能量函數(shù)的局部逼近,描述如下:
為了尋找權(quán)值最優(yōu)值并且使多層感知器代價函數(shù)的值增長最小,其局部最小和全局最小周圍的誤差曲線是近似二次的,分別利用極值逼近和二次逼近方法,梯度向量可以置為零,忽略式(1)右側(cè)的項,代價函數(shù)簡單近似為:
式中:是Hessian矩陣的逆,是第個元素;稱為連接權(quán)值的綜合性。在上述權(quán)值修剪過程中,刪除最小特征值所對應(yīng)的權(quán)值,其他特征值的權(quán)值通過式(10)修正。如果第個突觸權(quán)值被去除,對進(jìn)行優(yōu)化得到的Lagrange算子,稱為的顯著性。如果顯著性遠(yuǎn)小于均方差,神經(jīng)網(wǎng)絡(luò)自動剔除該神經(jīng)元感知器。當(dāng)神經(jīng)網(wǎng)絡(luò)誤差均差值沒有太大的變化時停止修剪作用。
2.2 記憶可修剪型仿生控制器決策過程
強(qiáng)化學(xué)習(xí)是一種試探學(xué)習(xí)方式,是人類開放式認(rèn)知發(fā)育至關(guān)重要的機(jī)制,沒有外界明顯的教師信號給予引導(dǎo)指令,只能通過與周圍環(huán)境的交互得到獎勵或懲罰信號來學(xué)習(xí)和執(zhí)行之后的動作,能通過自身神經(jīng)網(wǎng)絡(luò)的在線學(xué)習(xí)有效地實(shí)現(xiàn)對具有離散時間和連續(xù)空間任務(wù)的控制,既可以增強(qiáng)網(wǎng)絡(luò)處理動態(tài)信息的能力,又能自適應(yīng)地修剪網(wǎng)絡(luò)訓(xùn)練權(quán)值,使其更適合復(fù)雜系統(tǒng)的穩(wěn)定控制?;谝陨蟽?yōu)點(diǎn),設(shè)計了一種記憶可修剪型仿生模型(H?RLM),如圖2所示。把仿生學(xué)習(xí)系統(tǒng)的性能指標(biāo)用評價指標(biāo)來表示。通過對獎勵懲罰信號的學(xué)習(xí),使控制器的取向函數(shù)值最大,從而獲得系統(tǒng)的最優(yōu)控制動作。
H?RLM仿生模型訓(xùn)練網(wǎng)絡(luò)由評價神經(jīng)網(wǎng)絡(luò)(CNN)和動作神經(jīng)網(wǎng)絡(luò)(ANN)兩部分組成。CNN利用時間差分(TD)方法對評價函數(shù)進(jìn)行近似,將狀態(tài)映射為期望的價值,直接從外界環(huán)境中獲取評價性反饋信號,同時用ANN的取向函數(shù)來評價當(dāng)前動作的好壞。ANN利用評價函數(shù)來實(shí)現(xiàn)行為決策的優(yōu)化,使其得到“獎勵”的發(fā)生概率增大,并且將狀態(tài)映射到動作行為上,構(gòu)成仿生伺服機(jī)構(gòu)。
利用Markov決策模型模擬機(jī)器人和外界環(huán)境的相互作用,考慮一個有限的隨機(jī)過程,環(huán)境狀態(tài)環(huán)境狀態(tài)由轉(zhuǎn)移到的轉(zhuǎn)移概率可以表示為:
3 仿真實(shí)驗(yàn)設(shè)計及結(jié)果分析
以兩輪自平衡機(jī)器人在未知環(huán)境中通過自主學(xué)習(xí)達(dá)到運(yùn)動平衡作為控制目標(biāo),采用基于“CNN/ANN”架構(gòu)結(jié)構(gòu)的H?RLM強(qiáng)化學(xué)習(xí)方式,CNN和ANN采用BP遞歸神經(jīng)網(wǎng)絡(luò)分別實(shí)現(xiàn)系統(tǒng)狀態(tài)量映射實(shí)際動作、系統(tǒng)狀態(tài)及控制量評價機(jī)器人的運(yùn)行狀態(tài),利用Hessian和Markov相結(jié)合的決策策略評價訓(xùn)練效果,產(chǎn)生“獎勵/懲罰”信號來校正反饋當(dāng)前狀態(tài)。CNN采用網(wǎng)絡(luò)結(jié)構(gòu),以自平衡機(jī)器人的4個狀態(tài)和ANN的電壓輸出作為輸入,輸出則是評價函數(shù),ANN采用網(wǎng)絡(luò)結(jié)構(gòu),同樣以自平衡機(jī)器人的4個狀態(tài)作為網(wǎng)絡(luò)的輸入,輸出則是左右車輪電機(jī)的控制量。設(shè)定評價信號“獎勵/懲罰”信號0代表“獎勵”信號,-1代表“懲罰”信號:
本文算法流程如下:
Step1:初始化CNN和ANN網(wǎng)絡(luò)的權(quán)值,設(shè)定其權(quán)值的絕對值小于1之間的隨機(jī)數(shù),并設(shè)定次數(shù)為0;
Step2:初始化自平衡兩輪機(jī)器人的狀態(tài)變量,設(shè)定其為有效范圍的隨機(jī)數(shù),并設(shè)定運(yùn)行步數(shù)為0;
Step3:根據(jù)輸入狀態(tài)量判斷速度補(bǔ)償,經(jīng)過ANN訓(xùn)練學(xué)習(xí)計算新的控制量;
Step4:對更新的狀態(tài)變量和控制量通過CNN訓(xùn)練學(xué)習(xí),計算出更新的評價函數(shù);
Step5:修正CNN和ANN的連接權(quán)值,計算多層感知器的最小均方誤差,利用遞歸條件計算Hessian矩陣的逆尋找相應(yīng)的最小顯著性的,判斷顯著性如果遠(yuǎn)小于均方差,神經(jīng)網(wǎng)絡(luò)將自動剔除該神經(jīng)元,并執(zhí)行Step7,否則執(zhí)行Step6;
Step6:利用式(9)調(diào)整訓(xùn)練神經(jīng)網(wǎng)絡(luò)權(quán)值,執(zhí)行Step3;
Step7:判斷訓(xùn)練網(wǎng)絡(luò)權(quán)值均方誤差沒有太大的增加時停止網(wǎng)絡(luò)權(quán)值修剪,利用BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練調(diào)整權(quán)值;
Step8:判斷是否滿足設(shè)定條件,結(jié)束CNN和ANN循環(huán)學(xué)習(xí)。
為了驗(yàn)證H?RLM仿生模型訓(xùn)練網(wǎng)絡(luò)學(xué)習(xí)機(jī)制的有效性,對自平衡兩輪機(jī)器人進(jìn)行仿真分析,設(shè)定網(wǎng)絡(luò)訓(xùn)練折扣因子采樣時間為0.01 s。仿真實(shí)驗(yàn)中,神經(jīng)網(wǎng)絡(luò)分別控制兩輪機(jī)器人的擺桿角速度、自身傾角、左右輪速度。將控制量作為狀態(tài)變量輸入到神經(jīng)網(wǎng)絡(luò)的輸入層,通過隱含層神經(jīng)元綜合性分析,對神經(jīng)元進(jìn)行記憶修剪。首先,利用強(qiáng)化學(xué)習(xí)算法對機(jī)器人在沒有干擾的未知環(huán)境下進(jìn)行仿真實(shí)驗(yàn)。由圖3的仿真結(jié)果可以看出,系統(tǒng)經(jīng)過不斷的學(xué)習(xí),平均需要經(jīng)歷50次失敗試探后就可以自主控制其運(yùn)動平衡了,而向平衡過渡的過程大致經(jīng)歷了400步,即4 s的過渡時間,穩(wěn)態(tài)過度時間較短,充分地表現(xiàn)出強(qiáng)化學(xué)習(xí)的自主學(xué)習(xí)能力。
圖4利用本文提出的H?RLM模型作為兩輪機(jī)器人的學(xué)習(xí)機(jī)制,分析圖4可得平均需要經(jīng)歷30次失敗試探后,機(jī)器人就達(dá)到動態(tài)平衡狀態(tài),平衡過渡的過程大致經(jīng)歷了200步,即2 s的過渡時間,穩(wěn)態(tài)過度時間比強(qiáng)化學(xué)習(xí)縮短了一倍,充分體現(xiàn)了H?RLM模型的有效性和實(shí)用性。
圖5表示兩輪機(jī)器人學(xué)習(xí)系統(tǒng)的評價函數(shù)值和訓(xùn)練過程中相鄰評價函數(shù)值的誤差變化,評價函數(shù)值表示ANN所選擇的行為使兩輪機(jī)器人獲得的速度補(bǔ)償達(dá)到最大值,且其值接近于零。誤差變化曲線表示CNN近似逼近評價函數(shù),時間差分變化最小,且其值接近于零。由以上仿真實(shí)驗(yàn)得出:基于H?RLM仿生模型,在系統(tǒng)學(xué)習(xí)過程中保留了強(qiáng)化學(xué)習(xí)自主學(xué)習(xí)能力和系統(tǒng)的魯棒性,又有效地修剪了神經(jīng)網(wǎng)絡(luò)權(quán)值,提高了系統(tǒng)學(xué)習(xí)效率和系統(tǒng)的泛化能力。
4 結(jié) 論
根據(jù)最優(yōu)腦外科(OBS)理論,訓(xùn)練網(wǎng)絡(luò)權(quán)值向量增長變化較小且接近零時,可以將該突觸權(quán)值置為零,對系統(tǒng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)不僅不會造成明顯影響,而且有效地使網(wǎng)絡(luò)規(guī)模最小化,降低了學(xué)習(xí)訓(xùn)練數(shù)據(jù)摻雜的噪音,提高了系統(tǒng)數(shù)據(jù)的泛化能力。本文將網(wǎng)絡(luò)修剪和強(qiáng)化學(xué)習(xí)有效的結(jié)合在一起,提出將一種記憶可修剪型強(qiáng)化學(xué)習(xí)仿生模型(H?RLM)作為兩輪機(jī)器人的學(xué)習(xí)機(jī)制。通過神經(jīng)網(wǎng)絡(luò)權(quán)值的記憶和調(diào)整,使機(jī)器人在未知外界環(huán)境中能夠快速的自主學(xué)習(xí),逐漸發(fā)育形成完善的動態(tài)平衡機(jī)制,并且有效地解決網(wǎng)絡(luò)結(jié)構(gòu)龐大,泛化能力差,自適應(yīng)能力差的問題,達(dá)到了預(yù)期控制目標(biāo),實(shí)現(xiàn)了兩輪機(jī)器人的運(yùn)動平衡控制和速度跟蹤,具有較強(qiáng)的自主學(xué)習(xí)能力和魯棒性能,有較高的理論研究和工程應(yīng)用價值。
參考文獻(xiàn)
[1] WIERING M, OTTERLO M V. Reinforcement learning state of the art [M]. Berlin: Springer?Verlag, 2012: 325?331.
[2] KOHL N, MIIKKULAINEN R. An integrated neuroevolutionary approach to reactive control and high level strategy [J]. IEEE transactions on evolutionary computation, 2012, 16(4): 472?488.
[3] VIEN N A, ERTEL W, CHUNG T C. Learning via human feedback in continuous state and action spaces [J]. Applied intelligence, 2013, 39(2): 267?278.
[4] HSU C F. Adaptive growing?and?pruning neural network control for a linear piezoelectric ceramic motor [J]. Engineering applications of artificial intelligence, 2008, 21(8): 1153?1163.
[5] AHMED S U, AHJAHAN M, RASE K. A Lempel?Ziv complexity?based neural network pruning algorithm [J]. International journal of neural systems, 2011, 21(5): 427?441.
[6] ERDOGMUS D, PRINCIPE J C. An error?entropy minimization algorithm for supervised training of nonlinear adaptive systems [J]. IEEE transactions on signal processing, 2002, 50(7): 1780?1786.
[7] 馬莉,樊友平,鐘勇,等.修剪技術(shù)與參數(shù)調(diào)整的動態(tài)模糊神經(jīng)網(wǎng)絡(luò)設(shè)計[J].系統(tǒng)仿真學(xué)報,2010,22(7):1646?1650.
[8] 高瑞娟,吳梅.基于改進(jìn)強(qiáng)化學(xué)習(xí)的PID參數(shù)整定原理及應(yīng)用[J].現(xiàn)代電子技術(shù),2014,37(4):1?4.
[9] THOMAS P, SUHNER M C. A new multilayer perceptron pru?ning algorithm for classification and regression applications [J]. Neural processing letters, 2015, 42(2): 437?458.
[10] ZHANG Y N, WANG Y, LI W B. WASD algorithm with pruning?while?growing and twice?pruning techniques for multi?input Euler polynomial neural network [J]. International journal of artificial intelligence, 2016, 25(2): 46?78.
[11] 任紅格,霍美杰,李福進(jìn),等.兩輪自平衡機(jī)器人速度跟蹤研究[J].計算機(jī)仿真,2015,32(4):325?329.