基于BP神经网络控制的生物发酵过程与实践

更新时间:2024-01-16 作者:用户投稿原创标记本站原创 点赞:29522 浏览:133958

摘 要 :生物发酵过程具有高度非线性的特点,影响因素较多,难于用精确的数学模型进行控制.本文中以大肠杆菌发酵生产类人胶原蛋白为例,利用BP神经网络控制方法,以溶氧量作为关键因素,用训练后的神经网络对发酵过程中的影响因素进行控制.结果表明采用该方法可以有效的提高发酵过程中产生的胶原蛋白产量.

关 键 词 :生物发酵 BP神经网络 算法研究

1.概述

现代意义上的微生物发酵工程是指在一定条件下使微生物增殖,从而产生对人类有价值的生物成份的过程[1].发酵过程是一个基于微生物生长繁殖和控制的生物化学反应过程,和普通意义上的上的工业控制不同,具有非线性、时变性和时滞性等特点,内部机理非常复杂.因此对于发酵过程的控制一直都是发酵工业生产中的难点.随着科技进步,新的非线性控制技术的发展为控制发酵过程提供了有力的工具.

当前对于发酵过程的控制,其基本原理是将发酵过程中的主要控制因素采用一定的人工手段进行干预,以发酵过程中所产生的发酵液温度、PH值等关键因素为控制指标,并将其进行动态监测,从而将发酵过程控制在人们所期望的的范围内.由于发酵过程具有实时性,因此对于发酵过程的控制按时间特性可分为离线控制和在线控制两大类[2].随着研究的深入,在线控制已经成为研究的重点.在线控制是一种基于反馈信息的过程控制方法.其原理是实时监测发酵系统的输出值期望值之间的误差,按照一定的过程控制算法进行调整,将发酵过程中关键的发酵指标控制在期望范围之内.本文将就发酵过程的在线控制方法和实践展开讨论.

2.发酵过程控制的硬件系统简介

对发酵过程的控制是建立在必要的硬件条件基础上的.发酵系统的组成主要由两部分构成:即发酵装置和控制器.对于发酵过程的控制关键是控制温度、溶氧、pH值等.这些因素都可以通过实时监测发酵装置传感器信息来实现.

本文中以大肠杆菌发酵产生类人胶原蛋白为例,需要监测的主要内容有四项:pH值、温度、溶氧量和尾气.监测设备分别为:pH电极、铂电极、溶氧电极和尾气分析仪.

对于发酵过程的智能控制,重点是实现对控制器的智能化,在下一节中将进行具体的讨论.在本文中所涉及的控制器软件的智能化设计基于silicoulab公司的片上系统芯片(SoC),发酵装置型号为NLF22机械搅拌式发酵罐,发酵罐罐体上装配有监测温度、溶氧、pH值等参数的传感器和尾气分析仪.这类实时数据的监测和控制在LabVIEW图形化编程软件设计的人机交互界面上进行.

3.BP人工神经网络控制原理

发酵过程具有高度的非线性特点,因此在本文中采用适合于给类问题的基于BP神经网络控制算法.该算法不依赖精确数学模型,具有非线性的映射能力,可以从大量实时监测数据中寻找输入和输出之间的非线性关系,计算出最优的控制量,从而实现对发酵过程的有效控制.

人工神经网络控制算法是建立在现代神经生物学和仿生学对人类大脑活动的认识模式研究的基础上,通过构造人工神经元形成的网络来模拟神经活动,是当前人工智能研究的热点和智能化控制的研究方向.

人工神经元是神经网络算法的基本信息处理单元,其输入输出关系可由式(1)和式(2)来描述:

Ii等于wijxj-θi (1)

yi等于f(Ii) (2)

上式中,xj为来自于其他与本神经元相连接的神经元所传递的输入信息,wij为神经元I,j之间的信息权重;θi为阈值;函数f称为作用函数或转移函数.

目前在人工神经网络研究中已经有很多种网络模型,本文中所采用的是前馈式神经网络模型.BP算法((Error Back Propagation)即属于这类前馈式网络模型,该模型以神经网络的误差平方和为目标函数,以某种优化算法(如梯度法)计算使得目标函数最小的控制值[3].其拓扑结构可参考相关文献.


4.BP神经网络的应用

本文中以大肠杆菌发酵生产类人胶原蛋白过程为例,简介BP神经网络智能控制在其发酵过程控制中的应用.

4.1 输入层和输出层节点数分析 依据工神经网络运行的基本原理,输入层的节点数是由训练样本数据的维数来决定,输出层的节点数则取决于控制者的实际控制目标.在本文算例中,发酵过程的关键控制因素主要有4个,即酸碱度(pH值)、温度、溶氧度、搅拌速度和时间.这五类数据通过传感器数据可以方便的得到,因此将其作为训练样本,并得到样本数据的维数为5,输入层的单列节点数为4.对输出层而言,依据生产经验,在胶原蛋白的发酵过程中的关键因素为溶氧量,因此将其作为关键控制因素和最终控制目标,由此可得到输出层的节点数为1个.

4.2 隐含层层数和隐含层节点数分析 本文中设定隐含层的层数为1(原因可参照单隐含层对非线性函数的逼近特性[4]).隐含层的节点数可由式(3)进行计算:

m等于+ (3)

其中,m为隐含层的节点数,N表示输入层的节点数,L表示输出层的节点数,P表示新样本数据,α为1-10之间的常数.依据实测数据(此处从略),可计算得到隐含层的节点数为18.

4.3 程序实现 本文中采用Matlab编程实现上述BP神经网络控制,其基本步骤概述如下.

首先利用newff()函数来生成上述指定结构的神经网络,其参数设定如式(4)所示:

NET等于newff(minmax(p),[4],18,1){‘tansig','purelin',},'traingd

m) (4)

其次设定基于上述网络NET的训练参数,该步骤涉及到的函数的参数设定结果为:NET.trainParam.epochs等于500、NET.train Param.goal等于0.02、NET.trainParam.show等于25、NET.trainParam.Ir等于0.05.

最后采用命令[NET,tr]等于train(NET,Fd,T) 训练上述神经网络.

5.结果分析

表1中对比了采用BP神经网络控制前后的利用大肠杆菌发酵产生类人胶原蛋白的产物湿重产量(g).有表1可见,通过对发酵过程的BP神经网络控制后,胶原蛋白的产物湿重总体有明显的提高,表明该方法在这类发酵过程控制中是有效的.

6.结语

生物发酵过程是一个复杂的过程,具有高度非线性和难于用精确数学模型描述的特点.本文利用BP神经网络控制方法来综合控制发酵过程中的关键因素,以氧容量作为控制要点,经过网络训练后可提高对发酵过程中关键因素的控制效果,实践表明可大幅度的提高类人教员蛋白的产物湿重产量.上述结果表明利用智能算法控制这类高度非线性的生物发酵过程较之于传统方法具有明显的优势,是今后生物发酵过程控制中重要的研究方向.

相关论文范文