李康成,徐 野,哈 樂
(1.沈陽理工大學 自動化與電氣工程學院,沈陽 110159;2.北部戰(zhàn)區(qū)總醫(yī)院 醫(yī)學工程科,沈陽 110013)
虛擬駕駛仿真教學是推進現(xiàn)代信息技術與教 學深度融合的重要舉措[1],駕駛員的駕駛行為、駕車環(huán)境與行車安全密不可分,早期國內車輛保險公司沒有考慮駕駛行為與機動車輛保險費的關聯(lián),投保人的車險保費設定存在嚴重不合理現(xiàn)象[2]。應該從駕駛行為的從車因子和從人因子衡量被保險人的風險水平,確定車險費率,但是上述因子并不能很好地反映駕駛人的風險水平[3],“從人”因素記錄的多為靜態(tài)駕駛數(shù)據(jù),比如車主的性別、年齡等[4],不能代表車主的實際駕車習慣,無法與實際車輛駕駛風險合理匹配。國外研究人員通過安裝車載診斷硬件收集駕駛員駕駛車輛過程中的行為數(shù)據(jù)[5],包括駕駛員的發(fā)動機轉數(shù)、節(jié)氣門位置、發(fā)動機負載等數(shù)據(jù),并對用戶駕駛行為數(shù)據(jù)進行分析與處理,從而識別從事不安全駕駛行為的駕駛員。目前該種方式在國內顯然不具備可行性。
強化學習是機器學習的范式和方法論之一,用于描述和解決智能體在與環(huán)境的交互過程中通過學習策略達成回報最大化或實現(xiàn)特定目標的問題[6],深度學習(Deep Learning,DL)的基本思想是通過多層的網絡結構和非線性變換,組合低層特征,形成抽象的、易于區(qū)分的高層表示,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示[7]。谷歌的人工智能研究團隊DeepMind將具有感知能力的深度網絡和具有決策能力的強化學習結合,即深度強化學習(Deep Reinforcement Learning,DRL)[8]。DRL廣泛應用于機器人[9]、象棋游戲[10]、斗地主[11]、自動駕駛[12]等諸多領域。
針對訓練環(huán)境無法與現(xiàn)實駕駛環(huán)境規(guī)范匹配問題,本文重點研究如何構建基于強化學習算法、面向真實道路行車規(guī)則的駕駛行為仿真訓練平臺UBI_Robot-v0。該方法通過從模擬駕駛環(huán)境交互數(shù)據(jù)中實現(xiàn)狀態(tài)到動作決策的映射規(guī)律;模擬駕駛環(huán)境設計上引入高德人地關系大數(shù)據(jù),實現(xiàn)面向真實道路駕駛行為訓練;針對駕駛行為智能體與環(huán)境的交互特點進行馬爾科夫決策過程(Markov Decision Process,MDP)設計。
駕駛模式受駕駛員、車輛、天氣、時間、速度限制、道路類型、街道功能、路口密度和交通狀況等因素的影響[13]。對評判駕駛行為智能體而言,統(tǒng)計如表1的駕駛行為屬性信息,記錄車輛駕駛過程關鍵風險因素,可較好描述駕駛模式。
表1 駕駛行為屬性描述
駕駛仿真參考了以下運動學原理。
式中:F為汽車牽引力;Ff為汽車與路面的摩擦力;mc為車身質量;Nc為支持力;μc為動摩擦因數(shù);g為重力加速度;ρ、v、a為t時刻的路程、速度、加速度;sgn()為符號函數(shù),作用是限制車在垂直方向上運動;v0為駕駛的初速度。不同類型車面臨不同的駕駛屬性,如車身質量、驅動力,為統(tǒng)一描述,駕駛屬性把前進方向加速度a作為最終決策變量。
駕車問題中影響駕駛員駕駛行為的關鍵外部因素是變化的道路狀況。不同路段的道路等級和道路類型限速標準不同,當車主駕駛距離越長,風險暴露越大,事故發(fā)生概率越大[14],需挑選影響駕駛安全程度較大的駕駛行為因子作為評價駕駛行為的指標[15],道路環(huán)境屬性描述見表2。
表2 道路環(huán)境屬性描述
1.3.1 道路環(huán)境生成
高德開發(fā)平臺具有國內領先的人地關系大數(shù)據(jù)平臺,數(shù)據(jù)采集能力覆蓋國內300余城市,含有超650 km的導航道路數(shù)據(jù),超400種道路屬性,構建的道路狀況穩(wěn)定可靠。UBI_Robot-v0高德數(shù)據(jù)處理模型如圖1所示。
圖1 高德數(shù)據(jù)處理模型圖
模型從全國主要城市駕車地點數(shù)據(jù)集中設定此次駕駛任務的起點和終點,關鍵字搜索返回起點和終點的經緯度及所在區(qū)(縣)名稱與郵編信息;信息經高德駕車路徑規(guī)劃獲取原始導航信息集λ(λ1,λ2,…,λT),λ含T條成串的道路名稱、地區(qū)信息集D,路徑規(guī)劃的路線總長為L(l1,l2,…,lt),t≤T,其中l(wèi)t為第t次導航道路群的總路長。通過數(shù)據(jù)解析,生成表2的道路環(huán)境屬性,該解析處理過程如下。
(1)語句字段識別。高德導航有規(guī)范的導航主要、輔助動作語句字段,兩種字段把導航信息分割成三類或三類以下的分路提示字段U、有效路字段R、無效信息字段Q,其中U={U1,U2},U1為標點符號字段,U2為導航動作語句字段。
(2)道路屬性生成。將所有T條導航有效路字段,即?Rt,0<t≤T,經U1字段對語句進行分塊,再通過U2字段對導航道路群lt進行字符串分割、拼接,生成的t條駕車導航路線的路段為
式中n、m、r為對應第l1、l2、lt道路群分割出來的路段數(shù)。此時表征所有路段終點e向量為
由于路段間存在連接關系,即后一個路段的起點為上一個路段的終點,s和e可表示為
式中:s(1)1表示L或R(1)1的起點坐標;·表示第t-1條道路群路段數(shù);其路段分界隨路段信息Rt的個數(shù)不同而變化,但導航道路群長度之和l1+l2+…+lt計算的總路長不變,這樣能確保仿真的道路都有其路長屬性。
對處于第t條駕車導航路線的地區(qū)信息群Dt,通過興趣點搜索可提升地區(qū)識別的精度,同時方便辨別駕駛地天氣。
(3)道路環(huán)境分類。現(xiàn)實的道路類型繁雜,有必要進行量化分析,本文歸結為9大類,其限速標準參考《道路交通安全法》,如表3所示。
表3 道路類型屬性
道路天氣查詢流程如圖2所示。在不考慮極端天氣的情況下,天氣類型歸結為晴天類、雨天類、雪天類、霧天類四大類。
圖2 道路天氣查詢流程圖
將上述道路環(huán)境分類結果寫成一個獨熱(one-hot)編碼向量,以便更好區(qū)分不同天氣狀況、道路環(huán)境狀態(tài)的描述。
1.3.2 道路擁堵規(guī)則
引入路徑規(guī)劃路線上高德?lián)矶骂A警信息,并且定時更新?lián)矶虑闆rJ,同時定義擁堵探測距離返回值d,利于智能體學習擁堵狀況而提前做出反應?,F(xiàn)有T條導航信息,則第t條導航路線上的第j處擁堵點擁堵向量為
若該路線有擁堵,h(j)t為擁堵的長度值,若該路線無擁堵則為暢通長度值。
當車處于前方最近擁堵點1 000 m范圍內時,此時的擁堵返回值是基于1 000 m探測距離的百分比。設p為當前駕車位置,則有
式中min(J(j)t)為對所有擁堵點起始坐標升序排序獲得離車前方最近擁堵的s(j)t坐標及其索引j。當d(j)=-1時表示車前方1 000 m內無擁堵的情形;d(j)=-2時表示車輛與擁堵點碰撞的情形。對于駕車路線中車后方的擁堵點,可利用與實時p的關系及時刪除并更新J。
為使用較為統(tǒng)一的方法將強化學習方法應用到不同的領域,MDP過程可將問題進一步抽象為狀態(tài)空間、動作空間、獎賞函數(shù)、狀態(tài)轉移矩陣,即MDP通常為一個四元組,其形式為〈S,A,B,P〉,其中S為狀態(tài)集合,A為有限的動作集合,獎賞值函數(shù)B:S×A×S→B為狀態(tài)-動作好壞的程度,P:S×B×S×A→[0,1]為狀態(tài)轉移概率,即某一狀態(tài)執(zhí)行某一動作后到達另一狀態(tài)的概率。本文面向無模型的強化學習方法,UBI_Robot-v0的MDP設計不涉及狀態(tài)轉移概率部分。
2.1.1 狀態(tài)描述
為模擬智能體在道路上行駛,選取影響道路駕駛行為的主要因素并包含在狀態(tài)集合中。對于n種主要行車狀態(tài),其狀態(tài)描述為
式中si(i=1,2,…,n)表示第i位駕車狀態(tài)的歸一化離散值。
UBI_Robot-v0環(huán)境中智能體執(zhí)行相應的駕駛動作,更新狀態(tài)參數(shù),環(huán)境返還智能體更新好的觀察狀態(tài)組,狀態(tài)處理流程如圖3所示。
圖3 狀態(tài)處理流程圖
每一個控制周期都會返回智能體觀測到的環(huán)境信息,本文選取觀測的駕駛環(huán)境信息和車輛信息作為狀態(tài)的輸入,環(huán)境信息選擇解析好的高德數(shù)據(jù)駕駛地天氣、駕駛路段坐標(s,e)和相應道路等級的one-hot向量及日夜限速(22時至次日凌晨5時為夜間駕駛)、基于擁堵起點坐標與當前位置的擁堵探測返回值d;車輛信息借助運動學方程式(1)和(2)更新,包括啟動時間ts、駕車所處的時間段tn或ts+t、當前駕車位置p、車速v、累計駕駛時長t、疲勞時長tf;上述構成駕駛過程中的觀察狀態(tài)組S,智能體通過深度學習網絡對狀態(tài)S進行好壞程度感知。由于組內多個特征屬性量綱不一,梯度下降迭代更新模型參數(shù)時采用數(shù)據(jù)歸一化處理,在一定程度上增加了模型的學習能力,減少了訓練時間。
2.1.2 狀態(tài)交互
狀態(tài)交互與判別為智能體提供合理的環(huán)境信息,利于智能體決策。
駕駛過程中的擁堵返回值判別和疲勞駕駛判別過程如圖4、圖5所示。
圖4 擁堵返回值判別
圖5 疲勞駕駛判別
由圖4可知,根據(jù)擁堵返回值可判別無擁堵、1 000 m擁堵探測范圍內、碰撞三種情況。圖5為疲勞駕駛判別,條件為單次連續(xù)計時超過交通運輸行業(yè)規(guī)定的4 h且休息時間少于20 min或累計時間超過8 h。
UBI_Robot-v0環(huán)境的速度判別分為限速判別和超速判別兩大類;限速值如表3道路類型屬性所示,定義其9種道路類型最高最低限速矩陣為C1、C2,具體為
天氣狀態(tài)為晴天類、雨天類、雪天類、霧天類情況下對應的道路等級/類型折扣加權限速矩陣定義為
車輛在夜間行駛限速值不得超過日間限速值的80%,故日間、夜間行駛的限速折扣加權為離散值k(取1或0.8)。
因此考慮道路類型/等級、天氣條件、駕駛時間段的最高折扣限速矩陣為
最低折扣限速矩陣為
超速判別過程如圖6所示。
圖6 超速判別
采用式(14)、式(15)計算當前路段折扣限速,與當前車速進行對比:若當前車速處于最高限速的90%以內,屬于駕車的正常速度范圍;若處于最高限速90%以上且未超速,屬于平穩(wěn)駕車的最優(yōu)速度范圍;若超速,根據(jù)超速程度百分比分為四個等級,表示不同的超速危險級別。
智能體收集車輛駕駛過程中觀察狀態(tài)組S,提交給神經元算法進行評估,算法評估并優(yōu)化學習經驗,給出理想的駕駛動作;駕駛動作分為輕加速、急加速、輕減速、急減速、勻速。以一輛正常狀態(tài)下的汽車作為參考,由道路運輸行業(yè)相關經驗,設定晴天條件下,輕加速動作、急加速動作、輕減速、急減速和勻速動作下的加速度參數(shù)值[16]為
A=[1.11 3.09 -1.11 -3.09 0](16)
不同天氣條件下采取同一個駕駛動作的剎車滑行距離或者踩油門加速距離不同,本文中晴天類、雨天類、雪天類、霧天類的加速度折扣因子為
駕駛員平穩(wěn)駕駛動作的加速度集合應為
上式中行向量γT1,γT2,γT3,γT4分別為晴天類、雨天類、雪天類、霧天類天氣條件下的4種駕駛動作對應的折扣加速度。
智能體會感知來自駕駛環(huán)境的獎賞信號,其目標是根據(jù)自身策略最大化其獎賞。本文設計的獎賞函數(shù)為
式中:rewardt為在t時刻的累積獎賞反饋值;為某個狀態(tài)交互判別的具體獎賞值;集合M為t時刻所有觸發(fā)的狀態(tài)交互判別類型對應的獎賞值,其具體情況如圖7所示。
圖7 駕駛狀態(tài)與獎勵
以真實路網仿真、駕駛速度與加速度關系、歸一化位置軌跡、擁堵探測、折扣限速判別以及超速軌跡生成、駕駛控制效率指標對交互規(guī)則進行測試,最后從強化學習智能體駕車平均獎勵分析駕駛行為訓練環(huán)境的有效性。
環(huán)境運行日志如圖8所示,駕車仿真路網信息如圖9所示。為方便描述,已對部分狀態(tài)進行編號,例如圖中道路類型序號3、4、5、7表示城市大路、城市小路、環(huán)路、橋梁;天氣序號0表示晴天;文化路向西的擁堵起點值為9.11,表示在路程總長的91.1%處出現(xiàn)擁堵;日間/夜間序號1表示駕車時間段為日間。
圖8 環(huán)境運行日志
圖9 高德駕車路網信息
該仿真實驗中,環(huán)境生成一條起點為“沈陽理工大學北門”、終點為“盛京醫(yī)院南湖院區(qū)”的短途路程,圖中起點為匯泉東路,終點為三好街36號,路程總長12 233 m,路段屬性包括路長、道路限速以及折扣限速。駕駛行為智能體在環(huán)境內駕車運行,總仿真時間為到達終點的時間。
圖10為駕車智能體的交互過程,該雙軸圖描述了智能體駕車速度與加速度、歸一化位置軌跡隨駕車運行時間的交互情況。
圖10 駕車智能體的交互過程
由圖10可知,車速關于運行時間的變化率為其駕車方向上的加速度,兩者作用方向相同時,歸一化位置軌跡曲線斜率變陡,表示離終點越近,反之亦然。圖10(a)表示晴天類路網下折扣加速度向量為γ1T的駕駛動作折扣加速度值,可實現(xiàn)車輛的加速、減速、勻速,駕駛動作作用的大小、方向及時長可遍歷駕駛動作集合,為智能體的決策變量;由圖10(b)可見,該智能體駕駛全程未停車,故有tf=t,歸一化位置最高值為1,表示到達此回合設定的終點。
針對擁堵路段的擁堵位置進行碰撞測試,結果如圖11所示。圖11中未進入擁堵1 000 m范圍內時,擁堵返回值d為-1;進入1 000 m擁堵探測距離時,返回值d∈(0,1];返回值d為-2時,表示發(fā)生了車輛與擁堵點的碰撞,駕駛結束。
圖11 環(huán)境探測擁堵返回值
UBI_Robot-v0路網下折扣限速判別曲線、超速軌跡生成曲線如圖12所示。
圖12 速度曲線
由圖12可知,UBI_Robot-v0駕車過程中能生成實時路段、實時地點、實時駕車環(huán)境的動態(tài)超速識別曲線,駕駛過程中最高、最低、最優(yōu)速度曲線隨道路環(huán)境、所處天氣、駕駛時間段的不同而動態(tài)調整。圖12中駕駛智能體為獲得更平穩(wěn)的駕駛獎勵,其當前車速盡可能地擬合最優(yōu)駕車速度;在未極端超速的前提下,采取良好的駕駛動作以快速地通過目的點。
圖13是環(huán)境駕車控制效率散點圖。
駕駛控制效率指標Z是指經智能體駕駛動作后產生小于最高折扣限速的有效控制比,定義為
即有效控制比越接近1,控制效率越好。圖1 3中駕駛智能體在面對環(huán)境道路屬性、天氣狀態(tài)及駕駛時間段轉換時有效控制比接近于1,控制效率較好。
圖13 駕車控制效率
為驗證UBI_Robot-v0環(huán)境的適應性與穩(wěn)定性,采取強化學習A3C算法,在不同的隨機種子干擾條件下,對此駕駛環(huán)境的獎勵進行得分測試,每迭代100回合計算一次平均獎勵,得到平均獎勵學習曲線,如圖14所示。
圖14 A3C平均獎勵學習曲線
由圖14可見,迭代訓練前期發(fā)生微小震蕩,但隨著訓練輪數(shù)的提高,平均獎勵呈上升趨勢并最終趨于收斂;在不同隨機種子下平均獎勵曲線保持良好的魯棒性和穩(wěn)定性,說明智能體學會如何提高駕駛的獎勵分值。
運行于真實道路仿真環(huán)境的用戶駕駛行為智能體訓練有助于駕駛行為智能體進行學習,在滿足提升駕車獎勵的同時,學會如何在復雜環(huán)境下更安全更快速地到達目的點。UBI_Robot-v0訓練環(huán)境可動態(tài)仿真車主駕車環(huán)境,執(zhí)行更為全面、多風險維度結合下的駕駛行為,為駕駛智能體的算法分析與訓練研究提供條件;通過對復雜環(huán)境下駕駛行為的仿真分析,不僅有利于駕駛員駕駛習慣的改善、無人自主駕駛策略的研究,同時可嘗試車險計價的創(chuàng)新。