任開軍,鄧科峰,劉少偉,宋君強(國防科技大學海洋科學與工程研究院,湖南長沙410073)
自適應人工蜂群優(yōu)化的混沌系統參數估計*
任開軍,鄧科峰,劉少偉,宋君強
(國防科技大學海洋科學與工程研究院,湖南長沙410073)
為了對混沌系統未知參數進行準確估計,改進了人工蜂群優(yōu)化算法,提出自適應人工蜂群算法的混沌系統參數估計方法。將混沌系統參數估計問題轉化為多維變量數值優(yōu)化問題,利用人工蜂群算法對未知參數進行導向隨機搜索。在搜索過程中,通過種群優(yōu)化程度和解的質量自適應地調整更新步長和解的嘗試次數。以Lorenz混沌系統為例進行的仿真實驗表明,該方法在無噪聲和噪聲強度較大的情況下均能夠獲得較好的估計結果,表現出較強的魯棒性。
混沌系統;參數估計;人工蜂群;數值優(yōu)化
自1963年Lorenz發(fā)現第一個混沌吸引子以來,學術界對混沌系統理論展開了深入的研究,提出的混沌控制與同步方法在保密通信、信息科學、化學反應以及生物醫(yī)學等領域得到了廣泛的應用[1],并成為當前混沌系統與控制學科交叉研究的熱點。在混沌系統中,參數未知的情況時常發(fā)生。例如,混沌系統的復雜性導致它的某些參數無法測量或確定;系統的保密性要求使得某些參數不可獲知。由于現有的多數混沌同步與控制方法均是在系統參數已知的情況下獲取的,所以其在參數未知的情況下不再適用。此時,對混沌系統的未知參數進行有效估計便成為混沌控制與同步方法研究的前提和關鍵。
群智能優(yōu)化算法是解決混沌系統參數估計問題的一類重要方法[3-18]。不同于變分法基于導出的混沌系統伴隨方程和待估計參數的泛函梯度公式單點搜索最優(yōu)值[2],群智能優(yōu)化算法從一組隨機解出發(fā)并通過模仿生物進化過程或群體智能過程來實現最優(yōu)值的導向性搜索。例如,文獻[3]采用的遺傳算法與文獻[4-5]提出的混合差分進化算法均屬于基于生物進化機制的算法;而文獻[6]提出的混合生物地理優(yōu)化算法、文獻[7-8]提出的混沌蟻群算法、文獻[9-12]提出的量子粒子群算法則是基于群體智能過程的優(yōu)化算法。由于群智能優(yōu)化算法以一組可行解為初始值,采用結構化和隨機化搜索策略,不需要目標函數的導數信息,對函數性質也沒有太多要求,因此在求解高度非線性的混沌系統未知參數上相比于傳統優(yōu)化算法顯示出較大的優(yōu)勢。
人工蜂群(Artificial Bee Colony,ABC)優(yōu)化算法是由Karaboga在2005年提出的模仿蜜蜂采蜜行為的群智能優(yōu)化算法[13-15]。與蟻群算法(Ant Colony Optimization,ACO)和粒子群算法(Particle Swarm Optimization,PSO)一樣,ABC也是一種基于生物群體智能過程的優(yōu)化算法。在ABC算法中,食物源代表著問題的解,食物源的食物越充足表示解的質量越好,而蜜蜂的采蜜行為則表示尋找最優(yōu)解的過程。蜜蜂作為一種群居性動物,雖然單個個體的行為非常簡單,但是群體卻展現出極其復雜的行為。在采蜜過程中,采蜜的蜜蜂通過跳搖擺舞的方式將食物源信息反饋給其他蜜蜂,引導更多的蜜蜂放棄貧源到富源采蜜,從而實現問題解的不斷優(yōu)化。ABC算法提出后被成功應用在函數優(yōu)化、組合優(yōu)化、頻譜分配等問題中[16-17],具有設置參數少、計算簡單、收斂速度快和魯棒性高等特點。
任開軍等將ABC算法引入到混沌系統的參數估計中,并將其與經典的ACO、PSO以及最近提出的生物地理學優(yōu)化算法(Biogeography Based Optimization,BBO)[18]進行比較。由于基本ABC算法在參數估計過程容易丟棄最優(yōu)解而導致算法性能波動很大,任開軍等提出自適應人工蜂群(Adaptive Artificial Bee Colony,AABC)優(yōu)化算法,利用自適應的食物源淘汰策略延長精英解的存活時間。
考慮具有m個參數的n維混沌系統,其狀態(tài)變量的估計值為:
其中,X=(x1,x2,…,xn)T是原系統的n維狀態(tài)變量,X0是系統初始狀態(tài),θ=(θ1,θ2,…,θm)T是系統參數的真實值。
假設系統結構已知,當對系統參數進行估計時,被估計系統可以描述為:
其中,Y=(y1,y2,…,yn)T∈Rn是被估計系統的n維狀態(tài)變量,~θ=(~θ1,~θ2,…,~θm)T是系統參數的估計值。
假設在k時刻,真實系統和待估計系統的狀態(tài)變量分別為Xk和Yk,~Xk為真實系統的測量噪聲,M表示用于參數估計的系統狀態(tài)變量序列長度,那么混沌系統參數估計問題則可以轉化為最優(yōu)化問題:
為了準確地辨識出混沌系統的未知參數,估計算法采用如圖1所示的流程對估計值進行迭代求精。首先,利用原系統輸出序列X1,X2,…,XM、測量噪聲~X和待估計系統輸出序列Y1,Y2,…,YM計算得到參數估計的誤差平方和J(θ);然后,將J(θ)反饋到估計算法中用于生成新的估計值;最后,通過不斷地迭代,使得獲取的估計值~θ能夠將優(yōu)化函數J最小化。引入ABC算法并提出自適應的AABC算法用于混沌系統的參數估計,并與其他群優(yōu)化算法進行比較,以此驗證ABC算法在混沌系統參數估計中的有效性。
圖1 混沌系統參數估計原理圖Fig.1 Parameter estimation model for chaotic systems
在AABC算法中,存在著三種不同類型的蜜蜂:雇傭蜂、觀察蜂和偵查蜂。蜂群中一半的蜜蜂為雇傭蜂,而另一半由觀察蜂和偵查蜂組成。雇傭蜂負責從先前發(fā)現的食物源處將蜂蜜采集回蜂巢并將食物源質量信息傳遞給在蜂巢守候的觀察蜂。在蜂巢等待的觀察蜂根據雇傭蜂共享的食物源信息決定去哪一個食物源采蜜。偵查蜂則負責在蜂巢附近隨機地或基于某些外部線索進行偵查以尋找新的食物源。在采蜜過程中,蜂群表現如下所示的群體智能行為:
1)在初始階段,蜜蜂在蜂巢附近通過隨機搜索尋找食物源。
2)在找到一個食物源后,該蜜蜂成為雇傭蜂并從發(fā)現的食物源處采集蜂蜜。在將蜂蜜采集回蜂巢后,雇傭蜂或直接或跳一段搖擺舞將食物源信息共享給其他蜜蜂后返回食物源。如果雇傭蜂對應的食物源開發(fā)殆盡,該雇傭蜂便成為偵查蜂并開始隨機地搜索新的食物源。
3)觀察蜂在蜂巢守候并通過觀察雇傭蜂的搖擺舞獲取食物源的相關信息,根據每個搖擺舞的發(fā)生頻率(與食物源的質量成正比)選擇一個高質量的食物源而成為采蜜的雇傭蜂。
2.1 初始化階段
AABC算法初始時每個雇傭蜂隨機生成一個食物源,每個食物源對應著解空間中的一組可行解,因此雇傭蜂的總數即為搜索空間的大小。初始解的生成公式為:
其中:i=1,2,…,n,n為雇傭蜂的數量;j=1,2,…,m,m為待估計的參數個數;rand為0~1的隨機數;θmjin和θmjax分別表示第j個參數θj取值的上下界。此外,ABC算法加入了一個Trial(i)數組用于記錄第i組解被嘗試優(yōu)化的次數,Trial數組初始時設置為0。系統初始化后,雇傭蜂、觀察蜂和偵查蜂開始工作,表示AABC算法進入迭代搜索過程,當搜索達到最大搜索次數MaxGen時算法結束。
2.2 雇傭蜂階段
每次迭代搜索時,雇傭蜂會修改記憶中的食物源位置,使得本次搜索的食物源鄰近于上次獲取的食物源。在AABC算法中,θi的鄰域解定義為只改變θi中某個參數的解:
其中,j∈[1,m]為隨機選擇的第j個參數,θk為隨機選擇的不同于的第k組解,φ為[-1,1]的隨機數。值得注意的是,如果,那么取值為;如果<,那么θ取值為從式(5)可以看到,隨著和之間差距的縮小,的攝動將減小,使得AABC算法中解的更新步長能夠隨著解空間的不斷優(yōu)化而自適應地縮短。的適應度為:
2.3 觀察蜂階段
在完成搜索后,雇傭蜂把食物源質量信息共享給在蜂巢等待的觀察蜂。觀察蜂收集到所有食物源的質量信息后,按照輪盤法選擇一個食物源作為自身開采蜂蜜的地點:
利用式(7)對食物源進行概率性選擇,質量越高的食物源將吸引更多觀察蜂前去開采,從而使得解空間能夠更好地得到優(yōu)化。具體地,AABC算法首先生成一個[0,1]的隨機數r,如果r小于p(θi),那么偵查蜂選擇θi作為食物源;否則偵查蜂繼續(xù)測試下一個食物源θi+1。在食物源選定后,該偵查蜂成為雇傭蜂并采用第2.2節(jié)所述的過程更新自身的食物源。
2.4 偵查蜂階段
在雇傭蜂和觀察蜂完成搜索后,AABC算法檢查是否存在開發(fā)殆盡的食物源需要被淘汰。在先前雇傭蜂和觀察蜂的搜索過程中,如果食物源θi持續(xù)不能獲得更新,那么Trial(i)將一直增加。如果雇傭蜂和觀察蜂階段完成后Trial(i)超過食物源的最大利用程度limit,那么該食物源將被認為消耗完畢而遭到放棄。此時,與該食物源對應的雇傭蜂轉變?yōu)閭刹榉涠_始搜索新的食物源——用式(4)生成的隨機解替換原始解。在基本ABC算法中,每次迭代僅有一個食物源被認為消耗殆盡而需要替換。因此,當多只雇傭蜂的Trial值超過limit時,具有最大Trial值的那只雇傭蜂被選擇為偵查蜂。
基本ABC算法的問題在于高質量解由于較長時間不能得到優(yōu)化,其Trial值將持續(xù)增加,從而在偵查蜂階段很可能被選擇拋棄掉。雖然基本ABC算法的初衷在于通過這種淘汰機制跳出局部最優(yōu)解,但也導致精英解無法得到繼承。因此,AABC算法利用目標函數值J(加權Trial(i):
當pTrial(i)最大并且大于limit時,算法將放棄該食物源。采用式(8)的原因在于采用根號函數加權后,只有在連續(xù)limit次迭代得不到更新的情況下才會被拋棄,使得θi的開采次數與其質量成正比。值得注意的是,為了折中加權函數對高質量食物源和低質量食物源的開采,AABC算法選擇三次根號作為加權函數。
以典型的Lorenz混沌系統為例,說明引入的ABC算法和改進的AABC算法在混沌系統未知參數估計中的有效性。Lorenz系統的動力學方程為:
其中:x,y,z為系統狀態(tài)變量;a,b,c為待估計的參數。特別地,在一個兩平衡板間熱對流的環(huán)流中,x表示流體速度,y和z分別表示水平方向和垂直方向上的溫差;a和c分別與流體的Prandtl數和Rayleigh數成比例,b是流體空間水平和垂直方向的特征數。當參數a=10,b=8/3,c=28時,系統表現為混沌狀態(tài)。數值仿真采用龍格-庫塔算法求解式(9),步長h=0.01。觀測數據采集過程為:先讓Lorenz系統自由演化,在經歷暫態(tài)后任意選取一點作為0時刻,然后以此為起點連續(xù)演化至M步長時刻,得到M個狀態(tài)變量值,仿真實驗取M=300。
將基本ABC算法和改進的AABC算法與ACO算法、BBO算法以及PSO算法相比較。在所有算法中,種群大小n=50,迭代次數MaxGen= 100。ABC算法中l(wèi)imit設置為5;ACO算法中信息量Q=20,信息啟發(fā)因子α=1,期望啟發(fā)因子β=5,信息素全局殘留系數ρg=0.9,局部殘留系數ρ1=0.9;BBO算法中最大遷徙率E=I=1,最大變異率ρm=0.005;在PSO算法中慣性權重w=0.3,加速因子c1=c2=c3=1。Lorenz混沌系統各參數的搜索范圍為:9≤a≤11,2≤b≤3和20≤c≤30;搜索精度為10-6。
表1給出了各算法在無噪聲情況下獨立執(zhí)行20次后得到的最優(yōu)值、最差值和平均值。優(yōu)化函數J越小,估計精度越高。從表1中可以看到,基本ABC算法和改進的AABC算法在最優(yōu)情況下具有類似的結果,在估計精度上這兩種算法的最優(yōu)值、最差值以及平均值都要優(yōu)于其他算法。尤其是AABC算法,在最壞情況下仍然能夠獲得精度很高的估計值。在平均估計值上,ABC算法優(yōu)于其他算法一個數量級,AABC算法優(yōu)于基本ABC算法將近20倍。值得注意的是,雖然PSO算法最優(yōu)值的估計精度最差,但是最差情況和平均情況下卻具有較好的結果。
圖2顯示了所有算法在各自最優(yōu)情況下目標函數J(θ)的迭代收斂曲線。由于基本ABC算法在解連續(xù)limit次不能提高時便拋棄該解,雖然這種機制有利于算法跳出局部最優(yōu)解,卻導致目標函數在迭代過程中劇烈波動。其他算法的收斂曲線則呈現出逐步下降的趨勢。其中,PSO算法在前期具有最快的收斂速度,之后長時間陷入局部最優(yōu)解;ACO算法和AABC算法在前期具有顯著的收斂度,在后期收斂速度明顯變慢;BBO算法具有較平穩(wěn)的收斂速度。圖3顯示了待估計參數a,b,c的優(yōu)化曲線。從圖3中可以看到,PSO算法和AABC算法在10次迭代內即收斂到真實值附近,而ACO算法和BBO算法在20次左右收斂到真實值。整體而言,AABC算法具有更加優(yōu)異的全局尋優(yōu)能力。
表1 無噪聲情況下Lorenz系統參數估計結果Tab.1 Results of parameter estimation for Lorenz system without noise
圖2 目標函數J(θ)收斂曲線Fig.2 Convergency curve of object function J(θ)
為了檢驗AABC算法在實際應用中的性能,在式(9)的狀態(tài)變量中加入較強的高斯白噪聲,得到式(10),從而測試標準差δ=0.4情況下各種算法的估計能力。
圖3待估計參數a,b,c優(yōu)化曲線Fig.3 Optimization curve of parameters a,b,c
圖4 顯示了所有算法目標函數J(θ)獲得最優(yōu)結果時的迭代收斂曲線。從圖4中可以看到,在δ=0.4白噪聲強度下AABC算法和BBO算法具有較好的收斂性,基本ABC算法、ACO算法和PSO算法表現出劇烈的波動。圖4中曲線波動越小,說明算法的精確度越高。雖然在圖4中,算法迭代前期的最優(yōu)結果區(qū)別不大,但最終AABC算法的精確度顯著優(yōu)于其他算法,說明AABC算法在實際應用具有噪聲的情況下仍然能夠保持較好的性能。
圖4 δ=0.4時J(θ)收斂曲線Fig.4 Convergency curve of J(θ)whileδ=0.4
表2給出了高斯白噪聲強度δ=0.4時,各算法參數估計的最優(yōu)值、最差值和平均值。雖然在最優(yōu)情況下AABC算法、ACO算法和BBO算法具有相近的精確度,但是在最壞情況和平均情況下AABC算法具有1~2個數量級的優(yōu)勢,表明了AABC算法具有較強的魯棒性。
表2 噪聲強度δ=0.4時Lorenz系統參數估計結果Tab.2 Results of parameter estimation for Lorenz system whileδ=0.4
將混沌系統未知參數估計問題形式化為一個多維變量的數值優(yōu)化問題,將人工蜂群優(yōu)化算法引入到該問題的求解中并針對基本蜂群優(yōu)化算法的不足提出改進的人工蜂群優(yōu)化算法AABC。新算法根據種群優(yōu)化程度選擇更新步長,基于解的優(yōu)異程度設置解的嘗試次數,實現了算法迭代過程中的自適應優(yōu)化。以Lorenz混沌系統為例進行的仿真實驗表明,在無噪聲和較大強度高斯白噪聲情況下,AABC算法的參數估計結果均優(yōu)于基本ABC,ACO,BBO和PSO算法,同時AABC算法在迭代過程中也表現出較強的魯棒性。
參考文獻(References)
[1]Ott E,Grebogi C,Yorke J A.Controlling chaos[J].Physical Review Letters,1990,64(11):1196-1199.
[2]曹小群,宋君強,張衛(wèi)民,等.基于MCMC方法的Lorenz混沌系統的參數估計[J].國防科技大學學報,2010,32(2): 68-72.CAO Xiaoqun,SONG Junqiang,ZHANG Weimin,et al.Estimating parameters of Lorenz chaotic system with MCMC method[J].Journal of National University of Defense Technology,2010,32(2):68-72.(in Chinese)
[3]戴棟,馬西奎,李富才,等.一種基于遺傳算法的混沌系統參數估計方法[J].物理學報,2002,51(11):2459-2462.DAIDong,MA Xikui,LI Fucai,et al[J].Acta Physica Sinica,2002,51(11):2459-2462.(in Chinese)
[4]王鈞炎,黃德先.基于混合差分進化算法的混沌系統參數估計[J].物理學報,2008,57(5):2755-2760.WANG Junyan,HUANG Dexian.Parameter estimation for chaotic systems based on hybrid differential evolution algorithm[J].Acta Physica Sinica,2008,57(5):2755-2760.(in Chinese)
[5]Li N Q,Pan W,Yan L S,et al.Parameter estimation for chaotic systems with and without noise using differential evolution-based method[J].Chinese Physics B,2011,20(6):72-77.
[6]林劍,許力.基于混合生物地理優(yōu)化的混沌系統參數估計[J].物理學報,2013,62(3):66-72.LIN Jian,XU Li.Parameter estimation for chaotic systems based on hybrid biogeography-based optimization[J].Acta Physica Sinica,2013,62(3):66-72.(in Chinese)
[7]李麗香,彭海朋,楊義先,等.基于混沌螞蟻群算法的Lorenz混沌系統的參數估計[J].物理學報,2007,56(1):51-55.LILixiang,PENG Haipeng,YANG Yixian,et al.Parameter estimation for Lorenz chaotic systems based on chaotic ant swarm algorithm[J].Acta Physica Sinica,2007,56(1): 51-55.(in Chinese)
[8]Peng H,Li L,Yang Y,et al.Parameter estimation of dynamical systems via a chaotic ant swarm[J].Physical Review E,2010,81(1):016207.
[9]He Q,Wang L,Liu B.Parameter estimation for chaotic systems by particle swarm optimization[J].Chaos,Solitons&Fractals,2007,34(2):654-661.
[10]Sun J,Zhao J,Wu X J,et al.Parameter estimation for chaotic systemswith a drift particle swarm optimization method[J].Physics Letters A,2010,374(28):2816-2822.
[11]張宏立,宋莉莉.基于量子粒子群算法的混沌系統參數辨識[J].物理學報,2013,62(19):106-111.ZHANG Hongli,SONG Lili.Parameter identification in chaotic systems by means of quantum particle swarm optimization[J].Acta Physica Sinica,2013,62(19):106-111.(in Chinese)
[12]Ouyang A,Tang Z,Li L,et al.Estimating parameters of Muskingum model using an adaptive hybrid PSO algorithm[J].International Journal of Pattern Recognition and Artificial Intelligence,2014,28(1):1-29.
[13]Karaboga D,Basturk B.On the performance of artificial bee colony(ABC)algorithm[J].Applied Soft Computing,2008,8(1):687-697.
[14]Karaboga D,Akay B.A comparative study of artificial bee colony algorithm[J].Applied Mathematics and Computation,2009,214(1):108-132.
[15]Karaboga D,Basturk B.A powerful and efficientalgorithm for numerical function optimization:artificial bee colony(ABC) algorithm[J].Journal of Global Optimization,2007,39(3): 459-471.
[16]高洪元,李晨琬.膜量子蜂群優(yōu)化的多目標頻譜分配[J].物理學報,2014,63(12):456-465.GAOHongyuan,LIChenwan.Membrane-inspired quantum bee colony algorithm for multiobjective spectrum allocation[J].Acta Physica Sinica,2014,63(12):456-465.(in Chinese)
[17]張樂,劉忠,張建強,等.基于人工蜂群算法優(yōu)化的改進高斯過程模型[J].國防科技大學學報,2014,36(1): 154-160.ZHANG Le,LIU Zhong,ZHANG Jianqiang,et al.Optimized improved Gaussian process model based on artificial bee colony algorithm[J].Journal of National University of Defense Technology,2014,36(1):154-160.(in Chinese)
[18]Simon D.Biogeography-based optimization[J].IEEE Transactions on Evolutionary Computation,2008,12(6): 702-713.
Adaptive artificial bee colony optim ization for parameter estimation of chaotic systems
REN Kaijun,DENGKefeng,LIU Shaowei,SONG Junqiang
(Academy of Ocean Science and Engineering,National University of Defense Technology,Changsha 410073,China)
In order to accurately estimate the unknown parameters for chaotic systems,the artificial bee colony optimization algorithm was improved,and an adaptive artificial bee colony optimization algorithm was proposed.The proposed method formatted the problem of parameter estimation for chaotic systems to amultidimensional variable optimization problem,and used the artificial bee colony optimization algorithm to search the unknown parameters in a guided random manner.During the search process,themethod adaptively adjusted the step size and the solution trial limits based on the optimum degree of the population and the quality of the solutions.The numerical simulation on the classic Lorenz chaotic system demonstrates that the proposed method is robust and can obtain accurate estimation for chaotic systems without noise or with intensive noise.
chaotic system;parameter estimation;artificial bee colony;numerical optimization
O302
A
1001-2486(2015)05-135-06
10.11887/j.cn.201505021
http://journal.nudt.edu.cn
2015-07-07
國家自然科學基金資助項目(61572510);國家公益行業(yè)專項計劃資助項目(GYHY201306003)
任開軍(1975—),男,重慶人,副研究員,博士,E-mail:renkaijun@nudt.edu.cn