程浩淼,王夢(mèng)磊,汪 靚,章小衛(wèi)
1.揚(yáng)州大學(xué) 環(huán)境科學(xué)與工程學(xué)院,江蘇 揚(yáng)州 225127
2.揚(yáng)州大學(xué) 水利科學(xué)與工程學(xué)院,江蘇 揚(yáng)州 225127
3.揚(yáng)州大學(xué) 信息工程學(xué)院,江蘇 揚(yáng)州 225127
群體智能算法是一類模擬生物種群生存行為(捕覓食、孵化等)的優(yōu)化方法[1-2]。在近年逐漸興起的群體優(yōu)化算法中,鯨魚優(yōu)化算法(WOA)由于其獨(dú)特的螺旋更新方式及較強(qiáng)的全局搜索能力,迅速得到研究人員的廣泛關(guān)注。WOA 是2016 年由文獻(xiàn)[3]提出的一種新型群體優(yōu)化算法,其通過模擬座頭鯨覓食過程中的包圍捕食、螺旋氣泡以及隨機(jī)游走搜索行為,以搜尋目標(biāo)函數(shù)的最優(yōu)解。在函數(shù)優(yōu)化方面,該算法已被證實(shí)在求解精度、收斂速度等性能上優(yōu)于粒子群(PSO)、蟻群(ACO)、人工蜂群(ABC)、灰狼(GWO)等群體算法[3-5]。
目前,WOA 已成功應(yīng)用于化工機(jī)械設(shè)備優(yōu)化設(shè)計(jì)[3,6]、拉伸/壓縮彈簧設(shè)計(jì)[3,7]、水資源優(yōu)化[8]等領(lǐng)域。但在應(yīng)用過程中,WOA 存在一定的收斂速度慢、易陷于局部最優(yōu)等問題。基于此,國(guó)內(nèi)外學(xué)者主要通過以下3個(gè)方面進(jìn)行改進(jìn)完善:(1)改進(jìn)初始種群生成方式。文獻(xiàn)[9-11]通過混沌初始化策略,促進(jìn)初始種群的多樣化;文獻(xiàn)[12]通過Sobol 序列生成不重復(fù)且均勻的點(diǎn),來實(shí)現(xiàn)對(duì)解空間的全覆蓋;文獻(xiàn)[13-17]基于對(duì)立學(xué)習(xí)策略生成對(duì)立點(diǎn),并根據(jù)適應(yīng)度進(jìn)行初始種群個(gè)體的精英選擇。(2)改進(jìn)算法參數(shù)。部分學(xué)者通過優(yōu)化算法參數(shù),提高WOA 的收斂精度及速度,如:收斂因子a、收縮系數(shù)A等[10,18-21];文獻(xiàn)[22-24]則將混沌理論、PSO權(quán)重等理論引入WOA 優(yōu)化過程,實(shí)現(xiàn)算法參數(shù)的調(diào)整優(yōu)化。(3)改進(jìn)后期種群的聚集方法。在WOA 迭代后期,種群多樣性下降,所有個(gè)體趨向中心聚集,極易陷入局部最優(yōu);因此,對(duì)抗個(gè)體中心化的關(guān)鍵是增強(qiáng)種群后期的隨機(jī)游動(dòng)。如文獻(xiàn)[25-27]分別引入共生生物(SOS)、萊維飛行(Levy)等搜索方式,以加強(qiáng)算法后期的全局搜索能力;文獻(xiàn)[28]將差分算法中的變異算子與WOA相結(jié)合提出混合算子,更好地平衡了后期的搜索和開發(fā);此外,還有學(xué)者提出了柯西變異[12,17,29]、多項(xiàng)式變異[30]、高斯變異[5,17]等增強(qiáng)種群后期的隨機(jī)游動(dòng)的方案。上述改進(jìn)均在一定程度彌補(bǔ)了WOA的缺點(diǎn),但在性能分析中,部分測(cè)試函數(shù)的性能確實(shí)有所提高,但往往對(duì)另一部分測(cè)試函數(shù)的計(jì)算性能反而下降,且在實(shí)際運(yùn)用中仍存在易陷入局部最優(yōu)的現(xiàn)象。
基于此,本文對(duì)WOA的初始種群生成方式、算法參數(shù)和后期種群的隨機(jī)優(yōu)化方式進(jìn)行改進(jìn):采用中心游移以及鄰域修正更新策略來提高初始解的質(zhì)量;根據(jù)迭代過程前期偏全局搜索后期偏局部開發(fā)的特點(diǎn)對(duì)收斂因子a進(jìn)行優(yōu)化;引入PSO 權(quán)重策略,提出基于雙權(quán)重的隨機(jī)擾動(dòng)策略調(diào)節(jié)個(gè)體的更新,防止算法陷入局部最優(yōu)。最終提出了一種耦合中心游移和雙權(quán)重因子策略的改進(jìn)鯨魚優(yōu)化算法(C-A-WWOA)。本文在18種通用測(cè)試函數(shù)(單峰、多峰、固定維數(shù)多峰)進(jìn)行了數(shù)值實(shí)驗(yàn)和結(jié)果分析(尋優(yōu)精度分析、誤差分析、高維函數(shù)優(yōu)化分析、復(fù)雜度分析和3種改進(jìn)策略的有效性分析)。同時(shí),本文將提出的改進(jìn)算法應(yīng)用于兩個(gè)工程實(shí)際問題(壓力容器設(shè)計(jì)問題、拉伸/壓縮彈簧設(shè)計(jì)問題),并取得了很好的效果。
根據(jù)座頭鯨特殊的群體狩獵行為,將參與捕獵行為的每頭鯨魚視為種群個(gè)體x;將滿足條件的鯨魚個(gè)體作為一個(gè)候選解;將每次更新后最優(yōu)鯨魚的位置作為獵物所在位置。在優(yōu)化搜索過程中,WOA 采取3 種捕食策略的更新方式,即:包圍捕食、隨機(jī)搜索和螺旋氣泡。具體更新方式如下:(1)當(dāng)捕食策略概率p<0.5 時(shí),鯨魚群根據(jù)系數(shù)|A|選擇更新方式,當(dāng)|A|≤1 時(shí),鯨魚會(huì)在原始位置與最優(yōu)鯨魚位置之間進(jìn)行更新,鯨魚由原來的位置向獵物靠近(收縮包圍機(jī)制),即執(zhí)行包圍捕食式(1),以實(shí)現(xiàn)局部開發(fā);當(dāng)|A|>1 時(shí),即不滿足收縮包圍機(jī)制時(shí),鯨魚群不再根據(jù)當(dāng)前最優(yōu)鯨魚位置進(jìn)行更新,而是隨機(jī)選擇一個(gè)鯨魚位置進(jìn)行隨機(jī)更新,即執(zhí)行隨機(jī)搜索式(2),以實(shí)現(xiàn)全局搜索。(2)當(dāng)p≥0.5 時(shí),鯨魚以螺旋運(yùn)動(dòng)向最優(yōu)鯨魚位置游動(dòng),并產(chǎn)生氣泡包圍獵物,完成狩獵,即執(zhí)行式(3)的螺旋氣泡更新[3]。
WOA相較于其他優(yōu)化算法而言,優(yōu)勢(shì)在于其操作簡(jiǎn)單、調(diào)節(jié)的參數(shù)少。但是,WOA仍存在初始種群多樣性差、收斂速度慢、后期易陷于局部最優(yōu)等問題[31]。針對(duì)上訴問題,本文提出了三點(diǎn)改進(jìn)措施:第一使用中心游移種群初始化和邊界鄰域更新策略,保持種群的多樣性;第二利用收斂因子a調(diào)控并優(yōu)化算法參數(shù);第三模仿PSO的權(quán)重因子避免WOA后期種群陷于局部最優(yōu)的問題。
1.2.1 耦合中心游移初始化及邊界鄰域更新策略(C-WOA)
(1)耦合中心游移的初始化策略
WOA 的種群初始化方式是隨機(jī)生成,該方法的種群個(gè)體質(zhì)量往往會(huì)降低,會(huì)影響算法的求解速度[32-33]。對(duì)立學(xué)習(xí)策略已被證實(shí)是提高隨機(jī)優(yōu)化算法初始解質(zhì)量的一個(gè)重要策略,其通過生成對(duì)立點(diǎn),進(jìn)行初始解的擇優(yōu)選擇[13-16]。此方式在搜索空間較小時(shí),處理效果往往較好,但搜索空間較大時(shí),該方法的作用就會(huì)被削減,并會(huì)大范圍的搜索空間點(diǎn)。本文通過中心游移公式對(duì)初始解進(jìn)行隨機(jī)偏移,以此分隔定位尋優(yōu)空間,并實(shí)現(xiàn)鯨魚個(gè)體當(dāng)前最優(yōu)位置的多點(diǎn)同步搜索,從而提升種群多樣性。該初始化流程為:生成初始解(xti,r)并計(jì)算其反向點(diǎn)式(4);再根據(jù)式(5)對(duì)初始解進(jìn)行中心游移,并通過其適應(yīng)度值貪婪選擇。
(2)耦合邊界鄰域更新的修正策略
在迭代過程中,WOA 對(duì)于越界鯨魚的處理方式通常是使用臨近界限值代替。該方法在越界鯨魚數(shù)量較少時(shí)對(duì)種群影響較小,但若存在大量越界鯨魚時(shí),采用以上處理方式就會(huì)降低種群多樣性及尋優(yōu)效率[34]。故本文提出通過邊界鄰域更新方式對(duì)越界鯨魚位置進(jìn)行修正,該方法通過在邊界內(nèi)一段鄰域內(nèi)生成隨機(jī)且均勻的點(diǎn),來保持種群的多樣性。具體修正公式如下:
式中,U表示在區(qū)間上的均勻分布。
1.2.2 耦合非線性收斂因子的改進(jìn)策略(A-WOA)
WOA主要有兩個(gè)調(diào)整參數(shù)(A和C);它們決定了算法的收縮包圍能力,協(xié)調(diào)算法全局探索與局部搜索。根據(jù)A=2a·(r1?1)和C=2a·r2,A和C均會(huì)隨收斂因子a變化;當(dāng)a值越大,算法的全局探索能力越強(qiáng);當(dāng)a值越小,算法的局部搜索能力越強(qiáng)。WOA 采取的a值是線性遞減,該方式會(huì)降低鯨魚種群的靈活性和多樣性[35]。為了更好地WOA 的平衡全局和局部尋優(yōu)能力,本文采取多項(xiàng)式形式對(duì)a進(jìn)行曲線擬合,通過對(duì)多項(xiàng)式參數(shù)進(jìn)行測(cè)試和優(yōu)化,以大幅度提高收斂精度。具體表達(dá)式如下:
式中,α、β、γ、λ為多項(xiàng)式參數(shù),采用逐次逼近法依次對(duì)算法參數(shù)進(jìn)行求解,其最優(yōu)取值為α=?3.6,β=7.8,γ=?6.2 和λ=2.0。
1.2.3 耦合雙權(quán)重因子的隨機(jī)更新策略(W-WOA)
WOA會(huì)根據(jù)捕食策略概率p在圓環(huán)運(yùn)動(dòng)和螺旋運(yùn)動(dòng)之間進(jìn)行切換,即:包圍捕食和螺旋氣泡更新,但兩種更新本質(zhì)上都是鯨魚群對(duì)最優(yōu)鯨魚位置的局部開發(fā)。在迭代后期,鯨魚種群不斷向最優(yōu)鯨魚靠攏,逐步尋找最優(yōu)解,但此過程是一種從全局到局部的變化過程,極易陷入局部最優(yōu)。因此,本文借鑒粒子群算法(PSO)的權(quán)重因子ω策略,提出一種雙權(quán)重因子的隨機(jī)擾動(dòng)策略。該策略通過兩個(gè)反向變化的權(quán)重因子(ω1和ω2)更新鯨魚,其中,ω1采用非線性遞減,使得其他鯨魚在最優(yōu)鯨魚方向動(dòng)態(tài)更新,進(jìn)而一定程度上增大了種群多樣性,ω2采用非線性遞增,隨著迭代過程的進(jìn)行,其他鯨魚獲得更大的隨機(jī)更新步長(zhǎng),以滿足其在大范圍內(nèi)隨機(jī)移動(dòng),增強(qiáng)其跳出局部最優(yōu)的能力。相較于單權(quán)重因子的PSO,本文的雙權(quán)重因子策略其優(yōu)勢(shì)是:從最優(yōu)鯨魚和隨機(jī)步長(zhǎng)兩方面進(jìn)行隨機(jī)擾動(dòng),進(jìn)一步增強(qiáng)了后期鯨魚種群的更新能力,以實(shí)現(xiàn)鯨魚種群在可行域內(nèi)的廣度與深度覆蓋。改進(jìn)后的包圍捕食和螺旋氣泡更新公式如下:
本文簡(jiǎn)單測(cè)試了正弦、線性、多項(xiàng)式和指數(shù)4 種曲線變化策略,最終發(fā)現(xiàn)正弦反向變化策略對(duì)算法精度的提升最大,其具體公式如下:
1.2.4 算法流程
本文從初始種群方式、算法參數(shù)、后期種群個(gè)體的隨機(jī)擾動(dòng)三方面著手,對(duì)WOA 進(jìn)行改進(jìn),提出了CA-WWOA。算法流程如圖1所示,步驟如下:
圖1 C-A-WWOA算法流程圖Fig.1 Flow chart of C-A-WWOA
步驟3 判斷迭代條件:當(dāng)t≤Tmax時(shí),重復(fù)步驟2,直至退出迭代過程,輸出最優(yōu)鯨魚及最優(yōu)適應(yīng)度值。
通過對(duì)WOA 進(jìn)行分析改進(jìn),采取以上改進(jìn)策略提出C-A-WWOA,為了測(cè)試和驗(yàn)證改進(jìn)算法的性能,本文通過選取國(guó)際通用的標(biāo)準(zhǔn)測(cè)試函數(shù)(包括單峰、多峰、固定維多峰測(cè)試函數(shù))進(jìn)行數(shù)實(shí)驗(yàn),并全面分析算法性能。其中,單峰函數(shù)F1~F6 只有一個(gè)全局最優(yōu)值,以充分評(píng)估算法的局部開發(fā)能力;多峰函數(shù)F7~F18 與單峰函數(shù)不同,伴隨著多個(gè)局部最優(yōu)解,以評(píng)估算法的全局勘探能力。具體函數(shù)信息見表1。試,運(yùn)行環(huán)境為:Windows 10(64位),CPU Intel?Core?i5-10210U with 16 GB。其中仿真實(shí)驗(yàn)種群規(guī)模N=30,最大迭代次數(shù)為Tmax=500,每種算法分別獨(dú)立運(yùn)行30次。
表1 單峰、多峰以及固定維數(shù)多峰測(cè)試函數(shù)Table 1 Single-peak,multi-peak and fixed-dimension multi-peak test functions
根據(jù)表2 結(jié)果,對(duì)于單峰測(cè)試函數(shù)F1~F4,C-AWWOA 的尋優(yōu)精度最高,其最優(yōu)解(Min)和平均值(Avg)均為理論最優(yōu)解(Min=Avg=0),且標(biāo)準(zhǔn)差(Stv)為0;相較于WOA、EGolden-SWOA 和IMWOA,本文提出的C-A-WWOA 的尋優(yōu)能力和穩(wěn)定性得到了極大的提升,證明了改進(jìn)算法極強(qiáng)的局部開發(fā)能力。對(duì)于單峰測(cè)試函數(shù)F5 和F6,C-A-WWOA 雖然未收斂到理論最優(yōu)值,但相較于WOA 仍有一定提升。對(duì)于多峰測(cè)試函數(shù)(F7~F18),C-A-WWOA可收斂到理論值最優(yōu)值的數(shù)量n為8,均大于WOA(n=5)和EGolden-SWOA(n=5),這表明C-A-WWOA擁有更強(qiáng)的適用性和更好的全局勘探以及跳出局部最優(yōu)的能力,此外,C-A-WWOA對(duì)于固定維多峰函數(shù)表現(xiàn)極其出色,其大多數(shù)可以收斂到最優(yōu)值,說明其做到了全局勘探和局部開發(fā)之間的平衡,可以搜尋并收斂到最優(yōu)值。因此,無論是單峰還是多峰測(cè)試函數(shù),C-A-WWOA的求解結(jié)果總體上更加穩(wěn)定,且更接近理論最優(yōu)值,結(jié)果證實(shí)了C-A-WWOA 很好地解決了WOA在函數(shù)優(yōu)化上尋優(yōu)精度不高和容易陷入局部最優(yōu)的問題。
表2 4種算法的尋優(yōu)結(jié)果對(duì)比Table 2 Comparison of four algorithms for finding best results
2.2.2 誤差分析
針對(duì)不同算法進(jìn)行定量分析,通過對(duì)算法尋優(yōu)結(jié)果計(jì)算其在標(biāo)準(zhǔn)測(cè)試函數(shù)的平均誤差(MAE),將計(jì)算結(jié)果進(jìn)行排序,可以驗(yàn)證算法求解精度的穩(wěn)定性。表3所示為基準(zhǔn)測(cè)試函數(shù)的MAE排序,具體計(jì)算公式如下:
2.2.1 尋優(yōu)精度分析
為了測(cè)試本文中所改進(jìn)的C-A-WWOA的可行性與有效性,本文將C-A-WWOA 與標(biāo)準(zhǔn)WOA 以及近期兩個(gè)改進(jìn)效果較好的鯨魚優(yōu)化算法進(jìn)行測(cè)試分析。為了公平對(duì)比算法性能,各種算法均在同一條件下進(jìn)行測(cè)式中,mi表示算法求解結(jié)果的平均值,fi為第i個(gè)基準(zhǔn)測(cè)試函數(shù)的理論值,Nf表示基準(zhǔn)函數(shù)的個(gè)數(shù)。
由表3 可知,C-A-WWOA 在求解18 個(gè)標(biāo)準(zhǔn)測(cè)試函數(shù)的MAE排名優(yōu)于WOA、EGolden-SWOA和IMWOA。這說明本文的C-A-WWOA在求解函數(shù)優(yōu)化問題上具有更小的誤差,也反映出該算法應(yīng)用時(shí)更強(qiáng)的適用性。
表3 不同算法MAE排名Table 3 MAE ranking of different algorithms
2.2.3 復(fù)雜度分析
2.2.4 高維函數(shù)優(yōu)化分析
本小節(jié)利用表1 中前12 組測(cè)試函數(shù),計(jì)算了C-AWWOA 在不同維數(shù)下(D=100,D=200,D=500 和D=1 000)下的優(yōu)化結(jié)果(見表4和圖2),進(jìn)一步分析不同維數(shù)下C-A-WWOA的優(yōu)化性能。
圖2 不同維數(shù)下C-A-WWOA算法的優(yōu)化曲線(以F11為例)Fig.2 Optimization curves of C-A-WWOA under different dimensions(taking F11 as example)
尋優(yōu)結(jié)果表明(表4),在不同維數(shù)下(即:D=100,D=200,D=500和D=1 000),C-A-WWOA算法能在6個(gè)函數(shù)(F1、F2、F3、F4、F8和F10)穩(wěn)定地收斂到理論最優(yōu)值0,且Stv=Avg=0,這很好地說明了C-A-WWOA在處理不同維數(shù)的優(yōu)化問題時(shí)具有較高的收斂精度和較強(qiáng)的魯棒性。對(duì)于函數(shù)F6、F7、F9、F11和F12雖未能收斂到理論最優(yōu)值,但其尋優(yōu)結(jié)果仍具有一定的精度,且對(duì)比不同維數(shù)的尋優(yōu)結(jié)果(表2 和表4)發(fā)現(xiàn),不同維數(shù)下C-A-WWOA 優(yōu)化結(jié)果相差不大,這說明了C-AWWOA 在處理優(yōu)化問題時(shí)不易受到問題維數(shù)的影響,具有較強(qiáng)的穩(wěn)定魯棒性。
表4 不同維數(shù)下C-A-WWOA的尋優(yōu)結(jié)果Table 4 Optimization results of C-A-WWOA under different dimensions
圖2 給出了不同維數(shù)下C-A-WWOA 對(duì)F11 的優(yōu)化結(jié)果??梢钥闯?,隨著函數(shù)維數(shù)的增大,C-A-WWOA對(duì)函數(shù)的優(yōu)化結(jié)果不會(huì)出現(xiàn)太大變化,基本保持不變,如30 次最優(yōu)值和30 次平均值基本保持穩(wěn)定,這說明C-AWWOA在優(yōu)化不同維數(shù)問題時(shí)具有較強(qiáng)的適用性和較強(qiáng)的魯棒性。
2.2.5 3種改進(jìn)策略的有效性分析
為分析每個(gè)改進(jìn)策略的算法有效性,本小節(jié)利用表1 中的18 組測(cè)試函數(shù),進(jìn)一步分析了C-A-WWOA 的3種改進(jìn)策略的尋優(yōu)結(jié)果(表5);耦合中心游移和邊界鄰域更新的C-WOA、耦合非線性收斂因子的A-WOA 和基于雙權(quán)重因子的W-WOA?;诖耍ㄟ^與WOA 的對(duì)比,分析C-WOA、A-WOA、W-WOA 和C-A-WWOA的改進(jìn)策略對(duì)尋優(yōu)精度的影響。同時(shí),還根據(jù)迭代曲線,分析了不同策略對(duì)迭代尋優(yōu)速度的影響(如圖3)。
相較于WOA,3 種改進(jìn)策略(C-WOA、A-WOA 和W-WOA)和C-A-WWOA的尋優(yōu)精度均有一定提升(見表5)。首先,C-A-WWOA提升最明顯,其在多數(shù)函數(shù)問題上快速收斂,且保證了很高的精度。其次,W-WOA對(duì)精度也有了極大的提升,其Avg 和Stv 明顯優(yōu)于WOA,這表明雙權(quán)重因子的改進(jìn)對(duì)算法擺脫局部最優(yōu)和提高尋優(yōu)精度有很大作用。再者,C-WOA和A-WOA分別在F2、F8 和F9 上也起到了很好的效果,部分函數(shù)(如F2 和F8)還可以收斂到理論最優(yōu)值。C-WOA 對(duì)于多峰函數(shù)的提升更明顯,其是由于多峰函數(shù)對(duì)初始種群的依賴比較強(qiáng),采用中心游移策略的C-WOA 具有更高的初始種群質(zhì)量;而A-WOA側(cè)重于單峰函數(shù)求解精度的提升,其證明了改進(jìn)算法參數(shù)可以進(jìn)一步提高其局部開發(fā)能力。最后,對(duì)比C-A-WWOA 和3 種改進(jìn)策略(C-WOA、A-WOA和W-WOA)的求解結(jié)果(如表5),可以看出,C-A-WWOA具有更高的精度,這表明不同改進(jìn)策略之間有促進(jìn)作用,如:C-A-WWOA 在單峰函數(shù)F2和F4問題上可以收斂到理論值(Min=0)。
表5 不同策略下改進(jìn)算法與WOA的優(yōu)化結(jié)果對(duì)比Table 5 Comparison of optimization results of improved algorithms with different improvement strategies and WOA
根據(jù)算法迭代曲線圖分析(如圖3),相較于WOA,改進(jìn)算法(C-WOA、A-WOA、W-WOA和C-A-WWOA)其求解精度和速度均有一定或大幅的提升。從圖3(a)~(f)看到,采用3種策略改進(jìn)的C-A-WWOA曲線具有更高質(zhì)量的初始種群質(zhì)量和極快的收斂速度,這也證明了改進(jìn)策略的高效性。同時(shí),W-WOA在單峰函數(shù)圖3(a)和(b)以及多峰函數(shù)圖3(c)和(d)的迭代曲線,可以明顯得到,W-WOA 具有很高的尋優(yōu)精度和速度:對(duì)于單峰函數(shù)(如F2、F4),W-WOA可以收斂到理論最優(yōu)值;對(duì)于多峰函數(shù)(如F10、F12),W-WOA尋優(yōu)精度極高,由此說明W-WOA可以提高單峰和多峰函數(shù)的尋優(yōu)精度,其原理是通過雙權(quán)重因子來擾動(dòng)后期種群的更新過程,使其不局限于某一個(gè)局部空間,而在更大的范圍搜索更新,從而進(jìn)一步提高了精度。與W-WOA不同的是,A-WOA可以提高單峰函數(shù)(如F2)的尋優(yōu)精度,但收斂速度未見明顯提升(圖3(a)),而求解多峰函數(shù)(如F4、F10)時(shí),不僅收斂精度有了一定的提高,收斂速度也提高了2~5倍(圖3(c)和(e)),這說明改進(jìn)算法參數(shù)的A-WOA 除了提高單峰和多峰函數(shù)的尋優(yōu)精度外,還可以加快部分多峰函數(shù)的收斂速度。此外,采用了中心游移策略的C-WOA求解多峰函數(shù)(如F12、F14、F15)時(shí)也取得了不錯(cuò)的效果(圖3(d)~(f)),圖像表明,C-WOA 具有更高的初始種群質(zhì)量,其求解精度和速度也優(yōu)于WOA,這說明C-WOA 可以提高初始種群質(zhì)量并進(jìn)一步提高求解精度。
圖3 不同改進(jìn)策略的迭代曲線Fig.3 Iteration curves with different improvement strategies
工程設(shè)計(jì)優(yōu)化問題是群體智能優(yōu)化算法的一個(gè)重要應(yīng)用領(lǐng)域和研究熱點(diǎn),因此,本文將C-A-WWOA應(yīng)用于壓力容器與拉伸/壓縮彈簧兩個(gè)典型工程優(yōu)化問題,并將求解結(jié)果與幾種不同算法進(jìn)行對(duì)比。為保證公平,所有對(duì)比算法需在同一條件下進(jìn)行優(yōu)化計(jì)算,具體條件為:種群規(guī)模N=30,最大迭代次數(shù)Tmax=500,運(yùn)行次數(shù)均為30次。
壓力容器設(shè)計(jì)是一類常見的化工機(jī)械設(shè)備優(yōu)化設(shè)計(jì)問題。該問題有4 個(gè)決策變量,其取值范圍分別是:殼體厚度x1(0 ≤x1≤99),封頭厚度x2(0 ≤x2≤99),殼體半徑x3(10 ≤x3≤200)和圓柱形截面長(zhǎng)度x4(10 ≤x4≤200)。目標(biāo)函數(shù)是成本最小值(minF),包括材料費(fèi)、成型費(fèi)和焊接費(fèi),并存在4 個(gè)約束條件,具體數(shù)學(xué)模型如下所示。
g4(x)=x4?240
表6 給出了7 種算法求解壓力容器設(shè)計(jì)問題的最優(yōu)方案,結(jié)果表明,相較于其他算法,改進(jìn)WOA算法求解方案明顯優(yōu)于其他算法,如C-A-WWWOA、RD-WOA和EGolden-SWOA 算法。對(duì)于4 種改進(jìn)WOA 算法,C-A-WWOA所求解的容器設(shè)計(jì)最小成本minF=5 909.09,對(duì)應(yīng)決策變量取值分別為x1=0.79,x2=0.36 和x3=40.45,x4=196.95,說明本文算法具有較高的收斂精度,在求解此問題時(shí)更具競(jìng)爭(zhēng)力。
表6 不同算法求解壓力容器設(shè)計(jì)問題最優(yōu)方案Table 6 Optimal solutions for different algorithms to solve pressure vessel design problems
拉伸彈簧優(yōu)化設(shè)計(jì)廣泛地應(yīng)用于國(guó)防、汽車、模具、醫(yī)學(xué)航天、鐵路、工程機(jī)械、礦山機(jī)械、建筑機(jī)械、電梯等領(lǐng)域。該問題有3 個(gè)決策變量,其取值范圍分別是:線徑x1(0.05 ≤x1≤2.00),平均線圈直徑x2(0.25 ≤x2≤1.30)和活性線圈數(shù)量x3(2.00 ≤x3≤15.00)。目標(biāo)函數(shù)是質(zhì)量最小值(minF),其存在4個(gè)約束條件,具體數(shù)學(xué)模型如下所示。
此問題中,計(jì)算了C-A-WWOA的優(yōu)化方案,并將求解結(jié)果和文獻(xiàn)[3]中的WOA 算法、文獻(xiàn)[6]中的GSA 算法、文獻(xiàn)[7]中的PSO 算法、文獻(xiàn)[15]中的EGolden-SWOA 算法和文獻(xiàn)[36]中的RD-WOA 算法的求解結(jié)果進(jìn)行比較,其結(jié)果如表7 所示。C-A-WWOA 求解拉伸/壓縮彈簧時(shí)結(jié)果優(yōu)于其他算法,其求解質(zhì)量為minF=0.126 70,僅次于RD-WOA 中minF=0.126 65,但RDWOA在優(yōu)化求解時(shí)迭代次數(shù)遠(yuǎn)遠(yuǎn)大于500。因此,表7結(jié)果一定程度上說明本文改進(jìn)的算法(C-A-WWOA)在求解此類問題時(shí)具有較高的精度。
表7 不同算法求解拉伸彈簧設(shè)計(jì)問題最優(yōu)方案Table 7 Optimal solutions for different algorithms to solve extension spring design problems
WOA 是近年來新提出的一種群體智能優(yōu)化算法,針對(duì)WOA 在求解精度低等問題,本文提出了一種耦合中心游移和雙權(quán)重因子策略的改進(jìn)鯨魚優(yōu)化算法(C-A-WWOA)。改進(jìn)算法通過中心游移對(duì)種群進(jìn)行初始化;通過鄰域更新對(duì)越界鯨魚進(jìn)行修正;通過調(diào)整參數(shù)對(duì)算法性能進(jìn)行優(yōu)化;通過雙權(quán)重因子對(duì)種群進(jìn)行隨機(jī)擾動(dòng)更新。將改進(jìn)算法應(yīng)用于函數(shù)優(yōu)化問題(18個(gè)測(cè)試函數(shù)),結(jié)果表明改進(jìn)算法具有更高的收斂精度,很好地解決了其易陷入局部最優(yōu)的問題。在此基礎(chǔ)上,本文還將改進(jìn)算法應(yīng)用工程設(shè)計(jì)最優(yōu)化問題(壓力容器設(shè)計(jì)問題和拉伸/壓縮彈簧設(shè)計(jì)問題),其結(jié)果充分證明了C-A-WWOA 在處理工程實(shí)際問題的強(qiáng)適用性和高求解精度。