倪亞萍,張業(yè)榮
(南京郵電大學(xué),江蘇 南京 210046)
優(yōu)化問題在計算機科學(xué)、人工智能、數(shù)字交通以及工業(yè)實踐等領(lǐng)域,一直以來都是國內(nèi)外學(xué)者研究的熱點。受自然界動物群體的社會行為啟發(fā),研究學(xué)者提出的許多群體智能優(yōu)化算法,因其具有更高效的搜索能力、求解處理能力以及更強的魯棒性,而被廣泛用來解決目前復(fù)雜函數(shù)優(yōu)化的相關(guān)問題。鯨魚優(yōu)化算法(Whale Optimization Algorithm,WOA)作為一種受鯨魚捕食行為啟發(fā)的新興群體智能優(yōu)化算法,在收斂速度與收斂精度方面有更好的表現(xiàn),已被成功用來解決水資源優(yōu)化配置問題以及特征選擇等問題。鯨魚優(yōu)化算法結(jié)構(gòu)簡單且需要調(diào)節(jié)的參數(shù)較少,每一只鯨魚的位置則代表算法的其中一個可行解,通過模擬鯨魚捕食行為對優(yōu)化問題不斷尋優(yōu),最后獲得的最優(yōu)個體便可以作為優(yōu)化問題的最優(yōu)解。然而傳統(tǒng)的鯨魚優(yōu)化算法仍然存在一些不足之處,對一些實際問題的解決還存在一定局限性,因此學(xué)者們對其進行了多方面的改進。郭振洲等人提出了一種WOAWC 算法,通過采用柯西逆累積分布函數(shù)來改變鯨魚的位置,實驗表明,該算法不僅提高了全局搜索能力,還能進一步避免陷入局部極值。鐘明輝等人參考粒子群優(yōu)化算法中的慣性權(quán)重策略,提出一種EWOA 算法,該算法可用來隨機調(diào)整算法控制參數(shù),測試仿真結(jié)果顯示,改進后有效提升了算法的尋優(yōu)能力以及收斂速度。然而,WOA 算法仍然沒能根本上解決其易陷入局部最優(yōu)、初始種群的隨機性以及全局與局部搜索性能不平衡的一些問題,為此,本文分析并結(jié)合不同改進策略的優(yōu)勢,提出了一種改進的混合鯨魚優(yōu)化算法。
反向?qū)W習(xí)策略作為近年來計算機科學(xué)、人工智能等領(lǐng)域研究的一個熱點,最早是由Tizhoosh 提出的,它的核心思想是對問題求出可行解,并將可行解映射到另一個空間,求其反向解,算法通過對兩者進行評估,篩選較優(yōu)的解進入下一次迭代。精英反向?qū)W習(xí)則是在反向?qū)W習(xí)策略的基礎(chǔ)上,構(gòu)造精英種群的反向解,然后評估對比搜索范圍中的可行解,將較優(yōu)的解放入接下來的迭代運算中?;谠摬僮鳈C理,算法不僅可以獲得較快的收斂速度,還可以保持較好的種群多樣性。反向機理具體定義為:
傳統(tǒng)的鯨魚優(yōu)化算法其全局與局部搜索性能取決于系數(shù)與收斂因子。改變系數(shù)的值可以決定算法的搜索方式,參數(shù)的值與收斂因子的取值變化息息相關(guān),兩者表現(xiàn)為一個線性遞減關(guān)系,而這種線性變化不能夠體現(xiàn)出實際的搜索過程。因此,本文對收斂因子進行改進,引入非線性策略,在迭代初期有一個較快的衰減,算法能夠迅速收斂,提升了全局的搜索能力。在迭代后期,收斂因子的衰減速度趨緩,進一步提升算法局部開發(fā)的能力。改進公式如式(2)所示:
式中,代表當(dāng)前迭代次數(shù),則代表最大迭代次數(shù),與兩個參數(shù),取值分別為0.5 和0。如圖1所示,為在線性策略與非線性策略下,收斂因子隨著迭代次數(shù)變化的趨勢圖。其中最大迭代次數(shù)設(shè)置為500。
圖1 收斂因子a 的變化趨勢
為進一步增強算法的全局搜索性能,本文在隨機搜索階段引入自適應(yīng)調(diào)整策略,以達到進一步修正鯨魚種群的目的。首先,設(shè)定一個判斷閾值,通過判斷閾值對隨機搜索階段的位置迭代更新方式進行選取。判斷閾值的定義表達式如式(3)所示:
式中,代表當(dāng)前迭代次數(shù),則代表最大迭代次數(shù)。由式(3)可以看出,隨著迭代次數(shù)的的增加,判斷閾值會隨之減小,基于迭代次數(shù)的變化,對搜索方式進行自適應(yīng)調(diào)整,以達到全局搜索性能的優(yōu)化。
然后,對于種群中的鯨魚個體,通過產(chǎn)生的[0,1]之間的隨機數(shù),與判斷閾值進行比較,若<,就隨機選擇一個位置向量元素,依據(jù)式(4)進行位置迭代更新,表達式為:
式中,x表示隨機選擇的位置向量元素迭代更新后的值,表示[0,1]之間的隨機數(shù),與分別表示鯨魚個體位置中元素的最大值與最小值。
基于本文所提出的改進策略,將IWOA 與傳統(tǒng)的鯨魚優(yōu)化算法(WOA)、基本粒子群算法(PSO)和引力搜索算法(GSA)做仿真實驗并進行性能對比,測試函數(shù)如表1所示。
表1 基準(zhǔn)測試函數(shù)
實驗在Matlab R2016a 平臺上進行,設(shè)置所有算法的最大迭代次數(shù)為500,種群規(guī)模為30,搜索空間維度為30,每個算法均獨立運行30 次。IWOA 中設(shè)置對數(shù)螺旋線系數(shù)=1,選擇概率=0.5,仿真結(jié)果如表2 和圖2所示。
圖2 四種算法在測試函數(shù)上的收斂對比曲線
表2 實驗仿真結(jié)果
為更直觀的觀察IWOA 的尋優(yōu)性能,給出測試函數(shù)的收斂對比曲線圖,如上面圖1所示。IWOA 在獲得全局最優(yōu)值的同時,擁有更快的收斂速度。由圖1(c)可以明顯看出,與其他算法相比,IWOA 算法在迭代前期便能夠迅速收斂,只需迭代70 次左右便可收斂到理論最優(yōu)值,收斂速度上占據(jù)明顯的優(yōu)勢,而其他算法要么收斂相對緩慢要么陷入局部最優(yōu),難以獲得令人滿意的求解精度。
標(biāo)準(zhǔn)差可用來判斷算法的穩(wěn)定性,它代表實驗結(jié)果相對于平均數(shù)的偏離程度,標(biāo)準(zhǔn)差的值越小,反映算法的穩(wěn)定性越好。從本文選取的4 個測試函數(shù)算法的標(biāo)準(zhǔn)差數(shù)據(jù)來看,IWOA 尋優(yōu)穩(wěn)定性方面明顯優(yōu)于其他算法,有較高的穩(wěn)定性。在4 個測試函數(shù)的仿真數(shù)據(jù)中,IWOA 收斂后的最優(yōu)值更小,在平均值表現(xiàn)上也都優(yōu)于其他算法,收斂精度更高。另外,在函數(shù)、中,其測試仿真結(jié)果均收斂到了理論最優(yōu)值0,這也說明了IWOA 的全局搜索能力較好,同時在收斂性及收斂精度方面也都表現(xiàn)得更好。
IWOA 算法在單峰以及多峰測試函數(shù)中均表現(xiàn)出更好的尋優(yōu)性能,一方面得益于算法利用精英反向?qū)W習(xí)在迭代初始階段獲得較高質(zhì)量的鯨魚初始種群,為加快算法的收斂速度打下了良好的基礎(chǔ),同時保證了種群的多樣性。其次,引入的非線性收斂因子,使得算法在迭代前期對全局快速搜索,后期在最優(yōu)解附近精細搜索,進一步加快了收斂速度。最后,在隨機搜索階段引入的自適應(yīng)調(diào)整策略,進一步增強了算法的全局搜索性能。仿真結(jié)果證明了本文所提出的改進策略的有效性及合理性,改進后的鯨魚優(yōu)化算法相比于傳統(tǒng)的鯨魚優(yōu)化算法而言,它的整體尋優(yōu)性能更優(yōu)。