?

一種新的全局優化鯨魚群算法(Global_WOA)

2023-11-26 04:12李東升李萬龍劉祥坤
長春工業大學學報 2023年4期
關鍵詞:鯨魚獵物數學模型

李東升, 李萬龍, 劉祥坤

(長春工業大學 計算機科學與工程學院, 吉林 長春 130102)

0 引 言

近年來,研究人員對群體智能算法的優化(SI)變得非常熱衷。因為群體智能優化算法可以高效率解決許多實際問題。元啟發式算法(Meta-heuristic)是基于計算智能的機制求解復雜優化問題最優解或滿意解的方法,有時也被稱為智能優化算法(Intelligent optimization algorithm)。元啟發式算法是通過對生物、物理、化學、社會、藝術等系統,或領域中相關行為、功能、經驗、規則、作用機理的認識,而提出優化算法的設計原理,并在特定問題特征的引導下提煉相應的特征模型,設計出智能化的迭代搜索型優化算法。啟發式算法主要分為三類:基于進化的算法、基于群體智能的算法和基于物理現象的算法。

鯨魚群優化該算法的主要思想是通過模仿鯨魚的捕食行為實現對目標問題的求解。Mirjalili S等[1]提出一種群體智能算法,它具有原理簡單、操作簡單、易于實現的顯著優點。因為它依賴于簡單的概念,包含的算子較少,因此引起了許多學者的關注。但是,WOA在解決優化問題方面仍然存在缺陷。

1 相關研究

近年來,WOA的研究主要分為工程應用和理論創新兩個方面。在工程應用中,WOA的實際應用主要基于其操作方便、性能優良的特點。鐘明輝等[2]提出一種隨機調整控制參數的鯨魚優化算法;Rkennedy J等[3]提出粒子群算法;沙金霞[4]通過改進鯨魚算法并應用在多目標水資源優化配置中也取得了良好的效果;Rashedi E等[5]提出一種引力搜索算法,在目前的人工智能應用中也有很好的效果;Mehne H H等[6]提出一種基于 Levy飛行的變體來增強WOA的性能;Mafarja M等[7]提出鯨魚優化算法在數據集的特征選擇中具有更好的選擇效果,尤其是在搜索最優特征子集時;Abdel-Basset M等[8]提出一種將WOA(稱為HWOA)與本地搜索策略相結合的新算法;Sayed G I等[9]提出一種針對數據聚類問題的多群鯨魚優化算法(MsWOA);郭振洲等[10]提出一種基于自適應權重和柯西變異的鯨魚優化算法;龍文等[11]通過求解大規模優化問題而改進鯨魚優化算法;王堅浩等[12]提出基于混沌搜索策略的鯨魚優化算法;何慶等[13]提出一種混合策略改進的鯨魚優化算法。以上研究結果表明,鯨魚應用優化算法解決實際問題,取得了好的結果,鯨魚優化算法性能值得肯定,具有重要意義。

2 原始鯨魚算法的基本思想

鯨魚優化算法的數學模型相對于其他比較流行的群智能算法的數學模型比較簡單[14],參數也相對較少,對其參數優化也容易,原始鯨魚優化模型大致分為三個階段。

2.1 包圍獵物

因為座頭鯨能識別獵物的位置并包圍它們。但是算法的全局最優位置沒有優先級,所以在鯨魚群算法(WOA)的最初設定中,假設最優解位置是獵物的位置或是最接近獵物的鯨魚位置,然后,其他鯨魚向最優解的位置通過變換位置來進行靠攏[9],此行為表示為

(1)

式中:t----當前迭代;

A,C----系數向量;

X*----迄今為止獲得最佳解的位置向量;

X----位置向量;

·----逐個元素的乘法。

A=2ar-a,

C=2r,

(2)

式中:a----在迭代過程中從2 線性減小到0(在探索和利用階段);

r----[0,1] 中的隨機向量。

搜索代理的位置(X,Y)可以根據當前最佳記錄(X*,Y*)的位置更新。通過調整“A”和“C”向量的值,可以在當前位置實現最佳代理周圍的不同位置。

(3)

式中:a----參數;

i----當前代數;

M----總的迭代次數。

2.2 螺旋氣泡網攻擊

因為座頭鯨的捕食行為是通過泡泡網攻擊的方式來得到食物,所以對泡泡網攻擊行為進行數學建模設計的兩種方法為收縮環繞機制和螺旋上升機制。

1)收縮環繞機制是由系數A控制,當A≤1時,當前鯨魚開始向最優解靠攏,并且在這個過程中,當前代理的位置可能是原始位置和當前最佳代理位置之間的任意位置。但是系數A又是由其中的參數a來控制,a是一個[-A,A]區間內的隨機值,過程中從2線性下降到0,當達到0時,表示當前鯨魚的位置已經是最優解的位置。

2)螺旋上升機制(螺旋更新位置)的建立是通過先計算出當前鯨魚搜索代理(X,Y)和最佳位置的鯨魚(X*,Y*)之間的距離。然后在兩者之間建立一個螺旋方程,并模擬座頭鯨的螺旋捕食行為,

X(t+1)=D·ebl·cos(2πl)+X(t),

(4)

式中:D----第i條鯨魚到獵物的距離(迄今為止獲得的最佳解);

b----用于定義對數螺旋形狀的常數;

l---- [-1,1] 中的隨機數。

結合前面描述,座頭鯨在整個捕食過程中,會在縮小的圓圈內圍繞獵物游動,同時沿著螺旋形路徑游動。通過一個隨機數P[0,1]來假設有50%的概率在優化過程中選擇收縮環繞機制或螺旋模型來更新鯨魚的位置[10]。 對應的數學模型為

(5)

這是我們在探索群智能算法勘探和開發過程中的開發階段。

2.3 搜索階段

座頭鯨除了捕食行為外,還有尋找獵物的過程,下面就是對座頭鯨尋找獵物行為的描述。在前面描述座頭鯨泡泡網攻擊行為的時候,已經明確座頭鯨的捕食行為和尋找獵物行為之間的交替是基于系數A向量的變化而決定的。 因此,在搜索階段,我們使用大于1或小于-1的隨機值A來強制搜索代理遠離參考鯨魚。與開發階段相比,在探索階段根據隨機選擇的搜索代理,而不是迄今為止找到的最佳搜索代理來更新搜索代理的位置[11]。 這種機制和|A|>1 強調探索并允許WOA算法執行全局搜索。數學模型為

D=|CXrand-X|,

X(t+1)=Xrand-A·D,

(6)

式中:Xrand----從當前種群中選擇的隨機位置向量(隨機鯨魚)。

事實上,座頭鯨是根據彼此位置隨機搜索的。

3 改進的鯨魚優化算法

WOA算法成功的因素之一是勘探能力和開發能力較其他群智能算法較優,但是隨著時間的增長,在實際應用中也暴露出較多缺點,如精度低、收斂速度慢、易涉及局部最優等。所以,近幾年有許多學者在優化鯨魚群算法上繼續做著努力,文中對鯨魚算法優化的幾個策略能夠很好地提高該算法的勘探能力和開發能力。

在前人優化策略中就有單獨對WOA算法的距離控制參數A進行優化,得到的效果也比較顯著。因為它在整個算法中是在探索和開發之間找到適當平衡的主要因素。文中優化策略不是繼續尋求勘探與開發之間的平衡,而是單獨地對勘探和開發階段進行優化,也就是整體全面的優化[12]。

3.1 勘探階段優化策略

在鯨魚群算法的勘探階段,就是當前搜索代理發現獵物不是最優,會向外繼續搜索獵物。當然這個行為通過學者們抽象用一個系數A的范圍來控制,當|A|≥1時,就會向外搜索,也就是該算法的勘探階段。

在實際的座頭鯨群搜索獵物過程中,參照隨機鯨魚更新自己的位置,肯定不是在原始的搜索獵物模型中,可以看出,當前搜索代理在找參照搜索代理,更新自己的位置時,參照的搜索代理目標比較單一,因此也就在全局范圍內搜索獵物存在缺陷,容易造成向單一方向尋找,造成局部最優的結果。所以,文中通過優化原始搜索獵物的數學模型,引入隨機因子Xrand來擴大當前鯨魚的搜索范圍,使當前鯨魚在整個范圍內尋優,得到的值也能達到最優,優化后的數學模型為

X(t+1)=kXrand 1(t)+(1-k)Xrand 2(t)-AD3,

D3=|kCXrand 1(t)+(1-k)CXrand 2(t)-X(t)|,

(7)

式中:k----(0,1]之間的一個隨機數;

D3----當前搜索代理到隨機代理之間的距離。

3.2 開發階段優化策略

群智能優化算法中的開發階段是當前收縮代理,開始根據周圍的搜索代理逐漸向獵物(最優解)的位置靠攏,直到在代數的迭代下達到最優值的一個過程。這就是常在群智能算法中看到的開發階段。

3.2.1 在包圍獵物階段引入隨機因子

在鯨魚群算法的開發階段,也就是該算法的經典捕獵行為:泡泡網攻擊機制是由兩個不同機制共同構成鯨魚的捕獵行為,如環繞機制和螺旋上升機制;在實際捕獵中,鯨魚進行環繞機制時,并不是所有鯨魚單一地向立體空間中規定的某一處(獵物)靠近,而是會在這個捕獵空間中,隨機地對比是否還有較優的值存在,如果存在,則會向最優值靠攏,這也會跳出群智能算法中常有的造成局部最優的弊病[13]。

在優化的包圍獵物階段策略引入空間隨機因子,在迭代過程中,當前搜索代理會比較空間內是否還有其他搜索代理的位置是最優的。數學模型為

(8)

式中:t----(0,1]之間的一個隨機數;

Xrand----空間中的隨機因子。

3.2.2 在螺旋上升階段引入增強開采能力因子Q

在鯨魚群智能算法的開發階段,另一個機制就是螺旋上升機制。在原始的螺旋上升機制中,迭代過程時,當前搜索代理通過不斷地參照搜索空間中其他搜索代理的位置來更新自己的位置,最終達到最優解的目的[14]。因此,文中優化螺旋機制的策略中,引入的因子Q可以提高算法的收斂速度,能夠將尋找到的解更加逼近最優解,并能夠很好地跳出局部最優,最終提高了算法的開發階段。因子數學模型為

Q=2e-5k,

(9)

優化后的螺旋機制數學模型為

(10)

式中:k----當前迭代次數和總迭代次數的比;

b----一個常數1。

4 實驗仿真與分析

算法仿真測試均在Intel Core i5-6500 CPU、3.2 GHz主頻8 GB內存,以及 Windows 764 為操作系統的計算機上實現,編程軟件為Annocoda中的Spyder,引入6個典型基準測試函數進行測試,見表1。

表1 基準函數

其中:F1~F5為連續單模函數; F6為復雜非線性多模函數。

文中對算法的測試主要包括以下三個部分:

1)在相同的種群大小和迭代次數條件下,比較改進算法和傳統的WOA算法、傳統的GWO算法在基準測試函數上算法的收斂速度和尋優精度,并證明改進的WOA算法各項性能的提升;

2)對改進的WOA算法在不同策略下進行獨立測試,根據測試結果分析各種策略對WOA性能的影響;

3)與其他研究人員對鯨魚算法的改進對比,證明其具有較強的競爭力。

傳統WOA參數見表2。

4.1 改進策略對算法性能影響

為了對比不同改進策略對GLOBAL_WOA算法性能的影響,參數用上述實驗的參數,策略一是對WOA中勘探階段的數學模型進行改進,并用WOA_1來標記;策略二是通過對WOA算法開發階段的搜索獵物數學模型進行改進,并用WOA_2來標記;策略三是對WOA中開發階段的螺旋上升氣泡網攻擊獵物階段的數學模型進行改進,并用WOA_3來標記。

不同策略下的改進算法對比見表3。

表3 不同策略下的改進算法對比(最優適應度值)

實驗結果表明,在策略一(WOA_1)和策略二(WOA_2)的改進下,可以增強初始WOA的尋優進度這個性能指標,而策略三(WOA_3)的引入主要提供了算法的收斂速度。

算法收斂曲線對比如圖1所示。

(a) fitness1 (b) fitness2

4.2 與其他改進WOA性能對比

將改進的WOA和其他研究人員對傳統WOA的改進算法作對比實驗,對比改進算法性能優劣。參數設置最大迭代次數為1 000,種群規模為20,維數為30,基準測試函數用上述實驗用的函數,比較最優解的均值和標準差,測試結果見表4。

表4 不同改進算法的基準函數的對比

實驗結果表明,改進的WOA算法相較于其他改進算法在尋優精度和收斂速度等方面有較強的競爭力[15]。

5 結 語

WOA 作為一種新型啟發式優化算法,它與其他元啟發式優化算法類似,在求解復雜函數優化問題時,存在收斂速度慢、易陷入局部最優的問題??紤]在算法迭代過程中,鯨魚捕食策略的選擇,以及位置更新對算法尋優性能的影響,在勘探階段引入隨機因子來擴大搜索范圍,從而得到較優結果,在開發階段的螺旋上升階段引入隨機因子來找到范圍內的最優值,在氣泡網攻擊階段引入收斂因子Q,三種改進策略對 WOA 進行改進,提高其初始算法的收斂速度和尋優精度。通過對 6 個基準測試函數仿真結果表明,改進算法的尋優精度及收斂速度均有大幅提升,并且相較于其他改進算法仍具有明顯優勢,證明了提出的改進策略能夠使算法在求解復雜函數優化問題時具有更好的優化性能。而如何將改進算法應用于約束優化問題以及復雜的實際工程問題將是下一步主要研究的內容。

猜你喜歡
鯨魚獵物數學模型
小鯨魚
蟒蛇為什么不會被獵物噎死
AHP法短跑數學模型分析
活用數學模型,理解排列組合
迷途鯨魚
鯨魚
可怕的殺手角鼻龍
鯨魚島——拖延癥
霸王龍的第一只大型獵物
對一個數學模型的思考
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合