当前位置: 首页 > 专利查询>吉林大学专利>正文

基于多目标峰值DP算法的AIS航迹数据压缩方法技术

技术编号:37290235 阅读:24 留言:0更新日期:2023-04-21 01:42
本发明专利技术提供一种基于多目标峰值DP算法的AIS航迹数据压缩方法,采用峰值采样策略,考虑航迹空间特性、航向、航速三个优化目标,加入障碍物检测机制,通过模拟航迹实验及真实航迹实验对比了经典DP算法与MPDP算法;结果显示MPDP算法在保持与DP算法相近的高压缩率情况下,长度损失率、同步欧式距离、航速平均偏差和航向平均偏差均得到优化,并且可以成功避开障碍物。其中对于多转弯航迹或盘旋航迹优化效果最为明显,长度损失率、同步欧式距离和航速平均偏差的优化率可达40%以上。偏差的优化率可达40%以上。偏差的优化率可达40%以上。

【技术实现步骤摘要】
基于多目标峰值DP算法的AIS航迹数据压缩方法


[0001]本专利技术涉及一种更适用于弯曲航迹的压缩算法,尤其是提供一种基于多目标峰值DP(Douglas

Peucker)算法的AIS航迹数据压缩方法,属于船舶智能安全航迹计算


技术介绍

[0002]自动识别系统(AIS)为海洋智能化提供了海量的数据基础。由于原始AIS数据存在冗余,直接使用会造成数据储存空间和计算成本的浪费,因此有必要进行数据压缩;Douglas

Peucker算法(DP)是一种有效的航迹压缩算法,可以很好地保存航迹的空间特性。但DP算法存在着以下不足:首先,DP算法在压缩多转弯航迹时,航迹复原效果较差。其次,DP算法未考虑船舶的船速和航向,最后DP算法可能会出现压缩后的航迹穿越障碍物的错误结果。

技术实现思路

[0003]本专利技术公开一种基于多目标峰值DP算法的AIS航迹数据压缩方法,采用峰值采样策略,考虑航迹空间特性、航向、航速三个优化目标,加入障碍物检测机制,实现了一种更适用于弯曲航迹的压缩算法。
[0004]本专利技术所述的一种基于多目标峰值Douglas

Peucker算法的AIS航迹数据压缩方法(以下简称:MPDP),技术解决方案如下:
[0005]1)坐标系变换后计算点到直线的距离
[0006]将轨迹点原地理坐标通过公式(1)(2)(3)(4)转换为墨卡托投影的坐标(x,y):
[0007]x=r0×
λ (1)
[0008]y=r0×
q (2)
[0009][0010][0011]其中λ和分别表示航迹点的经度和纬度;x和y分别表示航迹点的横坐标和纵坐标;表示墨卡托投影中的标准纬度;l表示地球椭圆球体的长半径;e表示地球椭球体的第一偏心率;r0表示标准纬度平行圆的半径;q表示等轴纬度;
[0012]经墨卡托投影转换后,通过矢量法计算点到直线的距离Distance,如等式(5)所示:
[0013][0014]其中,a表示从线段起点到线段终点的矢量;b表示从线段起点到目标点的矢量;2)多目标峰值Douglas

Peucker算法
[0015]该算法任务为从原始航迹的航迹点集合OS={P1,...P
i
,...P
N
},i∈(1,N)中提取出一个能够反映原始轨迹主要形态特征的关键航迹点集合KS={K1,...K
j
,...K
M
},j∈(1,M);
[0016]多目标峰值Douglas

Peucker算法(MPDP)压缩步骤如下:
[0017]Step1:设置压缩阈值ε(ε>0);采用0.8倍船长作为压缩阈值设置参考区间,对于不同的用户,可根据自身研究中对压缩强度的需求调节压缩阈值;
[0018]Step2:将集合OS的起点和终点加入集合KS;
[0019]Step3:更新集合KS:
[0020]Step3

1:以集合KS中的点为分裂点,将集合OS划分为M

1个子集;
[0021]设两个相邻点K
j
到K
j+1
对应的OS子集为OS_Sub
j
;以K
j
到K
j+1
之间的直线为基线,如果K
j
与K
j+1
坐标不同,利用公式(5)计算子集OS_Sub
j
中的各点到基线的距离,得到距离集合DS,反之当两点地理坐标相同,即船舶处于原地盘旋或往返运动时端点重合时,将点到直线距离改为采用公式(6)计算点到点距离Distance

,得到距离集合DS;
[0022][0023]再利用公式(8)计算子集OS_Sub
j
中的各点适应度fitness,得到适应度集合FS;
[0024]其中适应度包含点到直线距离、航向变化率和航速变化率三部分;三者的单位与量纲差别较大,不适合直接进行综合对比分析。需要将各个代价分别进行归一化处理,消除单位和量纲的影响。这里采取min

max标准化(Min

Max Normalization)方法对原始数据的归一化处理,使归一化结果F值映射到[0,1]之间;转换公式(7)如下:
[0025][0026]其中,f代表需要进行归一化计算的各点的点到直线距离、航向变化率和航速变化率,max和min对应需要进行归一化计算的每一组数据的最大值和最小值。归一化计算后,适应度fitness计算如公式(8)所示:
[0027]fitness=α
×
d+β
×
η+ω
×
υ
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0028]其中,d为归一化后的点到直线距离,η为归一化后的航向变化率,υ为归一化后的航速变化率;α,β,ω为取值[0,1]的权值系数,用户可根据实际应用中三项优化目标的重要程度,分配其比例关系并令α+β+ω=1;
[0029]Step3

2:将各点适应度的集合FS中的取得极大值的点,加入到集合ES中;将ES中航迹点对应的距离逐一与阈值ε进行比较,如大于阈值ε将该点储存在集合KS中;
[0030]设置峰值个数阈值Th_n,当搜索到极值点集ES中个数大于Th_n时,对极值点集ES再次求取峰值,直至满足阈值要求;所保留的极值点为距离集中变化最大的峰值设置Th_n取值为3至6的整数;
[0031]设置峰值压缩层数阈值Th_l,当压缩层数小于阈值Th_l时,采用多峰值保留策略进行多个航迹点保留;当压缩层数大于阈值Th_l时,将取得适应度集合FS最大值处航迹点的点到直线距离与压缩阈值ε进行比较,如果大于ε则仅保留这一个航迹点,储存至集合KS中;设置Th_l取值为1至3的整数;
[0032]Step4:假设在所有子集OS_Sub的距离集合DS中距离最大值为D
max
,如果D
max
≥ε重复Step3,否则跳转至Step5;
[0033]Step5:检查压缩后航段导通性:首先令计数器i=1,判断集合KS中航迹点K
i
与K
i+1
之间的航段是否存在障碍物,如果存在障碍物则不可以通行,令压缩阈值ε=0,将K
i
与K
i+1
使用Step3增加新的航迹点加入集合并返回上一步判断,反之当不存在障碍物可以通行时再判断K
i+1
是否为终点,如果K
i+1
不是终点则令i=i+1,并返回上一级判断,反之K
i+1
是终点,则跳出循环完成压缩全过程;
[0034]需要补充说明的是:定义临界距离集合E本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多目标峰值Douglas

Peucker算法的AIS航迹数据压缩方法,包括以下步骤:1)坐标系变换后计算点到直线的距离将轨迹点原地理坐标通过公式(1)(2)(3)(4)转换为墨卡托投影的坐标(x,y):x=r0×
λ
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)y=r0×
q
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)(2)其中λ和分别表示航迹点的经度和纬度;x和y分别表示航迹点的横坐标和纵坐标;表示墨卡托投影中的标准纬度;l表示地球椭圆球体的长半径;e表示地球椭球体的第一偏心率;r0表示标准纬度平行圆的半径;q表示等轴纬度;经墨卡托投影转换后,通过矢量法计算点到直线的距离Distance,如等式(5)所示:其中,a表示从线段起点到线段终点的矢量;b表示从线段起点到目标点的矢量;2)多目标峰值Douglas

Peucker算法该算法任务为从原始航迹的航迹点集合OS={P1,...P
i
,...P
N
},i∈(1,N)中提取出一个能够反映原始轨迹主要形态特征的关键航迹点集合KS={K1,...K
j
,...K
M
},j∈(1,M);多目标峰值Douglas

Peucker算法(MPDP)压缩步骤如下:Step1:设置压缩阈值ε(ε>0);采用0.8倍船长作为压缩阈值设置参考区间,对于不同的用户,可根据自身研究中对压缩强度的需求调节压缩阈值;Step2:将集合OS的起点和终点加入集合KS;Step3:更新集合KS:Step3

1:以集合KS中的点为分裂点,将集合OS划分为M

1个子集;设两个相邻点K
j
到K
j+1
对应的OS子集为OS_Sub
j
;以K
j
到K
j+1
之间的直线为基线,如果K
j
与K
j+1
坐标不同,利用公式(5)计算子集OS_Sub
j
中的各点到基线的距离,得到距离集合DS,反之当两点地理坐标相同,即船舶处于原地盘旋或往返运动时端点重合时,将点到直线距离改为采用公式(6)计算点到点距离Distance

,得到距离集合DS;再利用公式(8)计算子集OS_Sub
j

【专利技术属性】
技术研发人员:王红波周正张英剑张展硕袁啸宇
申请(专利权)人:吉林大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1