APP下载

基于编解码卷积神经网络的船舶航速预测

2023-10-21樊家畅陈信强

关键词:航速注意力船舶

陈 弓, 韩 冰, 樊家畅, 陈信强,3

(1.上海船舶运输科学研究所有限公司, 上海 200135;2.上海海事大学 物流科学与工程研究院, 上海 201306;3.武汉理工大学 智能交通系统研究中心, 武汉 430063)

0 引 言

当前,我国水路运输行业的发展已进入攻坚短板、突破航运技术瓶颈的关键阶段,绿色、低碳和运行效率等得到了研究人员的广泛关注。近年来,国际海事组织(International Maritime Organization,IMO)出台了多项与船舶能效有关的措施[1],如船舶能效设计指数和船舶能效管理计划等;IMO海洋环境保护委员会通过了船舶能效和碳排放强制性措施[2],以进一步减少船舶的燃料消耗和温室气体排放,以期在2050年实现比2008年减排50%的目标。国内也提出了很多与绿色航运有关的管控策略,发布了很多政策文件[3-4]。影响船舶能源利用效率的措施(如低速航行、航线选择和气象导航)和因素(如燃料的消耗、成本和排放)与船舶航速有线性或非线性关系,尤其是功率与航速之间呈三次方关系(即使航速发生微小的变化,也会对功率产生很大的影响),而调整航速不需要装配额外的设备,具有较高的经济效益[5]。因此,对船舶航速进行准确估计,可为油耗预测、航线规划与优化、港口运行效率提升和导航系统开发等任务的开展提供准确的数据支撑,具有重要的研究意义。

当前,已有的船舶航速预测方法可分为基于物理模型的船舶航速预测和数据驱动的基于机器学习方法的船舶航速预测2种。

1) 基于物理模型的航速预测主要通过对全尺寸和小尺度模型的航速试验数据进行回归,得到航速、功率和螺旋桨转速之间的关系,这种方法受船舶自身特征的限制,且需要投入多人力和物力。柏开祥等[6]通过数值模拟的方式模拟了风帆的空气动力性能,基于水池试验建立了板体水动力模型,根据最大推力原理,利用风动力与水动力的平衡方程求解出了各条航线上的最大船舶航速。郑跃洲等[7]通过流固耦合方法对集成电机推进器周围的流场和桨叶应力场进行了计算,同时采用体积力法替代螺旋桨的作用,对无人艇的航速进行了预报。霍萍[8]针对华南理工大学无人艇课题组研发的波浪推进无人艇开展了建模分析、数值计算、模型试验和航速预测等研究,对其水动力学性能进行了测试。

2) 数据驱动的航速预测研究主要利用机器学习方法,基于实测的船舶航行数据和气象数据预测船舶航速。这种方法无需借助与船舶建造和航行有关的物理知识,相比基于物理模型的航速预测方法,预测效果更好,计算过程更简单。

高慧[9]利用支持向量机和采集到的帆船运动数据实现了对帆船航速的预测。李文楷[10]基于船舶自动识别系统(Automatic Identification System,AIS)数据,结合端到端框架和注意力机制设计了船舶行为预测模型,并与传统的双向长短时记忆网络、门控循环单元和循环神经网络(Recurrent Neural Network,RNN)等模型进行了对比,验证了所设计模型的有效性和可靠性。朱晓晨等[11]基于机器学习方法提出了一种轻量化的船舶航速预测模型,将实时风速、风向、水深、水流速度、艉轴转速、轴功率和主机油耗数据作为输入参数,实现了对船舶航速的快速、准确预测,并将该方法与多种机器学习算法相比较,验证了其有效性。部分学者基于灰色模型实现对船舶航速的预测,即针对航速预测任务构建物理模型与数据驱动相结合的船舶航速预测方法,这种方式的预测效果仍受物理模型局限性的影响。LIU等[12]利用一艘散货船收集的午报数据和AIS数据集,采用灰度预测模型对船舶航速和燃油消耗进行了预测。ZHOU等[13]提出了基于编解码卷积神经网络的预测模型,该模型在预测长时间序列数据方面具有很好的效果,这已在多类时间序列数据集的测试中得到验证。本文基于编解码卷积神经网络开展船舶航速预测研究,以期为智能船舶、智能航行和船舶能耗控制研究提供数据支撑。

1 航速预测方法

本文采用基于编解码卷积神经网络的Informer模型开展航速预测。首先,通过位置编码操作对船舶时序数据进行编码;其次,引入自注意力机制获取与航速有关的数据序列并进行航速预测,同时在每次编码时利用自注意力蒸馏减少信息冗余;最后,通过Informer模型的解码器获取船舶航速预测结果。

1.1 位置编码

不同于RNN,Informer模型的编解码机制无法处理序列数据元素的序列信息。为此,引入位置编码机制实现对船舶航速信息的编码。本文采用三角函数方法实现对输入航速序列数据的位置编码,位置编码公式为

PE(pos,2j)=sin(pos/(2LX)2j/dmodel)

(1)

PE(pos,2j+1)=cos(pos/(2LX)2j/dmodel)

(2)

式(1)和式(2)中:X为输入序列;LX为输入序列的长度;pos为序列中元素的位置;j为位置编码中正弦和余弦函数的下标;dmodel为输入向量的维度;PE为编码之后的位置向量。通过位置编码,可更好地处理序列数据,从而提高模型的预测精度。

1.2 自注意力机制

与循环神经网络不同,编解码结构无法有效提取序列数据的长距离信息,因此引入自注意力机制解决该问题。经典的自注意力计算公式为

A(Q,K,V)=Softmax(QKT/d-1/2)V

(3)

式(3)中:Q为查询矩阵;K为键矩阵;V为值矩阵;d为键矩阵的维度;A(Q,K,V)为Q、K和V等3个矩阵经过Softmax激活函数输出的注意力表示张量。通过自注意力机制,模型可捕捉到序列中元素之间的长距离依赖关系,从而提升模型的性能。

1.3 随机抽样

已有研究表明,自注意力机制的概率分布具有潜在的稀疏性。基于经典的自注意力机制进行定性分析发现,约有12%的自注意力模块会在自注意力机制中发挥作用,且相关注意力模块服从长尾分布。因此,可采用随机抽样策略选择主导查询,并引入相对熵计算方式降低算法的复杂度。相比其他采样策略,随机抽样能更好地反映原始自注意力的分布特征,即能更有效地提取船舶航速的变化趋势和变化规律。

1.4 编码器

1.4.1 混合多头自注意力机制

在深度学习领域,基于RNN的方法存在计算复杂度高和难以并行化等问题。由此,引入混合多头自注意力机制,其表达式为

MA(X)=Mixed-Concat(h1,…,hn)

(4)

式(4)中:hn=A(Q,K,V),其中n为模型超参数,为预设的检测头数量;X为模型的输入张量;MA(X)为将不同检测头输出级联得到的多头注意力表示张量;Mixed-Concat()为具体的级联操作,用于捕捉输入序列中不同位置之间的依赖关系。通过混合多头机制,模型可关注不同的信息。这有助于模型更好地理解和表示输入序列,从而提升模型的预测性能。

1.4.2 自注意力蒸馏

由于自注意力机制自身的性质,编码器的特征映射具有一定的冗余性。因此,在每个自注意力的输出层后面加上蒸馏操作,使优势特征能被模型重点关注和学习,并在下一层生成一个聚焦的自注意力特征图,具体的计算公式为

Xt,j+1=MaxPool(ELU(Convld(Xt,j)AB))

(5)

式(5)中:Xt,j为输入第j层编码器的第t个输入张量;()AB为注意块;Convld()表示在时间维上执行一维卷积滤波器,并采用激活函数ELU();MaxPool()代表池化层;Xt,j+1为经蒸馏操作后第j+1层编码器的第t个输入张量。

1.5 解码器

解码器由2个混合多头自注意力层叠加而成,与传统的动态解码不同,采用生成推理的方式解决长时间预测带来的速度下降问题。输入解码器的向量为

Xt,de=Concat(Xt,s,Xt,0)

(6)

式(6)中:s为待预测向量的已知序列长度;Xt,0为待预测序列的填充数据,规避算法陷入自回归状态;Xt,de为输入解码器的向量。

1.6 损失函数

选择均方误差作为模型的损失函数,用于评价模型的预测性能,其计算公式为

(7)

2 试 验

在船舶实际航行过程中,航速变化直接受船舶操纵的影响,航速的预测精度不仅与船舶历史航速有关,而且与船舶采取的操纵措施密切相关。本文用于预测航速的船舶航行数据来源于船舶真实航行数据,由某船2个月的航行数据组成,按8∶1∶1的比例将这些数据划分为训练集、测试集和验证集,在服务器上进行训练和测试。该服务器的中央处理器(Central Processing Unit,CPU)型号为Intel Core i7-10700K;图形处理器(Graphics Processing Unit,GPU)型号为NVIDIA Corporation GA104GL RTX A4000;内存大小为32 GB;显存容量为32 GB。训练环境:python版本号为3.6.5;pytorch版本号为1.7.1+cu110。训练参数设置:编码器层数为3层;解码器层数为2层;每层中的检测头数量为8个;批处理大小设置为64;学习率为1×10-4;单次最大训练次数为100次;模型收敛的停止次数设为20次。本文选取平均绝对误差(Mean Absolute Error,MSE)、均方误差(Mean Squared Error,MAE)、均方根误差(Root Mean Squared Error,RMSE)、平均绝对百分比误差(Mean Absolute Percentage Error,MAPE)和均方预测误差(Mean-Square Prediction Error,MSPE)等5个评价指标对模型的预测效果进行量化分析[14]。

图1和图2分别为第一层编码器和第三层编码器输出的注意力机制特征图,其中右侧表示颜色深浅的数值越大,代表该查询向量与键向量的相似度越高。从图1和图2中可看出,通过注意力机制能有效地从输入的时间序列中提取全局信息,尽管初始特征图仍有很强的稀疏性,但随着层数的增加和蒸馏操作的进行,从历史序列中学习到的航速相关信息会更全面,从而有助于学习到时间序列中的长距离依赖信息,并有效提升模型的预测性能,得到良好的预测效果。

图1 第一层编码器输出的注意力机制特征图

船舶航速预测值与真实值对比见图3,其中时间序列数据采样点的时间间隔为5 min。从图3中可看出,采用Informer航速预测方法预测的船舶航速与船舶真实航速较为接近,预测精度较高。由于模型中引入了自注意力机制,能更好地关注局部特征和全局特征,能有效抑制船舶航速急剧增加和急剧下降等航速异常波动数据的产生。基于此,采用本文构建的船舶航速预测模型预测的船舶航速与船舶真实航速的变化趋势较为一致。此外,由图3可知,本文提出的船舶航速预测方法在整个预测范围内均能迅速准确地预测出船舶航速的变化趋势,而人工神经网络(Artificial Intelligence Neural Network, ANN)和RNN方法的航速预测精度略低。ANN方法在预测初期得到的航速数据与船舶真实航速数据较为接近,随着预测时间的增加,该方法的预测精度略微下降。这主要是由于ANN方法能有效实现对船舶航速的线性预测,但不能有效捕捉船舶航速的非线性变化规律,因此其预测精度有待提升。

图3 船舶航速预测值与真实值对比

RNN方法采用循环结构完成航速预测任务,RNN各层神经元在对当前网络层的输入信息进行提取过程中也考虑了前一时刻神经元的输出信息,使得每个神经元都能从序列数据中学到与时间序列有关的特征信息。基于此,RNN模型在前几个时间序列样本点的预测精度优于ANN模型。随着预测时间的增加,航速数据的预测精度逐渐下降。RNN模型从第8个数据点开始的航速预测结果与实际航速变化规律不同。即真实船舶在第8个数据点开始减速,速度呈下降趋势,且维持了约15 min时间。然而,RNN自第8个数据点的船舶航速变化呈上升趋势,且在第17个和第18个数据点也产生了较大的预测偏差。总体而言,相比ANN模型和RNN模型,本文构建的Informer模型能准确、快速、有效地预测出船舶航速。

表1为采用不同模型得到的航速预测量化结果对比。由表1可知:采用本文构建的Informer模型得到的船舶航速MSE、MAE、RMSE、MAPE和MSPE分别为0.352、0.281、0.495、0.433和0.882,均小于ANN模型和RNN模型;采用ANN模型和RNN模型得到的MSPE分别为482.321和1 132.714,该数值显著大于Informer模型;采用ANN模型和RNN模型得到的MSE分别为0.413和0.699,Informer模型的航速预测精度至少比这2种模型高15%。综上,采用本文构建的Informer模型能获得准确的航速预测结果。

表1 采用不同模型得到的航速预测量化结果对比

3 结 语

本文基于Informer模型对船舶航速进行预测,将原始的船舶航行数据作为模型输入,引入多头自注意力机制和自注意力蒸馏方法提高船舶航速的预测精度。对比试验结果表明,采用Informer模型得到的船舶航速MSE、MAE、RMSE、MAPE和MSPE分别为0.352、0.281、0.495、0.433和0.882,均小于ANN模型和RNN模型,说明采用本文提出的船舶航速预测方法能获得较好的船舶航速预测效果。在后续研究中,可融合水上交通视频和雷达等多源传感器数据开展船舶航速预测研究,为船舶智能航行精准控制提供高精度的数据支撑。

猜你喜欢

航速注意力船舶
VLCC在波浪中的航速优化与能效优化分析
提升全回转港作拖轮航速的有效途径
让注意力“飞”回来
《船舶》2022 年度征订启事
船舶!请加速
BOG压缩机在小型LNG船舶上的应用
低速水面目标航速精度分析及精确解算
“扬眼”APP:让注意力“变现”
船舶压载水管理系统
A Beautiful Way Of Looking At Things