对于直接形式实现的自适应IIR滤波器,不管是方程误差还是输出误差结构,其自适应算法都有下面讨论的一般形式,通常称为递归高斯–牛顿算法,其通用系数更新的迭代公式为:
滤波后的回归矢量通常称作信息矢量。和可以从方程误差,(也可以是输出误差,导出)。而时变滤波器和可以用定义的方式来定义。式(2-12)中标量步长为正值,它控制算法的收敛速度。而是Hessian矩阵的估计,它按下式进行迭代更新:
式中称为遗忘因子,其典型值一般取为0. 9- 0. 99。式(2-12)中要计算的逆矩阵,但直接计算代价相当大,所以,一般由矩阵求逆定理按下式迭代更新:
估计得出Hessian矩阵可改善收敛速度,但却增加了计算复杂性。为克服这一缺点,迭代式(2-15)和(2-16)通常不执行,而将它们改为单位阵I,这种算法就变为随机梯度算法。当然,它具有较低的收敛速度,但与上式比较,其计算复杂性大为降低。
在高斯–牛顿类算法中,一般初值,,其中0为矢量,而为一小的正数,当然,如果在某些特殊情况下,一些先验信息已知,则初始参数可设为其它适当的值。
为使算法收敛,则初始条件应满足以下两点要求:
(1)R必须为正定的,以保证它可逆;
即使如此,在算法更新的每一步,监测和是必要的,这取决于滤波器F和G的选择。
很显然地,对于方程误差方法有以下的基本关系:
即,这就是说不必对回归矢量和方程误差进行滤波,对应的算法称为归一化RLS算法,这类算法可直接推广到方程误差自适应IIR滤波器中来。
对以上方程误差算法的收敛性能分析,只需假设和是独立的即可(在LMS算法中常这样做)。但对输出误差方法,这一假设却不能用,因为不为1 而和不是独立的,回归过程包含了滤波器输出它是系数的函数。同样,由于方程误差中的相关阵与时间无关,当x(n) , d (n)为广义平衡过程时,可大大简化方程误差自适应IIR滤波器的收敛性分析。而对输出误差方法,即使输入信号x(n)是平稳的,但由于依赖于时变的滤波器系数,其相关阵与时间有关,因此使得输出误差自适应IIR的收敛性相当复杂。
基于输出误差的自适应算法比基于方程误差的算法更复杂,但并不导致有偏的解。它的主要缺点是可能会收敛到均方输出误差(MSOE)的特性曲面的局部极小点。
在系统辨识的研究中,不希望出现局部极小,没有局部极小的充分条件是:
(1)自适应滤波器的传输函数有充分高的零极点阶数,以精确地建模未知系统,但自适应滤波器的阶数要比未知系统阶数应更高;
(3)自适应滤波器分子多项式的阶数超过未知系统分母多项式的阶数。
还应该注意的是,自适应滤波器中的噪声可能导致算法脱离局部最小点,这也正是进化算法用于自适应IIR滤波器参数估计的基本出发点。
另外,的初始条件也影响算法的收敛性,一般期望靠近或位于全局极小的轨线上。
总的来说,方程误差是滤波器系数的线性函数,所以,均方误(MSEE)特性曲线仅有一个全局极小点,其自适应算法有较快的收敛速度。但由于加性噪声的存在,算法常收敛到有偏解;而输出误差是滤波器系数的非线性函数,均方输出误差(MSOE)特性曲面将有多个局部最小点,对应的自适应算法收敛速度较慢,可能收敛到局部最小点。如果滤波系数初始值靠近局部极小点,则算法收敛到次优解。