一种改进的鸡群算法 -附代码
一种改进的鸡群算法
摘要:针对鸡群算法在求解高维优化问题时易陷入局部最优和出现早熟收敛的情况,提出一种改进的鸡群算法。算法中对小鸡的位置更新公式中加入向小鸡自身所在群中的公鸡学习部分,并引入惯性权值和学习因子。
1.鸡群优化算法
基础鸡群优化的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/108333906
2.改进鸡群算法
对于式(6) 中的小鸡位置更新公式,小鸡只向自己的妈妈学习,而并没有向小鸡自身所在群中的公鸡学习。小鸡在更新自己的位置时只能获取自己妈妈的位置信息,而无法获取整个子群中公鸡的位
置信息。当妈妈母鸡陷入局部最优时,小鸡因为只向自己的妈妈学习,也会陷入局部最优。因此,鸡群算法会陷入局部最优。文中对小鸡的位置更新公式进行了改进,更新公式中加入了向小鸡自身所在群中的公鸡学习部分。改进后的位置更新公式如下:
x
i
,
j
(
t
+
1
)
=
w
⋅
x
i
,
j
(
t
)
+
F
⋅
(
x
m
,
j
(
t
)
−
x
i
,
j
(
t
)
)
+
C
⋅
(
x
r
,
j
(
t
)
−
x
i
,
j
(
t
)
)
(7)
\begin{array}{c} x_{i, j}(t+1)=w \cdot x_{i, j}(t)+F \cdot\left(x_{m, j}(t)-\right. \left.x_{i, j}(t)\right)+C \cdot\left(x_{r, j}(t)-x_{i, j}(t)\right) \end{array} \tag{7}
xi,j(t+1)=w⋅xi,j(t)+F⋅(xm,j(t)−xi,j(t))+C⋅(xr,j(t)−xi,j(t))(7)
式中:m 为小鸡对应的妈妈母鸡;r 为妈妈母鸡自身所在群中的公鸡;C 为学习因子,表示小鸡向自身所在群中公鸡学习的程度;w 为小鸡的自我学习系数,这与粒子群算法中的惯性权重很相似。
W的计算如下:
w
=
w
min
⋅
(
w
max
/
w
min
)
(
1
/
(
1
+
10
t
/
N
g
e
n
)
)
(8)
w=w_{\min } \cdot\left(w_{\max } / w_{\min }\right)^{\left(1 /\left(1+10 t / N_{\mathrm{gen}}\right)\right)} \tag{8}
w=wmin⋅(wmax/wmin)(1/(1+10t/Ngen))(8)
在综合考虑算法的收敛精度、收敛速度和鲁棒性的情况下,F 取[0.4,1]之间的随机数,C = 0.4,w随迭代次数的增加从 0.9 到0.4指数递减。
算法的详细流程如下:
-
初始化鸡群 x,并定义相关参数 N R ,N H ,N C ,N M等;
-
计算鸡群的适应度值 fitness,初始化个体当前最好位置 P best 和鸡群全局最好位置 g best ,t = 1;
-
如果t%G = 1,排序fitness,建立鸡群的等级制度,将鸡群分成数个子群并确定母鸡和小鸡的对应关系;
-
使用式(1)、式(3) 和式(7) 分别更新公鸡、母鸡和小鸡的位置并分别计算每个个体的适应度值;
-
更新鸡群的个体当前最好位置和鸡群全局最好位置;
6)t = t + 1,如果满足迭代停止条件,则停止迭代,输出最优值,否则转到 3)。
3.实验结果
4.参考文献
[1]孔飞,吴定会.一种改进的鸡群算法[J].江南大学学报(自然科学版),2015,14(06):681-688.
5.Matlab代码
6.python代码
相关文章
- Java实现 蓝桥杯算法提高 求最大值
- 重新整理数据结构与算法(c#)——算法套佛洛伊德算法[三十二]
- 数据挖掘apriori算法Java代码实现
- Dataset之图片数据增强:设计自动生成汽车车牌图片算法(cv2+PIL)根据指定七个字符自动生成逼真车牌图片数据集(带各种噪声效果)
- 基于小生境粒子群优化算法的考虑光伏波动性的主动配电网有功无功协调优化(Matlab代码实现)
- 异构分布式系统中一种新的基于无序遗传的任务调度算法(Matlab代码实现)
- 基于蜜蜂算法的资源受限项目优化调度(Matlab代码实现)
- 使用混沌和非线性控制参数来提高哈里斯鹰优化算法的优化性能,解决车联网相关的路由问题(Matlab代码实现)
- 基于粒子群优化算法的分布式电源优化调度实现配电网稳定运行(Matlab代码实现)
- SMMP:一种基于稳定成员资格的多峰聚类算法(Matlab代码实现)
- 基于二进制粒子群算法的背包问题求解- 附代码
- 智能优化算法:沙猫群算法—附代码
- 智能优化算法:乌鸦搜索算法-附代码
- 基于levy飞行和模拟退火改进的秃鹰算法-附代码
- 一种加权变异的粒子群算法-附代码
- 一种基于交叉选择的柯西反向鲸鱼优化算法 -附代码
- 具有自适应调整策略的混沌灰狼优化算法-附代码
- 一种基于混合策略的灰狼优化算法-附代码
- 1763. 最长的美好子字符串-贪心算法
- 在OpenCV里使用K均值聚类算法
- 图像算法所用软件下载汇总