基于OPC技术和果蝇优化广义回归神经网络的海洋蛋白酶发酵过程软测量

2020-09-21 03:16孙丽娜黄永红王应海
南京理工大学学报 2020年4期
关键词:组态王训练样本果蝇

孙丽娜,黄永红,王应海

(1.苏州工业园区职业技术学院 机电工程系,江苏 苏州 215123;2.江苏大学 电气信息工程学院,江苏 镇江 212013)

海洋生物酶发酵过程非常复杂,具有非线性、多变量、强耦合性的特点,基质质量浓度、菌体质量浓度、酶活是反映海洋生物酶发酵进程的关键生物参数,由于受硬件检测技术的限制,这些参数难以实时在线测量,这严重影响了发酵过程的优化控制[1-6]。近年来,许多学者对这些参数的测量问题进行了深入研究,发现软测量技术是解决上述问题的有效途径。

常用的软测量方法有神经网络法、回归分析法和状态观测器法。在众多神经网络中,BP神经网络应用比较广泛,但是,BP神经网络具有收敛速度慢、容易陷入极小、隐含层节点难以确定的缺点[7-8]。广义回归神经网络(Generalized regression neural network,GRNN)克服了BP神经网络的一些缺点,具有结构简单、学习速度快、逼近能力强的特点,在许多领域得到了广泛应用。何琴等[9]采用GRNN对烤烟的主要化学成分与感官质量进行了建模,验证了GRNN的建模效果优于BP神经网络,即使在训练集样本数据较少时,GRNN的预测准确度仍然很高;周敏等[10]利用GRNN对具有高维非线性特性的液位控制器系统进行回归预测建模,验证了所建立的模型预测结果稳定、稳健性好。兰海涛等[11]构建了基于GRNN的边坡稳定性评价的模型,获得满意的建模效果;林喆等[12]构建了基于GRNN的油纸绝缘变压器的寿命预测模型,得到了精度理想的预测效果;张荣标等[13]将GRNN应用于化学需氧量的在线检测,验证了GRNN具有较强的泛化能力和较高的检测精度。以上研究表明,GRNN具有很强的非线性映射能力,非常适用于解决非线性问题,在逼近能力和学习速度上也具有更强的优势,无论训练样本多少GRNN都可以达到较好的预测效果,并且GRNN的结构和权值都是由学习样本决定,在GRNN建模过程中不需要迭代训练,因而更适合用于具有非线性、多变量、强耦合性特点的海洋生物酶发酵过程。在GRNN建模过程中,需要先确定好合适的平滑因子取值才能达到良好的建模效果,即平滑因子的大小直接影响GRNN模型的预测性能。文献[9-13]中,采用的方法主要有试凑法和交叉验证法,但这些方法都具有一定的局限性,不一定能够找到最优的平滑因子取值,而果蝇优化算法(Fruit fly optimization algorithm,FOA)具有搜索空间大、全局搜索能力强的特点,非常适用于GRNN参数优化[14-16]。

本文以海洋蛋白酶发酵过程为研究对象,提出一种基于FOA优化GRNN的软测量建模方法,首先利用训练样本集对关键生物参数进行软测量建模,利用测试样本集对模型进行验证,结果表明,该模型收敛速度快、预测精度高、泛化能力强。为了进一步实现关键生物参数的在线软测量,文中结合MATLAB强大的数据处理能力、丰富的工具箱以及组态王组态灵活、实用性强、且能够为各种现场设备提供驱动软件[17-18]的特点,将组态王实时采集的输入样本数据通过面向过程控制的对象链接与嵌入(Object linking and embeded for process control,OPC)技术传递给MATLAB,MATLAB用建好的FOA优化GRNN模型预测出关键生物参数并将其软测量值再通过OPC技术传递给组态王,在组态王中实现了生物参数的实时显示与监视。

1 广义回归神经网络

GRNN由输入层、模式层、求和层和输出层组成,其结构如图1所示。

1.1 输入层

输入层的作用是直接将网络输入X=[x1,x2,…,xr]T传递给模式层,其中,r为学习样本中输入向量的维数(即输入层神经元的数目)。

1.2 模式层

模式层神经元的传递函数为Pi

(1)

式中:σ为平滑因子,X网络的输入变量,Xi为第i个神经元对应的学习样本,i=1,2,…,n,n为学习样本的数目(即模式层神经元的数目)。

1.3 求和层

求和层采用两种类型的传递函数,第一种类型的传递函数是对所有模式层神经元的输出进行算数求和,公式为

(2)

第二种类型的传递函数是对所有模式层神经元进行加权求和

(3)

式中:n为学习样本的数目;j=1,2,3,…,k;yij为第i个输出样本Yi中的第j个元素。

1.4 输出层

设网络的输出为Y=[y1,y2,…,yk]T,k为输出向量的维数(即输出层神经元的数目),则输出层中第j个神经元yj可表示为

(4)

结合式(1)-(4)可以得出,平滑因子σ的大小直接影响GRNN的预测结果。

2 果蝇算法优化广义回归神经网络

为了提高GRNN模型的预测精度,文中采用果蝇优化算法搜索广义回归神经网络的平滑因子σ取值。果蝇优化算法是一种基于果蝇觅食行为推演出来的全局寻优算法[19],根据果蝇觅食的特性,果蝇优化广义回归神经网络算法的流程如图2所示,可归纳为以下步骤。

(1)确定好训练样本集以及GRNN的输入和输出样本数据。

(2)随机初始化果蝇群体的位置(Xaxis,Yaxis),设置迭代次数的上限(maxgen)和种群规模的大小(zisepop)。

(3)随机设定果蝇个体寻优食物的方向和距离(Xi,Yi)

(5)

式中:r为随机数。

(4)计算果蝇个体到原点的距离Di和味道浓度判定值Si

(6)

(5)将味道浓度判定值Si代入味道浓度判定函数F(Si),求出味道浓度Smelli,本文使用GRNN模型的均方根误差(RMSE)作为味道浓度判定函数。

(7)

(6)找出果蝇群体中味道浓度Smelli最优个体(RMSE的极小值)。

[bestSmellbestindex]=min(Smell)

(8)

(7)保留最优味道浓度bestSmell和味道浓度最优的个体果蝇位置bestindex对应的坐标(Xaxis,Yaxis),然后果蝇利用敏锐的视觉向该位置飞去。

Xaxis=X(bestindex)

Yaxis=Y(bestindex)

Smellbest=bestSmell

(9)

(8)开始迭代寻优,判断对否达到最优味道浓度或最大迭代次数,若是则执行步骤(7),否则重复执行步骤(3)-(6),直至运行停止。

(9)迭代寻优过程结束后,将最优的平滑因子σ代入GRNN模型中,即可得到FOA优化GRNN的软测量模型。

3 海洋蛋白酶发酵过程软测量建模

3.1 样本数据的采集

通过分析海洋蛋白酶发酵过程中菌体细胞的生长代谢过程,对生物参数(菌体质量浓度X,基质质量浓度S,相对酶活P)有影响的变量主要有温度t、基质进给速率u、溶解氧浓度Do、空气流量l、发酵罐压力p、反应器体积v、搅拌转速r、CO2浓度和pH值。如果把这些可以直接测量的变量都作为软测量模型的辅助变量,就会使得所建立的模型结构变得非常复杂,为此,利用Elman神经网络并结合平均影响值(Mean impact value,MIV)方法进行变量筛选[20-21],最终确定空气流量l、搅拌转速r、pH值、Do浓度、反应器体积v作为软测量模型的辅助变量。该方法计算过程为:将对生物参数有影响的以上9个变量作为MIV-Elman神经网络的输入,菌体质量浓度X,基质质量浓度S,相对酶活P作为网络的输出,求解出每个输入变量对输出变量的平均影响值,根据平均影响值的绝对值的大小来判定该输入变量对输出变量的重要性,从而筛选出对输出变量影响较大的输入变量作为软测量模型的辅助变量。此方法在生物参数预测上的有效性与可行性已在文献[20]中证明。

在海洋蛋白酶发酵过程中,通气量为1∶1、温度控制在18 ℃,搅拌转速150 r/min,pH值7.0,溶氧控制在35%~45%之间。发酵过程中每分钟采集一次空气流量l(通过安装在发酵罐的排气管道上的转子流量计测定)、搅拌转速r(通过安装在电动机轴上的测速发电机检测)、pH值(采用把指示电极和参比电极合二为一的复合pH电极测量)、Do浓度(采用直接插入发酵罐内的复膜电极测定溶解氧浓度)、反应器体积v(采用电导率仪测定[22])。发酵过程中的生物参数(菌体质量浓度、基质质量浓度和酶活)每小时取样一次并进行离线分析。基质质量浓度采用斐林试剂法测定,菌体质量浓度采用菌丝干重法测定,酶活采用Folin-酚试剂法测定。总共采集了10批发酵数据,每批数据中含有50个样本,每批样本中含有8个变量,其中空气流量l、搅拌转速r、pH值、Do浓度、反应器体积v为软测量模型的输入变量,菌体质量浓度X,基质质量浓度S,相对酶活P作为软测量模型的输出变量。

3.2 软测量模型的建立

为了更有力地说明FOA优化GRNN的建模效果,文中将9批数据作为训练样本、1批数据作为测试样本和8批数据作为训练样本、2批数据作为测试样本分别对模型进行了训练和测试,并将最大误差(MaxEr)、平均绝对误差(MAD)和均方根误差(RMSE)作为FOA-GRNN模型的评价指标,它们的计算公式分别为

(10)

(11)

(12)

将9批数据作为训练样本时,根据FOA优化GRNN的算法步骤,随机初始化果蝇群体位置为:Xaxis=rand()、Yaxis=rand(),最大迭代次数为100,种群规模设定为10,随机设定果蝇飞行方向与距离:X(i)=Xaxis+20*rand()-10、Y(i)=Yaxis+20*rand()-10,另外,为了避免网络过渡训练,设定最优味道浓度bestSmell<0.01。用果蝇算法优化GRNN的平滑因子,经过5次迭代收敛于坐标(16.077 7,10.113 9),对应的RMSE最小值为0.009 5,平滑因子σ最佳值为0.049 9,建模时间为4.165 2 s,具体优化过程如图3所示。

将8批数据作为训练样本时,利用FOA优化GRNN的平滑因子,参数设置与9批数据作为训练样本时相同,最终经过3次迭代收敛于坐标(-15.687 2,-7.458 1),对应的RMSE最小值为0.005 8,平滑因子σ最佳值为0.058 4,建模时间为2.511 6 s,具体优化过程如图4所示。

将最佳的平滑因子取值代入net=newgrnn(P,T,SPREAD)函数中得到训练的网络net,其中,P为输入样本,T为目标向量,SPREAD为径向基函数的分布密度(平滑因子σ)。将训练好的网络net和输入样本P代入函数Y=sim(net,P)中得到网络的预测数据Y。

为了分析FOA-GRNN软测量模型的性能,采用相同的训练样本和测试样本分别对GRNN、BP神经网络和SVM进行了训练和测试。在GRNN训练过程中,SPREAD采用默认值1;在BP神经网络训练过程中,主要参数设置:隐含层神经元传递函数为tansig,输出层神经元传递函数为purelin,训练函数采用traingdx函数,隐含层节点数为20,训练误差为0.000 1,最大训练次数为1 000;在SVM训练过程中,采用默认的参数设置。9批数据作为训练样本时4种模型的训练结果和8批数据作为训练样本时4种模型的训练结果如表1所示。

从表1中可以看出,由于GRNN和SVM在训练的过程中不需要迭代,所以训练速度比较快,而FOA-GRNN和BP神经网络在训练的时候需要迭代,所以训练速度相对来说较慢,但对比BP神经网络和FOA-GRNN,可以看出,无论是9批数据作为训练样本还是采用8批数据作为训练样本,FOA-GRNN的训练速度和迭代次数明显优于BP神经网络。另外,为了比较4种模型的训练效果,表1中也给出了每种模型的基质质量浓度S、菌体质量浓度X、相对酶活P的MAD和RMSE,可以看出,无论是采用9批数据作为训练样本还是采用8批数据作为训练样本,FOA-GRNN模型的基质质量浓度S、菌体质量浓度X和相对酶活P的平均绝对误差和均方根误差都远远小于其他3种模型,说明FOA-GRNN模型具有良好的拟合能力。

表1 4种模型的训练结果比较

3.3 软测量模型的验证

为了便于比较4种模型的预测效果,表2分别给出了4种模型在1批数据作为测试样本和2批数据作为测试样本时所对应的基质质量浓度S、菌体质量浓度X和相对酶活P的MaxEr、MAD和RMSE。

表2 4种模型的预测结果比较

从表2中可以看出,无论采用1批数据作为测试样本还是采用2批数据作为测试样本,FOA-GRNN模型所预测的基质质量浓度S、菌体质量浓度X和相对酶活P的MaxEr、MAD和RMSE都非常小,且远远小于其他3种模型,说明FOA-GRNN模型具有良好的预测能力。

为了更直观地看出4种模型的预测效果,文中给出了1批数据作为测试样本时的基质质量浓度S、菌体质量浓度X和相对酶活P的预测结果图,分别如图5~7所示。图5为每种模型针对基质质量浓度的预测结果,图6为每种模型针对菌体质量浓度的预测结果,图7为每种模型针对相对酶活的预测结果。

从图5基质质量浓度的预测结果、图6菌体质量浓度的预测结果和图7相对酶活的预测结果可以看出,无论基质质量浓度S、菌体质量浓度X还是相对酶活P,FOA-GRNN模型预测的软测量值(预测值)和离线化验值(目标值)非常逼近,明显优于GRNN、BP神经网络和SVM,说明FOA-GRNN模型在逼近能力和预测能力上均具有较强的优势。

结合表1、表2和图5~7可以看出,无论是采用9批数据作为训练样本、1批数据作为测试样本还是采用8批数据作为训练样本、2批数据作为测试样本,FOA优化GRNN软测量建模方法的训练和测试的效果都非常好且所获得的关键生物参数的MaxEr、MAD、RMSE都比GRNN、BP神经网络和SVM软测量模型小得多,这说明FOA-GRNN软测量模型具有良好的泛化能力。由于GRNN和SVM的训练不需要迭代,而在FOA优化GRNN软测量建模过程中,需要通过果蝇算法对GRNN的平滑因子σ进行迭代寻优,所以,FOA优化GRNN算法的时间复杂度有所提升,但建模时间在可接受的范围内。综合以上分析可以表明,FOA优化GRNN软测量建模方法比较适用于海洋蛋白酶发酵过程关键生物参数的预测。

4 软测量参数在线监视

为了使FOA优化GRNN软测量模型预测出的海洋蛋白酶发酵过程中的关键生物参数能够实时显示出来,文中通过OPC技术将MATLAB和组态王进行了数据连接。OPC 技术采用客户端/服务器结构,OPC服务器由服务器、组对象和数据项三类对象组成。MATLAB7.0以上的版本中含有专门的OPC ToolBox,借助于Matlab OPC工具箱就可以方便地实现OPC客户端和OPC服务器之间的通讯。

在海洋蛋白酶发酵过程中,MATLAB作为OPC客户端,组态王作为OPC服务器,其发酵过程的硬件结构如图8所示。辅助变量首先通过对应的传感器进行检测后,利用S7-200PLC的模拟量模块获取传感器传回的数值。然后,组态王利用工控机上的RS232接口,通过PPI协议与西门子S7-200PLC进行通信,就可以实现这些变量的实时数据采集。最后,组态王采集的软测量模型的辅助变量通过OPC通讯接口将数据传递给MATLAB,MATLAB将这些数据作为FOA优化GRNN模型的输入样本进行计算,计算完成后再通过OPC通讯接口将函数返回值(关键生物参数预测值)传送给组态王。

为了验证MATLAB和组态王之间的数据通讯效果,图9给出了海洋蛋白酶发酵过程中辅助变量与主导变量的在线监视情况。图9(a)中的P1为组态王实时采集的数据,Y为通过FOA优化GRNN软测量建模所得到的预测结果,可以看出组态王和MATLAB所显示的数据是一致的,这表明MATLAB通过OPC技术成功地实现了和组态王之间的实时通讯;为了测试系统的稳定性,图9(b)给出了海洋蛋白酶发酵过程实际运行一段时间后的关键生物参数的实时趋势曲线;另外,图9(c)给出了海洋蛋白酶发酵过程智能监视系统的界面。以上运行结果表明,利用OPC技术不仅实现了MATLAB和组态王之间的数据通讯,使得生物参数在组态王中能够进行实时显示,并且系统运行的稳定性较好,为海洋微生物发酵过程优化控制奠定了基础。另外,可根据实际情况将该监视系统稍作改进就可以应用于其他微生物发酵过程。

5 结论

本文针对海洋生物酶发酵过程中关键生物参数难以实时在线测量的问题,以海洋蛋白酶发酵过程为研究对象,通过MATLAB编程建立了基于FOA优化GRNN的海洋蛋白酶发酵过程关键生物参数软测量模型,利用OPC技术将组态王实时采集的辅助变量传递给MATLAB,MATLAB将模型预测出的关键生物参数传递给组态王。结果表明,无论训练样本和测试样本怎么分配,基于FOA优化GRNN的软测量模型的迭代次数明显小于BP神经网络、收敛速度远远超过BP神经网络,且预测精度和泛华能力明显优于GRNN、BP神经网络和SVM;利用OPC技术解决了MATLAB与组态王之间的数据通讯,实现了关键生物参数的实时在线测量,且系统运行稳定,获得了较好的效果,为海洋生物酶发酵过程的优化控制奠定了基础。另外,可根据实际情况将该方法应用于其他微生物发酵过程。

猜你喜欢
组态王训练样本果蝇
果蝇遇到危险时会心跳加速
2021年大樱桃园果蝇的发生与防控
人工智能
小果蝇助力治疗孤独症
果蝇杂交实验教学的改进策略
基于小波神经网络的网络流量预测研究
液压系统电气控制虚拟实验系统的开发
基于组态王和PLC的实验室通风监控系统