一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于注意力机制和环境感知LSTM的船舶预测导航方法与流程

2022-03-09 04:01:03 来源:中国专利 TAG:

基于注意力机制和环境感知lstm的船舶预测导航方法
技术领域
1.本发明属于智能轨迹预测技术领域,具体涉及一种基于注意力机制和环境感知lstm的船舶预测导航方法。


背景技术:

2.近年来,沿海地区船舶不断增多,导致海道拥挤存在船只碰撞的危险,对周围船舶轨迹进行预测对实现船舶智能路线规划和危险预警具有重要意义。不同于普通车辆轨迹受道路和严格交通规则的制约,船舶航行随机性强、情况复杂,预测的难度更大。
3.目前主流的方法是机器学习,根据历史轨迹数据学习船舶运动模型的参数,其泛用性高于一般的运动模型。在船舶轨迹预测中被广泛采用的深度学习算法包括bp神经网络、卷积神经网络和长短期记忆神经网络等。
4.由于海域环境的复杂性,相近的船只之间存在避让或跟随的交互关系,船只对岛屿和暗礁等静止障碍物的避让也是影响其未来航路的重要因素,以上所提的算法缺少对船只间交互和避障行为的考虑,如何综合船舶的运动模型和交互避障行为是船舶智能路线导航目前面临的巨大挑战。


技术实现要素:

5.鉴于以上的分析,本发明旨在公开一种基于注意力机制和环境感知lstm的船舶预测导航方法,解决复杂拥挤环境下船舶智能导航的问题。
6.本发明为解决上述技术问题采用以下技术方案:
7.本发明公开了一种基于注意力机制和环境感知lstm的船舶预测导航方法,包括:
8.s1,对关注海域内所有船只的船舶ais信息进行数据预处理,构建轨迹数据集;
9.s2,为关注海域内每个船只分别建立一个轨迹预测模型,所述轨迹预测模型包括基于注意力机制的社会关系特征提取模块和障碍特征提取模块、运动信息编码器以及lstm;
10.s3,基于s1中的轨迹数据集,对s2中的所有轨迹预测模型进行同步训练;
11.s4,利用s3中训练好的轨迹预测模型,预测某一船只未来时刻的轨迹点,从而得到一条导航推荐路线。
12.进一步的,所述s1实现方式包括以下子步骤:
13.选取船舶交互复杂、地形复杂的区域,获取关注海域内所有船只的船舶ais信息,选定坐标原点,通过坐标轴转换将固定时间段内关注海域内船舶i的运动信息其中n是采样时刻数,表示第t个采样时刻船舶i的运动信息是第t 个采样时刻船舶i的坐标,是第t个采样时刻船舶i的航向。
14.对于同一区域采样到不同时间(这里指的是现实时间,几时几分)运动信息的数据,设需要第在第t采样时刻和第t 1采样时刻之间插值的采样时刻为t δt,对于当前船舶
运动信息(x
t
,y
t
,azi
t
)中的任一属性值z
t
,线性插值后的值为从而将不同时刻的坐标航向等数据对齐到相同的时刻。同样的方法将周围环境中静止的障碍物位置信息转换到同一坐标系下。
15.将关注海域划分为n
×
n的网格,船只的临近区域为n0×
n0大小的网格,其中n0代表临近区域的边长,n>n0,n为正整数。将船舶运动信息和其临近区域内的静止障碍物位置信息都进行数据归一化形成轨迹数据集。将轨迹数据集中的n个数据划分为obs个观测输入和n-obs个预测值。同时,将轨迹数据集划分为训练集、验证集和测试集。
16.进一步的,所述s2中提取船只间社会关系特征实现方式包括以下子步骤,
17.计算第t个采样时刻船只i与船只j的社会关系,(r
ij

ij
,d
ij
),其中r
ij
表示船只i与船只 j的相对距离、θ
ij
表示船只i与船只j的方位角,d
ij
表示船只i与船只j以第t个采样时刻的状态保持匀速直线运动后两者之间的最近距离,船只j为关注海域内除船只i外任一船只;
18.第t个采样时刻船只i与船只j的社会关系经过嵌入层嵌入后输入到多层感知器,输出注意力得分其中,表示第一嵌入层,为第一嵌入层的权重,为第一多层感知器的权重,mlp1(
·
)表示第一多层感知器;
19.建立初值均为0、大小为n0×
n0的社会关系掩码检查船只j是否在船只i临近区域的网格内,若是则将船只j所在网格位置对应的掩码更新为1;
20.建立初值均为0、大小为n0×
n0×
d的第t个采样时刻船只i的社会关系张量根据社会关系掩码将第t-1个采样时刻船只j的隐藏状态乘对应的注意力得分α
ij
,加入社会关系张量对应的单元格内;其中,d为lstm隐藏状态的大小;
21.池化汇聚船只i临近船只的社会关系张量的隐藏状态得到n1×
n1×
d的社会关系张量, n1为设定的经验值;
22.n1×
n1×
d的社会关系张量经过社会关系编码器(包括依次连接的一个输入层、一个relu层和一个dropout层),输出得到第t个采样时刻船只i编码后的社会关系特征
23.进一步的,所述s2中提取静止障碍物信息特征的实现方式包括以下子步骤,
24.计算第t个采样时刻船只i对周围静止障碍物k的注意力因素(r
ik

ik
,d
ik
),其中r
ik
表示船只i与静止障碍物k的相对距离、θ
ik
表示船只i与静止障碍物k的方位角,d
ik
表示船只i以第t个采样时刻的状态保持匀速直线运动后与静止障碍物k之间的最近距离,静止障碍物k 为关注海域内任一静止障碍物;
25.第t个采样时刻船只i对静止障碍物k的注意力因素经过嵌入层嵌入后输入到多层感知器,输出注意力得分
26.建立初值均为0、大小为n0×
n0障碍物信息掩码,检查静止障碍物k是否在船只i临近区域的网格内,若是则将静止障碍物k所在网格位置对应的掩码更新为1。
27.建立初值均为0、大小为n0×
n0×
m的第t个采样时刻船只i的障碍物信息张量根据障碍物信息掩码以临近区域内障碍物k与船只i的距离以及对应的注意力得分更新障碍物信息张量对应位置的二维数据;其中m是表示障碍物k与船只i之间距离和注意力得分
的特征向量的大小;
28.池化汇聚船只i临近静止障碍物的社会关系张量的隐藏状态得到n1×
n1×
m的障碍物信息张量;
29.n1×
n1×
m的障碍物信息张量经过障碍物信息编码器(包括依次连接的一个输入层、一个relu层和一个dropout层),输出得到第t个采样时刻船只i编码后的障碍物信息特征
30.进一步的,所述s2中运动信息编码器以及lstm的处理流程包括以下子步骤:
31.将第t个采样时刻船只i的运动信息中的坐标输入运动信息编码器,得到运动信息特征
32.将以及第t-1个采样时刻船只i的隐藏状态相连接,输入到共享参数的lstm 中,输出第t个采样时刻的隐藏状态其中w
lstm
是连接权重;
33.将隐藏状态经过输出output线性层编码得到二维高斯分布参数通过给出预测坐标将作为t 1时刻船只坐标其中表示预测坐标的均值,表示预测坐标的标准差,表示坐标分布的相关系数。
34.进一步的,所述s3中训练优化器采用均方根传递rmsprop算法,损失函数为负对数似然损失
35.进一步的,所述s4现方式包括以下子步骤:
36.在第t个采样时刻将船只i的运动信息和障碍物信息输入到训练好的模型中,输出第t 1采样时刻船只i的坐标,并以此进一步预测船只i未来t个采样时刻的运动信息traj
commend
={p
t 1
,p
t 2
,

,p
t t
},结合其临近区域船只的预测结果,得到一条导航推荐路线。
37.进一步的,对于该船导航推荐路线上的轨迹点,采用三次样条插值法平滑曲线,给出一条导航推荐航路。
38.与现有技术相比,本发明的优点是:
39.(1)本发明采用注意力机制筛选当前船只感兴趣的临近船只,结合其他船只的隐藏状态更新社会关系张量,重点学习对当前船只航迹影响大的社会关系,不仅融合了其他船只的历史运动状态还保留了船只间相对位置关系的信息,克服了多个lstm间难以共享信息的问题;
40.(2)本发明提取了船只临近区域内静止的障碍物特征,例如岛屿、暗礁的位置信息,补充了大部分轨迹预测模型无法有效利用环境信息的缺点,能够学习到船舶避障的规律,提高船舶轨迹预测的精度,进而处理得到一条安全合理的航线。
附图说明
41.图1为本实例中船舶轨迹预测模型训练和预测方法流程图;
42.图2为本实例中社会关系张量的池化过程;
43.图3为本实例中lstm在t和t 1时间的输入输出过程;
44.图4为本实例中对离散轨迹点做三次样条插值的过程。
具体实施方式
45.下面结合附图来具体描述本发明的优选实施例,其中,附图构成本技术一部分,并与本发明的实施例一起用于阐释本发明的原理。
46.本实施例公开了一种基于注意力机制和环境感知lstm的船舶预测导航方法,如图1所示,包括以下步骤:
47.数据预处理:对通过船舶ais轨迹预处理得到训练集、验证集和测试集。将环境障碍物例如岛屿、暗礁等的位置转换到同一坐标系下;
48.社会关系特征提取:对于当前船只采用社会注意力模块计算船只对其他船只的注意力得分,结合其他船只的lstm隐藏状态,更新其社会关系掩码,进一步更新该船只的社会张量并编码;
49.障碍物信息特征提取:对于当前船只采用障碍注意力模块计算船只对静止障碍物的注意力得分,结合两者之间的距离,更新其障碍物信息掩码,进一步更新障碍物张量并编码;
50.轨迹预测模型训练:按时间序列将社会关系特征、障碍物信息特征和船只自身运动特征以及上一时刻该船只的lstm的隐藏状态连接输入到lstm中,学习船只间的交互和避障的规律,输出预测下一时刻的隐藏状态。将lstm输出的隐藏状态编码得到模型预测下一时刻的位置;
51.导航推荐路线:将周围船只ais信息和环境地形信息输入到上述训练好的轨迹预测模型,输出预测其他船只的未来轨迹点和推荐本船的未来轨迹点,采用三次样条插值法平滑曲线给出一条导航推荐航路。
52.下面分别对上述各步骤作详细说明:
53.一、数据预处理
54.本发明为预测船舶未来轨迹,将采集到的ais数据选取其中与轨迹最相关的几个变量:经纬度、航向来表示船只的运动信息。
55.由于船舶ais信息可能存在错误,为了预测的准确性,先检查并剔除明显的异常数据,例如船舶正常的经度(-180
°
~180
°
)、纬度(-90
°
~90
°
)和航向(0
°
~360
°
,正北夹角)。
56.将采样经纬度接近的船舶数据由经纬度坐标转换到平面直角坐标系,假设坐标原点的经纬度为(l0,b0),则该原点在其经线截面以地心为原点的平面直角系上的坐标为其中a是地球椭球长半轴,b是地球椭球短半轴,b0是原点纬度。同样可得待转换点p在该坐标系上的投影a(l1,b1)的坐标(x1,y1),则点p在原点坐标系下的纵坐标可以近似为oa的长度:横坐标为纬线圈的一段弧长:ox=x0·
δl,其中δl为两点的经度差。同样的方法计算临近区域内静止障碍物k的坐标(xk,yk)。
57.将数据可视化,选取轨迹密集、地形复杂的区域,船舶i的运动信息为其中n是采样点个数,p
t
表示第t个采样时刻船舶运动信息
58.由于ais数据的时间间隔不一定相同,影响后续预测的精度,有必要对缺省的数值和时间未对准的数据进行插值处理。具体线性插值方法:假设需要在第t采样时刻和第t 1采样时刻之间插值的时刻为t δt,对于船舶运动信息(x
t
,y
t
,azi
t
)中的任一属性值z,线性插值后的值为从而将不同时刻的数据对齐到相同的时刻。
59.将特定时间内的数据按不同属性进行归一化处理得到保证采样数据具有同样的数量级。以采样点横坐标为例,设max(x)为时间段内横坐标的最大值,min(x)为最小值,则对于数据xk,其归一化结果为同样归一化障碍物位置信息。
60.将n个运动信息划分为前obs个观测输入和后n-obs个预测值。整个数据集按6:2:2的比例划分为训练集、验证集和测试集。
61.二、基于注意力机制的社会关系特征提取
62.本发明采用社会注意力机制计算船舶i对船舶j的注意力得分,区分不同位置和运动状态的船舶间互相影响的程度,并利用社会关系张量提取周围其他船舶的相对位置信息和历史轨迹的隐藏状态。
63.本发明中,船只间社会注意力机制层是一个多层感知器,包含一个输入层,一个隐藏层和一个中间隐藏层,其中输入层单元数为3,隐藏层,单元数为64,中间隐藏层单元数为1。
64.由社会关系建模计算船只i与船只j之间的相对距离方位角和船只i与船只j以第t个采样时刻的状态保持匀速直线运动后两者之间的最近距离将以上社会关系经过嵌入层嵌入后输入到多层感知器,输出注意力得分其中w
mlp
为多层感知器权重。
65.本发明将整个区域平面设置为64
×
64的网格,建立一个大小为32
×
32的社会关系掩码。周围船舶能够对当前船舶轨迹产生影响的临近区域归一化后的宽度设置为 width_bound=n_size
×
g_size/width,临近区域归一化后的高度设置为 height_bound=n_size
×
g_size/height,其中n_size是临近区域的大小,g_size是网格的大小,width、height是整个关注海域的尺寸。检查船只j是否在该临近矩形区域内,若在矩形内计算所处单元格行数其中xi、xj分别是船舶 i和j的横坐标,所处单元格列数的计算类似,更新社会关系张量的掩码。
66.建立社会关系张量设置该张量大小为32
×
32
×
d,其中d为lstm的隐藏状态大
小。依据大小相同的社会关系掩码将对应船只j第t-1个采样时刻的隐藏状态乘对应的注意力α
ij
,加入社会关系张量对应的单元格内,更新社会关系张量其中1
mn
代表社会关系掩码中对应单元格内是否存在船只j,ni是船只i临近区域内其他船只的集合。
67.池化汇聚临近船只的隐藏状态得到4
×4×
d的社会关系张量,如图2所示。
68.本发明中社会关系编码器由一个输入层,一个relu层和一个dropout层组成,其中输入层单元数为4
×4×
d。所述dropout层,根据船舶航迹运动参数的特性以及实际模型训练中的经验,选择0.5的比率。随机地为网络中的神经元赋值零权重,用于减小网络对数据变化的敏感度。将4
×4×
d的社会关系张量输入到社会关系编码器φ,输出得到第t个采样时刻船只 i编码后的社会关系特征其中ws为连接权重。
69.三、基于注意力机制的障碍物信息特征提取
70.本发明采用障碍物注意力机制计算船舶i对静止障碍物k的注意力得分,学习不同相对位置障碍物对船只航迹的影响,并利用障碍物信息张量提取周围静止的障碍物的相对位置信息。
71.本发明中,障碍物注意力机制层是一个多层感知器,包含一个输入层,一个隐藏层和一个中间隐藏层,其中输入层单元数为3,隐藏层单元数为64,中间隐藏单元数为1。空间位置关系建模计算船只i与静止障碍物k之间的相对距离方位角和船只i以第t个采样时刻的状态保持匀速直线运动后与静止障碍物k 之间的最近距离将以上注意力因素经过嵌入层嵌入后输入到多层感知器,输出注意力得分其中w
mlp
为多层感知器权重。
72.建立一个大小为32
×
32的障碍物信息掩码,设置周围静止的障碍物能够对当前船舶轨迹产生影响临近区域大小,计算临近区域内障碍物k是否在该临近矩形区域内,若在则计算所处单元格行数和列数,更新障碍物信息掩码,具体步骤与计算社会关系掩码类似。
73.建立障碍物信息张量本发明中设置该张量大小为32
×
32
×
m,其中m表示障碍物k 与船只i之间距离和注意力得分的特征向量的大小。计算障碍物k与船只i之间的欧式距离依据大小相同的障碍物信息掩码更新障碍物信息张量其中,n0是船只i临近区域内障碍物的集合,1
mn
代表障碍物信息掩码中对应单元格内是否存在障碍物k,根据障碍物信息掩码以临近区域内障碍物k与船只i的距离以及对应的注意力得分更新障碍物信息张量对应位置的二维数据。
74.池化汇聚临近障碍物的信息得到4
×4×
m的障碍物信息张量,方法与池化社会关系信息类似。
75.本发明中障碍物信息编码器包含一个输入层、一个relu层和一个dropout层,其中输入层大小为4
×4×
m,dropout层采用0.5的比率。
76.将4
×4×
m的障碍物信息张量输入到障碍物信息编码器,输出得到第t个采样时刻
船只i 编码后的障碍物信息特征其中wo是连接权重。
77.四、轨迹预测模型训练,所述轨迹预测模型包括基于注意力机制的社会关系特征提取模块和障碍特征提取模块、运动信息编码器以及lstm。
78.本发明设置一个包含输入层、一个relu层和一个dropout层的当前船只i运动信息编码器,输入第t个采样时刻船只i的坐标和航向,输出船只i的运动信息编码其中wr是连接权重。
79.本发明中lstm编码器的隐藏状态大小为128。将与以及第t-1个采样时刻船只 i的隐藏状态相连接,输入到共享参数的lstm中输出预测第t个采样时刻的隐藏状态其中w
lstm
是连接权重,如图3所示。
80.将经过输出层解码成为二维高斯分布参数本发明中输出层大小为5。通过给出预测坐标将作为t 1时刻船只坐标
81.本发明中训练优化器采用rmsprop更新模型参数,衰减率为0.95,学习率为0.0015,损失函数为负对数似然损失其中表示预测坐标的均值,表示预测坐标的标准差,表示坐标分布的相关系数。
82.计算出损失后,求出模型参数对应的梯度,更新模型参数,当模型在验证集上的表现开始下降时停止训练,将模型参数序列化保存成model.pkl文件。
83.训练模型的具体步骤如表1所示:
84.表1
[0085][0086]
五、导航推荐航路
[0087]
读取model.pkl文件还原训练好的模型参数,在t0~t
now
时间段内采样时刻t,将周围船只运动信息和障碍物位置信息输入到训练好的模型中,更新lstm模型的隐藏状态和cell状态。
[0088]
对于未来t时间内,在每个t时刻将模型输出的隐藏状态h
t
作为新的输入,预测其他船只未来t个采样时刻轨迹点和该船只导航推荐路径上的轨迹点
[0089]
对于该船导航推荐路线上的轨迹点,采用三次样条插值法平滑曲线,具体做法为:
[0090]
假设轨迹点为traj
commend
={p1,p2,

,pn}共n个点,将整条轨迹分为了n-1个部分,如图 4所示,每个部分用三次函数表示分别为共需要解 4
×
(n-1)个未知数。
[0091]
由n个轨迹点值可以得到共2
×
(n-2) 2个方程,由函数在交界处一阶导数相同可以得到共n-2个方程,由函数在交界处二阶导数相同可以得到共n-2个方程,由函数在两个端点处二阶导数为0可以得到共2个方程。联立上述4
×
(n-1)个方程解出4
×
(n-1)个未知数,所得分段函数转换到本船坐标系下即为导航推荐的航路。
[0092]
以上所述,仅为本发明部分具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本领域的人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献