本发明涉及动力定位船舶推力分配,具体涉及一种带监督机制的推力分配方法。
背景技术:
1、船舶动力定位系统作为一种高技术含量的船舶装备已经在各种水上领域特别是海洋领域被广泛应用,诸如熟知的981钻井石油平台、填海“神器”挖泥船等等。推力分配作为船舶动力定位系统的关键环节发挥着至关重要的作用,在控制系统和推进系统之间起到“桥梁”作用,其处理结果直接影响船舶的操纵性、机动性以及能耗等性能。推力分配方法有许多种比如推进器分组法、滤波和奇异值分解法、序列二次规划法(sqp)以及近些年兴起的群智能算法等等。本发明从全局优化角度出发,在综合机械磨损、奇异性和偏差等性能指标前提下降低船舶能耗,提出一种pso和sqp相融合的带监督机制的推力分配方法。
技术实现思路
1、针对上述现有技术中存在的缺点,本发明提供了一种带监督机制的推力分配方法,能够在综合考虑推力分配各项性能指标情况下降低能耗、获取更加可靠及更加优化的推力分配结果。
2、为了实现上述目的,本发明采用的技术方案如下:
3、一种带监督机制的推力分配方法,包括如下步骤:
4、步骤1、初始化船舶各类参数:结构参数、状态参数、物理条件约束参数、权值参数、扇区参数等;
5、步骤2、判别是否执行最优扇区搜寻,是则运用pso算法进行最优扇区求解,否则保留前一时刻最优扇区解;
6、执行最优扇区搜寻条件为:首次执行推力分配或当前需求推力和力矩与上一时刻的推力和力矩不相等;
7、pso算法进行最优扇区求解实施方法如下:
8、步骤2.1、初始化参数,其中粒子选取推力分配方程等式约束项的齐次线性方程组bete=0的基础解系数;
9、
10、te为船体坐标系下x方向和y方向两个相互正交的力,(lxn,lyn)为第n个推进器在船体坐标系中的位置;
11、步骤2.2、以能耗项和偏差项为代价函数计算粒子适应度值,并计算全局最优值,该步骤中推进器角度在禁区范围内处理方法为:计算该角度与该禁区极值的距离,靠近禁区极大值则取该值为推进器角度值,否则取禁区极小值为推进器角度值;
12、步骤2.3、运用带权重系数的pso算法进行种群进化,粒子更新;
13、步骤2.4、判别迭代次数是否达设定值,是执行步骤2.5,否执行步骤2.3;
14、步骤2.5、对所求最优推力分配解的推进器角度进行扇区判别,具体实施方法如下:首先判别角度值是否处于前一时刻选择扇区内,是则判定最优扇区取前一时刻选择扇区,否则判别角度值是否处于前一时刻之前选择扇区内,是则判定最优扇区取前一时刻之前选择扇区,否则按照扇区序数从小到大逐一判别进行最优扇区取值;
15、步骤3、判别推进器所处扇区是否与前一时刻选择扇区相一致,是则执行步骤4,否则执行步骤5;
16、步骤4、运用非扇区切换的sqp算法进行推力分配求解,然后执行步骤6,非扇区切换的sqp算法具体实施方法如下:
17、构建二次型推力分配数学模型为:
18、
19、式中h是包含能耗项(采用一阶泰勒级数展开)、偏差项、机械磨损项和奇异项(采用二阶泰勒级数展开)的二次项权系数矩阵,f是对应的一次项权系数向量,x是包含推力变化量、方位角变化量和松弛变量的优化变量,aeq和beq分别为等式约束矩阵和向量,lb和ub为包含推力变化量、方位角变化量和松弛变量的优化变量边界;
20、
21、beq=τ-b(αp)tp
22、δstimin=max(δtimin,timin-tip),δstimax=min(δtimax,timax-tip)
23、δsαimax=min(δαimax,αimax(snow)-αip),δsαimin=max(δαimin,αimin(snow)-αip);
24、其中b(αp)是前一时刻推进器配置控制矩阵,αp和tp分别为前一时刻方位角和推力,e3为三阶单位矩阵,τ为控制系统输出的推力和力矩指令,δstimin和δtimin分别是第i个推进器当前和自身物理条件允许的推力最小变化量,δstimax和δtimax分别是第i个推进器当前和自身物理条件允许的推力最大变化量,δsαimin和δsαimax分别是第i个推进器允许的方位角最小和最大变化量,δαimax和δαimin分别是第i个推进器自身物理条件允许的方位角最大和最小变化量,αimax(snow)和αimin(snow)为第i个推进器前一时刻选择扇区的边界,αip和tip分别为第i个推进器当前角度和推力,snow为前一时刻选择扇区值;
25、根据构建的二次型推力分配数学模型利用sqp算法进行推力求解;
26、步骤5、运用扇区切换的sqp算法进行推力分配求解,具体实施方法如下:
27、构建二次型推力分配数学模型为:
28、
29、式中hs是包含能耗项(采用一阶泰勒级数展开)和偏差项的二次项权系数矩阵,fs是对应的一次项权系数向量,xs是包含推力变化量和松弛变量的优化变量,aseq和bseq分别为等式约束矩阵和向量,lsb和usb为包含推力变化量和松弛变量的优化变量边界,其中aseq和bseq计算方法如下:
30、aseq=[b(αp+δα)| e3],bseq=τ-b(αp+δα)tp
31、其中b(αp+δα)为此刻的推进器配置控制矩阵,δα为方位角变化量;
32、根据构建的二次型推力分配数学模型利用sqp算法进行推力求解;
33、步骤6、运用监督与切换机制进行扇区选择,该机制实施思路为:前一时刻选择扇区每次更新只有两种可能,一是保持不变,二是被最优扇区取代,而要被最优扇区取代只要满足如下三个条件中一个:(1)最优扇区合力和力矩偏差比当前扇区小于一定值,且保持一段时间;(2)最优扇区功率比当前扇区小于一定值,最优扇区合力和力矩偏差比当前扇区不大于一定值,且保持一段时间;(3)最优扇区与前一时刻之前选择扇区相等且切换时间不超过一定值;
34、步骤7、输出推力分配结果,更新船舶状态参数,跳至步骤2进行下一个周期推力分配计算。
35、优选的,所述步骤2中,推进器角度在禁区范围内处理具体计算方法如下:
36、设推进器在禁区内的角度为α,禁区范围为[αstrmin,αstrmax],则α处理结果为:
37、
38、
39、
40、优选的,所述步骤5中,sqp算法进行推力分配求解中方位角变化量具体计算方法为:
41、
42、
43、优选的,所述步骤6中,运用监督与切换机制进行扇区选择具体实施计算方法如下:
44、假设前一时刻之前选择的扇区为sago,当前最优扇区为sbest,当前选择的扇区为schoose,则:
45、
46、t是指sbest和snow连续不等累加的时间,tlim是指停留时间切换的最小切换时间,t0是为了防止瞬态干扰导致的切换所设置的最大返回切换时间,pbest是全局最优消耗功率值,psqp是扇区切换或非扇区切换的sqp算法求解所得消耗功率值,esqp是扇区切换或非扇区切换的sqp算法求解结果偏差的平方和,ebest是全局最优求解结果偏差的平方和,es为偏差设定值,p1和p2为设定的百分数。
47、与现有技术相比,本发明具有以下有益效果:
48、1、本发明首先利用pso算法的全局寻优优势进行最优扇区求解,然后根据扇区逻辑选择扇区切换的sqp算法或非扇区切换的sqp算法进行推力分配求解,最后根据监督与切换机制进行扇区选择为下次推力分配求解指明方向,实验表明该算法能满足工程应用实时性需求又能通过扇区切换灵活优化推力分配各项指标。
49、2、本发明所提出的推力分配方法能够在考虑能耗和偏差指标情况下获取全局最优解及最优扇区组合,在此基础上根据监督与切换机制进行扇区选择,并能根据扇区逻辑合理选择sqp推力分配算法,进而获取更加可靠及更加优化的推力分配结果。