变步长LMS
- 格式:pptx
- 大小:1.12 MB
- 文档页数:26
一种新的变步长LMS算法及分析彭宏;陈泓宇【摘要】LMS算法存在收敛速度和稳态误差上的矛盾,当步长因子过大,则收敛速度快,但误差变化较大;当步长因子过小,则收敛速度很慢但是误差稳定.因此,渐渐发展出了多种变步长LMS算法.通过建立步长和误差的一种非线性函数关系,提出了一种新的变步长LMS算法,并且对算法参数进行分析.该算法计算简便,计算量低,且在算法收敛初期能够得到较大的步长,而稳态时期能够得到较小的步长,且在稳态收敛阶段有较为缓慢的步长变化,克服了传统算法在低误差范围内的步长调整的缺陷.仿真结果与理论结果相一致,证明了该算法比已有算法拥有更好的收敛性能.%There is a contradiction between convergence speed and steady-state error in the LMS algorithm.When the step size factor is too large,the convergence speed is fast,but the error change is larger.Otherwise,the convergence speed is slow but the error is stable.Therefore,a variety of variable step size LMS algorithms are developed gradually.A new variable step size LMS algorithm is proposed by establishing a nonlinear function relationship between step size and error.The algorithm is simple with low computational complexity.In the early convergence,the algorithm can get a larger step early ;in the steady period,the algorithm can get a small step,and the step change is slow in steady-state convergence stage.It overcomes the shortcomings in the step size adjustment of traditional algorithm in the low error range.The simulation results are in good agreement with the theoretical results,which show that the proposedalgorithm has better convergence performance than the existing algorithms.【期刊名称】《浙江工业大学学报》【年(卷),期】2018(046)001【总页数】7页(P45-50,82)【关键词】自适应滤波;变步长自适应滤波算法;收敛性能;LMS算法【作者】彭宏;陈泓宇【作者单位】浙江工业大学信息工程学院,浙江杭州 310023;浙江工业大学信息工程学院,浙江杭州 310023【正文语种】中文【中图分类】TN911随着技术的发展,人们的生活水平不断提高,人们对于通信设备的使用需求大大增加,需求增加的同时人们对通信服务质量的要求也在不断提高,其中就包括噪声消除.自适应滤波技术[1-2]作为当前主流的噪声消除模块被大量应用于通信、雷达和车载系统等众多领域,其理论模型最早于1960年由Widrow和Hoff提出.它作为信号处理方向的具体应用分支,能够根据系统环境和噪声特点自适应地改进滤波器的滤波参数,使得滤波器能够动态地调整输入信号,提取有用信号,达到最佳滤波的效果[3].Kwong等[4]提到的经典LMS算法计算简便,但是算法中的固定步长无法满足收敛速度和稳态误差之间的矛盾;曾召华等[5]提到的NLMS算法虽然克服了LMS算法中固定步长产生的收敛速度和稳态误差之间的矛盾,但是其步长受到了信号噪声的影响;覃景繁等[6]提出了一种基于Sigmoid函数的变步长LMS算法,该算法能获得较快的收敛速度,较小的稳态误差,但是算法较复杂,计算量大,且在误差接近于0时会有较大的步长调整,不利于算法稳定;杨逸等[7]提出了一种指数因子变步长算法,该算法原理相似,同样能获得较快的收敛速度,但同样算法较复杂.笔者主要针对语音通信系统环境,建立了一种新的步长和误差的非线性函数关系,提出了一种新的变步长LMS算法,算法简单易计算.此算法在收敛初期能够产生较大的步长,而在收敛稳态期能够产生较小的步长,符合算法的收敛原则.而且此算法在收敛稳态时具有较小的步长调整过程,克服了传统算法在收敛稳态期步长调整过大的缺陷,符合算法的稳定原理.同时也对新算法的参数进行仿真分析.1 固定步长LMS算法LMS算法是固定步长的线性自适应滤波算法[8],它是依据有用信号和实际输出信号的误差的均方值来协调步长,用其来改善滤波器参数,因其每次改变的步长为固定值μ,因此称为固定步长滤波算法.图1为语音通信系统中的自适应滤波器的原理框图.信号源发出的信号d(n)作为原始期望信号被传入滤波器中.由于现实因素影响,实际接收到的信号并不是单纯的有用信号,容易被待滤除信号v(n)干扰.因此,真正输入信号为待滤除信号和有用信号的叠加信号x(n).y(n)为经由滤波器滤波后的输出信号,e(n)为输出信号和期望信号的误差.图1 自适应滤波器滤波框图Fig.1 Frame diagram of adaptive filter将有用信号和待滤除信号叠加后的信号x(n)传入自适应滤波器,通过自适应滤波后输出的信号y(n)与原期望信号d(n)进行比较,得到误差信号e(n),通过误差信号的反馈来修改自适应算法的滤波参数w(n)来逐渐地调整自适应滤波器的收敛.在理想情况下,自适应滤波后的输出信号会无限接近于原始期望信号,即e(n)均方值无限接近0,在此情况下,即认为完美滤波.在通信系统中,假定图1中的自适应滤波器为FIR滤波器[9-10],而信号输入端的原始信号输入矢量X(n)和自适应参数W(n)分别设置为X(n)=[x(n),x(n-1),…,x(n-m+1)]TW(n)=[w0(n),w1(n),…,wm-1(n)]T其中:m为滤波器阶数;n为当前取样点.LMS算法的主要步骤如下:1) 对算法进行初始化,即W(n)=02) 对实际输入信号x(n)进行滤波,得到输出信号y(n),即3) 通过比较期望信号和输出信号来得到误差信号,即e(n)=d(n)-y(n)4) 由得到的误差信号来调整W(n),即W(n+1)=W(n)+2μX(n)e(n)反复不断地重复步骤2)~4)直到误差e(n)趋于0且稳定.式中:μ为步长因子,为固定常数值,它的收敛范围为0<μ<1/λmax,λmax为输入信号方差矩阵的最大特征值.μ主要是用来控制算法的收敛速度和稳态误差,如果μ过小,则算法收敛慢但是稳定;如果μ过大,则算法收敛速度很快但是不稳定.因此,固定步长自适应滤波算法虽然简单易实现,但是它存在收敛速度和稳定性上的矛盾,需要通过一种变步长的自适应滤波算法来克服这种矛盾.2 一种新的变步长LMS算法根据覃景繁等[11]提出的步长调整原理,合格的变步长算法应能在算法收敛初期产生较大的步长来得到较快的收敛速度,从而能够更快地得到期望信号.而在收敛稳态期,这时算法的权值量已经非常接近最优值了,需要算法能够保持较小的步长来保持稳态,防止产生较大的误差,从而达到较小的稳态误差.当前的变步长LMS算法虽然能够满足步长调整原理,但是大多算法无法在收敛稳态期保证步长的缓慢变化,常常会有稳态期较小的误差变化而导致步长的极大变化,从而造成一系列连锁的较大误差,不利于算法稳定性.覃景繁等[6]提到的算法虽然拥有较快的收敛速度,但是在低误差的情况下拥有较大的步长变化度,不利于稳定性.因此,笔者提出了一种新的变步长算法,建立了一种新的步长和误差的非线性关系.此算法完全满足上述的步长变化原则,计算简便,复杂度低.而且新算法能够使步长在收敛稳态期不会产生较大的变化,防止偶尔误差的变化导致步长的极大变化,增大算法的适应性,有利于算法稳定性.新的步长因子为因此,新的迭代公式为式中:α为参数,主要是用来控制步长的变化范围;β为参数,主要是控制步长变化函数的变化陡峭程度.步长μ和误差e(n)的关系如图2,3所示.当在收敛初级误差较大时,能对应有较大的步长来得到较快的收敛速度;而在收敛稳态期误差较小时,能对应有较小的步长来得到缓慢的收敛速度,符合算法的收敛原理.从图2,3中可以看出:算法在收敛稳态期误差趋于0时的步长变化梯度比较平缓,能够使算法由于偶然的误差激荡造成的步长变化不会那么大,符合算法的稳定原理.因为只有当μ满足0<μ<1/λmax时,算法才会收敛,所以α和β必须要保证使μ符合要求.而并不是所有满足条件的α和β都能使算法在收敛初期使步长较大,收敛稳态期使步长变小.如图2所示,假如收敛初期的误差为0.5,则α=0.2,β=1.5和α=0.2,β=2的2组能够在初期较快的收敛,而α=0.2,β=4的那组由于在初期没有获得较大的步长,无法获得较好的收敛效果.在满足算法收敛的前提下,β需要尽可能的小.而如图3所示,假如收敛初期的误差为0.6,则α=0.8,β=1.5那组能够在初期较快的收敛,而α=0.2,β=1.5的那组无法获得较好的收敛效果.在满足算法收敛的前提下,α需要尽可能的大.图2 不同β参数下误差和步长关系的曲线图Fig.2 Graph of the relationship of error and step size in different β图3 不同α参数下误差和步长关系的曲线图Fig.3 Graph of the relationship of error and step size in different α在β相同的情况下,选择较大的α能获得较快收敛速度的同时也会产生较大的稳态误差.对参数α的取定要根据实际的应用环境,对收敛速度有较高要求的话,可以选择较大的α值;对稳态误差有较高要求的话,则应该选择合适的α值.3 算法仿真为了分析给出的变步长LMS算法的收敛能力以及α和β对算法收敛性能的影响,通过Matlab仿真工具[12]来对新算法的稳态误差和收敛速度等方面进行仿真分析.选择原始期望信号d(n)=sin(2πn/10),待滤除信号是均值为0,信噪比为20 dB的加性白噪声,滤波器阶数为8.在进行100 次独立仿真实验后,取误差的平均值作为最后的稳态误差考量标准.图4为α固定不变、β不同时的收敛曲线图.从图4中可以看出:随着β值的减小,算法的收敛速度逐渐提升,β不能小于1.如果β<1,则算法在稳态误差趋于0时会有较大的步长变化度,不符合步长变化原理.在实验中,当β=1.1时,算法会出现不收敛的情况,因此实验的最佳β约为1.2.图4 不同β参数的收敛曲线图Fig.4 The convergence curves of the different β图5 不同α参数的收敛曲线图Fig.5 The convergence curves of the differentα图5为β固定不变、α不同的收敛曲线图.从图6中可以看出:随着α值的增大,算法的收敛速度逐渐提升,α不能大于1/λm ax.如果大于1/λmax,则算法会发散.在实验的条件中,当α=0.9时,算法会发散,α为0.8~0.9时,有时会出现不收敛情况,因此实验的最佳α约为0.8.图6 互不相同的2组α和β值的收敛曲线比较图Fig.6 The comparison of convergence curves of the different α and different β图6给出的为2组不同的参数α和β值的收敛比较图,从图中看出α=0.2,β=4的收敛曲线由于参数的设置导致收敛初期的步长较小导致收敛速度过慢,而α=0.8,β=1.2的收敛曲线由于参数设置使算法能在收敛初期得到一个合适的步长来完成快速收敛,满足变步长步长调整原则,使算法有较好的收敛性能,与上述的理论分析一致.刘剑锋等[13]提出了一种基于Lorentzian函数的变步长LMS算法,该算法通过Lorentzian函数来关联误差和步长.卢炳乾等[14]提出了一种基于正弦函数的变步长LMS算法,该算法通过正弦函数来构造了误差和步长的非线性关系.罗小东等[15]提出了一种基于Sigmoid函数的变步长LMS算法,该算法通过Sigmoid函数来构造误差和步长的函数关系.图7是新算法与3种已有变步长LMS算法在不同信噪比下的收敛比较图.采用本文献中的条件,主输入端输入信号为d(n)=sin(2πn/10),加性干扰信号为白噪声,滤波器阶数为8,采用各自参考文献中的最佳参数值.其中基于Lorentzian函数的变步长LMS算法的算法参数设置为:α=0.05,δ=0.01;基于正弦函数的变步长LMS算法的算法参数设置为:α=10,β=0.04;基于Sigmoid函数的变步长LMS算法的算法参数设置为α=300,β=0.2.仿真100次求平均误差统计出曲线图.图7中仿真结果显示:新算法在不同的信噪比下,均比其他3种算法拥有更好的收敛性能,因此新算法在自适应滤波上具有更好的适用性.图7 新算法与3种变步长LMS算法在不同信噪比下的收敛比较图Fig.7 Theconvergence curves of proposed algorithm and three existing variable step size LMS algorithm in different SNR针对语音通信的情况下,通过将仿真环境中的正弦波替换成语音信号来验证新算法的优劣性.同样采用图7中的算法参数,滤波器阶数为32,噪声信号为信噪比为20 dB的白噪声,采样频率为8 kHz.图8为语音信号和带噪信号的波形图,图9展示了各算法滤波后的语音波形.仿真结果显示,新算法相对于其他算法具有较好的滤波能力,在语音信号处理上具有一定的适用性.图8 语音信号与带噪信号波形图Fig.8 The waveform of speech signal and noise signal图9 基于各函数的变步长LMS算法滤波后的信号波形Fig.9 The waveform after filtering by the variable step-size LMS algorithms base on different functions4 结论研究了传统的固定步长LMS算法的优缺点,针对其缺陷和现在变步长算法步长调整原理,提出了一种新的变步长LMS算法.新算法通过建立一种新的步长和误差之间的非线性函数关系来实现步长的变化,并同时对新算法的各个参数进行分析.该算法有在收敛初期产生较大的步长同时在稳态期产生较小的步长来缓解稳态误差的特点.同时,该算法克服了传统算法在收敛稳态期步长变化过快的不足.理论分析和实验仿真都验证了该算法相对于已有算法都具有较好的收敛特性.下一步需要对算法参数进行精度上的进一步提升,同时对算法的限制性进行进一步的研究.参考文献:[1] HUANG B, XIAO Y, MA Y, et al. A simplified variable step-size LMS algorithm for Fourier analysis and its statistical properties[J]. Signal processing,2015,117:69-81.[2] LU J, QIU X, ZOU H. A modified frequency-domain block LMS algorithm with guaranteed optimal steady-state performance[J]. Signal processing,2014,104(6):27-32.[3] 孙明轩,余林江.离散时变系统的自适应迭代学习控制[J].浙江工业大学学报,2013,41(1):84-90.[4] KWONG R H, JOHNSTON E W. A variable step size LMS algorithm[J]. IEEE transactions on signal processing,1992,40(7):1633-1642.[5] 曾召华,刘贵忠,赵建平.LMS和归一化LMS算法收敛门限与步长的确定[J].电子与信息学报,2003,25(11):1469-1474.[6] 覃景繁,韦岗.基于S型函数的变步长LMS自适应滤波算法[J].无线电工程,1996(4):44-47.[7] 杨逸,曹祥玉,杨群.基于指数函数的归一化变步长LMS算法[J].计算机工程,2012,38(10):134-136.[8] SIMON H.自适应滤波器原理[M].郑宝玉,译.4版.北京:电子工业出版社,2010.[9] 金燕,王明,葛远香.基于FPGA的抗混叠FIR数字滤波器的设计与实现[J].浙江工业大学学报,2010,38(2):192-196.[10] 赵旋,何德峰,周洲.网络控制系统多变量DMC算法的稳定性分析[J].浙江工业大学学报,2012,40(2):209-212.[11] 覃景繁,欧阳景正.一种新的变步长LMS自适应滤波算法[J].数据采集与处理,1997(3):171-174.[12] 李正周.MATLAB数字信号处理与应用[M].北京:清华大学出版社,2008.[13] 刘剑锋,蒋卓勤,李娟,等.一种基于Lorentzian函数的变步长LMS自适应滤波算法[J].指挥控制与仿真,2009,31(2):42-44.[14] 卢炳乾,冯存前,龙戈农.一种基于正弦函数的新变步长LMS算法[J].空军工程大学学报(自然科学版),2013,14(2):47-50.[15] 罗小东,贾振红,王强.一种新的变步长LMS自适应滤波算法[J].电子学报,2006,34(6):1123-1126.。
一种变步长LMS 自适应滤波算法及分析高鹰,谢胜利(华南理工大学电子与通信工程系,广东广州510641)摘要:本文对变步长自适应滤波算法进行了讨论,建立了步长因子!与误差信号e (n )之间另一种新的非线性函数关系.该函数比已有的Sigmoid 函数简单,且在误差e (n )接近零处具有缓慢变化的特性,克服了Sigmoid 函数在自适应稳态阶段步长调整过程中的不足.由此函数本文得出了另一种新的变步长自适应滤波算法,并且分析了参数",#的取值原则及对算法收敛性能的影响.该算法有较好的收敛性能且计算量少.计算机仿真结果与理论分析相一致,证实了该算法的收敛性能优于已有的算法.关键词:自适应滤波;变步长自适应滤波算法;LMS 算法中图分类号:TN911.72文献标识码:A文章编号:0372-2112(2001)08-1094-04A Variable Step Size LMS Adaptive FilteringAlgorithm and lts AnalysisGAO iing ,XIE Sheng-ii(Dept.of Electronic and Communication Engineering ,South China Uni1ersity of Technology ,uuangzhou ,uuangdong 510641,China )Abstract :This paper discusses about some aigorithms of variabie step size LMS adaptive fiitering and estabiishes another newnon-iinear functionai reiationship between !and e (n ).The functionai reiationship is not oniy simpier than Sigmoid functionai reiation-ship ,but aiso has the property of siight change e (n )near to zero.Therefore it is superior to Sigmoid functionai reiationship in the pro-cess of step size change of adaptive steady state.On the basis of the functionai reiationship ,The author presents the new aigorithm of variabie step size LMS adaptive fiitering and anaiyses the aigorithm with various "and #.the aigorithm has iess computationai compiex-ity than the former aigorithms ,besides good convergence puter simuiation resuits confirms the theoreticai anaiysis and shows the aigorithm performance is better than that of former aigorithms.eey words :adaptive fiitering ;variabie step size adaptive fiitering aigorithm ;LMS aigorithm!引言自适应技术广泛地应用于自适应控制、雷达、系统辩识和图1为自适应滤波器原理框图信号处理等领域.由Widrow和Hoff 提出的最小均方误差(LMS )算法,因其具有计算量小、易于实现等优点而被广泛采用.图1为自适应滤波器原理框图.基于最速下降法的最小均方误差(LMS )算法的迭代公式如下:e (n )=d (n )-!T(n )"(n );"(n +1)="(n )+2!e (n )!(n )其中:"(n )为自适应滤波器在时刻n 的权矢量,!(n )为时刻n 的输入信号矢量,d (n )为期望输出值,1(n )为干扰信号,e (n )是误差信号,L 是自适应滤波器的长度,!是步长因子.LMS 算法收敛的条件为:0<!<1/$max ,$max 是输入信号自相关矩阵的最大特征值.初始收敛速度、时变系统跟踪能力及稳态失调是衡量自适应滤波算法优劣的三个最重要的技术指标.文献[1][6]分析了最小均方误差(LMS )算法的收敛性能.由于主输入端不可避免地存在干扰噪声,LMS 算法将产生参数失调噪声.干扰噪声1(n )越大,则引起的失调噪声就越大.减少步长因子!可减少自适应滤波算法的稳态失调噪声,提高算法的收敛精度.然而步长因子!的减少将降低算法的收敛速度和跟踪速度.因此,固定步长的自适应滤波算法在收敛速度、时变系统跟踪速度与收敛精度方面对算法调整步长因子!的要求是相互矛盾的.为了克服这一矛盾,人们提出了许多变步长自适应滤波算法.R.D.Gitiin [2]曾提出了一种变步长自适应滤波算法,其步长因子!(n )随迭代次数n 的增加而逐渐减小.文[3]提出了使步长因子!正比于误差信号e (n )的大小.而文收稿日期:2000-04-12;修回日期:2000-08-22基金项目:国家自然科学基金(No.69972016)、广东省自然科学基金(No.990892);广东省优秀人才基金(教研[2000]69号)第8期2001年8月电子学报ACTA ELECTRONICA SINICA Voi.29No.8August 2001[4]提出了一种时间平均估值梯度的自适应滤波算法.文[5]提出了另一种变步长自适应滤波算法,步长因子H 与e (n )和x (n )的互相关函数的估值成正比.在分析了上述变步长自适应滤波算法之后,文[6]提出了变步长自适应滤波算法的步长调整原则:即在初始收敛阶段或未知系统参数发生变化时,步长应比较大,以便有较快的收敛速度和对时变系统的跟踪速度;而在算法收敛后,不管主输入端干扰信号1(n )有多大,都应保持很小的调整步长以达到很小的稳态失调噪声.根据这一步长调整原则,该文给出了Sigmoid 函数变步长LMS 算法(SVSLMS ):e (n )=d (n )-!T(n )"(n );H(n )=B (1/(1+exp (-G I e (n )I ))-0.5);"(n +1)="(n )+2H(n )e (n )!(n ).其变步长H 是e (n )的Sigmoid 函数:H(n )=B (1/(1+exp (-G I e (n )))-0.5)该算法能同时获得较快的收敛速度、跟踪速度和较小的稳态误差.然而,该Sigmoid 函数过于复杂,且在误差e (n )接近零处变化太大,不具有缓慢变化的特性,使得SVSLMS 算法在自适应稳态阶段仍有较大的步长变化,这是该算法的不足.本文给出另一满足步长调整原则的函数:即变步长H 是e (n )的如下函数:H(n )=B (1-exp (-G I e (n )I 2)),其中,参数G >0控制函数的形状,参数B >0控制函数的取值范围;H (n )和e (n )的函数曲线如图2,图3所示.该函数比Sigmoid 函数简单,且在误差e (n )接近零处具有缓慢变化的特性,克服了Sigmoid 函数在自适应稳态阶段步长调整过程中的不足.同时,本文还分析了参数G ,B 取值原则及对算法收敛性能的影响.Z 新的变步长LMS 自适应滤波算法及分析根据文[6]提出的变步长自适应滤波算法的步长调整原则,本文提出的变步长自适应滤波算法如下:e (n )=d (n )-!T(n )"(n );H(n )=B (1-exp (-G I e (n )I 2));"(n +1)="(n )+2H(n )e (n )!(n )图2H (e )与e (n )的关系曲线(G 不同,B 相同)由H (n )和e (n )的函数关系曲线图2,图3可知:初始收敛阶段I e (n )I 较大,对应H (n )较大,算法收敛速度较快.当算法进入稳态时,I e (n )I 达到最小,此时H (n )也达到最小,由此得到最佳Wieeer 解.我们知道,LMS 自适应滤波算法的收敛条件是:0<H <1/A max ,A max 是输入信号自相关矩阵的最大特征值.因此H (n )应满足:0<H (n )<1/A max ,由此可得B <1/A max .在此条件下,算法一定收敛.但并不是满足B <1/A max 条件的任意G 、B 都能使算法在初始收敛阶段H (n )较大而在算法收敛后H (n )较小.例如:假设初始收敛阶段I e (n )I 的值为0.5左右,若选择G =0.3,B =0.2(见图2)或G =8,B =0.02(见图3),则I e (n )I 对应的H (n )小,此时算法起不到在初始收敛阶段步长应比较大加速收敛的作用;而选择G =7,B =0.2(见图2)或G =8,B =0.2(见图3),则I e (n )I 对应的H (n )大,此时H (n )满足变步长自适应滤波算法在初始收敛阶段应有较大的步长这一要求,起到加速收敛的作用.因此,G 、B 值的选取应遵循以下原则:根据初始误差I e (n )I 值的大小来选择G 、B 的值使得初始误差I e (n )I 所对应的H (n )的值尽可能大些(当然是在满足算法收敛的前提下).由图2还可知:对于相同的初始误差,固定B (<1/A max ),此时算法收敛,选择较大的G 值算法的收敛速度比选择较小的G 值快.如果选取的G 值过大,算法的收敛速度提高了,但是算法收敛后的误差I e (n )I 所对应的H(n )可能还较大,此时算法的稳态误差较大.如果对收敛速度有较高要求的话,应图3H (n )与e (n )的关系曲线(G 相同,B 不同)选择大的G 值;如果对稳态误差有较高要求的话,选择的G 值不能过大.在具体的实际应用中,可通过实验来确定G 的最优值.由图3可知:对于相同的初始误差,固定G ,选择较大的B 值算法的收敛速度比选择较小的B 值快(B <1/A max ).下面的计算机模拟仿真结果证实了以上分析.3计算机模拟仿真结果及分析下面通过计算机模拟来检验和分析我们给出的变步长LMS 自适应滤波算法的收敛性能以及G 、B 值对算法收敛性能的影响.仍然采用文[6]中的计算机模拟条件:(1)自适应滤波器阶数L =2;(2)未知系统的FIR 系数为"!=[0.8,0.5]T ,在第500个采样点时刻未知系统发生时变,系数矢量变为"!=[0.4,0.2]T;(3)参考输入信号x (n )是零均值,方差为1的高斯白噪声;(4)1(n )为与x (n )不相关的高斯白噪声,其均值是零,方差为G 21=0.04.分别做200次独立的仿真,采样点数为1000,然后求其统计平均,得出学习曲线.图4B 固定,不同值G 的算法收敛曲线图4是B =0.1固定,不同G 值的算法收敛曲线,从上到下的四条曲线对应的G 值依此为:1,10,100,300;随着G 的增大,算法的收敛速度逐渐提高.图5是B =0.1固定,G =300和20000的算法收敛曲线,从曲线右边看,下面一条曲线对应G =300,上面一条曲线对应G =20000.这表明2电子学报2001年图5 固定, =300,20000的算法收敛曲线虽然!=0.1固定,随着 的增大,算法的收敛速度逐渐提高,但过大的 值增加了算法的稳态误差.在实际应用中,为了获得较快的收敛速度,应选择较大的 值;为了使收敛精度较高,则选择的 值不能过大.在本文的实验条件下,最优 值约为300.图6 固定,不同值 的算法收敛曲线图6是 =300固定,不同值 的算法收敛曲线,从上到下的四条曲线对应 的值依此为:0.01,0.02,0.05,0.2,随着 的增大( <1/ max ),算法的收敛速度逐渐提高.在本文的实验条件下,若选择的 值大于0.3,算法发散;若选择的 值在(0.2,0.3]之间,算法有时侯会出现不收敛的情况,最优 值约为0.2.图7两组不同的 , 值的算法收敛曲线图7是两组不同的 , 值的算法收敛曲线,上面一条曲线对应的 =0.5, =0.1,由于选取的 、 使得初始误差I e (n )I 所对应的 (n )的值太小,故算法收敛缓慢.下面一条曲线对应的 =9, =0.3,此时选取的 、 值使得初始误差I e (n )I 所对应的 (n )的值较大,满足变步长自适应滤波算法的步长调整原则.故算法有较好的收敛性能.这也与上面的分析相一致.!和其它变步长算法的收敛曲线比较文[6]提出了变步长自适应滤波算法的步长调整原则,根据这一步长调整原则,该文给出了Sigmoid 函数变步长LMS 算法(SVSLMS ),但该文没有分析 、 如何取值.图8是本文算法和SVSLMS 算法收敛曲线比较(该文实验条件下),上面一条曲线是 =1.0, =1.5(该文算法最佳值)时的SVSLMS 算法收敛曲线,下面一条曲线是 =20, =0.2时的本文算法收敛曲线.由此图知本文算法优于SVSLMS 算法.图8本文算法和SVSLMS 算法收敛曲线比较文[5]提出的变步长自适应滤波算法(VS-NLMS ),其步长因子 与e (n )和x(n )的互相关函数的估值成正比.该算法须用指数加权递推公式更新计算平均互相关,计算量较大.图9是本文算法图9本文算法的VS-NLMS 算法收敛曲线比较图10本文算法的L -LMS 算法收敛曲线比较和VS-NLMS 算法收敛曲线的比较(采样点数为3000,50次独立仿真的统计平均结果).模拟条件采用该文中的条件:(1)自适应滤波器阶数L =10;(2)未知系统的FIR 系数为!!=[0.1,0.2,0.3,0.4,0.5,0.6,0.5,0.4,0.3,0.2]T,(3)参考输入信号x (n )是零均值,方差为1的高斯白噪声;(4)1(n )为与x (n )不相关的高斯白噪声;(5) =1,=0.997.本文算法取 =40, =0.06.从图中看出本文算法的收敛速度明显快于VS-NLMS 算法的收敛速度.文[7]通过对误差信号的非线性处理,得到了L. -LMS 算法.该算法亦较为复杂.图10是本文算法和L. -LMS 算法收敛曲线的比较(采样点数为600,100次独立仿真的统计平均结果).模拟条件采用文[7]中的条件:自适应滤波器阶数L =5;未知系统的FIR 系数为!!=[0.33,0.67,1,0.67,0.33]T, max =0.1, min =0.01;参考输入信号x (n )是零均值,方差为1的高斯白噪声;1(n )是与x (n )不相关的高斯白噪声, 2n =0.01.本文算法取 =200, =0.1.从图中看出本文算法的收敛速度亦快于L. -LMS 算法的收敛速度."结束语通过建立步长因子 与误差信号e (n )之间的另一非线性函数关系 (n )= (1-exp (- I e (n )I 2)),本文提出了一种新的变步长自适应滤波算法,同时分析了参数 , 的取值原则及对算法收敛性能的影响.该算法有较好的收敛性能,克服了SVSLMS 算法在自适应稳态阶段步长调整过程中的不足,计算量比SVSLMS 算法、VS-NLMS 算法和L. -LMS 算法少.计算机仿真结果表明该算法的收敛性能良好,与理论分析相一致且收敛速度快于SVSLMS 算法、VS-3第8期高鹰:一种变步长LMS 自适应滤波算法及分析NLMS算法和L.E-LMS算法!参考文献:[1]S.Haykin,et.al.Adaptive Filtering Teeory[M].1985.[2]Gitlin R.D,Weinstein S.D.On tee design of gradient algoritems for digitally implemented adaptive filters[J].IEEE Trans on CT,1973,(2):125-136.[3]Yasukawa H,Seimada S,Furukrawa I,et al.Acoustic eceo canceller wite eige speece guality[A].ICASSP’87:2125-2128.[4]Gitlin R.D,Weinstein S.D.Tee effects of large interference on tee tracking capability of digitally implemented eceo cancellers[J].IEEETrans on COM,1978,(6):833-839.[5]叶华,吴伯修.变步长自适应滤波算法的研究[J].电子学报,1990,18(4):63-69.[6]覃景繁,欧阳景正.一种新的变步长自适应滤波算法[J].数据采集与处理.1997,12(3):171-194.[7]吴光弼,祝琳瑜.一种变步长LMS自适应滤波算法[J].电子学报,1994,22(1):55-60.作者简介:高鹰男.1963年6月生于湖北丹江口.广州师范学院计算机系副教授,1987年毕业于华中师大数学系,1998年毕业于北京航空航天大学机电工程系,获硕士学位.现在华南理工大学电子与通信工程系攻读博士学位(在职).主要研究方向:计算机辅助几何设计、三维数据场可视化、自适应信号处理等研究.已发表论文十余篇.谢胜利男.1956年生于湖北荆州.华南理工大学无线电与自动控制研究所教授,博士生导师.主要研究领域:滞后分布参数系统、滞后2D离散系统的稳定与变结构控制、非线性系统学习控制、机器人系统、自适应回波消除等.出版专著一部,发表论文60多篇,获省部级二等奖2次.《GPS动态滤波的理论、方法及其应用》出版由博士生导师万德钧教授和房建成、王庆两位副教授合著的《GPS动态滤波理论、方法及其应用》一书,倾注了作者及其有关专家、学者多年的心血,潜心研究,解决了一个又一个技术难题所取得的最新成果,独创性很强,是一本难得的好书。
新的变步长LMS算法及DSP设计Widrow和Hoff等人于1960年提出最小均方误差(LMS)算法,因为其结构容易,计算量小,稳定性好,易于实现等优点而得到广泛的应用。
LMS 算法的缺点是收敛速度慢,它克服不了收敛速度和稳态误差这一对固有冲突:在收敛的前提下,假如步长取较大值,虽然收敛速度能得到提高,但稳态误差会随之增大,反之稳态误差虽然降低但收敛速度就会变慢。
为解决这一冲突,人们提出了许多改进型自适应算法。
其中很大一类是变步长LMS算法。
文献提出Sigmoid函数变步长LMS算法(SVSLMS)。
该算法在初始阶段或未知系统的系数参数发生变幻时,其步长较大,从而使该算法有较快的收敛速度;而在算法收敛后,不管主输入端干扰信号e(n)有多大,都保持很小的调节步长,从而获得较小的稳态失调噪声。
但Sigmoid函数过于复杂,且在误差e(n)临近零处变幻太大,不具有缓慢变幻的特性,使得SVSLMS算法在自适应稳态阶段仍有较大的步长变幻;文献提出的算法引入了多个调节参数,因而步长因子不易设计和控制;文献[6-8]提出了3种与误差信号成非线性关系的步长设计办法,该类算法具有较好的收敛性能,但3种算法在计算步长因子时,都存在指数运算。
在数字信号处理中,举行一次指数运算需要的计算量,相当于举行多次乘法运算的计算量。
因此这类算法在实现时,增大了计算复杂度。
为克服上述变步长LMS自适应存在的不足,在此提出了一种新的变步长LMS自适应滤波算法,该算法具有良好的收敛性能,较快的收敛速度,较小的稳态误差.良好的鲁棒性,并且在求变步长因子时计算量较小。
1 新的变步长LMS算法分析基本的固定步长LMS算法的迭代公式可以表述为:式中:X(n)表示时刻n的输入信号矢量;W(n)表示时刻n自适应滤波器的权系数;d(n)是期望输出值;e(n)是误差;μ是控制稳定性和收敛速度的参量(步长因子)。
本文基于文献[6,7]建立一个步长μ(n)和误差e(n)的函数关系:反正切函数是一个关于自变量的增函数,且在零附近变幻平缓,而且是一个有界函数,函数值不会发散。
浅析LMS算法的改进及其应用摘要:本文简单介绍了LMS算法,以及为了解决基本LMS算法中收敛速度和稳态误差之间的矛盾,提出了一种改进的变步长LMS 算法,并将其应用于噪声抵消和谐波检测中去。
关键字:LMS算法;变步长;噪声抵消;谐波检测引言自适应滤波处理技术可以用来检测平稳和非平稳的随机信号,具有很强的自学习和自跟踪能力,算法简单易于实现,在噪声干扰抵消、线性预测编码、通信系统中的自适应均衡、未知系统的自适应参数辨识等方面获得了广泛的应用。
自适应滤波则是利用前一时刻已获得的滤波器参数等结果,自动地调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。
所谓“最优”是以一定的准则来衡量的,根据自适应滤波算法优化准则不同,自适应滤波算法可以分为最小均方误差(LMS)算法和递推最小二乘(RLS)算法两类最基本的算法。
基于最小均方误差准则,LMS算法使滤波器的输出信号与期望输出信号之间的均方误差最小,因此,本文在基本LMS算法基础上,提出一种新的变步长自适应滤波算法,将其应用于噪声抵消和谐波检测中去。
一.LMS算法LMS算法即最小均方误差(least-mean-squares) 算法,是线性自适应滤波算法,包括滤波过程和自适应过程。
基于最速下降法的LMS算法的迭代公式如下:e ( n) = d ( n)- w ( n - 1) x ( n) (1)w ( n) =w ( n - 1) + 2μ( n) e ( n) x ( n) (2)式中,x ( n)为自适应滤波器的输入;d ( n)为参考信号;e ( n)为误差;w ( n)为权重系数;μ( n)为步长。
LMS算法收敛的条件为:0 <μ< 1/λmax ,λmax是输入信号自相关矩阵的最大特征值。
二.LMS算法的改进由于LMS算法具有结构简单,计算复杂度小,性能稳定等特点,因而被广泛地应用于自适应均衡、语音处理、自适应噪音消除、雷达、系统辨识及信号处理等领域。