陳志敏 田夢(mèng)楚 吳盤龍 薄煜明 顧福飛 岳聰
1)(中國衛(wèi)星海上測控部,江陰 214431)
2)(南京理工大學(xué)自動(dòng)化學(xué)院,南京 210094)
基于蝙蝠算法的粒子濾波法研究?
陳志敏1)?田夢(mèng)楚2)吳盤龍2)薄煜明2)顧福飛1)岳聰2)
1)(中國衛(wèi)星海上測控部,江陰 214431)
2)(南京理工大學(xué)自動(dòng)化學(xué)院,南京 210094)
(2016年8月24日收到;2016年12月11日收到修改稿)
標(biāo)準(zhǔn)粒子濾波容易出現(xiàn)粒子貧化問題,濾波精度不穩(wěn)定,并且需要大量粒子才能對(duì)非線性系統(tǒng)進(jìn)行準(zhǔn)確估計(jì),降低了算法的綜合性能.針對(duì)該問題,本文提出了一種基于蝙蝠算法的新型粒子濾波算法.該算法用粒子表征蝙蝠個(gè)體,模擬蝙蝠群體搜索獵物的過程,粒子群體通過調(diào)整頻率、響度、脈沖發(fā)射率,追隨當(dāng)前最優(yōu)粒子在解空間中進(jìn)行搜索,并可以動(dòng)態(tài)控制全局搜索及局部搜索的相互轉(zhuǎn)換,進(jìn)而提高粒子整體的質(zhì)量和分布的合理性;此外,改進(jìn)算法引入Lévy飛行策略,從而避免局部極值的不良吸引.實(shí)驗(yàn)表明新型粒子濾波方法提高了粒子多樣性和濾波預(yù)測精度,同時(shí)大大降低了對(duì)非線性系統(tǒng)進(jìn)行狀態(tài)預(yù)測所需的粒子數(shù)量.
粒子濾波,蝙蝠算法,粒子多樣性,狀態(tài)估計(jì)
非線性系統(tǒng)廣泛存在,并且在系統(tǒng)中還可能存在非高斯噪聲,這些因素會(huì)降低基于卡爾曼理論框架的常規(guī)濾波算法的性能[1,2].粒子濾波(particlefilter,PF)[3]是一種基于蒙特卡羅思想的濾波技術(shù),由于其狀態(tài)函數(shù)和觀測函數(shù)沒有做非線性及非高斯的假設(shè),因此粒子濾波可以不受系統(tǒng)非線性和非高斯噪聲的限制.目前粒子濾波算法已經(jīng)廣泛應(yīng)用于諸多實(shí)際工程領(lǐng)域,例如目標(biāo)跟蹤、導(dǎo)航制導(dǎo)、狀態(tài)監(jiān)視、故障檢測、參數(shù)估計(jì)、系統(tǒng)辨識(shí)等.針對(duì)粒子濾波的權(quán)值退化問題,可以采用重采樣方法進(jìn)行解決[4].但是重采樣算法僅復(fù)制大權(quán)值樣本[5,6],會(huì)導(dǎo)致粒子的貧化現(xiàn)象[7,8],即高權(quán)值粒子被多次復(fù)制,小權(quán)值粒子被直接舍棄.雖然較小權(quán)值的粒子對(duì)于目標(biāo)狀態(tài)估計(jì)的貢獻(xiàn)有限,但是卻代表著一定的狀態(tài)信息,重采樣階段對(duì)粒子的舍棄,必將影響到狀態(tài)估計(jì)的精度.
針對(duì)粒子濾波的樣本貧化問題,國內(nèi)外學(xué)者進(jìn)行了大量研究,文獻(xiàn)[9]提出了基于權(quán)值選擇的粒子濾波,該濾波方法從粒子集中選擇權(quán)值較大的粒子用于下一時(shí)刻的狀態(tài)估計(jì),可以減輕粒子的貧化程度,但容易導(dǎo)致粒子權(quán)值的退化.文獻(xiàn)[10]提出了確定性重采樣的粒子濾波,該方法對(duì)重采樣階段進(jìn)行確定性優(yōu)化,提高了粒子的多樣性.文獻(xiàn)[11]提出了飽和粒子濾波,其根據(jù)不同特點(diǎn)的系統(tǒng)選擇特定的重采樣方法,使得粒子逼近真實(shí)值.但上述兩種方法依然是基于傳統(tǒng)重采樣的框架,未能從根本上徹底解決粒子貧化的問題.
基于群體智能優(yōu)化思想的PF是現(xiàn)代粒子濾波領(lǐng)域中一個(gè)嶄新的發(fā)展方向[12],將粒子濾波中的粒子視為生物群體中的個(gè)體,利用模擬生物集群的運(yùn)動(dòng)使粒子的分布更加合理.由于群體智能優(yōu)化粒子濾波主要是對(duì)粒子的分布進(jìn)行迭代尋優(yōu)[13,14],并不涉及對(duì)低權(quán)值粒子的直接舍棄,因此可以從根本上徹底解決粒子的貧化問題.國內(nèi)外學(xué)者已成功將各類經(jīng)典群體智能優(yōu)化算法與粒子濾波進(jìn)行結(jié)合,并在此基礎(chǔ)上提出了各種改進(jìn)算法.文獻(xiàn)[15]提出了基于小生境技術(shù)的群體智能粒子濾波算法,該算法通過多模尋優(yōu)增強(qiáng)粒子的多樣性和尋優(yōu)能力,從而提高粒子濾波的精度.文獻(xiàn)[16]將粒子群優(yōu)化算法和蟻群優(yōu)化算法的優(yōu)化思想共同作用到粒子濾波的樣本更新中,實(shí)現(xiàn)粒子之間信息共享,從而增強(qiáng)了粒子的全局尋優(yōu)能力.文獻(xiàn)[17]提出了自適應(yīng)粒子群優(yōu)化改進(jìn)粒子濾波算法,自適應(yīng)地控制鄰域粒子的數(shù)量,提高了粒子分布的合理性和濾波的精度.
蝙蝠算法(bat algorithm,BA)[18]由劍橋大學(xué)Yang教授于2010年提出,其通過模擬蝙蝠捕食行為而進(jìn)行自適應(yīng)智能尋優(yōu),和粒子群優(yōu)化算法一樣,蝙蝠算法也是基于群體的隨機(jī)搜索機(jī)制,但區(qū)別在于蝙蝠算法的隨機(jī)性更強(qiáng),因此蝙蝠算法具有更好的收斂速度和收斂精度.國內(nèi)外很多學(xué)者已將蟻群優(yōu)化算法、遺傳算法、模擬退火算法、粒子群優(yōu)化算法等與PF融合,而蝙蝠算法作為最新的群體智能優(yōu)化算法之一,各種研究及擴(kuò)展尚處于起步階段,目前關(guān)于將其與PF進(jìn)行融合的報(bào)道較少.文獻(xiàn)[18]已證明,蝙蝠算法的尋優(yōu)搜索能力優(yōu)于粒子群優(yōu)化算法、蟻群優(yōu)化算法等主流群體智能優(yōu)化方法,因此若能將蝙蝠算法與粒子濾波進(jìn)行結(jié)合,則對(duì)群體智能粒子濾波性能的進(jìn)一步提高具有重要意義.
本研究結(jié)合蝙蝠算法的智能自適應(yīng)迭代尋優(yōu)機(jī)制以及粒子濾波的特點(diǎn),對(duì)蝙蝠算法的位置更新方式進(jìn)行改進(jìn),并將蝙蝠算法和粒子濾波進(jìn)行融合,提出了蝙蝠算法智能優(yōu)化粒子濾波(bat algorithm optimized particle filter,BA-PF),在增加粒子多樣性的同時(shí),提高了粒子濾波的精度.
式中,xk為k時(shí)刻的狀態(tài)值,y1:k為1—k時(shí)刻的觀測值,為k時(shí)刻粒子i的權(quán)重,δ(·)為狄拉克函數(shù).當(dāng)(1)式隨著觀測值遞推更新時(shí),即可用樣本均值代替原先需要依據(jù)后驗(yàn)概率密度函數(shù)進(jìn)行的積分運(yùn)算,從而獲得最小的方差估計(jì)[20].
蝙蝠算法是模擬自然界中蝙蝠利用一種聲吶來探測物、避免障礙物的隨機(jī)搜索算法.BA的仿生原理將種群數(shù)量為NP蝙蝠個(gè)體映射為D維問題空間中的NP個(gè)可行解,將優(yōu)化過程和搜索模擬成蝙蝠個(gè)體移動(dòng)過程和搜尋獵物[21].利用解問題的適應(yīng)度函數(shù)來衡量蝙蝠所處位置的優(yōu)劣,其在優(yōu)化和搜索過程中通過種群尋優(yōu),不斷提高.在蝙蝠算法中,為了模擬蝙蝠探測獵物、避免障礙物,蝙蝠算法有以下應(yīng)用規(guī)則:
1)所有蝙蝠個(gè)體都能運(yùn)用回聲定位去感應(yīng)距離,同時(shí)它們也能通過一種特殊的方式對(duì)獵物及背景障礙物進(jìn)行區(qū)分;
2)蝙蝠在位置Xi以速度Vi隨意飛行時(shí),會(huì)以固定頻率fmin、可變化波長λ及響度A0去搜索獵物,同時(shí)可以根據(jù)目標(biāo)物與自己距離的大小自適應(yīng)地調(diào)節(jié)發(fā)射出的脈沖波長,在靠近獵物時(shí)調(diào)節(jié)發(fā)射脈沖的頻度r;
3)假定發(fā)射脈沖的響度是在最大值A(chǔ)0到固定最小值A(chǔ)min之間變化的.頻率范圍[fmin,fmax]所對(duì)應(yīng)的波長范圍為[λmin,λmax],頻率越高,波長越短,飛行距離也就越短.
4.1 整體改進(jìn)原理
傳統(tǒng)粒子濾波的重采樣方法通過刪除小權(quán)值粒子來避免粒子匱乏現(xiàn)象的產(chǎn)生,但經(jīng)過多次迭代后,會(huì)導(dǎo)致粒子的貧化問題.
針對(duì)以上問題,本研究利用蝙蝠算法對(duì)粒子濾波進(jìn)行優(yōu)化.算法的實(shí)現(xiàn)思路如下:將粒子散布在搜索空間,每個(gè)粒子以不同的脈沖頻率搜索最優(yōu)位置.粒子在初始迭代時(shí)刻采用較低的脈沖頻度和較大的脈沖音強(qiáng)進(jìn)行全局搜索,通過全局搜索行為更新粒子的狀態(tài),得到新解.隨后進(jìn)行局部搜索,在平均音強(qiáng)的半隨機(jī)指導(dǎo)下,若舊解的適應(yīng)度函數(shù)值低于新解的適應(yīng)度函數(shù)值,則視為搜索到了當(dāng)前迭代時(shí)刻的最優(yōu)解,此時(shí)用新解代替舊解,并逐漸增加脈沖頻度,減小脈沖音強(qiáng).通過和處于較優(yōu)位置粒子進(jìn)行比較,令粒子整體逐漸向搜索空間中的最優(yōu)位置靠攏,從而提高粒子群整體樣本的質(zhì)量.其中,搜索脈沖頻率決定了粒子的速度,而脈沖頻度和音強(qiáng)則決定了接受更新后位置的概率.
在BA-PF的信息交互機(jī)制中,改進(jìn)方法設(shè)置粒子目標(biāo)函數(shù)的計(jì)分板,將各個(gè)迭代子時(shí)刻的粒子目標(biāo)函數(shù)值與計(jì)分板的目標(biāo)函數(shù)值進(jìn)行對(duì)比更新,從而得到當(dāng)前濾波時(shí)刻所有粒子所經(jīng)歷的全局最優(yōu)值,利用全局最優(yōu)值與各個(gè)粒子進(jìn)行信息交互,從而實(shí)現(xiàn)全局最優(yōu)值的指導(dǎo)作用.
4.2 BA-PF目標(biāo)函數(shù)設(shè)計(jì)
考慮到若要確保粒子濾波器的精度,需在蝙蝠的自適應(yīng)尋優(yōu)行為中引入最新的觀測值,因此設(shè)計(jì)的目標(biāo)函數(shù)公式如下:
其中,zNew為濾波器最新的觀測值,zPred為濾波器預(yù)測的觀測值,Rk為量測噪聲方差.從目標(biāo)函數(shù)值計(jì)算公式可以看出,其充分發(fā)揮了每個(gè)時(shí)刻最新觀測值對(duì)算法信息內(nèi)部交互的指導(dǎo)作用.
4.3 BA-PF全局搜索公式設(shè)計(jì)
蝙蝠在搜索食物的時(shí)候,結(jié)合了搜索過程中群體最佳蝙蝠所處位置和搜索脈沖頻率來指導(dǎo)飛行行為.本文考慮到,當(dāng)前蝙蝠中的最優(yōu)個(gè)體被局部極值所吸引,缺乏有效的機(jī)制來擺脫不良束縛,從而導(dǎo)致群體的多樣性迅速降低并失去進(jìn)化能力.因此若直接將蝙蝠位置更新公式用于粒子濾波,BA-PF會(huì)出現(xiàn)蝙蝠算法的早熟現(xiàn)象,從而影響濾波的精度.
針對(duì)該問題,本文對(duì)全局搜索公式進(jìn)行改進(jìn),引入Lévy飛行模式來模擬蝙蝠個(gè)體的飛行搜索行為.該策略充分利用了Lévy飛行模式的隨機(jī)游走特性,由于在搜索過程中Lévy飛行會(huì)產(chǎn)生較大跳躍且方向多次急劇改變,因此可以有效避免蝙蝠個(gè)體被局部最優(yōu)值吸引束縛.改進(jìn)后的BA-PF全局搜索公式如下:
其中,β為[0,1]之間的隨機(jī)數(shù),fi為粒子i的搜索脈沖頻率且為粒子i在k時(shí)刻的待選位置,vi(k)為粒子i在k時(shí)刻的速度,xbest(k)為粒子群在k時(shí)刻的全局最優(yōu)位置,L(λ)表示跳躍步長服從Lévy分布的隨機(jī)搜索向量.(由于搜索是在k時(shí)刻進(jìn)行的子迭代行為,因此在(4)式和(5)式中時(shí)刻均為k)
從(3)—(5)式可以看出,搜索脈沖頻率決定了粒子移動(dòng)的速度,與蝙蝠的搜索行為一致.此外,引入Lévy飛行模式的策略拓展了搜索空間,能夠提升對(duì)粒子分布的優(yōu)化效果.
4.4 BA-PF局部搜索公式設(shè)計(jì)
在蝙蝠尋優(yōu)過程中,需要根據(jù)脈沖頻度和音強(qiáng)共同決定全局搜索信息的實(shí)用方式,同時(shí)為了防止BA-PF中粒子的過度集中,本文設(shè)置的BA-PF局部搜索公式如下:
若rand 若rand>ri,則 其中,rand為均勻分布的隨機(jī)數(shù),ri為脈沖頻度,ε為[?1,1]之間的隨機(jī)數(shù),A(k)為k時(shí)刻所有粒子的平均音強(qiáng).從(6)式和(7)式可以看出,與蝙蝠的尋優(yōu)行為相同,BA-PF中的ri決定了接受更新后位置的概率,而A(k)決定了不接受新位置后粒子自身的移動(dòng)強(qiáng)度. 4.5 BA-PF局部搜索能力調(diào)整策略設(shè)計(jì) 蝙蝠個(gè)體在搜索獵物的時(shí)候,初始階段發(fā)射超聲波脈沖的音強(qiáng)較大且頻度較低,這有利于在更廣闊的空間中進(jìn)行搜索,一旦搜索到了獵物,就逐漸減小脈沖音強(qiáng)并增加脈沖發(fā)射次數(shù),以利于準(zhǔn)確掌握獵物的空間位置,并對(duì)蝙蝠的局部搜索能力進(jìn)行調(diào)整,更新脈沖頻度和脈沖強(qiáng)度.為了使粒子模擬這種局部搜索能力自適應(yīng)調(diào)整行為,設(shè)置以下搜索能力調(diào)整公式: 其中,a為衰減系數(shù),γ為增強(qiáng)系數(shù).算法中設(shè)置00.可以看出,隨著k的增加,Ai(k)會(huì)逐漸減小,而ri(k)會(huì)逐漸接近ri(0),符合蝙蝠的尋優(yōu)行為. 4.6 算法步驟 1)在初始時(shí)刻,采樣N個(gè)粒子{xi(0),i=1,···,N}作為算法的初始粒子.xi(k)服從重要性密度函數(shù): 2)模擬蝙蝠的全局搜索行為,利用(3)—(5)式更新粒子的位置和速度. 3)模擬蝙蝠的局部搜索行為,生成均勻分布的隨機(jī)數(shù)rand,若rand 4)生成另一個(gè)獨(dú)立的隨機(jī)數(shù)rand,若rand 5)對(duì)粒子的局部搜索能力進(jìn)行調(diào)整,利用(8)式和(9)式更新脈沖頻度和脈沖強(qiáng)度. 6)計(jì)算并對(duì)比目標(biāo)函數(shù)值,更新全局最優(yōu)值. 7)當(dāng)算法符合設(shè)定的精度閾值ε時(shí),說明粒子已經(jīng)分布在真實(shí)值附近,或者達(dá)到最大迭代次數(shù)時(shí),此時(shí)停止優(yōu)化.否則轉(zhuǎn)入步驟2). 8)計(jì)算重要性權(quán)值: 9)進(jìn)行歸一化: 10)狀態(tài)輸出: 上述思路充分利用了整個(gè)粒子群的有效信息,有利于粒子跳出局部最優(yōu),避免迭代次數(shù)浪費(fèi)在狀態(tài)值變化不明顯的情形,使得算法更多地由于達(dá)到精度終止閾值ε而停止優(yōu)化,減少算法迭代至最大迭代次數(shù)才停止的概率,從而提高運(yùn)算效率.在有效粒子樣本的數(shù)量方面,該方式可以增加粒子的多樣性,從而提高粒子樣本的質(zhì)量. 標(biāo)準(zhǔn)粒子濾波重采樣過程與BA-PF的采樣示意圖如圖1—圖4所示. 從圖1、圖2中可以看出,標(biāo)準(zhǔn)粒子濾波的重采樣過程直接舍棄了小權(quán)值粒子,對(duì)大權(quán)值粒子進(jìn)行復(fù)制.重采樣操作后,粒子過于集中,粒子多樣性受損,將影響下一時(shí)刻的估計(jì)精度. 圖1 重采樣前粒子分布圖Fig.1.Particle distribution before resampling. 圖2 重采樣后粒子分布圖Fig.2.Particle distribution after resampling. 圖3 BA-PF優(yōu)化前粒子分布圖Fig.3.Particle distribution before BA-PF optimization. 圖4 BA-PF優(yōu)化后粒子分布圖Fig.4.Particle distribution after BA-PF optimization. 從圖3、圖4中可以看出,在BA-PF中,低權(quán)值粒子向最優(yōu)粒子方向移動(dòng),最優(yōu)粒子周圍權(quán)值相對(duì)較高的粒子由于Lévy飛行的作用會(huì)作方向不定的隨機(jī)移動(dòng),最優(yōu)粒子也隨著每次迭代進(jìn)行隨機(jī)移動(dòng)一步.經(jīng)過若干次優(yōu)化迭代后,粒子整體向著高似然區(qū)域移動(dòng),但又不全部聚集在最優(yōu)值附近,整個(gè)粒子分布更加合理. 5.1 收斂性分析 設(shè)BA-PF的搜索空間為S,顯然其Lebesgue測度是大于0的,即l[S]>0.最優(yōu)解空間Rgbest是一個(gè)Borel子集,同樣根據(jù)粒子群最優(yōu)解空間Rgbest的定義可知,l[Rgbest]>0,且有 其中,uk(·)為第k次迭代結(jié)果的概率測度. 根據(jù)上述條件,由F.SOLIS提出的隨機(jī)搜索算法收斂準(zhǔn)則,則有: BA-PF采用了種群的方式進(jìn)行搜索,可以同時(shí)搜索解空間內(nèi)的多個(gè)區(qū)域.同時(shí),BA-PF既發(fā)揮了個(gè)體的作用,又發(fā)揮了全局最優(yōu)信息的指導(dǎo),完整保留了蝙蝠算法在個(gè)性和社會(huì)性之間尋找動(dòng)態(tài)平衡的優(yōu)點(diǎn).BA-PF在尋找全局最優(yōu)值時(shí)的效率高于PSO-PF,如果使Ai=0及ri=1替換頻率的自適應(yīng)變化,那么BA-PF會(huì)演變?yōu)镻SO-PF.因此在某種程度上可以認(rèn)為BA-PF是PSO-PF由響度和脈沖率控制的局部搜索的一種均衡組合. 由于BA的尋優(yōu)效率相對(duì)較高,因此在進(jìn)行BA-PF迭代機(jī)制設(shè)計(jì)時(shí)需要考慮到:1)如果BAPF在每一時(shí)刻的迭代中都實(shí)現(xiàn)了最終收斂,那么所有粒子集中在少數(shù)幾個(gè)狀態(tài)值上,反而會(huì)降低樣本的多樣性,從而影響濾波算法的精度;2)BA-PF實(shí)現(xiàn)最終收斂是以較多迭代次數(shù)為代價(jià)的,這會(huì)增加濾波算法的運(yùn)算復(fù)雜度,影響濾波算法的實(shí)時(shí)性. 因此,我們通過設(shè)置最大迭代次數(shù)或迭代終止閾值的方式提前結(jié)束粒子的尋優(yōu)過程,使得BA-PF中的粒子群體有向最優(yōu)區(qū)域靠攏的趨勢(shì),但不會(huì)達(dá)到全局收斂,從而確保BA-PF在精度和速度方面的優(yōu)勢(shì). 5.2 運(yùn)算復(fù)雜度分析 與標(biāo)準(zhǔn)粒子濾波相比,BA-PF增加了自適應(yīng)迭代尋優(yōu)步驟,減少了重采樣步驟.設(shè)粒子數(shù)量為N,最大迭代次數(shù)為M,對(duì)應(yīng)的運(yùn)算復(fù)雜度分析如下. 1)自適應(yīng)迭代尋優(yōu)部分.在全局搜索行為中,每個(gè)粒子狀態(tài)更新的時(shí)間復(fù)雜度為3×O(1);在局部搜索行為中,每個(gè)粒子狀態(tài)修正的時(shí)間復(fù)雜度為2×O(1);此外,考慮到更新脈沖頻度和脈沖強(qiáng)度的運(yùn)算復(fù)雜度為2×O(1),則一次迭代內(nèi)全體粒子的狀態(tài)更新時(shí)間復(fù)雜度為7×N×O(1).以最大迭代次數(shù)M計(jì),可得自適應(yīng)迭代部分的運(yùn)算復(fù)雜度為O(7×M×N).由于精度終止閾值的存在,很多時(shí)刻算法并不會(huì)達(dá)到最大次數(shù)M,因此嚴(yán)格來說,自適應(yīng)迭代尋優(yōu)部分的運(yùn)算復(fù)雜度小于等于O(7×M×N). 2)重采樣部分.粒子濾波的重采樣過程涉及到粒子的交互對(duì)比,因此其運(yùn)算復(fù)雜度為O(N×N). 綜上分析,與標(biāo)準(zhǔn)粒子濾波相比,BA-PF增加的運(yùn)算復(fù)雜度最高為O(7×M×N),減少的運(yùn)算復(fù)雜度為O(N×N).在實(shí)際使用中,由于最大迭代次數(shù)和終止閾值的設(shè)置,BA-PF的迭代次數(shù)一般不會(huì)很多;此外BA-PF迭代尋優(yōu)過程與重采樣過程相比,操作數(shù)略高.因此在最后的總體運(yùn)算時(shí)間上,BA-PF也是略高于PF的,這也與下文的仿真測試結(jié)果相符. 實(shí)驗(yàn)硬件條件為英特爾i5-4200U處理器、8 G內(nèi)存,軟件環(huán)境為matlab2010b,選取單變量非靜態(tài)增長模型,仿真對(duì)象的過程模型和量測模型如下: 過程模型 量測模型 式中,w(t)和v(t)為零均值高斯噪聲.由于該系統(tǒng)是高度非線性,并且似然函數(shù)呈雙峰狀,因此,傳統(tǒng)的濾波方法很難處理此系統(tǒng).設(shè)系統(tǒng)噪聲方差Q=1和Q=10,量測噪聲方差R=1,濾波時(shí)間步數(shù)為50,最大脈沖率R0=0.5,最大脈沖音量A0=0.25,fmin=0,fmax=1.7,最大迭代次數(shù)為15,用PF,PSO-PF、文獻(xiàn)[22]算法,BA-PF對(duì)該非線性系統(tǒng)進(jìn)行狀態(tài)估計(jì)和跟蹤. 在實(shí)際應(yīng)用中,我們很難獲得初始時(shí)刻的準(zhǔn)確值,大多是憑借先驗(yàn)信息給出狀態(tài)初值,而這個(gè)狀態(tài)初值一般是具有誤差的.為了與實(shí)際應(yīng)用情形相符,在本文的狀態(tài)初值設(shè)置中,我們?cè)谡鎸?shí)值的基礎(chǔ)上加上一定幅度的隨機(jī)誤差,從而獲得狀態(tài)估計(jì)初值.該隨機(jī)誤差的大小對(duì)于前面一些時(shí)刻的濾波性能有較大影響,但粒子濾波具有一定的反饋機(jī)制,當(dāng)前時(shí)刻的預(yù)測誤差會(huì)參與修正下一時(shí)刻的濾波結(jié)果,因此初值誤差對(duì)于后面時(shí)刻的濾波精度影響不大.此處我們?cè)O(shè)置初始時(shí)刻隨機(jī)誤差上限為2.5,并在距離狀態(tài)初值2的范圍內(nèi)利用正態(tài)分布獲得初始時(shí)刻的粒子群. 均方根誤差公式為 6.1 精度測試 1)當(dāng)粒子數(shù)N=20,Q=1時(shí),仿真結(jié)果如圖5、圖6所示. 2)當(dāng)粒子數(shù)N=50,Q=1時(shí),仿真結(jié)果如圖7、圖8所示. 3)當(dāng)粒子數(shù)N=100,Q=1時(shí),仿真結(jié)果如圖9、圖10所示. 表1給出了不同方法的實(shí)驗(yàn)結(jié)果對(duì)比. 圖5 (網(wǎng)刊彩色)濾波狀態(tài)估計(jì)(N=20,Q=1)Fig.5.(color online)State estimation of filter(N=20,Q=1). 圖6 (網(wǎng)刊彩色)濾波誤差絕對(duì)值(N=20,Q=1)Fig.6. (color online)Absolute value of filter error(N=20,Q=1). 圖7 (網(wǎng)刊彩色)濾波狀態(tài)估計(jì)(N=50,Q=1)Fig.7.(color online)State estimation of filter(N=50,Q=1). 圖8 (網(wǎng)刊彩色)濾波誤差絕對(duì)值(N=50,Q=1)Fig.8. (color online)Absolute value of filter error(N=50,Q=1). 圖9 (網(wǎng)刊彩色)濾波狀態(tài)估計(jì)(N=100,Q=1)Fig.9.(color online)State estimation of filter(N=100,Q=1). 圖10 (網(wǎng)刊彩色)濾波誤差絕對(duì)值(N=100,Q=1)Fig.10.(color online)Absolute value of filter error(N=100,Q=1). 表1 實(shí)驗(yàn)結(jié)果對(duì)比Table 1.Comparison of simulation results model. 從上述仿真實(shí)驗(yàn)結(jié)果可以看出,BA-PF的精度最高,且運(yùn)算實(shí)時(shí)性也高于文獻(xiàn)[22]的改進(jìn)自適應(yīng)粒子濾波算法,表現(xiàn)出了最好的綜合性能,這是因?yàn)锽A-PF在PF的基礎(chǔ)上,模擬蝙蝠個(gè)體及群體搜尋獵物的過程,與粒子群優(yōu)化機(jī)制的粒子濾波相比,BA-PF可以進(jìn)行全局搜索和局部搜索的自動(dòng)切換,使粒子分布更加合理化,從而用更少的迭代次數(shù)完成尋優(yōu),提高了濾波的穩(wěn)定性和速度.從圖5—圖10可以看出,標(biāo)準(zhǔn)PF在有些時(shí)刻精度極低,而在有些時(shí)刻精度很高,甚至高于BA-PF,濾波精度出現(xiàn)了明顯起伏,最終的平均精度表現(xiàn)一般.而BA-PF雖然有些時(shí)刻的精度低于PF,但是整體精度表現(xiàn)穩(wěn)定,很少出現(xiàn)濾波明顯發(fā)散的情形,最終的平均精度較高. 從運(yùn)行機(jī)制進(jìn)行分析,由于標(biāo)準(zhǔn)PF的粒子多樣性程度低,大部分粒子集中在少數(shù)幾個(gè)狀態(tài)值上,但這少數(shù)幾個(gè)狀態(tài)值只是標(biāo)準(zhǔn)PF自身認(rèn)為的高可信度狀態(tài)值,若上述狀態(tài)值接近于真實(shí)值,則濾波精度會(huì)很高,但是如果上述狀態(tài)值遠(yuǎn)離真實(shí)值,則濾波誤差會(huì)非常高,這類似于一種賭博的行為;而BA-PF在每個(gè)時(shí)刻的精度較為穩(wěn)定,這是由于BA-PF的粒子多樣性程度高,并且通過群體智能的迭代尋優(yōu)操作,粒子合理地分布在整個(gè)狀態(tài)空間內(nèi),分?jǐn)偭烁哒`差出現(xiàn)的風(fēng)險(xiǎn),最終表現(xiàn)為減小了濾波發(fā)散的可能性. 從上述分析可以得出結(jié)論,標(biāo)準(zhǔn)PF的運(yùn)行機(jī)制是集中風(fēng)險(xiǎn),BA-PF的運(yùn)行機(jī)制是分?jǐn)傦L(fēng)險(xiǎn).此外,我們可以從BA-PF的特性得出群體智能優(yōu)化粒子濾波法的一些共性. 1)粒子數(shù)越少,出現(xiàn)濾波發(fā)散的概率越大.當(dāng)粒子數(shù)減少時(shí),群體智能優(yōu)化粒子濾波和PF的濾波發(fā)散概率都會(huì)增加,但群體智能優(yōu)化粒子濾波由于其分?jǐn)傦L(fēng)險(xiǎn)的機(jī)制,其發(fā)散的概率會(huì)低于PF. 2)粒子數(shù)越少,群體智能優(yōu)化粒子濾波的優(yōu)勢(shì)越明顯.群體智能優(yōu)化粒子濾波可以用較小的粒子數(shù)達(dá)到所需精度,例如PF在粒子數(shù)為100時(shí)的預(yù)測誤差為5.3629,運(yùn)算時(shí)間為0.1267 s,而BA-PF在粒子數(shù)為20時(shí),預(yù)測誤差為4.4270,運(yùn)算時(shí)間為0.1115 s,綜合性能具有明顯優(yōu)勢(shì).此外取較多粒子數(shù)時(shí)的群體智能優(yōu)化粒子濾波算法還可以應(yīng)用于對(duì)運(yùn)算速度要求不高,而對(duì)精度有高要求的場景. 3)群體智能優(yōu)化算法的平均精度高于PF,但并非每個(gè)時(shí)刻的預(yù)測精度都高于PF.PF的濾波過程帶有一定的“賭博”性質(zhì),如果其認(rèn)為的高可信度狀態(tài)值距離真實(shí)值很近,則其精度會(huì)很高,這種情況下群體智能優(yōu)化粒子濾波的精度很可能會(huì)低于PF;但是如果PF“賭錯(cuò)了”高可信度狀態(tài)值,則該時(shí)刻的濾波精度會(huì)很低. 4)初始時(shí)刻濾波結(jié)果發(fā)散的概率更大.由于初始時(shí)刻設(shè)置的初值往往是有誤差的,受該誤差的影響,初始一段時(shí)間內(nèi)群體智能優(yōu)化粒子濾波算法和PF的濾波發(fā)散概率均會(huì)高于平均值. 6.2 粒子多樣性測試 為了測試BA-PF濾波估計(jì)時(shí)的樣本多樣性,也結(jié)合實(shí)際應(yīng)用中濾波器長時(shí)間工作的特點(diǎn),這里將運(yùn)行步數(shù)增加至100步.取PF和BA-PF在k=10,k=25,k=95時(shí)刻的粒子分布,如圖11—圖13所示. 圖11 (網(wǎng)刊彩色)k=10時(shí)粒子狀態(tài)分布情況Fig.11.(color online)Particle distribution when k=10. 圖12 (網(wǎng)刊彩色)k=25時(shí)粒子狀態(tài)分布情況Fig.12.(color online)Particle distribution when k=25. 從圖11—圖13可以看出,標(biāo)準(zhǔn)PF隨著迭代過程的進(jìn)行,粒子多樣性明顯降低,尤其在濾波過程后期,大部分粒子僅僅聚集在幾個(gè)狀態(tài)值上,這將嚴(yán)重影響濾波器的估計(jì)性能.而在BA-PF中,粒子集在整體向高似然真實(shí)區(qū)域移動(dòng)的同時(shí),在低似然區(qū)域也合理地保留了部分粒子,這是由于BA-PF根據(jù)粒子群體當(dāng)前尋找到的最優(yōu)位置為目標(biāo),調(diào)整自身的飛行軌跡,以提高整個(gè)群體的迭代搜索效率和粒子分布的多樣性.此外,BA-PF避免了傳統(tǒng)重采樣對(duì)粒子的舍棄,很好地解決了粒子貧化的問題. 圖13 (網(wǎng)刊彩色)k=95時(shí)粒子狀態(tài)分布情況Fig.13. (color online)Particle distribution when k=95. 作為最新的智能優(yōu)化算法之一,蝙蝠算法完美結(jié)合了標(biāo)準(zhǔn)粒子群優(yōu)化算法以及和聲算法的主要優(yōu)點(diǎn),同時(shí)兼具全局搜索和局部搜索能力,在計(jì)算精度和效率方面具有明顯的優(yōu)勢(shì).本文將蝙蝠算法融入粒子濾波,算法可以在全局搜索和局部搜索之間實(shí)現(xiàn)自適應(yīng)轉(zhuǎn)換,同時(shí)結(jié)合了最新的觀測值,使粒子群智能地向全局范圍內(nèi)更優(yōu)的位置移動(dòng),提高了樣本整體的質(zhì)量.實(shí)驗(yàn)結(jié)果證明了本文算法可以明顯提高粒子濾波的精度和粒子多樣性,且綜合性能優(yōu)于PSO-PF. [1]Hossein T N,Akihiro T,Seiichi M 2012IEEE Trans.Intell.Transp.Syst.13 748 [2]Li H W,Wang J 2012IET Radar Sonar Navig.6 180 [3]Vasileios M,Panos S 2012J.Comput.Phys.231 602 [4]Yang W M,Zhao M R 2016Acta Phys.Sin.65 040502(in Chinese)[楊偉明,趙美蓉 2016物理學(xué)報(bào) 65 040502] [5]Du M,Nan X M,Guan L 2013IEEE Trans.Image Process.22 3852 [6]Chen Z M,Qu Y X,Liu B,Fu M H,Chen J H 2016Proc.Inst.Mech.Eng.G:J.Aerosp.Engineering230 747 [7]Zhang Q,Qiao Y K,Kong X Y,Si X S 2014Acta Phys.Sin.63 110505(in Chinese)[張琪,喬玉坤,孔祥玉,司小勝2014物理學(xué)報(bào)63 110505] [8]Wang X,Han C Z 2013Acta Automatica Sinica39 1152(in Chinese)[王曉,韓崇昭 2013自動(dòng)化學(xué)報(bào) 39 1152] [9]Zhang Q,Hu C H,Qiao Y K 2008Control and Decision23 117(in Chinese)[張琪,胡昌華,喬玉坤2008控制與決策23 117] [10]Li T,Sattar T P,Sun S 2012Signal Process.92 1637 [11]Pawel M S,Zsófia L,Robert B 2013Automatica49 147 [12]Yu Y,Zheng X 2011Signal Process.91 1339 [13]Zhong J,Fung Y F 2012IET Control Theory Appl.6 689 [14]Xian W,Long B,Li M,Wang H 2013IEEE Trans.Instrum.Meas.63 2 [15]Liu Y L,Lin B J 2010Control and Decision25 361(in Chinese)[劉云龍,林寶軍 2010控制與決策 25 361] [16]Qiu X N,Liu S R,Lü Q 2010Control Theory&Applications27 1724(in Chinese)[邱雪娜,劉士榮,呂強(qiáng) 2010控制理論與應(yīng)用27 1724] [17]Chen Z M,Bo Y M,Wu P L,Duan W Y,Liu Z F 2013Control and Decision28 193(in Chinese)[陳志敏,薄煜明,吳盤龍,段文勇,劉正凡2013控制與決策28 193] [18]Gandomi A H,Yang X S,Alavi A H,Talatahari S 2013Neural Comput.Appl.22 1239 [19]Li L L,Zhou Y Q 2014Neural Comput.Appl.25 1369 [20]Yao Z N,Liu D M,Liu S D,Zhu X L 2014Acta Phys.Sin.63 227502(in Chinese)[姚振寧,劉大明,劉勝道,朱興樂2014物理學(xué)報(bào)63 227502] [21]Rodrigues D,Pereira L A M,Nakamura R Y M,Costa K A P,Yang X S,Souza A N 2014Expert Syst.Appl.41 2250 [22]Chen Z M,Qu Y X,Xi Z D,Liu B,Kang D Y 2016Asian J.Control18 1877 PACS:05.45.Tp,05.40.–a DOI:10.7498/aps.66.050502 Intelligent particle filter based on bat algorithm? Chen Zhi-Min1)?Tian Meng-Chu2)Wu Pan-Long2)Bo Yu-Ming2)Gu Fu-Fei1)Yue Cong2) 1)(China Satellite Maritime Tracking and Controlling Department,Jiangyin 214431,China) 24 August 2016;revised manuscript 11 December 2016) Particle filer is apt to have particle impoverishment with unstable filtering precision,and a large number of granules are required to estimate the nonlinear system accurately,which reduces the comprehensive performance of the algorithm.To solve this problem,a new particle filter based on bat algorithm is presented in this paper,where particles are used to represent individual bat so as to imitate the search process of bats for preys.In traditional resampling process,particles are directly discarded,the improved algorithm adopts another approach and solves the problem of particle impoverishment.It combines the advantages of particle swarm optimization algorithm and harmonic algorithm perfectly.New particle filter has capacity of global and local search and is superior in computation accuracy and efficiency.By adjusting frequency,loudness,and impulse emissivity of particle swarm,the optimal particle at that time is followed by particle swarm to search in the solution space.The global search and local search can be switched dynamically to improve the overall quality of the particles swarm as well as the distribution rationality.In addition,the improved particle filter uses Lévy flight strategy to avoid being attracted by harmful local optimal solution,it expands the space of research and further promotes the optimization effect of particle distribution.Using the useful information about particle swarm,improved particle filter can make particles get rid of local optimum and reduce the waste of iterations in insignificant status change.Based on the number of valid particle samples,it can improve quality of particle samples by expanding their diversity.In information interaction mechanism of improved particle filter,the method in this paper sets scoreboard of particle target function to compare the value of particle target function at each iteration sub-moment with the value of target function on scoreboard to gain global optimum of all particles at current filtering moment.Taking information interaction between global optimum and particle swarm,the guiding function of global optimum is realized.The process of particle optimization is ended prematurely through setting a maximum iteration or termination threshold.There is a tendency for the whole particle swarm closing to high likehood area without global convergence so that the advantages of improved particle filter in accuracy and speed will not be damaged.In addition,convergence analysis and computational complexity analysis are given in this paper.Experiment indicates that this method can improve the particle diversity and prediction accuracy of particle filter,and meanwhile reduce the particle quantity obviously which is required by the state value prediction for nonlinear system. particle filter,bat algorithm,particle diversity,state estimation PACS:05.45.Tp,05.40.–a 10.7498/aps.66.050502 ?國家自然科學(xué)基金(批準(zhǔn)號(hào):61501521,U1330133,61473153)和中國博士后科學(xué)基金(批準(zhǔn)號(hào):2015M582861)資助的課題. ?通信作者.E-mail:chenzhimin@188.com *Project supported by the National Natural Science Foundation of China(Grant Nos.61501521,U1330133,61473153)and the China Postdoctoral Science Foundation(Grant No.2015M582861). ?Corresponding author.E-mail:chenzhimin@188.com5 BA-PF性能分析
6 仿真實(shí)驗(yàn)
7 結(jié) 論
2)(School of Automation,Nanjing University of Science and Technology,Nanjing 210094,China)