智能算法PSO的图例分析
**
粒子群算法(PSO)
**
一.粒子群算法(PSO)是一種基于群體的隨機優(yōu)化技術(shù); 初始化為一組隨機解,通過迭代搜尋最優(yōu)解。
*PSO算法流程如圖所示(此圖是從PPT做好,復(fù)制過來的,有些模糊)*二.PSO模擬社會的三條規(guī)則:
①飛離最近的個體,以避免碰撞
②飛向目標(biāo)(認(rèn)知行為)——Pbest
③飛向群體的中心(社會行為)——Gbest
三.迭代公式:
舉一個粒子。。。在一維中,利用MATLAB中自帶的函數(shù)求極值
注:fmincon(有約束的非線性最小化) fminbnd(有邊界的標(biāo)量非線性最小化) GlobalSearch(全局搜索)
左圖為用fminbnd函數(shù)求解情況;右圖為用GlobalSearch 在[0,20]內(nèi)求解情況。
由右圖所示結(jié)果可以看出,采用fmincon進行有約束的非線性最小化求解,容易進入局部最優(yōu)解;fminbnd在進行非線性最小化求解也容易掉進局部最優(yōu),導(dǎo)致在非連續(xù)函數(shù)下,使得求解結(jié)果不收斂。GlobalSearch在[0,20]內(nèi)進行非線性最小化求解能夠很精確地尋最優(yōu)值。
但是由于基本的粒子群算法不滿足
因此它不是全局收斂。
對于一些較為復(fù)雜的二維,高維函數(shù),它們具有廣泛的搜索空間,也存在很多局部最優(yōu)解(極小值點),因此我們用PSO算法較難找到全局最優(yōu)值。
因此,我們需要對基本粒子群算法進行改進, 以達到更快的收斂速度及盡量跳出局部最優(yōu)的陷阱, 從而達到全局最優(yōu)。(圖見下·面可知)
PSO算法是一種很基礎(chǔ)的全局搜索算法,可以很好的達到搜索最小值的效果;但是由于算法原理的一些缺陷,也存在一些問題,對PSO算法的改進方法,在下次博客中再分享。
基本粒子群算法(PSO)的改進:https://editor.csdn.net/md/?articleId=86703801
粒子群算法參數(shù)w的改進:https://editor.csdn.net/md/?articleId=86634811
更新于 2020.04.25
謝謝大家!!!
總結(jié)
以上是生活随笔為你收集整理的智能算法PSO的图例分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 粒子群算法参数w的改进
- 下一篇: 基本粒子群算法(PSO)的改进