资源简介
PID神经网络.m
代码片段和文件信息
%% 清空环境变量
clc
clear
%% 网络结构初始化
rate1=0.006;rate2=0.001; %学习率
k=0.3;K=3;
y_1=zeros(31);y_2=y_1;y_3=y_2; %输出值
u_1=zeros(31);u_2=u_1;u_3=u_2; %控制率
h1i=zeros(31);h1i_1=h1i; %第一个控制量
h2i=zeros(31);h2i_1=h2i; %第二个控制量
h3i=zeros(31);h3i_1=h3i;
x1i=zeros(31);x2i=x1i;x3i=x2i;x1i_1=x1i;x2i_1=x2i;x3i_1=x3i; %隐含层输出
ki=1.5;kp=1;kd=10;
%权值初始化
k0=0.03;
%第一层权值
w11=k0*rand(32);
w12=k0*rand(32);
w13=k0*rand(32);
%第二层权值
w21=k0*rand(19);
w22=k0*rand(19);
w23=k0*rand(19);
%值限定
ynmax=1;ynmin=-1; %系统输出值限定
xpmax=1;xpmin=-1; %P节点输出限定
qimax=1;qimin=-1; %I节点输出限定
qdmax=1;qdmin=-1; %D节点输出限定
uhmax=1;uhmin=-1; %输出结果限定
%% 网络迭代优化
for k=1:1:200
%% 控制量输出计算
%--------------------------------网络前向计算--------------------------
%系统输出
y1(k)=(0.4*y_1(1)+u_1(1)/(1+u_1(1)^2)+0.2*u_1(1)^3+0.5*u_1(2))+0.3*y_1(2);
y2(k)=(0.2*y_1(2)+u_1(2)/(1+u_1(2)^2)+0.4*u_1(2)^3+0.2*u_1(1))+0.3*y_1(3);
y3(k)=(0.3*y_1(3)+u_1(3)/(1+u_1(3)^2)+0.4*u_1(3)^3+0.4*u_1(2))+0.3*y_1(1);
r1(k)=0.7;r2(k)=0.4;r3(k)=0.6; %控制目标
%系统输出限制
yn=[y1(k)y2(k)y3(k)];
yn(find(yn>ynmax))=ynmax;
yn(find(yn
%输入层输出
x1o=[r1(k);yn(1)];x2o=[r2(k);yn(2)];x3o=[r3(k);yn(3)];
%隐含层
x1i=w11*x1o;
x2i=w12*x2o;
x3i=w13*x3o;
%比例神经元P计算
xp=[x1i(1)x2i(1)x3i(1)];
xp(find(xp>xpmax))=xpmax;
xp(find(xp qp=kp*xp;
h1i(1)=qp(1);h2i(1)=qp(2);h3i(1)=qp(3);
%积分神经元I计算
xi=[x1i(2)x2i(2)x3i(2)];
qi=[000];qi_1=[h1i(2)h2i(2)h3i(2)];
qi=qi_1+xi;
qi(find(qi>qimax))=qimax;
qi(find(qi QI=ki*qi;
h1i(2)=QI(1);h2i(2)=QI(2);h3i(2)=QI(3);
%微分神经元D计算
xd=[x1i(3)x2i(3)x3i(3)];
qd=[0 0 0];
xd_1=[x1i_1(3)x2i_1(3)x3i_1(3)];
qd=kd*(xd-xd_1);
qd(find(qd>qdmax))=qdmax;
qd(find(qd h1i(3)=qd(1);h2i(3)=qd(2);h3i(3)=qd(3);
%输出层计算
wo=[w21;w22;w23];
qo=[h1i‘h2i‘h3i‘];qo=qo‘;
uh=wo*qo;
uh(find(uh>uhmax))=uhmax;
uh(find(uh u1(k)=uh(1);u2(k)=uh(2);u3(k)=uh(3); %控制律
%% 网络权值修正
%--------------------------------------网络反馈修正----------------------
%计算误差
error=[r1(k)-y1(k);r2(k)-y2(k);r3(k)-y3(k)];
error1(k)=error(1);error2(k)=error(2);error3(k)=error(3);
J(k)=0.5*(error(1)^2+error(2)^2+error(3)^2); %调整
相关资源
- 简易电梯设计.ms13
- 滑模变结构控制MATLAB仿真.zip
- jiasu1.m
- 2自由度机械臂PiD控制MATLAB仿真.zip
- dianliu_sudu_1.mdl
- pam.m
- CRBonDOAforsingletarget.m
-
simuli
nk的同步发电机组并联运行的定 - am.m
- Matlab系统级仿真1.pdf
- 乘积型同步检波电路设计—改4.ms13
- 80fe92b838fa9ed00eafc86196576d42.m
- ._comsol_simulation_file.mph
-
Simuli
nk与LabVIEW联合仿真教程.pdf - MATLAB界面编程》续——浅谈GUIDE和Si
- huffman_normal.m
- kreisDemod.m
- 数字信号处理matlab版_代码.rar
- RMSE.m
- GCSO.m
- C4.5算法matlab实现以及西瓜数据集.ra
- Matlab仿真_高勇.caj
- guangfu.mdl
- 无人驾驶车辆模型预测控制配套matl
- DVR.mdl
- 基于MATLAB的同步发电机励磁系统仿真
- MATLAB仿真[张雪英][程序源代码].rar
- Matlab学习视频.txt
- quan.mdl
- writetxt.m
评论
共有 条评论