2. 辽宁省制造系统与物流优化重点实验室,沈阳 110004;
3. 辽宁省智能工业数据解析与优化工程实验室,沈阳 110004
2. Liaoning Key Lab of Manufacturing Systems and Logistics, Shenyang 110004, China;
3. Liaoning Engineering Laboratory of Operations Analytics and Optimization for Smart Industry, Shenyang 110004, China
生产过程操作优化在流程工业自动化系统中位于生产调度层与过程控制层之间, 主要是根据企业当前的生产条件与生产调度层制定的生产计划, 通过算法求解最优的操作条件, 为过程控制层提供设定值.许多学者对流程工业各领域中的操作优化问题进行了研究[1-3].
连续退火生产过程[4]是钢铁企业冷轧厂的重要环节, 其功能为按照设定的退火工艺曲线依次经过预热炉、加热炉、均热炉、缓冷炉、快冷炉、过时效炉、终冷炉等对热轧厂出品的带钢进行热处理, 从而提高带钢的性能.但其生产过程包含很多复杂的阶段, 并且各阶段包含众多相互耦合的操作变量, 使得操作难度较大, 传统的人工经验方式难以满足实际生产的需要.因此, Guo等[5]以最小化能耗为目标建立了连退加热过程的操作优化模型并使用PSO算法对其求解. Zhang等[6]通过对连退生产过程的机理分析, 建立了基于数据驱动的操作优化模型. Yang等[7]建立了连退生产过程的多目标操作优化模型并对其进行求解, 降低了能源消耗, 提高了产品的质量和连退机组的产能.
针对多目标优化问题的求解, 近年来出现了很多优秀的算法, 如多策略改进的多目标粒子群优化算法[8]、基于目标分解的高维多目标并行进化优化方法[9]和NSGA-Ⅱ[10]等.文献[11-12]引入分类机制, 实现了对新产生候选解的过滤.然而, 上述算法并没有充分利用种群内个体携带的信息及其之间信息的共享, 也没有充分利用分类机制来提高解的性能.
由上述分析可知, 针对流程工业生产过程操作优化的研究主要集中在单目标操作优化, 而对于多目标操作优化, 大多是通过加权方式转化为单目标操作优化, 并且很少考虑生产安全问题.在连续退火的生产过程中, 安全性约束对于机组的连续生产和安全运行至关重要.在实际生产中, 薄料带钢在连退均热炉中经常因为带钢张力的波动而导致瓢曲和跑偏, 当跑偏达到一定程度时, 纠偏辊无法完成纠偏而导致断带, 需要整个连退生产线停机进行检查, 在排查故障辊的过程中需要消耗大量的时间, 从而给企业造成巨大的经济损失.为此, 本文针对冷轧连退生产过程, 建立考虑质量和连续运行等安全约束的多目标操作优化模型, 并针对问题特点提出一种基于分类与多种群竞争协调的多目标进化算法(MOEA-CMCC).
1 考虑安全约束的连退多目标操作优化建模 1.1 问题描述冷轧连退生产过程操作优化是根据待加工带钢的规格和当前的设备条件, 在满足工艺约束、质量约束和保障连续安全生产的前提下, 以提高产品质量、降低能源消耗、提高产能和对工艺流程的执行度为目标, 确定连退各阶段的温度、轧制力、张力和带钢速度等控制参数的最优设定值.
1.2 问题模型 1.2.1 模型参数模型参数S=(s0, s1, …, s24)T中各符号的含义如下:
s0、s1:带钢入口厚度和宽度;
s2:出炉温度;
s3~s5:平均卷曲、精轧、终轧温度;
s6~s12:带钢C、S、P、Mn、N、Si、Al的含量;
s13: CDCM延伸率;
s14、s15:缓冷炉1区和2区温度;
s16、s17: 1#和2#冷炉冷却气体温度;
s18:终冷炉2区水温;
s19、s20:均热炉内辊子的个数和半径;
s21:电机转轴上的转动惯量;
s22:带钢的弹性模量;
s23:辊子间带钢的长度;
s24:均热炉入口处的带钢张力F0.
1.2.2 决策变量决策变量X=(x0, x1, …, x73)T中各符号的含义如下:
x0:带钢穿行速度的设定值;
x1~x5:加热炉1区~5区温度的设定值;
x6、x7:均热炉1区和2区温度的设定值;
x8~x10: 1#冷炉1区~3区温度的设定值;
x11、x12: 1#过时效炉1和2区温度的设定值;
x13~x16: 2#过时效炉4个区温度的设定值;
x17: 2#冷炉温度的设定值;
x18:终冷炉1区水温的设定值;
x19:平整机延伸率;
x20、x21: 1#和2#平整机轧制力;
x22~x24:平整机入口、中间、出口张力;
x25:均热炉入口速度;
x26~x49:均热炉内24个辊子速度的设定值;
x50~x73:均热炉内24个辊子扭矩的设定值.
1.2.3 数学模型考虑安全约束的连退生产过程多目标操作优化模型如下:
(1) |
(2) |
(3) |
(4) |
(5) |
(6) |
(7) |
(8) |
(9) |
(10) |
(11) |
(12) |
(13) |
(14) |
其中: xi, min、xi, max分别为第i个决策变量的下限和上限; ai、bi分别为连退生产过程中工艺约束的下限和上限; ψ1(X, S)~ψ6(X, S)分别为加热炉、均热炉、1#冷炉、1#过时效炉、2#过时效、2#冷炉出口带钢的温度; Li、Ui分别为各炉出口带钢温度的下限和上限; F0为均热炉入口处的带钢张力; Fi(X, S)(i=1, 2, …, 23)为均热炉内第i个辊子与第i+1个辊子之间的带钢张力; F24(X, S)为出口处的带钢张力.
式(3)~(11)为连退生产过程中加热炉、均热炉、1#冷炉、1#过时效炉、2#过时效炉炉内的工艺约束, 以保证各炉内温度的设定满足工艺要求; 式(12)为连退生产过程的产品质量安全约束, 用来保证各炉出口处带钢的质量能够满足工艺要求; 式(13)和(14)为连退生产过程的生产安全约束, 即生产过程中需要保证各辊子入口和出口处的带钢张力满足Fi < Fi+1, 以避免薄料带钢出现打滑跑偏.其中, 每个辊子处的带钢张力使用文献[4]所提出的机理模型求解获得.
2 基于分类与多种群竞争协调的多目标进化算法(MOEA-CMCC) 2.1 基于多种群的进化策略不同的交叉算子具有不同的搜索行为和进化方向, 针对不同问题其搜索性能也各不相同.因此, 在本文提出的算法(MOEA-CMCC)中引入多个种群, 并为每个种群分配不同的交叉算子, 动态地调整种群的大小, 从而能够通过多种群机制保证解的分散性, 并通过多种交叉算子提高算法求解不同类型问题时的鲁棒性.所采用的交叉和变异算子如下.
1) 交叉算子.
在MOEA-CMCC算法中设置5个种群(Pi表示第i个种群), 被分配的交叉算子分别为文献[13]中列出的BLX-α、SBX、SPX、PCX和DE.
2) 变异算子.
对于Pi的第j个解Xij={xij0, xij1, …, xijd-1}的每一个维度xijk(k=0, 1, …, d-1), 首先在[0, 1]之间产生一个随机数, 如果该随机数小于变异概率pm, 则根据文献[14]中的多项式变异算子对xijk进行变异操作; 否则保持xijk不变.
2.2 多种群竞争协调在算法的搜索过程中, 总的种群规模N始终为nsubPop·Ni (nsubPop表示种群的个数, Ni表示第i个种群的大小).在初始阶段, 每个种群的规模是相等的.种群之间的竞争性体现在每间隔ncomplete次迭代, 算法将动态调整每个种群的规模.例如, 当Pi的规模需要增大时, 用分配给Pi的交叉算子产生新个体并加入到Pi中, 其中一个父代来自于当前Pi中的个体, 剩余所需的父代在外部档案集EXA中随机选择. EXA中的个体可能是由其他种群得到的, 因而携带了其他种群的信息, 这种父代解的选择方法实现了种群之间信息的共享.算法1给出了多种群竞争协调的过程.种群规模的动态调整公式为
(15) |
其中: ni为EXA中来自Pi的个体数, |EXA|为当前EXA中包含的个体数; Nnewi为Pi调整后的规模.
算法1 多种群竞争协调过程.
1) for i=0:nsubPop - 1 do
2) 按照式(15)计算Pi的新规模.
3) end for
4) 找到新规模中小于Nmin的种群, 将找到的种群的新规模重新设置为Nmin.
5) 找到拥有最大新规模的种群Pk.
6) 计算Nnewi的总和, 记为total.
7) if total < N do
8) Nnewk=Nnewk+(N-total).
9) else if total>N do
10) Nnewk=Nnewk-(total-N).
11) end if
12) for i=0:nsubPop - 1 do
13) while当前规模Ni大于新规模Nnewi do
14) 在Pi中随机选择一个个体删除.
15) Ni=Ni-1.
16) end while
17) while当前规模Ni小于新规模Nnewi do
18) 在Pi中随机选择一个个体并且在EXA中随机选择一个或两个个体作为父代, 用Pi的交叉算子交叉产生新的个体, 并添加到Pi.
19) Ni=Ni+1.
20) end while
21) end for.
2.3 分类局部搜索为了进一步提高EXA的质量, 首先根据个体在目标空间的距离将EXA分为nsubEXA个子集(EXAi表示第i个子集), 在目标空间中相邻的个体被归到同一个子外部档案集中; 然后在类内进行局部搜索.在目标空间距离相近的类内进行搜索, 能加快算法的收敛速度; 同时, 目标空间中不同区域的类又能够保证解的分散性.算法2给出了类内局部搜索的过程.
算法2 类内局部搜索.
1) for i=0:nsubEXA - 1 do
2) for j=0:|EXA|/nsubEXA - 1 do
3) if EXAi中包含的个体数等于1 do
4) 用EXAi中的个体复制并产生一个新个体.
5) 在[0, d-1]之间随机产生一个整数, 将新个体在该数对应的位置处的值设置为在其上下界范围内随机产生的数.
6) else
7) 根据文献[13]中自适应选择交叉算子的方法选择一个交叉算子.
8) 在EXAi中随机选择不同的个体作为父代, 根据上一步选择的交叉算子进行交叉操作以产生新个体.
9) end if
10) 评价新个体.
11) 将新个体添加到集合A.
12) end for
13) end for
14) 用集合A中的个体更新EXA.
2.4 算法流程在MOEA-CMCC中采用Deb等[10]提出的方法更新EXA.另外, 设置了EXA中的最大规模nEXA, 一旦EXA的规模超过nEXA, 便删除最拥挤的个体.算法3给出了MOEA-CMCC的整体流程.
算法3 MOEA-CMCC的整体流程.
1) 设定迭代次数g=0;初始化每个种群Pi={Xi0, Xi1, …, XiNi-1}, Ni=N/nsubPop为每个种群包含的个体数, 并为每个种群分别分配一个不同的交叉算子; 将初始种群中的非支配解存于EXA.
2) while没有达到终止条件do
3) if g是nclass的倍数并且EXA的个数>80 do
4) 将当前EXA记录于tempEXA.
5) 将tempEXA分为nsubEXA个子外部档案集.
6) end if
7) 根据算法2进行类内局部搜索.
8) if g是ncomplete的倍数do
9) 根据算法1进行多种群的竞争协调.
10) end if
11) for i=0:nsubPop - 1 do
12) for i=0:Ni - 1 do
13) 交叉操作:按照当前种群Pi被分配的交叉算子, 用当前个体Xij与在EXA中随机选择的一个或两个个体作为父代进行交叉操作以产生新个体Xnew.
14) Xij=Xnew.
15) 按2.1节中的方法对Xij进行变异操作.
16) 评价Xij
17) end for
18) 用Pi更新外部档案集EXA.
19) end for
20) g=g+1.
21) end while
22) 输出获得的可行的非支配解.
3 数值实验与分析 3.1 实验环境与参数设置本文提出的MOEA-CMCC算法使用C++实现, 所有实验均是在CPU为Intel Core i5-3550, 内存4.0 GB的个人电脑上进行.
MOEA-CMCC算法的相关参数设置如下:各交叉算子的参数采用文献[13]中给出的建议值; 种群的个数nsubPop=5, 种群的最小规模Nmin=5, 所有种群总的规模N=100;EXA的规模nEXA=100, 子EXA的个数nsubEXA=5;变异概率pm=1/d; EXA分类间隔的迭代次数nclass=15, 多种群间竞争协调间隔的迭代次数ncomplete=25.算法的终止条件为达到目标函数的最大计算次数Fmax, 对于两目标优化问题, 设置Fmax=30 000;对于三目标和四目标优化问题, 设置Fmax=50 000.
3.2 测试函数与性能评价指标采用30个经典的Benchmark问题进行对比实验, 包括ZDT系列[15]、LZ09系列[16]、UF系列[17]、DTLZ系列[18].同时选用IGD[19]指标评价算法的性能, 它能够同时评价算法的收敛性和分散性, IGD值越小, 表明算法的性能越好.在实验中, 对于每个测试问题, 每种算法都独立运行30次, 使用其统计结果进行评价.
3.3 与代表性进化算法的对比实验将本文提出的MOEA-CMCC与其有代表性的3种进化算法NSGA-Ⅲ[20]、AbYSS[21]和HMOEA[13]进行对比实验.其中, 3种算法的实现来源于网站http://jmetal.sourceforge.net/的jMetal5.0软件包, 算法中参数的取值为文献中给出的建议值. MOEA-CMCC算法的平均运行时间如表 1所示.
基于实验结果, 使用置信水平为95 %的独立T检验来评价不同算法之间的性能差异, 结果如表 2所示.其中:“+”和“-”分别表示MOEA-CMCC显著优于与或显著劣于其他算法, 加粗字体为各算法取得的最好解.从结果中可以看出:针对30个测试问题, MOEA-CMCC在14个测试问题上求得了最好的结果; 在16个测试问题上显著优于NSGA-Ⅲ; 在21个测试问题上显著优于AbYSS; 在13个测试问题上显著优于HMOEA.
图 1和图 2给出了部分测试函数通过各算法运行30次求得的最小IGD值所对应的Pareto前沿.从中可以看出, 本文提出的算法求得的解更加接近真实的Pareto前沿, 并且在目标空间中的分布也更加均匀.
以上的实验结果表明, 相对于3种有代表性的多目标进化算法, 本文提出的算法能够表现出更好的性能.其原因主要包括:首先, 含有不同进化策略的多种群在进化过程中能够保证算法搜索的分散性; 然后, 竞争协调机制能够将更多的进化资源分配给最适应当前问题的种群, 从而在保证算法鲁棒性的同时加快收敛速度; 最后, 外部档案集的分类与类内搜索不但增强了外部档案集的多样性, 也能够帮助加快算法的收敛速度.
3.4 连退多目标操作优化问题的数值实验连退多目标操作优化问题的优化目标有4个, 属于Many-Objective[20]优化问题, 因此, 在本实验中只对NSGA-Ⅲ和MOEA-CMCC进行对比分析.实验数据来自于某钢厂8条带钢的实际生产数据, 根据该钢厂的实际生产条件, 取σ=5;连退生产过程工艺约束的上下限值见表 3.
由于连退操作优化模型涉及的约束和变量众多且相互关联, 传统的Pareto约束支配[10]方法难以获得问题的可行解.本文提出一种基于启发式方法的可行性修复策略.在算法中, 除质量安全约束和生产安全约束的处理遵循Pareto约束支配之外, 其他约束的处理均按照所设计的启发式修复策略, 其过程如下.
对于加热炉5个区温度约束的处理:若产生的新解不满足约束(3)和约束(4), 则先对x1~x5从小到大进行排序使其满足约束(3);如果排完序的解也满足约束(4), 则保留, 否则, 以x1为基准, 加上在(a1, b1)之间产生的随机数作为x5, 再在(x1, x5)之间产生3个不重复的随机数, 按照从小到大的顺序分别赋给x2, x3, x4.
对于其他炉内温度约束的处理:若产生的新解不满足该炉内两个分区温度差的约束, 则以两区中编号小的区的温度为基准, 加上(减去)在两区温度差之间产生的随机数作为两区中编号大的区的温度.以1#冷炉的2区和3区为例, 若新解不满足约束(7), 则以2区的温度x9为基准, 减去在[a4, b4]之间产生的随机数作为3区的温度x10.
3.4.2 实验结果考虑到实际问题的真实Pareto前沿无法获得, 本文将种群规模设置为1 000, 终止条件目标评价次数Fmax设置为1 000万, 用MOEA-CMCC和NSGA-Ⅲ分别对每条带钢数据进行求解, 然后从所得到的两个Pareto集合中选取非支配的可行解作为参考Pareto前沿, 用来评价算法性能.
表 4给出了MOEA-CMCC和NSGA-Ⅲ在操作优化模型上求得的IGD值的平均值和方差以及结果的差异性, 其中检验结果差异性所用的方法和表中“+”, “-”的含义都与3.3节中的相同.从表 4中可以看出, MOEA-CMCC在8个实际问题上均获得了最好的结果, 且都显著优于NSGA-Ⅲ.
表 5给出了实际生产结果与操作优化结果在目标函数值上的比较.在实际生产中, 操作设定值的选择一般遵循如下偏好:在保证质量的前提下选择使得产能高、能耗低的操作设定值, 本文中的操作优化结果是在MOEA-CMCC求得的Pareto前沿中根据该偏好进行选择的.从表 5中可以看出, 除了在带钢5上实际生产结果的能耗比操作优化结果的能耗低以外, 对于其他带钢, 操作优化的结果均显著优于实际生产的结果.由以上结果可以看出, 相对于根据传统的人工经验对操作变量进行设定, 本文提出的操作优化模型与算法求得的参数设定值能够获得更好的结果.
针对冷轧连续退火生产过程中经常出现的薄料带钢跑偏等安全性问题, 本文进一步考虑了质量安全约束和生产安全约束, 建立了问题的多目标操作优化模型, 从而保证了生产的安全性与连续性.同时, 针对所建立的模型, 提出了一种基于分类与多种群竞争协调机制的多目标进化算法.基于30个Benchmark问题的实验结果表明, 该算法的性能优于传统的多目标与高维多目标优化算法.针对实际连退多目标操作优化问题的测试结果表明, 本文所提出的算法显著优于传统的高维多目标优化算法NSGA-Ⅲ, 并且操作优化的结果能够在保证生产安全性与连续性的前提下, 进一步提高产品质量和机组产能, 降低能源消耗.
[1] |
Chen L, Tang L X, Tang L J. Operation optimization problem of hot rolling based on the transcendental geometric programming[J]. Control and Decision, 2015, 30(4): 703-708. |
[2] |
Hu C B, Tong C N, Peng K X. Load distribution optimization of hot strip mills with improved evolutionary algorithm for complex-process optimization[J]. Control and Decision, 2012, 27(1): 15-21. |
[3] |
Jiang A P, Cheng W, Wang J, et al. Operational optimizations of full flowsheet spiral-wound seawater reverse osmosis system[J]. CIESC Journal, 2014, 65(4): 1333-1343. |
[4] |
Tang Z Y, Li H. Research of Baosteel 1220 mm CAPL tension control system[J]. Baosteel Technology, 2016(2): 25-30. |
[5] |
Guo C, Zhang Y, You X, et al. Optimal control of continuous annealing process using PSO[C]. Proc of the IEEE Int Conf on Automation and Logistics. Shenyang: IEEE, 2009: 602-605. http://ieeexplore.ieee.org/document/5262851/
|
[6] |
Zhang Y, Cao W, Wu M, et al. A hybrid modeling method for continuous annealing line heating process[C]. Proc of the 35th Chinese Control Conf. Chengdu: IEEE, 2016: 2263-2267. http://ieeexplore.ieee.org/document/7553704/
|
[7] |
Yang D L, Zhou Y, Liu Y, et al. Data-driven modeling and operation optimization for continuous annealing process[J]. Baosteel Technology, 2015(6): 70-75. |
[8] |
Yang J M, Mu X W, Che H J, et al. Improved multi-objective particle swarm optimization algorithm based on multiple strategies[J]. Control and Decision, 2017, 32(3): 435-442. |
[9] |
Gong D W, Liu Y P, Sun X Y, et al. Parallel manyobjective evolutionary optimization using objectives decomposition[J]. Acta Automatica Sinica, 2015, 41(8): 1438-1451. |
[10] |
Deb K, Pratap A, Agarwal S, et al. A fast and elitist multiobjective genetic algorithm: NSGA-Ⅱ[J]. IEEE Trans on Evolutionary Computation, 2002, 6(2): 182-197. |
[11] |
Zhang J, Zhou A, Zhang G. A classification and pareto domination based multiobjective evolutionary algorithm[C]. Proc of the Congress on Evolutionary Computation(CEC-2015). Sendai: IEEE, 2015: 2883 2890. http://ieeexplore.ieee.org/document/7257247/
|
[12] |
Lin X, Zhang Q, Kwong S. A decomposition based multiobjective evolutionary algorithm with classification[C]. Proc of the Congress on Evolutionary Computation(CEC-2016). Vancouver: IEEE, 2016: 3292-3299. http://ieeexplore.ieee.org/document/7744206/
|
[13] |
Tang L, Wang X. A hybrid multiobjective evolutionary algorithm for multiobjective optimization problems[J]. IEEE Trans on Evolutionary Computation, 2013, 17(1): 20-45. DOI:10.1109/TEVC.2012.2185702 |
[14] |
Eshelman Larry J, Schaffer David J. Real-coded genetic algorithms and interval-schemata[J]. Foundations of Genetic Algorithms, 1993, 2: 187-202. |
[15] |
Zitzler E, Deb K, Thiele L. Comparison of multiobjective evolutionary algorithms: Empirical results[J]. Evolutionary Computation, 2000, 8(2): 173195. |
[16] |
Li H, Zhang Q. Multiobjective optimization problems with complicated Pareto sets, MOEA/D and NSGA-Ⅱ[J]. IEEE Trans on Evolutionary Computation, 2009, 13(2): 284-302. DOI:10.1109/TEVC.2008.925798 |
[17] |
Zhang Q, Zhou A, Zhao S, et al. Multiobjective optimization test instances for the CEC 2009 special session and competition[R]. Colchester: University of Essex, 2008.
|
[18] |
Deb K, Thiele L, Laumanns M, et al. Scalable test problems for evolutionary multi-objective optimization[J]. Evolutionary Multi-objective Optimization: Theoretical Advances and Applications, 2005, 105-145. |
[19] |
Neri F, Cotta C. Memetic algorithms and memetic computing optimization: A literature review[J]. Swarm and Evolutionary Computation, 2012, 2: 1-14. DOI:10.1016/j.swevo.2011.11.003 |
[20] |
Deb K, Jain H. An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, Part Ⅰ: Solving problems with box constraints[J]. IEEE Trans on Evolutionary Computation, 2014, 18(4): 577-601. DOI:10.1109/TEVC.2013.2281535 |
[21] |
Nebro A J, Luna F, Alba E, et al. AbYSS: Adapting scatter search to multiobjective optimization[J]. IEEE Trans on Evolutionary Computation, 2008, 12(4): 439-457. DOI:10.1109/TEVC.2007.913109 |