发明名称 一种基于集成神经网络的污水处理软测量方法
摘要 一种基于集成神经网络的污水处理软测量方法属于污水处理领域。污水处理过程是一个高度非线性、时变性及复杂性的过程,关键水质指标的测量对控制水污染有着至关重要的作用,本发明针对污水处理软测量过程中多个关键水质参数同时软测量精度的问题,提出了一种集成神经网络模型对出水COD、出水BOD、出水TN进行测量,模型中充分利用三个出水关键水质参数之间的耦合关系,建立了包含三个子前馈神经网络的集成神经网络模型,同时运用粒子群算法对各个子神经网络进行训练,得到各个子神经网络的最佳结构。最后用已训练好的神经网络对出水COD、出水BOD、出水TN进行预测,预测结果精确。
申请公布号 CN102854296B 申请公布日期 2015.03.11
申请号 CN201210343011.0 申请日期 2012.08.30
申请人 北京工业大学 发明人 乔俊飞;任东红;韩红桂
分类号 G01N33/18(2006.01)I;G06N3/02(2006.01)I 主分类号 G01N33/18(2006.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 刘萍
主权项 一种基于集成神经网络的污水处理软测量方法,其特征在于包括以下步骤:(1).输入输出变量的选择;在污水处理过程中,流量Q、进水浊度、进水固体悬浮物浓度SS、曝气池溶解氧DO、水温T、污水酸碱度pH、氧化还原电位ORP、混合液悬浮固体浓度MLSS以及出水固体悬浮物浓度SS对关键水质参数出水COD、出水BOD影响较大;流量Q、进水浊度、进水SS及NH<sub>4</sub><sup>+</sup>‑N、曝气池溶解氧DO、T、pH、ORP、MLSS、NO<sub>3</sub><sup>-</sup>以及出水SS、NH<sub>4</sub><sup>+</sup>‑N对出水TN影响较大;将以上的参量精简输入变量与输出变量,具体的步骤包括变量数据的归一化处理、变量的主元分析,具体如下:①.变量数据的归一化处理:在对数据进行主元分析之前,首先要对样本数据进行归一化处理,归一化的公式如下:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msubsup><mi>D</mi><mi>ij</mi><mo>*</mo></msubsup><mo>=</mo><mfrac><mrow><msub><mi>D</mi><mi>ij</mi></msub><mo>-</mo><mover><msub><mi>D</mi><mi>j</mi></msub><mo>&OverBar;</mo></mover></mrow><msub><mi>&sigma;</mi><mi>j</mi></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000011.GIF" wi="1030" he="167" /></maths>其中<img file="FDA0000554987640000012.GIF" wi="68" he="82" />表示归一化后的样本数据,其中i为样本数,j为样本分量,D<sub>ij</sub>表示第i个样本的第j个分量,<img file="FDA0000554987640000013.GIF" wi="77" he="88" />为第j个样本分量的均值,σ<sub>j</sub>为变量D<sub>j</sub>的标准差,其中<img file="FDA0000554987640000014.GIF" wi="79" he="84" />表示为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mover><msub><mi>D</mi><mi>j</mi></msub><mo>&OverBar;</mo></mover><mo>=</mo><mfrac><mn>1</mn><mi>m</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><msub><mi>D</mi><mi>ij</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000015.GIF" wi="995" he="137" /></maths>式中m表示第j个样本分量的样本数,σ<sub>j</sub>表示第j个样本分量的偏差,表示为:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>&sigma;</mi><mi>j</mi></msub><mo>=</mo><msqrt><mfrac><mn>1</mn><mrow><mi>m</mi><mo>-</mo><mn>1</mn></mrow></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><msup><mrow><mo>(</mo><msub><mi>D</mi><mi>ij</mi></msub><mo>-</mo><mover><msub><mi>D</mi><mi>j</mi></msub><mo>&OverBar;</mo></mover><mo>)</mo></mrow><mn>2</mn></msup></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000016.GIF" wi="668" he="159" /></maths>通过以上的归一化处理,样本数据被归一化到[‑1,+1]之间;②.变量的主元分析:下面对经过归一化后的样本数据进行主元分析,通过主元分析法,将子神经网络的输入样本个数减少,得到的最终输入变量的结果是:测量出水COD的输入辅助变量是进水流量Q、进水SS、曝气池DO、MLSS;测量出水BOD的输入辅助变量是进水流量Q、曝气池DO、MLSS、pH;测量出水TN的输入辅助变量是进水流量DO、NH<sub>4</sub>‑N、NO<sub>3</sub><sup>-</sup>、进水浊度;(2).建立集成神经网络模型;此集成神经网络包含三个子神经网络,子神经网络的初始结构设计为l‑k‑1的三层前馈神经网络,l、k和1分别代表子神经网络的输入神经元个数、隐含层神经元个数和输出神经元个数;其中,子神经网络最终的输入神经元个数l和隐含层神经元个数k根据不同子网络输出确定;对子神经网络进行初始化,x<sub>1</sub>,x<sub>2</sub>,…,x<sub>l</sub>表示网络的输入,则对于输入层第p个神经元而言,其输出为:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msubsup><mi>Y</mi><mi>p</mi><mi>I</mi></msubsup><mo>=</mo><msubsup><mi>X</mi><mi>p</mi><mi>I</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000021.GIF" wi="988" he="84" /></maths>其中,<img file="FDA0000554987640000022.GIF" wi="76" he="79" />表示网络输入层的输入,<img file="FDA0000554987640000023.GIF" wi="68" he="82" />表示网络输入层的输出;隐含层共有k个神经元,隐含层第q个神经元的输入为:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msubsup><mi>X</mi><mi>q</mi><mi>H</mi></msubsup><mo>=</mo><munder><mi>&Sigma;</mi><mrow><mi>q</mi><mo>=</mo><mn>1</mn></mrow></munder><msub><mi>w</mi><mi>pq</mi></msub><msubsup><mi>Y</mi><mi>p</mi><mi>I</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000024.GIF" wi="1030" he="118" /></maths>其中,<img file="FDA0000554987640000025.GIF" wi="84" he="80" />表示网络隐含层的输入,w<sub>pq</sub>表示输入层与隐含层之间的连接权值;隐含层第q个神经元的输出为:<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msubsup><mi>Y</mi><mi>q</mi><mi>H</mi></msubsup><mo>=</mo><msubsup><mi>f</mi><mi>q</mi><mi>H</mi></msubsup><mrow><mo>(</mo><msubsup><mi>X</mi><mi>q</mi><mi>H</mi></msubsup><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000026.GIF" wi="1041" he="84" /></maths>其中,<img file="FDA0000554987640000027.GIF" wi="78" he="79" />表示隐含层的输出,<img file="FDA0000554987640000028.GIF" wi="203" he="80" />表示隐含层神经元的转换函数,在此选为sigmoid函数,其形式为:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msubsup><mi>f</mi><mi>q</mi><mi>H</mi></msubsup><mrow><mo>(</mo><msubsup><mi>X</mi><mi>q</mi><mi>H</mi></msubsup><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mn>1</mn><mo>+</mo><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>X</mi><mi>q</mi><mi>H</mi></msubsup></mrow></msup></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000029.GIF" wi="1101" he="139" /></maths>输出层神经元的净输入为:<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><msup><mi>X</mi><mi>O</mi></msup><mo>=</mo><munder><mi>&Sigma;</mi><mrow><mi>q</mi><mo>=</mo><mn>1</mn></mrow></munder><msub><mi>w</mi><mi>q</mi></msub><msubsup><mi>Y</mi><mi>q</mi><mi>H</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00005549876400000210.GIF" wi="998" he="119" /></maths>其中,X<sup>O</sup>表示输出层的输入,w<sub>q</sub>为第q个神经元与输出层神经元之间的连接权值;输出层神经元的输出,即网络的实际输出为:y<sup>O</sup>=f<sup>O</sup>(X<sup>O</sup>)  (10)其中,y<sup>O</sup>表示网络输出层的输出,f<sup>O</sup>(X<sup>O</sup>)为输出层神经元的线性作用函数,在此y<sup>O</sup>表示为:<maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><msup><mi>y</mi><mi>O</mi></msup><mo>=</mo><munder><mi>&Sigma;</mi><mrow><mi>q</mi><mo>=</mo><mn>1</mn></mrow></munder><msub><mi>w</mi><mi>q</mi></msub><msubsup><mi>Y</mi><mi>q</mi><mi>H</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000031.GIF" wi="835" he="125" /></maths>定义误差函数为:<maths num="0010" id="cmaths0010"><math><![CDATA[<mrow><mi>E</mi><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msup><mrow><mo>(</mo><msup><mi>y</mi><mi>O</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><mi>y</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow><mi>T</mi></msup><mrow><mo>(</mo><msup><mi>y</mi><mi>O</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><mi>y</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000554987640000032.GIF" wi="1259" he="140" /></maths>其中,式中y<sup>O</sup>(t)表示第t个样本的实际输出,y(t)为第t个样本的期望输出,M表示神经网络的样本数,T表示转置,训练神经网络的目的是使得式(12)定义的误差函数达到最小;(3).子神经网络结构的确定及子网络的集成;根据集成神经网络中子神经网络的输出确定对应的子神经网络结构,输出为出水COD所对应子神经网络结构选为l<sub>1</sub>‑k<sub>1</sub>‑1,即该子神经网络的输入神经元个数为l<sub>1</sub>,隐含层神经元个数为k<sub>1</sub>,输出神经元个数为1;输出为出水BOD所对应子神经网络结构选为l<sub>2</sub>‑k<sub>2</sub>‑1,即该子神经网络的输入神经元个数为l<sub>2</sub>,隐含层神经元个数为k<sub>2</sub>,输出神经元个数为1;输出为出水TN所对应子神经网络结构选为l<sub>3</sub>‑k<sub>3</sub>‑1,即该子神经网络的输入神经元个数为l<sub>3</sub>,隐含层神经元个数为k<sub>3</sub>,输出神经元个数为1;①.出水COD子神经网络软测量模型;在集成神经网络中,对于出水COD的软测量采用一个三层的前馈神经网络,网络的输入辅助变量为进水流量Q、进水SS、曝气池DO、MLSS,该子网络的输入层神经元个数为l<sub>1</sub>选为4,隐含层神经元个数k<sub>1</sub>选为10,输出神经元个数为1,输出为出水COD;②.出水BOD子神经网络的软测量模型;在污水处理过程中,出水BOD与出水COD之间存在着大的耦合关系,在多输入多输出神经网络对出水BOD的软测量中,充分利用这一耦合关系,即在测量出水BOD时其输入辅助变量在原先的输入变量基础上加入出水COD,这样测量的出水BOD比输入变量中单纯的只有流量Q、曝气池DO、MLSS、pH更加精确,该子网络的输入层神经元个数为l<sub>2</sub>选为5,隐含层神经元个数k<sub>2</sub>选为12,输出神经元个数为1,输出为出水BOD;③.出水TN子神经网络的软测量模型;在污水处理过程中,污水中含氮量与出水BOD之间的密切关系,因此为了更加准确的测量出水TN,在神经网络输入辅助变量中加入出水BOD,即输入变量变为DO、NH<sub>4</sub>‑N、NO<sub>3</sub><sup>-</sup>、进水浊度、出水BOD,该子网络的输入层神经元个数为l<sub>3</sub>选为5,隐含层神经元个数k<sub>3</sub>选为13,输出神经元个数为1,输出为出水TN;④.子神经网络的集成;确定各个网络的输入变量,输出变量,网络层数,网络隐含层个数后,即得到三个子神经网络,通过三个输出变量之间的关系进行集成,得到集成神经网络;(4).对集成神经网络进行训练;本集成神经网络是由三个子神经网络组成,每一个子网络单独训练,神经网络用粒子群算法进行训练,找到集成神经网络中各个子神经网络的权值,从而得到集成神经网络的模型;(5).用训练好的神经网络模型对预测样本进行预测,将预测样本数据作为网络的输入,出水COD、出水BOD、出水TN作为网络的输出,得到预测结果。
地址 100124 北京市朝阳区平乐园100号