基于PSO算法的PID控制器参数优化研究分析*

2014-08-08 06:00林园胜
关键词:实时性性能指标复杂度

陈 亮, 江 明, 林园胜

(安徽工程大学 安徽省检测技术与节能装置重点实验室,安徽 芜湖 241000)

在控制工程中,PID控制是最早发展起来的得到广泛应用的控制策略之一,是指将偏差的比例、积分和微分通过线性组合构成控制量,对被控对象进行控制,具有结构简单、易于实现、鲁棒性好等特点。PID控制设计的核心问题就是根据被控对象的不同特性来确定P、I、D等3个参数的大小。传统的PID控制参数主要通过人工经验来调整,显然这种方法主观性太强,移植性差,也不能保证控制最优。早期用来优化PID控制器参数的方法[1]主要有Ziegler-Nichols动态特性法、Cohen-Coon响应曲线法、ISE积分平方准则整定法。近些年随着智能控制算法的兴起,出现了专家智能型PID参数自整定技术、基于Fuzzy算法的PID参数自整定技术、基于GA的PID参数自整定技术、基于蚁群算法的PID参数自整定技术等,与传统方法相比,这些方法都取得了更好的控制效果,但也存在算法复杂、适用性不强等不足。

粒子群算法[2,3](PSO)作为一种群体智能算法,源于对鸟类捕食行为的研究,概念简单,输入参数较少,易于实现,通用性强,收敛速度快,目前已广泛应用于参数优化、神经网络训练、模糊系统控制、系统辨识等许多领域。为了避免PSO算法早熟收敛[4],并加快其收敛速度,提高实时性,一些改进的PSO算法相继提出,如Shi[5]等人提出了基于线性递减权重的 PSO 算法;Clerc[6]提出在 PSO 中加入压缩因子K;文献[7,8]根据混沌具有遍历性、随机性等特点,在PSO中嵌入混沌序列,不过这些算法并没有从根本上解决早熟收敛的问题,同时增加了复杂度,忽略了实时性。从PSO算法的基本原理出发,将其运用到PID控制器参数优化当中,通过与GA算法、一些改进的PSO算法仿真结果作对比,可以得出PSO仍可继续应用于PID控制器参数优化当中。

1 问题描述

PID控制器的系统结构图如下图1所示。PID控制器的优化问题[9]就是在可行域范围内确定一组合适的参数Kp、Ki和Kd,使其适应度函数达到最优。常用的误差性能指标包括ISE、IAE、ITAE、ISTE等,这里选用ITAE指标,其定义为

(1)

图1 PID控制器结构图

以不稳定系统

(2)

在Matlab的Simulink环境中建立模型如图2所示。图2中,输出端口1即为式(1)所示的ITAE指标,通过将时间及误差绝对值的乘积进行积分后得到。

图2 PID控制器系统模型

图3 PSO对PID控制器参数优化流程图

2 粒子群算法优化

2.1 算法流程

利用粒子群算法对PID控制器的参数进行优化设计,其流程图如图3所示。粒子群算法与Simulink模型之间连接的桥梁是粒子(即PID控制器参数)和该粒子对应的适应值(即控制系统的性能指标)。算法步骤如下:

(1) 初始化粒子群,随机产生所有粒子的位置和速度,并确定粒子的Pt和Gt;

(2) 对每个粒子,将其适应值与该粒子所经历过的最优位置Pt的适应值进行比较,若较好,则将其作为当前的Pt;

(3) 对每个粒子,将其适应值与整个粒子群所经历过的最优位置Gt的适应值进行比较,若较好,则将其作为当前的Gt;

(4) 按式(3)更新粒子的速度和位置;

(5) 若无满足终止条件(通常为预设的最大迭代次数和适应值下限值),则返回步骤(2);否则退出算法,得出最优解。

2.2 算法实现

粒子在搜索空间中的速度和位置由式(3)确定:

(3)

其中,x表示粒子的位置;v表示粒子的速度;ω为惯性因子;c1、c2为加速常数;r1、r2为[0,1]区间的随机数;Pt是粒子迄今为止搜索到的最优位置;Gt是整个粒子群迄今为止搜索到的最优位置。

参数设置如下:惯性因子ω=0.6,加速常数c1=c2=2,维数为3(3个待优化参数Kp、Ki和Kd),粒子群规模设为100,即算法的迭代次数为100,最小适应值为0.1,速度范围为[-1,1],3个待优化参数范围为[0,300]。

3 仿真结果及分析

在Matlab环境中运行相关程序后,得PID控制器3个参数Kp、Ki和Kd的变化曲线和性能指标ITAE的变化曲线,如图4、图5所示。由图4可见,大约在迭代55次后,最优控制器参数及性能指标趋于稳定,分别为Kp=33.539 9,Ki=0.166 2,Kd=38.677 2,ITAE=1.058 0。在PSO算法过程中,性能指标ITAE不断减小,PSO不断寻找更优的控制参数以逼近设置好的指标;对于不稳定的控制对象,由PSO设计出的PID控制器使得Kp、Ki和Kd配置合理,很好地控制了对象,达到了预期的效果。同时本文就其他改进的PID控制优化算法作对比,统计如下表1所示。

图4 Kp、Ki、Kd变化曲线

图5 ITAE变化曲线

表1各种算法对比统计

算法KpKiKd性能指标迭代次数GA209.941.14244.491.13100文献[10]36.70.2146.531.4147文献[11]33.20.1741.231.3844文献[12]33.080.1438.421.0338PSO33.540.1738.681.0655

由表1可知,PSO算法较GA算法,减少了迭代次数,意味着减少了运算时间,提高了实时性,同时在性能上也略有提高;一些改进的PSO算法,例如文献[10]和文献[11]中的算法,增加了算法的复杂度,以降低性能指标来平衡实时性,而文献[12]中的算法通过增加算法的复杂度对性能指标的提高不够明显,看似迭代次数减少,但由于每次迭代的时间增加,其实时性也待商榷;显然PSO算法兼顾了算法复杂度、实时性和性能等综合因素,目前仍不失为一种良好的PID控制器优化算法。

4 结束语

PID控制作为一种经典控制理论,到目前为止仍广泛应用到各个领域,涉及工业现场控制、现代农业、智能交通、医疗、军事、航天等。本文从PSO算法的基本原理出发,将其运用到PID控制器参数优化当中,通过与GA算法、一些改进的PSO算法仿真结果作对比,可以得出PSO仍可继续应用于PID控制器参数优化当中。

参考文献:

[1] 史峰,王辉,郁磊,胡斐.MATLAB智能算法30个案例分析[M].北京:北京航空航天大学出版社,2011:137-143

[2] 胡会超.粒子群优化算法研究进展[J].冶金自动化,2013(S1):199-202

[3] EBERHART R C,SHI Y H. Particle Swarm Optimization:Developments,Applications and Resources[C]. Proceedings of the IEEE Conference on Evolutionary Computation,2001(1):81-86

[4] 杨恢先,刘子文,汪俊,王绪四,谢鹏鹤.改进的PSO混合算法[J].计算机应用,2010,30(6):1516-1519

[5] SHI Y,EBERHART R.A modified particle swarm optimizer[C]//Proc of IEEE International Conference on Evolutionary Computation Proceedings.1998:69-73

[6] CLERC M. The swarm and the queen:towards a deterministic and adaptive particle swarm optimization[C]//Proc of IEEE Congress on Evolutionary Computation.1999:1951-1957

[7] CHUANG L,HSIAO C,YANG C,et al. Chaotic particle swarm optimization for data clustering [J].Expert Systems with Applications,2011,38(12):14555-14563

[8] 李莉.基于自适应参数与混沌搜索的PSO算法求解柔性作业车间调度问题[J].计算机应用,2012,32(7):1932-1934

[9] 张德丰.MATLAB自动控制系统设计[M].北京:机械工业出版社,2010

[10] 肖理庆,邵晓根,石天明等.利用改进粒子群算法整定PID参数[J].计算机应用,2010,30(6):1547-1549

[11] 杨智,陈志堂,范正平.基于改进粒子群优化算法的 PID 控制器整定[J].控制理论与应用,2010,27(10):1345-1352

[12] 胡伟,徐福缘.基于改进粒子群算法的PID控制器参数自整定[J].计算机应用研究,2012,5(29):1791-1794

猜你喜欢
实时性性能指标复杂度
沥青胶结料基本高温性能指标相关性研究
北斗卫星空间信号故障与监测性能指标定义
一种低复杂度的惯性/GNSS矢量深组合方法
求图上广探树的时间复杂度
航空电子AFDX与AVB传输实时性抗干扰对比
自动控制系统的优劣评价分析
计算机控制系统实时性的提高策略
储热水箱分层性能指标的研究进展
某雷达导51 头中心控制软件圈复杂度分析与改进
出口技术复杂度研究回顾与评述