油库油气浓度预测是油库监控系统的重要组成部分,是油库安全生产管理必不可少的重要环节。油库油气浓度预测精度的高低,不仅直接影响着油库的安全和作业效率,而且对提高油库安全保障能力有着重要的意义。当前油库油气浓度主要采用现场测量和远程监控方法,这种方法只能对油气浓度进行实时测量,不能对未来的油气浓度发展趋势进行预测,这同以预防为主的安全管理方法有一定的违背。我国在这方面进行了长期的研究,但准确预报困难。因此,只有正确认识油气扩散的作用机制和演进规律,分析其演变趋势,实施较为准确的油气预报和预警措施,才能较大限度减小安全隐患和经济损失。因此,对油库油气的快速、准确的预报是多年来国内外专家十分关注的课题。本文采用免疫神经网络模型对井下油气浓度进行预测,以提前了解油气浓度的大小及发展趋势,采取预防措施,以此提高油库的安全。
1 基于免疫算法的神经网络模型
1.1 BP网络概述 在众多的神经网络中,多层前馈网络(BP网络)具有很强的生物背景,它与函数逼近理论稍有差异,它具有多输入多输出特性,容易用于多变量非线性函数的逼近,由于它是一个非线性网络,其学习算法是局部最优的,且训练时需要用到全局信息。总的来说,BP网络的主要优点是:
(1) 只要有足够多的隐层和隐节点,BP网络可以逼近任意非线性映射关系; (2) BP网络的学习算法是属于全局逼近的方法,因而具有很好的泛化能力; (3) BP网络的输入输出之间的关联信息分布地存储于连接权中。由于连接权的个数很多,个别神经元的损坏只对输入输出有很小的影响,因而具有很好的容错性。
BP算法的主要缺点是:
(1) 学习效率低,收敛速度慢。BP算法是Robbie和Monro提出的随机逼近统计方法的一个应用,在权值空间中“瞬时估计”误差曲面的梯度。因此BP算法倾向于缓慢收敛,Saarinen的实验研究表明[4],BP算法的局部收敛速度是线性的。 (2) 易限于局部极小状态。从数学角度分析,梯度下降思想的BP算法不可避免的存在局部极小问题,另外由于实际问题的求解空间往往极其复杂,维数较高,存在更多的局部极小点,使得陷入局部极小点的可能性大为增加。 (3) 网络的泛化及适应能力差。BP算法的误差平方和最小化指标,只能降低样本的绝对误差量,而造成神经元学习收敛的不均衡性,一旦样本存在“非主导模式”,即该模式对误差的贡献较小,仅依靠误差指标函数则难以进行良好的训练,致使网络对该模式缺乏良好的响应,影响网络泛化性能。
1.2 免疫算法原理 神经网络的学习目的是通过调节网络权值W,使目标代价函数E趋于最小。由于E是复杂的非线性函数,采用BP算法与基于BP的导数型优化方法均存在局部极小问题,因此目前越来越多的研究者采用遗传计算来设计神经网络权值,并已成功应用于网络权值学习[5]。遗传算法(Genetic Algorithm,GA)是根据生物中遗传与进化的原理,仿效基因、染色体等物质表达所研究的问题,遵循达尔文“物竞天择,适者生存”原则,使随机生成的初始解通过复制、交换、突变等遗传操作不断迭代优化,逐步逼近最优解。遗传算法是一种利用自然选择和进化思想在高维空间中寻优的方法,不依赖于导数信息,并行度高,善于处理解空间为多峰值地形的全局优化问题。但遗传算法存在诸如当初始解群分布不均匀时易出现末成熟收敛,陷于局部最优和个体自适应于环境的能力弱等缺点。 生物体的免疫系统能够以其有限的资源,有效应付数量庞大的近乎无限的不同种类的病毒的侵害,这一特性引起了人们特别的关注。免疫算法(Immune Algorithm,IA)[6]正是这一思路的产物,是受生物免疫系统的启示而设计出来的一种具有对多峰值函数进行多峰值搜索及全局寻优能力的新型算法。算法的主要思路是:将网络权重视为生物免疫系统的淋巴细胞,通过对其基因交叉、变异的进化操作和基于抗体浓度的调节操作,使基因不断优化,从而找到最佳抗体,即为满足最小误差函数E的权值向量。与进化计算相比,免疫算法具有保持解群分布多样性的优点,较好地克服了进化计算在初始化解群分布不均匀时易出现未成熟收敛,陷于局部最优和收敛速度慢的缺点。 基于上述情况,本文提出基于免疫过程的神经网络训练的免疫遗传算法(Immune Genetic Algorithm,IGA)。主要过程见图1所示。

图1 免疫遗传算法框图
1.3 基于免疫遗传的神经网络训练
(1) 抗体编码方式 编码操作适用于将问题空间映射为算法空间,有二进制码和实数编码等方式。前者简明通用,易于进行遗传操作,但不具备正则性,并破坏了解空间的拓扑连续性。实数编码为自然正则码,适于高精度运算,神经网络权值及结构编码多用后者,本文依然沿用实数编码方法。

图2 实数编码图
典型的三层前馈网络n-h-m结构,网络节点依次编号为1, 2,…, n(输入层),n+1,…, n+h(隐含层),n+h+1,…, n+h+m (输出层);连接权wij表示由节点i到节点j的输出权;阈值bj为前一层对节点j的输出阈值,然后依节点i顺序串联权值与阈值,构成如图2的抗体串。图2中,αj与αbj分别为网络节点和阈值节点存在标识,用于控制网络结构。当αj或 αbj取值为1时该节点存在;否则该节点被删减。 (2) 适应度计算 设抗体Pi对应的网络的能量函数为Ei,则适应度函数F(i)可直接定义为Ei的函数。本文设定:
 其中,const为大于零的常数,其目的是避免分母为0的溢出中断,本文取const = 0.01。对本文考虑的单隐层前馈网络,
式中,Tp,k和Yp,k分别为第p个训练样本的第k个输出节点的期望输出和实际输出。
(3) 遗传操作
对选择后的抗体群,进行遗传操作。 ① 交叉。这里采纳两点交叉方式; ② 高斯变异。首先将抗体解码为相应的网络结构,对所有权值组合的向量wi按下式
 进行变换,重新组成新的抗体。式中,N (0, 1)为高斯算子。
(4) 基于浓度的群体更新 群体更新策略结合免疫机制中抗体间基于浓度的相互抑制作用,引入浓度因子调整个体的选择几率Ps(i),总的目标是抑制浓度过高抗体,同时保证适应度高的个体被选中的概率大。因为抗体的浓度过高,则在进化过程中容易陷入未成熟收敛。具体方法为:

式中,α,β为0~1间的可调参数;MaxFitness为抗体的最大适应度;C为抗体的浓度,可定义为:

其中,η为0~1之间的系数,用于控制浓度。可以看出:对高浓度的t个抗体,其中适应度较高的抗体获得的得分修正反而较少;若抗体的浓度不高,则上式也可保证高适应度的抗体得到的得分修正相对也高。
2 基于神经网络模型的油气浓度智能预报
我国油库众多,由于它受多种自然因素的影响,因而决定了它的特殊性和复杂性。特别是机场油库的监控任务十分艰巨,必须引起足够的重视。油库油气浓度的预报研究包括两个方面: 一是油气浓度的趋势预报,即根据油气浓度的历史数据来预测其未来一段时间的变化规律; 二是油气扩散的机理研究。油气的扩散过程取决于环境的温度、湿度、通风条件等自然因素,因此,油气浓度预报模型必须能够反映油气扩散的自然规律。
2.1 智能预报原理 神经网络的主要特征是自学习,通过对样本模式的学习,模拟信息之间的内在机制。神经网络对油气浓度扩散机制进行识别的实质,是通过选择适当的神经网络模型,逼近实际系统的动态过程。若以某一时段的油气浓度要素作为网络的输入,以未来一段时间的相应油气浓度要素作为网络的输出,网络模型通过对历史油气资料的学习,就能对蕴含在该时段的油气扩散规律进行映射。 设网络输入X=[X1,X2,…,Xn]T表示上个时段的油气条件,输出Y=[Y1,Y2,…,Yn]T表示下一个时段的油气条件,期望输出Yd=[Yd1,Yd2,…,Ydn]T表示下一个时段实测的油气情况,油气扩散机制可表示为从输入矢量X(t)∈Rn到输出矢量Y(t)∈Rn的非线性映射Ne,即
 误差指标为  2.2 油气浓度模型的建立 在油库油气浓度智能预报模型中,将上个时段的油气参数作为网络的输入,将下个时段作为网络的输出,网络的预见期T为24小时,以历史油气资料作为样本对网络进行训练,使网络识别出该时段的油气扩散规律,并将该规律贮存在网络权重中。如果已知上个时段的油气参数,完成训练的网络就会预报出下个时段的油气参数,油气在整个时段的传播时间即为网络的预见期。某油库油气浓度智能预报模型的结构示意图如图3所示。

图3 智能预报的神经网络模型
图3中,t为上个时段的起报时刻,t+T 是网络的预见期。对于油库油气浓度预报的建模思路是:构造神经网络模型,应用油气资料进行模型训练,当训练精度达到要求时,神经网络模型就能在此精度下映射油气扩散机制。
3 油气浓度模型的免疫训练
训练样本的预处理:在网络的输入项中,由于不同时段的参数相差较大,为了保证各因素处于同等地位,对输入输出项进行数据归一化预处理。 主要参数的取值如下: 网络结构:5-10-1; 权值初始范围:[-3,3]; 训练集: 2003年2月16~19日油气浓度; 测试集: 2003年2月20~22日油气浓度; 群体规模:N = 200; 迭代次数:epochs = 700; 控制参数:α = β = 0.5;η = 0.8; 遗传参数:交叉概率Pc = 0.1;变异概率Pm = 0.05。 应用上述参数对训练集进行免疫遗传学习,并用测试集进行泛化测试,MSE变化趋势如图4所示。

图4 免疫遗传算法的训练/测试误差曲线
4 预报结果及分析
图5为2月16~18日油气浓度预报结果与实际结果比较,图6为2月19~22日油气浓度预报结果与实际结果比较。

图5 2003年2月16~18日油气浓度预报结果

图6 2003年2月19~22日油气浓度预报结果
预报结果表明,基于人工神经网络和遗传算法的油气浓度智能预报模型能够较好地反映油气扩散运动机理。其中,最大预报误差为6.86%;,最小预报误差为2.36%,平均误差为4.61%。预报精度较高,已达到实际应用的精度 从预报结果来看,网络模型对油气浓度的预报精度较高,但有时误差较大,这主要是网络的训练问题,训练样本越多,代表性越强,则精度越高。在实际应用中还发现,对于不同季节、不同的水文地质环境,油气扩散过程会表现出不同变化规律,这主要是受自然因素的影响。因此,网络模型应具有在线学习功能。
5 结论
检验结果表明,该智能预报模型,能够较好地识别油气扩散的演进规律,对不同季节、不同水文地质环境的油气浓度都能进行合理预报。所建模型精度的拟合值与预测值都与实际数据吻合得较好,各测点的误差值均在许可的范围内。通过该预测方法可提前了解油气浓度的大小及发展趋势,及时采取预防措施,对保障油库的安全具有重要的现实意义,为油库油气浓度预测提供了一种新方法。 |