主要内容

自适应滤波收敛

本例比较了使用不同LMS算法的自适应滤波器的收敛速度。

简介

自适应滤波器调整其滤波器系数,使其输出与期望的未知系统的输出相匹配。自适应滤波器的一个主要应用是滤波器识别,其中参考信号由未知卷积滤波器滤波,如图所示。相同的信号通过自适应滤波器和未知系统,自适应滤波器试图调整其系数,使两个输出之间的误差最小。自适应滤波器通常在最初的输出上有很大的误差,随着滤波器的收敛,误差会随着时间的推移而下降。

自适应滤波器使用最小均方(LMS)算法调整其系数,使得两个输出之间的误差在均方意义上是最小的。本例考虑了LMS算法的4种不同变体,并比较了使用这些算法的自适应滤波器的收敛速度。

  • LMS -最小均方算法

  • NLMS -归一化LMS算法

  • SELMS - Sign-Error LMS算法

  • SSLMS Sign-Sign LMS算法

设置

使用方差为0.01的零均值高斯白噪声作为滤波器的输入信号。选择一个长度为13且所有系数都设置为1的FIR滤波器作为所需的未知滤波器。您可以选择通过切换手动开关向这些权重添加方差为1e-5的高斯噪声。现在将开关设置为值为0的Constant块,以便权重不包含任何噪声。将自适应滤波器的初始权重设置为0。LMS、NLMS和Sign-Error LMS块的步长为0.2。对于Sign-Sign LMS算法,请选择更合适的步长0.02。每个自适应过滤器都可以单独启用或禁用。使用移动RMS块来计算所需输出的能量和错误信号。在时间范围上以dB规模可视化这些信号。 To examine the convergence of the adaptive filter weights, subtract the adaptive filter weights from the desired filter weights and plot the error using another Time Scope.

从第一个图中可以看出,来自NLMS滤波器的误差信号比其他变体收敛到零的速度快得多,稳态误差超过300 dB。LMS滤波器也能够与未知滤波器的输出紧密匹配,信噪比超过150 dB。从第二个图中,还观察到NLMS和LMS滤波器的权重收敛到所需的滤波器权重,权重之间的最终误差最小。Sign-Error LMS和Sign-Sign LMS滤波器一开始似乎比LMS滤波器收敛得更快,但这些滤波器在滤波器输出中有更大的稳态误差(信噪比约为20 dB)和滤波器权重。

相关的话题