伍彩云,李汶東
(沈陽理工大學 裝備工程學院,沈陽 110159)
自適應濾波器在許多信號處理應用中起著非常重要的作用[1],如回波抵消、線路增強、信道均衡、系統(tǒng)識別和時延估計[2]等。由于橫向結(jié)構FIR濾波器實施方便,最小均方(Least Mean Squares,簡稱LMS)算法運算簡單,因而基于LMS算法的橫向自適應濾波器在信號處理領域獲得廣泛應用[3]。然而隨著實際應用條件的不斷變化,LMS算法越來越難以滿足實際需求,原因是經(jīng)典LMS算法自身存在著諸多缺陷,如隨著輸入自相關矩陣最大特征值與最小特征值之比的增大,算法收斂速度會降低。研究者們提出了一些解決這一問題的方法,其中二維最小均方誤差(Two Dimensional Least Mean Square,TDLMS)算法是較流行的一種,其利用正交變換和功率歸一化對輸入信號進行去相關,改善了輸入自相關矩陣的特征值分布,從而提高了收斂速度[4]。經(jīng)典LMS算法還有一大缺陷,步長一旦選定即不能再改變,步長一旦過大,收斂速度雖會加快,但穩(wěn)態(tài)誤差同時也會增大,收斂速度和穩(wěn)態(tài)誤差不能同時得到滿足[5];所以產(chǎn)生多種改進方法和思路,如步長隨誤差變化而變化的可變步長類LMS算法。除此之外,還有如文獻[6]提到的一種改進的收斂LMS濾波器,其將兩個不同步長的基本LMS濾波器并行結(jié)合,稱為CLMS(Convex Combination of Least Mean Square)算法;該濾波器被認為是收斂速度和穩(wěn)態(tài)誤差的最佳組合,其要求濾波器系數(shù)從一個LMS濾波器轉(zhuǎn)移到另一個LMS濾波器,但該復合結(jié)構的實現(xiàn)成本既包括LMS濾波器單元的成本,也包括系數(shù)傳遞方案的成本。現(xiàn)有的各類改進LMS算法雖然取得了一定成效,但仍難以在不同的應用條件下繼續(xù)發(fā)揮良好的作用,所以針對LMS算法的改進仍是目前的研究熱點之一。
在不顯著增加計算量及復雜程度的前提條件下,初始收斂速度、系統(tǒng)突變后的跟蹤能力及穩(wěn)態(tài)失調(diào)是衡量自適應濾波算法優(yōu)劣的三個最重要的技術指標[7]??紤]到現(xiàn)有的變步長LMS算法依然存在的收斂速度慢、跟蹤能力弱、穩(wěn)定性能不足等實際效果不理想這類問題,有必要研究新的變步長算法,以實現(xiàn)更加理想的實際應用效果。本文對多種變步長算法的基本原理進行分析研究,在此基礎上提出基于變換的t分布變步長最小均方(Base On Various T-Distribution Least Mean Square,BVTLMS)算法,進一步優(yōu)化算法的收斂速度與穩(wěn)態(tài)誤差,使得該算法在實際數(shù)據(jù)條件下具有更好的性能。
LMS算法是一種根據(jù)期望與輸出之間的誤差來不斷調(diào)整權系數(shù)矩陣,從而進一步控制均方誤差達到最小的自適應控制算法。基于經(jīng)典固定步長LMS算法的濾波器原理如圖1所示,其中s(n)代表干擾信號。
經(jīng)典的固定步長LMS的遞推公式為
W(n)=[b0(n),b1(n)…bM-1(n)]T
(1)
X(n)=[x(n),x(n-1)…x(n-M+1)]T
(2)
Y(n)=WT(n)X(n)
(3)
e(n)=d(n)-Y(n)
(4)
W(n+1)=W(n)+2μ(n)X(n)e(n)
(5)
(6)
式中:n為系統(tǒng)采樣點;X(n)和Y(n)分別代表輸入和輸出信號;W(n)代表權值系數(shù)矩陣;d(n)為期望信號,即最終需要抵消的信號;e(n)代表期望信號與輸出信號的誤差;式(6)是步長因子μ的收斂條件;λmax為輸入信號的自相關矩陣的最大特征值。LMS算法的缺點是步長因子μ(n)固定不變,所以實現(xiàn)對步長的控制是變步長算法研究中的關鍵問題。
變步長算法基本原理是指算法在初始收斂階段設置較大的步長,然后誤差e(n)動態(tài)調(diào)整步長的大小,在誤差e(n)接近0處,步長減小到一個較小的值以盡量減小穩(wěn)態(tài)誤差[8]。如基于雙曲正弦函數(shù)[9]、對數(shù)函數(shù)[10]、指數(shù)函數(shù)[11]、反正切函數(shù)[12]等多種變步長算法,都能做到符合基本原理,但在誤差e(n)趨于0時,穩(wěn)態(tài)時的步長依然很大,穩(wěn)態(tài)失調(diào)量不能維持在較低的水平;其它變步長算法同樣具有類似的問題,導致這些算法在實際更為復雜的應用環(huán)境中表現(xiàn)得并不十分理想。
2.2.1 t分布概率密度函數(shù)特征簡析
t分布概率密度函數(shù)表達式在實數(shù)域上為
(7)
式中:k為自由度,且k>0;Gam是伽馬(Gamma)函數(shù),即
(8)
當y>0時,Gam(y)>0。由式(7)和式(8)可以得到自由度k=1時的t分布概率密度函數(shù)圖像,如圖2所示。
圖2 k=1時t分布概率密度函數(shù)圖像
圖2中t分布概率密度函數(shù)的圖像先是呈現(xiàn)出關于e(n)=0左右對稱的基本特征;當誤差e(n)靠近0時,f(n)函數(shù)值變化速率越來越快;當誤差e(n)遠離0時,f(n)函數(shù)值變化速率越來越緩慢,具有中間高、兩邊低的特點。因此,可利用t分布概率密度函數(shù)來構造變步長算法中的函數(shù)或變量,滿足步長先快后慢的特點。
2.2.2 變換后的變步長算法
由于已知伽馬函數(shù)在y>0時恒為正的特性,所以直接對式(7)取倒數(shù),得到
(9)
為使式(9)在變量e(n)為0時收斂到0,再對其變換,得到
(10)
由于伽馬函數(shù)涉及到積分運算,導致算法計算量增大,因此利用式(10)以及Gam函數(shù)的特性,得到式(11),其中α為與Gam函數(shù)相關的參數(shù);β為新的自由度。
(11)
由式(6)的收斂條件可知,步長必須控制在最大值以內(nèi),所以對式(11)再次變換,得到函數(shù)為
(12)
將式(11)帶入到式(12)中,得式(13)。
(13)
(14)
因為函數(shù)Q(n)影響變步長因子γ(n),從而影響算法的收斂速度,所以,接下來分別研究Q(n)中的參數(shù)α、β和η不同取值時對于Q(n)的影響,即α、β和η對算法的影響。
2.2.3 參數(shù)α、β和η對算法的影響
由式(10)和式(11)可知α的表達式為
(15)
參數(shù)α隨t分布中的自由度k的變化曲線如圖3所示。
由圖3可以看出,隨著自由度k的變化,α的取值范圍在2.5~7之間。
圖3 α隨k的變化曲線
對于式(13),分析當α、β和η中的某兩個參數(shù)取固定值時,剩余一個變量和誤差e(n)對函數(shù)Q(n)的影響,得到如圖4所示的結(jié)果。
圖4 三個參數(shù)對曲線的影響
如圖4a所示,當β=3、η=1、-3 從圖4b可以看出,當α=3,η=3和-3 當α=3,β=3和-3 由以上分析可得參數(shù)的變化對收斂速度的影響,如表1所示。 表1 參數(shù)變化對算法收斂速度的影響 首先,選擇固定步長算法和被廣泛使用的文獻[8]中的SVSLMS算法作為對照組算法,固定步長LMS的取值根據(jù)文獻[8]選擇0.1;SVSLMS算法的最優(yōu)參數(shù)為α=1、β=1.5;BVTLMS算法經(jīng)綜合考慮,選取的最優(yōu)參數(shù)為:α=3,β=2,η=0.0001。 其次,為充分檢驗BVTLMS算法的性能,再增加兩種新型步長算法作為對比。由于式(13)在形式上接近分式函數(shù),所以選用文獻[13]中基于分式函數(shù)改進的VXLMS算法作為對比。另一方面,由于t分布在自由度接近于無窮時近似于正態(tài)分布,所以再選用文獻[14]中的基于正態(tài)分布函數(shù)算法作為對比。文獻[13]的最優(yōu)參數(shù)為a=5、b=1、c=0.12,文獻[14]的最優(yōu)參數(shù)為α=1、β=0.13、A=0.3。 利用Matlab工具對BVTLMS算法進行仿真。設定采樣點數(shù)為1000(采樣點數(shù)即為迭代次數(shù)),擬定一種余弦信號作為輸入信號,將輸入信號與另一正弦信號混合后的信號作為期望信號。傳遞路徑系數(shù)擬為[0.5,0.4],在第500個采樣點處,傳遞路徑發(fā)生突變,系數(shù)變?yōu)閇0.9,0.3]。選取的濾波器階數(shù)為2,仿真次數(shù)為100并取平均值。在此條件下,分別得到基于固定步長算法、SVSLMS算法、基于正態(tài)分布算法、VXLMS算法和BVTLMS算法的仿真結(jié)果,如圖5a~圖5e所示,據(jù)圖5分析各種算法的收斂速度、穩(wěn)態(tài)誤差和跟蹤能力。 圖5 各種算法的仿真結(jié)果 由圖5可以看出,在未知系統(tǒng)未發(fā)生突變前,圖5e算法在第200次迭代附近收斂到穩(wěn)態(tài);圖5b算法在第400次迭代接近收斂到穩(wěn)態(tài);而圖5a算法、圖5c算法及圖5d算法未收斂到穩(wěn)態(tài)。從穩(wěn)態(tài)誤差角度分析,圖5e算法在進入穩(wěn)態(tài)后,基本沒有明顯的波動;而圖5b算法在第400次迭代后穩(wěn)態(tài)失調(diào)量較大。從跟蹤能力角度分析,當未知系統(tǒng)在第500次迭代時發(fā)生突變后,圖5e算法繼續(xù)維持了突變前的優(yōu)勢性能,重新快速收斂后保持了較低的穩(wěn)態(tài)失調(diào)量;圖5b算法反應也較快,在第700次迭代附近接近于收斂,但穩(wěn)態(tài)失調(diào)量相較于圖5e算法還是較大;而圖5a算法和圖5c算法及圖5d算法依然難以判斷是否收斂到穩(wěn)態(tài)。所以,從仿真結(jié)果可以看出,本文提出的BVTLMS算法效果明顯好于對照組中的其它算法。 為檢驗新算法在實際條件下的效果,實際數(shù)據(jù)采用某型號的發(fā)動機2000r/min噪聲數(shù)據(jù)作為輸入信號x(n),傳遞路徑在試驗過程中不發(fā)生空間位置的變化;期望信號d(n)為經(jīng)過傳遞路徑的輸入信號與中途突然加入的復合音頻干擾噪聲s(n)的混合信號;采樣點數(shù)為500,采樣點數(shù)也是迭代次數(shù);傳遞路徑系數(shù)經(jīng)測試可知為[0.556,0.178,0.324,0.897,0.445,0.664],實際信號數(shù)據(jù)如圖6所示。 圖6 輸入信號、期望信號和干擾噪聲信號 圖7a~圖7c分別是基于正態(tài)分布算法、VXLMS算法和BVTLMS算法的實驗結(jié)果。在收斂速度方面,圖7c算法在第180次迭代附近收斂;圖7b和圖7a算法則未進入到穩(wěn)態(tài)。在穩(wěn)態(tài)誤差方面,7c的新算法波動幅度極小。在追蹤能力方面,盡管干擾信號在中間第100次迭代附近開始發(fā)生顯著變化,但圖7c算法保持了良好的跟蹤控制能力,相比較之下跟蹤誤差更小。對比結(jié)果表明圖7c算法更為優(yōu)異。 圖7 三種算法實驗結(jié)果對比 針對自適應濾波算法進行了研究。為提高LMS算法的性能,分析了多種變步長算法的基本原理,對t分布概率密度函數(shù)變換后提出了改進的變步長BVTLMS算法,進一步分析了參數(shù)α、β和η對算法的影響,利用仿真驗證了改進后的算法具有較高的精度和較快的收斂速度,最后通過實驗進一步表明了本文提出的BVTLMS算法性能優(yōu)于已有的兩種新型變步長LMS算法。3 算法的仿真與對比
3.1 新算法與已有算法的仿真性能對比
3.2 使用實際數(shù)據(jù)檢驗算法性能
4 結(jié)束語