智能优化算法:海鸥算法原理及Matlab代码
智能优化算法:海鸥算法原理及Matlab代码 文章导航 1. 算法原理 2. SOA算法流程 2.1 迁徙行为(exploration ability) 2.2 攻击行为(exploitation ability) 3. SOA算法流程如下: 4. 运行结果 文章导航 海鸥算法(Seagull optimization algorithm,SOA),是由Gaurav Dhiman和Vijay kumar于2018年提出的一种新型群体智能优化算法,该算法主要模拟了自然界中海鸥迁徙以及迁徙过程中的攻击行为(觅食行为)。 1. 算法原理 海鸥算法主要模拟了海鸥的迁徙行为和攻击行为 。迁徙行为即海鸥从一个现阶段不适宜生存的地方飞往另一个适宜生存的地方,迁徙行为影响着SOA算法的全局探索能力;攻击行为即海鸥在飞行过程中对地面、水域内食物的攻击觅食,攻击行为影响着SOA算法的局部开发能力。 2. SOA算法流程 2.1 迁徙行为(exploration ability) 根据原始文献所述,海鸥在迁徙行为即算法中个体从一个位置探索至另一个位置。在这个阶段,需要注意三点:避免碰撞、、向最优个体靠拢、与最优代理保持密切联系。 为了避免与周围海鸥发生碰撞,算法采用附加变量A调整海鸥的位置。 C s = A ∗ P s ( x ) C_s=A*P_s(x) C s = A ∗ P s ( x )