LMS自适应滤波器的设计理论研究一、自适应滤波器简介滤波可分为经典滤波和现代滤波。经典滤波要求已知信号和噪声的统计特性,如维纳滤波和卡尔曼滤波。现代滤波则不要求己知信号和噪声的统计特性,如自适应滤波。自适应滤波的原理就是利用前一时刻己获得的滤波参数等结果,自动地调节当前时刻的滤波参数,从而达到最优化滤波。自适应滤波一般包括3个模块:滤波结构、性能判据和自适应算法。其中,自适应滤波算法一直是人们的研究热点,包括线性自适应算法和非线性自适应算法,非线性自适应算法具有更强的信号处理能力,但计算比较复杂,实际应用最多的仍然是线性自适应滤波算法。线性自适应滤波算法的种类很多,有LMS自适应滤波算法、R路自适应滤波算法、变换域自适应滤波算法、仿射投影算法、共扼梯度算法等。自适应滤波器主要包括滤波器的结构和自适应算法两部分,这两部分不同的变化与组合,可以导出许多不同形式的自适应滤波器。二、自适应滤波器的结构及其原理1、自适应滤波器的一般原理所谓的自适应滤波,就是利用前一时刻以获得的滤波器参数的结果,自动的调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。自适应滤波器实质上就是一种能调节其自身传输特性以达到最优的维纳滤波器。自适应滤波器不需要关于输入信号的先验知识,计算量小,特别适用于实时处理。参数可调的线性滤波器自适应算法+y(k)E(k)d(k)x(k)-+(图1)图1为自适应滤波器结构的一般形式,图中x(k)为输入信号,通过权系数可调的数字滤波器或产生输出信号y(k),将y(k)与期望信号d(k)进行比较,得到误差信号e(k),e(k)和x(k)通过自适应算法对滤波器权系数进行调整,调整的目的是的误差信号e(k)最小,重复上面的过程,从而达到最佳滤波的效果。如果输入统计规律发生了变化,滤波器能够自动调整权系数,实现自适应过程。2、自适应滤波器的结构自适应滤波器的结构可采用FIR或IIR结构,一般采用FIR滤波器,FIR滤波器的结构可分为3种类型,横向结构,对称横向结构以及格型结构。图2为一个FIR横向滤波器的结构,(图2)这种结构包含有由延迟级数所决定的有限个存储单元,输入信号x(n)被若干延时单元延时,这些延时单元的输出与存储的一组权系数w(n)一次相乘,将其乘积相加得到输出信号y(n),这意味着输出是输入信号所存储的权系数或冲击响应的卷积。这种滤波结构仅包含有零点,是稳定的。三、自适应算法及实现1111、自适应算法简介自适应滤波器包含3个模块:可调整的滤波器结构可以用输入样值计算出输出,性能规范可以监测滤波器的性能,自适应算法可以修改滤波器的系数,任何自适应滤波器的关键部分都是自适应算法。现在的自适应算法主要有最小均算法(LMS)、递归最小二乘(RLS)算法及相应的改进算法:如归一化(NLMS)算法、变步长(SVSLMS)算法、递归最小二乘方格形(RLSL)算法等。这些算法各有特点,适用于不同的场合。最小均方误差(LMS,TheleastMeansquare)其主要思想是基于最小均方误差准则,使滤波器的输出信号与期望输出信号之间的均方误差最小。由于LMS算法简单有效、鲁棒性好、易于实现,所以应用最为广泛。()()()∑=−=Lkkknxnwny0()()()()[]TLnxnxnxn−−=L1xxxx()()()()[]TLnwnwnwnL10=()()()nyndne−=2222、LMSLMSLMSLMS算法分析由于最速下降法为线性系统Rc=d提供了一个迭代的解答方法,LMS根据它的原理进行一些近似:,最陡下降法在每次迭代时要求得到性能曲面梯度的估计值。LMS方法使用一个特别方法估计这个梯度(这个梯度对于自适应的线性组合器是有效的),LMS方法的优势在于:(1)计算简单方便,(2)不需要离线的梯度估计或者数据副本。如果自适应系统是一个自适应线性组合器,并且输入矢量和期望响应在每次迭代时都可以得到,那么LMS方法通常是一个最好选择。3333、LMSLMSLMSLMS算法实现步骤⑴、设计参数x(n)=n时刻的输入数据矢量y(n)=n时刻的期望响应c(n)=n时刻的滤波器系数矢量M=系数的数目μ=步长参数{}2110()MkkExn=∑μ⑵、初始化c(-1)=x(-1)=0⑶、计算对于n=1,2,…,计算:*ˆ()(1)()ˆ()()()()(1)2()()Hyncnxnenynyncncnxnenµ=−=−=−+四、自适应滤波器的性能评价标准()()[]()()()()()()()()()()()()()()()()()()()()()nnennnnnnmethoddescentsteepestThennenenennnnnnnnenneEnxxxxˆˆˆˆ22+≈∇−≈∇−=+−−=∂∂=∇∂∂=∇≈∇⇒∂∂=∇=≈⇒=使用单次计算的估计误差平方代替平方误差的期望。LMS使用单次误差代替误差平均,造成梯度和权矢量成为围绕真值的随机变量。()()()()()()endnyndnnn=−=−TTTTxwxwxwxw自适应滤波器的性能评价标准包括以下6个方面:1、失调量:梯度估计噪声的存在,使得收敛后的权矢量在最佳权矢量的附近随机起伏。2、计算复杂度:关系到滤波处理速度的快慢对时变统计量的跟踪能力3、结构上:高模块性,并行性等(是否适合硬件实现)4、收敛速度5、数值特性:数值稳定性(对字长效应不敏感),数值精确性6、鲁棒性:对噪声干扰不敏感,小能量干扰只能造成小估计误差五、MMMMatlabatlabatlabatlab仿真MMMMatlabatlabatlabatlab程序如下:clearall;%清除内存所有变量closeall;%关闭所有打开的图形窗口N=500;%点数n=0:N-1;%时间序列s=5*sin(2*pi*0.055*n);%周期性正弦信号subplot(4,1,1);plot(n,s);title('周期性正弦信号x(n)');xlabel('n');ylabel('x');v=sqrt(5)*randn(1,N);%均值为0,方差为5的高斯噪声干扰x=s+v;%观测信号subplot(4,1,2);plot(n,x);title('加入均值为0,方差为5的高斯噪声干扰后的周期性正弦信号x(n)');xlabel('n');ylabel('x');M=50;%自适应滤波器的阶数为M%计算u值u=0.1*1/(M*var(x));%计算u值W_n=zeros(1,M)';%变量初始化y=zeros(1,N);%滤波器输出e=y;%误差x=[zeros(1,M-1),x];%x前面补M-1个0,便于计算%自适应滤波fori=1:NX_n=flipud(x(i:M+i-1)');y(i)=W_n'*X_n;e(i)=s(i)-y(i);W_n=W_n+2*u*e(i)*X_n;endsubplot(4,1,3);plot(n,y);title('自适应滤波后的输出信号y(n)');xlabel('n');ylabel('y');subplot(4,1,4);plot(n,e.*e);title('均方误差信号e^2(n)');xlabel('n');ylabel('E[e^2(n)]');运行结果如下:(图3)六、总结与展望图3中的4个小图分别为输入信号、噪声信号、滤波输出信号和均方误差信号,滤波前和滤波后的信号,可以看出,输出信号从50个点左右开始收敛,图像趋于稳定,均方误差也在50左右趋于0。通过Matlab仿真结果分析,根据评价标准,此LMS自适应滤波器具有很好的性能。滤波技术是信号处理中的一种基本方法和技术,尤其数字滤波技术使用广泛,数字滤波理论的研究及其产品的开发一直受到很多国家的重视。自适应滤波具有很强的自学习、自跟踪能力,适用于平稳和非平稳随机信号的检测和估计。而算法是自适应滤波器的关键,是当前研究的热点,特别是LMS算法,应用最为广泛,对于它的改进型算法和算法的DPS实现,有待于进一步研究和完善。