基于规划识别的态势估计方法研究
2022-11-29李尚昊
李尚昊,方 浩
(北京理工大学自动化学院,北京 100081)
1 引 言
伴随着传感器技术的发展与应用,现代战场上已经出现了越来越多具有高探测率、高分辨率并能快速反应的传感器。各式各样的传感器能够帮助作战指挥中心获取较为全面的情报信息,因而信息的匮乏并不是当下战场环境的主要问题,而是如何在数量庞大、内容繁杂的信息中,提取出准确且有用的战场信息并能准确、及时地进行处理。正所谓知己知彼百战不殆,通过态势估计能够获悉敌军的作战情况,并且不仅仅是简单的、庞杂的信息,而是借助一系列现代手段得到的易于指挥人员理解的数据,这对实际战争中抢占先机、减少损失直至获取胜利都有着巨大作用。
态势估计[1]中涉及到两大主要问题:一是目标分群,二是规划识别。针对目标分群任务,张芬等[2]对目标点、空间群、进攻关系、距离因子及距离差因子做出定义,并基于上述定义提出一种生成功能群的算法。李镜等[3]针对传统的目标分群需要预先制定分类数等参数的问题,提出一种基于水平集的目标分群方法。詹环等[4]设计出融合作战目标的个体属性以及网络邻接关系的相似度模型和基于 K-prototype的作战目标分群算法。柴慧敏等[5]针对聚类算法对初始中心敏感的问题,提出了一种基于目标特征相似度聚类的分群方法。Bakert等[6]描述了一个为部队集合、军事单位分类工具开发的自适应证据网络算法,根据进化出的所有源情报数据的概率证据,自适应地选择部队的军事单元划分。Looney等[7]结合一种鲁棒聚类算法对特征向量进行位置聚类开发了一种综合多阶段的中高级数据融合方法,并将其应用于态势和威胁评估。Schubert[8]提出了一种证据力聚合方法,用于将证据智能分类为可识别的力结构。Yu等[9]提出一种用于部队集结与分类的多传感器决策融合证据模型,结合D.S证据理论和模板匹配的方法提出了一种基于证据理论和理论模板的军事力量集结与分类方法。Snidaro等[10]研究了基于马尔可夫逻辑网络的海上态势感知不确定性知识与证据融合。Oxenham 等[11]研究了网络中心环境下共享态势感知的异类身份估计融合。
针对规划识别问题,Kautz等[12]提出一种通用的规划识别模型,将每一个观测到的行为看作更高层计划的一个子任务,然后用高层计划去解释底层行为,由此计划识别的过程,也就变成了根据观察到的行为,推测其前向目的。Vilain[13]致力于使识别计划更像是解析文本这一概念变得精确,基于语法分析进行计划识别。Pynadath等[14]提出了基于概率状态独立语法的计划识别方法。该方法引入概率状态相关文法(PSDGs)来表示代理的计划生成过程。Kantharaju[15]研究从训练数据自动构建分解模型的学习技术,用于分层规划和计划识别。还有人将规划识别过程看作规划,有关这类方法Meneguzzi等[16]做了一定总结。姜云飞[17]提出一种基于规划知识图的规划识别算法。与Kautz在计划识别中广泛应用的形式化方法相比,该方法简单、直观。刘奕伶[18]提出一种基于层次化逻辑隐马尔可夫模型的任务规划识别方法,提高模型对复杂层次化任务的描述能力。朱珂等[19]提出基于解释图的概率多规划识别事故分析方法。刘成龙[20]基于 AdaBoost算法进行改进,并提出了多智能体条件下的多层规划识别方法。
本文在目标识别问题中,延续了基于模板匹配的思想,同时针对此算法对于空间位置有交叉的群体进行分群的局限性,提出一种以模板匹配为基础,结合通信代价及初次分群属性的二次分群方法。针对规划识别问题,引入概率的思想,采用基于贝叶斯网络的规划识别算法,通过概率计算的方式得到任务规划。最后提出将算法集成的框架,并通过仿真验证其有效性。
2 改进的模板匹配目标分群算法
目标分群也称目标聚类或兵力聚合,是目标群的形成过程,也是态势估计系统当中一个重要环节。其基本思想是使用一级融合提取的态势要素(包括各作战单元信息)根据空间、功能和相互作用等属性对目标对象自下而上逐层集合,对作战单元进行分层分组和抽象,将之由各战斗实体单元聚合为更高层次的战斗群体,以揭示目标实体对象之间的相互联系,并确定各单位相互协作的功能,从而形成了对敌方兵力结构在相互关系层级上的军事体系单元假设。采用基于模板匹配[21]的方法进行目标分群,可以充分借鉴现有的知识储备和专家经验,对于战场目标分群的准确率有了基本保障。
2.1 基于模板匹配的目标分群算法
在采用基于模板匹配的目标分群算法时,需要针对空间群构建知识模板,然后根据实体目标群的群体信息,如位置、速度、航向、目标类型、类型置信度等相关属性进行模板匹配。而从实体作战单元到目标群之间还需要一定的操作,那就是聚类。通过综合比对多种常用的聚类方法,本文最终采用最近邻聚类法[22]进行目标群聚类,比较过程在此不作赘述。
通过聚类得到了空间意义上的群体,下一步就是要对所得到的群体类型进行识别,这里采用基于模板匹配的算法。其基本思想为:根据一定的战场知识,建立符合实际战斗情景的模板库,将聚类得到的集群与模板库中的进行比较,由于战场中对于特定类型的群体来说,其功能基本确定,各个功能的组成成员数量及类型也相对固定,因此借助目标类型、目标数量及类型的置信度计算集群与模板的匹配程度,选取匹配度最高的模板作为集群的类型,从而实现空间群层次的目标分群。
所得的群体可表示为
式中,type表示类型,Bel表示类型的可信度。
构建空间群模板,可表示为
式中,type为部分群体成员的类型,num为成员数量,w表示所占权重。
接下来,利用模板匹配的思想来确定群体的类型,方法如下:先对目标群体的成员进行一定归类和表示,把相同类型的成员化为一组,并统计其数量,得到一种新的表述形式,如式(2)所示。然后从模板库中选取模板,分别与之进行比较,找到其中成员类型相同的部分,基于数量关系计算匹配程度。同时,要选取合适的阈值,将所匹配的模板中超过阈值且匹配度最大的模板作为最终得到的结构,从而确定目标群体的类型。
为了与模板进行匹配,要对聚类得到的群体进行组合,将相同类型的放置在一起,可表示为
式中,type表示目标类型,num表示该类型群体数量,m_Bel表示平均置信度。它的计算为
式中,Belij表示第j个类型为typei的目标的置信度。
然后计算群G中的目标ai与模板T中相同类型成员的匹配度δ(G,T),其匹配算法描述如下。
(1)初始化,令i= 1 ,δ(G,T) = 0 。
(2)如果群中的目标ai与模板中的类型为tj的 组 成 部 分 相 匹 配 , 则δ(G,T) =δ(G,T) +Δi,i=i+1,其中
式中,wj为该成员的权值,m_Beli为平均可信度值,Numi可由式(6)计算
式中,Pnumi和numj分别代表目标群和模板中第i类目标的个数。
(3)循环执行,直到群中的目标均与模板进行了比较匹配,即i=n。
2.2 二次分群
在实际仿真过程中,采用基于模板匹配的目标分群算法时发现,对于空间分布规律较为明显的战斗机群,该算法的分群效果较为优异。但考虑到实际战场环境中,部分空间群的战斗单元之间会有位置的交叉重叠,于是需要修改仿真环境,更真实地模拟战场环境,在某种程度上增加了算法分群的难度。经测试发现,该算法的准确率大大降低,因此需要考虑更为合理的分群方法来应对空间位置交叉的场景。
考虑到实际情景中,集群间的通信成本随着距离的提高而增大。一方面加大距离会提高通信的难度,另一方面加大距离也会影响通信的准确性,所以集群内战斗单元的分布必须要考虑到距离带来的通信成本。因此改进算法,首先采用基于模板匹配的方法进行初次分群,在经过第一次分群后,可以得到每个战斗单元的位置信息以及所属集群的中心位置、集群类型、类型置信度,将战斗单元距集群中心的距离、所属种群类型和该集群的置信度作为该战斗单元的新属性,仍采用模板匹配算法计算匹配度的思想,进行二次分群。
二次分群通过如下步骤实现。
(1)假设根据初始信息得到了数量为n的飞机集群,经过一次分群,得到m个clu(聚合群体)。
(2)初始化,设置合理的阈值w1,w2(考虑到计算的简洁性,接下来的步骤只针对距离集群中心超过阈值w1的战斗单元做二次分群的检测,以此体现通信代价的影响,而对于距离超过w2的飞机和群体,认为二者已无法有效通信),令i=1。
(3)计算planei到clui的距离dis,可表示为
(4)若dis<w1,跳过此步骤;否则,利用式(7)找到除自身当前群体外,距离自己最近的群体cluj。如果这个距离大于w2,跳过此步骤;否则,利用上一小节中计算匹配度的方法,分别计算移除该目标的群clui的匹配度及加入该目标的群cluj的匹配度。比较二者的增长量,如果后者大于前者,则保持这种修改;否则,还原planei。
(5)i=i+1,重复步骤(3),直到i=n。
至此,针对敌方战斗集群的目标分群任务得以实现。
3 基于贝叶斯网络的规划识别算法
规划识别[23-25]是根据代理的行为序列来推断代理所追求的目标的过程,能够根据观察到的片断、琐碎的现象,推出具有合理因果关系的、完整而全面的计划描述。这个问题本身属于人工智能领域,但随着不断的发展,逐渐应用到了各个领域,并在战场环境中对战场态势估计起到了非常重要的作用。
一般而言,一个计划可以表示成
式中,G表示该计划所要实现的最终目标,G11, … ,G1m表示要实现该目标所分解出的子目标,G1,… ,Gn则表示实现计划过程中的约束集。这里的约束包括计划执行时的初始状态,计划执行后的环境信息,多个事件间的相等关系以及各种事件、行为间的时间条件约束关系。
常见的计划识别方法都是以观测到的行为序列或事件为输入,输出的是根据输入推测出的进一步行动计划或其根本目的[26]。
对于战场环境而言,目标单元的特性一般较为清楚,常见的战斗模式也相对固定,也就是说具有一定的该领域内的知识。因此,针对战场态势估计的计划识别,通常先依据领域内的知识建立一套尽可能完备的计划库。它需要完整地描述实现最终目的的内容,以及实现该目的所要执行的全部动作序列。然后针对观测到的代理的行为,将其转化成机器所理解的语言,通过一定的算法,将之与计划库的内容相匹配,从而获知敌方的进一步行动,并实施打击。而计算概率的思想与人类判断事物的常规思维模式相符[27]。因此,本文在对规划库进行匹配的基础上,结合贝叶斯网络对目标规划进行较为精确的概率识别。
贝叶斯网络的模型如图1所示。
图1中,顶层为整体贝叶斯网络结构,代表了整个计划;底层为顶层网络节点所对应的替换贝叶斯网络,表示计划中的子计划贝叶斯网络,该结构可以用三元组表示:HBN= {G,T,R},定义如下。
图1 贝叶斯网络Fig.1 Bayesian networks
(1)G为整体贝叶斯网络结构,即顶层网络;G= {V,A,P}为有向无环图,其结点为V={v1,v2,… ,vm};A为弧的集合,表示节点之间的关系,P为在结构G上的条件概率集合。
(2)T= {t1,t2,… ,tl}为G中节点所对应的替换贝叶斯网络集合,即底层的网络层。若G中的节点没有可对应的贝叶斯网络,则T为空。
(3)R为顶层贝叶斯网络节点与T中贝叶斯网络间的对应关系,关系R可表示为:R= {Rij|i∈ (1 ,2,… ,m) ;j∈ (1,2,… ,l)},V代表了第i个节点和集合T中第j个元素的对应关系,且要求i节点的状态值与第j个贝叶斯网络根节点相同。
基于贝叶斯网络的计划识别的实现主要包括以下三部分内容:
(1)根据领域知识建立合理的贝叶斯网络库;
(2)对传感器收到的信息做一定处理,得到符合系统语言的事件描述,将内容与贝叶斯网络库中的模块相匹配,找到相似度较高的模块;
(3)根据进一步的信息完善,确认匹配的模块内容,判断出目标的顶层计划,并对其概率做出计算。
根据以上步骤,其具体实施过程如下。
首先,利用战场先验知识建立一套合理的贝叶斯网络库(见图1),可表示成
根据战场上侦查到的信息,可得到一系列事件,表示成
式中,Ei由三部分构成,一是发生事件的目标实体;二是目标实体的属性,如类型、位置等;三是具体产生的行为或事件。
在得到战场事件后,将Evi中的内容与贝叶斯网络库中的网络模块进行匹配,对于匹配成功的网络Bi,将其加入到临时集合Temp中
由于匹配成功的网络模块可能不止一种,因此需要先对临时集合中的网络模块进行比较,将事件Ei中的目标、目标属性、目标行为等对应到网络模块的节点中,通过节点间的概率关系,计算顶层任务的概率,选取其中概率值最大的网络模块,其根节点内容作为当前事件识别出的计划。
匹配成功的Bi可以看作新的事件或证据加入到事件集合Evi中,作为更高层次任务的子计划,同时需在Evi中删除已经与iB匹配的事件。对于当前事件集合Evi,继续执行上述步骤,匹配贝叶斯网络库,找到符合当前子计划的更高级网络模块。
重复上述内容,直至找到属于 END层的规划,即可以作为独立任务看待的敌方计划,或当前事件集合Evi中只有匹配到的子计划而没有新的事件。
4 算法集成及仿真验证
通过以上思考得到了基于模板匹配的二次分群法和基于贝叶斯网络的规划识别方法,在实际态势估计系统中,将算法结合,得到如图2所示的系统流程。
图2 集成系统流程图Fig.2 Integrated system flow chart
首先,通过各种传感器收集战场信息,如目标数量、位置信息、运动方式、目标间通信情况等。对这些信息进行一定融合分析处理后,将其分别送入目标分群系统和规划识别系统。对于进入分群系统的数据,先利用最近邻聚类法对目标进行空间层次的聚类,得到目标群,再利用基于模板匹配的分群算法进行初次分群,初步得到目标群的功能,最后,将得到的分群情况送入二次分群算法,得到准确率更高的功能群的判断;规划识别系统则接收来自一级融合的信息和分群系统的结果,将各种信息实例化,得到符合系统要求的事件表示形式,将事件输入贝叶斯网络,通过匹配网络得到符合事件的规划作为系统的输出,并提供概率值;最后,目标分群系统和规划识别系统的结果均被输入态势估计系统,进行进一步的战场态势分析。
之后,将分别针对目标分群和规划识别算法进行仿真验证,以了解其实际应用效果,并计算其准确率。
4.1 目标分群仿真
仿真使用 Windows 7操作系统,处理器为Intel(R) Core(TM) i5-4210U CPU 1.70GHz,64位操作系统。使用Python进行仿真环境开发。
设计场景如下:在我国海域内的空中作战情景,我方在邻近海岸的一处军事基地进行演习,敌方派遣多个飞机群体掠过我方领海,并不断朝着我方军事基地移动。针对此种情况,我方借助多种传感器,获悉敌方飞行群体的部分属性,包括其空间位置坐标和飞机类型。基于此,我方需要判断敌方目标存在几组机群,并对其机群类型做出合理推测,即对其进行目标分群。
建立一套符合实际情景的模板库,如表1所示。
表1 目标分群模板库Table 1 Target clustering template library
实际仿真场景如图3所示。
图3 目标识别算法场景示意图Fig.3 Schematic diagram of the target recognition algorithm scene
以背景图中的左上角作为我方军事基地,其余目标为敌方战斗单元,通过形状来区别飞机类型,以颜色区分所属的集群。在目标单元的右侧通过颜色标识出经我方分群算法划分出的集群类型,以方便直观地观察算法的准确率。
为了统计算法的准确率,针对单个群体、双群体及多群体分别进行了组合,并对每一种组合做50次测试,得到统计结果如图4所示。
图4 准确率柱状图Fig.4 Accuracy histogram
从图4中可以看出,经过150次实验后,初次分群的准确率为54%。而经二次分群后,其准确率提升至80.7%。
4.2 规划识别仿真
针对规划识别的应用场景设计如下情景:空战环境下,我方在某区域进行军事演习,设置了
4处军事基地(在仿真中以随机形式出现),敌方派出飞机,侦察我方演习情况,并实施干扰。我方通过传感设备获悉敌方飞机信息,利用规划识别系统对敌方计划进行甄别,以保护我方基地不受干扰,如图5所示。
图5 规划识别算法场景示意图Fig.5 Schematic diagram of the plan recognition algorithm scene
通过观察敌方飞机的类型及动向,借助贝叶斯网络计算要塞受攻击的概率,并选择守护对应要塞。如战斗机攻击了我方正在守护的基地,则战斗机被损毁。反之,我方基地会被摧毁。在进行了102次实验后,飞机共坠毁100架,我方军事基地被摧毁了两处,整体算法准确率约为98.04%。
5 结束语
本文针对态势估计中的目标分群和规划识别问题分别提出了算法。所提出的目标分群算法,以模板匹配为核心思想,通过初次分群得到的属性结合通信代价的考量进行二次分群,提高了分群的准确性。所提出的规划识别算法以贝叶斯网络为基础,通过战场事件与网络库的匹配,得到敌方任务规划及其概率。通过集成两种算法,将其加入态势估计系统,输入一系列来自战场的一级信息。经算法分析,可以输出敌方作战单元的特性、空间层次的分群情况、群体间的相互作用(协作)关系、敌方战斗目标及下一步作战计划等。利用这些信息,可以更好地判断当前战场态势,从而有效规避风险,并对敌方实施精准有效打击,直至取得胜利。
目前,我们的算法仍有很大改进空间,如在目标分群工作中,可以结合最大最小距离的方式,对聚类结果的划分做出约束,从而提高分群的准确性。同时,目前的群体类型较少,可以考虑加入跨域协作的单元集群,如无人机与车辆协作[28]等。而在规划识别工作中,随着规划库的完备和观察到事件的增加,贝叶斯网络会迅速增大,从而极大增加计算的复杂度,如何解决这个问题也是我们未来的研究工作之一。同时,在这次规划识别任务中,没有考虑到任务间的时序逻辑关系[29],之后可以从这个角度出发对算法进行优化。