数学建模社区-数学中国

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

作者: joooook    时间: 2015-10-15 20:14
标题: [求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛
被这个问题困扰好久了,出现十字 , 而且 x,y方向的速度不同时为0,是什么原因?
% {. v* L+ \' J; p2 g: t十字型很有可能是因为二维的速度收敛不一致,导致的,有哪位遇到过这样的问题吗?
. g3 r0 A7 e, d9 E% m; H5 O! x8 P
+ j6 z$ p- Q( h6 L+ i

9 Z. M5 J) [+ m6 V1 d

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

十字收敛过程如图

十字收敛过程如图


作者: joooook    时间: 2015-10-15 20:15
设置 c1 c2 w 除了0.9 0.9 0.7 表现十字不明显以外, 其他都很明显
8 }7 S3 t' R) s7 A; o. \8 |: }
作者: joooook    时间: 2015-10-15 20:16
附件里的图  粒子数 300  迭代500次
5 v+ _/ p) S& d* u& y3 P& u
作者: 森之张卫东    时间: 2015-10-16 11:07
同学,把你的源代码和问题发上来,共同探讨!
; H0 A5 A/ j/ t5 \6 ^0 o
作者: joooook    时间: 2015-10-16 11:51
森之张卫东 发表于 2015-10-16 11:07 1 a) b# m* a- Z  ~, Z, L
同学,把你的源代码和问题发上来,共同探讨!
. X( a% ^! h2 V% s2 h
好的  马上就发
% d: y; t; w9 G. E5 z
作者: joooook    时间: 2015-10-16 11:53
代码 在附件
9 L6 l1 M9 y5 M( I. C, t; b# l1 u4 {4 j' Y
6 @+ z0 P  \8 t5 s
问题是:  为何粒子收敛过程形态出现 十字型?
* Z3 Y/ z" h  o# Q) J              我发现粒子 x,y 方向的速度收敛不同时为0,为何不是同步趋于0 ?
& w8 u8 H- ~7 ~9 {

10-16.cpp

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


作者: 士心之约    时间: 2015-10-17 18:58
个人看法:0 D2 k, i* N$ \$ t5 ~
为什么出现十字收敛,与函数有关,楼主可以试一下其他函数是否会出现此种情况。peaks函数最大的那个波峰是一个左右对称、前后对称,其在三个平面的投影分别为4 q  B% Z0 y5 x4 Y7 W) g. t! g
1.jpg , j7 |% ]/ Q. {' a  r
2.jpg
1 R5 j. d5 [1 k5 N 3.jpg $ @$ o7 C' s5 Z/ e' a# i
0 F4 C# @7 M4 w  g
       在十字收敛的两条直线分别对应图像中波峰的梯度的两个极限,一个最大值一个最小值。若换其他函数,非对称或者完全对称函数则不会出现这样的情况。5 T8 J) I3 q% J  A
可能出现的情况:  _' i( C) l; a9 m, i# `  V
非对称函数是一条无规则的路径;  P) |' P  j* g
完全对称的是一条直线。- d9 C2 f! c% A
7 B- p& X, Z7 u4 L9 W1 |% b

+ S4 \9 M5 U6 j& s! j  n# H2 A0 ?
作者: joooook    时间: 2015-10-18 19:47
角度为30 的粒子图
# r" Z3 K, x! Q

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

角度为30

角度为30


作者: 士心之约    时间: 2015-10-18 20:49
joooook 发表于 2015-10-18 19:47 4 C* C1 n' F& n+ r% g' ]
角度为30 的粒子图
5 y; H* e( o6 v# l9 r1 ]
这是十字?
! n6 J' J! u( S( `0 j8 e
作者: joooook    时间: 2015-10-18 21:07
士心之约 发表于 2015-10-18 20:49
2 n1 ^% Z* Z1 D8 R* c4 p2 t& E这是十字?

1 P0 Q; i0 G7 J% u4 n+ ]  C# Z& U最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
* F& m, K! T, w
作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
& A6 F+ k) h& ]' E$ `最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的

; K( j3 V3 w( h; F2 |, E没看出来啊
4 e6 Z. \3 m& `. N/ r  n- q% G
作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
1 g0 h+ P! W6 N5 M- T最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的

8 h" \+ m2 ~' n* L$ }搞张清楚点的
0 t/ x" s3 s" q5 k4 m# i
作者: joooook    时间: 2015-10-18 22:20
清楚了点  收敛过程中 截了一张图- o" x7 g$ k. r! V0 h

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

无标题.png


作者: joooook    时间: 2015-10-19 10:00
士心之约 发表于 2015-10-18 21:34 ) k7 Y6 K" x+ K3 c, m( j5 G
没看出来啊

2 G2 l. y0 E+ c" R" t7 T9 Z新图 已发& [/ P1 |) k3 e! p2 }

作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
. H4 J: Q2 t( u新图 已发

, o7 Q2 t2 I+ w( z# X这个不是最大值的那个峰啊,两个完全不同3 u9 [+ D3 C! @8 l

作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
8 U1 A5 j; p$ [( }7 ~% I新图 已发
' ?9 A. e: R9 Z2 ?0 _% P
这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究
$ y* Q9 \3 f0 _4 [. q5 I1 l) u$ K. n
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 $ {( x. G, F7 @& k& T6 T3 n5 @/ @
新图 已发

! C; V7 k, Q1 @) c9 s1 J- V这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究  _  c9 Y8 p; s3 X3 M$ P0 f

作者: joooook    时间: 2015-10-19 11:25
士心之约 发表于 2015-10-19 10:19
# u! g  C& m/ K; X- K' O0 C! y' \这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究

' J8 `( p& Z2 T$ A$ _; c恩   旋转30度以后的。。  哎 我再看看. N) k: |* Y- t: S5 }* r& o: l

作者: 士心之约    时间: 2015-10-19 11:26
joooook 发表于 2015-10-19 11:25
+ k+ ?4 w' T8 G恩   旋转30度以后的。。  哎 我再看看

; {: v# S. M" z% j0 v你换个函数试试卅: @' H, H; k+ l* C; z0 Z7 L, z





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