陳亞琦 石明鈞
關鍵詞:麻雀搜索算法;混沌映射;自適應比例;灰狼優(yōu)化算法;等級制度
0引言
在當前科技快速發(fā)展的背景下,優(yōu)化算法作為一種重要的數學工具,被廣泛應用于各個領域,如工程、經濟、金融、生物等。隨著大數據、人工智能等新技術不斷涌現,對優(yōu)化算法的要求也越來越高。因此,加強對優(yōu)化算法的研究和應用具有重要意義。
從傳統(tǒng)的優(yōu)化算法到新興的群體智能優(yōu)化算法,優(yōu)化算法的發(fā)展呈現出多樣化和多層次化的趨勢。新興的群體智能優(yōu)化算法有蟻群優(yōu)化算法[1](ACO)、粒子群優(yōu)化算法[2](PSO)、灰狼優(yōu)化算法[3](GWO)和鯨魚優(yōu)化算法[4](WOA)。這些算法天然適合并行計算,能夠充分利用多核、分布式等計算資源,提高計算效率,同時也具有良好的全局搜索能力。但是在某些具體問題中,算法的適應性可能不夠且收斂速度上略顯緩慢。這種情況就需要適應性更高或者多策略融合的優(yōu)化算法對具體問題進行尋優(yōu)求解。
2020年,Xue等人提出了麻雀搜索算法[5](SSA),其主要算法思想是通過模仿麻雀的覓食行為,對最優(yōu)化問題進行求解。在麻雀優(yōu)化算法的改進方面,黃敬宇[6]將t分布與Tent混沌映射組合對麻雀搜索算法進行改進,并應用于分類問題中,驗證了改進后麻雀搜索算法的實用性和有效性。本文提出一種改進的麻雀搜索算法(ISSA),在初始化階段加入改進的Tent混沌映射并引入發(fā)現者和跟隨者比例自適應變化,在偵察者位置更新方面加入灰狼優(yōu)化算法的等級制度,完成對麻雀搜索算法的改進。
1改進的麻雀搜索算法
1.1混沌初始化
群體智能優(yōu)化算法的初始化會影響其搜索性能。缺乏先驗信息是麻雀搜索算法在初始階段面臨的難點之一。傳統(tǒng)方法是隨機生成初始種群位置,但是這樣的做法會導致麻雀種群缺乏多樣性,分布不均勻,往往難以獲得全局最優(yōu)解,從而影響了麻雀搜索算法的收斂速度和精度。
在優(yōu)化麻雀搜索算法的過程中,為了避免Tent混沌序列在迭代過程中可能出現的小周期和不穩(wěn)定周期點,在原有的Tent混沌映射表達式中引入了一個隨機變量rand(0,1)×1/N。本文采用改進后的Tent混沌映射[7]對麻雀搜索算法的隨機初始化進行優(yōu)化。在MATLAB上畫出Logistic、Tent和改進的Tent混沌映射產生的混沌序列在二維區(qū)域中的初始分布,如圖1所示。
從圖1中可以觀察到,改進后的Tent混沌映射可以有效提高麻雀初始種群在搜索空間的分布質量,增強算法的全局搜索能力,最終提高了麻雀搜索算法的求解精度。使得搜索過程更加均勻,有助于避免全局最優(yōu)點在設計變量空間的兩端的情況,從而提高算法的效率。
1.2比例自適應
在麻雀搜索算法迭代過程中,發(fā)現者和跟隨者比例的變化直接影響了搜索的效率和精度。在未改進麻雀搜索算法中,這一比例保持不變,導致了算法迭代效率的損失。為解決這一難題,在麻雀搜索算法迭代過程中加入了發(fā)現者和跟隨者自適應變化的方法。該方法隨著迭代次數的增加動態(tài)調整發(fā)現者和跟隨者的數量比例,使得算法在前期和后期不同的階段可以實現全局搜索到局部搜索的平穩(wěn)過渡,有效提高了麻雀搜索算法的收斂精度。在加入發(fā)現者-跟隨者比例自適應后,發(fā)現者和跟隨者的變化如圖2所示。
從圖2中可以看出,青色為加入比例自適應變化后發(fā)現者和跟隨者的變化情況,而品紅色則是原始麻雀搜索算法中發(fā)現者和跟隨者的比例。發(fā)現者的數量會隨著時間逐漸減少,而跟隨者的數量相應增加,這種變化使得搜索過程由全面廣泛搜索向局部搜索的方向轉變,有助于提高算法搜索的準確性,使得在整個搜索過程中早期全局搜索和后期局部優(yōu)化能夠達到一種平衡狀態(tài)。
1.3等級制度
在遇到危險時,麻雀個體逃生方式單調狹窄,并在更新中僅考慮當前狀態(tài)的最優(yōu)解,沒有考慮其他次優(yōu)解,這種情況將過早使全部個體收斂于當前最優(yōu)個體,若當前最優(yōu)并非全局極值點,將使結果陷入局部最優(yōu)解。所以引入灰狼優(yōu)化算法中的等級制度,選取前3個歷史最優(yōu)位置作為潛在的最優(yōu)解,該方法能夠更為靈活地搜索附近的可靠解,降低了麻雀搜索算法陷入局部最優(yōu)的概率。
在原始灰狼優(yōu)化算法的狩獵中,三個頭狼的權重系數相同,這顯然與真實狼群的等級制度矛盾,因此加入權重來衡量三只頭狼的重要程度。
1.4改進麻雀搜索算法的流程
本研究中對麻雀搜索算法進行了一系列改進。首先,采用Tent混沌映射來初始化麻雀種群的位置信息,以提高麻雀初始種群在搜索空間上的分布質量。其次,引入了自適應變化的發(fā)現者和跟隨者比例,隨著迭代次數的增加逐漸調整比例,使麻雀搜索算法在全局搜索和局部精確搜索之間平衡轉換。最后,借鑒了灰狼優(yōu)化算法的等級制度,更新偵察者的位置,以降低陷入局部最優(yōu)解的風險。這些改進措施有效提升了麻雀搜索算法的收斂精度和局部搜索能力。
改進的麻雀搜索算法的具體步驟如下:
第1步:初始化麻雀種群的參數,使用改進的Tent混沌映射生成麻雀種群的初始位置。
第2步:更新麻雀種群的適應度,對種群進行排序。
第3步:更新發(fā)現者和跟隨者的數量,更新慣性權重。
第4步:更新發(fā)現者和跟隨者的位置。
第5步:根據灰狼優(yōu)化算法中的等級制度更新偵察者的位置。
第6步:更新種群適應度和個體位置,對種群進行排序。
第7步:在滿足停止條件后,輸出麻雀位置信息對應的最佳適應度值;若條件不符合,則需要重復執(zhí)行3至6步直至符合停止條件為止。
1.5改進麻雀搜索算法的對比實驗
為了驗證改進后的麻雀搜索算法的性能,實驗采用了多種不同類型的基準測試函數進行驗證。本研究對改進后的麻雀搜索算法進行了性能對比,分別與未進行改進的麻雀搜索算法(SSA)、灰狼優(yōu)化算法(GWO)、鯨魚優(yōu)化算法(WOA)、粒子群優(yōu)化算法(PSO)以及遺傳算法(GA)進行了對比分析。
為了驗證改進麻雀搜索算法的可行性和尋優(yōu)效果,在仿真實驗中選擇了包括高維單目標、高維多目標以及低維度基準測試函數在內的6個不同類型的基準測試函數進行了仿真實驗。
高維單目標基準測試函數是指在給定搜索空間內具有唯一極值點的函數。表1列舉出了2種高維單目標基準測試函數的數學表達式、維度、搜索范圍和基準測試函數的最優(yōu)解。
高維多目標基準測試函數是指除了全局極值點外,還存在若干局部最優(yōu)值。表2列舉出了兩種高維多目標測試函數的信息。
低維度的基準測試函數指的是搜索空間的維度較低。表3列舉出了五種低維度測試函數的信息。
進行優(yōu)化算法對比實驗的具體實驗環(huán)境如下,操作系統(tǒng)是Win11專業(yè)版,電腦CPU是Inteli5-12600KF,電腦內存是16G,實驗平臺是MATLABR2022b。
1.5.1高維單目標測試函數
為了更直觀地展示出改進的麻雀搜索算法與其他優(yōu)化算法在高維單目標基準測試函數上的尋優(yōu)過程,給出了六種優(yōu)化算法在三種高維單目標測試函數中進行100次迭代后的運行收斂曲線,如圖3所示。在基準測試函數F1和F2中,改進的麻雀搜索算法在迭代初期展現出了領先于其他五種優(yōu)化算法的搜索效能,與此同時,在迭代后期,改進的麻雀搜索算法的收斂精確度也超越了其他五種優(yōu)化算法的表現。在F1和F2中,其他優(yōu)化算法存在一定程度的停滯現象,而改進的麻雀搜索算法能夠找到全局最優(yōu),擴大搜索的范圍,向更優(yōu)的解收斂。
1.5.2高維多目標測試函數
為了清晰展示改進后的麻雀搜索算法與其他算法的優(yōu)化過程,針對兩種高維多目標的基準測試函數,對六種優(yōu)化算法進行了100次迭代的運行,并得到了各自的收斂曲線。如圖4所示。
根據圖4所示,在高維多目標基準測試函數F4中,改進的麻雀搜索算法搜索到的值比其他算法的值更接近測試函數的最優(yōu)解,同時收斂速度也快于其他算法,GWO和WOA在搜索過程中都逐漸停滯在局部最優(yōu)解上。但是對于高維多目標測試函數F3,則未能產生明顯的優(yōu)化效果。
1.5.3低維度測試函數
為了展示改進的麻雀搜索算法及其他優(yōu)化算法在低維度基準測試函數上的性能,對6種優(yōu)化算法在五種基準測試函數上進行了100次迭代,得到了相應的收斂曲線。如圖5所示。
根據圖5所示,在低維度基準測試函數F5中,改進的麻雀搜索算法雖然在迭代初期沒有未進行改進的麻雀搜索算法的收斂速度快,但比未進行改進的麻雀搜索算法先一步找到全局最優(yōu)解。在基準測試函數F6中,改進的麻雀搜索算法展現出了更快的收斂速度和更高的收斂精度,相較于其他5種優(yōu)化算法表現更為突出。
綜合上述實驗結果可以得出,在高維單目標、多目標和低維度的基準測試函數的實驗中,改進麻雀搜索算法的性能表現均較好。這充分說明了改進的麻雀搜索算法具有更好的全局和局部搜索能力。
3結束語
本文對新型群體智能優(yōu)化算法麻雀搜索算法進行了改進,首先,在麻雀搜索算法的初始化階段引入改進的Tent混沌映射,在發(fā)現者和跟隨者比例中加入自適應比例,使得算法在前期和后期不同的階段可以實現全局搜索到局部搜索的平穩(wěn)過渡,最后在偵察者位置更新方面引入灰狼優(yōu)化算法的等級制度,可以更為靈活搜索的可靠解。在6種優(yōu)化算法的對比實驗中,改進的麻雀搜索算法在6種基準測試函數上的表現均較好,具有更好的全局和局部搜索能力。
在群智能優(yōu)化算法的研究上,目前各種群體智能優(yōu)化算法都或多或少存在著缺點,對于算法的更新機制進行改進是優(yōu)化算法創(chuàng)新的重要方法,提高算法的收斂速度,從而實現更快速、更精確的問題求解過程。