刘 明,华 亮,周 俊,戴 伟,邱爱兵
(南通大学 电气工程学院,江苏 南通 226019)
动力定位船舶伪逆法与混沌粒子群法相融合的推力分配算法研究
刘 明,华 亮,周 俊,戴 伟,邱爱兵
(南通大学 电气工程学院,江苏 南通 226019)
动力定位船舶一般都装备冗余推进器,推力分配求解将直接影响最终定位的效果。针对伪逆法在推力分配中存在问题,提出一种把伪逆法和混沌粒子群法(CPSO)相融合的推力分配算法,该组合算法方便处理推力器各种限制条件,计算简单,能兼顾船舶的能耗及操作性,解决奇点问题。最后以某挖泥船为例,仿真结果表明该推力分配算法具备一定的实用指导价值,能有效提高船舶的定位性能。
动力定位;粒子群算法;推力分配;伪逆法;混沌算子
Abstract: Dynamic positioning ships are generally equipped with redundant thrusters, and thrust allocation will directly affect the positioning performance. In this paper, fusion of pseudo inverse method and chaos particle swarm algorithm(CPSO) is designed in order to resolve the problem of thrust allocation with pseudo inverse method, the algorithm is simple and convenient to handle and calculate various constraints of thrust allocation, and both consumption and maneuverability are considered to solve the singularity problem. Finally, a dredger is taken as an example, and simulation results show that the algorithm has a certain practical guidance value, and that the dynamic performances of dynamic positioning ship are improved.
Keywords: dynamic positioning; particle swarm optimization; thrust allocation; pseudo inverse method; chaos operator
船舶动力定位系统主要由控制系统、测量系统和推力系统组成[1]。推力系统作为执行机构其运行性能直接影响定位效果,故良好的推力分配策略对提高定位精度、可靠性及降低能耗等具有很现实的意义。动力定位船舶一般都装备冗余推进器,推力系统为过驱动系统,即控制器的输出维数小于推进器控制量的维数。一方面冗余的推进系统提高了定位系统的可靠性;另一方面带来如何获得每个推进器输出推力的最优方向和大小的问题。
过驱动系统的推力分配求解总体上属于非线性优化问题,通常该类问题都转化为在若干约束条件下求取目标函数最小值的优化问题,目标函数一般包括能耗、推力系统奇异性、推进器磨损、合力误差和方位角变化速率等多重性能指标。常见求解推力分配问题的算法有直接分配法、序列二次规划法、伪逆法[2-4]等等,此外随着群智能优化算法(比如粒子群法[5-6]、蜂群算法、遗传算法等等)的发展,国内外部分相关学者把该类算法用于求解推力分配问题进行了探讨。其中伪逆算法是最简单、最直接的推力分配算法,但该类算法本身主要考虑能耗,而忽视机械磨损、推进器本身限制等因素,通常导致奇点现象,故国内外一些专家对此算法进行了改进,文献 [7]中针对981钻井平台,提出基于扩展推力的拉格朗日最小平方优化的显性解,并在此基础上,对推进器本身的推力大小、方位角及其变化率作了限制,获得较好的定位性能。文献 [4]在扩展推力能量最优分配基础上,提出组合偏置思想并设计了自适应组合偏置策略,建立组合偏置推力分配算法,仿真表明该算法能有效提高船舶的动态性能。此外,群智能优化算法虽然在处理推力分配约束条件上具有计算简单等优势,但要在实际工程中应用,必须解决收敛性和实时性问题。
本文提出的伪逆法和混沌粒子群法(CPSO)相融合的推力分配策略实质是以带权重系数的伪逆算法为基础,运用CPSO算法进行权重系数寻优。CPSO算法是一种改进的粒子群算法,其设计以解决收敛性和实时性为目标,由于这里提出的算法以伪逆算法为基础,一定程度上为解决收敛性和实时性问题提供了可行性的条件。最后以挖泥船仿真实例(该实例暂不考虑舵的因素)来验证算法的可行性。
对于具备动力定位系统的船舶,一般只研究船舶三个自由度上的运动控制,即艏摇、纵荡和横荡,而忽略纵摇、垂荡和横摇三个自由度的运动控制。船舶三个自由度运动可以由下述向量进行描述:η=[x,y,ψ]T,υ=[u,v,r]T。其中η表示大地坐标系下船舶的位置和艏摇角度,υ表示随船坐标系下船舶的纵荡、横荡和艏摇速度。两种坐标系相互转换关系为[4]:
式中:R(ψ)为转换矩阵。
动力定位船舶的低频运动模型:
式中:(lxi,lyi),表示第i个推进器在船体坐标系中的位置,i=1,2,…,n。
为简化推力方程的求解,Sørdalen引入了扩展推力fe,将方位角变化的推进器推力分解成纵荡和横荡两个相互正交的力:
此时,推力分配方程可以表示为:
以推进器推力平方和为目标函数,推力分配方程为约束条件构造拉格朗日函数[4]:
其中,λ为拉格朗日算子。根据拉格朗日极小值存在条件得:
综上所述知,该方法求解推力分配时仅考虑推力分配方程约束条件和推力平方和目标函数,其它的约束条件和性能指标并未考虑,结果可能导致推进器在执行分配推力时由于本身条件约束使得不能按照需求值动作,机械磨损大,存在奇异点现象等问题。
本文的仿真母型船布局情况如图1所示,包括尾部两个全回转推进器和艏部两个可正反转的隧道推进器,各推进器坐标分别为(-64,-12),(-64,12),(66,0),(64,0)。由图1可知其推力分配方程可表示为:
且伪逆法求解式中权值系数w-1为6×6正定对角阵。
图1 推进器布局示意Fig. 1 Schematic diagram of thruster layout
混沌是一种普遍的非线性现象,行为复杂类似随机,具有随机性、遍历性、规律性和敏感性。鉴于混沌的这些特性,利用混沌算子进行优化搜索比盲目无序的随机搜索更具优越性,能够避免演化算法陷入局部最优点,混沌优化算法是一种全局性的优化算法。
首先采用混沌序列初始化种群,可使粒子分布较均匀,粒子分散性较好,为全局搜索多样性奠定基础[8];其次,在寻优过程中,防止粒子早熟停滞现象出现,利用有效判断方法,发现早熟迹象,利用混沌序列随机产生粒子替代对应粒子,使其跳出局部最优。
混沌映射一般有如下几种形式:二维cat映射;logistic映射;tent映射等等。其中,logistic映射方程如式(13)所示:
式中:xn是变量x在第n步迭代时数值,其中初始值x0∈(0,1),0.25,0.5和0.75除外;u是混沌映射的控制参数,当u=4时,logistic映射方程进入完全混沌状态[9]。
目前PSO算法及相关改进PSO算法中粒子初始化基本采用随机方式产生,这也是每次搜索结果不一致,甚至差别较大的最主要原因之一。研究表明参数搜索空间和粒子初始化分散性对搜索结果产生较大影响。CPSO算法相对标准粒子群算法在粒子初始化方面进行改进,其粒子初始化为利用混沌算子进行粒子初始化和定目标相结合的一种方式,根据现有方法(如Ziegler Nichols法)和专家经验进行参数搜索空间的初步选定,混沌算子产生粒子,使得该算法具有大范围的寻优能力。
1) 算法运行机制多样化
为满足算法的工程实用性,采取多样化的算法运行机制。①粒子初始化种群大小采取M+1模式,即除了采用混沌算子进行M(一般取奇数)个种群随机初始化之外,伪逆法中固定权值系数数值作为初始种群之一,该模式有利于获得能耗最低可行性解。②粒子速度更新多样化,即一部分粒子采用标准粒子群更新模式,一部分粒子采取定目标经验更新模式,多样化模式使得算法即具备全局寻优能力,又可以具有较高的收敛速率。③算法运行终止条件“四关”制:当前系统推力指令与上一时刻相同时,则各推进器推力输出按照上一时刻分配结果执行;如推力指令不相同,首先计算粒子初始化中“1”模式的粒子性能指标,判别是否满足推力分配需求,如满足则结束运行;在每次迭代过程中判别是否有满足条件的粒子存在,如有满足则结束运行;迭代次数是否达到最大值,如达到则结束运行,该终止条件模式是算法降低运行时间的关键之一。④种群逐代递减策略,按照一定淘汰规律逐步降低种群数,降低推力分配求解时间。
2) 约束条件和目标函数
推力分配参数优化是求目标函数的极小值问题,通常优化的目标包括推进器的磨损、能耗、系统的奇异结构等,故目标函数可表示为[7]:
约束条件为:
3) 算法流程
Step1判别当前系统推力指令与上一时刻是否相同,如相同则各推进器推力输出按照上一时刻分配结果执行,终止算法运行,否则执行Step2。
Step2 初始化”1”模式粒子,其值为对角全为0.5的对角阵,采用伪逆法求解推力分配,判别是否满足推力分配需求条件,如满足则终止算法运行,输出推力分配结果,否则执行Step3。
Step3初始化算法参数。初始化粒子种群大小M(一般取20~40),搜索空间维数D=6,迭代次数n,搜索空间范围[0,1],飞行速度(Vi=(vi1,vi2,…,viD))的范围Vmin,Vmax(取值可以根据搜索空间范围进行初步选定),学习因子C1和C2(一般取值为2),权值w1,权值对角矩阵w2,权值矩阵w3, logistic混沌映射的控制参数,推进器约束参数等。
Step5 根据式(14)适应度评价函数计算粒子群中每个粒子的适应度值。
Step6 将每个粒子当前适应度值与个体极值pBest(记为pi=(pi1,pi2,…,piD))进行比较,若当前适应度值小于个体极值,则将其值作为个体极值,找出当前适应度值中最小值,将其与整个种群最优解位置gBest(记为pg=(pg1,pg2,…,pgD))比较,若其值小于gBest,则将其值作为gBest。判别是否满足推力分配需求条件,如满足则终止算法运行,输出推力分配结果,否则执行Step7。
Step7 采用标准粒子群更新的粒子,更新方法如下:
粒子的速度约束如下:
更新每个粒子的位置,更新公式可以表示如下:
粒子的位置约束如下:
式(18)~(21)中,1≤d≤D。
采取定目标经验更新的粒子,其方法为:粒子(权重系数)与推力分配结果间存在一定关系,即某个权重系数对推力分配结果的影响趋势是已知的,故可根据当前推力分配结果,按照一定规律修改对应的权重系数值。
Step8根据优胜劣汰机制,按照一定模式递减粒子种群数。
Step9 判断是否达到最大迭代次数或优化的终止条件,如达到则此次循环终止,输出最优搜索结果,否则返回Step5 。
为验证本文提出的推力分配算法,以某挖泥船为对象进行仿真分析,其推进器布置如图1所示。该船主要技术数据如表1所示。
船舶初始位置为东0 m北0 m,初始艏向为0°,目标位置为东6 m北8 m,目标艏向为17.2°,采用PID控制策略对挖泥船进行运动控制,1 s为一个控制节拍,推力分配分别采用文中提出的融合算法和伪逆法进行仿真,仿真结果如图2所示。
表1 某挖泥船的主要技术参数Tab. 1 Main technical parameters of a dredger
图2 推进器的方向角和推力仿真结果Fig. 2 The result of azimuth angles and thrust force of thrusters
由图2(a)和图2(b)可以看出,1号推进器和2号推进器采用本文提出的融合算法,其方向角变化幅度总体上比采用伪逆法要小的多,特别是2号推进器的方向角变化幅度很小,有利于减少推进器的机械磨损,此外采用伪逆法时1号推进器和2号推进器的方向角变化几乎一致,而采用文中提出的融合算法时1号推进器和2号推进器的方向角变化不一致性较大,这样有利于提高船舶的操纵性,避免推进器系统奇异结构。
由图2(c)~2(f)可以看出,两种方法推进器消耗的能量差别不大。其中图2(c)和图2(f)显示融合算法消耗的能量略大于采用伪逆法,图2(d)和图2(e)显示融合算法消耗的能量略小于采用伪逆法,故文中提出的融合算法并不需要以较大的能量消耗换取船舶的操作性。
综上所述可知,文中提出的融合算法能够方便处理推力器各种限制条件,计算简单,能兼顾船舶的能耗及操作性,解决奇点问题。
针对动力定位系统中推力分配问题,把伪逆法和CPSO算法进行融合,设计了融合算法的推力分配策略。通过挖泥船的仿真实验,验证了该算法的可行性,虽然该算法较伪逆法相对耗时,但该算法在兼顾能量消耗的同时,能有效的降低推进器的磨损,解决推进器系统奇异结构问题,推力分配结果合理,对实际工程运用具有一定理论指导意义。
[1] 王钦若,杨娜,叶宝玉,等.船舶动力定位系统推力分配策略研究[J].控制工程,2013,20(1):30-33. (WANG Qinruo, YANG Na, YE Baoyu, et al. Research on thrust allocation of ship dynamic positioning system[J].Control Engineering of China, 2013,20(1):30-33. (in Chinese))
[2] 王莹,谌栋梁,谢颖,等.基于构造矩阵零空间的动力定位系统推力分配方法[J].海洋工程,2013,31(4):30-36.(WANG Ying, CHEN Dongliang, XIE Ying, et al. A thrust allocation method for dynamic positioning system based on the null space of configuration matrix[J].The Ocean Engineering, 2013,31(4): 30-36. (in Chinese))
[3] 梁海志,欧进萍.半潜式平台动力定位系统控制力动态约束分配法[J]. 海洋工程,2012,30(1):33-39. ( LIANG Haizhi,OU Jinping. Dynamic positioning system thrust allocation algorithm with dynamical thrust constrains of semi-submersible platform [J]. The Ocean Engineering, 2012,30(1):33-39. (in Chinese))
[4] 施小成,魏玉石,宁继鹏, 等.基于能量最优的组合偏置推力分配算法研究[J].中国造船,2012,53(2):96-104. (SHI Xiaocheng, WEI Yushi, NING Jipeng, et al.Research on group biasing thrust allocation algorithm based on power optimization[J]. Ship Building of China, 2012,53(2):96-104. (in Chinese))
[5] LI Mingwei, KANG Haigui, ZHOU Pengfei, et al. Hybrid optimization algorithm based on chaos,cloud and particle swarm optimization algorithm[J]. Journal of Systems Engineering and Electronics, 2013, 24 (2):324-334 .
[6] MENHAS M I, FEI Minrui, WANG Ling, et al. Adaptive mutation based probability binary pso for control of ball mill pulverizing system[J]. Journal of System Simulation, 2011, 23(8): 1568-1574.
[7] 王芳,潘再生,万磊,等.深水钻井平台动力定位的推力分配研究[J].船舶力学,2013,17(1-2):19-28. (WANG Fang, PAN Zaisheng, WAN Lei, et al. Optimal thrust allocation for a dynamically positioned deepwater drilling rig[J].Journal of Ship Mechanics, 2013,17(1-2):19-28. (in Chinese))
[8] 朱海梅,吴永萍. 一种高速收敛粒子群优化算法[J]. 控制与决策, 2010, 25(1):20-24. (ZHU Haimei, WU Yongping. A pso algorithm with high speed convergence[J].Control and Decision, 2010, 25(1): 20-24 (in Chinese))
[9] LI Mengshan, HUANG Xingyuan, LIU Hesheng, et al. Prediction of the gas solubility in polymers by a radial basis function neural network based on chaotic self-adaptive particle swarm optimization and a clustering method[J]. Journal of Applied Polymer Science, 2013, 130(5): 3825-3832.
Research on dynamic positioning thrust allocation algorithm based on pseudo inverse method and CPSO algorithm
LIU Ming, HUA Liang, ZHOU Jun, DAI Wei, QIU Aibing
(School of Electrical Engineering, Nantong University, Nantong 226019, China)
1005-9865(2016)04-0100-07
U664
A
10.16483/j.issn.1005-9865.2016.04.014
2015-05-22
国家自然科学基金(61104028 );南通市科技计划项目(BK2014075)
刘 明(1981-),男,江苏宿迁人,讲师,从事船舶动力定位智能控制方向研究。E-mail:liumingsongliuming@126.com