数学建模社区-数学中国

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

作者: joooook    时间: 2015-10-15 20:14
标题: [求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛
被这个问题困扰好久了,出现十字 , 而且 x,y方向的速度不同时为0,是什么原因?
- o& e6 T# ^0 Y2 ~2 k3 ]) J+ f十字型很有可能是因为二维的速度收敛不一致,导致的,有哪位遇到过这样的问题吗?
, t' j8 H( E. s; z% @$ N" t/ E& \' @1 {! C/ {( g& j6 x2 O& O
0 ~! |( m1 E9 I' y2 Z- q1 P

. @- U9 g7 l9 k1 h& e9 M! h

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

十字收敛过程如图

十字收敛过程如图


作者: joooook    时间: 2015-10-15 20:15
设置 c1 c2 w 除了0.9 0.9 0.7 表现十字不明显以外, 其他都很明显
. l* @$ G' \4 ^4 O" m4 F! q
作者: joooook    时间: 2015-10-15 20:16
附件里的图  粒子数 300  迭代500次- e7 E0 y3 w" j) e+ e1 C

作者: 森之张卫东    时间: 2015-10-16 11:07
同学,把你的源代码和问题发上来,共同探讨!
7 y3 }& g5 N# Q8 r( j& g$ _9 H
作者: joooook    时间: 2015-10-16 11:51
森之张卫东 发表于 2015-10-16 11:07
; n  Z8 G2 x; K2 H0 a3 [3 t同学,把你的源代码和问题发上来,共同探讨!

  ^2 }( B% P1 o好的  马上就发
9 c2 `1 u( n* u1 K4 e
作者: joooook    时间: 2015-10-16 11:53
代码 在附件# e. N6 s- ~! G* H
  @- w4 \  b" T3 u1 @& @

) c# t/ j* u* G$ U7 O. Q! y' B问题是:  为何粒子收敛过程形态出现 十字型?) z" Q/ C; R, X  d2 H  g3 W; k
              我发现粒子 x,y 方向的速度收敛不同时为0,为何不是同步趋于0 ?
! Y% w. I/ G% a4 N& P

10-16.cpp

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


作者: 士心之约    时间: 2015-10-17 18:58
个人看法:
; {" Z1 D) @3 l# j. q为什么出现十字收敛,与函数有关,楼主可以试一下其他函数是否会出现此种情况。peaks函数最大的那个波峰是一个左右对称、前后对称,其在三个平面的投影分别为
6 I; f' k1 C, M7 s 1.jpg # w" j# T7 Z8 Q' d9 V* |
2.jpg 2 a( C9 X. B7 V
3.jpg
6 b9 q$ R( Y) h! i0 q; ]! p( C! s. J& j$ I) a* I1 a* t- |) J! _
       在十字收敛的两条直线分别对应图像中波峰的梯度的两个极限,一个最大值一个最小值。若换其他函数,非对称或者完全对称函数则不会出现这样的情况。0 K+ y: U# I4 y' M' B
可能出现的情况:
5 ~% e2 h4 [* I% v1 c5 Y+ l# ?非对称函数是一条无规则的路径;  m2 E* j/ z2 `& y+ @9 p
完全对称的是一条直线。" i  G& A+ ^; i
8 j" m& v* R! \0 X$ n: Q$ I
) e, v& [$ P9 f1 Y0 d$ F$ H

作者: joooook    时间: 2015-10-18 19:47
角度为30 的粒子图
2 O) ?! r7 G+ N: o) C

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

角度为30

角度为30


作者: 士心之约    时间: 2015-10-18 20:49
joooook 发表于 2015-10-18 19:47
* [! D, N5 o6 r2 d+ ^) R) h角度为30 的粒子图
1 I. W0 K4 c/ z6 g" R0 W
这是十字?
1 z. ]( L, s% r+ E5 p" b8 [
作者: joooook    时间: 2015-10-18 21:07
士心之约 发表于 2015-10-18 20:49 + t+ X) X* c* W
这是十字?
! R/ ]# q) O/ p& q
最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
# v( x" z4 z) B% N
作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
9 w$ n8 {! e7 {6 G, u最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的

3 |7 s; t/ _$ }- C* g没看出来啊% g  A" _8 [6 G5 N2 x1 }3 }4 l/ q

作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07 ' d1 f; D! \6 T5 l! W8 T
最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
+ Y3 E& p" ]; D3 U$ l
搞张清楚点的% y, b3 E& P! T) ^9 [

作者: joooook    时间: 2015-10-18 22:20
清楚了点  收敛过程中 截了一张图$ g% c  K6 Q: x& k0 c6 H% W

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

无标题.png


作者: joooook    时间: 2015-10-19 10:00
士心之约 发表于 2015-10-18 21:34 # P+ c9 K; E8 r
没看出来啊

4 ^3 G$ c* B; l* Z7 K4 R$ [0 P1 _; K新图 已发
$ z- `$ A! X: t! e, O
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 ( q6 r: ^; J$ v" g' s( s/ j
新图 已发
( x; T+ b& G/ t9 C, `' @8 _) _! b
这个不是最大值的那个峰啊,两个完全不同
4 i) V- [1 x2 D: c
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 5 p* v+ ^3 V9 O! _0 g" G' o
新图 已发

, q1 ^( j8 s: x0 n这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究
9 k  d  w0 y3 U* H# _
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
: a  N  ^3 h" u0 w4 ]7 ?- C新图 已发

  Q6 x% L' a4 t( s% I这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究' k4 d# ^- c" b

作者: joooook    时间: 2015-10-19 11:25
士心之约 发表于 2015-10-19 10:19 : j/ F9 H' d7 D! S2 f
这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究

  G; Z* T4 }8 \( M  E! l, \# i- V恩   旋转30度以后的。。  哎 我再看看" ]" o0 a; n0 {' r. X

作者: 士心之约    时间: 2015-10-19 11:26
joooook 发表于 2015-10-19 11:25
& W+ b$ u& w/ L/ w* m+ g恩   旋转30度以后的。。  哎 我再看看
  p0 F8 w$ h3 [* G+ I% D: W
你换个函数试试卅2 d' V9 Y- a3 Y8 P' u) A4 E& ?





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