CN112394641B - 一种基于双线程并行计算的船舶实时推力分配方法 - Google Patents
一种基于双线程并行计算的船舶实时推力分配方法 Download PDFInfo
- Publication number
- CN112394641B CN112394641B CN202011333276.3A CN202011333276A CN112394641B CN 112394641 B CN112394641 B CN 112394641B CN 202011333276 A CN202011333276 A CN 202011333276A CN 112394641 B CN112394641 B CN 112394641B
- Authority
- CN
- China
- Prior art keywords
- thrust
- thrust distribution
- opt
- algorithm
- optimization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本发明提供一种基于双线程并行计算的船舶实时推力分配方法,其特征是,包括基于逻辑的推力分配算法、基于序列二次规划的推力分配优化算法和基于优化目标函数的决策方法。本发明克服了优化推力分配算法实时性差的缺点,结合了基于逻辑推力分配算法快速性的优点,在固定解算周期内当优化算法无法给出最优解时会按照优化目标给出当前条件下的次优解,具有实时性高、可靠性好的优点,同时考虑了推进器的性能、功耗及磨损等约束,为优化推力分配算法的工程应用提供了一种实用方案。
Description
技术领域
本发明涉及一种船舶实时推力分配方法,尤其涉及一种基于双线程并行计算的船舶实时推力分配方法。
背景技术
船舶推力分配是指将控制律给出的三自由度推力和力矩指令转化为每个推进器的推力和方位角指令,同时考虑推进器的性能约束。该问题在理论上属于多变量约束优化问题,目前已经有多种优化算法可以对其进行求解,但是在实际工程应用中主要采取的还是基于逻辑的推力分配方法。
基于逻辑的分配算法就是设计不同的分配逻辑,将带有约束的推力分配方程简化成能够具有解析解的基本方程,进而解算出推力指令。设计的逻辑过程主要是对分配变量进行简化,然后为避免基本推力方程失效做相应的处理。这样通过合理的简化不断减少推力分配变量就可以将存在多解的约束问题转化为线性方程求解问题。此算法的优点是运算速度快、可靠性高,每个控制周期都会得到一个可行解,缺点是逻辑设计过程比较复杂,对于有些约束无法通过逻辑进行简化(如功率约束),因此不能得到最优解。
而基于优化算法的推力分配可以将推力限制、方位角限制、功率限制等多种约束考虑在内进行求解,因此在降低能耗、减少推进器磨损方面具有明显优势。船舶上无法直接采用优化推力分配算法的主要原因有两点:一是优化算法求解的精度极大依赖初值的设定,具有一定的不可确定性;二是优化算法在固定寻优次数下可能无法得到最优解,不满足实时性要求。
目前,国内外针对优化算法的推力分配的研究大部分是从理论方面改进优化算法的求解效率但无法在给定时间内保证精度,因此需要结合工程需求设计一种实时性好、可靠性高,同时考虑多种约束的次优推力分配算法。
发明内容
本发明的目的是提供一种基于双线程并行计算的船舶实时推力分配方法,为了解决优化推力分配算法实时性差的不足,同时兼顾能耗、推进器性能和磨损等约束,使推力分配算法能够在给定控制周期内没能解算出最优解时仍然能够给出次优解,进而保证分配算法的实时性和可靠性。
本发明的目的是这样实现的:
一种基于双线程并行计算的船舶实时推力分配方法,包括基于逻辑的推力分配算法、基于序列二次规划的推力分配优化算法和基于优化目标函数的决策方法
本发明还包括这样一些特征:
线程1基于逻辑的推力分配算法,通过对推进器合理分组,按照同组推力均分、力矩优先等原则对推力分配方程τ=B(α)T进行简化,采用伪逆法得到解析解[Tf,αf],然后根据推进器的最大推力Tmax和方位角变化率限制Δαmax进行平滑限幅给出可行解[Tf',αf']。其中,τ∈R3×1为控制律给出的三自由度推力和力矩输入指令,B(α)为推进器配置矩阵,T∈Rn ×1和α∈Rn×1分别为推进器推力指令;
线程2基于SQP的推力分配优化算法,在控制周期内通过对如下推力分配优化模型进行固定次数寻优,得到优化解[Topt,αopt];
min J(α,T,s)=TTΩT+ΔαTHΔα+sTQs
其中,Ω,H,Q∈R3×3为正定的对角系数矩阵,s为松弛变量,Tmin,Tmax为推进器推力限制,αmin,αmax为方位角限制,Δα=α-αold为方位角变化率,Δαmin,Δαmax为方位角变化率限制;
利用推力分配优化目标函数J(α,T,s)进行决策:若线程2优化算法求得解计算出的目标函数值小于设定阈值时,即J(αopt,Topt,sopt)≤ε时,选取优化算法作为推力指令[To,αo]=[Topt,αopt];反之,将线程1的可行解[Tf',αf']和线程2的优化解[Topt,αopt]带入目标函数,选取使目标函数值较小的解作为推力指令,即[To,αo]=arg min(J(α,T,s))。
与现有技术相比,本发明的有益效果是:
本发明克服了优化推力分配算法实时性差的缺点,结合了基于逻辑推力分配算法快速性的优点,在固定解算周期内当优化算法无法给出最优解时会按照优化目标给出当前条件下的次优解,具有实时性高、可靠性好的优点,同时考虑了推进器的性能、功耗及磨损等约束,为优化推力分配算法的工程应用提供了一种实用方案。
附图说明
图1基于双线程并行计算的推力分配流程图;
图2推进器布局示意图;
图3基于SQP推力分配优化算法的求解流程图;
图4输入控制指令与推力分配后的指令比较;
图5推力分配误差;
图6 1#推进器推力和方位角指令;
图7 2#推进器推力和方位角指令;
图8 3#推进器推力和方位角指令;
图9 4#推进器推力和方位角指令。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述。
本发明涉及一种面向固定周期控制的船舶实时推力分配策略,特别是面向工程应用的强实时性、高可靠性的船舶次优推力分配算法。本发明提出的实时推力分配策略包含基于双线程的并行解算模块和基于优化目标函数的决策模块,其中线程1为基于逻辑的推力分配方法,线程2为基于SQP的推力分配算法,如附图1所示。
本发明的工作原理是在一个控制周期内通过两个线程的并行解算得到基于逻辑推力分配的可行解和基于SQP推力分配的优化解,然后考虑推进器功率、磨损以及控制分配精度建立优化目标函数,将两种推力分配算法的解带入优化目标函数进行比较,选取使得函数值的较小的解作为本次控制周期的最终推力指令。
在线程1中采用基于逻辑推力分配的算法,通过对推进器合理分组,按照同组推力均分、力矩优先等逻辑原则对推力分配方程τ=B(α)T简化,并采用伪逆法得到解析解[Tf,αf],然后根据推进器的最大推力Tmax和方位角变化率限制Δαmax进行平滑限幅给出可行解[Tf',αf']。其中,τ∈R3×1为控制律给出的三自由度推力和力矩输入指令,B(α)为推进器配置矩阵,T∈Rn×1和α∈Rn×1分别为推进器推力指令。
在线程2中采用基于SQP的推力分配优化算法,在控制周期内通过对如下推力分配优化模型进行固定次数寻优,得到优化解[Topt,αopt]。
min J(α,T,s)=TTΩT+ΔαTHΔα+sTQs
其中,Ω,H,Q∈R3×3为正定的对角系数矩阵,s为松弛变量,Tmin,Tmax为推进器推力限制,αmin,αmax为方位角限制,Δα=α-αold为方位角变化率,Δαmin,Δαmax为方位角变化率限制。
推力分配决策模块,采用J(α,T,s)作为优化目标函数,并设置优化阈值ε。决策流程如下:若线程2优化算法求得解计算出的目标函数值小于设定值时,即J(αopt,Topt,sopt)≤ε时,选取优化算法作为推力指令[To,αo]=[Topt,αopt];反之,将线程1的可行解[Tf',αf']和线程2的优化解[Topt,αopt]带入目标函数,选取使目标函数值较小的解作为推力指令,即[To,αo]=argmin(J(α,T,s))。
本实施例以本发明技术方案为前提进行实施,以一艘装有两个单向槽道推进器和两个全回转推进器的动力定位船的推力分配为案例,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
案例中动力定位船的推进器布局如附图2所示,推力分配流程如附图1所示。具体步骤如下:
步骤1.根据推进器布局和推进器约束,建立推力分配优化模型。推进器约束考虑推力范围、方位角范围以及方位角变化率,目标函数中考虑功率、方位角变化率以及推力分配误差,由于用推力表征功率的方程过于复杂不便于优化求解,这里采用推力的二次型来近似表征推进器功率。最终得到如下的推力分配优化模型:
min J(α,T,s)=TTΩT+ΔαTHΔα+sTQs
其中,Ω,H,Q∈R3×3为正定的对角系数矩阵,s为松弛变量,Tmin,Tmax为推进器推力限制,αmin,αmax为方位角限制,Δαmin,Δαmax为方位角变化率限制,B(α)为推进器配置矩阵。
表1推进器相关参数
根据表1中的推进器相关参数可以得到每个约束的值,定义推力和方位角矢量形式为T=[T1 T2 T3 T4]T,α=[α1 α2 α3 α4]T,进而可以根据下式计算出推进器配置矩阵:
步骤2.在线程1中采用基于逻辑的推力分配算法进行求解。
首先,根据推进器布局进行合理分组简化变量。将单向槽道推进器1#和2#转化为一个双向槽道推进器,即将T1和T2用一个变量T12表示,当T12>0时,T1=T12,T2=0;当T12≤0时,T1=0,T2=T12;将推进器3#和4#分为一组依据推力均分的原则进行分配,即T3=T4,α3=α4。
然后,将极坐标下的推力指令(T,α)表示为直角坐标(Tx,Ty),进而将非线性推力分配方程τ=B(α)T转化为线性方程τ=BT',此时的推进器指令T'=[T12 Tx3 Ty3 Tx4 Ty4]T,推进器配置方程为转化为定常矩阵
进而,可以采用伪逆的方法直接得到线性方程组τ=BT'的最小范数解T'=B*τ,其中B*为矩阵B伪逆,B*=BT(BBT)-1。
最后,将求出的直角坐标下的推进器指令T'转化为极坐标下指令[Tf,αf],并根据推进器的推力限制、方位角限制以及方位角变化率限制对输出的推进器指令T进行输出平滑、限幅处理,得到线程1的推进器指令计算结果[Tf',αf']。
步骤3.在线程2中采用基于SQP的优化算法进行推力分配求解,计算流程如附图3所示。
对步骤1中得到的推力分配模型中的非线性等式约束进行线性化处理
Told和αold为前一控制周期的推力指令和方位角指令,ΔT=T-Told。定义x=[T,α,s]T,d=[ΔT,Δα,s]T,G=2diag([Ω,H,Q]),得到推力分配优化模型的凸二次规划子问题
其中,c=[2Ω1T1,2Ω2T2,2Ω3T3,2Ω4T4,zeros(1,7)],Ωi为正定矩阵Ω对角线对应元素。
通过对偶法求解二次规划子问题可求得解的下降方向dk,通过一维搜索方法求出步长tk,得到下一迭代点的值xk+1=xk+tkdk,然后根据K-T收敛条件和控制周期内寻优次数的限制来决定是否继续迭代,寻优结束条件为
其中,ε1和ε2为设置的很小的正数,kmax为给定控制周期内最大寻优次数。
步骤4.基于优化目标函数J(α,T,s)作为评价函数对两个线程计算出的结果进行决策。根据实际推力分配功率的要求、分配误差的精度要求,设置优化阈值ε。当线程2基于SQP的推力分配算法计算出的目标函数值小于设定值时,即J(αopt,Topt,sopt)≤ε时,优先选取线程2的结果作为推进器输出指令[To,αo]=[Topt,αopt];当J(αopt,Topt,sopt)>ε时,在线程1和线程2的解算结果中选取使优化目标函数值较小的解作为推进器输出指令,即[To,αo]=arg min(J(α,T,s))
与现在有的技术相比,本发明具有以下有益效果:
本发明中采用的双线程并行计算的推力分配策略,结合了逻辑推力分配算法计算简单、实时性强的特点和SQP优化推力分配算法性能良好的优势,能够避免优化算法在实际应用过程中出现无效解或者陷入局部极值而引起的分配失效问题,保证在给定控制周期内输出一个可行的推进器指令,提高了推力分配算法的实时性、鲁棒性和可靠性。
在优化算法没有求出最优解的情况下,基于优化目标函数的推力指令决策模块依然能够根据功率、方位角变化率、分配误差等因素挑选出当前控制周期内的次优解,该方法得到的推力指令的性能要好于或者等于单独使用其中一种算法的性能。
本说明公开了一种基于双线程并行计算的船舶实时推力分配策略。针对船舶数字控制器,主要提出了一种包含逻辑推力分配和基于优化的推力分配两个线程并行计算的推力指令快速求解方法。首先在线程1中采用基于逻辑推力分配的算法,通过分组减少变量、简化推力分配方程基于伪逆法快速求出无推进器约束下的推力指令解析解,进而考虑推进器的推力性能和响应速度进行平滑和限幅,得到逻辑算法下的推力指令可行解。然后在线程2中采用基于序列二次规划(SQP)的优化推力分配算法,在固定控制周期和设定的寻优次数下得到推进器约束下的优化解。最后利用优化目标评价函数,对线程1求得的可行解和线程2求出的优化解进行决策,得到控制周期下的次优解。本文的推力分配策略具有实时性高、可靠性好的优点,更加适合对实时性和可靠性要求比较高的海上长时间作业船舶。
Claims (1)
1.一种基于双线程并行计算的船舶实时推力分配方法,其特征是,包括基于逻辑的推力分配算法、基于序列二次规划的推力分配优化算法和基于优化目标函数的决策方法;
线程1基于逻辑的推力分配算法,通过对推进器合理分组,按照同组推力均分、力矩优先等原则对推力分配方程τ=B(α)T进行简化,采用伪逆法得到解析解[Tf,αf],然后根据推进器的最大推力Tmax和方位角变化率限制Δαmax进行平滑限幅给出可行解[Tf',αf'];其中,τ∈R3×1为控制律给出的三自由度推力和力矩输入指令,B(α)为推进器配置矩阵,T∈Rn×1和α∈Rn×1分别为推进器推力指令;线程2基于SQP的推力分配优化算法,在控制周期内通过对如下推力分配优化模型进行固定次数寻优,得到优化解[Topt,αopt];
min J(α,T,s)=TTΩT+ΔαTHΔα+sTQs
其中,Ω,H,Q∈R3×3为正定的对角系数矩阵,s为松弛变量,Tmin,Tmax为推进器推力限制,αmin,αmax为方位角限制,Δα=α-αold为方位角变化率,Δαmin,Δαmax为方位角变化率限制;
利用推力分配优化目标函数J(α,T,s)进行决策:若线程2优化算法求得解计算出的目标函数值小于等于设定阈值时,即J(αopt,Topt,sopt)≤ε时,选取优化算法作为推力指令[To,αo]=[Topt,αopt];反之,将线程1的可行解[Tf′,αf′]和线程2的优化解[Topt,αopt]带入目标函数,选取使目标函数值较小的解作为推力指令,即[To,αo]=arg min(J(α,T,s))。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011333276.3A CN112394641B (zh) | 2020-11-25 | 2020-11-25 | 一种基于双线程并行计算的船舶实时推力分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011333276.3A CN112394641B (zh) | 2020-11-25 | 2020-11-25 | 一种基于双线程并行计算的船舶实时推力分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112394641A CN112394641A (zh) | 2021-02-23 |
CN112394641B true CN112394641B (zh) | 2023-09-29 |
Family
ID=74606202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011333276.3A Active CN112394641B (zh) | 2020-11-25 | 2020-11-25 | 一种基于双线程并行计算的船舶实时推力分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112394641B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103129729A (zh) * | 2013-01-28 | 2013-06-05 | 中交天津航道局有限公司 | 一种挖泥船动力定位系统推力分配的寻优方法 |
CN103552680A (zh) * | 2013-11-12 | 2014-02-05 | 中交天津航道局有限公司 | 一种耙吸挖泥船扇形艏喷定位控制方法 |
CN103823372A (zh) * | 2014-02-24 | 2014-05-28 | 中国船舶重工集团公司第七○二研究所 | 海洋工程装备动力定位系统的多推进器推力分配方法 |
CN108255062A (zh) * | 2018-01-22 | 2018-07-06 | 集美大学 | 基于改进差分进化机理的动力定位节能推力分配方法 |
CN108594651A (zh) * | 2018-03-16 | 2018-09-28 | 上海交通大学 | 一种船舶动力定位推力分配智能优化方法 |
CN108845576A (zh) * | 2018-06-28 | 2018-11-20 | 中国船舶重工集团公司第七0七研究所 | 一种基于粒子群与序列二次规划结合的推力分配方法 |
CN109343353A (zh) * | 2018-12-17 | 2019-02-15 | 珠海萨博思海洋工程有限公司 | 一种用于动力定位船舶推力分配的智能优化方法 |
CN109765910A (zh) * | 2019-03-08 | 2019-05-17 | 哈尔滨工程大学 | 一种基于改进差分进化算法的船舶动力定位推力分配方法 |
CN111061285A (zh) * | 2019-12-12 | 2020-04-24 | 哈尔滨工程大学 | 一种船舶动力定位推力分配方法 |
-
2020
- 2020-11-25 CN CN202011333276.3A patent/CN112394641B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103129729A (zh) * | 2013-01-28 | 2013-06-05 | 中交天津航道局有限公司 | 一种挖泥船动力定位系统推力分配的寻优方法 |
CN103552680A (zh) * | 2013-11-12 | 2014-02-05 | 中交天津航道局有限公司 | 一种耙吸挖泥船扇形艏喷定位控制方法 |
CN103823372A (zh) * | 2014-02-24 | 2014-05-28 | 中国船舶重工集团公司第七○二研究所 | 海洋工程装备动力定位系统的多推进器推力分配方法 |
CN108255062A (zh) * | 2018-01-22 | 2018-07-06 | 集美大学 | 基于改进差分进化机理的动力定位节能推力分配方法 |
CN108594651A (zh) * | 2018-03-16 | 2018-09-28 | 上海交通大学 | 一种船舶动力定位推力分配智能优化方法 |
CN108845576A (zh) * | 2018-06-28 | 2018-11-20 | 中国船舶重工集团公司第七0七研究所 | 一种基于粒子群与序列二次规划结合的推力分配方法 |
CN109343353A (zh) * | 2018-12-17 | 2019-02-15 | 珠海萨博思海洋工程有限公司 | 一种用于动力定位船舶推力分配的智能优化方法 |
CN109765910A (zh) * | 2019-03-08 | 2019-05-17 | 哈尔滨工程大学 | 一种基于改进差分进化算法的船舶动力定位推力分配方法 |
CN111061285A (zh) * | 2019-12-12 | 2020-04-24 | 哈尔滨工程大学 | 一种船舶动力定位推力分配方法 |
Non-Patent Citations (1)
Title |
---|
An Improved Thrust Allocation Method Based on Genetic Algorithm and Pseudo Inverse;Jun Wu et al.;《 2019 Chinese Automation Congress (CAC)》;20200213;第2388-2393页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112394641A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109839967B (zh) | 一种自整定pid节能温度控制方法及模块 | |
CN106950955B (zh) | 基于改进los引导算法的船舶航迹控制方法 | |
CN107515598A (zh) | 基于多参数动态矩阵控制的火电机组分布式协调控制系统 | |
CN109765910B (zh) | 一种基于改进差分进化算法的船舶动力定位推力分配方法 | |
CN105281615A (zh) | 一种基于改进粒子群算法优化无刷直流电机模糊控制器的方法 | |
CN106557088A (zh) | 一种基于事件触发机制的船舶航向控制器及其控制方法 | |
CN104749958B (zh) | 模型依赖平均驻留时间非线性切换系统异步模糊控制方法 | |
CN105974983A (zh) | 一种数字电压环与电流环互相跟随的控制方法 | |
CN112394641B (zh) | 一种基于双线程并行计算的船舶实时推力分配方法 | |
CN109375507B (zh) | 一种火电机组深度调峰控制方法 | |
CN106681424A (zh) | 一种太阳能光伏发电mppt控制系统及控制方法 | |
CN110794677A (zh) | 基于迭代学习的抽汽供热发电机组协调系统预测控制器 | |
Mo et al. | Application of neural network algorithm in optimal control of ethylene distillation tower | |
CN116415728A (zh) | 一种碳排放量的预测方法、系统、电子设备及存储介质 | |
CN115981156A (zh) | 一种时变输出约束下的航空发动机主动限制保护控制方法 | |
Zhu et al. | Fault-tolerant trajectory tracking based on improved chaotic firefly algorithm model prediction control for human-occupied vehicle with ocean current | |
CN115309050A (zh) | 基于双层结构的燃-燃联合动力装置多目标优化控制方法 | |
Zhang et al. | On-board map learning-based combustion phase control in spark ignition engines | |
CN112925201B (zh) | 一种基于模型预测控制的船舶推进系统燃油控制方法 | |
CN101763082B (zh) | 一种有效的基于两点步长梯度法的工业过程动态优化系统及方法 | |
CN113325705B (zh) | 一种线性切换系统的砰-砰控制方法 | |
CN108873820A (zh) | 一种从动轴参考指令实时修正的多轴速率伺服系统同步控制方法 | |
CN110850710A (zh) | 基于无模型自适应控制的水电机组控制优化方法 | |
Jianying et al. | Research on electro-hydraulic force servo control system based on specialist PID control strategy | |
Zhao et al. | Hydromechanics Research of Pump Flow Control System Based on BP Neural Network PID |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |