
递归最小二(RLS)自适应均衡算法.docx
21页第三章递归最小二乘(RLS)自适应均衡算法§3.1 引言在自适应滤波系统中,最陡梯度(LMS)法由于其简单获得了广泛的应用但 各种 LMS 算法均有收敛速度较慢(收敛所需码元数多),对非平稳信号的适应性差 (且其中有些调整延时较大)的缺点究其原因主要是LMS算法只是用以各时刻的 抽头参量等作该时刻数据块估计时平方误差均最小的准则,而未用现时刻的抽头 参量等来对以往各时刻的数据块均作重新估计后的累积平方误差最小的原则 (即 所谓的最小平方(LS )准则)为了克服收敛速度慢,信号非平稳适应性差的缺点,根据上述内容,可采用 新的准则,即在每时刻对所有已输入信号而言重估的平方误差和最小的准则(即 LS 准则)从物理概念上可见,这是个在现有的约束条件下利用了最多可利用信息的 准则,即在一定意义上最有效,信号非平稳的适应性能也应最好的准则这样建 立起来的迭代方法就是递归最小二乘(RLS: Recursive Least Square)算法,又称为 广义 Kalman 自适应算法用矩阵的形式表示 RLS 算法非常方便,因此我们首先定义一些向量和矩阵 假定在时刻t,均衡器的输入信号为r,线性均衡器对于信息符号的估计可以表示t为I(t)二 另 c (t - 1)r 式(3-1)j t—jj=-K让c (t -1)的下标j从j = 0到j = N -1,同时定义y(t) = v ,则I(t)变为j t+KI(t)二刃c (t -1)y(t - j)j j =0二 C (t - 1)Y (t) 式(3-2)NN其中C (t-1)和Y (t)分别为均衡器系数c.(t-1),j = 0,1,…,N-1和输入信号N N jy(t - j),j = 0,1,…,N -1 的列向量。
类似的,在DFE均衡器结构中,均衡器系数c (t),j = 0,1,…,N-1的前K +1 j1 个系数为前向滤波器系数,剩下的 K = N -K -1为反馈滤波器系数用来预测~ ~ 2 ~ 1I(t)的数据为r ,…,r ,~ ,~ ,其中~ ,1 < j < K为判决器先前作出判决的数 t + K1 t +1 t -1 t - K 2 t - j ~ 2据这里,我们忽略判决器判错的情况,因而~ = I ,1 < j < K同时为方便起t - j t - j 2见定义因此y(t - j)=v (0 < j < K )t+Ki -j 1I (K < j < N -1)t+K1-j 1式(3-3)Y (t) - [y(t),y(t — D,…,y(t — N +1)]'N二[r ,…,r , r , I ,…,I ]' 式(3-4)t + K1 t +1 t t -1 t -K2§3.2 RLS 自适应算法RLS 算法对于 I(t) 的估计可以从下面的式子得到假定我们的观测向量为Y (n) , n = 0,1,……,t,我们期望得到均衡器的系数向量C (t)使得均方误差的加NN 权平方和式(3-5)式(3-6)s (n)二工 wt-n I e (n, t) I2Nn=0最小。
其中误差定义为e (n,t) = I(n) - C' (t)Y (n)N N Nw 代表遗忘因子, 0 < w <1这样我们对过去的数据引入了一个指数权,这对于信 道特性为时变的情况非常合适关于权向量C (t)的s (n)最小化便得到下面的线性方程NR (t)C (t) = D (t) 式(3-7)N N N其中R (t)为信号的自相关矩阵,定义为NRN(t)=Wt一n Y*N(n)Y'(n)n式(3-8)n=0D (t) 为互相关向量NDN(t)=工 wt-nI(n)Y*“ (n)式(3-9)n=0式(3-7)的解为著名的 Wiener-Hopf 方程式(3-10)C (t) = R-1(t) • D (t)NNN为了避免复杂的求逆运算,引入一N x N矩阵由式(3-8)有又由矩阵求逆引理有:PN (t) = Ft)R (t) = £ wt-nY*(n)Y'(n)N N Nn=0=wR (t-1) + Y*(t)Y,(t)N N NR -i(t) = - R -i(t -1)-NwR-1(t - 1)Y*(t)Y,(t)R-1(t -1)—N N N Nw + Y,(t)R-1(t - 1)Y*(t)N N N在上式中定义P (t) = R-i(t),令NNR (t) = Y,(t) PN N N(t - 1)Y *(n)NK (t) = P(t- 1)Y;(t)N W + R (t)Nr (t)为一标量,K (t)为一N维矢量,称为Kalman增益向量。
则NNP (t)=丄[? (t -1) - K (t)Y'(t)P (t -1)]N w N N N N假定我们在式(3-16)两边右乘以Y* (t),NP (t)Y*(t)=丄[P (t - 1)Y*(t) - K (t)Y' (t)P (t - 1)Y*(t)]N N w N N N N N N={[w + R (t)]K (t) — K (t)卩(t)]}w N N N N=KN(t)因此,Kalman增益向量可以被定义为P (t)Y*(t)NN由于CN(t)=PN(t)DN(t)D (t) = wD (t -1) + I(t)Y *(t)N N N我们得到C (t)=丄[P (t -1) - K (t)Y,(t)P (t - 1)][wD (t -1) +1(t)Y*(t)]N w N N N N N N=P (t -1)D (t -1) + 丄 I(t)P (t - 1)Y*(t)N N w N N-K (t)Y' (t)P (t-1)D (t-1)N N N N式(3-11)式(3-12)式(3-13)式(3-14)式(3-15)式(3-16)式(3-17)式(3-18)--1(t)K (t)Y' (t)P (t - 1)Y*(t)w N N N N二 C (t -1) + K (t)[I(t) - Y'(t)C (t -1)] 式(3-19)N N N NYf (t)C (t -1)为均衡器在t时刻的输出,也就是NNI(t) = Y' (t)C (t -1) 式(3-20)NN 而e (t,t-1) = 1 (t) —1 (t)三 e (t) 式(3-21)NN为期望信号与估计信号之间的误差。
因此, C (t) 可以根据下式来递推更新C (t) = C (t 一 1) + K (t)e (t) 式(3-22)N N N N式(3-22)表明:t时刻最佳的C (t)值可由t -1时刻的最佳C (t-1)值加一修正量得 NN 到这就是递推最小二乘算法或 Kalman 算法将上述在推导过程中出现的各式予以整理,可得到正规RLS算法的计算步骤由于此算法为迭代型,故应在已得迭代式组外,还注意在计算的初始部分设置合理的初始值组根据经验设定则一般可得到较快的收敛效果由于矩阵R (t)类似 N 于统计自相关矩阵,而向量D (t)近似于互相关向量应该注意到R (t)不是一个 NNToeplitz矩阵,对于较小的t, R (t)可能处于病态条件;因而通常初始时需要在 NR (t)上加上一个8/ ,5为一个»1的正常数,I为单位阵由于对于过去的信N N N号引入了指数权,加上5I的作用将随着时间增加而减弱N正规 RLS 算法的计算步骤如下:步骤1:初始化:令C (0) = Y (0) = 0, 式(3-23)NNP (t) = 51 (5 一般取>> 1 的正数),n = 0 式(3-24)NN步骤2:更新t = t +1e (t) = I(t)-Y'(t)C (t-1) 式(3-25)N N N式(3-26)式(3-27)式(3-28)式(3-29)卩(t) = Y'(t)P (t - 1)Y *(t)N N N NK (t) = PN(t 一 1)Y;(n)N w + 卩(t)NPN (t) = PN (一 1) 一 KN (t)U (t)PN (一 1)]C (t) =C (t-1)+K (t)e (t)N N N N在一次迭代当中,正规RLS算法所需的计算量为乘法3N2 + 5N次,除法1次, 加(减)法 2.5N2 +1.5N 次。
我们看到均衡器系数随时间的变化量等于预测误差乘以Kalman增益向量由 于K (t)为N维,K (t)的每一个元素有效地控制着均衡器每一个系数,因而能N N够得到快速的收敛性质相反,最陡梯度算法(steepest-descent algorithm )均衡器系 数的更新可表示为C (t) = C (t -1) + AY*(t)e (t) 式(3-30)NN NN唯一变化的参数为步长A图3.1给出了这两个算法初始收敛速度的比较,信道选自 ⑶,具有固定参数 f二0.26,f = 0.93,f = 0.26信道的特征值为九/九 二11均衡器的所有 0 12 max min系数在初始迭代时置为0最陡梯度算法的步长选为A = 0.020与最陡梯度算法 相比RLS算法具有较快的跟踪性能和收敛性能这对于时变信道来说极为重要 例如,短波(HF)信道变化非常快,用梯度算法无法对信号进行均衡而Kalman 算法就能够足够快地跟踪这种变化图3.1 Kalman算法与梯度算法性能比较§3.3几种改进型快速跟踪的RLS算法§ 3.3.1指数遗忘的加窗RLS算法和Reset-RLS算法RLS算法广泛的应用于自适应滤波,系统辨识与信号预测。
该算法只有在方 程误差为0均值的高斯白噪声以及系统模型非时变时才能保证渐进趋于真值该 算法的另一个显著特点是,为了减小预测中的噪声影响,当参数慢慢趋向于真值 时,增益向量便接近于0因此,RLS算法就有可能跟踪不上信道参数的变化为了解决这一问题,在实践当中,人们提出了许多改进的RLS算法例如指 数遗忘的加窗RLS算法,避免了增益向量变成0这一算法的优点是它对于信道 参数的变化总是能够起到预防的作用;然而也因为非0的增益向量使得该算法对信道的扰动和噪声都非常敏感另外一个方法是一旦检测到信道的变化,就重新 初始化迭代协方差矩阵 P(t) ,如何检测信道参数的变化就成为该算法的关键在 实际操作中,我们可以通过设置适当的门限来检测信道的突跳一旦迭代误差超 过该门限,RLS算法便被重新初始化我们称此方法为复位RLS(Reset—RLS)算 法§3.3.2 SPRLS 算法在文献⑷中 Park 和 Jun 提出了 SPRLS 算法(Self—Perturbing Least SquaresAlgorithm)它是一种基于前向预测误差来调整RLS算法的迭代矩阵,前向预测 误差越大,意味着信道发生变化的可能性越大。
我们再次给出正规RLS算法:式(3-3。
