摘 要: 通過多模" title="多模">多模型劃分理論與遺傳算法" title="遺傳算法">遺傳算法相結(jié)合,建立了一種新的多模劃分濾波器" title="多模劃分濾波器">多模劃分濾波器。這種算法并不需要知道模型轉(zhuǎn)換的規(guī)律,具有很好的執(zhí)行效果,通過仿真實(shí)驗(yàn)證明了該算法比固定結(jié)構(gòu)的MMPF算法有更好的性能。
關(guān)鍵詞: 遺傳算法 多模型估計(jì) 變結(jié)構(gòu)
在科學(xué)和工程的許多領(lǐng)域中,濾波在動(dòng)態(tài)系統(tǒng)的狀態(tài)和參數(shù)估計(jì)中得到了廣泛的應(yīng)用。當(dāng)一個(gè)系統(tǒng)的模型和參數(shù)完全已知時(shí),卡爾曼濾波的各種形式及其推廣式是能夠獲得最小均方誤差的普遍方法。但當(dāng)這些條件不能滿足時(shí),例如,當(dāng)一個(gè)系統(tǒng)的結(jié)構(gòu)和部分參數(shù)未知時(shí),或者一個(gè)基本物理系統(tǒng)在不同的時(shí)間段具有不同的參數(shù)/結(jié)構(gòu)描述時(shí),自適應(yīng)多模劃分濾波器(MMPF)被最為廣泛地應(yīng)用。自適應(yīng)多模劃分濾波器是為了自適應(yīng)估計(jì)和控制的需要而產(chǎn)生的一系列多模劃分方法之一。
當(dāng)建立的模型在關(guān)心的范圍內(nèi)保持不變時(shí),作為結(jié)果的MMPF是固定結(jié)構(gòu)的。這種濾波器在多種實(shí)際問題中比較實(shí)用。然而,在很多情況下建立的模型不能達(dá)到最優(yōu)化設(shè)計(jì)。例如,很多實(shí)際問題的參數(shù)是連續(xù)的,而不是假設(shè)的離散的。在這些情況下,變結(jié)構(gòu)的MMPF得到了應(yīng)用,這時(shí)假定的模型是時(shí)變的。
本文通過使用合理設(shè)計(jì)的遺傳算法來實(shí)現(xiàn)MMPF,它能夠動(dòng)態(tài)、實(shí)時(shí)地改變結(jié)構(gòu)以適應(yīng)所建立的模型。通過仿真實(shí)驗(yàn),證明了此算法比固定結(jié)構(gòu)MMPF的執(zhí)行效果更優(yōu)越。
1 自適應(yīng)估計(jì)的多模劃分方法
MMPF的框圖如圖1所示。
根據(jù)上面的" title="面的">面的描述,一個(gè)MMPF的設(shè)計(jì)主要由以下幾部分組成:
(1)模型集設(shè)計(jì):必須設(shè)計(jì)由多個(gè)模型組成的模型集。
(2)濾波器選擇:即選擇基本的濾波器類型,盡管通常選用卡爾曼濾波器作為基本濾波器,但實(shí)際上也可選擇任何其它類型的濾波器,只要能滿足MMPF要求的質(zhì)量即可。
(3)估計(jì)融合:產(chǎn)生總體估計(jì)。
(4)濾波器的重新初始化:可以根據(jù)每個(gè)濾波器前一步的估計(jì)和誤差協(xié)方差,或者根據(jù)整個(gè)MMPF前一步的估計(jì)及誤差協(xié)方差進(jìn)行初始化。
在實(shí)際工程應(yīng)用中,這種自適應(yīng)多模劃分濾波器(MMPF)存在下述幾個(gè)方面的問題:
(1)明顯地,多模型估計(jì)器對(duì)于能夠用變結(jié)構(gòu)和參數(shù)描述的問題具有較好的效果,但是要求所有可能的系統(tǒng)模型和參數(shù)值都是已知的,而且數(shù)量是有限的。
(2)不考慮所采用的方法,在設(shè)計(jì)中還會(huì)遇到一個(gè)嚴(yán)重的問題:如何選取有限的參數(shù)子集的基數(shù)。在這個(gè)問題上,要考慮以下兩點(diǎn):
·MMPF估計(jì)的質(zhì)量通常隨著采用的濾波器數(shù)量的增多而提高。因此,基數(shù)小的子集會(huì)導(dǎo)致估計(jì)的質(zhì)量較差。
·MMPF的計(jì)算量與采用的濾波器數(shù)量是成比例的。因此,基數(shù)大的子集會(huì)導(dǎo)致計(jì)算量很大,甚至使MMPF不能實(shí)時(shí)執(zhí)行。
(3)很明顯,自適應(yīng)估計(jì)器能夠識(shí)別未知的參數(shù)。當(dāng)真實(shí)的參數(shù)值在假定的采樣空間內(nèi)時(shí),估計(jì)器會(huì)收斂到這個(gè)值。當(dāng)真實(shí)的參數(shù)值不在假定的采樣空間內(nèi)時(shí),估計(jì)器會(huì)收斂于采樣空間中離真值最近的值。在這種情況下,對(duì)未知參數(shù)的準(zhǔn)確識(shí)別是辦不到的。
變結(jié)構(gòu)的MMPF能夠修正傳統(tǒng)的固定結(jié)構(gòu)MMPF的上述缺點(diǎn)。
2 基于遺傳算法的變結(jié)構(gòu)MMPF
本文僅考慮實(shí)際感興趣的離散時(shí)間和離散參數(shù)的情況。然而,這一討論也同樣適合連續(xù)參數(shù)的情況。這里介紹了兩種算法形式,最終將會(huì)看到,每種形式適合于不同的用途。
第一種算法形式更適合于模型的設(shè)計(jì),它使用s個(gè)矢量(串),表示為vi(i=1,…,s),每一矢量包含m個(gè)參數(shù)θ的可能取值。初始值從Ωθ空間隨機(jī)選取,Ωθ空間假設(shè)為離散的。如果不是這種情況,在選取θ值前要加一離散化的過程。對(duì)每一矢量應(yīng)用MMPF進(jìn)行m次采樣,計(jì)算包含在矢量中的所有可能后驗(yàn)概率值。每一矢量的合適的值定義為θ,具有最大后驗(yàn)概率值時(shí),也就是F((vi)=[θ1i,θ2i,…,θmi])=maxj=1,…,m p(θji|k),i=1,2,…,s,其中θji表示第i個(gè)矢量的第j個(gè)分量。為了下一代的進(jìn)化,采用遺傳操作的選擇、交叉和異化。新一代的串(矢量)重復(fù)上一代的過程,整個(gè)過程不斷重復(fù)直到所設(shè)定的代為止,或者直到適應(yīng)函數(shù)(fitness function)等于1,也就是概率的最大值。算法示意圖如圖2所示。
對(duì)于這種算法,說明如下:
(1)如上所述,算法的這種形式更適合于模型(組)的設(shè)計(jì)。事實(shí)上,當(dāng)算法終止時(shí),最后一代種群的最佳染色體組是最優(yōu)模型,因?yàn)樗哂凶畲蟮暮篁?yàn)概率,即至少有一個(gè)基本成分等于參數(shù)的真實(shí)值。
(2)為了利用算法的這種形式,需要知道許多模擬過程的測(cè)量值。這就意味著這種算法必須在脫機(jī)后運(yùn)行,或是以低于測(cè)量的速度運(yùn)行。算法的第二種形式更適合于最優(yōu)化的估計(jì),它使用m個(gè)矢量(串),每一個(gè)都是一個(gè)未知參數(shù)θ的可能取值,這些值表示為θi,i=1,2,…,m。種群的初始取值是利用在Ωθ空間的隨機(jī)均勻采樣。其次,通過一次采樣,MMPF用來為每一個(gè)θi產(chǎn)生一個(gè)后驗(yàn)概率p(θi|k),將其作為相應(yīng)于θi的適應(yīng)值。下一代再次通過遺傳算法的選擇、交叉和異化來產(chǎn)生。這樣的過程按需要利用GA持續(xù)進(jìn)行。最后一代構(gòu)成了一組MMPF的新模型。算法示意圖見圖3。
(3)正如上面所述,算法的第二種形式更適合于最優(yōu)估計(jì)。事實(shí)上,當(dāng)GA收斂時(shí),真正的參數(shù)值是MMPF模型的一項(xiàng),認(rèn)為它已經(jīng)達(dá)到了適應(yīng)的唯一最大值。
(4)對(duì)基本濾波器重新初始化時(shí),會(huì)遇到一個(gè)細(xì)微但很重要的問題:在MMPF每一次迭代時(shí),模型可能是不同的,也就意味著基本濾波器的設(shè)置將會(huì)不同。那么如何重新初始化這些濾波器呢?盡管有許多可行的方法,筆者還是選擇用當(dāng)前MMPF的最大后驗(yàn)概率(MAP)估計(jì)與其相關(guān)聯(lián)的誤差協(xié)方差來重新初始化這些濾波器。
(5)在算法的描述中,并沒有提到在參數(shù)編碼、GA的初始化及選擇、交叉和異化操作等方面的選擇問題。這是因?yàn)橥ㄓ玫腉A方法在這里都可應(yīng)用。在標(biāo)量模型的情況下,編碼可以是實(shí)數(shù)或二元的。在多變量模型的情況下,可采用實(shí)數(shù)編碼。初始化可以均勻?qū)崿F(xiàn)或是使用有偏的初始化。選擇控制器可以采用轉(zhuǎn)輪形式。對(duì)于交叉控制器,可以選擇均衡交叉控制器、單向交叉控制器、雙向交叉控制器、奇偶交叉控制器、算術(shù)交叉控制器或混合交叉控制器。異化可以通過交換控制器或高斯異化控制器實(shí)現(xiàn)。這一結(jié)論對(duì)兩種算法的實(shí)現(xiàn)方式都適用。
3 仿真結(jié)果
為了證明該算法的適用性和性能,完成了幾個(gè)仿真實(shí)例:一個(gè)使用標(biāo)量的系統(tǒng)模型、一個(gè)使用多變量的系統(tǒng)模型和使用ARMA模型的狀態(tài)空間表示。
仿真實(shí)例1——標(biāo)量模型,使用由如下方程描述的標(biāo)量模型:
x(k+1)=0.9x(k)+w(k)
z(k)=Hx(k)+v(k)
未知參數(shù)是標(biāo)量矩陣(常數(shù))H的值,其范圍在[0,1]內(nèi)。初始狀態(tài)為x(0)~N(0.1,1),Q=0.4,R=0.1。為設(shè)計(jì)濾波器,為H(在[0,1]內(nèi))假定M個(gè)可能的值,并設(shè)每一個(gè)可能值Hi(i=1,2,...,M)的先驗(yàn)概率為p(Hi)=1/M。實(shí)驗(yàn)結(jié)果如圖4所示,其中固定結(jié)構(gòu)的MMPF(真實(shí)的參數(shù)值不在模型中)和第一種方式的VSMMPF的后驗(yàn)概率已經(jīng)示出。顯然,VSMMPF在GA的第20代時(shí)就已經(jīng)得到了真實(shí)參數(shù)值。
仿真實(shí)例2——多變量模型,使用如下方程描述的多變量模型:
其中,3×5的矩陣H的測(cè)量值未知,只是已知H[i,j]∈[0,-30],i=1,2,3,j=1,...,5,并且
實(shí)驗(yàn)結(jié)果如圖5所示,畫出了固定結(jié)構(gòu)MMPF和第一種方式的VSMMPF的后驗(yàn)概率。
在以上實(shí)例中,進(jìn)行了幾項(xiàng)測(cè)試以得到參數(shù)在算法性能和狀態(tài)方面的影響。通過測(cè)試結(jié)果得出以下結(jié)論:
(1)隨著種群規(guī)模、交叉概率或異化概率的提高,算法的收斂速度" title="收斂速度">收斂速度加快,從某種意義上說,得到的參數(shù)值的后驗(yàn)概率可達(dá)0.999以上。
(2)至于交叉控制器,當(dāng)采用均衡交叉或算術(shù)交叉時(shí)會(huì)得到更快的收斂速度。
(3)對(duì)于異化控制器,采用交換異化或高斯異化時(shí)會(huì)得到更快的收斂速度。
在過去的三十年里,多模劃分理論在各種問題和環(huán)境下得到了成功的應(yīng)用,產(chǎn)生各種形式的固定結(jié)構(gòu)MMPF。隨著計(jì)算設(shè)備性能的提高,許多強(qiáng)有力的最優(yōu)化方法得到了應(yīng)用,例如利用遺傳算法,建立了一種新一代變結(jié)構(gòu)的MMPF。這一新穎的變結(jié)構(gòu)多模劃分濾波器在實(shí)際中已經(jīng)實(shí)現(xiàn),通過仿真實(shí)驗(yàn)也證明其在性能上超過了常規(guī)的固定結(jié)構(gòu)MMPF。
參考文獻(xiàn)
1 D. G. Lainiotis. Optimal adaptive estimation: Structure and parameter adaption. IEEE Trans.Automat.Contr., 1971;AC-16:160~170
2 X. R. Sheldon, P. S. Maybeck. Multiple-model estimation with variable structure. IEEE Trans.Automat.Contr.,1993;38(4):651~654
3 Li X R. Multiple-model Estimation with Variable Struchure-Part V:Likely-model Set Algorithm[J]. IEEE, Trans 2000;36:448~466
4 Sheldon S N, Maybeck PS. An Optimizing Design Strategy for Multiple Model Adaptive Estimation and Control[J].IEEE Trans,1993;AC-38:651~654
5 Li X R, He C. Model Set Choice for Multiple-Model Estimation[C]. IFAC,Beijing,1999:169~174
6 王潔.多模型估計(jì)方法.火力與指揮控制,2001;26(4):1~5
7 梁 彥.具有參數(shù)自適應(yīng)的交互式多模型算法.控制理論與應(yīng)用,2001;18(5):653~656