改進的變步長LMS自適應濾波算法及其仿真
1 引言
自適應濾波研究始于20世紀50年代末Widrow和Hoff提出的最小均方誤差算法,由于該算法具有簡單性、魯棒性和易于實現的性能,因此在自適應濾波原理中得到了很好的應用[1]。然而,傳統的固定步長的LMS算法在收斂速度、時變系統的跟蹤能力和穩態失調之間的要求是存在很大矛盾的。小的步長確保穩態時具有小的失調,但是算法的收斂速度慢,并且對非穩態系統的跟蹤能力差;大的步長使算法具有更快的收斂速度和好的跟蹤能力,但這是以大的失調為代價的[2-3]。為解決這一矛盾,各種變步長LMS算法被提出。變步長算法都是利用自適應過程中提供的某種近似值作為衡量標準來調節步長。簡單有效的方法是利用自適應過程中的誤差信號,試圖在步長與誤差信號之間建立某種函數關系。文獻[4]給出Sigmoid函數的變步長LMS算法(SVSLMS),其能同時獲得較快的收斂速度、跟蹤速度和較小的穩態誤差。然而,該Sigmoid函數在誤差e(n)接近零時變化太大,不具有緩慢變化的特性,使得SVSLMS算法在穩態時仍有較大的步長變化。為此,文獻[5-6]分別給出相應的改進算法,使其在穩態時步長因子很小,而且變化不大,解決了SVSLMS算法存在的問題。文獻[7]克服了文獻[5]在低信噪比下收斂速度變慢的問題,但在穩態性能方面欠佳。在分析了以上算法的基礎上,文獻[8]提出了基于雙曲正切函數的變步長算法,該算法能同時獲得較快的收斂速度、跟蹤速度和較小的穩態誤差。然而,該雙曲正切函數在誤差e(n)接近零處變化太大,不具有緩慢變化的特性,使得該算法在自適應穩態階段仍有較大的步長變化,并且在低信噪比環境下,該算法收斂速度、跟蹤速度和穩態誤差并不十分理想。本文在此基礎上提出了一種改進型算法,不僅保證了較快的收斂速度、跟蹤速度和較小的穩態誤差,并且克服了雙曲正切函數在自適應穩態階段步長調整過程中的不足,同時,降低了算法對自相關性較弱噪聲的敏感性。
2 固定步長LMS算法
基本的LMS算法可以表示為
(1)
(2)
其中X(n)為n時刻輸入信號矢量;W(n)為時刻 N 階自適應濾波器的權系數, d(n) 為期望信號, e (n) 為誤差信號,是步長因子。該算法收斂的條件是
,是輸入信號自相關矩陣的最大特征值。

圖1 自適應濾波原理框圖
3 改進的變步長LMS算法及其分析
文獻[8]中提出了基于雙曲正切函數的變步長LMS算法:
(3)
(4)
式中變步長是 e(n) 的雙曲正切函數。
該算法能同時獲得較快的收斂速度、跟蹤速度和較小的穩態誤差e(n) 。然而,該雙曲正切函數在誤差接近零處變化太大,不具有緩慢變化的特性,使得該算法在自適應穩態階段仍有較大的步長變化,并且在低信噪比環境下,該算法收斂速度、跟蹤速度和穩態誤差并不十分理想,這是算法的不足。
本文通過對雙曲正切函數修正得到新的變步長LMS算法為:
(5)


3.1 收斂性分析
β用于控制函數的取值范圍,α和h用于控制函數的形狀。根據算法收斂條件:,則要求
,同時根據步長調整原則的要求,應有參數
,在此條件下分析參數α、β和h的選擇。為了說明參數α、β和h對函數的影響,繪制了在不同參數下
和 e(n) 的函數關系曲線。由圖2~4可知:α選擇過大時誤差e(n)接近0仍有較大步長,穩態誤差增大,α選擇過小時步長較小且變化緩慢,收斂速度降低;β選擇過大時會超出收斂條件,過小時初始階段收斂速度較慢;h選擇過大時,步長調整過早進入緩慢變化區域,選擇過小時會增大穩態誤差。因此參數α、β和h應根據具體的系統環境與要求進行選擇。

3.2 抗干擾性分析
由式(1)可得:
(7)
而誤差 e(n) 與輸入信號X(n)有關,為了便于分析,d(n)將表示為
(8)
式中: N(n) 是均值為零的噪聲,與輸入信號無關;W*(n)為時變的最優系數矢量。令
(9)
式中:K(n)為系數偏差矢量。
則由式(7)~(9)得
(10)
由于N(n)是零均值的噪聲,N(n)與X(n)無關,并且噪聲N(n)本身不相關,對
的貢獻很小,可忽略不計,故有
(11)
而在文獻[8]算法中,根據N(n)本身不相關,與X(n)也不相關,可得出
(12)
從統計的觀點,由式(12)可以看出,當采用式(3)對步長因子進行調整時,由于 E[N(n)] 項的存在,
不在是算法自適應狀態的準確反應,在噪聲和干擾比較嚴重的應用環境下,N(n)將影響LMS算法的性能,是自適應算法很難達到最優解,在最優解周圍波動。為了減小N(n)對步長因子
的影響,式(5)對其進行了改進,即用e(n)e(n-1)來調節步長因子
,而不是文獻[8]算法中的e(n)。在自適應濾波的開始階段,e(n)比較大,
也較大,由于噪聲N(n)不相關,N(n)N(n-1)對
的貢獻很小,所以N(n)對
的影響可以忽略不計。當e(n)較小時,
也較小,由于改進算法的步長只與輸入信號有關,而不受噪聲的影響。因此,具有收斂速度快,穩態誤差小的優點,而且在低信噪比的環境中仍保持較好的性能,具有廣泛的用途。
4 仿真結果及分析
4.1 仿真條件
本節從收斂性、跟蹤性能、穩態性能和抗干擾性能等方面進行仿真比較,說明本文算法的有效性。采用文獻[8]的實驗條件:
(1) 自適應濾波器的階數L=2;
(2) 未知系統的FIR系數為;在第500個采樣點時刻,未知系統發生時變,系數矢量變為
;
(3) 參考輸入信號x(n)是零均值、方差為1的高斯白噪聲;
(4)v(n)為與x(n)不相關的高斯白噪聲,其均值為零、方差。為得到LMS算法的學習曲線,分別做200次獨立的仿真,采樣點數為1000,然后求其統計平均。
本文步長在和
時為 最優狀態。



4.2 仿真結果及分析
圖5是本文算法和原算法收斂曲線的比較,上面一條是、和為原算法最佳值的收斂曲線,下面一條是本文算法的最優收斂曲線。由圖5可知本文算法優于原算法。
圖6和圖7分別是信噪比為10dB和18dB時本文算法和原算法收斂曲線的比較。可以看出,低信噪比時原算法的穩態誤差波動較大,本文算法穩態性能優于原算法;信噪比相對比較大時,2種算法的仿真曲線近似一致,說明在高信噪比的情況下,二者具有相同的性能。
5 結束語
本文通過對雙曲正切函數的修正,建立了步長因子與誤差信號e(n)之間新的非線性函數關系,其在誤差e(n)接近零處具有緩慢變化的特性,克服了雙曲正切函數在自適應穩態階段步長調整過程中的不足。計算機仿真結果表明該算法比原算法收斂性能更好,與理論分析相一致。并且,在低信噪比環境下,該算法比原算法有更小的穩態誤差,有更好的抗噪聲性能。
文章版權歸西部工控xbgk所有,未經許可不得轉載。