- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
系统辨识最小二乘法作者:王景
系统辨识最小二乘法
作者:王景
西 北 工 业 大 学
系统辩识大作业
题目:最小二乘法系统辨识
一、问题重述:
用递推最小二乘法、加权最小二乘法、遗忘因子法、增广最小二乘法、广义最小二乘法、辅助变量法辨识如下模型的参数
Y
Y
G?
U
s4?6.5s3?14s2?11.5s?3
?
s4?20s3?120s2?232s?320
离散化有
z^4-3.935z^3+5.806z^2-3.807z+0.9362
=z^4-3.808z^3+5.434z^2-3.445z+0.8187
噪声的成形滤波器
E
E
N?
W
1
?
s4?20s3?120s2?232s?320
离散化有
4.004e-010z^3+4.232e-009z^2+4.066e-009z+3.551e-010
=z^4-3.808z^3+5.434z^2-3.445z+0.8187
采样时间0.01s
要求:1.用Matlab写出程序代码;
画出实际模型和辨识得到模型的误差曲线;
画出递推算法迭代时各辨识参数的变化曲线;
最小二乘法:
在系统辨识领域中,最小二乘法是一种得到广泛应用的估计方法,可用于动态,静态,线性,非线性系统。在使用最小二乘法进行参数估计时,为了实现实时控制,必须优化成参数递推算法,即最小二乘递推算法。这种辨识方法主要用于在线辨识。MATLAB是一套高性能数字计算和可视化软件,它集成概念设计,算法开发,建模仿真,实时实现于一体,构成了一个使用方便、界面友好的用户环境,其强大的扩展功能为各领域的应用提供了基础。对
于一个简单的系统,可以通过分析其过程的运动规律,应用一些已知的定理和原理,建立数学模型,即所谓的“白箱建模”。但对于比较复杂的生产过程,该建模方法有很大的局限性。由于过程的输入输出信号一般总是可以测量的,而且过程的动态特性必然表现在这些输入输出数据中,那么就可以利用输入输出数据所提供的信息来建立过程的数学模型。这种建模方法就称为系统辨识。把辨识建模称作“黑箱建模”。系统辨识又分为参数辨识和阶次辨识,在本文中只讨论参数辨识问题
最小二乘递推算法所用的模型:最小二乘递推算法为:
Z(k)=B()u(k)+v(k)
v
v(k)
N(z?1)
e(k)
u(k)
G(z?1)
+
y(k)
z(k)
图1最小二乘递推算法辨识实例结构图
v(k)是服从N(0,1)分布的不相关随机噪声。
G(z?1)?B(z?1) ,N(z?1)?D(z?1) ,
A(z?1) C(z?1)
考虑如图1示仿真对象,系统的差分方程为
z(k)=3.808*z(k-1)-5.434*z(k-2)+3.445*z(k-3)-0.8187*z(k-4)+u(k)-3.935*u(k-1)+5.806*u(k-2)-3.807*u(k-3)+0.9362*u(k-4)+v(k) (3.69)
仿真对象选择如下的模型结构
z(k)?a
1
z(k?1)?a
2
z(k?2)?a3z(k?3)?a4z(k?4)
?bu(k)?bu(k?1)?b3u(k?2)?b
1 2 4
u(k?3)?b5u(k?4)?v(k)
(3.68)
其中,v(k)是服从正态分布的白噪声N(0,1)。输入信号采用4位移位寄存器产生的M序列,
L幅度为1。按式(3.69)构造h(k);加权阵取单位阵Λ I;利用式(3.61)计算K(k)、θ(k)
L
和P(k),计算各次参数辨识的相对误差,精度满足要求式(3.67)后停机。
最小二乘递推算法辨识的Malab6.0程序流程图:
最小二乘递推算法辨识程序
clear%清理工作间变量L=35;%M序列的周期
y1=1;y2=1;y3=1;y4=0;%四个移位寄存器的输出初始值fori=1:L;%开始循环,长度为L
x1=xor(y3,y4);%第一个移位寄存器的输入是第三个与第四个移位寄存器的输出的“或”
x2=y1;%第二个移位寄存器的输入是第一个移位寄存器的输出x3=y2;%第三个移位寄存器的输入是第二个移位寄存器的输出x4=y3;%第四个移位寄存器的输入是第三个移位寄存器的输出
y(i)=y4;%取出第四个移位寄存器的幅值为0和1的输出信号,即M序列i
原创力文档


文档评论(0)