您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 自适应滤波器原理-带图带总结word版
第二章自适应滤波器原理2.1基本原理2.1.1自适应滤波器的发展在解决线性滤波问题的统计方法中,通常假设已知有用信号及其附加噪声的某些统计参数(例如,均值和自相关函数),而且需要设计含噪数据作为其输入的线性滤波器,使得根据某种统计准则噪声对滤波器的影响最小。实现该滤波器优化问题的一个有用方法是使误差信号(定义为期望响应与滤波器实际输出之差)的均方值最小化。对于平稳输入,通常采用所谓维纳滤波器(Wienerfilter)的解决方案。该滤波器在均方误差意义上使最优的。误差信号均方值相对于滤波器可调参数的曲线通常称为误差性能曲面。该曲面的极小点即为维纳解。维纳滤波器不适合于应对信号和/或噪声非平稳问题。在这种情况下,必须假设最优滤波器为时变形式。对于这个更加困难的问题,十分成功的一个解决方案使采用卡尔曼滤波器(Kalmanfilter)。该滤波器在各种工程应用中式一个强有力的系统。维纳滤波器的设计要求所要处理的数据统计方面的先验知识。只有当输入数据的统计特性与滤波器设计所依赖的某一先验知识匹配时,该滤波器才是最优的。当这个信息完全未知时,就不可能设计维纳滤波器,或者该设计不再是最优的。而且维纳滤波器的参数是固定的。在这种情况下,可采用的一个直接方法是“估计和插入过程”。该过程包含两个步骤,首先是“估计”有关信号的统计参数,然后将所得到的结果“插入(pluginto)”非递归公式以计算滤波器参数。对于实时运算,该过程的缺点是要求特别精心制作,而且要求价格昂贵的硬件。为了消除这个限制,可采用自适应滤波器(adaptivefilter)。采用这样一种系统,意味着滤波器是自设计的,即自适应滤波器依靠递归算法进行其计算,这样使它有可能在无法获得有关信号特征完整知识的环境下,玩完满地完成滤波运算。该算法将从某些预先确定的初始条件集出发,这些初始条件代表了人们所知道的上述环境的任何一种情况。我们还发现,在平稳环境下,该运算经一些成功迭代后收敛于某种统计意义上的最优维纳解。在非平稳环境下,该算法提供了一种跟踪能力,即跟踪输入数据统计特性随时间的变化,只要这种变化时足够缓慢的。40年代,N.维纳用最小均方原则设计最佳线性滤波器,用来处理平稳随机信号,即著名的维纳滤波器。60年代,R.E.卡尔曼创立最佳时变线性滤波设计理论,用来处理非平稳随机信号,即著名的卡尔曼滤波器。70年代,美国B.Windrow和Hoff提出了处理随机信号的自适应滤波器算法,弥补了维纳、卡尔曼滤波器的致命缺陷:必须事先知道待处理信号的统计特性(如自相关函数),才能计算出最佳的滤波器系数Wopt,否则,维纳、卡尔曼滤波器无法判定为最佳。一个自适应算法的好坏取决于以下一个或多个因素错误!未找到引用源。:①收敛速率:它定义为算法在平稳输入时响应足够接近地收敛于均方误差意义上的最优维纳解。②失调:这个参数提供了自适应滤波器的最终均方误差与维纳滤波器所产生的最小均方误差之间偏离程度的一个定量测量。③跟踪:当自适应算法运行在非平稳条件下,该算法需要跟踪环境的统计量变化。然而,算法的跟踪性能受到两个相互矛盾的特性的影响:即收敛速率和由算法噪声引起的稳态波动。④鲁棒性:对于一个鲁棒的自适应滤波器,小的扰动只会产生小的估计误差。这些扰动来源于各种因素,包括来自滤波器内部或外部的因素。⑤计算量:主要包括三方面(a)完成算法一次完整迭代所需要的运算量(即乘法、除法、加法和减法);(b)存储数据和程序所需要的存储器位置的大小;(c)在计算机上对算法编程所需要的投资。⑥结构:涉及算法的信息流结构以及硬件实现的方式。例如,其结构呈现高度模块化、并行或并发的算法很适应于使用超大规模集成电路(VLSI)实现。⑦数值特性:当一个算法数值实现时,将产生由量化误差引起的不精确性,特别存在人们所关心的两种基本问题:数值稳定性和数值精确性问题。数值稳定性是自适应算法的固有的特征。数值精确性由样本值和滤波器系数的位数确定。当某种算法对其数字实现的字长变化不敏感时,就说该自适应滤波器算法的数值鲁棒。2.1.2自适应滤波器的研究方法自适应滤波问题不存在唯一地解决方法。自适应滤波用户面临的挑战包括:首先要了解各种自适应滤波算法的能力和限制;其次把了解到得知识用于选择合适的算法以满足各自的应用需要。自适应滤波器基本上存在如下两种不同的推导方法。①随机梯度法随机梯度法(stochasticgradientapproach)使用抽头延迟线或者横向滤波器作为实现自适应滤波器的构造基础。对于平稳输入情况,代价函数(也称为性能指标)定义为均方误差(即期望响应与横向滤波器输出之差的均方值)。代价函数恰好是横向滤波器中抽头权值的二次函数。该抽头权值的均方误差函数可看做是具有唯一确定的极小点的多维抛物面。我们把这个抛物面称为误差性能曲面;对于该曲面的极小点的抽头权值定义了最优维纳解。为了推导更新自适应横向滤波器抽头权值的递归算法,我们分两步进行这项工作。首先,使用迭代方法求解维纳-霍夫方程(Wiener-Hopfequation);迭代过程以最优化理论中人们所熟知的最速下降法(methodofsteepestdescent)为基础。这个方法需要使用梯度向量,其值取决于两个参量:横向滤波器中抽头输入的自相关矩阵以及期望响应与该抽头输入之间的互相关向量。其次,我们使用这些相关的瞬态值,以便导出梯度向量的估计值,推导中假设该向量是随机的。基于上述思想的算法,通常称为最小均方(LMS,least-mean-square)算法。当横向滤波器运行在实数据的情况下,该算法大体上可描述为:(抽头权向量更新值)=(老的抽头权向量值)+(学习速率常数)(抽头输入向量)(误差信号)其中误差信号定义为期望响应与抽头输入向量所产生的横向滤波器实际向量之差。LMS算法很简单,而且在正确条件下可获得满意的性能。其主要缺点是收敛速率相当缓慢,而且对抽头输入相关矩阵条件数(矩阵的条件数定义为其最大特征值与最小特征值之比)的变化比较敏感。即使这样,LMS算法仍然十分流行且应用广泛。在非平稳环境下,误差性能曲面的方向随时间连续变化。在这种情况下,LMS算法有一个连续跟踪误差性能曲面极小点的附加任务。实际上,只要输入数据变化比LMS算法学习速率来的慢时,就会发生跟踪问题。随机梯度方法也用于格型结构。产生的自适应算法叫做梯度自适应格型(GALgradientadaptivelattice)算法。LMS和GAL算法是自适应滤波器随机梯度族的两个成员,而且迄今为止,LMS仍然是这个家族中最流行的一员。②最小二乘估计第二种自适应滤波算法以最小二乘法为基础。根据这个方法,我们对加权误差平方和形式的代价函数进行最小化,其中误差或残差定义为期望响应与实际滤波器输出之差。最小二乘法可用块估计或递归估计来表示。在块估计中,输入数据以等长度块的形式排列,而且一块一块地对输入数据进行滤波处理;而在递归估计中,一个样值一个样值地对感兴趣的估计(例如,横向滤波器的抽头权值)进行更新。通常,递归估计比块估计要求较少的存储量,这就是为什么在实际中递归估计的使用要多得多的原因。递归最小二乘(RLS,Recursiveleast-squares)可看作卡尔曼滤波的一个特例。卡尔曼滤波器著名的特点是引入状态概念,它是对特定时刻加到滤波器抽头的所有输入的一个度量。于是,在卡尔曼滤波算法的核心部分,残在一种递推关系,它可用文字表述为:(状态递推值)=(旧的状态值)+(卡尔曼增益)(新息向量)其中新息向量表示在计算时刻进入滤波过程的新的信息。由此可见,卡尔曼变量与RLS变量之间存在一一对应关系。由此,可以从大量卡尔曼滤波器文献中选择一些方法用来设计最小二乘估计的自适应滤波器。RLS算法具有随2M增加的计算复杂度,其中M是权值个数,复杂度为:2()oM,故也称为2()oM算法错误!未找到引用源。,相反,LMS是()oM算法,其计算复杂度随M线性增加;当M很大时,从硬件实现的观点看,2()oM算法的计算复杂度将会变得不可接受。另外,诸如LMS算法等随机梯度算法是模型无关的,而RLS是模型相关的,这意味着其跟踪能力可能比大量的随机梯度算法族来得差。2.2自适应滤波器的结构滤波算法的运行涉及两个基本过程:(1)滤波过程,用来对一系列的输入数据产生输出响应;(2)自适应过程,其目的是提供滤波过程中可调参数自适应控制的一种机制(算法)。这两个过程相互影响地工作。自然,滤波过程结构的选择总体山对算法的运行具有深刻的影响。一横向滤波器横向滤波器错误!未找到引用源。也称为抽头延迟线滤波器或有限脉冲响应滤波器,它由图2.1所示的三个基本单元组成:(a)单位延迟单元;(b)乘法器;(c)加法器。滤波器中延迟单元的个数确定了脉冲响应的持续时间。延迟单元个数(如图中M所示),通常称为滤波器的阶数。在该图中,每个延迟单元永延迟算子-1z表示。特别地,当对un进行-1z运算时,其结果输出为un-1。滤波器中每个乘法器的作用是用滤波器系数[也成抽头权值(tapweight)]乘以与其相连接的抽头输入。于是,连接到第k个抽头输入un-k的乘法器产生*kwun-k的输出,其中kw是抽头权值,k=0,1,…,M,星号表示复数共轭。这里假设抽头输入和抽头权值都是复数。滤波器中加法器的合并作用是对各个乘法器输出求和,并产生总的滤波器输出。对于所示的横向滤波器,其输出为*0y(n)=()Mkkwunk(2-1)上式叫做有限卷积和,因为它将滤波器的有限脉冲响应*kw与滤波器输入un卷积以便产生滤波器的输出y(n)。)(nu1z1z1z*0w*1w*2Mw*1mw.........)(nd)(ne)(ny图2.1横向滤波器[7]二格型滤波器格型滤波器错误!未找到引用源。具有模块结构。这种模块结构由一系列独立的基本节(即级)组成,每一级具有格型的形式。图2.2表示由M级组成的格型滤波器,M为滤波器阶数。图中表示出的第m级格型滤波器由下列一组一对输入输出关系描述:*11()()(1)mmmmfnfnKbn(2-2)11()(1)()mmmmbnbnKfn(2-3)式中m=1,2,…,M,M为滤波器阶数。()mfn是第m级前向预测误差,()mbn是第m级后向预测误差。mK叫做第m级反射系数。前向预测误差()mfn定义为输入un与基于m个过去输入un-1,...,un-m所作出的预测值之差。相应地,后向预测误差()mbn定义为输入un-m与基于m个未来输入un,…,un-m+1所作出的预测值之差。考虑图中第1级输入的条件,我们有00()()()fnbnun(2-4)式中un为n时刻格型预测器的输入。于是,从上式的初始条件出发并给定一组发射系数12,,...,Mkkk,则可由格型预测器一级一级地向前推进,最终确定出一对输出()Mfn和()Mbn。......1k...*1k*2k2k*kMkM1z1z1z*0h*1h*1Mh*2Mh*2h0()fn1()fn2()fn1()Mfn()Mfn()un0()bn1()bn2()bn1()Mbn()Mbn()dn()en第1级第2级第M级图2.2格型滤波器错误!未找到引用源。对于有统计过程获得的相关输入序列un,un-1,…,()oM,后向预测误差0b()n,1b()n,…,Mb()n组成一个非相关随机变量序列。再则,两个随机变量序列之间在如下意义上存在着一一对应关系:如果给定其中的一个,可以唯一地确定另一个,反之亦然。因此,后向预测误差0b()n,1b()n,…,Mb()n的线性组合可给出期望响应序列()dn的一个估计,如图5下半部所示。()dn与其估计值之间的差表示估计误差()en。这里描述的过程称为联合过程估计。当然,也可以直接应用输入序列un,un-1,…,un-M产生期望响应估计。然而,图中所示的间接法具有简化抽头权值01,,...,Mhhh计
本文标题:自适应滤波器原理-带图带总结word版
链接地址:https://www.777doc.com/doc-4833868 .html