LMS算法

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于LMS的自适应滤波器典型应用的MATLAB实现

学号:131040034 姓名:黄成

摘要:介绍了自适应滤波器的原理和最小均方(LMS)算法, 并且利用MATLAB实现了自适应系统辨识和自适应干扰抵消。

关键词:自适应滤波;最小均方算法;MATLAB

The Realization of Adaptive filter based on LMS by Applying MATLAB

SID: 131040034 Name: Huang Cheng

Abstract: The paper introduces the theory of Adaptive Filter and LMS (least mean square) algorithm. Meanwhile, it manages to use MATLAB to realize the adaptive identifier and interference cancellation.

Keywords: adaptive; LMS; MATLAB

自适应滤波器属于现代滤波器的范畴,自适应信号处理主要是研究结构可变或可调整的系统,它可以通过自身与外界环境的接触来改善自身对信号处理的性能。通常这类系统是时变的非线性系统,可以自动适应信号传输的环境和要求,无须详细知道信号的结构和实际知识,无须精确设计处理系统本身。

1 自适应滤波器原理

自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成(如图1所示)。参数可调数字滤波器可以是FIR数字滤波器或IIR数字滤波器, 也可以是格型数字滤波器。输入信号x(n)通过参数可调数字滤波器后产生输出信号(或响应) y(n), 将其与参考信号(或称期望响应)d(n)进行比较, 形成误差信号e(n)。e(n)(有时还要利用x(n)) 通过某种自适应算法对滤波器参数进行调整, 最终使e(n)的均方值最小。因此, 自适应滤波器实际上是一种能够自动调整本身参数的特殊维纳滤波器。在设计时不需要事先知道关于输入信号和噪声的统计特性的知识, 它能够在自己的工作过程中逐渐了解, 或估计出所需的统计特性, 并以此为依据自动调整自己的参数, 以达到最佳滤波效果。一旦输入信号的统计特性发生变化, 它又能够跟踪这种变化, 自动调整参数, 使滤波器性能重新达到最佳[1]。

图1自适应滤波器的一般结构图

2 自适应滤波器的结构及算法

2.1 自适应滤波器的结构

自适应滤波器的结构有FIR和IIR两种。由于IIR 滤波器存在稳定性的问题, 因此一般采用FIR滤波器。由于FIR滤波器横向结构的算法具有容易实现和计算量少等优点, 在对线性相位要求不严格、收敛速度不是很快的场合,多采用FIR作为自适应滤波器结构。故笔者采用这种FIR横向滤波器结构作为自适应滤波器的结构, 如图2所示

图2 FIR横向滤波器结构

X n=x n,x n−1,x n−2,…,x n−N+1T为自适应滤波器的输入矢量;W n= [w0(n),w1(n),w2(n),…,w N−1(n) ]T是权系数矢量,即自适应滤波器的冲击响应;y(n)为自适应滤波器的输出矢量; n 为时间序列; N为滤波器的阶数[3]。

2.2 自适应的最小均方(LMS)算法流程图

图3 算法流程图

2. 3 自适应的最小均方(LMS)算法实现

由Widrow和Hof f提出的最小均方误差( LMS)算法, 因其具有计算量小、易于实现等优点而被广泛采用(LMS)算法的核心思想是用平方误差代替均方误差。基于最速下降法的最小均方误差(LMS)算法的程序实现步骤如下:

步骤1 初始化,n=0;权向量w0=0;估计向量:e0=d0−d0=d(0)

输入向量:u0=[u0 u−1… u−M+1 ]T=[u0 0… 0 ]T

步骤2 对n=0,1,2,…

权向量的更新:w n+1=w n+μu n e∗(n)

期望信号的估计:d n+1=w H n+1u(n+1)

估计误差:e n+1=d n+1− d n+1

步骤3 令n=n+1,转到步骤2继续。

其中:w(n)为自适应滤波器在时刻n的权向量,u n为时刻n的输入信号矢量,d(n)为期望输出值,e∗(n)是误差信号,N是自适应滤波器的长度,μ是步长因子,是控制收敛速度和稳态误差的参量。

,λmax是输入信号自相关矩阵的最大特征值。初LMS算法收敛的条件为:0<μ<1λ

max

始收敛速度、时变系统跟踪能力及稳态失调是衡量自适应滤波算法优劣的三个最重要的技术

,λmax是输入信号自相关指标。我们知道, LMS自适应滤波算法的收敛条件是:0<μ<1λ

max

矩阵的最大特征值。因此μ(n)应满足:0<μ(n)<1λ

max

3 信号波形图(μ=0.05,N=2)

图4 实际波形处理图

4 结论

仿真结果显示,采用基于LMS算法设计出的自适应滤波器有良好的收敛性、较小的稳态误差,噪声功率较大的情况下也能完成数字滤波任务,在噪声消除方面具有很好的效果和性能. 由于MATLAB具有强大的功能, 仿真后的结果可以很方便地移植到数字信号处理器、可编程逻辑器件等中,为自适应滤波器的硬件实现打下了良好的理论基础。

参考文献

[1] 李梦醒,秦姣华. Simulink仿真技术在数字滤波器设计中的应用[J].湖南城市学院学

报,2005,14(3):66-68.

[2]何子述,夏威等编著:《现代数字信号处理及其应用》,清华大学出版社,2009年版

相关文档
最新文档