張 楊
(海軍航空大學(xué),山東煙臺264001)
機動目標(biāo)跟蹤應(yīng)用廣泛,且一直是目標(biāo)跟蹤領(lǐng)域的研究難點和重點。迄今為止,學(xué)者們已經(jīng)提出了許多機動目標(biāo)跟蹤算法[1-2]。其中,交互式多模型算法(Interacting Multiple Model,IMM)[3-4]使用多個模型進行并行濾波,并將模型轉(zhuǎn)移視為馬爾可夫過程,通過馬爾可夫概率轉(zhuǎn)移矩陣和更新后的模型概率來實現(xiàn)模型切換,解決了單一機動模型難以準(zhǔn)確描述目標(biāo)復(fù)雜機動形式和應(yīng)對未知機動的問題。這是一種具有較低費效比、次優(yōu)的、結(jié)構(gòu)簡單的算法,因而得到了廣泛的研究和應(yīng)用[5-8]。
IMM算法采用固定的馬爾可夫參數(shù)來描述模型的轉(zhuǎn)換過程,這樣存在2個限制:一是實際情況中機動目標(biāo)的機動情況信息很難提前獲得,當(dāng)先驗信息不足或不完全準(zhǔn)確時會導(dǎo)致馬爾可夫矩陣的設(shè)置不符合當(dāng)前跟蹤環(huán)境,使得跟蹤精度降低;二是在經(jīng)典的IMM算法中,其馬爾可夫轉(zhuǎn)移概率矩陣在整個跟蹤過程中是固定不變的,這樣使得模型轉(zhuǎn)換概率在目標(biāo)穩(wěn)定運動和機動轉(zhuǎn)換階段是一致的,不能根據(jù)目標(biāo)的狀態(tài)實時調(diào)整,進而降低了跟蹤精度[9-10]。
許多學(xué)者針對IMM算法的這種缺點,利用算法的各種后驗信息提出了自適應(yīng)馬爾可夫參數(shù)的IMM算法。例如,采用構(gòu)造誤差壓縮率的方法[11-12]、模型概率或模型似然概率對馬爾可夫轉(zhuǎn)移概率矩陣進行修正[13-14],取得了一定的效果。但此類方法均是利用后驗信息經(jīng)過簡單地處理后直接對馬爾可夫轉(zhuǎn)移概率矩陣進行調(diào)節(jié),容易出現(xiàn)算法不穩(wěn)定的情況。
文獻[15]采用隱馬爾可夫模型(Hidden Markov Model,HMM)[16-17]替代IMM算法的馬爾可夫模型,并結(jié)合Baum-Welch算法[18]實現(xiàn)了馬爾可夫轉(zhuǎn)移概率矩陣的實時估計,提高了跟蹤精度。但是該文獻中只對HMM鏈的長度和Baum-Welch算法的遞推次數(shù)2個參數(shù)進行了簡單設(shè)置,并未探討其對跟蹤效果的影響和明確具體的參數(shù)設(shè)置依據(jù),從而算法存在一定的局限性。
本文在文獻[15]的基礎(chǔ)上,提出了改進的基于隱馬爾可夫模型的自適應(yīng)IMM算法(Improved Adaptive Imm Algorithm Based on Hidden Markov Model,IHIMM),詳細分析了隱馬爾科夫鏈長度和Baum-Welch算法迭代次數(shù)對算法性能的影響,進一步明確了其設(shè)置依據(jù);并針對IMM模型切換誤差增大問題采用2種方法進行修正。通過仿真對比分析了參數(shù)的設(shè)置和修正方法對該算法性能的影響,并與經(jīng)典IMM算法對比證明了算法的有效性。
本文所討論的跟蹤問題均建立在以下的混合估計系統(tǒng)[19]:
式(1)、(2)中:X和Z分別是目標(biāo)的狀態(tài)和量測向量;F、G、H是已知的系統(tǒng)的系數(shù)矩陣,根據(jù)所處的模型m而定;w、v是與系統(tǒng)模型相對應(yīng)的、相互獨立的過程和量測噪聲矩陣,其噪聲為加性高斯白噪聲,其協(xié)方差矩陣分別為Q、R。
隱馬爾可夫模型(HMM)是關(guān)于時序的概率模型,如圖1所示。其主要由2個過程組成:第1個為馬爾可夫鏈生成的不可觀測的狀態(tài)隨機序列的過程,該過程是隱藏的;第2個為由各個狀態(tài)產(chǎn)生可觀測隨機序列的過程。一個HMM模型可以用λ=(π,P,B)來進行描述,π為初始狀態(tài)概率向量;P為馬爾可夫轉(zhuǎn)移概率矩陣,π和P一起描述了第一個過程的馬爾可夫鏈。B=(bj(k))為觀測概率矩陣,bj(k)為由狀態(tài)j觀測到k的概率,B描述了產(chǎn)生觀測序列的過程。
圖1 (IMM算法中的)HMM結(jié)構(gòu)圖Fig.1 HMM structure diagram(in the IMM algorithm)
令I(lǐng)MM算法的模型集有N個模型,令k時刻第i個模型表示為mk=i,模型i輸出的目標(biāo)量測估計為。定義3個概率:表示為k-1時刻模型i轉(zhuǎn)移到模型j的概率;為k時刻模型i的概率;為由k時刻模型i輸出的量測估計到量測Zk的概率。其表達式分別為:
式(3)~(5)中,Zk=[Z1,Z2,…,Zk],表示直到k時刻的量測序列。
須要指出傳統(tǒng)HMM模型和IMM算法中的HMM模型的不同。傳統(tǒng)的HMM模型中,每一時刻的狀態(tài)(隱藏態(tài))僅為狀態(tài)集中某一狀態(tài),其觀測概率矩陣B表示的為狀態(tài)直接到對應(yīng)觀測的概率,且其參數(shù)一般是時不變的;而IMM算法中的HMM每一時刻的狀態(tài)為模型集中全部模型的狀態(tài),量測概率矩陣B表示的則為每個模型通過目標(biāo)量測估計作為“中介”到量測的概率,且其3個參數(shù)均是時變的。
在IMM算法中,目標(biāo)的量測序列顯然是能直接獲取的,模型概率和量測概率矩陣也能通過模型的濾波得到的后驗信息計算得到(后面將有相關(guān)式子和說明)。結(jié)合上一節(jié)總結(jié)的IMM算法中的HMM,該問題可以重新描述為在已知HMMλ的觀測序列、μ和B的參數(shù)的情況下,估計其馬爾可夫轉(zhuǎn)移概率矩陣A。因此,考慮采用HMM相關(guān)算法中的Baum-Welch算法來求解上述問題。
Baum-Welch算法是在僅有觀測序列的條件下,通過EM算法來求解HMM模型的參數(shù),是一種非監(jiān)督的學(xué)習(xí)算法。給定IMM算法中的HMM的量測序列,在描述 Baum-Welch算法的基本過程之前,先定義概率函數(shù):
式(6)、(7)中:αk(i)為Zk中k時刻模型為i的前向概率;βt(i)為中t時刻模型為i的后向概率。
在IMM算法中,模型概率μ可以從其迭代過程直接獲得。同時,IMM算法中,其模型的似然函數(shù)定義為:
由于有
結(jié)合式(12),則有:
令γt(i)為在Zk中t時刻模型為i的概率;ξt(i,j)為在Zk中t時刻模型為i且下一時刻模型為j的概率,則有:
根據(jù)式(6)、(7)有:
根據(jù)文獻[18]中對Baum-Welch算法過程的描述,令初始狀態(tài)的HMM為λ(0)=(μ(0),A(0),B(0)),迭代的步數(shù)為n=1,2,…,量測序列為Zk,則馬爾可夫轉(zhuǎn)移概率矩陣的迭代式為:
須要強調(diào)的是,在Baum-Welch算法中μ和B都是須要迭代計算的,而在IMM算法中的HMM,其μ和B都能通過后驗信息計算而來,故不通過迭代計算。
根據(jù)Baum-Welch算法的原理,在迭代過程會使得算法最終收斂,學(xué)習(xí)出最接近所給量測序列的真實HMM參數(shù)的估計值。
在這里,將上述估計馬爾可夫轉(zhuǎn)移概率矩陣的過程,即式(6)~(23),結(jié)合到文獻[20]中的IMM算法的迭代過程中,構(gòu)成了基于HMM的自適應(yīng)IMM算法(HIMM),使得算法能根據(jù)目標(biāo)的歷史量測和后驗信息,實時更新得到適合于當(dāng)前目標(biāo)狀態(tài)的馬爾可夫轉(zhuǎn)移概率矩陣,從而提高跟蹤精度。
上一節(jié)中,對HIMM算法中的馬爾可夫轉(zhuǎn)移概率矩陣的實時估計過程進行了詳細的描述。而其中HIMM的參數(shù):HMM中的隱馬爾可夫鏈的長度、Baum-Welch算法的迭代次數(shù)等的設(shè)置對算法的性能是存在影響的。同時,HIMM算法的局限性也需要分析,使其能更好地應(yīng)用于實際。下面就這2個方面進行詳細分析與說明。
首先是隱馬爾可夫鏈的長度問題。通常,HMM是從t=1 s時刻進行建立,且經(jīng)歷時間越長(鏈越長),其積累的歷史信息越多,學(xué)習(xí)估計得到的HMM參數(shù)越準(zhǔn)確。但是在目標(biāo)的跟蹤過程中,一般情況下目標(biāo)的非相鄰的機動過程相關(guān)程度很小,如果建立的HMM鏈過長,包含了幾段不同的機動過程,會導(dǎo)致目標(biāo)在估計當(dāng)前時刻的馬爾可夫轉(zhuǎn)移概率矩陣時,受無關(guān)的歷史信息干擾,影響估計效果,且計算量會隨鏈的長度增加;而建立的隱馬爾可夫鏈太短時,雖然計算量小,則會因為舍棄了部分有用歷史信息使得HMM對目標(biāo)后驗信息的變化過于敏感,影響估計效果。因此,HMM鏈的長度是影響A的參數(shù)之一,須要根據(jù)實際設(shè)定,像文獻[15]那樣將整個軌跡作為一條隱馬爾可夫顯然是不合理的。令HMM鏈的長度為l,考慮采用時間窗的方式直接提取相應(yīng)長度的量測序列:則當(dāng)前時刻為k,長度為l的量測序列為
則每個時刻估計A時,都在時間窗提取的量測序列Zl,k內(nèi)重新構(gòu)建HMM鏈。
其次是關(guān)于Baum-Welch算法的迭代次數(shù)的問題。根據(jù)式(22)可以看到,其迭代的次數(shù)代表了調(diào)節(jié)的程度,迭代次數(shù)越多,馬爾可夫轉(zhuǎn)移概率矩陣受調(diào)節(jié)的程度越大。雖然這樣會使得匹配或優(yōu)勢模型的概率提高而提高跟蹤精度,但是也會增大計算負擔(dān)。同時當(dāng)模型穩(wěn)定時,A中轉(zhuǎn)移到匹配或優(yōu)勢模型的概率會不斷增大并接近于1,如果迭代次數(shù)較大時,會加速這一調(diào)節(jié)過程,而在計算機中數(shù)據(jù)的長度是有限的,當(dāng)概率很接近1或0時,計算機的位數(shù)限制會使其進行四舍五入,導(dǎo)致容易出現(xiàn)向匹配或優(yōu)勢模型轉(zhuǎn)移的概率為1,其他的為0的情況,破壞了IMM算法的結(jié)構(gòu),影響跟蹤效果,因此迭代次數(shù)不能太大。仿真中發(fā)現(xiàn),迭代次數(shù)在小于4~5次為宜。在文獻[15]中Baum-Welch算法只進行了一次迭代,顯然是不能滿足需求的。
通過分析和仿真總結(jié)出了HIMM算法的局限性:降低了在目標(biāo)發(fā)生機動轉(zhuǎn)換時的模型切換速度,增加了峰值誤差。結(jié)合算法過程及實際仿真數(shù)據(jù),分析出以下2個原因:一是由于馬爾可夫矩陣的自適應(yīng)調(diào)節(jié),使得向匹配或優(yōu)勢模型的轉(zhuǎn)移概率和模型概率增大,這樣使得這(幾個)模型的“慣性”增大,從而其需要調(diào)節(jié)的程度加大、時間增長,誤差隨之增大;二是由于同一模型穩(wěn)定時間太長或調(diào)節(jié)速度過快,使得向非匹配或劣勢模型的轉(zhuǎn)移概率和模型概率接近于0,導(dǎo)致機動信息在上述模型的似然函數(shù)上體現(xiàn)不明顯,影響了模型轉(zhuǎn)換過程。
因此,針對以上分析,提出了如下2個修正措施。
一是機動檢測法。前面已經(jīng)分析過了,Markov轉(zhuǎn)移概率的自適應(yīng)調(diào)節(jié),使得IMM模型的“慣性”增大。通過機動檢測,強制使算法在目標(biāo)進行機動變化時初始化Markov轉(zhuǎn)移概率矩陣,一定程度上減少模型“慣性”帶來的機動切換期間的峰值誤差。
由于IMM算法中模型的似然函數(shù)從一定程度上反映了濾波誤差的大小,所以定義以下似然函數(shù)比和檢測式:
式(25)成立時,即認為目標(biāo)發(fā)生了機動。κ的設(shè)置根據(jù)具體跟蹤環(huán)境和噪聲水平而定,過大或過小則會造成漏警或虛警,實驗中得到的經(jīng)驗值為15~2.5。當(dāng)檢測到目標(biāo)正在進行機動時,由于HMM調(diào)節(jié)能力很強,因而直接將當(dāng)前馬爾可夫轉(zhuǎn)移矩陣設(shè)置為初始值A(chǔ)0,然后根據(jù)IMM的模型概率計算方法直接計算當(dāng)前初始化的模型概率。令,則k模型的概率初始化為:
這樣,在機動檢測正確的前提下,就能將調(diào)節(jié)增大的慣性減小,從而減小切換時間和跟蹤誤差。當(dāng)機動檢測不正確時,會使得算法的Markov轉(zhuǎn)移概率矩陣初始化的時機錯誤,從而影響跟蹤效果,因此機動檢測的門限需要實際中多次實驗確定,保證機動檢測的正確。
二是概率鉗制法。根據(jù)第2種原因的分析,直接將馬爾可夫轉(zhuǎn)移概率矩陣的元素和模型概率的取值“鉗制”在某一范圍,使得非匹配或劣勢模型的概率不至于過小而影響似然函數(shù)對誤差的傳遞。當(dāng)轉(zhuǎn)移概率或模型概率到達某一上限時,這2種概率不更新,等于上一時刻的值。
根據(jù)上述分析,將新的隱馬爾可夫鏈的長度和Baum-Welch算法的迭代次數(shù)的2個參數(shù)設(shè)置依據(jù)和2種修正方法應(yīng)用于HIMM中,即得到IHIMM算法。
為了檢驗并分析IHIMM算法的性能,下面對該算法進行仿真分析,并設(shè)置不同參數(shù)進行對比。
根據(jù)上述設(shè)定的仿真環(huán)境,采用Matlab R2014a進行編程仿真,做100次蒙特卡洛仿真,采用均方根誤差(Root-mean Square Error,RMSE)[23]作為評價標(biāo)準(zhǔn),仿真分為2部分,分別為HIMM算法參數(shù)設(shè)置對性能的影響和與經(jīng)典IMM算法的跟蹤效果對比。
定義以下IHIMM的默認設(shè)置:采用的IHIMM算法的時間窗長度設(shè)置為8 s,迭代次數(shù)設(shè)置為2次,并進行機動檢測和概率鉗制修正,機動檢測的門限設(shè)置為2,馬爾可夫轉(zhuǎn)移概率和模型概率的上限分別鉗制在0.098 5、0.95。在后續(xù)的仿真中,除了特殊說明的參數(shù)外,其余參數(shù)均按照以上默認的進行設(shè)置。
將未修正的IHIMM、只進行機動檢測修正、進行機動檢測和概率鉗制的IHIMM跟蹤效果仿真對比如圖2所示。
圖2 不同修正情況下的IHIMM性能對比Fig.2 Comparison of IHIMM performance under different correction
將IHIMM修正時的機動檢測門限κ分別設(shè)置為1.5、2、6進行仿真,其結(jié)果對比如圖3所示。
圖3 不同機動檢測門限的IHIMM性能對比Fig.3 Comparison of IHIMM performance of different maneuver detection thresholds
將IHIMM的Baum-Welch算法的迭代次數(shù)n分別設(shè)置為1、2、4,將仿真結(jié)果對比如圖4所示。
將IHIMM的時間窗長度l分別設(shè)置為3 s、8 s、16 s,仿真結(jié)果對比如圖5所示。
圖4 不同迭代次數(shù)下的IHIMM性能對比Fig.4 Comparison of IHIMM performance under different number of iterations
圖5 不同時間窗長度下的IHIMM性能對比Fig.5 Comparison of IHIMM performance under different time window lengths
根據(jù)圖2~5,結(jié)合目標(biāo)的真實軌跡,和IHIMM算法的原理,可以分析得出:
圖2的3條曲線的3處峰值誤差可看出,經(jīng)機動檢測和概率鉗制后的IHIMM算法在模型轉(zhuǎn)換時的跟蹤誤差能得到大幅度減小。同時,算法穩(wěn)定的時間大幅度減小。因此,這2種修正方法能有效減少IHIMM在目標(biāo)機動轉(zhuǎn)換時的跟蹤誤差,加快模型切換速度。同時,可以看到在算法穩(wěn)定的時候,修正后的IHIMM算法犧牲了少量的跟蹤精度(200~250 s處較為明顯)。
圖3中可以看出,機動檢測門限得適度,過小會造成虛警,使得在非機動轉(zhuǎn)換時刻啟動初始化機制,降低模型穩(wěn)定時跟蹤精度,如圖中κ=1.5的曲線的100~140 s部分;而門限過大會導(dǎo)致漏警,使得調(diào)節(jié)機制無法及時啟動,增大了模型切換時刻的跟蹤誤差,如κ=2和κ=6的曲線在90 s和145 s處的RMSE對比。
從圖4中可以看到,迭代次數(shù)變少,模型切換處的峰值誤差會變小,模型穩(wěn)定處的跟蹤誤差會變大。這是由于迭代次數(shù)越多,調(diào)節(jié)深度越深,但模型切換時慣性越大,切換所需要調(diào)節(jié)的程度越大造成的,一般不超過4~5次。
從圖5中看到,HMM采用的時間窗增長時,其模型切換時的峰值誤差減小,而模型穩(wěn)定時的誤差增大。這是由于時間窗越短,則HMM獲取的信息越少,對IMM的后驗信息變化越敏感造成的。
為了驗證IHIMM的算法的有效性,將其與經(jīng)典的IMM算法進行跟蹤效果的對比。關(guān)于IMM的模型等設(shè)置前面已說明,IHIMM的參數(shù)按照上一節(jié)定義的默認參數(shù)進行設(shè)置。仿真場景及參數(shù)采用第4節(jié)剛開始描述的場景。進行仿真,可以得到真實軌跡、量測軌跡、IMM算法估計軌跡和IHIMM算法估計軌跡對比結(jié)果如圖6所示。
圖6 IMM和IHIMM估計軌跡對比Fig.6 Estimated trajectory comparison of IMM and HIMM
由于目標(biāo)軌跡的原因,圖6的仿真結(jié)果不太明顯,將其跟蹤較為關(guān)鍵的部分進行放大顯示,如圖7所示。
圖7 IMM和IHIMM估計軌跡對比(放大后)Fig.7 Estimated trajectorycomparison(enlarged)of IMM and HIMM
然后,進行100次蒙特卡羅仿真,得到了IMM和IHIMM的跟蹤RMSE對比圖如圖8所示。
圖8 IMM和IHIMM跟蹤性能對比Fig.8 Tracking performance comparison of IMM and HIMM
為了更好地對比2種算法的性能和充分反映算法的性能,提取某次的仿真,將2種算法的模型概率變化在圖9進行對比,同時將IHIMM的馬爾可夫轉(zhuǎn)移概率矩陣的對角線的值的變化如圖10所示。
圖9 IMM和IHIMM概率變化Fig.9 Probability changes between IMM and IHIMM
圖10 IHIMM的Markov轉(zhuǎn)移概率變化情況Fig.10 Markov transition probability change of IHIMM
其中,模型1為勻速模型,模型2和3分別為轉(zhuǎn)彎率分別為 9(°)/s和 -3(°)/s的勻速轉(zhuǎn)彎模型。a11,a22,a33分別為馬爾可夫轉(zhuǎn)移概率矩陣對角線的第1、2、3行值。
根據(jù)圖7、8,結(jié)合目標(biāo)的真實運動情況,可以看到,IHIMM算法較之IMM算法,能夠在目標(biāo)穩(wěn)定的時候,提高目標(biāo)的跟蹤精度,在本文采用的仿真場景下,IHIMM較之IMM的跟蹤RMSE提高了約10 m。但是,由于調(diào)節(jié),使得目標(biāo)在概率穩(wěn)定期間優(yōu)勢模式概率增大,從而增加了該模型的“慣性”,使得IHIMM算法在機動轉(zhuǎn)換期間峰值誤差較大,最大的峰值RMSE誤差為108 m。因此,IHIMM算法能有效提高目標(biāo)在非機動切換期間的跟蹤精度。
從圖9的2種算法模型概率對比以及圖10的IHIMM算法的Markov轉(zhuǎn)移概率矩陣的對角線值的變化,能夠看到,IHIMM算法能夠在目標(biāo)模型穩(wěn)定的時候,自適應(yīng)調(diào)節(jié)其馬爾可夫轉(zhuǎn)移概率矩陣,提高向匹配或優(yōu)勢模型轉(zhuǎn)移的概率,進而提高相應(yīng)模型的概率,使模型概率得到了“平滑”,進而增加了模型概率的穩(wěn)定性(如圖9、10的100~140 s的時段),減少了非匹配或劣勢模型的競爭,從而提高了跟蹤精度。IHIMM跟蹤的RMSE在模型穩(wěn)定的時段,較之IMM平均減小了約10 m。在目標(biāo)進行機動轉(zhuǎn)換時,IHIMM算法要進行模型轉(zhuǎn)換,但由于模型穩(wěn)定時的調(diào)節(jié),使得模型的概率對比更加明顯,從而提高了模型濾波的慣性,使得轉(zhuǎn)換的幅度需求變大,時間變長,從而使得誤差增大。從圖9中可以看出,IHIMM算法在本次仿真中模型切換需要約10~15 s的時間。
綜上,IHIMM算法能顯著提高IMM算法在模型穩(wěn)定時的跟蹤精度和穩(wěn)定性,但會增加目標(biāo)機動切換時的模型切換時間,并提高峰值誤差。因此,本文提出的IHIMM算法適合機動較少,運動較為穩(wěn)定的目標(biāo),如運輸機、民航客機、水面艦艇等。
本文提出了基于HMM的自適應(yīng)IMM算法,并進行了修正,分析了不同參數(shù)設(shè)置對該算法的跟蹤效果的影響,并進行了仿真驗證。同時,通過將該算法與經(jīng)典的IMM算法進行仿真對比,證明了本文提出的IHIMM算法能顯著提高目標(biāo)在機動切換時的跟蹤精度和穩(wěn)定性。但存在機動切換時需要時間增長和誤差增大的問題,計劃在后續(xù)的工作中進行改進完善。