发明名称 电化学瓦斯传感器的一种快速响应方法
摘要 本发明提供电化学瓦斯传感器的一种快速响应方法,具体为:通过快速采集瓦斯浓度传递过渡过程中的若干瓦斯浓度值,用于建立离散灰色模型DGM(1,1),然后利用灰色预测结果与所采集的实际瓦斯浓度值训练高斯过程回归模型,最后基于所训练的高斯过程回归模型提前获取瓦斯浓度值。本发明能够快速准确的获取被测瓦斯浓度值,极大程度地减小了电化学瓦斯传感器的响应时间。
申请公布号 CN103630588B 申请公布日期 2015.10.21
申请号 CN201310689558.0 申请日期 2013.12.16
申请人 安徽理工大学 发明人 李振璧;姜媛媛;李璇
分类号 G01N27/26(2006.01)I 主分类号 G01N27/26(2006.01)I
代理机构 代理人
主权项 电化学瓦斯传感器的一种快速响应方法,其特征在于包括以下步骤:(1)以电化学瓦斯传感器原延迟时间Δt的<img file="FDA0000698698470000011.GIF" wi="48" he="110" />为采样周期,采集m个瓦斯浓度值T<sub>i</sub>,其中0<m<<n,m、n均为正整数,i=1,2,…,m;(2)利用步骤(1)所采集的m个瓦斯浓度值T<sub>i</sub>建立离散灰色模型DGM(1,1)为<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mfenced open='{' close='}'><mtable><mtr><mtd><mover><mi>T</mi><mo>~</mo></mover><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><msup><msub><mi>&beta;</mi><mn>1</mn></msub><mrow><mi>i</mi><mo>-</mo><mn>2</mn></mrow></msup><mo>[</mo><mrow><mo>(</mo><msub><mi>&beta;</mi><mn>1</mn></msub><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><msub><mi>&beta;</mi><mn>2</mn></msub><mo>]</mo><mo>,</mo><mi>i</mi><mo>=</mo><mn>2,3</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>m</mi></mtd></mtr><mtr><mtd><mover><mi>T</mi><mo>~</mo></mover><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000012.GIF" wi="808" he="149" /></maths>具体实现方法为:首先,令<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>Y</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mtd></mtr><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mi>m</mi><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>,</mo><mi>B</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mi>m</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000013.GIF" wi="720" he="270" /></maths>则求取<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msub><mi>&beta;</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>&beta;</mi><mn>2</mn></msub></mtd></mtr></mtable></mfenced><mo>=</mo><msup><mrow><mo>(</mo><msup><mi>B</mi><mo>&prime;</mo></msup><mo>&CenterDot;</mo><mi>B</mi><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>&CenterDot;</mo><msup><mi>B</mi><mo>&prime;</mo></msup><mo>&CenterDot;</mo><mi>Y</mi><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000014.GIF" wi="523" he="139" /></maths>其中<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msup><mi>T</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>i</mi></munderover><msup><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow><mo>,</mo><msup><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>i</mi></munderover><mi>T</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow><mo>,</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>m</mi><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000015.GIF" wi="997" he="146" /></maths>B′为B的转置矩阵;然后,建立离散灰色模型DGM(1,1)为:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mfenced open='{' close='}'><mtable><mtr><mtd><mover><mi>T</mi><mo>~</mo></mover><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><msup><msub><mi>&beta;</mi><mn>1</mn></msub><mrow><mi>i</mi><mo>-</mo><mn>2</mn></mrow></msup><mo>[</mo><mrow><mo>(</mo><msub><mi>&beta;</mi><mn>1</mn></msub><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><msub><mi>&beta;</mi><mn>2</mn></msub><mo>]</mo><mo>,</mo><mi>i</mi><mo>=</mo><mn>2,3</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>m</mi></mtd></mtr><mtr><mtd><mover><mi>T</mi><mo>~</mo></mover><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><mi>T</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000698698470000016.GIF" wi="808" he="151" /></maths>(3)利用步骤(2)中所建离散灰色模型DGM(1,1),进行前向预测,获得灰色预测值<img file="FDA0000698698470000017.GIF" wi="75" he="77" /><img file="FDA0000698698470000018.GIF" wi="865" he="85" /><maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msub><mover><mi>T</mi><mo>~</mo></mover><mn>1</mn></msub><mo>=</mo><msub><mi>T</mi><mn>1</mn></msub><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000019.GIF" wi="158" he="84" /></maths>0<m<<n;(4)以步骤(3)中所获取的灰色预测值<img file="FDA00006986984700000110.GIF" wi="460" he="84" />为输入,实际瓦斯浓度值T<sub>i</sub>为输出,训练高斯过程回归模型GPR(Gaussian Processes Regression),具体实现方法为:(4.1)构造高斯过程回归的协方差函数K(x<sup>i</sup>,x<sup>j</sup>)为平方指数协方差函数K<sub>SE</sub>(x<sup>i</sup>,x<sup>j</sup>)、有理二次协方差函数K<sub>RQ</sub>和Matern协方差函数K<sub>M</sub>三者的平方和,即:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msub><mi>K</mi><mi>SE</mi></msub><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>,</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>=</mo><msubsup><mi>&sigma;</mi><mi>f</mi><mn>2</mn></msubsup><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><mo>-</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>&prime;</mo></msup><mo>&CenterDot;</mo><mi>M</mi><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow></mrow></msup><mo>+</mo><msubsup><mi>&sigma;</mi><mi>n</mi><mn>2</mn></msubsup><msup><mi>&delta;</mi><mi>ij</mi></msup></mrow>]]></math><img file="FDA00006986984700000111.GIF" wi="777" he="117" /></maths><maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><msub><mi>K</mi><mi>RQ</mi></msub><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>,</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>=</mo><msubsup><mi>&sigma;</mi><mi>f</mi><mn>2</mn></msubsup><mo>&CenterDot;</mo><msup><mrow><mo>[</mo><mn>1</mn><mo>+</mo><mfrac><mrow><msup><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>&prime;</mo></msup><mo>&CenterDot;</mo><mi>M</mi><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>&alpha;</mi></mrow></mfrac><mo>]</mo></mrow><mrow><mo>-</mo><mi>&alpha;</mi></mrow></msup></mrow>]]></math><img file="FDA00006986984700000112.GIF" wi="855" he="171" /></maths><maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><msub><mi>K</mi><mi>M</mi></msub><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>,</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>=</mo><msubsup><mi>&sigma;</mi><mi>f</mi><mn>2</mn></msubsup><mo>&CenterDot;</mo><mo>[</mo><mn>1</mn><mo>+</mo><msqrt><mn>3</mn><mi>M</mi></msqrt><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><msqrt><mn>3</mn><mi>M</mi></msqrt><mrow><mo>(</mo><msup><mi>x</mi><mi>i</mi></msup><mo>-</mo><msup><mi>x</mi><mi>j</mi></msup><mo>)</mo></mrow></mrow></msup><mo>]</mo></mrow>]]></math><img file="FDA00006986984700000113.GIF" wi="869" he="110" /></maths>K(x<sup>i</sup>,x<sup>j</sup>)=[K<sub>SE</sub>(x<sup>i</sup>,x<sup>j</sup>)]<sup>2</sup>+[K<sub>RQ</sub>(x<sup>i</sup>,x<sup>j</sup>)]<sup>2</sup>+[K<sub>M</sub>(x<sup>i</sup>,x<sup>j</sup>)]<sup>2</sup>其中,M=diag(l<sup>‑2</sup>)为超参数的对称矩阵,l为关联性测度超参数,<img file="FDA00006986984700000114.GIF" wi="98" he="83" />σn、δ<sup>ij</sup>、α为待定参数,(x<sup>i</sup>‑x<sup>j</sup>)′为(x<sup>i</sup>‑x<sup>j</sup>)的转置矩阵,x<sup>i</sup>,x<sup>j</sup>为输入样本,i≠j;(4.2)从步骤(3)中所获取的灰色预测值<img file="FDA0000698698470000021.GIF" wi="454" he="80" />中依次选取k个值为输入,以实际瓦斯浓度为输出,构成(m‑k)个输入输出训练样本对,即:输入样本为:<maths num="0010" id="cmaths0010"><math><![CDATA[<mrow><mo>[</mo><msub><mover><mi>T</mi><mo>~</mo></mover><mi>i</mi></msub><mo>,</mo><msub><mover><mi>T</mi><mo>~</mo></mover><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mover><mi>T</mi><mo>~</mo></mover><mrow><mi>i</mi><mo>+</mo><mi>k</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>]</mo><mo>,</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>m</mi><mo>-</mo><mi>k</mi><mo>,</mo></mrow>]]></math><img file="FDA0000698698470000022.GIF" wi="682" he="93" /></maths>输出样本为:T<sub>i+k</sub>,(4.3)利用步骤(4.2)所构建的(m‑k)个输入输出训练样本对,训练得到高斯过程回归模型为k输入单输出的模型,其中0<k<m且k为整数;(5)利用步骤(3)中所获取的灰色预测值<img file="FDA0000698698470000023.GIF" wi="994" he="79" /><img file="FDA0000698698470000024.GIF" wi="213" he="77" />以及步骤(4)所训练的高斯过程回归模型,计算得到瓦斯浓度值C<sub>n</sub>即为待求瓦斯浓度值,使得瓦斯传感器在<img file="FDA0000698698470000025.GIF" wi="122" he="116" />的时间内获取了Δt时的浓度,也即瓦斯传感器响应时间减少了<img file="FDA0000698698470000026.GIF" wi="212" he="102" />其中0<k<m<n且k为整数。
地址 232001 安徽省淮南市舜耕中路168号