倪亞萍,張業榮
(南京郵電大學,江蘇 南京 210046)
優化問題在計算機科學、人工智能、數字交通以及工業實踐等領域,一直以來都是國內外學者研究的熱點。受自然界動物群體的社會行為啟發,研究學者提出的許多群體智能優化算法,因其具有更高效的搜索能力、求解處理能力以及更強的魯棒性,而被廣泛用來解決目前復雜函數優化的相關問題。鯨魚優化算法(Whale Optimization Algorithm,WOA)作為一種受鯨魚捕食行為啟發的新興群體智能優化算法,在收斂速度與收斂精度方面有更好的表現,已被成功用來解決水資源優化配置問題以及特征選擇等問題。鯨魚優化算法結構簡單且需要調節的參數較少,每一只鯨魚的位置則代表算法的其中一個可行解,通過模擬鯨魚捕食行為對優化問題不斷尋優,最后獲得的最優個體便可以作為優化問題的最優解。然而傳統的鯨魚優化算法仍然存在一些不足之處,對一些實際問題的解決還存在一定局限性,因此學者們對其進行了多方面的改進。郭振洲等人提出了一種WOAWC 算法,通過采用柯西逆累積分布函數來改變鯨魚的位置,實驗表明,該算法不僅提高了全局搜索能力,還能進一步避免陷入局部極值。鐘明輝等人參考粒子群優化算法中的慣性權重策略,提出一種EWOA 算法,該算法可用來隨機調整算法控制參數,測試仿真結果顯示,改進后有效提升了算法的尋優能力以及收斂速度。然而,WOA 算法仍然沒能根本上解決其易陷入局部最優、初始種群的隨機性以及全局與局部搜索性能不平衡的一些問題,為此,本文分析并結合不同改進策略的優勢,提出了一種改進的混合鯨魚優化算法。
反向學習策略作為近年來計算機科學、人工智能等領域研究的一個熱點,最早是由Tizhoosh 提出的,它的核心思想是對問題求出可行解,并將可行解映射到另一個空間,求其反向解,算法通過對兩者進行評估,篩選較優的解進入下一次迭代。精英反向學習則是在反向學習策略的基礎上,構造精英種群的反向解,然后評估對比搜索范圍中的可行解,將較優的解放入接下來的迭代運算中?;谠摬僮鳈C理,算法不僅可以獲得較快的收斂速度,還可以保持較好的種群多樣性。反向機理具體定義為:


傳統的鯨魚優化算法其全局與局部搜索性能取決于系數與收斂因子。改變系數的值可以決定算法的搜索方式,參數的值與收斂因子的取值變化息息相關,兩者表現為一個線性遞減關系,而這種線性變化不能夠體現出實際的搜索過程。因此,本文對收斂因子進行改進,引入非線性策略,在迭代初期有一個較快的衰減,算法能夠迅速收斂,提升了全局的搜索能力。在迭代后期,收斂因子的衰減速度趨緩,進一步提升算法局部開發的能力。改進公式如式(2)所示:

式中,代表當前迭代次數,則代表最大迭代次數,與兩個參數,取值分別為0.5 和0。如圖1所示,為在線性策略與非線性策略下,收斂因子隨著迭代次數變化的趨勢圖。其中最大迭代次數設置為500。

圖1 收斂因子a 的變化趨勢
為進一步增強算法的全局搜索性能,本文在隨機搜索階段引入自適應調整策略,以達到進一步修正鯨魚種群的目的。首先,設定一個判斷閾值,通過判斷閾值對隨機搜索階段的位置迭代更新方式進行選取。判斷閾值的定義表達式如式(3)所示:

式中,代表當前迭代次數,則代表最大迭代次數。由式(3)可以看出,隨著迭代次數的的增加,判斷閾值會隨之減小,基于迭代次數的變化,對搜索方式進行自適應調整,以達到全局搜索性能的優化。
然后,對于種群中的鯨魚個體,通過產生的[0,1]之間的隨機數,與判斷閾值進行比較,若<,就隨機選擇一個位置向量元素,依據式(4)進行位置迭代更新,表達式為:

式中,x表示隨機選擇的位置向量元素迭代更新后的值,表示[0,1]之間的隨機數,與分別表示鯨魚個體位置中元素的最大值與最小值。
基于本文所提出的改進策略,將IWOA 與傳統的鯨魚優化算法(WOA)、基本粒子群算法(PSO)和引力搜索算法(GSA)做仿真實驗并進行性能對比,測試函數如表1所示。

表1 基準測試函數
實驗在Matlab R2016a 平臺上進行,設置所有算法的最大迭代次數為500,種群規模為30,搜索空間維度為30,每個算法均獨立運行30 次。IWOA 中設置對數螺旋線系數=1,選擇概率=0.5,仿真結果如表2 和圖2所示。

圖2 四種算法在測試函數上的收斂對比曲線

表2 實驗仿真結果
為更直觀的觀察IWOA 的尋優性能,給出測試函數的收斂對比曲線圖,如上面圖1所示。IWOA 在獲得全局最優值的同時,擁有更快的收斂速度。由圖1(c)可以明顯看出,與其他算法相比,IWOA 算法在迭代前期便能夠迅速收斂,只需迭代70 次左右便可收斂到理論最優值,收斂速度上占據明顯的優勢,而其他算法要么收斂相對緩慢要么陷入局部最優,難以獲得令人滿意的求解精度。
標準差可用來判斷算法的穩定性,它代表實驗結果相對于平均數的偏離程度,標準差的值越小,反映算法的穩定性越好。從本文選取的4 個測試函數算法的標準差數據來看,IWOA 尋優穩定性方面明顯優于其他算法,有較高的穩定性。在4 個測試函數的仿真數據中,IWOA 收斂后的最優值更小,在平均值表現上也都優于其他算法,收斂精度更高。另外,在函數、中,其測試仿真結果均收斂到了理論最優值0,這也說明了IWOA 的全局搜索能力較好,同時在收斂性及收斂精度方面也都表現得更好。
IWOA 算法在單峰以及多峰測試函數中均表現出更好的尋優性能,一方面得益于算法利用精英反向學習在迭代初始階段獲得較高質量的鯨魚初始種群,為加快算法的收斂速度打下了良好的基礎,同時保證了種群的多樣性。其次,引入的非線性收斂因子,使得算法在迭代前期對全局快速搜索,后期在最優解附近精細搜索,進一步加快了收斂速度。最后,在隨機搜索階段引入的自適應調整策略,進一步增強了算法的全局搜索性能。仿真結果證明了本文所提出的改進策略的有效性及合理性,改進后的鯨魚優化算法相比于傳統的鯨魚優化算法而言,它的整體尋優性能更優。