毕业论文题目基于LMS自适应滤波器的MATLAB实现学院:电气系专业:应用电子专业班级:06222班学号:32(号)学生姓名:郭永林指导教师:赵茂林起讫日期:20094.17-2009.6.1成都电子机械高等专科学校二○○九年六月五日I基于LMS自适应滤波器的MATLAB实现专业:应用电子学号:0622232学生姓名:郭永林指导教师:赵茂林摘要数字滤波器在数字信号处理中的应用广泛,是数字信号处理的重要基础。自适应滤波器可以不必事先给定信号及噪声的自相关函数,它可以利用前一时刻已获得的滤波器参数自动地调节现时刻的滤波器参数使得滤波器输出和未知的输入之间的均方误差最小化,从而它可以实现最优滤波。自适应滤波器的算法有很多,有RLS(递归最小二乘法)和LMS(最小均方算法)等。自适应LMS算法是一种很有用且很简单的估计梯度的方法,在信号处理中得到广泛应用。本论文主要研究了自适应滤波器的基本结构和原理,然后介绍了最小均方误差算法(LMS算法),并完成了一种基于MATLAB平台的自适应LMS自适应滤波器的设计。通过仿真,我们实现了LMS自适应滤波算法,并从结果得知步长和滤波器的阶数是滤波器中很重要的两个参数,并通过修改它们证实了这一点,其中步长影响着收敛时间,而且阶数的大小也会大大地影响自适应滤波器的性能。关键字:自适应滤波器MATLABLMS仿真IITheRealizationofAdaptiveFilterBasedonLMSbyApplyingMATLABAbstractDigitalfilterwhichiswidelyusedistheimportantbasementofthedigitalsignalprocessing.Adaptivefiltercanadjustitscoefficientsautomaticallytominimizethemean-squareerrorbetweenitsoutputandthatofanunknowninput,unnecessarytoknowtheautocorrelationfunctionsofsignalandnoiseinadvance,henceitcanrealizelinearlyoptimumfiltering.AdaptivefilterhasmanydifferentalgorithmssuchasRLS(RecursiveLeastSquare)andLMS(LeastMean-Square)algorithms.AlgorithmofadaptiveLMSisasimpleandveryusefulmethodwhichisusedtoestimategradient.Ithasbeenwidelyappliedinthesignalprocessingareas.Thispaperintroducesthestructureandtheprincipleoftheadaptivefilter,andthenintroducestheLMSalgorithm,atthesametime,ithascompletedthedesignofadaptiveLMSfilterbasedonMATLABplatformandrealizedtodecreasenoiseinsignalprocessing.Throughthesimulations,werealizethealgorithmofadaptiveLMS.Moreover,wecanunderstandthereexisttwoveryimportantparameters,step-sizeandfilterorderMthroughtheresults.Wealsodemonstratethathowthestep-sizeaffectstheconvergenceratetowardtheunknownsystem,andhowthefilterorderMaffectstheperformanceofadaptivefilterbychangingthesetwoparameters.Keywords:AdaptiveFilterMATLABLMSSimulationIII目录摘要............................................................IAbstract...........................................................II目录..........................................................III第一章绪论.........................................................11.1滤波器概述..................................................11.2数字滤波器...................................................11.3滤波器发展..................................................11.4小结........................................................2第二章LMS自适应滤波器.............................................32.1自适应滤波器................................................32.2自适应滤波器设计原理........................................32.3自适应滤波器的结构及LMS算法................................42.3.1自适应滤波器结构.......................................42.3.2LMS算法...............................................52.4小结.......................................................11第三章仿真软件MATLAB简介........................................123.1MATLAB的概况...........................................123.1.1MATLAB产生的历史背景.................................123.1.2MATLAB的语言特点.....................................133.2MATLAB仿真的基本流程.......................................153.3小结.......................................................16第四章LMS自适应滤波器的MATLAB实现............................174.1自适应滤波器出现的意义.....................................174.2自适应滤波器的实现.........................................174.2.1最速下降法的仿真......................................174.2.2LMS算法的MATLAB仿真.................................184.2.2.1基于LMS算法的自适应滤波器设计..................184.2.2.2LMS算法中正交性原理分析.......................194.2.2.3LMS算法的MATLAB仿真结果......................204.2.2.4对LMS算法参数的分析研究........................204.3小结...........................................................24第五章.结论以及展望...............................................25IV参考文献...........................................................26附录(程序)…………………………………………………………………………27致谢...........................................................281第一章绪论1.1滤波器概述对特定频率的频点或该频点以外的频率进行有效滤除的电路,就是滤波器。其功能就是得到一个特定频率或消除一个特定频率。1.2数字滤波器滤波器有模拟滤波器和数字滤波器,在离散系统中广泛应用数字滤波器,它的作用是利用离散时间系统的特性对输入信号波形或频率进行加工处理。或者说,把输入信号变成一定的输出信号,从而达到改变信号频谱的目的。1.3滤波器发展滤波器可分为线性滤波器和非线性滤波器两种。若滤波器输出端滤波,平滑或预测的量是它的输入观测量的线性函数,则认为该滤波器是线性的;否则,认为该滤波器是非线性的。在解线性滤波问题的统计方法中,通常假设已知有用信号及其附加噪声的某些统计参数,而且需要设计含噪数据作为其输入的线性滤波器,使得根据某种统计准则噪声对滤波器的影响最小。实现该滤波器优化问题的一个有用方法是使误差信号的均方值最小化。维纳滤波器在均方误差意义上是最优的。误差信号均方值相对于线性滤波器可调参数的曲线通常称为误差性能曲面。该曲面的极小点即为维纳解。维纳滤波器不适合于分析非平稳性的信号和/或噪声。当出现的信号和/或噪声是非平稳的时候,必须假设最优滤波器为时变形式。一种十分成功的解决方案是采用卡尔曼滤波器。在各种工程应用中该滤波器是一个强有力的系统。维纳滤波器和卡尔曼滤波器的线性滤波器理论已经在连续时间信号和离散时间信号文献中获得广泛的研究。然而,由于数字计算机的广泛普及和数字信号处理器件与日俱增的应用等技术原因,离散时间线性滤波器通常更为人们所乐意使用。维纳滤波器的设计要求所处理数据统计方面的先验知识。只有当输入数据的统计特性与滤波器设计所依赖的某一先验知识匹配时,该滤波器才是最优的。当这个信息完全未知时,就不可能设计维纳滤波器,或者该设计不再是最优的。在这种情况下,可采用的一个直接方法是“估计和插入”过程。该过程包含两个步骤,首先是“估计”有关信号的统计参数,然后将所得到的结果“插入”非递归公式以计算滤波器参数。对于实时运算,该过程的缺点是要求特别的精心制作,2而且要求价格昂贵的硬件。为了消除这个限制,可采用自适应滤波器。因为自适应滤波器依靠递归算法进行运算,采用这样一种系统,意味着滤波器是自设计的。递归算法将从某些预先确定的初始条件集出发,这些初始条件代表了人们所知道的上述环境的任何一种情况。在非平稳环境下,只要这种变化是足够缓慢的,由于它能够跟踪输入数据统计特性随时间的变化,因此,该递归算法提供了一种跟踪能力。最早的自适应滤波器可以追溯到二十世纪五十年代末期,在这个时期大量的研究者独立工作在这种滤波器的不同应用领域。依赖于这类早期工作,出现了最小均方(LMS)算法,它成为运行横向滤波器的一种简单且有效的算法。LMS算法是Widrow和Hoff在1959年研究自适应线性元素的模式识别方案时发明的,这些自适应线性元素在文献中通常称为Adaline。LMS算法是一种随机梯度算法,它在相对于抽头权值的误差信号平方