基于GA-Bp算法的炼油化工机械性能建模与仿真研究
2020-09-10孙凤尹晓丽
孙凤,尹晓丽
(中国石油大学胜利学院机械与控制工程学院,东营 257061)
引言
因为遗传算法(Gentic Algorithm,简称“GA算法”)对最优解的搜索范围大,而且GA算法的鲁棒性较强。而神经网络算法(Back Propagation,简称“Bp算法”)在神经网络中属于较常用到的算法,Bp算法具有较强的泛化能力、容错能力和非线性映射能力,是一种基于误差逆向的传播算法,还因为神经网络属于前馈网络的一种,所以可以对此理解为Bp神经网络算法作用于人工神经网络,即Bp算法与人工神经网络的结合[1]。但是由于Bp算法在实际操作时的局限性、收敛速度慢等缺点而导致无法得到最优解。本文将这两个算法的优点相结合,把Bp算法和遗传算法通过混合训练学习之后加入到神经网络的优化中,可以大幅度地改善效率差、搜索不到最优解等缺点[2]。
1 基于GA-Bp算法的炼油化工机械性能建模
由于原油的粘度范围很大,凝固点差别大,沸点范围为常温到500 ℃以上,因此原油的炼化过程极为复杂[3]。原油的炼化工作主要如图1所示,图1为炼油化工流程图。
想要对Bp神经网络发出的信息做出分析,首先要将信号正向传递到目标点,本文在这里假设这个最初的信号为X1。接着当信号想要通过输入层进入隐含层的时候,这个过程就可以用非线性函数(Sigmoid线形函数和Purelin线性函数)对隐含层内的权值进行调整,不断增加或减少最后得出一个值。之后应按照以上步骤对信号进行反向传递,再次得到一个信号反向传递的值,将两个值相减,得到一个差值。通过不断重复以上训练,最后使Bp神经网络建模得到最优解。如图2,为GA-Bp神经网络基本拓扑结构[4]。
结束以上的训练之后,将得到的数值进行输出,此时可以选择使用Sigmoid线形函数作为输入层通过隐含层向输出层传递数据的函数,最后再用Purelin线性函数对从上一级传递过来的数值确定区间并对其进行调整[5]。如图3,为Bp神经网络结构模型。
Bp神经网络的传播方式主要分为两种,其中的反向传播本次实验基本不会涉及到。比较常用的正向传播的方式比较简单,先对实验样本的数据进行采集和整理,然后将数据由输入层输入,再传送到隐含层。因为有着权值的约束,所以数据会在传递过程中被不断调整,等到传送到隐含层的时候就可以直接将信息传送到输出层进行输出[6]。而这个过程会被Bp神经网络记录下来,形成Bp神经网络建模模型,之后Bp神经网络算法会对这个过程不断解读,计算差值,直到计算出最适合此Bp神经网络建模模型的最优解,这时就可以结束学习训练,如果一直没有找到最优解,就会一直搜索。因此,一开始要准确收集与建模模型相关的各项参数[7]。除此以外还可以对权值的变化进行监测,确保各项数值按照复合建模模型的既定规律进行变化。所以如果想要增加活性就可以增大输入神经元的权值,反之,则缩小权值。反复重复这个流程,在隐含层内不断地变化权值,就可以快速的在区间内搜索到最优解[8]。如图4,为Bp学习算法的流程图。
图1 炼油化工流程图
图2 GA-Bp神经网络基本拓扑结构
图3 Bp神经网络结构模型
得出以上结论后,基于GA-Bp算法对炼油化工机械性能模型的优化提出主要思路:利用Bp算法先对原油的炼油化工过程用到的数据进行预先处理,然后将处理后的数据作为神经网络的输入值与输出期望,最后得出了基于GA-Bp算法做出的原油炼化机械工作的建模模型[9]。如图5,为 GA-Bp神经网络算法的基本结构图。
因为传统的Bp神经网络算法仍然具有搜索效率差、效率差、自动学习速度慢等缺点,因此本文对于Bp算法做出了改善,将Bp算法和GA算法作用于神经网络时进行混合训练学习,这样就可以使Bp算法更适用于炼油化工机械工作[10]。本文提出了以下几种改进方法:①自动完善学习速率法:这个办法主要是针对于Bp神经网络在传递数据信息的过程中会产生误差而提出的,学习算法主要依赖于学习率,所以不断调整提高学习率可以有效改善传递信息过程中会产生误差的情况。②带动量下降法:此方法可以使目标函数在遇到负梯度的时候快速收敛,从而避免在趋近边缘的时候下降速度太快而导致的抖动。③陡度因子法:因为训练的不断搜索,函数误差曲面可能会显示网络的收敛被缓和带影响,相应的网络节点的输出也是如此。这种情况会影响网络的正常收敛,这时就可以借助陡度因子优化帮助训练走出缓和带[11]。
由以上的Bp神经网络的结构、原理、改进方法可以更好的做出基于GA-Bp算法的炼油化工机械性能的模型,通过以下实验验证了基于GA-Bp算法的炼油化工机械建模的准确性[12]。
图4 Bp学习算法的流程图
图5 GA-Bp神经网络算法的基本结构图
2 基于GA-Bp算法的炼油化工机械性能仿真实验
本次实验主要是通过对GA-Bp神经网络模型进行混合训练学习,并根据学习训练好的模型对炼油化工机械性能工作中的参数进行了预测。在原油炼化的过程中,为了维持炼化过程的效率和炼化的安全,一定要将原油保持在固定的温压下进行。就要合理有效地对原油进行传热[13]。如图6,为逆流流动时Δt的计算。
Δt进=T1-t2
Δt出=T2-t1
如图7,为并流流动时的Δt的计算。
Δt进=T1-t1
Δt出=T2-t2
Δt均=(Δt进-Δt出)/ln(Δt进/Δt出)
原油原料投入催化裂化设备后,要进行二次加工处理出其中的重质油,重质油通过催化裂化处理就可以变成轻质油。原油的催化裂化过程一般为:二次反应、重质油与轻质油分流、重质油再生、吸收这几个步骤。经过这些处理步骤后将得到的重质油加热到400 ℃,然后将加热后的重质油和轻质油倒入提升反应器里,搅拌使其混合,最后将混合物与催化剂继续搅拌混合,此时就会产生气化反应。当石油产生了气化反应之后,使用完善后的GA-Bp算法重新训练原油炼化的过程,然后使用Bp混合训练和单纯Bp训练分别对神经网络的数据进行预测。本次可以得出以下结论:Bp混合训练后的神经网络的预测结果误差远小于单纯Bp训练后的神经网络的预测结果误差,结果达到了本次实验的目的[14]。如图8,为Bp混合训练与单纯Bp训练对照图。
图6 逆流流动时Δt的计算
图7 并流流动时Δt的计算
图8 Bp混合训练与单纯Bp训练对照图
结合以上实验,可以得出以下结论:①炼油化工机械极为复杂,影响其性能的因素很多,除了装置的结构参数等可控因素外还有原油种类等一些不可控因素。目前采用研究原油炼化装置性能的一些方法很难刻划描述这种多输入多输出、复杂非线性以及不确定性等特征[15]。②Bp神经网络的特点:可以大范围搜索和并行计算、自动学习、容错率高、泛化能力强、对非线性函数无限逼近等。因此用Bp神经网络来对炼油化工机械性能建模可以很好的刻画以上特征。③Bp神经网络所采用的Bp混合训练和误差逆传播学习训练是根据神经网络的误差因变量梯度数据降低的。简单来说,这种算法是由点到点的,还因为Bp神经网络中的全局误差数据连接组成的连接权值空间是根据拥有无数极值点的超曲面和Bp神经网络混合训练一开始的基础权值随机构成的,所以Bp神经网络算法容易局限于一个极小点。将Ga算法与Bp算法结合起来的GA-Bp算法应用于神经网络时,先利用GA遗传算法和Bp神经网络搜索出最优解和局部权值分布空间,接着根据Bp算法在此空间内搜索最优解,这样就可以克服单纯Bp训练算法在权值分布空间和最优解的搜索上产生的局限性和不准确性等缺点,因此GA-Bp神经网络算法是一种根据自然选择和遗传规律而产生变化的全局优化算法,这也大大增加了GA-Bp神经网络算法的实用性和泛用性。
3 结束语
本文通过对影响原油炼化过程的各项参数进行了缜密计算和研究,通过不断训练学习调整权值的大小,确定最优解的区间范围,并再次进行缩小搜索范围,从而能更精确地得到Bp神经网络的模型,最后做出了基于GA-Bp算法的炼油化工机械性能的建模。本文还对Bp神经网络训练学习的过程进行了调整与完善,通过调整后的新算法相较于经典算法在预测精准度、训练效率、范围准确度等方面都有了极大的提高。用基于与相结合算法的神经网络对炼油化工机械性能模型进行优化,不仅可以很好原油炼化的多输入多输出、复杂非线性以及不确定性等特征,而且利用该方法优化的神经网络模型还具有良好的实时性,所以基于GA-Bp算法的炼油化工机械性能建模与仿真研究有着广泛的应用前景。