LMS自適應(yīng)濾波器的仿真與實(shí)現(xiàn)
0 引言
自適應(yīng)濾波器可廣泛應(yīng)用于系統(tǒng)識別、信號處理和數(shù)字通信等許多領(lǐng)域。而超大規(guī)模集成電路和FPGA的飛速發(fā)展,也促進(jìn)了自適應(yīng)濾波技術(shù)的進(jìn)步。此外,由于其對干擾頻率不敏感,且其權(quán)值調(diào)整是基于對系統(tǒng)參數(shù)的優(yōu)化,因此,自適應(yīng)濾波器仍然越來越多地受到人們的關(guān)注。
1 LMS自適應(yīng)濾波器
1.1 LMS算法
最小均方誤差(LMS)算法具有計算量小、易于實(shí)現(xiàn)等優(yōu)點(diǎn),因此,在實(shí)踐中被廣泛應(yīng)用。LMS算法的基本思想是調(diào)整濾波器自身的參數(shù),使濾波器的輸出信號與期望輸出信號之間的均方誤差最小,并使系統(tǒng)輸出為有用信號的最佳估計。實(shí)質(zhì)上,LMS可以看成是一種隨機(jī)梯度或者隨機(jī)逼近算法,可以寫成如下的基本迭代方程:
其中,μ為步長因子,是控制穩(wěn)定性和收斂速度的參量。從上式可以看出,該算法結(jié)構(gòu)簡單、計算量小且穩(wěn)定性好,但固定步長的LMS算法在收斂速度、跟蹤速率及權(quán)失調(diào)噪聲之間的要求相互制約。為了克服這一缺點(diǎn),人們提出了各種變步長的LMS改進(jìn)算法,主要是采用減小均方誤差或者以某種規(guī)則基于時變步長因子來跟蹤信號的時變,其中有歸一化LMS算法(NLMS)、梯度自適應(yīng)步長算法、自動增益控制自適應(yīng)算法、符號一誤差LMS算法、符號一數(shù)據(jù)LMS算法、數(shù)據(jù)復(fù)用LMS算法等。
1.2 LMS自適應(yīng)濾波器的結(jié)構(gòu)原理
自適應(yīng)濾波是在部分信號特征未知的條件下,根據(jù)某種最佳準(zhǔn)則,從已知的部分信號特征所決定的初始條件出發(fā),按某種自適應(yīng)算法進(jìn)行遞推,在完成一定次數(shù)的遞推之后,以統(tǒng)計逼近的方式收斂于最佳解。當(dāng)輸入信號的統(tǒng)計特性未知,或者輸入信號的統(tǒng)計特性變化時。自適應(yīng)濾波器能夠自動地迭代調(diào)節(jié)自身的濾波器參數(shù).以滿足某種準(zhǔn)則的要求,從而實(shí)現(xiàn)最優(yōu)濾波。因此,自適應(yīng)濾波器具有自我調(diào)節(jié)和跟蹤能力。在非平穩(wěn)環(huán)境中,自適應(yīng)濾波在一定程度上也可以跟蹤信號的變化。圖1為自適應(yīng)濾波的原理框圖。
2 LMS濾波器的仿真與實(shí)現(xiàn)
2.1 LMS算法參數(shù)分析
傳統(tǒng)的LMS算法是最先由統(tǒng)計分析法導(dǎo)出的一種實(shí)用算法.它是自適應(yīng)濾波器的基礎(chǔ)。通過Matlab仿真對LMS算法中各參數(shù)的研究,總結(jié)出其對算法的影響?,F(xiàn)針對時域LMS算法的各參數(shù)進(jìn)行一些討論。
(1)步長
步長μ是表征迭代快慢的物理量。由LMS算法可知:該量越大,自適應(yīng)時間μ越小,自適應(yīng)過程越快,但它引起的失調(diào)也越大,當(dāng)其大于1/λmax時,系統(tǒng)發(fā)散;而該值越小,系統(tǒng)越穩(wěn)定,失調(diào)越小,但自適應(yīng)過程也相應(yīng)加長。因此,對步長μ的選擇應(yīng)從整個系統(tǒng)要求出發(fā),在滿足精度要求的前提下,盡量減少自適應(yīng)時間。
(2)級數(shù)
自適應(yīng)濾波器的級數(shù)應(yīng)與噪聲通道的傳遞函數(shù)F(z)的階數(shù)一致。事實(shí)上,只有在二者相等時,自適應(yīng)濾波器傳遞函數(shù)才有可能等于F(z),以實(shí)現(xiàn)噪聲抵消。而當(dāng)其級數(shù)小于F (z)的階數(shù)時,參考通道的噪聲將無法與輸入通道的噪聲抵消,故會引起最小均方差增大;當(dāng)其級數(shù)大于F(z)的階數(shù)時,過多的級數(shù)則會引起失調(diào)的增大。因此,只有當(dāng)濾波器的級數(shù)等于F(z)的階數(shù)時,自適應(yīng)濾波器的性能才能達(dá)到最佳。
評論