潘虹,杭晨阳,郑源
(河海大学能源与电气学院,江苏 南京 211100)
在水轮机调节系统中,调速器是十分重要的结构,而调速器的PID参数优化性能与水力机组调节性能之间有着较为密切的关联[1].良好的PID参数不仅能提高水轮机的运行效率,还可以避免许多机器故障[2],因此研究水轮机调节系统的PID参数寻优具有重要意义.在工程实践中,许多待寻优参数都需要人为确定,因此这部分的参数确定存在很大的经验性和主观性[3].能否建立一个准确、清晰且能够有效对水轮机调节系统进行仿真试验的模型直接影响着水轮机PID参数优化的精确度,但在实际研究中,建立水轮机调节系统的物理模型比较困难[4].因此,文中应用仿真建模软件进行模拟试验,以达到水轮机系统灵活可调且运行稳定的效果.
在引力搜索算法(gravitational search algorithm, GSA)[5]中,物质的运动方向都朝向惯性质量较大的粒子,待算法满足终止条件时,返回最大质量粒子的位置,即所求最优解值.但是常规的GSA方法有着过早成熟、后期迭代效率下降、难以跳出局部最优值等缺陷,对于这些问题,有学者提出了一些改进方法.KOUBA等[6]将改进GSA用于优化模糊逻辑和PID控制器增益的输入比例因子,并验证了所提控制策略的优越性.王云锋等[7]使用KBEST中的混沌模型,提出一种新的混沌GSA,并将其用于SVM参数的优化,验证了该算法在试验中计算精度和收敛效率均得到一定程度的优化.NIU等[8]为求解多水电站与太阳能光伏电站的协调运行模型,提出一种新的混合GSA,为解决复杂工程优化问题提供了一种有效可行的方法.然而上述方法依然存在一定不足之处,如编码过程繁琐、对运算设备要求高、计算过程复杂等.在此基础上,文中综合粒子群(particle swarm optimization, PSO)算法的优点对更新公式进行优化改进,提出一种改进的引力搜索算法,通过建模仿真方法,以国内某水电站参数为试验参考,对水轮机调速器PID参数仿真优化,以验证算法的有效性.
通常研究中所使用的发电机传递函数有多种类型可供选择,文中应用一阶发电机模型进行模拟仿真试验.PID控制器综合了PI与PD控制器的基本规律,从而达到最优控制效果[9],两者的传递函数分别为
(1)
(2)
式中:Ta,Td为机组惯性时间常数;s为拉普拉斯算子;en为受控系统的自调节系数;Kp,Ki,Kd分别为PID控制器中的比例、积分、微分增益系数.
在水电站引水系统中,水击压力对水轮机出力造成直接影响.刚性水击模型一般被用在压力管道长度小于800 m的情况下,其传递函数为
(3)
式中:H(s)为水头;Q(s)为流量;Tw为水流惯性时间常数.
对于一般的机组工况,其动态特性可以用刚性水击模型表示,考虑机组运行不同水头和接力器开度工况以及Tw对调节系统动态过程的影响,文中在Tw前引入水流修正系数Ky,此时水轮机模型可表示为
(4)
将上述几个部分数学表达式进行组合建模,应用MATLAB下的Simulink作为仿真试验平台.图1为本研究所用的水轮机调节系统模型.
(5)
(6)
式中:fiti(t)和Mi(t)分别为算法第t次迭代得到的适应度函数值和惯量;best(t)为整个粒子群的最优适应值;worst(t)为最差适应值.
根据牛顿万有引力公式,d维度上的粒子xi与粒子xj在t时刻的作用力为
(7)
式中:ε为极小常数;Rij(t) 为t时刻粒子Xi与Xj的欧式距离,即
Rij(t)=‖Xi(t),Xj(t)‖2,
(8)
G(t)为迭代t次时的引力系数,为了控制精度,G(t)会随着t的增大而减小,G(t)可表示为
(9)
其中G0为初始引力常数;α为衰减指数,为定常值;it和NGen分别为当前迭代次数以及最大迭代次数.
在此运算中,会产生一个随机数赋给i粒子的引力合力,该随机数介于0~1,其表达式为
(10)
式中:rand表示一个任意实数,在0至1之间随机生成.
此时,在d维空间上粒子i的加速度可表示为
(11)
综上,可以计算在d维度中粒子i的速度式和位置表达式分别为
(12)
(13)
粒子群优化算法[11]是利用粒子间的信息交流,在计算求解的过程中追踪并寻找适应值最好的粒子.该算法因其逻辑简单且对配置要求较低,被广泛应用于控制优化、系统调节等工程领域[12-13].
在传统PSO算法的基础上,刘小刚等[14]提出了一种伴随迭代次数变化而变化的PSO学习因子,算法中的c1和c2会跟随迭代次数的增大而自适应做出调整,提高了算法在解决工程优化问题中的普遍适应性及可行性.文中将这种不断变化的学习因子用于改进PSO算法.
(14)
(15)
传统的引力搜索算法中,当2个粒子相距较小时,粒子就会有陷入局部最优解而难以跳出的可能,后期迭代效率也会受到极大负面影响.在本研究中,首先融合了改进PSO算法的优势,然后引入一种自适应的惯性权重,提出一种改进的引力搜索算法.该算法从整体上提高了全局整体运动的速度,较大惯性质量的粒子运动方向受引而导向全局最优,同时每个粒子的个性运动方向又避免了全局粒子的同趋向性,从而增强了算法的优化能力,同时传统算法的迭代停滞等缺点也得到一定克服.此外,将改进粒子群算法的优势应用到引力搜索算法中,可使得粒子之间的群体信息共享得到优化改进.
种群间的“父代”速度对“子代”速度的影响程度由惯性权重参数ω反映,这在一定程度上对粒子的搜寻距离和搜寻速率有较大的作用[15].在文中的改进PSOGSA中,通过引入一种在前期取值较大、变化速率较慢而后期与之相反的惯性权重,使算法在整体搜索中的时间有所增长,使得算法能够在全局搜寻到最佳数据解的可能性极大提高,同时也进一步优化了算法求解精度.
ω=Maxfitcosh+randMinfit(1-cosh),
(16)
式中:ω为惯性权重,其值随迭代次数的增大而改变;Maxfit和Minfit分别为最大适应值和最小适应值的形参;h=πit/2NGen.
改进后的PSOGSA速度更新公式为
(17)
对引力搜索算法位置更新公式提出改进,以解决该算法易陷入局部最优极值的问题[16].当迭代次数增大时,粒子i的位置就会有一个趋向性的变化,表达式为
(18)
式中:μ和c分别表示位置和速度的权重.
在公式中引入μ和c后,其运动速率受到动态限制约束,每个粒子的运动状态都有很好的随机稳定性,进一步增强了算法自适应的能力.
时间乘以误差值绝对积分(ITAE)可以用来衡量控制系统性能优良度.本研究中选择的目标函数是离散ITAE指标,用于测试所提算法的性能,其表达式为
(19)
式中:N为取样点;T(k)为时序;x为频率响应曲线.
改进PSOGSA的流程如图2所示.
图2 改进算法的流程图
按照文中上述方法,以国内某水电站[17]作为原型参考,机组相关参数分别为额定水头66.00 m,初始水头69.67 m,额定转速136.4 r/min,额定流量144 m3/s,额定出力87 MW.
为了验证改进PSOGSA在水轮机调节系统PID参数优化中的效果,基于目标函数对传统粒子群算法(PSO)、传统引力搜索算法(GSA)、改进PSO以及改进PSOGSA进行对比分析.在固定参数的设置上,4种算法的最小适应值取0.01,群体规模统一取值为50,最大迭代次数取100.对于引力搜索算法GSA和改进PSOGSA,其重力常量初始值G0和衰减系数α分别取20和6.
基于上述理论,在5%空载频率扰动下,分别用4种算法对所建立水轮机调节系统模型进行PID参数优化,结果如表1所示.表中ξ为超调量,t为调节时间.可以看出:改进PSOGSA的平均最佳适应度值(ITAE)几乎与改进PSO算法一致;与其他算法相比较,改进PSOGSA所能实现的PID调节器的稳定时间以及超调量都明显小得多,说明该改进PSOGSA方案对水轮机调节系统PID参数优化做到了较好调节,具备一定的动态调节性能.
表1 PID参数调节结果
将上述4种算法分别设定在5%空载频率干扰以及永态转差系数为2%工况下,计算得到平均最佳适应度值ITAE,图3为ITAE收敛曲线,图中z为迭代次数.
图3 适应度函数收敛曲线
由图3可以看出:基础的PSO与GSA智能算法具有较多缺陷,其最终适应度值较大,表明此2种算法陷入了局部最优值而难以跳出,且这2种方法需要较多的迭代次数才逐步趋于稳定,迭代效率较低;改进PSOGSA在函数优化方面初始化效果更好,收敛速度更快,在第9次迭代时已经趋于收敛,具有更高的搜索精度,同时避免了早熟现象,有较好的跳出局部最优解的性能;相对于改进的PSO算法,改进PSOGSA收敛到极值所需的迭代次数平均减少了5次,且能找到更好的适应度函数值,验证了改进PSOGSA具有较好的适用性.
在5%空载频率扰动和负载扰动下,应用GSA算法、PSO算法、改进PSO算法和改进PSOGSA调整水轮机调节系统仿真模型,经过100次迭代运算,截取60 s时长为观测维度,所得系统响应曲线如图4所示,图中纵坐标Rf为频率相对变化率.可以看出:改进PSOGSA在水轮机调节系统的PID参数寻优上具有显著的优势,传统GSA算法与PSO算法的调节时间均在20 s以上,而改进PSOGSA的调节时间为18 s,且有更高的稳定性;相比较于改进PSO算法0.228 7%的超调量,改进PSOGSA的超调量可以减少至0.086 4%,远低于前者,验证了该算法能够有效对水轮机调速器系统PID参数实现较好的控制优化效果.
图4 系统响应曲线
通过在仿真环境下建立水轮机调速器系统模型,应用改进PSOGSA对水轮机调速器的PID参数进行计算和优化,得到结论如下:
1) 在5%频率扰动下,改进PSOGSA优化后的水轮机调节系统能够在18 s趋于稳定,且超调量只有0.086 4%,远低于其他智能优化算法.
2) 在适应度函数中,改进PSOGSA与改进PSO算法的ITAE值大致相等,但改进PSOGSA所得的初始化效果更好,且有更少的调节时间及更好的寻优结果.
3) 仿真结果显示,改进PSOGSA解决了基础GSA算法早熟且不易跳出局部最优解的缺陷问题.在搜索全局最优PID参数方面,相比较于其他3种算法,改进PSOGSA有更高的优化精度和更稳定的控制效果.