本发明属于船舶与海洋工程,尤其涉及一种融入时频分析的船舶运动长时预报方法及系统。
背景技术:
1、船舶在海面航行过程时,由于复杂的海洋环境作用,会不可避免地产生六自由度摇荡运动,剧烈的摇荡运动会给船舶的正常行驶和海上作业带来严重的影响。对船舶运动时历实现精准预报,有助于增强对船舶的精确控制,为海上作业提供必要的辅助决策信息,对提升船舶的航行安全性与作业效率具有重要意义。
2、而对于船舶运动的预报工作,目前有以下问题需要被解决。在当前的许多海上作业任务中,对于船舶运动预报的时长需求已经达到了分钟级,而由于船舶运动时历数据是周期性数据且周期较短,传统船舶运动预报模型在对运动时历数据进行预报时,有效预报时长较短,在长时预报中的误差较大,其精度难以满足实际的工程需要。因此,如何在保持预报精度的同时尽可能地延长有效预报时长,实现船舶运动的多周期预测成为目前亟待解决的问题。
3、现有的船舶运动预报模型主要分为基于传统机器学习和基于rnn模型两类,由于两类模型均是基于隐马尔科夫模型(hidden markov model,hmm)提出,而马尔科夫链假设中时间序列相关性随时间间隔呈指数级下降,因此两类模型对长输入序列时序特征提取效果较差;同时,受船舶运动序列自相关性的限制,现有模型的有效预报时长不超过一个运动周期。因此,基于单编码器结构,引入自注意力机制与patch操作,构建基于patchtst架构的船舶运动预报模型,同时针对船舶运动周期性强的特点,通过快速傅里叶变换或逐波分析的方法计算船舶的特征周期信息,用以确定patch片段的划分,使模型可学习船舶在较长时间内整体的运动变化趋势和局部的周期性起伏特征,从而实现较长时间的有效预报。
4、通过上述分析,现有技术存在的问题及缺陷为:在船舶运动极短期预报方面,已有的实现方案是通过传统机器学习和rnn模型来对船舶某一自由度运动时历进行极短期预报,由于船舶运动时历具有周期较短的特点,因此此类技术方案的有效预报时长较短,对于实际工程应用意义较小。
技术实现思路
1、为克服相关技术中存在的问题,本发明公开实施例提供了一种融入时频分析的船舶运动长时预报方法及系统,具体涉及一种基于patchtst(patch time seriestransformer长时间序列预测模型)架构融入时频分析的船舶运动长时预报方法。本发明目的在于基于单编码器结构,引入自注意力机制与patch操作,构建基于patchtst架构的船舶运动预报模型,同时针对船舶运动周期性强的特点,通过快速傅里叶变换或逐波分析的方法计算船舶的特征周期信息,用以确定patch片段的划分,使模型可学习船舶在较长时间内整体的运动变化趋势和局部的周期性起伏特征,从而实现较长时间的有效预报。
2、所述技术方案如下:融入时频分析的船舶运动长时预报方法,包括:
3、s1,对船舶历史运动时历数据进行数据分割,划分为训练集和测试集;
4、s2,将训练集数据和测试集数据输入基于patchtst架构的神经网络模型,通过滑动窗口法划分训练集数据与测试集数据,得到特征数据集和标签数据集;基于patchtst架构的神经网络模型内部通过快速傅里叶变换或逐波分析,求得特征数据集中各段特征数据的特征周期,通过滑动窗口的方法将各段特征数据划分为多个子序列级别的patch片段,其中,滑动窗口的大小和滑动步长由特征周期决定;
5、s3,基于patchtst架构的神经网络模型基于获得的patch片段进行训练得到准确的预报模型;
6、s4,使用训练好的预报模型对未来一段时间内的船舶运动时历数据进行预测。
7、在步骤s1中,所述船舶历史运动时历数据为
8、;
9、式中,为船舶历史运动时历的数据数量;将船舶历史运动时历数据分割为训练集为:,测试集为:;其中,训练集的数据数量为,测试集的数据数量为,训练集和测试集的数据数量根据实际需求设置。
10、在步骤s2中,将训练集数据和测试集数据输入基于patchtst架构的神经网络模型包括:
11、将训练集数据通过滑动窗口法提取以及;其中,为特征长度,为标签长度;得到的集合为特征数据集为,得到的集合为标签数据集为:;
12、将测试集数据通过滑动窗口法提取以及;得到的集合为特征数据集,得到的集合为标签数据集为:。
13、进一步,所述快速傅里叶变换包括:根据得到的训练特征数据集,对其中的各个特征数据通过快速傅里叶变换从时域转换到频域,得到频率集合以及对应的振幅集合,取振幅最大值所对应的频率,并对频率取倒数作为该段特征数据的特征周期;
14、根据得到的测试特征数据集,对其中的各个特征数据通过快速傅里叶变换从时域转换到频域,得到频率集合为以及对应的振幅集合,取振幅最大值所对应的频率,并对频率取倒数作为该段特征数据的特征周期。
15、进一步,所述逐波分析包括:根据得到的训练特征数据集,对其中的各个特征数据,提取其中的极大值和极小值,若,则将与对应的运动幅值进行比较;其中,若,则将提取为极大值,最终得到该段特征数据的极大值集合,对应的时间戳集合为:;若,则将提取为极小值,最终得到该段特征数据的极小值集合,,对应的时间戳集合为:;计算每个相邻的极大值与极小值之间的时间间隔得到极值间隔集合,根据极值间隔集合计算该段特征数据的特征周期;其中,为极值间隔集合的长度;
16、根据得到的测试特征数据集,对其中的各个特征数据提取其中的极大值和极小值,若,则将与对应的运动幅值进行比较;其中,,则将提取为极大值,最终得到该段特征数据的极大值集合,对应的时间戳集合为:;若,则将提取为极小值,最终得到该段特征数据的极小值集合,,对应的时间戳集合为:;计算每个相邻的极大值与极小值之间的时间间隔得到极值间隔集合,根据极值间隔集合计算该段特征数据的特征周期;其中,为极值间隔集合的长度。
17、在步骤s2中,所述通过滑动窗口的方法将各段特征数据划分为多个子序列级别的patch片段包括:
18、已知特征周期,设置滑动窗口大小为,滑动步长为;其中,为特征周期的放大倍数;将该段训练特征数据的最后一个数据复制次加到该段数据末尾得到,通过滑动窗口法将其切分为多个patch的集合,其中,为patch片段的个数。
19、在步骤s3中,所述基于patchtst架构的神经网络模型基于获得的patch片段进行训练得到准确的预报模型包括:
20、将基于patchtst架构的神经网络模型训练的特征数据集中各特征片段依次求解特征周期并进行patch操作,并将patch操作后的基于patchtst架构的神经网络模型训练特征数据集和基于patchtst架构的神经网络模型训练标签数据集输入基于patchtst架构的神经网络模型,使基于patchtst架构的神经网络模型学习两者之间的映射关系,通过多次迭代得到训练好的基于patchtst架构的神经网络模型;
21、对于得到的训练特征数据集,对其中的每段训练特征数据进行训练,得到patch操作后的训练特征数据集,并与得到的基于patchtst架构的神经网络模型训练标签数据集输入基于patchtst架构的神经网络模型,输入基于patchtst架构的神经网络模型后,通过线性投影映射到隐空间并附加位置编码,在隐空间内生成将其作为编码器多头注意力的输入,多头注意力的头数为;多头注意力机制将转化为query矩阵,key矩阵和value矩阵;其中,均为可学习的权重矩阵;输出多头注意力结果,,其中,为key矩阵的维度;基于patchtst架构的神经网络模型重复迭代,更新权重矩阵以最小化损失函数,最终得到训练好的预报模型。
22、在步骤s4中,所述使用训练好的预报模型对未来一段时间内的船舶运动时历数据进行预测包括:
23、对于得到的基于patchtst架构的神经网络模型测试特征数据集对其中的每段测试特征数据进行训练,得到patch操作后的测试特征数据集,将输入训练好的预报模型,利用预报模型求解得到船舶运动时历预报结果。
24、本发明的另一目的在于提供一种融入时频分析的船舶运动长时预报系统,该系统实施所述融入时频分析的船舶运动长时预报方法,该系统包括:
25、数据分割模块,用于对船舶历史运动时历数据进行数据分割,划分为训练集和测试集;
26、patch片段划分模块,用于将训练集数据和测试集数据输入基于patchtst架构的神经网络模型,通过滑动窗口法划分训练集数据与测试集数据,得到特征数据集和标签数据集;基于patchtst架构的神经网络模型内部通过快速傅里叶变换或逐波分析,求得特征数据集中各段特征数据的特征周期,通过滑动窗口的方法将各段特征数据划分为多个子序列级别的patch片段,其中,滑动窗口的大小和滑动步长由特征周期决定;
27、预报模型获得模块,用于基于patchtst架构的神经网络模型基于获得的patch片段进行训练得到准确的预报模型;
28、预测模块,用于使用训练好的预报模型对未来一段时间内的船舶运动时历数据进行预测。
29、进一步,该系统搭载在计算机设备,该计算机设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述融入时频分析的船舶运动长时预报方法的功能。
30、结合上述的所有技术方案,本发明所具备的有益效果为:传统的船舶运动预报模型由于受到马尔科夫链假设和船舶运动序列自相关性的限制,其有效预报时长难以超过一个运动周期,无法实现对于船舶运动时历的长时预测。针对此问题,本发明采用基于patchtst架构的时序预报模型,通过对时历数据进行快速傅里叶变换或逐波分析得到局部窗口的特征周期,并通过特征周期确定划分patch序列的滑动窗口大小和滑动步长,使模型不但能够捕捉全局范围内序列的长时依赖关系,也能获取到局部的周期性起伏特征,从而实现船舶运动长时有效预报。
31、在当前的许多海上作业任务中,对于船舶运动预报的时长需求已经达到了分钟级。例如,舰载直升机的起飞和回收,根据每次作业的起降架次不同,其对运动预报时长要求在1-6分钟不等;各型军用舰艇的舰载武器发射,其对运动预报时长要求在1-2分钟;针对上述存在的问题,建立了基于patchtst架构的时序预报模型,通过引入时频分析的思想,使模型随着预报时长的增加,仍能保持较高的预报精度,具有工程应用意义。例如,在舰载直升机起降作业前,可以基于本发明,根据舰船历史运动时历数据来进行未来1分钟左右的运动时历预报,从来确定舰载直升机起降的安全作业窗口,提高舰载直升机起降作业的安全性。
32、本发明首次实现了将patchtst架构的模型应用于船舶运动预报领域,显著地提高了船舶运动极短期预报任务的可预报时长。
33、船舶运动极短期预报任务中,已有预报模型的可预报时长无法超过一个运动周期,故无法实现分钟级预报,本发明通过引入transformer架构,采用位置编码完成时序特征提取,进而实现分钟级的高精度预报。
1.一种融入时频分析的船舶运动长时预报方法,其特征在于,该方法包括:
2.根据权利要求1所述的融入时频分析的船舶运动长时预报方法,其特征在于,在步骤s1中,所述船舶历史运动时历数据为
3.根据权利要求1所述的融入时频分析的船舶运动长时预报方法,其特征在于,在步骤s2中,将训练集数据和测试集数据输入基于patchtst架构的神经网络模型包括:
4.根据权利要求3所述的融入时频分析的船舶运动长时预报方法,其特征在于,所述快速傅里叶变换包括:根据得到的训练特征数据集,对其中的各个特征数据通过快速傅里叶变换从时域转换到频域,得到频率集合以及对应的振幅集合,取振幅最大值所对应的频率,并对频率取倒数作为该段特征数据的特征周期;
5.根据权利要求3所述的融入时频分析的船舶运动长时预报方法,其特征在于,所述逐波分析包括:根据得到的训练特征数据集,对其中的各个特征数据,提取其中的极大值和极小值,若,则将与对应的运动幅值进行比较;其中,若,则将提取为极大值,最终得到该段特征数据的极大值集合,对应的时间戳集合为:;若,则将提取为极小值,最终得到该段特征数据的极小值集合,,对应的时间戳集合为:;计算每个相邻的极大值与极小值之间的时间间隔得到极值间隔集合,根据极值间隔集合计算该段特征数据的特征周期;其中,为极值间隔集合的长度;
6.根据权利要求1所述的融入时频分析的船舶运动长时预报方法,其特征在于,在步骤s2中,所述通过滑动窗口的方法将各段特征数据划分为多个子序列级别的patch片段包括:
7.根据权利要求1所述的融入时频分析的船舶运动长时预报方法,其特征在于,在步骤s3中,所述基于patchtst架构的神经网络模型基于获得的patch片段进行训练得到准确的预报模型包括:
8.根据权利要求1所述的融入时频分析的船舶运动长时预报方法,其特征在于,在步骤s4中,所述使用训练好的预报模型对未来一段时间内的船舶运动时历数据进行预测包括:
9.一种融入时频分析的船舶运动长时预报系统,其特征在于,该系统实施如权利要求1-8任意一项所述融入时频分析的船舶运动长时预报方法,该系统包括:
10.根据权利要求9所述的融入时频分析的船舶运动长时预报系统,其特征在于,该系统搭载在计算机设备,该计算机设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述融入时频分析的船舶运动长时预报方法的功能。
