APP下载

一种改进的郊狼优化算法∗

2024-01-23代永强

计算机与数字工程 2023年10期
关键词:适应能力全局平均值

黄 昭 代永强

(甘肃农业大学信息科学技术学院 兰州 730070)

1 引言

2018 年Pierezan 等[1]受到郊狼群体的启发,提出了郊狼优化算法(Coyote Optimization Algorithm,COA),该算法原理简单易实现,需设置的参数量极少,具有独特的更新方式,该方式为优化过程中探索与开发的平衡提供了一种新的机制,且算法可以在保持高收敛速度的同时又能保证较高的种群多样性,具有出色的优化能力。因此本文选取郊狼优化算法作为研究对象。近年来对COA 的研究主要在改进和应用两个方面。Hamdy.M 等[2]将COA 算法应用到质子交换膜燃料电池模型中提取参数,在不同工况下验证了算法的有效性。Jouda A 等[3]提出了一种基于仿真的Coyote 优化算法确定PI 控制器的增益。Nguyen T T等[4]提出了一种改进的Coyote 优化算法,并将其应用在辐射配电网中优化安装太阳能光伏发电单元,取得了很好的优化效果。张嘉恒等[5]构建了一种光伏智能边缘终端优化配置的数学模型,通过对COA 的改进,使得该算法更加适合此类工程问题。王利卿等[6]将COA 应用到机械压力机的模型中,提高了模具的使用寿命。陈丹妮等[7]提出一种基于确定性拥挤的多模态郊狼优化算法,并验证了算法的有效性。虽然COA 在这些改进和应用中都获得了较好的效果,但算法本身还是存在一些缺陷,本文针对COA 在处理复杂优化问题时易陷入局部最优、收敛速度慢等缺陷,提出一种混沌全局郊狼优化算法,该算法强化了郊狼种群的全局探索能力,提高了算法的收敛精度,并通过与其他算法对比结果分析,验证了该算法的优越性。

2 郊狼优化算法

2.1 郊狼优化算法原理

COA 主要仿照郊狼种群的诞生、成长、死亡和迁徙四种必须经历的生存之路,其中每一头郊狼代表一个解[8]。算法具体步骤如下:

郊狼的随机诞生以及随机分组:初始化郊狼的分组个数Np、组内郊狼个数Nc、维度D以及最大迭代次数DTmax,另外郊狼的总体数量N=Np+Nc,每头狼的社会状态由其社会因子组成,如下式(1)所示。并由式(2)评价出每头郊狼的适应能力。

其中lbj和ubj分别表示第j维的社会因子的下界和上界j=1,2,…,D;rand表示[0,1]之间的随机数;socc,j代表第c头郊狼在第j维的社会因子;Fobj用来计算适应能力。

郊狼的成长:郊狼的成长主要受到组内头狼、组内文化趋势和随机选择两头郊狼这四个因素的影响,郊狼组内的文化趋势如(3)所示:

median()函数取Gp的中位数,Gp为同组中郊狼的社会因子,其中G是NC行D列的一个矩阵,另外从每组中随机选取两头狼soccr1和soccr2与头狼alpha 以及文化趋势cult 共同来影响郊狼的成长,如下所示:

每头郊狼都受到δ1和δ2的影响成长,rand1和rand2是[0,1]之间产生的随机数,alpha 为该组适应能力最强的狼,new_socc代表新生郊狼的适应能力。将每一头郊狼成长后的适应能力与之前进行对比,如果适应能力优于之前则替换之前的郊狼,反之则舍弃。如下所示:

郊狼的生死:新生郊狼的适应能力受到两头随机父辈郊狼社会状态因子的影响,新生郊狼产生方式如下所示:

式中,pupj代表新出生的郊狼,cr1和cr2是来自同一组随机且不同父辈郊狼的标号;j1和j2是两个随机选择的维度标号;Rj是决策变量在第j维取值范围内的随机数;randj是[0,1]之间的随机数;Ps和Pa分别代表郊狼的分散概率和结合概率,并且两者对幼狼的诞生有很大影响。

幼狼诞生后,要对其社会适应能力进行评价,然后与组内所有成年郊狼进行比较,当组内只有一头成年郊狼比幼狼差的时候,那么幼狼存活;当组内有多头郊狼比幼狼差,则幼狼取代这些郊狼中年龄最大的郊狼;当组内所有的成年狼的社会适应能力都高于幼狼,则幼狼死亡[9]。

郊狼被驱离和接纳:Pe是驱离和接纳的概率,最初所有郊狼被随机分配到各自组内,存在一定概率组内的某头郊狼会转移到另外组中,相互转移在一定情况下保证了种群的多样性,如(11)所示:

根据COA原理,COA伪代码如下所示。

2.2 混沌全局郊狼优化算法

COA 郊狼成长主要受到组内头狼和组内的文化趋势的影响,当组内头狼为局部最优,会导致狼群后期多样性不足,陷入局部最优,很难再从其它位置寻找到全局最优,并且降低算法的收敛速度。为解决这类问题,本文将混沌优化策略[10]和全局头狼引导策略引入COA 中,提出了一种混沌全局郊狼优化算法(Chaotic Global Coyote Optimization Algorithm,CGCOA)。

2.2.1 混沌特性

由确定性方程得到的具有随机特性的运动状态称为混沌[11]。它是现代非线性动力学中一个重要概念,是一种不规则运动,类似于确定性系统中的随机运动,它的行为看似随机,但其中存在一些规律。Logistic方程是经典的混沌系统[12]:

其中,υ∊[0,4]为Logistic 的控制参数,z0∊[0,1],当υ=4,系统将会进入混沌状态,z的取值范围会平均分布在0到1的区域内。

2.2.2 混沌优化策略

针对COA 全局探索能力不足的问题,在此将混沌优化策略引入郊狼优化算法中,提出混沌郊狼优化算法(Chaos Coyote Optimization Algorithm,CHCOA),利用混沌的遍历性在狼群最优个体Gbest的基础上生成混沌序列,降低算法陷入局部最优的概率。具体如下:

1)将Gbest通过方程(13)输入到Logistic方程的定义域上

Xmax和Xmin分别是种群的上下界。

2)再将Z1通过logistic 方程(12)进行dim 次迭代,得到一个混沌序列Z=(Z1,Z2,…,Zdim)。

3)将混沌序列通过下面方程返回解空间中:

4)最后计算Xi的适应值i(1,2,…,dim)用X中最优适应值代替狼群中适应值最差个体。

通过对Gbest进行混沌优化,算法每次迭代时会在最优解附近进行混沌搜索,利用混沌系统遍历性和序列的均匀性两个特点,提高最优解周边搜索的准确性和高效性,再将最优混沌个体取代种群中最差个体,降低算法陷入局部最优的概率,并且会使得上一组的最优解在下一组郊狼成长中起作用,形成了一种社会因子分享的正反馈作用,加强种群之间的交流,保证种群多样性,增强了算法的全局探索能力,有效提高算法的收敛速度和收敛精度。

2.2.3 全局头狼引导策略

算法在运行过程中,当头狼为局部最优时,可能会导致种群无法找到全局最优解而陷入局部最优,所以在此加入全局头狼共同引导狼群成长。具体如下:

其中:Gbest是全局头狼,alpha 为组内头狼,Nbest是全局和局部共同带领成长的郊狼。通过Gbest与alpha 相减,使得Nbest的取值受到Gbest和alpha 的影响,既能使得成长后的郊狼能更接近最优解,又能较好的保证原算法的局部搜索能力,降低COA 陷入局部最优的概率,提高算法的收敛速度。根据CGCOA原理,CGCOA算法伪代码如下所示:

3 仿真实验

采用9 个标准测试函数对CGCOA 的性能进行测试,函数具体信息如表1 所示。其中F1-F4 为多峰函数,F5-F9 为单峰函数。多峰函数主要测试算法的全局寻优能力,单峰函数测试算法的搜索精度。

表1 测试函数

为了验证本文两个改进策略的有效性,将COA、CGCOA 和CHCOA 进行对比;为验证CGCOA整体的有效性,将CGCOA 与其它文献改进的郊狼优化算法(Coyote optimization algorithm with global guidance and coyote interaction,GCCOA)[13]、增强型鲸鱼优化算法(Enhanced whale optimization algorithm,EWOA)[14]和改进的正余弦优化算法(Cloud model sine cosine algorithm,CSCA)[15]进行比较。COA、CGCOA、GCCOA、CHCOA、EWOA 和CSCA 种群个体数量均为100,迭代100 次,独立运行30 次,除EWOA 和CSCA 以外的其它算法均将种群分为20组,每组5个个体。通过平均值(mean)和标准差(standard deviation,std)两个指标评价算法性能,最优结果用黑体表示。

表2~5 是算法在10 维和30 维的测试结果,10维和30 维能更好验证算法的优化性能,求解维度增加,算法的求解难度也随之提高。其中平均值和均值表示算法的整体性能,在F1-F4 多峰函数中,平均值表示算法的全局寻优能力,F5-F9 单峰函数平均值代表算法的收敛能力,均值体现算法的稳定性。在表2 和表3 中无论是在F1-F4 还是F5-F9中,CHCOA 的平均值远比COA 低,说明混沌优化策略不仅提高了算法的全局搜索能力,也增强了算法的收敛精度。另外标准差相比于COA 也大幅度降低了,表明CHCOA 的稳定性也得到了加强。而CGCOA 在单峰和多峰函数中的平均值和标准差又低于CHCOA,说明CGCOA 进一步提升了算法的优化性能。

表2 3种算法在10维函数上的实验结果对比

表3 3种算法在30维函数上的实验结果对比

表4和表5是CGCOA与CSCA、GCCOA、EWOA的比较,CGCOA 和GCCOA 是同种算法的不同改进对比,无论在多峰函数还是单峰函数中,CGCOA 的值都要低于GCCOA,说明CGCOA 的改进策略更加优于GCCOA 的改进策略。CGCOA 和CSCA、EWOA是不同算法的改进比较,虽然EWOA相比于CSCA 的平均值和标准差更加接近于CGCOA,但整体仍然低于CGCOA,进一步说明了CGCOA 具有更强的收敛精度和更好的全局寻优能力。表5 中的数值整体略低于表4,求解维度增加,使其算法的求解难度也随之增加,因此其收敛精度有所下降属于正常现象。尽管求解难度增加,但CGCOA 在30维的平均值和标准差仍然是对比算法中最低的,进一步说明了CGCOA具有更好的优化性能。

表4 4种算法在10维函数上的实验结果对比

表5 4种算法在30维函数上的实验结果对比

4 结语

针对COA 全局探索能力不足、收敛速度慢等缺点,本文提出混沌全局郊狼优化算法将其改进,具体为:COA 通过引入混沌优化策略,有效提高了算法的全局探索能力和鲁棒性,在此基础上引入全局头狼策略,进一步提高了全局探索能力,同时算法的收敛精度和收敛速度也得到了提升。最后在函数优化实验中验证该算法的有效性。

猜你喜欢

适应能力全局平均值
Cahn-Hilliard-Brinkman系统的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
平均值的一组新不等式
大学生社会适应能力培养的有效途径探索
落子山东,意在全局
新思路:牵一发动全局
平面图形中构造调和平均值几例
基于电流平均值的改进无功检测法
初中生拖延行为与社会适应能力的相关研究
高职生社会适应能力调查