本发明涉及船舶轨迹预测,尤其涉及一种基于状态重建的lstm多船舶轨迹预测的方法。
背景技术:
1、随着大型和高速船舶的出现,特别是随着智能和自主船舶的引入,海上运输面临着日益复杂的交通环境,面临着新的安全挑战。而轨迹预测被广泛认为是实现安全自主导航的关键技术之一,并且自动识别系统数据驱动的船舶轨迹预测可以有效地帮助识别异常船舶行为,减少碰撞、搁浅和接触等海上风险。
2、自动识别系统(automatic identification system,ais)为海上交通的监测和监视提供了宝贵的信息。ais数据可以提供附近船舶的动态信息(经纬度坐标表示的当前位置、当前的对地航向信息等)、航行信息,以及静态信息(海上移动服务标识-mmsi号码格式的识别号码、船舶名称等)。虽然ais可以提供多种信息,但是船舶轨迹组成的ais数据不可避免地包含干扰结论的噪声或缺失数据。针对该问题,提出了一种改进的运动学插值方法,将数据预处理与插值相结合,在插值过程中充分考虑了船舶的位置、速度和加速度等船舶运动学信息。针对ais数据中出现的纠缠点,提出了一种称为图信号变异检测(gsvd)的算法来识别和重建缠结,对数据进行预处理,去除冗余点和平稳点。以上都说明了在处理ais数据集时需要耗费大量时间,且数据集中会存在一些缺失点需要对船舶位置重建。
3、为了考虑在海洋环境中船舶之间存在复杂的空间依赖关系,提出了使用图卷积网络。图卷积网络擅长捕捉邻近船只之间的空间关系,使模型能够考虑周围船只对轨迹预测的影响。虽然图卷积网络能考虑到船舶间的相关影响,但要全面考虑船舶间相互作用仍然是一项挑战。近年来,数据驱动的学习方法,特别是递归神经网络模型,因其显示出从大规模数据中学习社会互动微妙之处的强大能力而受到研究人员的青睐。
4、此外,船舶轨迹预测还要考虑船舶轨迹表现出明显的时间相关性。近年来,一些研究尝试基于递归神经网络来学习社会行为,如长短期记忆网络(lstm)。在这些方法中,通常使用lstm来预测船舶的行驶过程。所有船舶的网络参数由lstm共享。对于每个船舶,使用lstm隐藏状态作为预测未来轨迹的特征表示。为了利用相互间的轨迹信息来预测轨迹,提出了一种social池化,相邻lstm的隐藏状态也通常被用作池化。但是,由于ais数据中存在时间间隔过长,常常使用插值的方法来弥补中间缺失的数据,因此在前一个时间步长的特征无法显示其最新状态。这些特征只能代表一个稍微延迟的轨迹模式。
技术实现思路
1、本发明为解决现有技术中只能够根据时间预测轨迹而不能考虑多船之间相互影响关系,以及无法实现多船舶场景下的轨迹预测问题,提出一种基于状态重建的lstm多船舶轨迹预测的方法,该方法能够在考虑到自身船舶运行轨迹的同时,考虑到船舶间轨迹相互作用,最终实现在多船舶场景下的轨迹预测,适用范围广、预测效果好。
2、本发明的技术方案如下:
3、一种基于状态重建的lstm多船舶轨迹预测的方法,包括以下步骤:
4、s1:数据预处理:预处理待预测的ais数据;所述ais数据中包括:经纬度、时间、船舶编号信息;采用插值处理方法补充缺失的ais数据并筛选得到船舶轨迹数据;
5、s2:特征提取:将s1中预处理后的ais数据输入lstm网络进行特征提取,得到包含位置信息和时间信息的船舶特征;
6、s3:状态细化船舶特征:将s2中初步提取的船舶特征进行状态重建,将状态重建后的特征输入lstm网络进行轨迹预测;利用预测得到的船舶特征中位置信息将多个船的轨迹视为一个图,并作为图卷积网络的输入;利用图卷积网络中的消息传递机制提取船舶间的相互特征,最后经过线性层得到状态细化后的船舶特征;
7、s4:细化迭代船舶特征:将s3中状态细化好的船舶轨迹特征再次利用图卷积网络的消息传递机制进行状态细化;
8、s5:轨迹预测:将迭代好的状态细化后的特征作为下一个lstm网络的输入,输入到下个lstm网络的输入单元中,最后输出预测后的轨迹。
9、优选的,所述的ais数据的预处理过程具体步骤如下:
10、s11,对时间间隔缺失较短的ais数据进行差值处理;
11、s12,对时间间隔缺失较长的ais数据认为不是一段轨迹;
12、s13,筛选s11和s12处理后的数据,筛选出同一时间段存在多条船舶的ais数据。
13、优选的,所述的状态细化中的具体步骤如下:
14、s31:将初步提取的特征进行状态重建,经过重建后利用lstm网络进行预测得到特征a;所述特征a包含:位置信息和隐藏状态;所述的状态重建中引入了图卷积网络的消息传递机制;
15、s32:利用特征a中的位置信息将多个船的轨迹视为一个图,并作为图卷积网络的输入;
16、s33:利用图卷积网络中的消息传递机制提取船舶间的相互特征,最后经过线性层得到状态细化后的特征;所述相互特征包括:lstm的隐藏状态和相应船舶的注意力值;所述状态细化后的特征包括:相邻船舶的数量、位置信息和隐藏状态。
17、优选的,所述的状态重建步骤先根据时间戳将船舶对齐,然后将所有船舶的三个信息源作为输入,所述三个信息源包括ais数据中船舶的当前位置、lstm中的隐藏状态和lstm的单元状态,输出为重建后的单元状态;在数学上,用于重建单元状态的操作可以表示为:
18、
19、其中,表示消息传递函数,表示当前目标船舶lstm的隐藏状态,代表在的基础上迭代一次后的lstm的隐藏状态,代表当前的lstm单元状态,t表示时间,l表示迭代的次数。
20、优选的,所述的图卷积网络的消息传递机制通过节点之间的消息传递和聚合来实现图卷积网络的消息传递机制;
21、所述节点为船舶的一组特征表示,该特征表示包含船舶的属性或状态;
22、所述图卷积网络的消息传递机制通过以下步骤实现:首先,对于每个节点,将其邻居节点的特征表示作为消息进行传递,具体的表达如下所示:
23、
24、
25、式中,|nj|表示n(i)中的元素个数,表示邻居节点的lstm的隐藏状态,消息传递函数不依赖于目标船舶的lstm的隐藏状态wmp是一种线性变换,用于将消息从相邻节点j传输到目标节点i;
26、然后,对接收到的消息进行加权求和的聚合操作,以获得节点的新特征表示。
27、优选的,所述的消息传递机制引入了社会信息选择模块,包括:船舶选择注意力和船舶运动门,船舶选择注意力是选择船舶的个数,船舶运动门是选择隐藏状态,具体表达式如下所示:
28、
29、其中,⊙表示点积运算,为船舶选择注意力即船舶间的关注力大小,为船舶运动门也就是隐藏状态的选择系数,为空间相对位置大小,为中间变量,具体的计算公式如下:
30、
31、
32、
33、
34、其中,δ表示sigmoid激活函数,φr表示相对位置计算函数,分别表示目标船舶和相邻船舶的横纵坐标,wm、bm、wt、wat为相应的权重参数,通过式(4)中的点积运算来计算总体隐藏状态大小。
35、优选的,所述细化迭代方法为:所述细化迭代方法为:设置总迭代次数;将状态细化好的船舶轨迹特征输入图卷积网络,利用图卷积网络的消息传递机制向目标船舶传递邻近船舶的信息,并得到新的船舶轨迹特征,同时迭代次数加1;如果迭代次数小于总迭代次数,将新的船舶轨迹特征作为下一次迭代的输入,重复上述操作,直到迭代次数等于总迭代次数。
36、本发明的有益效果是:
37、本发明构建基于状态重建的lstm多船舶轨迹预测的方法,不仅解决了传统lstm网络只能够根据时间预测轨迹而不能预测多船之间相互影响关系的问题,还考虑了船舶自身的运动轨迹和船舶间的轨迹相互作用,能够实现在多船舶场景下的轨迹预测,适用范围广、预测效果好;本发明在传统lstm网络的基础上进行了改进,引入的状态细化模块通过图卷积网络中消息传递机制自适应地更新每个船舶的当前状态,使得模型可以考虑船舶轨迹相互作用;本发明在消息传递机制中引入社会信息选择模块,使得模型将注意力既可以集中在不同的个体上,还可以集中在不同的特征上;本发明主要考虑船舶间的相互关系,构建模型,能够更好的考虑船舶轨迹相互作用。
38、下面结合附图说明和具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
1.一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述的ais数据的预处理过程具体步骤如下:
3.根据权利要求1所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述的状态细化的具体步骤如下:
4.根据权利要求3所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述的状态重建步骤先根据时间戳将船舶对齐,然后将所有船舶的三个信息源作为输入,所述三个信息源包括ais数据中船舶的当前位置、lstm中的隐藏状态和lstm的单元状态,输出为重建后的单元状态;在数学上,用于重建单元状态的操作可以表示为:
5.根据权利要求3所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述的图卷积网络的消息传递机制通过节点之间的消息传递和聚合来实现图卷积网络的消息传递机制;
6.根据权利要求5所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述的消息传递机制引入了社会信息选择模块,包括:船舶选择注意力和船舶运动门,船舶选择注意力是选择船舶的个数,船舶运动门是选择隐藏状态,具体表达式如下所示:
7.根据权利要求1所述的一种基于状态重建的lstm多船舶轨迹预测的方法,其特征在于,所述细化迭代方法为:设置总迭代次数;将状态细化好的船舶轨迹特征输入图卷积网络,利用图卷积网络的消息传递机制向目标船舶传递邻近船舶的信息,并得到新的船舶轨迹特征,同时迭代次数加1;如果迭代次数小于总迭代次数,将新的船舶轨迹特征作为下一次迭代的输入,重复上述操作,直到迭代次数等于总迭代次数。
