一种基于海事大数据的船舶导航路径规划方法及系统

allin2024-12-20  64



1.本发明属于导航路径规划技术领域,涉及一种船舶导航路径规划方法及系统。


背景技术:

2.随着水运交通的发展,海上贸易愈发频繁,水域船舶密度也随之增大,当前许多港口、码头水域水上交通态势也愈发复杂多样。然而不同类型船舶的航行需求并没有被严格的划分开来,若水域海上施工,再加上水文、气象条件的周期性变化,现有航路可能无法满足通航需求。近年来,随着水运交通的发展,海上贸易愈发频繁,水域船舶密度也随之增大,当前许多港口、码头水域水上交通态势也愈发复杂多样,现有航路可能无法满足通航需求。


技术实现要素:

3.为解决背景技术中所述的问题,本发明提出了一种基于海事大数据的船舶导航路径规划方法及系统。
4.一种基于海事大数据的船舶导航路径规划方法,包括以下步骤:
5.步骤一、运用运动学插值算法对历史ais数据进行轨迹异常检测和轨迹修复,得到高质量ais数据;
6.步骤二、获取航路特征区域:依据得到的高质量ais数据提取船舶轨迹静止点与转向点,运用密度聚类算法和边界提取算法得到航路特征区域;
7.步骤三、提取航路中心线及边界:依据得到的高质量ais数据,运用轨迹相似度度量算法计算得到航路特征区域之间的航路中心线,通过垂线分治法计算出航道宽度来提取航路边界;
8.步骤四、生成航路网络:基于步骤二得到的航路特征区域和步骤三得到的航路中心线及边界,生成航路网络;
9.步骤五、构建航路有向拓扑图:根据生成的航路网络利用networkx框架构建航路有向拓扑图,其中节点间边的权重取节点之间的相对距离;
10.步骤六、规划船舶导航路径:基于得到的航路有向拓扑图,根据输入的航行始末点,运用dijkstra最短路径算法计算得到船舶导航路径。
11.进一步地,所述的步骤一,轨迹异常检测的方法为:通过解析历史ais数据,当船舶在t时刻的位置x(t)
real
和速度v(t)
real
已知时,通过假设运动物体船舶的加速度函数,利用ais中船舶的速度和位置信息,估计出两点间任意时刻船舶的位置和速度,假设船舶在初始时刻ti的速度v(ti)和位置x(ti),已知另一端点在tj时刻船舶的速度v(tj)
real
和位置x(tj)
real
,则船舶在t(ti<t<tj)时刻的估计位置x(t)和估计速度v(t)为:
[0012][0013]
[0014]
其中,b为函数的纵向偏差,m为乘积因子,船舶在t时刻的加速度a(t)=b+m(t-ti),函数的纵向偏差b与乘积因子m的值可通过运动学插值算法中端点的动态信息代入得到;
[0015]
将上述得到的船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t)与船舶在t时刻已知的速度v(t)
real
和位置x(t)
real
之间的误差转换为坐标系中的点,得到误差集er,对误差集er进行循环迭代的k-means聚类并用聚类评价指标轮廓系数进行收敛判断,当轮廓系数大于0.5时,去除误差最大的点,并重复该过程,直到轮廓系数小于0.5,得到高质量ais数据。
[0016]
更进一步地,所述的步骤一,ais轨迹修复的方法为:通过解析历史ais数据,当船舶在t时刻的速度v(t)
real
和位置x(t)
real
存在缺失而未知时,假设船舶在初始时刻ti的速度v(ti)和位置x(ti),已知另一端点在tj时刻船舶的速度v(tj)
real
和位置x(tj)
real
,船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t)为:
[0017][0018][0019]
其中,b为修正后的函数的纵向偏差,m为修正后的乘积因子,b和m为:
[0020]
b=ai',
[0021][0022]ai
'和aj'为修正后船舶在pi位置与pj位置的加速度,ai'和aj'为:
[0023][0024][0025]
其中,ai和aj分别为修正前船舶在pi位置与pj位置的加速度,ai'和aj'为船舶在p
i-front
位置和p
j+behind
位置的加速度,p
i-front
是船舶在pi位置等时间间隔t
step
的前向点,p
j+behind
是船舶在pj位置等时间间隔t
step
的后向点,等时间间隔t
step
由数据集中ais发送的时间间隔统计值进行确定,p
i-front
和p
j+behind
通过下式进行确定:
[0026]
|t
i-t
i-front-δt
i,j
|<t
step
,
[0027]
|t
j+behind-t
j-δt
i,j
|<t
step

[0028]
其中,δt
i,j
为船舶在pi位置与pj位置的时间间隔。
[0029]
更进一步地,所述的步骤二,船舶轨迹静止点与转向点的提取方法为:
[0030]

对高质量ais数据进行分析处理,将不同类型船舶的历史轨迹信息分层封装处理;
[0031]

对船舶设定速度阈值,通过运动状态识别和dp算法识别,将水域内低于船舶速度阈值的所有船舶轨迹点筛选出来,得到静止点;
[0032]

通过轨迹压缩算法,将水域内所有船舶轨迹进行轨迹压缩,根据压缩后的轨迹
形态从而得到大规模的船舶转向点。
[0033]
更进一步地,所述的步骤二,航路特征区域的获取方法为:通过dbscan密度聚类算法分别对得到的静止点和转向点处理,得到静止点集和转向点集,然后运用alphashape边界提取算法对静止点集和转向点集进行处理,得到航路特征区域。
[0034]
更进一步地,所述的步骤三,航道中心线的提取中,取航路特征区域的形心位置作为特征区域中心点,然后根据历史ais轨迹穿越航路特征区域的情况,分割水域ais轨迹,利用动态时间规整算法对轨迹对齐处理,对任意两个节点之间的轨迹traji,运用随机法选取一条轨迹作为标准轨迹traj
random
,并将所有轨迹与标准轨迹进行对齐,之后取所有轨迹的算术平均值作为航道中心线:
[0035]
pi=dtw(traji,traj
random
),
[0036][0037]
其中pi表示采用dtw算法得到的traji与traj
random
对齐后的坐标点集合,mt表示航道中心线;n表示轨迹traj
random
的长度,i表示轨迹序号,j表示轨迹对应的时间序号。
[0038]
航路边界的提取中,航路中心线被航路点划分成了多个中心线段,通过计算各轨迹点到对应中心线段上的垂线距离值并统计其分布,得到各中心线段所对应的航道宽度来确认航路边界。
[0039]
更进一步地,所述的步骤四中,结合重点港口水域的航道规划信息,对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的可视化的航路网络。
[0040]
更进一步地,所述的步骤五中,依据得到的航路网络,从航路网络节点之间的航路中心线出发,通过墨卡托坐标变换,将经纬度地理坐标系转化为大地坐标系,并计算航路网络节点之间航路中心线长度作为边的权重,然后再进行坐标逆变换,将大地坐标系转化为经纬度地理坐标系,最后基于python的networkx框架,构建出航路有向拓扑图。
[0041]
更进一步地,所述步骤六中,通过前端识别用户在地图上指定的船舶航行始末点,然后通过捕获用户前端输入信息,返回相应的geojson文件并识别船舶航行始末点所对应的经纬点信息,最后根据指定的船舶航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点;针对路径始末点运用dijkstra最短路径算法进行计算最短航路路径,并将得到的最短航路路径运用墨卡托坐标逆变换后映射回经纬网中,并转换成相应的geojson文件,进行前端显示,得到船舶导航路径。
[0042]
一种基于海事大数据的船舶导航路径规划系统,它包括ais数据预处理模块、航路网络辨识模块和导航路径规划模块;
[0043]
所述的ais数据预处理模块包括ais轨迹异常检测子模块和ais轨迹修复子模块;所述的ais轨迹异常检测子模块运用运动学插值算法对历史ais数据进行轨迹异常检测以得到高质量ais数据;所述的ais轨迹修复子模块运用运动学插值算法对历史ais数据进行轨迹修复以得到高质量ais数据。
[0044]
所述的航路网络辨识模块包括筛选船舶类型子模块、指定水域航路辨识子模块和航路网络可视化子模块;所述的筛选船舶类型子模块通过对ais数据预处理模块输出的高
质量ais数据进行分析处理,提取不同类型船舶轨迹的静止点与转向点;所述的指定水域航路辨识子模块对船舶轨迹的静止点与转向点进行分析处理,获取航路特征区域,并提取出航路中心线及边界;所述的航路网络可视化子模块对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的可视化的航路网络;
[0045]
所述的导航路径规划模块包括航路网络有向拓扑图规划子模块、船位解析子模块和航路规划子模块;所述的航路网络有向拓扑图规划子模块用于将航路网络辨识模块得到的航路网络拓扑化,通过构造边及其权重,并基于python的networkx框架构建航路有向拓扑图;所述的船位解析子模块用于识别用户在地图上输入的航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点;所述的航路规划子模块根据路径始末点,运用dijkstra最短路径算法计算得到船舶导航路径。
[0046]
本发明与现有技术相比,通过ais数据预处理模块实现轨迹异常检测和轨迹修复,ais数据预处理模块通过引用历史ais数据,运用运动学插值算法,对历史ais数据中的信息进行比对和计算,优化了计算过程,数据内容更为精细,提升了历史ais数据的质量;通过航路网络辨识模块搭载的多个创新算法并结合历史ais信息,有效地辨识并构建得到指定水域的航路网络;通过导航路径规划模块对航路网络的分析和计算得到船舶导航路径。由于船舶导航路径的输出结果是基于历史大数据的,得到的航路网络除了当地船舶定线的航路外,还能将一些小众的习惯性航路辨识出来,并能根据不同的船舶类型得到隶属于该种船舶的习惯性航路网络。
附图说明
[0047]
图1为本发明的结构框图。
[0048]
图2为本发明ais数据预处理模块的技术路线框图。
[0049]
图3为本发明航路网辨识模块的技术路线框图。
[0050]
图4为本发明导航路径规划模块的技术路线框图。
[0051]
图5为运动学插值算法的概念图。
[0052]
图6为航路网络特征点图。
[0053]
图7为航路特征区域图图。
[0054]
图8为航路网络图。
[0055]
图9为航路有向拓扑图。
[0056]
图10为航路规划图。
具体实施方式
[0057]
下面结合附图详细说明本发明的实施情况,但它们并不构成对本发明的限定,仅做举例而已,同时通过说明,将更加清楚地理解本发明的优点。本领域的普通的技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。实施例中所述的位置关系均与附图所示一致,实施例中其他未详细说明的部分均为现有技术。
[0058]
基于海事大数据的船舶导航路径规划方法的流程图如图1所示,实现该规划方法的船舶导航路径规划系统由ais数据预处理模块、航路网络辨识模块和导航路径规划模块
这三大模块构成。
[0059]
下面对船舶导航路径规划系统的各个模块进行详细说明。
[0060]
1.ais数据预处理模块
[0061]
ais数据预处理模块由ais轨迹异常检测子模块和ais轨迹修复子模块构成。
[0062]
ais数据预处理模块运用运动学插值算法,对历史ais数据进行轨迹异常检测和轨迹修复以得到高质量ais数据。
[0063]
ais数据预处理模块中,考虑到原始历史ais数据质量不一,需对原始历史ais数据进行清洗,清洗过程中同时对原始历史ais数据进行解码和ais规则约束,再经过数据重构,得到所需的历史ais数据。
[0064]
ais数据预处理模块的技术路线图参考图2。
[0065]
运动学插值算法通过假设运动物体的加速度函数,利用物体的速度和位置信息,能够准确有效地估计出两点间任意时刻物体的位置和速度。
[0066]
在ais轨迹异常检测子模块中,通过解析历史ais数据,当船舶在t时刻的位置x(t)
real
和速度v(t)
real
已知时,通过假设运动物体船舶的加速度函数,利用历史ais数据中船舶的速度和位置信息,可估计出两点间任意时刻船舶的位置和速度,假设船舶在初始时刻ti的速度为v(ti),位置为x(ti),则船舶在t时刻的估计位置x(t)和估计速度v(t)为:
[0067][0068]
其中,b为函数的纵向偏差,m为乘积因子,船舶在t时刻的加速度a(t)=b+m(t-ti),函数的纵向偏差b与乘积因子m的值可通过运动学插值算法中端点的动态信息代入得到。
[0069]
在已知在tj时刻另一端点的船舶位置x(tj)
real
和速度v(tj)
real
的情况下,通过解析历史ais数据和式

,可以计算得到船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t)。
[0070]
对上述计算得到船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t)与船舶在t时刻已知的速度v(t)
real
和位置x(t)
real
之间的误差进行计算,计算完毕之后将这误差标准化并投影到x-y坐标系中,分别作为x坐标和y坐标,将误差转换为x-y坐标系中的点。
[0071]
下面对误差进行判断,在本实施例中,每次选择x-y坐标系中的3个点,那么误差的种类有四种:没有异常点、有一个异常点、有两个异常点、有三个异常点。利用滑动窗口对轨迹中所有点进行误差估计,得到误差集er,对误差集er设置聚类簇数为4进行k-means聚类,并用聚类评价指标轮廓系数进行收敛判断,当轮廓系数大于0.5时,去除误差最大的那一簇,并重复该过程,以保证所有异常点都能被剔除,直到聚类评价指标轮廓系数小于0.5,得到高质量ais数据。
[0072]
当船舶在t时刻的速度v(t)
real
和位置x(t)
real
存在缺失而未知时,则需要运用运动学插值算法对历史ais数据进行ais轨迹修复,得到船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t)。
[0073]
在ais轨迹修复子模块中,传统的运动学插值只考虑了两个端点的动态信息,如图
5(1)所示,本发明的运动学插值算法考虑了船舶运动轨迹的连续性,将端点的前向点p
i-front
和后向点p
j+behind
均加以利用,通过确定等时间间隔t
step
的前向点p
i-front
与后向点p
j+behind
,该前向点p
i-front
和后向点p
j+behind
称为一对“调和点”,以提高运动学插值算法的精度,如图5(2)所示。其中,等时间间隔t
step
的值由数据集中ais发送的时间间隔统计值进行确定,取90%分位。
[0074]
其中,前向点p
i-front
和后向点p
j+behind
通过下式确定:
[0075][0076]
其中,δt
i,j
为船舶在pi位置与pj位置的时间间隔。
[0077]
令船舶在pi位置与pj位置的加速度分别为ai和aj,船舶在p
i-front
位置和p
j+behind
位置的加速度分别为ai'和aj',在ais轨迹修复中,令船舶在pi位置与pj位置修正后的加速度分别为ai'和aj',则ai'和aj'为:
[0078][0079]
令b为修正后的函数的纵向偏差,m为修正后的乘积因子,b和m为:
[0080][0081]


代入

中,可以得到:
[0082][0083]
通过上述

式即可计算得知,当船舶在t时刻的速度v(t)
real
和位置x(t)
real
存在缺失而未知时,船舶在t时刻(ti<t<tj)的估计位置x(t)和估计速度v(t),从而得到高质量ais数据。
[0084]
2.航路网络辨识模块
[0085]
航路网络辨识模块用于航路网络的辨识和构建,由筛选船舶类型子模块、指定水域航路辨识子模块和航路网络可视化子模块三大子模块构成。
[0086]
筛选船舶类型子模块通过对ais数据预处理模块输出的高质量ais数据进行分析处理,提取不同类型船舶轨迹的静止点与转向点。指定水域航路辨识子模块对船舶轨迹的静止点与转向点进行分析处理,获取航路特征区域,并提取出航路中心线及边界。航路网络可视化子模块对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的
可视化的航路网络。
[0087]
航路网络辨识模块的技术路线图参考图3,该模块的具体实现过程如下所述。
[0088]
(1)提取船舶特征点
[0089]
筛选船舶类型子模块中,对ais数据预处理模块输出的高质量ais数据进行分析处理,将不同类型船舶的历史轨迹信息分层封装处理,设定船舶速度阈值,通过运动状态识别和dp算法识别,将水域内低于船舶速度阈值的所有船舶轨迹点筛选出来,得到静止点;通过轨迹压缩算法,将水域内所有船舶轨迹进行轨迹压缩,根据压缩后的轨迹形态从而得到大规模的船舶转向点。本实施例中,航路网络的静止点和转向点如图6所示,黑色点代表静止点,灰色点代表转向点。
[0090]
以下(2)和(3)通过指定水域航路辨识子模块实现。
[0091]
(2)得到航路特征区域
[0092]
通过dbscan密度聚类算法,分别对(1)中得到的静止点和转向点处理,得到静止点集和转向点集,然后运用alphashape边界提取算法对静止点集和转向点集进行处理,得到航路特征区域,本实施例的航路特征区域如图7所示。
[0093]
(3)提取航路中心线及边界
[0094]
取航路特征区域的形心位置作为特征区域中心点,然后根据历史ais轨迹穿越航路特征区域的情况,分割水域ais轨迹,再利用轨迹相似度度量算法计算航路特征区域之间的航路中心线,具体地,利用动态时间规整算法将指定区域的船舶轨迹时间序列进行对齐,并取对齐后船舶轨迹的算术平均值作为指定区域的航路中心线,对任意两个节点之间的轨迹traji,运用随机法选取一条轨迹作为标准轨迹traj
random
,并将所有轨迹与标准轨迹进行对齐,之后取所有轨迹的算术平均值作为航路中心线:
[0095][0096]
其中pi表示采用dtw算法得到的traji与traj
random
对齐后的坐标点集合,mt表示航道中心线;n表示轨迹traj
random
的长度,i表示轨迹序号,j表示轨迹对应的时间序号。
[0097]
由于上述dtw算法得到的航路中心线是由多个航路点连接而成,即通过这些航路点将航路中心线划分成了多个中心线段,故可采用“垂线分治法”来确定航路宽度,通过计算各轨迹点到对应中心线段上的垂线距离值并统计其分布,得到各中心线段所对应的航道宽度,再将其连接起来,得到完整航路,通过统计各个特征区域之间的轨迹的横向位置分布,在本实施例中,取横向位置分布90%分位数对应长度作为航路宽度,确定了航路宽度即可得到航路边界。
[0098]
(4)构建航路网络
[0099]
航路网络可视化子模块中,通过上述(1)至(3)中的方法遍历所有节点与节点间的轨迹簇,可以再结合重点港口水域的航道规划信息,对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的可视化的航路网络。需要说明的是任意两个端点之间如果有航路,则航路由航路中心线和两侧航路边界组成。
[0100]
在本实施例中,根据该水域的历史ais数据,得到的航路网络如图8所示。
[0101]
3.导航路径规划模块
[0102]
导航路径规划模块由航路有向拓扑图规划子模块、船位解析子模块和航路规划子模块构成。
[0103]
航路网络有向拓扑图规划子模块用于将航路网络辨识模块得到的航路网络拓扑化,通过构造边及其权重,并基于python的networkx框架构建航路有向拓扑图。船位解析子模块用于识别用户在地图上输入的航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点。航路规划子模块根据路径始末点,运用dijkstra算法计算得到船舶导航路径。
[0104]
导航路径规划模块的技术路线图参考图4,该模块的具体实现过程如下所述。
[0105]
(1)构建航路有向拓扑图
[0106]
航路网络有向拓扑图规划子模块中,依据航路网络辨识模块得到的航路网络,从航路网络节点之间的航路中心线出发,通过墨卡托坐标变换,计算航路网络节点之间的航路中心线长度作为边的权重,然后再进行坐标逆变换,最后基于python的networkx框架,构建出航路有向拓扑图。
[0107]
需要说明的是,在航路有向拓扑图的构建过程中主要考虑以下三个因素:(1)航路特征区域中心位置,即拓扑图的节点;(2)图的连通性,主要考虑航路特征区域之间是否有航路,即拓扑图的边;(3)边的权重,由于图中任意两个节点之间可能存在多条边,考虑到实现下一步路径规划的目标,还应该获得任意两个连通节点之间的最短的路径距离,为此,在经由墨卡托坐标变换后,将经纬度地理坐标系转化为大地坐标系,并计算航路网络节点之间的航路中心线长度作为边的权重。
[0108]
本实施例的航路有向拓扑图如图9所示。
[0109]
(2)路径始末点的解析
[0110]
船位解析子模块中,通过前端识别用户在地图上指定的船舶航行始末点,然后通过捕获用户前端输入信息,返回相应的geojson文件并识别船舶航行始末点所对应的经纬点信息,最后根据指定的船舶航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点。
[0111]
(3)得到船舶导航路径
[0112]
航路规划子模块中,在构建的航路有向拓扑图中,从船舶航行时间成本出发,考虑将最短航路路径作为船舶导航路径,针对路径始末点运用dijkstra最短路径算法进行计算最短航路路径,并将得到的最短航路路径运用墨卡托坐标逆变换后映射回经纬网中,并转换成相应的geojson文件,进行前端显示。
[0113]
本实施例中,输入船舶航行始末点后,通过分析计算得到的船舶导航路径如图10示。
[0114]
以上结合附图及具体实施例详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

技术特征:
1.一种基于海事大数据的船舶导航路径规划方法,其特征在于,包括以下步骤:步骤一、运用运动学插值算法对历史ais数据进行轨迹异常检测和轨迹修复,得到高质量ais数据;步骤二、获取航路特征区域:依据得到的高质量ais数据提取船舶轨迹静止点与转向点,运用密度聚类算法和边界提取算法得到航路特征区域;步骤三、提取航路中心线及边界:依据得到的高质量ais数据,运用轨迹相似度度量算法计算得到航路特征区域之间的航路中心线,通过垂线分治法计算出航道宽度来提取航路边界;步骤四、生成航路网络:基于步骤二得到的航路特征区域和步骤三得到的航路中心线及边界,生成航路网络;步骤五、构建航路有向拓扑图:根据生成的航路网络利用networkx框架构建航路有向拓扑图,其中节点间边的权重取节点之间的相对距离;步骤六、规划船舶导航路径:基于得到的航路有向拓扑图,根据输入的航行始末点,运用dijkstra最短路径算法计算得到船舶导航路径。2.根据权利要求1所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤一中轨迹异常检测的方法为:通过解析历史ais数据,当船舶在t时刻的位置x(t)
real
和速度v(t)
real
已知时,通过假设运动船舶的加速度函数,利用ais中船舶的速度和位置信息,估计出两点间任意时刻船舶的位置和速度,假设船舶在初始时刻t
i
的速度v(t
i
)和位置x(t
i
),已知另一端点在t
j
时刻船舶的速度v(t
j
)
real
和位置x(t
j
)
real
,则船舶在t(t
i
<t<t
j
)时刻的估计位置x(t)和估计速度v(t)为:)时刻的估计位置x(t)和估计速度v(t)为:其中,b为函数的纵向偏差,m为乘积因子,船舶在t时刻的加速度a(t)=b+m(t-t
i
),函数的纵向偏差b与乘积因子m的值可通过运动学插值算法中端点的动态信息代入得到;将上述得到的船舶在t时刻(t
i
<t<t
j
)的估计位置x(t)和估计速度v(t)与船舶在t时刻已知的速度v(t)
real
和位置x(t)
real
之间的误差转换为坐标系中的点,得到误差集er,对误差集er进行循环迭代的k-means聚类并用聚类评价指标轮廓系数进行收敛判断,当轮廓系数大于0.5时,去除误差最大的点,并重复该过程,直到轮廓系数小于0.5,得到高质量ais数据。3.根据权利要求2所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤一中ais轨迹修复的方法为:通过解析历史ais数据,当船舶在t时刻的速度v(t)
real
和位置x(t)
real
存在缺失而未知时,假设船舶在初始时刻t
i
的速度v(t
i
)和位置x(t
i
),已知另一端点在t
j
时刻船舶的速度v(t
j
)
real
和位置x(t
j
)
real
,船舶在t时刻(t
i
<t<t
j
)的估计位置x(t)和估计速度v(t)为:
其中,b为修正后的函数的纵向偏差,m为修正后的乘积因子,b和m为:b=a
i
',a
i
'和a
j
'为修正后船舶在p
i
位置与p
j
位置的加速度,a
i
'和a
j
'为:'为:其中,a
i
和a
j
分别为修正前船舶在p
i
位置与p
j
位置的加速度,a
i
'和a
j
'为船舶在p
i-front
位置和p
j+behind
位置的加速度,p
i-front
是船舶在p
i
位置等时间间隔t
step
的前向点,p
j+behind
是船舶在p
j
位置等时间间隔t
step
的后向点,等时间间隔t
step
由数据集中ais发送的时间间隔统计值进行确定,p
i-front
和p
j+behind
通过下式进行确定:|t
i-t
i-front-δt
i,j
|<t
step
,|t
j+behind-t
j-δt
i,j
|<t
step
,其中,δt
i,j
为船舶在p
i
位置与p
j
位置的时间间隔。4.根据权利要求3所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤二,船舶轨迹静止点与转向点的提取方法为:

对高质量ais数据进行分析处理,将不同类型船舶的历史轨迹信息分层封装处理;

对船舶设定速度阈值,通过运动状态识别和dp算法识别,将水域内低于船舶速度阈值的所有船舶轨迹点筛选出来,得到静止点;

通过轨迹压缩算法,将水域内所有船舶轨迹进行轨迹压缩,根据压缩后的轨迹形态从而得到大规模的船舶转向点。5.根据权利要求4所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤二,航路特征区域的获取方法为:通过dbscan密度聚类算法分别对得到的静止点和转向点处理,得到静止点集和转向点集,然后运用alphashape边界提取算法对静止点集和转向点集进行处理,得到航路特征区域。6.根据权利要求5所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤三,航道中心线的提取中,取航路特征区域的形心位置作为特征区域中心点,然后根据历史ais轨迹穿越航路特征区域的情况,分割水域ais轨迹,利用动态时间规整算法对轨迹对齐处理,对任意两个节点之间的轨迹traj
i
,运用随机法选取一条轨迹作为标准轨迹traj
random
,并将所有轨迹与标准轨迹进行对齐,之后取所有轨迹的算术平均值作为航道中心线:p
i
=dtw(traj
i
,traj
random
),
其中p
i
表示采用dtw算法得到的traj
i
与traj
random
对齐后的坐标点集合,mt表示航道中心线;n表示轨迹traj
random
的长度,i表示轨迹序号,j表示轨迹对应的时间序号;航路边界的提取中,航路中心线被航路点划分成了多个中心线段,通过计算各轨迹点到对应中心线段上的垂线距离值并统计其分布,得到各中心线段所对应的航道宽度来确认航路边界。7.根据权利要求6所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤四中,结合重点港口水域的航道规划信息,对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的可视化的航路网络。8.根据权利要求7所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述的步骤五中,依据得到的航路网络,从航路网络节点之间的航路中心线出发,通过墨卡托坐标变换,将经纬度地理坐标系转化为大地坐标系,并计算航路网络节点之间航路中心线长度作为边的权重,然后再进行坐标逆变换,将大地坐标系转化为经纬度地理坐标系,最后基于python的networkx框架,构建出航路有向拓扑图。9.根据权利要求8所述的一种基于海事大数据的船舶导航路径规划方法,其特征在于:所述步骤六中,通过前端识别用户在地图上指定的船舶航行始末点,然后通过捕获用户前端输入信息,返回相应的geojson文件并识别船舶航行始末点所对应的经纬点信息,最后根据指定的船舶航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点;针对路径始末点运用dijkstra最短路径算法进行计算最短航路路径,并将得到的最短航路路径运用墨卡托坐标逆变换后映射回经纬网中,并转换成相应的geojson文件,进行前端显示,得到船舶导航路径。10.一种实现权利要求1-9中任意一项所述的一种基于海事大数据的船舶导航路径规划方法的系统,其特征在于:它包括ais数据预处理模块、航路网络辨识模块和导航路径规划模块;所述的ais数据预处理模块包括ais轨迹异常检测子模块和ais轨迹修复子模块;所述的ais轨迹异常检测子模块运用运动学插值算法对历史ais数据进行轨迹异常检测以得到高质量ais数据;所述的ais轨迹修复子模块运用运动学插值算法对历史ais数据进行轨迹修复以得到高质量ais数据;所述的航路网络辨识模块包括筛选船舶类型子模块、指定水域航路辨识子模块和航路网络可视化子模块;所述的筛选船舶类型子模块通过对ais数据预处理模块输出的高质量ais数据进行分析处理,提取不同类型船舶轨迹的静止点与转向点;所述的指定水域航路辨识子模块对船舶轨迹的静止点与转向点进行分析处理,获取航路特征区域,并提取出航路中心线及边界;所述的航路网络可视化子模块对航路特征区域、航路中心线及边界进行分析处理,基于python工具包folium开发,借助工具包地图功能实现地图、轨迹、特征区域图层的叠加,得到数据驱动的可视化的航路网络;所述的导航路径规划模块包括航路网络有向拓扑图规划子模块、船位解析子模块和航
路规划子模块;所述的航路网络有向拓扑图规划子模块用于将航路网络辨识模块得到的航路网络拓扑化,通过构造边及其权重,并基于python的networkx框架构建航路有向拓扑图;所述的船位解析子模块用于识别用户在地图上输入的航行始末点,运用bf算法遍历搜索距离最近的特征区域作为路径始末点;所述的航路规划子模块根据路径始末点,运用dijkstra最短路径算法计算得到船舶导航路径。

技术总结
本发明提出了一种基于海事大数据的船舶导航路径规划方法及系统,通过AIS数据预处理模块实现轨迹异常检测和轨迹修复,提升了历史AIS数据的质量;通过航路网络辨识模块搭载的多个创新算法并结合历史AIS信息,有效地辨识并构建得到指定水域的航路网络;通过导航路径规划模块对航路网络的分析和计算得到船舶导航路径。由于船舶导航路径的输出结果是基于历史大数据的,得到的航路网络除了当地船舶定线的航路外,还能将一些小众的习惯性航路辨识出来,能根据不同的船舶类型得到隶属于该种船舶的习惯性航路网络。的习惯性航路网络。的习惯性航路网络。


技术研发人员:牟军敏 陈鹏飞 陈琳瑛 郭绍卿 王链珲
受保护的技术使用者:武汉理工大学
技术研发日:2022.04.06
技术公布日:2022/7/4
转载请注明原文地址: https://www.8miu.com/read-17802.html

最新回复(0)