2022年以来,国际海事组织制定各种政策,包括实施加强的船舶能效管理计划(SEEMP)和碳排放强度指标(CII)两项关键措施,旨在通过更有效地使用船舶燃料来降低温室气体排放和遏制环境污染[1]。在船舶运营中,燃料成本是影响盈利能力的主要因素,改善船舶燃油的使用效能,将有效提高船舶的盈利能力[2]。船舶燃油消耗量是评估和监控船舶活动的关键指标,因此建立精准的船舶燃油消耗预测模型,提高模型的预测精度对于降低温室气体排放和提高船舶运营效率具有重要意义。
由于船舶航行油耗受风速、海况、载重、航速等多个复杂因素的影响,传统的回归方法难以获得准确的预测性能[3]。为了提高回归模型的精度,YAN等[4]将能效运行指标引入内河船舶,提出影响内河船舶运行能效参数的多参数灵敏度分析方法,建立基于BP神经网络的船舶能效营运指数预测模型。Le等[5]提出了多层感知器人工神经网络的方法,使用集装箱船航行数据,将航行时间、航速、货物重量等作为输入参数,利用该神经网络对船舶油耗进行预测。Hu等[6]采用BP神经网络和高斯过程回归技术对船舶油耗进行预测对比,结果发现BP神经网络提供更短的运行时间,高斯过程回归技术提供更高的准确率。
BP神经网络在船舶油耗预测方面得到广泛的应用,但针对BP神经网络建模过程中参数估计方法的研究尚显不足。在实际应用中,BP神经网络存在对数据噪声敏感导致的过拟合,训练过程较慢且容易陷入局部最优解,对初始权重和学习率敏感的问题[7]。本文通过算法优化,对BP神经网络的结构和超参数进行调优,以提高船舶油耗预测性能和稳定性。
1 预测研究方法 1.1 核主成分分析法核主成分分析(Kernel Principal Component Analysis,KPCA)是一种基于对原始训练数据集协方差矩阵进行正交分解,同时尽可能多地保留可变性的无监督机器学习技术[8]。KPCA通过核函数将非线性问题转化为高维空间中的线性问题,再利用主成分分析方法提取数据的主要特征,实现了对复杂非线性数据的特征提取。KPCA的具体实现步骤如下:
步骤1 选择核函数
$ \kappa \left( {\overline {{x_i}} ,\overline {{x_j}} } \right) = \exp \left[ { - \frac{{{{\left\| {\overline {{x_i}} - \overline {{x_j}} } \right\|}^2}}}{{2{\zeta ^2}}}} \right] 。$ | (1) |
式中:
步骤2 使用非线性映射函数
$ \phi :\overline {{x_i}} \in {\mathbb{R}^m} \to \phi \left( {\overline {{x_i}} } \right) \in {\mathbb{R}^f},i = 1...n 。$ | (2) |
式中:n为观测值个数;m为变量个数;
步骤3 求解特征空间中的协方差矩阵
$ {\sum_\phi } = \frac{1}{n}\sum\limits_{i = 1}^n {\phi \left( {\overline {{x_i}} } \right)} \phi {\left( {\overline {{x_i}} } \right)^\mathrm{T}}。$ | (3) |
步骤4 计算协方差矩阵的特征值
$ {\sum _\phi }{v_k} = {\lambda _k}{v_k},k = 1...f ,$ | (4) |
$ {v_k} = \sum\limits_{i = 1}^N {{\alpha _{ki}}} \phi \left( {\overline {{x_i}} } \right),k = 1...f 。$ | (5) |
步骤5 选取主成分,使用累积百分比方差CPV技术,当值
$ CPV\left( l \right) = \frac{{\displaystyle\sum\nolimits_{i = 1}^l {{\lambda _i}} }}{{\displaystyle\sum\nolimits_{h = 1}^m {{\lambda _h}} }} \times 100\% \geqslant CP{V_{\lim {\mathrm{it}}}} 。$ | (6) |
BP神经网络是一种多层前馈神经网络架构,通过结合前馈传播与误差反向传播的迭代学习过程,基于梯度下降法优化神经元的阈值和层间连接的权重,达到最小化网络输出与预设目标值之间误差的目的[11]。BP神经网络的工作流程分为正向传播和反向传播2个关键阶段。正向传播是指数据朝着网络方向流动,中间过程的计算结果作为输入传递给下一个节点,反向传播是指将输出结果与理想结果进行比较的过程,预测结果与理想结果之间的误差通过网络反向传播[12]。
BP神经网络是由输入层、输出层和隐藏层组成,其中,
![]() |
图 1 BP神经网络模型结构图 Fig. 1 Neural network model structure diagram |
遗传算法(Genetic Algorithm,GA)是一种模拟自然界生物进化机制的优化搜索算法。它是一种高效的全局优化搜索算法,选择适应度较高的个体,不断进行进化迭代,直到满足条件的个体出现[13]。遗传算法优化BP神经网络步骤如图2所示。
![]() |
图 2 遗传算法优化BP神经网络流程图 Fig. 2 Genetic algorithm optimization BP neural network flowchart |
步骤1 染色体编码。确定初始种群包含的个体数量,设定二进制字符串的长度为固定值作为种群中每个个体的基因编码。每个个体由包含BP神经网络所有权值和阈值的符号串组成。
步骤2 染色体解码。使用一种将二进制转换为十进制的特殊功能对染色体解码。
步骤3 适应度函数。函数公式如下式:
$ S = \sum\limits_{i = 1}^n {\left| {{f_i} - f({x_i})} \right|}。$ | (7) |
式中:
步骤4 选择相应的操作。计算每个个体的适应度函数值,通过轮盘赌选择方法,基于个体的适应度值概率性地选择个体来组成新的种群。
步骤5 交叉。设置交叉概率,随机选择2个个体
$ \left\{ \begin{gathered} {a_{ik}} = {a_{ik}}(1 - b) + {a_{jk}}b ,\\ {a_{jk}} = {a_{jk}}(1 - b) + {a_{ik}}b 。\\ \end{gathered} \right. $ | (8) |
式中:b为一个0~1的随机数。
步骤6 进行变异操作。假设突变率为p,随机挑选种群中的个体执行突变操作,在选择的
$ \left\{ \begin{gathered} {a_{lh}} + ({a_{lh}} - {a_{\max }}){r_2}(1 - g/{G_{\max }}),h \geqslant 0.5 ,\\ {a_{lh}} + ({a_{\min }} - {a_{lh}}){r_2}(1 - g/{G_{\max }}),h < 0.5 。\\ \end{gathered} \right. $ | (9) |
式中:
步骤7 计算新种群的个体适应度。如果满足要求,停止迭代;否则,返回步骤4。
为了有效地分析和评估人工神经网络模型的预测性能,本文使用2个指标,即决定系数
原始数据来自一艘液化石油气运输船,船长为225 m,宽为37 m,数据采集依赖于船舶上安装的多种传感器,这些传感器能够连续不断地按照时间序列进行采样。但数据采集过程会受到多种因素的影响,包括船舶在锚地或泊位的停留时间,数据传输过程中的延时,以及在接收数据时发生的异常情况等,这些将导致采集到的原始数据存在偏差和异常值[15]。
数据降噪是一种处理原始数据中存在的噪声、偏差和异常值的方法[16]。具有时间序列的大数据包含噪声、误差和偏差,所有这些都视为损坏数据,设
$ \text{Minimize||} \overline{{X}} -{{X}_{{cor}}}||^2+\lambda \sum\limits_{{{{\mathrm{j}} = 1}}}^{{{{{n}} - 1}}} {({{{X}}_{\mathrm{j} + 1}}} -{{{X}}_{{\mathrm{j}}}}) 。$ | (10) |
确定船舶的航行状态是建立船舶能效状态模型的前提之一。船舶的航行状态与主机的工作状态密切相关,在非正常航行状态下船舶整体油耗状态的影响在此将忽略不计[17],因此本文先判断船舶的航行状态,筛选出船舶正常航行状态的数据再进行分析。
图3为船舶航行状态识别结果。根据实船的特征分析,船舶航行状态可分为停泊状态、机动航行状态和定速航行状态,不同的航行状态要求不同的主机转速设置,以适应特定的航海需求和环境条件。在停泊状态下,船舶的航速、主机转速和油耗率基本为0,但由于海况等外界因素影响,主机仍有可能出现一定的转速和功率值,这种异常数据值应被筛选出来。依据主机转速设定一个临界值15 r/min,主机转速在[0,15]范围内的则认定为停泊状态;在定速航行状态下,船舶的各参数相对稳定,基本保持在一定值范围内;在机动航行状态下,船舶各项参数特征会经历一个由低到高、最终趋于稳定的波动过程,其中转速的波动幅度相对较大。为了区分定速航行和机动航行,以主机转速为判断依据,设定一个临界值65 r/min作为判断标准,主机转速在[15,65]数值范围内则认定为机动航行状态,大于65 r/min的则认定为定速航行状态,将停泊状态和机动航行状态认定为非正常航行状态,定速航行状态认定为正常航行状态,运用Matlab软件中航行状态识别算法进行筛选从而得到正常航行状态的样本数据。
![]() |
图 3 船舶航行状态识别结果 Fig. 3 Vessel navigation status recognition results |
尽管数据筛选已经完成,船舶油耗数据仍然存在大量影响系统输入的物理变量,输入变量存在高度相关性,导致BP神经网络接收的信息存在重复,BP神经网络存在过拟合风险。解决过拟合问题的有效方法之一是利用大量数据进行网络训练,并采用机器学习技术对非线性数据进行特征提取[18]。
本文采用核主成分分析法提取后的正常航行状态数据作为船舶油耗模型的输入数据。在利用船舶航行状态识别模型筛选船舶定速航行状态数据后,利用核主成分分析法提取10个影响船舶油耗因素的非线性特征对输入变量进行重构。主成分的贡献率和累计贡献率如图4所示。可知,前5个主成分K1、K2、K3、K4、K5的累积贡献率大于85%,这一结果解释了输入变量的大部分信息,因此,选取前5个主成分代替原来10个输入变量组成的主成分集。
![]() |
图 4 总方差解释树状图 Fig. 4 Total variance explained dendrogram |
本文选取
![]() |
表 1 样本统计量描述 Tab.1 Sample statistic description |
为了优化网络结构,使用随机搜索交叉验证技术来确定最佳的学习率和隐藏层数,优化过程采用均方误差作为评价指标。在3种不同的学习率值(0.01、0.001和
![]() |
表 2 BP神经网络超参数 Tab.2 BP neural network hyperparameters |
回归图显示了网络输出相对于训练、验证和测试集的目标,图5中对角虚线作为理想化的基准线,代表模型输出值与真实值完全一致,从4个子图的对比分析可以看出,无论是针对训练集、验证集、测试集,还是综合样本集的总体表现,模型的输出值均接近真实值,相关系数
![]() |
图 5 BP神经网络线性回归图 Fig. 5 Linear regression plot of BP neural network |
表3为传统BP神经网络油耗模型和基于遗传算法优化的BP神经网络油耗模型的主要评估指标对比,显示了输出相对于训练集和验证集的目标,在这2种模型中,所有数据集的拟合质量都相当好,决定系数
![]() |
表 3 主要评估指标对比 Tab.3 Comparison of key assessment indicators |
本文提出一种基于遗传算法改进BP神经网络的船舶油耗预测方法,通过对采集到的液化石油气运输船的实船数据进行验证,取得了较好的预测性能。首先通过对船舶营运油耗数据进行预处理,确保模型输入数据的准确性和有效性;其次利用核主成分分析法对原始高维数据进行降维,减少模型训练的复杂度;最后采用遗传算法优化BP神经网络的结构和超参数,增强BP神经网络模型的预测精度和运行稳定性。实验结果表明,经过优化后的BP神经网络模型验证集中的均方根误差由
[1] |
MEPC, RESOLUTION. 2022 Guidelines for the development of a ship energy efficiency management plan (SEEMP)[Z]. 2022.
|
[2] |
YUAN Z, LIU J X, ZHANG Q, et al. Prediction and optimisation of fuel consumption for inland ships considering real-time status and environmental factors[J]. Ocean Engineering, 2020, 221(12), 108530.
|
[3] |
RAN Y, WANG S A, DU Y Q. Development of a two-stage ship fuel consumption prediction and reduction model for a dry bulk ship[J]. Transportation Research Part E: Logistics and Transportation Review, 2020, 138: 101930.
|
[4] |
YAN X, SUN X, YIN, Q. Multiparameter sensitivity analysis of operational energy efficiency for inland river ships based on backpropagation neural network method[J]. Marine Technology Society Journal, 2015, 49(1): 148−153.
|
[5] |
THANH L L, GUNWOO L, PARKK S, et al. Neural network-based fuel consumption estimation for container ships in Korea[J]. Maritime Policy & Management 2020, 47(5): 615−632.
|
[6] |
HU Z H, JIN Y X, HU Q Y, et al. Prediction of fuel consumption for enroute ship based on machine learning[J]. IEEE Access, 2019(7): 119497−119505.
|
[7] |
NGUYEN V, RAJAMOHAN S. Using artificial neural networks for predicting ship fuel consumption[J]. Polish Maritime Research, 2023, 23(2): 39−60.
|
[8] |
孟忍, 董学平, 甘敏. 基于KPCA和BiLSTM的分解炉出口温度预测[J]. 合肥工业大学学报(自然科学版), 2023, 46(2): 169-174. MENG R, DONG X P, GAN M. Temperature prediction of decomposition furnace outlet based on KPCA and BiLSTM[J]. Journal of Hefei University of Technology (Natural Science Edition), 2023, 46(2): 169-174. |
[9] |
张博峰. 基于KPCA与径向基神经网络的滚动轴承故障诊断[J]. 内燃机与配件, 2021(13): 133-135. ZHANG B F. Rolling bearing fault diagnosis based on KPCA and radial basis neural network[J]. Internal Combustion Engines and Accessories, 2021(13): 133-135. |
[10] |
刘璐, 杨丹, 陈睿杰, 等. 基于KPCA-GA-BP神经网络的POI质量预测研究[J]. 电信科学, 2023, 39(1): 108-116. LIU L, YANG D, CHEN R J, et al. Research on POI quality prediction based on KPCA-GA-BP neural network[J]. Telecommunication Science, 2023, 39(1): 108-116. |
[11] |
王雨涵, 张亚萌, 魏国亮. 基于BP神经网络和高阶模糊认知图的股票价格预测[J]. 智能计算机与应用, 2023, 13(8): 100-106+113. WANG Y H, ZHANG Y M, WEI G L. Stock price prediction based on BP neural network and high-order fuzzy cognitive map[J]. Intelligent Computer and Applications, 2023, 13(8): 100-106+113. |
[12] |
陈亮, 沈良朵, 陆凡, 等. 基于主成分的BP神经网络共享单车骑行预测[J]. 网络安全技术与应用, 2023(7): 51-55. CHEN L, SHEN L D, LU F, et al. Principal component-based BP neural network shared bicycle riding prediction[J]. Network Security Technology and Application, 2023(7): 51-55. |
[13] |
徐森雨, 田利军. 基于GA-BP神经网络的航空货运量预测[J]. 综合运输, 2023, 45(9): 75-79. XU S Y, TIAN L J. Air cargo volume forecasting based on GA-BP neural network[J]. Comprehensive Transportation, 2023, 45(9): 75-79. |
[14] |
熊豪杰, 魏怡. 基于改进CNN-BP的多波束声纳高程数据预测研究[J]. 计算机科学, 2023, 50(S1): 575-578. XIONG H J, WEI Y. Research on multibeam sonar elevation data prediction based on improved CNN-BP[J]. Computer Science, 2023, 50(S1): 575-578. |
[15] |
周兰喜, 王楠, 周旭. 基于营运数据的船舶能效分析及预测[J]. 船舶与海洋工程, 2024, 40(2): 34-38. ZHOU L X, WANG N, ZHOU X. Analysis and prediction of ship energy efficiency based on operation data[J]. Ship and Ocean Engineering, 2024, 40(2): 34-38. |
[16] |
王凯, 徐浩, 黄连忠, 等. 基于机器学习的船舶能耗智能预测方法分析[J]. 船舶工程, 2020, 42(11): 87-93. WANG K, XU H, HUANG L Z, et al. Analysis of intelligent prediction method of ship energy consumption based on machine learning[J]. Ship Engineering, 2020, 42(11): 87-93. |
[17] |
陈伟南, 黄连忠, 张勇, 等. 基于BP神经网络的船舶主机能效状态评估[J]. 中国舰船研究, 2018, 13(4): 127-133+160. CHEN W N, HUANG L Z, ZHANG Y, et al. Energy efficiency state assessment of ship main engine based on BP neural network[J]. China Ship Research, 2018, 13(4): 127-133+160. |
[18] |
郑齐清, 陈佳鑫, 杨何伍. 基于PCA分析法的船舶主机能效评价[J]. 广州航海学院学报, 2023, 31(2): 41-46. ZHENG Q Q, CHEN J X, YANG H W. Energy efficiency evaluation of ship main engine based on PCA analysis[J]. Journal of Guangzhou Nautical College, 2023, 31(2): 41-46. |