混沌量子粒子群算法在火电厂中的应用
2018-04-18刘瑞敏
刘 静,刘瑞敏
(昆明理工大学 信息工程与自动化学院,云南 昆明 650217)
0 引言
因为PID控制具有结构简单、鲁棒性强、算法易于实现的优点[1],在当今的火电厂过程控制中,依然存在着比较多的PID控制,同时,PID控制器对系统的稳定、安全和经济运行有着十分重要的影响,因此控制器参数的整定和优化一直是关键的问题。另一方面,由于控制对象复杂,导致PID参数的整定变得比较困难。随着群体智能算法的发展,优化控制器参数也相应的得到了较好的解决。文献[2]采用遗传算法对PID控制器参数进行优化,遗传算法在进行寻优的时候不需要知道目标函数的梯度信息,该算法根据适应度函数作为寻优依据,通过交叉、变异、选择等算子优化参数,但这些操作又从一定程度上影响了寻优的收敛速度。文献[3]采用标准粒子群算法进行PID参数优化。粒子群算法是一种基于全局优化的群体智能算法,该算法是对普通的随机搜索算法的改进,模拟鸟群寻找食物这一特点在多维空间中构造多个粒子进行寻优。每个粒子不断更新自己的位置,通过自身最优值和群体最优值来修改自己的前进方向和速度[4]。标准粒子群算法是以轨道形式实现的,同时由于其粒子速度有限,因此搜索过程只是一个有限的区域空间,不能保证其以概率1收敛到全局最优解[5]。
本文在300 MW循环流化床实例基础之上,分析并研究了混沌量子粒子群算法在热工控制中对PID控制器参数的优化。首先,通过经验公式对流化床在满负荷运行时的燃料控制器的参数进行初步整定,然后,利用标准粒子群算法和混沌量子粒子群算法分别对流化床在满负荷运行时的燃料控制器进行参数优化,通过仿真表明,混沌量子粒子群算法有比更好的参数优化效果,在热工控制中具有一定的实用价值。
1 PID经验公式
在工业控制中,PID控制器占有比较大的比重。针对一些典型的控制模型,比如一阶惯性加迟延系统:
(1)
对该模型往常采用的是典型的Z-N整定公式,但是该种方法应用起来比较困难,尤其是像热工控制中的PID参数的整定,因此,本文选用的文献[6]中所提到的PID经验公式,该方法在应用方便,并且所得到的控制参数相对稳定。
假如实际中的PID传递函数如下所示:
(2)
式中,δ是比例带,Ti是积分时间,Td是微分时间,α是常数,一般取0.1。
对于自衡系统,其PID参数的整定经验公式如下所示:
δ=αK(β+n1)
(3)
Ti=γ(nT+τ)
(4)
(5)
其中ε为4~8之间的任意数式中的n1为
取α=0.081,γ=0.6
在文中的实例仿真部分,对由该经验公式获取的控制参数进行相应的仿真,验证该公式的有效性。
2 基于标准粒子群算法和混沌量子粒子群算法的PID参数优化
2.1 PID控制器特点及其结构
PID控制器指的是比例、积分、微分三种控制效果的线性组合,可以将三种效果认为是对误差值现在、过去、未来的三种不同的处理方式。PID在线性系统的控制中有广泛的应用,因为其结构比较简单、控制算法易于实现且鲁棒性好,具体的结构如图1所示。
图1 PID控制器结构图
PID控制系统若要得到一个好的控制效果,需要比例、积分、微分这3个参数较好的组合,一般在工程中难直接获取较好的控制参数。本文首先通过PID经验公式得到初始的控制参数,缩小优化参数的范围,然后利用混沌量子粒子群算法优化出更好的控制参数,从而使PID控制器取得好的控制效果。
2.2 标准粒子群算法
粒子群算法是对随机搜索法的改进,随机搜索法是一个粒子在空间中进行寻优,而粒子群算法则是多个粒子在空间中进行寻优,从而可以提升寻优的速度以及准确性。粒子群算法是模拟鸟群寻找食物的方法来进行设计的。每个粒子的位置更新以及移动速度的更新取决于粒子自身历史最优位置、群体最优位置、自身当前位置。其具体的数学表达形式如下所示[6]:
Vin(t+1)=ωVin(t)+c1r1(Xbestin-Xin)+
c2r2(Xbestgn-Xin)
(6)
Xin(t+1)=Xin(t)+Vin(t+1)
(7)
式(6)(7)分别是粒子速速更新表达式、位置更新表达式。在式(6)中ω是惯性权重参数,惯性权重表明了原来速度在下一次速度中所占的比例,ω越大,则其所占比例越大,反之越小。它决定着粒子的全局搜索能力和局部搜索能力,当ω较大的时候,则其全局搜索能力大,反之则其局部搜索能力强。r1和r2分别是两个0~1的随机数。经过多次仿真以及查阅文献可知,一般取ω=0.7即可。另外,c1和c2取1.4[6]。
2.3 混沌量子粒子群算法
2.3.1混沌量子粒子群算法原理
混沌量子粒子群算法是将混沌特性和粒子的量子行为特性相结合而形成的。这种改进的方法与传统的标准粒子群算法的不同之处在于粒子的更新不再局限于更新速度的限制,即可以避免只在一个有限的区域内进行寻优,从而可以改善标准粒子群不能保证其以概率1收敛到全局最优解这一问题。在量子空间中粒子满足聚集状态的性质完全不同,因此,粒子可以在整个可行解中进行搜索,这也决定改进后的算法要比标准粒子群算法有更好地全局搜索最优解的能力。量子粒子群算法是根据量子力学中的薛定谔波动方程来进行求解的。在波动方程中,波函数的平方是粒子在空间某一点出现的概率密度,通过该方程得出粒子在空间中某一点出现的概率密度函数。然后通过蒙特卡罗随机模拟的方式得到粒子的位置方程。以下是其具体的数学表达式[7]:
(8)
式中的u是一个0~1的随机数,其中L的具体表达式如表达式(9)所示
L(t+1)=2×β|mbest-X(t)|
(9)
(10)
式(10)中的mbest是某一代某个粒子每个寻优参数的自身最优值均值所组成的向量,PiN是某个粒子的第N个参数的自身最优值。
X(t+1)=P±β×|mbest-X(t)|×ln(1/u)
(11)
P=(r1Pid+r2Pig)/(r1+r2)
(12)
式(11)是最终得出的粒子位置更新的表达式,式(12)中的Pid和Pig分别是粒子自身历史最优值、整个群体最优值。从式(12)中可以看出,粒子的位置更新也是跟粒子自身历史最优值和整个群体的最优值是有关的。粒子的位置更新表达式中只有β这一个参数是可控的,该参数在整个算法中比较重要,对算法的收敛性有较大影响。
混沌是一种貌似无规则的运动,指在确定性非线性系统中,不需附加任何随机因素亦可以出现类似随机的行为,混沌系统的演化对于初始条件十分敏感,从一定意义上来说系统的未来是不可预测的。混沌具有一定的随机性,这种随机性可以有效避免算法陷入局部最优。另外,混沌的遍历性如果可以控制的得当则可以使最终的寻优结果无限接近最优。比较经典的混沌系统有Logistic映射[8]:
zn+1=4zn(1-zn)zn∈(0,1)
(13)
本文使用的是下面的混沌映射:
(14)
当判断出种群陷入到局部最优的时候,可以利用式(14)的混沌映射产生一组混沌序列,然后利用这组序列去产生一组随机的新粒子代替一些粒子,从而使种群跳出局部最优。
yi=pgi±λzi(i=0,1,…n)
λ=λ×α
其中λ的初值为1,α初值为0.5,另外随之迭代次数的逐渐增加,搜索也会变得越来越精细。
2.3.2种群早熟的判断依据
(1)粒子适应度方差
随着种群的不断更新,每一代粒子的适应度之间的差异会逐渐减小,粒子之间也便会越来越密集。可通过下面的方差定义来间接的反应映粒子适应度之间的差异。假设在第T代,第i个粒子的适应度值是Q(i),且当前粒子的平均适应值是Qavg,种群的适应度方差定义式为[9]:
(15)
式(15)中f是归一化定标因子,主要用来限制δ2的大小。F的大小主要取决于某一代种群中适应度的最大值、最小值与Qavg之间的差异。具体的过程如下所示:当Qmax-Qavg>1或者Qavg-Qmin>1的时候,f=max (Qmax-Qavg,Qavg-Qmin),否则f=1。即:
f=max{1,max{|fi-fmax|}},i∈[1,n]
(16)
从适应度方差的定义式可以看出,当δ2越大,则种群粒子之间表现的越分散,反之则表现的越集中。
(2)粒子之间的平均粒距
粒子之间的平均粒距是从空间上表现了粒子之间的分散程度,这种表示方法会更加直观的反映出粒子之间的粒子个体的聚集程度。X(i,j)中i代表某一代中的第i个粒子,j代表该粒子的第j个优化参数。X(j)代表该代中粒子的第j个优化参数的平均值。以下是平均粒距的表达式[9]:
(17)
由平均粒距表达式可以看出,当D越大,则粒子之间的分散程度越大;D越小,则粒子之间的分散程度会越小。另外,从上面这两种判断依据可以看出,前者属于从数值的角度直接反映种群之间的聚集程度,后者则是通过空间几何的形式反映种群之间的分散程度。
2.3.3混沌量子粒子群算法的步骤
混沌量子粒子群算法流程:
第一步:初始化种群。设置好种群的粒子个数,一般设置为30~80即可,本文选取的粒子个数是50个。设置好循环迭代的次数以及优化参数的上下限。
第二步:根据选定的优化目标函数,计算初始种群每个粒子的适应度值。
第三步:比较粒子的适应度值,找出初始种群中的最优适应度值Qibest和最优位置Xibest。
第四步:通过薛定谔波动方程和式(6)更新粒子的位置。
第五步:计算该代种群的粒子适应度值,找出每个粒子的自身最优适应度Qibetter和Xibetter,通过比较粒子之间的适应度值,找出该代种群全局最优适应度值Qibest和全局最优位置Xibest。
第六步:通过种群适应度方差和平均粒距判断种群是否陷入早熟,如果陷入早熟则执行第七步,否则执行第八步。
第七步:利用本文选用的混沌映射,产生一组混沌序列,然后利用这组序列去产生一组随机的新粒子代替一些粒子,从而使种群跳出局部最优。然后返回第四步,继续执行。
第八步:判断是否满足结束迭代寻优的条件。即判断是否已经达到了设置的迭代次数,或者判断是否满足了搜索精度的要求。如果满足条件了,则结束寻优,得到最终的全局最优位置Xibest。否则返回第四步,继续执行,直到满足结束寻优的条件为止。
2.3.4混沌量子粒子群算法的PID参数优化及控制结构
Kp、Ti、Td作为混沌量子粒子群算法的三个优化参数,这三个参数是每个粒子的自身属性。每个粒子依据给定的优化目标函数作为标准,每通过对应的规则进行寻优,不断地改变自身的位置,直到找到最优的位置。
一般的可作为优化目标函数的指标有误差积分IE、绝对误差积分IAE、平方误差积分ISE和绝对误差乘积积分ITAE等几种形式。本文选用的是ITAE形式作为目标函数。其数学形式为:
(18)
其离散形式为:
(19)
其参数优化的控制结构如图2所示。
图2 CQPSO算法的PID控制结构图
3.4 混沌量子粒子群算法的优
标准粒子群算法与混沌量子粒子群算法的不同之处如图3所示。
图3 PSO和CQPSO算法原理分析图
与标准粒子群算法相比,混沌量子粒子群算法有如下的优点:
(1)具有量子行为特性的粒子能够遍历整个解空间,克服了PSO中粒子无法完全遍历整个解空间的缺陷。
(2)收敛速度快,寻优效率高,能够有效地局部收敛、早熟的现象。
(3)粒子的移动仅有位移,而没有速度控制,从而减小了参数,使算法更易于实现。
3 算例分析
3.1 测试函数实例分析
3.1.1实例设置
本文首先选用的是利用4个常用的函数来进行数值计算,通过计算结果对混沌量子粒子群算法的高效、先进性进行初步的了解。这4个函数分别是Sphere、Rosenbrock、Rastrigrin、Griewank。这4个函数可以分别从不同的角度对某一优化算法的性能进行评价。比如Sphere函数是一个简单、连续的单模态函数,可以用来分析算法的执行性能;Rosenbrock函数的最优点位于狭长、平滑抛物线形山谷内,这导致算法在进行寻优时的方向难以稳定,进而使算法很难得到该函数的全局最优点,该函数一般常用来评价算法的执行效率;Rastrigrin和Griewank函数属于典型的非线性多模态函数,其具有广泛的搜索空间、较多的局部最优点,是一种优化算法难以处理的复杂多模态函数。4个函数的具体数学模型如下所示:
(1)Sphere函数模型
(2) Rosenbrock函数模型
[-100,100]
(3) Rastrigrin函数模型
[-10,10]
(4) Griewank函数模型
上面这4个函数的测试理论值都为0,为了验证分析改进后的混沌量子粒子群算法的先进性,分别使用PSO和CQPSO两种算法的进行函数的数值寻优,进而将两种算法的性能进行对比。所有实验中的种群规模分别是40和80,分别对应的是表1和表2中数据。
3.1.2实例结果与分析
从表1和表2可以看出,混沌量子粒子群算法在处理单峰函数的效果比较好。在处理其他3个函数的时候也去得了不错的效果。另外,从算法的迭代次数可以看出CQPSO算法在经历过PSO算法的一半后便有了比较好的寻优结果,这说明CQPSO算法在收敛速度方面也有比较好的效果。
表1 测试结果1
表2 测试结果2
3.2 电厂实例分析
3.2.1实例设置
满负荷运行这一工况进行仿真,从该工况下的数学模型可以看出,该模型具有较大的延迟和惯性,在使用PID控制时不易整定出理想的参数。本文现根据文献[10,11]的PID参数整定经验公式,初步整定出一个合适的初始PID参数,然后在该初始参数上分别使用标准粒子群(PSO)和混沌量子粒子群(CQPSO)算法进行参数的二次优化,通过仿真证明了混沌量子粒子群(CQPSO)算法的实用性和可行性,同时也证实改进后的算法要比标准粒子群(PSO)算法有更好的寻优效果。
3.2.2实例结果与分析
由前面提到的PID经验公式得出初始控制参数[12],经过仿真得出图4控制曲线输出结果。从图4的输出曲线可以看出,利用经验公式得出的控制参数可以得到较好的控制效果。在此基础之上,分别利用PSO和CQPSO算法进行参数优化,经过仿真得到图5的输出曲线,可以直观地看出CQPSO有更好的优化效果,在超调量以及调节时间上都有明显的提升。
图4 经验公式得到的PID曲线
图5 控制曲线对比图
从表3的数据对比来看,可以直接看出混沌量子粒子群算法具有较好的优化效果,能够优化得出更好的控制参数。
表3 不同参数下的指标对比
图6 定值扰情况下的曲线对比图
图6是在系统过渡到稳定后,改变系统的设定值产生定值扰的情况。从图6的曲线中可以看出,当系统出现定值扰动后,经过混沌量子粒子群算法优化的PID参数能够比较快的再次过渡到稳定的状态,其稳定性、快速性和准确性能够充分地在仿真中体现出来。
4 结论
工程中常规的Z-N法整定PID参数繁琐,本文采用的是PID经验公式方法,通过该公式可以比较方便的得出一个合适的PID控制参数。PID初始参数的确定,实质上可以缩小控制参数的寻优范围,进而降低了运算的次数,节约了寻优时间。
混沌量子粒子群算法利用混沌特性可以有效地改善种群陷入局部最优这一问题,同时利用粒子的量子特性增强了粒子群算法的全局寻优能力。针对300 MW循环流化床满负荷运行这一工况,通过PID经验公式首先获得一个合适的初始参数,在此基础之上,混沌量子算法有效的优化了PID控制器控制参数,进而使得整个控制效果得到改善,系统可以更加安全、稳定的运行。
参考文献:
[1]赵鹏旭.基于粒子群的群智能理论在系统优化中的应用研究[D].保定:华北电力大学,2015.
[2]刘明,王瑞.基于自适应遗传算法的改进PID参数优化[J].计算机测量与控制,2015,23(3):791-793.
[3]张家骏.基于粒子群算法的PID控制器参数优化研究[J].计算机仿真,2010,27(10):191-193+222.
[4]韦根原,王兵树,马磊,等.基于粒子群算法的1000MW火电机组模型辨识[J].计算机仿真,2013,30(7):400-403.
[5]杨传将,刘清,黄珍.一种量子粒子群算法的改进方法[J].计算技术与自动化,2009,28(1):100-103.
[6]孟令民,常喜茂.粒子群算法在系统辨识中的应用[J].数字技术与应用,2017,(6):144-145+149.
[7]韩璞.智能控制理论及应用[M].北京:中国电力出版社,2013.
[8]林星,冯斌,孙俊.混沌量子粒子群优化算法[J].计算机工程与设计,2008,(10):2610-2612.
[9]刘军民,高岳林.混沌粒子群优化算法[J].计算机应用,2008,2:322-325
[10]胡文斌,韩璞,孙明.热工系统PID参数整定公式的仿真研究[J].计算机仿真,2014,31(10):132-136.
[11]韩璞,于浩,曹喜果,等.基于经验整定公式的自适应PID控制算法研究[J].计算机仿真,2015,32(3):438-441.
[12]韩璞.控制系统数字仿真技术[M].北京:中国电力出版社,2007.