数学建模社区-数学中国

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

作者: joooook    时间: 2015-10-15 20:14
标题: [求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛
被这个问题困扰好久了,出现十字 , 而且 x,y方向的速度不同时为0,是什么原因?4 N/ s6 ]4 F# N+ G/ J. w  X7 s
十字型很有可能是因为二维的速度收敛不一致,导致的,有哪位遇到过这样的问题吗?: _3 T" b5 s: M( r# Z: H( x1 s5 x
7 i3 O! i. `; `8 L( v
/ ?) ]: [5 u9 ?  E' {
) k) H$ B, P7 K7 }

生成m0930.png (134.86 KB, 下载次数: 704)

十字收敛过程如图

十字收敛过程如图


作者: joooook    时间: 2015-10-15 20:15
设置 c1 c2 w 除了0.9 0.9 0.7 表现十字不明显以外, 其他都很明显( |5 C: c5 @, a

作者: joooook    时间: 2015-10-15 20:16
附件里的图  粒子数 300  迭代500次6 P4 P5 G+ h% U7 \! B) [) C

作者: 森之张卫东    时间: 2015-10-16 11:07
同学,把你的源代码和问题发上来,共同探讨!
+ ?% o0 f& j; f  \/ g0 g4 I& E7 t
作者: joooook    时间: 2015-10-16 11:51
森之张卫东 发表于 2015-10-16 11:07
/ M* s2 H  s9 e8 X同学,把你的源代码和问题发上来,共同探讨!

( Z6 ~, j" B% i好的  马上就发
5 @0 f2 d- k5 I: t
作者: joooook    时间: 2015-10-16 11:53
代码 在附件# f" K  l- C4 j, t5 S

1 u! q* J8 J2 S( X) T/ |9 v, V" p1 N9 F& K) g( {
问题是:  为何粒子收敛过程形态出现 十字型?
( P% I0 R1 j& k8 i6 @* U+ W( q              我发现粒子 x,y 方向的速度收敛不同时为0,为何不是同步趋于0 ?
7 p. t; A7 {% ~" {

10-16.cpp

4.9 KB, 下载次数: 3, 下载积分: 体力 -2 点


作者: 士心之约    时间: 2015-10-17 18:58
个人看法:* }' i5 O8 N9 z5 K5 x6 `" o! R
为什么出现十字收敛,与函数有关,楼主可以试一下其他函数是否会出现此种情况。peaks函数最大的那个波峰是一个左右对称、前后对称,其在三个平面的投影分别为
& _1 w# o: \4 l. R  t' @0 r 1.jpg
! x7 Z5 f; u& V: _8 g/ S/ N 2.jpg " f) T4 G% C0 C3 c* O: D
3.jpg 5 K" J) u+ V3 x2 |) K: B9 o% I! y
. W. _5 `1 R# j1 _( P
       在十字收敛的两条直线分别对应图像中波峰的梯度的两个极限,一个最大值一个最小值。若换其他函数,非对称或者完全对称函数则不会出现这样的情况。
1 C: O3 S. ?1 s可能出现的情况:
, s5 }/ I+ c  A/ k) ^- i非对称函数是一条无规则的路径;4 m2 }% p2 g3 v" o
完全对称的是一条直线。! ]: P5 S; g$ x! V% D1 N
# J1 g9 h/ H2 A! |* w
) c$ u4 ~% Y: N/ |5 R

作者: joooook    时间: 2015-10-18 19:47
角度为30 的粒子图! y% R' F5 p# i/ W- C$ O, y

ang=30.png (41.56 KB, 下载次数: 641)

角度为30

角度为30


作者: 士心之约    时间: 2015-10-18 20:49
joooook 发表于 2015-10-18 19:47
3 w; ?& {* L- N- n& ~% w; ]角度为30 的粒子图
. w! j, K  o& M
这是十字?1 h) b5 N* Y  N+ b

作者: joooook    时间: 2015-10-18 21:07
士心之约 发表于 2015-10-18 20:49
$ V5 h% x* i& ~( S这是十字?
1 s) v  v/ _, ^( ^& m! S0 K4 O
最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的! Y( j- G* u6 B/ n

作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
+ S6 x! m' t& {9 _最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的

% P1 ^- [& v% `% U  ^没看出来啊
: `' \  T! j5 C6 e' z6 i
作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07 % X% X/ ^$ P+ _. V# d
最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的

0 M0 N$ ^. [, @搞张清楚点的( j2 W0 t' M! Y4 k% v( H' @

作者: joooook    时间: 2015-10-18 22:20
清楚了点  收敛过程中 截了一张图
1 y6 w* g) N3 E7 G/ {7 a/ B+ o0 U7 ?

无标题.png (39.71 KB, 下载次数: 277)

无标题.png


作者: joooook    时间: 2015-10-19 10:00
士心之约 发表于 2015-10-18 21:34
3 P+ K& S$ j0 M  ]2 a( f. X2 l" j没看出来啊

; a- P+ v( v$ ~8 ]3 p% ^新图 已发* L% q& C% K" W- `- a! S: d

作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 ) v- |8 e) R  w3 Q+ m; o' M
新图 已发

; X! A, g1 r' x- q+ x这个不是最大值的那个峰啊,两个完全不同
- m  j+ K5 w7 A9 P6 }. r& ^( {
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 . G( z: B. g! r! W% h
新图 已发
4 `. R. `3 i; j; x
这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究( W  V* J" c, j

作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
% _7 u1 ~7 I1 r; m' y1 k1 J新图 已发

! g9 e; z  A4 a* d8 K这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究: j" F* x5 Z- f2 m6 A

作者: joooook    时间: 2015-10-19 11:25
士心之约 发表于 2015-10-19 10:19
  }+ D7 P/ `/ h* K这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究

* ?0 F4 i9 V* b9 d/ l恩   旋转30度以后的。。  哎 我再看看( m6 |/ S' f( `7 O) y# j$ ]6 h

作者: 士心之约    时间: 2015-10-19 11:26
joooook 发表于 2015-10-19 11:25 3 }  J5 S9 }8 M8 {$ Y$ D/ T
恩   旋转30度以后的。。  哎 我再看看

4 b. |& E4 S9 X你换个函数试试卅9 \; o' c( j7 ^3 x7 W  x  v5 O





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5