joooook 发表于 2015-10-15 20:14

[求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛

被这个问题困扰好久了,出现十字 , 而且 x,y方向的速度不同时为0,是什么原因?
十字型很有可能是因为二维的速度收敛不一致,导致的,有哪位遇到过这样的问题吗?



joooook 发表于 2015-10-15 20:15

设置 c1 c2 w 除了0.9 0.9 0.7 表现十字不明显以外, 其他都很明显

joooook 发表于 2015-10-15 20:16

附件里的图  粒子数 300  迭代500次

森之张卫东 发表于 2015-10-16 11:07

同学,把你的源代码和问题发上来,共同探讨!

joooook 发表于 2015-10-16 11:51

森之张卫东 发表于 2015-10-16 11:07 static/image/common/back.gif
同学,把你的源代码和问题发上来,共同探讨!

好的  马上就发

joooook 发表于 2015-10-16 11:53

代码 在附件


问题是:  为何粒子收敛过程形态出现 十字型?
              我发现粒子 x,y 方向的速度收敛不同时为0,为何不是同步趋于0 ?

士心之约 发表于 2015-10-17 18:58

个人看法:
为什么出现十字收敛,与函数有关,楼主可以试一下其他函数是否会出现此种情况。peaks函数最大的那个波峰是一个左右对称、前后对称,其在三个平面的投影分别为




       在十字收敛的两条直线分别对应图像中波峰的梯度的两个极限,一个最大值一个最小值。若换其他函数,非对称或者完全对称函数则不会出现这样的情况。
可能出现的情况:
非对称函数是一条无规则的路径;
完全对称的是一条直线。


joooook 发表于 2015-10-18 19:47

角度为30 的粒子图

士心之约 发表于 2015-10-18 20:49

joooook 发表于 2015-10-18 19:47 static/image/common/back.gif
角度为30 的粒子图

这是十字?

joooook 发表于 2015-10-18 21:07

士心之约 发表于 2015-10-18 20:49 static/image/common/back.gif
这是十字?

最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
页: [1] 2
查看完整版本: [求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛