趙筱斌,王未卿
(1.浙江建設(shè)職業(yè)技術(shù)學(xué)院 教育技術(shù)中心,浙江 杭州 311231;2.北京科技大學(xué) 東凌經(jīng)濟(jì)管理學(xué)院,北京 100083)
鯨魚(yú)是自然界中最大的哺乳動(dòng)物,擁有獨(dú)特的捕食方法-氣泡網(wǎng)螺旋捕食法。該方法分兩個(gè)階段:第一階段,鯨魚(yú)在水下較深位置圍繞獵物螺旋游動(dòng)生成大量氣泡;第二階段,通過(guò)循環(huán)方式完成捕食。受此啟發(fā),學(xué)者M(jìn)irjalili提出一種新型群體智能優(yōu)化算法-鯨魚(yú)優(yōu)化算法(whale optimization algorithm,WOA)[1],該算法通過(guò)鯨魚(yú)群體搜索、包圍、螺旋氣泡圍捕等過(guò)程,實(shí)現(xiàn)優(yōu)化目標(biāo)搜索。WOA算法執(zhí)行原理簡(jiǎn)單易行,依賴關(guān)鍵參數(shù)少,擁有較強(qiáng)全局搜索性能,用于函數(shù)優(yōu)化時(shí),求解精度和收斂性能要優(yōu)于粒子群、引力搜索及差分進(jìn)化等算法。該算法已經(jīng)在車間作業(yè)調(diào)度[2]、物流路徑優(yōu)化[3]、圖像分割[4]、群智感知系統(tǒng)[5]、TSP問(wèn)題[6]、特征選擇[7]等諸多領(lǐng)域得到了應(yīng)用。
然而,基本W(wǎng)OA算法依然存在搜索與開(kāi)發(fā)間難以協(xié)調(diào)、復(fù)雜高維問(wèn)題求解精度低、收斂速度慢等不足。為此,文獻(xiàn)[8]利用Logistic混沌映射優(yōu)化種群初始位置,并設(shè)計(jì)非線性自適應(yīng)權(quán)重協(xié)調(diào)種群搜索能力,提升種群多樣性。文獻(xiàn)[9]通過(guò)非線性收斂因子提升種群多樣性,利用局部擾動(dòng)避免陷入局部最優(yōu),提升尋優(yōu)精度。文獻(xiàn)[10]同樣利用混沌和非線性收斂因子的組合方式分別提升種群多樣性和平衡搜索能力。文獻(xiàn)[11]設(shè)計(jì)自適應(yīng)隨機(jī)策略的鯨魚(yú)對(duì)獵物的包圍方法,可以較好提升收斂速度和尋優(yōu)精度。文獻(xiàn)[12]提出萊維飛行的改進(jìn)鯨魚(yú)優(yōu)化算法,通過(guò)不同步長(zhǎng)飛行軌跡提升種群多樣性。文獻(xiàn)[13]引入粒子群的慣性權(quán)重思維對(duì)算法搜索能力進(jìn)行改進(jìn),提升尋優(yōu)精度。
然而,已有改進(jìn)工作雖然可以從某些方面優(yōu)化WOA的尋優(yōu)性能,但在局部開(kāi)發(fā)與全局搜索的自適應(yīng)均衡、收斂速度、跳離局部最優(yōu)上,仍有進(jìn)一步研究空間。為此,本文將提出一種改進(jìn)算法,分別引入非線性收斂因子調(diào)整、單純形法及個(gè)體記憶融合機(jī)制對(duì)傳統(tǒng)鯨魚(yú)算法的尋優(yōu)能力進(jìn)行改進(jìn)。通過(guò)國(guó)際公認(rèn)的若干基準(zhǔn)函數(shù)的尋優(yōu)測(cè)試驗(yàn)證改進(jìn)算法可以有效提升收斂速度和尋優(yōu)精度,實(shí)現(xiàn)預(yù)期效果。并用一種典型工程設(shè)計(jì)問(wèn)題對(duì)改進(jìn)算法的可應(yīng)用性進(jìn)行了驗(yàn)證。
WOA是一種新型的受自然界動(dòng)物行為啟發(fā)的元啟式算法,其主要思想是模擬大海中座頭鯨的捕食行為。座頭鯨以螺旋形式逐步靠近獵物并生成氣泡限制獵物的行動(dòng)。同其它元啟發(fā)式方法類似,WOA算法有兩個(gè)階段:開(kāi)發(fā)階段和搜索階段。開(kāi)發(fā)階段根據(jù)座頭鯨包圍獵物(代表目前為止的最優(yōu)解)并逐步向其靠近的機(jī)制模擬,可以表示為以下兩式
D=|C·X*(t)-X(t)|
(1)
X(t+1)=X*(t)-A·D
(2)
其中,X(t) 為當(dāng)前鯨魚(yú)個(gè)體的位置,X*(t) 為當(dāng)前種群中最優(yōu)解的位置(可理解為食物源的位置),t為當(dāng)前迭代,A、C為系數(shù)矢量,代表鯨魚(yú)向獵物的包圍步長(zhǎng),具體定義為
A=2a·r1-a
(3)
C=2·r2
(4)
其中,r1和r2是[0,1]間的隨機(jī)量,a為收斂因子,取值迭代式從2線性遞減至0(模擬向獵物的收縮包圍行為),表示為
a=2-2×t/max_iter
(5)
式中:max_iter為算法的最大迭代數(shù)。
下式用于模擬鯨魚(yú)向獵物靠近的螺旋式路徑
X(t+1)=X*(t)+D′·ebl·cos(2πl(wèi))
(6)
D′=|X*(t)-X(t)|
(7)
其中,D′為個(gè)體i與當(dāng)前最優(yōu)目標(biāo)的距離,b為對(duì)數(shù)螺旋形狀常量,l∈[-1,1]。 算法以50%概率選擇位置更新方式
(8)
式中:p為[0,1]間的隨機(jī)量。
為了模擬WOA算法的搜索行為,隨機(jī)選取一個(gè)搜索個(gè)體更新當(dāng)前個(gè)體位置,以替代根據(jù)目前最優(yōu)解引領(lǐng)個(gè)體位置更新,此方法可以提升算法的隨機(jī)性。該過(guò)程可表示為
D=|C·Xrand(t)-X(t)|
(9)
X(t+1)=Xrand(t)-A·D
(10)
其中,Xrand(t) 為當(dāng)前種群中隨機(jī)選取的搜索個(gè)體。
WOA算法始于一個(gè)隨機(jī)初始化的種群結(jié)構(gòu),然后通過(guò)目標(biāo)函數(shù)計(jì)算每個(gè)解的適應(yīng)度。緊接著選取最優(yōu)解,并更新相關(guān)系數(shù)因子。接下來(lái),種群內(nèi)的解根據(jù)式(2)或式(6)進(jìn)行更新,這取決于隨機(jī)概率p。該過(guò)程重復(fù)直到滿足預(yù)定義的終止條件為止。最終,算法將返回種群內(nèi)的全局最優(yōu)解。
WOA算法的搜索過(guò)程始于隨機(jī)解集合。每次迭代中,個(gè)體將根據(jù)隨機(jī)選取的搜索代理或當(dāng)前最優(yōu)個(gè)體作位置更新。收斂因子a線性從2遞減至0,提供全局搜索和局部開(kāi)發(fā)的協(xié)調(diào)能力。 |A|>1時(shí),選取隨機(jī)個(gè)體為向?qū)ё魑恢酶拢矗簜€(gè)體將擴(kuò)大搜索范圍,尋找更好的解,可視為全局搜索; |A|<1時(shí),選取當(dāng)前最優(yōu)解為向?qū)ё魑恢酶?,即:個(gè)體將在局部范圍作精細(xì)搜索,可視為局部開(kāi)發(fā)。概率p決定是進(jìn)行螺旋靠近或向目標(biāo)包圍??梢?jiàn),a決定算法的局部開(kāi)發(fā)與全局搜索之間的協(xié)調(diào)。由式(5)可知,a值呈線性遞減。即:整個(gè)過(guò)程中,全局搜索和局部開(kāi)發(fā)的遞減速率是相同的,這極大降低了鯨魚(yú)搜索個(gè)體的靈活性,使迭代早期的搜索和迭代后期的尋優(yōu)收斂失去平衡。
為此,IMSWOA引入非線性收斂因子遞減調(diào)整策略,使a值在迭代中以不同的速率進(jìn)行遞減。具體改進(jìn)公式為
(11)
式中:ainitial、afinal分別為收斂因子的初值和終值,max_iter為最大迭代數(shù),μ為調(diào)整系數(shù),μ>0。根據(jù)式(11),收斂因子將隨迭代次數(shù)呈非線性遞減,其曲線為遞減式的凸曲線形式。那么,迭代早期a較大,但遞減速率較小,可以更大步長(zhǎng)實(shí)現(xiàn)充分全局搜索。迭代后期a變小,但遞減速率變大,這樣個(gè)體可以以較小的步長(zhǎng)以更快的速度在局部范圍內(nèi)進(jìn)行精細(xì)的局部開(kāi)發(fā),可以加速算法收斂,得到最優(yōu)解。這種以不同速率遞減的收斂因子調(diào)整策略將有助于算法的局部開(kāi)發(fā)與全局搜索間的協(xié)調(diào)進(jìn)行。
單純形法(simplex method)是一種原理簡(jiǎn)單、搜索速度較快、局部搜索能力較強(qiáng)的多面體搜索算法。IMSWOA算法進(jìn)一步引入單純形法增強(qiáng)局部搜索能力,提升算法收斂速度。單純形法構(gòu)建在由若干頂點(diǎn)組成的多面體多維空間上,通過(guò)評(píng)估各頂點(diǎn)(代表鯨魚(yú)個(gè)體位置目標(biāo))適應(yīng)度,尋找最優(yōu)點(diǎn)、次優(yōu)點(diǎn)和最差點(diǎn);然后通過(guò)反射、擴(kuò)展、收縮和壓縮4種策略尋找較優(yōu)點(diǎn)以替換較差點(diǎn),以形成新多面體結(jié)構(gòu),通過(guò)若干次迭代接近全局最優(yōu)點(diǎn)。點(diǎn)搜索模型如圖1所示。
圖1 單純形法的點(diǎn)搜索模型
基于單純形式法的局部搜索過(guò)程如下:
步驟1 根據(jù)選取的基準(zhǔn)函數(shù),計(jì)算所有頂點(diǎn)(對(duì)應(yīng)種群中的鯨魚(yú)個(gè)體)的適應(yīng)度(由于基準(zhǔn)函數(shù)是最小值尋優(yōu),故適應(yīng)度值越小,位置越優(yōu)),找到適應(yīng)度最優(yōu)點(diǎn)Xg、次優(yōu)點(diǎn)Xb、最差點(diǎn)Xw,并計(jì)算中心點(diǎn)Xc為
Xc=(Xg+Xb)/2
(12)
步驟2 根據(jù)最差點(diǎn)Xw和中心點(diǎn)Xc的位置,進(jìn)行反射操作,反射點(diǎn)Xr為
Xr=Xc+α×(Xc-Xw)
(13)
式中:α為反射因子,取值1。
步驟3 若f(Xr) Xe=Xc+γ×(Xr-Xc) (14) 式中:γ為擴(kuò)展因子,取值2。若f(Xe) 步驟4 若f(Xr)>f(Xg), 說(shuō)明反射方向不對(duì),進(jìn)一步作壓縮操作,壓縮點(diǎn)Xt為 Xt=Xc+β×(Xw-Xc) (15) 式中:β為壓縮因子,取值0.5。若f(Xt) 步驟5 若f(Xw)>f(Xr)>f(Xg), 則進(jìn)行收縮操作,收縮點(diǎn)Xs為 Xs=Xc-β×(Xw-Xc) (16) 式中:β為收縮因子,取值同上。若f(Xs) 由式(2)可知,鯨魚(yú)對(duì)獵物進(jìn)行包圍時(shí)的位置迭代更新中僅考慮當(dāng)前種群的歷史最優(yōu)位置和個(gè)體的當(dāng)前位置的結(jié)合來(lái)得到最優(yōu)解,而沒(méi)有考慮與個(gè)體自身經(jīng)驗(yàn)的交流,即缺乏考慮個(gè)體歷史最優(yōu)位置對(duì)其位置更新的影響,導(dǎo)致缺乏個(gè)體記憶性。為此,借用粒子群優(yōu)化的思路,將個(gè)體的歷史最優(yōu)解考慮在位置更新中,使個(gè)體位置更新具備記憶保存功能,促進(jìn)自身位置進(jìn)一步尋優(yōu)。那么,個(gè)體包圍獵物時(shí),融入個(gè)體記憶功能的位置更新方式為 X(t+1)=c1r3·(X*(t)-A·D)+c2r4·(Xibest-X(t)) (17) 式中:c1為社會(huì)學(xué)習(xí)因子,對(duì)應(yīng)于當(dāng)前種群最優(yōu)解對(duì)個(gè)體搜索能力的影響,c2為認(rèn)知學(xué)習(xí)因子,對(duì)應(yīng)于個(gè)體本身所經(jīng)歷的最優(yōu)解對(duì)個(gè)體搜索能力的影響,r3、r4為[0,1]區(qū)間的隨機(jī)量,Xibest為個(gè)體經(jīng)歷的最優(yōu)解。 相應(yīng)地,鯨魚(yú)的螺旋靠近也進(jìn)一步添加記憶功能,則 X(t+1)=c1r5(D′·ebl·cos(2πl(wèi))+X*(t))+c2r6·(Xibest-X(t)) (18) 式中:r5、r6為[0,1]內(nèi)的隨機(jī)量。融入個(gè)體記憶后,通過(guò)調(diào)整社會(huì)學(xué)習(xí)因子和認(rèn)知學(xué)習(xí)因子,即可協(xié)調(diào)個(gè)體與種群間的信息交流和個(gè)體記憶對(duì)整體算法的搜索和尋優(yōu)能力的影響。 輸入:初始種群結(jié)構(gòu)X={X1,X2,…,XN}, 收斂因子初值ainitial、終值afinal,算法最大迭代數(shù)max_iter,收斂因子調(diào)整系數(shù)μ,反射因子α,擴(kuò)展因子γ,壓縮因子β,社會(huì)學(xué)習(xí)因子c1,認(rèn)知學(xué)習(xí)因子c2,對(duì)數(shù)螺旋形狀常量b 輸出:全局最優(yōu)解X* (1) 初始化鯨魚(yú)種群,規(guī)模為N,表示為Xi,i=1,2,…,N (2) 計(jì)算N個(gè)個(gè)體的適應(yīng)度f(wàn)(Xi) (3) 選擇適應(yīng)度最小(最優(yōu))的個(gè)體X* (4)whilet (5)foreachXi,i=1,2,…,N (6) 根據(jù)式(11)更新收斂因子a (7) 根據(jù)式(3)、式(4)更新參數(shù)A、C,并更新l、p (8)if(p<0.5) (9)if(|A|<1) (10) 根據(jù)式(17)更新個(gè)體位置//位置包圍 (11)if(|A|≥1) (12) 隨機(jī)選擇個(gè)體Xrand (13) 根據(jù)式(10)更新個(gè)體位置//獵物搜索 (14)endif (15)elseif(p≥0.5) (16) 根據(jù)式(18)更新個(gè)體位置//螺旋位置更新 (17)endif (18)endfor (19) 調(diào)用2.2節(jié)執(zhí)行單純形法優(yōu)化種群中的較差解 (20) 越界檢查,并修正越界個(gè)體 (21) 計(jì)算種群個(gè)體適應(yīng)度{f(Xi),i=1,2,…,N} (22) 更新全局最優(yōu)個(gè)體X* (23)t=t+1 (24)endwhile (25) 返回全局最優(yōu)解X* 為了驗(yàn)證IMSWOA算法在解決高維復(fù)雜函數(shù)優(yōu)化問(wèn)題的有效性,利用表1中比較常用的8種基準(zhǔn)函數(shù)測(cè)試算法的尋優(yōu)性能(基準(zhǔn)函數(shù)很多,在此無(wú)法列舉太多作數(shù)值測(cè)試分析,但表1中已經(jīng)涵蓋常用單峰函數(shù)和多峰函數(shù))。表中包括函數(shù)表達(dá)式、搜索區(qū)間、理論最優(yōu)值和收斂精度。仿真實(shí)驗(yàn)中,改進(jìn)鯨魚(yú)優(yōu)化算法的相關(guān)參數(shù):最大迭代次數(shù)max_iter=400,種群規(guī)模為N=30,收斂因子初值ainitial=2,終值afinal=0,收斂因子調(diào)整系數(shù)μ=10,社會(huì)學(xué)習(xí)因子c1=0.5,認(rèn)知學(xué)習(xí)因子c2=0.5。對(duì)于每個(gè)基準(zhǔn)函數(shù),實(shí)驗(yàn)均獨(dú)立運(yùn)行30次。實(shí)驗(yàn)硬件環(huán)境為Intel Core CPU 2.5 GHz主頻,4 G內(nèi)存。軟件環(huán)境為Windows 10操作系統(tǒng)和Matlab 2017a。 表1 基準(zhǔn)函數(shù) 對(duì)比算法選擇Logistic混沌映射和非線性自適應(yīng)權(quán)重策略的改進(jìn)鯨魚(yú)優(yōu)化算法MWOA[8]、非線性收斂因子和局部擾動(dòng)的改進(jìn)鯨魚(yú)進(jìn)化算法NPWOA[9]、慣性權(quán)重思維的改進(jìn)鯨魚(yú)優(yōu)化算法IWWOA[13]進(jìn)行性能比較。公有參數(shù)中,種群規(guī)模和最大迭代次數(shù)配置相同。表2是與同類改進(jìn)WOA算法的對(duì)比結(jié)果,利用目標(biāo)函數(shù)的平均精度和標(biāo)準(zhǔn)差進(jìn)行性能對(duì)比。依據(jù)表2所示結(jié)果,IMSWOA算法在所有測(cè)試的8個(gè)基準(zhǔn)函數(shù)上基本可以得到最優(yōu)解,同時(shí)標(biāo)準(zhǔn)差也基本為0,表明本文的改進(jìn)算法不僅擁有較強(qiáng)的尋優(yōu)能力,而且在不同類型的基準(zhǔn)函數(shù)上(單峰或多峰)具有較好的穩(wěn)定性和魯棒性。NPWOA算法引入非收斂因子和局部擾動(dòng)機(jī)制,確保了WOA具有較強(qiáng)的搜索能力,但其復(fù)雜的過(guò)程會(huì)導(dǎo)致收斂速度變慢。但該算法在部分函數(shù)上還是取得了很好的尋優(yōu)效果。IWWOA算法僅引入慣性權(quán)重思維,種群多樣性缺乏,尋優(yōu)精度性能依然不足,改進(jìn)比較片面。MWOA算法同步在初始種群和收斂系數(shù)做了改進(jìn),提升了種群多樣性,也增強(qiáng)了算法的搜索與開(kāi)采能力的均衡,性能有所提升??傮w上本文的IMSWOA算法的綜合性能是4種算法中最佳的。 表2 與同類改進(jìn)WOA算法的對(duì)比結(jié)果 圖2是4種算法的收斂曲線。篇幅原因,僅羅列5個(gè)基準(zhǔn)函數(shù)??傮w觀察400次迭代過(guò)程中算法的收斂情況,曲線的墜落程度可以反映算法的尋優(yōu)速度和收斂速度,而曲線的端點(diǎn)值則對(duì)應(yīng)于算法的尋優(yōu)精度??梢钥吹?,IMSWOA算法的收斂速度是最快的,其下降趨勢(shì)是所有算法中最明顯的,同時(shí)具有更高的尋優(yōu)精度,最為接近理論最優(yōu)值。IWWOA算法和MWOA算法所表現(xiàn)出的較為平緩的曲線說(shuō)明算法的尋優(yōu)速度較慢、收斂速度較慢、尋優(yōu)精度也較低。 圖2 收斂曲線 本節(jié)測(cè)試分析利用IMSWOA算法中的3種改進(jìn)策略對(duì)傳統(tǒng)WOA算法進(jìn)行單獨(dú)改進(jìn)時(shí)算法的性能表現(xiàn)。將僅利用非線性收斂因子調(diào)整機(jī)制的改進(jìn)鯨魚(yú)優(yōu)化算法命名為NC-WOA算法,將僅利用單純形法的改進(jìn)鯨魚(yú)優(yōu)化算法命名為SM-WOA算法,將僅融合個(gè)體記憶的改進(jìn)鯨魚(yú)優(yōu)化算法命名為IM-WOA算法。相關(guān)參數(shù)配置和實(shí)驗(yàn)環(huán)境配置同上。實(shí)驗(yàn)結(jié)果見(jiàn)表3。從比較結(jié)果可以看出,僅融合個(gè)體記憶的改進(jìn)鯨魚(yú)優(yōu)化算法IM-WOA對(duì)于傳統(tǒng)WOA的尋優(yōu)性能的改進(jìn)還是比較有限的,而非線性收斂因子調(diào)整的NC-WOA算法和單純形法的SM-WOA算法可以更好提升算法的尋優(yōu)精度,穩(wěn)定性也較好,在部分基準(zhǔn)函數(shù)中甚至可以求解得到最優(yōu)解。由此可見(jiàn),對(duì)于WOA算法的改進(jìn)問(wèn)題而言,均衡個(gè)體的搜索與開(kāi)采能力,提升整體種群質(zhì)量,避免局部最優(yōu)顯得尤為重要。 本節(jié)測(cè)試收斂因子的變化對(duì)IMSWOA算法的性能影響。由收斂因子定義式(11)可知,收斂因子a隨迭代次數(shù)的遞增,主要受其初值ainitial、終值afinal、調(diào)整系數(shù)μ的影響。收斂因子決定搜索與開(kāi)采能力的平衡。表4是4組收斂因子初值和終值對(duì)得到的實(shí)驗(yàn)結(jié)果,其它參數(shù)配置同上,調(diào)整系數(shù)為10。表5是4組調(diào)整系數(shù)取值的實(shí)驗(yàn)結(jié)果,收斂因子初/終值為2/0。根據(jù)表4的結(jié)果可以看到,不同的初/終值對(duì)尋優(yōu)效果有一些影響,但影響很有限,在大多數(shù)基準(zhǔn)函數(shù)上,改進(jìn)算法的尋優(yōu)精度表現(xiàn)比較穩(wěn)定,尋優(yōu)成功率未受到較大影響,說(shuō)明算法對(duì)該因素的依賴性較小。同時(shí),4組取值中,2/0這組取值相對(duì)尋優(yōu)成功率是最高的(其它實(shí)驗(yàn)中應(yīng)用該組取值)。表5的結(jié)果表明,調(diào)整系數(shù)對(duì)IMSWOA算法的尋優(yōu)性能具有一定影響,但不是單純的提升或者降低算法的性能。初期會(huì)隨調(diào)整系數(shù)的增加而提升,到達(dá)一定高度后,又會(huì)出現(xiàn)下降??傮w來(lái)看,4組取值中,μ=10得到平均精度和標(biāo)準(zhǔn)差是最好的(在5組基準(zhǔn)函數(shù)上得到了理論最優(yōu)解,其它實(shí)驗(yàn)中應(yīng)用該取值)。 表3 不同改進(jìn)策略下的WOA算法性能對(duì)比 表4 收斂因子初/終值的影響(維度=50維) 表5 調(diào)整系數(shù)取值的影響(維度=50維) 為了驗(yàn)證IMSWOA算法解決實(shí)際問(wèn)題的可行性,本節(jié)進(jìn)一步將IMSWOA算法用于求解一種標(biāo)準(zhǔn)的工程設(shè)計(jì)優(yōu)化問(wèn)題。因?yàn)槠?,僅利用在求解拉伸彈簧設(shè)計(jì)問(wèn)題上。拉伸彈簧設(shè)計(jì)問(wèn)題的目標(biāo)是最小化拉伸彈簧的設(shè)計(jì)重量,該最小化過(guò)程同時(shí)受到以下4個(gè)因素的約束:切變壓力、波動(dòng)頻率、外徑和繞度。問(wèn)題的3個(gè)變量為:線材直徑d、平均繞線直徑D、活性線圈數(shù)量P。拉伸彈簧設(shè)計(jì)如圖3所示。 圖3 拉伸彈簧設(shè)計(jì) 具體的數(shù)學(xué)模型如下: 問(wèn)題變量 x={x1,x2,x3}=[d,D,P] 最小化目標(biāo) f(x)=(x3+2)x2x12 約束條件 變量范圍 0.05≤x1≤2.00, 0.25≤x2≤1.30, 2.00≤x3≤15.0 表6是20次算法運(yùn)行中IMSWOA算法與其它已經(jīng)應(yīng)用在拉伸彈簧設(shè)計(jì)問(wèn)題上的幾種智能算法的尋優(yōu)對(duì)比結(jié)果,表中同時(shí)給出了問(wèn)題中的3個(gè)因變量和最優(yōu)重量的取值,即優(yōu)化變量的最優(yōu)設(shè)計(jì)值??梢钥吹?,前4種算法的最優(yōu)解已經(jīng)非常接近,其最優(yōu)重量值的差別僅在10-7數(shù)量級(jí)上,但依然可以看到,IMSWOA算法得到了最小的拉伸彈簧重量。圖4中4種算法對(duì)于拉伸彈簧設(shè)計(jì)問(wèn)題求解的收斂曲線也驗(yàn)證IMSWOA算法可以更快的收斂,這說(shuō)明算法在處理拉伸彈簧設(shè)計(jì)優(yōu)化這類實(shí)際工程優(yōu)化問(wèn)題上是有效可行的。進(jìn)一步可以將IMSWOA算法求解焊接梁設(shè)計(jì)、壓力容器設(shè)計(jì)、三桿桁架設(shè)計(jì)等不同規(guī)模和復(fù)雜程度的工程設(shè)計(jì)問(wèn)題上,因篇幅受限,在此不作數(shù)據(jù)列舉。 表6 拉伸彈簧設(shè)計(jì)問(wèn)題的求解 圖4 拉伸彈簧設(shè)計(jì)求解結(jié)果 提出了一種基于單純形法和融入個(gè)體記憶的改進(jìn)非線性鯨魚(yú)優(yōu)化算法IMSWOA。算法通過(guò)非線性調(diào)整使收斂因子在迭代過(guò)程中呈現(xiàn)不同遞減速率,以此協(xié)調(diào)搜索與開(kāi)發(fā)間的平滑轉(zhuǎn)換;通過(guò)單純形法增強(qiáng)了算法的局部搜索能力,并利用融合個(gè)體記憶和種群最優(yōu)改善位置更新機(jī)制,協(xié)調(diào)個(gè)體與種群間的交流和個(gè)體記憶對(duì)整體算法的搜索和尋優(yōu)能力?;鶞?zhǔn)函數(shù)測(cè)試驗(yàn)證算法可以有效提升收斂速度和尋優(yōu)精度,避免局部最優(yōu)解。求解拉伸彈簧設(shè)計(jì)問(wèn)題也驗(yàn)證了算法的可行性。進(jìn)一步研究可嘗試將改進(jìn)算法在其它工程設(shè)計(jì)或神經(jīng)網(wǎng)絡(luò)訓(xùn)練領(lǐng)域的應(yīng)用驗(yàn)證,以此發(fā)現(xiàn)算法存在的可改進(jìn)點(diǎn)。2.3 融入個(gè)體記憶的位置更新機(jī)制
2.4 IMSWOA算法具體過(guò)程
3 實(shí)驗(yàn)分析
3.1 實(shí)驗(yàn)環(huán)境
3.2 IMSWOA算法與同類改進(jìn)WOA算法的對(duì)比
3.3 IMSWOA算法中不同改進(jìn)策略的影響
3.4 收斂因子不同變化下的性能表現(xiàn)
4 基于IMSWOA算法的工程設(shè)計(jì)優(yōu)化應(yīng)用
5 結(jié)束語(yǔ)