1 基于BP神经网络自适应PID Simulink仿真分析
1.1 原理简介
BP神经网络全称是前向传播神经网络,又名反向传播神经网络,一般由3层网络组成:输入层、隐含层(隐层)、输出层。
BP网络结构
下面分别对基于BP网络与PID结合算法:
①输入层:
其中,j=1,2....M表示输入变量的个数,数量取决于控制系统复杂度。
②隐层:
式中,上标(1)、(2)代表输入层、隐层;f为激活函数,可选为sigmoid函数中的tanh(x)
③输出层:
既然是输出,那就需要定义何时输出最优值,所以定义性能指标E=e^2.
式中,由于PID参数一般为非负数,所以激活函数g选取为非负的sigmoid函数:
为输出层惯性项,用于快速收敛得到性能函数极小值:
式中,η为学习速率,α为惯性系数。
由于输入就是选取变量,所以没什么好说的,最终得到隐层和输出层学习算法分别为:
隐层权值学习算法:
式中,Q为输出层数,这里即优化PID参数,选为3。
注:可以看到隐层惯性项中存在δ3,所以算法编写中要先编写输出层。
输出层权值学习算法:
1.2 仿真分析
可以用3种方法进行离散控制器搭建,但是由于权重维度原因,不建议采用状态变量搭建,所以本文用局部变量和延时模块两种方法进行搭建控制器,并且为了对比结果。
仿真模型: