智能优化算法:郊狼优化算法-附代码

智能优化算法:郊狼优化算法-附代码


摘要:郊狼优化算法[1](Coyote Optimization Algorithm ,COA)是2018年Juliano所提出的一种智能仿生优化算法, 与其他元启发式算法相比,COA具有独特的算法结构,该结构为优化过程中探索与开发的平衡提供了新的机制,COA可以在提高收敛效率的同时保持较高的种群多样性;因此,其在众多元启发式算法中表现出了较为优异的性能.

1.算法原理与流程

COA模拟郊狼种群的出生、成长、死亡及迁移等生活现象,具体流程如下:

s t e p 1 step 1 step1:设 置 郊 狼 群 体 N p Np Np, 每群含郊狼个体数 N c Nc Nc,维度 D D D,及终止条件 n f e v a l M A X nfevalMAX nfevalMAX等参数。

s t e p 2 step 2 step2:随 机 初 始 化 郊 狼 群, 第t时 刻 下 p p p群 内第 i i i个郊狼个体被定义为:
x c , j p , t = l b j + r j ( u b j − l b j ) (1) x_{c,j}^{p,t}=lb_{j}+r_{j}(ub_{j}-lb_{j})\tag{1} xc,jp,t=lbj+rj(ubjlbj)(1)

x c p , t = ( x c , 1 p , t , x c , 2 p , t , . . . , x c , D p , t ) (2) x_{c}^{p,t}=(x_{c,1}^{p,t},x_{c,2}^{p,t},...,x_{c,D}^{p,t})\tag{2} xcp,t=(xc,1p,t,xc,2p,t,...,xc,Dp,t)(2)

其中, u b j ub_{j} ubj l b j lb_{j} lbj分别表示第j维数值的上、 下界, r j r_{j} rj为随机生成的[0,1]范围内的实数。

s t e p 3 step 3 step3:评价郊狼适应能力
f i t i p , t = f ( x i p , t ) (3) fit_{i}^{p,t}=f(x_{i}^{p,t})\tag{3} fitip,t=f(xip,t)(3)
s t e p 4 step 4 step4:郊 狼 有 时 会 脱 离 或 者 被 驱 逐 出 原 群 体,形成群体变迁,其发生概率定义为 P e P_{e} Pe
P e = 0.005 N c 2 , N c ≤ 14 (4) P_{e}=0.005N_{c}^{2},N_{c}\leq14\tag{4} Pe=0.005Nc2,Nc14(4)
s t e p 5 step 5 step5:找到当前群内的头狼 a l p h a p , t alpha^{p,t} alphap,t,计算当前郊狼群体的文化趋势 c l u t p , t clut^{p,t} clutp,t:
a l p h a p , t = { x i p , t ∣ ∣ a r g { i = 1 , 2 , . . . , N } m i n f ( x i p , t ) } (5) alpha^{p,t}=\{ x_{i}^{p,t}|| arg\{i=1,2,...,N\}minf(x_{i}^{p,t}) \}\tag{5} alphap,t={xip,targ{i=1,2,...,N}minf(xip,t)}(5)

c l u t j p , t = { O ( N c + 1 ) / 2 , j p , t , N c 是 奇 数 O ( N c + 1 ) / 2 , j p , t + O ( N c ) / 2 , j p , t , N c 是 偶 数 (6) clut_{j}^{p,t}=\begin{cases}O_{(Nc+1)/2,j}^{p,t} ,N_{c}是奇数\\ O_{(Nc+1)/2,j}^{p,t} + O_{(Nc)/2,j}^{p,t},N_{c}是偶数\end{cases}\tag{6} clutjp,t={O(Nc+1)/2,jp,t,NcO(Nc+1)/2,jp,t+O(Nc)/2,jp,t,Nc(6)

其中, O ( N c + 1 ) / 2 , j p , t O_{(Nc+1)/2,j}^{p,t} O(Nc+1)/2,jp,t表示当 N c N_{c} Nc为奇数时,第 t t t时刻 p p p群内的所有郊狼的第 j j j维度变量的中位数。

s t e p 6 step 6 step6:模 拟 遗 传 中 的 出 生 和 死 亡事件: 将郊狼的年龄 (以年为单位) 记为 a g e c p , t age_{c}^{p,t} agecp,t.新郊狼的出生 ( p u p p , t ) (pup^{p,t}) (pupp,t)被写成双亲(随机选择)的社会状态加上环境影响的组合:
p u p j p , t = { x m 1 , j p , t , r a n d j < P s o r j = j 1 x m 1 , j p , t , r a n d j ≥ P s + P a o r j = j 2 R j , r a n d j , 其 他 (7) pup_{j}^{p,t}=\begin{cases} x_{m_{1},j}^{p,t},rand_{j}<Ps\quad or\quad j=j_{1}\\ x_{m_{1},j}^{p,t},rand_{j}\geq Ps+Pa \quad or\quad j=j_{2}\\ R_{j},rand_{j},其他\end{cases}\tag{7} pupjp,t=xm1,jp,t,randj<Psorj=j1xm1,jp,t,randjPs+Paorj=j2Rj,randj,(7)
其 中, m 1 m_{1} m1 m 2 m_{2} m2是来自 p p p狼 群 内 的 随 机 郊 狼, j 1 j_{1} j1 j 2 j_{2} j2是问题的两个随机维数, R j R_{j} Rj r a n d j rand_{j} randj均为由均匀概率产生的[0,1]内的随机数. 离散概率 ( P s ) (Ps) (Ps),和关联概率 ( P a ) (Pa) (Pa)影响郊狼群中个体的文化多样性. P s Ps Ps P a Pa Pa被定义为:
P s = 1 D , P a = 1 − P s 2 (8) Ps=\frac{1}{D},Pa=\frac{1-Ps}{2}\tag{8} Ps=D1,Pa=21Ps(8)
s t e p 7 step 7 step7:计算头狼与群体文化趋势对当前时刻所对应的郊狼群内个体更新产生的影响 δ 1 \delta _{1} δ1 δ 2 \delta _{2} δ2:
δ 1 = a l p h a p , t − x c r 1 p , t , δ 2 = c u l t p , t − x c r 2 p , t (9) \delta_{1}=alpha^{p,t}-x_{cr_{1}}^{p,t},\delta_{2}=cult^{p,t}-x_{cr_{2}}^{p,t}\tag{9} δ1=alphap,txcr1p,t,δ2=cultp,txcr2p,t(9)
其中, c r 1 cr_{1} cr1 c r 2 cr_{2} cr2分别代表当前群内的随机郊狼.

s t e p 8 step 8 step8:对郊狼群内所有郊狼个体依次进行更新得到新的郊狼个体 n e w _ x i p , t new\_x_i^{p,t} new_xip,t,择优选择新郊狼与原郊狼的适应度大小,并保留最优郊狼 x i p , t + 1 x_i^{p,t+1} xip,t+1:
n e w _ x i p , t = x i p , t + r 1 δ 1 + r 2 δ 2 (10) new\_x_i^{p,t}=x_i^{p,t}+r_1\delta_1+r_2\delta2\tag{10} new_xip,t=xip,t+r1δ1+r2δ2(10)

x i p , t + 1 = { n e w _ x i p , t , f ( n e w _ x i p , t ) < f ( x i p , t ) x i p , t , 其 他 (11) x_i^{p,t+1}=\begin{cases}new\_x_i^{p,t},f(new\_x_i^{p,t})<f(x_i^{p,t})\\ x_i^{p,t},其他\end{cases}\tag{11} xip,t+1={new_xip,t,f(new_xip,t)<f(xip,t)xip,t,(11)

其中, r 1 r_{1} r1 r 2 r_{2} r2为均匀概率生成的[0,1]范围内的实数,代表郊狼个体受 a l p h a alpha alpha狼与群体文化趋势影响的权重大小.

s t e p 9 step 9 step9:模 拟 个 体 随 时 间 的 推 移 而 成 长 的 过 程,对郊狼个体进行年龄更新.

s t e p 10 step 10 step10:判断终止条件,若达到,则输出适应能力最好的郊狼的社会状态;否则返回 S t e p 3 Step3 Step3继续.

2.算法结果

在这里插入图片描述

3.参考文献

[1] Pierezan, J. and Coelho, L. S. “Coyote Optimization Algorithm: A new metaheuristic for global optimization problems”, Proceedings of the IEEE Congress on Evolutionary Computation (CEC), Rio de Janeiro, Brazil, July 2018, pages 2633-2640.

[2]刘威,付杰,周定宁,王薪予,成秘,黄敏,靳宝,牛英杰.基于反时限混沌郊狼优化算法的BP神经网络参数优化[J/OL].控制与决策:1-10[2020-08-05].https://doi.org/10.13195/j.kzyjc.2020.0408.

[3]张新明,姜云,刘尚旺,刘国奇,窦智,刘艳.灰狼与郊狼混合优化算法及其聚类优化[J/OL].自动化学报:1-17[2020-08-05].https://doi.org/10.16383/j.aas.c190617.

4.MATLAB代码

郊狼优化算法
算法相关应用

名称说明或者参考文献
基于郊狼算法优化的SVM回归预测https://blog.csdn.net/u011835903/article/details/110630270(原理一样,只是优化算法是郊狼算法)
  • 3
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智能算法研学社(Jack旭)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值