《智能控制》实验指导书_第1页
《智能控制》实验指导书_第2页
《智能控制》实验指导书_第3页
《智能控制》实验指导书_第4页
《智能控制》实验指导书_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

分别取Tf2=1,Tf2=2,Tf2=3时系统的阶跃响应。

实验三神经网络控制系统设计实验目的本实验要求在学生掌握神经网络基本工作原理和设计方法基础上,熟悉MALAB中的神经网络工具箱,能针对实际问题建立神经网络模型,训练学生综合运用计算机来解决一些实际问题的能力。实验要求1.熟悉MALAB的神经网络工具箱;2.用人工神经网络BP算法训练一个网络系统,使之能得到y=sin(x),x∈(0,2π)的逼近曲线,并与期望曲线画在同一坐标纸上。实验内容BP神经网络工具箱函数1.newff:BP神经网络参数设置函数函数功能:构建一个BP神经网络;函数形式:net=newff(P,T,S,TF,BTF,BLF,PF,IPF,OPF,DDF)P:输入数据矩阵;T:输出数据矩阵;S:隐含层节点数;TF:节点传递函数,包括硬限幅传递函数hardlim,对称硬限幅传递函数hardlims,线性传递函数purelin,正切S型传递函数tansig,对数S型传递函数logsig;BTF:训练函数,包括梯度下降BP算法训练函数traingd,动量反传的梯度下降BP算法训练函数traingdm,动态自适应学习率的梯度下降BP算法训练函数traingda,动量反传和动态自适应学习率的梯度下降BP算法训练函数traingdx,Levenberg_Marquardt的BP算法训练函数trainlm;BLF:网络学习函数,包括BP学习规则learngd,带动量项的BP学习规则learngdm;PF:性能分析函数,包括均值绝对误差性能分析函数mae,均方差性能分析函数mse;IPF:输入处理函数;OPF:输出处理函数;DDF:验证数据划分函数。一般在使用中设置前面6个参数,后面4个参数采用系统默认参数。2.train:BP神经网络训练函数函数功能:用训练数据训练BP神经网络;函数形式:[net,tr]=train(NET,X,T,Pi,Ai);NET:待训练网络;X:输入数据矩阵;T:输出数据矩阵;Pi:初始化输入层条件;Ai:初始化输出层条件;net:训练好的网络;tr:训练过程记录。一般使用过程中设置前面3个参数,后面2个参数采用系统默认参数。3.sim:BP神经网络预测函数函数功能:用训练好的BP神经网络预测函数输出;函数形式:y=sim(net,x);x:输入数据;y:网络预测数据。4.示例:采用BP算法,构建一个两层的感知机网络,激活函数均选为logsig(对数S形函数),编制如下程序进行仿真。tica1=randn(1,90);a2=100*rand(1,90);y10=2*a2+3;y20=a2.^2+sin(a2);y1=y10+a1;y2=y20+a1;p=[y1;y2];pr=minmax(p);goal=[ones(1,90);zeros(1,90)];plot(a2,y1,'h',a2,y2,'o')net=newff(pr,[3,2],{'tansig','tansig'});net.trainParam.show=10;net.trainParam.lr=0.05;net.trainParam.goal=1e-10;net.trainParam.epochs=50000;net=train(net,p,goal);y0=sim(net,p);err0=mae(y0,goal);toc上述程序,采用前述方法生成90个实验数据,将这些数据用于神经网络的训练,并记录程序运行时间,并对神经网络性能作出评价。下面的程序可以生成10个新的实验数据,用来测试前面产生的神经网络性能。b1=randn(1,10);b2=100*rand(1,10);y10=2*b2+3;y20=b2.^2+sin(b2);h1=y10+b1;h2=y20+b1;c=[h1;h2];r=sim(net,c);t=[ones(1,10);zeros(1,10)];err=mae(r,t)如下为仿真过程中得到的图像,包括每一次运算的误差,训练状态等。用测试数据分析,实现了准确的分类。要求:1.观察程序执行时间和误差(err);2.将激活函数取为tansig(正切S形函数)后,观察仿真结果。RBF神经网络工具箱函数1.newrb:RBF神经网络参数设置函数函数功能:构建一个RBF神经网络;函数形式:net=newrb(P,T,goal,sptead,MN,DF);P:输入样本向量;T:输出样本向量;Goal:网络的目标误差;Sptead:一扩展的常数;MN:神经元个数的最大值;DF:训练过程的显示频率。该函数利用迭代方法设计径向基函数网络,每迭代一次就增加一个神经元,直到误差平方和下降到目标误差以下或神经元个数达到最大值时迭代停止。2.sim:RBF神经网络预测函数函数功能:用训练好的RBF神经网络预测函数输出;函数形式:y=sim(net,x);net:训练好的网络;x:输入数据;y:网络预测数据。仿真程序1、BP神经网络仿真程序cleark=1;p=[-1:0.05:1];t=sin(k*pi*p);plot(p,t,'-')n=10; %隐层神经元个数net=newff(minmax(p),[n,1],{'tansig','purelin'},'trainlm'); %BP神经网络的构建y1=sim(net,p); %BP神经网络预测输出,figure;plot(p,t,'-',p,y1,'--'); %t为原正弦函数图形,y1为没有经过调整权值的图形net.trainParam.epochs=50; %网络的迭代次数net.trainParam.goal=0.01; %网络的误差net=train(net,p,t);y2=sim(net,p);figure;plot(p,t,'-',p,y1,'--',p,y2,'--'); %t为原正弦函数图形,y1为没有经过调整权值的图形,y2为经过调整权值的图形2、RBF神经网络仿真程序cleark=1;p=[-1:0.05:1];t=sin(k*pi*p);plot(p,t,'-');eg=0.01; %目标误差sc=1; %径向基函数的宽度net=newrb(p,t,eg,sc); %RBF神经网络的构建,y1=sim(net,p);figure;plot(p,t,'-',p,y1,'--'); %t为原正弦函数图形,y1为经过调整权值的图形实验报告应用BP网络逼近非线性函数t=sin(x),x=[0,2*pi],学习步长l为0.1,样本集取n=20点,采用单层网络结构,隐含层中取6个单元,总学习次数取5000次,学习误差要求小于0.01,输入输出层神经元激励函数均取f(x)=x,隐含层神经元激励函数取Sigmoid函数,f(x)=1/(1+e^(-x)),在matlab中可以用函数logsig来表示。参考程序:%初始化l=0.1; %学习步长为0.5 n=20; %输入样本数n cells=6; %取6个神经元times=5000; %学习总次数x=(linspace(0,2*pi,n)); %输入初始值t=sin(x); %BP网络需要学习的函数tw1=rand(cells,1); %第一层连接权系数w2=rand(1,cells); %第二层连接权系数yw1=rand(cells,1); %第一层阈值yw2=rand; %第二层阈值y=rand(1,n);%输出初始值counts=1;%学习次数%开始学习fori=1:times ei=0;%网络逼近初始误差平方和fora=1:n %对n个样本开始学习net1=w1*x(a)-yw1; %net1为cells*1矩阵out=logsig(net1); %out为cells*1矩阵net2=w2*out-yw2; y(a)=net2; %第a个样本输出即为net2det2=t(a)-y(a); %输出与期望间的广义误差det2det1=((det2*(w2)').*out).*(1-out); %广义误差det1w1=w1+det1*x(a)*l; w2=w2+(det2*out)'*l; %连接权更新yw1=-det1*l+yw1; yw2=-det2*l+yw2; %两层阈值更新ei=ei+det2^2/2; %误差平方和e(i)=ei;endifei<0.01 %学习要求误差小于0.01break; endcounts=counts+1; %学习次数自加end%逼近曲线fora=1:nnet1=w1*x(a)-yw1;out=logsig(net1);net2=w2*out-yw2;y(a)=net2;end %利用上述学习方法输出逼近值subplot(2,1,1);plot(x,t,x,y); %绘制期望曲线与实际曲线在同一坐标纸上gridon;xlabel('x');ylabel(

温馨提示

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

评论

0/150

提交评论