PID神经网络控制神经网络二十六
Posted 张叔zhangshu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PID神经网络控制神经网络二十六相关的知识,希望对你有一定的参考价值。
PID控制器是工业控制应用中常见的反馈回路部件。这个控制器把收集的数据和一个参考值进行比较,然后把这个差别用于计算新的输入值,这个新的输出值的目的是使系统的数据达到或保持参考值。
PID在本质上是线性控制规律,具有传统控制理论的弱点——只适用于线性SISO系统,在复杂系统中控制效果不佳。
PIDNN(PID神经元网络)的基础是分别定义了具有比例、积分、微分功能的神经元,从而将PID控制规律融合在神经元网络中。PIDNN的各层神经元个数、连接方式、连接权重初值是按PID控制规律的基本原则来确定的。
PIDNN的主要特点包括以下几点。
· PIDNN属于交层前向神经元网络。
· PIDNN是参照PID控制规律的要求构建的,结构比较简单、规范。
· PIDNN的初值按照PID控制规律的基本原则确定,加快了收敛速度,不易陷入极小点;更重要的是,可以利用现有的PID控制的大量经验数据确定网络权重初值,使控制系统保持初始稳定,使系统有可能达到全局稳定。
· PIDNN可以采用“无教师”的学习方式,根据控制效果进行在线自学习和调整,使系统具备较好的性能。
· PIDNN可以同时应用于SISO及MIMO控制系统。
编程实现具有3个控制变量的PID神经网络控制系统。
其实现的MATLAB代码如下:
>> clear all;
%网络结构初始化
rate1=0.005;
rate2=0.002;
rate3=0.0002;
k=0.4;K=3;
y_1=zeros(3,1);y_2=y_1;y_3=y_2; %输出值
u_1=zeros(3,1);u_2=u_1;u_3=u_2; %控制率
h1i=zeros(3,1);h1i_1=h1i; %第一个控制量
h2i=zeros(3,1);h2i_1=h2i; %第二个控制量
h3i=zeros(3,1);h3i_1=h3i; %第三个控制量
x1i=zeros(3,1);x2i=x1i; x3i=x2i;x1i_1=x1i;x2i_1=x2i;x3i_1=x3i; %隐含层输出
%权值初始化
k0=0.03;
%第一层权值
w11=k0*rand(3,2);w11_1=w11;w11_2=w11_1;
w12=k0*rand(3,2);w12_1=w12;w12_2=w12_1;
w13=k0*rand(3,2);w13_1=w13;w13_2=w13_1;
%第二层权值
w21=k0*rand(1,9);w21_1=w21;w21_2=w21_1;
w22=k0*rand(1,9);w22_1=w22;w22_2=w22_1;
w23=k0*rand(1,9);w23_1=w23;w23_2=w23_1;
以上是关于PID神经网络控制神经网络二十六的主要内容,如果未能解决你的问题,请参考以下文章