衛(wèi)玉梁,靳伍銀
(蘭州理工大學(xué)機(jī)電工程學(xué)院,蘭州 730050)
機(jī)器學(xué)習(xí)分為監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)以及強(qiáng)化學(xué)習(xí)3種,其中強(qiáng)化學(xué)習(xí)是以環(huán)境反饋為學(xué)習(xí)策略的機(jī)器學(xué)習(xí)方法[1-2]。蒙特卡羅算法、Q學(xué)習(xí)算法、模擬退火法、遺傳算法等都屬于強(qiáng)化學(xué)習(xí)[3];由Watikins提出的Q-learning算法是強(qiáng)化學(xué)習(xí)算法中應(yīng)用較為廣泛的一種,其特點(diǎn)是不依賴于環(huán)境的先驗(yàn)?zāi)P停?-5]。因此,Q強(qiáng)化學(xué)習(xí)算法是一種無(wú)模型的在線學(xué)習(xí)算法[6]。本文采用Q強(qiáng)化學(xué)習(xí)算法來(lái)解決智能小車在行走過程中,特別是在環(huán)境中設(shè)置除起點(diǎn)和目標(biāo)位置以外,還有其他路障時(shí)的路徑規(guī)劃和規(guī)避問題。由于Q學(xué)習(xí)算法的量化過程會(huì)影響到最終的實(shí)驗(yàn)效果,從而采用RBF網(wǎng)絡(luò)對(duì)Q強(qiáng)化學(xué)習(xí)算法進(jìn)行優(yōu)化,提高Q學(xué)習(xí)算法效果,加強(qiáng)智能小車的自治導(dǎo)航能力。
Q學(xué)習(xí)算法是一種類似于動(dòng)態(tài)規(guī)劃的強(qiáng)化學(xué)習(xí)方法[7]。可以為智能系統(tǒng)提供一種學(xué)習(xí)能力,通過這種能力可以使系統(tǒng)在馬爾科夫環(huán)境中利用經(jīng)歷的動(dòng)作序列選擇最優(yōu)動(dòng)作集,而且這種能力不依賴于馬爾科夫環(huán)境的模型[8]。所以Q-learning學(xué)習(xí)算法也是馬爾科夫決策過程MDP(Markov Decision Process)的另一種表達(dá)形式[9]。
首先將小車路徑規(guī)劃問題建模為有限的、離散的MDP,用數(shù)組{S,A,R,P}表示,其中 S 為小車的位置狀態(tài)空間,A為小車可用控制指令組成的動(dòng)作空間,R為對(duì)應(yīng)狀態(tài)的獎(jiǎng)賞回報(bào),P為狀態(tài)之間的轉(zhuǎn)移概率。
圖1 強(qiáng)化學(xué)習(xí)框圖
強(qiáng)化學(xué)習(xí)框圖如圖1所示,智能小車路徑規(guī)劃決策系統(tǒng)每步可在有限動(dòng)作集合中選取某一動(dòng)作,并將這個(gè)動(dòng)作作用于環(huán)境中,環(huán)境接受該動(dòng)作后狀態(tài)發(fā)生轉(zhuǎn)移,同時(shí)給出獎(jiǎng)賞R。例如,小車路徑規(guī)劃決策系統(tǒng)在t時(shí)刻選擇動(dòng)作at,環(huán)境接受這個(gè)動(dòng)作后由狀態(tài)st轉(zhuǎn)移到st+1。
上述R及st+1的概率分布取決于at及st。環(huán)境狀態(tài)st以如下概率變化到st+1:
定義表示狀態(tài)st的值函數(shù),用來(lái)從長(zhǎng)期的觀點(diǎn)確定并選擇最優(yōu)動(dòng)作,在策略π的作用下:
式(3)表明策略π*能夠使值函數(shù)Vπ(s)取得最大值。
定義動(dòng)作值函數(shù)Q如下:
又根據(jù)式(3),可得:
上式表明,在路徑規(guī)劃時(shí)僅需要對(duì)現(xiàn)在的狀態(tài)Q(s,a)的局部值不斷作出反應(yīng),就可以選擇出全局最優(yōu)的移動(dòng)策略。其迭代公式為:
傳統(tǒng)Q學(xué)習(xí)算法的流程如圖2所示:隨機(jī)初始化 Q(s,a)值根據(jù)當(dāng)前 Q 和位置 st,使用一種策略,得到并進(jìn)行動(dòng)作at,到達(dá)新的位置st+1,獲得獎(jiǎng)勵(lì)R更新之前位置的Q值。當(dāng)達(dá)到目標(biāo)狀態(tài)時(shí),此次迭代過程結(jié)束。
圖2 傳統(tǒng)Q學(xué)習(xí)算法的流程
本文利用RBF網(wǎng)絡(luò)較強(qiáng)的函數(shù)逼近能力,實(shí)現(xiàn)Q-learning的動(dòng)作值函數(shù)Q進(jìn)行逼近,網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
圖3 基于RBF的Q算法網(wǎng)絡(luò)結(jié)構(gòu)
第2層為隱層,在這一層當(dāng)中,每一個(gè)節(jié)點(diǎn)采用P維高斯函數(shù),第K個(gè)RBF節(jié)點(diǎn)的表達(dá)式為:
Q強(qiáng)化學(xué)習(xí)系統(tǒng)結(jié)構(gòu)如圖4所示,在圖4中,整個(gè)系統(tǒng)只有一個(gè)決策單元,這個(gè)單元承擔(dān)著馬爾科夫過程中的動(dòng)作獎(jiǎng)賞R的評(píng)價(jià)和動(dòng)作的選擇任務(wù)。
圖4 Q強(qiáng)化學(xué)習(xí)系統(tǒng)結(jié)構(gòu)
綜上所述,Q學(xué)習(xí)算法在對(duì)智能小車的路徑進(jìn)行規(guī)劃時(shí),不依賴于環(huán)境的初始環(huán)境,而是在動(dòng)態(tài)環(huán)境中實(shí)現(xiàn)其路徑的規(guī)劃。為了實(shí)施并且準(zhǔn)確獲取其所處的環(huán)境的動(dòng)態(tài)數(shù)據(jù)信息,判斷環(huán)境的實(shí)際狀況,在智能小車上配置有4個(gè)距離的傳感器,用于檢測(cè)智能小車與路障之間的距離等,然后通過數(shù)據(jù)采集電路將這4個(gè)傳感器獲得的位置等信息傳遞到核心芯片,由其計(jì)算所得的結(jié)果作為系統(tǒng)的輸入,即小車在每個(gè)S環(huán)境時(shí)可作出的動(dòng)作指令集合為向4個(gè)方向的移動(dòng),即A={上,下,左,右}系統(tǒng)工作流程如下:
1)對(duì)工作環(huán)境st進(jìn)行觀測(cè);
2)選定一個(gè)動(dòng)作a并執(zhí)行;
3)對(duì)下一個(gè)環(huán)境st+1進(jìn)行觀測(cè);
4)接收強(qiáng)化信息rt;
5)調(diào)整Q值。
為了驗(yàn)證本文所采用算法的有效性及相對(duì)于其他算法的優(yōu)越性,基于MATLAB平臺(tái)建立了Q-learning智能小車路徑規(guī)劃算法GUI仿真系統(tǒng),其界面如圖5所示。
圖5 小車路徑規(guī)劃GUI仿真系統(tǒng)
系統(tǒng)中主要包含了“顯示”和“設(shè)置”兩大塊,通過右邊的“設(shè)置”來(lái)定義仿真過程中的智能小車的起點(diǎn)、終點(diǎn)以及運(yùn)動(dòng)過程中的各種路障。在界面的任務(wù)欄上同時(shí)設(shè)置了系統(tǒng)簡(jiǎn)介以及保存結(jié)果兩個(gè)功能選項(xiàng)。
本文中在簡(jiǎn)單路障和復(fù)雜路障兩種環(huán)境下進(jìn)行仿真研究,同時(shí)加入基于勢(shì)場(chǎng)的Q學(xué)習(xí)算法作為比較,具體仿真結(jié)果如圖6和下頁(yè)圖7所示。
1)簡(jiǎn)單路障下的路徑規(guī)劃效果
圖6 簡(jiǎn)單路障下的路徑規(guī)劃效果
2)復(fù)雜路障下的路徑規(guī)劃效果
圖7 復(fù)雜路障下的路徑規(guī)劃效果
上述仿真結(jié)果表明,本文所提出的算法能夠?qū)崿F(xiàn)智能小車行走過程中的全局路徑規(guī)劃,對(duì)在環(huán)境中設(shè)置有除起點(diǎn)和目標(biāo)位置以外的路徑規(guī)劃和路障規(guī)避問題有著良好的表現(xiàn)。同時(shí)對(duì)于Q算法而言,本文所采用的基于神經(jīng)網(wǎng)絡(luò)Q-learning算法無(wú)論是在相對(duì)簡(jiǎn)單或是相對(duì)復(fù)雜的環(huán)境中,其效率均為最高,收斂速度也最快,其次是基于勢(shì)場(chǎng)的Q-learning算法,傳統(tǒng)的Q-learning算法收斂速度最慢、效果最差。
本文針對(duì)智能小車行走過程中的全局路徑規(guī)劃和路障規(guī)避問題,提出了一種基于神經(jīng)網(wǎng)絡(luò)Q強(qiáng)化學(xué)習(xí)算法。利用MATLAB開發(fā)了基于神經(jīng)網(wǎng)絡(luò)Q-learning強(qiáng)化學(xué)習(xí)算法智能小車全局路徑規(guī)劃和路障規(guī)避仿真平臺(tái),仿真結(jié)果表明:
1)本文所提出的算法能夠?qū)崿F(xiàn)智能小車行走過程中的全局路徑規(guī)劃,對(duì)在環(huán)境中設(shè)置有除起點(diǎn)和目標(biāo)位置以外的路徑規(guī)劃和路障規(guī)避問題有著良好的表現(xiàn)。
2)基于RBF網(wǎng)絡(luò)逼近的Q-learning算法相對(duì)與其他兩種算法其效率最高,收斂速度最快,大大地提高路徑規(guī)劃的效果和收斂速度。
3)基于Q學(xué)習(xí)算法的策略能使智能小車獲取自學(xué)習(xí)功能,增強(qiáng)了其自導(dǎo)航的能力。為移動(dòng)機(jī)器人、無(wú)人車等在貨物運(yùn)輸、智能駕駛以及軍事方面的應(yīng)用提供了一定的參考意義。