神经过程和运动模型混合驱动的机动目标跟踪算法
2023-05-05朱洪峰熊伟崔亚奇王子玲
朱洪峰,熊伟,崔亚奇,王子玲
(海军航空大学信息融合研究所,264001,山东烟台)
目标跟踪技术在军用和民用两个领域有着广泛的应用[1-2]。如今应用较为广泛的是Kalman滤波[3]、交互式多模型(interactive multiple-model,IMM)[4]以及在这两种框架上发展、改进而来的算法。但是,基于模型的经典算法非常依赖先验知识。随着科学技术的发展,目标的运动能力愈发强大,目标跟踪应用的环境也愈发复杂,经典目标跟踪算法越来越难以满足应用需求。近十年,深度学习技术得到了飞速发展,在许多领域有了广泛的研究和应用[5]。深度学习作为一种数据驱动方法,能够从大数据中学习到显式模型难以表达的潜在规律和趋势。因此,许多学者将其应用到目标跟踪中,利用神经网络学习目标和环境的知识来提高经典算法的效能,形成数据与模型混合驱动的目标跟踪算法。随着计算机技术的不断发展以及未来智能化的需求,混合驱动成为了目标跟踪技术的重要的发展趋势之一[6]。
目前,混合驱动的目标跟踪相关研究可以总结为对经典模型驱动算法的运动模型参数[7]、中间参数[8]以及估计输出[9]这3个方面进行估计和修正,使得经典跟踪算法的跟踪性能有了一定的提升。但是,上述的同类文献中的神经网络几乎采用的都是有监督学习的方式,需要优化目标的真值或者标签,如运动模型和真实轨迹。数据集是深度学习应用面临的阻碍之一[10],在实际的目标跟踪工程应用中,目标运动的成本和时机、电磁环境以及任务限制等客观因素限制了采集到的数据集规模和质量[11],而且许多复杂场景难以获取理想的标签或者真值,这导致有监督学习的方式难以真正实施和部署。无监督学习的方式通常不需要优化目标的真值,对数据集的要求低。随着目标跟踪应用的环境越发复杂,研究探索无监督学习的混合驱动目标跟踪算法对于工程实用有着重要意义。
现有的无监督学习的目标跟踪算法大多采用时间序列处理领域的变分自编码器(variational auto-encoder,VAE)[12]作为基本网络结构,之后结合其他网络进行发展而来。文献[13]使用循环神经网络和VAE构建了一个贝叶斯滤波器进行时间序列预测;文献[14]使用了VAE来进行自动驾驶中的轨迹重建和机动分类;文献[15]将神经网络建模随机过程,并利用VAE的架构对参数求解,提出了神经过程等。这些方法能够通过无监督的方式学习时间序列的建模和生成,但是解码器直接使用神经网络输出序列,直接用于目标轨迹生成时,会导致输出的目标轨迹受量测影响严重,平滑性和动力学特征差,算法可解释性差,也没有充分利用已知的领域知识。因此,如何将领域知识与VAE充分结合,实现更加符合实际的时间序列处理器,也是当下一个热点研究问题[16]。
为了进一步提高无监督学习的目标跟踪算法的跟踪效果,本文对神经过程的解码器使用了混合驱动的方式进行重构,提出了一种混合驱动的神经过程滤波器(hybrid-driven neural process filter, HD-NPF)。HD-NPF在解码器部分使用神经网络作为数据驱动,估计每个滑动时间窗口内的目标运动的随机微分方程的初值以及机动参数,求解微分方程可得到目标任意时刻的状态估计,从而实现了混合驱动。目标的动力学模型引导和约束了目标轨迹生成过程,从而使得生成的轨迹更加平滑且具有动力学特征,也降低了神经网络的规模,提高了其学习效率。仿真结果表明,HD-NPF依赖先验知识少,环境自适应能力较之经典目标跟踪算法更强。
1 问题描述
1.1 目标运动的随机微分方程
本文主要考虑目标跟踪中目标的状态估计(滤波)问题[17]。在实际场景中,目标运动在时间上是连续的,加上环境中的扰动,目标运动可通过Langevin随机微分方程进行建模[18]
(1)
对于dβ(t),从广义上来看,其不仅包含了环境噪声,还包含了当目标遇到未知情况进行的人工调整、规避以及目标跟踪算法机动判断延迟(算法需要累积一定量测才能判断出目标机动)带来的误差等,这些使得dβ(t)以及D(x(t),t)的数学形式非常复杂,甚至难以用数学模型明确表达。
因此,在复杂的机动场景中,难以获得准确先验知识,难以精确设置式(1)的各部分,导致跟踪受到影响。
1.2 神经过程网络
神经过程(neural process, NP)[15]是一种将随机过程和神经网络相结合的模型,其本质是使用神经网络来参数化随机过程的映射函数,然后利用推导VAE的方式推导出NP的参数学习方式。NP的主要原理如下。
首先,定义一个随机过程函数F:T →S,对于任意一个有限序列,表示为向量t1:n=(t1,t2,…,tn),ti∈T,i=1,2,…,n(i为序列索引),定义ρ为(F(t1),F(t2),…,F(tn))的边缘分布,则有
ρ1:n(s1:n)=ρt1,…,tn(s1,…,sn)
(2)
上式满足文献[15]中的一致性和交换性时,对于F的一个实例化f,根据式(2)有
(3)
实际中的样本y是存在量测噪声的,类似高斯过程,NP将量测噪声建模为Si~N (F(ti),σ2),即
(4)
将式(4)代入式(3),得到
(5)
然后,NP采用神经网络g重新建模F(ti),高维向量h作为输入提供序列信息,即F(ti)=g(ti,h),式(5)可重新表示为
(6)
结合VAE的推导过程[12],引入h的变分先验分布q(h|s1:n,t1:n),则似然函数p(s1:n|t1:n)的证据下限(evidence lower-bound,ELBO)表示为
Lp(s1:n|t1:n)=-KL(q(h|s1:n,t1:n)‖p(h))+
(7)
式中KL代表求取KL散度的函数。NP为了便于处理预测问题和使网络更好地学习到正确的模型,其将数据集划分为上下文信息t1:m、s1:m和目标信息tm+1:n、sm+1:n,然后使用上下文信息q(h|s1:m,t1:m)作为先验信息替代q(h|s1:n,t1-n),则预测分布p(sm+1:n|t1:m,s1:m)的ELBO为
Lp(sm+1:n|t1:n,s1:m)=
-KL(q(h|s1:n,t1:n)‖q(h|s1:m,t1:n))+
(8)
NP通过最小化式(8)来完成序列的无监督学习。NP通过神经网络参数化随机过程,灵活性强,并且根据上下文信息预测目标点的方式将部分训练转移到测试时间,提高了效率。本文采用NP作为无监督学习的网络框架,对目标的轨迹进行学习和估计。
2 基于神经过程的混合驱动滤波器
2.1 混合驱动解码器
1.2小节分析了NP的基本原理,在应用中x为时间或者控制量,y为时间序列。但是,由NP解码器的生成过程(式(6))可以看到,生成的yi是相互独立的,如果将y作为目标轨迹序列,这显然是不符合实际的。目标状态的转移通常以一阶Markov链建模,为了符合目标跟踪的变量设定,这里强调:x和z分别表示目标量测和状态向量。令M表示目标的运动模式或者对应的参数,可以得到联合分布
p(z1:n,x1:n,h,M)=p(h)p(M0)p(x0)·
(9)
神经网络是一种数据驱动的方法,具有强大的非线性拟合和建模能力[20]。在复杂的机动场景中,目标运动和环境难以建模,采用神经网络参数化式(1)得到神经微分方程[21]是较好的选择。但是,完全使用神经网络估计目标轨迹并没有利用好领域知识(如目标遵从一些基本的运动规律),可解释性差,且因为一般将网络的维度设置较大而导致计算消耗大。因此,本小节提出了混合驱动解码器,来替代NP的解码器。
(10)
(11)
结合式(1)可以得到混合驱动的解码器微分方程
(12)
t,t0,t1∈[k-l+1,k+1]
(13)
式中SDESolver为随机微分方程(stochastic differential equation, SDE)的求解器。
式(12)根据目标加速度模型,直接给定了目标状态与其微分的形式,这给神经网络的梯度优化过程提供了方向,提高了解码器的学习效率的同时减少了神经网络的规模,提高了算法的可解释性。
2.2 HD-NPF框架结构
将2.1小节提出的混合驱动解码器与NP的解码器相结合,得到了基于神经过程的混合驱动滤波器(HD-NPF),其网络结构如图1所示。
图1 混合驱动神经过程滤波器结构Fig.1 Structure diagram of the hybrid-driven neural process filter
(14)
(15)
(16)
(17)
令目标状态为高斯分布(即使不服从高斯分布,神经网络会对其补偿),同时令量测矩阵为
(18)
根据高斯分布的性质,得到似然函数
(19)
式中to表示HDF-NP输出的目标状态估计的时刻点序列向量。
对比1.2小节和本小节HD-NPF和NP的原理可以发现,两者的本质区别在式(6)和式(16)。即,HD-NPF在解码器部分由于动力学约束p(xi|xi-1,h)导致其可能不再满足NP的一致性和交换性,不能直接利用NP的ELBO计算方式和结论。因此,需要证明HD-NPF也是NP。
p((z1:n,x1:n),h)=p(Fθ(t))·
(20)
此时,式(20)与式(6)具有同样的形式,因此HD-NPF也为一种NP,可以直接使用NP的结论。结合式(8)和式(16),令在当前滑动窗口中算法生成的轨迹点数为Ng,可以得到HDF-NP的ELBO为
(21)
对比式(21)和式(8)可以发现,HDF-NP的ELBO或者优化目标较之NP没有变化,但是其内部解码器生成过程具有了动力学特征,目标状态相互之间具有Markov性,算法的可解释性提高。而且,相较NP,本文提出的HDF-NP在动力学约束下,能够生成状态的二阶估计,即速度、状态估计的维度得以增加。
3 HD-NPF训练
为便于分析HD-NPF性能,本文构造了一个二维的飞行目标数据集作为训练集。令目标在二维直角坐标系平面进行运动,其运动由CV、CA以及CT随机组合,形成机动轨迹。每条轨迹的起始和结束模型为CV,中间进行了两次随机为CA或者CT的机动。数据集其他参数见表1。
表1 数据集参数
目标的初始位置和速度在满足表1情况下随机生成。令rand(a,b)表示a和b之间的均匀分布。CV运动持续时间为rand(10, 30) s;CA运动持续时间为rand(10, 20) s(首要满足加速后不超过最大速度)。
根据表1随机生成100条轨迹,每条轨迹随机抽选20条长度为10 s(上下文信息为其中2~7 s的片段)的轨迹段,则训练集的规模为2 000条。每个训练轮对数据集添加标准差为50 m的零均值高斯白噪声,使得网络更好地学习目标轨迹的统计特征。
(22)
(23)
目标量测数据随轨迹起始点变化范围很大,为便于神经网络学习,需要对其进行归一化处理。根据目标轨迹特点和表1,本文将目标量测轨迹段归一化到[-1,1]
(24)
式中:tk=[k-l+1,k-l+2,…,k]为第t个窗口内量测对应的时间戳向量;fs为传感器的采样频率;vmax为预设的目标最大速度;lp为需要预测的时刻点数目,目标跟踪中通常关注滤波值和一步预测,因此lp=1。
4 仿真实验与分析
4.1 HD-NPF和NP对比
首先进行HD-NPF的消融实验,验证分析HD-NPF中混合驱动解码模块的效果。NP和HD-NPF采用同样的训练集轨迹长度进行训练。按照第3节所述随机生成一条轨迹段,分别使用HDF-NP和NP生成目标轨迹,结果如图2所示。
对比图2中HD-NPF和NP生成的轨迹可以发现,由于HD-NPF的解码器为混合驱动的动力学解码模块,使得其生成的轨迹较NP明显平滑了许多,具有了目标运动的特征,而NP学习的结果是朝着量测靠近,导致其估计的轨迹受数据影响大。由此可知,混合驱动的动力学模块正确发挥了预期作用。
(a)HD-NPF生成轨迹
(b)NP生成轨迹
4.2 机动目标跟踪实验
由于本文考虑的是复杂机动场景且先验知识难以获知下的机动目标跟踪问题,因此对比算法的参数设置较为粗糙。LSF算法采用3阶多项式来对目标每个维度的量测进行拟合。CS模型的机动频率设置为α=1/20,最大加速度幅值为|a±max|=60 m/s2。CS和IMM的量测方差设置为σm=2 500 m2。IMM采用了3个Kalman滤波器,运动模型和参数设置如下:过程噪声σp=0.012m2的CV,σp=0.012m2、σp=16 m2的CA,转移概率矩阵为
(25)
(26)
然后,进行机动目标跟踪实验。对于HD-NPF,当目标刚起始跟踪即量测数目小于l时,无法进行跟踪。这个阶段选择经典算法进行初始跟踪。
场景1在这个场景中,目标状态初值x0=[7 000 m,200 m/s,6 000 m,220 m/s]T。开始时直行15 s,然后采取蛇形机动直到80 s,在81~90 s时直行,16~80 s阶段进行5次CA模型机动,其加速度相对于时间的变化情况见表2。
表2 场景1中CA模型参数序列
进行200次蒙特卡罗仿真实验,得到场景1中各算法跟踪的位置和速度RMSE对比,如图3所示。
计算场景1中各算法在整个轨迹上的位置和速度的平均均方根误差和峰值均方根误差,结果如表3所示。需要说明的是,上述计算从轨迹的第12 s开始算起,以减少算法初始化对计算指标的影响。此外,将4个算法200次仿真的运行时间也列于表3中。
(a)位置RMSE对比
(b)速度RMSE对比
从图3和表3可以看出:本文提出的HD-NPF算法由于使用了混合驱动,同时具有了数据驱动和模型驱动算法的特征。HD-NPF由于利用目标历史信息,位置和速度RMSE的曲线较模型驱动算法(CS、IMM)波动更小,峰值误差更低,较CS和IMM降低了约20%,跟踪更为平稳、鲁棒性更强。较数据驱动算法(LSF),HD-NPF由于加入了领域知识,使其在图3(a)中能够对目标运动模型的变化发生产生一定反馈,在图3(b)中在目标稳定运动期间,如10~35 s,速度的估计明显优于LSF算法,可解释性更强,符合表3的数据。
从200次仿真中随机抽选一次实验,将各算法的轨迹进行对比,如图4(a)所示。为方便观察,局部放大其机动部分,如图4(b)所示。可以看出,由于HD-NPF解码器为混合驱动的动力学模块,其估计的轨迹平滑性较好。
但是,HD-NPF是无监督学习算法,学习效率较低。同时,场景1的机动为加速度机动,较为符合LSF、CS和IMM的先验知识设置,因此在位置跟踪精度上,HDF-NP较其他3种算法较差。
从表3中算法的运行时间来看,虽然HD-NPF使用了神经网络,但是增加的计算成本并不多,较IMM,200次仿真仅增加了0.3 s左右,效率较高。
表3 场景1跟踪精度对比
(a)估计轨迹
(b)估计轨迹局部放大
场景2场景1的轨迹虽然与训练集不同构,但是其速度等关键参数范围大致在表1范围内。在实际场景中,可能在跟踪区域出现异常目标,其机动性明显超出训练集参数范围,此时重新训练算法是不现实的。对于本文提出的HD-NPF,面对上述的异常目标,其策略为通过调整式(24)的轨迹段归一化参数vmax,对异常目标的量测数据进行适当缩放,使得处理后的轨迹参数范围大致符合训练集,从而尽可能保证跟踪效果。
因此,场景2设置了一个异常目标的跟踪场景,其特点在于高速和高机动性。令目标初始状态向量为x0=[4 000 m,300 m/s,9 000 m,600 m/s]T,目标在1~15 s期间进行匀速直线运动,然后以-20 (°)/s的转弯率右转弯15 s,31~40 s期间以[-30,10]Tm/s2的加速度机动,然后再以15 (°)/s的转弯率持续10 s的左转弯,之后再以[-40,15]Tm/s2的加速度机动10 s,最后10 s恢复匀速直线运动。另外,假设目标所在电磁环境较差,设置量测噪声标准差为100 m。
此时,HD-NPF在初始跟踪阶段判断其可能为异常目标后,对式(24)调整,本文设置本场景|vmax|=1 000 m/s。此外,目标的高机动容易导致经典算法发散,将CS的加速度幅值调整为|a±max|=80 m/s2,IMM算法CA模型的过程噪声从σp=0.012m2调整为σp=1 m2。进行200次蒙特卡罗仿真实验,得到仿真结果如图5、图6及表4所示。
(a)位置RMSE对比
(b)速度RMSE对比
(a)估计的轨迹
(b)估计轨迹局部放大
表4 场景2跟踪精度对比
在场景2中,由于是训练集之外的异常目标,IMM和CS的参数只是略微修改以尽量避免发散,并没有足够的先验知识为其设置较为精确的模型参数。加上目标高机动、高速度的影响,IMM和CS的跟踪效果误差很大(见图5和表4),估计轨迹在机动部分已经偏离真实轨迹严重(见图6)。本文提出的HD-NPF可以利用结构上的特点,通过归一化部分缩放的方式,尽可能适应异常情况。图5和表3表明,HD-NPF仍然能够保持场景1中的部分优势,较IMM和CS具有更加稳定的RMSE和更高的跟踪精度。在实际应用中,对异常目标关注度更高,比如防碰撞等,此时HD-NPF的优势更加明显。
从图5和表4可以看出,LSF的跟踪表现较HD-NPF更好,从图5可以观察到两者跟踪精度差异主要体现在15~30 s和40~50 s期间的转弯机动。这是由于目标的高速度使得转弯半径较大,导致HD-NPF易识别成为接近直线的运动,进而跟踪精度降低。因此,实际中应该尽可能使得训练集能够覆盖目标可能的运动模型和情景。
结合两个场景的仿真结果可以看出,虽然模型驱动方式跟踪精度较高,但是依赖精确的先验知识,一旦先验知识设置不准确,其跟踪精度急速下降。数据驱动的方法依赖先验知识少,且环境适应能力强,在各个场景均保持几乎一致的跟踪效果,但可解释性差,难以辨别目标的模型变化。本文提出的HDF-NP结合了两者特点,依赖先验知识少,环境适应能力强,且具有一定的可解释性,即对目标模型具有一定识别能力,且采用的是无监督学习的方式,对数据集要求低,更加易于实际应用。
在实际场景中,电磁干扰和通信等因素会使得量测可能出现乱序、缺失等现象,LSF虽然在上述实验中跟踪表现一般,但是较经典跟踪算法,其在处理这类连续时间跟踪时具有优势[26-27]。式(13)~(17)以及图1的结果表明,HD-NPF可以接受无序的量测作为输入,输出任意连续时刻的状态估计。因此,下一步工作将探索HD-NPF作为连续时间函数处理量测乱序、缺失等更加符合实际情况的目标跟踪问题。
5 结 论
本文基于神经过程框架提出了一种无监督学习的混合驱动机动目标跟踪算法。通过将目标运动的加速度模型和神经网络参数化的目标运动微分方程相结合,构造出了混合驱动的动力学解码模块,替换了NP的解码部分,使得HD-NPFP生成的轨迹更加平滑和具有动力学特征。通过仿真实验可以得到以下结论。
(1)HD-NPF由于使用了混合驱动解码模块,估计的轨迹较NP在平滑性和动力学特征上明显得到增强。HD-NPF同时具有了模型驱动和数据驱动算法的优势:环境自适应能力强,跟踪稳定,需要先验知识少,且能对目标的运动模型具有一定识别能力。
(2) HD-NPF采用的是无监督学习方法,对数据集要求低,在实际情况中更加易于部署。下一步工作将探索HD-NPF在乱序、缺失和不等时间间隔量测等复杂场景中的目标跟踪问题。