对抗环境下的多无人机编队方法和队形变换研究

肖雁冰 张迎周(导)南京邮电大学
标签(空格分隔): 论文阅读


摘要
  在无人机功能有限的今天,面对日趋复杂的作战任务、无法预测的作战环境,单一无人机所拥有的性能逐渐无法满足作战要求,无人机更多地以多机协同作战的方式执行综合性任务。多无人机编队是多无人机系统的重要组成部分,是任务分配、路径规划等工作的前提,但在目前高对抗的动态环境中也受到了巨大的挑战,主要包括:
(1)以现有编队方法构建的多无人机编队在队形稳定性和队形变换自主性两方面无法同时得到满足。
(2)当编队队形受到影响需要调整时,编队变换的速度不够快,变换时的飞行路径重叠,飞行距离过长。
  针对这两个多无人机编队领域的问题,本文所作的主要工作如下。首先,本文研究了经典的多无人机编队方法,融合了长机-僚机法虚拟结构法的部分特点,**提出了一种改进的长机-僚机法。该方法使用改进后的人工势场算法为多无人机编队提供基本的编队控制;引入分布式一致性算法的思想构建编队,为多无人机系统的信息一致性提供保证。保留实体长机作为决策中心,减少编队对于地面控制中心的依赖,提高无人机编队的自主性;预备多架实体长机,形成多核心的编队模式,提高无人机编队的安全性。**通过应用上述的多无人机编队方法,解决对抗环境下多无人机编队稳定性和队形变换自主性无法同时满足的问题。其次,本文选用多智能体强化学习算法,融入启发式函数,提出了一种改进启发式强化学习算法,用于解决多无人机队形变换问题。该算法借助适用于编队变换的启发式反向传播算法,提高强化学习的收敛效率。结合模拟退火相关方法改进强化学习中的动作选择策略,使得强化学习算法能够以更快的速度获得优质的解。通过上述的强化学习算法,解决对抗环境下多无人机队形变换效率低的问题。最后,本文利用虚拟化和分布式系统相关技术实现多无人机编队的仿真模拟实验。仿真实验表明:改进的长机-僚机编队方法满足作战任务需求,并在稳定性和自主性方面具有优越性;改进的启发式强化学习算法高效地解决队形变换问题,为多无人机编队在队形变换时提供安全、优质的飞行路径。

关键词: 多无人机编队、队形变换、分布式一致性算法、强化学习

一、研究现状探究

1.1、多无人机编队方法问题的研究现状

构建多无人机系统执行作战任务的过程包括:分析建模、组建编队、任务分配、路径分配、执行任务,当遇到突发威胁或者任务发生改变时还有队形变换等步骤。

   其中多无人机的编队方法始终作为基础支撑起来整个任务。

多无人机编队控制策略:集中式控制策略和分布式控制策略
**集中式控制策略:**集中式控制策略要求无人机编队中至少存在一架无人机能够知晓所有无人机的飞行状态信息,根据这些信息,规划出所有无人机的飞行策略,从而完成作战任务。集中式控制策略的优点是实现简单、理论完备;缺点是缺乏灵活性、容错性,编队内通信压力大。
**分布式控制策略:**分布式控制策略不要求编队中存在知晓所有飞行状态信息的无人机,只需知晓邻近无人机的状态信息便可完成编队控制。分布式控制策略的优点是降低了对无人机通讯能力的要求,提高了编队的灵活性;缺点是实现较为困难且编队受到干扰可能会变大。

1.2、多无人机编队重构与队形变换问题的研究现状

多无人机编队重构和队形变换:机群在执行任务的过程中,由于已完成部分任务或因突发状况导致机群改变原定任务目标或者改变原定的编队结构。

  在进行多无人机编队重构与队形变换的过程中,需要为每架无人机重新制定在编队中的新位置,并为每架无人机生成从原来的编队位置到新编队位置的飞行轨迹。

这些飞行轨迹必须以无人机的安全飞行为前提,同时满足无人机的动力学特征、物理约束条件等客观约束条件。无人机的编队重构与队形变换是无人机编队控制方向的重要研究内容之一,它是在动态环境中对上一小节中介绍的无人机编队方法进行调整,实现无人机之间的互相支援与补充,从而使得多无人机编队适应动态环境中的变化,解决动态环境中的各种威胁,确保多无人机编队最终顺利且高效地完成任务。多无人机编队重构与队形变换方向的研究起步较晚,但仍然取得了不少的成果;同时,与多无人机的路径规划相比,虽然编队重构与队形变换侧重的方向不同,但路径规划方向的研究成果仍然有不少的参考价值。

1.3、研究内容及创新点

当前方法不足之处:
(1)现有的多无人机编队方法,如长机-僚机法、虚拟结构法、行为控制法等,无法在复杂的对抗环境下同时满足编队稳定性与队形变换自主性;
(2)现有的多无人机队形变换算法在环境未知或部分未知的情况下执行和收敛的速率较低。
本文主要研究内容:
(1)利用分布式一致性算法对传统的无人机编队方法进行改造,使其同时满足编队稳定性和队形变换自主性;
(2)利用融合了启发式思想的强化学习算法,完成多无人机的队形变换并提高其收敛的速率;
(3)利用虚拟化等相关技术实现多无人机编队的仿真模拟实验。
创新点:
(1)提出了一种基于改进的长机-僚机法的多无人机编队方法。本文以长机-僚机法和虚拟结构法的建模思路为基础,考虑到在对抗环境下无人机机群自主性,将二者融合:保留长机作为通信和决策中心,保留虚拟领航无人机作为编队中心和队形支点。从比例控制器的设计思路中得到启发改进传统人工势场算法中的势场函数,提升人工势场算法的控制效果,将改进后的人工势场算法作为整个无人机编队的队形控制算法。同时提出冗余Leader 的概念,防止在对抗环境下因长机(Leader)发生故障而导致编队瓦解任务失败的情况发生,保障任务的顺利执行。
(2)提出了一种基于改进启发式强化学习算法的多无人机队形变换方法。当多无人机编队已完成部分任务或任务因故发生改变时,无人机机群将可能需要处理队形变换问题。本文以多智能体强化学习算法为基础,引入启发式函数,利用多智能体启发式强化学习解决多无人机编队在未知或部分未知的复杂环境下的队形变换问题,提高强化学习的求解速度。同时融合模拟退火的相关概念,改进动作选择函数,通过对比实验选用合适的初始温度和温控函数,解决在强化学习算法执行过程中出现的“探索”和“利用”的平衡问题,有效提高最终解的质量。
(3)应用虚拟化和分布式相关技术实现多无人机编队的飞行模拟。传统的无人机编队模拟实验主要有两种方式,一种是以使用 Matlab 等编程语言为主的软件仿真模拟;另一种是以小型无人飞行器、无人车等实体设备进行的测试实验。前者往往采用中心化的思想构建实验,实验的结果与真实应用场景下的效果差距较大;后者虽然实验效果较好且具有不错的实践价值,但需要负担较高的实验成本,且难以进行大规模实验训练。本文使用 Docker 和 Zookeeper技术搭建多无人机系统,在单台计算机中便可设置多个节点模拟无人机编队飞行过程。

二、背景知识

2.1、多无人机编队方法

多无人机的编队协同包含了无人机集群编队的保持和编队的变换。其中编队的保持是指:机群中的无人机保持相对位置不变;编队的变换是指:无人机在接收到某些信号后迅速地做出队形的改变。为了实现多无人机的协同作战必须保证多无人机机群存在一个安全、可靠且高效的编队方法。国内外现存的各类编队方法,从无人机的编队控制原理角度出发,可以将其大致分为集中式控制方法和分布式控制方法两大类。除此以外,多无人机编队控制方法又可以通过以下三种主要模式进行实现:长机-僚机法、虚拟结构法和行为控制法。

2.11、长机-僚机法

从控制原理的角度来看属于集中式控制方法。长机-僚机法是目前多无人机编队控制中最常被使用的方法。
长机-僚机法的优点:模型简单、直观,易理解,易实现,而且体系稳定成熟。
长机-僚机法的缺点:第一,应用长机-僚机法的无人机系统过于依赖长机,当长机发生故障,整个系统将失效,导致任务失败;第二,长机-僚机法存在误差传导的问题,在某些控制策略下,僚机和僚机之间存在关联,与长机相邻的僚机所产生的误差将叠加到与长机较远的僚机上。

2.12、虚拟结构法

虚拟结构法从控制原理的角度来看同样属于集中式的控制方法。虚拟结构法最早由 Anthony Lewis M 提出。在应用了虚拟结构法的无人机编队中并没有指一架被指定的无人机作为长机,而是将多无人机机群当作一个统一的虚拟刚体。无人机编队设定一个虚拟的几何中心,编队中的所有无人机按照某种控制策略和队形,参照这一虚拟几何中心编队飞行并执行任务。 虚拟法的优点:解除了长机-僚机法中对于长机的依赖,同时也解决了误差传导问题,使得编队控制的精度提高。
虚拟法的缺点:该方法是一种集中控制方法,对系统的通信能力要求较高,且无法发挥出无人机的自主性。在紧急的作战环境中,无人机依然需要将情况反馈给控制中心后才能做出反应,存在延迟。

2.13、行为控制法

行为控制法从控制原理的角度来看属于分布式控制方法。应用行为控制法的多无人机编队将整个机群分解成多个子系统,每一个子系统中设定了几种经过计算并通过数学表达式定义的基本行为控制方法,如队形组合、躲避障碍等。子系统中的无人机可以通过局部的信息交互并利用基本行为控制方法达到编队的目的。
行为控制法的优点:编队的适应性强,编队中的无人机碰撞避免易于实现。
行为控制法的缺点:子系统的行为定义困难,设计复杂。

2.2、强化学习

强化学习是一种涉及计算机科学、仿生学、统计学等多个领域的综合性科学思想。

2.21、基本概念

强化学习(Reinforcement Learning,RL),又被称为再励学习或评价学习,是隶属于机器学习但有别于传统机器学习的重要概念。强化学习独特思想在于强调不仅利用已有的数据,还利用通过对环境的探索获得的新数据,并将这些新数据循环往复地更新迭代到当前模型中。在强化学习中,学习是为了更好地对环境进行探索,而探索则是为了获取数据进行更好的学习。强化学习的思想最早可以被追溯到巴甫洛夫与狗的经典条件反射实验,并在 1957 年,由美国学者 Richard Bellman 总结出了强化学习的核心模型——马尔可夫决策过程(Markov Decision Process, MDP)。

2.22、马尔科夫决策过程

马尔可夫决策过程是一个无记忆的随机过程,每一个状态包含了所有的历史信息,即当前做出的决策仅与上一个状态有关。马尔可夫决策过程通常由一个四元组构成:M=<S,A,Psa,R>M=<S, A, P_{sa}, R>M=<S,A,Psa​,R>。其中 SSS代表了有限空间中的状态集合(states);AAA代表了有限空间中的动作集合(actions);PsaP_{sa}Psa​ 代表了状态转移的概率集合,即在当前 $s∈S $的状态下,选择行动 $a∈A 后会转移到其他状态的概率;后会转移到其他状态的概率;后会转移到其他状态的概率;R$ 代表了回报函数,通常情况下它是一个与状态和动作相关的函数可以表示为r(s,a)r(s,a)r(s,a)。
Rsa=E[∑k=0∞γkrk+1∣S=s,A=a](1)R_{s a}=E\left[\sum_{k=0}^{\infty} \gamma^{k} r_{k+1} \mid S=s, A=a\right]\tag{1} Rsa​=E[k=0∑∞​γkrk+1​∣S=s,A=a](1)
其中γγγ是折扣因子,取值在 0 到 1之间,使越靠后的回报对回报函数的影响越小,模拟出了未来回报的不确定性,同时使得回报函数有界。

2.23、Q-Learning和SARSA

Q-Learning 算法是一种更勇敢、贪婪的算法,它唯一的目标就是最大化 Q 值;而 SARSA则是一种相对胆小、保守的算法,它也能不断地想着目标进发,但它也对错误和死亡更敏感,更在乎每一次的决策。

2.24 多智能体强化学习

标准的强化学习算法主要包含四大要素,分别是:环境、状态、动作和值函数,通过构建数学模型,如马尔可夫决策过程,解决问题。目前针对单个智能体(Agent)即单智能体强行学习算法的研究已经构建了完善的体系,并取得了丰硕的成果。然而单个智能体的处理能力和效率始终是有限的,利用多智能体强化学习算法来解决复杂环境中的问题是有效的途径。当一个系统中存在多个能够单独执行任务的智能体时,该系统便被称作多智能体系统(Multi-Agent System,MAS)。在应用多智能体系统处理问题的场景中,问题解决的重点在于充分发挥整个系统的能动性和自主性,而不在于强调单个智能体的智能性。在某些场景中往往无法简单地使用单智能体的强化学习算法解决多智能体的问题,因此,目前专家学者对于多智能体强化学习算法的关注和研究便不断提高。

2.3、分布式算法

随着系统中的机器数量以及信息量、数据量的高速增长,服务器宕机从而引起损失的可能性不断提高,在这样的背景下,分布式一致性算法或被称为分布式共识算法应运而生。
####2.31、CAP定理
在分布式存在一个非常著名的定理:CAP 原理。该定理最早是由柏克莱加州大学的计算机领域的教授埃里克·布鲁尔于 2000年在分布式计算原则研讨会提出的假想,并于 2002 年被麻省理工学院的两名学者赛斯·吉尔伯特和南希·林奇证明从而成为定理。CAP 定理(CAP theorem),即布鲁尔定理(Brewer’s theorem),指出对于任意分布式计算系统而言,不可能同时达成以下三点:一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)。 CAP 定理中的一致性是指分布式系统中的各个节点必须拥有同一份最新的数据副本;CAP 定理中的可用性是指当分布式系统中的部分节点出现问题时,系统仍然能对外提供正常的读写操作;CAP 定理中的分区容错性是指当分布式系统的网络中出现某些问题从而导致实际上的网络分区存在,在网络恢复后能够自主正常地处理这些网络分区从而重新达成分布式系统中数据的一致性和可用性。
####2.32、算法实例
分布式系统主要通过两种模式实现各个不同节点之间的互相通信,它们分别是:共享内存(Shared Memory)和消息传递(Message Passing)。其中,共享内存这种模式由于空间限制、机器性能等各方面的因素,在大规模的分布式系统中应用较为困难。因此目前主流的分布式系统中的通信解决方案仍然以消息传递的形式为主。 然而以消息通信为基础构建出来的分布式系统,无法避免地存在如下的错误:消息出现丢失、延迟,进程推进慢、发生重启。而分布式一致性算法的研究就是要解决这些问题。 Paxos 和 Raft 算法是分布式一致性算法中最著名的两大算法。

三、基于改进的长机-僚机法的多无人机编队方法

  首先介绍了本文中出现的无人机类型、无人机基本运动模型和无人机编队模型;其次介绍了势场函数改进后的人工势场算法,以此作为多无人机编队的控制算法,并通过对比实验验证改进前后人工势场算法的控制效果;最后介绍了“冗余 Leader”的相关概念以及编队决策一致性的保持方法,提出了能够满足复杂作战环境下通信要求的改进的长机-僚机编队方法。

3.1、多无人机编队相关模型

多无人机协同作战执行任务时,无人机之间的功能性往往并不相同,为了体现不同无人机之间的差异,以求尽量模拟真实的作战环境,同时也为了简化仿真的难度,本文将无人机分为两大类型:侦察型(Reconnaissance)和攻击型(Attack),使用 U 表示无人机集合,使用 R, A进行区分,并假设长机角色均由侦察型无人机进行担任。通过这两种类型的组合可以完成诸如:探测、攻击和巡航等任务。
####3.11、无人机基础运动模型
无人机在 ttt 时刻的速度以及 t+1t+1t+1 时刻的加速度,可以通过迭代法求得 t+1t+1t+1 时刻的速度:
{vx(t+1)=vx(t)+ax(t+1)vy(t+1)=vy(t)+ay(t+1)(2)\left\{\begin{array}{l} v_{x}(t+1)=v_{x}(t)+a_{x}(t+1) \\ v_{y}(t+1)=v_{y}(t)+a_{y}(t+1) \end{array}\right.\tag{2} {vx​(t+1)=vx​(t)+ax​(t+1)vy​(t+1)=vy​(t)+ay​(t+1)​(2)

已知无人机在 ttt 时刻的坐标以及 t+1t+1t+1 时刻的速度,可以通过迭代法求得 t+1t+1t+1 时刻的坐标:
{x(t+1)=x(t)+vx(t+1)y(t+1)=y(t)+vy(t+1)(3)\left\{\begin{array}{l} x(t+1)=x(t)+v_{x}(t+1) \\ y(t+1)=y(t)+v_{y}(t+1) \end{array}\right.\tag{3} {x(t+1)=x(t)+vx​(t+1)y(t+1)=y(t)+vy​(t+1)​(3)

本文所提出的改进的长机-僚机法融合了部分虚拟结构法中的思想,设置了一架虚拟无人机作为整个多无人机编队的队形支点,通过这一支点构建出整个无人机编队的队形,并且在多无人机编队的飞行过程当中需保持队形。因此该虚拟无人机具有与上文中真实无人机相同的运动表达式:
{vvx(t+1)=vvx(t)+avx(t+1)vvy(t+1)=vvy(t)+avy(t+1)xv(t+1)=xv(t)+vvx(t+1)yv(t+1)=yv(t)+vvy(t+1)(4)\left\{\begin{array}{l} v_{v x}(t+1)=v_{v x}(t)+a_{v x}(t+1) \\ v_{v y}(t+1)=v_{v y}(t)+a_{v y}(t+1) \\ x_{v}(t+1)=x_{v}(t)+v_{v x}(t+1) \\ y_{v}(t+1)=y_{v}(t)+v_{v y}(t+1) \end{array}\right.\tag{4} ⎩⎪⎪⎨⎪⎪⎧​vvx​(t+1)=vvx​(t)+avx​(t+1)vvy​(t+1)=vvy​(t)+avy​(t+1)xv​(t+1)=xv​(t)+vvx​(t+1)yv​(t+1)=yv​(t)+vvy​(t+1)​(4)

3.12、无人机编队结构

对于多无人机编队进行建模,首先应该确定执行任务的类型、所需无人机的数量和种类,以此构建整体的队形。接着虚拟无人机设置于多无人机编队的中心位置,作为实体无人机计算并确定相对位置的支点。然后将抽象成质心模型的虚拟无人机和实体无人机相连,可以获得一个从虚拟无人机指向实体无人机的向量。获得所有实体无人机对应的向量后,可以分别计算出这些向量与虚拟无人机航向之间形成的夹角以及各架实体无人机与虚拟无人机之间的距离。
{xi(t)=xv(t)+di∗cos⁡(αi+θv)yi(t)=xv(t)+di∗sin⁡(αi+θv)(5)\left\{\begin{array}{l} x_{i}(t)=x_{v}(t)+d_{i} * \cos \left(\alpha_{i}+\theta_{v}\right) \\ y_{i}(t)=x_{v}(t)+d_{i} * \sin \left(\alpha_{i}+\theta_{v}\right) \end{array}\right.\tag{5} {xi​(t)=xv​(t)+di​∗cos(αi​+θv​)yi​(t)=xv​(t)+di​∗sin(αi​+θv​)​(5)

3.2、改机的长机-僚机编队方法

####3.21、基于改进人工势场的编队控制算法
由于本文的编队结构与人工势场算法的契合度较高,因此将改进的人工势场法应用于改进的长机-僚机法之中,为其提供稳定的编队控制。人工势场法是一种虚拟力法,最早由 Khatib 在 1994 年提出并运用于路径规划领域。人工势场算法借鉴了自然界中“场”的相关概念:当物体进入场中时(如磁场),不同性质的物体会受到不同方向、不同大小的力。人工势场法为不同物体(目标点、障碍物和智能体)设置不同引力场和斥力场,物体与物体之间产生的引力和斥力被抽象为两个函数。其中,目标点对于智能体的作用力通过引力场被定义为引力函数,引力的方向为从智能体指向目标点;障碍物对于智能体的作用力通过斥力场被定义为斥力函数,斥力的方向为从障碍物指向智能体。将定义的引力和斥力相加获得到的总作用力大小和方向,再通过力与加速度和速度之间的转化关系便可获得智能体在下一步中的移动距离和方向。

将人工势场法应用到多无人机编队控制领域时,首先应该预先设计好无人机的队形。接着通过建立编队无人机之间的人工势场,使得它们在彼此之间的引力场和斥力场的共同作用下以预设队形进行飞行。其中引力场所产生的作用力主要用于目标对于编队的吸引以及集群队形构建,使集群保持聚集状态不分散;斥力场所产生的作用力用于无人机避障以及无人机集群中成员之间的避碰。经典人工势场算法的势场函数分为两种,即引力场函数和斥力场函数。其中引力场函数通常被设定为无人机和目标点之间相对位置关系上的函数,是参考智能体与目标点之间的欧式距离来设定的。经由引力场所产生的引力的大小和无人机与目标点的相对距离呈现正相关关系:相对距离越大,目标点对无人机产生的引力越大,使得无人机向着目标点方向移动;反之,相对距离越小,引力越小,当无人机最终处于目标点处时,二者的相对距离变为零,即引力为零。引力场函数表示为:

Ua=12ka(pt−p)2(6)U_{a}=\frac{1}{2} k_{a}\left(p_{t}-p\right)^{2}\tag{6} Ua​=21​ka​(pt​−p)2(6)
表达式中的 kak_{a}ka​ 表示引力因子, 是常量, ptp_{t}pt​ 表示目标点的坐标, ppp 表示无人机当前的坐标。得到引力场函数后只需对其求负梯度, 即对距离求导并取负值就可得到引力, 引力函数可以表示为:
Fa=−ka(pt−p)(7)F_{a}=-k_{a}\left(p_{t}-p\right)\tag{7} Fa​=−ka​(pt​−p)(7)

与上述引力场函数对应,斥力场函数一般被定义为无人机与障碍物之间相对距离的函数。但斥力场函数和引力场函数对函数的定义刚好相反,即无人机与障碍物的距离越小,无人机受到的斥力越大,从而使得无人机远离障碍物,避免发生碰撞;距离越大,无人机受到的斥力越小。特别地,当无人机与障碍物之间的距离超过某个范围时,该障碍物将不再对无人机产生任何斥力。斥力场函数表示为:

Ur={12kr(1∣po−p∣−1p1)2,∣po−p∣<p10,∣po−p∣≥p1(8)U_{r}= \begin{cases}\frac{1}{2} k_{r}\left(\frac{1}{\left|p_{o}-p\right|}-\frac{1}{p_{1}}\right)^{2}, & \left|p_{o}-p\right|<p_{1} \\ 0, & \left|p_{o}-p\right| \geq p_{1}\end{cases}\tag{8} Ur​=⎩⎨⎧​21​kr​(∣po​−p∣1​−p1​1​)2,0,​∣po​−p∣<p1​∣po​−p∣≥p1​​(8)

表达式中的 krk_{r}kr​ 表示斥力因子和引力场函数中的 kak_{a}ka​ 同为常量, pop_{o}po​ 表示障碍物的坐标, ppp表示无人机当前的坐标, p1p_{1}p1​ 是经过实验或测量之后研究得到的斥力常量表示斥力场所能影响到的范围, 即当 ∣p0−p∣\left|p_{0}-p\right|∣p0​−p∣ 所表示的智能体和障碍物的距离小于 p1p_{1}p1​ 时斥力场将对其产生影响, 反之则不会起到任何作用。得到斥力场函数后同样地对其求负梯度即可得到斥力函数, 可以表达为:
Fr={kr(1∣po−p∣−1p1)(1∣po−p∣)2,∣po−p∣<p10,∣po−p∣≥p1(9)F_{r}= \begin{cases}k_{r}\left(\frac{1}{\left|p_{o}-p\right|}-\frac{1}{p_{1}}\right)\left(\frac{1}{\left|p_{o}-p\right|}\right)^{2}, & \left|p_{o}-p\right|<p_{1} \\ 0, & \left|p_{o}-p\right| \geq p_{1}\end{cases}\tag{9} Fr​=⎩⎨⎧​kr​(∣po​−p∣1​−p1​1​)(∣po​−p∣1​)2,0,​∣po​−p∣<p1​∣po​−p∣≥p1​​(9)

人工势场算法作为优秀的路径规划和编队控制算法具有算法原理简单、收敛速度快等优点,但同时也在某些方面具有缺点。主要可以概况为以下三个方面:
  第一是目标不可达问题,当无人机的任务目标点附近存在障碍物时,任务目标点对无人机产生的引力和障碍物对无人机产生的斥力将同时作用于无人机,且此时引力较小,斥力较大,无人机将偏离目标点,发
生震荡甚至无法道道目标点;
 第二是局部最优问题,犹如处理 NP 问题时存在的局部最优困境一样,人工势场算法同样存在这方面的问题:由于多无人机编队的复杂性,各无人机之间同时存在引力和斥力,当无人机在复杂环境下飞行时,即使能够最终到达目标点,其飞行路径可能也不是最优的,这些飞行路径就相当于局部最优的陷阱;
 第三是收敛困难问题,在实际的仿真实验过程中,由于基础的人工势场算法中仅包含了距离和引力(斥力)函数的表达式,即仅包含距离和加速度(力)的控制,而缺乏对速度的直接控制,导致在实际的模拟过程中会出现期望坐标、期望速度无人重合,飞行震荡的问题。

本文保留人工势场算法的结构,仍然通过引力和斥力实现对实体无人机的编队控制,但结合控制论中比例控制器的设计方法,改写引力场和引力函数,加入速度变量和加速度变量,使得引力成为由距离、速度和加速度多重控制的量。本文中的多无人机编队模型处于二维环境中,且实体无人机的引力函数主要依赖于虚拟无人机计算得到的期望坐标,因此引力场函数的表达式可以写作:

Ua=12k1(pv′−pi)2+12k2(vv′−vi)2+12k3(av′)2(10)U_{a}=\frac{1}{2} k_{1}\left(p_{v}^{\prime}-p_{i}\right)^{2}+\frac{1}{2} k_{2}\left(v_{v}^{\prime}-v_{i}\right)^{2}+\frac{1}{2} k_{3}\left(a_{v}^{\prime}\right)^{2}\tag{10} Ua​=21​k1​(pv′​−pi​)2+21​k2​(vv′​−vi​)2+21​k3​(av′​)2(10)
表达式中的 k1、k2k_{1} 、 k_{2}k1​、k2​ 和 k3k_{3}k3​ 分别是与距离、速度和加速度相关的包含了实体无人机质量的常 量, pv′、vv′p_{v}{ }^{\prime} 、 v_{v}{ }^{\prime}pv​′、vv​′ 和 av′a_{v}{ }^{\prime}av​′分别表示由虚拟无人机的相关参数计算得到的实体无人机 UiU_{i}Ui​ 的期望坐标、期望速度和期望加速度。
  通过对改进后的引力场函数求取负梯度可得改进的引力函数:
Fa=−k1(pv′−pi)−k2(vv′−vi)−k3av′(11)F_{a}=-k_{1}\left(p_{v}^{\prime}-p_{i}\right)-k_{2}\left(v_{v}^{\prime}-v_{i}\right)-k_{3} \mathrm{a}_{v}^{\prime}\tag{11} Fa​=−k1​(pv′​−pi​)−k2​(vv′​−vi​)−k3​av′​(11)
斥力函数主要作用于实体无人机之间,起到避免碰撞的作用,因此对于编队的整体影响较小,需保证在多无人机编队在达到平衡之后各实体无人机之间的斥力为零,因此基础的人工势场算法中的斥力函数可以基本保留,斥力函数的表达式可以写作:
Fr={k4(1∣pi−pj∣−1dmin⁡)(1∣pi−pj∣)2,∣pi−pj∣<dmin⁡0,∣pi−pj∣≥dmin⁡(12)F_{r}=\left\{\begin{array}{l} k_{4}\left(\frac{1}{\left|p_{i}-p_{j}\right|}-\frac{1}{d_{\min }}\right)\left(\frac{1}{\left|p_{i}-p_{j}\right|}\right)^{2},\left|p_{i}-p_{j}\right|<d_{\min } \\ 0, \end{array}\left|p_{i}-p_{j}\right| \geq d_{\min }\right.\tag{12} Fr​={k4​(∣pi​−pj​∣1​−dmin​1​)(∣pi​−pj​∣1​)2,∣pi​−pj​∣<dmin​0,​∣pi​−pj​∣≥dmin​(12)
表达式中的 dmind_{min}dmin​ 表示实体无人机之间不产生斥力的最小距离。

利用改进后的人工势场算法作为多无人机编队的队形控制函数可以使得编队中的无人机在抵达预期的位置(距离为零)时,其速度为预期速度(速度差为零),其加速度为预取加速度(加速度差为零)。

3.22、改进前后人工势场算法的控制效果对比

两个实验显示了改进的人工势场算法中不同部分对于编队控制的影响。应用改进的人工势场算法能够顺利地解决了飞行震荡,无法收敛的问题,使得无人机能够顺利到达目标状态。

3.23、冗余Leader与编队内信息一致性维持

针对长机-僚机法中长机作为 Leader 存在风险,但又具有不可替代性的问题,本文提出改进的长机-僚机法进行解决。改进的长机-僚机法的核心思路就是冗余 Leader:在一个无人机编队中预备多个Leader形成多核心结构,达到即使某个编队核心被摧毁,编队整体仍能快速复原并继续执行任务的目的,提高多无人机编队的整体安全性。

改进的长机-僚机法为编队方法构建的多无人机系统,可以从两个层面进行定义:从功能层面系统包含了 Leader、Candidate 和 Follower三者;从编队层面系统包含了长机和僚机两者。在构建这样的编队时可以有选择地将部分无人机或某种类型的无人机设置 Candidate 而剩余的无人机设置为 Follower。

3.24 改进的长机-僚机法整体流程

根据本文 3.1 节提出的多无人机编队相关模型,利用势场函数改进后的人工势场算法作为编队控制算法,在编队内部设置好冗余 Leader,设定好相应的Leader选举规则,最终得到能够平衡编队稳定性和编队变换自主性的改进的长机-僚机法。改进的长机僚机法的整体流程,如图 3.6 所示。该流程主要包括以下内容:
步骤 1.对无人机和作战环境进行初始化;
步骤 2.确认无人机编队中的长机;
步骤 3.确认当前多无人机编队的队形;
步骤 4.通过改进人工势场算法控制编队飞行状态;
步骤 5.判断编队中是否有无人机发生故障,若是则再判断是否需要与地面控制中心联系
进行人工判断,若需要人工判断则结束任务,否则返回步骤 2;
步骤 6.判断编队是否完成任务,若是则结束,否则返回步骤 3。

3.3、本章小结

本章提出了一种适用于对抗环境的基于改进的长机-僚机法的多无人机编队算法。结合传统的长机-僚机法与虚拟结构法各自的优点,保留实体长机概念作为多无人机系统的通信核心和决策核心,设置虚拟长机作为多无人机系统的编队中心和队形支点,应用势场函数改进后的人工势场算法作为多无人机编队的控制算法。同时在多无人机系统内部设置冗余 Leader,多个Leader之间依靠分布式一致性算法进行信息协调,以此提高多无人机系统的安全性,保障任务的顺利执行。

四、基于改进启发式强化学习算法的多无人机队形变换方法

本文将强化学习与多无人机队形变换问题结合起来,以动态环境下的队形变换为目标,利用强化学习在不确定环境下的自适应能力,实现多无人机队形的快速变换。传统的强化学习算法为了保证其收敛性,通常使用随机的搜索策略,智能体通过大量的遍历来学习最优策略,这往往会导致算法收敛的速度慢、消耗大量的计算资源。所以本文提出一种基于改进启发式强化学习算法的多无人机编队变换方法。本章首先介绍了本文所要解决的队形变换问题的建模方法;接着利用启发式思想加速下的多智能体强化学习解决多无人机队形变换问题,使用基于动态规划的状态提取方法提取无人机飞行环境,融入模拟退火算法思想改进动作选择函数,有效提高强化学习的求解速度和求解质量。

4.1、队形变换相关模型

本章将着眼于利用多智能体强化学习算法,在无人机机群已经拥有预设队形的基础上,规划出无人机队形发生变换时各自的最优飞行路径,并提升算法的收敛速度。

####4.11、问题描述
本文使用四元组<S,A,P,R><S, A,P,R><S,A,P,R>  来表示适用于多无人机队形变换问题的马尔科夫决策过程模型。其中 SSS 表示无人机所在的状态空间集合,AAA 表示无人机的动作空间集合,PPP表示的是无人机的状态转移概率,RRR 表示的是无人机的动作回报函数,在具体的实验中使用 QQQ 值作为代替。

**问题描述:**本文对多无人机队形变换问题的描述如下:有N架无人机从初始位置出发,在不发生碰撞且不偏离飞行区域的前提下,抵达各自的期望位置。初始位置既可以是上一轮多无人机编队飞行后的坐标也可以是随机分布的坐标,每架无人机对应的期望位置各不相同,且期望位置的个数等于无人机的个数。
####4.12、飞行环境模型
令无人机在构建的二维网格中运动, 用 Z(Z>0)Z(Z>0)Z(Z>0) 表示正整数, 则二维网格空间为 Z2Z^{2}Z2, 无 人机在二维网格空间中的坐标为 (xti,yti)\left(x_{t i}, y_{t i}\right)(xti​,yti​), 表示无人机 i\mathrm{i}i 的状态 sti∈Z2s_{t i} \in Z^{2}sti​∈Z2, 且朝着对应的目标点 Gi(i=1,2,3,..N)G_{i}(i=1,2,3, . . N)Gi​(i=1,2,3,..N) 运动, 每个无人机的目标点会根据条件预先给定。无人机 i\mathrm{i}i 在飞行的过程中, 动作集合 Ai(s)={A_{i}(s)=\{Ai​(s)={ 上, 下, 左, 右, 停止 }\}} 。

基于强化学习的多无人机编队问题可以描述为:无人机与环境进行交互,学习动作策略,使得整个无人机机群在不发生碰撞的前提下,以最小的消耗步数抵达无人机各自的目标点。在学习最优的动作策略的过程中,当无人机均抵达目标点后,机群将得到一个正反馈 r+r_{+}r+​ ,否则得到一个将得到一个负反馈r−r_{-}r−​。

4.2、改进的启发式强化学习算法

对抗环境下的多无人机编队方法和队形变换研究相关推荐

  1. BCS2022|技术峰会:高对抗环境下网络新攻防

    7月21日,2022北京网络安全大会(BCS2022)技术日开启.作为本次大会的第二个主题日活动,2022北京网络安全大会技术峰会成功举办.来自全球多个国家.顶尖网络安全平台的信息安全专家.技术高管. ...

  2. python连接opencv库_python环境下安装opencv库的方法

    注意:安装opencv之前需要先安装numpy,matplotlib等 一.安装方法 方法一.在线安装 1.先安装opencv-python pip install opencv-python --u ...

  3. Python TimedRotatingFileHandler 多进程环境下的问题和解决方法

    Python TimedRotatingFileHandler 多进程环境下的问题和解决方法 原文:https://my.oschina.net/lionets/blog/796438 Python ...

  4. python的opencv库_python环境下安装opencv库的方法

    注意:安装opencv之前需要先安装numpy,matplotlib等 一.安装方法 方法一.在线安装 1.先安装opencv-python pip install opencv-python --u ...

  5. ros构建机器人运动学模型_ROS环境下的机器人仿真模型构建方法研究

    现代电子技术 Modern Electronics Technique 2018 年 4 月 1 日 第 41 卷第 7 期 Apr. 2018 Vol. 41 No. 7 DOI : 10.1665 ...

  6. 基于VB环境下的语音识别程序开发方法

    摘要:语音识别技术的发展和广泛应用,使用户与计算机的对话方式不再仅仅局限在使用键盘或鼠标发送指令的方式.本文在visual basic 编程环境下使用Microsoft Speech SDK中的语音接 ...

  7. oracle数据库配置环境,win7环境下配置oracle数据库的方法

    前些日子在在Win7下安装了oracle 11g,不过PL/SQL却没法用,在实验的过程中,遇到了很多问题,下面就教您win7环境下配置oracle数据库的方法,供您参考. 环境:Windows 7( ...

  8. 发布 PAIRED:一种生成对抗环境的全新多智能体方法

    文 / Google Research 团队 Natasha Jaques 和加州大学伯克利分校 Michael Dennis 任何机器学习方法的有效性都主要取决于其训练数据.对于是强化学习 (RL) ...

  9. matlab 传递函数 画出频率响应,MATLAB环境下频率响应曲线的绘制方法

    matlab的使用啊 黄伟,聂 东 , 陈英俊 (广东肇庆学院电子信息工程系,肇庆526061) 摘要:本文给出了MATLAB环境下线性系统的Bode图.Nyquist图.Nichoh图的绘制方法,为 ...

最新文章

  1. VS2010与SVN
  2. php如何处理查询请求,PHP如何处理Web请求流程
  3. jQuery在线选座订座(影院篇)
  4. php实现微信红包金额随机分配的函数
  5. 文件对应的Content-Type类型
  6. Arcgis 区位图绘制
  7. 与其说我害怕成为普通人,还不如说我害怕生活,害怕找不到一种自己喜欢的方式去度过人生...
  8. Java Attach机制实现原理
  9. js数组交集、差集和并集
  10. 2021 - 2022个人年度总结
  11. 悼念王选:伟大发明家和失意企业家间的孤独者(2006.03.13 来自:IT时代周刊)
  12. 流量偷跑,运营商该不该赔偿?
  13. app通过电商变现方式探讨
  14. python绘制直线的垂线_Matplotlib:散点图中的垂直线
  15. 测试适合眉形的软件_扫一扫测眉毛 测试适合眉型的软件
  16. PyQT5 (四十三) 在 QTableWidget 表格中设置单元格的字体和颜色 的案例
  17. Web前端——登录界面hover效果
  18. 京东商品详情API接口-(item_get-获得JD商品详情接口),京东API接口
  19. AliOS Things 网络适配框架 - SAL
  20. psv连接电脑显示无法连接服务器,psv ftp服务器找不到

热门文章

  1. 1040 输出绝对值
  2. 基于FPGA的CAN总线控制器(支持CANFD)
  3. 一个双工模式协商的问题
  4. 山海经2服务器维护时间,37山海经传说1月18日部分区服维护更新公告
  5. 全球首次实现8K超高清电视直播和5G网络下的8K电视播出
  6. vue中实现定时器功能
  7. 智能空调检测程序c语言,基于单片机的智能空调节电控制器毕业设计论文C语言编程.doc...
  8. python 包之 Pillow 图像处理教程
  9. 写号 全国 电信 三码 五码 CDMA鉴权码 局端 Akey an 3码 5码
  10. Android 10正式告别了菜单导航键