新型的仿生学算法—鸡群优化算法,它模拟群的等级制度和鸡群的群体活动行为。 在特殊的等级制度下鸡群中不同鸡种搜寻食物时存在着竞争。公鸡搜索食物能力强,适应值小;母鸡其次;小鸡搜索食物能力最弱,适应值最大。
为了简化,文中通过下列规则理想化鸡群算法:
因为不同的鸡种有不同的运动规律, 因此,以下 3 种个体的位置更新策略各不相同。
适应度好的公鸡能够在更大的范围内搜索食物,而且比适应度差的公鸡能够优先获得食物实现全局搜索,它的位置更新受随机选取的其他公鸡位置的影响,则更新策略见式(1)-(2)
x i , j t + 1 = x i , j t [ 1 + R a n d n ( 0 , δ 2 ) ] (1) x_{i,j}^{t+1} = x_{i,j}^{t}[1 + Randn(0,\delta ^2)]\tag{1} xi,jt+1=xi,jt[1+Randn(0,δ2)](1)
δ 2 = { 1 , f i ≤ f s e f s − f i ∣ f i ∣ + ε , f i > f s s ∈ [ 1 , R N ] , s ≠ i (2) \delta ^2 = \begin{cases} 1 , \,f_i\leq f_s\\ e^{\frac {f_s-f_i}{|f_i|+\varepsilon}, \, f_i>f_s}\\ s\in [1,RN], \, s\neq i \end{cases}\tag{2} δ2=⎩⎪⎨⎪⎧1,fi≤fse∣fi∣+εfs−fi,fi>fss∈[1,RN],s=i(2)
式 (1)-(2) 中:第 i i i 只公鸡位置的第 j 维的值表示为, s s s 表示当前的迭代次数,表示服从期望值为0 ,方差值为 2 的正态分布随机数, 第 i i i 只公鸡的适应度为 f i f_i fi ,随机选取公鸡 s s s 的适应度为 f s f_s fs , 分母中加上无穷小数 ε \varepsilon ε ,避免除数为零。
母鸡跟随伙伴公鸡搜索食物,位置更新受伙伴公鸡位置影响。由于母鸡的偷食行为,位置更新又与其它公鸡和母鸡有关系,则更新策略见式 (3)-(5) 。
x i , j t + 1 = x i , j t + k 1 ∗ R a n d ∗ ( x r 1 t − x i , j t ) + k 2 ∗ R a n d ∗ ( x r 2 , j t − x i , j t ) (3) x_{i,j}^{t+1} = x_{i,j}^t + k_1*Rand*(x_{r_1}^t - x_{i,j}^t) + k_2*Rand*(x_{r_2,j}^t-x_{i,j}^t) \tag{3} xi,jt+1=xi,jt+k1∗Rand∗(xr1t−xi,jt)+k2∗Rand∗(xr2,jt−xi,jt)(3)
k 1 = e f i − f r 1 ∣ f i + ε ∣ (4) k_1 = e^{\frac {f_i - f_{r_1}}{|f_i + \varepsilon|}}\tag{4} k1=e∣fi+ε∣fi−fr1(4)
k 2 = e f r 2 − f i (5) k_2 = e^{f_{r_2} -f_i}\tag{5} k2=efr2−fi(5)
式 (3)-(5) 中: Rand 是一个服从 [0,1] 均匀分布的随机数,该母鸡的伙伴公鸡 r 1 r_1 r1 的适应度值为 f r 1 f_{r_1} fr1 , k 1 k_1 k1表示其伙伴公鸡对其的影响因子,其他公鸡和母鸡中随机选取个体 r 2 r_2 r2 的适应度值为 f r 2 f_{r_2} fr2 , k 2 k_2 k2 为其他鸡对其的影响因子。
小鸡在其母亲周围搜寻食物,它的搜索能力最差,位置受到母亲公鸡的影响,则更新策略见式 (6) 。
x i , j t + 1 = x i , j t + P ( x m , j t − x i , j t ) (6) x_{i,j}^{t+1} = x_{i,j}^t + P(x_{m,j}^t - x_{i,j}^t)\tag{6} xi,jt+1=xi,jt+P(xm,jt−xi,jt)(6)
式 (6) 中:母亲母鸡 m m m位置的第 j j j维数值为 x m x_m xm , j j j ,母亲母鸡的位置对小鸡位置的影响因子为 P P P , 其为随机函数随机生成,取值范围一般为 (0,2) 。
步骤如下:
[1] MENG X , LIU Y , GAO X Z , et al. A new bio-inspired algorithm: chicken swarm optimization[J]. Lecture Notes in Computer Science ,2014 ,8794(1):86-94.
[2] 胡汉梅,李静雅,黄景光.基于鸡群算法的微网经济运行优化[J].高压电器,2017,53(01):119-125.
鸡群优化算法
改进算法matlab代码
名称 | 说明或者参考文献 |
---|---|
基于模拟退火的改进鸡群优化算法(SAICSO) | [1]李振璧,王康,姜媛媛.基于模拟退火的改进鸡群优化算法[J].微电子学与计算机,2017,34(02):30-33+38. |
一种改进的鸡群算法(ICSO) | [1]孔飞,吴定会.一种改进的鸡群算法[J].江南大学学报(自然科学版),2015,14(06):681-688. |
全局优化的改进鸡群算法(ECSO) | [1]韩斐斐,赵齐辉,杜兆宏,刘升.全局优化的改进鸡群算法[J].计算机应用研究,2019,36(08):2317-2319+2327. |
算法相关应用
名称 | 说明或者参考文献 |
---|---|
鸡群优化的BP神经网络(预测) | https://blog.csdn.net/u011835903/article/details/112149776(原理一样,只是优化算法用鸡群算法) |
鸡群优化的BP神经网络(分类) | https://blog.csdn.net/u011835903/article/details/112149394(原理一样,只是优化算法用鸡群算法) |
基于鸡群优化的最大熵多阈值分割 | https://blog.csdn.net/u011835903/article/details/108203775(原理一样,只是优化算法用鸡群算法) |
鸡群算法优化的otsu多阈值分割 | https://blog.csdn.net/u011835903/article/details/108019744(原理一样,只是优化算法用鸡群算法) |
鸡群优化的PID参数优化 | https://blog.csdn.net/u011835903/article/details/109306387(原理一样,只是优化算法用鸡群算法) |