APP下载

基于指数函数的变步长仿射投影符号算法

2019-03-05李雪蕊

通信技术 2019年2期
关键词:步长稳态投影

李雪蕊,林 云

(重庆邮电大学通信与信息工程学院,重庆 400065)

0 引 言

随着通信技术和信号处理的飞速发展,自适应滤波器在工程实践中的应用愈加广泛,如信道均衡、回声消除和系统辨识等。在自适应滤波算法中,常见的有最小均方算法(Least Mean Square, LMS)和最小二乘算法(Recursive Least Square,RLS)。其中,LMS算法的优点是计算复杂度低,缺点是当输入信号自相关矩阵的特征值分布范围广时,算法收敛速度缓慢。RLS算法的优点是收敛速度快,缺点是稳定性差,计算复杂度高[1]。为了改善LMS算法和RLS算法存在的缺陷,文献[2]首次提出了仿射投影算法(Affine Projection Algorithm,APA)。APA通过重复利用过去的输入信号改善算法的相关性能,计算复杂度和收敛速度均介于LMS与RLS算法之间[3]。但是,当系统存在冲激噪声时,APA算法将会受到严重干扰,无法表现出良好的跟踪性能。为了解决这一问题,文献[4]将APA算法与符号算法(Sign Algorithm,SA)相结合,提出了一种能够抗冲激干扰的仿射投影符号算法(Affine Projection Sign Algorithm,APSA)。然而,传统的固定步长参数的APSA算法无法平衡收敛速度与稳态误差之间的矛盾,于是变步长仿射投影符号算法(Variable Step Size Affine Projection Sign Algorithm,VSS-APSA)得到了很大发展。变步长技术通过令算法在初始阶段具有较大的步长值保证算法的快速收敛,同时在算法接近稳态阶段具有较小的步长值,保证了算法具有小的稳态误差[5-7]。因此,变步长技术可以很好地调节收敛速度和稳态误差之间的矛盾。文献[8]首次提出了VSS-APSA,但是其采用最小化函数更新步长,不能实时跟踪系统的变化,且在非稳定环境下性能严重衰减。文献[9-10]则分别提出了改进后的算法。

本文在基于修改后的误差函数基础上,提出了一种利用无噪先验误差的功率与步长的非线性关系对步长值进行迭代更新的新的VSS-APSA算法。仿真结果表明,该算法与传统APSA算法、VSSAPSA算法相比,具有更快的收敛速度、更低的稳态误差和更高的稳定性。

1 传统的APSA算法

图1给出了系统辨识模型下的自适应滤波器框图。滤波器的长度为L,第n次迭代的输入为un=(un,un-1,…,un-L+1)T,ωn为滤波器第n次迭代时对ωo的估计值。期望信号dn=uTnωo+vn,误差信号en=dn-uTnωn-1。

APA算法虽然在输入信号严重相关时仍具有很快的收敛速度,但是当系统存在冲激噪声时,性能会严重衰减。为此,人们将基于l1范数的SA算法与APA算法相结合,提出了能够抗冲激干扰的APSA算法。APSA算法的滤波器系数更新公式的推导过程如下:

利用拉格朗日乘数法,将式(1)改写为:

对式(2)两边关于ωn求导,并令其等于零,得:

由式(1)、式(2)和式(3),可得APSA算法的滤波器系数更新公式:

式中,en,p代表后验误差矢量,μ代表步长参数,γ代表拉格朗日乘子,Un代表输入信号矩阵,sign(·)代表符号函数,en代表先验误差矢量,T代表矩阵的转置。式(4)中,由于无法在实践中获得en,p,因而用en来近似en,p。

2 VSS-APSA算法

2.1 传统的VSS-APSA算法

固定步长的APSA算法,主要缺点是无法调节收敛速度和稳态误差之间的矛盾。因此,变步长技术是一个能够解决这一问题的好方法。文献[8]中提出的VSS-APSA基于最小均方偏差(Mean Square Deviation,MSD)准则,推导过程如下:

其中, ω ~n=ωo-ωn,μn代表可变步长。

对式(5)两边取l2范数平方的期望,得:

对式(6)关于μn求导,并令其为零,得:

传统的VSS-APSA算法虽然改善了APSA算法的收敛性能和稳态误差性能,但是由于去掉了噪声项,因此计算的步长值并不是最优的,且在变步长μn的更新公式中由于应用了最小函数,因此该算法在非稳定环境下的性能将会严重衰减。

2.2 新提出的VSS-APSA算法

标准的误差函数公式为:

本文所用到的修改后的误差函数为:

图2给出了标准误差函数和修改后误差函数的函数图象。

图2 不同的误差函数图像

由图2可以看出,修改后的误差函数具有非负性和对称性,且当x=0时取得最小值0,当x趋于无穷大时能够比标准误差函数更快地收敛于最大值1。这些特性意味着如果采用修改后的误差函数更新步长,在初始阶段,函数的变化速率较快,即算法的收敛速度快;在稳态阶段,函数的变化速率趋于零,即算法的稳态误差低;当出现冲激干扰时,函数值为1,即步长不再进行更新,从而保证了算法具有良好的抗冲激噪声特性。

本节提出一种基于修改后的误差函数的VSSAPSA算法。通过使用修改后的误差函数作为步长函数,新算法利用无噪先验误差的功率与步长的非线性关系对步长值进行迭代更新,迭代公式为:

式中,ρ>0代表比例参数,en,f=en-vn=(ωo-ωn)Tun代表无噪先验误差,E(e2n,f)=E(e2n)-E(v2n)代表无噪先验误差的功率。由于E(e2n,f)在计算过程中需要用到输入信号的统计信息,因此无法直接通过计算得出所需的期望值。针对这一问题,文献[11-12]给出了一种递归方法对期望值进行估计:

式中,ε代表极小的正数,作用是避免输入信号的功率为零时算法停滞;E(e2n)代表误差信号en的功率,E(v2n)代表环境噪声vn的功率,E(u2n)代表输入信号un的功率,Rn,eu代表输入信号与误差信号的互相关矩阵。

实际应用中,由于无法获得输入信号的功率以及输入信号与误差信号的互相关矩阵,因此 文献[11-12]提供了一种递归方法用于对其进行近似计算:

式中,β代表平滑因子。

综上,本节提出一种新的VSS-APSA算法,它的滤波器系数更新公式为:

式中步长μn由式(11)控制。

3 算法仿真与性能分析

仿真采用一个脉冲响应长度为L=32的待辨识系统。输入信号是均值为零的高斯白噪声,输出信噪比为30 dB,冲激噪声由kiAi产生,ki是成功概率P[ki=1]=pr的伯努利过程,本次试验设定pr=0.05。Ai是均值为零的高斯随机过程,且其功率为σ2A=1 000σ2y,σ2y是自适应系统的输出功率。本次试验采用归一化均方偏差(Normalized Mean Square Deviation,NMSD)作为衡量算法性能的标准,其中其中ω ~i=ωo-ωi。所有的仿真结果都是通过对100次独立实验结果取平均而获得。

图3给出了在没有冲激噪声干扰的情况下,当投影阶数K=2、μ1=0.01、μ2=0.000 5、ε=0.000 1时,新算法与APSA[4]的NMSD随迭代次数变化的性能曲线图。由图3可见,与传统的APSA算法相比,新算法表现出更快的收敛速度和更低的稳态误差,且当ρ=0.05、β=0.995时,新算法可取得最优性能。

图3 不同参数下新算法的性能曲线

图4给出了当冲激噪声干扰存在时,不同投影阶数下传统APSA、VSS-APSA[8]与新算法的性能曲线图。其中,在传统APSA算法中,K=4。虽然VSS-APSA算法在前5 000次迭代性能优于新算法,但其跟踪性能在冲激噪声出现后严重衰减。这种衰减是由式(8)中的最小函数导致的。然而,新算法在冲激噪声出现前后均表现出良好的跟踪性能,即新算法的抗冲激噪声性能优于传统的APSA和VSS-APSA。

图4 不同投影阶数下各算法的性能曲线图

4 结 语

本文在基于误差函数的基础上,提出了一种新的变步长仿射投影符号算法。通过使用修改后的误差函数作为步长函数,提出的算法利用无噪先验误差的功率与步长的非线性关系对步长值进行迭代更新,并与APSA、传统VSS-APSA算法进行了比较。仿真结果表明,与传统变步长仿射投影符号算法相比,提出的算法具有更快的收敛速度、更小的稳态误差以及更强的抗冲激干扰特性。

猜你喜欢

步长稳态投影
中心差商公式变步长算法的计算终止条件
可变速抽水蓄能机组稳态运行特性研究
全息? 全息投影? 傻傻分不清楚
碳化硅复合包壳稳态应力与失效概率分析
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
电厂热力系统稳态仿真软件开发
一种改进的变步长LMS自适应滤波算法
基于最大相关熵的簇稀疏仿射投影算法
元中期历史剧对社会稳态的皈依与维护
找投影