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


文章目录

  • 基于Sine混沌映射的麻雀搜索算法
  • 1.sine映射
  • 2.基于sine映射的麻雀搜索算法
  • 3.算法结果:
  • 4.Matlab
  • 5.python


1.sine映射

sine映射是混沌映射的典型代表,它的数学形式很简单。其表达式如下:
基于Sine混沌映射的麻雀搜索算法-附代码_matlab
sine表达式中x的范围为[0,1]。sine映射迭代200次的分布如下图所示:

基于Sine混沌映射的麻雀搜索算法-附代码_线性代数_02

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

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

基础麻雀算法的具体原理参考,我的博客

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

算法流程

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

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

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

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

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

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

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

3.算法结果:

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

4.Matlab

5.python