0 引言
自适应滤波器可广泛应用于系统识别、信号处理和数字通信等许多领域。而超大规模集成电路和FPGA的飞速发展,也促进了自适应滤波技术的进步。此外,由于其对干扰频率不敏感,且其权值调整是基于对系统参数的优化,因此,自适应滤波器仍然越来越多地受到人们的关注。
1 LMS自适应滤波器
1.1 LMS算法
最小均方误差(LMS)算法具有计算量小、易于实现等优点,因此,在实践中被广泛应用。LMS算法的基本思想是调整滤波器自身的参数,使滤波器的输出信号与期望输出信号之间的均方误差最小,并使系统输出为有用信号的最佳估计。实质上,LMS可以看成是一种随机梯度或者随机逼近算法,可以写成如下的基本迭代方程:
其中,μ为步长因子,是控制稳定性和收敛速度的参量。从上式可以看出,该算法结构简单、计算量小且稳定性好,但固定步长的LMS算法在收敛速度、跟踪速率及权失调噪声之间的要求相互制约。为了克服这一缺点,人们提出了各种变步长的LMS改进算法,主要是采用减小均方误差或者以某种规则基于时变步长因子来跟踪信号的时变,其中有归一化LMS算法(NLMS)、梯度自适应步长算法、自动增益控制自适应算法、符号一误差LMS算法、符号一数据LMS算法、数据复用LMS算法等。
1.2 LMS自适应滤波器的结构原理
自适应滤波是在部分信号特征未知的条件下,根据某种最佳准则,从已知的部分信号特征所决定的初始条件出发,按某种自适应算法进行递推,在完成一定次数的递推之后,以统计逼近的方式收敛于最佳解。当输入信号的统计特性未知,或者输入信号的统计特性变化时。自适应滤波器能够自动地迭代调节自身的滤波器参数.以满足某种准则的要求,从而实现最优滤波。因此,自适应滤波器具有自我调节和跟踪能力。在非平稳环境中,自适应滤波在一定程度上也可以跟踪信号的变化。图1为自适应滤波的原理框图。
2 LMS滤波器的仿真与实现
2.1 LMS算法参数分析
传统的LMS算法是最先由统计分析法导出的一种实用算法.它是自适应滤波器的基础。通过Matlab仿真对LMS算法中各参数的研究,总结出其对算法的影响。现针对时域LMS算法的各参数进行一些讨论。
(1)步长
步长μ是表征迭代快慢的物理量。由LMS算法可知:该量越大,自适应时间μ越小,自适应过程越快,但它引起的失调也越大,当其大于1/λmax时,系统发散;而该值越小,系统越稳定,失调越小,但自适应过程也相应加长。因此,对步长μ的选择应从整个系统要求出发,在满足精度要求的前提下,尽量减少自适应时间。
(2)级数
自适应滤波器的级数应与噪声通道的传递函数F(z)的阶数一致。事实上,只有在二者相等时,自适应滤波器传递函数才有可能等于F(z),以实现噪声抵消。而当其级数小于F (z)的阶数时,参考通道的噪声将无法与输入通道的噪声抵消,故会引起最小均方差增大;当其级数大于F(z)的阶数时,过多的级数则会引起失调的增大。因此,只有当滤波器的级数等于F(z)的阶数时,自适应滤波器的性能才能达到最佳。