- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
过程辨识
过程辨识试验报告
学号:201120507006 姓名:徐文杰
实验目的
学会用Matlab实现最小二乘法的辨识系统参数;
进一步熟悉Matlab的界面和基本操作;
了解并掌握Matlab中一些函数的作用和使用。
实验要求
首先用simulink仿真产生二个系统,取第一个系统前半截序列和第二个系统的后半截序列连接为系统的辨识参数,再分别用普通递推法、遗忘因子递推法和限定记忆递推法对所产生的序列进行辨识。
三、试验内容:
一 最小二乘的普通递推法
%最小二乘法的辨识
%Z(k+2)=1.5*Z(k+1)-0.7*Z(k)+u(k+1)+0.5*u(k)+v(k)
%========================================
zz = zeros(2,1);uu = zeros(3,1);
Q = zeros(4,1);P = (1e+6)*eye(4);
t1 = 1;Q(1,1) = 0.001;
Q(2,1) = 0.001;
Q(3,1) = 0.001;
Q(4,1) = 0.001;
%v = randn(1,4000);
Z = [M1(1:2000,:);M2(2001:4000,:)];
u = uout;
for k=1:4000
time(k) = k*1;
%z(k) = 1.5*zz(2,1)-0.7*zz(1,1)+uu(2,1)+0.5*uu(1,1)+v(k);
X = [-zz(2,1);-zz(1,1);uu(2,1);uu(1,1)];
for i = 1:1
zz(i,1) = zz(i+1,1);
end
zz(2,1) = Z(k) ;
K = P*X*inv(t1+X*P*X);
P = [eye(4)-K*X]*P/t1;
Q = Q+K*(Z(k)-X*Q)
for i= 1:1
uu(i,1)= uu(i+1,1);
end
uu(2,1) = u(k);
End
辨识得到的结果为
Q =
1.6036
0.6069
0.9573
0.7322
参数 a1 a2 b1 b2 真值 1.6 0.6 1.0 0.6 估计值 1.6036 0.6069 0.9573 0.7322
二 遗忘因子递推法
%带遗忘因子的最小二乘法辨识
%Z(k+2)=1.5*Z(k+1)-0.7*Z(k)+u(k+1)+0.5*u(k)+v(k)
%========================================
zz = zeros(2,1);uu = zeros(3,1);
Q = zeros(4,1);P = (1e+6)*eye(4);
t1 = 0.98;Q(1,1) = 0.001;
Q(2,1) = 0.001;
Q(3,1) = 0.001;
Q(4,1) = 0.001;
%v = randn(1,4000);
Z = [M1(1:2000,:);M2(2001:4000,:)];
u = uout
for k=1:4000
%z(k) = 1.5*zz(2,1)-0.7*zz(1,1)+uu(2,1)+0.5*uu(1,1)+v(k);
k1(k) = k*1;
X = [-zz(2,1);-zz(1,1);uu(2,1);uu(1,1)];
for i = 1:1
zz(i,1) = zz(i+1,1);
end
zz(2,1) = Z(k) ;
K = P*X*inv(t1+X*P*X);
P = [eye(4)-K*X]*P/t1;
Q = Q+K*(Z(k)-X*Q)
for i= 1:1
uu(i,1)= uu(i+1,1);
end
uu(2,1) = u(k);
End
辨识得到的结果为
Q =
1.5971
0.6017
0.7001
0.7142
参数 a1 a2 b1 b2 真值 1.6 0.6 1.0 0.6 估计值 1.5971 0.6017 0.7001 0.7142
三 限定记忆递推法
%限定记忆最小二乘的递推算法
%Z(k+2)=1.5*Z(k+1)-0.7*Z(k)+u(k+1)+0.5*u(k)+v(k)
%========================================
Z=[M1(1:2000,:);M2(2001:4000,:)];
U = uout;
%递推求解
P_a=100*eye(4); %估计方差
Theta_a=[3;3;3;3];
Pstore=zeros(4,3981); %存放方差中间过程
Theta_
文档评论(0)