- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在线辨识
在线辨识 在线辨识的概念 计算机本身参与数据采集、处理和系统辨识,不断修正辨识结果的过程,又称联机辨识 是60年代起随着数字电子计算机技术的发展而发展起来的辨识技术。它有两个明显的特点 一是充分利用每次采集到的新数据,使辨识结果不断地更新 二是要求辨识过程的全部运算都在两次采样时刻之间全部完成,根据这一点在线辨识又称为实时辨识 在线辨识方法常用于自适应控制和预测,可以克服因慢时变和数据陈旧而引起的失效 为了降低对计算机内存的要求和提高实时性,在线辨识算法一般以时间递推算法的形式出现 在线辨识 在线辨识的概念 在线辨识的框图 在线模型一方面对控制系统的运行提供指导 另一方面在线模型又通过实时的输入输出数据,不断修正自己 在线辨识 在线辨识的算法格式 通常,辨识可以认为是从数据Zt到参数θ的映射 然而这种形式却不能应用于在线辨识的算法中,因为Zt的大小不是固定的,因此计算时间是无法预测的 对于在线辨识,需要符合以下的算法格式 由此可见,X(t)可以看做是现在的辨识状态,它是由上一步的状态X(t)和这一步的采样值y(t),u(t)得到的,每一个周期的时间是固定的 (6.1) 在线辨识 带有权重的最小二乘法 在上一章节,我们介绍了带有权重的最小二乘估计 由此得到 (6.2) 在线辨识 带有权重的最小二乘法 如果采用(6.2)的表达式计算最小二乘估计,我们必须知道t时刻以前的全部历史数据序列 假设我们知道t-1时刻的θ的估计值θt-1 ,我们能否应用θt-1 以及t时刻的最新数据y(t)和u(t)计算θt 由(6.2)可以看出,R(t)和R(t-1)以及f(t)和f(t-1)它们之间是有一定的联系的 基于带有权重的最小二乘法,我们可以推导出在线的最小二乘在线参数辨识方法 在线辨识 在线最小二乘法 我们定义如下的权重公式 从上式可以看出,离当前时间值t越近,数据的权重越大 表现在历史数据上,可以得到t时刻和t-1时刻之间的关系 (6.3) (6.4) 在线辨识 在线最小二乘法 由(6.2),(6.3)和(6.4)可以得出 (6.5) 由此,我们得到 (6.6) 它符合(6.1)要求的在线递推算法的要求 在线辨识 在线最小二乘法 为了避免计算R-1(t)所带来的麻烦,我们设 对于(6.6),设 (6.7) 那么 以下有矩阵求逆阵的定理 在线辨识 在线最小二乘法 根据P(t)的值,可以得到 设 在线辨识 在线最小二乘法 这样就可以得到递推最小二乘法的公式 在线辨识 初始值问题 对于P和θ的初始值问题,我们可以选择 其中P0可以取值为单位阵,θi可以用离线辨识的初步结果来初始化 如果辨识时间够长,初始值的取值对辨识结果的影响不大 在线辨识 例6.1 使用在线辨识的方法辨识例5.1中的模型 在线辨识 例6.1 使用在线辨识的方法辨识例5.1中的模型 %初始化 na=1; nb=1; n=max(na,nb); lan=0.99; N=size(dataout); N=N(1); theta=zeros(na+nb,1); L=zeros(na+nb,1); P=eye(na+nb); 在线辨识 例6.1 使用在线辨识的方法辨识例5.1中的模型 %在线辨识 for i=1+n:N phi=[]; for j=1:na phi=[phi,dataout(i-j,1)]; end for j=1:nb phi=[phi,dataout(i-j,2)]; end phi=phi; L=P*phi/(lan+phi*P*phi); theta=theta+L*(dataout(i,1)-phi*theta) P=(P-P*phi*phi*P/(lan+phi*P*phi))/lan; end
原创力文档


文档评论(0)