999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于混合策略改進(jìn)的蛇優(yōu)化算法及其應(yīng)用*

2024-04-23 13:07:22梁昔明史蘭艷
關(guān)鍵詞:優(yōu)化

梁昔明,史蘭艷,龍 文

(1.北京建筑大學(xué)理學(xué)院,北京 102616;2.貴州財(cái)經(jīng)大學(xué)數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,貴州 貴陽(yáng) 550025)

1 引言

近些年,越來(lái)越多的群智能優(yōu)化算法被提出,比如樽海鞘優(yōu)化算法[1]、灰狼優(yōu)化算法[2,3]、蝴蝶優(yōu)化算法[4-6]和鯨魚優(yōu)化算法WOA(Whale Optimization Algorithm)[7-10]等。這些算法通過(guò)模擬自然界中魚群、鳥(niǎo)群、蜂群、狼群和細(xì)菌群等群體的行為,利用群體間的信息交流與合作,以簡(jiǎn)單有限的個(gè)體間互動(dòng)來(lái)搜索優(yōu)化問(wèn)題的最優(yōu)解。群智能優(yōu)化算法相較于傳統(tǒng)的優(yōu)化算法,無(wú)需計(jì)算梯度,只需在搜索空間內(nèi)不斷地進(jìn)行個(gè)體位置更新以求得最優(yōu)解,所以群智能優(yōu)化算法的適用范圍更加廣泛,已被應(yīng)用于多個(gè)領(lǐng)域。蛇優(yōu)化SO(Snake Optimization)算法是由Hashim等人[11]于2022年提出的一種模仿蛇特殊交配行為的新型群智能優(yōu)化算法。蛇優(yōu)化算法遵循蛇的交配行為:當(dāng)溫度較低且有食物時(shí)蛇進(jìn)行交配,否則蛇只會(huì)尋找食物或吃掉現(xiàn)有的食物。蛇優(yōu)化算法的搜索過(guò)程分為3個(gè)階段:探索食物階段、靠近食物階段和戰(zhàn)斗或交配階段。在探索食物階段,蛇只在當(dāng)前環(huán)境中尋找食物。靠近食物階段是指在有食物但溫度很高的情況下,蛇只會(huì)專注于吃現(xiàn)有的食物。如果食物充足而且環(huán)境寒冷,蛇進(jìn)入戰(zhàn)斗或交配階段,該階段有2種模式:戰(zhàn)斗模式或交配模式。在戰(zhàn)斗模式中,每只雄性為了得到最好的雌性而戰(zhàn)斗,而每只雌性則會(huì)努力選擇最好的雄性;在交配模式中,如果交配成功,雌性蛇就會(huì)產(chǎn)卵,孵化出新的蛇。蛇優(yōu)化算法與其他群智能優(yōu)化算法一樣也存在易陷入局部最優(yōu)的不足,本文通過(guò)引入維度選擇策略、選擇交配策略和重新分組策略來(lái)修改蛇優(yōu)化算法,提出了一種基于混合策略改進(jìn)的蛇優(yōu)化SSO(Supplant Snake Optimization)算法。

2 基本蛇優(yōu)化算法

對(duì)于無(wú)約束優(yōu)化問(wèn)題:

minf(X)

其中,f(X)是D維的目標(biāo)函數(shù),蛇優(yōu)化算法包含如下9個(gè)基本步驟,步驟中所涉及常數(shù)參數(shù)的取值均與文獻(xiàn)[11]中常數(shù)參數(shù)的取值相同。

(1)初始化種群。

與所有的元啟發(fā)式算法一樣,蛇優(yōu)化算法首先生成均勻分布的隨機(jī)種群。初始種群按式(1)產(chǎn)生:

Xi(0)=Xmin+rand×(Xmax-Xmin)

(1)

其中,Xi(0)表示第i個(gè)個(gè)體的初始位置,i=1,2,…,N,N代表種群規(guī)模,Xmin和Xmax分別表示搜索空間的下限與上限,rand表示0到1之間的隨機(jī)數(shù)。

(2)分組種群。

將種群分為雄性種群和雌性種群2組。本文假設(shè)雄性個(gè)體數(shù)量和雌性個(gè)體數(shù)量各占種群規(guī)模N的50%,雄性種群表示為:

Xm={X1(0),X2(0),…,XNm(0)}

(2)

其中,Nm=N/2表示雄性種群規(guī)模。

雌性種群表示為:

Xf={XNm+1(0),XNm+2(0),…,XN(0)}

(3)

雌性種群規(guī)模記為Nf=N-Nm。

(3)計(jì)算適應(yīng)度值。

取優(yōu)化問(wèn)題的目標(biāo)函數(shù)f(X)為適應(yīng)度函數(shù),計(jì)算種群中每個(gè)個(gè)體的適應(yīng)度值,將種群中適應(yīng)度值最小個(gè)體的位置記為食物的位置Xfood,將雄性種群中適應(yīng)度值最小個(gè)體的位置記為Xbest,m,雌性種群中適應(yīng)度值最小個(gè)體的位置記為Xbest,f。

(4)計(jì)算溫度與食物數(shù)量。

蛇交配行為受溫度和食物數(shù)量的影響,蛇優(yōu)化算法要根據(jù)當(dāng)前迭代的溫度和食物數(shù)量來(lái)確定種群中每個(gè)個(gè)體的行為。當(dāng)前迭代時(shí)的溫度Temp和食物數(shù)量Q根據(jù)式(4)和式(5)計(jì)算:

(4)

(5)

其中,t表示當(dāng)前迭代次數(shù),T表示最大迭代次數(shù),c1為常數(shù),通常取0.5。

如果Q

(5)探索食物。

每條蛇個(gè)體通過(guò)選擇隨機(jī)位置尋找食物,即按式(6)和式(7)來(lái)更新它們的位置:

Xi,m(t+1)=Xrand,m(t)±c2×Am×

[(Xmax-Xmin)×rand+Xmin]

(6)

Xi,f(t+1)=Xrand,f(t)±c2×Af×

[(Xmax-Xmin)×rand+Xmin]

(7)

其中,Xi,m(t)表示t次迭代第i個(gè)雄性個(gè)體的位置,Xi,f(t)表示t次迭代第i個(gè)雌性個(gè)體的位置,Xrand,f(t)與Xrand,m(t)分別表示t次迭代隨機(jī)選取的雌性和雄性個(gè)體的位置,rand是0到N/2之間的隨機(jī)整數(shù),±表示隨機(jī)生成的標(biāo)志方向算子,也被稱為多樣性因子,它提供了增加或減少位置解的可能性,從而在給定搜索空間的所有可能方向上進(jìn)行良好的掃描。c2為常數(shù),通常取0.05。Am和Af分別表示雄性個(gè)體Xi,m(t)和雌性個(gè)體Xi,f(t)尋找食物的能力,由式(8)和式(9)計(jì)算得出:

(8)

(9)

其中,frand,m、frand,f、fi,m和fi,f分別表示Xrand,m(t)、Xrand,f(t)、Xi,m(t)和Xi,f(t)的適應(yīng)度值。

(6)靠近食物。

每條蛇個(gè)體按如式(10)所示位置更新公式靠近食物:

Xi,n(t+1)=Xfood(t)±c3×

Temp×(Xfood(t)-Xi,j(t))×rand

(10)

其中,Xi,n(t)表示t次迭代第i個(gè)個(gè)體的位置,n取m或f,分別表示雄性或雌性,Xfood(t)表示t次迭代食物的位置,c3為常數(shù),通常取2。

(7)戰(zhàn)斗或交配。

在該階段,每條蛇個(gè)體根據(jù)隨機(jī)生成的概率p來(lái)選擇戰(zhàn)斗模式或交配模式進(jìn)行位置更新。

如果p>0.6,蛇個(gè)體選擇戰(zhàn)斗模式,即按式(11)和式(12)進(jìn)行位置更新:

Xi,m(t+1)=Xi,m(t)±c3×Fm×

rand×(Q×Xbest,f(t)-Xi,m(t))

(11)

Xi,f(t+1)=Xi,f(t)±c3×Ff×

rand×(Q×Xbest,m(t)-Xi,f(t))

(12)

其中,Xbest,m(t)和Xbest,f(t)分別表示t次迭代適應(yīng)度值最小雄性個(gè)體和雌性個(gè)體的位置,Fm和Ff分別表示雄性個(gè)體和雌性個(gè)體在位置Xi,m(t)和Xi,f(t)處的戰(zhàn)斗能力,由式(13)和式(14)計(jì)算得出:

(13)

(14)

其中,fbest,f和fbest,m分別表示Xbest,f(t)和Xbest,m(t)的適應(yīng)度值。

如果p≤0.6,蛇個(gè)體選擇交配模式,即按式(15)和式(16)進(jìn)行位置更新:

Xi,m(t+1)=Xi,m(t)+c3×

Mm×rand×(Q×Xi,f(t)-Xi,m(t))

(15)

Xi,f(t+1)=Xi,f(t)+c3×

Mf×rand×(Q×Xi,m(t)-Xi,f(t))

(16)

其中,Mm和Mf分別表示雄性個(gè)體和雌性個(gè)體在位置Xi,m(t)和Xi,f(t)處的交配能力,由式(17)和式(18)計(jì)算得出:

(17)

(18)

根據(jù)隨機(jī)數(shù)egg∈{-1,1}判斷交配是否成功,如果egg=1,則交配成功,對(duì)適應(yīng)度值最大的雄性個(gè)體Xworst,m(t)和雌性個(gè)體Xworst,f(t)按式(19)和式(20)進(jìn)行位置更新:

Xworst,m(t+1)=Xmin+rand×(Xmax-Xmin)

(19)

Xworst,f(t+1)=Xmin+rand×(Xmax-Xmin)

(20)

(8)選擇個(gè)體。

比較每個(gè)個(gè)體位置更新前后的適應(yīng)度值,選擇適應(yīng)度值小的位置進(jìn)入下一次迭代。

(9)檢查終止條件。

判定迭代次數(shù)是否達(dá)到指定的最大迭代次數(shù),如果達(dá)到,則終止迭代,輸出Xfood以及ffood;否則,根據(jù)個(gè)體適應(yīng)度值重新確定Xfood,Xbest,m(t)以及Xbest,f(t),返回步驟(4)繼續(xù)迭代。

基本蛇優(yōu)化算法的偽代碼如算法1所示。

算法1 蛇優(yōu)化算法輸入:最大迭代次數(shù)T,種群規(guī)模N,搜索空間上下限Xmax、Xmin。輸出:輸出食物位置Xfood及其適應(yīng)度值ffood。步驟1 令t=0;步驟2 利用式(1)生成初始化種群X;步驟3 利用式(2)和式(3)將種群X分為雄性種群Xm和雌性種群Xf;步驟4 計(jì)算個(gè)體的適應(yīng)度值;步驟5 while t0.6步驟14 根據(jù)式(11)和式(12)進(jìn)行位置更新;步驟15 else步驟16 根據(jù)式(15)和式(16)進(jìn)行位置更新;步驟17 生成隨機(jī)數(shù)egg∈{-1,1};步驟18 if egg=1步驟19 根據(jù)式(19)和式(20)更新最差雄性個(gè)體和最差雌性個(gè)體的位置;步驟20 end if步驟21 end if步驟22 end if步驟23 end if步驟24 比較個(gè)體位置更新前后的適應(yīng)度值,保留適應(yīng)度值小的個(gè)體位置組成新的種群;步驟25 確定新種群中食物位置Xfood及其適應(yīng)度值ffood;步驟26 令t=t+1;步驟27 end while

3 基于混合策略改進(jìn)的蛇優(yōu)化算法

基本蛇優(yōu)化算法在迭代后期會(huì)出現(xiàn)勘探能力減弱、個(gè)體位置停滯等現(xiàn)象,算法會(huì)過(guò)早收斂或陷入局部最優(yōu)。本文引入維度選擇策略、選擇交配策略和重新分組策略來(lái)修改基本蛇優(yōu)化算法,提出一種基于混合策略改進(jìn)的蛇優(yōu)化算法,記為SSO。

3.1 維度選擇策略

在基本蛇優(yōu)化算法中,當(dāng)食物數(shù)量與溫度滿足蛇交配所需要的條件時(shí),每條蛇個(gè)體就會(huì)進(jìn)入戰(zhàn)斗或交配階段以戰(zhàn)斗模式或交配模式進(jìn)行位置更新。通過(guò)大量的數(shù)值實(shí)驗(yàn)觀察發(fā)現(xiàn),基本蛇優(yōu)化算法在該階段位置更新產(chǎn)生的新個(gè)體在進(jìn)行選擇個(gè)體時(shí)幾乎都會(huì)被淘汰,即前后2次迭代的個(gè)體位置幾乎相同,出現(xiàn)個(gè)體位置停滯現(xiàn)象。

圖1以單峰測(cè)試問(wèn)題F3為例列出當(dāng)種群規(guī)模N=30、問(wèn)題維度D=2、最大迭代次數(shù)T=500時(shí)基本蛇優(yōu)化算法迭代250、350、500次個(gè)體位置分布情況,橫坐標(biāo)X(i,1)表示第i個(gè)個(gè)體第1維的位置,縱坐標(biāo)X(i,2)表示第i個(gè)個(gè)體第2維的位置。從圖1可以看出基本蛇優(yōu)化算法在戰(zhàn)斗或交配階段個(gè)體位置幾乎沒(méi)有變化,出現(xiàn)個(gè)體位置停滯現(xiàn)象,以致于蛇優(yōu)化算法在迭代后期搜索性能下降。為了克服個(gè)體位置停滯現(xiàn)象,本文在該階段引入維度選擇策略。

Figure 1 Population distributions of standard unconstrained optimization problems F3 obtained by the SO

維度選擇策略是指每個(gè)個(gè)體在不同維度上各生成不同的隨機(jī)概率p(j)(j代表維度),由概率p(j)決定該個(gè)體在該維度的位置更新模式,每個(gè)維度的概率p(j)是獨(dú)立的[12]。基本蛇優(yōu)化算法在戰(zhàn)斗或交配階段中每條蛇個(gè)體在不同維度的位置更新模式都是相同的;引入維度選擇策略,每個(gè)個(gè)體在不同維度的位置更新模式可能不同,該策略能有效避免迭代后期個(gè)體位置停滯現(xiàn)象的發(fā)生。

戰(zhàn)斗或交配階段引入維度選擇策略位置更新公式如式(21)和式(22)所示:

(21)

(22)

3.2 選擇交配策略

蛇優(yōu)化算法在戰(zhàn)斗或交配階段進(jìn)行局部搜索,蛇個(gè)體逐漸靠近當(dāng)前最優(yōu)雄性個(gè)體或雌性個(gè)體,算法在該階段探索能力較弱,易陷入局部最優(yōu)。為了提高蛇優(yōu)化算法在戰(zhàn)斗或交配階段的探索能力,本文在該階段引入選擇交配策略。

選擇交配策略是在戰(zhàn)斗或交配階段先根據(jù)適應(yīng)度值的大小分別從雄性種群和雌性種群中選出適應(yīng)度值小的Nm/2個(gè)和Nf/2個(gè)蛇個(gè)體,然后利用式(21)和式(22)分別更新所選出的蛇個(gè)體的位置,剩余雄性個(gè)體和雌性個(gè)體則利用探索食物階段的位置更新式(6)和式(7)進(jìn)行位置更新。因?yàn)樯邇?yōu)化算法在探索食物階段的勘探能力強(qiáng),在戰(zhàn)斗或交配階段選擇適應(yīng)度值大的部分雄性個(gè)體和雌性個(gè)體利用探索食物階段的位置更新公式進(jìn)行位置更新可有效增強(qiáng)蛇優(yōu)化算法迭代后期的勘探能力。

3.3 重新分組策略

為了增加種群個(gè)體的多樣性,提高算法尋優(yōu)能力,本文引入重新分組策略,即對(duì)種群每迭代10次后重新進(jìn)行分組,將整個(gè)種群隨機(jī)打亂并重新分成雄性種群和雌性種群。

3.4 改進(jìn)蛇優(yōu)化算法的迭代步驟

本文在蛇優(yōu)化算法中引進(jìn)上述3種改進(jìn)策略,得到基于混合策略改進(jìn)的蛇優(yōu)化SSO算法,其迭代步驟如下:

步驟1:初始化最大迭代次數(shù)T與種群規(guī)模N,令t=0;

步驟2:按式(1)產(chǎn)生初始化種群;

步驟3:按式(2)和式(3)分組種群;

步驟4:根據(jù)適應(yīng)度函數(shù)f(X)計(jì)算個(gè)體適應(yīng)度值;

步驟5:按式(4)和式(5)計(jì)算溫度Temp和食物數(shù)量Q;

步驟6:如果Q<0.25,進(jìn)入步驟7;否則,進(jìn)入步驟8;

步驟7:每條蛇個(gè)體按式(6)和式(7)更新它們的位置,轉(zhuǎn)步驟11;

步驟8:如果Temp≥0.6,進(jìn)入步驟9;否則,進(jìn)入步驟10;

步驟9:每條蛇個(gè)體按式(10)更新位置,轉(zhuǎn)步驟11;

步驟10:根據(jù)適應(yīng)度值分別從雄性種群和雌性種群中選出適應(yīng)度值小的Nm/2個(gè)和Nf/2個(gè)蛇個(gè)體,然后利用式(21)和式(22)分別更新所選出的蛇個(gè)體的位置,剩余雄性個(gè)體和雌性個(gè)體則利用探索食物階段的位置更新式(6)和式(7)進(jìn)行位置更新,轉(zhuǎn)步驟11;

步驟11:比較個(gè)體位置更新前后的適應(yīng)度值,保留適應(yīng)度值小的個(gè)體位置,更新Xfood、Xbest,m以及Xbest,f,并令t=t+1;

步驟12:判定t≥T是否成立,若是,則終止迭代,輸出Xfood以及ffood;若否,進(jìn)入步驟13;

步驟13:判斷t是否為10的倍數(shù),若是,將種群隨機(jī)打亂,按式(2)和式(3)重新進(jìn)行分組并返回步驟5;若否,直接返回步驟5。

4 數(shù)值實(shí)驗(yàn)

4.1 標(biāo)準(zhǔn)測(cè)試問(wèn)題和數(shù)值結(jié)果對(duì)比

為了評(píng)估改進(jìn)蛇優(yōu)化SSO算法的有效性,本文使用文獻(xiàn)[13]中的30個(gè)無(wú)約束標(biāo)準(zhǔn)測(cè)試問(wèn)題進(jìn)行測(cè)試。這30個(gè)問(wèn)題涵蓋4種類型的目標(biāo)函數(shù):單峰函數(shù)、多峰函數(shù)、混合函數(shù)和復(fù)合函數(shù)。

表1描述了每個(gè)標(biāo)準(zhǔn)測(cè)試問(wèn)題的目標(biāo)函數(shù)類型、名稱及其理論最優(yōu)值。

Table 1 Objective function information for standard test problems

選取的對(duì)比算法有鯨魚優(yōu)化算法WOA[7]、基本蛇優(yōu)化SO算法[11]、Moth-Flame優(yōu)化MFO(Moth Flame Optimization)算法[14],哈里斯鷹優(yōu)化HHO(Harris Hawk Optimization)算法[15],熱交換優(yōu)化TEO(Thermal Exchange Optimization)算法[16,17]以及蚱蜢優(yōu)化算法GOA(Grasshopper Optimization Algorithm)[18]。

數(shù)值實(shí)驗(yàn)中,初始參數(shù)設(shè)置與文獻(xiàn)[11]的表1中初始參數(shù)設(shè)置相同,即設(shè)置SSO算法的最大迭代次數(shù)為500,種群規(guī)模為30,標(biāo)準(zhǔn)測(cè)試問(wèn)題目標(biāo)函數(shù)的維度均設(shè)為30維。為避免偶然性,SSO算法對(duì)每一個(gè)問(wèn)題進(jìn)行30次獨(dú)立求解,并取30次求解所得問(wèn)題的目標(biāo)函數(shù)值的最好值、最差值、平均值和標(biāo)準(zhǔn)差,結(jié)果如表2所示,對(duì)比算法的相關(guān)數(shù)據(jù)參見(jiàn)文獻(xiàn)[11]中表4。

Table 2 Results of objective function values of 30 standard test problems by SSO algorithm

由表2數(shù)據(jù)和文獻(xiàn)[11]中表4數(shù)據(jù)對(duì)比可知,基于混合策略改進(jìn)的蛇優(yōu)化SSO算法對(duì)18個(gè)標(biāo)準(zhǔn)測(cè)試問(wèn)題(F1、F2、F4~F6、F8、F9、F11~F13、F15、F17、F19、F21、F23~F25、F29)求解所得目標(biāo)函數(shù)值的平均值、最好值、最差值和標(biāo)準(zhǔn)差都好于6種對(duì)比算法。對(duì)比7種算法所得平均目標(biāo)函數(shù)值,SSO算法對(duì)25個(gè)問(wèn)題(F1、F2、F4~F9、F11~F17、F19~F21、F23~F26、F28~F30)所得結(jié)果最小,對(duì)1個(gè)問(wèn)題(F18)所得結(jié)果次小,對(duì)3個(gè)問(wèn)題(F3、F22、F27)所得結(jié)果第三小。從7種算法所得目標(biāo)函數(shù)值的標(biāo)準(zhǔn)差來(lái)看,SSO算法對(duì)21個(gè)問(wèn)題(F1、F2、F4~F6、F8、F9、F11~F13、F15、F17、F19、F21、F23~F27、F29、F30)所得結(jié)果最小,對(duì)5個(gè)問(wèn)題(F7、F14、F16、F20、F28)所得結(jié)果次小,對(duì)1個(gè)問(wèn)題(F18)所得結(jié)果第三小。對(duì)比7種算法所得最小目標(biāo)函數(shù)值,SSO算法對(duì)24個(gè)問(wèn)題(F1、F2、F4~F6、F8~F17、F19~F25、F28、F29)所得結(jié)果最小,對(duì)5個(gè)問(wèn)題(F3、F7、F18、F26、F30)所得結(jié)果次小,對(duì)1個(gè)問(wèn)題(F27)所得結(jié)果第三小。基于混合策略改進(jìn)的蛇優(yōu)化SSO算法對(duì)比于基本蛇優(yōu)化SO算法,有20個(gè)問(wèn)題(F1、F2、F4~F6、F8、F9、F11~F15、F17、F19、F21、F23~F25、F28、F29)的目標(biāo)函數(shù)值的平均值、最好值、最差值和標(biāo)準(zhǔn)差都更小,其中對(duì)問(wèn)題F1、F2、F9、F12、F13所得目標(biāo)函數(shù)值的平均值、最好值、最差值和標(biāo)準(zhǔn)差明顯小于SO算法所得結(jié)果;對(duì)問(wèn)題F1、F2、F9、F12~F15、F17、F19、F26、F29、F30所得目標(biāo)函數(shù)值的平均值明顯小于SO算法的相應(yīng)結(jié)果;對(duì)問(wèn)題F1、F2、F5、F9、F11~F15、F19、F26、F30所得目標(biāo)函數(shù)值的標(biāo)準(zhǔn)差明顯小于SO算法所得結(jié)果;對(duì)問(wèn)題F1~F3、F9、F10、F12~F15所得目標(biāo)函數(shù)值的最好值明顯小于SO算法的相應(yīng)結(jié)果。對(duì)于問(wèn)題F3、F7、F16、F20、F26、F27、F30,SSO算法與SO算法所得目標(biāo)函數(shù)值結(jié)果相近。對(duì)于問(wèn)題F7、F16、F20、F26、F30,SSO算法所得目標(biāo)函數(shù)值結(jié)果略大于SO算法的相應(yīng)結(jié)果,但小于其他5種算法的相應(yīng)結(jié)果。SSO算法所得問(wèn)題F18的目標(biāo)函數(shù)值結(jié)果大于SO算法的相應(yīng)結(jié)果,但小于其他5種算法的相應(yīng)結(jié)果。對(duì)于問(wèn)題F10和F22,SSO算法所得目標(biāo)函數(shù)值結(jié)果不如其他算法的相應(yīng)結(jié)果好。綜上,利用基于混合策略改進(jìn)的蛇優(yōu)化SSO算法求解30個(gè)標(biāo)準(zhǔn)無(wú)約束優(yōu)化問(wèn)題的結(jié)果大部分都優(yōu)于對(duì)比的算法。

圖2~圖5給出了不同函數(shù)類型部分標(biāo)準(zhǔn)測(cè)試問(wèn)題的收斂曲線,包括標(biāo)準(zhǔn)測(cè)試問(wèn)題F1、F3、F6、F9、F12、F15、F21、F28。通過(guò)觀察圖2~圖5以及文獻(xiàn)[11]中圖5~圖7對(duì)應(yīng)標(biāo)準(zhǔn)測(cè)試問(wèn)題的收斂曲線可知,相比于SO算法等6種對(duì)比算法,SSO算法求解大部分標(biāo)準(zhǔn)測(cè)試問(wèn)題具有更快的收斂速度和更高的收斂精度。

Figure 2 Convergence curves of standard unconstrained optimization problems F1 and F3 by SSO and SO algorithms

Figure 3 Convergence curves of standard unconstrained optimization problems F6 and F9 by SSO and SO algorithms

Figure 4 Convergence curves of standard unconstrained optimization problems F12 and F15 by SSO and SO algorithms

Figure 5 Convergence curves of standard unconstrained optimization problems F21 and F28 by SSO and SO algorithms

4.2 伸縮性檢驗(yàn)

為了比較SSO算法與SO算法對(duì)于不同維度問(wèn)題的求解能力,將問(wèn)題F1~F30的維度分別設(shè)置為30,50,100,利用2種算法分別對(duì)它們進(jìn)行求解。2種算法的種群規(guī)模N均設(shè)置為30,最大迭代次數(shù)T均設(shè)置為500。為避免偶然性,2種算法對(duì)不同維度的每個(gè)問(wèn)題分別獨(dú)立求解30次,取30次獨(dú)立求解所得目標(biāo)函數(shù)值的最好值、最差值、平均值及標(biāo)準(zhǔn)差進(jìn)行對(duì)比,相關(guān)數(shù)值結(jié)果如表3所示。

Table 3 Results of standard test problems with different dimensions by SSO and SO algorithms

從表3可以看出,對(duì)于問(wèn)題F1、F2、F4、F6、F8、F12、F13、F19、F23~F28、F30,當(dāng)維度分別為30,50及100時(shí),SSO算法所得目標(biāo)函數(shù)值都好于SO算法的相應(yīng)結(jié)果。對(duì)于問(wèn)題F1、F2,問(wèn)題維度越高,算法所求得的目標(biāo)函數(shù)值與理論最優(yōu)值相差越明顯,但SSO算法所得目標(biāo)函數(shù)值明顯好于SO算法的相應(yīng)結(jié)果。對(duì)于問(wèn)題F7、F14、F18、F29,當(dāng)維度是30維時(shí),SSO算法所得目標(biāo)函數(shù)值差于SO算法的相應(yīng)結(jié)果,但隨著問(wèn)題維度增加,SSO算法所得目標(biāo)函數(shù)值好于SO算法的相應(yīng)結(jié)果。對(duì)于問(wèn)題F15、F17、F20,當(dāng)問(wèn)題維度為30時(shí),SSO算法所得目標(biāo)函數(shù)值好于SO算法的相應(yīng)結(jié)果,但隨著問(wèn)題維度的增加,SSO算法所得目標(biāo)函數(shù)值略差于SO算法的相應(yīng)結(jié)果。綜上,相比SO算法,SSO算法在求解大部分高維問(wèn)題上占有優(yōu)勢(shì)。

4.3 Wilcoxon秩和非參數(shù)檢驗(yàn)

為了從統(tǒng)計(jì)學(xué)上比較基于混合策略改進(jìn)的蛇優(yōu)化SSO算法與基本蛇優(yōu)化SO算法有無(wú)明顯差異,本節(jié)設(shè)置2種算法的最大迭代次數(shù)均為500,種群規(guī)模均為30,問(wèn)題的維度均為30維,使用Wilcoxon秩和[19]進(jìn)行了非參數(shù)檢驗(yàn),通過(guò)計(jì)算p-value的大小判斷2種算法的差異是否明顯。p-value的值越小,說(shuō)明2種算法的差別越明顯;若p-value大于0.05,則說(shuō)明2種算法性能基本相同,不存在明顯差異。計(jì)算所得的p-value數(shù)值如表4所示,其中“+”表示SSO算法的性能優(yōu)于SO算法,“-”表示SSO算法的性能劣于SO算法,“N/A”表示2種算法的性能差異不明顯。

Table 4 Results of Wilcoxon rank sum test

從表4可以看出,有22個(gè)問(wèn)題(F1,F2、F4~F6、F8~F11、F15、F17、F19~F21、F23~F30)的p-value小于0.05,結(jié)合前面數(shù)值實(shí)驗(yàn)結(jié)果可知,22個(gè)問(wèn)題中有17個(gè)問(wèn)題(F1,F2、F4~F6、F8、F9、F11、F15、F17、F19、F21、F23~F25、F28、F29)利用SSO算法求解得到的目標(biāo)函數(shù)值明顯好于SO算法求解所得到的相應(yīng)結(jié)果。對(duì)于問(wèn)題F3、F7、F12~F14、F16、F18、F22,p-value均大于0.05,說(shuō)明2種算法在求解這些問(wèn)題時(shí)差異不明顯。問(wèn)題F26和F30的p-value都小于0.05,雖然數(shù)值實(shí)驗(yàn)結(jié)果表明利用SSO算法求解這2個(gè)問(wèn)題所得目標(biāo)函數(shù)的最好值略大于SO算法求解的相應(yīng)結(jié)果,但利用SSO算法求解這2個(gè)問(wèn)題所得目標(biāo)函數(shù)的平均值、最差值和標(biāo)準(zhǔn)差都明顯小于SO算法求解的相應(yīng)結(jié)果。問(wèn)題F10秩和檢驗(yàn)結(jié)果小于0.05,SSO算法求解問(wèn)題F10得到的目標(biāo)函數(shù)值不如SO算法的好,說(shuō)明SO算法在求解問(wèn)題F10時(shí)比SSO算法有優(yōu)勢(shì)。綜上,相比基本蛇優(yōu)化SO算法,基于混合策略改進(jìn)的蛇優(yōu)化SSO算法在求解大部分標(biāo)準(zhǔn)測(cè)試問(wèn)題上性能更好。

5 基于改進(jìn)蛇優(yōu)化算法的BP神經(jīng)網(wǎng)絡(luò)

5.1 基本BP神經(jīng)網(wǎng)絡(luò)

基本BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)由輸入層、隱藏層和輸出層組成,如圖6所示。

Figure 6 Basic BP neural network

圖6中xa表示輸入層輸入,bc表示隱含層輸入,yk表示輸出層輸入,vac和wck分別表示輸入層到隱藏層和隱藏層到輸出層的權(quán)重。θc和δk分別表示隱含層神經(jīng)元的閾值與輸出層神經(jīng)元閾值,a=1,2,…,d,c=1,2,…q,k=1,2,…l,d表示基本BP神經(jīng)網(wǎng)絡(luò)輸入層節(jié)點(diǎn)的個(gè)數(shù),q表示隱含層神經(jīng)元個(gè)數(shù),l表示輸出層節(jié)點(diǎn)的個(gè)數(shù)。基本BP神經(jīng)網(wǎng)絡(luò)包括信號(hào)的前向傳播和誤差的反向傳播2個(gè)過(guò)程[20,21],即計(jì)算誤差輸出時(shí)按從輸入到輸出的方向進(jìn)行,而調(diào)整權(quán)值和閾值則從輸出到輸入的方向進(jìn)行。BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)通常使用最速下降法,通過(guò)反向傳播來(lái)不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)輸出與期望輸出的均方差最小。由于BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值的隨機(jī)性導(dǎo)致了訓(xùn)練次數(shù)增加,收斂速度較慢,且容易陷入局部最優(yōu)。因此,本文將改進(jìn)蛇優(yōu)化算法與BP神經(jīng)網(wǎng)絡(luò)結(jié)合起來(lái),利用蛇優(yōu)化算法全局搜索性能強(qiáng)的優(yōu)點(diǎn)來(lái)優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值。

5.2 基于改進(jìn)蛇優(yōu)化算法的BP神經(jīng)網(wǎng)絡(luò)

以基于混合策略改進(jìn)的蛇優(yōu)化SSO算法獲得BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,然后使用BP反向傳播算法訓(xùn)練神經(jīng)網(wǎng)絡(luò),由此所得網(wǎng)絡(luò)稱為基于混合策略改進(jìn)蛇優(yōu)化算法的神經(jīng)網(wǎng)絡(luò),記為SSO-BP神經(jīng)網(wǎng)絡(luò)。

SSO-BP神經(jīng)網(wǎng)絡(luò)分為2個(gè)部分:改進(jìn)蛇優(yōu)化SSO算法優(yōu)化部分和BP神經(jīng)網(wǎng)絡(luò)部分。

改進(jìn)蛇優(yōu)化SSO算法優(yōu)化部分負(fù)責(zé)產(chǎn)生BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,它的目標(biāo)是最小化期望輸出與預(yù)測(cè)輸出的均方差,具體目標(biāo)函數(shù)表達(dá)式如下:

(23)

V=(v11,v12,…,v1q,v21,…,v2q,…,vd1,…,vdq)

(24)

W=(w11,w12,…,w1l,w21,…,w2l,…,wq1,…,wql)

(25)

θ=(θ1,θ2,…,θq),δ=(δ1,δ2,…,δl)

(26)

Bk=g(yk+δk) (k=1,2,…,l)

(27)

(28)

Ac=f(bc+θc) (c=1,2,…,q)

(29)

(30)

其中,f(x)為隱含層激活函數(shù),g(x)為輸出層激活函數(shù),Bk表示輸出層的輸出,dk表示期望輸出,V和W表示權(quán)值向量,θ和δ表示閾值向量。

BP神經(jīng)網(wǎng)絡(luò)部分是以算法SSO優(yōu)化得到的初始權(quán)值和閾值,利用訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練,直至滿足精度要求。

5.3 實(shí)驗(yàn)結(jié)果與分析

本文以紅酒數(shù)據(jù)集和鮑魚數(shù)據(jù)集為例,驗(yàn)證基于改進(jìn)蛇優(yōu)化算法的神經(jīng)網(wǎng)絡(luò)SSO-BP的性能。紅酒數(shù)據(jù)集共有178組數(shù)據(jù),每組數(shù)據(jù)由13個(gè)紅酒特征與1個(gè)紅酒所屬類別組成,紅酒所屬類別是由紅酒的13個(gè)特征所決定;鮑魚數(shù)據(jù)集共有4 178組數(shù)據(jù),每組數(shù)據(jù)由8個(gè)鮑魚特征和1個(gè)鮑魚年齡組成,鮑魚的8個(gè)特征決定鮑魚的年齡。以紅酒數(shù)據(jù)集和鮑魚數(shù)據(jù)集中前80%的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)分別訓(xùn)練SSO-BP神經(jīng)網(wǎng)絡(luò)、SO-BP神經(jīng)網(wǎng)絡(luò)、GA-BP(Genetic Algorithm-Back Propagation)神經(jīng)網(wǎng)絡(luò)以及基本BP神經(jīng)網(wǎng)絡(luò),剩余數(shù)據(jù)作為測(cè)試數(shù)據(jù)測(cè)試4種網(wǎng)絡(luò)的性能。4種網(wǎng)絡(luò)的隱含層和輸出層激活函數(shù)均使用Tansig函數(shù)和Purelin函數(shù),算法SSO、SO和GA的種群規(guī)模均為30,迭代最大次數(shù)均為500,GA的交叉概率和變異概率分別為0.4和0.05,BP網(wǎng)絡(luò)的最大訓(xùn)練次數(shù)均為200,學(xué)習(xí)率取0.1,訓(xùn)練精度為1E-5。訓(xùn)練完成后,比較4種網(wǎng)絡(luò)對(duì)測(cè)試數(shù)據(jù)預(yù)測(cè)輸出與期望輸出的均方差以驗(yàn)證各種神經(jīng)網(wǎng)絡(luò)的性能。為避免偶然性,每種神經(jīng)網(wǎng)絡(luò)各自獨(dú)立訓(xùn)練20次,并計(jì)算每次所得神經(jīng)網(wǎng)絡(luò)對(duì)測(cè)試數(shù)據(jù)預(yù)測(cè)輸出與期望輸出的均方差。取每種神經(jīng)網(wǎng)絡(luò)20次所得均方差的最好值、最差值、平均值及標(biāo)準(zhǔn)差進(jìn)行比較,結(jié)果如表5和表6所示。

Table 5 Mean square error results of four neural networks for classifying red wine dataset

Table 6 Mean square error results of four neural networks for predicting abalone dataset

由表5可知,SSO-BP神經(jīng)網(wǎng)絡(luò)對(duì)紅酒進(jìn)行分類的準(zhǔn)確性和穩(wěn)定性均比SO-BP神經(jīng)網(wǎng)絡(luò)、GA-BP神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)高。表6結(jié)果顯示,用SSO-BP神經(jīng)網(wǎng)絡(luò)和GA-BP神經(jīng)網(wǎng)絡(luò)根據(jù)鮑魚特征對(duì)鮑魚年齡預(yù)測(cè)的準(zhǔn)確性要比用SO-BP神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的準(zhǔn)確性高。綜上,相比于對(duì)比的3種神經(jīng)網(wǎng)絡(luò),基于改進(jìn)蛇優(yōu)化算法的BP神經(jīng)網(wǎng)絡(luò)SSO-BP具有更好的預(yù)測(cè)準(zhǔn)確性和穩(wěn)定性。

6 結(jié)束語(yǔ)

針對(duì)基本蛇優(yōu)化算法容易過(guò)早收斂和陷入局部最優(yōu)等不足,本文將維度選擇策略、選擇交配策略和重新分組策略引入基本蛇優(yōu)化算法中得到了基于混合策略改進(jìn)的蛇優(yōu)化SSO算法。將維度選擇策略引入基本蛇優(yōu)化算法的戰(zhàn)斗或交配階段,從而有效避免算法迭代后期出現(xiàn)個(gè)體位置停滯現(xiàn)象。選擇交配策略加強(qiáng)了迭代后期算法的探索能力,可以有效避免算法陷入局部最優(yōu)。重新分組策略增加了種群多樣性,提高了算法的尋優(yōu)能力。30個(gè)標(biāo)準(zhǔn)測(cè)試問(wèn)題的數(shù)值實(shí)驗(yàn)結(jié)果表明,與基本蛇優(yōu)化SO算法及其他對(duì)比算法相比,基于混合策略改進(jìn)的蛇優(yōu)化SSO算法所得目標(biāo)函數(shù)值與其理論最優(yōu)值相差最小;相比基本蛇優(yōu)化SO算法,SSO算法在求解高維無(wú)約束優(yōu)化問(wèn)題更具優(yōu)勢(shì)。統(tǒng)計(jì)學(xué)檢驗(yàn)的結(jié)果表明,SSO算法求解大部分標(biāo)準(zhǔn)測(cè)試問(wèn)題所得目標(biāo)函數(shù)值明顯好于SO算法所得的相應(yīng)結(jié)果。仿真實(shí)驗(yàn)表明,相比其他3種網(wǎng)絡(luò),基于改進(jìn)蛇優(yōu)化算法的BP神經(jīng)網(wǎng)絡(luò)在分類紅酒數(shù)據(jù)集和預(yù)測(cè)鮑魚年齡時(shí)準(zhǔn)確性和穩(wěn)定性更高。但是,對(duì)于一些復(fù)雜優(yōu)化問(wèn)題,基于混合策略改進(jìn)的蛇優(yōu)化SSO算法求解所得目標(biāo)函數(shù)值與理論最優(yōu)值相差還是很大,未來(lái)需要進(jìn)一步提高。

猜你喜歡
優(yōu)化
超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
PEMFC流道的多目標(biāo)優(yōu)化
能源工程(2022年1期)2022-03-29 01:06:28
民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
關(guān)于優(yōu)化消防安全告知承諾的一些思考
一道優(yōu)化題的幾何解法
由“形”啟“數(shù)”優(yōu)化運(yùn)算——以2021年解析幾何高考題為例
圍繞“地、業(yè)、人”優(yōu)化產(chǎn)業(yè)扶貧
事業(yè)單位中固定資產(chǎn)會(huì)計(jì)處理的優(yōu)化
4K HDR性能大幅度優(yōu)化 JVC DLA-X8 18 BC
幾種常見(jiàn)的負(fù)載均衡算法的優(yōu)化
電子制作(2017年20期)2017-04-26 06:57:45
主站蜘蛛池模板: 九色在线观看视频| 99国产精品国产高清一区二区| 91香蕉国产亚洲一二三区| 国产浮力第一页永久地址 | 夜夜操国产| 制服丝袜亚洲| 国产精女同一区二区三区久| 国产本道久久一区二区三区| 国产白浆在线| 亚洲人在线| 日韩国产综合精选| 欧美日韩国产精品va| 国产一级毛片网站| 午夜福利无码一区二区| 国产肉感大码AV无码| 无码免费的亚洲视频| 久久精品中文字幕免费| 黄色一级视频欧美| 日韩精品专区免费无码aⅴ| 2021亚洲精品不卡a| 潮喷在线无码白浆| 青青国产成人免费精品视频| 五月激激激综合网色播免费| 在线观看国产网址你懂的| 亚洲综合久久一本伊一区| 亚洲国产在一区二区三区| 亚洲成人77777| 久久久久国色AV免费观看性色| 国产欧美日韩另类| 一级毛片高清| 亚洲精品无码抽插日韩| 亚洲午夜天堂| 国产成人高清亚洲一区久久| 波多野结衣亚洲一区| 天堂av高清一区二区三区| 一本一道波多野结衣av黑人在线| 亚洲精品第一在线观看视频| 国产91色| 久久综合婷婷| 国产在线精彩视频论坛| 97se亚洲综合在线| 成人在线不卡视频| 国产精品自在线拍国产电影 | 嫩草国产在线| 亚洲a免费| 色屁屁一区二区三区视频国产| 丁香亚洲综合五月天婷婷| 中文字幕无码制服中字| 中文字幕 欧美日韩| 亚洲精品无码专区在线观看| 久久中文电影| 成人综合在线观看| 十八禁美女裸体网站| 在线免费看黄的网站| vvvv98国产成人综合青青| 欧美激情视频一区| 重口调教一区二区视频| 国产精品香蕉在线| 午夜精品久久久久久久99热下载| 久久久久亚洲Av片无码观看| 久久天天躁夜夜躁狠狠| 亚洲美女一区| 国产福利免费视频| 18禁黄无遮挡网站| 国产福利免费观看| 亚洲中文在线视频| 亚洲性色永久网址| a天堂视频| 日本高清免费一本在线观看 | 国产噜噜在线视频观看| 国产午夜人做人免费视频| 日韩一级毛一欧美一国产| 成人韩免费网站| 亚洲成人在线网| 四虎永久在线| 国产日韩精品欧美一区喷| 亚洲精品亚洲人成在线| 日本一区二区不卡视频| 国产熟女一级毛片| 精品视频一区二区三区在线播| 一级毛片在线播放免费| 成年免费在线观看|