PSO粒子群寻优怎么知道结果有没有陷入局部最优

如题,PSO粒子群寻优怎么知道结果有没有陷入局部最优

我是用PSO来寻优最优PID值,没有那种可视化的过程(如寻找函数最优值的很多个粒子在不同的波峰波谷之间移动,如图1),只有PSO寻优绘制出来的最优适应度随迭代次数的曲线(如图2),以及Kp、Ki、Kd随迭代次数变化的曲线图(如图3),应该怎么判断它是否陷入了局部最优?以及怎么判断它后期迭代效率差的?

图1 B站PSO教程视频(这是个🔗)

图2 最优适应度曲线

图3 PID迭代曲线

大家是怎么编写代码判断这些指标的?可以供小弟一看吗?

请大家不吝赐教,这对我有很大的帮助!


2024.01.20 20:34更新

在matlab官方中文论坛上已经有人回答了这个问题,我这里贴一个🔗点击这里,这个问题下面的回答已经回答得很好了。

简单来说只要是用的PSO粒子群算法就不可避免地会出现局部最优的状况,这是这个算法的固有缺陷!所以并没有一种什么方式来判断迭代寻优有没有陷入局部最优,而是一定会有这种情况,只不过这种情况出现的位置。是在最优值附近才陷入的局部最优还是在迭代初期就已经陷入局部最优了,如果是后一种情况的话,那么迭代出来的最优解是不可取的,而前一种情况还可以接受。

欢迎大家在评论区讨论!

  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值