24小时热门版块排行榜    

查看: 809  |  回复: 5
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zzbei

木虫 (正式写手)

[交流] 自适应matlab程序(LMS和RLS)

%lms算法源程序

clear all
close all
%channel system order
sysorder = 5 ;
% Number of system points
N=2000;
inp = randn(N,1);
n = randn(N,1);
[b,a] = butter(2,0.25);
Gz = tf(b,a,-1);
%This function is submitted to make inverse Z-transform (Matlab central file exchange)
%The first sysorder weight value
%h=ldiv(b,a,sysorder)';
% if you use ldiv this will give h :filter weights to be
h= [0.0976;
0.2873;
0.3360;
0.2210;
0.0964;];
y = lsim(Gz,inp);
%add some noise
n = n * std(y)/(10*std(n));
d = y + n;
totallength=size(d,1);
%Take 60 points for training
N=60 ;  
%begin of algorithm
w = zeros ( sysorder , 1 ) ;
for n = sysorder : N
  u = inp(n:-1:n-sysorder+1) ;
y(n)= w' * u;
e(n) = d(n) - y(n) ;
% Start with big mu for speeding the convergence then slow down to reach the correct weights
if n < 20
mu=0.32;
else
mu=0.15;
end
  w = w + mu * u * e(n) ;
end
%check of results
for n = N+1 : totallength
  u = inp(n:-1:n-sysorder+1) ;
y(n) = w' * u ;
e(n) = d(n) - y(n) ;
end
hold on
plot(d)
plot(y,'r');
title('System output') ;
xlabel('Samples')
ylabel('True and estimated output')
figure
semilogy((abs(e))) ;
title('Error curve') ;
xlabel('Samples')
ylabel('Error value')
figure
plot(h, 'k+')
hold on
plot(w, 'r*')
legend('Actual weights','Estimated weights')
title('Comparison of the actual weights and the estimated weights') ;
axis([0 6 0.05 0.35])

% RLS 算法
randn('seed', 0) ;
rand('seed', 0) ;

NoOfData = 8000 ;  % Set no of data points used for training
Order = 32 ;    % Set the adaptive filter order

Lambda = 0.98 ;    % Set the forgetting factor
Delta = 0.001 ;    % R initialized to Delta*I

x = randn(NoOfData, 1) ;% Input assumed to be white
h = rand(Order, 1) ;  % System picked randomly
d = filter(h, 1, x) ;  % Generate output (desired signal)

% Initialize RLS

P = Delta * eye ( Order, Order ) ;
w = zeros ( Order, 1 ) ;

% RLS Adaptation

for n = Order : NoOfData ;
   
  u = x(n:-1:n-Order+1) ;
  pi_ = u' * P ;
  k = Lambda + pi_ * u ;
  K = pi_'/k;
  e(n) = d(n) - w' * u ;
  w = w + K * e(n) ;
  PPrime = K * pi_ ;
  P = ( P - PPrime ) / Lambda ;
  w_err(n) = norm(h - w) ;

end ;

% Plot results

figure ;
plot(20*log10(abs(e))) ;
title('Learning Curve') ;
xlabel('Iteration Number') ;
ylabel('Output Estimation Error in dB') ;

figure ;
semilogy(w_err) ;
title('Weight Estimation Error') ;
xlabel('Iteration Number') ;
ylabel('Weight Error in dB') ;

[ Last edited by 幻影无痕 on 2006-10-26 at 07:47 ]
回复此楼
经历就是一种享受
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sanheiliu

木虫 (小有名气)

好用!谢谢!!!
6楼2006-05-16 23:02:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zzbei 的主题更新
普通表情 高级回复(可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 厅级项目出校却没中 +3 Iwould 2024-06-23 3/150 2024-06-24 00:32 by MichaelBlunt
[考博] 关于读博感觉自己很抓马 +11 小九月 2024-06-19 15/750 2024-06-24 00:06 by 小九:D
[基金申请] 能看出是否上会了吗 +6 articlefan 2024-06-23 6/300 2024-06-24 00:04 by 一年有一年
[考研] 刚当完兵回来想考研 +3 五官在线 2024-06-23 5/250 2024-06-23 23:41 by ms629
[基金申请] 博后面上和特助今天出吗? +39 逗您玩 2024-06-21 75/3750 2024-06-23 21:37 by 悲催科研狗
[找工作] 高校两个offer选择 +22 cowox2021 2024-06-18 23/1150 2024-06-23 21:27 by 小老虎乖乖
[有机交流] 生成亚胺的反应怎么能进行完全 +3 1369836 2024-06-23 3/150 2024-06-23 18:44 by hwqMSE
[基金申请] 青年和面上,哪个上会难度更大 +12 今晚推荐22 2024-06-21 17/850 2024-06-23 14:44 by 今晚推荐22
[基金申请] F03青年基金函评结果 +5 暨阳一只柴 2024-06-19 6/300 2024-06-23 14:30 by adsqsj
[硕博家园] 回家两天,不想呆了 +4 368ghnf 2024-06-22 4/200 2024-06-23 13:43 by lhjr123
[论文投稿] Scientific Reports二审90天了,催稿也没反应怎么办? +10 智晨君 2024-06-18 14/700 2024-06-23 13:33 by mage9162
[基金申请] 刚刚收到科研之友邮件 +27 olivermiaoer 2024-06-19 40/2000 2024-06-23 11:45 by qq632458
[有机交流] 求助 10+7 脂质纳米粒 2024-06-20 9/450 2024-06-23 07:52 by buhui7829
[基金申请] 工材口青年基金大概什么样能上会? +15 今晚推荐22 2024-06-20 21/1050 2024-06-22 23:04 by qbn0326
[基金申请] 江南大学到瑞士招聘,称取消非升即走,改预聘+长聘 +24 babu2015 2024-06-18 29/1450 2024-06-22 16:29 by 风今25
[有机交流] 间氨基苯甲酸甲酯合成 5+3 pengdatao 2024-06-19 6/300 2024-06-22 10:58 by zyp0009928
[论文投稿] 水果保鲜投稿 5+4 zhengjiandong 2024-06-19 6/300 2024-06-21 22:27 by 宋小爷
[基金申请] 面青地会评时间??? +7 Axvdvbfs 2024-06-19 8/400 2024-06-20 11:16 by 路遥还有谁
[基金申请] 太卷了 +14 laoyuefubio 2024-06-17 27/1350 2024-06-20 09:52 by htjwqy
[基金申请] 博后基金刷到的BUG,图片来的更直观 +15 carolloo 2024-06-17 16/800 2024-06-19 09:42 by msjy
信息提示
请填处理意见