率,但不同的是信号和误差序列都差一个时延的相应值,随着迭代运算次数的增加而趋于一致。因此,归一化LMS算法、时域正交LMS算法及修正LMS算法都是以输入信号功率控制变步长LMS算法,利用梯度信息调整滤波器权系数使其达到最佳值这一点完全相同。但它们的自适应过程较快,性能有了很大改进。
输入信号功率与其相关矩阵R的特征值?i 有关,设R的特征矢量矩阵为Q,
Qm?[Q0Q1?QL] 是R的m个特征矢量,则有 RQm??mQ ,可写成
RQ?Q? 或 R?Q?Q?1?Q?QT (3-25)
式中,??diag{?i},i?0,1,?,L, 这表明变步长受?i 控制,与前述概念相一致。
3.2 泄露LMS算法
泄露LMS算法的迭代公式如式(3-26)所示:
w(n?1)??w(n)?2?e(n)x(n) (3-26)
式中,γ为正值常数,需满足
0???1 (3-27)
通常取 γ近似为1。若γ=1,则泄露LMS算法变为LMS算法[8]。对于常规的LMS算法,当μ突然变为零时,权矢量系数将不再发生变化而保持μ变为零时的值。而对于泄露LMS算法,当μ值变为1之后,滤波器的权矢量将逐渐变化,并最终变为0矢量。这个过程称为泄露[8]。泄露LMS算法在通信系统的自适应差分脉冲编码调制(ADPCM)中得到应用,被用来减小或消除通道误差。另一方面,泄露LMS算法也常用来在自适应阵列中消除旁瓣效应。
实际上,在无噪声的条件下,泄露LMS算法的性能并没有常规LMS算法好,一下分析都可以说明这一点。由式(3-27),有
w(n?1)??w(n)?2?x(n)[d(n)?xT(n)]
=[?I?2?x(n)xT(n)]w(n)?2?d(n)x(n) (3-28) 假定输入信号与权矢量是相互独立的,则
E[w(n?1)]?(?I?2?R)E[w(n)]?2?p (3-29)
或者
?1???E[w(n?1)]??I?2?(R?)I?E[w(n)]?2?p2? ? ? ( 3-30 )
1????lim{E[w(n)]}??R?I?P n ? ? ? 2 ??1若要保证上述算法的稳定,需要有
(3-31)
显然,上式明显与最佳权矢量wopt?R?1p由偏差。因此,泄露LMS算法是一种有偏的
21
LMS算法。Γ越接近于1,偏差越小。可以证明,泄露LMS算法的稳定性条件为
1????R?I?由于矩阵 ? ? 是严格正定的,故没有零值的特征值。此外,泄露LMS算法的2?第i个权系数的时间常数为 1?i(L)???i 2 ?? i ? ( 1 ? ? ) ( 3-33 )
11??? ? min ? 1 ? ? ( 3-32 )
2?
式中,?i(L)表示泄露LMS算法第i个权系数的时间常数。显然,?i(L)比LMS算法的时间常数
?i小,即可能以更快的速度收敛。
3.3 极性LMS算法
在有些应用领域,尤其是在高速通信领域,实际问题对算法的计算量有很严格的要求,因此,产生了一类称为极性(或符号)算法的自适应算法[8]。这种算法可以显著地减小自适应滤波器的计算量,有效地简化相应的硬件电路和程序计算。这类极性算法可以分为三种不同的实现方式,即对误差取符号的误差极性算法(SE),对输入信号取符号的信号极性算法(SR)和对误差与输入信号二者均取符号的简单极性算法(SS)。这三种算法的权矢量迭代公式如式(3-34)所示。
w (n ? 1 ) ? w ( n ) ? 2 ? sgn[ e ( n ) x (n ( 3-34 ) )] w(n?1)?w(n)?2?e(n)sgn[x(n)]w(n?1)?w(n)?2?sgn[e(n)]sgn[x(n)]
在式(3-34)中,符号函数sgn[·]定义为
?1,t?0?sgn(t)??0,t?0??1,t?0 ? ( 3-35 )
极性LMS算法的主要优点是计算量小。显然,这种算法把一个数据样本的N比特运算简化为一个比特的运算,即符号或极性的运算。另一方面,与基本LMS算法相比,这种三个在梯度估计性能上有所退化,这是由于其较粗的量化精度所引起的,并由此引起了收敛速度的下降和稳态误差的增加。
3.4 LMS算法梯度估计的平滑
在迭代方程中,用带噪的瞬时梯度估值?(n)来替代梯度真值?(n)是LMS算法的一个显著缺点。如果使用连续几次梯度估值的平滑结果来替换这个瞬时值,则有可能改善LMS算法的性能。有许多方法可以用于对一个时间序列进行平滑,归纳起来,可以分为线性平滑和非线性平滑两类[8]。
22
?
设平滑LMS梯度估计的自适应迭代算法为
w(n?1)?w(n)?2?b(n) (3-36)
式中,
b(n)?[b0(n)b1(n)?bM(n)]T (3-37)
对于线性平滑,一种有效的平滑方法是邻域平均法,即
n1 b ( n ) ? e ( j ( j ) ( 3-38 ) )x?Nj?n?N?1 式中,N表示参加平滑的梯度估值的样本点数。另一种有效地平滑方法是低通滤波法,即利用低通滤波器来进行线性平滑。
bi(n)?LPF{e(n)x(n?i)e(n)x(n?i?1)?e(n)x(n?i?N)} (3-39)
式中,LPF[·]表示低通滤波器。
对于非线性平滑处理,常采用中值滤波技术。b(n)矢量中的第i个元素bi(n)为
bi(n)?Med[e(n)x(n?i)]N (3-40)
或者
bi(n)?Med[e(n)x(n?i)?e(n?N?1)x(n?i?N?1)] (3-41)
式中,Med表示取中值运算。中值平滑除了像线性平滑一样可以用于消除梯度估计的噪声之外,对信号的“边缘”成分影响不大,图3.1给出了基于中值平滑的LMS算法在自适应滤波中应用的结果。
3.5 解相关LMS算法
LMS算法的一个主要缺点是其收敛速度比较慢,这主要是由于算法的输入信号矢量的各元素具有一定的相关性。研究已经表明,对输入信号矢量解相关可以有效地加快LMS算法的收敛速度[8]。
定义x(n)与x(n-1)在时刻n的相关系数为
xT(n)x(n?1)c(n)?T1) x ( n ? 1 ) x ( n ? ( 3-42 )
根据定义,若c(n)?1,则称x(n)是x(n?1)的相干信号;若c(n)?0,则称x(n)与
x(n?1)之间不相关;c(n)值越大,x(n)与x(n?1)若0?c(n)?1,则称x(n)与x(n?1)相关。
之间的相关性就越强。
实际上,c(n)x(n?1)代表了信号x(n)中与x(n?1)相关的部分。如果x(n)中减去这一部分,相当于一种解相关运算。定义解相关方向矢量为
v(n)?x(n)?c(n)x(n?1) (3-43)
另一方面,考虑自适应迭代的收敛因子满足下列最小化问题的解,有
23
?(n)?argminJ[w(n?)??v(n)] (3-44)
?由此得到时变收敛因子为
e(n) ? ( (3-45) n ) ? xT(n)v(n)这样,解相关LMS自适应算法的迭代公式为
w(n?1)?w(n)??(n)v(n) (3-46)
上述解相关LMS算法可以看做一种自适应辅助变量法,其中的辅助变量由v(n)?x(n)?c(n)x(n?1)给出。一般来说,辅助变量的选取原则是,它应该与滞后的输入和输出强度相关,而与干扰不相关。
3.6 性能比较
LMS自适应滤波器在问世以来,受到了人们普遍的重视,得到了广泛的应用。这种滤波器的主要优点是其收敛性能稳定,且算法比较简单。然而,作为梯度算法的一种,LMS算法也有其固有的缺点,首先,这种方法一般来说不能任意初始点出发通过最短的路径到达极值点;其次,当输入信号自相关阵R的特征值在数值上分散性比较大时,这种方法出现了许多关于自适应滤波器的改进算法,例如本文提到归一化LMS算法、泄露LMS算法、解相关LMS算法以及TDO-LMS算法和MLMS算法。本节就其各种算法的性能进行比较。
对于基本LMS算法来说,收敛因子应满足下列收敛条件:
式中?max为自相关矩阵R的最大特征值。
[6]
0???1?max对于归一化LMS算法来说,收敛因子应满足下列收敛条件:0???1 就能够保证经过足够大的n次迭代,自适应滤波器能够稳定收敛[6]。 对于泄露LMS算法来说,收敛因子应满足下列收敛条件:
1???1?min?1??2?对于极性LMS算法来说,其主要优点是计算量小,但它在梯度估计性能上有所退化,这是由于其较粗的量化精度所引起的,并由此引起了收敛速度的下降和稳态误差的增加
[8]
。
根据自适应权调整公式
w(k?1)?w(k)?2?e(x)x(k)
可知,LMS算法相应的梯度校准值为随机量,因此加权矢量将以随机的方式变化。所以,LMS算法也称之为随机梯度法。LMS算法由于加权矢量的随机起伏造成的影响主要包括失调量、稳态误差等。所以对LMS自适应算法的稳态误差也进行了仿真。
24
第五章 LMS算法的应用
5.1 LMS类均衡器
自适应均衡器是在自适应滤波理论基础上建立起来的,包括非线性动力学神经网络滤波理论。我们考虑到的信道的时变特性和非线性,应用某种准则的自适应算法对均衡器参数随着信号和信道的变化做相应的调整[6,8]。从自适应均衡参数与接收信号的关系来看,大体上可分为线性均衡器和非线性均衡器。其中非线性均衡器按照功能和结构则可分为非递归均衡器和递归均衡器,以及神经智能均衡器。如果根据算法来分,有自适应最小均方误差(LMS)均衡器、自适应递归最小二乘(RLS)均衡器、自适应格型最小二乘(LLS)均衡器、自适应平方根RLS均衡器、自适应最大似然时序估计均衡器、混合滑动指数窗自适应判决反馈均衡器,以及盲自适应均衡器等。
我们只对其中一种均衡器进行研究。LMS算法是一类比较重要的自适应算法,其显著特点是比较简单,不需要计算有关的相关函数,也不需要矩阵求逆运算[8]。关于LMS算法的基本原理,在2.2节进行了详细的讨论,本节主要讨论LMS算法在信道均衡中的应用。 5.1.1 解相关LMS(Decorrelation LMS,DLMS)均衡算法
根据相关文献,如果利用输入信号的正交分量更新自适应滤波器的参数,可以加快LMS算法的收敛速度,这里提出的解相关LMS算法就是通过解相关算法利用输入信号的正交分量更新滤波器的参数。
首先定义均衡器抽头输入向量x?n?与x?n?1?在n时刻的相关系
的结果作为更新方向向量v?n?,即
xT?n?x?n?1???n??Tx?n?1?x?n?1? (5-1)
则解相关运算就是从x?n?减去上一时刻x?n?1?与其相关的部分??n?x?n?1?,并用解相关
v?n??x?n????n?x?n?1? (5-2)
另外,步长参数??n?应该满足下式的最小问题解, 其中,R?ExxT,r?E[xy?n?],y?n?为期望响应,即
??Copt?argminJ?C??R?1r
??n??argminJ?C?n?1?????n?? (5-3)
?下降算法的均衡器抽头参数迭代表达式为
C?n??C?n?1????n???n? (5-4)
将式(5-2)和式(5-3)代入上式即可更新均衡器抽头系数。 5.1.2 变化域解相关LMS均衡算法
对LMS算法的改进还可以通过对输入信号向量x进行酉变换实现,通过酉变换可以提高
25