一种铅锌烧结块的成分预测方法
技术领域
本发明涉及一种铅锌烧结块的成分预测方法。
背景技术
烧结工艺是在传统的铅锌冶炼过程中一道非常重要的工艺。
铅锌烧结块的各种化学成分(如铅、锌、硫等)的含量是衡量其质量的重要指标。
铅锌烧结用的原料种类繁多,原料的物理化学性质差异很大,为了使铅锌烧结块的成分满足下一道工序的要求,需要对铅锌烧结块的成分进行分析,利用分析结果对原料的配备进行指导。
目前,都是等到铅锌烧结块烧结成品之后,对成品进行取样,利用化学方法对样品进行化验分析,才能得到铅锌烧结块的成分。
由于铅锌烧结过程是一个大滞后环节,从配料到铅锌烧结块成品需要大约2个小时,因此铅锌烧结厂一般每2个小时对铅锌烧结块的成分进行取样。而化验过程需要1至2个小时,因此铅锌烧结前的配料等工序产生的效果需要等到3至4个小时后才能知道,导致铅锌烧结块的成分检测数据滞后严重,检测结果对指导调节烧结前的各种配料比例以控制铅锌烧结块成品的成分意义不大,即,对实时生产的指导意义价值不大。
发明内容
使用现有方法对铅锌烧结快的成分进行检测需要较长时间,检测数据滞后严重,对实时生产的指导意义价值不大。本发明的目的在于,针对上述现有技术的不足,提供一种铅锌烧结块的成分预测方法。
为解决上述技术问题,本发明所采用的技术方案是:
一种铅锌烧结块的成分预测方法,包括以下步骤:
A.建立铅锌烧结块成分的RBF-AR模型
其中,y(t+1)为预测的t+1时刻的铅锌烧结块的成分值,t为当前时刻,t-1、…、t-ny+1为历史时刻,y(t)为采集的铅锌烧结块成分的当前值,y(t-1)、…、y(t-ny+1)为采集的铅锌烧结块成分的历史值,e(t)为白噪声,ny为y对应的阶次,h为RBF神经网络的层数,X(t)为状态相依变量,X(t)=[y(t)]T,
c0,...,cm,ak,0,...,ak,m,zm,1,λm,m=1,2,...h,k=1,2,...,ny为铅锌烧结块成分的RBF-AR模型的参数;
B.设置多组不同的ny和h的值,分别通过非线性参数辨识方法辨识各组ny和h对应RBF-AR模型的参数
c0,...,cm,ak,0,...,ak,m,zm,1,λm,m=1,2,...h,k=1,2,...,ny;
C.求得各组ny和h对应的噪声方差σ2,并由此求得各组ny和h对应的赤信息准则值AIC,其中AIC=Nlogσ2+2d,N为用于辨识的数据的数目,N>>ny,d是待辨识的参数个数总和,d=(h+1)(1+ny)+3*h;
D.比较各组ny和h对应的AIC的大小,将最小的AIC对应的ny和h的值、该ny和h对应的RBF-AR模型的参数代入步骤A中的RBF-AR模型,得到铅锌烧结块的成分预测模型;
E.采集y(t)、y(t-1)、…、y(t-ny+1)并代入成分预测模型,得到铅锌烧结块的成分预测值y(t+1)。
RBF(Radical Basis Function)神经网络代表径向基函数神经网络,是神经网络的一种;AR(Autoregressive model)模型代表自回归模型。RBF-AR模型则是结合了前二者的优点的模型,在现有技术中已存在此模型和建模方法。RBF-AR模型是一种自回归模型,其自回归系数不是固定不变的常数,而是由RBF神经网络表示的一种非线性结构。因此RBF-AR模型既具有自回归模型的特点又具有RBF神经网络描述非线性的能力。
作为一种优选方式,步骤B中采用Levenberg-Marquardt算法辨识各组ny和h对应的RBF-AR模型的参数,Levenberg-Marquardt算法包括以下步骤:
B1.设参数集
则步骤A中的RBF-AR模型可以改成
y(t+1)=f(θN,X(t))+e(t)
设误差指标函数为
其中
其中τ=ny;
B2.设定θN中各参数的初始值;
B3.记q为迭代的步数,设定最大迭代步数qmax,对于θN的q+1步的迭代值更新公式为
其中dq为搜索方向,βq为步长系数,其中每一次迭代的dq由公式
决定,其中rq控制dq的幅度和方向;
如果且q≤qmax,则继续进行第二步优化;否则迭代停止,此时的为RBF-AR模型的参数;对应的噪声方差σ2=2V(θN)。
作为一种优选方式,步骤B2中初始值的设定方式为:
{zm,1|m=1,2,...h}取y(t)、y(t-1)、…、y(t-ny+1)的平均值;
{λm|m=1,2,...h}取0.01;随机选取
{c0,…,cm,ak,0,…,ak,m|m=1,2,...h,k=1,2,...,ny}。
初始值的选择对最终预测的结果影响不大。
作为一种优选方式,步骤B3中βq取0.0001。
一般βq在1e-8至0.1之间取值,βq越小,辨识精度越高,辨识时间越长,考虑时间和精度的折中,βq取0.0001。
作为一种优选方式,步骤B3中rq取0.01。
rq是一个正数,当其为0时,dq为高斯牛顿方向;当其趋于无穷时,dq为最速下降方向,折中选取为0.01。
作为一种优选方式,步骤B3中qmax取1000。
qmax越大,辨识精度越高,辨识时间越长,考虑时间和精度的折中,qmax取1000。
与现有技术相比,本发明能够快速地预测出下一时刻铅锌烧结块中的成分,解决了现有技术中检测时间过长导致检测的结果不能被有效利用的缺点,将预测的铅锌烧结块的成分结果及时用于调整烧结过程的配料,可以即时指导生产,提高了铅锌烧结块的合格率。
附图说明
图1为验证数据的实际值与预测值对照图;
图2为验证数据的实际值与预测值的偏差值曲线图。
图1中,虚线为实际值,实线为预测值。
具体实施方式
本发明的一实施方式包括以下步骤:
A.建立铅锌烧结块成分的RBF-AR模型
其中,y(t+1)为预测的t+1时刻的铅锌烧结块的成分值,t为当前时刻,t-1、…、t-ny+1为历史时刻,y(t)为采集的铅锌烧结块成分的当前值,y(t-1)、…、y(t-ny+1)为采集的铅锌烧结块成分的历史值,e(t)为白噪声,ny为y对应的阶次,h为RBF神经网络的层数,X(t)为状态相依变量,X(t)=[y(t)]T,
c0,...,cm,ak,0,...,ak,m,zm,1,λm,m=1,2,...h,k=1,2,...,ny为
铅锌烧结块成分的RBF-AR模型的参数;
B.设置多组不同的ny和h的值,分别通过Levenberg-Marquardt算法辨识各组ny和h对应RBF-AR模型的参数
c0,...,cm,ak,0,...,ak,m,zm,1,λm,m=1,2,...h,k=1,2,...,ny;
Levenberg-Marquardt算法包括以下步骤:
B1.设参数集
则步骤A中的RBF-AR模型可以改成
y(t+1)=f(θN,X(t))+e(t)
设误差指标函数为
其中
其中τ=ny;
B2.设定θN中各参数的初始值;初始值的设定方式为:
{zm,1|m=1,2,...h}取y(t)、y(t-1)、…、y(t-ny+1)的平均值;
{λm|m=1,2,...h}取0.01;随机选取
{c0,…,cm,ak,0,…,ak,m|m=1,2,...h,k=1,2,...,ny}。
B3.记q为迭代的步数,设定最大迭代步数qmax,qmax取1000,对于θN的q+1步的迭代值更新公式为
其中dq为搜索方向,βq为步长系数,βq取0.0001,其中每一次迭代的dq由公式
决定,其中rq控制dq的幅度和方向,rq取0.01;
如果且q≤qmax,则继续进行第二步优化;否则迭代停止,此时的为RBF-AR模型的参数;对应的噪声方差σ2=2V(θN)。
C.求得各组ny和h对应的噪声方差σ2,并由此求得各组ny和h对应的赤信息准则值AIC,其中AIC=Nlogσ2+2d,N为用于辨识的数据的数目,N>>ny,d是待辨识的参数个数总和,d=(h+1)(1+ny)+3*h;
D.比较各组ny和h对应的AIC的大小,将最小的AIC对应的ny和h的值、该ny和h对应的RBF-AR模型的参数代入步骤A中的RBF-AR模型,得到铅锌烧结块的成分预测模型;
E.采集y(t)、y(t-1)、…、y(t-ny+1)并代入成分预测模型,得到铅锌烧结块的成分预测值y(t+1)。
采集铅锌烧结块中铅成分数据200组,取前150组数据用于模型参数辨识,后50组数据用于验证,利用上述方法,通过AIC最小原则确定ny=4,h=1。
图1是验证数据的实际值与预测值对照图,图2是验证数据的实际值与预测值的偏差值曲线图。
从图中可以看出铅锌烧结块中铅含量的预测值和实际值的偏差在0.48%以内,说明本发明提供的方法能有效地预测铅锌烧结块的成分。