zl程序教程

您现在的位置是:首页 >  后端

当前栏目

基于Sine混沌映射的麻雀搜索算法-附代码

映射代码 基于 搜索算法 混沌 麻雀
2023-09-14 09:06:13 时间

基于Sine混沌映射的麻雀搜索算法

1.sine映射

sine映射是混沌映射的典型代表,它的数学形式很简单。其表达式如下:
x k + 1 = a 4 s i n ( π x k ) , a ∈ ( 0 , 4 ] (1) x_{k+1} =\frac{a}{4}sin(\pi x_k),a\in (0,4]\tag{1} xk+1=4asin(πxk),a(0,4](1)
sine表达式中x的范围为[0,1]。sine映射迭代200次的分布如下图所示:

请添加图片描述

从图种可以看出,sine映射分布在[0,1]之间,其混沌性来代替随机初始化,能够使种群在搜索空间更加均匀的分布。

2.基于sine映射的麻雀搜索算法

基础麻雀算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/108830958

该改进主要是在初始化种群时,利用sine映射初始化种群

算法流程

Step1: 利用sine映射策略初始化种群,迭代次数,初始化捕食者和加入者比列。

Step2:计算适应度值,并排序。

Step3:麻雀更新捕食者位置。

Step4:麻雀更新加入者位置。

Step5:麻雀更新警戒者位置。

Step6:计算适应度值并更新麻雀位置。

Step7:是否满足停止条件,满足则退出,输出结果,否则,重复执行Step2-6;

3.算法结果:

请添加图片描述

4.Matlab

5.python