数学建模社区-数学中国

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

作者: joooook    时间: 2015-10-15 20:14
标题: [求助]【急!!】标准PSO 对peaks函数进行寻优时出现十字收敛
被这个问题困扰好久了,出现十字 , 而且 x,y方向的速度不同时为0,是什么原因?$ }$ s; P$ f( F, e1 H4 q/ p
十字型很有可能是因为二维的速度收敛不一致,导致的,有哪位遇到过这样的问题吗?; U4 i6 }! ?$ T$ h
" y* B: k5 i0 p% V$ k$ A* ]+ G$ E! x

# p0 G! }0 r3 g4 Y' k% b8 W2 `/ X% G, m+ @

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

十字收敛过程如图

十字收敛过程如图


作者: joooook    时间: 2015-10-15 20:15
设置 c1 c2 w 除了0.9 0.9 0.7 表现十字不明显以外, 其他都很明显  ]4 j/ J' R( y" F

作者: joooook    时间: 2015-10-15 20:16
附件里的图  粒子数 300  迭代500次
6 }; h( H0 [# z7 G" z: W# s
作者: 森之张卫东    时间: 2015-10-16 11:07
同学,把你的源代码和问题发上来,共同探讨!: q7 N/ ^% b1 H

作者: joooook    时间: 2015-10-16 11:51
森之张卫东 发表于 2015-10-16 11:07 2 ?0 [2 u) w, R4 k1 H
同学,把你的源代码和问题发上来,共同探讨!

7 l" \' K/ k5 p0 n好的  马上就发6 m! U2 b* ^# r: E# ]4 H' ^' F

作者: joooook    时间: 2015-10-16 11:53
代码 在附件
3 E& Q) Y; I/ d: K- ~% v. _
4 }, D& K8 ]$ S6 B' q8 h8 d6 n" S' ]1 Q5 z6 `6 ^5 c
问题是:  为何粒子收敛过程形态出现 十字型?
( o& a' k# L# g1 r8 u5 [7 q0 J              我发现粒子 x,y 方向的速度收敛不同时为0,为何不是同步趋于0 ?) R3 F5 w8 z+ m! ?) `6 X& ?0 O

10-16.cpp

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


作者: 士心之约    时间: 2015-10-17 18:58
个人看法:- i, d4 G# [* }2 s7 f
为什么出现十字收敛,与函数有关,楼主可以试一下其他函数是否会出现此种情况。peaks函数最大的那个波峰是一个左右对称、前后对称,其在三个平面的投影分别为/ K/ M/ E) f9 x" A
1.jpg 6 S$ ~, ]( d$ Y+ ]
2.jpg 9 h6 [- u9 Z$ J  S' {# t5 ^
3.jpg 3 Z0 _. P4 t5 z7 s+ F9 M
6 ^8 `. \' i8 s- `1 X$ T+ n! @( f" o
       在十字收敛的两条直线分别对应图像中波峰的梯度的两个极限,一个最大值一个最小值。若换其他函数,非对称或者完全对称函数则不会出现这样的情况。% Q- v) }* M2 N7 h3 b' {3 g. i/ p
可能出现的情况:7 O% B' c! Z2 X3 `/ j! f
非对称函数是一条无规则的路径;
9 w( w4 C' }0 |/ m" \7 V完全对称的是一条直线。
; ^0 u" q& A6 D) T1 C; D: u7 |; R) |9 e8 h" \

5 s6 D9 p! l6 J& d/ N; d" x5 j2 ^! ]
作者: joooook    时间: 2015-10-18 19:47
角度为30 的粒子图# D8 D# e, G! f( z0 y; s

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

角度为30

角度为30


作者: 士心之约    时间: 2015-10-18 20:49
joooook 发表于 2015-10-18 19:47 ' a+ f( T* y* ]7 x9 J* k
角度为30 的粒子图
' n2 {$ ~4 ?, ^- h
这是十字?' Q2 Z+ S6 B2 N3 t- j

作者: joooook    时间: 2015-10-18 21:07
士心之约 发表于 2015-10-18 20:49 ; D; n* y) L$ C7 g/ {
这是十字?
# l9 O( n  O3 K/ D+ u9 ]
最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
1 k' s. n+ G  ]% p: V( V
作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
/ @  B9 P/ Z. q最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
( \1 M" @) A1 j4 q$ {5 A7 R
没看出来啊8 F; M( s5 F( j- ]9 v4 u, o

作者: 士心之约    时间: 2015-10-18 21:34
joooook 发表于 2015-10-18 21:07
: w/ M2 J1 k, z2 ?7 j* A最终汇集到左边那个点   粒子横向纵向趋近 还挺明显的
1 l3 j* R) J. O
搞张清楚点的
/ }2 h! b6 B6 P2 L8 F9 ~
作者: joooook    时间: 2015-10-18 22:20
清楚了点  收敛过程中 截了一张图) v; W" K4 G* T$ [; o

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

无标题.png


作者: joooook    时间: 2015-10-19 10:00
士心之约 发表于 2015-10-18 21:34 - X- O+ D3 A: W! g
没看出来啊
$ A0 V; K, O( S2 H4 d. s" P" W6 e* x
新图 已发
" d. Y* R3 N# H# \; N
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00 . D- j/ }( i- e( S3 _0 l
新图 已发

/ j# f$ h3 q2 A, j9 o6 k3 b这个不是最大值的那个峰啊,两个完全不同
0 m! u/ n1 u  ?
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
; f. G/ B- |4 a/ E6 e0 y) f新图 已发

& s- c9 c" [# w" K( X% o这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究
# _; N" I, E& x1 N* o, |& t+ }
作者: 士心之约    时间: 2015-10-19 10:19
joooook 发表于 2015-10-19 10:00
3 s* @8 _& A2 H8 o3 H$ L1 a新图 已发

+ x- Z% t0 ]2 W+ V- T这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究" y( S% W) J3 {! _$ t

作者: joooook    时间: 2015-10-19 11:25
士心之约 发表于 2015-10-19 10:19
! u- e  ~. `1 b; P: `9 w! y$ M这个不是最大值的那个峰啊,两个完全不同,而且那个峰是否对称我并没有研究
/ Z( W& j. e% t  ^4 l
恩   旋转30度以后的。。  哎 我再看看4 J! w4 |( u& t9 {' O

作者: 士心之约    时间: 2015-10-19 11:26
joooook 发表于 2015-10-19 11:25
+ A, g' {  Z! g$ Q, x恩   旋转30度以后的。。  哎 我再看看
6 T0 _* y# c: _1 }
你换个函数试试卅8 m4 ?. S/ A! ^8 L% o" z7 l





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