智能控制实验报告(2008~2009 学年春季学期)课程名称:智能控制理论与应用任课教师:杜尚丰班级:自动061学号:0608140612姓名:孙倩实验题目1: S ISO PID 神经网络控制姓名: 孙倩 班级: 自动化061 学号: 0608140612一、仿真模型描述单变量P I D 神经网络的结构形式如下:单变量神经网络的结构图本实验用PID 神经网络实现单输入单输出解耦系统的模型仿真,用到的仿真模型为:y(k+1)=0.8sin(y(k))+1.2u(k), k<40y(k+1)=0.8sin(0.4y(k))+1.2u(k), k>=40系统输入: r(k)=1(k)二、仿真参数说明系统的输入向量是:r(k)=1;输出向量是:y(k+1);系统的控制向量为:u(k);准则函数为:21111()[()()]2E k r k y k =-权系地训练(取η1=η2=0.8)方式:W(k+1)=W(k)- η+β[W(k)=W(k-1)]可得:2w i (k+1)=2w i (k)+ ηe(k+1)o i (k)+β[2w i (k)-2w i (k-1)]1w j (k+1)=1w j (k)+ ηe(k+1)f[x j (k)][2w j (k)]y(k)+ β[1w j (k)-1w j (k-1)]三、仿真结果分析以下四幅图分别是系统输入r ,系统输出y ,系统控制量u ,以及系统误差error.00.20.40.60.80.511.52时间(秒)系统输入r 100.20.40.60.80.511.5时间(秒)系统输出y 100.20.40.60.80.20.40.60.8时间(秒)系统控制量u 100.20.40.60.8-0.50.51时间(秒)系统误差e r r o r 11、从图中我们可以看得到:当对象特性变化(k ≥40)时,由于PID 神经网络控制 器权系值地不断调整,使控制量u(k)变化,从而系统地输出经过很短的时间跟踪输入。
2、通过PID 控制算法,在系统控制量的作用下我们最终实现了跟踪控制,动态响应性能非常好,达到了输出量y 稳态误差为零的效果。
四、仿真程序:%PID 神经网络单输入单输出解耦模型仿真 %输入为1%输入层单独成神经网,输出成一个神经网 clear all; close all; s=1;if s==1 %初始化 y1_1=0.0;u1_1=0.0;u1_2=0.0;error1_1=0.0;error1_2=0.0;wo_111=0.1*rand(1);wo_111_1=wo_111;wo_112=0.1*rand(1);wo_112_1=wo_112;wo_113=0.1*rand(1);wo_113_1=wo_113;wo_121=0.1*rand(1);wo_121_1=wo_121;wo_122=0.1*rand(1);wo_122_1=wo_122;wo_123=0.1*rand(1);wo_123_1=wo_123;wi_111=0.1*rand(1);wi_111_1=wi_111;wi_112=0.1*rand(1);wi_112_1=wi_112;wi_121=0.1*rand(1);wi_121_1=wi_121;wi_122=0.1*rand(1);wi_122_1=wi_122;wi_131=0.1*rand(1);wi_131_1=wi_131;wi_132=0.1*rand(1);wi_132_1=wi_132;x11=0.0;x12=0.0;x13=0.0;q11=0.0;q12=0.0;q13=0.0;x11_1=x11;x12_1=x12;x13_1=x13;q11_1=q11;q12_1=q12;q13_1=q13;endts=0.001;for k=1:1:800time(k)=k*ts;if s==1r1(k)=1;if 1<k<40y1(k)=0.8*sin(y1_1)+1.2*u1_1;elsey1(k)=0.8*sin(0.4*y1_1)+1.2*u1_1; enderror1(k)=r1(k)-y1(k);end%中间层输入输出x11(k)=wi_111_1*r1(k)+wi_112_1*y1(k);x12(k)=wi_121_1*r1(k)+wi_122_1*y1(k);x13(k)=wi_131_1*r1(k)+wi_132_1*y1(k);if x11(k)>1q11(k)=1;elseif x11(k)<-1q11(k)=-1;else q11(k)=x11(k);endif(q12_1+x12(k))>1q12(k)=1;elseif (q12_1+x12(k))<-1q12(k)=-1;else q12(k)=q12_1+x12(k);endif (x13(k)-x13_1)>1q13(k)=1;elseif (x13(k)-x13_1)<-1q13(k)=-1;else q13(k)=x13(k)-x13_1;end%输出层输入输出,输出层输入输出相等u1(k)=wo_111_1*q11(k)+wo_112_1*q12(k)+wo_113_1*q13(k);%中间层到输出层权值计算 woif u1_1==u1_2delta1(k)=0;elsedelta1(k)=error1(k)*sign((y1(k)-y1_1)/(u1_1-u1_2));endwo_111(k)=wo_111_1+0.1*delta1(k)*q11(k);wo_112(k)=wo_112_1+0.1*delta1(k)*q12(k);wo_113(k)=wo_113_1+0.1*delta1(k)*q13(k);wo_121(k)=wo_121_1;wo_122(k)=wo_122_1;wo_123(k)=wo_123_1;%输入层到中间层权值计算wiif x11(k)==x11_1dqx_11(k)=0;elsedqx_11(k)=sign((q11(k)-q11_1)/(x11(k)-x11_1));endif x12(k)==x12_1dqx_12(k)=0;elsedqx_12(k)=sign((q12(k)-q12_1)/(x12(k)-x12_1));endif x13(k)==x13_1dqx_13(k)=0;elsedqx_13(k)=sign((q13(k)-q13_1)/(x13(k)-x13_1));endif u1_1==u1_2wo_11(k)=0;Elsewo_11(k)=error1(k)*sign((y1(k)-y1_1)/(u1_1-u1_2));endwi_111(k)=wi_111_1+0.15*(wo_11(k)*wo_111(k))*dqx_11(k)*r1(k);wi_112(k)=wi_112_1+0.15*(wo_11(k)*wo_111(k))*dqx_11(k)*y1(k);wi_121(k)=wi_121_1+0.1*(wo_11(k)*wo_112(k))*dqx_12(k)*r1(k);wi_122(k)=wi_122_1+0.1*(wo_11(k)*wo_112(k))*dqx_12(k)*y1(k);wi_131(k)=wi_131_1+0.1*(wo_11(k)*wo_113(k))*dqx_13(k)*r1(k);wi_132(k)=wi_132_1+0.1*(wo_11(k)*wo_113(k))*dqx_13(k)*y1(k);%参数更新wo_111_1=wo_111(k);wo_112_1=wo_112(k);wo_113_1=wo_112(k);wo_121_1=wo_121(k);wo_122_1=wo_122(k);wo_123_1=wo_123(k);wi_111_1=wi_111(k);wi_112_1=wi_112(k);wi_121_1=wi_121(k);wi_122_1=wi_122(k);wi_131_1=wi_131(k);wi_132_1=wi_132(k);y1_1=y1(k);u1_2=u1_1;u1_1=u1(k);error1_2=error1_1;error1_1=error1(k);x11_1=x11(k);x12_1=x12(k);x13_1=x13(k);q11_1=q11(k);q12_1=q12(k);q13_1=q13(k);endfigure(1);plot(time,r1,'r');xlabel('时间(秒)');ylabel('系统输入r1');figure(2);plot(time,y1,'r');xlabel('时间(秒)');ylabel('系统输出y1');figure(3);plot(time,u1,'r');xlabel('时间(秒)');ylabel('系统控制量u1');figure(4);plot(time,error1,'r');xlabel('时间(秒)');ylabel('系统误差error1');五、实验总结PI D神经网络单变量制器通过学习和训练,根据系统控制效果自主调整网络权值,具有良好的动态和稳态控制性能,当系统参数发生变化后,P I D神经网络控制器通过再次的学习和调整,可以实现迅速跟踪控制。
实验题目2:神经网络自校正控制姓名: 孙倩 班级: 自动化061 学号: 0608140612一、仿真模型描述被控对象具有非线性时变特性,仿真模型为:200)(2.17/)())(sin(8.0)1(;2000)(2.1))(sin(8.0)1(>=++=+<<+=+k k u k y k y k y k k u k y k y该自校正系统的控制框图为:二、仿真参数说明系统输入为:300100),(1)(300,1000),(1)(<<=-=>=<<=k k k r k k k k r作用于被控对象的扰动为:50,0)(50,04.0)(≠===k k v k k v权值调整方式为BP 算法:()()()()()()211---+∆+-=k k k k k V V V V V α()()()()()()()k h k y k y k w k E k w j m w j w j -=∂∂-=∆ηη三、仿真结果分析当单位阶跃的输入时,我们可以看到如下的结果:1、从该系统对扰动的迅速响应,我们可以得知自校正控制的优越性。