基于Circle混沌映射的麻雀搜索算法
1.Circle映射
Circle映射是混沌映射的典型代表,它的数学形式很简单。其表达式如下:
x
k
+
1
=
m
o
d
(
x
k
+
b
−
(
a
2
π
)
s
i
n
(
2
π
x
k
)
,
1
)
a
=
0.5
,
b
=
0.2
x_{k+1} =mod(x_k + b -(\frac{a}{2\pi})sin(2\pi x_k),1)\\ a=0.5,b=0.2
xk+1=mod(xk+b−(2πa)sin(2πxk),1)a=0.5,b=0.2
Ciercle表达式中mod为取余函数。Circle映射迭代200次的分布如下图所示:
从图种可以看出,circle映射分布在[0,1]之间,其混沌性来代替随机初始化,能够使种群在搜索空间更加均匀的分布。
2.基于Circle映射的麻雀搜索算法
基础麻雀算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/108830958
该改进主要是在初始化种群时,利用Logistic映射初始化种群
算法流程
Step1: 利用Circle映射策略初始化种群,迭代次数,初始化捕食者和加入者比列。
Step2:计算适应度值,并排序。
Step3:麻雀更新捕食者位置。
Step4:麻雀更新加入者位置。
Step5:麻雀更新警戒者位置。
Step6:计算适应度值并更新麻雀位置。
Step7:是否满足停止条件,满足则退出,输出结果,否则,重复执行Step2-6;