自适应算法查看源代码讨论查看历史
自适应( self-adaptive)是指处理和分析过程中,根据处理数据的数据特征自动调整处理方法、处理顺序、处理参数、边界条件或约束条件,使其与所处理数据的统计分布特征、结构特征相适应,以取得最佳的处理效果。 [1]
- 中文名:自适应算法
- 外文名:Adaptive algorithm
- 研究领域:通信信号处理
- 实现方法:软件、硬件、软硬件结合
- 分 类:盲算法、非盲算法、半盲算法
简介
自适应过程是一个不断逼近目标的过程。它所遵循的途径以数学模型表示,称为自适应算法。通常采用基于梯度的算法,其中最小均方误差算法(即LMS算法)尤为常用。自适应算法可以用硬件(处理电路)或软件(程序控制)两种办法实现。前者依据算法的数学模型设计电路,后者则将算法的数学模型编制成程序并用计算机实现。算法有很多种,它的选择很重要,它决定处理系统的性能质量和可行性。 [2]
自适应均衡器的原理就是按照某种准则和算法对其系数进行调整最终使自适应均衡器的代价(目标)函数最小化,达到最佳均衡的目的。而各种调整系数的算法就称为自适应算法,自适应算法是根据某个最优准则来设计的。最常用的自适应算法有迫零算法,最陡下降算法,LMS算法,RLS算法以及各种盲均衡算法等。在理论上证明了对于任何统计特性的噪声干扰,VLMS算法优于LMS算法。
自适应算法所采用的最优准则有最小均方误差(LMS)准则,最小二乘(LS)准则、最大信噪比准则和统计检测准则等,其中最小均方误差(LMS)准则和最小二乘(LS)准则是目前最为流行的自适应算法准则。由此可见LMS算法和RLS算法由于采用的最优准则不同,因此这两种算法在性能,复杂度等方面均有许多差别。
性能指标
一种算法性能的好坏可以通过几个常用的指标来衡量,例如收敛速度:通常用算法达到稳定状态(即与最优值的接近程度达到一定值)的迭代次数表示;误调比:实际均方误差相对于算法的最小均方误差的平均偏差;运算复杂度:完成一次完整迭代所需的运算次数;跟踪性能:对信道时变统计特性的自适应能力。 [3]
分类
对于自适应算法,目前已提出很多方法,概括地讲有非盲算法和盲算法两大类:
非盲算法
非盲算法是指需要借助参考信号(导频序列或导频信道)的算法。接收端预先知道发送信号的特征,进行信号处理时要么先确定信道响应再按一定准则(比如最优的迫零准则zero forcing)确定各加权值,要么直接按一定的准则确定或逐步调整权值,以使智能天线的输出信号与己知输入信号最大相关,常用的相关准则有MSE(最小均方误差)、LMS(最小均方)和LS(最小二乘)等。
盲算法
盲算法是指接收端无需预先知道发送端传送的导频信号,例如判决反馈算法(Decision Feedback)就是一类盲算法。接收端估计发送的信号并以此为参考信号进行信号处理,但需要注意的是要保证判决信号与实际传送信号之间的误差非常小。盲算法一般利用调制信号本身固有的、与具体承载的信息比特无关的一些特征,如恒模算法(CM)、子空间(Subspace)、有限符号集、循环平稳(cycle-stationary)等,并调整权值来确保输出满足上述特性。非盲算法相对盲算法而一言,通常误差较小,收敛速度也较快,但需要占用一定的系统资源用于传送参考信号、训练序列等。即使非盲算法收敛速度快,但仍然跟不上快衰落变化的速率要求。因此,目前全自适应型智能天线技术的瓶颈仍在快速算法的研究和寻求上,现仍处于理论探索阶段。
半盲算法
半盲算法,是指盲算法和非盲算法相结合的算法,即先用非盲算法确定初始权值,再用盲算法进行跟踪和调整。这样做一方面可综合二者的优点,一方面也是与实际的通信系统相一致的。
实现方法
自适应信号处理算法的实现方法一般可以分为三类:软件实现法、硬件实现法以及软硬件结合实现法。
软件实现法
利用通用计算机软件运行按照自适应算法数学模型编写出来的程序,完成对信号的自适应处理,其优点是灵活方便和可靠并能做到时分复用,缺点是计算量大,计算需要时间,信号处理的实时性不好,而且计算消耗成本高,硬件资源浪费明显。这是因为通常的数字信号,处理算法虽然比较简单但却是大量重复的算术运算,输入和输出的操作较少。如要求实时运算即使是中等速度的信号处理也只有很大的计算机才能提供所需的计算速度,而此时通用计算机的复杂运算系统只有很小部分被利用,这使得通用计算机的体系结构与大多数信号处理的算法不匹配造成浪费。
硬件实现法
依照自适应算法的数学模型设计,整个算法用硬件买现,用硬件来完成算法的数学运算,例如加法器、乘法器、输入输出端口,除此之外还有系统时钟等外设器件。硬件设计虽然实现起来没有软件实现快,但是能够针对算法合理选择器件,不会造成系统资源的浪费。
软硬件结合实现法
这种方法是利用微处理器进行数字信号处理,亦即利用一部分硬件再配以相应的软件,使微处理器的硬件得到软件的辅助,软件得到了硬件的支持,从而成为可编程的专用信号处理机。
视频
高精度自适应算法