发明名称 最优模糊网络的农药废液焚烧炉炉温最佳化系统及方法
摘要 本发明公开了一种最优模糊网络的农药废液焚烧炉炉温最佳化系统。该方法对输入变量先进行模糊化,随后利用模糊网络中的模糊规则进行推导,最后支持向量机用来优化模糊神经网络中的线性参数。在本方法中,标准化处理模块,用于对训练样本进行标准化处理;模糊网络模块,用于软测量建模;支持向量机优化模块用来优化模糊网络模块中的线性参数;结果显示模块,用于将从支持向量机优化模块得到的炉温预报值和使炉温最佳的操作变量值传给DCS系统。本发明实现炉温准确控制、避免出现炉温过低或过高。
申请公布号 CN103488086A 申请公布日期 2014.01.01
申请号 CN201310436863.9 申请日期 2013.09.22
申请人 浙江大学 发明人 刘兴高;李见会;张明明;孙优贤
分类号 G05B13/04(2006.01)I;F23G5/50(2006.01)I 主分类号 G05B13/04(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 周烽
主权项 1.一种最优模糊网络的农药废液焚烧炉炉温最佳化系统,包括焚烧炉、智能仪表、DCS系统、数据接口以及上位机,所述的DCS系统包括控制站和数据库;所述现场智能仪表与DCS系统连接,所述DCS系统与上位机连接,其特征在于:所述的上位机包括:标准化处理模块,用于将从DCS数据库输入的模型训练样本进行预处理,对训练样本中心化,即减去样本的平均值,然后对其进行标准化:计算均值:<maths num="0001"><![CDATA[<math><mrow><mover><mi>TX</mi><mo>&OverBar;</mo></mover><mo>=</mo><mfrac><mn>1</mn><mi>N</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>TX</mi><mi>i</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>计算方差:<maths num="0002"><![CDATA[<math><mrow><msubsup><mi>&sigma;</mi><mi>x</mi><mn>2</mn></msubsup><mo>=</mo><mfrac><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mrow><mo>(</mo><msub><mi>TX</mi><mi>i</mi></msub><mo>-</mo><mover><mi>TX</mi><mo>&OverBar;</mo></mover><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths>标准化:<maths num="0003"><![CDATA[<math><mrow><mi>X</mi><mo>=</mo><mfrac><mrow><mi>TX</mi><mo>-</mo><mover><mi>TX</mi><mo>&OverBar;</mo></mover></mrow><msub><mi>&sigma;</mi><mi>x</mi></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中,TX<sub>i</sub>为第i个训练样本,是从DCS数据库中采集的生产正常时的关键变量、炉温和使炉温最佳化的操作变量的数据,N为训练样本数,<img file="FDA00003849069000014.GIF" wi="81" he="72" />为训练样本的均值,X为标准化后的训练样本。σ<sub>x</sub>表示训练样本的标准差,σ<sup>2</sup><sub>x</sub>表示训练样本的方差。模糊网络模块,对从标准化处理模块传过来的输入变量,进行模糊推理和建立模糊规则。对从标准化处理模块传过来的经过预处理过的训练样本X进行模糊分类,得到模糊规则库中每个模糊聚类的中心和宽度。设第p个标准化后的训练样本X<sub>p</sub>=[X<sub>p1</sub>,…,X<sub>pn</sub>],其中n是输入变量的个数。设模糊神经网络有R个模糊规则,为了求得每个模糊规则对于标准化后的训练样本X<sub>p</sub>的每个输入变量X<sub>pj</sub>,j=1,…,n,下面的模糊化方程将求出其对第i个模糊规则的隶属度:<maths num="0004"><![CDATA[<math><mrow><msub><mi>M</mi><mi>ij</mi></msub><mo>=</mo><mi>exp</mi><mo>{</mo><mo>-</mo><mfrac><msup><mrow><mo>(</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>-</mo><msub><mi>m</mi><mi>ij</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><msubsup><mi>&sigma;</mi><mi>ij</mi><mn>2</mn></msubsup></mfrac><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中M<sub>ij</sub>表示输入变量X<sub>pj</sub>对第i个模糊规则的隶属度,m<sub>ij</sub>和σ<sub>ij</sub>分别表示第i个模糊规则的第j个高斯成员函数的中心和宽度,由模糊聚类求得。设标准化后的训练样本X<sub>p</sub>对模糊规则i的适应度为μ<sup>(i)</sup>(X<sub>p</sub>),则μ<sup>(i)</sup>(X<sub>p</sub>)的大小可由下式决定:<maths num="0005"><![CDATA[<math><mrow><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Pi;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>M</mi><mi>ij</mi></msub><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>=</mo><mi>exp</mi><mo>{</mo><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><mfrac><msup><mrow><mo>(</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>-</mo><msub><mi>m</mi><mi>ij</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><msubsup><mi>&sigma;</mi><mi>ij</mi><mn>2</mn></msubsup></mfrac><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中,M<sub>ij</sub>表示输入变量X<sub>pj</sub>对第i个模糊规则的隶属度,m<sub>ij</sub>和σ<sub>ij</sub>分别表示第i个模糊规则的第j个高斯成员函数的中心和宽度。求得输入训练样本对于每个规则的适应度之后,模糊神经网络对模糊规则输出进行推导以得到最后的解析解。在常用的模糊神经网络结构中,每个模糊规则推导的过程都可以表示为如下:首先求得训练样本中所有输入变量的线性乘积和,然后用此线性乘积和与规则的适用度μ<sup>(i)</sup>(X<sub>p</sub>)相乘,得到最终的每条模糊规则的输出。模糊规则i的推导输出可以表示如下:<maths num="0006"><![CDATA[<math><mrow><msup><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mo>=</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>a</mi><mi>ij</mi></msub><mo>&times;</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>+</mo><msub><mi>a</mi><mrow><mi>i</mi><mn>0</mn></mrow></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0007"><![CDATA[<math><mrow><msub><mover><mi>y</mi><mo>^</mo></mover><mi>p</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>R</mi></munderover><msup><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mo>+</mo><mi>b</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>R</mi></munderover><mo>[</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>a</mi><mi>ij</mi></msub><mo>&times;</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>+</mo><msub><mi>a</mi><mrow><mi>i</mi><mn>0</mn></mrow></msub><mo>)</mo></mrow><mo>]</mo><mo>+</mo><mi>b</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths>式中,f<sup>(i)</sup>为第i条模糊规则的输出,<img file="FDA00003849069000029.GIF" wi="56" he="71" />是模糊神经网络模型对第p个训练样本的预测输出,a<sub>ij</sub>,j=1,…,n是第i条模糊规则中第j个变量的线性系数,a<sub>i0</sub>是第i条模糊规则中输入变量线性乘积和的常数项,b是输出偏置量。支持向量机优化模块,在式(7)中,输入变量线性乘积和中的参数的确定是模糊神经网络使用中用到的一个主要问题,这里我们采用把原有的模糊规则推导输出形式转换为支持向量机优化问题,再使用支持向量机进行线性优化,转换过程如下:<maths num="0008"><![CDATA[<math><mrow><msub><mover><mi>y</mi><mo>^</mo></mover><mi>p</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>R</mi></munderover><msup><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mo>+</mo><mi>b</mi></mrow></math>]]></maths><maths num="0009"><![CDATA[<math><mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>R</mi></munderover><mo>[</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>a</mi><mi>ij</mi></msub><mo>&times;</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>+</mo><msub><mi>a</mi><mrow><mi>i</mi><mn>0</mn></mrow></msub><mo>)</mo></mrow><mo>]</mo><mo>+</mo><mi>b</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0010"><![CDATA[<math><mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>R</mi></munderover><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mi>n</mi></munderover><msub><mi>a</mi><mi>ij</mi></msub><mo>&times;</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>&times;</mo><msub><mi>X</mi><mi>pj</mi></msub><mo>+</mo><mi>b</mi></mrow></math>]]></maths>其中X<sub>p0</sub>为常数项且恒等于1。令<maths num="0011"><![CDATA[<math><mrow><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>=</mo><mo>[</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mo>&times;</mo><msub><mi>X</mi><mrow><mi>p</mi><mn>0</mn></mrow></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mo>&times;</mo><msub><mi>X</mi><mi>pn</mi></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>R</mi><mo>)</mo></mrow></msup><mo>&times;</mo><msub><mi>X</mi><mrow><mi>p</mi><mn>0</mn></mrow></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>R</mi><mo>)</mo></mrow></msup><mo>&times;</mo><msub><mi>X</mi><mi>pn</mi></msub><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中,<img file="FDA00003849069000027.GIF" wi="161" he="101" />表示原训练样本的转化形式,即把原来的训练样本转换为如上式形式,作为支持向量机的训练样本:<maths num="0012"><![CDATA[<math><mrow><mi>S</mi><mo>=</mo><mo>{</mo><mrow><mo>(</mo><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><msub><mi>X</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>,</mo><msub><mi>y</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><msub><mi>X</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>,</mo><msub><mi>y</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mrow><mo>(</mo><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><msub><mi>X</mi><mi>N</mi></msub><mo>)</mo></mrow><mo>,</mo><msub><mi>y</mi><mi>N</mi></msub><mo>)</mo></mrow><mo>,</mo><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中y<sub>1</sub>,…,y<sub>N</sub>是训练样本的目标输出,取S作为新的输入训练样本集合,那么原有问题可以转化为如下的支持向量机对偶优化问题:<maths num="0013"><![CDATA[<math><mrow><mi>R</mi><mrow><mo>(</mo><mi>&omega;</mi><mo>,</mo><mi>b</mi><mo>)</mo></mrow><mo>=</mo><mi>&gamma;</mi><mfrac><mn>1</mn><mi>N</mi></mfrac><msubsup><mi>&Sigma;</mi><mrow><mi>p</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msub><mi>L</mi><mi>&epsiv;</mi></msub><mrow><mo>(</mo><msub><mi>y</mi><mi>p</mi></msub><mo>,</mo><mi>f</mi><mrow><mo>(</mo><msub><mi>X</mi><mi>p</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>+</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mi>&omega;</mi><mi>T</mi></msup><mi>&omega;</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中y<sub>p</sub>是输入训练样本X<sub>p</sub>的目标输出,f(X<sub>p</sub>)是对应于X<sub>p</sub>的模型输出,L<sub>ε</sub>(y<sub>p</sub>,f(X<sub>p</sub>))是输入训练样本X<sub>p</sub>对应的目标输出y<sub>p</sub>和模型输出f(X<sub>p</sub>)在优化问题的误差容限为ε时的一次不敏感函数。ω是支持向量机超平面的法向量,f(X<sub>p</sub>)是对应于X<sub>p</sub>的模型输出,γ是支持向量机的惩罚因子,上标T表示矩阵的转置,R(ω,b)是优化问题的目标函数,N是训练样本数,L<sub>ε</sub>(y<sub>p</sub>,f(X<sub>p</sub>))表达式如下:<img file="FDA00003849069000032.GIF" wi="1684" he="217" />其中ε是优化问题的误差容限,y<sub>p</sub>是输入训练样本X<sub>p</sub>的目标输出,f(X<sub>p</sub>)是对应于X<sub>p</sub>的模型输出,接下来使用支持向量机求得模糊神经网络的模糊规则最优推导线性参数和对偶优化问题的预报输出:<maths num="0014"><![CDATA[<math><mrow><msub><mi>a</mi><mi>ij</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><mi>k</mi><mo>*</mo></msubsup><mo>-</mo><msub><mi>&alpha;</mi><mi>k</mi></msub><mo>)</mo></mrow><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><msub><mi>X</mi><mi>kj</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>&Element;</mo><mi>SV</mi></mrow><mi>N</mi></munderover><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><mi>k</mi><mo>*</mo></msubsup><mo>-</mo><msub><mi>&alpha;</mi><mi>k</mi></msub><mo>)</mo></mrow><msup><mi>&mu;</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></msup><msub><mi>X</mi><mi>kj</mi></msub><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>R</mi><mo>;</mo><mi>j</mi><mo>=</mo><mn>0</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>n</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0015"><![CDATA[<math><mrow><msub><mover><mi>y</mi><mo>^</mo></mover><mi>p</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><mi>k</mi><mo>*</mo></msubsup><mo>-</mo><msub><mi>&alpha;</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>&lt;</mo><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><mi>X</mi><mo>)</mo></mrow><mo>,</mo><mover><mi>&phi;</mi><mo>&RightArrow;</mo></mover><mrow><mo>(</mo><msub><mi>X</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>></mo><mo>+</mo><mi>b</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中α<sub>k</sub>,<img file="FDA00003849069000035.GIF" wi="84" he="79" />(k=1,…,N)分别是y<sub>p</sub>-f(X<sub>p</sub>)大于0和小于0时对应的拉格朗日乘子,<img file="FDA00003849069000036.GIF" wi="61" he="86" />即为对应于第p个标准化后的训练样本X<sub>p</sub>的炉温预报值和使炉温最佳的操作变量值。所述的上位机还包括:模型更新模块,用于按设定的采样时间间隔,采集现场智能仪表信号,将得到的实测炉温与系统预报值比较,如果相对误差大于10%或炉温超出生产正常上下限范围,则将DCS数据库中生产正常时的使炉温最佳的新数据加入训练样本数据,更新软测量模型。结果显示模块,用于将得到的炉温预报值和使炉温最佳的操作变量值传给DCS系统,在DCS的控制站显示,并通过DCS系统和现场总线传递到现场操作站进行显示;同时,DCS系统将所得到的使炉温最佳的操作变量值作为新的操作变量设定值,自动执行炉温最佳化操作。信号采集模块,用于依照设定的每次采样的时间间隔,从数据库中采集数据。所述的关键变量包括进入焚烧炉的废液流量、进入焚烧炉的空气流量和进入焚烧炉的燃料流量;所述的操作变量包括进入焚烧炉的空气流量和进入焚烧炉的燃料流量。
地址 310058 浙江省杭州市西湖区余杭塘路866号