中原工学院毕业设计(论文)
(3)?wli(k)????E(k)(3)???w(k?1)li(3)?wli (4.8)
式中,η为学习速率;α为惯性系数。
(3)(3)?Ql(3)(k)?netl(3)(k)?E(k)?E(k)?y(k)?u(k)?Q(k)?net(k)?E((3)k)??E(k)??y(k)??u(k)??l(3)l(3)(3)??????wli?y(k)?u(k)?Q(k)?net(k)?wli(3)(3)(k) ?wli?y(k)?u(k)?Qll(3)(k)?netll(3)(k)?wli(k) (4.9)
(3)?netl(3)(k)(2)?net(k)?O(k)(2)li((3)?Ok)i?wli(3)(k)?wli(k) (4.10)
由于
?y(k)?u(k)未知,所以近似用符号
sgn(?y(k))?u(k)函数取代,由此带来计算不精确的
影响可以通过调整学习速率η来补偿。
?u(k)?error(k)?error(k?1)(3)?Ql(k)由式(4.1)和式(4.5),可求得:
(4.11)
?u(k)?error(k)(3)?Q2(k) (4.12)
(4.13)
?u(k)?error(k)?2error(k?1)?error(k?2)(3)?O3(k)上述分析可得网络输出层权的学习算法为:
(3)(3)?wli(k)???wli(k?1)???l(3)Oi(2)(k) (4.14)
?l(3)?error(k)sgn(?y(k)?u(k)(3)?)g(net(k))l(3)?u(k)?Ol(k) (l=1,2,3) (4.15)
同理可得隐含层加权系数的学习算法:
(2)(2)?wli(k)???wij(k?1)???i(2)O(1)j(k) (4.16)
?(2)i?f?(net(2)i(3)(k))??l(3)wli(k)l?13 (4.17)
2??g(?)?g(x)(1?g(x)),f(?)?(1?f(x))2 (4.18) 式中,
基于BP网络的PID控制器结构如图4-2所示,该控制器控制算法归纳如下[15]: (1)确定BP网络的结构,即确定输入层点数M和隐含层节点数Q,并给出各层加权系12w(0)数的初值ij和wli(0),选定学习速率η和惯性系数α,此时k=1;
22
中原工学院毕业设计(论文)
(2)采样得到rin(k)和yout(k),计算该时刻误差error(k)= rin(k)- yout(k); (3)计算神经网络NN各层神经元的输入、输出,NN输出层的输出即为PID控制器的三个可调参数Kp,Ki,Kd;
(4)根据式(4.12)计算PID控制器的输出u(k);
12wij(k)wli(k)(5)进行神经网络学习,在线调整加权系数和,实现PID控制参数的自适应调整;
(6)置k=k+1,返回到(1)。
NNkprinerrorkikdPlantyoutaeatPID图4-2 基于