文献标识码:A
DOI:10.16157/j.issn.0258-7998.174984
中文引用格式:杨奕飞,尤奕栋. 基于IEM的动力定位PID控制器参数整定[J].电子技术应用,2018,44(5):89-92,102.
英文引用格式:Yang Yifei,You Yidong. Research on PID controller of dynamic positioning based on IEM algorithm[J]. Application of Electronic Technique,2018,44(5):89-92,102.
0 引言
近年来我国船舶工业和海洋事业处在高速发展期,船舶动力定位仍是一大研究热点。与传统的锚泊定位相比,动力定位因其定位精度高、机动性强且不受水深限制等优点,在海洋开发中备受青睐[1]。PID控制器作为最早被应用在船舶动力定位系统上的控制器,对于DP船舶控制精度要求特别高的系统,效果并不理想。最先应用于PID自整定的算法是Z-N PID整定法[2],随后神经网络[3]、遗传算法[4]、粒子群算法[5]等一系列算法都较好地提高了PID控制的适应性,但也存在许多不足,如控制易出现超调、振荡激烈或者策略复杂等。
类电磁机制(Electromagnetism-like Mechanism,EM)算法是由Birbil和Fang在2003年首次提出的一种基于人工智能的随机全局优化算法。该算法的优势在于具有简单的寻优机理、响应速度快、所需资源较少因而容易实现等,但是算法运行后期也存在会陷入局部最优的缺陷。为此,姜建国等人采用混沌-模式搜索方法,能有效跳出局部极值点进行局部搜索,但其搜索结果的好坏很大程度上依赖于初始点的选择[6];TAN J D等人提出了SPC的新搜索方案,设计一个非线性方程式,根据每次迭代中比较段的结果动态调整探针长度跳出局部最优,但是算法结构复杂,运行成本大大增加[7]。
针对以上问题,本文提出一种免疫类电磁机制(Immune Electromagnetism-like Mechanism,IEM)算法。PID控制器kp、ki、kd3个参数由IEM算法进行自整定,并与EM算法和粒子群优化(PSO)算法的仿真结果进行比较,验证了IEM算法的有效性。最后将基于IEM算法的船舶动力定位PID控制器进行仿真,仿真结果表明改进过后的控制器具有更好的控制效果。
1 船舶运动模型
1.1 船舶运动数学模型
船舶处于航向保持、航迹保持的操纵运动和动力定位中的定点位置保持时,可认为船舶只作三自由度的平面运动[8]。当只执行位置保持功能时速度值很小,科氏向心力和非线性阻尼可以忽略[9]。所以船舶动力定位低频运动数学模型为:
1.2 动力定位控制对象模型
现以一艘拖轮为受控对象,船舶参数如表1所示,附加质量的惯性矩阵和阻尼矩阵分别为:
在动力定位系统中,由常规试凑法得到的三自由度PID控制参数为:
纵荡:kp=156.07,ki=0.38,kd=115.78
橫荡:kp=114.15,ki=0.01,kd=175.87
艏摇:kp=4 645.43,ki=1.561,kd=147 127.54
由于常规PID控制器难以达到理想的控制效果,因此需要对PID控制参数进行整定。
2 IEM算法整定PID参数
2.1 EM算法
EM算法分成4个步骤,即初始化、局部搜索、计算合力和移动粒子[10]。带电粒子xi在EM算法中电荷量的计算公式如下:
2.2 IEM算法
为了解决EM算法后期容易陷入局部最优的缺陷,将生物免疫机制引入到算法中。该机制中,抗原代表了求解问题的目标函数,而抗体代表了问题的解[11-12]。在每次迭代过程中,除了EM算法的更新公式内产生N个粒子,还随机生成满足约束条件的M个粒子,以此来增加粒子的多样性。采用基于浓度机制的多样性保持策略,使得新一代粒子群体中各适应度层次的粒子维持一定的浓度。第i个粒子(抗体)的浓度定义为:
式(9)中粒子i被选中的概率和与该粒子相似的粒子数量成反比,其意义就在于即使粒子对应的适应度值较低,也有机会得到进化,从而保证了群体的多样性。
IEM算法的实现步骤如下:
(1)确定IEM算法的参数值,包括:种群规模N、种群维度n、最大迭代次数Maxgeneration、最小适应值minfit;
(2)随机生成N个粒子,形成初始种群,根据适应度函数计算出种群的适应值,将当前目标函数值f(xi)最优的粒子记为xbest;
(3)对最优粒子进行局部搜索;
(4)利用式(4)和式(5)分别计算出粒子的电荷量以及粒子间的作用力;
(5)根据式(6)移动粒子,找出粒子位置更新后的最优粒子,并将对应的位置粒子存入记忆库;
(6)随机生成M个粒子,同步骤(2),根据式(9)从N+M个粒子中依据选取概率大小来选取N个粒子;
(7)根据最小适应值和最大迭代次数判断是否迭代结束,并输出符合条件的最优粒子,否则转至步骤(3)。
2.3 IEM算法性能分析
本文选用两个具有不同特征的典型测试函数对改进后的算法进行测试,来验证IEM算法的优越性:
(1)Schwefel函数:
具体参数设置如下:种群规模N=20,种群维度n=10,最大迭代次数Maxgeneration=500,标准PSO算法中学习因子c1=c2=2,惯性因子ω=1。
图1为两个测试函数在不同算法优化后绘制成的迭代曲线。从图中可以看出,IEM算法无论在单峰Schwefel函数还是多峰Ackley函数中都具有较快的收敛速度。
表2为优化的结果数据,测试指标中的标准差可以用来评估算法的稳定性,而最优适应值和平均最优适应值可以用来分析算法的精度。从表中可以看出,IEM算法相比EM和PSO算法,在不同测试指标上均有数量级上的提升,因此IEM算法的稳定性更优,收敛精度更高。
2.4 IEM算法整定PID控制参数
本文分别用IEM算法、EM算法以及PSO算法对PID的参数进行了寻优,并通过时域性能指标来比较各算法寻优过后的阶跃响应。适应度函数选用ITAE指标:
以拖轮纵荡作为被控对象,在Simulink环境下建立的模型如图2所示。图中,输出端口1为式(12)所示的ITAE指标。在PID参数自整定过程中,将控制器的一组三维参数(kp,ki,kd)作为IEM算法的一个粒子,PID参数的整定转换为三维粒子的函数优化问题,通过IEM随机产生的粒子,依次对应各组参数,运行Simulink模型后可以得到各组参数的性能指标,并将其传递到IEM算法中对应粒子的适应度值。
仿真实验中,IEM算法参数选取如下:种群规模N=50,最大迭代次数Maxgeneration=100,种群维度n=3,最小适应值minfit=0.1;标准PSO算法中学习因子c1=c2=2,惯性因子ω=0.6。
表3列出了IEM、EM、PSO 3种算法整定过后的kp、ki和kd参数及性能指标。可以看出,IEM算法对PID控制器参数进具有更好的整定效果。
图3为IEM、EM、PSO 3种算法在控制对象G(s)的单位阶跃响应曲线。由图可知,采用IEM算法整定的PID控制器具有较快的响应速度、较短的调节时间,且超调和稳态误差也最小。
3 IEM-PID动力定位控制器仿真分析
以拖轮为对象,利用IEM算法对PID控制器的参数进行整定。取种群规模N=50,种群维度n=3,最大迭代次数Maxgeneration=100,最小适应值minfit=0.1。控制参数整定结果为:
纵荡:kp=45.22,ki=0.15,kd=52.74
橫荡:kp=55.13,ki=0.026,kd=76.62
艏摇:kp=3 976.78,ki=1.237,kd=131 799.54
为验证所设计的IEM-PID控制器性能,将其控制船舶三自由度运动效果,并与传统PID控制器在相同情况下进行对比。船舶起始位置为η=[0,0,0],给定船舶的期望位置为η=[20,30,10],仿真时间为500 s,仿真结果如图4所示。
由图4仿真结果可知,传统PID控制在纵荡、横荡、艏摇3个方向上响应的调节时间和超调量分别为123 s、61 s、58 s和30.24%、23.33%、29.3%。IEM-PID在这3个方向的调节时间分别为21 s、38 s、27 s,且在3个方向的响应曲线无超调。可见,IEM-PID控制器在调节时间、超调量以及稳态精度上都有显著提高,不仅能够满足控制需求,而且其控制效果也比传统PID更加优越。
4 结论
控制器的控制效果决定着船舶动力定位系统的精度和稳定性。IEM-PID控制器中的免疫类电磁机制算法基于浓度选择机制的粒子选择策略保留优良粒子,防止了算法优化性能退化。仿真结果表明,改进后的控制器在较大程度上提高了控制系统性能,有一定的实用价值。
参考文献
[1] 赵大威,边信黔,丁福光.非线性船舶动力定位控制器设计[J].哈尔滨工程大学学报,2011,32(1):57-61.
[2] KASILINGAM G,PASUPULETI J.A comparative study of the Z-N,adaptation law and PSO methods of tuning the PID controller of a synchronous machine[J].Canadian Journal of Cardiology,2014,7(6):918.
[3] RUANO A E,AZEVEDO A B.B-splines neural network assisted PID autotuning[J].International Journal of Adaptive Control & Signal Processing,2015,13(4):291-306.
[4] UNAL M,AK A,TOPUZ V,et al.Optimization of PID controllers using ant colony and genetic algorithms[M].Berlin,Heidelberg:Springer,2013.
[5] Liu Xiaoyong.Optimization design on fractional order PID controller based on adaptive particle swarm optimization algorithm[J].Nonlinear Dynamics,2016,84(1):379-386.
[6] 姜建国,王双记,刘永青,等.一种实用的类电磁机制算法[J].西安电子科技大学学报(自然科学版),2013,40(2):48-53.
[7] TAN J D,DAHARI M,KOH S P,et al.An improved electromagnetism-like algorithm for numerical optimization[J].Theoretical Computer Science,2016,641:75-84.
[8] Wang Liyun,Xiao Jianmei,Wang Xihuai.Ship dynamic positioning systems based on fuzzy predictive control[J].Telkomnika Indonesian Journal of Electrical Engineering,2013,11(11).
[9] 谢业海.海况变化时的船舶定点定位切换自适应控制研究[D].哈尔滨:哈尔滨工程大学,2013.
[10] 龙秀萍.类电磁机制算法研究[D].西安:西安电子科技大学,2012.
[11] ISTIN M,VISAN A,POP F,et al.Near-optimal scheduling based on immune algorithms in distributed environments[C].CISIS′10:Proceedings of the 2010 International Conference on Complex,Intelligent and Software Intensive Systems,2010:439-444.
[12] 贾文生,向淑文,杨剑锋,等.基于免疫粒子群算法的非合作博弈Nash均衡问题求解[J].计算机应用研究,2012,29(1):28-31.
作者信息:
杨奕飞1,2,尤奕栋1
(1.江苏科技大学 电子信息学院,江苏 镇江212003;2.南京理工大学 自动化学院,江苏 南京210094)