郭書杰+方興+趙鶴群
摘要:作為一種新興的群體智能優(yōu)化方法,人工蜂群算法在函數(shù)優(yōu)化方面具有較好的優(yōu)化能力。然而其收斂速度也受到控制參數(shù)的影響,為了考察算法各參數(shù)對其性能的影響,使用VS2010編寫了一套標(biāo)準(zhǔn)人工蜂群算法,并選取兩個標(biāo)準(zhǔn)函數(shù)作為測試對象,對這種影響進行了測試,最后給出了測試結(jié)論。
關(guān)鍵詞:人工蜂群算法;函數(shù)優(yōu)化;群智能
DOI:10.11907/rjdk.162752中圖分類號:TP312文獻標(biāo)識碼:A
文章編號:16727800(2017)004006103
0引言 人工蜂群算法[12](Artificial Bee Colony Algorithm,以下簡稱ABC 算法)是Karaboga于2005年提出,旨在解決函數(shù)優(yōu)化問題。作為一種新興的模擬生物群體智能的優(yōu)化方法,ABC算法具有參數(shù)數(shù)量較少、結(jié)構(gòu)簡單、易于實現(xiàn)、應(yīng)用范圍廣等諸多優(yōu)點。Karaboga和Akay的通過實驗對比了ABC算法與遺傳算法、微粒群算法、差分進化算法等常見智能優(yōu)化算法的性能。結(jié)果表明,就解決函數(shù)優(yōu)化問題而言,ABC算法的性能更具優(yōu)勢[3]。由于ABC算法具有上述優(yōu)點,它已經(jīng)被成功地應(yīng)用到多種不同類型的實際優(yōu)化問題中,比如參數(shù)優(yōu)化問題[4]、符號回歸問題[5]、神經(jīng)網(wǎng)絡(luò)[67]以及最短路徑問題[8]等。盡管ABC算法的控制參數(shù)相對較少,但它仍然有3個參數(shù)需要設(shè)置。多數(shù)智能優(yōu)化算法都是參數(shù)敏感型的,解決不同的問題時,各參數(shù)的敏感度又多不相同。為了研究算法求解函數(shù)優(yōu)化問題時參數(shù)對ABC算法的影響,使用Visual Studio2010編寫了經(jīng)典人工蜂群算法,考察了算法參數(shù)對算法性能的影響。
1人工蜂群算法 人工蜂群算法是通過模擬蜂群的采蜜行為來實現(xiàn)對問題的優(yōu)化求解,它將蜜蜂分為引領(lǐng)蜂、跟隨蜂和偵察蜂3種類型,將整個優(yōu)化過程分解為引領(lǐng)蜂尋優(yōu)、跟隨蜂尋優(yōu)、偵查蜂尋優(yōu)3個階段。在引領(lǐng)蜂尋優(yōu)階段,引領(lǐng)蜂通過在自己找到的蜜源附近進行局部探索,來提高蜜源質(zhì)量;在跟隨蜂尋優(yōu)階段,跟隨蜂首先根據(jù)各引領(lǐng)蜂發(fā)現(xiàn)的蜜源質(zhì)量,擇優(yōu)選擇一個蜜源,然后在該蜜源的周圍進行局部探索,借以實現(xiàn)尋找更優(yōu)蜜源;如果對某一蜜源的多次探索都改進了蜜源的質(zhì)量,則進入偵察蜂尋優(yōu)階段:與該蜜源對應(yīng)的引領(lǐng)蜂變成偵察蜂,在問題的解空間內(nèi),隨機生產(chǎn)一個新蜜源進行探索。 假令蜜源的數(shù)量為NP,蜜源Xi對應(yīng)的適應(yīng)度為fiti,蜜源維持代數(shù)閾值為limit,待解問題的維數(shù)為D,第i維xid的取值范圍為[Ldi,Udi],則人工蜂群算法的搜索步驟如下[1,910]。
(7)判斷算法是否滿足終止條件,若滿足則輸出最優(yōu)解并終止,否則轉(zhuǎn)到步驟(2)繼續(xù)執(zhí)行。
2算法參數(shù)人工蜂群算法有3個參數(shù):蜜源數(shù)量NP、優(yōu)化代數(shù)iterMax和維持代數(shù)limit。蜜源數(shù)量表示在待解問題的解空間中選取的點數(shù)。優(yōu)化代數(shù)用于規(guī)定進行多少次的迭代搜索,一般而言,迭代次數(shù)越多找到最優(yōu)解的概率也就越大,然而隨著優(yōu)化的進行,蜜源的多樣性會逐漸減低,甚至?xí)霈F(xiàn)超級蜜源而陷入過早收斂狀態(tài)。維持代數(shù)是為了增加蜜源的多樣性,提高算法的全局搜索性能。
2.1測試函數(shù)為了測試算法的各個參數(shù)對算法性能的影響,使用Visual Studio2010編寫了用于解決函數(shù)優(yōu)化的人工蜂群算法,選取維數(shù)為10的兩個標(biāo)準(zhǔn)函數(shù)作為測試對象,一個是單極值函數(shù)、一個是非線性多極值函數(shù)。測試函數(shù)如表1所示,被測函數(shù)的三維映像如圖1、圖2所示。
2.2測試方法 在保持其它參數(shù)不變的情況下,按照一定的步長逐漸增大被測參數(shù)的取值。對于被測參數(shù)的每個取值,運行程序50次,并記錄50次運行得到的最優(yōu)解的平均值。通過對比算法參數(shù)與這一平均值的大小來考察算法參數(shù)對算法性能的影響。
2.3測試結(jié)果 (1)蜜源數(shù)量NP對算法性能的影響。參數(shù)NP對算法性能的影響如圖3所示。由圖3不難看出,參數(shù)NP對算法性能的影響具有較大的不確定性,沒有明顯的規(guī)律可循。對于單極值函數(shù),NP取100時求得的函數(shù)值最小;而多極值函數(shù)則在NP取140時得到最優(yōu)解。
(2)優(yōu)化代數(shù)iterMax對算法性能的影響。優(yōu)化代數(shù)iterMax對算法性能的影響如圖4所示。
由圖4可以看出,當(dāng)優(yōu)化代數(shù)較小時,算法的優(yōu)化能力較弱;隨著優(yōu)化代數(shù)的增加,其優(yōu)化能力逐漸加強,但當(dāng)優(yōu)化代數(shù)大于200代時,這種趨勢趨于平緩。 (3)維持代數(shù)limit對算法性能的影響。維持代數(shù)limit對算法性能的影響如圖5所示。
由圖5可知,維持代數(shù)對算法優(yōu)化能力的影響與優(yōu)化代數(shù)相似,但只要不設(shè)置得過小,limit對算法優(yōu)化能力的影響較小。
3結(jié)語 人工蜂群算法是一種新興的智能優(yōu)化算法,在解決函數(shù)優(yōu)化問題時具有較好的全局搜索性能,然而與其它智能優(yōu)化算法一樣,人工蜂群算法的性能也受到控制參數(shù)的影響。本文通過實驗考察了各參數(shù)對算法性能的影響,能夠為算法的應(yīng)用提供參考。需要指出的是,本文僅考察了每個參數(shù)對算法性能的獨立影響,沒有考慮各參數(shù)之間的交叉影響。
參考文獻:[1]KARABOGA D.An idea based on honey bee swarm for numerical optimization[R].Technical Report,Kayseri:Erciyes University,2005.
[2]KARABOGA D,BASTURK B.A powerful and efficient algorithm for numerical function optimization:artificial bee colony (ABC) algorithm[J].Journal of Global Optimization,2007,39(3):459471.[3]KARABOGA D,AKAY B.A comparative study of artificial bee colony algorithm[J].Applied Mathematics and Computation,2009,214(1):108132.
[4]賈宗圣,司錫才,王桐.基于人工蜂群技術(shù)的海雜波參數(shù)優(yōu)化方法[J].中南大學(xué)學(xué)報:自然科學(xué)版,2012,43(9):34853489.[5]KARABOGA D,OZTURK C,KARABOGA N,et al.Artificial bee colony programming for symbolic regression[J].Information Sciences,2012,209(11):115.
[6]GARRO BA,SOSSA H,VZQUEZ RA.Artificial neural network synthesis by means of artificial bee colony (ABC) algorithm[C].New Orleans:Proc.of the IEEE Congress on Evolutionary Computation,2011:331338.[7]YEH W,HSIEH T.Artificial bee colony algorithmneural networks for Ssystem models of biochemical networks approximation[J].Neural Computing and Applications,2012,21(2):365375.
[8]SZETO WY,WU Y,HO SC.An artificial bee colony algorithm for the capacitated vehicle routing problem[J].European Journal of Operational Research,2011,215(1):126135.
[9]周新宇,吳志健,王明文.基于正交實驗設(shè)計的人工蜂群算法[J].軟件學(xué)報,2015,26(9):21672190.
[10]秦全德,程適,李麗,等.人工蜂群算法研究綜述[J].智能系統(tǒng)學(xué)報,2014,9(2):127135.
(責(zé)任編輯:孫娟)