第三章 几种横向自适应滤波算法及其改进研究
3.1 自适应横向滤波器的定义及其性能函数
3.1.1 横向自适应滤波器
横向自适应滤波器是一类基本的自适应滤波器形式[8]。所谓自适应实现是指:M阶滤波器的抽头权系数w0,...,wM?1,可以根据估计误差e(n)的大小自动调节,使得某个代价函数最小。
令W(n)表示图2.1中的滤波系数矢量,W(n)?[w0(n),w1(n),...,wM?1(n)],滤波器抽头输入信号矢量U(n)?[u(n),u(n?1),...,u(n?M?1)]?,显然,输出信号y(n)为
y(n)??wiu(n?i)?W?(n)U(n) (3-1)
i?0M?1式中?表示转置。利用图2.5中的输出信号和输入信号之间的关系,误差序列
e(n)?d(n)?W?(n)U(n) (3-2)
显然,自适应滤波器的控制机理是用误差序列e(n)按照某种准则和算法对其系数W(n)进行控制的,最终使自适应滤波的目标(代价)函数最小化,达到最佳滤波效果。
按照均方误差(MSE)准则所定义的目标函数是:
J(n)??(n)?E{|e(n)|2}?E{|d(n)?W?U(n)|2} (3-3)
def将式(3-1)代入式(3-3),目标函数可以重新写为
??E[d2(n)]?2E[d(n)W?(n)U(n)]?E[W?(n)U(n)U?(n)W(n)] (3-4) 当滤波器的系数固定时,目标函数可以写为
??E[d2(n)]?2W?P?W?RW (3-5)
其中,R?E[U(n)U?(n)]是输入信号的自相关矩阵,P?E[d(n)U(n)]是期望信号和输入信号的互相关矢量。
3.1.2 自适应滤波器的性能函数
习惯上称均方误差E[|e(n)|2]为自适应滤波器的性能函数,并记为?、J或者MSE,即
??J?MSE?E[|e(n)|2] (3-6)
由式(3-5)知,当输入信号u(n)与期望信号d(n)为平稳随机过程时,性能函数?为权矢量W的二次函数。二次均方误差函数的曲面形式为一碗状抛物面,当权矢量的维数大于2时,性能函数为一抛物面形式,且其抛物面上有唯一的全局最优点。当自相关矩阵为正定的,超抛物面向上凹起(即碗口朝上),表示均方误差函数有唯一的最小值,该最小值所对应的权系数矢量为自适应滤波器的最佳权系数wopt,即等于维纳滤波器的权矢量。 3.1.3 二次型性能表面的搜索
在性能表面上搜索的目的是找出性能函数的最小值,并由此得到最小值所对应的最佳权矢量。这样,二次型性能表面搜索最小值的问题,在数学上就转化为求取曲线和曲面的机制问题。常用的性能表面搜索的方法为梯度下降的迭代算法,例如牛顿法和最速下降法[9]。
1. 最速下降法
最速下降法是一种古老而又非常有用的通过迭代寻找极值的方法。从几何意义上讲,迭代调整权矢量的结果是使系统的均方误差延梯度的反方向下降,并最终达到最小均方误差?min。在最小均方误差实现时,权矢量变为最佳权矢量wopt。它的优点是简单,但需要大量的迭代,才能使算法收敛于充分接近最优解的点。
2. 牛顿法
牛顿法是一种通过迭代寻找函数f(x)的过零点的数学方法,即求f(x)?0的解。假定f(x)为变量x的一元函数,牛顿法的求解过程为:由初始估值x0开始,利用f(x)的一阶导数在x0点的值f'(x0)来计算新值x1,即
x1?x0?f(x0) (3-7) f'(x0)然后,再利用x1的导数f'(x0)和f(x)来计算下一步的估值x2,其一般的迭代公式为
xk?1?xk?f(xk)?f(xk?1)
xk?xk?1f(xk),k?0,1,'f(xk) (3-8)
而f'(xk)?这样牛顿法可以表示为
xk?1?xk?xk?xk?1f(xk),k?0,1,f(xk)?f(xk?1) (3-9)
要注意的是牛顿法的收敛对一大类函数是相当快的,但它的缺点是计算量大。
3.2 最小均方算法
3.2.1 最小均方算法
最小均方(LMS)算法是一种梯度最速下降算法,它以期望响应d(n)和滤波器输出信号y(n)?u(n)?w*?w?u(n)之间误差的均方值E[|e(n)|2]最小为准则,依据输入信号在迭代过程中估计梯度矢量,并更新权系数达到最优的自适应迭代算法。
令
e(n)?d(n)?w?x(n) (3-10)
LMS算法进行梯度估值的方法是以误差信号每一次迭代的瞬时平方值代替均方值,并以此来估计梯度,即
?e2(n)?e2(n)?(n)?[,,?w0(n)?w1(n)??e2(n),] (3-11) ?wM(n)若写成矢量形式,有
?e2(n)?(n)? (3-12)
?w(n)?将式(3-10)代入式(3-11)得到
?(n)?2e(n)???e(n)??2e(n)x(n) (3-13) ?w(n)用梯度估值?(n)来代替最速下降法中的梯度真值?(n),有
w(n?1)?w(n)??(??(n))?w(n)?2?e(n)x(n) (3-14)
?式中,?为自适应滤波器的收敛因子。上式即为著名的LMS算法滤波器权矢量迭代公式。可以看出,自适应迭代下一时刻的权系数矢量可以由当前时刻的权系数矢量加上以误差函数为比例因子的输入矢量得到。图3.1给出了实现LMS算法的流程图。
x(n)??w(n?1)?z?1w(n)?2?e(n)
图3.1 LMS算法的流程图[9]
3.2.2 LMS算法性能分析
1. LMS算法的收敛性
式(3-14)中的收敛因子?应满足以下收敛条件
0???1?max (3-15)
式中,?max为自相关矩阵R的最大特征值。由于?max?tr(R),因此,上式可以改写为
0???或者
0???1 (3-16) tr(R)1 (3-17)
(M?1)Pin式中,Pin为输入信号的功率。通常式(3-17)比式(3-16)常用。因为输入信号的功率比其自相关矩阵的特征值更容易估计。
2. 自适应学习曲线
若将代价函数式(3-5)中权向量作代换,即
V?W?Wopt (3-18)
并称它为权偏差向量。于是
?(V)?E[d2(n)]?[V?Wopt]HR[V?Wopt]?2P?[V?Wopt]
H ?E[d2(n)?]P?Wopt?VHRV[?Wopt?W]optRV?P?2V
??min?VHRV (3-19)
自适应权值的调整过程对系统的输出有影响,假定?就表示权固定在wk时的输出均方误差,则由上式知:
???min??(wk?wopt)2 (3-20)
通常把权值迭代索引器的均方误差由初值?0到最小值?min的弛豫过程称为自适应系统的“学习”过程,而把由此产生的均方误差瞬时值变化曲线称为“学习曲线”,它表明了迭代过程中均方误差减小并趋于最小值的变化情况。
LMS自适应滤波器自问世以来,受到人们普遍的重视,得到了广泛的应用。这种滤波器的主要优点是收敛性能稳定,且算法比较简单。然而,作为梯度算法的一种,LMS算法有其固有的缺点,首先,这种算法一般来说不能从任意初始点通过最短的路径到达极值点;其次,当输入信号自相关阵R的特性值在数值上分散性较大时,这种方法的性能趋于恶化。
3.3 关于LMS算法性能的仿真验证
我们结合自适应滤波器的应用来对LMS算法的性能进行仿真验证。 仿真(一):我们使用一阶自回归过程来研究实时数据集平均对LMS算法瞬
态特征的影响。
考虑一阶AR过程,其差分方程为
这里a是这个过程的参数,v(n)是零均值方差为?v2的白噪声。为了估计参数
a,我们使用图3.2的一阶自适应预测器,预测器抽头权值的LMS自适应算法形
u(n)??au(n?1)?v(n) (3-21)
式表示如下
w(n?1)?w(n)??u(n?1)f(n) (3-22)
??
其中
f(n)?u(n)?w(n)u(n?1) (3-23)
?
是预测误差
u(n)z?1u(n?1)w(n)?-w(n)u(n?1)?+?f(n)
图3.2一阶自适应预测器
实验条件为:1)AR参数:a=-0.99;
2)AR过程u(n)的方差:?v2=0.93627。