技术领域
[0001] 本发明属于无人艇追逃博弈控制技术领域,一种无人艇三体追逃博弈规划与控制方法。
相关背景技术
[0002] 21世纪是海洋的世纪。海洋不仅蕴藏着丰富的生物资源、油气资源和矿物资源,也是人类生存和可持续发展的战略空间和资源要地。随着海洋强国战略的实施,海洋成为大国博弈的“主战场”。因此,在海洋强国建设的过程中,像无人艇这类高精尖新型海洋智能装备是我们迈向海洋强国的关键支撑力量。在复杂多变的海洋环境下,单无人艇载荷配置十分有限、任务能力偏弱、作战样式相对单一,在很大程度上无法保证任务的顺利完成。无人艇集群协同作战可弥补单艇能力的不足,充分发挥群体灵活部署快、监控范围广、作战组织灵活、抗毁重构性强等优势。为应对攻击无人艇,最有效的方法就是利用无人艇集群对入侵的无人艇进行拦截、驱离或围捕,从而形成无人艇集群间的博弈对抗。
[0003] 针对多智能体博弈控制问题,国内外学者已经进行了广泛研究,并且提出多种应用场景和技术方案。目前,多智能体博弈主要包括边界防御、追逃博弈、目标包围和目标拦截等问题。在多智能体追逃博弈方面,JosefShinar针对一对一两方智能体追逃场景,提出了一种具有有界控制和规定持续时间的混合动力学的追击‑规避差分博弈,通过引入逃避者的混合动力学,使得逃避者可以在游戏中可以根据实际情况改变状态,实现了逃避者逃生区域的扩展。Xu Fang针对多对一的多智能体追逃场景,提出了一种多追逐者与单逃避者的分布式追逐‑逃避博弈算法,使追捕者能够形成包围圈并接近速度更快的逃避者。Zachariah E.Fuchs针对一对多的多智能体追逃场景,提出了一种具有新型成本函数的单追击者、双逃避者的差分博弈,通过对产生的常微分方程组反向积分,生成三智能体系统的最优轨迹,由此产生具有合作行为的两逃避者之间的轨迹。对于多智能追逃博弈问题前者大多未引入被保护角色,目标‑攻击者‑防御者(Target‑Attacker‑Defender,TAD)是一类包含被保护者的特殊追逃问题,包括攻击者‑目标、防御者‑攻击者两组追逃关系,其中,攻击者的目的是追击目标对象,同时躲避防御者的拦截,而目标对象与防御者作为同一团队,在博弈过程中需要避免目标被攻击者攻击,同时通过派遣防御者来拦截攻击者。对于多智能体目标‑攻击者‑防御者(TAD)的追逃问题,Ashwini Ratnoo针对三智能体拦截场景,提出了针对防守方的CLOS指令和针对目标的协同引导律,以最大限度地提高攻击者与防御者的横向加速度比,使防守方保持在目标和攻击者的线上,并实现更好的控制力。目前,TAD类追逃问题在无人艇领域研究较少,Bin Lin针对无人艇目标‑攻击者‑防御者(TAD)的追逃问题,提出了具有有限速度和角速度的无人艇目标‑攻击者‑防御者(TAD)博弈的两种策略,给出了一种新颖的R‑C‑S轨迹框架来评估无人艇到达预先安排坐标的时间,并将其应用于双方的TAD博弈策略,实现防御无人艇对攻击无人艇的拦截行为。现有三体追逃博弈策略存在如下问题:
[0004] 第一,现有多智能体追逃博弈策略,大多仅考虑了防御者单方如何实现对攻击方的拦截,而没有考虑如何设计被保护目标和防御者的协同博弈策略,实现对攻击方的拦截和躲避。
[0005] 第二,现有三体追逃博弈策略,通常仅针对质点模型或仅考虑了线性运动学系统,导致规划的策略不够光滑,难以应用到运动学高度非线性的无人艇系统中。
[0006] 第三,现有无人艇三体追逃博弈策略,未考虑无人艇在未知复杂海洋环境下作业时,其模型参数不确定和未知海洋环境风、浪、洋流扰动对三体追逃博弈结果的影响。
具体实施方式
[0076] 需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合,下面将参考附图并结合实施例来详细说明本发明。
[0077] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0078] 一种无人艇三体追逃博弈规划与控制方法,包括以下步骤:
[0079] S1:获取目标无人艇、防御无人艇及攻击无人艇的当前时刻位置信息及方向角信息;
[0080] S2:基于目标无人艇、防御无人艇及攻击无人艇的当前时刻位置信息及方向角信息,构建目标‑防御无人艇团队状态约束;
[0081] S3:基于目标无人艇、防御无人艇及攻击无人艇的初始位置信息及初始方向角信息,构建目标‑防御无人艇团队初始状态约束;
[0082] S4:设计目标‑防御无人艇团队代价函数;
[0083] S5:基于目标‑防御无人艇团队输入约束、目标无人艇合速度约束、目标‑防御无人艇团队初始状态约束、目标‑防御无人艇团队状态约束及目标‑防御无人艇团队代价函数构建目标‑防御无人艇团队博弈策略进行设计,输出目标无人艇纵荡速度信息、目标无人艇横荡速度信息和防御无人艇的角速度信息;
[0084] S6:基于目标无人艇纵荡速度信息、目标无人艇横荡速度信息,设计航向自抗扰动力学控制器,输出目标无人艇控制输入力矩,基于目标无人艇控制输入力矩实现目标无人艇逃脱攻击无人艇的追逃控制;
[0085] S7:基于防御无人艇的角速度信息,设计艏摇角速度自抗扰动力学控制器,输出防御无人艇控制输入力矩;
[0086] S8:基于防御无人艇参考前向速度,设计纵荡速度自抗扰动力学控制器,输出防御无人艇控制输入力;
[0087] 基于防御无人艇控制输入力、防御无人艇控制输入力矩实现防御无人艇对攻击无人艇的拦截控制。
[0088] 步骤先进行步骤S1、再同时执行S2/S3/S4、再执行S5、接下来同时执行S6/S7/S8;
[0089] 所述目标无人艇运动学模型为:
[0090]
[0091] 其中,uT为目标无人艇的纵荡速度,vT为目标无人艇的横荡速度,rT为目标无人艇的艏摇角速度,ψT为目标无人艇的航迹角,xT和yT分别为目标无人艇在地球坐标系下的横纵坐标。
[0092] 所述目标无人艇动力学模型为:
[0093]
[0094] 其中,mTu,mTv,mTr分别为目标无人艇纵荡方向质量、横荡方向质量和转动惯量系数;fTu(·),fTv(·),fTr(·)表示未知非线性函数,包括水动力阻尼力、科里奥利力以及未建模流体动力学;τTiu,τTir分别为纵荡方向和艏摇角方向控制输入力和力矩;τTwu,τTwv,τTwr表示由风、浪、海流引起的时变环境扰动力和力矩;
[0095] 所述防御无人艇运动学模型为:
[0096]
[0097] 其中,(xD,yD)为防御无人艇的位置;ψDW=ψD+βD为防御无人艇实际移动方向角,ψD为防御无人艇的艏摇角;βD=atan(vD/uD)表示防御无人艇的侧滑角;表示防御无人艇实际运动速度;uD,vD,rD分别为船体坐标系下的纵荡速度、横荡速度和艏摇角速度;
[0098] 所述防御无人艇动力学模型为:
[0099]
[0100] 其中,mDu,mDr分别为防御无人艇纵荡方向质量和转动惯量系数;fDu(·),fDr(·)表示未知非线性函数,包括水动力阻尼力、科里奥利力以及未建模流体动力学;τDu,τDr分别为纵荡方向和艏摇角方向控制输入力和力矩;τDwu,τDwr表示由风、浪、海流引起的时变环境扰动力和力矩;
[0101] 所述目标无人艇运动学模型、防御无人艇运动学模型用于目标‑防御无人艇团队轨迹规划设计;
[0102] 所述目标无人艇动力学模型、防御无人艇动力学模型用于艏摇角速度自抗扰动力学控制器、纵荡速度自抗扰动力学控制器、航向自抗扰动力学控制器设计;
[0103] 进一步地,所述目标‑防御无人艇团队初始状态约束公式如下:
[0104] X0={x0T,y0T,ψ0T,x0A,y0A,ψ0AW,x0D,y0D,ψ0DW,R10,R20,θ10,θ20};
[0105] 其中,R10为攻击无人艇和防御无人艇之间的初始欧式距离;R20为攻击无人艇和目标无人艇之间的初始欧式距离;θ10为攻击无人艇和防御无人艇之间的初始视距角;θ20为攻击无人艇和目标无人艇之间的初始视距角;且
[0106]
[0107] 目标无人艇初始位置(x0T,y0T)及航迹角信息ψ0T、防御无人艇初始位置(x0D,y0D)及方向角信息ψ0DW和攻击无人艇初始位置(x0A,y0A)及方向角信息ψ0AW。
[0108] 进一步地:所述目标‑防御无人艇团队状态约束 如下:
[0109]
[0110] 其中,X={xT,yT,ψT,xA,yA,ψAW,xD,yD,ψDW,R1,R2,θ1,θ2}为目标‑防御无人艇团队状态;X的导数表达 (xT,yT)为目标无人艇位置信息;ψT为目标无人艇航迹角信息;R1为攻击无人艇和防御无人艇之间的距离;R2为攻击无人艇和目标无人艇之间的距离;θ1为攻击无人艇和防御无人艇之间的视距角;θ2为攻击无人艇和目标无人艇之间的视距角;目标‑防御无人艇团队合作策略u={uTf,vTf,rDf},即目标无人艇纵荡速度和横荡速度信息及防御无人艇的角速度信息;f(·)为目标‑防御无人艇团队状态的导数,(xA,yA)为攻击无人艇当前时刻位置信息及ψAW为无人艇当前时刻方向角信息;
[0111] 且:
[0112]
[0113] 其中,UT,UA分别表示目标无人艇和攻击无人艇实际运动速度。
[0114] 进一步地:所述目标‑防御无人艇团队的代价函数J的表达式如下:
[0115]
[0116] 其中,τh为采样时间; 为阈值,即当目标无人艇与攻击无人艇之间的距离小于e时,目标无人艇开始运动。
[0117] 进一步地:所述目标‑防御无人艇团队输入约束模块公式如下:
[0118] u∈[umin,umax](9)
[0119] 其中,u为目标‑防御无人艇团队合作策略量;umin目标‑防御无人艇团队合作策略量下界约束;umax目标‑防御无人艇团队合作策略量上界约束。
[0120] 进一步地:所述目标无人艇合速度约束输出信号为目标无人艇合速度约束[0121] 其中,uTf为目标无人艇纵荡速度;vTf为目标无人艇横荡速度。
[0122] 进一步地:所述目标‑防御无人艇团队博弈策略公式表达式如下:
[0123]
[0124] 约束:
[0125]
[0126] X(0)=X0 (13)
[0127] u∈[umin,umax](14)
[0128]
[0129] 其中,目标‑防御无人艇团队合作策略u={uTf,vTf,rDf};uTf,vTf,rDf分别为目标无人艇纵荡速度信息、目标无人艇横荡速度信息和防御无人艇的角速度信息; 表示在时间间隔[t,t+τh]内定义的分段连续函数的空间。
[0130] 进一步地,基于目标无人艇纵荡速度信息uTf、目标无人艇横荡速度信息vTf,设计航向自抗扰动力学控制器,输出目标无人艇控制输入力矩τTr,基于目标无人艇控制输入力矩实现目标无人艇逃脱攻击无人艇的追逃控制;
[0131] 根据公式(2)目标无人艇的航向控制系统模型为:
[0132]
[0133] 其中,
[0134] 将扩张状态观测器的形式设计为:
[0135]
[0136] 其中,kT1,kT2,kT3为观测器参数; 分别是ψT,rT,σTr的估计值;
[0137] 航向自抗扰动力学控制器形式为:
[0138]
[0139] 其中,kTp,kTd为常值;且 为ψTf的一阶导数; 为ψTf的二阶导数;
[0140] 进一步地,基于防御无人艇的角速度信息rDf,设计艏摇角速度自抗扰动力学控制器,输出防御无人艇控制输入力矩rDr的过程如下;
[0141] 据公式(4)将扩张状态观测器的形式设计为:
[0142]
[0143] 其中, 为观测器参数; 为rD的估计值; 为σDr的估计值;且
[0144] 艏摇角速度自抗扰动力学控制器形式为:
[0145]
[0146] 其中,kDτr为常值; 为rDf的一阶导数;
[0147] 进一步地,所述基于防御无人艇参考前向速度UDf,设计纵荡速度自抗扰动力学控制器,输出防御无人艇控制输入力τDu;
[0148] 根据公式(4)将扩张状态观测器的形式设计为:
[0149]
[0150] 其中, 为观测器参数; 为UD的估计值; 为σDU的估计值;且
[0151]
[0152] 纵荡速度自抗扰动力学控制器形式为:
[0153]
[0154] 其中,kDτu为常值;UDf为防御无人艇参考前向速度设置为定值; 为UDf的一阶导数。
[0155] 一种无人艇三体追逃博弈规划与控制装置,包括:
[0156] 获取模块:用于获取目标无人艇、防御无人艇及攻击无人艇的当前时刻位置信息及方向角信息;
[0157] 目标‑防御无人艇团队状态约束模块:基于目标无人艇、防御无人艇及攻击无人艇的当前时刻位置信息及方向角信息,构建目标‑防御无人艇团队状态约束;
[0158] 目标‑防御无人艇团队初始状态约束模块:基于目标无人艇、防御无人艇及攻击无人艇的初始位置信息及初始方向角信息,构建目标‑防御无人艇团队初始状态约束;
[0159] 目标‑防御无人艇团队代价函数设计模块:用于设计目标‑防御无人艇团队代价函数;
[0160] 目标无人艇合速度约束模块:用于确定目标无人艇合速度约束;
[0161] 目标‑防御无人艇团队输入约束模块:用于确定标‑防御无人艇团队输入约束;
[0162] 目标‑防御无人艇团队博弈策略设计模块:用于基于目标‑防御无人艇团队输入约束、目标无人艇合速度约束、目标‑防御无人艇团队初始状态约束、目标‑防御无人艇团队状态约束及目标‑防御无人艇团队代价函数构建目标‑防御无人艇团队博弈策略进行设计,输出目标无人艇纵荡速度信息、目标无人艇横荡速度信息和防御无人艇的角速度信息;
[0163] 航向自抗扰动力学控制器设计模块:用于基于目标无人艇纵荡速度信息、目标无人艇横荡速度信息,设计航向自抗扰动力学控制器,输出目标无人艇控制输入力矩,基于目标无人艇控制输入力矩实现目标无人艇逃脱攻击无人艇的追逃控制;
[0164] 艏摇角速度自抗扰动力学控制器模块:用于基于防御无人艇的角速度信息,设计艏摇角速度自抗扰动力学控制器,输出防御无人艇控制输入力矩,基于防御无人艇参考前向速度,输出防御无人艇控制输入力矩;
[0165] 纵荡速度自抗扰动力学控制器模块:用于基于防御无人艇参考前向速度,设计纵荡速度自抗扰动力学控制器,输出防御无人艇控制输入力;
[0166] 基于防御无人艇控制输入力、防御无人艇控制输入力矩实现防御无人艇对攻击无人艇的拦截控制。
[0167] 所述目标‑防御无人艇团队初始状态设计模块的输入端为目标无人艇初始位置及航迹角信息、防御无人艇团队初始位置及方向角信息及传感器探测攻击无人艇初始位置及方向角信息,所述目标‑防御无人艇团队初始状态设计模块的输出端与目标‑防御无人艇团队博弈策略设计模块输入端相连;所述目标‑防御无人艇团队初始状态设计模块用于目标无人艇团队初始时刻的状态信息;
[0168] 所述目标‑防御无人艇团队状态约束模块输入端为传感器探测攻击无人艇当前时刻位置及方向角信息,同时,与目标‑防御无人艇团队博弈策略设计模块和目标无人艇和防御无人艇模型输出端相连;所述目标‑防御无人艇团队状态约束模块输出端与目标‑防御无人艇团队博弈策略设计模块输入端相连;所述目标‑防御无人艇团队状态约束模块用于计算目标‑防御无人艇团队状态约束;
[0169] 所述目标‑防御无人艇团队代价函数设计模块输出端与目标‑防御无人艇团队博弈策略设计模块输入端相连;所述目标‑防御无人艇团队代价函数设计模块用于给出目标‑防御无人艇团队的代价函数;
[0170] 所述目标‑防御无人艇团队输入约束模块的输出端与目标‑防御无人艇团队博弈策略设计模块输入端相连;所述目标‑防御无人艇团队输入约束模块用于给出目标‑防御无人艇团队合作策略上下界约束信息;
[0171] 所述目标无人艇合速度约束模块输出端与目标‑防御无人艇团队博弈策略设计模块输入端相连;所述目标无人艇合速度约束模块用于给出目标无人艇合速度约束;
[0172] 所述目标‑防御无人艇团队博弈策略设计模块的输入端与目标‑防御无人艇团队初始状态设计模块、目标‑防御无人艇团队状态约束模块、目标‑防御无人艇团队代价函数设计模块、目标‑防御无人艇团队输入约束模块和目标无人艇合速度约束模块的输出端相连;所述的目标‑防御无人艇团队博弈策略设计模块的输出端与航向自抗扰动力学控制器模块、艏摇角速度自抗扰动力学控制模块和纵荡速度自抗扰动力学控制模块的输入端相连;所述目标‑防御无人艇团队博弈策略设计模块用以计算目标‑防御无人艇团队合作策略信号;
[0173] 所述航向自抗扰动力学控制器模块的输入端与目标‑防御无人艇团队博弈策略设计模块的输出端相连,所述航向自抗扰动力学控制器模块的输出端与目标无人艇模型的输入端相连;所述航向自抗扰动力学控制器模块用于给出目标无人艇控制输入力矩;
[0174] 所述艏摇角速度自抗扰动力学控制模块的输入端与目标‑防御无人艇团队博弈策略设计模块的输出端相连,所述艏摇角速度自抗扰动力学控制模块的输出端与防御无人艇模型的输入端相连;所述艏摇角速度自抗扰动力学控制模块用于给出防御无人艇艏摇角速度方向控制输入力矩;
[0175] 所述纵荡速度自抗扰动力学控制模块的输入端给定防御无人艇前向参考速度,所述纵荡速度自抗扰动力学控制模块的输出端与防御无人艇模型的输入端相连;所述纵荡速度自抗扰动力学控制模块用于给出防御无人艇前向速度方向控制输入力。
[0176] 对于式(2)、(4)、(8)、(9)、(10)、(11)、(14)、(15)、(17)、(18)、(19)、(20)、(21)、(22)的控制参数选择如下:mu=25.8,mv=33.8,mr=2.76,τh=0.3,dt=0.05,umin=[‑2,‑2,‑0.5],umax=[2,2,0.5], kT1=20,kT2=5,kT3=1,kTp=10,kTd=20,kDτu=1,kDτr=1。
[0177] 仿真结果如图3‑图13所示。
[0178] 图3给出了防御无人艇拦截攻击无人艇运动轨迹示意图,可以看出防御无人艇在攻击无人艇捕获目标无人艇之前成功将其拦截。
[0179] 图4给出了目标‑攻击‑防御无人艇运动距离曲线图,可以看出防御无人艇和攻击无人艇之间的距离收敛到零附近。
[0180] 图5给出目标无人艇合作策略曲线图,可以看出目标函数对目标无人艇路径规划是有效的。
[0181] 图6给出防御无人艇合作策略曲线图,可以看出目标函数对防御无人艇路径规划是有效的。
[0182] 图7给出了目标无人艇的航迹角跟踪曲线图,可以看出对目标无人艇实际航迹角信息和估计航迹角信息实现了对制导信号地良好跟踪。
[0183] 图8给出了目标无人艇的艏摇角速度跟踪曲线图,可以看出对目标无人艇实际艏摇角速度信号实现了对估计艏摇角速度信号地良好跟踪。
[0184] 图9给出了防御无人艇前向速度跟踪曲线图,可以看出防御无人艇实际前向速度信息和估计前向速度信息均实现了对制导信号地良好跟踪。
[0185] 图10给出了防御无人艇艏摇角速度跟踪曲线图,可以看出防御无人艇实际艏摇角速度和估计艏摇角速度信息均实现了对制导信号地良好跟踪。
[0186] 图11给出了目标无人艇控制力矩曲线图,可以看出对于目标无人艇经暂态过程后前向控制输入推力趋于稳定。
[0187] 图12给出了防御无人艇前向推力曲线图,可以看出对于防御无人艇经暂态过程后前向控制输入推力趋于稳定。
[0188] 图13给出了防御无人艇艏摇角方向力矩曲线图,可以看出对于防御无人艇经暂态过程后艏摇角方向的控制输入力矩趋于稳定。
[0189] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。