哈工大-自适应信号处理_RLS自适应平衡器计算机实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RLS自适应平衡器计算
机实验
课程名称:自适应信号处理
院系:电子与信息工程学院
姓名:
学号:
授课教师:邹斌
哈尔滨工业大学
哈尔滨工业大学实验报告
目录
一.实验目的:
-. .1. -
二.实验内容:
-. .1. -
三.程序框图
-. .3. -
四.实验结果及分析
-. .4. -
4.1 高信噪比(信噪比为30dB)情况下特征值扩散度的影响.. - 4
-
4.2 信噪比(信噪比为10dB)情况下特征值扩散度的影响.... - 5
-
五.实验结论
-. .5. -
RLS 算法的自适应平衡器计算机实验
. 实验目的:
1.进一步学习自适应平衡器的原理了解算法应用条件。
2.学习最小二乘算法的约束条件以及理论基础。
3.分析比较RLS算法与LMS 算法的异同。
4.独立编写算法程序,进一步理解最小二乘自适应滤波算法的应用方法。
. 实验内容:
在本次试验中取加权因子 1 ,根据试验一中相关内容设计线性离散通信信道的自
适应均衡器,系统框图如图 2.1 所示。
随机数发生器( 1)产生用来探测信道的测试信号x n ,加到信道输入的随机序列x n 由伯努利序列组成,x n 1,随
机变量x n具有零均值和单位方差, 输出经过适当的延迟可以用做训练系列的自适应滤波器的期望响应。
随机数发生器(2)用来产生干扰信道输出的
白噪声源v(n) ,其均值为零,方差v20.001。
这两个发生器是彼此独立
的。
信道的单位脉冲响应应用升余弦表示为
参数W控制均衡器抽头输入的相关矩阵的特征值分布(R) ,并且特征值
分布随着
W 的增大而扩大
h n
2
0.5[1 cos( (n 2))]
W
n 1,2,3
(2-1)
哈尔滨工业大学实验报告
均衡器具有 M 11个抽头。
由于信道的脉冲响应 h n 关于 n 2时对称,均衡器的最 优抽头权值 w on 在 n 5时对称。
因此,信道的输入 x n 被延时了 2 5
7个样值,以便
提供均衡器的期望响应。
在n 时刻,均衡器第 1 个抽头输入为
3
u(n)
h k x(n k) v(n) (2-2)
k1
其中所有参数均为实数。
因此,均衡器输入的 11 个抽头 u(n),u(n 1),u(n
2), ,u(n 10) 相关矩阵 R 是一个对称的 11 11 矩阵。
此外,因为其脉冲响应
h n 仅当
n 1, 2, 3时是非零的。
过程噪声 v(n) 是零均值、方差为 v
2
的白噪声,因此相
关矩阵 R 是 对角矩阵,即矩阵 R 除了在主对角线及其上下紧密相邻的两条对角线上的元素外都是零, 用矩阵形式可以表示为:
其中
r(0) h 12
h 22
h 32
v 2
r(1) h 1h 2 h 2h 3 r(2) h 1h 3
方差为 v 2
0.001。
因此 h 1,h 2,h 3由赋予式(2-1)的参数 W 的值来确定。
表 2.1 自适应均衡实验参数小结
W
2.9
3.1 3.3 3.5 r(0)
1.0963 1.1568 1.2264 1.3022 r(1) 0.4388 0.5596 0.6729 0.7774 r(2)
0.0481 0.0783 0.1132 0.1511 min 0.3339 0.2136 0.1256 0.0656 max
2.0295 2.3761 2.7263
3.0707 x( R )
max /
min
6.0782
11.1238
21.7132
46.8216
r(0) r(1) r(2)
0 r(1) r(0) r(1) r(2) 0 r(2) r(1) r(0) r(1) 0 0 r(2) r(1) r(0)
0 0
r(0)
(2-3)
R
RLS 算法的自适应平衡器计算机实验
表 2.1 中列出:(1)自相关函数r (l)的值;(2)最小特征值min ,最大特征值max,特征值扩散度(R) max / min。
哈尔滨工业大学实验报告
程序框图
开始
初始化滤波器长度
M ,序列个数 N, 指
数加权因子
结束
3.1 自适应均衡实验程序框图
RLS 算法的自适应平衡器计算机实验
四
.
实验结果及分析 4.1 高信噪比(信噪比为30dB)情况下特征值扩散度的影响
在试验1中介绍了固定信噪比为30dB (方差v2等于0.001),改变W或特征值扩散度时实验结果的变化特性,图 4.1是11抽头的自适应均衡器LMS 算法的集平均平方误差
曲线。
图 4.2是11抽头的自适应均衡RLS 算法的集平均平方误差曲线, 1 图 4.1 4 种不同的特征值扩散度的LMS 算法的
哈尔滨工业大学实验报告
对比两幅图可以看出RLS 算法收敛速度较快,大约经过20 次迭代即收敛,是横向滤波器抽头数的两倍。
相比于LMS 算法,RLS算法的收敛性对特征值扩散度(R) 的变化相对不敏感,RLS 算法比LMS 算法收敛快得多。
也可以看出RLS 算法所获得的集平均平方误差的稳态值比LMS 算法小的多,这证实了我们前面所说的:RLS 算法至少在理论上失调量为零。
在高信噪比的情况下,RLS算法的收敛速度要明显大于LMS 算法。
4.2 信噪比(信噪比为10dB)情况下特征值扩散度的影响
图4.3 当W 3.1和SNR 10dB时RLS算法和LMS算法的学习曲线图4.3 显示W 3.1,信噪比SNR 10dB 时RLS算法( 0.004 , 1)和LMS 算法
(步长参数0.075 )的学习曲线。
在关心的收敛范围内,可以看出RLS 算法和LMS 算
法以几乎相同的方式进行学习,这两种算法都需要约40 次的迭代达到收敛。
但是两者最终趋于的稳态值都较大。
因此RLS 算法仅在信噪比较高的情况下可以实现快速收敛。
五. 实验结论
对比LMS 算法和RLS算法,RLS算法在高信噪比的情况下比LMS 算法收
RLS 算法的自适应平衡器计算机实验
敛速度快;RLS 算法的收敛特性对特征值扩散度(R) 的变化相对不敏感,因此收敛性表现较好。
RLS算法所获得的集平均平方误差的稳态值比LMS 算法小的多。
从以上结果可以看出在高信噪比时RLS 算法要比LMS 算法好的多,在实际工程中更容易应用
哈尔滨工业大学实验报告
附录:
1 信噪比为 30dB 情况下特征值扩散度的影响close all ;clear all; N = 210; M = 11;
%伯努利序列的个数 %滤波器长度
W = [2.9,3.1,3.3,3.5]; W = 1./W;n = [1;2;3]; %信道的冲激响应函数 delt = 0.004; lambda = 1;
loc = find(x==0); x(loc) = -1; deltv1 = 0.001;
u(:,2) = conv(h(:,2),x)+v1; u(:,3) = conv(h(:,3),x)+v1; u(:,4) = conv(h(:,4),x)+v1;
for k = 1:N-M+1
utemp = u(k+M-1:-1:k,wk); %u(n)的临时向量 Pai = P*utemp;
kn = Pai/(lambda+utemp'*Pai); %增益向量 xi = x(k+4)-w'*utemp; %先验估计误差 w = w+kn*conj(xi);
% 更新滤波器系数
P = 1/lambda*P-1/lambda*kn*utemp'*P; % 更行逆相关矩
阵
Pe(num,k,wk) = xi.*xi; %误差平方
end
h = 0.5*(1+cos(2*pi*(n-2)*W)); %指数加权因子 for num = 1:200
%独立进行 200 次实验
x = binornd(1,0.5,N,1); %产生 1,-1概率都为 0.5 的伯努利序列 v1 = sqrt(deltv1)*randn(N+2,1); %均值为 0,方差为 0.001 的白噪声 u(:,1) = conv(h(:,1),x)+v1; %不同参数 W 下的 u(n); for wk = 1:4
%4 种参数 W 进行循环计算 w = zeros(M,1); %滤波器的初始值 P = 1/delt*eye(M);
%初始化逆相关矩阵
RLS 算法的自适应平衡器计算机实验
end
end
figure; %画图
semilogy(mean(Pe(:,:,1)),'k','LineWidth',1);hold on;
semilogy(mean(Pe(:,:,2)),'--b','LineWidth',1);hold on;
semilogy(mean(Pe(:,:,3)),':m','LineWidth',1);hold on;
semilogy(mean(Pe(:,:,4)),'-.r','LineWidth',1);hold on;
xlabel('迭代次数','FontSize',16);ylabel('集平均平方误差
','FontSize',16); set(gca,'FontSize',16);
legend('W=2.9','W=3.1','W=3.3','W=3.5');grid on;
text(200,0.0041,' W=3.5','FontSize',10);
text(200,0.0025,' W=3.3','FontSize',10); text(200,0.0018,'
W=3.1','FontSize',10);
text(200,0.0013,' W=2.9','FontSize',10)实; 验2: 2 信噪比为10dB 情况下特征值扩散度的影响close all;clear all;
N = 500; % 伯努利序列个数
M = 11; % 滤波器长度
W = 3.1; n = [1;2;3];
h = 0.5*(1+cos(2*pi*(n-2)/W)); %信道单位冲激响应
mu = 0.075; %步长参数
for num = 1:200 %独立实验200 次
x = binornd(1,0.5,N,1);
loc = find(x==0);
x(loc) = -1; %1,-1的概率都为0.5的伯努利序列
deltv1 = 0.1;
v1 = sqrt(deltv1)*randn(N+2,1); %均值为0,方差为0.1的高斯白噪声u = conv(h(:,1),x)+v1; % 滤波器的输入序列
%%LMS 算法%%
w = zeros(M,1); % 初始化滤波器系数
- 9 -
哈尔滨工业大学实验报告
- 10
-
for k = 1:N-M+1 utemp = u(k+M-1:-1:k);
y(k) = w.'*utemp; e(k) = x(k+4)-y(k); LPe(num,k) = e(k).*e(k);
w =
w+mu*utemp*conj(e(k));
end
w = zeros(M,1);
delt = 0.004;
P =
1/delt*eye(M);
lambda = 1; for k = 1:N-M+1 %滤波器初始化 %初始化逆相关矩阵
%指数加权因子
utemp = u(k+M-1:-1:k);
%u(n)的临时向量 Pai = P*utemp;
kn = Pai/(lambda+utemp'*Pai); %增益向量
xi = x(k+4)-w'*utemp;
%先验估计误差 w = w+kn*conj(xi); % 更新滤波器系数 P = 1/lambda*P-1/lambda*kn*utemp'*P; % 更新逆相关矩阵 RPe(num,k) = xi.*xi;
%误差平方 end
end
figure;
%画图 semilogy(mean(LPe),'b','LineWidth',1);hold on; semilogy(mean(RPe),'r','LineWidth',1); xlabel('迭代次数 ','FontSize',16);ylabel('集平均平方误
','FontSize',16);set(gca,'FontSize',16); ylim([0.1 10]);legend('LMS','RLS');grid on;
text(300,0.6,'LMS','FontSize',16);
text(300,0.2,'RLS','FontSize',16);
%存放 u(n)的临时向量
%滤波器的输出 %估计误差 %估计误差平方。