郭 魯,魏 穎
(沈陽(yáng)工學(xué)院 信息與控制學(xué)院,遼寧 撫順 113122)
無(wú)線傳感器網(wǎng)絡(luò)(WSN, wireless sensor network)是當(dāng)今比較重要的高科技技術(shù),其主要思想是通過(guò)相應(yīng)的傳感器設(shè)備檢測(cè)相應(yīng)的環(huán)境數(shù)據(jù),同時(shí)將檢測(cè)的信息相融合,實(shí)現(xiàn)網(wǎng)絡(luò)連接。目標(biāo)跟蹤是無(wú)線傳感器網(wǎng)絡(luò)的基礎(chǔ)研究領(lǐng)域之一,同時(shí)也是研究的熱點(diǎn),主要應(yīng)用于交通監(jiān)控和戰(zhàn)爭(zhēng)檢測(cè)等[1-2]。例如,要實(shí)現(xiàn)對(duì)一個(gè)目標(biāo)進(jìn)行及時(shí)準(zhǔn)確跟蹤,可以將其放在布置有無(wú)線傳感器的環(huán)境中,通過(guò)無(wú)線傳感器網(wǎng)絡(luò)實(shí)時(shí)采集目標(biāo)運(yùn)動(dòng)中的測(cè)量數(shù)據(jù),再將測(cè)量數(shù)據(jù)返回跟蹤系統(tǒng),跟蹤估計(jì)目標(biāo)的位置。應(yīng)用無(wú)線傳感器網(wǎng)絡(luò)進(jìn)行目標(biāo)跟蹤時(shí),若是監(jiān)測(cè)的準(zhǔn)確性不高,系統(tǒng)就可能無(wú)法自動(dòng)集中,導(dǎo)致目標(biāo)跟蹤丟失。粒子濾波(PF,particle filter)通過(guò)非參數(shù)化的蒙特卡洛模擬實(shí)現(xiàn)遞推貝葉斯濾波,更新推斷系統(tǒng)的下一個(gè)狀態(tài),精確逼近最優(yōu)估計(jì)值,因此,粒子濾波比較適用于處理目標(biāo)跟蹤等非線性系統(tǒng)的狀態(tài)估計(jì)問(wèn)題。粒子濾波算法在多次重復(fù)迭代后會(huì)出現(xiàn)粒子貧化現(xiàn)象,導(dǎo)致目標(biāo)跟蹤的準(zhǔn)確性降低。粒子貧化問(wèn)題一般可以通過(guò)改進(jìn)重要性分布函數(shù)或者是改進(jìn)重新提取粒子來(lái)解決,使粒子的多樣性得到了保證[3-4]。為了保證粒子群優(yōu)化過(guò)程中的局部多樣性,本文運(yùn)用改進(jìn)的粒子濾波算法,解決了粒子算法中粒子退化的缺陷。
現(xiàn)代粒子濾波領(lǐng)域有多種發(fā)展方向,其中群智能優(yōu)化粒子濾波算法是一個(gè)比較新的發(fā)展方向。群集智能粒子濾波方法的主要思想是對(duì)粒子分布實(shí)行反復(fù)迭代優(yōu)化,對(duì)于粒子群中低權(quán)重粒子不存在放棄問(wèn)題,從而增加了粒子迭代過(guò)程中的多樣性,在根本上解決粒子貧化問(wèn)題。文獻(xiàn)[5]為了優(yōu)化粒子濾波算法的樣本更新過(guò)程,采用粒子群算法和螞蟻群算法相結(jié)合的算法,在粒子群體之間實(shí)現(xiàn)了信息共享,大大提高了粒子群體全局優(yōu)化能力。采用文獻(xiàn)[6]進(jìn)行優(yōu)化的粒子濾波算法應(yīng)用到自適應(yīng)粒子群中,對(duì)樣本粒子數(shù)量進(jìn)行了適應(yīng)性調(diào)整,合理調(diào)整了粒子空間分布狀態(tài)和正確性。
蝙蝠算法(BA, bat algorithm)由劍橋大學(xué)的楊教授于2010年提出,它通過(guò)模仿蝙蝠的獵物行為來(lái)獲得最好的尋優(yōu)解。BA算法作為最新的智能優(yōu)化算法之一,還處于早期研究和擴(kuò)展階段,與PF融合的報(bào)道較少。作為最新的智能優(yōu)化算法之一,蝙蝠算法還處于早期研究和擴(kuò)展階段,關(guān)于與PF融合的報(bào)道較少。文獻(xiàn)[7]表明,蝙蝠算法優(yōu)化的綜合能力比螞蟻算法,粒子群等算法更強(qiáng),因而蝙蝠算法和粒子濾波相結(jié)合時(shí),智能優(yōu)化的粒子濾波性能進(jìn)一步提高,具有重要意義。但是蝙蝠算法要比較脈沖頻率和脈沖強(qiáng)度來(lái)產(chǎn)生兩個(gè)獨(dú)立的隨機(jī)數(shù)來(lái)確定下一步驟的操作:這種情況下隨機(jī)性太大而控制太小,從而降低了蝙蝠算法的精確度和穩(wěn)定性。因此,如果將標(biāo)準(zhǔn)的蝙蝠計(jì)算方法加入到粒子濾波算法中,通過(guò)兩者相結(jié)合,就不能滿足現(xiàn)代高頻精密跟蹤雷達(dá)精度的需要[7-9]。
本文提供對(duì)于粒子濾波跟蹤算法粒子退化問(wèn)題,提出了一種自適應(yīng)蝙蝠粒子濾波跟蹤算法(IBA-PF, individual bat algorithm particle filter)。自適應(yīng)蝙蝠粒子濾波算法在粒子濾波算法的基礎(chǔ)上加入改進(jìn)的蝙蝠算法,優(yōu)化了粒子重采樣過(guò)程,結(jié)合最新的觀測(cè)值定義粒子適應(yīng)度函數(shù),引導(dǎo)粒子整體上向更高的隨機(jī)區(qū)域移動(dòng)。同時(shí),引入一個(gè)動(dòng)態(tài)自適應(yīng)慣性權(quán)重來(lái)設(shè)計(jì)新的粒子全局搜索位置更新機(jī)制,有效協(xié)調(diào)調(diào)整全局探索和局部探索適應(yīng)能力、改善粒子貧化和陷入局部極值問(wèn)題,大大提高了目標(biāo)跟蹤性能。結(jié)果表明,該算法可以保護(hù)群體多樣性,節(jié)省時(shí)間,加速收斂速度。
IBA-PF算法是通過(guò)改進(jìn)的蝙蝠算法優(yōu)化粒子濾波重采樣過(guò)程,來(lái)實(shí)現(xiàn)無(wú)線傳感器目標(biāo)跟蹤。其主要思想是在傳統(tǒng)粒子濾波算法中結(jié)合自適應(yīng)蝙蝠粒子濾波算法,增加了粒子多樣性,提高了跟蹤準(zhǔn)確性,縮短跟蹤監(jiān)測(cè)時(shí)間,提高了跟蹤監(jiān)測(cè)能力。實(shí)驗(yàn)結(jié)果表明,該算法具有較好的跟蹤性能。
粒子濾波主要是使用一類的隨機(jī)加權(quán)隨機(jī)樣本(也稱為粒子)來(lái)近似表征的后概率密度:
u(xg|z1:g)
(1)
δ是delta 函數(shù)。一般通過(guò)后驗(yàn)概率密度函數(shù)來(lái)估計(jì)目標(biāo)狀態(tài),按照重要樣本的原則,根據(jù)重要性分布函數(shù)來(lái)獲得重要性大的即為權(quán)值大的粒子。已知的樣本分布, 得到粒子對(duì)應(yīng)的重要度(權(quán)重)如公式(2),以及隨后的后驗(yàn)概率如公式(3):
(2)
(3)
通過(guò)上述的公式,代入式(2),可以確定加權(quán)粒子集的更新過(guò)程:
(4)
通過(guò)公式(3)和式(4)形成基于粒子濾波算法的方法,經(jīng)過(guò)粒子重采樣有效解決了粒子退化問(wèn)題。重新采樣算法將所有粒子的權(quán)重值同樣更改為1/N,退化問(wèn)題得到緩解。
但是為了保持樣本粒子的集中分布和合理分布功能,通常采用采樣算法復(fù)制大值粒子,刪除小值的方法,結(jié)果導(dǎo)致權(quán)重大值粒子出現(xiàn)了重復(fù)粒子增多的現(xiàn)象,即粒子貧化的現(xiàn)象,最終會(huì)導(dǎo)致粒子樣本多樣性減少,使整個(gè)算法的性能變差,因此在重要的采樣過(guò)程中,為了要保持其多樣性,要對(duì)粒子進(jìn)行適當(dāng)調(diào)整。
現(xiàn)有的重新采樣算法中,為了保留粒子集中有代表性的粒子,因此,只選擇高權(quán)重值的粒子進(jìn)行更新,導(dǎo)致重復(fù)性粒子增加,粒子的多樣性丟失,出現(xiàn)粒子貧化現(xiàn)象。在重采樣過(guò)程中,引入了一種基于粒子濾波的自適應(yīng)蝙蝠算法,結(jié)合最新的觀測(cè)值定義粒子適應(yīng)度函數(shù),引導(dǎo)粒子整體上向更高的隨機(jī)區(qū)域移動(dòng)。同時(shí)利用動(dòng)態(tài)自適應(yīng)慣性權(quán)重探索新的粒子位置更新為設(shè)計(jì)機(jī)制,引入動(dòng)態(tài)適應(yīng)慣性權(quán)重值,有效調(diào)整全局探索和局部探索適應(yīng)能力、改善粒子貧化和局部極值問(wèn)題,增加粒子群多樣化從而提高跟蹤性能[10-11]。
目前對(duì)于粒子濾波重采樣方法,通常保留大權(quán)重的粒子,而刪除小權(quán)重粒子,這樣多次迭代后,導(dǎo)致粒子缺乏,出現(xiàn)粒子貧化現(xiàn)象。對(duì)于上述問(wèn)題,本文研究運(yùn)用自適應(yīng)蝙蝠算法優(yōu)化了粒子濾波。
標(biāo)準(zhǔn)粒子濾波通常是通過(guò)后驗(yàn)概率密度函數(shù)對(duì)樣本進(jìn)行采樣,在此過(guò)程中,如果不考慮當(dāng)前的觀測(cè)值,結(jié)果就會(huì)導(dǎo)致發(fā)生粒子加權(quán)值減小退化。為了克服權(quán)重值退化問(wèn)題,主要通過(guò)重采樣過(guò)程中放棄小權(quán)重值粒子來(lái)實(shí)現(xiàn)。但是這樣經(jīng)過(guò)多次重復(fù)迭代,最終會(huì)導(dǎo)致粒子退化。針對(duì)以上問(wèn)題,本文采用粒子濾波算法結(jié)合自適應(yīng)蝙蝠算法的新方法,為了保持粒子分布的合理性,在樣本的粒子集在權(quán)值更新前,通過(guò)全局最優(yōu)值逐漸引導(dǎo)大部分粒子向于高似然區(qū)域移動(dòng),同時(shí)高似然區(qū)域附近不會(huì)是全體粒子集。通過(guò)此方法優(yōu)化重采樣過(guò)程,最終可以改善粒子的分布,提高跟蹤精度算法[ [12-14]。
BA是最新的蝙蝠算法,該種算法是模仿自然界蝙蝠捕獲獵物的行為,主要思想是利用回聲定位尋找獵物,該方法適用于反復(fù)迭代尋憂,同時(shí)具有模型簡(jiǎn)單,收斂速度快,強(qiáng)壯性好等優(yōu)點(diǎn)。與其他主流群體智能優(yōu)化算法相比較,蝙蝠算法的優(yōu)化能力要更好些。這個(gè)算法的主要思路是利用蝙蝠不斷持續(xù)更新相關(guān)參數(shù),其參數(shù)為聲音的強(qiáng)度,脈沖頻率、脈沖發(fā)射頻度,它們共同融合來(lái)實(shí)現(xiàn)尋找目標(biāo)的優(yōu)化能力。其中蝙蝠的飛行速度的快慢由參數(shù)中的脈沖頻率決定,蝙蝠接收新的位置的概率由參數(shù)中的聲音的強(qiáng)度和脈沖發(fā)射頻度共同決定。具體優(yōu)化原理是:
1)蝙蝠個(gè)體i在D維搜索空間中的g時(shí)刻的速度vi和位置xi的更新方式定義為:
fi=fmin+(fmax-fmin)·β
(5)
(6)
(7)
2)局部搜索時(shí),每只蝙蝠的新位置為xgnew由隨機(jī)攝動(dòng)生成的當(dāng)前最佳位置,更新位置的方法與公式相同:
(8)
3)在尋找獵物的開(kāi)始階段,蝙蝠有較大的脈沖音強(qiáng)Ai和相對(duì)較低的脈沖發(fā)射頻度ri,所以它們可以在大范圍內(nèi)進(jìn)行搜索,當(dāng)它們找到食物時(shí),它們會(huì)逐漸增加釋放脈沖發(fā)射頻度,而逐漸減小脈沖音強(qiáng)。Ai和ri的更新如下:
(9)
(10)
標(biāo)準(zhǔn)蝙蝠算法通過(guò)搜索脈沖的f數(shù)來(lái)調(diào)整蝙蝠的運(yùn)動(dòng),以便可以控制全局和區(qū)域搜索功能。重復(fù)次數(shù)增加,根據(jù)式(5)~(7)利用蝙蝠的位置和信息更新時(shí),蝙蝠的速度是越來(lái)越小,蝙蝠群體集中在局部極值地,該算法有效的變異機(jī)制不足,群體多樣性減少影響,收斂精度。本文優(yōu)化了蝙蝠的位置更新方式,設(shè)計(jì)了新的全局探索公式,引入了動(dòng)態(tài)自適應(yīng)慣性加權(quán)值控制蝙蝠飛行位置的變化程度。新的位置更新方法是:
(11)
w(g-1)=exp(-λ(g-1)/λ(g-2))
(12)
(13)
在搜索空間中把粒子隨機(jī)的分布,每一個(gè)蝙蝠個(gè)體用每一個(gè)粒子來(lái)表示,整個(gè)尋優(yōu)搜索過(guò)程就像蝙蝠種群在尋找食物一樣。在初始反復(fù)時(shí),首先是實(shí)現(xiàn)全局搜索,在此過(guò)程中,粒子狀態(tài)的更新是通過(guò)粒子較低的脈沖發(fā)射頻率結(jié)合較大的音強(qiáng)來(lái)實(shí)現(xiàn)。而在進(jìn)行局部搜索的時(shí)候,粒子狀態(tài)的更新是通過(guò)粒子逐漸減少音強(qiáng)和提高發(fā)射頻率來(lái)實(shí)現(xiàn)。粒子群可以調(diào)整上面3種參數(shù):頻率,聲音大小,脈沖發(fā)射頻率,沿著目前最好的最優(yōu)的粒子進(jìn)行適當(dāng)自適應(yīng)搜索,增加粒子的多樣性,改善粒子退化現(xiàn)象。為了實(shí)現(xiàn)更好的濾波性能,在粒子采樣過(guò)程中,融合最新當(dāng)前觀測(cè)值來(lái)優(yōu)化粒子群,其自適應(yīng)函數(shù)定義為:
(14)
式中,ynew是最新當(dāng)前觀測(cè)值,ypred是濾波器預(yù)測(cè)的觀測(cè)值,Rg為觀測(cè)噪聲方差。從(14)的計(jì)算公式可以看出,該算法有效利用了每一時(shí)刻最新當(dāng)前觀測(cè)值,同時(shí)結(jié)合該算法相關(guān)內(nèi)部信息,對(duì)算法本身具有指導(dǎo)作用。通過(guò)與位置有優(yōu)勢(shì)的更好的粒子相比較,多次重復(fù)之后,在搜索空間的最佳位置周圍會(huì)聚集大部分粒子。為了實(shí)現(xiàn)結(jié)束迭代,必須設(shè)定迭代終止閾值,滿足這個(gè)條件后則終止迭代。通過(guò)模仿蝙蝠追蹤獵物的特性來(lái)優(yōu)化粒子。在算法優(yōu)化初期,粒子分布在整個(gè)空間中,粒子之間具有較大的間隔和較快的飛行速度,從而保證粒子走向最優(yōu)解,達(dá)到較快的收斂速度,而后期為了保證優(yōu)化末期的精度,粒子逐漸減小的飛行速度,整個(gè)過(guò)程中粒子實(shí)現(xiàn)自適應(yīng)速度調(diào)整。
綜上,本文利用IBA-PF算法設(shè)計(jì)了自適應(yīng)采樣和蝙蝠算法融合進(jìn)粒子濾波算法中,在粒子濾波的重采樣過(guò)程,通過(guò)改進(jìn)的蝙蝠算法結(jié)合最新的觀測(cè)值定義粒子的適應(yīng)度函數(shù)來(lái)優(yōu)化重采樣過(guò)程,引導(dǎo)粒子向整體上較高的隨機(jī)區(qū)域移動(dòng)。同時(shí)利用動(dòng)態(tài)自適應(yīng)慣性權(quán)重探索新的粒子位置更新為設(shè)計(jì)機(jī)制,引入動(dòng)態(tài)適應(yīng)慣性權(quán)重值, 有效調(diào)整全局探索和局部探索適應(yīng)能力、改善粒子貧化和局部極值問(wèn)題,增加粒子群多樣化從而提高跟蹤性能。該算法具有更強(qiáng)的適應(yīng)性和隨機(jī)性。通過(guò)這兩種算法在迭代更新中的反復(fù)作用,提高了粒子的多樣性,有效壓縮粒子的規(guī)模,同時(shí)提高計(jì)算效率和精度。自適應(yīng)蝙蝠粒子濾波算法重采樣方法可以防止粒子的退化,增加粒子的多樣性,可以穩(wěn)定控制粒子集規(guī)模在較小的范圍內(nèi),提高粒子濾波的計(jì)算精度和效率??梢詼p少算法的運(yùn)行時(shí)間,實(shí)時(shí)性能大幅提高。
算法實(shí)現(xiàn)程序
自適應(yīng)蝙蝠粒子濾波算法實(shí)現(xiàn)步驟為:
步驟3:自適應(yīng)蝙蝠粒子濾波算法采樣粒子。
1)模擬蝙蝠的全局搜索行為。根據(jù)上面公式(5)更新粒子的頻率,根據(jù)公式(6)更新粒子的速度,根據(jù)公式(11)~(13)更新粒子的位置。
4)通過(guò)計(jì)算比較更新全局最優(yōu)解的值。
(15)
步驟4:當(dāng)算法臨界值達(dá)到設(shè)定閾值ε或達(dá)到最大值重復(fù)迭代次數(shù)時(shí),優(yōu)化中斷,否則轉(zhuǎn)入步驟2。
步驟5:在上述過(guò)程的優(yōu)化后,進(jìn)行粒子權(quán)重值計(jì)算,并進(jìn)行歸一化處理。
(16)
步驟6:狀態(tài)輸出。
(17)
選擇過(guò)程模型和測(cè)量的非靜態(tài)增長(zhǎng)模型,模型如下:
8cos[1.2(u-1)]+w(u)
(18)
(19)
在這里,w(u)和v(u)是零均值高斯噪聲。設(shè)系統(tǒng)噪聲方差Q=1,量測(cè)噪聲方差R=1,濾波時(shí)間步數(shù)為55,最大脈沖音量值A(chǔ)0=0.25,fmin=0,fmax=1.7最大脈沖率R0=0.5。PF、BA-PF和IBA-PF用于非線性系統(tǒng)的狀態(tài)估算和跟蹤。
平方根差公式為:
(20)
3.1.1 精度測(cè)試
1)當(dāng)粒子數(shù)為N=20,Q=1時(shí),模擬結(jié)果如圖1和圖2所示。
圖1 濾波狀態(tài)估計(jì)
圖2 濾波誤差絕對(duì)值
2)N=100,Q=1,模擬結(jié)果如圖3和圖4所示。
圖3 濾波狀態(tài)估計(jì)
圖4 濾波誤差絕對(duì)值
從圖1~4可以看出,與標(biāo)準(zhǔn)粒子濾波和蝙蝠粒子濾波、自適應(yīng)蝙蝠粒子濾波算法相比,自適應(yīng)蝙蝠粒子濾波算法得到了優(yōu)化。
由于IBA-PF 在PF 的基礎(chǔ)上的原因,其算法具有更高的狀態(tài)值預(yù)測(cè)準(zhǔn)確度,IBA-PF則模擬以PF為基礎(chǔ)的個(gè)體或群體尋找蝙蝠的食物與BA-PF相比,IBA-PF可精確控制全局優(yōu)化能力和局部?jī)?yōu)化能力,從而優(yōu)化粒子在狀態(tài)空間的分布,可以粒子分布更合理,使用更少重復(fù)迭代次數(shù),達(dá)到尋優(yōu),用較少的粒子并進(jìn)一步提高粒子過(guò)濾的精度。從表1可以看出,IBA-PF的運(yùn)算精度在粒子數(shù)為20時(shí),就高于PF算法粒子數(shù)為100的運(yùn)算精度,并且運(yùn)算時(shí)間與BA-PF差不多。IBA-PF同時(shí)還可以提高綜合性價(jià)比的濾波精度和保持較快的計(jì)算速度。
從表1還可以看出,如果粒子數(shù)為20和50,則PF、BA-PF、IBA-PF三種算法相比較,IBA-PF的精確度有了很大的提高,但當(dāng)粒子數(shù)為100時(shí),IBA-PF的準(zhǔn)確度沒(méi)有太大的提高。這是因?yàn)楫?dāng)粒子數(shù)量非常少時(shí),各粒子的平均權(quán)重較大,各粒子的質(zhì)量會(huì)對(duì)預(yù)測(cè)結(jié)果產(chǎn)生很大影響。這就體現(xiàn)了對(duì)IBA-PF的全局優(yōu)化能力和局部?jī)?yōu)化能力的精確控制優(yōu)勢(shì)。但是,當(dāng)粒子數(shù)量較大時(shí),各粒子質(zhì)量的平均重要度就會(huì)降低,因此IBA-PF的自適應(yīng)探索機(jī)制的優(yōu)勢(shì)不會(huì)很大。這表明IBA-PF非常適合于快速、精確的預(yù)測(cè),如果粒子數(shù)量少,如雷達(dá)、無(wú)線傳感器目標(biāo)跟蹤等。
表1 實(shí)驗(yàn)結(jié)果對(duì)比
3.1.2 粒子多樣性測(cè)試
在IBA-PF濾波估算中,為測(cè)定樣本的多樣性,得出了以下結(jié)果:
當(dāng)g=10,g=25,g=95時(shí),PF,BA-PF,IBA-PF的粒子分布如圖5~7所示。從圖5~7可以看出,PF、BA-PF、IBA-PF算法相比,標(biāo)準(zhǔn)PF算法按重復(fù)采樣進(jìn)行的濾波過(guò)程中,粒子的多樣性明顯減少。在這個(gè)階段,大部分粒子只集中在幾個(gè)狀態(tài)值上,可能會(huì)嚴(yán)重影響濾波器的估計(jì)性能。而在BA-PF、IBA-PF的情況中,粒子集大部分一起向高似然區(qū)域移動(dòng)的同時(shí),低相似性區(qū)域合理地保存了部分粒子,其中,IBA-PF算法的情況比BA-PF算法的情況更為明顯,IBA-PF以粒子群體目前的最佳位置為目標(biāo),并調(diào)整飛行軌跡,以提高整個(gè)群體的重復(fù)搜索效率和粒子分布的多樣性。IBA-PF算法合理優(yōu)化了每個(gè)階段的粒子分布,具有粒子相對(duì)最集中的優(yōu)點(diǎn),利用IBA-PF采樣可以有效地清除每個(gè)階段多余的粒子,并穩(wěn)定地控制粒子的大小。IBA-PF證明了通過(guò)減小粒子大小和蝙蝠算法優(yōu)化穩(wěn)定性,可以提高計(jì)算效率。本文提出的算法大大提高了粒子的多樣性,而使用BA-PF算法,粒子的多樣性略有增加。結(jié)果表明,雖然IBA-PF采樣可以減少粒子的數(shù)量,但根據(jù)動(dòng)態(tài)粒子數(shù),IBA-PF采樣可以去除不必要的粒子,蝙蝠算法可以獲得更好的優(yōu)化性能。
圖5 g=10時(shí)粒子狀態(tài)分布情況
圖6 g=25時(shí)粒子狀態(tài)分布情況
圖7 g=95時(shí)粒子狀態(tài)分布情況
本文在進(jìn)行分析時(shí),只考慮單個(gè)目標(biāo)在有效的檢測(cè)區(qū)域內(nèi)做勻速直線運(yùn)動(dòng)。其中,它的測(cè)量方程和運(yùn)動(dòng)狀態(tài)方程如下:
(15)
通常反映目標(biāo)跟蹤算法性能好壞用跟蹤精度的大小來(lái)表示,通常用平均平方根誤差來(lái)表示。本文采用3種計(jì)算方法:PF粒子濾波算法、BA-PF粒子濾波算法、IBA-PF粒子濾波算法通過(guò)它們的平均平方根誤差的計(jì)算數(shù)值和比較曲線分析性能。平均平方根誤差跟蹤的計(jì)算公式為(15)~(16):
(16)
在仿真實(shí)驗(yàn)中,取比值為0.72,在本實(shí)驗(yàn)中得到了3種算法的跟蹤軌跡曲線,如圖8所示。
圖8 目標(biāo)運(yùn)動(dòng)軌跡比較
如圖8所示,PF算法和BA-PF算法遠(yuǎn)離目標(biāo),而IBA-PF算法更接近目標(biāo)的真實(shí)軌跡。如圖9~10所示,IBA-PF算法跟蹤精度最高,跟蹤誤差最小,其次為BA-PF算法,PF算法的跟蹤精度最低,PF算法與BAPF算法的跟蹤誤差較大。PF算法和BA-PF算法跟蹤性能較差,不能實(shí)時(shí)準(zhǔn)確跟蹤,但本文提出的IBA-PF算法更接近目標(biāo),跟蹤精度略高,實(shí)現(xiàn)穩(wěn)定的準(zhǔn)確的跟蹤,跟蹤性能更好,效果顯著。從圖9和圖10可以看出,PF的濾波速度估計(jì)誤差最大,BA-PF比PF的濾波效果好些,IBA-PF濾波誤差最小,效果最好,最能推算目標(biāo)運(yùn)動(dòng)速度。PF、BA-PF和IBA-PF算法的運(yùn)行時(shí)間分別為50.36 s、38.58 s和29.26 s。全面比較后,通過(guò)自適應(yīng)IBA-PF控制,合理兼顧了全局尋優(yōu)能力和局部尋優(yōu)能力,使粒子趨于更合理的分布,提高了濾波的精度,提高了跟蹤性能。IBA-PF算法的優(yōu)點(diǎn)是可以提高實(shí)時(shí)監(jiān)控的效率。本文用3種濾波PF算法、BA-PF算法和IBA-PF算法分別進(jìn)行了110次模擬實(shí)驗(yàn),得到目標(biāo)位置和速度的平均平方根誤差。3種過(guò)濾算法的平均平方根誤差如表2所示。
圖9 目標(biāo)運(yùn)動(dòng)速在x軸的分量比較
圖10 目標(biāo)運(yùn)動(dòng)速度在y軸的分量比較
表2 3種濾波算法的均方根誤差
在表2中IBA-PF算法和PF算法相比,IBA-PF算法的位置和速度的平均平方根誤差,其中最低跟蹤精度是PF算法,IBA-PF的跟蹤精度最高,可以看出具有較好的跟蹤性能。
從圖11可以看出,本文所提出的跟蹤算法的準(zhǔn)確性優(yōu)于PF和BA-PF算法。由于IBA-PF是根據(jù)狀態(tài)后驗(yàn)的概率分布的粒子集合來(lái)推測(cè)狀態(tài),所以對(duì)非高斯的雜音不敏感,曲線也沒(méi)有大的變化。標(biāo)準(zhǔn)PF的RMSE曲線更彎曲,精度更低。
圖11 3種算法的跟蹤精度
實(shí)驗(yàn)結(jié)果表明,本文提出的自適應(yīng)蝙蝠粒子濾波的WSN目標(biāo)跟蹤方法。通過(guò)改進(jìn)的蝙蝠算法優(yōu)化粒子濾波的重采樣過(guò)程,結(jié)合最新的觀測(cè)值定義粒子的適應(yīng)度函數(shù),引導(dǎo)粒子向整體上較高的隨機(jī)區(qū)域移動(dòng),有效調(diào)整全局探索和局部探索適應(yīng)能力、改善粒子貧化和局部極值問(wèn)題,增加粒子群多樣化從而提高跟蹤性能。自適應(yīng)蝙蝠粒子濾波算法重采樣方法可以防止粒子的退化,增加粒子的多樣性,減少跟蹤誤差,可以減少算法的運(yùn)行時(shí)間,實(shí)時(shí)追蹤性能大幅提高。IBAPF算法的計(jì)算時(shí)間最短。與BA-PF算法和PF算法相比,IBA-PF算法的位置和速度的平均平方根誤差最小(位置0.031 1、0.020 2、速度0.026 2、0.010 1),PF算法的跟蹤精度最低,IBA-PF的跟蹤精度最高。證明了IBA-PF算法具有良好的跟蹤性能。
針對(duì)粒子濾波中的粒子貧化問(wèn)題和采用群體智能優(yōu)化算法后的計(jì)算效率低下問(wèn)題,刪除不必要的粒子以優(yōu)化蝙蝠算法的初始粒子集問(wèn)題,本文提出了一種自適應(yīng)蝙蝠粒子濾波算法,用于無(wú)線傳感器網(wǎng)絡(luò)中的目標(biāo)跟蹤。該算法粒子采樣中,使用改進(jìn)的蝙蝠采樣算法結(jié)合最新的觀測(cè)值,定義了粒子匹配度函數(shù)來(lái)進(jìn)行優(yōu)化粒子重采樣過(guò)程,使整體粒子向更高的隨機(jī)區(qū)域移動(dòng)。同時(shí),全局探索新的粒子位置更新為設(shè)計(jì)機(jī)制,引入動(dòng)態(tài)適應(yīng)慣性權(quán)重值有效調(diào)整全局探索和局部探索適應(yīng)能力、改善粒子退化和局部極值問(wèn)題,提高無(wú)線傳感器網(wǎng)絡(luò)目標(biāo)跟著走性能。由于后驗(yàn)概率密度函數(shù)會(huì)產(chǎn)生新粒子,可以維持優(yōu)良粒子,同時(shí)保證了粒子的多樣性,有效緩解樣本枯竭問(wèn)題,從而大大改善了濾波功能。理論分析和實(shí)驗(yàn)結(jié)果表明,該算法的整體濾波效果優(yōu)于普通粒子濾波,可很好地實(shí)現(xiàn)準(zhǔn)確的目標(biāo)跟蹤,具有一定的實(shí)用價(jià)值。但是,粒子濾波算法具有運(yùn)算量較大,能耗較大的缺點(diǎn),需要在有限能量無(wú)線傳感器網(wǎng)絡(luò)、高精度測(cè)試、跟蹤問(wèn)題、能耗等方面進(jìn)行深入研究[18-20]。由粒子濾波不斷重復(fù)迭代更新,蝙蝠算法使粒子的分布更為集中在最優(yōu)點(diǎn)且分布合理,在重采樣中加入自適應(yīng)采樣可以穩(wěn)定控制粒子集規(guī)模在較小的范圍內(nèi),提高粒子濾波的計(jì)算精度和效率。IBA-PF算法可實(shí)現(xiàn)粒子間的信息交換可以有效地壓縮粒子的規(guī)模,與人工智能進(jìn)一步結(jié)合跟蹤領(lǐng)域?qū)⒌玫礁玫陌l(fā)展和應(yīng)用。