2. 上海外高桥造船有限公司,上海 200137
2. Waigaoqiao Shipbuilding Co. Ltd., Shanghai 200137, China
船舶横摇运动预测是海洋工程和船舶设计领域中的一个重要研究课题,对于船舶的安全性、经济性和乘员的舒适性具有至关重要的影响。船舶在海上航行时,会受到多种因素的影响,如波浪、流速、船舶自身的结构和操作等,这些因素共同作用于船舶,导致其产生横摇运动[1]。准确预测船舶的横摇运动,尤其是在恶劣海况下,可以协助船员准确把握船舶未来的运动特性,采取相应的应急措施,极大提升船舶安全性。近年来,船舶横摇运动的预测方法主要包括基于数学模型的解析方法[2]、经验公式法[3]和基于数据驱动的机器学习方法[4]。解析方法依赖于船舶动力学和流体力学的理论,构建数学模型来预测船舶的运动。这种方法的优点是理论基础坚实,但模型通常较为复杂,且难以适应实际海洋环境的多变性。经验公式法则通过分析历史数据,建立基于经验的预测模型,其简单易行,但预测精度受限于数据质量和经验公式的泛化能力。近年来,随着大数据和机器学习技术的发展,基于数据驱动的机器学习方法,尤其是神经网络相关技术,因其强大的数据处理和模式识别能力,被广泛应用于船舶运动预测,并取得了显著的成果。
然而,传统的BP(Back Propagation)神经网络在船舶横摇运动预测中容易出现如训练时间长、容易陷入局部最优解等问题[5]。为了解决这些问题,研究者们尝试引入各种方法来改进神经网络的性能。例如,李冲[6]引入改进的NARX神经网络,结合实测环境数据,有效提高了“育鲲”轮横摇运动的预测准确度,证实了其在海况预测中的有效性。张琴等[7]研发了融合VMD与LSTM的预测模型,针对船舶横摇运动进行高效精准预测,提升了预测技术在海洋工程领域的应用潜力。鲸鱼优化算法[8](Whale Optimization Algorithm, WOA)是一种模拟座头鲸捕食行为的优化算法,通过模拟鲸鱼的狩猎策略来解决优化问题。因其简洁、高效以及出色的全局搜索性能,该算法在多个领域得到了广泛的应用和关注。
因此,本文提出了一种鲸鱼优化算法与BP神经网络相结合的预测模型(WOA-BP),旨在实现船舶横摇运动快速且准确的极短期预报。WOA-BP模型的创新之处在于,其不仅利用了鲸鱼优化算法的高效全局搜索能力来优化BP神经网络的参数,从而提高模型的预测精度和收敛速度;而且还通过引入自适应学习率和动态调整网络结构的机制,增强了模型对不同海况变化的适应性和泛化能力。此外,通过AQWA软件与机器学习技术相结合,模拟实际海洋环境条件下的船舶水动力响应,为模型提供高质量的训练数据。
1 优化算法介绍 1.1 BP神经网络模型BP神经网络的结构包括输入层、输出层和若干隐含层,每层都有若干个节点,层与层之间节点的链接状态通过权重来体现。其中,输入层的节点个数等于输入的维度,输出层的节点个数等于输出的维度。在BP神经网络中,每个节点都包含一个感知器(即一个单独的神经元),其包含输入项、权重、偏置、激活函数和输出。在正向传播过程中,输入数据经过感知器节点的计算后,通过激活函数的处理得到输出结果;而在反向传播过程中,将结果与期望结果进行比较,通过多次迭代不断调整网络上各个节点的权重。
一个典型的多层前馈神经网络如图1所示,输入层接收外部特征X,并通过一系列隐藏层处理,最终在输出层产生预测结果Y。该网络的训练涉及前向传播输入信号和反向传播计算误差2个关键步骤。
![]() |
图 1 多层BP神经网络结构 Fig. 1 Multilayer BP neural network structure |
每层的计算公式如下:
$ y = TW + b 。$ | (1) |
式中:T为激活函数,b为激活阈值,W为连接权重。对于多层网络,采用的是前馈传播的方式进行计算,即每一层都按以上的公式进行计算,直到最后一个输出层。本文中BP神经网络的误差函数为均方差函数,具体公式如下:
$ E\left( {W,b} \right) = \frac{1}{m}\sum\limits_k^m {\frac{1}{k}\sum\limits_{j = 1}^k {{{\left( {{{\hat y}_{ij}} - {y_{ij}}} \right)}^2}} } 。$ | (2) |
式中:m为训练样本个数;k为输出个数;
鲸鱼优化算法能有效避免陷入局部最优,是求解最优解问题的理想算法[9],是一种模拟座头鲸群体气泡狩猎捕食过程的元启发式算法。WOA算法3个阶段计算公式如下:
第一阶段包围猎物。发现猎物后,鲸鱼根据目标猎物位置或接近目标猎物最近点进行位置更新,位置更新公式为:
$ \left\{ {\begin{aligned} &{X\left( {t + 1} \right) = {X^*}\left( t \right) - A \cdot D} ,\\ &{D = \left| {C \cdot {X^*}\left( t \right) - X\left( t \right)} \right|} 。\end{aligned}} \right. $ | (3) |
式中:X*为已发现的最优位置;X为鲸鱼的当前位置;t为迭代次数;A和C分别为影响搜索动态的参数矩阵,表达式为:
$ \left\{ {\begin{aligned} &{A = 2a \cdot {r_1} - a},\\ &{C = 2{r_2}} ,\\ &{a = 2 - \displaystyle\frac{{2t}}{{{t_{\max }}}}} 。\end{aligned}} \right. $ | (4) |
式中:r1和r2为介于0~1的随机数值;t为当前的迭代轮数;tmax为迭代的上限;a为一个随着时间从2递减至0的衰减系数。算法的后续步骤涉及模仿鲸鱼盘旋上升捕食的螺旋搜索模式,其表达式如下:
$ \left\{ {\begin{aligned} &{X\left( {t + 1} \right) = {X^*}\left( t \right) + D \cdot {e^{bl}} \cdot \cos (2{\text{π}} l)} ,\\ &{D = \left| {C \cdot {X^*}\left( t \right) - X\left( t \right)} \right|} 。\end{aligned}} \right. $ | (5) |
式中:b为一个固定值,用于调整螺旋搜索的轨迹形态;l为介于−1~1的随机数。
在模拟鲸鱼螺旋上升搜索猎物的行为时,搜索模式会逐步缩小搜索范围,为了模拟这种行为,需要包围猎物和螺旋搜寻同步进行,更新公式为:
$ X\left( {t + 1} \right) = \left\{ {\begin{aligned} &{X\left( t \right) - A \cdot \left| {C \cdot X\left( t \right) - X\left( t \right)} \right|,p < 0.5},\\ &{X\left( t \right) + D \cdot {e^{bl}}\cos (2{\text{π}} l),p \geqslant 0.5} 。\end{aligned}} \right. $ | (6) |
式中:p为[0,1]之间均分布随机数。
在算法的最终阶段,采用随机搜索策略以增强算法的全局探索能力,通过引入随机因素来扩展搜索空间,从而提高鲸鱼群体的搜索效率。
当系数|A|≥1时,此时应采用随机搜索策略;当系数|A|<1时,实施螺旋环绕的搜索策略。在随机搜索的迭代更新中,使用以下公式,其中Xrand为群体中某个鲸鱼的随机位置。
$ X\left(t+1\right)=X\mathrm{_{rand}}\left(t\right)-A\cdot\left|C\cdot X\mathrm{_{rand}}\left(t\right)-X\left(t\right)\right|。$ | (7) |
3种搜索策略的融合形成了鲸鱼优化算法的核心[10]。
2 船舶横摇运动方程在评估船舶稳性时,通常会特别关注横浪影响下的横摇运动响应[11]。这种简化的模型能够在简化复杂问题的同时,捕捉到船舶在大幅度横摇和倾覆过程中的非线性特征[12]。因此,本研究将围绕单自由度横摇运动方程进行深入探讨,该方程式为:
$ \left(I_{xx}+J_{xx}\left(\omega\right)\right)\ddot{\varphi}+B\left(\omega\right)\dot{\varphi}+K\cdot\varphi=\boldsymbol M_{\mathrm{wave}}\left(\omega\right)。$ | (8) |
式中:船舶横摇角
$ {\left(I_{xx}+J_{xx}\right)\ddot{\varphi}\left(t\right)+\displaystyle\int_0^th\left(t-\tau\right)\dot{\varphi}\left(\tau\right)\mathrm{d}\tau+K\cdot\varphi\left(t\right)=\boldsymbol M_{\mathrm{{wave}}}\left(t\right) }。$ | (9) |
参数
$ h\left(t\right)=\frac{2}{\text{π}}\int_0^{\infty}\frac{Jxx\left(\omega\right)}{\omega}\sin\left(\omega t\right)\mathrm{d}\omega=\frac{2}{ {\text{π}}}\int_0^{\infty}B\left(\omega\right)\cos\left(\omega t\right)\mathrm{d}\omega 。$ | (10) |
计算波浪产生的力矩时,采用以下公式:
$ \boldsymbol M\mathrm{_{wave}}\left(t\right)=\boldsymbol M_{F-K}(t)+\boldsymbol M_d(t)。$ | (11) |
在未受浮体干扰的情况下,
鲸鱼优化算法-反向传播(WOA-BP)神经网络具有自适应性、高度可调性与全局搜索能力,使得预测模型具有更好的鲁棒性和更高的预测精度。具体算法流程如图2所示。
![]() |
图 2 WOA-BP算法流程图 Fig. 2 WOA-BP algorithm flowchart |
利用基于势流理论的船舶水动力分析软件AQWA[14],对一艘
![]() |
表 1 油船船型参数 Tab.1 Tanker type parameters |
![]() |
图 3 AQWA 中船舶几何结构 Fig. 3 Ship geometry in AQWA |
![]() |
图 4 时域横摇运动响应 Fig. 4 Time domain rolling motion response |
根据图4所示的时域横摇运动数据,得到图5所示的频率响应特性,通过应用快速傅里叶变换(FFT)算法,将时域信号转换为频域信号,并计算出每个频率成分的幅度谱。这一过程不仅揭示了横摇角随时间变化的频率特性,还反映了船舶动态响应的特性。
![]() |
图 5 AQWA中横摇运动频率响应变化过程 Fig. 5 The variation process of roll motion frequency response in AQWA |
采用归一化方法处理样本数据,使所有数据都处于[0,1]的范围内,消除量纲影响并加速收敛,归一化数学表达式为:
$ {X^*} = \frac{{{{X}} - {x_{\min }}}}{{{x_{\max }} - {x_{\min }}}} 。$ | (12) |
式中:
本次模拟中训练组70%样本用于训练网络,30%样本作为验证组,用于独立测试所训练网络的性能。并根据其误差调试网络,其中训练法则采用Levenberg-Marquardt运算法则,使用Matlab环境构建了BP神经网络模型及其改进版WOA-BP模型,设定神经元数量为10个,隐藏层级为5层。在模型训练中,选用Adam优化算法,设定学习速率为0.1,并规定最大训练周期为
在WOA算法的初始设置中:鲸群数量设定为50,迭代次数上限为100,每个鲸鱼的位置限制在[−3,3]区间内。通过图6所示适应度变化曲线发现,使用WOA算法优化BP神经网络的搜索过程,其中适应度在第5轮迭代时达到了最低点为
![]() |
图 6 WOA-BP算法迭代曲线图 Fig. 6 WOA-BP algorithm iteration curve |
根据所设定的函数及加权参数,WOA-BP神经网络的拟合结果如表2及图7所示,显示出在训练和测试数据集上预测精度较高,满足工程应用的要求。图8及表2进一步展示了WOA-BP模型预测值与AQWA计算结果的频率响应谱对比,显示出两者的频率响应曲线具有很高的拟合度且峰值误差较小,表明WOA-BP模型对船舶运动响应谱具有较高的频率分辨率,能够精确捕捉系统的动态特性,从而确保了在船舶横摇预测方面的准确性和可靠性。
![]() |
表 2 WOA-BP神经网络性能指标表 Tab.2 WOA-BP neural network performance index table |
![]() |
图 7 WOA-BP算法预测 Fig. 7 WOA-BP algorithm prediction |
![]() |
图 8 WOA-BP模型响应谱误差对比图 Fig. 8 WOA-BP model response spectrum error comparison chart |
线性回归分析图(见图9)显示了网络输出对训练、验证和测试集的目标。理想情况下,图中的点应该紧密围绕着45°角的直线(即预测值等于实际值的线),其相关系数为1,这表明模型的预测非常准确。其中,圆圈表示真实值;拟合线则是模型根据输入数据拟合出的预测值与实际值之间的关系;虚线表示的是理想情况下的预测线,即Y=T,其中Y是模型预测值,T是目标值。虚线是45°角的直线,表示当预测值完全等于目标值时的情况。如表3所示,在本次模拟中,WOA-BP神经网络在所有给出的预测准确率上都超越了传统的BP神经网络,其中最高的准确率达到了
![]() |
图 9 神经网络线性回归分析图 Fig. 9 Neural network linear regression analysis diagram |
![]() |
表 3 线性回归分析图预测精度对比 Tab.3 Comparison of prediction accuracy of linear regression analysis graph |
图10为本文提出的WOA-BP以及BP船舶横摇运动预测模型的预测结果和预测误差,该WOA-BP模型有效避免了传统BP神经网络易陷入局部最优和对初始权重敏感的问题,增强了网络模型的稳健性,相较于BP船舶横摇运动预测模型在预测精度上有了较大提升。如图11所示,相比传统BP神经网络,WOA-BP神经网络预测的频率响应特性与AQWA计算的响应谱吻合度较高,趋势和峰值均有较高的一致性,验证了其在捕捉船舶动态响应方面的高效性和准确性。
![]() |
图 10 船舶横摇运动预测模型结果对比 Fig. 10 Prediction model results for ship's roll motion |
![]() |
图 11 船舶横摇运动频率响应结果对比 Fig. 11 Comparison of roll motion frequency response results for ships |
对训练后得到的结果进行反归一化后,再计算出结果与标准结果的误差值,将预测值与真实值之间的误差做了对比,如表4所示。表中展示了这2个模型对船舶横摇运动进行预测后的均方误差 MSE,均方根误差 RMSE 以及平均绝对误差 MAE,决定系数R2。
![]() |
表 4 横摇角度预测精度对比 Tab.4 Comparison of roll angle prediction accuracy |
可以看出,将BP模型与经过WOA算法优化的BP模型的预测结果对比分析预测误差,WOA-BP预测模型将预测值误差百分比降低了大约99.85%,RMSE相较BP模型降低了约88.97%,MAE降低了约96.76%,R2提高了约86.54%。
基于WOA-BP模型在横摇角度预测的准确性验证,对横摇角速度及横摇角加速度的预测进行了分析,以进一步验证模型的泛化能力和实用性。横摇角速度和加速度作为船舶动态稳定性分析的关键指标,对于评估船舶在复杂海况下的响应性能至关重要。在本次模拟中,选取了与横摇角度相对应的横摇角速度和横摇角加速度的数据集。分别用BP模型和WOA-BP模型在这些数据上进行了重新训练,以适应横摇角速度和角加速度的预测任务。图12~图15所示为WOA-BP模型与BP模型对船舶运动响应谱的频率分辨率的性能对比。
![]() |
图 12 船舶横摇角速度预测模型结果对比 Fig. 12 Comparison of ship roll angular velocity prediction models |
图13所示为不同预测模型与AQWA计算结果的对比,其中WOA-BP模型在横摇角速度频率响应中展现出了更高的准确性,验证了模型在频域分析中的有效性。通过对比图12及表5的WOA-BP模型与原始BP模型的预测结果,WOA-BP模型在横摇角速度预测上表现出比传统BP模型更高的准确性,根据统计指标,WOA-BP模型的MSE、RMSE、R2及MAE均低于BP模型,表明其在横摇角速度预测任务上具有更好的性能。
![]() |
图 13 船舶横摇角速度频率响应结果对比 Fig. 13 Comparison of roll angular velocity frequency response results for ships |
![]() |
表 5 横摇角速度预测精度对比 Tab.5 Comparison of prediction accuracy of roll angular velocity |
如图14、图15和表6所示,在横摇角加速度预测方面,该模型在预测精度和频率响应的解析度上均超越了传统的BP模型,显示出更高的准确性和稳定性。综上,WOA-BP模型不仅在横摇角度的预测准确性上超越了传统BP模型,而且在横摇角速度和加速度的预测任务中也展现了卓越的性能和泛化能力。以AQWA计算得到的横摇运动响应谱作为目标值,WOA-BP模型的预测结果相较于原始BP模型显示出更高的拟合度。
![]() |
图 14 船舶横摇角加速度预测模型结果对比 Fig. 14 Comparison of ship roll angle acceleration prediction model results |
![]() |
图 15 船舶横摇角加速度频率响应结果对比 Fig. 15 Comparisonof ship roll angular velocity frequency response results |
![]() |
表 6 船舶横摇角加速度预测精度对比 Tab.6 Comparison of prediction accuracy of ship roll angle acceleration |
本文将BP神经网络与鲸鱼优化算法相结合对船舶横摇进行预测,提高了预测模型的准确性和预测结果的稳定性。改进后的WOA-BP模型能够有效的提高原始的BP模型的训练能力,减小模型的预测误差,在实时预测船舶横摇运动方面,具有更好的效果。
通过AQWA对一艘油船在空载状态下进行时域仿真并获取动态响应数据,以此为基础,建立鲸鱼算法优化BP神经网络,对船舶横摇角、角速度及角加速度进行预测对比,得出以下结论:
1)借助WOA算法的简洁性、易于配置的参数、强大的优化能力和快速收敛的特性,构建了WOA算法优化神经网络模型,获得了BP神经网络最佳的权值和阈值,取得了良好的预测效果。
2)根据Matlab仿真结果可以直观看出,经WOA算法优化的BP神经网络预测精度要优于未优化的BP神经网络,主要是其初始权重和阈值通常是随机设定的,这使得BP神经网络更容易陷入局部最优解;而WOA算法作为一种全局优化算法,可以用于搜索BP神经网络模型初始的权值和阈值,能够更好地避免陷入局部最小值,从而获得全局最优解,提高了模型在船舶横摇运动方面的性能。
3)相比传统的BP神经网络,WOA-BP模型不仅在横摇角度预测上表现卓越,更在横摇角速度和角加速度的预测中展现了出色的性能,通过将WOA-BP模型预测的频率响应与AQWA计算结果进行对比,二者趋势和峰值具有较高的一致性,验证了其在捕捉船舶动态响应方面的准确性,进一步凸显了WOA-BP模型在船舶横摇运动谱分析中的高分辨率。研究结果将有助于船员和设计者更好地掌握船舶复杂海况下的运动特性,以提高船舶的稳定性和安全性。
[1] |
YIN J C, PERAKIS A N, WANG N. A real-time ship roll motion prediction using wavelet transform and variable RBF network[J]. Ocean Engineering, 2018, 160: 10-19. |
[2] |
于艳博. 船舶横摇运动建模与控制仿真研究[D]. 大连: 大连海事大学, 2015.
|
[3] |
朱杰, 刘在良, 林艳, 等. 随机海浪下船舶横摇运动响应极值预报研究[J]. 中国舰船研究, 2020, 20(2): 196−202. ZHU J, LIU Z L, LIN Y, et al. Extreme value prediction of ship roll motion response under random waves[J]. Chinese Journal of Ship Research, 2024, 19(3): 1−10. |
[4] |
WANG Y, WANG H, ZHOU B, et al. Multi-dimensional prediction method based on Bi-LSTMC for ship roll[J]. Ocean Engineering, 2021, 242: 110106. DOI:10.1016/j.oceaneng.2021.110106 |
[5] |
DING S, SU C, YU J. An optimizing BP neural network algorithm based on genetic algorithm[J]. Artificial Intelligence Review, 2011, 36: 153-162. DOI:10.3969/j.issn.1000-0984.2013.04.023 |
[6] |
李冲. 基于改进NARX神经网络的船舶横摇运动预测[D]. 大连: 大连海事大学, 2023.
|
[7] |
张琴, 林欣如, 向阳, 等. 基于最优变分模态分解与相空间重构的LSTM船舶横摇运动预测[J]. 船舶工程, 2023, 45(12): 68-74. ZHANG Q, LIN X R, XIANG Y, et al. Ship roll motion prediction using LSTM based on optimal variational mode decomposition and phase space reconstruction[J]. Journal of Ship Engineering, 2023, 45(12): 68-74. |
[8] |
MIRJALILI S, LEWIS A. The Whale Optimization Algorithm[J]. Advances in Engineering Software, 2016, 95: 51-67. |
[9] |
SOLEIMANIAN GHARECHOPOGH F, GHOLIZADEH H. A comprehensive survey: Whale Optimization Algorithm and its applications[J]. Swarm and Evolutionary Computation, 2019, 48: 1-24. |
[10] |
刘磊, 白克强, 但志宏, 等. 一种全局搜索策略的鲸鱼优化算法[J]. 小型微型计算机系统, 2020, 41(9): 1820-1825. LIU L, BAI K Q, DAN Z H, et al. A whale optimization algorithm with global search strategy[J]. Journal of Chinese Computer Systems, 2020, 41(9): 1820-1825. DOI:10.3969/j.issn.1000-1220.2020.09.005 |
[11] |
国际海事组织. MSC. 267(85). 2008国际完整稳性规则及修正案[S]. 北京: 人民交通出版社, 2016.
|
[12] |
柴威. 随机海浪下的船舶非线性横摇与倾覆研究[D]. 上海: 上海交通大学, 2013.
|
[13] |
胡丽芬, 张明, 巩庆涛, 等. 基于MPC的船舶横摇运动控制方法研究[J]. 水动力学研究与进展A辑, 2023, 38(4): 551-557. HU L F, ZHANG M, GONG Q T, et al. Model predictive control-based ship roll motion control method[J]. Journal of Hydrodynamics, Ser. A, 2023, 38(4): 551-557. |
[14] |
FRIZZELL J, FURTH M. Prediction of Vessel RAOs: Applications of Deep Learning to Assist in Design[C]// Proceedings of the 27th Offshore Symposium. Houston: SNAME, 2022.
|