首页 > 范文大全 > 正文

基于遗传算法的减摇鳍PID控制器优化

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于遗传算法的减摇鳍PID控制器优化范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:该文研究了一类引入学习过程的新遗传算法。采用新遗传算法对减摇鳍PID控制器参数进行优化,以尽量减小船舶横摇为目标。进行了两种海情的仿真,得到优化的参数和横摇角运动曲线,并将之与传统的单纯形法进行比较,证实了引入学习过程的遗传算法在线性情况下的优越性。

关键词:减摇鳍;遗传算法

中图分类号:TP391文献标识码:A文章编号:1009-3044(2011)11-2642-03

Optimization the PID Controller of Fin Stabilizer Based on Genetic Algorithm

ZHU Hong-hua, HUANG Yong-hua

(Telecommunication Department, Putian University, Putian 351100, China)

Abstract: Design of a new GA which inquired a learning process which can effectively overcome the drawbacks of classical GA.Uses the new genetic algorithm to carry on the optimization to the parameter of Fin stabilizer PID controller, take as far as possible reduces the ships rolling as the goal. Has carried on two kind of sea sentiment simulation, obtains the optimized parameter and the rolling angular motion curve, and carry on the comparison with the traditional simplex method, confirmed the new GA is more useful in linear circumstances.

Key words: Fin stabilizer; genetic algorithm

1 船舶减摇控制研究的意义

人类文明的进步与海洋运输密切相关。舰船在海上航行、工作时,由于受到海浪、海风以及海流等海洋环境扰动的作用,不可避免的要产生摇荡运动。由于船舶经常需要航行在波涛汹涌的水面上,剧烈的摇荡对舰船的适航性、安全性、以及设备的正常工作、货物的固定和乘员的舒适性都会有很大的影响。对于军船来说,剧烈的摇荡会影响舰载飞机的正常起降,延误战机;还会使火炮无法精确地命中目标,以至于在战争中处于被动地位。因此,为了船舶的航行安全以及提高航行中的舒适性,船舶减摇一直是人们不懈努力的目标。[1]

2 引入学习过程的新遗传算法[2-3]

引入学习过程的遗传算法基本步骤如下所示:

步骤1:参数编码;

步骤2:生成初始种群;

步骤3:计算适应度值,判断是否满足条件。满足则解码,寻优结束;不满足转步骤4;

步骤4:进行复制、交叉和变异的遗传操作;

步骤5:相互学习;

步骤6:生成新种群,转步骤3。

2.1 学习过程的设计

基本原理如下:首先在这新一代的群体中辨别出较优良的个体群和较差的个体群,使这两个子群体随机互相学习。进而提出了两个学习概率PL1(较差的个体向较优秀的个体学习的概率)和PL2(较优秀的个体向较差的个体学习的概率)。

具体的学习方法如下所示(群体规模为N,终止进化代数为G):

1)将群体中的个体按其所对应的适应度按由小到大排序,将1到N/2的个体组成的群体作为较差的子群体,1+N/2到N的个体组成的群体作为较优良的群体;

2)学习概率的确定原则:a)为避免早期较差向较优秀个体学习过度造成模式垄断,带来早熟收敛,早期的PL1应较小;b)为避免早期优秀个体的模式垄断,且较差个体被淘汰有可能造成一些优秀模式的丢失使群体多样性低,应使早期优秀个体向差的个体的学习概率较大,即早期PL2应较大;c)为避免后期快要接近最优解时在最优解附近振荡的问题,应增大差个体向优秀个体的学习概率PL1,减小优秀个体向差个体的学习概率PL2。具体方式如下:

设定PL1和 PL2初始值为PL10和 PL20,

(1)

(2)

显然,PL1随着进化的开展越来越大,PL2随着进化的开展越来越小。

3)学习方式:较差的子群体与较优秀的子群体互相随机学习,以下以二进制编码为例说明个体如何向别的个体学习。假设a1=01000为一较差的个体(即所对应的适应度值较低),a2=10111为一较优秀的个体(即所对应的适应度值较高)。a1向a2按概率PL1(较差的个体向较优秀的个体学习的概率)学习,即产生一0~1的随机数temp,若PL1>temp,则随机的将a1中的一位用a2代替。假设为第2位,则

a1=01|000a2=10|111a3=01111

a3为学习后的新个体。较优个体向较差个体的学习方法类似。此为单点学习,根据编码的长度可考虑两点学习和多点学习,方法类似。

3 基于遗传算法的减摇鳍pid控制器优化设计

3.1 引入学习过程的遗传算法的参数选择

PID控制器具有直观、实现简单和鲁棒性好等特点,现在在减摇鳍系统中大多使用PID控制器控制。PID控制是工业过程控制中应用最广的策略之一,因此PID控制器参数的优化成为人们关注的问题。目前PID参数整定的方法很多,如间接寻优法、梯度法、爬山法、单纯形法、专家整定法等。虽然这些算法具有良好的寻优特性,但都存在着一些弊端,如单纯形法对初值比较敏感,容易陷入局部最优解;专家整定法则需要太多的经验。随着遗传算法理论的研究与发展,它在搜索和参数寻优方面的能力和优势得到了普遍的认可,出现许多基于遗传算法的PID控制器。[4]

1)编码方法的确定

在编码表示精度上,二进制编码虽然不如实数编码,但是在减摇鳍PID控制器参数优化中,对码串的精度要求不是太高,而且在进行交叉操作时,二进制编码比十进制编码搜索能力强,所以在编码方案的选择上,选择了较为简单的二进制编码。

在减摇鳍PID控制器参数优化中,本文选用45位二进制编码,KP1、KI1、KD1三个参数各占15位。首先根据实际减摇鳍工程应用中的经验,确定KP1、KI1、KD1三个参数的大致变化范围。设KP1变化的最大值为KPmax,对应的编码串为111111111111111,设KP1变化的最小值为KPmin,对应的编码串为000000000000000。KP1的表示值和实际值有如下关系[5]:

(3)

其中,binreplace(t)是由l位字符串所表示的二进制整数。KI1、KD1的编码过程和KP1相似。然后将KP1、KI1、KD1三个参数对应的0、1串连在一起,得到一个45位的二进制字符串,即代表减摇鳍PID控制器最佳参数的一个可能解。

2)适应度函数的确定

遗传算法的适应度函数是和应用对象密切相关的,所以必须研究减摇鳍控制系统的性能指标。

对于控制系统来说,保证控制系统的稳定性是控制系统得以正常工作的必要条件。而对于减摇鳍控制系统来说,其稳定性是与横摇角正相关的;另一方面,从控制效果来说,也就是减摇的效果,也必须使横摇角越小越好。因此,把横摇角方差作为性能指标中主要的一项:

(4)

式中λ1为加权系数,σ2 φ为横摇角的方差

另一方面,鳍的能量损失和使用寿命也是系统需要考虑的一个问题。因为减摇鳍的最大工作鳍角是有一定限度的,不可能为了将横摇角达到要求而使鳍角任意大;而且在高海情的情况下,驱动鳍的随动系统也经常处于高负荷的状态下,影响到鳍的使用寿命。由于鳍的能量损失和使用寿命与鳍角饱和率息息相关,因此在性能指标中要考虑鳍角饱和率。鳍角的幅值服从瑞利分布,可得鳍角βf超过最大鳍角βmax的概率为

(5)

式中,σ2 β表示鳍角方差。一般βmax=22°。实际应用表明,鳍角饱和率在13.5%左右最理想,既能保证随动系统有良好的工况条件,充分发挥鳍的工作能力,又能使系统有良好的减摇效果。所以第二顶性能指标为

(6)

其中λ2为加权系数,ρ为鳍角饱和率。

综合式(4)和(6)可得系统的性能指标为 (7)

由于鳍角的最大饱和率一般不超过20%。将ρβ=20%代入式(5),可以得到相应的鳍角方差

(8)

因此,性能指标可以改写为

(9)

λ1和λ2合并为λ,可以避免加权系数的选取困难。但是上式中当σ2 β小于150.31时,第二项会随差σ2 β的减小而增大,这给λ的选取带来了很大的困难,因此将上式改变为如下形式

(10)

减摇鳍控制系统的目的是使性能指标达到最小值,但在遗传算法中,由于适应度函数要进行比较排序并在此基础上计算选择概率,因此适应度函数应该为非负值,而且要求随着解质量的提高而增加,所以适应度函数[5]为 (11)

3.2 线性情况下基于新遗传算法的优化

3.2.1 算法实现

采用引入学习的遗传算法,复制采用适应度比例法,交叉采用单点交叉,变异采用简单变异,编码采用符号编码。群体规模N=30;终止代数G=150;交叉概率Pc=0.80,;变异概率Pm=0.05;学习概率。

3.2.2 仿真实验

进行了两种海情的仿真:

有义波高为2.6m,航速为15节,两种遭遇浪45°和90°;

有义波高为3.6m,航速为19节,两种遭遇浪45°和90°。

仿真结果见表1,表2(表中闭环表示有使用减摇鳍,开环表示没有使用减摇鳍;φ表示横摇角均值;n表示减摇倍数;ρ表示鳍角饱和率)和图1,图2。

由于以前的减摇鳍PID控制器参数优化大多采用应用比较广泛的单纯形法。为了将遗传算法的优化结果同单纯形法优化结果进行对比,本文又用了单纯形法对减摇鳍PID控制器进行优化。仿真结果见表3,表4和图3。

3.2.3 仿真结果分析

从表1~4和图1~3可以发现,在线性情况下,采用引入学习过程的遗传算法的寻优结果要略优于单纯形法,两者得到的最优PID参数都比较接近,基本上都能达到全局最优。在各种情况下得到的最优PID参数均能使减摇效果达90%左右,同时保证鳍角饱和率在20%左右,控制效果相当不错。但是单纯形法花费的时间相对短一些,所以在线性情况下,引入学习过程遗传算法并不比单纯形法优越多少。

图3 有义波高3.6m,遭遇浪45度闭环状态下横摇角运动曲线(单纯形法)

参考文献:

[1] 金鸿章,姚绪梁.船舶控制原理[M].哈尔滨:哈尔滨工程大学出版社,2001.

[2] 雷英杰,张善文,李续武.MATLAB遗传算法工具箱及其应用[M].西安:西安电子科技大学出版社,2005:22-30.

[3] 胡艳艳,蔡建立.一类新遗传算法[J].厦门大学学报:自然科学版,2006(5).

[4] COLLINS R J.Studies in artificial evolution[M].California:The University of California Press,1992:20-40.

[5] 金鸿章,王科俊,何琳.遗传算法理论及其在船舶横摇运动控制中的应用[M].哈尔滨:哈尔滨工程大学出版社,2005.