文档库 最新最全的文档下载
当前位置:文档库 › LMS与RLS自适应滤波算法性能比较

LMS与RLS自适应滤波算法性能比较

马文民

【摘要】:介绍了自适应滤波器去除噪声的原理和从强噪声背景中采用自适应滤波提取有用信号的方法,并对最小均方(LMS, Least Mean Squares)和递推最小二乘(RLS, Recursive Least Squares)两种基本自适应算法进行了算法原理、算法性能分析。计算机模拟仿真结果表明,这两种算法都能通过有效抑制各种干扰来提高强噪声背景中的信号。检测特性相比之下,RLS算法具有良好的收敛性能,除收敛速度快于LMS算法和NLMS算法以及稳定性强外,而且具有更高的起始收敛速率、更小的权噪声和更大的抑噪能力。

【关键词】:自适应滤波;原理;算法;仿真

引言:

自适应滤波是近30年以来发展起来的一种最佳滤波方法。它是在维纳滤波,kalman滤波等线性滤波基础上发展起来的一种最佳滤波方法。由于它具有更强的适应性和更优的滤波性能。从而在工程实际中,尤其在信息处理技术中得到广泛的应用。自适应滤波的研究对象是具有不确定的系统或信息过程。“不确定”是指所研究的处理信息过程及其环境的数学模型不是完全确定的。其中包含一些未知因数和随机因数。任何一个实际的信息过程都具有不同程度的不确定性,这些不确定性有时表现在过程内部,有时表现在过程外部。从过程内部来讲,描述研究对象即信息动态过程的数学模型的结构和参数是我们事先不知道的。作为外部环境对信息过程的影响,可以等效地用扰动来表示,这些扰动通常是不可测的,它们可能是确定的,也可能是随机的。此外一些测量噪音也是以不同的途径影响信息过程。这些扰动和噪声的统计特性常常是未知的。面对这些客观存在的各种不确定性,如何综合处理信息过程,并使某一些指定的性能指标达到最优或近似最优,这就是自适应滤波所要解决的问题。

在这几十年里,数字信号处理技术取得了飞速发展,特别是自适应信号处理技术以其计算简单、收敛速度快等许多优点而广泛被使用。它通过使内部参数的最优化来自动改变其特性。自适应滤波算法在统计信号处理的许多应用中都是非常重要的。

在工程实际中,经常会遇到强噪声背景中的微弱信号检测问题。例如在超声波无损检测领域,因传输介质的不均匀等因素导致有用信号与高噪声信号迭加在一起。被埋藏在强背景噪声中的有用信号通常微弱而不稳定,而背景噪声往往又是非平稳的和随时间变化的,此时很难用传统方法来解决噪声背景中的信号提取问题。自适应噪声抵消技术是一种有效降噪的方法,当系统能提供良好的参考信号时,可获得很好的提取效果。与传统的平均迭加方法相比采用自适应平均处理方法还能降低样本数量。

1自适应滤波器的基本原理

所谓的自适应滤波,就是利用前一时刻以获得的滤波器参数的结果,自动的调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。自适应滤波器实质上就是一种能调节其自身传输特性以达到最优的维纳滤波器。自适应滤波器不需要关于输入信号的先验知识,计算量小,特别适用于实时处理。

由于无法预先知道信号和噪声的特性或者它们是随时间变化的,仅仅用FIR和IIR两种具有固定滤波系数的滤波器无法实现最优滤波。在这种情况下,必须设计自适应滤波器,以跟踪信号和噪声的变化。

自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现的。一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。

自适应噪声抵消系统的核心是自适应滤波器,自适应算法对其参数进行控制,以实现最佳滤波。不同的自适应滤波器算法,具有不同的收敛速度、稳态失调和算法复杂度。根据自适应算法是否与滤波器输出有关,可将其分成开环算法和闭环算法两类。自适应噪声抵消器中利用了输出反馈,属于闭环算法。其优点是能在滤波器输入变化时保持最佳的输出,而且还能在某种程度上补偿滤波器元件参数的变化和误差以及运算误差。但其缺点是存在稳定性问题以及收敛速度不高。所以探讨如何提高收敛速度、增强稳定性以满足信号处理的高效性、实时性,一直是人们研究的重点和热点。本文基于自

适应噪声抵消对比研究了两类基本的自适应算法,并对它们在分离周期信号和随机噪声中呈现的滤波性能进行了分析。计算机仿真结果表明,RLS算法从背景噪声中提取有用信号的滤波性能明显优于LMS算法。

2 算法原理

图1 自适应滤波器原理框图

图1给出了用自适应噪声抵消技术来解决噪声背景中的信号提取问题的基本原理。主输入端接收从信号源发来的信号s但是受到噪声源的干扰收到噪声vo。参考输入端的参考信号为vi是一个与有用信号s无关但与vo相关的噪声信号。主输入中含有待抵消的加性噪声,参考输入对准主输入中的噪声vo。利用两输入噪声的相关性和信号与噪声的独立性,使参考输入通过自适应滤波器与主输入中噪声分量逼近并相减,输出误差信号。自适应滤波算法决定滤波器对参考信号 v1的处理,使得滤波器的输出尽可能地逼近主输入中的干扰成分。所以,在最佳准则意义下滤波器的输出v逼近vo等效于系统的输出e逼近s。从而在噪声对消器的输出端大大地提高了信噪比。但若参考通道除检测到噪声v1外,还收到信号分量,则自适应滤波器的输出中将包含信号分量,从而使噪声对消效果变坏。因此,为获得良好的噪声对消性能,应使参考通道检测到的信号尽可能小,在信号不可测的噪声环境拾取参考输入信号。

3 算法:

根据自适应算法的优化准则的不同,自适应滤波算法可分为两类最基本的算法:最小均方(LMS)算法和递推最小二乘(RLS)算法。为了解决传统LMS 算法存在梯度噪声放大问题,以及为克服常规的固定步长LMS自适应算法在收敛速率、跟踪速率与权失调噪声之间的要求上存在的较大矛盾,许多学者研究出了各种各样的改进型LMS算法,如归一化LMS 算法和基于瞬变步长LMS自适应滤波算法以及基于离散小波变换的LMS自适应滤波算法等。a: LMS算法:

自适应滤波器在时刻n的向量定义:

抽头权向量:

011

()[(),(),...,()]T

M

W n b n b n b n

-

=

参考输入向量:

()[(),(1),...,(1)]T

X n x n x n x n M

=--+

()

d n是主输入信号,()

y n是期望输出值,()

e n是误差信号,也是系统输出值,M是滤波器长度。

由维纳-霍夫方程可知,最小均方误差为:

22*

min

([])[]

j j

E e E d W Pτ

=-

实际上,该方程与维纳滤波器结果完全一样。自适应滤波器与维纳滤波器相比,其差别在于它增加了一个识别控制环节,将输出与期望值进行比较,利用误差()

e n去控制()

W n,使2

[]

j

E e=最小值,从而得到()

W n的估计*()

W n。

根据最优的数学算法最陡下降法,下一个权矢

1

()

j

W n

+

等于现在的权矢量()

j

W n加一个正比于

梯度

j

?的负值变化量,即有:

1

j j j

W Wμ

+

=-?

通过梯度下降法:

2

1

[]

|

j

j

j j W W

dE e

W W

dW

μ

+=

=-推导

可知:

1

2

j j j j

W W e X

μ

+

=+其中

j j j j

e d W X

τ

=-

算法步骤:

步骤一:初始化:

步骤二:更新:1,2,3,...

n=

滤波:()()()

T

y n W n X n

=;

误差估计:()()()

e n d n y n

=-;

权向量更新:

*

(1)()2()()

W n W n e n X n

μ

+=+;

其中μ是用来控制稳定性和收敛速度的步长参数。为确保自适应过程的稳定性,μ必须满足

02/

in

MP

μ

<<,其中2

[()]

in

P E X n

=为输入功率。

b: RLS算法:

SISO 系统动态过程的数学模型:

11()()()()()A z z k B z u k n k --=+ (1)

其中()u k ,()z k 为输入输出量,()n k 为噪声。式中

11212()1...a

a n n A z a z a z a z ----=++++11

212()...b

b n n B z b z

b z b z ----=+++展开后得到:

1212()(1)(2)...(1)(2)...()a b n n b z k a z k a z k a bu k b u k b u k n =------+-+-++-模型(1)可化为最小二乘格式:

()()()z k h k n k τθ=+ (2)

记1212[,,...,,,...,]a b n n a a a b b b τ

θ= 为待估计的参数。

()[(1),...,(),(1),...,()]a b h k z k z k n u k u k n τ=------,对于1,2,...k L =(L 为数据长度)。方程(2)构成一个线性方程组,写成

()()()L L L z k H k n k θ=+; (1)(2)()L z z Z z L ??????=??????,(1)(2)()L h h H h L τ

ττ??????=????????,(1)(2)()L n n n n L ??????=??

???? 根据最小二乘法一次完成算法,其参数估计为:1?()L

L

L

L

LS H H H Z ττθ-=。

参数递推估计,每取得一次新的观测数据后,就在前次估计结果的基础上,利用新引入的观测数据对前次估计的结果,根据递推算法进行修正,减少估计误差,从而递推地得出新的参数估计值。这样,随着新观测数据的逐次引入,一次接一次地进行参数估计,直到参数估计值达到满意的精确程度为止。 算法步骤:

步骤一:初始化(0)0W =;

1

(0)P I σ-=,其中I 为单位矩阵;

步骤二:更新1,2,...n =计算 更新增益矢量:

()(1)()/[()(1)()]T

g n P n X n X n P n X n λ=-+-;

滤波:()(1)()T

y n W n X n =-; 误差估计:()()()e n d n y n =-; 更新权向量:

()(1)()()W n W n g n e n =-+;

更新逆矩阵:

1()[(1)()()(1)]T P n P n g n X n P n λ-=---;

其中,()P n 为自相关矩阵()xx P n 的逆矩

阵,常数λ是遗忘因子,且01λ<<。

总上所述:算法实现的主要步骤为:(1)数据采集与生成,取()d n ,()X n ;(2)对参数的初始化;

(3)自适应的滤波处理;

(4)滤波器系数更新 3 计算机仿真结果与分析;

为了检验两种自适应滤波算法在去噪应用中

的滤波性能,下面对LSM 算法和RLS 算法进行计算机模拟仿真实验。

其中采样频率为1000Hz ,其算法用MATLAB 语言实

现。其中图2为幅度为2标准正弦波。

图3为幅度为2正弦波叠加带限高斯白噪声的混迭信号,是系统的主输入信号。图4、图5分别为用LMS 算法和RLS 算法提取得到的正弦信号。

表一 各自适应滤波各参数设置

从图上可以看出,用RLS 自适应滤波算法提取得到的正弦信号效果较好。而LMS 自适应滤波算法也能将信号提取出来,但是其滤波效果较差,存在没有滤除的随机噪声部分较多。 4 滤波器性能比较:

由于LMS 算法只是用以前各时刻的抽头参量等作该时刻数据块估计时的平方误差均方最小的准则,而未用现时刻的抽头参量等来对以往各时刻的数据块作重新估计后的累计平方误差最小的准则,所以LMS 算法对非平稳信号的适应性差。RLS 算法的基本思想是力图使在每个时刻对所有已输入信号而言重估的平方误差的加权和最小,这使得RLS 算法对非平稳信号的适应性要好。与LMS 算法相比,RLS 算法采用时间平均,因此,所得出的最优滤波

器依赖于用于计算平均值的样本数,而LMS 算法是基于集平均而设计的,因此稳定环境下LMS 算法在不同计算条件下的结果是一致的。在性能方面,RLS 的收敛速率比LMS 要快得多,因此,RLS 在收敛速率方面有很大优势。

图6分别为RLS 算法和LMS 算法在处理过程中的误差曲线,它指出了在迭代过程中的误差减少过程。由图可见,RLS 算法在迭代过程中产生的误差明显小于LMS 算法。由此可见,RLS 在提取信号时,收敛速度快,估计精度高而且稳定性好,可以明显抑制振动加速度收敛过程,故对非平稳信号的适应性强,而LMS 算法收敛速度慢,估计精度低而且权系数估计值因瞬时梯度估计围绕精确值波动较大,权噪声大,不稳定。

图2 幅度为2标准正弦波

图3 幅度为2正弦波叠加带限高斯白噪声的

混迭信号

图4 用LMS 算法提取得到的正弦信号

5 结论:

自适应滤波是信号处理的重要基础,近年来发展速度很快,在各个领域取得了广泛的应用。在实际问题中,迫切需要研究有效、实用的自适应算法。本文在大量文献的基础上,对自适应滤波的两种算法进行了分析和研究。研究内容主要包括理论、算法和通过计算机仿真得出有意义的结果。本文基于自适应噪声抵消系统,对比研究了两类自适应滤波算法在噪声抵消应用中的滤波性能。计算机仿真实验结果表明,两种算法都能从高背景噪声中提取有用信号。相比之下,RLS 算法具有比LMS 好得

多的启动速度和收敛速度,对非平稳信号适应性

图6 各自适应滤波器处理过程中的误差曲线

RLS 算法提取得到的正弦信号

强,其滤波性能明显好于LMS算法,但其计算复杂度高,不便于实时处理。而LMS算法相对存在收敛速度不够快和抵抗突出值干扰能力不够强。值得深入研究的是降低RLS算法的计算复杂度,进一步提高LMS算法的收敛速度并减少其残余(失调)误差。

参考文献:

[1] 沈福民编著,《自适应信号处理》[M],西安: 西安电子科技大学出版社,2001.

[2]罗军辉等编著,《Matlab 在数字信号处理中的应用》[M],北京:机械工业出版社,2005.

[3] 王宏禹编著;《数字信号处理导论》[M],北京:国防工业出版社,1995.

相关文档
相关文档 最新文档