1.一种循环流化床生活垃圾焚烧锅炉床温预测方法,其特征在于,该方法包括以下步骤:
1)根据循环流化床生活垃圾焚烧锅炉的运行机理,选择垃圾的给料量、给煤量、一次风量、二次风量以及排渣量作为床温预测模型的输入变量;
2)采集训练样本。按设定的时间间隔从数据库中采集输入变量的历史数据,或者采集指定工况下的运行参数,组成床温预测模型输入变量的训练样本矩阵X(m×n),m表示样本个数,n表示变量的个数,同时采集与之对应的床层温度作为模型的输出变量,取床温测点的平均值作为模型最终的输出训练样本Y(m×1);
3)数据预处理。对X(m×n)进行粗大误差处理和随机误差处理,剔除训练样本中的野值,排除异常工况掉,将训练样本输入变量均经过归一化处理后映射到[0,1]区间内,得到标准化后的输入变量的训练样本X*(m×n)和输出变量的训练样本Y*(m×1),所述的异常工况包括锅炉停炉运行工况、炉膛压火运行状况和给料机堵塞工况;
4)智能算法集成建模。采用Gamma Test算法、粒子群优化算法、减法聚类算法和模糊自适应神经网络算法集成建模,确定模型最终的输入变量的个数和训练样本的个数,并根据最终确定的训练样本进行参数寻优和学习,构建能够表征循环流化床生活垃圾焚烧锅炉床温特性的预测模型。具体步骤如下:
4.1)利用Gamma Test算法寻找最优的模型输入变量组合以及训练样本尺寸。Gamma Test算法是对所有光滑函数均适用的非参数估计方法,该方法不关注输入输出数据之间的任何参数关系,只对输入输出数据进行计算即可得到模型的噪声方差,对于如下形式的数据集:
{(Xi,Yi),1≤i≤m} (2)
式中,X∈Rn表示输入,对应的输出标量为y∈R。
Gamma Test假定的模型关系是:
y=f(x1,…,xn)+r (3)
式中,f是一个光滑函数,r是一个表示数据噪声的随机量。假定r的均值为0,方差为Var(y)。Gamma Test通过计算统计量Γ,评价输出量的方差,如果数据的关系符合光滑模型,并且没有噪声,这个方差是0。Γ的计算过程如下:
4.1.1)计算输入数据的距离统计量。用xi表示第i个输入数据,xN[i,k]表示输入样本的第k近邻域点,计算如下统计量:
式中,|·|表示欧拉距离,p为最远邻近距离。
4.1.2)计算输出数据的距离统计量。用yi表示第i个输出数据,yN[i,k]表示输出样本的第k近邻域点,计算如下统计量:
4.1.3)计算统计量Γ。分别计算邻近距离从1到p的统计量(δm(1),γm(1)),(δm(2),γm(2)),…,(δm(p),γm(p))。对这p个统计量构造一元线性回归模型,用最小二乘法进行拟合,得到的一次线性函数的截距就是Gamma Test统计量Γ。
定义另一个统计量Vratio:
式中,δ2(y)表示输出y的方差。Vratio可以用来评价光滑模型对该数据的模拟能力,Vratio越接近0,表示该模型的预测性能越好。
首先,确定最优的训练样本尺寸。计算样本量逐渐增大时Γ值的变化情况,当Γ值趋于稳定时,得到的样本尺寸就是最优的训练样本尺寸。其次,确定最优的模型输入变量组合。需要计算所有输入变量组合时的Γ值和Vratio值,选择Γ值和Vratio值都很小的组合作为模型的最终输入变量。
4.2)利用PSO算法寻找最优的聚类半径。以聚类半径rα作为粒子,15个粒子作为一个种群,每个粒子随机赋予[0.2 0.9]区间内的随机值,其中第i个粒子的位置的向量标示为ri,i=1,2,…,15;
4.3)以ri为聚类半径,进行减法聚类分析,将每个数据点作为可能的聚类中心,并根据各个数据点周围的数据点密度来计算该点作为聚类中心的可能性。
每个数据点Xi作为聚类中心的可能性Pi由式(7)来定义:
式中m表示n维输入空间中全部的数据点数,Xi=[Xi1,Xi2,...,Xin]、Xj=[Xj1,Xj2,...,Xjn]是具体的数据点,ri是一个正数,定义了该点的邻域半径,||·||符号表示欧式距离。被选为聚类中心的点具有最高的数据点密度,同时该该数据点周围的点被排除作为聚类中心的可能性。第一个聚类中心为XC1,数据点密度为Pc1。选出第一个聚类中心后,继续采用类似的方法确定下一个聚类中心,但需消除已有聚类中心的影响,修改密度指标的山峰函数如下:
其中,rβ=1.5ri。循环重复上述过程直到所有剩余数据点作为聚类中心的可能性低于某一阈值δ,即Pck/Pc1<δ。
4.4)ANFIS模型训练。根据减法聚类算法得到的聚类中心,按照ANFIS模型结构训练床温预测模型;对于模糊神经网络模型的所有参数,采用混合最小二乘法的梯度下降算法进行学习。
4.5)计算适应度值。利用训练得到的预测模型计算垃圾热值将床温预测值与实际测量值y*进行比较,并以误差平方和作为粒子的适应度值MSE,适应度计算公式如下:
4.6)更新极值。以适应度值为评价指标,比较当代粒子与上一代粒子之间的适应度值大小,如果当前粒子的适应度值优于上一代,则将当前粒子的位置设置为个体极值,否则个体极值保持不变。同时获取当代所有粒子适应度值最优的粒子,并与上一代最优粒子进行比较,如果当代最优粒子的适应度值优于上一代最优粒子的适应度值,则将当代粒子的最优适应度值设置为全局最优值,否则全局最优值保持不变。
4.7)更新粒子。根据最新的个体极值和全局极值,按照(17)式和(18)式更新粒子的速度vid(t)和位置xid(t)。
vid(t+1)=ωvid(t)+c1r1(pid-xid(t))+c2r2(pgd-xid(t)) (17)
xid(t+1)=xid(t)+vid(t+1) (18)
其中,t是粒子群优化算法的寻优代数,Tmax为最大寻优代数,ωmax为最大惯性权重,ωmin为最小惯性权重,R1、R2、R3、R4为常数。
4.8)停止条件算法判定。判断是否达到最大迭代次数或者到达预测精度的要求,如果没有达到则返回步骤4.3),利用更新的聚类半径继续搜索,否则退出搜索。
4.9)利用最终寻优得到的聚类半径,对样本进行聚类分析和ANFIS模型训练,得到满足训练终止条件的ANFIS模型,即床温预测模型。
5)预测床温。对指定的样本进行床温预测,或者对当前锅炉运行工况下的床温进行实时预测。
2.一种循环流化床生活垃圾焚烧锅炉床温预测系统,其特征在于,该系统与循环流化床锅炉的集散控制系统相连,包括数据通讯接口和上位机,所述上位机包括:
第一信号采集模块。利用该模型采集CFB生活垃圾焚烧锅炉在正常运行时的运行工况状态参数和操作变量,并组成床温预测模型输入变量的训练样本矩阵X(m×n),和输出训练样本矩阵Y(m×1),m表示样本个数,n表示变量的个数。
数据预处理模块。对训练样本进行粗大误差处理和随机误差处理,剔除训练样本中的野值,排除异常工况,将训练样本输入变量经归一化处理后映射到[0,1]区间内,得到标准化后的训练样本X*(m×n)和Y*(m×1)。
专家知识库模块。将X*和Y*共同组成床温预测模型的训练样本,并进行保存。
智能学习模块。智能学习模块是床温预测系统的核心部分,该模块先利用Gamma Test算法寻找最优的模型输入变量组合以及训练样本尺寸,然后采用减法聚类算法对样本数据进行特征提取,自适应的确定初始模糊规则和模糊神经网络的初始结构参数,再结合最小二乘估计法和误差反向传播算法对模糊神经网络的参数进行学习训练。其中,聚类半径是影响建模性能的关键参数,因此以预测精度为目标,利用PSO算法寻找聚类半径的最优值。算法步骤如下:
1)利用Gamma Test算法寻找最优的模型输入变量组合以及训练样本尺寸。Gamma Test算法是对所有光滑函数均适用的非参数估计方法,该方法不关注输入输出数据之间的任何参数关系,只对输入输出数据进行计算即可得到模型的噪声方差,对于如下形式的数据集
{(Xi,Yi),1≤i≤m} (2)
式中,X∈Rn表示输入,对应的输出标量为y∈R。
Gamma Test假定的模型关系是:
y=f(x1,…,xn)+r (3)
式中,f是一个光滑函数,r是一个表示数据噪声的随机量。不失一般性,可假定r的均值为0(否则可在f中加入常数项),方差为Var(y)。Gamma Test就是计算一个统计量Γ,用它来评价输出量的方差,显然,如果数据的关系符合光滑模型,并且没有噪声,这个方差是0。Γ的计算过程如下:
1.1)计算输入数据的距离统计量。用xi表示第i个输入数据,xN[i,k]表示输入样本的第k近邻域点,计算如下统计量:
式中,|·|表示欧拉距离,p为最远邻近距离(nearest neighbor)。
1.2)计算输出数据的距离统计量。用yi表示第i个输出数据,yN[i,k]表示输出样本的第k近邻域点,计算如下统计量:
式中符号的意义同(4)式。
1.3)计算统计量Γ。为了计算Γ,分别计算邻近距离从1到p的统计量(δm(1),γm(1)),(δm(2),γm(2)),…,(δm(p),γm(p))。对这p个统计量构造一元线性回归模型,用最小二乘法进行拟合,得到的一次线性函数的截距就是Gamma Test统计量Γ,Γ值越小表示样本中的噪声越小。
定义另一个统计量Vratio:
式中,δ2(y)表示输出y的方差。Vratio可以用来评价光滑模型对该数据的模拟能力,Vratio越接近0,表示该模型的预测性能越好。
首先,确定最优的训练样本尺寸。计算样本量逐渐增大时Γ值的变化情况,当Γ值趋于稳定时,得到的样本尺寸就是最优的训练样本尺寸。其次,确定最优的模型输入变量组合。需要计算所有输入变量组合时的Γ值和Vratio值,选择Γ值和Vratio值都很小的组合作为模型的最终输入变量。
2)利用PSO算法寻找最优的聚类半径。以聚类半径rα作为粒子,15个粒子作为一个种群,每个粒子随机赋予[0.2 0.9]区间内的随机值,其中第i个粒子的位置的向量标示为ri,i=1,2,…,15;
3)以ri为聚类半径,进行减法聚类分析,将每个数据点作为可能的聚类中心,并根据各个数据点周围的数据点密度来计算该点作为聚类中心的可能性。
每个数据点Xi作为聚类中心的可能性Pi由式(7)来定义:
式中m表示n维输入空间中全部的数据点数,Xi=[Xi1,Xi2,...,Xin]、Xj=[Xj1,Xj2,...,Xjn]是具体的数据点,ri是一个正数,定义了该点的邻域半径,||·||符号表示欧式距离。被选为聚类中心的点具有最高的数据点密度,同时该该数据点周围的点被排除作为聚类中心的可能性。第一个聚类中心为XC1,数据点密度为Pc1。选出第一个聚类中心后,继续采用类似的方法确定下一个聚类中心,但需消除已有聚类中心的影响,修改密度指标的山峰函数如下:
其中,rβ=1.5ri。循环重复上述过程直到所有剩余数据点作为聚类中心的可能性低于某一阈值δ,即Pck/Pc1<δ。
4)ANFIS模型训练。根据减法聚类算法得到的聚类中心,按照ANFIS模型结构训练床温预测模型;对于模糊神经网络模型的所有参数,采用混合最小二乘法的梯度下降算法进行学习。
5)计算适应度值。利用训练得到的预测模型计算垃圾热值将床温预测值与实际测量值y*进行比较,并以误差平方和作为粒子的适应度值MSE,适应度计算公式如下:
6)更新极值。以适应度值为评价指标,比较当代粒子与上一代粒子之间的适应度值大小,如果当前粒子的适应度值优于上一代,则将当前粒子的位置设置为个体极值,否则个体极值保持不变。同时获取当代所有粒子适应度值最优的粒子,并与上一代最优粒子进行比较,如果当代最优粒子的适应度值优于上一代最优粒子的适应度值,则将当代粒子的最优适应度值设置为全局最优值,否则全局最优值保持不变。
7)更新粒子。根据最新的个体极值和全局极值,按照(17)式和(18)式更新粒子的速度vid(t)和位置xid(t)。
vid(t+1)=ωvid(t)+c1r1(pid-xid(t))+c2r2(pgd-xid(t)) (17)
xid(t+1)=xid(t)+vid(t+1) (18)
其中,t是粒子群优化算法的寻优代数,Tmax为最大寻优代数,ωmax为最大惯性权重,ωmin为最小惯性权重,R1、R2、R3、R4为常数。
8)停止条件算法判定。判断是否达到最大迭代次数或者到达预测精度的要求,如果没有达到则返回步骤3),利用更新的聚类半径继续搜索,否则退出搜索。
9)利用最终寻优得到的聚类半径,对样本进行聚类分析和ANFIS模型训练,得到满足训练终止条件的ANFIS模型,即床温预测模型。
第二信号采集模块。用于从数据库中选择需要预测床温的运行工况,或者实时地采集当前锅炉的运行工况。
预测模块。该模块用于对指定的样本进行床温预测,或者对当前锅炉运行工况下的床温进行实时预测。
结果显示模块。显示床温的预测结果,或者对床温的预测结果进行统计分析。