RLS算法的收敛性分析_第1页
RLS算法的收敛性分析_第2页
RLS算法的收敛性分析_第3页
RLS算法的收敛性分析_第4页
RLS算法的收敛性分析_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、RLS与LMS算法的收敛性比较分析 学号:S120101057 姓名:贾雪婷摘 要:介绍了自适应滤波器的基本原理,对最小均方(LMS, Least Mean Squares)和递归最小二乘(RLS, RecursiveL east Squares)自适应算法进行仿真分析及对比研究。仿真结果及实例均表明,两种算法都能有效抑制和抵消各种干扰,但相比之下,RLS算法具有更好的收敛性能及稳定性,除收敛速度快于LMS算法和NLMS算法以及稳定性强外,而且具有更高的起始收敛速率、更小的权噪声和更大的抑噪能力。关键词:自适应滤波;最小均方;递归最小二乘;收敛性;对比研究Abstract: Introduci

2、ng the basic principle of adaptive filter,as for the minimum mean square(LMS, Least Mean Squares)and Recursive Least Squares(RLS, RecursiveL east Squares) adaptive algorithm is applied to the simulation analysis and comparative study. The simulation results and examples indicate that the, two kinds

3、of algorithm can effectively restrain and offset all kinds of interference, but in contrast, RLS algorithm has better convergence performance and stability, In addition to convergence speed faster than LMS algorithm and NLMS algorithm and the stability, but also have higher initial rate of convergen

4、ce、smaller right noise and more noise suppression ability.Key words: adaptive filtering;LMS;RLS; astringency; Comparative study一、 自适应滤波的原理自适应滤波的原理如图一所示:输入信号x(n)通过参数可调数字滤波后产生输出信号y(n),将其与参考信号d(n)进行比较,形成误差信号e(n),e(n)通过某种自适应算法对滤波器参数进行调整,最终使e(n)的均方值最小。如何提高收敛速度、增强稳定性以满足信号处理的高效性、实时性,一直是人们研究的重点和热点。二、 自适应算法(

5、1) LMS算法自适应滤波器在时刻n的向量定义:抽头权向量:参考输入向量:是主输入信号,是期望输出值,是误差信号,也是系统输出值,M是滤波器长度。由维纳-霍夫方程可知,最小均方误差为:实际上,该方程与维纳滤波器结果完全一样。自适应滤波器与维纳滤波器相比,其差别在于它增加了一个识别控制环节,将输出与期望值进行比较,利用误差去控制,使=最小值,从而得到的估计。根据最优的数学算法最陡下降法,下一个权矢量等于现在的权矢量加一个正比于梯度的负值变化量,即有:通过梯度下降法:推导可知:其中算法步骤:步骤一:初始化: 步骤二:更新: 滤波:; 误差估计:; 权向量更新:;其中是用来控制稳定性和收敛速度的步长

6、参数。为确保自适应过程的稳定性,必须满足,其中为输入功率。(2) RLS算法SISO系统动态过程的数学模型: (1)其中,为输入输出量,为噪声。式中展开后得到:模型(1)可化为最小二乘格式: (2)记为待估计的参数。,对于(L为数据长度)。方程(2)构成一个线性方程组,写成;,根据最小二乘法一次完成算法,其参数估计为:。参数递推估计,每取得一次新的观测数据后,就在前次估计结果的基础上,利用新引入的观测数据对前次估计的结果,根据递推算法进行修正,减少估计误差,从而递推地得出新的参数估计值。这样,随着新观测数据的逐次引入,一次接一次地进行参数估计,直到参数估计值达到满意的精确程度为止。算法步骤:步

7、骤一:初始化;,其中I为单位矩阵;步骤二:更新计算更新增益矢量:;滤波:;误差估计:;更新权向量:;更新逆矩阵:;其中,为自相关矩阵的逆矩阵,常数是遗忘因子,且。总上所述:算法实现的主要步骤为:(1)数据采集与生成,取,;(2)对参数的初始化;(3)自适应的滤波处理;(4)滤波器系数更新三、 仿真(1) 仿真过程简介仿真过程按照如下过程进行(1) 信号产生:首先产生高斯白噪声序列w(n),然后将此通过一个简单的二阶自回归 滤波器生成信号,该滤波器的参数为(2)将步骤一生成的信号通过LMS和RLS自适应滤波器进行处理(3)通过改变u值对收敛速度的影响来分析LMS算法的性能以及通过改变值对收敛速度

8、的影响来分析RLS算法的性能。(4)绘制各种图形曲线(5)源代码如下:%(1)信号序列与高斯白噪声的产生%参数初始化a1=1.4; %生成信号所用AR(2)滤波器的参数a2=-0.7;n=2000; %信号点数%信号及白噪声信号序列的初始化x=zeros(1,n)' %信号的初始化w=randn(1,n)' %高斯白噪声的初始化,均值为0,方差为1 x(1)=w(1); %信号前两点的初始赋值x(2)=a1*x(1)+w(2);%信号序列的产生for i=3:n x(i)=a1*x(i-1)+a2*x(i-2)+w(i);%信号由AR(2)产生end%绘制信号和高斯白噪声波形f

9、igure(1)plot(1:n,x,'b:',1:n,w,'r-');legend('信号序列','高斯白噪声') % 图例title('基于AR(2)模型产生的信号x和高斯白噪声w');xlabel('信号点数n');ylabel('x(n)/w(n)');%(2)LMS和RLS算法下的参数a1、a2的收敛曲线%LMS滤波L=2; %滤波器长度u=0.001; %LMS算法下自适应增益常数初始化wL=zeros(L,n);%LMS滤波器的权值初始化for i=(L+1):n X=

10、x(i-1:-1:(i-L); y(i)=X'*wL(:,i); %i时刻输出信号 e(i)=x(i)-y(i); %i时刻误差信号 wL(:,(i+1)=wL(:,i)+2*u*e(i)*X; %i时刻滤波器的权值end;a1L=wL(1,1:n); % a1在LMS算法下值的变化a2L=wL(2,1:n); % a2在LMS算法下值的变化%RLS滤波L=2; %滤波器长度lam=0.98; %RLS算法下lambda取值wR=zeros(L,n);%权系数,初值为0T=eye(L,L)*10;% %RLS算法下T参数的初始化,T初始值为10for i=(L+1):n X=x(i-1

11、:-1:(i-L); K=(T*X)/(lam+X'*T*X);%i时刻增益值 e1=x(i)-wR(:,i-1)'*X; wR(:,i)=wR(:,i-1)+K*e1; %i时刻权值 y(i)=wR(:,i)'*X;%输出信号 e(i)=x(i)-y(i);%预测误差 T=(T-K*X'*T)/lam; %i时刻的维纳解end;a1R=wR(1,1:n); % a1在RLS算法下值的变化a2R=wR(2,1:n); % a2在RLS算法下值的变化%绘制LMS与RLS算法下a1、a2收敛曲线figure(2)plot(1:n,a1L,'r-',1

12、:n,a1R,'b:',1:n,a2L,'g-',1:n,a2R,'m-.',1:n,a2,'k-',1:n,a1,'k-');legend('LMS-a1变化','RLS-a1变化','LMS-a2变化','RLS-a2变化','a1收敛值','a2收敛值',0); % 图例title('LMS与RLS算法对比');xlabel('信号点数n');ylabel('对应a1、a2的

13、值');%(3)LMS算法下不同u值的参数收敛曲线wL=zeros(L,n,3);eL=zeros(n,3); % LMS算法下误差初始化yL=zeros(n,3); % LMS算法下滤波器输出初始化u=0.001,0.003,0.006; %不同的u值 for j=1:3 for i=(L+1):n yL(i,j)=x(i-1:-1:i-2)'*wL(1:L,i-1,j); eL(i,j)=x(i)-yL(i,j); wL(1:L,i,j)=wL(1:L,i-1,j)+2*u(j)*eL(i,j)*x(i-1:-1:i-L); endenda1L1=wL(1,1:n,1);a

14、1L2=wL(1,1:n,2);a1L3=wL(1,1:n,3);figure(3)plot(1:n,a1L1,'b-',1:n,a1L2,'r:',1:n,a1L3,'c-.',1:n,a1,'k') % 画图显示不同u值下LMS算法性能差别legend('u=0.001','u=0.003','u=0.006','a1收敛值',0) % 图例title('LMS算法下不同的u值对a1收敛速度影响')xlabel('信号点数 n')y

15、label('对应a1的值')%(4)RLS算法下不同lambda值的参数收敛曲线wR=zeros(2,n,3); % RLS算法下自适应滤波器参数初始化eR=zeros(n,3); % RLS算法下误差项初始化yR=zeros(n,3); % RLS算法下滤波器输出初始化lam=1,0.98,0.94;for j=1:3 for i=(L+1):n xR=x(i-1:-1:i-2); k=(T*xR)/(lam(j)+xR'*T*xR); T=(T-k*xR'*T)/lam(j); eR=x(i)-xR'*wR(1:2,i-1,j); yR(i,j)=

16、xR'*wR(1:2,i-1,j); wR(1:2,i,j)=wR(1:2,i-1,j)+k*eR; endenda1R1=wR(1,1:n,1);a1R2=wR(1,1:n,2);a1R3=wR(1,1:n,3);figure(4)plot(1:n,a1R1,'b-',1:n,a1R2,'r:',1:n,a1R3,'c-.',1:n,1:n,a1,'k') % 画图显示不同lamda值下RLS算法性能差别legend('lam=1','lam=0.98','lam=0.94'

17、;,'a1收敛值',0) % 图例title('RLS算法下不同的lam值对a1收敛速度影响')xlabel('信号点数 n')ylabel('对应a1的值')(2)仿真结果信号和高斯白噪声波形如图(1)所示:图1 信号和高斯白噪声波形图2 LMS算法和RLS算法收敛曲线对比图3 u对LMS收敛速度的影响图4 对RLS收敛速度的影响(3)结果分析(1) 由(图 2)可以看到在u和值相当的情况下,RLS比LMS具有更快的收敛速度,但是RLS权系数收敛后出现了较大的噪声,是因为RLS中有效记忆长度只有49.(2) 由(图 3)可知u越

18、小,LMS算法的收敛速度越慢,但权系数收敛后噪声越小。(3) 有(图 4)可知越大,RLS算法的收敛速度越慢,但权系收敛后噪声越小,当为1时看出收敛后是几乎没有噪声的,因为有效记忆长度此时为无穷大。由仿真结果可以看出, 这两种算法都能有效的恢复原始的语音信号, 但RLS算法比LMS算法有更快的收敛性。四、 结论LMS算法其优点是结构简单,算法复杂度低,易于实现,稳定性高,便于硬件实现,但是这种算法收敛速度慢,对快速变化的信号不适合。RLS算法是基于最小二乘准则的精确方法,它的收敛速度快,稳定性强, 因此常被应用于实时系统识别和快速启动的信道均衡。此外还有更多其他的算法值得去研究。例如EWLS算法,归一化最小均方算法(NLMS),牛顿算法等。自适应滤波有着广阔的应用前景,如自适应噪声抵消技术就是基于自适应滤波原理的一种扩展,如果将自适应算法和小波、混沌分别结合起来,将会取得更大突破。参考文献1 David S,Leeds. Adaptive Noise Cancellation of Coupled Transmitter Burst Noise

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论