
目录
- 1.背景
- 2.算法原理
- 2.1算法思想
- 2.2算法过程
 
- 3.结果展示
- 4.参考文献
 
1.背景
2021年,W Zhiheng等人受到火烈鸟迁徙觅食行为启发,提出了火烈鸟搜索算法(Flamingo Search Algorithm, FSA)。

 
2.算法原理
2.1算法思想
FSA受到火烈鸟的觅食和迁徙行为的启发,火烈鸟通过互相鸣叫传递关于食物供应的信息并更新其位置,FSA在未知的搜索空间中通过模拟火烈鸟之间的交互,不断更新位置以探索并寻找全局最优解。FSA主要包含两个阶段:喙的扫描和脚的移动。

2.2算法过程
交际行为允许火烈鸟通过呼叫传递关于食物丰富位置的信息,从而引导群体更新位置,即使个体不完全知晓全局最优位置。喙扫描行为则模拟火烈鸟在富含食物的区域进行更密集的搜索,通过嘴部和脚部动作调整扫描范围和频率。这两种行为结合,使得FSA能在不确定和动态的环境中有效寻找最优解,平衡全局探索与局部利用。
 火烈鸟觅食的移动步长为火烈鸟喙的扫描范围加上脚的移动距离:
  
      
       
        
         
          
          
           
            
            
              b 
             
             
             
               i 
              
             
               j 
              
             
            
              t 
             
            
           
             = 
            
            
            
              ε 
             
            
              1 
             
            
           
             × 
            
           
             x 
            
            
            
              b 
             
            
              j 
             
            
              t 
             
            
           
             + 
            
            
            
              G 
             
            
              2 
             
            
           
             × 
            
            
            
              ∣ 
             
             
             
               G 
              
             
               1 
              
             
            
              × 
             
            
              x 
             
             
             
               b 
              
             
               j 
              
             
               t 
              
             
            
              + 
             
             
             
               ε 
              
             
               2 
              
             
            
              × 
             
             
             
               x 
              
              
              
                i 
               
              
                j 
               
              
             
               t 
              
             
            
              ∣ 
             
            
           
          
          
          
          
            (1) 
           
          
         
        
       
         b_{ij}^t=\varepsilon_1\times xb_j^t+G_2\times\left|G_1\times xb_j^t+\varepsilon_2\times x_{ij}^t\right|\tag{1} 
        
       
     bijt=ε1×xbjt+G2× 
              G1×xbjt+ε2×xijt 
              (1)
 更新火烈鸟觅食行为位置:
  
      
       
        
         
          
          
           
            
            
              x 
             
             
             
               i 
              
             
               j 
              
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
             = 
            
           
             ( 
            
            
            
              x 
             
             
             
               i 
              
             
               j 
              
             
            
              t 
             
            
           
             + 
            
            
            
              ε 
             
            
              1 
             
            
           
             × 
            
           
             x 
            
            
            
              b 
             
            
              j 
             
            
              t 
             
            
           
             + 
            
            
            
              G 
             
            
              2 
             
            
           
             × 
            
            
            
              ∣ 
             
             
             
               G 
              
             
               1 
              
             
            
              × 
             
            
              x 
             
             
             
               b 
              
             
               j 
              
             
               t 
              
             
            
              + 
             
             
             
               ε 
              
             
               2 
              
             
            
              × 
             
             
             
               x 
              
              
              
                i 
               
              
                j 
               
              
             
               t 
              
             
            
              ∣ 
             
            
           
             ) 
            
           
             / 
            
           
             K 
            
           
          
          
          
          
            (2) 
           
          
         
        
       
         x_{ij}^{t+1}=(x_{ij}^{t}+\varepsilon_{1}\times xb_{j}^{t}+G_{2}\times\left|G_{1}\times xb_{j}^{t}+\varepsilon_{2}\times x_{ij}^{t}\right|)/K\tag{2} 
        
       
     xijt+1=(xijt+ε1×xbjt+G2× 
              G1×xbjt+ε2×xijt 
              )/K(2)
 当前觅食区域食物匮乏时,火烈鸟种群会迁移到下一个食物更丰富的区域:
  
      
       
        
         
          
          
           
            
            
              x 
             
             
             
               i 
              
             
               j 
              
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
             = 
            
            
            
              x 
             
             
             
               i 
              
             
               j 
              
             
            
              t 
             
            
           
             + 
            
           
             ω 
            
           
             × 
            
           
             ( 
            
           
             x 
            
            
            
              b 
             
            
              j 
             
            
              t 
             
            
           
             − 
            
            
            
              x 
             
             
             
               i 
              
             
               j 
              
             
            
              t 
             
            
           
             ) 
            
           
          
          
          
          
            (3) 
           
          
         
        
       
         x_{ij}^{t+1}=x_{ij}^{t}+\omega\times(xb_{j}^{t}-x_{ij}^{t})\tag{3} 
        
       
     xijt+1=xijt+ω×(xbjt−xijt)(3)
 其中,xbj表示第t次迭代种群中适应度最好的火烈鸟的第j维位置,ω = N(0, N)是一个N个自由度的高斯随机数,用于增加火烈鸟迁徙过程中的搜索空间,模拟特定迁徙过程中火烈鸟个体行为的随机性。
伪代码

3.结果展示

4.参考文献
[1] Zhiheng W, Jianhua L. Flamingo search algorithm: a new swarm intelligence optimization algorithm[J]. IEEE Access, 2021, 9: 88564-88582.



















