一种基于递归自组织RBF神经网络的出水总氮TN智能检测方法与流程

文档序号:12365873阅读:来源:国知局

技术特征:

1.一种基于递归自组织RBF神经网络的出水总氮TN智能检测方法,其特征在于包括以下步骤:

(1)确定出水总氮TN的输入与输出变量:以活性污泥法污水处理过程为研究对象,对污水处理过程变量进行特征分析,选取与出水总氮TN相关的过程变量作为软测量模型的输入:氨氮NH4-N,硝态氮NO3-N,出水悬浮物浓度SS,生化需氧量BOD,总磷TP,软测量模型的输出为出水总氮TN值;

(2)设计用于出水总氮TN智能检测的软测量模型:利用递归自组织RBF神经网络建立出水总氮TN的软测量模型,递归自组织RBF神经网络包括:输入层、隐含层、输出层;其结构为5-J-1的连接方式,即输入层神经元为5个,隐含层神经元为J个,J为大于2的正整数,输出层神经元为1个;输入层与隐含层之间的连接权值都赋值为1,隐含层与输出层之间的连接权值随机赋值,赋值区间为[-1,1];设共有p个训练样本,设第t时刻递归自组织RBF神经网络输入为x(t)=[x1(t),x2(t),x3(t),x4(t),x5(t)],x1(t)表示第t时刻氨氮NH4-N浓度,x2(t)表示第t时刻硝态氮NO3-N浓度,x3(t)表示第t时刻出水悬浮物浓度SS浓度,x4(t)表示第t时刻生化需氧量BOD浓度,x5(t)表示第t时刻总磷TP浓度;第t时刻递归自组织RBF神经网络的期望输出表示为yd(t),实际输出表示为y(t);基于递归自组织RBF神经网络的出水总氮TN的软测量方法计算方式依次为:

①输入层:该层由5个神经元组成,每个神经元的输出为:

ui(t)=xi(t) (1)

其中,ui(t)是t时刻第i个神经元的输出,i=1,2,…,5;

②隐含层:隐含层由J神经元组成,每个神经元的输出为:

<mrow> <msub> <mi>&theta;</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mi>e</mi> <mrow> <mo>-</mo> <mfrac> <msup> <mrow> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>c</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mrow> <mn>2</mn> <msup> <msub> <mi>&sigma;</mi> <mi>j</mi> </msub> <mn>2</mn> </msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mfrac> </mrow> </msup> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1,2</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>J</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>

其中,cj(t)为t时刻第j个隐含层神经元的中心向量,cj(t)=[c1j(t),c2j(t),…,c5j(t)]T,cij(t)表示隐含层t时刻第j个神经元中心值的第i个元素,||hj(t)-cj(t)||表示hj(t)与cj(t)之间的欧式距离,σj(t)是t时刻第j个隐含层神经元的中心宽度,hj(t)是t时刻第j个隐含层神经元的输入向量

<mrow> <msub> <mi>h</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mo>&lsqb;</mo> <msub> <mi>u</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>u</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>u</mi> <mn>3</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>u</mi> <mn>4</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>u</mi> <mn>5</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msubsup> <mi>w</mi> <mi>j</mi> <mn>1</mn> </msubsup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&times;</mo> <mi>y</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

y(t-1)是t-1时刻递归自组织RBF神经网络的输出,(t)为t时刻输出神经元与第j个隐含层神经元的反馈连接权值,为t时刻输出神经元与隐含层神经元的反馈连接权值向量,T表示转置;

③输出层:输出层输出为:

<mrow> <mi>y</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>J</mi> </munderover> <msubsup> <mi>w</mi> <mi>j</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&times;</mo> <msub> <mi>&theta;</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>J</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

其中,为t时刻隐含层与输出层的连接权值向量,为t时刻第j个隐含层神经元与输出神经元的连接权值,θ(t)=[θ1(t),θ2(t),...,θJ(t)]T为t时刻隐含层的输出向量,θj(t)为t时刻第j个隐含层神经元的输出,y(t)为t时刻递归自组织RBF神经网络的输出;

定义递归自组织RBF神经网络的误差为:

<mrow> <mi>E</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mi>p</mi> </mfrac> <munderover> <mo>&Sigma;</mo> <mrow> <mi>t</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>p</mi> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mi>d</mi> </msub> <mo>(</mo> <mi>t</mi> <mo>)</mo> <mo>-</mo> <mi>y</mi> <mo>(</mo> <mi>t</mi> <mo>)</mo> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow>

其中,yd(t)为t时刻递归自组织RBF神经网络的期望输出,y(t)为t时刻递归自组织RBF神经网络的实际输出,p为训练样本数;

(3)训练递归自组织RBF神经网络,具体为:

①给定递归自组织RBF神经网络的初始隐含层神经元个数为J,J为大于2的正整数,递归自组织RBF神经网络的输入为x(1),x(2),…,x(t),…,x(p),对应的期望输出为yd(1),yd(2),…,yd(t),…,yd(p),p表示训练样本数,期望误差值设为Ed,Ed∈(0,0.01),初始中心向量cj(1)中每个变量的赋值区间为[-2,2],初始中心宽度σj(1)的赋值区间为[0,1],初始反馈连接权值vj(t)的赋值区间为[0,1],j=1,2,…,J;初始隐含层与输出层的连接权值向量w2(1)中每个变量的赋值区间为[-1,1];

②设置学习步数s=1;

③t=s,计算递归自组织RBF神经网络的输出y(t),运用自适应二阶算法调整递归自组织RBF神经网络的连接权值和中心宽度:

Θ(t+1)=Θ(t)+(Ψ(t)+η(t)×Ι)-1×Ω(t) (6)

其中,Θ(t)为t时刻递归自组织RBF神经网络的参数矩阵,Ψ(t)是t时刻的拟海森矩阵,Ω(t)为t时刻梯度向量,I是单位矩阵,t时刻自适应学习率η(t)被定义为

η(t)=μ(t)η(t-1) (7)

<mrow> <mi>&mu;</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mo>(</mo> <msup> <mi>&beta;</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msup> <mo>(</mo> <mi>t</mi> <mo>)</mo> <mo>+</mo> <mi>&eta;</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> <mo>/</mo> <mo>(</mo> <mn>1</mn> <mo>+</mo> <msup> <mi>&beta;</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msup> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> <mo>-</mo> <msup> <mi>&beta;</mi> <mi>min</mi> </msup> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mrow> <mi>&eta;</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow>

其中,μ(t)为t时刻自适应因子,μ(1)初始值设为μ(1)=1,βmax(t)和βmin(t)分别为t时刻矩阵Ψ(t)中最大、最小的特征值;0<βmin(t)<βmax(t),0<η(t)<1,η(1)=1,t时刻递归自组织RBF神经网络的参数矩阵Θ(t)包含:t时刻输出神经元与隐含层神经元的反馈连接权值向量w1(t),t时刻隐含层与输出层的连接权值向量w2(t),t时刻中心矩阵C(t)=[c1(t),c2(t),…,cJ(t)]T,cj(t),t时刻中心宽度向量σ(t)=[σ1(t),σ2(t),…,σJ(t)]T

Θ(1)=[w1(1),w2(1),C(1),σ(1)] (9)

t时刻的拟海森矩阵Ψ(t)和梯度向量Ω(t)计算方式为

Ψ(t)=jT(t)j(t) (10)

Ω(t)=jTe(t) (11)

e(t)=yd(t)-y(t) (12)

其中,e(t)为t时刻递归自组织RBF神经网络误差,yd(t)与y(t)是分别为递归自组织RBF神经网络的期望输出与实际输出,j(t)为雅克比矩阵

<mrow> <mi>j</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mo>&lsqb;</mo> <mfrac> <mrow> <mo>&part;</mo> <mi>e</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mo>&part;</mo> <msup> <mi>w</mi> <mn>1</mn> </msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <mfrac> <mrow> <mo>&part;</mo> <mi>e</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mo>&part;</mo> <msup> <mi>w</mi> <mn>2</mn> </msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <mfrac> <mrow> <mo>&part;</mo> <mi>e</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mo>&part;</mo> <mi>C</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> <mfrac> <mrow> <mo>&part;</mo> <mi>e</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mo>&part;</mo> <mi>&sigma;</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>13</mn> <mo>)</mo> </mrow> </mrow>

④t>3时,计算递归自组织RBF神经网络隐含层神经元的竞争力

cpj(t)=ρj(t)fj(t)σj(t), j=1,2,…,J (14)

其中,cpj(t)为t时刻第j个隐含层神经元的竞争力,J是隐含层神经元的个数,σj(t)为t时刻第j个隐含层神经元的中心宽度;fj(t)为t时刻第j个隐含层神经元的激活状态

<mrow> <msub> <mi>f</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mi>&chi;</mi> <mrow> <mo>-</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>c</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> </mrow> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>15</mn> <mo>)</mo> </mrow> </mrow>

其中,χ∈(1,2),t时刻隐含层神经元的激活状态向量f(t)=[f1(t),f2(t),…,fJ(t)],ρj(t)为第j个隐含层神经元的输出与网络输出的相关系数

<mrow> <msub> <mi>&rho;</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mn>3</mn> </munderover> <mrow> <mo>&lsqb;</mo> <mrow> <msub> <mi>A</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mi>k</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mover> <mi>A</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mrow> <mo>&lsqb;</mo> <mrow> <mi>B</mi> <mrow> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mi>k</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mover> <mi>B</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> </mrow> <msqrt> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mn>3</mn> </munderover> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <msub> <mi>A</mi> <mi>j</mi> </msub> <mrow> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mi>k</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mover> <mi>A</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mn>2</mn> </msup> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mn>3</mn> </munderover> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>B</mi> <mrow> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mi>k</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mover> <mi>B</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>16</mn> <mo>)</mo> </mrow> </mrow>

其中,隐含层相关参数输出层相关参数B(t)=y(t),为t时刻隐含层相关参数平均值,为t时刻输出层相关参数平均值;

⑤t>3时,调整递归自组织RBF神经网络的结构;

在调整网络结构过程中,计算第j个隐含层神经元的竞争力,当第j个隐含层神经元的竞争力以及t和t+τ时刻的训练误差满足

E(t)-E(t+τ)≤ε, (17)

<mrow> <mi>j</mi> <mo>=</mo> <mi>arg</mi> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <mn>1</mn> <mo>&le;</mo> <mi>j</mi> <mo>&le;</mo> <mi>J</mi> </mrow> </munder> <mrow> <mo>(</mo> <msub> <mi>cp</mi> <mi>j</mi> </msub> <mo>(</mo> <mi>t</mi> <mo>)</mo> <mo>)</mo> </mrow> <mo>,</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>18</mn> <mo>)</mo> </mrow> </mrow>

其中,指cpj(t)取最大值时j的取值,E(t)和E(t+τ)分别为t时刻和t+τ时刻的训练误差,τ是时间间隔,为大于2的正整数;ε是预设阈值ε∈(0,0.01);J为隐含层神经元数;增加1个隐含层神经元,并更新隐含层神经元数为M1=J+1;否则,不调整递归自组织RBF神经网络的结构,M1=J;

当第j个隐含层神经元的竞争力满足

cpj(t)<ξ, (19)

其中,ξ∈(0,Ed)是预设的修剪阈值;Ed是预设的常数,Ed∈(0,0.01];则删除个隐含层神经元,并更新隐含层神经元数为M2=M1-1;否则,不调整递归自组织RBF神经网络的结构,M2=M1

⑥学习步数s增加1,如果步数s<p,转向步骤③进行继续训练,如果s=p转向步骤⑦;

⑦根据公式(5)计算递归自组织RBF神经网络的性能,如果E(t)≥Ed,则转向步骤③进行继续训练,如果E(t)<Ed,则停止调整;

(4)出水总氮TN浓度预测;

将测试样本数据作为训练后的递归自组织RBF神经网络的输入,递归自组织RBF神经网络的输出即为出水总氮TN浓度的软测量值。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1