沈 聪,唐 伟,张世峰
(安徽工业大学电气与信息工程学院,安徽马鞍山243032)
摘要:针对传统焦炉冷鼓系统控制复杂性高、非线性强、抗干扰能力弱以及无法使用数学模型精准拟合等问题,提出一种基于粒子群优化(PSO)算法的非线性在线支持向量回归(OSVR)的模型预测控制策略。利用OSVR 的辨识方式建立预测控制模型,根据该辨识策略的在线学习能力进行模型的在线校正;通过PSO 算法对系统的目标函数进行滚动优化,完成对系统的预测控制,且利用仿真实验对该控制策略进行验证。结果表明:该策略能够缩短焦炉冷鼓控制系统的响应时间,提高系统的运行效率;粒子群的优化策略具备较强的自我学习能力,提高了系统的抗干扰能力,增强了系统的鲁棒性。
关键词:粒子群优化(PSO)算法;在线支持向量回归(OSVR);模型预测控制(MPC);焦炉冷鼓系统
中图分类号:TP 26文献标志码:Adoi:10.3969/j.issn.1671-7872.2021.04.009
焦炉冷鼓系统作为焦炉集气管压力系统的关键环节,其控制系统中初冷器前吸力的稳定性与焦炉的使用寿命和焦炭质量与产量直接相关。焦炉冷鼓系统是一种以模型预测控制(model predictive control,MPC)为基础通过不断进行滚动优化和反馈矫正的线性控制系统。多数工业生产中,焦炉冷鼓系统是非线性的,具备强干扰、强耦合等特性,传统的控制方式对其无法建立精确数学模型进行预测。张世峰等将焦炉冷鼓系统的初冷器前吸力控制划分为3 种工况模型,采用多模型控制(generalized predictive control,GPC)策略对各参数进行调节,该策略的抑制扰动能力较强,优于传统的PⅠD控制器。刘昕明等提出了一种基于T-S模型的焦炉集气管压力综合预测控制策略,通过模糊聚类算法辨识集气管压力T-S模型,再将该模型转化为线性时变的状态空间模型,达到了对焦炉系统的有效控制。
随着统计学习理论的完善,智能模型如人工神经网络(artificial neural network,ANN)、支持向量机(support vector machine,SVM)等在非线性系统控制方面有较好的应用。鉴于ANN 模型存在过学习、易陷入最小值问题,董鑫等采用LS-SVM(least square SVM)的阶逆系统搭建辨识建模,将焦炉的集气管系统解耦成2个相互独立的伪线性子系统,达到稳定控制的效果,但在处理焦炉系统的强时变和未知干扰问题上未进行深入研究。谢进利用SVM模型对非线性系统的逼近能力,实现支持向量回归(support vector regression,SVR)的离线辨识建模,提高传统控制系统方法的鲁棒性和抗干扰能力,然而在调整模型参数时,需加入新的训练样本进行整体的重新训练,一定程度上加大了训练复杂程度。在线支持向量机回归(online support vector regression,OSVR)模型在SVM 的基础上引入回归函数,采用每次只增加一个新样本的方式进行在线逐步迭代训练,保证预测模型的准确性。
焦炉冷鼓系统存在高度的非线性,对目标函数的优化问题也是非线性约束优化的问题,并且需在线反复优化才能确保最优控制输出。传统优化目标函数的方式有最速下降法、牛顿法等,相对于传统方式,粒子群优化(partical swarm optimization,PSO)算法不要求目标函数具备二阶或高阶导数,仅对历史的速度和位置进行动态跟踪来获取现在的寻优结果,是一种基于群体的全区域寻优方案,易于实现且寻优速度快。鉴于此,提出一种基于PSO-OSVR 算法的非线性模型预测控制策略,搭建在线辨识焦炉冷鼓系统的模型,通过PSO算法对控制系统进行全局滚动优化,以提高焦炉冷鼓系统的抗干扰能力,实现稳定控制。
P
处的吸力,保证该处吸力在-1.4~-1.0 kPa范围。图1 焦炉冷鼓系统结构示意图Fig.1 Structural diagram of coke oven cold drum system
在生产煤气的过程中,根据煤气量的大小可将焦炉冷鼓系统划分为3种工况:工况1 为检修保温工况,集气管压力相对稳定,集气管和总管压力的控制较容易;工况2 为正常生产工况,系统的煤气量增多,集气管内的压力随之增大;工况3 为推焦加煤工况,对系统进行推焦加煤会导致集气管内压力较大波动,初冷器前吸力变化较大,强烈干扰系统对其进行稳定控制。针对3 种工况,在P
处设定不同的吸力值,通过调节大循环阀门稳定调节初冷器前吸力。ε
(ε
表示不敏感损失函数)更接近目标。在SVR 的控制策略中,假设一个包含n
个样本的训练集D
={(x
,y
)},其中:i
=1,2,…,n
;x
∈R;y
∈[-1,1];x
为输入数据;y
为x
对应的输出值。在特征空间F
上构造出一个线性回归函数,如其中:w
为F
空间上的一个向量;ϕ
(x
)为把输入量x
映射到F
空间上的一个非线性向量;偏差项b
和w
可通过优化问题获得。求解回归问题的关键在于找到一个合适的目标函数使式(1)的估计真实风险最小,利用结构风险最小化准则构建最小化目标函数:将ε
线性不敏感损失函数定义为:式中C
为惩罚因子。C
越大,表示对误差大于ε
的样本惩罚越大;给定f
(x
)的ε
越小,回归函数误差越小。在求解式(4)的同时引入拉格朗日函数,并转换成对偶形式:相较于离线训练方式,OSVR 不但能够满足样本不断更新,而且具有良好的动态建模能力,有利于提高训练模型的精度和速度。KKT 条件是用来作为优化函数取得最优解的判断条件,也是用来判断算法结束的依据。图2 为含有校正模型的OSVR 控制模型,具体搭建步骤如下:
图2 含有校正模型的OSVR控制模型Fig.2 OSVR control model with calibration model
1) 初始化系统,选择合适的辨识信号,设定采样时间t
、仿真次数N
及仿真时间T
,其中T
=Nt
。记录此时的输入输出值,构造样本集。并规定核函数类型、不敏感度ε
和规则化参数C
。2)根据历史信息构建误差补偿函数模型,测试新的预测样本输出结果,得到新的在线预测值。
3)利用步骤2)中建立的模型在线预测误差,实时校正在线输出值,得到更准确的预测值。
S
维的目标搜索空间中,随机选择一个由n
个粒子组成的种群Z
={Z
,Z
,…,Z
},每个粒子的位置U
={u
,u
,…,u
}都是所求函数潜在的最优解。定义第i
个粒子的位置为u
,第i
个粒子当前本身最优的位置为p
,设f
(u
)为要求的极小值函数,则第i
个粒子目前的最优位置为:第i
个粒子除自身位置外,还存在一个速度V
={v
,v
,…,v
},根据其搜索到的最优位置p
以及整个种群当下搜索到的极值p
,利用下式更新自己的位置和速度:其中:i
=1,2,…,n
;c
,c
为加速度常数,一般情况下取值均为2;r
,r
是一个随机数,服从[0,1]的均匀分布,随机选取。为使v
和u
在合理范围,需满足以下条件:根据式(11),利用第i
个粒子在t
时刻的速度和位置及其与自身最优位置的间距,综合此时的位置与粒子群最优位置的间距来更新t
+1时刻的最优速度和位置。y
为期望输出,y
为预测模型的输出,y
是经过反馈校正以后的预测输出结果,u
(t
)为控制量。图3 基于PSO-OSVR的非线性模型预测控制系统框图Fig.3 Block diagram of predictive control system of nonlinear model based on PSO-OSVR
由非线性预测控制原理,构建非线性系统的控制模型如下
式中M
≤N
,N
和M
分别代表输入输出多项式的阶次,即输入输出的延时。根据OSVR算法,设定目标函数如下
假设x
(t
)为观测值y
(t
)与输出值u
(t
)的函数,则可得
式中:K
(x
(i
),x
)为高斯径向基核函数(radial basis function,RBF);偏离值b
和样本量因子θ
可根据{x
(i
),y
(i
+ 1)|i
= 1,2,…,n
} 训练后得到,能够预测t
+1时刻的输出,即通过不断地改变K
值获得多步的预测输出。设定控制时域H
和预测时域P
分别满足N
′≥P
≥H
,M
′≥P
≥H
,记t
时刻的第k
步输出为y
,当
K
≥H
,假设其控制器输出不变,则根据式(15)的x
(t
)对式(18)进行迭代,即可获得系统的预测输出值。对该非线性系统的模型参数进行在线校正,在相应校正策略下,通过比较反馈误差e
(t
) =y
(t
) -y
(t
)和设定的误差允许区间决定是否要进行学习,保证系统不受外部干扰。J
(t
),如式中:λ
为控制的权系数(通常为正数);Δ 为差分运算符;Δu
(t
)=u
(t
) -u
(t
- 1);y
(t
+k
) =y
(t
+k
) +e
(t
),表示第k
步的预测输出。则第k
步的参考输出y
(t
+k
)可表示为:式中:α
为用以控制系统鲁棒性和收敛性的调节因子,且满足0 <α
<1;y
(t
)为真实的设定值。根据焦炉冷鼓系统建立非线性模型预测控制的目标函数,根据式(11),(12)可获得粒子群的适应值函数,即其中y
(t
+k
)为OSVR 预测模型根据粒子所在位置p
的预测输出。为能更新种群的最好位置p
,记F
和F
分别为粒子i
经历的最优适应值和种群的最优适应值。在此基础上,可更新粒子i
的速度和位移公式:式中:l
为当前进化代数;I
为最大的进化代数;ω
为惯性权重;ω
为惯性权重初始值。通过当前粒子速度的上限对粒子速度进行控制;最后通过最大的代数循环获得整个群体中所有粒子的最好位置为p
,即可获得PSO优化后的控制量。正常工况下,为测试PSO-OSVRMPC算法对非线性系统的控制效果,选取焦炉冷鼓系统的150组数据为样本,将样本划分为数据集和测试集。数据集包含100组数据,作为算法的训练集进行学习,获取相关参数;测试集包含50组数据,用来测试算法对焦炉冷鼓系统的控制效果,并对建立的模型性能进行分析。
根据1.2 小节中OSVR 控制模型搭建步骤1)进行OSVR 的离线训练,训练时使用高斯径向基函数作为系统的核函数,设其惩罚因子C
为600、不敏感度ε
为0.01、核函数系数σ
为0.7。使用数据集对OSVR 模型离线训练,设定初冷器吸力最大允许误差为0.008 kPa,利用测试集对模型进行预测,预测结果如图4。从图4 可看出,OSVR 的预测控制精度较高,误差达10数量级,在设定的误差允许范围内,OSVR模型具备很好的推广性。图4 基于OSVR的模型预测结果Fig.4 Model prediction result based on OSVR
在OSVR 模型的基础上,引入PSO 算法对焦炉冷鼓系统进行控制。在PSO 算法中,取10 个粒子;设定惯性权重ω
为0.3,学习常数c
,c
均为2,最大进化代数I
为10。为保证粒子速度满足一定范围,令v
=0.5 m/s。另外,在系统控制时,设置非线性控制器的柔化系数α
= 0.2,控制权系数λ
= 0.05,控制时域H
=8,预测时域P
=2。根据焦炉煤气量的大小将焦炉冷鼓系统划分3 种工作工况,针对3 种工况,利用MATLAB 仿真平台对其分别采用PSO-OSVRMPC 算法和基于SVM 的非线性模型预测控制器(SVMRMPC)算法进行仿真,在给定跟踪值的条件下观测其运行,结果如图5,给定的跟踪值如表1。表1 给定跟踪期望值Tab.1 Given tracking expectation
从图5可看出:整体控制趋势上,PSO-OSVRMPC算法与SVMRMPC 算法对系统均有较好的控制效果;工况切换时,SVMRMPC 算法超调量更大,PSO-OSVRMPC 算法也出现轻微超调,但PSOOSVRMPC 算法通过在线学习与滚动优化,能够快速响应干扰的波动,降低超调量,使系统控制对象的实际输出值和期望值达到静态指标,准确度高。
图5 PSO-OSVRMPC与SVMRMPC的控制效果Fig.5 Control effect of PSO-OSVRMPC and SVMRMPC
t
=50,150,250 s时分别加入一个强干扰量,在干扰下的控制效果如图6。图6 干扰下PSO-OSVRMPC与SVMRMPC的控制效果Fig.6 Control effect of PSO-OSVRMPC and SVMRMPC under interference
如图6 所示:在强干扰下,PSO-OSVRMPC 和SVMRMPC 算法均出现明显的超调,SVMRMPC 算法的调节周期为10 s,最终能够达到设定值,但调节过程中波动明显;PSO-OSVRMPC 算法通过在线学习与滚动优化,调节周期缩短至8 s,提高了控制效率,且以较小的波动消除干扰,使系统稳定在设定值附近,增强了系统的鲁棒性。
针对较强非线性的焦炉冷鼓系统,提出一种基于PSO 算法的非线性预测控制策略。利用OSVR 辨识建立一个更准确的预测控制模型,利用OSVR的在线学习能力完成模型的在线校正,利用PSO优化算法对目标函数实现预测控制,经过系统仿真验证OSVRMPC 控制算法的控制效果。结果表明,与SVMRMPC 算法相比,PSO-OSVRMPC算法超调量小、响应时间短,在面对实际生产中的强干扰时,OSVR的在线学习能力使系统有一个更好的控制效果。当然本文控制方案也有需要完善的地方,如选取的样本集可更大等。