锚泊系统在船舶与海洋工程中的应用十分广泛。而传统的永久或半永久多点锚泊定位系统,其给定的锚链预张力在随后的环境扰动下不再改变,即锚泊系统各个方向上将被动地响应外界干扰(风,浪,流),承受不同的环境力而间接地造成锚链张力的分布不平衡。而且,随着船舶水平位移的不断累积,最终会导致单根或多根锚链张力过大或过小,造成锚链的疲劳断裂或能量的浪费[1]。若船舶在受到外界环境载荷作用时,其锚泊系统的锚链张力阈值能够随扰动进行合理地优化分配[2],则船舶就能发挥各锚链的定位能力而避免其安全隐患。因此,在以保证船舶误差范围内定位为前提[3],研究环境扰动下张力的合理分配问题对于工程船舶作业的安全性很有必要。
遗传算法(GA)作为全局随机概率搜索算法,其本身具有较强的鲁棒性,扩展性和高效的并行计算处理能力,为解决复杂优化问题提供了一种有效地途径。但是,算法固有的缺陷,如早熟、收敛速度缓慢和稳定性差等问题难以有效地应用于实际工程中。国内外许多学者通过对算法不断研究改进来提高算法的性能。文献[4]在配对个体中以精英策略防止早熟;文献[5]研究了编码类型的不同对遗传算法性能的影响;文献[6]采用模拟退火和免疫混合算法来实现全局最优,保证种群多样性以提高软件测试效率;文献[7]从全局角度提出一种改进自适应算法(IAGA)提高全局搜索和收敛能力。以上方法分别从不同方面改善了算法性能,但忽略了选择交叉个体间的相似性,搜索解方向性的保持以及交叉和变异率选择的盲目性。因此,本文基于张力优化模型,利用非线性规划局部搜索特点,结合相似度选择交叉配对的个体并改进交叉、变异自适应操作策略以及将量子变异和灾变作为自适应辅助算子引入遗传算法的2种改进算法来提高系统的运行效率和定位要求。并将其应用于船舶实际作业环境的张力分配问题中,比较相同工况下,张力分配算法在收敛性,稳定性方面的变化。仿真结果表明:改进算法具有更好地优化精度和收敛性能。
1 锚链张力优化模型对于传统的锚泊定位系统,当船舶受到环境扰动力与锚链的总回复力相平衡时[8],船舶处于新平衡位置,但此时船舶的各锚链张力可能分布极不平衡。为防止由此产生的锚泊定位安全问题,可利用锚机收放锚链改变张力大小,确保船舶定位与作业安全要求。那如何随作业环境要求而改变张力呢?这就是张力分配问题。张力分配应保证各锚链张力合理分布[9, 10]。定义锚链张力优化的目标函数:两两锚链张力差的平方和为最小,其数学模型如式(1)所示,实际应用中数学模型需要附加约束条件。
$\min {\kern 1pt} {\kern 1pt} {\kern 1pt} F = {\sum\limits_{i = 1}^8 {{\kern 1pt} \sum\limits_{j = 1}^8 {({T_i} - {T_j})^2} } }\text{。}$ | (1) |
以图1所示8根锚链工程船为例,约束条件由船舶定位要求与锚链安全确定。船舶位置约束[11]如等式(2)所示,锚链安全约束如不等式(3)所示。
$\left\{ \begin{gathered} \sum\limits_{i = 1}^8 {{T_i}\cos {\phi _i} = {F_{{x}}}}, \; \hfill \\ \sum\limits_{i = 1}^8 {{T_i}\sin {\phi _i} = {F_{{y}}}}, \hfill \\ \sum\limits_{i = 1}^8 {{T_i}{d_i}( - \cos {\phi _i}\sin {\theta _i} + \sin {\phi _i}\cos {\theta _i}) = N}\text{。} \hfill \\ \end{gathered} \right.\;\;\;\;\;\;\;\;\;\;\;\;\;$ | (2) |
${T_{\min }} \leqslant {T_i} \leqslant {T_{{{max}}}},1 \leqslant i \leqslant {{8}},$ | (3) |
式中:
遗传算法(GA)由于不依赖于优化函数本身的特性而被广泛应用。但在实际工程优化应用中,往往存在高维变量和复杂的约束条件,使得标准遗传算法很容易陷入早熟收敛,后期进化缓慢和多样性保持不好的问题。针对这些缺陷,本文进行改进。
2.1 改进遗传算法1(IGA1) 2.1.1 算法改进思路通过分析知,张力优化模型实际是求解非线性规划问题,所以本算法利用非线性规划具有较强局部搜索能力的特点,将其应用于全局性遗传算法,并在遗传算法中引入个体相似度概念,交叉配对策略选择交叉对象,同时从宏观和微观上调控交叉和变异率来平衡算法空间深度和广度,弥补局部搜索差的缺陷,提高全局寻优的能力。
2.1.2 个体相似度与交叉配对策略为避免盲目地选择交叉个体,提高交叉操作效率,这里提出以个体相似度为依据选择交叉配对的父代个体。
1)个体相似度
个体相似度是指2个体具有相同等位基因的数量[12 – 13]。利用三维空间向量余弦定理可推导出多维空间向量的夹角,其夹角大小可表示个体相似程度,夹角越小,个体越相似。为此,将
$\begin{split} \cos \theta =& \frac{{({{{X}}_i},{{{X}}_j})}}{{\left| {\left| {{{{X}}_i}} \right|} \right|\;\left| {\left| {{{{X}}_j}} \right|} \right|}} = \frac{{{{{X}}_j}^{{T}}{{{X}}_i}}}{{\sqrt {{{{X}}_i}^{{T}}{{{X}}_i}} \sqrt {{{{X}}_j}^{{T}}{{{X}}_j}} }}=\\ & \frac{{\sum\limits_{k = 1}^m {{x_{ik}}{x_{jk}}} }}{{\sqrt {(\sum\limits_{k = 1}^m {{x_{ik}}^2} )(\sum\limits_{k = 1}^m {{x_{jk}}^2} )} }}, \end{split} $ | (4) |
$S({{{X}}_i},{{{X}}_j}) = \frac{{1 + \cos \theta }}{2} \in \left[ {0,1} \right]\text{。}$ | (5) |
2)交叉配对策略
将个体按适应度大小进行非线性降序排序,排序后对应的个体序列记为
改变标准遗传算法中交叉与变异率选择固定而引起的缺陷,将种群整体进化效果考虑进去,对任子武的IAGA算法[7, 14]进行改进。根据指数函数的性质,从宏观上以增加种群多样性来防止早熟收敛,对群体设置较大的
${p_{{c}}} = \left\{ \begin{array}{l}\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{0.9^{{\kern 1pt} \alpha }}\;\;\;\;\;\;\;\;,\alpha < 1\text{且}{U_a} > {U_b},\\{p_{{{c1}}}} - \displaystyle\frac{{({p_{{{c1}}}} - {p_{{{c2}}}})(f - {f_{{{min}}}})}}{{{f_{{{max}}}} - {f_{{{min}}}}}},\text{其他}\text{。}\end{array} \right.$ | (6) |
${p_{{m}}} = \left\{ \begin{array}{l}\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{0.15^\alpha }\;\;\;\;\;\;\;\;\;\;,\alpha < 1\text{且}{U_a} > {U_b},\\{p_{{{m1}}}} - \displaystyle\frac{{({p_{{{m1}}}} - {p_{{{m2}}}})(f' - {f_{\min }})}}{{{f_{{{max}}}} - {f_{{{min}}}}}},\text{其他}\text{。}\end{array} \right.$ | (7) |
对非线性函数
1)初始化种群数
2)产生满足式(3)约束边界的
3)计算个体适应度;
4)根据个体相似度交叉配对策略,选出父代配对交叉个体,以式(6)和式(7)式交叉和变异率进行操作形成子代个体新种群;
5)判断是否需要非线性寻优。若否,进入步骤6;若是,将得到满足约束的结果作为非线性寻优的初始条件进行局部搜索,并让得到的最优值作为新的种群进行全局搜索;
6)判断进化是否终止。若否,返回步骤3。
2.2 改进遗传算法2(IGA2)改进算法2是将量子计算引入遗传算法中,采用旋转门动态调整策略并以自适应量子变异和灾变算子为辅助,使遗传算法(GA)的搜索解有更好的多样性和方向性,提高收敛性能。
2.2.1 量子比特编码作为量子计算存储信息单元的介质是一个两态量子体系,叫量子比特(量子位)。用0或1态,或其任意叠加状态表示一个量子位。其叠加态表示为:
$\left| \varphi \right\rangle = \alpha \;\left| {\;0\;} \right\rangle \beta \;\left| {\;1\;} \right\rangle, $ | (8) |
其中:
${{{q}}_j}^t = \left[ \begin{gathered} {\alpha _{11}}^t \cdots {\alpha _{1c}}^t{\alpha _{21}}^t \cdots {\alpha _{2c}}^t \cdots {\alpha _{m1}}^t \cdots {\alpha _{mc}}^t\; \hfill \\ {\beta _{11}}^t \cdots \;{\beta _{1c}}^t{\beta _{21}}^t \cdots {\beta _{2c}}^t \cdots {\beta _{m1}}^t \cdots {\beta _{mc}}^t\; \hfill \\ \end{gathered} \right]\;,$ | (9) |
式中:
种群多样性的维持一般使用如式(10)的量子旋转门[16]作为量子遗传进化操作的执行机构,利用其对叠加的量子态作用,动态改变量子旋转门旋转方向和角度,从而更新种群,加快收敛。
${{U}}({\theta _i}) = \left[ \begin{gathered} \cos ({\theta _i}) \hfill \\ \sin ({\theta _i}) \hfill \\ \end{gathered} \right.\;\;\left. \begin{gathered} - \sin ({\theta _i}) \hfill \\ \;\;\cos ({\theta _i}) \hfill \\ \end{gathered} \right]\;\;,{\theta _i} = s({\alpha _i},{\beta _i}) * \Delta {\theta _i},$ | (10) |
其中:
$\Delta \theta = {\theta _{\min }} + \frac{{{f_{{x}}} - {f_{\min }}}}{{{f_{\min }}}} \times ({\theta _{\max }} - {\theta _{\min }}),$ | (11) |
式中:
由式(11)知,随着进化代数不断推进,进化后期个体间差别减小,调整操作很难发挥作用。为防止演化搜索停止不前,算法中引入自适应量子变异和灾变算子以提高后期收敛的速度。
借鉴自适应遗传算法的思想,以式(12)作为变异操作的公式。
${P_m} = \left\{ \begin{array}{l}\quad 1,\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; f' > {f_{avg}},\\{P_0} + \frac{{f' - {f_{\min }}}}{{{f_{avg}} - {f_{\min }}}},f' < {f_{avg}}{\text{且}}f' \ne {f_{\min }},\\\quad {P_0},\;\;\;\;\;\;\;\;\;\;\;\; f' = {f_{\min }}\text{。}\end{array} \right.$ | (12) |
其中
根据1 000 t应急打捞起重船的基本参数,选取以下使用环境:风浪流入射角为
GA初始参数:种群数100,最大代数200,代沟0.9,染色体长度20;交叉和变异率分别为0.7,0.01;IGA1初始参数:
图2分别为用标准遗传及改进算法对张力模型进行张力分配适应度值变化情况。表1为3种遗传算法锚链张力优化结果。表2是算法各执行10次的平均收敛代数,最小收敛代数,平均计算时间和平均最优适应度值的比较。
IGA1算法依据相似度选择交叉配对个体,提高了算法操作效率和搜索空间,使得算法在10~20代能快速收敛。GA算法在60~65代停滞于局部最优,但IGA1算法由于非线性规划局部搜索作用使之很快找到全局最优解。IGA2算法由于动态旋转门始终保持最优解进化的方向,并在适当的时机进行灾变,提高了收敛速度,加快了全局和局部搜索过程。
4 结 语在研究锚链张力优化模型、遗传算法的基础上,采用个体相似度交叉配对,动态改变交叉与变异率,非线性规划及约束边界处理,量子化编码,旋转门动态调整及自适应变异等措施改进遗传算法,并用改进的算法对锚泊定位系统的张力进行优化仿真,仿真结果验证了改进算法张力分配的合理性和有效性,改进算法的优化能力强于标准遗传算法。不足之处是改进算法增加了计算时间。
[1] | BERNTSEN P I B, AAMOOM, LEIRA B J. Ensuring mooring line integrity by dynamic positioning: controller design and experimental tests[J]. Automatic, 2009, 45(5): 1285–1290. |
[2] |
王雪, 陆晶. 船舶操控及锚泊过程的运动数学建模研究[J]. 舰船科学技术, 2016, 06: 13–15.
WANG Xue, LU Jing. Study on mathematical modeling of ship motion control and mooring process[J]. Ship Science and Technology, 2016, 06: 13–15. |
[3] | JI S W, CHOI M S, KIM Y B. A study on position mooring system design for the vessel moored by mooring lines[J]. IEEE/ASME Transactions on Mechatronics, 2015, 20(6): 2824–2831. |
[4] | CHOUBEY N S, KHARAT M U. Approaches for handling premature convergence in CFG induction using GA[J]. Soft Computing in Industrial Application, 2011, 96: 55–56. |
[5] | SERKAN BEKIROGLU, TAYFUN DEDE, YUSUF AYVAZ. Implementation of different encoding types on structural optimization based on adaptive genetic algorithm [J]. Finite Elements in Analysis and Design, 2009, 45(11): 826–835. |
[6] |
李小青, 张文祥. 基于退火免疫遗传算法的测试用例生成研究[J]. 计算机仿真, 2008, 25(5): 171–174.
LI Xiao-qing, ZHANG Wen-xiang. Test case generation based on annealing immune genetic algorithm[J]. Computer Simulation, 2008, 25(5): 171–174. http://d.wanfangdata.com.cn/Periodical_jsjfz200805044.aspx |
[7] |
任子武, 伞冶. 自适应遗传算法的改进及在系统辨识中的应用研究[J]. 系统仿真学报, 2006, 18(1): 41–6.
REN Zi-wu, SANYe. Improved adaptive genetic algorithm and its application research in parameter identification[J]. Journal of System Simulation, 2006, 18(1): 41–6. |
[8] |
齐鸣, 严传续, 孟宏斌, 等. 船舶锚泊系统扰动力平衡计算[J]. 中国造船, 2012, 53(3): 158–164.
QI Ming, YAN Chuan-xu, MENG Hong-bin, et al. Balance calculation on disturbing force of mooring system for vessel[J]. Shipbuilding of China, 2012, 53(3): 158–164. http://www.cqvip.com/QK/90375X/201203/43258668.html |
[9] | SHAFIEEFAR M, REZVANI A. Mooring optimization of floating platforms using a genetic algorithm[J]. Ocean Engineering, 2007, 34(10): 1413–1421. |
[10] |
金鸿章, 苏晓宇, 于安才, 等. 基于锚链切换的平台自动锚泊定位系统设计[J]. 电机与控制学报, 2014, 18(5): 93–98.
JIN Hong-zhang, SU Xiao-yu, YU An-cai, et al. Design of automatic mooring positioning system based on mooring line switch[J]. Electric Machines and Control, 2014, 18(5): 93–98. |
[11] |
严传续, 钱宏, 项军毅, 等. 铺管船锚泊定位系统优化设计研究[J]. 中国造船, 2010, 51(1): 83–93.
YAN Chuan-xu, QIAN Hong, XIANG Jun-yi, et al. Study on design optimization of mooring positioning system for pipe laying vessel[J]. Shipbuilding of China, 2010, 51(1): 83–93. http://d.wanfangdata.com.cn/Periodical_zgzc201001011.aspx |
[12] |
田小梅, 郑金华, 李合军. 基于父个体相似度的自适应遗传算法[J]. 计算机工程与应用, 2005, 18(3): 61–63.
TIAN Xiao-mei, ZHENG Jin-hua, LI He-jun. Adaptive genetic algorithm based on parents’ similarity[J]. Computer Engineering and Applications, 2005, 18(3): 61–63. http://www.cqvip.com/QK/91690X/200518/15889223.html |
[13] |
刘建文, 丁洁玉, 潘坤, 等. 基于个体相似度的改进自适应遗传算法研究[J]. 青岛大学学报(工程技术版), 2016, 31(1): 16–19.
LIU Jian-wen, DING Jie-yu, PAN Kun, et al. Improved adaptive genetic algorithm based on individual similarity[J]. Journal of Qingdao University(E&T), 2016, 31(1): 16–19. |
[14] | 陈超. 自适应遗传算法的改进研究及其应用[D]. 广州: 华南理工大学, 2011. |
[15] |
胡宽, 常新龙, 宋笔锋, 等. 求解含等式约束化问题的遗传算法[J]. 上海交通大学学报, 2011, 45(1): 92–97.
HU Kuan, CHANG Xin-long, SONG Bi-feng, et al. Genetic algorithm to solve optimization problem with equality constrains[J]. Journal of Shanghai Jiao Tong University, 2011, 45(1): 92–97. |
[16] | HAN Kuk-Hyun, KIM Jong-Hwan. On the analysis of the quantum-inspired evolutiongary algorithm with a single individual[C]//IEEE Congress on Evolutionary Compution Shetaton Vancouver Wall Centre Hotel, Vancouver, BC, Canada, 2006: 9172. |