单神经元自适应PID控制器实验报告 下载本文

内容发布更新时间 : 2024/5/23 21:38:43星期一 下面是文章的全部内容请认真阅读。

单神经元自适应PID控制器仿真实验报告

一、实验目的

1、熟悉单神经元PID控制器的原理。

2、通过实验进一步掌握有监督的Hebb学习规则及其算法仿真。 二、实验内容

利用单神经元实现自适应PID控制器,对二阶对象和正弦对象进行控制,在MATLAB环境中进行仿真。

被控对象为y(k)=0.3y(k-1)+0.2y(k-2)+0.1u(k-1)+0.6u(k-2) 三、实验原理 1、单神经元模型:

图1 人工神经元模型图

图2 Sigmoid人工神经元活化函数

单神经元的McCulloch—Pitts模型如图1,图2所示。x1,x2,x3…xn是神经元接收的信息,w1,w2,…为连接权值。利用简单的线性加权求和运算把输入信号的作

用结合起来构成净输入input= ???????????。此作用引起神经元的状态变化,而神 经元的输出v是其当前状态的激活函数。 2、神经经网络的有监督Hebb学习规则

学习规则是修改神经元之间连接强度或加权系数的算法,使获得的知识结构适应周围环境的变化。两个神经元同时处于兴奋状态或同时处理抑制状态时,它们之间的连接强度将得到加强,当一个神经元兴奋而另一个抑制时,它们之间的连接强度就应该减弱。这一论述的数学描述被称为Hebb学习规则。在学习过程中,网络根据实际输出与期望输出的比较,进行联接权系数的调整,将期望输出称导师信号是评价学习的标准。这样,就得到了有监督的Hebb学习规则如果用oi表示单元i的输出,oj表示单元j的输出Wij表示单元j到单元i的连接加权系数,di表示网络期望目标输出,??为学习速率,则神经网络有监督的Hebb学习规则下式所示。

???ij ?? =??[???? ?? ?????(??)]????(??)????(??) (1) 3. 基于单神经元的PID控制

单神经元控制系统的结构如图3所示。图中转换器的输人为设定值r(k)和输出y(k),转换器的输出为神经元学习所需要的状态量x1,x2,x3,K为神经元的比例系数。

图3 单神经元自适应控制器结构图

单神经元自适应控制器是通过对加权系数的调整来实现自适应、自组织功能的,权系数的调整是按有监督的Hebb规则实现的。

控制及其学习算法如下:

3

u ?? =u ???1 +?? ????′(??)????(??)

??=13

????′ ?? =????(??)/ ????(??)

??=1

??1 ?? =??1 ???1 +??????(k)u(k)??1(??) ??2 ?? =??2 ???1 +??????(k)u(k)??2(??) ??3 ?? =??3 ???1 +??????(k)u(k)??3(??)

其中: ??1 ?? =e(k)

??2 ?? =e k ?e(k?1)

??3 ?? =?2e k ?? k =e(k)

????????????分别为积分、比例、微分的学习速率,K为神经元的比例系数,K>0。 四、实验步骤

编写程序实现单神经元的自适应PID控制器,输入信号为阶跃信号和正弦信号。

仿真图例如下:

五、实验结果分析

(1)初始加权系数w1(0),w2(0),w3(0)的选择对输出结果影响较大,若初始权值选择不当,可能导致系统不稳定。而初始权值的选择主要是依靠经验。被控对象不同,w的大小也应该不同。由于权值系数w1,w2,w3,分别相当于积分系数、比例系数、微分系数。可取其为PID的参数初值;

(2)比例、积分、微分的学习速率????????????应选择不同的数值,以便对不同的权系数分别调节。可以简单地根据整定的PID参数,来设置????????????,然后再根据响应做微量的调整,基本就能满足要求了。由于采用规范化学习算法,学习速率可以取得较大,并且仿真过程中发现,????????????。参数具有一定的裕度,即在一定的范围内都有较好的控制效果。

(3)增益K的选择非常重要,如果K值偏大将引起系统响应超调过大.而K值偏小则使过渡过程变长。因此,具体仿真时,我们是先根据经验确定一个K