基于支持向量机的生物发酵过程状态变量软预报方法

文档序号:427588阅读:237来源:国知局
专利名称:基于支持向量机的生物发酵过程状态变量软预报方法
技术领域
本发明涉及的是一种生物发酵过程的预报方法,特别是一种基于支持向量机的生物发酵过程状态变量软预报方法,属于生物技术和信息科学交叉领域。
背景技术
生物发酵是一类重要的工业生产过程,提供了与国计民生休戚相关的药品(抗生素、基因工程重组药物、疫苗、维生素等)、各种氨基酸(核酸)及其它产品(酒精饮料、酱油醋、生物保健品)。其典型特征是内在机理复杂、可重复性差、生产波动大,具有高度的非线性和时变特性。生物发酵的状态变量如产物浓度、基质消耗速率等反映了过程所处状态,对其进行在线测量,是进行补料、供氧等动态控制的重要依据,同时也是进行优化调度的前提和基础。但是,在实际生产中,这些变量通常采用离线取样分析获得,取样时间间隔长、数据滞后大且精度低,不能满足实时控制和优化的需要。因此,对这些关键变量进行高精度宽区间软预报,对生产过程的监控有重要意义。
经检索,未发现利用支持向量机技术对生物发酵过程关键状态变量进行预报的直接报导,但有相关文献。Yan et al.2004年发表的“Soft sensing modeling basedon support vector machine and Bayesian model selection”(Yan WW,Shao HH andWang XF,Soft sensing modeling based on support vector machine and Bayesianmodel selection,Computers and Chemical Engineering,28,1489-1498,2004)(YanWW,Shao HH and Wang XF,基于支持向量机的软测量建模和贝叶斯模型选择,计算机与工业过程,28,1489-1498,2004)一文基于支持向量机回归技术,提出了一种用于工业过程软测量方法,并以石油分馏过程为例进行了验证。该方法首先通过贝叶斯判据选择最优支持向量机软测量模型,然后利用分馏塔中石油蒸气温度、回流蒸气温度和回流量等易测量变量,组成训练向量,对支持向量机进行训练,最后对难以直接测量的轻柴油的凝固点进行在线估计,获得了满意的精度(相对估计误差低于5%)。但该文研究的只是在线软测量问题,未涉及变量的宽区间的软预报。

发明内容
本发明的目的在于克服现有技术中的不足,提供一种基于支持向量机的生物发酵过程状态变量软预报方法。使其综合利用了支持向量机回归技术在特征映射方面的突出优点,实现产量、基质消耗等发酵过程关键状态变量的高精度宽区间预报,预报误差仅在2%~4%之间。
本发明所提出的软预报方法包括动态训练数据库建立、支持向量机训练、状态变量预报以及训练数据库更新四个基本步骤。
第一步动态训练数据库建立。动态训练数据库包括静态训练数据库和待预报罐批所有已知的输入输出向量对两部分。静态训练数据库是相同工艺下若干历史罐批(一般30罐批左右)的输入输出向量对的集合,它构成训练数据库的主体部分;截至当前发酵时间为止,待预报罐批的所有输入输出向量对和静态训练数据库共同组成支持向量机的动态训练数据库。输入输出向量对的详细说明见下文。
第二步支持向量机训练。支持向量机训练的实质是利用生成的动态训练数据库,求出支持向量和非线性最优回归函数,利用这些支持向量和非线性最优回归函数将能复现训练数据的输入输出关系。
第三步状态变量预报。利用已训练好的支持向量机,根据当前待预报罐批的最新输入向量,获得状态变量的预报值。
第四步训练数据库更新。训练数据库的更新包括两个方面一是在线更新,即一旦待预报罐批有新的输入输出数据向量对生成,该向量对将被充实到动态训练数据库中;二是离线更新,即当一个罐批发酵结束,要按照一定的原则离线更新历史罐批数据。训练数据库的更新技术也即本发明中的智能数据库技术。
所述的步骤四,具体做法为(a)若该停罐罐批为极端异常罐批和故障罐批,不更新历史罐批数据;(b)在发酵中后期,若该停罐罐批的产量曲线与已划定的置信域内某一较早的历史罐批相似,则用该罐批取代较早的罐批;(c)在发酵中后期,若该停罐罐批的产量曲线在已划定的置信域内不与任何历史罐批相似,则直接将该罐批增补为历史罐批。
本发明设计了一种动态支持向量机状态预报器,能够实现产量、基质消耗等发酵过程关键状态变量的高精度宽区间预报。验证结果表明,该预报器的预报误差在2%~4%之间,预报区间占整个发酵周期的15%左右,每一轮预报的计算时间不超过1分钟(其中预报用时为10~20秒,数据处理、预报输出和界面显示等辅助功能用时为40秒左右)。该发明需利用发酵车间现有的测量和分析数据,但无需额外增加测量仪表投资。在线实施本发明时,要求提供现有测量和分析数据与上位机通信的设备。上位机读取和处理采样分析数据,完成支持向量机的训练和状态变量的预报,输出预报结果。


图1本发明的详细实施流程2输入输出数据窗口示意3产量的置信域划分示意图,其中符号表示产量,曲线为置信限具体实施方式
以下结合青霉素产量预报的实施例子和图1所示的实施流程图,对本发明实施例作出详细描述1.动态训练数据库建立(1)输入输出向量对的生成如图1、2所示,某抗生素厂一个青霉素发酵罐批的主要过程变量的离线采样分析值,分别是青霉素产量(P)、碳源消耗量(S)和前体消耗量(PAA),它们均为累积量并已无量纲化,t指发酵时间,该罐批的采样周期TS为4小时。图2中有两个数据窗口,实线框为输入数据窗口,窗口宽度为TD(图中TD为40小时),虚线框为输出数据窗口(同预报窗口),窗口宽度为TP(TP亦为40小时)。输入输出向量对通过移动数据窗口技术获得,即输入数据窗口和输出数据窗口一起以TM/步的速度向右移动(在本发明中TM=TS),获取不同发酵时间的动态过程数据片断,从而得到相应的输入输出向量对。定义对应第k个数据窗口的输入输出向量对为{X(Tk),Y(Tk)},其中输入向量x(Tk)由Tk以及数据窗口闭区间覆盖的(m+1)个采样时刻过程变量的离散值组成,见式(1)。式(1)中Tk是数据窗口右端对应的发酵时间(小时),τ是离散化步长,m是数据窗口的等分数,m=TD/τ,除Tk外的元是与待预报变量有动态关联的变量,在本例中,除P、S、PAA以外,还有氧消耗量(O2)、二氧化碳产生量(CO2)等,见式(2)。输出向量Y(Tk)为输出数据窗口右端对应发酵时间(Tk+TP)小时的待预报变量(这里指产量)采样分析值,见式(3)。
X(Tk)=[Tkx(Tk)x(Tk-1τ)x(Tk-2τ)…x(Tk-mτ)]T(1)x(Tk)=[P(Tk)S(Tk)PAA(Tk)O2(Tk)CO2(Tk)…]T(2)Y(Tk)=[P(Tk+TP)]T(3)(2)生成静态训练数据库按照给定原则选取n个历史罐批。这些原则是(a)时效性,即所选历史罐批属于近1~3个月内的生产罐批;(b)代表性,即所选历史罐批不属于极端异常罐批和故障罐批,且尽可能均匀地分布于已知波动范围。经过数据预处理,再应用1(1)描述的方法可获得这些历史罐批的输入输出向量对。假定某历史罐批的发酵周期为Tf,式(4)给出了该罐批最多可生成的输入输出向量对的对数N。n个历史罐批的所有输入输出向量对的集合即构成静态训练数据库θ1~n,见式(5)。式(5)中,下标i代表罐批号,Ni表示第i个历史罐批的输入输出向量对的组数。
N=int((Tf-TD-TP)/TM) (4)θ1~n={Xi(Tk),Yi(Tk},k=1,2,…,Ni,i=1,2,…,n(5)(3)生成动态训练数据库定义当前处于运行状态的待预报罐批为第(n+1)个罐批,假设其最近发酵时间为Tk,按1(1)描述的方法获得截至Tk为止,该罐批的输入输出向量对,定义这些向量对的集合为θn+1。在TP=40小时、TM=4小时的情况下,θn+1如式(6)所示。对于输入向量Xn+1(Tk-9)~Xn+1(Tk),与之对应的输出向量尚为到来,而这些未知的输出向量正是支持向量机将要预报的。显然,第一组输入输出向量对是在发酵时间达(TD+TP)小时后取得的,且随着发酵的进行,新形成的输入输出向量对越来越多,亦即反映待预报罐批个性特征的训练样本越来越多。
θn+1={Xn+1(T1),Yn+1(T1);Xn+1(T2),Yn+1(T2);…;Xn+1(Tk-10),Yn+1(Tk-10)} (6)静态训练数据库θ1~n和待预报罐批的已知输入输出向量对的集θn+1共同组成支持向量机的动态训练数据库{θ1~nθn+1},它既考虑到了共性规律(θ1~n)、又兼顾了个性特征(θn+1)。
2.支持向量机训练支持向量机非线性回归的基本思想是将原始的非线性数据映射高维空间,然后在高维空间进行线性回归。在本发明中,即是基于动态训练数据库{θ1~nθn+1}和标准支持向量机回归算法,获得式(7)描述的非线性最优回归函数,该函数复现了训练向量的输入输出关系。式(7)中,Y为函数的输出,X为函数的输入,Xi(Tk)为训练数据库中的任一输入向量,αi,k为对应该输入向量的系数,K(Xi(Tk),X)为核函数,b为常数项。核函数需预先选定,本发明采用的核函数为K(Xi(Tk),X)=(Xi(Tk)TX+1)3。待定系数αi,k和常数项b可由支持向量机的标准算法容易解得。对应αi,k≠0的训练向量即为支持向量,在整个训练数据库中,它所占的比例跟系统的复杂程度有关。
Y=Σi=1nΣk=1Niαi,kK(Xi(Tk),X)+b---(7)]]>3.状态变量预报支持向量机训练完毕后,即可将待预报罐批的最新输入向量Xn+1(Tk)(与之相对应的输出向量Yn+1(Tk)尚未到来)代入非线性最优回归函数,获得一个对应的输出,该输出即为产量的超前TP小时的预报值。在获得下一组采样分析值以后,重复执行1(3)和2描述的过程,此即滚动学习-预报。显然,第一组预报仅在发酵时间Tf,n+1>TD后才能进行,因为此时方可获得第一组输入向量Xn+1(T1)。
4.训练数据库离线更新当一个处于运行状态的罐批发酵结束时,要离线更新历史罐批数据。具体做法为(a)若该停罐罐批为极端异常罐批和故障罐批,不更新历史罐批数据;(b)在发酵中后期,若该停罐罐批的产量曲线与已划定的置信域内某一较早的历史罐批相似,则用该罐批取代较早的罐批;(c)在发酵中后期,若该停罐罐批的产量曲线在已划定的置信域内不与任何历史罐批相似,则直接将该罐批增补为历史罐批。置信域是指由不同置信限形成的相邻两根包络线围成的区域,一般5~15个,图3给出某抗生素厂青霉素产量的置信域划分示意图。图中划出了产量平均值曲线和3对置信限(40%、80%和95%置信限),共组成6个置信域,历史罐批数据的更新即是通过新停罐罐批和这些置信域内历史罐批的比较来进行的。当新的罐批数据累积较多时,旧的置信限已经不能准确反映青霉素产量的统计规律,需重新计算置信限并重新划定置信域。
实施结果测试对象青霉素发酵中产量超前40小时预报,并以某厂青霉素发酵车间59个罐批为例进行测试。罐批数据包括初始装料体积、初始葡萄糖浓度和初始前体PAA(苯乙酸)浓度、发酵液体积、中间出料体积,发酵罐中青霉素浓度、葡萄糖浓度和PAA浓度,以及葡萄糖、硫铵、氨水、PAA的流加速率和浓度等。
测试方法拟在线测试。任选10个正常罐批作为待测罐批,再按发明说明中1(2)描述的原则,从余下罐批中挑选30个罐批作为历史罐批数据。模拟车间实际运行情况,将10个待测罐批依次投入运行,进行产量超前40小时预报。
测试步骤1)设定离散化步长τ为8小时,窗口等分数m为5,输入数据窗口宽度和输出数据窗口(预报窗口)宽度均为40小时。选取青霉素产量、碳源消耗量、前体消耗量和当前采样时间Tk为输入变量,应用发明说明中1(1)描述的移动数据窗口技术,生成指定格式的输入输出向量对。
2)设定支持向量机核函数为K(X1(Tk),X)=X1(Tk)TX+1)3,分类精度为0.001。
3)执行发明说明中1(2)、1(3)、2和3描述的过程,建立动态训练数据库,完成支持向量机训练,获得产量的超前40小时预报值。
4)当一个待预报罐批运行结束后,依据发明说明中4所述原则,离线更新历史罐批数据。
测试结果定义e和e分别为罐批的相对预报误差和平均相对预报误差,见式(8)-(9)。
e=PSVM(Tk+TP)-PM(Tk+TP)PM(Tk+TP)---(8)]]>
e‾=Σi=1me2m---(9)]]>式(8)-(9)中,PM(Tk+TP)为发酵时间(Tk+TP)时的产量实测值,PSVM(Tk+TP)为对应的支持向量机预报值。
表1给出了对10个处于正常波动范围内的罐批的产量预报结果。从中可见,支持向量机回归预报技术有着较高的预报精度,平均相对预报误差在4%以内。采用主频为1.4G的PC机预报一次耗机时10~20秒。
表1产量预报误差(%)和预报计算时间(秒)

权利要求
1.一种基于支持向量机的生物发酵过程关键状态变量软预报方法,其特征在于,具体步骤如下1)动态训练数据库建立,将相同工艺下若干历史罐批数据,处理成指定格式的输入输出向量对,生成静态训练数据库;对待预报罐批,获取截至当前发酵时间为止的所有输入输出向量对,这些向量对和静态训练数据库合并生成支持向量机的动态训练数据库;2)支持向量机训练,利用动态训练数据库,对支持向量机预报器进行训练,求出支持向量和非线性最优回归函数;3)状态变量预报,利用已训练好的支持向量机,根据当前待预报罐批的最新输入向量,获得状态变量的预报值;4)智能数据库技术的采用,也即训练数据库的在线更新和离线更新,在线更新指随着每一轮预报结束后,当前待预报罐批新生成的输入输出数据向量对被充实到动态训练数据库中;离线更新指每当一个罐批发酵结束后,离线更新历史罐批数据。
2.根据权利要求1所述的基于支持向量机的生物发酵过程关键状态变量软预报方法,其特征是,所述的步骤4),具体做法为(a)若该停罐罐批为极端异常罐批和故障罐批,不更新历史罐批数据;(b)在发酵中后期,若该停罐罐批的产量曲线与已划定的置信域内某一较早的历史罐批相似,则用该罐批取代较早的罐批;(c)在发酵中后期,若该停罐罐批的产量曲线在已划定的置信域内不与任何历史罐批相似,则直接将该罐批增补为历史罐批。
全文摘要
一种生物发酵过程关键状态变量的软预报方法属于生物技术和信息科学交叉领域。本发明综合利用支持向量机回归技术的优势,提出了一种发酵过程关键状态变量的软预报方法。该方法首先利用历史罐批数据和当前待预报罐批的已知数据,建立支持向量机动态训练数据库;利用该训练数据库对支持向量机进行训练,求出支持向量和非线性最优回归函数;然后根据待预报罐批的最新输入向量,实现状态变量的超前预报;另外,每次训练前需对训练数据库作在线更新,获得新的动态训练数据库,而每当一个完整的罐批结束需对训练数据库作离线更新,重新获得静态训练数据库。本发明实现了生物发酵过程关键状态变量高精度宽区间的预报,对提高生产过程的监控水平有重要意义。
文档编号C12P1/00GK1687428SQ20051002458
公开日2005年10月26日 申请日期2005年3月24日 优先权日2005年3月24日
发明者袁景淇, 李运锋 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1