比例自适应滤波器设计_第1页
比例自适应滤波器设计_第2页
比例自适应滤波器设计_第3页
比例自适应滤波器设计_第4页
比例自适应滤波器设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、目录摘要1Abstract2第一章 绪论31.1 研究背景31.2 研究现状31.3 本文内容及安排5第二章 理论基础62.1 NLMS算法概述62.2 MATLAB简介72.3 MATLAB仿真7第三章 PNLMS算法93.1 PNLMS算法概述93.2 MATLAB仿真10第四章 IPNLMS算法124.1 IPNLMS算法概述124.2 MATLAB仿真12第五章 MPNLMS算法145.1 MPNLMS算法概述145.2 MATLAB仿真14第六章 总结与展望166.1 本文总结166.2 问题与展望16参考文献17致谢19摘要所谓自适应滤波器就是可以通过迭代的方式来调节自身参数,并且

2、这个调节方式是自动的,通过某种最优准则来实现算法的改进、优化滤波器。基于维纳滤波理论的最小均方差算法是LMS算法是自适应算法中,结构简单,但是性能却很稳定的一种算法,它以易于实现,计算量小的优点受到众多研究者们的青睐并得到了广泛应用。当然,LMS算法也有它的局限性,它的收敛速度有限,这就使得其应用范围受到了限制。因此,研究者们对其进行改进,也有众多改进算法,NLMS、PNLMS、IPNLMS、MPNLNS算法就是近几年比较流行的算法,本文所做的工作是在系统辨识模型下对这几种比例自适应算法进行MATLAB仿真,并对其性能进行分析。关键词:自适应滤波器,稀疏性,MATLAB仿真作 者:肖文豪指导老

3、师:倪锦根AbstractThe so-called adaptive filter can adjust its parameters by iterative method, and this way is automatic, the algorithm can be improved by some optimal criterion, and the filter can be optimized. The minimum mean square error (LMS) algorithm based on Wiener filter theory is an adaptive al

4、gorithm with relatively simple structure but stable performance, which is easy to implement. The advantages of small computational complexity are favored by many researchers and widely used. Of course, the LMS algorithm also has its limitations, and its convergence speed is limited, which limits its

5、 application scope. Therefore, researchers have improved it, and there are many improved algorithms, such as NLMS、PNMS、IPNLMS、MPNLNS algorithm, which is a hot algorithm in recent years. The work of this thesis is to simulate these proportional adaptive algorithms by MATLAB under system identificatio

6、n model and analyze their performance.Keywords: adaptive filter,sparsity,MATLAB simulationWritten by Xiao WenhaoSupervised by Ni Jingen第一章 绪论1.1 研究背景随着信息化的普及,通信技术的需求也越来越高,语音通信是通信的主要方式。那我们的生活来说,我们选择手机运营商的时候,考虑的第一点就是通话质量,所以这就使得如何提升通信质量成为一个热门项目。由于人的耳朵对于回声的敏感性,这使回声称为通话质量最大的影响因素,所以大家普遍把重点放在消除回声。回声消除主要由声学

7、回声消除和网络回声消除,研究自适应滤波回声消除的算法重点也在这两方面。这个问题颇受关注,最早在一九六零年由贝尔实验室提出,其核心问题是自适应回声消除算法。在网络回声信道和声学回声信道中,我们可以发现他们都具有稀疏性这一共同特性,也就是说,在其信道脉冲响应的系数中,大部分系数的值为零,或者接近零1,这就是稀疏脉冲响应。自适应滤波传统算法,比如LMS(最小均方法)2、NLMS(归一化最小均方法)3,他们在处理稀疏脉冲响应的时候收敛速度会很慢,因为以上两种算法并非是为了稀疏信号设计的,所以当信号是稀疏脉冲响应时效果就会恶化,这就需要提出一种可以处理稀疏脉冲响应的算法。1.2 研究现状处理系统稀疏特性

8、的想法在上世纪90年代被提出,第一个成比例的算法是二十一世纪初由杜特韦勒提出的成比例的NLMS ( PNLMS)算法4。针对其稀疏特性,自适应滤波器在每一次迭代中成比例独立更新,也就是每个参数相应的步长和幅值成比例。每经过一次迭代,所有参数都会重新按照这个方法进行分配,使其收敛速度变快。杜特韦勒结合了NLMS对稀疏信道辨识性进行分析,发现NLMS在这方面性能较差,提出了自适应分配步长的想法以及成比例的回声消除算法-PNLMS算法。标准PNLMS算法是依据当前滤波器权值系数的估计值进行更新,S. L. Gay在此基础上提出一种计算更简单的PNLMS+算法。其基本思想划分奇偶迭代次数,奇数次与PN

9、LMS算法一样,偶数次将其转化为NLMS算法,也就是说PNLMS+算法是在两种算法之间交替进行。这种算法相对于标准PNLMS算法,降低了稀疏性的影响同时保证了性能,在处理稀疏脉冲响应时,这种算法有良好的性能。邓红阳将结合部分更新的方法,降低了计算难度。标准PNLMS算法计算成比例因子没有最优准则,是一种特定方法。为了进一步改进,邓红阳用最快下降法来重新推导PNLMS算法得到了准则PNLMS(MPNLMS)5。一开始,MPNLMS算法使用线性分段函数替代对数函数,在保证性能相近的情况降低计算难度。PNLMS算法初始化和成比例性是由开始设定好的参数控制的,其性能也主要受这个影响,这不能保证比例矩阵

10、中的增益分配都是合理的,基本思想是大、小权值参数分别对应大、小步长参数,非活跃权值系数占得比重较大,但是得到的增益都很小而且基本相同,这导致这些非活跃权值参数收敛十分缓慢,整体收敛速率变慢,效果并不理想。F. das Chagas de Souza提出了IAF-PNLMS算法来改善增益分配方法,这种方法具有独立对应的激活因子,每个权值系数受激活因子的影响,更新成比例矩阵时,活跃和非活跃权值系数都会获得各自的激活因子,这就相对于IPNLMS算法增益分配更合理,在性能相近的条件下,提高了非活跃权值系数的收敛速率,所以整体速率得到提高。IAF-PNLMS算法相对之前提高了收敛速率,但是非活跃参数的增

11、益在活跃参数接近稳态时,会减少,得不到理想的收敛速率。F. das Chagas de Souza对其作出改进,提出了增强型IAF-PNLMS 算法 (EIAF-PNLMS),可以保证非活跃权值系数收敛速率保持在较高水平即使误差小于设定值。增强型算法可以再保持原有收敛速率的情况下降低稳态失调误差。两种算法都是为处理稀疏系统辨识提出的,但是在实际的应用效果并不好。标准PNLMS算法受系统的稀疏度影响大,且表达式并不是基于最优化的准则,所以在一开始快速收敛之后会变慢。所以收敛速率会随着信道稀疏性的降低而减慢,在处理密集信号时,其收敛速度甚至比NLMS更慢。为了提高PNLMS算法这方面的处理能力,B

12、enesty 提出了一种新型的成比例矩阵更新方法,这种算法被称为IPNLMS算法6。IPNLMS在确保处理稀疏脉冲响应能力的情况下,受系统的稀疏度影响相对之前会降低,相对之前其处理密集脉冲响应的能力要强很多。C.Paleologu提出一种基于范数的IPNLMS7,基于范数的IPNLMS优于标准IPNLMS,为了处理稀疏度较高的情况,还在脉冲响应的计算中引入了幂函数。成比例的算法与NLMS相同的是,性能主要收步长影响,收敛速率会随着步长增大而变快,但是误差也会变大;反之,步长小误差会变小,但是收敛速率也会变慢,这就使得大家想要一种保证速率又不会造成误差的方法。Mahale提出了SVSPNLMS算

13、法8其基本思想是把变步长与线性分段成比例相结合。C. Paleologu利用变步长方法来提高PAPA算法的性能,将MPAPA算法与VSS技术相结合得到一种更高效的仿射投影算法VSS-MPAPA 。在PNLMS算法被提出的同时,Kivinen 和Warmuth在提出了LMS算法的另一种形式带有正负权值的幂梯度算法(算法)9。主要用于带时变网络时延的网络回声消除,它的更新准则在辨识稀疏脉冲响应很有效,收敛速度要快很多,追踪性能也有所提高。1.3 本文内容及安排本文主要介绍了PNLMS、IPNLMS以及MPNLMS算法,并且通过MATLAB仿真,比较其性能与NLMS算法的优劣。第一章介绍了自适应滤波

14、器的研究背景以及研究现状,以及比例自适应滤波器的发展。第二章对传统算法NLMS算法和MATLAB软件进行介绍,并通过MATLAB对NLMS算法进行仿真。第三章介绍了PNLMS算法并通过MATLAB进行仿真与NLMS算法进行比较。第四章介绍了IPNLMS算法并通过MATLAB进行仿真与NLMS算法进行比较。第五章介绍了MPNLMS算法并通过MATLAB进行仿真与NLMS算法进行比较。第六章对全文进行了总结。第二章 理论基础2.1 NLMS算法概述NLMS算法是在LMS算法的基础上进行归一化,称为归一化LMS算法。NLMS算法可以看成是一种特别的变步长LMS算法,主要用于回声消除领域。在结构方面,

15、自适应滤波器使用NLMS算法和LMS算法是相同的,都属于横向滤波器10,两种算法的区别在于权值控制器方面,这种差异是由两者算法中的系数更新项不同所引起的,NLMS算法是在LMS算法上进行了改进。回声消除系统结构如下图2-1:图 2-1回声消除系统结构图设置自适应滤波器系数的所有初始值为0,即,其长度为M。对输入信号进行采样,每次迭代选取M个数据进行处理,输入矢量为: (2-1)加权矢量为 (2-2)系统输出为 (2-3)相对于期望信号的误差为 (2-4)根据最小均方误差准则,此时要求最小时的,由于是对其求导并令其等于0才得到的,而在其取最小值的时候不可导,所以使用。LMS算法的滤波器系数迭代系

16、数公式为: (2-5)其中,是步长因子,在LMS算法中由于是固定值,这就导致其收敛速率慢。为了改进,我们将其换成可变步长因子,就可以得到NLMS算法,其迭代式为: (2-6)其中,是修正的步长常量,是一个很小的值,通常取0.0001,防止输入矢量的内积太小从而导致太大,会使性能下降。2.2 MATLAB简介 MATLAB是用于数值计算和可视化的软件。主要功能为数值分析、矩阵运算、信号处理和图形显示,提供一个高效、完备、友好的用户环境。其优势是可以进行方便快捷的矩阵运算、绘制函数等。此外,它还具有强大的语言功能,用户编写程序是按照数学形式进行的,允许操作者像使用写公式的方法编写程序。它的操作和功

17、能函数指令是以计算机和数学书上的简单单词表达的,在最初的一段时间它是由C语言开发的,它的程序流控制语句同语言数量少,而且之前差异小,方便学习掌握。MATLAB功能强大,它可以提供很多相当便捷的工具,比如对于图形的绘制和处理,数据处理,矩阵运算等。MATLAB有很多主函数和工具包,并且对操作者开放,可以根据个人需要修改,这都可以为操作者节省很多时间。因此,MATLAB已成为最流行的软件,广泛地应用于多个领域,本文的算法仿真就是使用MATLAB完成的。2.3 MATLAB仿真为了大致了解NLMS算法的具体性能,我们在网络回声消除的情况下,使用MATLAB进行仿真。输入的信号为复高斯白噪声,自适应滤

18、波器的长度和取成,迭代次数为3000得到结果如图2-1。图 2-1 NLMS算法,高斯白噪声仿真结果我们在之前高斯白噪声的基础上,将其生成有色信号,来观察NLMS算法性能的变化,如图2-2,可以看出NLMS算法在处理白噪声的情况下更有优势,相对来说收敛速率要比在处理有色信号的时候快。图 2-2NLMS算法,有色信号仿真结果第三章 PNLMS算法3.1 PNLMS算法概述尽可能加快活跃参数的收敛,在自适应滤波器分辨稀疏度较高的脉冲这一任务中起着很重要的作用。PNLMS算法就是杜特韦勒针对这一点所提出的,这个算法的优势在于,先通过上一次更新的估计值来计算滤波器参数,然后将各自的自适应步长分给每一个

19、滤波器参数,大的步长被分配给大的参数,所以参数的收敛速度会变快,活跃的参数收敛速度会比非活跃参数(零或者接近零的参数)快得多。我们先引入稀疏度的概念11,它基于脉冲响应的1- 2范数之间的关系,公式为 (1)其中维向量表示设备的脉冲响应,和分别为1-和2模量范围从0(均匀滤波器的稀疏度)到1 (滤波器的稀疏度)。PNLMS算法由以下方程组组成:系数更新() (2)误差信号 (3)矩阵收增益 (4) 个体增益 (5) 比例函数 (6)激活因子 (7)是步长参数,是一个正则化参数,并且是无穷范数。变量表示所期望的信号,是一个零均值的独立和同分布的(i.i.d)测量噪声,方差为,与系统中的任何其他信

20、号无关。输入向量为,自适应滤波向量表示为。矩阵在系数之间分配增益,这取决于它们的大小,控制单个步长调整。在(7)中给出的激活因子依赖于自适应滤波系数向量以及和,分别是比例性(或激活)和初始化参数。参数允许在时启动适应过程,此时所有的过滤系数都被初始化为零。参数在其大小小于最大系数时,阻止单个系数的冻结。3.2 MATLAB仿真为了了解PNLMS算法的具体性能,我们在网络回声消除的情况下,依靠自适应滤波器对稀疏冲激响应进行系统辨识来实现回声消除,并使用MATLAB进行仿真。输入的信号为复高斯白噪声,自适应滤波器的长度和取成,迭代次数为3000。仿真结果如图3-1。图3-1 PNLMS算法,白噪声

21、仿真结果MATLAB仿真是PNLMS算法与NLMS算法进行比较,根据图像可以看出,处理白噪声时PNLMS算法收敛速率整体要优于NLMS算法,尤其是迭代次数较低时,PNLMS要比NLMS算法快很多,不过在迭代次数增大时两种算法的变化趋势相近。同样的在白噪声的基础上生成有色信号,得到仿真结果,如下图3-2。3-2 PNLMS算法,有色信号仿真结果根据图3-2我们可以看到在处理有色信号时,PNLMS算法性能相对于之前处理白噪声有所提升,不过随着迭代次数的增大,PNLMS算法的收敛速率会下降趋于平缓,不过整体性能还是优于NLMS算法。第四章 IPNLMS算法4.1 IPNLMS算法概述PNLMS算法是

22、针对于更好地处理稀疏脉冲响应提出的,所以对稀疏性比较敏感,相对于NLMS算法其收敛速度在一定程度上确实有所改善,不过当冲激响应不是稀疏信号或者稀疏特性不明显的时候,其收敛速率会下降。针对这种情况,Benesty提出了IPNLMS算法。PNLMS 算法采用了滤波器系数的当前估计值与某个固定值之间最大的那个,IPNLMS算法在这一点进行了修正,其基本思想是将滤波器系数向量的当前估计值的均值加到每一个系数的比例步长参数上,以此确保每一个系数的比例步长参数分配的值都是相对合理的,并且可以消除误差所带来的负面影响,这样可以提高对稀疏系统的辨识性,从而使其处理稀疏性脉冲响应时有着良好的性能并且确保处理非稀

23、疏性脉冲响应的时候效果不会太差。在自适应滤波中,期望响应一般满足下式(4-1) (4-1)其中,表示转置运算符,表示由输入信号的 个样值构成的输入向量,为待估计系统的脉冲响应,表示系统噪声。通常假设、和的均值为零若均值不为零,可对其进行预处理。 为自适应滤波器在时刻的系数向量,为步长参数,为很小的正则化参数,为误差信号且满足,则IPNLMS算法的迭代公式可表示为12, (4-2)其中,表示的对角增益矩阵,该矩阵的第个对角元素由下式确定 (4-3)其中,表示系数向量的范数,为值很小的正常数,取值范围是,通过选取不同的值,使算法在NLMS算法和PNLMS算法之间交替进行13,取值较小时,算法更接近

24、于NLMS算法,反之,则接近于PNLMS算法。4.2 MATLAB仿真与PNLMS算法相同,我们在相同的条件下使用MATLAB对IPNLMS算法进行仿真,输入的信号为复高斯白噪声,自适应滤波器的长度和同样取成,迭代次数为3000。仿真结果如图4-1。图4-1IPNLMS算法,白噪声仿真结果IPNLMS算法在迭代次数较低的情况下性能提升明显,不过随着迭代次数的增加稳定性会变差,而且其性能会逐渐接近于NLMS,同样的在白噪声的基础上生成有色信号,得到仿真结果,如图4-2。4-2IPNLMS算法,有色信号仿真结果 在处理有色信号时,相对于处理白噪声IPNLMS算法性能有了很大的提升,开始的收敛速率很

25、快,不过稳定性还是较差,而且经过开始的迅速收敛变化曲线会逐渐趋于平缓。第五章 MPNLMS算法5.1 MPNLMS算法概述通过第三章对PNLMS算法的分析,可以发现,在一开始收敛速度很快,但是后期会变慢而且稳定性也会下降。Hongyang Deng由最速理论推导出了得到最优步长的方法,Hongyang Deng认为最优步长应该是目标冲激响应幅度的对数函数14,并用其对数函数替代了PNLMS中目标冲激响应的幅度。他提出了MPNLMS算法在一定程度上可以使步长最优,这就在一定程度上克服了PNLMS算法收敛速度会逐渐变慢的问题。MPNLMS算法如下15 (5-1)其中,是整体步长参数,是调整参数,其

26、功能是防止被零整除保证稳定。增益矩阵是对角矩阵,用来调整滤波器独立步长,其对角元素按照以下公式计算 (5-2) (5-3) MPNLMS算法的描述如下: (5-4) (5-5) (5-6) (5-7)其中,参数的选择主要依据被测噪声,对于一般情况,低于60的噪声影响可以忽略,所以我们取,是一个很合适的选择。5.2 MATLAB仿真在相同的条件下使用MATLAB对MPNLMS算法进行仿真,输入的信号仍然为复高斯白噪声,自适应滤波器的长度和同样取成,迭代次数为3000。仿真结果如图5-1。图5-1 MPNLMS算法,白噪声仿真结果同样与NLMS算法进行比较,我们可以看出MPNLMS算法整体要优于N

27、LMS算法,不过其提升相对于NLMS算法不太大,而且在迭代次数提高时两种算法性能趋势接近,同样的在白噪声的基础上生成有色信号,得到仿真结果,如图5-2。图5-2MPNLMS算法,有色信号仿真结果在处理有色信号时,MPNMS算法相对之前有所下降,可以看出MPNLMS在处理白噪声的时候收敛速率更快,不过其收敛速率变化相对稳定。19第六章 总结与展望6.1 本文总结自适应滤波器在可以不用事先知道输入信号的特性的情况下处理信号,这使它得到广泛的应用。不过传统算法NLMS算法在处理稀疏性信号的时候,其处理速度会变慢,其稳态误差也会增加,因此针对稀疏性系统提出了比例化的概念,本文对PNLMS、IPNLMS

28、以及MPNLMS算法进行了介绍。本文首先简单介绍了成比例NLMS算法的发展过程,并且对传统算法NLMS算法进行了分析。第三章至第五章分别对PNLMS、IPNLMS以及MPNLMS算法进行了介绍,并通过MATLAB进行仿真,对比三种算法在处理白噪声和有色信号时性能的差异。从结果来看,相对于NLMS算法,三种算法的性能都有所提升,具有实用性。6.2 问题与展望成比例算法是根据归一化最小均方法改进的,相对于NLMS算法具有一定优势但也并非完美。比如PNLMS算法受系统稀疏性影响较大,MPNLMS算法计算比较复杂,而且与NLMS算法相同的是,成比例算法同样受步长影响很大。因此,如何提高算法的收敛性能,

29、需要进一步研究。参考文献1 文昊翔, 陈隆道, 蔡忠法. 改进仿射投影算法及其在电子回声消除中的应用J. 学报, 2012, 40(6):1229-1234.2 洪丹枫, 苗俊, 等. 一种变步长凸组合LMS自适应滤波算法改进及分析J. 电子学报, 2014, 42(11):2225-2230.3 刘立刚, FUKUMOTO Masahiro, 张世永. 一种变步长proportionate NLMS自适应滤波算法及其在网络回声消除中的应用J. 电子学报, 2010, 38(4):973-978.4 Duttweiler D L. Proportionate normalized least

30、mean squares adaptation in echo cancellers J. IEEE Transaction Speech and Audio Processing, 2000, 8(5):508-518.5 Dikshit V G. Mahapatra P R. Mcdium-coupled bus based INS/GPS sensor fusion for accuratc and reliable positioningC. Proceedings of ESAV Conference, Capri, Italy, 2008.6 Benesty J, Gay S L. An improved PNLMS alogorithm A. IEEE Internation

温馨提示

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

评论

0/150

提交评论