遗传算法工具箱_含约束条件的遗传算法在连续催化重整优化操作中的应用

article/2025/10/23 10:14:55
43a1d1a9bf53f148d900b2c3317a7dc9.gif

遗传算法(Genetic a lgo rithm s, GA ) 是由Hol-land 教授及其学生首先提出的一种仿照生物学中进化论思想而衍生出的优化算法。遗传算法应用于优化问题的求解, 是一个启发式随机搜索的过程, 与传统的优化搜索算法相比具有可以克服局部最优解的陷阱, 搜索得到全局最优解等特点, 适用于大规模复杂问题的优化。 

但是在实际生产过程中, 优化目标函数往往必须在一定的约束条件下进行。目前解决遗传算法中约束问题的方法主要有可行方向法, 惩罚函数法, 二 次规划法等。今天我们通过惩罚函数法解决连续催化重整(CCR )优化操作中的约束问题, 然后将遗传算法应用于该过程中, 实现遗传算法对含约束条件 的CCR 操作的优化。

带约束条件问题的优化算法 

对于一般的带约束条件问题的优化目标函数, 可以通过惩罚函数, 即通过给原来的目标函数加一 项由约束函数所构成的惩罚项来生成新的目标函 数, 将含有约束的问题转化为不含约束的问题来解决。

01

外点法

对于一般的约束问题

499e5854e45ad7297cb3f01b96c71c0f.png

可以定义如下辅助函数:

dfa8fa2530b02e5919e02e6f94f94323.png

其中, Α, Β≥1 均为常数。这样把约束问题转化为无约束问题:

52f3ee98ec32f4fe9b69d1a7b9b1d5bd.png

外点法在迭代过程中产生的近似最优解只是近似地满足约束条件, 对于一些要求严格的问题, 得到的效果不是很好, 甚至会出现不适用的情况。

02

内点法

内点法是在可行域的内部迭代求解约束问题, 这类方法不适用于带有等式约束的问题。对于一般问题:

e2e31b662cfeb8f0e515d7a6ae3f0f42.png

可行域记为:

34c9df8c4d72c419ab0e6ddcf9d092d9.png

保证迭代点在可行域内部的情况下, 可定义辅助函数:

8d531025453ab10d00686efdd4ee447e.png

把约束问题转化为无约束问题。B (x )在实际中常采 用倒数罚函数

dad30d77c27a4f019b2c96c1e3d3ee19.png

和对数罚函数

01ddde3dc7a135e56104019e5fdec6e8.png

对数罚函数比倒数罚函数收敛得快些。 

在遗传算法的优化过程中, 可以采用以上方法先将带有约束的优化问题转化为无约束问题, 再调用遗传算法工具箱进行优化。

带约束条件的遗传算法在连续催化重整优化中的应用

某石油化工公司炼油厂建设的60万吨年连续催化重整装置采用UOP技术, 以低辛烷值石脑油为原料, 通过原料预处理, 重整反应, 催化剂连续再 生和重整油分馏 4 个工序, 生成富含芳烃的高辛烷值汽油。连续重整反应器生产控制的主要目的是在保证重整产品辛烷值、催化剂结焦含量合格的前提下, 提高重整产品 C+5 液收率。

根据工艺分析, 影响重整产品辛烷值、催化剂结焦含量、重整产品 C+5 液收率的因素众多, 如反应器进出口温度、加权平均床层温度、反应压力、空速、氢油比等, 而生产上只是将反应器进口温度作为操作变量进行优化操作, 在满足辛烷值要求和催化剂结焦含量的标准下得到最大的产品液收率。通过软测量方法可以获得重整产品辛烷值、催化剂结焦含量、重整产品C+5 液收率的模型, 在此基础上可以调整 反应器进口温度, 实现优化操作。连续重整优化问题数学表达如下

afb8a9e87d3cdf53e3f686a8d229cc57.png

式中 y 为收率; 

X1 为进料流量, 是上道工序的负荷参数; 

X 2为出料流量; 

X3 为干点; 

X4 为芳烃潜含 量; 

X5 为氢油比; 

X6 为 50%馏程; 

ti 为反应器进料温度(4 个叠加反应器的进料温度控制在相同数值, 故 仅考虑第一反应器进料温度) ; 

t01、t02、t03、t04分别为 第一、二、三、四反应器出口温度, tB 为加权平均床层温度; 

通过 4 个反应器进料温度和出口温度求出;R 为辛烷值, 要求94≤R ≤100; 

C 为催化剂结焦含量, 且要求 1≤C≤6。在优化计算时, 考虑通过改变反应 器加权平均床层温度提高收率, 要求 450≤tB≤480。

01

外点法遗传算法 

建立如下辅助函数:

2a84da15534befe406d20258cf4e5674.png

将带约束的优化问题转化为不含约束的优化问题, 其中w 1、w 2 是惩罚因子, 取w1= 0.1, w2= 0.2, 然后调用遗传算法工具箱, 对必要的参数进行设置:

[ tB endPop ]= ga (bounds, ′fun′, [ ], in itPop , 

[1e- 611], ′maxGenTe rm ′, 25, ⋯ ′norm Geom Selec t′, [0.08], [′ar ithX2 over′], [20], ′nonunifM u tation′, [ 2 253]) ;

寻优后的曲线如图 1 所示, 得到最优控制点:

tB = - 0. 7582 

y = 96.5138

fb1d159b27f3b92f6314fd19f8b30793.png

其中 tB 为经过归一化后的反应器加权平均床层温度值, 对它反归一化后可得反应器加权平均床层温度为 453. 6 °C。此时可获得重整产品 C+5 最大液收率为 96. 51 38 。

图 1中的曲线是初始函数的图像, “十字”图标是初始种群,“空心圆”图标是经过一次 GA 迭代运算后得到的新种群,“方框”图标是最终获得的种群, 即最优解。

02

内点法遗传算法 

建立辅助函数:

82567e74fc3ece478485c49d984d3be2.png

将约束问题转化为不含约束的问题, 其中 n1, n2 为惩罚因子, 取 n1= 0.2, n2= 0.1。然后调用遗传算法工具箱。寻优后的曲线如图 2 所示, 最优控制点:

tB = - 0. 8786, 

y = 96. 4348

97aa7591b6278e5a582c3979e8418d92.png

对 tB 反归一化后可得反应器加权平均床层温度为451. 8 °C, 即当反应器加权平均床层温度为451. 8 °C 时 获 得重整产品 C+5 最 大 液 收 率 为 96. 4348。

内点法和外点法的比较 

采用内点法和外点法解决带约束问题的遗传算 法时的迭代次数如表 1

7c97bf1147d03a0bee940f49cb389fcd.png 445d05b6209232422c954f135724f0eb.png

可以看出使用内点法与外点法解决模型的遗传算法约束问题所经历的迭代次数相差不大。但结合图1和图2 及表2可以看出, 使用内点法改进的遗传算法最终种群(Endpop )可以很精确地重合在一点, 即最优解。

使用外点法改进的遗传算法最终种群的个别个体存在着一定的偏差, 这主要是因为外点法是一种近似求解的方法。同时也说明使用内点法解决不含等式约束的遗传算法问题时具有更好的寻优性能。同时在尝试惩罚因子的过程中, 有时也会碰到外点法不适合解决该实际问题的情形, 即寻找的最优点实际上是次优点或者偏离真实最优点的情况, 当然对于本问题可以通过改变惩罚因子, 迭代次数等参数消除这种弊端。所以对于不含等式约束的问题, 运用内点法是一种很好的 解决方法。但是, 在存在等式约束的情况时, 还是要借助于外点法或者其他方法。

从表 1 还可以看出, 对于本问题采用带约束条件的遗传算法经过 20 次迭代后可以稳定地达到最优值, 对于大规模复杂问题具有很好的应用前景。

国赛 · 最新

重庆赛区成绩公示

广西赛区成绩公示

2020年高教社杯国赛赛题评阅要点

•  END  •

模友们可能已经发现:现在公众号推送文章的顺序,已经不会按时间排列了。这种变化,可能会让各位模友错过我们每天的推送。

所以,如果你还想像往常一样,聚焦数模乐园,就需要将“数模乐园”标为星标公众号,同时在阅读完文章后,别忘了给一个“在看”哦。

星标步骤

(1)点击页面最上方“数模乐园”,进入公众号主页

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

92153619691f5a1197d35a4a0925b549.gif f9e60ff79725d1ffc768429e3a9e9f38.png

扫码关注我们

9bd34af31d06814e61007415c753c9b7.png

2020国际赛QQ参赛群

739057dbae147c0a3a9c2398acca01eb.png f03657cd7b8f5d5f83fb70246caf0bce.gif

球分享

f03657cd7b8f5d5f83fb70246caf0bce.gif

球点赞

f03657cd7b8f5d5f83fb70246caf0bce.gif

球在看


http://chatgpt.dhexx.cn/article/Foxa9CIs.shtml

相关文章

北卡罗来纳大学遗传算法工具箱

目录 北卡罗来纳大学遗传算法工具箱 gaot 重要函数如下 1.initializega函数介绍 2.ga函数介绍 3.initializega求解一元函数 注:本文的代码可用于matlab 2012a版本 北卡罗来纳大学遗传算法工具箱 gaot 重要函数如下 optimtool(matlab内部封装函数&a…

Matlab遗传算法工具箱求函数最小值

题目 先上代码 %%%%%%%%%%%%%%% %% test.m %% %% Feng1909 %% %%%%%%%%%%%%%%% function result test(a)is_max 0;x a(1);y a(2);PI 3.141592653;if is_max 0result -(sin(3*PI*x)*cos(4*PI*y)cos(5*PI*x*sin(2*PI*y)))*(1);endif is_max 1result (sin(3*PI*x)*c…

简单使用MATLAB自带的遗传算法工具箱

一、使用单变量进行参数寻优 如s = -2x ,当x在[0,1]范围内,取多少时s为最小值? 使用步骤如下: 1、建立一个function函数,命名为fu.m 2、在MATLAB命令窗口输入optimtool,接下来进行选择,选择完后,点击start。 x = 1时,s取-2(最小值) 寻优曲线图如下: 二、使用双变…

谢菲尔德遗传算法工具箱

谢菲尔德遗传算法工具箱的使用 安装工具箱下载工具箱添加路径标题 遗传算法函数ranking()函数select()函数bs2rv()函数小结 安装工具箱 谢菲尔德遗传算法工具箱作为matlab的一个函数库,可以简单实现遗传算法。我一开始学习了粒子群优化算法和鲸鱼优化算法等群智能优…

Matlab遗传算法工具箱的使用

Matlab遗传算法工具箱的使用 遗传算法(Genetic Algorithm,GA)是J.Holland教授1975年在其专著中首次发表,又经Goldberg、DeJong等研究总结形成的一种模拟进化算法,其基于生物进化和物种选择理论模拟自然界基因进化的过程…

Matlab遗传算法工具箱及应用

目录 第一章:遗传算法概述 1.1遗传算法概念; 1.2遗传算法与爬山法的比较; 1.3遗传算法的基本原理与方法; 第二章:遗传算法应用举例 2.1简单一元函数优化实例; 参考资料:Matlab遗传算法工…

谢菲尔德大学的MATLAB遗传算法工具箱(附代码文件)

从今天起我想记录下我的学习历程,将成果总结起来,方便日后复习 关于MATLAB遗传算法的工具箱文件放在文章末尾需要的自取 首先,我先来简单说明下如何将工具箱添加到matlab中去 将工具箱文件夹复制到本地计算机中的工具箱目录下,路…

MATLAB自带的遗传算法工具箱(GADS)

目前,遗传算法工具箱主要有三个: 英国谢菲尔德大学的遗传算法工具箱美国北卡罗来纳州立大学的遗传算法最优化工具箱MATLAB自带的遗传算法与直接搜索工具箱(GADS) GADS介绍 本文介绍的是MATLAB自带的遗传算法与直接搜索工具箱&a…

优化算法之遗传算法--入门--工具箱的使用

遗传算法的优点 遗传算法是一种基于生物自然选择与遗传机理的随机搜索与优化方法。遗传算法求解复杂优化问题的巨大潜力及其在工业工程领域的成功应用 ,而受到了广泛关注。Matlab 的遗传算法工具箱具有使用简单方便 ,计算可靠 ,快捷高效和图形结果可视化等特点 ,具有广阔的应用…

matlab遗传算法工具箱

以下内容大部分来源于《MATLAB智能算法30个案例分析》,仅为学习交流所用。 1理论基础 1.1遗传算法概述 遗传算法(genetic algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法是把问题参数编码为染色体,再利用迭代…

遗传算法与Matlab GA工具箱

1 遗传算法(Genetic Algorithm) 1.1简介 GA是一种进化算法,基本原理效仿生物界“物竞天择,适者生存”的演化法则。 一些基本概念 种群population:问题潜在的解集 个体individual:每一个可能的解&#xff0c…

matlab遗传算法工具箱介绍和详细使用方法【matlab优化算法工具箱】

遗传算法概述 工具箱下载地址 遗传算法( genetic algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法是把问题参数编码为染色体,再利用迭代的方式进行选择、交叉以及变异等运算…

心电信号去除基线漂移的贝塞尔高通滤波器设计

时常仰望星空,做到脚踏实地! matlab提供了用于设计贝塞尔滤波器的函数:besself。 调用时,[b,a] besself(n,Wn,ftype)用于设计高通和带阻滤波器,默认[b,a] besself(n,Wn)是设计贝塞尔低通滤波器。 截止…

图像频域增强:高通滤波器

频域高通滤波 高通滤波器的功能是削弱或消除低频分量而保留高频分量。 理想高通滤波器 理想低通滤波器&#xff0c;模拟上容易实现&#xff0c;物理上无法实现。 转移函数定义&#xff1a; H ( u , v ) { 0 &#xff0c; D ( u , v ) < D 0 1 &#xff0c; D ( u , v…

FIR 滤波器设计

目录 线性相位滤波器 与无限持续时间脉冲响应 (IIR) 滤波器相比&#xff0c;具有有限持续时间脉冲响应的数字滤波器&#xff08;全零或 FIR 滤波器&#xff09;既有优点又有缺点。 FIR 滤波器具有以下主要优点&#xff1a; 它们可以具有精确的线性相位它们始终稳定设计方法通…

设计巴特沃斯滤波器实现高通滤波

首先在MATLAB上通过设计一个巴特沃斯滤波器来实现一个高通滤波器。 %设计一个巴特沃斯高通滤波器 %滤除一个300HZ的正弦信号 clear; fn 10000;%采样频率 fp 900;%通带截止频率 fs 600;%阻带截止频率 Rp 2;%通带最大衰减 Rs 20;%阻带最小衰减 figure(1); Wp fp/(fn/2); W…

【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器

【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4. 频率域高通滤波器 图像边缘化其它灰度的急剧变化与高频分量有关&#xff0c;因此可以…

四阶巴特沃斯高通滤波器

一、设计方案 1.理论参考 图1.1-1 巴特沃斯高通滤波器归一化幅频响应 图1.1-2 巴特沃斯低通、高通电路阶数n与增益的关系 图1.1-3 二阶高通滤波电路及其传递函数 2.电路设计 综合滤波器滤波效果及电路实现难度&#xff0c;采用四阶高通滤波器 图1.2-1 四阶高通滤波电路 查表得到…

matlab设计模拟高通滤波器

简单记录下在matlab上如何设计出模拟的高通滤波器&#xff0c;包括&#xff1a;巴特沃斯滤波器、切比雪夫I型滤波器、切比雪夫II型滤波器、椭圆型滤波器。 %设计高通滤波器 %巴特沃斯、切比雪夫I型、切比雪夫II型、椭圆型滤波器clear all;%wp和ws分别是通带和阻带的频率(截止频…

IIR滤波器设计

matlab代码在最后&#xff0c;仅供参考。 高通滤波器设计 HP:fp400Hz&#xff0c;fs300Hz&#xff0c;Fs1000Hz&#xff0c;αp3dB&#xff0c;αs35dB。 巴特沃斯高通滤波器设计 切比雪夫高通滤波器设计 带通滤波器设计 BP:fsl200Hz&#xff0c;f1300Hz&#xff0c;fsh500H…