陳立偉,譚志良,崔立東
(軍械工程學(xué)院,河北 石家莊 050003)
?
改進(jìn)的LMS算法在噪聲對消中的應(yīng)用
陳立偉,譚志良,崔立東
(軍械工程學(xué)院,河北 石家莊 050003)
摘要針對最小均方誤差(Least Mean Squares,LMS)算法收斂速度和穩(wěn)態(tài)失調(diào)之間的矛盾,在已有算法的基礎(chǔ)上進(jìn)行3個(gè)方面改進(jìn):利用誤差信號(hào)自相關(guān)性對不相關(guān)噪聲進(jìn)行抑制、將步長設(shè)置為先固定后自適應(yīng),提高算法的收斂速度、減小穩(wěn)態(tài)誤差;調(diào)節(jié)步長因子中固定的參數(shù),使其伴隨步長變化進(jìn)行調(diào)節(jié),進(jìn)一步減小穩(wěn)態(tài)誤差。將已有算法與改進(jìn)算法同時(shí)用于Matlab仿真實(shí)驗(yàn),仿真結(jié)果表明,新算法具有更快收斂速度、更小穩(wěn)態(tài)誤差和良好的消噪能力。
關(guān)鍵詞LMS算法;穩(wěn)態(tài)誤差;自適應(yīng)噪聲對消;收斂速度
0引言
目前的濾波器有固定和自適應(yīng)2種,由于信號(hào)和噪聲的先驗(yàn)知識(shí)難以獲得,自適應(yīng)濾波器在噪聲對消中便有了重要的研究價(jià)值。自適應(yīng)濾波器的核心是自適應(yīng)算法。最常用的濾波器是由Windrow提出的橫向?yàn)V波器結(jié)構(gòu)[1,2],算法采用LMS算法。LMS算法因其簡單、易于實(shí)時(shí)實(shí)現(xiàn)等,被廣泛應(yīng)用于系統(tǒng)辨識(shí)、信號(hào)處理、噪聲抵消等領(lǐng)域。目前對于LMS算法的研究主要集中在算法的收斂速度和穩(wěn)態(tài)失調(diào)2個(gè)方面[3],但這2個(gè)指標(biāo)相互矛盾,針對其中的矛盾很多學(xué)者對LMS算法提出了多種改進(jìn)方案。文獻(xiàn)[1-10]都是對步長迭代函數(shù)進(jìn)行了改進(jìn)[4-7],文獻(xiàn)[4]提到了正弦函數(shù)變步長算法,文獻(xiàn)[6]提到了改進(jìn)的Sigmoid函數(shù)變步長LMS(SVSLMS)算法等,相對比傳統(tǒng)的固定步長的LMS算法都有了很好的性能。
本文基于文獻(xiàn)[4,6]中對LMS算法研究的基礎(chǔ)之上,對2種變步長算法進(jìn)行分析并提出新的步長函數(shù)。新步長函數(shù)采用分段函數(shù),在開始階段采用固定步長,利用較大的步長提高算法的收斂速度;在信號(hào)處于收斂穩(wěn)定后,利用新加入的三角函數(shù)因子使濾波結(jié)果產(chǎn)生了更小的穩(wěn)態(tài)誤差。Matlab仿真結(jié)果表明,新算法的濾波效果有較大改善。
1算法原理
基本LMS算法的迭代公式為:
e(n)=d(n)-x(n)·w(n),
(1)
w(n+1)=w(n)+2·u·e(n)·x(n)。
(2)
式(1)中,e(n)、d(n)、x(n)和w(n)分別表示迭代次數(shù)為n時(shí)的誤差信號(hào)、期望信號(hào)、輸入信號(hào)和濾波器的權(quán)系數(shù)。式(2)中表示抽頭權(quán)向量的更新公式。由步長調(diào)整的原則可知:在收斂的初始階段采用較大步長得到快速的收斂,待到收斂階段則采用較小的步長減小穩(wěn)態(tài)誤差。迭代后的收斂條件是0<μ<λmax。
LMS算法在自適應(yīng)濾波原理應(yīng)用過程中,因輸入端引入的干擾噪聲引起相應(yīng)的失調(diào)噪聲,而減小步長因子可以很好地抵制穩(wěn)態(tài)失調(diào)量,這就以犧牲收斂速度為代價(jià)。因此在固定步長的情況下,既要求有快速的收斂速度,又要求有較小的失調(diào)量,二者之間互相矛盾。為了克服其中的矛盾,現(xiàn)有的算法在固定步長的基礎(chǔ)上提出了變步長算法,其優(yōu)點(diǎn)是在收斂的初始階段對應(yīng)步長較大,在誤差變上的時(shí)候步長也較小,從而獲得良好的性能。
文獻(xiàn)[4]中引入了基于正弦函數(shù)的步長更新公式:
u(n)=a·(1-(sin (b·e2(n)/(b·e2(n))))。
(3)
文獻(xiàn)[6]中引入了基于Sigmoid函數(shù)的步長更新公式:
u(n)=a·(1-exp(-b·e2(n)))。
(4)
可以看出2種步長函數(shù)都相對簡單、易于實(shí)現(xiàn),利用a參數(shù)控制步長的大小,利用b參數(shù)調(diào)整步長的變化率。這2種算法在收斂穩(wěn)定后仍然有緩慢的變化,因此,對于噪聲仍然比較敏感。
本文基于2種算法提出新的步長因子:
(5)
u(n) =a·( 1-exp(-b·e2(n)))。
在此基礎(chǔ)上,引入?yún)?shù)a的函數(shù),其在誤差變化的同時(shí)也會(huì)相應(yīng)的變化,在開始的時(shí)候較大,隨著誤差和步長的減小而減小。
2自適應(yīng)噪聲消除原理
基本的對消器原理如圖1所示,信號(hào)s沿信道傳到接收該信號(hào)的傳感器,除收到信號(hào)外,傳感器還收到一個(gè)不相關(guān)的n0,組合信號(hào)s+n0組成對消器的“原始輸入”。第2個(gè)傳感器用來接收與信號(hào)不相關(guān)的、但以某種未知的方式與噪聲n0相關(guān)的噪聲n1,這個(gè)傳感器給對消器提供“參考輸入”。將噪聲n1加以過濾,使其產(chǎn)生近似為n0的復(fù)制品輸出y。將該輸出從原始輸入s+n0中減去,就產(chǎn)生系統(tǒng)的輸出s+n0-y。
圖1 自適應(yīng)對消原理
假定s與n0和n1均不相關(guān),但n0與n1相關(guān)。輸出為:
e=s+n0-y,
(6)
e2=s2+(n0-y)2+2s(n0-y)。
(7)
將上式兩邊取期望,并考慮到s與n0及y不相關(guān),得到
E[e2]=E[s2]+E[(n0-y)2]+2E[s·(n0-y)],
(8)
E[e2]= E[s2]+E[(n0-y)2]。
(9)
當(dāng)調(diào)節(jié)濾波器使E[e2]最小時(shí),則E[(n0-y)2]也達(dá)到最小。相應(yīng)的最小輸出為:
E[e2]min=E[s2]+E[(n0-y)2]min。
(10)
所以,濾波器之輸出y即為原始噪聲n0的最佳均方估計(jì)。進(jìn)而,當(dāng)E[(n0-y)2]最小時(shí),從式e=s+n0-y中可以看出E[(e-s)2]也達(dá)到最小。理想情況下y(n)=N(n),e(n)=s(n)。
3自適應(yīng)噪聲消除的仿真
通過Matlab環(huán)境進(jìn)行自適應(yīng)噪聲抵消仿真實(shí)驗(yàn),自適應(yīng)FIR濾波器的階數(shù)為2,輸入信號(hào)s(n)=sin(2·π·n),噪聲信號(hào)為標(biāo)準(zhǔn)的高斯白噪聲。分別利用如下4種步長因子對噪聲進(jìn)行消除,通過結(jié)果比較不同步長因子的性能。利用信噪比公式分別對4種算法處理后的信號(hào)進(jìn)行信噪比計(jì)算,比較結(jié)果。
信噪比公式:
算法1:固定的步長迭代方程
算法2:步長迭代方程
u(n)=a·(1-(sin (b·e2(n))/(b·e2(n))))。
算法3:步長迭代方程
u(n)=a·(1-exp(-b·e2(n)))。
算法4:步長迭代方程
通過大量的實(shí)驗(yàn)找出每種算法最優(yōu)參數(shù)如表1所示。
表1 4種變步長LMS算法參數(shù)
首先在輸入信號(hào)為已知矩陣的情況下對上面的4種步長函數(shù)進(jìn)行對比研究,展現(xiàn)LMS算法平均權(quán)向量的收斂性,結(jié)果如圖2所示。
圖2 不同算法自適應(yīng)處理器性能表面等高線與權(quán)值軌跡
由圖2中性能表面中等高線的均方誤差從外到內(nèi)分別為37、23.8、13.6、6.3、2、0.48和0.18,4種不同的步長迭代方程的權(quán)值都收斂于最佳權(quán)值,而第4種算法的步長函數(shù)在開始階段有較大的步長,所以可以用較少的迭代次數(shù)達(dá)到相同的均方差值,即有較快的收斂速度,而且相比其他3種函數(shù)更好的收斂于最佳權(quán)值。
4種步長迭代方程算示的學(xué)習(xí)曲線分析如圖3所示。這4種算法在迭代次數(shù)分別為150次、100次、60次和40次左右達(dá)到收斂,從穩(wěn)態(tài)失調(diào)性并不明顯的情況下收斂速度快于其他3種算法。
圖3 4種不同算法的收斂曲線分析(輸入信號(hào)(SNR=1)
4種算法自適應(yīng)噪聲對消處理結(jié)果如圖4所示,第4種算法在收斂之后的穩(wěn)太失調(diào)性相比其他3種算法有一定的減小。
圖4 4種算法自適應(yīng)噪聲對消處理結(jié)果
4種算法對信號(hào)處理后的信噪比分別為46.2、52.4、48.8和60.9。4種算法噪聲對消結(jié)果如表2所示。
表2 4種算法噪聲對消結(jié)果
綜合仿真結(jié)果表明,新算法相比之下有更好的噪聲抵消效果。
4結(jié)束語
為了提高LMS算法的性能,基于前人研究的基礎(chǔ)上,利用較大的固定步長來縮短算法的收斂時(shí)間;通過加入新的三角函數(shù)因子使算法在收斂產(chǎn)生更小的失調(diào)量。Matlab仿真分別從3個(gè)方面對算法進(jìn)行了驗(yàn)證。實(shí)驗(yàn)得出結(jié)果證明,新算法收斂速度比舊算法快了15次迭代過程,具有較小的穩(wěn)態(tài)失調(diào)噪聲,同時(shí)信噪比提高12 dB,更好地對噪聲進(jìn)行了抵消。
參考文獻(xiàn)
[1]盧炳乾,馮存前,龍戈農(nóng).一種基于正弦函數(shù)的歸一化變步長LMS算法[J].無線電工程,2014,44(3):21-23.
[2]陳寶文,韓軍,張航.基于RLS算法的記憶多項(xiàng)式預(yù)失真技術(shù)分析[J].無線電通信技術(shù),2011,37(6):43-46.
[3]陳亮,張超,張曉鋒.LMS自適應(yīng)算法的FPGA設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2012,28(7):14-15.
[4]朱柏輝,黃業(yè)開,王靜,等.LMS自適應(yīng)噪聲抵消算法的DSP脈搏血氧監(jiān)測研究[J].中國醫(yī)學(xué)物理學(xué)雜志,2013,30(2):4 041-4 046.
[5]田文科,王劍,山秀明.PCMA自適應(yīng)自干擾對消算法與仿真[J].電迅技術(shù),2011,51(9):78-82.
[6]楊宇,施未來.變步長LMS自適應(yīng)濾波算法研究[J].江蘇教育學(xué)院學(xué)報(bào),2011,27(1):9-10.
[7]馬二濤,李建海,劉保華,等.改進(jìn)變步長LMS算法在系統(tǒng)辨識(shí)中的應(yīng)用及性能分析[J].現(xiàn)代電子技術(shù),2010(6):145-148.
[8]龍戈農(nóng),童寧寧,李洪兵,等.改進(jìn)的LMS算法 及其在雷達(dá)干擾對消系統(tǒng)中的應(yīng)用 [J].空軍工 程大學(xué)學(xué)報(bào),2010,11(5):31-33.
[9]李梅,李文杰,姚善化.改進(jìn)的變步長LMS自適應(yīng)濾波算法及仿真[J].電測與儀表,2010,47(554):15-17.
[10]賀洪江,王春霞.一種新的LMS自適應(yīng)濾波算法分析仿真研究[J].傳感器與微系統(tǒng),2012,31(3):15-17.
[11]梁青,段小帥,陳紹青,等.基于濾波x-LMS算法的磁懸浮隔振器控制研究[J].振動(dòng)與沖擊,2010,29(7):201-203.
[12]陳昊,王永,李嘉全,等.基于飽和約束LMS算法的磁懸浮隔振器控制研究[J].振動(dòng)與沖擊,2012,31(13):125-128.
[13]李竹,楊培林,行小帥,等.一種改進(jìn)變步長LMS算法及其在系統(tǒng)辨識(shí)中的應(yīng)用[J].儀器儀表學(xué)報(bào),2007,28(7):1 340-1 344.
[14]高輝,徐龍祥.基于LMS算法的磁懸浮軸承系統(tǒng)振動(dòng)補(bǔ)償[J].振動(dòng)工程學(xué)報(bào),2009,22(6):583-588.
[15]朱亮,韓方景,張爾揚(yáng),等.基于FPGA的定點(diǎn)LMS算法的實(shí)現(xiàn)[J].國防科技大學(xué)學(xué)報(bào),2005,27(4):62-65.
陳立偉男,(1990—),碩士研究生。主要研究方向:電磁兼容與防護(hù)研究。
譚志良男,(1964—),博士,教授。主要研究方向:電磁兼容與防護(hù)研究。
An Improved LMS Adaptive Filtering Algorithm for
Adaptive Noise Cancellation
CHEN Li-wei,TAN Zhi-liang,CUI Li-dong
(OrdnanceEngineeringCollege,ShijiazhuangHebei050003,China)
AbstractTo address the issue of contradiction between convergence rate and steady-state error of the LMS algorithm,an improved LMS algorithm is proposed.The new algorithm makes three improvements based on the existing algorithms:using the autocorrelation of error signals to suppress uncorrelated noise;setting the first step adaptive after a fixed one to improve the convergence rate and reduce the steady-state error;regulating the fixed parameters in the step factor and making them be adjusted as the step changes to further reduce the steady-state error.Both the existing algorithm and the improved algorithm are applied in the simulation experiment of adaptive noise,and the results show that the new algorithm has advantages of faster convergence and less steady-state error,as well as good noise cancellation capability.
Key wordsLMS adaptive filtering algorithm;steady-state error;adaptive noise cancellation;convergence rate
作者簡介
收稿日期:2015-03-17
中圖分類號(hào)TN924.6
文獻(xiàn)標(biāo)識(shí)碼A
文章編號(hào)1003-3106(2015)06-0070-04
doi:10.3969/j.issn.1003-3106.2015.06.19
引用格式:陳立偉,譚志良,崔立東.改進(jìn)的LMS算法在噪聲對消中的應(yīng)用[J].無線電工程,2015,45(6):70-73.