电竞比分网-中国电竞赛事及体育赛事平台

分享

粒子群算法講解

 taotao_2016 2020-04-21

一、基于粒子群算法的尋優(yōu)

數(shù)學(xué)物理中的很多問題歸結(jié)為解非線性方程。

解決方程求根的傳統(tǒng)方法:

牛頓法弦割法拋物線法牛頓下山法

傳統(tǒng)方法的缺點(diǎn):收斂性和結(jié)果與初始值的選取有較大關(guān)系,依賴于背景知識(shí),算法缺少通用性。

歷史: 1995年,Kennedy等以鳥類群體行為進(jìn)行建模仿真的思想啟發(fā),提出了粒子群優(yōu)化(Particle Swarm Optimization,PSO)算法。

算法優(yōu)點(diǎn):

群體智能內(nèi)在并行性迭代格式簡(jiǎn)單可快速收斂到最優(yōu)解所在區(qū)域

應(yīng)用:

函數(shù)優(yōu)化神經(jīng)網(wǎng)絡(luò)訓(xùn)練模糊控制系統(tǒng)

1.1基本粒子群算法

PSO基于群體的隨機(jī)優(yōu)化,通過一組隨機(jī)解初始化,通過迭代搜尋最優(yōu)解。PSO模擬社會(huì)。每個(gè)可能產(chǎn)生的解表述成群里的一個(gè)微粒,每個(gè)微粒有自己的位置向量和速度向量,以及一個(gè)由目標(biāo)函數(shù)決定的適應(yīng)度。所有微粒在搜索空間中以一定速度飛行,通過追隨當(dāng)前搜索到的最優(yōu)值來尋找全局最優(yōu)值。

PSO模擬社會(huì)采用以下三條簡(jiǎn)單規(guī)則對(duì)粒子個(gè)體:

1. 飛離最近的個(gè)體,以免碰撞2. 飛向目標(biāo)3. 飛向群體的中心

反應(yīng)群體行為:鳥類被吸引飛向棲息地。在仿真開始,每只鳥均無(wú)特定的目標(biāo)進(jìn)行飛行,直到有一只鳥飛到棲息地,當(dāng)設(shè)置的期望棲息比期望留在鳥群中具有較大的適應(yīng)性時(shí),每只鳥都離開群體而飛向棲息地,隨后就自然形成了鳥群。

數(shù)學(xué)模型:設(shè)在S維目標(biāo)搜索空間,有m個(gè)粒子組成一個(gè)群體,其中第i個(gè)粒子表示為一個(gè)S維向量

將Xi代入目標(biāo)函數(shù)就可以算出其適應(yīng)度。根據(jù)適應(yīng)度大小衡量解的優(yōu)劣。第i個(gè)粒子的飛翔速度是S維向量,記為

記第i個(gè)粒子至今搜索到的最優(yōu)位置為

整個(gè)粒子群至今搜索到的最優(yōu)位置為

f(x)是最小化的目標(biāo)函數(shù),則微粒i的當(dāng)前最好位置由下式確定:

Kennedy用下列公式對(duì)粒子進(jìn)行操作

其中:

學(xué)習(xí)因子 和 為非負(fù)常數(shù)。 和 為相互獨(dú)立的偽隨機(jī)數(shù),服從 上的均勻分布。 為常數(shù)

從以上進(jìn)化方程可見,c1調(diào)節(jié)粒子向自身最好位置方向的步長(zhǎng),c2調(diào)節(jié)粒子向全局最好位置方向的步長(zhǎng)。Vis用來降低進(jìn)化過程中粒子離開搜索空間的可能,一般設(shè)定

Y.Shi對(duì)上式修改:

式中,動(dòng)力常數(shù)w為非負(fù)數(shù),控制前一速度對(duì)當(dāng)速度的影響。w大時(shí),前一速度影響大,全局搜索能力較強(qiáng);w較小時(shí),前一速度影響較小,局部搜索能力較強(qiáng)。通過調(diào)整w大小跳出局部極小值。

終止條件根據(jù)具體問題取最大迭代次數(shù)或粒子群搜索到的最優(yōu)位置滿足的預(yù)定最小閾值。

初始化過程:

1. 設(shè)定群體規(guī)模m。2. 對(duì)任意i、s,在[-Xmax,Xmax]內(nèi)服從均勻分布產(chǎn)生Xis;3. 對(duì)任意的i、s,在[-Vmax,Vmax]內(nèi)服從均勻分布產(chǎn)生Vis;4. 對(duì)任意的i,設(shè)Yi=Xi。

PSO算法步驟如下:

1. 初始化一個(gè)規(guī)模為m的粒子群,設(shè)計(jì)初始位置和速度。2. 計(jì)算每個(gè)粒子的適應(yīng)度。3. 對(duì)每個(gè)粒子將其適應(yīng)度和其經(jīng)歷的最好位置Pis的適應(yīng)值進(jìn)行比較,若較好,則將其作為當(dāng)前最好

位置。4. 對(duì)每個(gè)粒子將其適應(yīng)值和全局經(jīng)歷過的最好位置Pgs的適應(yīng)度進(jìn)行比較,若較好,則將其作為當(dāng)前

的全局最好位置。5. 根據(jù)方程對(duì)粒子的速度和位置進(jìn)行更新。6. 如果滿足終止條件,則輸出解;否則返回第二步。

粒子群算法講解

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多