基于自适应参数的变阶数LMS滤波器的制作方法

文档序号:11234158阅读:957来源:国知局
基于自适应参数的变阶数LMS滤波器的制造方法与工艺

本发明属于无线电通信技术领域,具体涉及基于自适应参数的变阶数lms滤波器。



背景技术:

lms滤波器作为基于lms准则的自适应滤波器,在无线电通信、数字信号处理和参数估计等领域有着广泛的应用。滤波器的阶数,即滤波器抽头数目,是影响滤波器性能的一个重要参数,通过调整滤波器的阶数不仅可以提高lms滤波器的收敛速度,还可以降低稳态误差。

在常用的lms滤波器算法中,滤波器的阶数一般都是固定不变的,然而在一些特殊场合,系统阶数未知或系统阶数是变化的,lms滤波器的最优阶数是未知的或者是变化的,如果采用的lms滤波器的阶数与系统阶数不相匹配时,很可能导致lms滤波器的输出结果存在较大的误差,为了解决这个问题,人们提出了变阶数的lms滤波器算法来寻找最优的滤波器阶数。

在现有的变阶数lms滤波器算法中,三个具有代表性的算法分别是:分段滤波器(segmentedfilter,sf)算法、梯度下降(gradientdescent,gd)算法和微阶数(fractionaltap-length,ft)算法。

1.sf算法

在sf算法中,滤波器被分为个部分,每个部分都拥有个抽头,滤波器的阶数为。sf算法通过求取每个部分的累加方差(accumulatedsquarederror,ase)来对滤波器的阶数更新进行判定,其定义的ase是通过一个指数平滑窗来累加一个分段内的所有时刻的稳态误差的平方,表达式为

其中,为指数平滑窗的遗忘因子,是分段标识,表示滤波器的第个分段,为分段稳态误差。

假设在时刻n时,滤波器有l(n)个分段,那么在时刻,sf算法的阶数自适应更新方程描述为

其中,通过近似得到的最后个元素构成的向量,分别为滤波器的输入向量和抽头系数向量,表示最接近x的整数。

sf算法等价的阶数自适应更新方程为

2、gd算法

在gd算法中,滤波器的阶数是按照估计方差的负梯度方向来自动地进行调整。在每次迭代过程中,滤波器阶数沿着代价函数的负梯度方向进行更新,从而来跟踪最优的阶数。

设滤波器的抽头系数向量和输入向量分别为

其中,l(n)是n时刻滤波器的阶数,是一个固定的正整数。

定义变阶数滤波器的代价函数为估计的方差其中是滤波器的瞬时估计误差,表示为

其中,分别是由向量个元素组成的向量。

gd算法的阶数更新准则是:每t个时刻,滤波器的阶数沿着一个平滑的代价函数的负梯度方向进行更新,描述为

其中,是一个小于的正整数,是代价函数的平滑梯度,表示为

其中,是瞬时梯度,表示为

其中,分别是由向量的后2个元素组成的向量。

为了将滤波器阶数要限制在一定的范围内,从而确保在下一时刻的阶数更新能够正常进行,因此有

其中,为定义的系统响应的最大滤波器阶数。

最终,变阶数lms滤波器的抽头系数向量的迭代公式为

其中,是滤波器的步长。假如,则通过补个零,得到;假如,则选取的前个元素,构成

3、ft算法

在ft算法中,不再认定滤波器的阶数必须为正整数,而是提出了一个“虚拟微阶数”的概念,真实的滤波器阶数为这个“虚拟微阶数”的整数部分。设虚拟微阶数为,由于不再受整数条件的限制,因此在ft算法中,的迭代更新可以通过较小的参数进行调整。另外,为了降低算法的复杂度,ft算法的阶数更新方程采用了瞬时的估计误差来进行判定,其给出的的更新方程为

由于参数和估计误差均不是整数,因此得到的虚拟微阶数不再是整数。真正的滤波器阶数是通过求取的整数部分得到的,表达式为

其中,表示取x的整数部分,为固定的正实数。

在现有的变阶数lms滤波器算法中,ft算法的性能是最优的,但是ft算法本身也存在一些不足,主要为两个方面:(1)ft算法对参数比较敏感,当参数设定不合适时,算法的性能很差,另外ft算法中的参数的取值是固定的,参数值过小时,算法收敛速度慢,参数值过大时,稳态波动误差过大;(2)由于ft算法采用瞬时估计误差进行阶数更新,虽然降低了算法复杂度,但是也导致了算法对噪声比较敏感,在信噪比较低的情况下,ft算法很容易出现阶数跳变和难以收敛的问题。



技术实现要素:

本发明的目的是为了解决lms滤波器ft算法存在的上述问题,而提供一种能获得一个较快的收敛速度和一个较小的稳态误差的基于自适应参数的变阶数lms滤波器。

自适应参数的变阶数lms滤波器,它包括:输入含噪信号装置、自适应算法、输出信号装置;所述的自适应算法的虚拟微阶数迭代公式为基于自适应参数的虚拟微阶数迭代公式,具体如下:

1)设自适应参数为

其中,都是固定的正数,取值要大于1;

2)基于自适应参数的虚拟微阶数迭代公式定义为

所述的基于自适应参数的虚拟微阶数迭代公式定义为:

本发明提供了基于自适应参数的变阶数lms滤波器,自适应参数的变阶数lms滤波器,它包括:输入含噪信号装置、自适应算法、输出信号装置;所述的自适应算法的虚拟微阶数迭代公式为基于自适应参数的虚拟微阶数迭代公式,该算法主要包括两方面改进:(1)提出自适应的参数值,该参数可以根据滤波器的状态自动地调整参数值的大小,在初始阶段,自适应参数的值较大,算法的收敛速度快,在稳态阶段,自适应参数的值较小,算法的稳态误差小;(2)提出限定的arctangent参数值,利用arctangent函数对参数值的变化范围进行限定,增强了算法对突发的大噪声的抵抗能力,避免了ft算法的阶数跳变和难以收敛的问题,增加了变阶数lms算法的稳定性。

附图说明

图1为阶数估计性能对比;

图2为阶数均方误差对比。

具体实施方式

(1)自适应参数

在ft算法中,ft算法的性能主要由虚拟微阶数迭代公式决定,而影响公式的主要参数为

。当的值比较大时,每次迭代后虚拟微阶数的变化量就比较大,进而使得整个算法的收敛速度加快。但是当变阶数lms滤波器处于稳态阶段后,人们希望每次迭代后虚拟微阶数的变化量比较小,进而可以获得一个比较小的稳态误差。为了实现这个目的,需要将的值设定得比较小。在ft算法中,的值是固定的,因此在设定值的时候,必须要在收敛速度和稳态误差之间做一个折中。

为了同时获得一个较快的收敛速度和一个较小的稳态误差,本发明提出了自适应参数的概念:当滤波器处于初始阶段的时候,使的值较大,加快算法的收敛;当滤波器处于稳态的时候,使的值较小,减小算法的稳态误差。

本发明提出的自适应参数为:

其中,都是固定的正数,取值要大于1,具体的参数取值可以根据实际系统的要求来设定。

基于自适应参数的虚拟微阶数迭代公式定义为:

在初始阶段的时候,滤波器的估计误差比较大,的值都比较大,此时的值比较大,的值同样较大。在的值都比较大的情况下,虚拟微阶数迭代公式的收敛速度加快。在稳态阶段,滤波器的估计误差比较小,的值都比较小,此时的值都比较小,从而使得虚拟微阶数迭代公式的阶数波动较小,最终使得滤波器的稳态误差较小。

(2)限定的arctangent参数值

从虚拟微阶数迭代公式可以看到虚拟微阶数的增加或减少主要由的值决定。当的值比的值小时,表明阶数大的滤波器的误差较小,此时需要增加的值;相反地,当的值比的值大时,表明阶数小的滤波器的误差较小,此时需要减小的值。

ft算法采用了瞬时方差来进行阶数迭代,由于瞬时噪声的值是无法确定的,因此基于瞬时方差的迭代方程比基于累加方差的迭代方程更容易受到噪声的影响,基于瞬时方差估计的滤波器阶数的波动范围也更大。因此ft算法存在一个比较严重的问题:ft算法估计的阶数很容易出现跳变,即ft算法当前时刻估计的阶数与前一时刻估计的阶数有非常大的差别。如果在滤波器接近或处于稳态阶段时,估计阶数的跳变会使滤波器严重地远离稳态阶段,而且由于ft算法收敛速度较慢,滤波器需要很长时间才能再次达到稳态阶段,更为严重的后果是:如果不间断的出现较大的噪声干扰,滤波器很难到达稳态阶段。

为了解决这个问题,增强滤波器的抗干扰性,本发明利用arctangent函数来限定瞬时方差的变化范围。用代替虚拟微阶数迭代公式中的

,可以得到:

(5-31)

由于arctangent函数有界,无论瞬时噪声有多大,的值都不会超出的范围,因此基于arctangent限定的参数值可以有效地避免ft算法中阶数跳变的问题。

实施例2利用matlab软件对自适应参数的变阶数lms滤波器性能进行仿真验证

(1)与现有的变阶数lms滤波算法相比,本发明所提的基于自适应参数的变阶数lms滤波器算法,能够根据滤波器的状态自适应地调整阶数迭代公式中参数值的大小,当滤波器处于初始状态时,参数值自适应地增大,从而加快滤波器的收敛速度,当滤波器处于稳态阶段时,参数值自适应地减少,从而减少滤波器的稳态误差。

(2)与ft算法相比,本发明利用arctangent函数来限定瞬时方差的变化范围。由于arctangent函数有界,无论瞬时噪声有多大,瞬时方差的值都不会超出一定的范围,从而增强了变阶数算法的抗噪声干扰,提高了算法的稳定性,有效地避免了ft算法中的阶数跳变问题。

利用matlab软件对本发明的性能进行仿真验证。设系统的输入信号x(n)由传递函数为的高斯白噪声滤波器产生,未知的系统的阶数为

其中,由零均值单位方差的高斯白噪声随机序列产生。当时刻n为时,系统为系统,当时,系统为系统。系统的期望信号为

其中,为零均值的高斯噪声。

将本发明所提的算法与ft算法进行对比,设归一化lms滤波器的步长为,信噪比为20db,两组ft算法的参数分别为:,其他参数为,本发明所提算法的参数设置为:

。仿真结果如图1和图2所示。

图1显示的是两种算法对系统阶数的实时估计,从图1中可以看到本发明所提算法的收敛速度要明显快于ft算法,并且在稳态时,本发明所提算法的滤波器阶数波动范围明显小于ft算法。另外由于采用了限定的arctangent参数值,本发明所提算法的抗干扰性能较好,阶数估计性能比较稳定,没有出现ft算法的阶数跳变现象。

图2是通过500次蒙特卡罗实验得到的两种算法的均方误差曲线,从图2中可以看到本发明所提算法的收敛速度要明显快于ft算法,并且本发明所提算法的均方根误差要远远小于ft算法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1