单神经元自适应PID控制器设计方法研究
技术创新您的论文得到两院院士关注中文核心期刊《微计算机信息》(测控自动化)2005年第21卷第8-1期单神经元自适应PID控制器设计方法研究
ResearchonDesignofSingleNeuralElementSelf-AdaptivePIDController
(陕西科技大学)侯勇严郭文强
Hou,YongyanGuo,Wenqiang
摘要:本文主要介绍了采用有监督Hebb学习算法的单神经
元自适应PID控制器以及采用以输出误差平方为性能指标
的单神经元自适应PID控制器的控制算法及其仿真实现,
总结出了两种基于单神经元的自适应PID控制器的控制特
点及其参数设计规律。
关键词:单神经元;自适应;PID控制
中图分类号:TP273文献标识码:A
文章编号:1008-0570(2005)08-1-0008-02
Abstract:Thispaperintroducedcontrolalgorithmofsingleneu-
ralelementSelf-AdaptivePIDcontrollerinsupervisoryHebbal-
gorithmandsingleneuralelementSelf-AdaptivePIDcontroller
adoptedperformanceindexbaseduponthesquareoferrorand
theirsimulationrealizing.ControlcharacteristicsandlawsofPa-
rameterdesignoftwokindsofsingleneuralelementSelf-Adap-
tivePIDcontrollersareconcluded.
Keywords:Singleneuralelement;Self-Adaptivecontrol;PID
control
1引言
神经元网络(NeuralNetworks)是利用工程技术手
段模拟人脑神经网络和功能的一种大规模并行的非
线性系统,具有信息分布储存、并行处理以及自组织、
自学习能力等优点,在信息处理、模式识别、智能控制
等领域有着广阔的应用前景。而神经元是组成人脑神
经系统的最基本单元,不同神经元的树突和轴突一一
对接,就把众多的神经元连成一个神经元网络。本文
主要介绍了两种基于单神经元的自适应PID控制算
法,总结了单神经元自适应PID控制器的参数设计规
律。
2单神经元模型
单神经元的McCulloch-Pitts模型如图1所示。
图1人工神经元模型示意图
x1,x2,…,xN是神经元接收的信息w1,w2L,wN为连接
权值。利用简单的线性加权求和运算把输入信号的作
用结合起来构成净输入,其中θ是
神经元的阈值。此作用引起神经元的状态变化,而神
经元的输出y是其当前状态的活化函数,即y=g(in-
put)。控制中应用的神经元活化函数g(*)通常为Sig-
moid函数(S型函数),它使神经元的输出是限制在两个
有限值之间的连续非减函数,如图2所示。
图2Sigmoid人工神经元活化函数
3神经网络有监督的Hebb学习规则
学习规则是修改神经元之间连接强度或加权系
数的算法,使获得的知识结构适应周围环境的变化。
如果用o
i
表示单元i的输出,o
j
表示单元j的输出,w
ij
表示单元j到单元i的连接加权系数,d
i
表示网络期望
目标输出,η为学习速率,则神经网络有监督的Hebb
学习规则如式(1)所示。
(1)
4基于单神经元的PID控制
单神经元控制系统的结构如图3所示。图中转换
器的输入为设定值r(k)和输出y(k),转换器的输出为神
经元学习所需要的状态量x
1
,x2,x3,K为神经元的比例
系数。
图3单神经元自适应控制器结构图
侯勇严:讲师
?
N
x
1
w
2
w
N
w
q
y
2
x
1
x
1
N
j j
j
input w x q
=
=-
?
y
u
[])(
)
(
)
(
)
(
)
(k
o
k
o
k
o
k
d
k
w
j
i
i
i
ij
-
=
D h
技
您的论文得到相关企业家品评
控制系统
PID
NNPID1
NNPID2
神经元通过关联搜索来产生控制信号u(t),将其离散化为,其中,wi(k)为对
应于xi(k)的权系数,
4.1采用有监督Hebb学习算法的单神经元自适
应PID控制器
由于加权系数wi(k)和神经元的输入、输出和输出偏差三者的相关函数有关,因此采用有监督Hebb学习算法时,为保证这种单神经元自适应控制学习算法的收敛性和鲁棒性,将其规范化处理后可得式(2)和式(3)。
(2)(3)
其中是输出误差信号,分别表示比例、积分、微分的学习速率。
由以上公式可知,这种单神经元控制算法本质上相当于变参数的自适应PID控制,其权值w1,w2,w3分
别相当于PID控制的积分系数KI、比例系数KP和微分系数KD。
4.2采用以输出误差平方为性能指标的单神经元自适应PID控制器
以输出误差平方为性能指标,引入性能指标函数使加权系数wi(k)
的修正沿着J的减小方向,即对wi(k)的负梯度方向搜索调整:
即上式中ηi(i=I,
P,D)表示学习速率。由于在单神经元算法中,通常未知,所以近似用符号
函数sgn()取代,由此带来的计算不精确的
影响可通过调整学习速率ηi
来补偿。对上述算法规范化整理后仍有其中
5仿真研究
采用典型二阶滞后过程模型进行仿真研究。以G1为对象进行PID参数整定,KP=
0.1,KI=0.05,KD=0.08。然后分别改变τ、T和K,比较常规PID算法和有监督Hebb学习算法的单神经元自适
应PID控制(NNPID1)和采用以输出误差平方为性能指标的单神经元自适应PID控制(NNPID2)
的阶跃响应特性。现取典型仿真结果如图4的(1) ̄(4)所示。
(1)T=10,K=1,τ=3(2)T=10,K=1,τ=10
(3)T=10,K=4,τ=3(4)T=30,K=1,τ=3
图4PID控制和两种单神经元自适应PID控制的效果比较
通过大量的仿真研究,我们总结了两种基于单神经元的自适应PID控制器的特点及其参数设计规律
如下:
(1)初始加权系数的选择对输出结果影响较大,若初始权值选择不当,可能导致系统不稳定。而初始权值的选择主要是依靠经验,被控对象不同,w的大小也应该不同。由于权值w1,w2,w3分别相当于积分系数、比例系数、微分系数,可取其为
PID的参数初值;
(2)比例、积分、微分的学习速率ηp,ηI,ηD应选择不同的数值,以便对不同的权系数分别调节。可以简单地根据整定的PID参数,来设置ηp,ηI,ηD,
然后再根据响应做微量的调整,基本就能满足要求了。由于采用规范化学习算法,学习速率可以取得较大,并且仿
真过程中发现,ηp,ηI,ηD参数具有一定的裕度,即在一
定的范围内都有较好的控制效果。
(3)增益K的选择非常重要,如果K值偏大将引起系统响应超调过大,而K值偏小则使过渡过程变长。因此,具体仿真时,我们是先根据经验确定一个K的初值,再根据仿真结果来调整。另外调试时还发现,当被控对象的延迟增大时,必须减小K值,
否则易引起系统振荡。
(4)在仿真调试中发现,无论是NNPID1还是
NNPID2,试图通过调节初始权值和学习速率来降低系统的超调量,则必会引起调节时间增大,反之,试图减
小调节时间则必引起超调增大,所以选择初始权值和学习速率参数时只能折衷考虑。(见第117页)
?=+-=31
)()()1()(i i i k x k w k k u k u 1()()()()x k r k y k e k =-=2()()()(1)x k e k e k e k =D =--?3()()2(1)(2)x k e k e k e k =--+-
3
1
()(1)()i i i u k u k k w k x ==-+?3
1
()
()()
i i i
i w k w k w k ==
?111(1)()()()()
I w k w k z k u k x k h +=+222(1)()()()()
P w k w k z k u k x k h +=+333(1)()()()()D w k w k z k u k x k h +=+?)()()()(k e k y k r k z =-= D I P h h h ,,[]22
)]1([21)1()1(21+=+-+=k z k y k r J )
()
()()1()1()()()1()(k w k u k u k y k z k w J
k w k w k w i
i i i i i i ???+?+=??-=-+=D h h )()1(k u k y ?+?)()1(k u k y ?+?3
1
()(1)()i i i u k u k k w k x ==-+??3
1()
()()i i i i w k w k w k ==? 111(1)()(1)()sgn((1)())
I w k w k kz k x k y k u k h +=++?+?222(1)()(1)()sgn((1)())
P w k w k kz k x k y k u k h +=++?+?333(1)()(1)()sgn((1)())
D w k w k kz k x k y k u k h +=++?+?1,0sgn()1,0x x x +3ì=í
-1(1)(1)
s G Ke Ts s t -=++PID
NNPID1
NNPID2
PID
NNPID1
NNPID2
PID
NNPID1
NNPID2
)0(),0(),0(321w w w 术创新
技
术
创
新
您的论文得到相关企业家品评
驱动与传动
善,因此假设、简化之后,完全能够获得足够准确的、
具有工程所需精度的结果。
3MATLAB仿真分析
对一台P=2、P
e
=2.2KW、Ue=380V、f=50HZ、η=0.88
实际异步电机进行仿真分析,已知定子绕组为Y连
接,定子绕组和转子有关参数rs=2.68Ω、rr=2.85Ω、Ls=
Lr=0.265H、Lm=0.253H、J=0.02kg?m2,供电系统为对
称的三相交流电。
空载启动时,有ids(0)=iqs(0)=idr(0)=iqr(0)=ωr(0)=
0,T1=0,将此条件连同电机的有关参数代入异步电机
的模型,然后在MATLAB中将其编程为一个M文件,
再在MATLAB的工作空间中调用四阶龙格-库塔函数
ode45(),即可获得该异步电机在空载时的仿真结果。为
直观起见,调用MATLAB的绘图命令Plot(),得到该电
机空载启动时转速与转矩的仿真曲线如图三所示。
图3空载时转速与转矩的仿真曲线
根据异步电机模型,应用MATLAB/Simulink模块
库中的电力系统仿真工具箱Simpowersystems搭建异
步电机的仿真平台如异步电机MATLAB仿真模型图
(略可向作者索取)所示。
由图四的异步电机MATLAB仿真模型,可以对已
知的异步电机在空载、负载情况下各变量的稳态、动
态曲线进行仿真。现给上述已知电机带上负载,且转
轴上总的转动惯量为J=0.02kg?m2,则所得部分仿真
结果如图4所示。
图4异步电机定子电流、电磁转矩、转速仿真曲线
4结论
当只需了解电机输出与输入之间的变化关系时,
则应用MATLAB/Simulink模块库中的电力系统仿真
工具箱Simpowersystems搭建电机的仿真平台,可以快
捷、方便地实现对电机的稳态及动态特性进行仿真分
析;而如果不仅需要知道电机输出与输入之间的变化
关系,还要掌握电机内部的一些中间变量的变动情
况,那么就应该直接采用MATLAB语句进行软件编
程。
总之,MATLAB语言可以较方便地实现电机的仿
真分析,是电机运行维护、故障诊断、设计等的又一有
力工具。
作者简介:程利荣,1993年天津大学硕士研究生毕业,
现在青岛大学电子学系任教。E-MAIL:clrcycyx@ya-
hoo.com.cn.
(266071山东青岛市香港东路7号青岛大学东院教工
楼4号3单元502室)程利荣
(投稿日期:2005.1.13)(修稿日期:2005.1.24)
(接第9页)
(5)在各种算法中,常规PID虽然动作最快,但当
对象参数变化时其响应指标变化最大,鲁棒性最差;
有监督Hebb学习算法的单神经元自适应PID控制
(NNPID1)的响应速度快一些,超调也小于PID控制
器,但在某些情况下呈现出收敛过慢的问题,甚至有
发散的可能,鲁棒性不好;而以输出误差平方为性能
指标的单神经元自适应PID控制(NNPID2)超调最小,
基本无超调或超调很小,并且对对象参数的鲁棒性最
好,但响应速度较慢。综合评价的结果,以输出误差平
方为性能指标的单神经元自适应PID控制器具有优
于常规PID控制器的动、静态特性和鲁棒性,控制效
果最好。
6小结
本文总结了两种基于单神经元的自适应PID控
制器的特点及其参数设计规律。仿真结果说明,单神
经元自适应PID控制本质上是非线性控制,具有良好
的自适应能力,能有效地减小超调,缩短调节时间。综
合评价的结果,单神经元自适应PID控制方法具有优
于常规PID控制的效果,而采用以输出误差平方为性
能指标的单神经元自适应PID控制器的控制效果优
于采用有监督Hebb学习算法的单神经元自适应PID
控制器。
参考文献
[1]李士勇.模糊控制?神经控制和智能控制理论[M].哈尔滨:哈尔滨工
业大学出版.1999.8.
[2]徐丽娜.神经网络控制[M].哈尔滨:哈尔滨工业大学出版社,2001.5.
[3]陶永华,尹怡欣,葛芦生.新型PID控制及其应用[M].北京:机械工业
出版社1998.9.
[4]飞思科技产品研发中心.MATLAB6.5辅助神经网络分析与设计[M].
北京:电子工业出版社,2003.
作者简介:侯勇严(1972-),汉族,女,陕西省咸阳市
人,硕士,讲师,主要研究方向:智能控制;e-mail:
yongyanhou@yahoo.com.cn;郭文强(1971-),汉族,男,
陕西省咸阳市人,硕士研究生,讲师,主要研究方向:
计算机网络与计算机仿真.
(712081陕西咸阳陕西科技大学电气与电子工程学
院)侯勇严郭文强
(ElectronicEngineeringCollege,ShaanxiUniversity
ofScience&technology,Xianyang712081)Hou,
YongyanGuo,Wenqiang
(投稿日期:2004.12.13)(修稿日期:2004.12.25)