当前位置:
文档之家› 智能控制技术(第6章-神经网络控制)分析解析
智能控制技术(第6章-神经网络控制)分析解析
7
6.3 神经网络辨识
3. 误差准则的选择
误差准则是用来衡量模型接近实际系统的 f (e(k )) 标准。它 E(W ) k 通常表示为一个误差的泛函,记作
其中 f () 是误差适量e(k)的函数,用得最多的是平方函数, 即 2
f [e(k )] e (k )
这里的误差e(k)是广义误差,即既可以表示输出误差又可以 表示输入误差甚至是两种误差函数的合成。 8
yM
e2
r NNC u 对象 -
y
e1
NNI
-
ˆ y
神经间接模型参考自适应控制
神经网络自适应控制
6.4
神经网络PID控制
• 尽管神经网络控制技术有许多潜在的优势,但单纯使用神 经网络的控制方法的研究仍有待进一步发展。通常将人工 神经网络技术与传统的控制理论或智能技术综合使用。神 经网络在控制中的作用有以下几种: • 1.在传统的控制系统中用以动态系统建模,充当对象模 型; • 2.在反馈控制系统中直接充当控制器的作用; • 3.在传统控制系统中起优化计算作用; • 4.与其他智能控制方法如模糊逻辑、遗传算法、专家控 制等相融合。
仿真示例 系统对象:
y(k ) 0.368y(k 1) 0.26y(k 2) 0.1u(k 1) 0.632u(k 2)
系统输入:
rin(k ) 0.5 sgn(sin(4t ))
MATLAB程序 %Single Neural Adaptive Controller clear all;
单神经元自适应控制系统结构
学习算法
u ( k ) u ( k 1) K wi' ( k ) xi ( k )
i 1
3
w wi ( k ) / wi ( k )
' i i 1
3
w1 ( k ) w1 ( k 1) I z ( k )u ( k ) x1 ( k ) w2 ( k ) w2 ( k 1) P z ( k )u ( k ) x2 ( k ) w3 ( k ) w3 ( k 1) D z ( k )u ( k ) x3 ( k ) 式中,x1 e( k ) x2 e( k ) e( k 1) x3 2 e( k ) e( k ) 2e( k 1) e( k 2)
3.4.2 改进型BP神经网络控制参数自学习PID 控制 • 将神经网络用于控制器的设计或直接学习 计算控制器的输出(控制量),一般都要 用到系统的预测输出值或其变化量来计算 权系数的修正量。但实际上,系统的预测 输出值是不易直接测得的,通常的做法是 建立被控对象的预测数学模型,用该模型 所计算的预测输出来取代预测处的实测值, 以提高控制效果。
1.采用线性预测模型的BP神经网络PID控制器
采用线性预测模型的BP神经网络PID控制系统算法归纳如下: 1). 事先选定BP神经网络NN的结构,即选定输入层节点数 M和隐含层节点数Q,并给出权系数的初值w(2)ij(0), w(3)li(0), 选定学习速率η和平滑因子α,k=1; 2). 用线性系统辨识法估计出参数矢量θ(k),从而形成一步 预报模型式; 3). 采样得到r(k)和y(k),计算e(k)=z(k)=r(k)-y(k); 4). 对r(i),y(i),u(i-1),e(i)进行归一化处理,作为NN的输入; 5). 前向计算NN的各层神经元的输入和输出,NN输出层的 输出即为PID控制器的三个可调参数KP(k),KI(k),KD(k); 6). 计算 u(k),参与控制和计算; PID控制器的控制输出 y (k 1) / u (k ) 7).计算 y(k 1) 和 ; 8). 计算修正输出层的权系数w(3)li(k); 9). 计算修正隐含层的权系数w(2)ij(k); 10). 置k=k+1,返回到“2)”。
基于BP神经网络的PID控制算法可归纳如下:
1). 事先选定BP神经网络NN的结构,即选定输入层节点 数M和隐含层节点数Q,并给出权系数的初值w(2)ij(0), w(3)li(0),选定学习速率η和平滑因子α,k=1; 2). 采样得到r(k)和y(k),计算e(k)=z(k)=r(k)-y(k); 3). 对r(i),y(i),u(i-1),e(i)进行归一化处理,作为NN的输入; 4). 前向计算NN的各层神经元的输入和输出,NN输出层 的输出即为PID控制器的三个可调参数KP(k),KI(k),KD(k); 5). 计算PID控制器的控制输出u(k),参与控制和计算; 6). 计算修正输出层的权系数w(3)li(k); 7). 计算修正隐含层的权系数w(2)ij(k); 8). 置k=k+1,返回到“2)”。
对象
u
y
e
辨识模型
系统辨识的原理
ˆ y
在神经网络系统辨识中,神经网络用作辨识模型,将对象的输入输出状 态u、y看作神经网络的训练样本数据,以J=e2/2作为网络训练的目标, 则通过用一定的训练算法来训练网络,使J足够小,就可以达到辨识对 象模型的目的。
5
6.3 神经网络辨识
与传统基于算法的系统辨识方法一样,神经网络辨识 同样也需首先考虑以下三大因素。
2
6.3 神经网络辨识
神经网络系统辨识实质上是从神经网络模型中选择一个 适当的模型来逼近实际系统的数学模型。
神经网络系统通过直接学习输入输出数据,使所要求的 误差函数达到最小,来归纳出隐含在系统的输入输出数 据中的关系。 神经网络对非线性函数具有任意逼近和自学习能力,为系 统的辨识,尤其是非线性动态系统的辨识提供了一条十分 有效的途径。
2.采用非线性预测模型的BP神经网络PID控制器
基于BP神经网络的PID控制算法可归纳如下:
1). 事先选定BP神经网络NN的结构,即选定输入层节点数M和隐含层节 点数Q,并给出权系数的初值w(2)ij(0), w(3)li(0),选定学习速率η和平滑因 子α,k=1; 2). 采样得到r(k)和y(k),计算e(k)=z(k)=r(k)-y(k); 3). 对r(i),y(i),u(i-1),e(i)进行归一化处理,作为NN的输入; 4). 前向计算NN的各层神经元的输入和输出,NN输出层的输出即为PID 控制器的三个可调参数KP(k),KI(k),KD(k); 5). 计算PID控制器的控制输出u(k),参与控制和计算; 6).前向计算NNM的各层神经元的输入和输出,NNM的输出为 , 计算修正隐含层和输出层的权系数; 7).计算 y (k 1) ; y (k 1) / u (k ) 8). 计算修正输出层的权系数w(3)li(k); 9). 计算修正隐含层的权系数w(2)ij(k); 10). 置k=k+1,返回到“2)”。
3.
4.
5.
9
6.3 神经网络自适应控制
构造一个参考模型,使其输出为期望输 出,控制的目的是使y跟踪r。
参考模型
yM
r NNC
u
r
对象
-
y
-
神经直接模型参考自适应控制
神经网络自适应控制
构造一个参考模型线性、不 确定、不确知时采用。
参考模型
神经网络控制
6.2 神经网络辨识
神经网络辨识基础
所谓系统辨识,就是根据系统的输入和输出 数据,在指定的一类系统中选择一个系统,这 个系统和所研究的实际系统等价。 由于实际上不可能找到一个与实际系统完全等 价的模型。因此,从实用角度看,辨识就是从 一组模型中选择一个模型,按照某种准则,使 之能最好的拟合所关心的实际系统动态或静态 特性。
ts=0.001;
for k=1:1:1000 time(k)=k*ts; rin(k)=0.5*sign(sin(2*2*pi*k*ts)); yout(k)=0.368*y_1+0.26*y_2+0.1*u_1+0.632*u_2; error(k)=rin(k)-yout(k);
%Adjusting Weight Value by hebb learning algorithm M=4; if M==1 %No Supervised Heb learning algorithm
close all;
x=[0,0,0]';
xiteP=0.40;
xiteI=0.35;
xiteD=0.40;
%Initilizing kp,ki and kd
wkp_1=0.10; wki_1=0.10; wkd_1=0.10;
%wkp_1=rand; %wki_1=rand; %wkd_1=rand; error_1=0; error_2=0; y_1=0;y_2=0;y_3=0; u_1=0;u_2=0;u_3=0;
3
6.3 神经网络辨识
逼近理论是一种经典的数学方法。多项式函数和其它逼 近方法都可以逼近任意的非线性函数。但由于其学习能 力和并行处理能力不及神经网络,从而使得神经网络的 逼近理论研究得到迅速发展。
4
6.3 神经网络辨识
神经网络系统辨识的原理
系统辨识的原理:给对象 和辨识模型施加相同的输 入,得到对象的输出 y和模 型的输出 y ,通过调整辨 识模型的结构来使对象的 输出y和模型的输出 y 之 间的误差最小。
wkp(k)=wkp_1+xiteP*u_1*x(1); %P wki(k)=wki_1+xiteI*u_1*x(2); %I
wkd(k)=wkd_1+xiteD*u_1*x(3); %D
6.2 神经网络辨识
与传统辨识方法不同,神经网络辨识具有以下五个特点
1. 2. 不要求建立实际系统的辨识格式。因为神经网络本质上已作 为一种辨识模型,其可调参数反映在网络内部的权值上。 可以对本质非线性系统进行辨识,而且辨识是通过在网络外 部拟合系统的输入输出,网络内部隐含着系统的特性。因此 这种辨识是由神经网络本身实现的,是非算法式的。 辨识的收敛速度不依赖于待辨识系统的维数,只与神经网络 本身及其所采用的学习算法有关,传统的辨识方法随模型参 数维数的增大而变得很复杂。 由于神经网络具有大量的连接,这些连接之间的权值在辨识 中对应于模型参数,通过调节这些权值使网络输出逼近系统 输出。 神经网络作为实际系统的辨识模型,实际上也是系统的一个 物理实现,可以用于在线控制。