APP下载

改进天牛群搜索算法及其在船舶纵摇运动预测中的应用

2021-06-12徐东星

广东海洋大学学报 2021年3期
关键词:搜索算法天牛牛群

徐东星

(广东海洋大学海运学院,广东 湛江 524088)

船舶在海上航行时,通常会产生六自由度的摇荡运动(横摇、纵摇、艏摇、横荡、纵荡及垂荡)[1],其中,船舶产生剧烈纵摇时可能会使船舶发生拍底(易导致船首结构受损)、甲板上浪(易降低船舶稳性)、尾淹(易导致船舶航向不稳定,甚至打横的风险)及螺旋桨空转(易导致船舶产生较大的振动,螺旋桨推进效率降低)等;而剧烈的横摇则会导致船上货物移动稳性丧失,增加船舶倾覆的风险和船上工作人员的不适感等。因此,船舶运动姿态预测对船舶在海上安全航行有重要意义,精确的预测可提高船舶在海上的适航性及耐波性。船舶在海浪作用下运动规律极其复杂,船舶运动姿态时间序列表现为具有较强的非线性、随机性和非平稳性等特点[2]。针对上述船舶运动的特点,目前许多学者采用自回归模型、神经网络模型、支持向量机、极限学习机等建立了船舶运动姿态预测模型[3-9],但参数设置会对神经网络的预测精度产生较大的影响。张泽国等[10]利用变异粒子群算法优化BP 神经网络参数的方法对海上船舶横摇运动姿态进行预测,预测精度较为理想。除了船舶纵摇运动以外,海上航行的船舶可使用舵鳍联合控制器使其它自由度运动趋于稳定。因此,开展对船舶纵摇运动规律的研究显得尤为重要,掌握其运动规律可以为船舶海上安全航行提供支持。沈继红等[11]、赵爽等[12]利用灰色模型GM(1,1)、拓扑预测GM(1,1)模型对船舶纵摇运动姿态进行预测,但由于GM(1,1)模型仅有一个指数分量,不能清晰反映出船舶摇摆的趋势。马洁等[13]利用多层递阶预报方法将船舶纵摇运动当作非线性时变参数的动态系统,预测结果较好。柳成等[14]构建灰色模型与粒子群算法优化支持向量机核参数相结合的船舶纵摇运动预测模型,但粒子群搜索算法存在收敛速度慢,收敛精度低等缺陷。

为避免传统数值优化方法(如最速下降法、牛顿法、拟牛顿法、单纯形法)解决复杂优化问题的固有缺陷,人们借鉴大自然生物的群体搜索现象,开发了仿生智能计算算法来解决最优化问题。随着人工智能科学的迅速发展,研究表明没有一种优化算法适用于所有的优化问题[15],因此,不同的群智能优化算法应运而生,如粒子群优化算法(Partical swarm optimization,PSO)、遗传算法(Genetic algorithm,GA)、灰狼优化算法(Grey wolf optimization,GWO)、飞蛾扑火优化算法(Moth-flame optimization algorithm,MFO)及海鸥优化算法(Seagull optimization algorithm,SOA)等[16-20]。Jiang 等[21]受到天牛觅食原理的启发,提出一种新型的启发式优化算法,即天牛须搜索算法(Beetle antennae search,BAS)。该算法易于实现、运算量小、仅需单个天牛个体来完成算法的寻优。天牛须算法现已广泛应用于实际问题优化当中,如模式分类、PID 参数整定、机器人路径规划、风暴潮灾害损失预测、图像处理等领域[22-26]。但该算法同样存在着易陷入局部最优、收敛速度慢、收敛精度低等缺陷。因此,许多学者提出改进的天牛须算法,如融入模拟退火过程以及自适应因子的天牛须搜索算法、适用于多目标优化的无参数调节的天牛须算法、具有随机时滞与精英反向学习的天牛须搜索算法、量子天牛群算法等[27-30]。另外,Zhang等[31]基于人工蜂群算法(ABS)和天牛须搜索算法(BAS)的结构,提出一种有效的多任务天牛群算法(MBAS),并将其应用于极限学习机的输入权值和偏差的优化。韩瑞达[32]将天牛须搜索算法和变异策略融入花朵授粉算法中,加快了 FPA(Flower pollination algorithm,FPA)的收敛速度和精度。郑源等[33]基于相似度的混沌迁移策略和社会学习策略,提出混沌迁移的社会学习天牛群算法。陈婷婷等[34]在粒子群算法框架下,将每个粒子的更新规则按照天牛须搜索策略进行演化,提出用于降低投资风险的天牛群优化算法。Wang 等[35]提出一种新的天牛群优化算法(Beetle swarm optimization,BSO)。该算法将天牛的觅食机理与群优化算法相结合,具有良好的鲁棒性和运行速度,但该算法同样存在早熟收敛、对参数设置较敏感等问题。基于此,本研究提出一种改进的天牛群搜索算法(Improved beetle swarm optimization,IBSO),即基于二阶振荡自适应变异的天牛群搜索算法,以期更加有效地解决船舶纵摇问题,提高船舶纵摇运动姿态预测精度,更好地应用于实际工程中。

1 天牛群搜索算法

天牛的初始位置对天牛须搜索算法的寻优结果有较大的影响。借鉴群智能优化算法的思想将天牛个体扩展为天牛群体,每个天牛代表一个优化问题的潜在解,天牛之间共享信息,但天牛之间的距离和方向取决于它们的速度和天牛须探测到的信息强度[35]。假设天牛群中天牛个体为N,则X=(X1,X2,...,XN)为天牛群在s维空间的位置,其中Xi=(x1,x2,...,xs)T,(i=1,2,3,...,N)为第i只天牛在s维空间的位置,也代表问题的一个潜在解。同样第i只天牛在s维空间的速度矢量可表示为Vi=(v1,v2,...,vs)T。根据适应度函数,每只天牛个体的适应度值可根据其所处位置信息进行计算,记Pi=(P1,P2,...,Ps)为第i只天牛个体极值,Pg=(Pg1,Pg2,...,Pgs)为群体极值。第i只天牛的位置更新公式为

式(1)中,k为当前迭代次数;为第i只天牛个体位置移动增量函数;λ为正常数。为k+1 次迭代时第i只天牛的位置;为第k次迭代时第i只天牛的速度。

第i只天牛的速度更新公式为

式(2)中,c1,c2为学习因子;r1,2r为区间[0,1]上随机数;ω为惯性权重。

为了增加算法的收敛精度,采用线性递减惯性权重:

式(3)中,K为最大迭代次数;k为当前迭代次数;ωmax=0.9 为最大惯性权重;ωmin=0.4 为最小惯性权重。

第i只天牛个体位置移动增量函数ξ可表示为

式(4)中,δ为步长;Xr,Xl为天牛群中天牛个体左右须的位置,且满足以下条件:

式(5)中,d为天牛两须之间的距离。

2 改进天牛群搜索算法

针对天牛群搜索算法存在的早熟收敛、对参数设置较敏感等现象,本研究提出一种改进的天牛群搜索算法,该算法融合了二阶振荡环节、正余弦搜索策略及自适应t分布变异策略,有效地避免了天牛群搜索算法的早熟收敛现象,提高了算法的寻优能力。

2.1 二阶振荡环节及收敛性分析

天牛群中天牛个体的移动速度不仅与当前个体最佳位置、全局最优位置及当前个体位置有关,而且与天牛个体位置变化有关。为使得算法前期具有较好的全局搜索能力,算法后期具有较强的局部开发能力,在速度更新方程(2)中增加二阶振荡环节[36]。

为简化分析,令

如仅考虑:

则可得

化简得

如果取步长为1,则式(7)可变为欧拉差分方程:

对式(8)进行拉氏变换:

因 此,当q1>0 且时,λ∈,算法渐进收敛;当q1>0 且时,,算法振荡收敛。

在迭代前期为使算法全局搜索能力增强,在迭代后期算法局部搜索能力增强,则在迭代前期取,提高算法的全局搜索能力;在迭代后期取提高算法的局部开发能力。

2.2 正余弦搜索策略

在天牛群搜索算法中,为使得天牛个体充分利用自身与最优位置的差值信息逐渐趋近最优解,引入正余弦搜索策略。在天牛个体位置更新后,再进行正余弦搜索,可有效避免算法陷入早熟收敛,提高算法的寻优精度以获得最优解。正余弦搜索策略表示如下[37-38]:

2.3 自适应t 分布变异策略

柯西变异能够有效地保持种群的多样性,可使算法获得较强的全局探索能力;而高斯变异可使算法具有较强的局部开发能力,可避免算法陷入局部最优[39-40]。在概率论与统计学中,t分布又称学生分布,分布呈现为一簇曲线,其曲线形态与自由度参数n有关,当n趋于无穷大时,其近似高斯分布,一般n>30 时两者偏差可忽略;当n=1 时,其近似柯西分布,即高斯分布和柯西分布是t分布的两个边界特例。因此,本研究将进化代数k作为t分布的自由度参数,将高斯分布和柯西分布融合起来,构成自适应t分布变异。在算法运行前期,迭代次数较小,t分布变异近似柯西分布,可使得算法具有较强的全局搜索能力;在算法后期,t分布变异近似高斯分布,可使得算法具有较强的局部开发能力,因此t分布变异融合了高斯分布和柯西分布的优点来提高算法的寻优能力和收敛速度。

对天牛个体进行自适应t分布变异可定义为:

2.4 改进天牛群搜索算法的时间复杂度分析

算法的时间复杂度通常表示为T(N)=O(f(N)),即算法执行的时间与每行语句执行次数N成正比,当执行次数趋近无穷大时,低阶项、常量与首项系数可忽略不计,因此也称为渐进时间复杂度。计算时间复杂度可采用加法原则和乘法原则等,公式如下:

根据时间复杂度的加法原则和乘法原则,天牛群算法的主循环可简化为双重循坏结构,可知天牛群搜索算法的时间复杂度为O(N2)。在改进的天牛群算法中,由于无嵌套新的循环,其和天牛群搜索算法的复杂度均为O(N2),因此引入振荡环节、搜索策略和变异策略对算法运行时间的影响可忽略不计。

3 改进天牛群搜索算法实现流程

本研究提出的改进天牛群搜索算法,引入了二阶振荡环节,以增加算法的全局探索能力和局部开发能力。采用正余弦搜索思想对天牛个体进行位置更新,使得天牛个体充分利用自身与最优位置的差值信息逐渐趋近最优解。同时引入自适应t分布变异算子来增加种群的多样性,避免算法陷入局部最优,提高了算法的寻优精度及收敛速度,实现流程如下。

4 实验仿真分析与应用

4.1 改进天牛群搜索算法在基准测试函数中的性能分析

为了验证本研究算法(IBSO)的有效性和优越性,选取4 个基准测试函数[41](表1),其中F1~F2为高维单峰函数,F3~F4为高维多峰函数。在Matlab 2018 b 环境下进行仿真实验,并将仿真结果与天牛群搜索算法(BSO)、线性递减权重的粒子群优化算法(LPSO)、鲸鱼优化算法(WOA)、海鸥优化算法(SOA)、飞蛾扑火优化算法(MFO)、二阶振荡粒子群优化算法(SPSO)、自适应t分布变异的天牛群搜索算法(TBSO)进行横向和纵向对比。实验中各个算法种群规模设为30,最大迭代次数为100,其他参数设置为默认值。为证明改进算法的收敛精度、收敛速度及稳定性,避免寻优结果的偶然性,选各基准函数独立运行30 次作为实验结果,并将算法的最优值、平均值及方差作为评价指标(表2)。

表1 基准测试函数Table 1 Benchmark Function

表2 表明,改进天牛群搜索算法(IBSO)最优解、平均值及方差均明显优于BSO、LPSO、WOA、SOA、MFO 及SPSO 等优化算法。t分布变异策略的天牛群搜索算法(TBSO)最优解、平均值及方差也均优于BSO、LPSO、WOA、SOA、MFO 及SPSO 等优化算法,说明t分布变异策略可提高算法的寻优能力。除测试函数F2及F4外,IBSO 算法最优解、平均值及方差均优于TBSO 算法。对于函数F2,IBSO 算法可收敛到全局最优解,而TBSO 算法却陷入局部最优解。对于函数F4,IBSO 与TBSO算法均能收敛到全局最优解。但不同算法收敛曲线(图1)对比可见,IBSO 算法在收敛速度上均有较大提升,明显优于其他7 种寻优算法。

表2 基准测试函数寻优结果Table 2 Benchmark function optimization results

图1 不同优化算法在基准测试函数上的适应度值收敛曲线对比Fig.1 Comparison of the fitness value convergence curve of different optimization algorithms on the benchmark function

仿真结果表明,不同基准测试函数,IBSO 算法均表现出较优的寻优能力。另外,通过纵向对比可见,混合策略的天牛群搜索算法较单一t分布变异策略的天牛群搜索算法在收敛精度、收敛速度及稳定性上均有较大提升,进一步说明IBSO 算法的有效性和优越性。

4.2 改进天牛群搜索算法优化BP 神经网络的船舶纵摇运动预测

本研究选取BP 神经网络进行船舶纵摇运动姿态预测,提高海上舰船作业的安全性,引导舰载机安全起降,减少海上事故的发生,并采用改进天牛群搜索算法对神经网络的初始权值和阈值进行优化,神经网络结构设置为6 个输入节点、10 个隐节点及1 个输出节点,其中输入节点及输出节点采用Purline 函数,隐节点的激活函数采用Sigmoid 函数,迭代次数设置为100,种群设置为30,独立运行10次,选取最优的权值和阈值。本研究选取文献[42]中“育鲲”轮海上试验数据验证算法的有效性,共选取1200 组船舶纵摇姿态数据,分训练集1000 组、测试集200 组,采样间隔为1 s,进行前向一步预测,算法流程图见图2。

图2 基于BSO 优化BP 网络的船舶纵摇运动姿态流程Fig.2 Flow diagram of ship pitch motion attitude based on BSO optimized BP network

由于采集的实船数据含有大量的噪声,因此采用小波包降噪算法对实船数据进行预处理(图3)。采用能够衡量预测值与实际值之间偏差的均方根误差(Root mean square error,RMSE)对模型预测精度进行评价,如式(15)所示:

式(15)中,iy为i时刻真实值;为i时刻预测值;n为预测数据点数。

图3 船舶纵摇运动姿态曲线Fig.3 Attitude curve of ship pitch motion

本研究对BSO、PSO 及IBSO 优化BP 神经网络的预测效果进行比较。各算法的预测结果曲线如图4—图7 所示,从测试样本的预测曲线中可以看出:IBSO-BP 神经网络的预测曲线与原始数据曲线基本吻合,而其它模型的预测曲线与原始曲线在一定程度上存在着明显的偏离。

图4 基于BP 神经网络的船舶纵摇运动姿态预测Fig.4 Prediction of ship pitch motion attitude based on BP neural network

图5 基于BSO-BP 网络的船舶纵摇运动姿态预测Fig.5 Prediction of ship pitch motion attitude based on BSO-BP neural network

图6 基于PSO-BP 网络的船舶纵摇运动姿态预测Fig.6 Prediction of ship pitch motion attitude based on PSO-BP neural network

图7 基于IBSO-BP 网络的船舶纵摇运动姿态预测Fig.7 Prediction of ship pitch motion attitude based on IBSO-BP neural network

从表3 可知,BP 网络、BSO-BP 网络、PSO-BP网络与IBSO-BP 网络对测试样本的均方根误差分别为0.182 65、0.102 50、0.114 11 及0.026 02,说明IBSO-BP 网络模型预测值与实际值之间的偏差较小,预测精度较高。因此,BP 神经网络经过BSO、PSO 及IBSO 优化后,其泛化能力均得到提升,且IBSO-BP 网络对船舶纵摇运动姿态的动态跟踪能力均优于传统BP 网络、BSO-BP 网络及PSO-BP网络,预测精度分别提升85.7%、74.6%和77.2%,表明改进天牛群搜索算法可在一定程度上提高BP神经网络对船舶纵摇运动姿态的预测精度。

表3 船舶纵摇运动姿态预测方法对比Table 3 Comparison of ship pitch motion attitude prediction methods

5 结论

本研究提出一种基于二阶振荡自适应变异的天牛群搜索算法并进行了收敛性分析,通过对基准测试函数和神经网络权值及阈值优化进行船舶纵摇运动预测的实验分析,可得以下结论:

1)通过引入二阶振荡环节、正余弦搜索策略及自适应t分布变异算子,可使改进天牛群搜索算法的全局探索、局部开发及寻优能力增强,并且在迭代后期种群的多样性增加,避免了算法陷入局部最优。

2)经过改进天牛群搜索算法优化的BP 神经网络提高了对船舶纵摇运动姿态的动态跟踪能力,船舶纵摇运动姿态的预测精度得到了提升。与其他智能优化算法进行对比,改进天牛群搜索算法具有较优的全局搜索能力、收敛速度及鲁棒性并且在实际工程应用中具有一定的优越性。

3)在未来的工程实践当中,鉴于改进天牛群搜索算法具有较好的寻优性能,可将其用于船舶避碰决策、船舶PID 控制参数优化、船舶结构优化设计、船舶运动数学模型参数辨识等领域,进一步扩大算法的应用范围。

猜你喜欢

搜索算法天牛牛群
改进和声搜索算法的船舶航行路线设计
四法防治果园天牛
改进的非结构化对等网络动态搜索算法
改进的和声搜索算法求解凸二次规划及线性规划
与牛共眠
牛群成和牛的故事
巨型昆虫——天牛
基于莱维飞行的乌鸦搜索算法
天牛
牛牛阿卡