一种变种群规模DNA遗传算法的催化裂化主分馏塔建模方法技术领域
本发明涉及一种变种群规模DNA遗传算法的催化裂化主分馏塔建模方
法。
背景技术
催化裂化过程是将重质原料转化为轻质产品的生产过程,是炼油工业中重
要的一个二次加工过程,其效率的高低直接影响着炼油厂的经济效益。该过程
使用的催化裂化分馏塔是实现二次加工中产品分离的关键单元,建立催化裂化
分馏塔的精确模型对于降低催化裂化装置的能耗,提高产品收率和经济效益具
有重要的意义。
传统的机理建模方法需要凭借先验知识来建立过程的微分方程组模型。由
于催化裂化分馏塔是一个具有延迟和耦合的非线性系统,传统的机理建模方法
很难对其进行有效的建模。近年来,随着智能控制理论研究的发展,神经网络、
遗传算法等被应用于系统辨识中,为催化裂化分馏塔的模型建立开辟了一条崭
新的途径。其中,神经网络因其具有逼近任意非线性函数的能力,是具有潜力
的化工过程建模新方法。但神经网络本身存在一些缺陷,如网络存在过学习、
局部极小、收敛速度慢等问题。
支持向量机的出现,以其良好的理论背景,打破了经验风险最小化原则的
局限思维,从结构风险最小化原理出发为复杂过程建模提供了一条新的途径。
本发明提出一种变种群规模DNA遗传算法的支持向量机方法,用于催化裂化
主分馏塔的建模。其中变种群规模DNA遗传算法用于优化支持向量机参数,
得到支持向量机的最优参数,支持向量机用于逼近过程的非线性特性。本发明
具有良好的建模精度,可克服传统机理建模方法存在的局限性。
发明内容
本发明的目的是针对现有技术的不足,提出一种变种群规模DNA遗传算
法的催化裂化主分馏塔建模方法。
变种群规模DNA遗传算法的催化裂化主分馏塔建模方法的步骤如下:
1)通过现场操作或实验采样获得催化裂化主分馏塔的输入输出数据作为建
模数据,输入数据包括顶循流量Q1、一中流量Q2和二中流量Q3,输出数据包括
塔顶温度t1、粗汽油干点t2和轻柴油倾点t3;
2)设定变种群规模DNA遗传算法运行的参数:最大进化代数Gmax,初始
种群规模N,置换交叉概率pc1,转位交叉概率pc2,普通变异概率pm以及菌群
耐药性启发的变异操作概率pms,支持向量机参数(C,σ,ε)的取值范围和
编码长度l,其中C为支持向量机的惩罚系数,σ为RBF核参数,ε为不敏感
函数宽度;
3)设定变种群规模DNA遗传算法的终止准则为:变种群规模DNA遗传
算法运行代数达到最大进化代数Gmax;
4)使用建模数据训练支持向量机,将建模数据随机分为数量相等的A和B
两部分,使用A部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Ma,再用B部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Mb,将均方差M=Ma+Mb作为变种群规模DNA遗传算法的目标函数,运
行变种群规模DNA遗传算法,最小化目标函数,优化支持向量机参数(C,σ,
ε);
5)变种群规模DNA遗传算法运行到最大代数,对最优解进行解码,得到
支持向量机的最优参数,将该最优参数代入并用建模训练支持向量机,获得催
化裂化主分馏塔的非参数模型。
所述步骤4)为:
(1)随机生成包含N个长度为L的DNA序列的初始种群,每一个DNA
序列代表支持向量机的一组参数(C,σ,ε)的可能解,每个参数均由字符
集{0,1,2,3}编码为一个长度为l的DNA子序列,支持向量机参数个数为3,因
此一个DNA序列的编码长度为L=3×l,设置种群最优解连续无更新代数
β=0;
(2)将种群中的DNA序列解码为支持向量机参数,将该参数代入支持向
量机,并且用建模数据训练支持向量机,以均方差M作为目标函数;
(3)计算种群中每个个体的适应度值,并按照适应度值的大小对种群进行
划分,适应度值大的N/2个体组成优势群体,适应度值小的N/2个体构成劣
势群体,设Ncnew为经交叉操作产生的新个体数目,其初始值为0;
(4)对种群中个体执行交叉操作直至Ncnew>0.5N;
(5)对种群中个体执行受菌群耐药性启发的变异操作和普通操变异操作;
(6)对种群中个体执行选择操作,同时将当代最优个体与上代最优个体进
行比较,如果两者相同,β=β+1,否则β=0;
(7)根据β的值判断是否增加种群规模;
(8)如果满足终止准则,则算法结束,否则继续执行步骤(2)至步骤(7)
直至满足终止准则。
所述的步骤(4)为:
a)随机产生一个0至1之间的数,若该随机数小于置换交叉概率pc1,则执
行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
b)随机产生一个0至1之间的数,若该随机数小于置换交叉概率pc2,则执
行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
c)重复执行步骤a)和步骤b)直至Ncnew>0.5N。
4、根据权利要求2所述的一种变种群规模DNA遗传算法的催化裂化主分
馏塔建模方法,其特征在于所述的步骤(5)为:
a)执行普通变异操作,该操作的操作概率为pm;
b)执行受菌群耐药性启发的变异操作,将个体中出现频率最小的碱基用最
优个体中出现频率最高的碱基代替,该操作的概率为pms,其中pms依据进化代
数g改变:
p ms = 0.2 1 + exp ( 20 ( g - 0.5 G max ) / G max ) . ]]>
所述的步骤(7)为:
a)根据β确定种群数目的增量ΔN,
ΔN=[β/Gn],
其中[·]为取整函数,Gn为当前的进化代数;
b)更新种群数目:
N=N+ΔN。
本发明将变种群规模DNA遗传算法与支持向量机相结合,同时引入一种
受菌群耐药性启发的变异算子,用于催化裂化主分馏塔的非参数建模,有效的
提高了支持向量机建模的精度。
附图说明
图1为变种群规模DNA遗传算法的支持向量机催化裂化主分馏塔建模流
程图;
图2为受菌群耐药性启发的变异操作示意图;
图3为催化裂化主分馏塔系统流程图;
图4为CV1与MV1和MV2之间的真实输出与模型输出对比图;
图5为CV2与MV2和MV3之间的真实输出与模型输出对比图;
图6为CV3与MV3之间的真实输出与模型输出对比图。
具体实施方式
变种群规模DNA遗传算法的催化裂化主分馏塔建模方法步骤如下:
1)通过现场操作或实验采样获得催化裂化主分馏塔的输入输出数据作为建
模数据,输入数据包括顶循流量Q1、一中流量Q2和二中流量Q3,输出数据包括
塔顶温度t1、粗汽油干点t2和轻柴油倾点t3;
2)设定变种群规模DNA遗传算法运行的参数:最大进化代数Gmax,初始
种群规模N,置换交叉概率pc1,转位交叉概率pc2,普通变异概率pm以及菌
群耐药性启发的变异操作概率pms,支持向量机参数(C,σ,ε)的取值范围
和编码长度l,其中C为支持向量机的惩罚系数,σ为RBF核参数,ε为不敏
感函数宽度;
3)设定变种群规模DNA遗传算法的终止准则为:变种群规模DNA遗传
算法运行代数达到最大进化代数Gmax;
4)使用建模数据训练支持向量机,将建模数据随机分为数量相等的A和B
两部分,使用A部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Ma,再用B部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Mb,将均方差M=Ma+Mb作为变种群规模DNA遗传算法的目标函数,运
行变种群规模DNA遗传算法,最小化目标函数,优化支持向量机参数(C,σ,
ε);
5)变种群规模DNA遗传算法运行到最大代数,对最优解进行解码,得到
支持向量机的最优参数,将该最优参数代入并用建模训练支持向量机,获得催
化裂化主分馏塔的非参数模型。
所述步骤4)为:
(1)随机生成包含N个长度为L的DNA序列的初始种群,每一个DNA
序列代表支持向量机的一组参数(C,σ,ε)的可能解,每个参数均由字符
集{0,1,2,3}编码为一个长度为l的DNA子序列,支持向量机参数个数为3,因
此一个DNA序列的编码长度为L=3×l,设置种群最优解连续无更新代数
β=0;
(2)将种群中的DNA序列解码为支持向量机参数,将该参数代入支持向
量机,并且用建模数据训练支持向量机,以均方差M作为目标函数;
(3)计算种群中每个个体的适应度值,并按照适应度值的大小对种群进行
划分,适应度值大的N/2个体组成优势群体,适应度值小的N/2个体构成劣
势群体,设Ncnew为经交叉操作产生的新个体数目,其初始值为0;
(4)对种群中个体执行交叉操作直至Ncnew>0.5N;
(5)对种群中个体执行受菌群耐药性启发的变异操作和普通操变异操作;
(6)对种群中个体执行选择操作,同时将当代最优个体与上代最优个体进
行比较,如果两者相同,β=β+1,否则β=0;
(7)根据β的值判断是否增加种群规模;
(8)如果满足终止准则,则算法结束,否则继续执行步骤(2)至步骤(7)
直至满足终止准则。
所述的步骤(4)为:
a)随机产生一个0至1之间的数,若该随机数小于置换交叉概率pc1,则执
行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
b)随机产生一个0至1之间的数,若该随机数小于置换交叉概率pc2,则执
行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
c)重复执行步骤a)和步骤b)直至Ncnew>0.5N。
所述的步骤(5)为:
a)执行普通变异操作,该操作的操作概率为pm;
b)执行受菌群耐药性启发的变异操作,将个体中出现频率最小的碱基用最
优个体中出现频率最高的碱基代替,该操作的概率为pms,其中pms依据进化代
数g改变:
p ms = 0.2 1 + exp ( 20 ( g - 0.5 G max ) / G max ) . ]]>
所述的步骤(7)为:
a)根据β确定种群数目的增量ΔN,
ΔN=[β/Gn],
其中[·]为取整函数,Gn为当前的进化代数;
b)更新种群数目:
N=N+ΔN。
以下通过一个具体的实施例对本发明做进一步的详细描述:
实施例
作为炼油工业中重要的二次加工工艺,催化裂化过程可将重质原料转化为
轻质产品,对炼油厂的经济效益有显著影响。其中,催化裂化主分馏塔是实现
产品分离的重要单元,催化裂化主分馏塔精确建模和操作优化是降低催化裂化
装置能耗、提高经济效益的有效措施之一。
催化裂化主分馏塔系统流程图如图4所示,根据工艺流程分析,顶循环
MV1、一中流量MV2和二中流量MV3为操作变量;塔顶温度CV1、粗汽油
干点CV2和轻柴油倾点CV3为被控变量。根据获得的输入输出数据由,需要
建立CV1与MV1和MV2之间的模型、CV2与MV2和MV3之间的模型、CV3
与MV3之间的模型。输入输出数据
1)通过采样获得100组输入输出数据作为建模数据(见100组采样数据来
源于:钟璇,张泉灵,王树青.催化裂化主分馏塔产品质量的广义预测控制策略
[J].控制理论与应用,2001,18(z1):134-140.中的主分馏塔模型所产生);
2)设定变种群规模DNA遗传算法运行的参数:最大进化代数Gmax=1000,
支持向量机中的每个参数的取值范围,其中C的取值范围为(10-3,1000),σ的取
值范围为(10-3,1000),ε的取值范围为(10-3,10),每个参数的编码长度l=20,初
始种群数N=4,置换交叉执行概率pc1=0.8,转位交叉执行概率pc2=0.5,以
及普通变异执行概率pm=0.06;
3)设定变种群规模DNA遗传算法的终止准则:变种群规模DNA遗传算
法运行代数达到最大进化代数Gmax;
4)使用建模数据训练支持向量机,将建模数据随机分为数量相等的A和B
两部分,使用A部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Ma,再用B部分数据训练支持向量机,B部分数据作为测试样本得到均方
差Mb,将均方差M=Ma+Mb作为变种群规模DNA遗传算法的目标函数,运
行变种群规模DNA遗传算法,最小化目标函数,优化支持向量机参数C,σ,
ε,其中C为支持向量机的惩罚系数,σ为RBF核参数,ε为不敏感函数宽度;
5)变种群规模DNA遗传算法运行到最大代数,对最优解进行解码,得到
支持向量机的最优参数,将该最优参数代入并用建模训练支持向量机,获得催
化裂化主分馏塔的非参数模型。
所述步骤4)为:
(1)随机生成包含N个长度为L=60的DNA序列的初始种群,每一个DNA
序列代表支持向量机的一组参数C,σ,ε的可能解,每个参数均由字符集
{0,1,2,3}编码为一个长度为l的DNA子序列,设置种群最优解连续无更新的代
数β=0;
(2)将种群中的DNA序列解码为支持向量机参数,将该参数代入支持向
量机,并且用建模数据训练支持向量机,通过交叉验证来获得均方差,以均方
差作为目标函数;
(3)计算种群中每个个体的适应度值,并按照适应度值的大小对种群进行
划分,适应度值大的N/2个体组成优势群体,适应度值小的N/2个体构成劣
势群体,设Ncnew为经交叉操作产生的新个体数目,初始化为0;
(4)对种群中个体执行交叉操作直至Ncnew>0.5N;
(5)对种群中个体执行受菌群耐药性启发的变异操作和普通操变异操作;
(6)对种群中个体执行选择操作,同时将最优个体与上代最优个体进行比
较,如果两者相同,β=β+1,否则β=0;;
(7)根据β的值增加种群规模;
(8)如果满足终止准则,则算法结束,否则继续执行步骤(2)至步骤(7)
直至结束。
所述的步骤(4)为:
a)随机产生一个0至1之间的小数,若该随机数小于置换交叉执行概率pc1,
则执行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
b)随机产生一个0至1之间的小数,若该随机数小于置换交叉执行概率pc2,
则执行置换交叉操作,生产两个新个体Ncnew=Ncnew+2;
c)重复执行步骤a)和步骤b)直至Ncnew>0.5N。
4、根据权利要求2所述的一种变种群规模DNA遗传算法的催化裂化主分
馏塔建模方法,其特征在于所述的步骤(4)为:
a)执行普通变异操作,该操作的操作概率为pm,
b)执行受菌群耐药性启发的变异操作,将个体中出现频率最小的碱基用最
优个体中出现频率最高的碱基代替,该操作的执行概率为pms,其中pms依据进
化代数g改变:
p ms = 0.2 1 + exp ( 20 ( g - 0.5 G max ) / G max ) . ]]>
所述的步骤(7)为:
a)根据β确定种群数目的增量ΔN,其中[·]为取整函数,Gn为当前的进化
代数:
ΔN=[β/Gn];
b)更新种群数目:
N=N+ΔN;
运行该方法,可以得到CV1与MV1和MV2之间的模型、CV2与MV2和
MV3之间的模型、CV3与MV3之间的模型。真实曲线和模型产生的曲线的对
比图见图6、7、8,从图中的对比可以看出,基于变种群DNA遗传算法的支
持向量机所获得的模型能准确的反映实际系统特性。