- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Matlab仿真线性与非线性动态系统建模教学方法探讨
基于Matlab仿真线性与非线性动态系统建模教学方法探讨 [摘要]本文采用Matlab仿真产生模拟的可用于线性与非线性动态系统建模的输入输出数据。根据这些数据,设计程序生成建模所需的数据矩阵。同时给出了最小二乘法、最大似然估计、BP神经网络、RBF神经网络建模的样例程序。为学生熟悉、比较及应用各种线性与非线性动态系统建模方法提供了条件。 [关键词]动态系统建模 仿真 人工神经网络 在讲授完线性与非线性动态系统建模方法基本理论以后,需要让学生进行上机实验[1]以达到以下目的:1进一步加深理解学习的基本理论;2各种参数的选择对建模效果的影响;3各种建模方法的优缺点及适用场合。为了达到这些目的,我们模拟实际应用时的情况,提供给学生模拟的输入输出数据,以便学生利用这些数据,进行编程建立模型。同时我们编程实现基于最小二乘法、最大似然估计、BP神经网络、RBF神经网络的动态系统建模方法[2,3],学生可以利用这些Matlab程序进行各种方法的学习、各种情况下建模效果的对比,以及各种方法的适用场合的对比。 一、 基于Matlab仿真的线性动态系统最小二乘法建模的教学 假设系统的差分方程为:y(k)=-a1y(k-1)-a2y(k-2)-…-any(k-n)+b0u(k)+b1u(k-1)+…+bmu(k-m)+e(k)。其中y(k)为输出,u(k)为输入,e(k)为模型残差。假定建模用的数据序列从y(k)开始,则构建以下数据矩阵及数据向量: 如果模型残差为白噪声(实际情况多为有色噪声,但当噪声强度不大时,可近似当作白噪声处理),则根据最小二乘法,由这 组数据估计得到的参数 。 以上的最小二乘法需要输入(u(K-m),u(K-1),…,u(K+N-1))和输出(y(K-n),y(K-n+1),…,y(K+N-1))数据,我们可用以下的Matlab程序(程序1)产生模拟的输入输出数据(程序中采用了一个简单的二阶离散系统,学生实验时可换成需要的模型),并形成数据矩阵及数据向量。 程序1: clear all K=3;%残差序列开始序号 N=1000;%共N组数据 n=2;%对应 m=2;%对应 u=randn(1,K+N-1)*0.1;%随机产生输入数据 for i=1:1:n y(i)=0;%设定初始状态 end for k=n+1:1:K+N-1 y(k)=0.2*y(k-1)+0.5*y(k-2)+u(k)+0.3*u(k-1);%根据输入计算输出 end y=y+randn(1,K+N-1)*0.001; %在求得的单位阶跃响应上叠加噪声用以模拟测量误差 X=zeros(N,n+m+1); for i=K:1:K+N-1 for j=1:1:n X(i-K+1,j)=y(i-j);%构成矩阵X end for j=n+1:1:n+m+1 X(i-K+1,j)=u(i-j+n+1); %构成矩阵X end end for i=K:1:K+N-1 Y(i-K+1)=y(i);%构成向量Y end save X X; save Y Y; save N N; 运行程序1将生产数据矩阵X(保存在X.mat中)及数据向量Y(保存在Y.mat中)。以下是根据最小二乘法估计参数的程序(程序2)。 程序2: clear all load X; load Y; XT=X; sita=(XT*X)^(-1)*XT*Y%计算得到估计的参数sita 运行程序2,将得到估计的参数sita。如某一次运行中sita=[0.2004,0.4998,0.9998,0.2995,-0.0005]T,与模型中的值(见程序1)a1=0.2,a2=0.5,b0=1,b1=0.3,b2=0非常接近。 二、 基于Matlab仿真的线性动态系统最大似然估计建模的教学 在模型残差为白噪声的假设下,最大似然估计和最小二乘法在估计参数时是相同的,但最大似然估计还能估计出噪声的强度,程序3为相应的程序。 程序3: clear all load X; load Y; load N; XT=X; sita=(XT*X)^(-1)*XT*Y Z=Y-X*sita; StdV=sqrt(Z*Z/N)%估计标准差 运行程序3,得到和程序2一样的参数估计值,除此之外,还能得到噪声的标准差(或方差)。如某一次的运行结果为StdV=0.0011,和模型中值(见程序1)0.001非常接近。 三、 基于Matlab仿真的非线性动态系统BP神经网络建模的教学 基于神经网络的非线性动态系统
您可能关注的文档
最近下载
- 1安全生产基础档案管理制度、2安全生产责任目标考核奖惩制度、3手残事故应急处置制度、4道路交通安全事故处理报告制度.docx VIP
- 第十章 施工放样测量.pptx VIP
- 2025年邯郸市疾病和预防控制中心人员招聘笔试备考题库及答案解析.docx VIP
- 旧房加固与改造施工方案探讨.docx VIP
- 施工测量放样培训课件.pptx VIP
- YB∕T 4001.1-2019 钢格栅板及配套件 第1部分:钢格栅板.docx VIP
- 施工测量放样(复核)记录表.xlsx VIP
- 施工放样记录表.xls VIP
- YB∕T 4858-2020 用后耐火材料回收利用技术规范.pdf
- 施工放样测量记录表(带计算程序).xls VIP
文档评论(0)