编程语言
首页 > 编程语言> > 黏菌优化算法SMA(学习笔记_07)

黏菌优化算法SMA(学习笔记_07)

作者:互联网

1. 定理

2. 参数

3. 算法流程

  1. 初始化种群, 当前迭代次数it = 1

  2. while it <= iter_max

    1. 接近食物(气味指数)

      1. 计算每个黏菌的适应度值,S( )

      2. 对当前种群的适应度值进行排序(求最小值时升序,求最大值时降序),SI( )

      3. 记录黏菌个体的最佳适应度值DF及最佳位置

    2. 包裹食物

      1. 更新参数a,b

        1. a = arctanh(−(t/T)+1)
        2. b=1−t/T
      2. 计算每个黏菌个体的适应度权重 

         黏菌个体适应度权重公式如下:

          bF :当前迭代最佳适应度值,wF: 当前迭代最差适应度值,r :[0,1]随机数

      3. 更新黏菌个体的位置(产生下一代种群)

         黏菌个体位置更新公式如下:ub: 自变量上限,lb:自变量下限,vc = [-b,b]随机数,vb:[-a,a]随机数,A.B:随机选择的当前迭代中的两个个体的位置。
    3. 获取食物

      1. 记录最佳适应度值DF

      2. 迭代次数 it = it + 1;

  3. end

  4. 输出结果

4. 适应度函数

 

5. 参考文献

[1] Shimin Li, Huiling Chen, Mingjing Wang, Ali Asghar Heidari, Seyedali Mirjalili. Slime mould algorithm: A new method for stochastic optimization[J]. Future Generation Computer Systems, 2020, 111: 300-323.

标签:黏菌,07,迭代,DF,个体,适应度,随机数,SMA
来源: https://blog.csdn.net/weixin_49647278/article/details/122665626