此次实现了 LMS 和 RLS 算法的实现,对比了步长分别为 0.1 和 0.01 时的误差曲线。抽头设
置皆为 22,迭代次数为 1000 次。
在 LMS 算法中,均衡器系数随时间改变的量等于误差
e
(
t
)乘以步长
μ
,
μ
是唯一可变的参数,
实验结果如下图图 1,:
图 1
实现结果可以分析得到,步长越大误差越小。随着迭代次数的增加,不同步长的误差曲线接
近相同。
在 RLS 算法中,均衡器系数的修正是误差
e
(
t
)乘以卡尔曼增益向量
k
(
t
)。因为
k
(
t
)是
N
维的,
与均衡器系数
c
(
t
)同阶,所以每个抽头系数实际上受到
k
(
t
)中的一个元素的控制,从而获得
快速的收敛。此次编程,对数据进行正则化约束,在优化误差函数的时候倾向于选择满足约
束的梯度减少的方向,使最终的解倾向于符合先验知识。实验结果如下图 2