基于曲线自适应和模拟退火的蝗虫优化算法

文章目录

  • 基于曲线自适应和模拟退火的蝗虫优化算法
    • 1.蝗虫优化算法
    • 2. 基于曲线自适应和模拟退火的蝗虫优化算法(SA-CAGOA)
      • 2.1 基于曲线自适应的蝗虫优化算法(CAGOA)
      • 2.2 Metropolis 准则
      • 2.3 模拟退火蝗虫随机位置
      • 2.4 SA-CAGOA 的实现步骤
    • 3.实验结果
    • 4.参考文献
    • 5.Matlab代码
    • 6.python代码

摘要:针对蝗虫优化算法容易陷入局部极值点、收敛速度慢、精度较差等缺点,提出曲线自适应和模拟退火蝗虫优化算法。首先,引入曲线自适应代替蝗虫优化算法关键参数的线性自适应,提高了算法的全局搜索能力;其次,在此基础上引入模拟退火算法,对蝗虫算法的劣势解具有一定概率的接收,使算法具有跳出局部最优,实现全局最优的能力。自适应缩小模拟退火中蝗虫位置随机解的范围,有利于进一步提高蝗虫算法的开发能力。

1.蝗虫优化算法

基础蝗虫优化算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107694862

2. 基于曲线自适应和模拟退火的蝗虫优化算法(SA-CAGOA)

2.1 基于曲线自适应的蝗虫优化算法(CAGOA)

本文提出的 CAGOA 中主要采用两种曲线自适应策略,即余弦自适应(式(4))和圆弧自适应(式(5))。式(4)和(5)分别替代蝗虫优化算法中的线性自适应更新参数 c 的方法,从而形成两种新的 CAGOA,分别简称为 CAGOA1 和 CAGOA2。参数 c 影响着蝗虫的搜索范围,参数由大到小对应蝗虫算法由全局搜索到局部搜索的转变。曲线自适应和线性自适应的不同之处在于参数 c 的下降趋势,线性自适应以相同速率减小,而余弦自适应调整策略在开始和结束时下降速率会很小,下降缓慢,有助于增强蝗虫在开始时的全局搜索和后期的局部搜索能力。除此之外,余弦自适应参数 c 的值在前期比线性自适应的值大,可以加大蝗虫的搜索范围,增强蝗虫勘探能力;后期参数的值比线性自适应小,可以减小蝗虫的搜索范围,增强蝗虫探索能力。
c={cos(π×l/max_iter+cmax)×(cmax+cmin)/2(cmax−l)/max_iter)2(4,5)c=\left\{\begin{array}{l} cos(\pi \times l/max\_iter+c_{max})\times(c_{max}+c_{min})/2 \\ (c_{max}-l)/max\_iter)^2 \end{array}\right. \tag{4,5} c={cos(π×l/max_iter+cmax​)×(cmax​+cmin​)/2(cmax​−l)/max_iter)2​(4,5)

2.2 Metropolis 准则

模拟退火算法采用 Metropolis 接收准则 ,以一定概率接收较差的解,使算法能够跳出局部最优,避免陷入局部搜索。假设物体在状态iii下的内能为 E(i)E(i)E(i),状态jjj下的内能为E(j)E(j)E(j)。物体在某一温度TTT下从状态iii 转移到状态jjj,如果内能E(j)<E(i)E(j) < E(i)E(j)<E(i),则接收 jjj 为当前状态;否则,若概率 Pi,jTP^T_{i,j}Pi,jT​ 大于[0,1)的随机数,则仍接收状态 jjj 为当前状态,若概率Pi,jTP^T_{i,j}Pi,jT​小于[0,1)的随机数,则保留状态iii为当前状态。Pi,jTP^T_{i,j}Pi,jT​定义 如下:
PijT={1E(j)⩽E(i)e(−E(j)−E(i)KT)others (6)P_{i j}^{T}=\left\{\begin{array}{ll} 1 & E(j) \leqslant E(i) \\ e^{\left(-\frac{E(j)-E(i)}{K T}\right)} & \text { others } \end{array}\right. \tag{6} PijT​={1e(−KTE(j)−E(i)​)​E(j)⩽E(i) others ​(6)
其中:E(i)E(i)E(i)和 E(j)E(j)E(j)分别表示固体在状态 iii和jjj下的内能;KKK 为波尔兹曼常数。

2.3 模拟退火蝗虫随机位置

模拟退火在搜索过程引入了随机因素,在模拟退火中蝗虫的随机位置公式如下:
xi+1=12(xi−ub−lbl2+(ub−lb)×2l2×rand )(7)x_{i+1}=\frac{1}{2}\left(x_{i}-\frac{u b-l b}{l^{2}}+\frac{(u b-l b) \times 2}{l^{2}} \times \text { rand }\right) \tag{7} xi+1​=21​(xi​−l2ub−lb​+l2(ub−lb)×2​× rand )(7)
其中:xix_ixi​ 是蝗虫当前位置解;xi+1x_{i+1}xi+1​ 为蝗虫随机的下个位置解;LLL是蝗虫的迭代次数;ub、lbub、lbub、lb 分别为蝗虫位置的上界和下界;randrandrand是 0 到 1 的随机数。式(7)中蝗虫随机位置范围随蝗虫迭代次数的增加而减小,这有利于提高蝗虫后期的开发能力。

2.4 SA-CAGOA 的实现步骤

a)随机生成个 N 蝗虫的初始化种群、初始化种群位置 XiX_iXi​ 、参数 cmax、cminc_{max} 、c_{min}cmax​、cmin​ 和最大迭代次数maxiterationmax_{iteration}maxiteration​;
b)计算种群每个个体的适应度值,并保存适应度值最好个体的值到变量 fitness;
c)用式(4)或(5)更新参数 ccc;
d)用式(3)更新蝗虫的位置并计算每个蝗虫的适应度值;
e)设置初始温度 T0T_0T0​ ,结束温度TTT,退火系数rrr;
f)在得到蝗虫解的邻域内用式(7)随机选择新解,计算两
个解的适应度值,并根据 Metropolis 准则更新解;
g)若步骤 f)中得到的蝗虫适应度有更好的值,则更新变量 fitness;
h)判断算法是否达到终止条件,若达到,则终止循环返回结果 fitness,否则转到步骤 c)。
在上述的实现步骤 c)中,当使用式(4)更新参数 c,即采用余弦自适应策略时,形成的最终优化算法这里简称为 SA-CA-GOA1;而当使用式(5)更新参数 c,即采用圆弧自适应策略时,则形成的最终优化算法这里简称为 SA-CAGOA2。

3.实验结果

4.参考文献

[1]李洋州,顾磊.基于曲线自适应和模拟退火的蝗虫优化算法[J].计算机应用研究,2019,36(12):3637-3643.

5.Matlab代码

6.python代码

基于曲线自适应和模拟退火的蝗虫优化算法-附代码相关推荐

  1. 【智能优化算法】基于曲线自适应和模拟退火的蝗虫优化算法求解单目标优化问题附matlab代码

    1 简介 针对蝗虫优化算法容易陷入局部极值点,收敛速度慢,精度较差等缺点,提出曲线自适应和模拟退火蝗虫优化算法.首先,引入曲线自适应代替蝗虫优化算法关键参数的线性自适应,提高了算法的全局搜索能力;其次 ...

  2. 一种基于交叉选择的柯西反向鲸鱼优化算法 -附代码

    一种基于交叉选择的柯西反向鲸鱼优化算法 文章目录 一种基于交叉选择的柯西反向鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 柯西反向学习 2.2 引入交叉与选择策略的鲸鱼优化算法 3. ...

  3. 智能优化算法:正余弦优化算法-附代码

    智能优化算法:正余弦优化算法-附代码 文章目录 智能优化算法:正余弦优化算法-附代码 1.算法原理 2.算法流程 3.算法结果 4.参考文献 5.MATLAB代码 6.Python代码 摘要:正 余 ...

  4. 智能优化算法:多元宇宙优化算法-附代码

    智能优化算法:多元宇宙优化算法-附代码 文章目录 智能优化算法:多元宇宙优化算法-附代码 1.算法原理 2.算法流程图 3.算法结果 4.参考文献 5.MATLAB代码 6.python代码 摘要:多 ...

  5. 智能优化算法:蚁狮优化算法-附代码

    智能优化算法:蚁狮优化算法-附代码 文章目录 智能优化算法:蚁狮优化算法-附代码 1.算法原理 1.1 蚂蚁的随机游走 1.2蚁狮对蚂蚁随机游走的影响 1.3自适应机制 1.4 精英策略 2.算法步骤 ...

  6. 基于 Iterative 映射和单纯形法的改进灰狼优化算法-附代码

    基于 Iterative 映射和单纯形法的改进灰狼优化算法 文章目录 基于 Iterative 映射和单纯形法的改进灰狼优化算法 1.灰狼优化算法 2. 改进灰狼优化算法(SMIGWO) 2.1 混沌 ...

  7. 基于混沌的正余弦鲸鱼优化算法-附代码

    基于混沌的正余弦鲸鱼优化算法 文章目录 基于混沌的正余弦鲸鱼优化算法 1.鲸鱼优化算法 2. 改进鲸鱼优化算法 2.1 混沌初始化种群和参数优化 2.2 正余弦鲸鱼优化算法 2.3 混沌自适应的惯性权 ...

  8. 基于透镜成像学习策略的灰狼优化算法-附代码

    基于透镜成像学习策略的灰狼优化算法 文章目录 基于透镜成像学习策略的灰狼优化算法 1.灰狼优化算法 2.基于透镜成像学习的 GWO 算法 2.1修改控制参数*C*策略 2.2 透镜成像反向学习策略 3 ...

  9. 基于Cat混沌与高斯变异的改进灰狼优化算法-附代码

    基于Cat混沌与高斯变异的改进灰狼优化算法 文章目录 基于Cat混沌与高斯变异的改进灰狼优化算法 1.灰狼优化算法 2. 改进灰狼优化算法 2.1 混沌反向学习策略的种群初始化 2. 2 引入个体记忆 ...

最新文章

  1. jquery checkbox勾选/取消勾选的诡异问题
  2. Struts框架核心技术小小班
  3. MySQL查看表占用空间大小
  4. boost::geometry::model::infinite_line用法的测试程序
  5. python编程(数据库操作)
  6. [排错] Status error 2850
  7. Application_Start 不执行
  8. 20190815 On Java8 第五章 控制流
  9. 自学Android到什么程度才能找到工作?
  10. 15个最佳iOS游戏模板
  11. 电力线宽带载波对比窄带载波的优点
  12. make flash 报错解决。
  13. 数字电路设计: FPGA实现倍频
  14. elastic-job VS xxl-job
  15. cakephp部署及实例操作
  16. JAVA解决OPTIONS请求问题:跨域时ajax发送两次请求,其中options预请求参数为null及其解决方案
  17. 值得收藏的深度学习模型训练trick
  18. HTML5+CSS期末大作业:个人主页介绍主题——-我们的挚爱 (7页) 学生DW网页设计作业成品 大学生个人网站作业模板 简单个人网页制作
  19. HTML——表格标签
  20. python菜鸟入门_值得收藏|菜鸟学Python【入门文章大全】

热门文章

  1. C1能力认证任务01-信息编码
  2. 抖音广告推广直播如何抓住粉丝痛点?抖音广告怎么开户
  3. 【sonar集成jenkins实现静态代码扫描】
  4. THUPC 清华校赛总结
  5. 【CV】第 6 章:使用迁移学习的视觉搜索
  6. html5图片剪切板,原生js实现基于base64数据复制图片到剪切板,可以粘贴出图片,模拟浏览器复制功能。...
  7. 跟熊浩学沟通30讲读后感_跟熊浩学沟通笔记
  8. CryoEM - 使用 3DMod (IMOD) 评估蛋白质三维结构的质量
  9. B45 - 基于STM32单片机的家庭防火防盗系统的设计
  10. 目前计算机科技的最前沿,全球最前沿的60个科技问题!爱知者必看