[发明专利]一种基于递归自组织神经网络的氨氮浓度预测方法有效

专利信息
申请号: 201410655729.2 申请日: 2014-11-17
公开(公告)号: CN104376380B 公开(公告)日: 2017-07-21
发明(设计)人: 韩红桂;李颖;张一弛;乔俊飞 申请(专利权)人: 北京工业大学
主分类号: G06F17/00 分类号: G06F17/00
代理公司: 北京思海天达知识产权代理有限公司11203 代理人: 刘萍
地址: 100124 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 递归 组织 神经网络 浓度 预测 方法
【权利要求书】:

1.一种基于递归自组织神经网络的出水氨氮浓度预测方法,其特征在于,包括以下步骤:

(1)确定辅助变量:采集污水处理厂实际水质参数数据,选取与出水氨氮浓度相关性强的水质变量:进水总磷TP、厌氧末端氧化还原电位ORP、好氧前段溶解氧DO、好氧末端总固体悬浮物TSS以及出水pH作为出水氨氮浓度预测的辅助变量;

(2)设计用于出水氨氮浓度预测的递归自组织神经网络拓扑结构,递归自组织神经网络分为三层:输入层、隐含层、输出层;初始化自组织粒子群-径向基神经网络:确定神经网络5-K-1的连接方式,即输入层神经元为5个,隐含层神经元为K个,K为正整数,输出层神经元为1个;对神经网络的参数进行赋值;设共有T个训练样本,第t时刻神经网络输入为u(t)=[u1(t),u2(t),u3(t),u4(t),u5(t)],神经网络的期望输出表示为yd(t),实际输出表示为y(t);递归自组织神经网络的计算公式是:

<mrow><mi>y</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msubsup><mi>w</mi><mi>k</mi><mn>3</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>v</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>

表示第t时刻隐含层第k个神经元和输出层的连接权值,k=1,2,…,K;vk(t)是第t时刻隐含层第k个神经元的输出,其计算公式为:

<mrow><msub><mi>v</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><munderover><mo>&Sigma;</mo><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mn>5</mn></munderover><msubsup><mi>w</mi><mrow><mi>m</mi><mi>k</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>u</mi><mi>m</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msubsup><mi>v</mi><mi>k</mi><mn>1</mn></msubsup><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>

表示第t时刻输入层第m个神经元和隐含层第k个神经元的连接权值,m=1,2,…,5;表示第t时刻第k个隐含层神经元的自反馈输出,其计算公式为:

<mrow><msubsup><mi>v</mi><mi>k</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>k</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>v</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>

表示第t时刻隐含层第k个神经元的自反馈连接权值,vk(t-1)是第t-1时刻隐含层第k个神经元的输出;

定义误差函数为:

<mrow><mi>E</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mn>2</mn><mi>T</mi></mrow></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>T</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><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>

T表示递归自组织神经网络输入的训练样本数;

(3)训练神经网络,具体为:

①给定一个隐含层神经元为K的递归神经网络,输入训练样本数据u(t),初始化隐含层和输出层的连接权值初始化隐含层神经元的自反馈连接权值初始化输入层和隐含层的连接权值m=1,2,…,5,k=1,2,…,K;和的初始值取(0,1)的任意数;期望误差值设为Ed,Ed∈(0,0.01];

②计算第k个隐含层神经元的灵敏度:

<mrow><msub><mi>ST</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>Var</mi><mi>k</mi></msub><mo>&lsqb;</mo><mi>E</mi><mrow><mo>(</mo><mi>y</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>|</mo><msub><mi>v</mi><mi>k</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>&rsqb;</mo></mrow><mrow><mi>V</mi><mi>a</mi><mi>r</mi><mo>&lsqb;</mo><mi>y</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mfrac><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>

其中,k=1,2,…,K;

Vark[E(y(t)|vk(t))]=2(Ak)2+(Bk)2

<mrow><mi>V</mi><mi>a</mi><mi>r</mi><mrow><mo>(</mo><mi>y</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>=</mo><mn>2</mn><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><mrow><mo>(</mo><msup><mrow><mo>(</mo><msub><mi>A</mi><mi>k</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msub><mi>B</mi><mi>k</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>

Ak和Bk表示灵敏度分析的傅立叶系数,其计算公式为:

<mrow><msub><mi>A</mi><mi>k</mi></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mn>2</mn><mi>&pi;</mi></mrow></mfrac><munderover><mo>&Integral;</mo><mrow><mo>-</mo><mi>&pi;</mi></mrow><mi>&pi;</mi></munderover><mi>c</mi><mi>o</mi><mi>s</mi><mrow><mo>(</mo><msub><mi>&omega;</mi><mi>k</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mi>s</mi><mo>)</mo></mrow><mi>d</mi><mi>s</mi><mo>;</mo></mrow>

<mrow><msub><mi>B</mi><mi>k</mi></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mn>2</mn><mi>&pi;</mi></mrow></mfrac><munderover><mo>&Integral;</mo><mrow><mo>-</mo><mi>&pi;</mi></mrow><mi>&pi;</mi></munderover><mi>s</mi><mi>i</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>&omega;</mi><mi>k</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mi>s</mi><mo>)</mo></mrow><mi>d</mi><mi>s</mi><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>

其中,傅立叶变量s的取值范围是[-π,π];ωk(t)是第k个隐含层神经元的指定频率,ωk(t)由第k个隐含层神经元的输出决定:

<mrow><msub><mi>&omega;</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>a</mi><mi>r</mi><mi>c</mi><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&pi;</mi><mrow><msub><mi>b</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>a</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mrow><mo>(</mo><msub><mi>v</mi><mi>k</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><mfrac><mrow><msub><mi>b</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>a</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mn>2</mn></mfrac><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>

bk(t)是已训练的t步中第k个隐含层神经元的输出最大值,ak(t)是已训练的t步中第k个隐含层神经元的输出最小值;

③进行神经网络结构调整:

删减调整:若第k个隐含层神经元的灵敏度STk小于α1,α1∈(0,0.01],则删除该神经元,并更新隐含层神经元数为K1=K-1;否则,不删除该神经元,K1=K;

增长调整:若当前的误差E(t)>Ed,则增加一个隐含层神经元,新插入的神经元初始连接权值为:

<mrow><msubsup><mi>w</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>h</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><msubsup><mi>w</mi><mrow><mn>1</mn><mi>h</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>,</mo><msubsup><mi>w</mi><mrow><mn>2</mn><mi>h</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mi>w</mi><mrow><mn>5</mn><mi>h</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>&rsqb;</mo><mo>;</mo></mrow>

<mrow><msubsup><mi>w</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>h</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>;</mo></mrow>

<mrow><msubsup><mi>w</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mn>3</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>y</mi><mi>d</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><mi>y</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mrow><msub><mi>v</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>

其中,表示新插入神经元与输入层之间的连接权值,表示新插入神经元的自反馈连接权值,表示新插入神经元和输出层的连接权值,神经元h是隐含层中的灵敏度最大的神经元,表示结构调整前隐含层第h个神经元和输入层的连接权值,表示结构调整前隐含层第h个神经元和输出层的连接权值,并且新插入神经元的输出vnew(t)表示为:

<mrow><msub><mi>v</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><munderover><mo>&Sigma;</mo><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mn>5</mn></munderover><msubsup><mi>w</mi><mrow><mi>m</mi><mi>h</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>u</mi><mi>m</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msubsup><mi>v</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mn>1</mn></msubsup><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>;</mo></mrow>

<mrow><msubsup><mi>v</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>h</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>v</mi><mi>h</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>

更新隐含层神经元数为K2=K1+1;否则,不调整神经网络的结构,K2=K1

④进行神经网络连接权值调整:

<mrow><msubsup><mi>w</mi><mi>k</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>k</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&eta;</mi><mn>1</mn></msub><mfrac><mrow><mo>&part;</mo><mi>E</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mrow><mo>&part;</mo><msubsup><mi>w</mi><mi>k</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>;</mo></mrow>

<mrow><msubsup><mi>w</mi><mi>k</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>k</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&eta;</mi><mn>2</mn></msub><mfrac><mrow><mo>&part;</mo><mi>E</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mrow><mo>&part;</mo><msubsup><mi>w</mi><mi>k</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>;</mo></mrow>

<mrow><msubsup><mi>w</mi><mi>k</mi><mn>3</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msubsup><mi>w</mi><mi>k</mi><mn>3</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&eta;</mi><mn>3</mn></msub><mfrac><mrow><mo>&part;</mo><mi>E</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mrow><mo>&part;</mo><msubsup><mi>w</mi><mi>k</mi><mn>3</mn></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>

其中,k=1,2,…,K2;η1∈(0,0.1]、η2∈(0,0.1]和η3∈(0,0.01]分别表示输入层和隐含层连接权值的学习率、隐含层神经元自反馈连接权值的学习率、以及隐含层和输出层连接权值的学习率;

⑤输入训练样本数据u(t+1),重复步骤②-④,所有训练样本训练结束后停止计算;

(4)将测试样本数据作为训练后的递归自组织神经网络的输入,递归自组织神经网络的输出即为出水氨氮浓度的预测值。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410655729.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top