参数自适应动态贝叶斯舰船态势估计算法

2019-04-22 07:53王玲琳刘永信
西安电子科技大学学报 2019年2期
关键词:互信息网络结构贝叶斯

毕 城,王玲琳,刘永信

(1. 内蒙古大学 电子信息工程学院,内蒙古自治区 呼和浩特 010021;2.内蒙古大学 计算机学院,内蒙古自治区 呼和浩特 010021)

海洋权益对于国家经济和安全十分重要,对舰船监测与管理是保障海洋权益的主要工作之一,而有效的舰船态势评估是舰船实现有效管理的基础。因此,正确把握海面情况,了解目标舰船的变化,并进行的态势评估,对海洋管理与舰船监测具有重大实际意义。态势估计是将来自多种传感器和信息源的数据和信息加以联合、相关和组合以获得精确的位置估计和身份估计,以完成对战场态势和威胁及其重要程度进行实时、完整评价的处理过程[1-2]。舰船的态势估计应用于海监部门,能够对舰船不确定性信息和不完备性信息进行估计和预测,为舰船的监控提供辅助决策依据。

文献[1]介绍了一种三维威力场方法在态势估计中的应用。文献[3]介绍了一种基于动态贝叶斯网络的方法,但是网络结构固定,无法做到自适应变化。文献[4]介绍了一种动态贝叶斯网络的参数学习方法,并应用于态势估计,但是无法做到网络节点随时间变化而更新。基于贝叶斯网络(Bayesian Network, BN)的推理算法不仅应用在推理预测中,还应用于态势估计中。贝叶斯网络分为静态贝叶斯网络和动态贝叶斯网络(Dynamic Bayesian Network, DBN)。其中,静态贝叶斯网络构造在态势评估系统中使用较多[3]。采用动态贝叶斯网络的态势估计方法能够得到不同时刻战场信息要素之间的因果关系,并根据历史数据和新获取的态势信息进行推理,因此动态贝叶斯网络比静态贝叶斯网络更具有合理性。但在应用动态贝叶斯网络进行舰船态势估计时,相比贝叶斯网络虽然增加了时间序列以及积累,但动态贝叶斯网络的算法仍在推理过程中固定不变,不能随环境和目标的变化而变化,因此无法保证推理结果的准确性[4]。

笔者提出了一种基于改进动态贝叶斯网络的舰船态势估计算法,解决了在推理过程中网络结构自适应改变的问题。在不同时间片段的海况下,通过多传感器获取相关数据,构建自适应的目标舰船态势推理算法,对舰船目标的态势做出分析。仿真结果表明,改进后的算法能够很好地适应海面状况的变化,获得更准确的评估结果。

1 舰船态势估计

1.1 舰船态势估计算法

在舰船监控与管理方面,态势估计主要是通过多个传感器获取当前时刻下目标舰船的状况,建立目标舰船的事件、时间、位置和海况等多种要素组织的一张视图,将观测到的海域状况和目标状况、意图等有机地联系起来,分析并确定事件发生的原因,并最终形成一个关于目标与周围海域的态势图。舰船目标态势估计的结果反映了舰船的态势,因此也可为决策者提供有效的决策依据。

图1 舰船目标态势估计的算法

舰船态势估计通过高频地波雷达(High Frequency Surface Wave Radar, HFSWR)、船舶自动识别(Automatic Identification System, AIS)、合成孔径雷达(Synthetic Aperture Radar, SAR)和声呐等多传感器对目标进行跟踪和识别后,获得目标的各种属性。再从多种属性中提取态势要素,通过对态势要素的推理估计出目标当前的态势。态势估计是一个复杂的问题,且舰船目标态势算法也是随着不同海域、海况而改变,甚至在同一海域下,由于海况的不同也会引起相应的算法变化。多传感器构成的态势算法如图1所示。

1.2 动态贝叶斯网络算法

动态贝叶斯网络是带有时间序列以及累积的特殊贝叶斯网络,它能够学习变量间的概率依存关系及其随时间变化的规律,是近年来新发展起来的统计算法[5]。将动态贝叶斯网络应用于态势估计,不但满足态势要素的不确定性,还能满足对态势的动态分析和预测,比静态贝叶斯网络更具有合理性[6-7]。动态贝叶斯网络根据多个时刻的观测值对系统的状态进行定性推理,能够增强推理结果的准确性。其网络结构是一个有向无环图,是依据观测数据Y={y1,y2,…,ym}可导出隐变量X={x1,x2,…,xn}最大可能取值的概率。

1.3 数据获取与预处理

舰船态势估计算法是一个综合多因素分析的算法。在算法中,传感器包括AIS信息系统、高频地波雷达、合成孔径雷达和气象系统等。从AIS系统可以获取舰船的基本信息,但当目标舰船关闭AIS信息系统时,只能通过其余传感器对其进行态势估计。通过高频地波雷达能够获取到当前船舶的速度等信息,合成孔径雷达卫星和气象系统也可获取到当前海域的具体情况。将多种传感器获取到的信息量化分析后存储在知识库中,方便动态贝叶斯网络的参数、结构学习以及更新。通过多传感器反馈回态势系统的数据,进行数据预处理与分析后,可由专家指定或是数据分析,生成当前时刻下的态势要素以及态势要素属性。最后通过贝叶斯网络方法生成舰船态势估计算法,对目标进行监测与意图分析。

2 自适应动态贝叶斯网络的态势估计算法

海面环境以及舰船目标是动态的,因此,对目标舰船的态势评估必须适应目标状况以及海面状况的变化,否则,态势评估将失去实际意义。动态贝叶斯网络的自适应态势估计算法由4个部分组成,其中初始网络结构是算法的初始条件,而网络节点的独立性检验是判断新的态势节点是否加入态势算法中的检验,最后网络结构学习及判定是生成新的舰船态势估计算法的过程与条件。

2.1 动态贝叶斯网络的初始结构

动态贝叶斯的网络初始结构为1个静态的贝叶斯网络。在当前时刻下,分析海域下对目标构成影响的态势要素,确定贝叶斯网络的输入节点、中间节点与输出节点。根据节点间的因果关系,通过有向弧连接,建立了当前时刻下舰船态势估计算法的网络结构。

图2 初始网络构成

单目标舰船以及多目标舰船群的合作意图为网络的输出,通过当前时间片段下目标的状态属性来进行推测。因此,需要分析传感器获取到的数据以及与该目标合作意图相关的各种属性状态。单目标舰船状况下,结合知识库数据分析,确定初始网络的节点为舰船类型、海面天气状况、船舶航道和意图等6个态势要素节点。对于每个节点的属性,舰船类型分为游轮、货船、快艇和客船4个属性;天气节点分为晴天、多云、阴天、雨雪天以及雾天5个属性;舰船速度模糊化后分为快、一般、慢和静止4个属性;意图则分为合作与非合作两个属性。依据专家知识先验算法构建初始网络如图2所示。

2.2 网络节点间独立性检验

条件独立性测试是在给定条件集合下检测两个变量条件独立关系的一种典型度量。通常应用在贝叶斯网络的结构学习中。条件独立性测试的基础是信息论中信息流的度量,通常情况下采用互信息和条件互信息进行变量之间条件独立性测试。互信息是描述两个随机变量依赖程度的数学量,若两个随机变量存在相互影响或是因果关系,则其中一个随机量会包含另一个随机量的信息。若互信息越大,则可说明两个随机量之间依赖关系越强[9]。两个变量之间的互信息为I(X∶Y),随机变量X的信息熵为H(X),给定Y的条件下X的信息熵为H(X/Y),可表示如下:

I(X∶Y)=H(X)-H(X|Y) ,

(1)

(2)

(3)

其中,n和m分别表示变量X和Y的状态数,P(X=xi,Y=yi)表示X和Y的联合概率分布。

将网络中的所有节点看作是不同的随机量,可计算相互之间的互信息。在贝叶斯网络中,一个节点可以跟多个节点连接,这种情况下就需要判定具体节点的相关性。同时按相关性对多个节点进行排序,排序是为得到各个节点与其相关节点的重要性,之后再按照排序结果与设定的阈值进行对比,重新生成当前时间片段下的贝叶斯网络。具体算法过程如下:

再次,农业新技术推广进程缓慢。农业新技术中,水肥一体化和缓控释肥技术最引人注目。水肥一体化推广近20年,但土地分散经营性质决定其应用局限在大户和经作区,应用水平参差不齐,总体处于初级阶段。随着土地集中,会迎来爆发阶段。

(1) 若有新的节点加入,则计算节点间的互信息并排序。

(2) 排序后再对互信息设定阈值α(α∈[0,1])。

(3) 若排序后最末端的节点互信息值与阈值小于0.05,则认为该节点为当前时间片段下不相关的节点,并删除。

(4) 再判定互信息小于阈值的节点为当前时间片段下不相关的节点,并删除。

(5) 若新加入节点的互信息大于阈值,则保留并重新进行网络结构学习,生成新的网络。

2.3 网络结构性学习与输出判定

贝叶斯网络的结构学习是从给定的数据集中学出贝叶斯网络结构,即只有确定各节点之间的依赖关系,才能进行网络的参数输入或参数学习。常用的结构学习方法有基于搜索评分的方法、基于约束的方法等。K2算法是基于搜索评分的方法,并以下式为评分函数来学习贝叶斯网络结构:

(4)

其中,数据集为D;贝叶斯网络的结构为BS;c为每一个网络结构BS的先验概率P(BS),为常数;n为节点个数;ri为节点xi的取值个数;πi为节点xi的父节点集;qi为πi的配置数。

在由K2算法生成的舰船态势估计贝叶斯网络结构后,需要对生成的结构进行判断:其是否符合当前时刻下的因果关系。由专家给出的基本因果关系存储在知识库中,选取生成的网络中的部分节点因果关系与生成的网络对比,若符合,则输出当前时刻下的态势估计贝叶斯网络算法;若不符合,则重新返回网络学习。

2.4 自适应舰船态势估计算法设计

图3 文中算法的流程图

在网络节点的独立性测试的基础上,给出文中所提出的态势估计算法。在文中的算法中,主要是通过将态势节点转化成随机变量,再通过计算随机变量间的互信息,得到节点间的相关性。当有新的态势要素出现时,重新计算每个态势要素之间的互信息,通过对比和排序,选定当前时刻下态势要素,排除不相关的节点,再进行网络结构学习,生成当前时刻下的贝叶斯网络。最后,再对生成的网络进行判定,通过选取部分节点以及其因果关系,与知识库中已知的基本因果关系对比,输出当前时间片段的贝叶斯网络。文中算法的流程如图3所示。

3 仿真与结果分析

为了验证动态贝叶斯网的自适应态势估计算法的有效性,在Visual Stdio2013 C和Python2.7的环境下进行了仿真与实验。

3.1 算法性能仿真实验

为验证算法的合理性,仿真实验假定500平方海里的海域,并设定需要对10 000艘舰船进行态势估计。其中合作舰船目标5 000艘,非合作舰船目标5 000艘,态势的更新周期为1 h。在6个时间片段内对算法的性能进行检测,并假定传感器获取目标在第2个时间片段内出现了更改航道,行驶入其他航道,最后在第4个时间片段内回归了原先给定的航道行驶。动态贝叶斯舰船态势估计算法与改进后的算法均采用图2所示的网络初始结构。

在算法的仿真实验中,设定阈值α对网络的生成有一定的影响。在t2时间片段内,设定阈值的值分别为0,0.10,0.20,0.250,0.30和0.40,可以得到不同阈值下的态势推理的结果。当阈值取0和大于等于0.40时,整个网络最后生成不符合知识库中的因果关系,判定失败,无法进行态势估计。当阈值取0.10时,算法最后在生成网络时,得到合作船只数为3 756艘,但有12%的概率生成的网络局部不符合知识库中的因果关系。当阀值取0.30时,得到合作船只数为3 210艘,算法则有4%的概率生成失败;当阈值取0.20时,得到合作船只数为3 543艘。因此实验中选取阈值为0.20。

采用动态贝叶斯网络的舰船态势算法与文中设计的算法所检测到合作与非合作船只如表1所示。文中算法在t1时间片段内,检测到了4 210艘合作船只;在t2时间片段内,因外部环境发生变化,算法检测到3 543艘合作船只;在t4时间片段内,算法检测到3 712艘合作船只,检测结果优于未改进的算法。

在6个时间片段内,综合对仿真实验的结果进行错误率分析,得到了如图4所示的两种算法对比检测错误率图。通过对比图4中所示的两种算法的错误率变化,在时刻t2下对10 000艘舰船的合作与非合作态势判断的错误率为40.9%,而采用文中设计的算法错误率是29.1%,错误率降低了11.8%。采用动态贝叶斯网络舰船态势估计算法在6个时间片段内整体合作属性的态势错误率是29.4%,而采用文中算法的错误率降低了7.1%,为22.3%,体现了文中设计算法的有效性与合理性。

表1 算法仿真测试结果

图4 合作船只态势估计错误率曲线

3.2 算法实测数据实验

图5 更新后贝叶斯网络结构

实验以某海域内监控船发现目标A的情况下,判断该目标的意图,并对其进行跟踪探测。实验数据来源于高频地波雷达数据。初始网络采用图2基于专家知识的先验算法。按照态势要素进行分析和提取后,将推断当前态势状态的节点设置为态势节点,观测到发生事件的节点设置为事件节点。t1时刻下的网络参数由专家指定,之后的网络参数由多传感器数据组成的知识库中学习给定。通过8个时间片段给定目标A的意图变化。

设置相关海域面积为200平方海里的区域,并设态势更新的周期为1 h。首先在未考虑多种影响条件下通过动态贝叶斯网络算法对态势进行估计。目标A在3个时间片段内相关海域态势要素的属性概率发生了变化,通过动态贝叶斯网络推理算法以及更新参数,可以得到该目标这3个时间片段内的态势。舰船的态势估计,主要体现在舰船意图态势的变化。

表2 算法实测目标A在3个时刻的态势变化

图6 合作态势概率变化曲线

通过合成孔径雷达以及高频地波雷达等传感器发现,实际情况在t2时间片段内发现目标A未离开相关海域,但偏离航道航行,同时在t4时间片段内恢复了正常航行。多个传感器获取信息后,将数据存储在知识库中进行分析与存储,之后通过文中算法重新生成当前时刻下的网络结构算法,如图5所示。更新后的贝叶斯网络算法中类型、天气、岛屿为初始节点,速度、航向为隐节点,意图为输出节点。

对比图2与图5可以发现,在时间片段内,动态贝叶斯网络的结构发生了变化。原先结构中的航道节点被航向节点替代,同时增加了岛屿节点,并构成了因果关系。网络计算可以得到原结构中的航道态势要素节点与速度节点和意图节点的互信息分别为0.201 2和0.842 5,通过排序后发现,航道节点为最末端节点,并与设定的阈值小于0.05,即可认为是当前状况下不相关节点。而通过文中算法替换的航向节点与速度节点、意图节点和岛屿节点的互信息分别是0.354 0、0.912 2和0.743 2。最后生成了更新后的舰船态势估计网络算法。传感器获得到的新态势要素数据并构成更新的态势估计算法,通过文中设计的算法可以得到该目标在这3个时间片段内的态势,如表2所示。

表2给出了在相关海域下,通过动态贝叶斯网络计算目标A的态势估计合作概率值的变化。通过对比两种算法的结果可以得到,在t1时刻,因初始网络,合作概率相同;而在t2时刻,舰船A离开航道后,改进后的算法计算出意图态势中,合作属性的概率为0.604 4,而未改进的动态贝叶斯网络算法输出的合作属性概率为0.563 3,文中提出的改进后的算法提升了3.7%,具有一定的有效性。

综合表2以及实验结果,在8个时间片段内对目标舰船A的意图变化进行分析。通过文中算法与未改进的动态贝叶斯网络舰船态势估计算法对比,态势的变化曲线图如图6所示。对比图6中两种算法的性能可得到,在t2时刻舰船发生了变化,而网络的结构也进行了改变,文中设计的算法能够更好地计算出目标A的合作态势。而在t4时刻,目标舰船A重新返回既定航道,改进后的算法计算出概率同样优于未改进的动态贝叶斯网络态势估计算法计算的概率。文中算法能够很好地适应并计算出改变后态势的变化。

4 结束语

文中针对贝叶斯网络舰船态势估计算法中,网络结构参数不能随海面状况及目标舰船改变的问题,依据多个传感器的数据和新获取的态势信息进行推理,且设计了一个舰船态势估计算法。该算法通过计算新态势要素与原有态势要素间的互信息,最后对比专家库中的基本信息,完成对动态贝叶斯网络结构参数的构建与更新。通过仿真实验并与动态贝叶斯网络态势估计算法相对比,在海面环境和目标状况发生了改变的情况下,完成了对舰船的态势推理,提升了合作意图的概率,降低了合作船只的错误率,验证了该算法的可行性和有效性。

猜你喜欢
互信息网络结构贝叶斯
基于贝叶斯解释回应被告人讲述的故事
基于改进互信息和邻接熵的微博新词发现方法
基于时效网络的空间信息网络结构脆弱性分析方法研究
基于贝叶斯估计的轨道占用识别方法
基于互信息的贝叶斯网络结构学习
联合互信息水下目标特征选择算法
复杂网络结构比对算法研究进展
高速公路高清视频监控系统网络结构设计
基于增量式互信息的图像快速匹配方法
IIRCT下负二项分布参数多变点的贝叶斯估计