改进的BBO算法在PID参数整定中的应用*
2019-12-26邹红波
邹红波,柴 涛,鲍 刚
(三峡大学 电气与新能源学院,湖北 宜昌 443000)
0 引言
PID作为最经典的控制器[1]之一,在各个工业控制[2]领域都有广泛的应用,其控制性能的优劣,主要由Kp、Ki、Kd决定。对这三个参数整定是现在研究的一个重要方向,传统的PID参数整定[3]方法主要是根据数学模型[4]来进行理论计算,进而求得PID参数。但是人工计算繁琐,而且并不能精确的求得所需良好控制性能的PID参数。随着群智能算法以及人工智能的发展,PID参数的整定更加的智能化。杨智等[5]采用改进的粒子群算法对PID参数进行了优化;周蓓晨[6]等采用拟混沌人群搜索算法来整定PID参数;李远梅等[7]通过将萤火虫算法应用到PID参数整定中。上述方法都为PID参数整定提供了一个不错的思想,并且都提高了PID控制系统的稳定性。生物地理学优化算法(Biogeography-based optimization,BBO)[8]是一种新的群智能算法,该算法通过模拟自然界中物种的迁移规律来解决许多优化问题,模型简单明了,在许多性能上都表现出了比其他群智能算法更加优秀的性能。
和其他群智能算法[9]一样,BBO算法存在后期搜索能力弱的缺点。为了改善这个问题,本文将混沌映射[10]嵌入到选择算子中,增加算法的选择范围,并使种群多样化,并且在后期进行混沌搜索来加强算法的搜索能力,使算法跳出早熟陷阱,加快算法搜索最优解,最终达到全局最优。并将改进的BBO算法应用到PID参数整定中,提高了PID控制性能。
1 BBO算法
生物地理优化算法(BBO)是一种基于种群的算法,但它将群体中的每种解决方案视为栖息地,并将解决方案的适应度视为栖息地适应度指数(HSI)。 每个解决方案的分量就代表一个适应度变量(SIV),它通过模拟自然界中物种的迁移和突变过程来不断地更替群体来解决优化问题。个体迁入率λ和迁出率μ可看作为个体适应度函数。具有高适应度的栖息地具有更多物种种类,所以迁入率λ低,迁出率μ高。相反,栖息地适应度低,迁入率λ高,而迁出率μ低。
物种的迁移模型[11]有很多种,可以将它简化为不同的数学模型。如下为简单的线性迁移模型:
(1)
(2)
图1所示是常用的线性迁移模型。将栖息地最大种群数量设为Smax=n,s为种群数量,I为最大迁入率,E为最大迁出率。从图1中可以看出当栖息地中物种数量为0时,其迁入率λ最大,迁出率μ为0;随着物种的迁移,物种数量也会随之增加,当栖息地中的物种数量越来越多时,其它物种迁入到这个栖息地的概率就会减小;而迁出的概率就会增大,即迁出率μ逐渐增大;由图1可知,当栖息地上的物种达到顶峰Smax时,迁入率λ会减小到零,而此时迁出率μ最大。BBO算法主要包括迁移和变异两个操作。
图1 线性迁移模型
本文采用的是文献[11]中的余弦迁移模型,使其更加符合自然规律,S表示种群数量。如图2所示。
图2 余弦迁移模型
其数学公式如下:
(3)
(4)
传统BBO算法采用的是最简单的线性迁移模型,但是并不能反映出生态系统迁移的本质,而采用余弦迁移模型能更加贴切生物种群的迁移规律,增加种群的多样性。
BBO算法的变异操作也是根据物种的数量概率P(si)对栖息地的特征分量进行变异,这样就提高了种群的多样性。栖息地的适应度过高或者过低时,相对应栖息地的物种数量概率都比较低;但适应度处于中等水平时,物种数量的概率相对较高。当一个栖息地的物种数量概率过低时,则表示其方案可行性低,若将其变异,有可能使其变成更好的方案。所以,变异率与物种的数量概率成反比,相应的函数如式(5)所示:
(5)
式中,mmax为最大突变率;Pmax为P(Si)中的最大值,i=1,…N,N为种群中的总数。
2 改进的BBO算法
2.1 混沌映射
混沌系统是随机的不规则运动,其行为主要表现为不确定性、不可重复、不可预测[12]。在混沌的发展中已经出现了许多混沌映射,比如logistic 映射[13]、帐篷映射[14]、切比雪夫映射[15]等。最常用的一种就是logistic 映射,如下所示:
yk+1=μyk(1-yk)
(6)
式中,k表示为迭代次数,k=1,…,K,K为最大的迭代次数。μ为控制系数,当μ=4,y1∈(0, 1),且y1≠{0.25, 0.5, 0.75}时,方程式(6)处于混沌状态。
上述的混沌范围是处于(0,1)之间,本文所要采用的另一种混沌映射如下:
(7)
当取值y1=0.7,α=0.4,β=2.8 时,方程式(7)处于混沌状态,并且其产生的混沌解位于(-0.9,0.9)比logistic 映射解的范围大,更加有利于搜索。文后算法均采用此参数设定。
2.2 具有混沌映射的生物地理学优化算法(CBBO)
CBBO的原理是在迁移操作的过程中采用混沌映射生成的值来取代rand产生[0,1]的随机值概率,如下:
rand→yk
其中,yk为式(7)的解,经过变换后选择算子的选择范围将扩大。在算法后期搜索能力不强时,将得到的每一组解进行k次混沌搜索,得到新的个体,用新个体取代旧个体。进行混沌搜索的公式如下:
Xkbest=Xbest+yk
(8)
式中,yk为方程式(7)的解。
混沌映射生物地理学优化算法的流程表示为:
(1)产生初始种群,设定种群规模为P,最大迭代次数K,最大迁移率和迁出率I=E,最大突变率Mmax。
(2)计算种群所处栖息地的适宜度指数(HSI),进行比较,保留HSI最高的栖息地。判断是否满足条件,满足,则输出;否则,继续执行下面步骤。
(3)由式(3)、式(4)计算出每个解的迁入率λ和迁出率μ。
(4)将迁入率λ、迁入率μ与混沌映射概率(yk)进行比较,选择需要迁入和迁出的栖息地H。重新组合成新的栖息地H′,计算H′适宜度指数(HSI),更新栖息地。
(5)根据式(5)进行变异操作
(6)根据式(8)混沌映射进行混沌搜索
(7)更新每个栖息地的适应度变量(SIV)和每个栖息地的适应度指数(HSI),并保存最佳解
(8)若满足迭代停止条件,则停止;不满足,重复步骤(3)。
3 基于CBBO算法PID参数整定
PID作为经典的控制器,从提出到现在,一直都是人们研究的热点,但是其参数的整定一直是个难点,确定一组合适的参数对于PID的控制性能是一个质的飞跃。传统的整定方法不能够满足现有工业最优控制的要求,如Z-N整定。随着群智能算法的兴起,优化能力的提升,这给PID参数整定提供了新的思路。PID的数学表达式如下:
(9)
式中,Kp为比例系数,Ki积分系数,Kd为微分系数。所谓的参数整定,就是当PID的控制性能达到最优时,得到的上面3个系数,此时的系数可作为最佳系数。本文采用CBBO算法来优化这3个系数,将这3个参数作为CBBO算法的适应度变量,适应度函数的选择常常根据其性能指标来选择,常见评判控制性能的指标有,时间乘绝对误差积分(ITAE)、时间乘平方误差积分(ITSE)、平方误差积分(ISE)、绝对误差积分(IAE)。常用来作为评判指标的是ITAE,同时考虑超调量和上升时间,可将式(10)作为算法的适应度函数:
(10)
其中,e(t)为实际输出与期望输出偏差,T为上升时间,δ为超调量。
4 仿真分析
4.1 算法性能测试
为了验证CBBO算法的优化性能,将CBBO算法与原始的BBO算法以及传统的蚁群算法(Ant Colony Optimization, ACO)、粒子群算法(Particle Swarm Optimization,PSO)、遗传算法(Genetic Algorithm,GA)算法进行寻优比较,选择了Sphere、Schwefel、Ackley、Quartic这4个经典测试函数来进行仿真测试,每个函数的维度均为20,最小值为0。将各算法的种群数设置为P=50,迭代次数为K=150次。其他参数设置见文献[8]。4个函数公式及变量范围如下:
各个算法对4个经典测试函数的寻优结果见表1,寻优曲线见图3。
表1 ACO、PSO、GA、BBO、CBBO算法的寻优结果
(a) Sphere
(b) Schwefel
(c) Quartic
(d) Ackley 图3 各算法的迭代曲线
从表1中可以看出,CBBO的最优值和平均值均小于BBO算法以及其他群智能算法,反映了改进后的CBBO算法在寻优精度方面都更加优秀,标准差的大小意味着算法的稳定性,而CBBO的标准差也小于相比较的算法,说明改进后算法的稳定性也优于BBO、PSO、ACO、GA算法。
从图3迭代曲线可以看出,横坐标是迭代次数,纵坐标为最优值的对数值,CBBO算法无论是在收敛速度还是在后期跳出局部最优时的能力都要优于BBO、PSO、ACO、GA算法,正是加入了混沌映射,使算法在后期搜索无力时,增加算法的搜索能力,加快了算法的搜索速度并提高了算法的精度。
从上述CBBO的搜索精度和收敛速度来看,整体的优化性能是高于其他几种算法的,所以,该改进方法是可行有效的。
4.2 PID参数的整定
为了验证CBBO算法的优化性能,选择如下传递函数作为PID控制器的受控对象,数学表达式如下:
(11)
采用BBO算法和CBBO算法来进行对比,两者均将式(10)作为适应度函数进行寻优,找出一组最适合的参数(Kp、Ki、Kd)来满足系统控制性能的要求。算法参数设置为:总种群数为100,迭代次数为30,突变率为0.5,其他参数设置与文献[8]中的一样。仿真结果见表2。HSI迭代曲线和PID阶跃曲线如图4所示。
图4a反映了适宜度函数随着迭代次数的变化情况,可以明显的看到BBO算法极易陷入早熟,很快就达到了最优解,而CBBO算法能够跳出早熟,继续搜索其最优解,最终达到全局最优,可以得出CBBO算法的收敛速度以及精度均要优于BBO,图4b反映的是PID整定后的阶跃曲线图。
根据表1和图4可以看到经CBBO算法的优化后,PID控制器的控制性能更加优越,虽然在上升时间上面未能表现出优势,但是在其超调量、调节时间等方面均体现出了不错的优势,并且在第25s处加入一个幅值为0.2 的干扰,可以看到被CBBO优化后的PID控制器振荡更小,调节时间更短,在相同的干扰下,其恢复能力更强,表明在CBBO算法的优化后,PID控制器的抗干扰能力得到了提高。
表2 BBO、CBBO对PID参数整定的响应性能
(a) 适宜度函数随迭代次数变化曲线
(b) 阶跃曲线图 图4 HSI迭代曲线与PID阶跃曲线
5 结论
本文通过对BBO算法的改进,引入余弦迁移模型、嵌入混沌映射来改善BBO算法在前期易早熟、后期搜索能力不强的缺点,并将改进的BBO算法应用到PID参数整定中,仿真算例表明:改进后的BBO算法在收敛速度以及精度方面都得到了提高,对PID参数整定后的控制器,拥有良好的鲁棒性、超调小以及调节时间短的控制性能。