APP下载

抑制多模噪声的变步长NLMS?Newton算法研究

2018-01-20祁霄山拜·达拉拜解倩倩

现代电子技术 2018年1期

祁霄+山拜·达拉拜+解倩倩

摘 要: 实际生活中产生的多模噪声会对信号产生严重的破坏甚至损失。传统LMS算法不仅收敛速度慢而且存在较大的稳态误差和失调量,故已不能很好地控制噪声。通过分析NLMS算法和Newton算法的优点,提出一种新的NLMS?Newton算法。该算法的收敛速度高,计算复杂度减小,且应用了随信噪比变化的变步长并修正了自相关矩阵,降低了算法收敛后的稳态误差和失调量。通过仿真表明,NLMS?Newton算法在收敛速度及稳态误差等方面都有了较大改善,并且能在很好地抑制多模噪声的同时提取出有用信号。

关键词: 多模噪声抑制; NLMS算法; Newton算法; NLMS?Newton算法; 自相关矩阵; 变步长

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2018)01?0047?04

Abstract: Signal can be damaged and even lost because of the multi?mode noise generated in actual life. Since the traditional LMS algorithm has slow convergence speed, big steady?state error and high maladjustment, it can′t control the noise perfectly. By analyzing the advantages of NLMS algorithm and Newton algorithm, a new NLMS?Newton algorithm is proposed. The algorithm has fast convergence speed and low calculating complexity, in which the step length changed with signal?to?noise ratio is applied and the autocorrelation matrix is corrected to reduce the steady?state error and maladjustment after the algorithm convergence. The simulation results show that the NLMS?Newton algorithm has improved greatly in the aspects of convergence speed and steady?state error, and can extract the useful signal while suppressing the multi?mode noise.

Keywords: multi?mode noise suppression; NLMS algorithm; Newton algorithm; NLMS?Newton algorithm; autocorrelation matrix; step?length variation

0 引 言

信号处理[1]中较为经典的应用就是自适应噪声抑制器,能够从混合有噪声的信号中分离出正确信息。随着计算机和信号处理技术的发展,已经在多个领域广泛应用,比如语音处理、生物、医学、雷达和自动控制等。其基本原理就是将混合有原始噪音信号的输入信号或者参考信号通过滤波器过滤,从而使噪音信号从混合信号中衰减或者直接滤除掉。其中,原始信号是从安装在信号很弱的噪声场中的一个或多个传感器中得到的。在较多情况下,影响信号接收的噪声为高斯的或者可以作为高斯假设。而在实际中存在多模噪声,用传统的LMS算法不能提取出信号。

文献[2?4]对抑制高斯噪声的LMS算法做了改进,从不同的角度对算法的特性进行研究,实验证明这些改进的算法都能很好地抑制高斯噪声。但在非平稳的多模噪声环境下,上述算法都会有自身的缺陷,比如NLMS算法的步长就近似于一个常数,而固定步长会使算法在收敛速度、跟踪速度、稳态误差之间存在矛盾。为了更好地解决这些问题,本文将修正NLMS?Newton算法中的自相关矩阵,并对步长归一化,提出步长随输入信噪比变化的NLMS?Newton算法,最终对其性能进行实验仿真验证。

1 非高斯噪声模型介绍

噪声可以按概率密度函数的形状分类,函数形状为单峰的噪声叫做单峰噪声,函数形状为双峰的噪声叫做双峰噪声,函数形状为多峰的噪声叫做多峰噪声。多峰噪声[5]即多模噪声,由双峰噪声演化而来。其数学模型[6]如下:

1) 正态分布[g(t)]叠加[m]元码间串扰的概率密度为:

[p2(x)=12πσi=1mPiexp(x-bi)2-2σ2] (1)

式中:[i=1mPi=1]。[Pi]的概率服從两个分布:均匀分布,即[Pi=1m];二项式分布,即[Pi=mi2-m]。

2) 高斯过程[g(t)]迭加振荡过程,概率密度为:

[p1(x)=1(2π)m2πσ02π…02πexpx-i=1mBicosθi2-2σ2dθ1…dθm] (2)

式中:[σ2]是方差;[Bi]表示迭加振荡的振动幅度;[θi]表示迭加振荡的相位。

3) 模型1的特例,当[bi]与[σ]满足一定条件时,模型1可以写成如下形式:

[p3(x)=Cexp-x2m2σ2] (3)

式中:[xi=xi-1-bisign(xi-1),][i=1,2,…,m,][sign]为符号函数。

4) 混合模式。其概率密度函数为:endprint

[p4(x)=1(2π)m2πσ02π…02πj=1kPj?expx-bj-i=1mBicosθi2-2σ2dθ1…dθm] (4)

式中[σ2]为高斯分量的方差。

2 NLMS?Newton算法

当输入自适应滤波器信号的相关性很强时,[Rx]的条件数增大,使LMS算法和NLMS算法都收敛很慢[7],为了能增加算法的收敛速度,改变梯度估计的幅度,避免梯度估计噪声放大,可以采用NLMS?Newton算法,该算法基于输入信号二阶统计量的方法。

该方法的自相关矩阵的无偏估计公式为:

[R(n)=1n+1i=0nO(i)OΗ(i)] (5)

则LMS?Newton算法的迭代步骤为:

1) 初始化:[w(0)=0,][w(0)]是[L]维列向量。[R-1(0)=δ-1E,][δ]为一个小的正数,[E]为[L]阶单位矩阵。

2) 算法迭代式:

[R-1o(n)=n+1nR-1o(n-1)-R-1o(n-1)O(n)OH(n)R-1o(n-1)n+OΗ(n)R-1o(n-1)O(n)] (6)

[w(n+1)=w(n)+αR(n)O?(n)O(n)2e(n)] (7)

式中,[α]为归一化步长,取值为[0<α<2。]使用这种选择是在对自相关矩阵和梯度进行噪化时保证算法收敛。

3 修正相关估计的NLMS?Newton算法

该算法的思想是为了把自相关矩阵的逆矩阵应用在权值更新公式中,比传统算法优化的原因是更多地使用了输入信号的信息。因此,在算法中估计自相关矩阵显得尤为重要[8?9]。对相关矩阵的估计有很多方法,所利用的信息也可以不同。下面将通过改进的相关矩阵估计来提高算法的性能。

3.1 相关矩阵的估计方法

将式(1)表示成递归形式:

[R(n)=nn+1R(n-1)+1n+1O(n)OΗ(n)=λ1(n)R(n-1)+λ2(n)O(n)OΗ(n)] (8)

式中:[λ1(n)=nn+1;λ2(n)=1n+1]。

扩展矩阵求逆定理为:

[[A+BCD]-1=A-1-A-1B[DA-1B+C-1]-1DA-1] (9)

取[A=λ1(n)R(n-1);][B=DΗ=O(n),][C=λ2(n),]可以得到:

[R-1o(n+1)=1λ1(n)R-1o(n)-R-1o(n)O(n+1)OH(n+1)R-1o(n)λ1(n)λ2(n)+OΗ(n+1)R-1o(n)O(n+1)] (10)

从式(8)可以看出:自相关矩阵的估计由两部分组成,一是“原”信号对矩阵的作用,二是“新”信号对矩阵的作用。根据不同的噪声背景下选择不同的表达式。为了使“新”信号占据更大的权值更新比值,可以适时的降低“原”信号的比值,通过仿真实验证明,上述方法是可以行的。所以要选择适当的[λ]值。

3.2 修正的NLMS?Newton算法

式(8)中令[λ1(n)=λ,][λ2(n)=1,]代入到式(10),可以得到修正自相关矩阵估计的NLMS?Newton算法。其算法步骤如下:

1) 初始化:[w(0)=0,][R-1(0)=δ-1E;]

2) 对[n=1,2,…,M-1]进行循环([M]为训练序列的样值数);

[R-1o(n+1)=1λR-1o(n)-R-1o(n)O(n+1)OH(n+1)R-1o(n)[λ+OΗ(n+1)R-1o(n)O(n+1)]] (11)

[w(n+1)=w(n)+αR-1o(n)O?(n)O(n)2e(n)] (12)

该算法对“过去”输入信息具有指数“遗忘”的特征([λ]为遗忘因子),它可以加快算法的收敛和跟踪速度,并且算法还对初始值的依赖性大大降低。

4 步长随信噪比变化的NLMS?Newton算法

修正的NLMS?Newton算法可以提高算法的收敛速度,通过修正自相关矩阵,也适当的降低了算法的复杂度。但在多模噪声背景下,信号受损非常严重,结果会出现较大的稳态误差。所以本文用步长随信噪比变化的NLMS?Newton算法。当仿真实验的输入较大或者有较小的信噪比时,为降低失调造成的误差、提高收敛速度,实验时应相应地降低或增大步长的大小;信噪比就是用自适应噪声抵消器和滤波器的输出功率的比值替换输入信噪比,如图1所示。

若系统收敛,其结果近似于期望值,期望值的功率为:

[Pd(n)=1Ni=0n-1[d(n-i)+v(n-i)-y(n-i)]2=1Ni=0N-1e2(n-i)] (13)

自适应噪声滤波器的输出功率为:

[Po(n)=1Ni=0N-1y2(n-i)][=1Ni=0N-1OΤ(n-i)W(n-i)2] (14)

式中:[N]是[Pd(n)]和[Po(n)]的总数,应大于滤波器的阶数。输入信噪比[SNR=Pd(n)Po(n)],为了使步长具有较慢的变化,将信噪比开方以减小过大的信噪比时,设:

[K=SNR=Pd(n)Po(n)] (15)

[α=B?1-1+e-AK] (16)

式中[A,B]为常数,为保证算法的稳定性,[B]的取值范围为[0

则步长随信噪比变化的表达式为:

[μ(n)=αOΤ(n)O(n)=B?1-1+e-AKOΤ(n)O(n)] (17)

从式(17)中可以看出,[1-1+e-AK]是输入信噪[K]的函数,其值在0~1范围内,信噪比与[α]取值范围成反比。

在NLMS?Newton算法中[α]范围为[0<α<2],为保证仿真实验的稳定性,参数[B]的范围应为[0

5 仿真与结果分析

为了检验多模噪声背景下自适应噪声抑制器的滤波性能,使用Matlab仿真实验对LMS和优化的NLMS?Newton算法、变步长的NLMS?Newton算法进行仿真。

1) 多模噪声序列[O(n)]由以下ARMA(2,2)过程产生。

[v2(n)-1.7v2(n-1)+0.6v2(n-2) =e(n)-0.64e(n-1)-2.6e(n-2)] (18)

式中[e(n)]为非高斯白噪声。

2) 要估计的正弦序列(本文取1 000个样本值)为:[d(n)=sin2*pi*0.02*[0:N-1],][N=1 000]。

3) 三种算法中的参数设置:通过反复的仿真实验,以下参数分别为各种算法的最佳值。对于LMS算法,取[μ]=0.05;对于修正的NLMS?Newton算法,[λ]=0.8,[α]=1.2;对于变步长的NLMS?Newton算法,[B=0.4,][A=]10 000。滤波器的阶数为10阶。

4) 结果分析

图2为正弦信号的仿真图,图3为受多模噪声干扰的信号,由图3可知,受多模噪声干扰后的正弦信号受损严重,失真厉害。

图4是LMS算法仿真的收敛曲线,从中可以知道,多模噪声背景下,此算法不仅收敛速度慢,而且呈现了较大的稳态误差和失调。

图5为修正的NLMS?Newton算法的收敛曲线,其收敛速度大大提高,但其稳态误差比较大,说明本文算法能够快速收敛,但还没有从根本上解决稳态误差问题。图6为步长随信噪比变化的NLMS?Newton算法的收敛图,其效果比较好,虽然收敛速度比图5有所下降,但很好地改善了稳态误差和失调量,表明此算法优于前两种算法,从对应的图7可以看出,该算法很好地恢复了信号。

6 结 论

在复杂的多模噪声背景下,传统的LMS算法已经不再适用,通过与Newton算法结合,并对自相关矩阵进行合理的估计,使算法的收敛速度提高,计算复杂度减小,但稳态误差较大。最后,采用的步长随输入信噪比变化,有效地降低了算法收敛后的稳态误差和失调量。

参考文献

[1] 张贤达.现代信号处理[M].北京:清华大学出版社,1995.

ZHANG Xianda. Modern signal processing [M]. Tsinghua: Tsinghua University Press, 1995.

[2] BHARANI L. FPGA implementation of optimal step size NLMS algorithm and its performance analysis [J]. International journal of research in engineering and technology, 2013, 2(6): 885?890.

[3] SHUBAIR R M, HAKAM A. Adaptive beamforming using variable step?size LMS algorithm with novel ULA array configuration [C]// Proceedings of 2013 the 15th IEEE International Conference on Communication Technology. Guilin, China: IEEE, 2013: 650?654.

[4] 陈泳,田金鹏,刘燕平.一种新的变步长LMS自适应滤波算法[J].电子测量技术,2015,38(4):27?31.

CHEN Yong, TIAN Jinpeng, LIU Yanping. A novel LMS adaptive filtering algorithm with variable step size [J]. Electronic measurement technique, 2015, 38 (4): 27?31.

[5] 廖畅,山拜[?]达拉拜,邱新建,等.多模噪声环境下的自适应滤波算法[J].计算机工程,2012,38(11):156?159.

LIAO Chang, SENBAI Dalabaev, QIU Xinjian, et al. Adaptive filtering algorithm under multi?mode noise [J]. Computer engineering, 2012, 38 (11): 156?159.

[6] 山拜[?]达拉拜,黄玉划.多模噪声在保密通信中的应用[J].电讯技术,2008,48(2):20?24.

SENBAI Dalabaev, HUANG Yuhua. Multi?mode noise in the secure communication [J]. Telecommunications technology, 2008, 48(2): 20?24.

[7] SENAPATI A, GHATAK K, ROY J S. A comparative study of adaptive beamforming techniques in smart antenna using LMS algorithm and its variants [C]// Proceedings of 2015 International Conference on Computational Intelligence and Networks. Bhubaneshwar: IEEE, 2015: 58?62.

[8] 卢炳乾,冯存前,龙戈农.基于小波变换的变步长LMS自适应滤波算法[J].中国电子科学研究院学报,2013,8(5):512?515.

LU Bingqian, FENG Cunqian, LONG Genong. Adaptive variable?step LMS filter algorithm based on wavelet transform [J]. Academy of sciences, 2013, 8(5): 512?515.

[9] 彭继慎,刘爽,安丽.低信噪比下基于新型变步长LMS的自适应滤波算法[J].传感技术学报,2013(8):1116?1120.

PENG Jishen, LIU Shuang, AN Li. Adaptive filtering algorithm based on new variable step LMS with low SNR [J]. Journal of sensor technology, 2013(8): 1116?1120.