????????聲明:文章是從本人公眾號中復制而來,因此,想最新最快了解各類智能優化算法及其改進的朋友,可關注我的公眾號:強盛機器學習,不定期會有很多免費代碼分享~?
目錄
原理簡介
一、初始化階段
二、全局開發階段
三、局部勘探階段
(1)發射電磁波
(2)反射電磁波
(3)接收電磁波
算法偽代碼
性能測評
參考文獻
完整代碼
????????波搜索算法(Wave Search Algorithm, WSA)是一種新型的元啟發式算法(智能優化算法),靈感來源于雷達技術的啟發,采用了新的初始化方法和邊界約束規則以及各種改進的貪心機制,總體上看性能不錯~作者23個標準測試函數和CEC2017上對WSA進行了測試,證明了WSA算法的優越性。該成果由Haobin Zhang等人于2024年4月發表在SCI期刊《The Journal of Supercomputing》上!
????????由于發表時間較短,谷歌學術上還沒人引用!你先用,你就是創新!
原理簡介
????????靈感:雷達技術是一種利用電磁波探測目標位置、速度和形狀的無線通信技術。它通過發射無線電波,接收反射回波,并對回波進行處理和分析,實現對目標的檢測、定位、跟蹤和識別。
一、初始化階段
????????首先,我們需要執行一系列初始化準備。我們設粒子數為n,待優化問題維數為d,用矩陣模擬電磁波粒子W的位置:
????????并用f ([Wn1, Wn2,?Wnd])表示第n個個體的適應度值,種群的適應度值可以用以下向量表示:
????????最后,準備n個隨機數k1, k2......Kn從0到1,初始化粒子位置。
????????其中xi是均勻化的ki, xi*是x中的隨機值,lb和ub為搜索空間的上下邊界。
二、全局開發階段
????????式中,Wmin是由W各維上的最小值組成的向量,Wmax是由W各維上的最大值組成的向量,fmean是所有粒子適應度值的平均值,r1是0到1之間的隨機數,t是當前迭代次數,t是總迭代次數。
????????式(5)的好處是可以逐步縮小搜索范圍,新生成的點在縮小的范圍內生成,提高了搜索效率。式(6)是一種改進的貪心機制,控制種群在全局最優位置附近的位置。
三、局部勘探階段
(1)發射電磁波
????????式中σ=?(5t∕T?2)/√(25(5t∕T?2)2) + 0.7,σ為波形大小控制系數,m為元素服從正態分布并按順序排列的列向量,Wbest為當前最優位置,Wl為W按與Wbest的接近程度重新排列后的位置矩陣,fmax為群中最大的適合度值。式(7)的作用是模擬電磁波向外擴散,減少陷入局部最優的可能性,提高搜索效率。式(8)是一種改進的貪心機制,其作用是當群體位置向外波動時,使群體位置不劣于當前群體位置。
(2)反射電磁波
????????式中β= 0.75 + e?i∕nw2,β為反射強度系數,r2為0 ~ 1的隨機值,nw2為模擬反射電磁波的粒子數。Wfi是W按照適應度值從小到大的順序重新排列后的位置矩陣。式(9)模擬了部分粒子(適應度值較低的粒子)遇到障礙物向Wbest反射,而剩余粒子(適應度值較高的粒子)遠離Wbest繼續向外擴散。
(3)接收電磁波
????????式中δ為接收系數,δ= 0.6 +(1.2?0.5)sin (tπ/2T),η為服從正態分布的隨機數,nw3為模擬接收電磁波的粒子數。Wbest*是由通過卷積得到的歷史最優位置,Wbest*= [Wbest1;Wbest2;Wbest3?Wbestt]?([I1;I2;I3?It]),I1=I2= I3?It=1∕t。λ為校正因子,λ= (2t∕T?0.7)∕(0.78+|2t∕T?0.7|)+1。r3、r4、r5、r6是0到1的隨機數。式(11)模擬了雷達通常正常接收電磁波,但有時會受到干擾,需要進行校正和處理。其作用是使粒子群體向當前最優方向搜索。同時,有一定的概率會向W方向偏轉,以減少陷入局部最優的可能性。
????????最后,引入了一種確定性優化技術:基于中心差分法的擬合梯度下降法。其數學表達式為:
????????式中,W+εi = Wi +ε,W?εi = Wi?ε,ε= 10?6,g為梯度,α為步長系數,將α的初始值設為α0=0.3,通過步長試驗確定最終的步長。步長試驗方法如下:如果初始步長迭代后的適應度值小于等于當前適應度值,則α=α0∕c,否則α=α0*c,其中c為縮放因子。式(14)采用中心差分法擬合待優化問題的解析信息,用于搜索最優解,以提高搜索效率和精度。值得注意的是,該策略是一種確定性優化技術。WSA算法通過引入該策略,結合了確定性和不確定性優化技術。
????????另外,廣義的邊界限制規則是將越過邊界的粒子放在邊界上。我們發現這種方法降低了粒子群的多樣性。因此,我們建議將超出邊界的粒子隨機設置在搜索范圍內。數學表達式為:
????????其中,lb和ub分別為搜索范圍的下邊界和上邊界,r是一個d維隨機化列向量,其元素值范圍為0到1。
算法偽代碼
????????為了使大家更好地理解,這邊給出算法偽代碼,非常清晰!
????????如果實在看不懂,不用擔心,可以看下源代碼,再結合上文公式理解就一目了然了!
性能測評
????????原文作者在經典的23個基準測試函數和30個CEC2017測試函數)對WSA算法進行測試,并將WSA算法應用于六個常見工程問題和移動機器人路徑規劃問題,將其與最先進和高引用算法進行比較。實驗結果表明,WSA算法的優化能力優于其他最先進的優化算法,能夠有效地解決實際工程問題。
????????這邊為了方便大家對比與理解,采用23個標準測試函數,即CEC2005,并與性能較為廣受認可的麻雀優化算法SSA進行對比!這邊展示其中5個測試函數的圖,其余十幾個測試函數大家可以自行切換嘗試!
????????可以看到,WSA在許多高難度的函數上都超過了經典的SSA算法,表明該算法性能是非常優越的,很有說服力,大家應用到各類預測、優化問題中是一個不錯的選擇~
參考文獻
????????[1]Zhang H, San H, Sun H, et al. A novel optimization method: wave search algorithm[J]. The Journal of Supercomputing, 2024: 1-36.
完整代碼
????????如果需要免費獲得圖中的完整測試代碼,只需點擊下方小卡片,后臺回復關鍵字:
WSA
????????也可點擊下方小卡片,后臺回復個人需求(比如WSA-SVM)定制以下青蒿素算法優化模型(看到秒回):
????????1.回歸/時序/分類預測類:SVM、RVM、LSSVM、ELM、KELM、HKELM、DELM、RELM、DHKELM、RF、LSTM、BiLSTM、GRU、BiGRU、PNN、CNN、BP、XGBoost、TCN、BiTCN、ESN等等均可~
????????2.組合預測類:CNN/TCN/BiTCN/DBN/Adaboost結合SVM、RVM、ELM、LSTM、BiLSTM、GRU、BiGRU、Attention機制類等均可(可任意搭配非常新穎)~
????????3.分解類:EMD、EEMD、VMD、REMD、FEEMD、TVFEMD、CEEMDAN、ICEEMDAN、SVMD等分解模型均可~
????????4.其他:機器人路徑規劃、無人機三維路徑規劃、DBSCAN聚類、VRPTW路徑優化、微電網優化、無線傳感器覆蓋優化、故障診斷等等均可~
????????5.原創改進優化算法(適合需要創新的同學):2024年的波搜索算法WSA以及麻雀SSA、蜣螂DBO等任意優化算法均可,保證測試函數效果!
????????更多免費代碼鏈接:更多免費代碼鏈接