王伯健 戰(zhàn) 凱 郭 鑫,2 石 峰 高澤宇
(1.北京礦冶研究總院,北京 100160;2.北京科技大學 機械工程學院,北京 100083)
地下鏟運機屬于鉸接車的一種,是靈活、機動的鏟裝運輸設備。KCY-2型鏟運機通過鉸接點一側布置的油缸伸縮來實現(xiàn)轉向,在車輛行駛過程中,有左右轉向響應效果不同的問題,加上地面摩擦條件的因素,車輛轉向的控制較為復雜。為保證無人駕駛過程中轉向控制的精確,對車速的控制要求更高,需要車速的控制反應快、穩(wěn)定性強。
針對剛性車輛的車速控制的研究,當前大多采用專家經驗法、模糊化車速、PID控制、滑膜控制、智能控制算法、智能優(yōu)化搜索算法等。目前,很多車速控制算法是依據(jù)駕駛特征大數(shù)據(jù)、視覺等經驗法控制車速[1,2],存在局限性。通過模糊理論模糊化分級控制輸出車速的方法會使車速分級變化,平穩(wěn)性、可控性較低[3]。傳統(tǒng)的PID控制器和控制方法穩(wěn)定性較高,但存在應用需大量時間調整參數(shù)和無法適應變化等系統(tǒng)問題[4-6]?;た刂?、逆控制、智能優(yōu)化算法等其他方法對于非線性不穩(wěn)定系統(tǒng)問題的控制效果不理想,存在不足[7-9]。在實際巷道中,地下鏟運機的車速控制需要較高的及時性、可靠性和穩(wěn)定性,但因為車載控制器硬件配置限制,以及對響應速度的要求較高,復雜的算法無法滿足使用條件。而強化學習是從環(huán)境獲得數(shù)據(jù)后不斷訓練,從而獲得對環(huán)境的精確反應,是一種強學習行為,可以進行離線學習,得到穩(wěn)定的模型和參數(shù),從而滿足控制要求。鏟運機是鉸接車輛,其轉向是通過油缸伸縮改變其鉸接角來完成,當油缸動作開始轉向時,若鉸接角變化過大則需要車輛減速到合適且盡可能大的車速轉向,以便提升行駛效率,強化學習控制車速的目的是找到這一時刻的車速。利用專家經驗和強化學習方法,設計出符合地下鏟運機工況以及硬件設備要求的強化學習策略,再利用智能優(yōu)化算法離線仿真后得出完整的強化學習模型,進行實車試驗,驗證可行性和準確性。
強化學習與監(jiān)督學習不同,是從環(huán)境狀態(tài)獲得信息判斷執(zhí)行動作的學習,使執(zhí)行動作從環(huán)境中獲得的累積獎賞值最大,通過試錯來尋找最優(yōu)的動作行為。其學習過程是一個試錯與評價選擇的馬爾科夫決策過程,對問題進行建模,將其定義為一個四元組(S,A,p,f),其中,S為狀態(tài)集合,st∈S表示控制對象在t時刻的狀態(tài)量;A為控制對象可執(zhí)行動作集合,at∈A表示控制對象在t時刻的動作;p為獎賞函數(shù)集合,rt→p(st,at)表示控制對象狀態(tài)st執(zhí)行動作at獲得的即時獎勵量;f為概率在0~1的狀態(tài)轉移概率分布函數(shù),st+1→f(st,at) 表示控制對象在狀態(tài)st執(zhí)行動作at轉移到下一狀態(tài)st+1的概率[10,11]。
強化學習方法是學習一個行為策略π:S→A,使學習對象的動作能夠獲得最大獎賞。即當學習對象由狀態(tài)st變化到狀態(tài)st+1時,所有動作集合能夠獲得最大的獎賞值,作為一個行為策略[12-14]。獎賞函數(shù)形式為:
Rst=∑γtrtst(0<γt≤1,0 (1) 式中,γt是折扣因子,用來平衡未來獎賞對累積獎賞的影響。 根據(jù)式2目標函數(shù)可以計算出最優(yōu)值,確定最優(yōu)行為策略[15-19]: π=arg(Rst)max,st∈S (2) 根據(jù)控制系統(tǒng)硬件分析,受控制器和傳感器的硬件限制,無法對龐大的數(shù)據(jù)進行實時在線學習,且速度較快時,學習速度來不及會帶來車輛行駛風險,因此采用離線學習出強化學習模型,導入到車輛進行車速控制。學習算法邏輯如圖1所示。 訓練數(shù)據(jù)集主要是平時實車測試的數(shù)據(jù)包和隨機生成的一些數(shù)據(jù)包,測試數(shù)據(jù)集主要來源于平時實車測試表現(xiàn)良好的數(shù)據(jù)包和有經驗的司機師傅駕駛鏟運機時記錄的數(shù)據(jù)包。訓練數(shù)據(jù)數(shù)量和測試數(shù)據(jù)數(shù)量比例大致為2∶1。數(shù)據(jù)包的信息主要包含了車輛GPS得到的正東和正北方向的坐標、前車頭航向角、鉸接角角度值、車輛行駛速度以及當前時刻等。通過計算得出車輛坐標變換得到的橫向位置誤差、絕對航向角誤差、鉸接角變化量以及上一時刻車速。 根據(jù)一般的強化學習方法,將信息量全部考慮其中,考慮到實際問題,車輛在行駛過程中,下一時刻的狀態(tài)信息是未知的,只能通過預測或者經驗進行判斷,因此在已知當前時刻之前的狀態(tài)信息前提下,采用強化學習控制下一時刻的車速。初步模型中,記錄了之前10個時刻的狀態(tài)信息,將其作為控制因素考慮其中,進行簡單學習時發(fā)現(xiàn),鉸接角變化量和航向角偏差基本一致,且鉸接角變化量的角度變化很小,其絕對值基本小于3°,所以略去鉸接角變化量,確定模型具有其他三個狀態(tài)信息量,由于車速沒有方向,且無需考慮狀態(tài)量的方向,所有狀態(tài)量采用絕對值形式,模型見式3,其中n=10,1≤t<10: vf+1= (3) 式3中,vt+1為輸出的期望車速;vt為之前t時刻的車速,km/h;xt為之前t時刻橫向位置誤差絕對值,cm;θt為之前t時刻航向角誤差絕對值,°。 因設備配置水平和提高算法執(zhí)行效率,只采用上一時刻的狀態(tài)信息,即n=1,t=1,修改強化學習模型見式4。 (4) (5) 式5為最終的強化學習模型,對其進行離線學習訓練出系數(shù)參數(shù)即可。 離線訓練強化學習模型中的三個系數(shù)參數(shù),獲得最終完善的強化學習模型。強化學習一般分為基于值函數(shù)的方法和基于策略搜索的方法求解最優(yōu)參數(shù)。本文采用基于遺傳算法的策略搜索方法,遺傳算法其交叉、變異的算子具有打破局部最優(yōu)特點,且算法靈活多變,應用廣泛,適用絕大多數(shù)優(yōu)化求解問題。具體步驟為: 1)隨機生成5個個體和選取計算后的5個訓練集數(shù)據(jù)組成父代種群,即建立10行3列n頁的矩陣A,n為最短數(shù)據(jù)集的總元素組個數(shù); 2)對矩陣A每頁數(shù)據(jù)隨機配對隨機選擇交叉點進行交叉計算,生成子一代個體; 3)當前時刻元素對矩陣A每頁數(shù)據(jù)進行最優(yōu)策略選擇,選取最接近測試數(shù)據(jù)集的車速,并進行迭代計算搜索; 4)分析計算選取一組適合參數(shù)進行參數(shù)擬合校驗,再進行彎道和直道的加權平均,計算出合理的三個系數(shù)參數(shù)。 圖2 強化學習遺傳算法計算系數(shù)參數(shù)流程圖Fig.2 Flow chart of parameters calculated by reinforcement learning genetic algorithm 兩種控制算法都在直線行駛時的結果如圖3和圖4所示。兩種控制算法都先行駛一小段直線加速后再轉向行駛時的結果如圖5和圖6所示。 圖3 純模糊控制直線行駛結果數(shù)據(jù)圖Fig.3 Data graph of straight line driving results of pure fuzzy control 圖4 強化學習控制直線行駛結果數(shù)據(jù)圖Fig.4 Data graph of straight line driving results of reinforcement learning control 圖5 純模糊控制直線再轉向結果數(shù)據(jù)圖Fig.5 Result data graph of straight redirection of pure fuzzy control 圖6 強化學習控制直線再轉向結果數(shù)據(jù)圖Fig.6 Data graph of redirection results of reinforcement learning control 其中,由于鏟運機轉向是通過油缸伸縮來實現(xiàn),由于油缸存在摩擦力,且控制油缸轉向的液壓閥有死區(qū),所以只有當壓力達到一定值時,油缸才會動作,因此在圖中轉向控制量的絕對值達到4以上時,鉸接角才會開始變化。 實車控制最初采用的是純模糊控制,控制因素只有航向角誤差為主導,不考慮其他因素。實驗數(shù)據(jù)表明,車速控制效果不理想且有明顯頓挫感,車輛安全人員十分不適。使用離線學習的理想強化學習模型后,控制因素考慮了橫向位置誤差、航向角誤差以及上一時刻車速,試驗數(shù)據(jù)表明控制曲線較為理想,無明顯頓挫感,震蕩感不明顯。 分析發(fā)現(xiàn),直線試驗中,純模糊控制在加速后,行駛不是很穩(wěn)定,行駛6 s左右時,速度有向上的突變,且速度變化較大不平穩(wěn),而強化學習控制在加速后,行駛比較平穩(wěn),且速度變化微小,在0.2 km/h之內。 轉向試驗中,純模糊控制會有相應的減速效果,但是隨后偏差變化過快時,其控制有些失控,不再準確,速度會十分不穩(wěn)定,變化超出1 km/h,甚至開始加速超出原來直線行駛速度,會給拐彎造成風險,在行駛13 s時,人為干預將車輛急停,而強化學習控制車速,在加速直線前進后進入彎道前,會提前及時減速,且速度變化平穩(wěn),變化在0.2 km/h之內,隨后車速一直穩(wěn)定直到轉彎結束。算法優(yōu)劣對照見表1。 表1 純模糊控制和強化學習控制車速效果對比 1)針對鏟運機的自身車輛特性和工作工況,對比模糊控制和強化學習控制初步實驗,分析推導出的鏟運機車速強化學習控制模型,即控制車速和上一時刻車速、上一時刻航向角偏差、上一時刻位置偏差的關系,強化學習算法控制車速可以更好地提高控制效果和行駛平滑性。 2)強化學習算法控制可顯著減少車輛行駛過程中的急加、急減速現(xiàn)象,使車速更好地配合轉向操作,安全員的舒適度可得到顯著提高。在突發(fā)情況下,安全員能夠更快地接管車輛,提高了車輛無人駕駛的穩(wěn)定性、可靠性和安全性。 3)由于條件限制,強化學習模型本身化簡的相對比較簡單,之后還需使其更完善、更具體。例如,除了上一時刻的狀態(tài)信息,將前幾個時刻的狀態(tài)都考慮其中進行計算分析,還需繼續(xù)優(yōu)化控制算法的動態(tài)性能和控制指標,甚至具備邊行駛邊學習的在線學習能力,讓其更自動化、智能化,達到更高的目標。2 適用于鏟運機的強化學習算法
2.1 強化學習數(shù)據(jù)集
2.2 強化學習模型建立
2.3 強化學習過程
3 實車測試結果
4 結論