智能控制理论基础实验报告(北科大版)_第1页
智能控制理论基础实验报告(北科大版)_第2页
智能控制理论基础实验报告(北科大版)_第3页
智能控制理论基础实验报告(北科大版)_第4页
智能控制理论基础实验报告(北科大版)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《智能控制理论基础》实验报告学院:专业班级:姓名:学号:

实验一采用SIMULINK的系统仿真一、实验目的及要求:1.熟悉SIMULINK工作环境及特点2.掌握线性系统仿真常用基本模块的用法3.掌握SIMULINK的建模与仿真方法二、实验内容:了解SIMULINK模块库中各子模块基本功能………连续系统模块………离散系统模块 ………函数与表模块…………数学模块………非线性模块………信号与系统模块………输出模块………输入源模块………子系统模块微分微分积分积分步长延时状态空间模型传递函数模型传输延迟可变传输延迟零极点模型直接查询表直接查询表函数功能块

MATLAB函数S函数(系统函数)绝对值点乘绝对值点乘增益逻辑运算符号函数相加点死区特性死区特性手动开关继电器特性饱和特性开关模块信号分离模块信号复合模块信号分离模块信号复合模块输出端口示波器模块输出仿真数据到文件输出仿真数据到工作空间通过实验熟悉以上模块的使用。2.SIMULINK的建模与仿真方法(1)打开模块库,找出相应的模块。鼠标左键点击相应模块,拖拽到模型窗口中即可。(2)创建子系统:当模型大而复杂时,可创建子系统。(3)模块的封装:(4)设置仿真控制参数。3.SIMULINK仿真实际应用PID控制器的仿真实现。控制对象的开环传递函数如下图:加入PID控制器,求系统单位负反馈闭环单位阶跃响应,要求通过调节器的作用使系统满足超调量20%,上升时间3s,调节时间10s的要求。使输出曲线如下图。要求加入的PID控制器封装成一个模块使用。SIMULINK仿真结果如下:三、实验报告要求:1.针对具体实例写出上机的结果,体会其使用方法,并作出总结。在Matlab的SIMULINK中仿真,首先绘制出实验要研究的开环传递系统,再加上负反馈形成闭环传递系统,在最后加上PID调节器调整各参数,使阶跃相应曲线达到实验要求。首先调节比例系数,比例系数越大,响应速度越快,但比例系数过大系统会不稳定,且无法消除稳态误差,需要加入积分作用;调节积分时间常数,使得系统快速消除稳态误差;通过不断改善各系数,优化相应曲线,最终使相应曲线达到实验要求。实验二BP神经网络设计一、实验目的1.熟悉神经网络的特征、结构以及学习算法2.了解神经网络的结构对控制效果的影响

3.掌握用MATLAB实现神经网络控制系统仿真的方法。二、实验原理人工神经网络ANN(ArtificialNeuralNetwork)系统由于具有信息的分布存储、并行处理以及自学习能力等优点,已经在信息处理、模式识别、智能控制及系统建模等领域得到越来越广泛的应用。尤其是基于误差反向传播(BackPropagation)算法的多层前馈网络(Muhiple-LayerFeedforwardNetwork),即BP网络,可以以任意精度逼近任意连续函数,所以广泛地应用于非线性建模、函数逼近和模式分类等方面。1.BP网络算法实现BP算法属于算法,是一种监督式的学习算法。其主要思想是:对于M个输人学习样本,已知与其对应的输出样本。学习的目的是用网络的实际输出与目标矢量之间的误差来修改其权值,使实际与期望尽可能地接近,即使网络输出层的误差平方和达到最小,他是通过连续不断地在相对于误差函数斜率下降的方向上计算网络权值和偏差的变化而逐渐逼近目标的。每一次权值和偏差的变化都与网络误差的影响成正比,并以反向传播的方式传递到每一层。2.BP网络的设计在MATLAB神经网络工具箱中.有很方便的构建神经网络的函数。对于BP网络的实现.其提供了四个基本函数:newff,init.train和sim.它们分别对应四个基本步骤.即新建、初始化、训练和仿真(1)初始化前向网络初始化是对连接权值和阈值进行初始化。initff函数在建立网络对象的同时,自动调用初始化函数,根据缺省的参数对网络的连接权值和阈值进行初始化。格式:[wl,bl,w2,b2]=initff(p,sl,fl,s2,f2)其中P表示输入矢量,s表示神经元个数,f表示传递函数,W表示权值,b表示阈值。(2)训练网络BP网络初始化以后,就可对之进行训练了。函数采用批处理方式进行网络连接权值和阈值的更新,要对其参数进行设置,如学习步长、误差目标等,同时在网络训练过程中,还用图形显示网络误差随学习次数的变化。①基本梯度下降法训练网络函数trainbp格式:[wl,bl,w2,b2,te,tr];trainbp(wl,bl,fl,w2,b2,f2,p,t,tp)②带有动量项的自适应学习算法训练网络函数trainbpx格式:[wl,bl,w2,b2,te,tr]=trainbpx(wl,bl,fl,w2,b2,f2,p,t,tp)其中P表示输入矢量,t表示目标矢量,te为网络的实际训练次数,tr为网络训练误差平方和的行矢量,tp表示网络训练参数(如学习率、期望误差、最大学习次数等)。(3)网络仿真仿真函数simff用来对网络进行仿真。利用此函数,可以在网络训练前后分别进行输入输出的仿真,以做比较,从而对网络进行修改评价。格式:a=simff(p,wl,b1,fl,w2,b2,f2)其中a表示训练好的BP网络的实际输出。三、实验内容建立一个只有一个隐层的BP网络,来逼近一个函数,其隐层的神经元个数为6.隐层和输出层的转移函数分别为双曲正切S函数和线性函数,训练函数为trainlm。输入向量为P=一1:0.1:1.目标向量为t=p.2。由于本实例数据量少。所以采用元素列表方式输入数据BP网络的具体实现如下:1.建立网络Net=newff([一11],[61],{‘tansig’,’purelin’},’trainlm’);2.初始化采用默认的初始化参数对网络进行初始化,即net=init(net)3.网络的训练训练函数的参数设置如下:net.trainParam.show=10:net.trainParam.epochs=100;net.trainParam.goal=0.0001:net.trainParam.1r=0.01:网络的训练函数如下:[net,tr]=train(net.P.t);4.仿真在这个网络的设计中.共用到了三次sim函数.旨在对网络训练结果进行比较。第一次是在对网络进行初始化之后,训练之前,用y=sim(net,p)来进行仿真;第二次是在网络训练之后.再次用该函数进行仿真。四、实验报告1.给出BP神经网络程序清单。p=-1:0.1:1;t=p.^2;plot(p,t);title('要逼近的函数曲线');net=newff([-11],[61],{'tansig','purelin'},'trainlm');net=init(net);y1=sim(net,p);figureplot(p,t,'-',p,y1,'-.');xlabel('p');ylabel('t/y1');title('未训练的BP网络输出和原函数曲线');net.trainParam.show=10;net.trainParam.epochs=100;net.trainParam.goal=0.0001;net.trainParam.lr=0.01;[net,tr]=train(net,p,t);y2=sim(net,p);figureplot(p,t,'-',p,y1,'-.',p,y2,'.');xlabel('p');ylabel('t/y1/y2');title('采用trainlm函数训练后的输出');2.记录实验数据和曲线,并作出总结。图1要逼近的函数曲线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论