郭文強,高曉光,侯勇嚴,周強
(1.陜西科技大學 電氣與信息工程學院,陜西西安710021;2.西北工業(yè)大學電子信息學院,陜西西安710129)
自動導航系統(tǒng)是現(xiàn)代智能農業(yè)車輛的重要組成部分.將機器視覺應用于農業(yè)車輛自動導航系統(tǒng),可大大提高農業(yè)生產的自動化水平.對于具有自動導航系統(tǒng)的農業(yè)車輛,針對其所處的不同環(huán)境而采取不同的路徑規(guī)劃方法,可以提高系統(tǒng)的響應速度和可靠性[1-3].農業(yè)車輛所處環(huán)境的圖像會隨照明、陰影等的變化而改變.另外,即使在單一的環(huán)境中,圖像也有許多內部和邊界的灰度變化,從而影響自動導航系統(tǒng)對環(huán)境識別的準確性.農田環(huán)境的識別是一個典型的目標識別問題.隨著電子和信息系統(tǒng)的飛速發(fā)展,在較短的時間內可以收集大量的目標原始數(shù)據(jù).然而,在不確定和動態(tài)的環(huán)境中,如何快速、準確、定性、定量地進行目標識別是智能農業(yè)車輛自動導航系統(tǒng)中的關鍵技術之一.
針對農用車輛所處的不同環(huán)境,文獻[4]研究了霍夫變換對不同目標進行識別的方法,但這種方法運算量大、計算代價昂貴.文獻[5]提出了用人工神經(jīng)網(wǎng)絡的方法來識別環(huán)境的類型.然而,經(jīng)典的神經(jīng)網(wǎng)絡方法尚存在模型解釋性差的缺點,更不能在模型輸入數(shù)據(jù)不完備時完成識別推理.
有機結合了圖論和概率論的貝葉斯網(wǎng)絡(Bayesian network,BN)適合解決不確定性和不完備信息問題,是目前一種有效的目標識別方法[6-7].將問題域表達為BN模型后,現(xiàn)有的許多BN推理算法可以支持網(wǎng)絡信度的更新和目標識別節(jié)點的概率查詢.但是,在傳統(tǒng)BN模型的研究中,其推理機需收集觀測域內所有觀測(證據(jù)),即通過單個中心推理機進行集中式推理.隨著BN模型節(jié)點數(shù)量的增加,整個網(wǎng)絡信度更新的計算量會呈指數(shù)增長[8-9].這種傳統(tǒng)的BN模型推理還會因為傳輸成本昂貴、傳輸延遲等問題,導致其實時性、可靠性較差.
智能車輛、機器人及其子系統(tǒng)均可以被視為智能體.本文將多智能體采集的局部目標特征信息表征為多連片貝葉斯網(wǎng)(multiply sectioned Bayesian network,MSBN),利用單個智能體進行局部推理,然后利用分布式多智能體重疊子域間緊湊的消息傳播,實現(xiàn)了多智能體協(xié)同推理,避免了傳統(tǒng)BN方法需要將所有觀測值送給集中處理器,提高了系統(tǒng)實時推理和準確識別目標的能力.
單個智能體的推理能力往往是有限的.一個自然的解決方案是利用多個智能體共享資源,協(xié)同完成所需任務.針對目標識別的推理,首先需進行特征數(shù)據(jù)的提取及相應推理機的建模.
文獻[5]將農業(yè)車輛所處的導航環(huán)境分為4種類型,即強光、普通、雜草和陰影.用于導航的圖像??捎肦GB模型表示,其中,R、G和B反映了圖像紅、綠、藍分量灰度級別的變化,其灰度方差和均值受多種因素(如光照、陰影及拍攝角度等)的影響.因此,對目標圖像可采取6個特征參數(shù)表征,即R、G、B分量的均值(分別表示為ER、EG和EB)和方差(分別表示為DR、DG和DB).
從不同的4個典型環(huán)境圖像選擇80幅圖像(每種類型選用20幅),可計算出不同環(huán)境下農田圖像的特征數(shù)據(jù),如表1所示[5].
表1 農業(yè)環(huán)境圖像的特征數(shù)據(jù)Table 1 Characteristic data of agricultural environment images
為了加快BN模型的推理,利用閾值函數(shù)將圖像特征數(shù)據(jù)離散為3個值,即“大”、“中”和“小”.本文使用2個閾值對數(shù)據(jù)進行離散,即均值閾值取200和175,方差閾值取39和45.將表1中數(shù)據(jù)按照閾值函數(shù)映射,得到相應的目標離散特征數(shù)據(jù),如表2所示.
表2 農業(yè)環(huán)境圖像的離散特征數(shù)據(jù)Table 2 Discrete characteristic data of agricultural environment images
定義1[9]MSBN 多連片貝葉斯網(wǎng)(MSBN)M是一個三元組(V,G,P).其中,V=∪iVi,Vi(i=0,1,…,n)是第i個子域里的變量集.G=∪iGi是一個具有超樹(hypertree)結構的多連接有向無環(huán)圖,每個子圖 Gi的節(jié)點用 Vi表示.在 G中,x是一個節(jié)點,π(x)是x的全部父節(jié)點.對每個x的勢,僅有一個包含{x}∪π(x)的子圖 Gi對其賦值為P(x|π(x)),而其他Gj包含x的勢均賦予均勻分布.P=∏iPi是聯(lián)合概率分布,其中Pi是Gi中相關節(jié)點的勢函數(shù)之積(product of the potentials).每個三元組Si=(Vi,Gi,Pi)被稱為M的一個子網(wǎng).如果Gi和Gj在超樹中是相鄰的,則2個子網(wǎng)Si和Sj被稱為是相鄰的.
圖1為文獻[10]中的一個MSBN示意圖.圖1中S0、S1、S2構成具有超樹結構的一個 MSBN,且MSBN中重疊子域的任一節(jié)點僅有一個子網(wǎng)包含其全部父節(jié)點.如節(jié)點J的全部父節(jié)點集{D,V}僅被子網(wǎng)S1包含.圖1(b)、(c)分別為圖1(a)所示MSBN對應的超樹和鏈化連接森林(linked junction forest,LJF).
圖1 MSBN示意圖Fig.1 Schematic diagram of the MSBN
根據(jù)MSBN定義可知,若以目標識別類型節(jié)點(隱節(jié)點)作為重疊子域,各BN子網(wǎng)可構建為一個完整的MSBN.因而MSBN可視為傳統(tǒng)貝葉斯網(wǎng)絡的一種擴展模型,從BN模型推理出發(fā)可對多智能體系統(tǒng)進行協(xié)同求解.
MSBN推理可分為2個階段:各連接樹內局部推理和連接樹間全局推理[10-11].其中局部推理可采用連接樹算法完成,它是MSBN推理的基礎.該算法不但可以解決單連通網(wǎng)絡下的推理,也可以完成多連通網(wǎng)絡下的推理計算.
貝葉斯網(wǎng)表示的聯(lián)合概率分布滿足:
式中:ψC、φS分別為貝葉斯網(wǎng)對應連接樹中簇(cluster)C、分隔集(separator)Ssep的勢函數(shù).
假設已知連接樹中2個相鄰的葉節(jié)點-簇Ci和Cj,以及它們之間的分隔集 Ssep,ij,設它們相對應的勢函數(shù)分別為 φCi、φCj和 φSsep,ij,從消息傳遞的角度Ci到Cj的傳遞(也稱收集證據(jù),collect evidence)包含3個步驟:
1)更新φCi:令Ci中包含輸入證據(jù)的簇似然度為Lnew(初始值Lnew=1),則
2)Ssep,ij吸收消息:
3)φCj吸收消息:
類似,可得到從Cj到Ci的消息傳遞(也稱發(fā)散證據(jù),distribute evidence).
連接樹中的新證據(jù)可通過這種方式進行消息傳播,最終再次達到連接樹內的全局一致性(global consistence).
MSBN的整體信度更新主要采用信度通信算法(CommunicateBelief)完成.每個智能體局部的推理通過子網(wǎng)連接樹的消息傳播達到局部一致性.多個智能體通過智能體之間子網(wǎng)的共享鏈樹進行消息傳播,達到多智能體系統(tǒng)的全局一致性.
定理1 令F為智能體對應MSBN中關于節(jié)點V的LJF,對應的MSBN聯(lián)合概率分布為P(V).所有智能體完成局部觀測證據(jù)更新,通過信度通信算法后,則F為全局一致,且每個局部連接樹中每個簇C的勢函數(shù)滿足:
式中:K為一個非負值的常系數(shù),x為MSBN的觀測值.
有關定理1的證明,請參閱文獻[9].
MSBN在多智能體系統(tǒng)框架下將一個復雜系統(tǒng)分解成若干有重疊子域的多個小規(guī)模BN,使每一個BN子網(wǎng)可自主局部推理,雖然單個智能體僅擁有目標的局部知識,但利用重疊子域信息的更新進行子網(wǎng)間消息的傳播,實現(xiàn)了多源信息的相互補充.當子網(wǎng)依賴的結構稀疏時,推理計算可高效進行[12].
因此,MSBN框架下的分布式推理可以確保信度的更新是按照貝葉斯概率理論的精確推理來實現(xiàn),從而為多智能體系統(tǒng)中任意節(jié)點的概率查詢提供了支持.
每個智能體可以用一個BN子網(wǎng)表示,多個BN子網(wǎng)構成一個完整的MSBN,可以解決快速、準確的目標識別問題.
多智能體協(xié)同目標識別算法主要采用信度通信算法進行整個MSBN的信度更新,從而完成待識別目標在相應的MSBN中“目標類型”隱節(jié)點概率查詢的支持,達到目標識別的目的.
假設目標類型有m個待識別類別.有n個智能體可利用i個不同的傳感器系統(tǒng)從不同方位、途徑對目標進行觀測,但是受資源所限,每個智能體都只能觀測有限的q個局部特征信號(1≤q≤i),各傳感器系統(tǒng)局部特征信號觀測值分為k個值域.本文提出的基于MSBN多智能體協(xié)同推理的目標識別算法步驟如下.
1)設置目標識別信度閾值參數(shù)θ*,確定智能體個數(shù) n.θ*范圍一般?。?.7,0.8],n 值常取為3~5;
2)n個智能體分別根據(jù)各自的i個傳感器系統(tǒng)捕獲q個目標特征數(shù)據(jù)(1≤q≤i),每個目標特征數(shù)據(jù)有k個觀測值,k值常取3或4;
3)建模判斷,若目標識別系統(tǒng)尚未構建目標識別MSBN的鏈化連接森林,執(zhí)行4),完成相應模型的構建;否則,跳轉執(zhí)行7);
4)對第j個智能體(1≤j≤n),用目標類型作為父節(jié)點Sj,Sj有m個取值事件,即有m個待識別類別,m常取值為3或4,以其q個目標特征數(shù)據(jù)作為子節(jié)點,用有向邊分別連接父節(jié)點和各個子節(jié)點,即依次連接父節(jié)點Sj和子節(jié)點1、父節(jié)點Sj和子節(jié)點2……直至父節(jié)點Sj和子節(jié)點q,每條有向邊箭尾為父節(jié)點,箭頭指向子節(jié)點.這樣,可建立n個獨立的BN子網(wǎng)結構,BN子網(wǎng)模型各節(jié)點間的信度條件概率參數(shù)采用EM算法進行學習或專家知識獲取;
5)用有向邊將n個BN子網(wǎng)的父節(jié)點(目標識別類型節(jié)點)單向連接,即有向邊從父節(jié)點S1(箭尾)指向父節(jié)點S2(箭頭),再從父節(jié)點S2(箭尾)指向父節(jié)點S3(箭頭)……直至父節(jié)點Sn-1(箭尾)指向父節(jié)點Sn(箭頭),構建得到MSBN;
6)利用文獻[9]的鏈樹(linkage tree)構建法將MSBN構建成鏈化連接森林;
7)各BN子網(wǎng)模型中,輸入各自的目標特征數(shù)據(jù)作為觀測證據(jù),利用連接樹算法進行信度推理,從而完成n個子BN的目標識別類型節(jié)點Sj的信度θj(1≤j≤n)的更新;
8)基于步驟7)獲得θj的更新,利用信度通信算法完成MSBN網(wǎng)內的全局推理,更新MSBN模型目標識別類型節(jié)點Sj的信度θj(1≤j≤n).
9)按式(1)計算目標識別信度θ:
式中:wj(0<wj<1)為加權系數(shù),且≤j≤n.加權系數(shù)常取算術平均加權,即wj=1/n.
10)若θ>θ*,按式(2)計算目標識別類型節(jié)點,輸出結果,目標識別過程停止;否則,繼續(xù)通過傳感器系統(tǒng)捕獲目標特征數(shù)據(jù),以觀測目標,并返回2).
目標識別類型節(jié)點xS的目標類型可由式(2)獲取:
為了驗證基于MSBN多智能體協(xié)同推理的目標識別算法的正確性和有效性,本文進行了以下實驗.設置車輛所處的實際環(huán)境是“雜草”,實驗運行的硬件環(huán)境為2 GB內存、2.5 GHz Pentium(R)Dual-core CPU的計算機,MSBN 推理軟件采用 WebWeaver IV[8],WebWeaver IV中采用浮點型數(shù)值表示節(jié)點信度.
設置目標識別信度閾值參數(shù)θ*,確定智能體個數(shù)n.此處 θ*=75%,n值取為 3,加權系數(shù)wj=1/n=1/3(j=1,2,3).
待識別目標環(huán)境離散化特征證據(jù)如表3所示,3個智能體可觀測目標特征個數(shù)q亦列入表3.其中[* ,* ,*]表示目標特征觀測證據(jù),“真”取“1”,否則取“0”;“Φ”表示相應觀測子系統(tǒng)中未獲得該目標特征節(jié)點信息;“—”表示相應模型中,由于某些不確定因素(如通信傳輸延遲等),暫時未能獲得該目標特征節(jié)點信息.其特征節(jié)點參數(shù)將按先驗條件概率取值進行推理.
注意到在本實施用例中,由于沒有一個智能體捕捉到目標的所有6個特征數(shù)據(jù),尤其是DG、DB數(shù)據(jù)均未獲得,即模型輸入數(shù)據(jù)不完備.因此,若采用傳統(tǒng)的神經(jīng)網(wǎng)絡建模方法,且不使用數(shù)據(jù)修補等劇增推理運算復雜度技術,目標識別推理將不可進行.然而進行數(shù)據(jù)修補工作,勢必會增加目標識別任務所需的時間消耗.
表3 目標特征證據(jù)Table 3 Target characteristic evidences
本例中有3個智能體對同一目標,即農業(yè)車輛所處的實際環(huán)境進行觀測、推理和識別.對目標圖像采取6個特征參數(shù)表征,即R、G、B分量的均值和方差.在推理機建模階段,3個智能體推理子網(wǎng)分別用目標類型S1、S2和S3作為父節(jié)點,相應目標特征數(shù)據(jù) ER,j、EG,j、EB,j、DR,j、DG,j和 DB,j作為子節(jié)點(j=1,2,3).根據(jù)提出的目標識別算法,得到的農業(yè)車輛環(huán)境識別MSBN模型如圖2所示,用鏈樹構建法將MSBN構建成相應的鏈化連接森林,如圖3所示.
圖2 農業(yè)車輛環(huán)境識別MSBNFig.2 Environment recognition MSBN for agricultural vehicle
圖3 MSBN推理機的鏈化連接森林Fig.3 Linked junction forest for MSBN inference engine
輸入如表3所示的有限證據(jù),MSBN推理結果如表4所示.設智能體子系統(tǒng)的個數(shù)為n,局部連接樹中最大簇個數(shù)為m,最大簇的基數(shù)為q,鏈樹中的最大鏈樹個數(shù)為r,每個結點最多有k個取值,則MSBN 推理的計算復雜度為 O(n(m+2r)kq)[9].由于MSBN重疊子域為稀疏拓撲結構,即通常m?r,此時計算復雜度可等效為O(nmkq).而同規(guī)模的單個BN推理采用連接樹算法的計算復雜度也為O(nmkq).比較可知,MSBN與BN 2種模型推理在計算復雜度方面相當.
表4 MSBN和BN方法進行目標識別推理結果(θ*=75%)Table 4 Target recognition inference results by MSBN and BN method(θ*=75%)
由表4可知,MSBN法進行目標識別推理結果為“雜草”的概率為94.20%.由于識別信度閾值參數(shù)θ*為75%,因此可判定出車輛所處環(huán)境為“雜草”.為了便于比較,使用傳統(tǒng)BN方法進行目標識別推理的結果也列在表4中,推理結果為“雜草”的概率為59.22%,遠低于識別信度閾值,因此此時不能判定出車輛所處環(huán)境.
實驗結果表明,本文提出的方法與傳統(tǒng)神經(jīng)網(wǎng)絡方法相比,即使模型輸入數(shù)據(jù)不完備,采用的MSBN方法無需智能體進行更長耗時的更多特征數(shù)據(jù)的觀測,依然能完成識別推理,說明提出的方法較神經(jīng)網(wǎng)絡方法更為有效;而與傳統(tǒng)BN方法相比,在不增加目標識別算法計算復雜度的條件下,采用MSBN方法可以在傳統(tǒng)BN方法不能給出識別結果的情況下,顯著提高識別信度,提升了目標識別系統(tǒng)的準確性能.
為了有效、準確地識別出智能農業(yè)車輛所處的環(huán)境類型,提出了基于MSBN多智能體協(xié)同推理的目標識別算法,并將其應用于基于機器視覺的車輛自動導航系統(tǒng).MSBN將不同的局部觀測證據(jù)融入貝葉斯子網(wǎng),采用局部推理和全局推理相結合的方法,對多源信息進行融合,提高了推理的有效性和準確性.實驗結果表明,基于MSBN多智能體協(xié)同推理的目標識別算法可以在嘈雜的、不確定的復雜環(huán)境中提高農業(yè)車輛對所處環(huán)境進行目標識別的能力.這種基于MSBN的目標識別方法也可以被廣泛應用在工業(yè)機器人和農業(yè)生產等其他相關領域,為進一步的自主決策任務提供支持.
[1]BAKKER T,WOUTERS H,ASSELT K,et al.A vision based row detection system for sugar beet[J].Computers and Electronics in Agriculture,2008,60(1):87-95.
[2]GOTTSCHALK R,BURGOS-ARTIZZU X P,RIBEIRO A,et al.Real-time image processing for the guidance of a small agricultural field inspection vehicle[J].International Journal of Intelligent Systems Technologies and Applications,2010,8(1):434-443.
[3]王典,劉晉浩,王建利.基于系統(tǒng)聚類的林地內采育目標識別與分類[J].農業(yè)工程學報,2011,27(12):173-177.WANG Dian,LIU Jinhao,WANG Jianli.Identification and classification of scanned target in forest based on hierarchical cluster[J].Transactions of the Chinese Society of Agricultural Engineering,2011,27(12):173-177.
[4]ROVIRA-MA F,ZHANG Q,REID J F,et al.Hough-transform-based vision algorithm for crop row detection of an automated agricultural vehicle[J].Journal of Automobile Engineering,2005,219(8):999-1010.
[5]趙博,王猛,毛恩榮,等.農業(yè)車輛視覺實際導航環(huán)境識別與分類[J].農業(yè)機械學報,2009,40(7):166-170.ZHAO Bo,WANG Meng,MAO Enrong,et al.Recognition and classification for vision navigation application environment of agricultural vehicle[J].Transactions of the Chinese Society for Agricultural Machinery,2009,40(7):166-170.
[6]PEARL J.Causality:models,reasoning and inference[M].2nd ed.Cambridge,UK:Cambridge University Press,2009.
[7]TANG Zheng,GAO Xiaoguang.Research on the self-defence electronic jamming decision-making based on the discrete dynamic Bayesian network[J].Journal of Systems Engineering and Electronics,2008,19(4):702-708.
[8]XIANG Y,SMITH J,KROES J.Multiagent Bayesian forecasting of structural time-invariant dynamic systems with graphical models[J].International Journal of Approximate Reasoning,2011,52(7):960-977.
[9]XIANG Yang.Probabilistic reasoning in multiagent systems:a graphical models approach[M].Cambridge,UK:Cambridge University Press,2002.
[10]田鳳占,張宏偉,陸玉昌,等.多模塊貝葉斯網(wǎng)絡中推理的簡化[J].計算機研究與發(fā)展,2003,40(8):1230-1237.TIAN Fengzhan,ZHANG Hongwei,LU Yuchang,et al.Simplification of inferences in multiply sectioned Bayesian networks[J].Journal of Computer Research and Development,2003,40(8):1230-1237.
[11]郭文強,高曉光,侯勇嚴.復雜系統(tǒng)的圖模型多智能體協(xié)同故障診斷[J].計算機應用,2010,30(11):2916-2919.GUO Wenqiang,GAO Xiaoguang,HOU Yongyan.Graphical model-based multi-agent coordination fault diagnosis for complex system[J].Journal of Computer Applications,2010,30(11):2916-2919.
[12]XIANG Yang,JENSEN F V,CHEN Xiaoyun.Inference in multiply sectioned Bayesian networks:methods and performance comparison[J].IEEE Transactions on Systems,Man,and Cybernetics—Part B:Cybernetics,2006,36(6):546-558.