基于自适应遗传算法的异构多无人机协同任务分配
Cooperative Task Assignment of a Heterogeneous Multi-UAV System Using an Adaptive Genetic Algorithm
发布时间:2020年,SCI4区,Q3doi:10.3390/electronics9040687
Cooperative Task Assignment of a Heterogeneous Multi-UAV System Using an Adaptive Genetic Algorithm
摘要:
协同多任务分配问题(CMTAP)是一个NP难的组合优化问题。 在本文中,CMTAP是指配置多架异构固定翼无人机对多个静止地面目标执行压制敌方防空(SEAD)任务。 为了解决这一问题,我们在无人机的异构性和任务耦合约束的假设下,研究了自适应遗传算法(AGA)。 首先设计了多类型基因染色体编码方案,生成满足无人机异质性和任务耦合约束的可行染色体。 然后,AGA引入Dubins车模型来模拟无人机的路径形成,并推导出各染色体的适应度值。 为了符合多类型基因的染色体编码策略,我们设计了相应的交叉和变异算子来生成可行的后代群体。 特别是所提出的变异算子和状态转移方案,增强了算法的随机搜索能力。 最后,提出的遗传算法动态调整交叉和变异种群的数量,避免了模拟参数的主观选择。 数值仿真结果表明,与随机搜索法、遗传算法、蚁群优化法和粒子搜索法相比,所提出的遗传算法具有更好的寻优能力和收敛效果。 从而证明了所提算法的有效性。
目录
一、介绍
本文的重点是解决异构固定翼无人机对多个静止地面目标执行SEAD任务的CMTAP问题。 同时考虑了无人机的异构性和任务耦合约束。 虽然遗传算法已被广泛应用于求解CMTAP问题,但这些现有的方法不能在这些假设下直接应用。 为此,我们提出了一种自适应遗传算法(AGA)。 首先,引入多类型基因,建立一种无死锁的染色体编码策略。 提出的染色体编码策略保证了生成的染色体满足无人机异构性和任务耦合约束。 为了计算任务执行时间,采用Dubins车模型对无人机航迹编队进行仿真。 根据染色体编码策略,对交叉和变异算子进行了改进,保证了遗传算法种群的可行性。 此外,该算法根据迭代时间动态调整交叉和变异种群的数量。
二、问题陈述
2.1 任务耦合约束
在SEAD任务中考虑多个静止地面目标。
在SEAD任务中,分类、攻击和验证任务需要按顺序对每个目标执行。 任务集是: C、A、V分别表示分类、攻击和验证任务。
任务耦合约束反映了两个方面:
(1)某一目标的SEAD任务只有在C、A、V任务全部完成的情况下才算完成。 每个目标上执行的任务数为mt=3,任务总数为
(2)C、A、V任务的执行顺序遵循严格的任务优先级约束。 任务A只有在目标分类后才能执行,任务V只有在完成任务A后才能执行。
2.2 无人机的异构性
为了实现对目标的SEAD任务,在多无人机系统中考虑了监视、作战和弹药无人机。 无人机组表示为:
无人机的异质性体现了两个部分:
(1)不同无人机的能力不同。 监视只能执行分类和验证任务; 弹药无人机只能执行攻击任务; 而作战无人机可以执行所有任务。 因此,我们将具有不同能力的无人机集合表示为:
NUS、NUC、NUM分别代表监视、战斗和弹药无人机的数量。
显然,NU=NUS+NUC+NUM。 US和UA分别定义了能够执行监视(C、V)和攻击(A)任务的无人机。
(2)不同的无人机有不同的运动学参数,包括不同的巡航速度[V1,V2,…,Vnu]和转弯半径[R1,R2,…,Rnu]。 采用Dubins车模型描述无人机的运动学路径。 给定两个已知方位的点,Dubins车模型可以生成最短的无人机路径。 可能的Dubins路径如图1所示。
从图1中我们可以看出,无人机的Dubins路径必须是以下6条线段和曲率弧组合[LSL,RSR,LSR,RSL,LRL,RLR],其中R为顺时针转弯,L为逆时针转弯,S为直线。 利用无人机的巡航速度和转弯半径,根据其Dubins路径推导出无人机在两种构型之间的巡航时间。
2.3 CMTAP模型
CMTAP模型的目标是最小化多无人机系统实现整个SEAD任务所需的执行时间。
:二进制决策变量; = 1:意味着无人机Uk从qi飞往qj,在目标Tj上执行任务M;
:为无人机从qi到qj飞行的Dubins路径。
qi、qj分别代表无人机Uk的最后配置和当前配置。NV = NU + NT表示无人机在执行任务期间的所有可能配置,包括其起飞配置和对目标的可能配置。
CMTAP模型的其他约束包括:
式(8)表示每个任务只分配一次,式(9)表示每个目标上执行的任务数正好为|MT| = 3。则式(10)表示C、A、V任务的执行应遵循严格的任务优先级约束。
三、算法
3.1 染色体编码策略
3.1.1 多型基因染色体
假设来自同一基地的多无人机系统U = {US 1, UC 2,UM 3}需要对目标T = {T1, T2}执行SEAD任务。一条可行的多型基因染色体如图2所示。
根据图2,我们介绍了染色体的两种转换:基于目标的染色体和基于无人机的染色体。
根据每个目标的任务顺序,由图2得到图3a,根据每个无人机的任务执行顺序,由图2得到图3b。图2中的原始染色体可由基于目标/无人机的染色体根据执行顺序导出。
由图3a可以看出,可行染色体满足CMTAP模型的三个约束条件。首先,每个基因中分配的无人机(第4行)具有任务(第3行)所需的相应能力。然后,从任务C、A、V的执行顺序可以看出,它们不仅是全部执行的,而且是按顺序执行的。因此,具有多型基因的可行染色体满足2.3节所述CMTAP模型的三个约束条件。
图3b中基于无人机的染色体显示了每个无人机的巡航配置:US1对目标T1进行分类,目标T2被UM3攻击后验证。UC2首先攻击目标T1,然后飞行对目标T2进行分类,最后对T1进行验证。得到各无人机的任务分配顺序为:
3.1.2 种群初始化
在算法1中,步骤1创建Nt = Nt·|MT| = 3NT多型基因构建染色体。
步骤2-6分别为每条染色体构建5个元素(执行顺序、目标ID、任务类型、无人机ID、无人机航向角)。
步骤3-4确保每个目标上的任务C、A、V按顺序执行。因此,满足式(8)-(10)中CMTAP模型的任务耦合约束。然后,步骤5保证所分配的无人机具有所需任务类型的相应能力。因此,也满足了对无人机能力的约束。因此,算法1生成Np可行染色体,遵循多类型基因染色体编码方案设计。
3.2 计算fitness
3.3 遗传操作
本文利用精英算子将具有最高适应度值的Ne亲本染色体保存到后代群体中。引入轮盘赌轮盘法,对配对池的父染色体进行选择。采用轮盘赌轮法的选择策略,保证适应度值越高的染色体被选择的可能性越大。根据多型基因的染色体编码策略,对交叉和突变算子进行了修改。
3.3.1 交叉操作
交叉操作的目的是通过信息交换提高全局搜索能力。在遗传算法中使用两点交叉算子生成Ncr < Np−Ne后代染色体。交叉操作由算法2实现。
- 1、将选定的两个亲本染色体转换为目标序亲本染色体,随机选择两个交叉位点。
- 2、在两个交叉点之间交换两个目标序亲本染色体的基因信息,生成两个目标序子代染色体。
- 3、将目标顺序的后代染色体转换回后代染色体。
- 4、重复步骤1-3 Ncr/2次,生成Ncr后代染色体。
(1)步骤2中的信息交换是在目标序染色体上进行的。由于两个亲本目标序染色体的第二至第三行是相同的,所以交叉操作只交换指定的无人机和所选基因的相应航向角。因此,交叉操作产生的后代染色体仍然满足式(8)和(9)中任务C、A、V都被执行的约束。
(2)第一行不参与交叉操作,因为第一行实现了基于目标的染色体到染色体的转换。同时,不变的执行顺序保证了交叉操作产生的后代染色体仍然满足式(10)中的任务优先级约束。
(3)对于两个基于目标的亲本染色体,所选交叉位点的目标信息和任务信息是相同的。因此,交叉操作产生的后代染色体不会违反无人机能力的约束。
根据上述分析,只要父染色体满足CMTAP模型的约束条件,交叉操作就可以产生可行的后代染色体。因此,所提出的交叉操作对CMTAP模型是有效的。
3.3.2 变异操作
突变操作的目的是通过对基因的干扰来提高局部搜索能力。
- (a):赋值信息的变异:利用两个变异算子。随机选择突变点,对指定的无人机或指定的突变点航向角进行突变。我们可以得到两个突变的后代染色体。
由图6a可以看出,突变点分配的无人机发生了突变。不同能力的无人机组为US = {US1, UC2}, UA = {uC2,UM3}。因此,选择地点的变异UAV应为US \ {UC2} = {US1}。如果对应的无人机集合中有多个具备能力的无人机,则随机选择突变的无人机。 - (b):基于状态转移策略的突变:将每条染色体视为解空间的一个状态。GA迭代被认为是状态转换过程。因此,在突变处理中采用状态转移向量来探索解空间。带有状态转移向量的变异算子具有更好的随机特性,可以帮助算法跳出局部最优解,增强遗传算法种群的多样性。
在图7中,表示元素[X, Y, Z]的原始状态[1,2,3]被转移到表示元素[Y, Z, X]的状态[2,3,1]。有(n!−1)转移元素的电位状态。例如,初始状态为[1,2,3]。三个元素可能转移的状态是:[1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]
随机选择一条亲本染色体。首先采用状态转换策略交换目标的执行顺序。以每个目标的任务分配序列为单位,使用状态转换向量交换目标的执行顺序。目标数量为NT;因此,潜在转移状态的数量为(NT!−1)。
首先,随机生成父目标序染色体的状态转移向量;然后,交换相应的基因。随机状态转移向量为[2,3,1]。
图8中的突变处理只交换目标的执行顺序。因此,后代染色体仍然满足CMTAP模型的约束条件。
此外,还提出了一种基于状态转移策略的变异算子来交换所选任务的分配信息。随机选择变异任务和状态转换向量。状态转换向量用于交换所选任务的分配信息。以所选任务的分配信息为单位;因此,潜在转移的状态数为(|MT|!−1).实现示例如图9所示。随机状态转移向量为[2,3,1]。
图9中的突变处理只交换所选任务的分配信息。因此,后代染色体不会违反CMTAP模型的约束。所提出的AGA的四个突变算子如图6、8和9所示,算法3显示了生成Nmu后代染色体的突变操作的实现。
3.3.3 自适应设置
最后,提出了遗传操作中自适应设置的思想。所提出的遗传算法将根据迭代时间动态调整交叉和突变后代染色体的数量。后代群体由精英操作产生的Ne染色体、交叉操作产生的Ncr染色体和突变操作产生的Nmu染色体组成。为了用所提出的AGA来求解CMTAP模型,我们首先需要确定这些参数。参数Ne、Ncr、Nmu的主观选择会影响遗传算法的性能。为了避免这一问题,提出的遗传算法根据迭代时间动态调整参数Ncr、Nmu。
其中Niter、Ng分别表示当前迭代时间和总迭代时间,舍入[·]为舍入函数。
设Np = 100, Ne = 4, Ng = 300。Ncr、Nmu的动态调整如下:
由图10可以看出:
(1)在迭代的开始阶段,交叉种群相对较大。因此,交叉操作的信息交换有利于增强AGA的全局搜索能力。
(2)在迭代后期,突变种群相对较大。因此,对变异操作进行精细化搜索可以加快遗传算法的收敛速度。
因此,动态参数设置可以更好地平衡遗传迭代过程中的全局和局部搜索能力。
四、实验结果
本文提出了一种解决异构无人机协同多任务分配问题的自适应遗传算法。为了证明所提出的AGA的有效性和优越性,我们进行了100次蒙特卡罗模拟。在5公里×5公里平方的兴趣区域,来自同一基地的多无人机团队需要在多个固定地面目标上执行SEAD任务。每个任务的持续时间(CV)为5秒。为了全面证明所提出的AGA的性能,我们选择了随机搜索方法(RS)、GA、ACO和PSO作为比较算法。RS表示采用随机搜索策略的优化方法。ACO和PSO代表了群智能优化方法。因此,我们引入了RS、ACO和PSO来验证GA和AGA在求解CMTAP模型时具有更好的搜索能力。此外,利用遗传算法证明了所提出的具有自适应设置的AGA(在第3.4节中)可以获得更好的优化结果。这些方法的仿真参数如表1所示。
所有方法的迭代时间设置为Ng = 300。
(1)从100个蒙特卡罗模拟的客观值分布来看,所提出的AGA具有最小/最大/平均的值。因此,与RS、GA、ACO和PSO相比,所提出的AGA在不同场景下可以获得更好的CMTAP解决方案。
(2)不同情景下,RS、ACO和PSO的收敛指标En均在[0.73 ~ 0.82]以内。随着情景尺度的增大,遗传算法和所提出的遗传算法的收敛指标逐渐减小。显然,染色体编码策略和相应遗传算子的设计帮助遗传算法在复杂场景下获得了更好的收敛效果。(3)算法的收敛指数始终小于遗传算法,在情景3中,算法的收敛指数下降到0.58左右,而算法的收敛指数下降到0.51左右。显然,自适应设置的设计使所提出的遗传算法获得了比遗传算法更好的收敛效果。
详情自己看原文