張良力 祝 賀 馬天宇
(武漢科技大學信息科學與工程學院 武漢 430081)
機動車駕駛行為可描述為1個復雜的動態(tài)控制系統(tǒng),其控制目標是使駕駛?cè)俗陨硭谲囕v達到或維系與其他車輛或道路某地點之間的時空關(guān)系。由于道路交通環(huán)境、周邊其他車輛運行情況、機動車駕駛?cè)肆曅浴④囕v性能等方面均具有不確定性[1],包含擾動項的輸入信息在類型組成、數(shù)據(jù)結(jié)構(gòu)、特征提取、閾值整定等隨機性較強,因此從控制系統(tǒng)角度對駕駛行為開展建模研究難度較大。
研究駕駛行為的目的在于狀態(tài)分析、建模、預測[2]。如Yu等[3]根據(jù)實時氣象、交通信息以及道路地理特征等數(shù)據(jù),利用貝葉斯推理方法建立了美國科羅拉多州I-70 公路年度交通事故模型。Karaduman等[4]研究多車之間相互作用下的冒險性超車行為,建模對象車輛與前后車輛之間位置關(guān)系采用攝像機拍攝圖片方式獲取,借助貝葉斯網(wǎng)絡對其光流邊緣進行分類提取。
從概率分析與數(shù)理統(tǒng)計的角度對駕駛系統(tǒng)內(nèi)外各種信息之間的關(guān)聯(lián)進行分析,即使信息類型不齊全,或已獲取的信息之間耦合關(guān)系不明,考慮使用可獲取信息類型之間的概率映射關(guān)系及其轉(zhuǎn)移規(guī)律,利用最大似然估計和大量的試驗數(shù)據(jù)樣本推動因果網(wǎng)絡模型內(nèi)部運算,亦可達到駕駛行為建模與狀態(tài)分析目的[5]。筆者在本文將介紹駕駛行為貝葉斯網(wǎng)絡建模及其簇樹推理算法,結(jié)合具體算例探討駕駛行為模型在駕駛行為分析與預測方面的應用情況。
貝葉斯網(wǎng)絡是1種不確定因果關(guān)聯(lián)模型,利用貝葉斯網(wǎng)絡構(gòu)建駕駛行為模型不苛求觀測駕駛數(shù)據(jù)和駕駛行為狀態(tài)之間必須具有確定的、完整的傳遞函數(shù)[5];直接以概率網(wǎng)絡形式連接相關(guān)狀態(tài)節(jié)點,不僅有利于模型內(nèi)部各駕駛行為研究對象的直觀表達,還可為后續(xù)網(wǎng)狀結(jié)構(gòu)樹形轉(zhuǎn)化及其概率推演提供便利[6]。在建立駕駛行為模型之前,需對大量的觀測樣本數(shù)據(jù)進行分析歸類。
駕駛?cè)嗽跓o交叉口路段內(nèi)實施的駕駛行為狀態(tài)構(gòu)成的因果關(guān)聯(lián)網(wǎng)絡見圖1。在此類型道路上,駕駛?cè)顺?刂栖囕v交替實施換道、跟車2種行為狀態(tài);駕駛?cè)耸?、腳是操控車輛運行的主體,與其接觸的車輛機構(gòu)包括轉(zhuǎn)向燈開關(guān)、油門踏板、離合器踏板、腳剎踏板、手動檔位等均可作為推理車輛行為狀態(tài)的觀測變量。依照常規(guī)駕車操作順序,5種駕駛動作可與上述2種行為狀態(tài)共同形成因果網(wǎng)絡。
圖1 駕駛行為狀態(tài)節(jié)點因果關(guān)聯(lián)網(wǎng)絡Fig.1 Causal network of driver’s behavior nodes
圖1所示駕駛行為貝葉斯網(wǎng)絡中,每一確定的駕駛動作或車輛狀態(tài)節(jié)點均具有若干個離散狀態(tài)(以二元狀態(tài)類型居多),譬如“腳剎踩踏”動作具有“已踩踏”和“未踩踏”2種狀態(tài)類型,車輛行為也有“已實施”、“未實施”2種狀態(tài)類型,各節(jié)點之間使用概率進行連接,若車輛行為狀態(tài)發(fā)生變化,則當前概率值將作為證據(jù)輸入引起其他關(guān)聯(lián)概率值更新,此過程可視作駕駛行為的溯因過程,其逆向推導過程即為利用貝葉斯網(wǎng)絡進行駕駛行為預測的過程。當駕駛行為類型和影響駕駛行為的輸入量較多時,概率網(wǎng)絡節(jié)點數(shù)量會呈級數(shù)式增加,從而影響辨識模型解算的實時性。但當網(wǎng)絡結(jié)構(gòu)確定后,可利用其學習機制自主優(yōu)化模型參數(shù)[6-7]。
對貝葉斯網(wǎng)絡內(nèi)某節(jié)點進行證據(jù)輸入,即改變變量設置值后,網(wǎng)絡內(nèi)存在部分節(jié)點的狀態(tài)概率值在更新,但并非所有節(jié)點[8]。表明新證據(jù)的出現(xiàn)可能只影響到網(wǎng)絡內(nèi)部分節(jié)點的狀態(tài)變化。利用駕駛行為貝葉斯網(wǎng)絡模型進行行為預測時,應從復雜的網(wǎng)絡結(jié)構(gòu)中提取與駕駛行為相關(guān)聯(lián)的節(jié)點并構(gòu)成樹狀結(jié)構(gòu),從而降低網(wǎng)絡復雜度,提高系統(tǒng)計算處理速度[9],可利用基于簇樹的貝葉斯網(wǎng)絡推理算法實現(xiàn)駕駛行為預測。
從圖1中提取與換道駕駛行為相關(guān)的節(jié)點,簡化節(jié)點圖示,定義A為“車輛換道行為”,B為“轉(zhuǎn)向燈開啟”,C為“油門踩踏”,D為“腳剎踩踏”,E為“離合器踩踏”,F(xiàn)為“手動檔位切換”,重繪圖1中的換道駕駛行為部分,可得如圖2(a)所示貝葉斯網(wǎng)絡結(jié)構(gòu),該網(wǎng)絡拓撲已是有向無環(huán)圖(directed acyclic graph,DAG),但尚未形成簇樹結(jié)構(gòu)[10]。按簇節(jié)點特征重新構(gòu)建貝葉斯網(wǎng)絡,可得具有簇節(jié)點及其雙親節(jié)點的貝葉斯網(wǎng)絡簇樹結(jié)構(gòu),如圖2(b)所示。
圖2 駕駛行為貝葉斯網(wǎng)絡DAG 及其簇樹結(jié)構(gòu)Fig.2 Bayesian network DAG of driver’s behavior &cluster tree
圖2(b)展示了1個簇樹的明顯特征:它包含了簇節(jié)點以及分離點,相對于每個變量V∈{A,B,C,D,E,F(xiàn)},簇樹中至少存在1個簇節(jié)點包含了V及其雙親。例如變量B“轉(zhuǎn)向燈開啟”駕駛動作,它包含在簇節(jié)點BA中,該簇節(jié)點包含B和它的雙親。簇節(jié)點形成后將被放到具有分離節(jié)點的樹中,每個分離點包含其鄰接點共有的變量[6]。
在推理計算之前,簇節(jié)點和分離點都應分配概率分布量化表(以下簡稱“表”)。表的大小對應于所有變量的狀態(tài)組合。若所有變量為二元的,則單個簇節(jié)點表具有4項概率數(shù)據(jù),對應每個分離點有2項概率數(shù)據(jù)[11]。表生成完畢后,可將表內(nèi)每個元素值初始化為1。
對于變量V,選出1個包含V及其雙親的簇節(jié)點并使兩者相乘;譬如圖2中簇樹的表將生成為:BA=P(B|A)P(A)、CA=P(C|A),DC=P(D|C),EC=P(E|C),F(xiàn)E=P(F|E),其中A,B分配給BA,C分配給CA,D分配給DC,E分配給EC,F(xiàn)分配給FE。簇節(jié)點表的乘積等價于貝葉斯網(wǎng)絡的聯(lián)合分布概率,若采用P(Ω)表示變量集合Ω聯(lián)合分布,則P(Ω)的計算公式為
式中:Ci為簇節(jié)點的表;Sj為分離節(jié)點的表。
由于分離表在初始化時表內(nèi)只含1,因此作為除數(shù)時分離表對結(jié)果無影響。當信息數(shù)據(jù)通過簇樹傳遞時,所有簇節(jié)點表的乘積除以所有分離點表的乘積將保持不變,從而保證整個簇樹對于P(Ω)具有可信度。變量的概率分布可以從任何包含該變量的簇節(jié)點和分離點使用邊緣化方法計算得出,公式為
式中:V為計算概率分布的變量對象;T為包含V的簇點或分離點表;T/V為表T中含有子集V的項[6]。
設駕駛行為貝葉斯網(wǎng)絡包含M個變量V1,V2,…,VM。使用2 類節(jié)點來表示上述變量,一類表示車輛行為狀態(tài),此類節(jié)點具有雙向性,即節(jié)點既影響其它節(jié)點,又被其他節(jié)點所影響;另一類表示駕駛?cè)藙幼鳡顟B(tài),此類節(jié)點僅具有單向性,即只被其它節(jié)點影響,不影響其它節(jié)點。
用Parents(Vi)表示網(wǎng)絡內(nèi)Vi(i=1,2,…,M)的父節(jié)點,每個節(jié)點Vi都具有1個條件概率分布φi,說明條件概率分布P(Vi|Parents(Vi)),對于任意γ∈Domin(Parents(Vi)),在Domin(Vi)上定義有1 個概率分布。使用φi表示從Domin(Vi∪Parents(Vi))到實數(shù)域的函數(shù)。在離散狀態(tài)下,φi通常以表格數(shù)據(jù)形式存在,數(shù)據(jù)對應于Domin(Vi∪Parents(Vi))每種情況出現(xiàn)的概率。駕駛行為預測算法流程如下:首先進行駕駛行為簇節(jié)點表進行初始化,對每個簇節(jié)點的Ci賦值φii,該簇包含了Vi∪Parents(Vi),使用Φ(Ci)替代簇節(jié)點Ci條件概率集合;然后對每個簇執(zhí)行局部變量運算,當簇Ci接收到所有相鄰簇信息后,準備傳遞信息ηi→j到鄰近的簇Cj;最后當每個簇節(jié)點都完成向相鄰簇節(jié)點傳輸信息后結(jié)束整個運算循環(huán)[6]。
某駕駛?cè)笋{車時,會根據(jù)自身車輛轉(zhuǎn)彎需求和周邊車輛擁堵情況,適時采取跟車或換道操縱車輛[12]。根據(jù)駕駛操作流程分析可知,無論是跟車或換道,駕駛?cè)司赡懿忍び烷T。比如,在跟車駕駛時,駕駛?cè)说母拘枨笫潜3肿陨碥囕v與前導車輛之間的安全距離,但不能使安全距離過大,妨礙道路交通流量,因此駕駛?cè)说牟僮饕圆忍つ_剎踏板和油門踏板為主;而在換道駕駛時,駕駛?cè)藶檫_到超越前導車輛并且防止后隨車輛追尾,一般采用踩踏油門使車輛駕駛前行;上述分析表明踩踏油門動作與換道、跟車行為狀態(tài)之間概率分布均衡。另一方面,當駕駛?cè)诵钃Q道時會開啟轉(zhuǎn)向燈,但開啟轉(zhuǎn)向燈不代表駕駛?cè)藢嵤Q道行為,也有可能因誤操作或上次換道后未及復位轉(zhuǎn)向燈開關(guān)引起,故轉(zhuǎn)向燈開閉動作與換道行為關(guān)聯(lián)緊密。
本算例圍繞“換道”這一具有風險性的行為狀態(tài),選取“油門踩踏”和“轉(zhuǎn)向燈開閉”這2種與“換道行為”關(guān)聯(lián)特征分明的節(jié)點變量作為主要對象,對某時刻駕駛?cè)耸欠駥嵤僮鬟M行狀態(tài)分析與預測。在本算例中,車載智能系統(tǒng)已根據(jù)歷史數(shù)據(jù)對駕駛?cè)说母?、換道行為以及油門踩踏、轉(zhuǎn)向燈開閉動作進行了概率主觀估計,并以此建立駕駛行為狀態(tài)分析貝葉斯網(wǎng)絡模型。
設駕駛?cè)笋{車時,車載智能系統(tǒng)對車輛狀態(tài)與駕駛動作信息的獲取是離散的。通過對歷史數(shù)據(jù)的統(tǒng)計,駕駛過程中的變量以及可能的狀態(tài)如下:①跟車駕駛:已實施或未實施;②油門踏板:已踩踏或未踩踏;③換道駕駛:已實施或未實施;④轉(zhuǎn)向燈:已開啟或未開啟。上述變量均可視作二元狀態(tài)變量,在因果方面可能發(fā)生以下關(guān)聯(lián):①駕駛?cè)酥饔^上的跟車、換道行為都是促使其是否踩下油門的原因;②駕駛?cè)说膿Q道行為是轉(zhuǎn)向燈是否開啟的原因。根據(jù)3.1節(jié)分析結(jié)論,使用貝葉斯網(wǎng)絡表示上述關(guān)聯(lián),可得如圖3(a)所示駕駛行為網(wǎng)絡拓撲結(jié)構(gòu)。在某條件下,駕駛?cè)耸欠癫认掠烷T踏板的簇樹如圖3(b)所示,表明“換道駕駛”的概率分布在分離點中。
圖3 換道駕駛行為網(wǎng)絡拓撲結(jié)構(gòu)及其簇樹Fig 3 Bayesian network DAG of driver’s lane-changing behavior &cluster tree
圖3(a)中所示網(wǎng)絡結(jié)構(gòu)模型表達了駕駛行為與駕駛動作之間的依賴性,因為油門踏板的狀態(tài)依賴于駕駛?cè)说母囆袨楹蛽Q道行為,而轉(zhuǎn)向燈的狀態(tài)主要依賴于換道行為。假設根據(jù)車載智能系統(tǒng)統(tǒng)計的歷史數(shù)據(jù),各變量之間因果發(fā)生的概率值見表1。
表1包括了所有變量組合狀態(tài),每個變量可從2種狀態(tài)中選擇1項作為輸入值,因此表內(nèi)狀態(tài)組合具有2n種(n為變量個數(shù),此例n等于4)。利用該表可直接推算目標概率。譬如求解“油門踏板=未踩踏”的概率,將表1內(nèi)最右的乘積欄內(nèi)所有數(shù)值按“油門踏板=未踩踏”的行求和。若在油門未踩踏的情況下求解“轉(zhuǎn)向燈=已開啟”的概率,則首先對同時滿足“油門踏板=未踩踏”和“轉(zhuǎn)向燈=已開啟”條件對應的乘積欄數(shù)值求和,然后除以“油門踏板=未踩踏”乘積之和即可得到結(jié)果。
表1 駕駛行為聯(lián)合概率分布Tab.1 Joint probability distributions of driver’s behaviors
根據(jù)初始化要求,將每個相關(guān)聯(lián)的駕駛行為和駕駛動作簇點表和分離點表中的每個元素初始化為1。根據(jù)簇樹結(jié)構(gòu),將“跟車駕駛”分配給φ(換道駕駛,跟車駕駛,油門踏板),因為該節(jié)點把“跟車駕駛”節(jié)點作為成員惟一的簇點;“油門踩踏”也分配給同一簇節(jié)點,因為只有該簇包含“油門踩踏”及其雙親,因此初始的φ(換道駕駛,跟車駕駛,油門踏板)=P(跟車駕駛)P(油門踩踏|換道駕駛,跟車駕駛)。同理,“轉(zhuǎn)向燈”只能指派給φ(換道駕駛,轉(zhuǎn)向燈),初始的φ(換道駕駛,轉(zhuǎn)向燈)=P(換道駕駛)P(轉(zhuǎn)向燈|換道駕駛)。初始化后的“換道駕駛”關(guān)聯(lián)簇節(jié)點和分離點值見表2、表3。
表2 初始化完畢后的φ(換道駕駛,跟車駕駛,油門踏板)值Tab.2 Cluster tree nodes products ofφ(lane-changing,car-following,throttle-stepping)after initialization
初始化完畢后,根據(jù)簇樹結(jié)構(gòu)傳遞消息以更新各節(jié)點表。當消息從φ(換道駕駛,跟車駕駛,油門踏板)傳遞至φ(換道駕駛,轉(zhuǎn)向燈)時,新的分離點表由邊緣化φ(換道駕駛,跟車駕駛,油門踏板)求得。將φ(換道駕駛,跟車駕駛,油門踏板)中與分離點一致的每個值進行求和,可得
表3 初始化完畢后的φ(換道駕駛,轉(zhuǎn)向燈)值Tab.3 Cluster tree nodes products ofφ(lane-changing,lighting)after initialization
和值為1,表明分離點表未變,因此φ(換道駕駛,轉(zhuǎn)向燈)不必更新。而消息從φ(換道駕駛,轉(zhuǎn)向燈)傳遞至φ(換道駕駛,跟車駕駛,油門踏板),同樣對分離點一致的每個值進行求和,可得
用求得的新分離點表元素值0.68和0.32分別更新原有簇節(jié)點和分離點表(即表2)內(nèi)對應項,得到更新后的簇節(jié)點和分離點表,見表4。
表4 更新后的簇節(jié)點和分離點表Tab.4 Cluster tree nodes and separated nodes products after update
每個變量的概率分布可通過邊緣化與其相關(guān)的簇求得:P(油門踏板)=(0.321 7,0.242 7)+(0.109 8,0.005 8)+(0.042 5,0.223 1)+(0.026 7,0.027 7)=(0.500 7,0.499 3)。其 中0.500 7表示油門踏板在換道駕駛過程中已踩踏的概率,而0.499 3 表示未踩踏的概率。同理,P(轉(zhuǎn)向燈)=(0.321 7,0.109 8)+(0.042 5,0.026 7)+(0.242 7,0.005 8)+(0.223 1,0.027 7)=(0.83,0.17)。其中:0.83 為換道駕駛過程中轉(zhuǎn)向燈開啟的概率;0.17為轉(zhuǎn)向燈關(guān)閉的概率。此次更新表明在先驗統(tǒng)計數(shù)據(jù)及其發(fā)生概率前提下,油門踏板是否被踩踏的概率很接近,而轉(zhuǎn)向燈被開啟的概率較大。當具有安全預警功能的車載智能系統(tǒng)感知駕駛?cè)说鸟{車行為與相應操作動作發(fā)生概率一致時,表明駕駛?cè)颂幱诎踩{駛狀態(tài)中,系統(tǒng)不發(fā)出預警信息;當駕駛?cè)瞬僮鲃幼髋c預測概率相差較大時,表明駕駛?cè)笋{駛行為反常,車載智能系統(tǒng)可適時地給出預警信息。
筆者研究了基于貝葉斯網(wǎng)絡的駕駛行為狀態(tài)分析建模方法,根據(jù)實際駕駛過程中車輛行駛狀態(tài)與駕駛?cè)藙幼髁鞒?,引出駕駛行為貝葉斯網(wǎng)絡拓撲結(jié)構(gòu)及其概率演化過程;針對網(wǎng)絡復雜程度,使用基于簇樹的貝葉斯網(wǎng)絡推理算法將駕駛行為模型應用于預測推算,其關(guān)鍵步驟在于對已建立的網(wǎng)絡結(jié)構(gòu)進行樹形轉(zhuǎn)化,并對樹內(nèi)節(jié)點表的生成與更新。通過駕駛行為建模及其預測應用,達到獲知駕駛?cè)笋{車過程中的行為類型以及評估當前駕駛環(huán)境安全態(tài)勢的目的。
目前,駕駛行為狀態(tài)分析仍在離線條件下固定網(wǎng)絡結(jié)構(gòu)內(nèi)進行。針對復雜多變的外部駕駛環(huán)境,駕駛行為貝葉斯網(wǎng)絡模型需根據(jù)系統(tǒng)時效性對自身結(jié)構(gòu)進行重組優(yōu)化,并且整個系統(tǒng)要與駕駛行為時間序列這一常見的實車駕駛數(shù)據(jù)格式相適配,從而實現(xiàn)機動車駕駛行為狀態(tài)在線分析以及基于多元信息融合的駕駛安全態(tài)勢評估,相關(guān)內(nèi)容將在后續(xù)研究工作中展開。
[1]李 力,王飛躍,鄭南寧,等.駕駛行為智能分析的研究與發(fā)展[J].自動化學報,2007,33(10):1014-1022.Li Li,Wang Feiyue,Zheng Nanning,et al.Research and developments of intelligent driving behavior analysis[J].Acta Automatica Sinica,2007,33(10):1014-1022.(in Chinese).
[2]Al-Sultan S,Al-Bayatti A H,Zedan H.Context-aware driver behavior detection system in intelligent transportation systems[J].IEEE Transactions on Vehicular Technology,2013,62(9):4264-4275.
[3]Yu R,Mohamed A A,Mohamed A.Bayesian random effect models incorporating real-time weather and traffic data to investigate mountainous freeway hazardous factors[J].Accident Analysis and Prevention,2013,50(1):371-376.
[4]Karaduman O,Eren H,Kurum H,et al.Interactive risky behavior model for 3-car overtaking scenario using joint Bayesian network[C]∥2013IEEE Intelligent Vehicles Symposium.Gold Coast,Queensland Australia:IEEE,2013:1279-1284.
[5]張良力,吳超仲,黃 珍,等.面向安全預警的機動車駕駛意圖研究現(xiàn)狀與展望[J].交通信息與安全,2012,30(3):87-91.Zhang Liangli,Wu Chaozhong,Huang Zen,et al.Research on driver's intention for traffic safety precaution[J].Journal of Transport Information and Safety,2012,30(3):87-91.(in Chinese).
[6]李海軍,馬登武,劉 霄,等.貝葉斯網(wǎng)絡理論在裝備故障診斷中的應用[M].北京:國防工業(yè)出版社,2008.Li Haijun,Ma Dengwu,Liu Xiao,et al.Application of bayesian network in equipment fault diagnosis[M].Beijing:National Defense Industry Press,2008.(in Chinese).
[7]肖秦琨,高 嵩.貝葉斯網(wǎng)絡在智能信息處理中的應用[M].北京:國防工業(yè)出版社,2012.Xiao Qinkun,Gao Song.Application of bayesian network in intelligent information processing[M].Beijing:National Defense Industry Press,2012.(in Chinese).
[8]趙金寶,鄧 衛(wèi),王 建.基于貝葉斯網(wǎng)絡的城市平面交叉口交通事故分析[J].交通信息與安全,2012,30(2):88-91.Zhao Jingbao,Deng Wei,Wang Jian.Analysis of urban intersection traffic accidents based on bayesian network[J].Journal of Transport Information and Safety,2012,30(2):88-91.(in Chinese).
[9]Muncaster J,Ma Y Q.Activity recognition using dynamic bayesian networks with automatic state selection[C]∥IEEE Workshop on Motion and Video Computing.Austin,Texas,USA:IEEE,2007:30-37.
[10]王曉原,楊新月.基于決策樹的駕駛行為決策機制研究[J].系統(tǒng)仿真學報,2008,20(2):415-420.Wang Xiaoyuan,Yang Xinyue.Study on decision mechanism of driving behavior based on decision tree[J].Journal of System Simulation,2008,20(2):415-420.(in Chinese).
[11]陳 越,李海華,蘭巨龍.基于邊緣簇組播樹構(gòu)造算法的分析與改進[J].計算機應用研究,2005,22(8):187-189.Chen Yue,Li Haihua,Lan Julong.Analysis and improvement of edge clustered tree algorithm for building multicast tree[J].Application Research of Computers,2005,22(8):187-189.(in Chinese).
[12]吳超仲,張 暉,毛 喆,等.基于駕駛操作行為的駕駛員疲勞狀態(tài)識別模型研究[J].中國安全科學技術(shù)學報,2007,17(4):162-165.Wu Chaozhong,Zhang Hui,Mao Zhe,et al.A model for identifying fatigue status of vehicle drivers based on driving operation[J].China Safety Science Journal,2007,17(4):162-165.(in Chinese).