采用MSBN多智能体协同推理的智能农业车辆环境识别
2013-11-26郭文强高晓光侯勇严周强
郭文强,高晓光,侯勇严,周强
(1.陕西科技大学 电气与信息工程学院,陕西西安710021;2.西北工业大学电子信息学院,陕西西安710129)
自动导航系统是现代智能农业车辆的重要组成部分.将机器视觉应用于农业车辆自动导航系统,可大大提高农业生产的自动化水平.对于具有自动导航系统的农业车辆,针对其所处的不同环境而采取不同的路径规划方法,可以提高系统的响应速度和可靠性[1-3].农业车辆所处环境的图像会随照明、阴影等的变化而改变.另外,即使在单一的环境中,图像也有许多内部和边界的灰度变化,从而影响自动导航系统对环境识别的准确性.农田环境的识别是一个典型的目标识别问题.随着电子和信息系统的飞速发展,在较短的时间内可以收集大量的目标原始数据.然而,在不确定和动态的环境中,如何快速、准确、定性、定量地进行目标识别是智能农业车辆自动导航系统中的关键技术之一.
针对农用车辆所处的不同环境,文献[4]研究了霍夫变换对不同目标进行识别的方法,但这种方法运算量大、计算代价昂贵.文献[5]提出了用人工神经网络的方法来识别环境的类型.然而,经典的神经网络方法尚存在模型解释性差的缺点,更不能在模型输入数据不完备时完成识别推理.
有机结合了图论和概率论的贝叶斯网络(Bayesian network,BN)适合解决不确定性和不完备信息问题,是目前一种有效的目标识别方法[6-7].将问题域表达为BN模型后,现有的许多BN推理算法可以支持网络信度的更新和目标识别节点的概率查询.但是,在传统BN模型的研究中,其推理机需收集观测域内所有观测(证据),即通过单个中心推理机进行集中式推理.随着BN模型节点数量的增加,整个网络信度更新的计算量会呈指数增长[8-9].这种传统的BN模型推理还会因为传输成本昂贵、传输延迟等问题,导致其实时性、可靠性较差.
智能车辆、机器人及其子系统均可以被视为智能体.本文将多智能体采集的局部目标特征信息表征为多连片贝叶斯网(multiply sectioned Bayesian network,MSBN),利用单个智能体进行局部推理,然后利用分布式多智能体重叠子域间紧凑的消息传播,实现了多智能体协同推理,避免了传统BN方法需要将所有观测值送给集中处理器,提高了系统实时推理和准确识别目标的能力.
1 目标特征信息及其MSBN表征
单个智能体的推理能力往往是有限的.一个自然的解决方案是利用多个智能体共享资源,协同完成所需任务.针对目标识别的推理,首先需进行特征数据的提取及相应推理机的建模.
1.1 农业环境图像的特征数据及其离散化
文献[5]将农业车辆所处的导航环境分为4种类型,即强光、普通、杂草和阴影.用于导航的图像常可用RGB模型表示,其中,R、G和B反映了图像红、绿、蓝分量灰度级别的变化,其灰度方差和均值受多种因素(如光照、阴影及拍摄角度等)的影响.因此,对目标图像可采取6个特征参数表征,即R、G、B分量的均值(分别表示为ER、EG和EB)和方差(分别表示为DR、DG和DB).
从不同的4个典型环境图像选择80幅图像(每种类型选用20幅),可计算出不同环境下农田图像的特征数据,如表1所示[5].
表1 农业环境图像的特征数据Table 1 Characteristic data of agricultural environment images
为了加快BN模型的推理,利用阈值函数将图像特征数据离散为3个值,即“大”、“中”和“小”.本文使用2个阈值对数据进行离散,即均值阈值取200和175,方差阈值取39和45.将表1中数据按照阈值函数映射,得到相应的目标离散特征数据,如表2所示.
表2 农业环境图像的离散特征数据Table 2 Discrete characteristic data of agricultural environment images
1.2 MSBN
定义1[9]MSBN 多连片贝叶斯网(MSBN)M是一个三元组(V,G,P).其中,V=∪iVi,Vi(i=0,1,…,n)是第i个子域里的变量集.G=∪iGi是一个具有超树(hypertree)结构的多连接有向无环图,每个子图 Gi的节点用 Vi表示.在 G中,x是一个节点,π(x)是x的全部父节点.对每个x的势,仅有一个包含{x}∪π(x)的子图 Gi对其赋值为P(x|π(x)),而其他Gj包含x的势均赋予均匀分布.P=∏iPi是联合概率分布,其中Pi是Gi中相关节点的势函数之积(product of the potentials).每个三元组Si=(Vi,Gi,Pi)被称为M的一个子网.如果Gi和Gj在超树中是相邻的,则2个子网Si和Sj被称为是相邻的.
图1为文献[10]中的一个MSBN示意图.图1中S0、S1、S2构成具有超树结构的一个 MSBN,且MSBN中重叠子域的任一节点仅有一个子网包含其全部父节点.如节点J的全部父节点集{D,V}仅被子网S1包含.图1(b)、(c)分别为图1(a)所示MSBN对应的超树和链化连接森林(linked junction forest,LJF).
图1 MSBN示意图Fig.1 Schematic diagram of the MSBN
根据MSBN定义可知,若以目标识别类型节点(隐节点)作为重叠子域,各BN子网可构建为一个完整的MSBN.因而MSBN可视为传统贝叶斯网络的一种扩展模型,从BN模型推理出发可对多智能体系统进行协同求解.
2 MSBN推理
MSBN推理可分为2个阶段:各连接树内局部推理和连接树间全局推理[10-11].其中局部推理可采用连接树算法完成,它是MSBN推理的基础.该算法不但可以解决单连通网络下的推理,也可以完成多连通网络下的推理计算.
贝叶斯网表示的联合概率分布满足:
式中:ψC、φS分别为贝叶斯网对应连接树中簇(cluster)C、分隔集(separator)Ssep的势函数.
2.1 MSBN中的局部推理
假设已知连接树中2个相邻的叶节点-簇Ci和Cj,以及它们之间的分隔集 Ssep,ij,设它们相对应的势函数分别为 φCi、φCj和 φSsep,ij,从消息传递的角度Ci到Cj的传递(也称收集证据,collect evidence)包含3个步骤:
1)更新φCi:令Ci中包含输入证据的簇似然度为Lnew(初始值Lnew=1),则
2)Ssep,ij吸收消息:
3)φCj吸收消息:
类似,可得到从Cj到Ci的消息传递(也称发散证据,distribute evidence).
连接树中的新证据可通过这种方式进行消息传播,最终再次达到连接树内的全局一致性(global consistence).
2.2 MSBN中的全局推理
MSBN的整体信度更新主要采用信度通信算法(CommunicateBelief)完成.每个智能体局部的推理通过子网连接树的消息传播达到局部一致性.多个智能体通过智能体之间子网的共享链树进行消息传播,达到多智能体系统的全局一致性.
定理1 令F为智能体对应MSBN中关于节点V的LJF,对应的MSBN联合概率分布为P(V).所有智能体完成局部观测证据更新,通过信度通信算法后,则F为全局一致,且每个局部连接树中每个簇C的势函数满足:
式中:K为一个非负值的常系数,x为MSBN的观测值.
有关定理1的证明,请参阅文献[9].
MSBN在多智能体系统框架下将一个复杂系统分解成若干有重叠子域的多个小规模BN,使每一个BN子网可自主局部推理,虽然单个智能体仅拥有目标的局部知识,但利用重叠子域信息的更新进行子网间消息的传播,实现了多源信息的相互补充.当子网依赖的结构稀疏时,推理计算可高效进行[12].
因此,MSBN框架下的分布式推理可以确保信度的更新是按照贝叶斯概率理论的精确推理来实现,从而为多智能体系统中任意节点的概率查询提供了支持.
3 基于MSBN多智能体协同推理的目标识别算法
每个智能体可以用一个BN子网表示,多个BN子网构成一个完整的MSBN,可以解决快速、准确的目标识别问题.
多智能体协同目标识别算法主要采用信度通信算法进行整个MSBN的信度更新,从而完成待识别目标在相应的MSBN中“目标类型”隐节点概率查询的支持,达到目标识别的目的.
假设目标类型有m个待识别类别.有n个智能体可利用i个不同的传感器系统从不同方位、途径对目标进行观测,但是受资源所限,每个智能体都只能观测有限的q个局部特征信号(1≤q≤i),各传感器系统局部特征信号观测值分为k个值域.本文提出的基于MSBN多智能体协同推理的目标识别算法步骤如下.
1)设置目标识别信度阈值参数θ*,确定智能体个数 n.θ*范围一般取[0.7,0.8],n 值常取为3~5;
2)n个智能体分别根据各自的i个传感器系统捕获q个目标特征数据(1≤q≤i),每个目标特征数据有k个观测值,k值常取3或4;
3)建模判断,若目标识别系统尚未构建目标识别MSBN的链化连接森林,执行4),完成相应模型的构建;否则,跳转执行7);
4)对第j个智能体(1≤j≤n),用目标类型作为父节点Sj,Sj有m个取值事件,即有m个待识别类别,m常取值为3或4,以其q个目标特征数据作为子节点,用有向边分别连接父节点和各个子节点,即依次连接父节点Sj和子节点1、父节点Sj和子节点2……直至父节点Sj和子节点q,每条有向边箭尾为父节点,箭头指向子节点.这样,可建立n个独立的BN子网结构,BN子网模型各节点间的信度条件概率参数采用EM算法进行学习或专家知识获取;
5)用有向边将n个BN子网的父节点(目标识别类型节点)单向连接,即有向边从父节点S1(箭尾)指向父节点S2(箭头),再从父节点S2(箭尾)指向父节点S3(箭头)……直至父节点Sn-1(箭尾)指向父节点Sn(箭头),构建得到MSBN;
6)利用文献[9]的链树(linkage tree)构建法将MSBN构建成链化连接森林;
7)各BN子网模型中,输入各自的目标特征数据作为观测证据,利用连接树算法进行信度推理,从而完成n个子BN的目标识别类型节点Sj的信度θj(1≤j≤n)的更新;
8)基于步骤7)获得θj的更新,利用信度通信算法完成MSBN网内的全局推理,更新MSBN模型目标识别类型节点Sj的信度θj(1≤j≤n).
9)按式(1)计算目标识别信度θ:
式中:wj(0<wj<1)为加权系数,且≤j≤n.加权系数常取算术平均加权,即wj=1/n.
10)若θ>θ*,按式(2)计算目标识别类型节点,输出结果,目标识别过程停止;否则,继续通过传感器系统捕获目标特征数据,以观测目标,并返回2).
目标识别类型节点xS的目标类型可由式(2)获取:
4 实验仿真
为了验证基于MSBN多智能体协同推理的目标识别算法的正确性和有效性,本文进行了以下实验.设置车辆所处的实际环境是“杂草”,实验运行的硬件环境为2 GB内存、2.5 GHz Pentium(R)Dual-core CPU的计算机,MSBN 推理软件采用 WebWeaver IV[8],WebWeaver IV中采用浮点型数值表示节点信度.
4.1 参数设置与特征数据预处理
设置目标识别信度阈值参数θ*,确定智能体个数n.此处 θ*=75%,n值取为 3,加权系数wj=1/n=1/3(j=1,2,3).
待识别目标环境离散化特征证据如表3所示,3个智能体可观测目标特征个数q亦列入表3.其中[* ,* ,*]表示目标特征观测证据,“真”取“1”,否则取“0”;“Φ”表示相应观测子系统中未获得该目标特征节点信息;“—”表示相应模型中,由于某些不确定因素(如通信传输延迟等),暂时未能获得该目标特征节点信息.其特征节点参数将按先验条件概率取值进行推理.
注意到在本实施用例中,由于没有一个智能体捕捉到目标的所有6个特征数据,尤其是DG、DB数据均未获得,即模型输入数据不完备.因此,若采用传统的神经网络建模方法,且不使用数据修补等剧增推理运算复杂度技术,目标识别推理将不可进行.然而进行数据修补工作,势必会增加目标识别任务所需的时间消耗.
表3 目标特征证据Table 3 Target characteristic evidences
4.2 推理机建模
本例中有3个智能体对同一目标,即农业车辆所处的实际环境进行观测、推理和识别.对目标图像采取6个特征参数表征,即R、G、B分量的均值和方差.在推理机建模阶段,3个智能体推理子网分别用目标类型S1、S2和S3作为父节点,相应目标特征数据 ER,j、EG,j、EB,j、DR,j、DG,j和 DB,j作为子节点(j=1,2,3).根据提出的目标识别算法,得到的农业车辆环境识别MSBN模型如图2所示,用链树构建法将MSBN构建成相应的链化连接森林,如图3所示.
图2 农业车辆环境识别MSBNFig.2 Environment recognition MSBN for agricultural vehicle
图3 MSBN推理机的链化连接森林Fig.3 Linked junction forest for MSBN inference engine
4.3 目标识别结果
输入如表3所示的有限证据,MSBN推理结果如表4所示.设智能体子系统的个数为n,局部连接树中最大簇个数为m,最大簇的基数为q,链树中的最大链树个数为r,每个结点最多有k个取值,则MSBN 推理的计算复杂度为 O(n(m+2r)kq)[9].由于MSBN重叠子域为稀疏拓扑结构,即通常m≫r,此时计算复杂度可等效为O(nmkq).而同规模的单个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%.由于识别信度阈值参数θ*为75%,因此可判定出车辆所处环境为“杂草”.为了便于比较,使用传统BN方法进行目标识别推理的结果也列在表4中,推理结果为“杂草”的概率为59.22%,远低于识别信度阈值,因此此时不能判定出车辆所处环境.
实验结果表明,本文提出的方法与传统神经网络方法相比,即使模型输入数据不完备,采用的MSBN方法无需智能体进行更长耗时的更多特征数据的观测,依然能完成识别推理,说明提出的方法较神经网络方法更为有效;而与传统BN方法相比,在不增加目标识别算法计算复杂度的条件下,采用MSBN方法可以在传统BN方法不能给出识别结果的情况下,显著提高识别信度,提升了目标识别系统的准确性能.
5 结束语
为了有效、准确地识别出智能农业车辆所处的环境类型,提出了基于MSBN多智能体协同推理的目标识别算法,并将其应用于基于机器视觉的车辆自动导航系统.MSBN将不同的局部观测证据融入贝叶斯子网,采用局部推理和全局推理相结合的方法,对多源信息进行融合,提高了推理的有效性和准确性.实验结果表明,基于MSBN多智能体协同推理的目标识别算法可以在嘈杂的、不确定的复杂环境中提高农业车辆对所处环境进行目标识别的能力.这种基于MSBN的目标识别方法也可以被广泛应用在工业机器人和农业生产等其他相关领域,为进一步的自主决策任务提供支持.
[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]王典,刘晋浩,王建利.基于系统聚类的林地内采育目标识别与分类[J].农业工程学报,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]赵博,王猛,毛恩荣,等.农业车辆视觉实际导航环境识别与分类[J].农业机械学报,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]田凤占,张宏伟,陆玉昌,等.多模块贝叶斯网络中推理的简化[J].计算机研究与发展,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]郭文强,高晓光,侯勇严.复杂系统的图模型多智能体协同故障诊断[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.