1.一種矢量高斯學(xué)習(xí)的粒子群優(yōu)化方法,其特征在于,包括如下內(nèi)容:
矢量高斯學(xué)習(xí)策略
定義1高斯解(Gaussian Solution,GS),在M維搜索空間中的一個(gè)點(diǎn)Xi=(xi1,xi2,…,xiM),其對(duì)應(yīng)的高斯解可定義如下:
其中,為第i個(gè)個(gè)體第j維經(jīng)高斯學(xué)習(xí)后的新位置,xij為第i個(gè)個(gè)體第j維的原有位置,Gauss_random(μ,σ2)為高斯隨機(jī)數(shù)函數(shù),μ和σ2分別為高斯隨機(jī)函數(shù)的均值和方差;
定義2矢量高斯解(Vector Gaussian Solution,VGS),在M維搜索空間中的精英粒子gBest,其對(duì)應(yīng)的矢量高斯解gBest*,可定義如下:
num=Int((1.0-i*1.0/iterNum)*M)+1 (4)
m=rand()%M (5)
其中,M為粒子總維度數(shù);i和iterNum分別表示當(dāng)前迭代次數(shù)和最大迭代次數(shù);num為進(jìn)行矢量高斯學(xué)習(xí)的維度空間大小,隨著迭代次數(shù)的增加,學(xué)習(xí)的維度空間越來越小,直至變成1維;Int()是取整函數(shù);m(0≤m<M-1)為一隨機(jī)整數(shù),表示選擇的是M維中的第m維,且同一次更新選擇的所有num個(gè)維度均不同;Gauss_random(μ,σ2)為高斯隨機(jī)數(shù)函數(shù);gBestm為精英粒子第m維的位置信息;
在矢量高斯學(xué)習(xí)策略中,為平衡粒子的全局探測(cè)能力與局部開發(fā)能力,需對(duì)矢量高斯學(xué)習(xí)的方差進(jìn)行動(dòng)態(tài)調(diào)整,進(jìn)化前期σ2較大,粒子的搜索空間大,算法的全局搜索能力強(qiáng);隨著進(jìn)化的深入,σ2越來越小,粒子的搜索空間變小,算法的局部開發(fā)能力強(qiáng);其方差調(diào)整策略定義如下:
設(shè)在某一次迭代過程中,矢量高斯學(xué)習(xí)策略選擇的維度空間大小為num(1≤num≤M),選擇的維度數(shù)值分別是j1,j2,…,jnum,其中1≤j1且jnum≤M,則
σ2=gBestmin*r3 (8)
其中:min()函數(shù)為最小值選取函數(shù),r3為[0,0.5]之間的隨機(jī)數(shù);
同時(shí),根據(jù)算法所處的進(jìn)化狀態(tài)對(duì)算法的慣性權(quán)重w作了相應(yīng)改進(jìn):若算法陷入“早熟”狀態(tài),將w設(shè)置為隨算法迭代次數(shù)的增加而減??;反之,將w設(shè)置為固定值;公式如下:
其中,w為慣性權(quán)重;tag為種群最優(yōu)位置連續(xù)未更新的次數(shù);limit為判斷算法陷入“早熟”狀態(tài)的閾值;
VGL-PSO算法的具體步驟如下:
1)初始化所有粒子,設(shè)置相關(guān)參數(shù);
2)計(jì)算和評(píng)價(jià)粒子適應(yīng)值;
3)判斷種群當(dāng)前的進(jìn)化狀態(tài),若tag≤limit,則視為正常狀態(tài),轉(zhuǎn)入步驟4),否則視為“早熟”狀態(tài),轉(zhuǎn)入步驟5);
4)采用固定的慣性權(quán)重,利用式(1)和(2)對(duì)粒子速度和位置進(jìn)行更新,同時(shí)更新粒子最優(yōu)位置和全局最優(yōu)位置信息;判斷全局最優(yōu)位置是否有更新,如有更新,設(shè)置tag=0,否則tag++;轉(zhuǎn)入步驟6);
5)利用式(4)、(5)、(6)、(7)和(8)對(duì)精英粒子進(jìn)行矢量高斯學(xué)習(xí);同時(shí)采用式(9)的線性下降慣性權(quán)重和式(1)和(2)對(duì)粒子進(jìn)行更新,同時(shí)更新粒子最優(yōu)位置和全局最優(yōu)位置信息;判斷全局最優(yōu)位置是否有更新,如有更新,設(shè)置tag=0,否則tag++;轉(zhuǎn)入步驟6);
6)檢驗(yàn)是否滿足終止條件,若滿足,則停止迭代,輸出全局最優(yōu)位置gBest及其對(duì)應(yīng)的適應(yīng)值,否則轉(zhuǎn)到3)。