基于反向学习蛇算法的无人机任务分配方法

文档序号:33387135发布日期:2023-03-08 08:46阅读:36来源:国知局
基于反向学习蛇算法的无人机任务分配方法

1.本发明属于无人机集群任务规划技术领域,特别涉及一种基于反向学习蛇算法的无人机任务分配方法。


背景技术:

2.合作是人类社会中普遍存在的一种集群行为。为了高效的完成任务,通常需要将目标进行任务分解,并将子任务分配至群体中的每个成员。比如,在行政管理中,团队中的每个成员有各自的工作;在军事作战中,攻打一个目标点需要团队成员从不同角度去攻克。将这种分配的行为应用到无人机集群控制室近年来十分热门的研究方向。
3.在无人机领域中,无人机任务分配问题包括寻找无人机对一组任务的最优分配,这些无人机和任务通常各有特点。而无人机集群技术概念的提出与发展克服了单个无人机作业时相对载荷较小(单机不再负载所有传感设备)、环境感知效率低,信息处理能力有限等问题。同时无人机集群还具备鲁棒性强、应用领域广和可拓展性强等特点。因此,无人机集群协同技术应用广泛,一般分为民用和军用两大应用场景。在民用领域,无人机集群可应用于农业、快递物流、应急救援、管道巡检、遥感与对地观测等多种场景。军用领域中,应用于各类集群作战和防御体系。虽然,现有的无人机集群研究已经有了广泛的应用,相关技术也比较成熟。但是,仍然存在一些问题:
4.(1)通过调研发现,在当前无人机集群协同研究领域中,大部分的研究方向是无人机集群合作的相关技术。然而,无人机集群内部的任务分配也是不可忽视的关键环节。而现有相关研究内容却很有限,因此,无人机的任务分配技术是亟待研究的;
5.(2)在无人机集群完成某项任务时,任务的约束条件十分重要,然而现有的大部分研究对约束条件没有明确要求。因此,在无人机集群的任务分配中需要考虑约束条件的问题;
6.(3)为了节约资源、节省成本,如何提高计算准确度,确保对无人机集群需要完成的任务的分配是最优的,是值得研究的问题。


技术实现要素:

7.本发明的目的在于克服现有技术的不足,提供一种针对无人机集群这一特定物理对象,将其抽象成无人机集群解决任务分配的问题,对计算资源不富裕的系统具有明显的优势的基于反向学习蛇算法的无人机任务分配方法。
8.本发明的目的是通过以下技术方案来实现的:基于反向学习蛇算法的无人机任务分配方法,包括以下步骤:
9.s1、对任务分配场景建模:假设有m架无人机执行n项任务,m≥n,各项任务是同时开始同时结束的,每项任务需要至少一架无人机去完成,允许空闲无人机存在,则任务分配问题的决策变量即为一个二值矩阵u,矩阵中第i行第j个元素u
ij
=1代表着无人机i执行任务j,u
ij
=0则表示无人机i未执行任务j;将代价矩阵表示为w,矩阵中第i行第j个元素w
ij

表无人机i执行任务j的代价;
10.根据代价最小化原则,建立目标函数及其约束条件为:
[0011][0012][0013][0014]
s2、设置反向学习的蛇算法初始化参数:使用基于种群的算法,设置算法的种群、迭代次数、各个环节的门限值参数;
[0015]
s3、对优化过程进行迭代:设置问题求解的总迭代次数为t,当前次数为t;计算环境参数:温度h、食物数量q,在t≤t时,根据当前的食物数量q与其门限值q
th
的关系,和当前温度h与其门限值h
th
的关系进行迭代求解;每一次迭代结束后更新当前场上各个性别种群中的最优个体,并将其定义为食物的位置,并与上一代作比较,并对t进行自增,重复执行s3;直到t》t时,跳出循环,输出全局最优解;
[0016]
s4、求解得到无人机对任务的最优分配,将此分配方案输出,并计算其最终收益。
[0017]
进一步地,所述s2中,算法的种群设置方法包括如下子步骤:
[0018]
s21、重定义:将决策矩阵u行向量化为x=(u
11
,u
12
,

,u
1n
,

,u
m1
,u
m2
,

,u
mn
),将代价矩阵w行向量化为w=(w
11
,w
12
,

,w
1n
,

,w
m1
,w
m2
,

,w
mn
),两个向量的维度都是d=m
×
n,且决策变量受到下界和上界的限制,对各元素都有x
min
=0≤xd≤x
max
=1,xd表示x中第d个元素,d=1,

,d;由于决策变量x是二值离散的,故目标函数重新定义为min f(x)=x

·
w,其中x

=round(x),表示对每个元素进行四舍五入;
[0019]
s22、生成原始种群集x:随机生成p个在[x
min
,x
max
]区间上服从独立均匀分布的蛇个体xi:
[0020]
xi=x
min
+r
×
(x
max-x
min
),xi∈x
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0021]
其中r为服从[0,1]区间均匀分布的随机数;
[0022]
s23、计算反向种群集按照下式计算每个个体xi的反向个体
[0023][0024]
s24、对原始种群和反向种群融合并筛选:因为问题的目标是最大化f(x),故取集合中使得目标函数f(x)较大的前d个元素,并随机等分到两个集合xm与xf中,分别代表雄性种群和雌性种群;记min f(x)为函数f(x)的最小值,argmin f(x)表示求使目标函数f(x)取最小值时的变量值,则记录“食物”为:
[0025]ffood
=minf(x),x
food
=argminf(x),x∈xm∪xf。
[0026]
进一步地,所述s3包括如下子步骤:
[0027]
s31、计算环境参数并判断:根据当前迭代次数t,计算温度h、食物数量q如下:
[0028][0029]
当q《q
th
时进入s32;当q≥q
th
且h》h
th
时进入s33;当q≥q
th
且h≤h
th
时进入s34;在s32、s33、s34各自执行完毕后,进入s35;q
th
、h
th
分别为预设的食物数量和温度门限值;
[0030]
s32、探索:当前的食物数量q小于食物数量门限值q
th
时,性别为g的蛇群中的每个个体xg,i以能力αg,i搜索食物并按照下式更新当前的位置为x
g,i


[0031]
x
g,i

=x
g,r
±
0.05α
g,i
((x
max-x
min
)r+x
min
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0032]
其中r在计算式内参与运算时表示服从区间[0,1]上均匀分布的随机数,在做角标时表示种群中编号为r的一随机个体;
±
代表在实际计算时随机取正负,概率均等,为50%;g=f或m,分别表示雌性或雄性;x
g,r
表示性别为g的群体中随机个体r的位置,其搜索食物的能力为:
[0033][0034]
其中f
g,r
=f(x
g,r
)、f
g,i
=f(x
g,i
),为适应度函数(即目标函数)值;
[0035]
s33、挖掘:当食物数量q≥q
th
,且温度较高,即温度h高于门限值h
th
时,蛇群将向着食物所在的位置靠近并挖掘食物,更新自己的位置,这个过程受到当前环境温度h的影响,每个个体的位置计算公式为:
[0036]
x
g,i

=x
food
±
2rh(x
food-x
g,i
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0037]
s34、斗争、交配产卵:当食物数量q≥q
th
,且环境的温度h《h
th
时,蛇群会繁衍后代;蛇群中的个体将在求偶斗争和交配、产卵繁衍后代两种行为中随机选择一种:
[0038]
以60%的概率,蛇群中的个体将进行求偶斗争:
[0039][0040]
其中β
g,i
表示性别为g的个体i的斗争能力,受到当前性别群体中的最优秀个体,即具有最大的函数值f
g,best
的个体的影响,计算如下:
[0041][0042]
以40%的概率,蛇群中的个体将进行交配、产卵繁衍后代;雄性群体的个体x
m,i
和雌性群体的个体x
f,i
按照如下公式进行交配:
[0043]
[0044]
其中,性别为g的个体i的交配能力定义为:
[0045][0046]
随后,产卵得到的后代取代当前性别种群中的最劣个体x
g,worst
,即使得f(x)取值最大的个体,将其替换为:
[0047]
x
g,worst

=x
min
+r(x
max-x
min
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(12);
[0048]
s35、更新:在每轮循环结束时对当前场上性别为g的群体中最优、最劣个体进行记录:
[0049][0050]
其中,argminf(x
g,i
)表示求使目标函数f(x
g,i
)取最小值时的变量值,argmaxf(x
g,i
)表示求使目标函数f(x
g,i
)取最大值时的变量值。
[0051]
本发明主要针对无人机集群这一特定物理对象,将其抽象成无人机集群解决任务分配的问题。首先,建立任务分配问题的数学模型,而后设计出新颖的方法进行求解。利用群智能算法,结合反向学习过程,对随机生成的种群进行筛选,减少了算力消耗。因此,本发明所提出的基于反向学习蛇算法的无人机任务分配方法对计算资源不富裕的系统具有明显的优势。相对于现有技术,本发明的有益效果体现在以下两个方面:
[0052]
(1)本发明提出了一种新颖的基于反向学习蛇算法的无人机任务分配方法,相较于遗传算法、粒子群算法等方法,引入了较新且性能较好的蛇算法,拓展了蛇算法的应用场景;
[0053]
(2)已有的相关研究中,大部分文献没有考虑到初始化种群中的冗余现象。本发明考虑到初始化种群的个体未能全部利用,通过结合反向学习,提高了初始化种群的利用率,减少了后续计算的消耗,节省了算力资源。
[0054]
(3)本发明的可行性证明了蛇算法与反向学习的结合是可以被推广的,可以在其他的群智能优化算法中使用,提升性能。
附图说明
[0055]
图1为本发明的基于反向学习蛇算法的无人机任务分配方法的流程图;
[0056]
图2为本发明对优化过程进行迭代的流程图;
[0057]
图3为实施例的任务执行权重图;
[0058]
图4为实施例的收敛曲线图。
具体实施方式
[0059]
下面结合附图进一步说明本发明的技术方案。
[0060]
如图1所示,本发明的一种基于反向学习蛇算法的无人机任务分配方法,包括以下步骤:
[0061]
s1、对任务分配场景建模:假设有m架无人机执行n项任务,m≥n,各项任务是同时开始同时结束的,每项任务需要至少一架无人机去完成,允许空闲无人机存在,则任务分配问题的决策变量即为一个二值矩阵u,矩阵中第i行第j个元素u
ij
=1代表着无人机i执行任务j,u
ij
=0则表示无人机i未执行任务j;同维度地,将代价矩阵表示为w,矩阵中第i行第j个元素w
ij
代表无人机i执行任务j的代价;
[0062]
根据代价最小化原则,建立目标函数及其约束条件为:
[0063][0064][0065][0066]
s2、设置反向学习的蛇算法初始化参数:使用基于种群的算法,设置算法的种群、迭代次数t、各个环节的门限值参数(温度与食物数量的门限值h
th
和q
th
);
[0067]
算法的种群设置方法包括如下子步骤:
[0068]
s21、重定义:为方便计算,将决策矩阵u行向量化为x=(u
11
,u
12
,

,u
1n
,

,u
m1
,u
m2
,

,u
mn
),将代价矩阵w行向量化为w=(w
11
,w
12
,

,w
1n
,

,w
m1
,w
m2
,

,w
mn
),两个向量的维度都是d=m
×
n,且决策变量受到下界和上界的限制,对各元素都有x
min
=0≤xd≤x
max
=1,xd表示x中第d个元素,d=1,

,d;由于决策变量x是二值离散的,故目标函数重新定义为min f(x)=x

·
w,其中x

=round(x),表示对每个元素进行四舍五入;
[0069]
s22、生成原始种群集x:随机生成p个在[x
min
,x
max
]区间上服从独立均匀分布的蛇个体xi:
[0070]
xi=x
min
+r
×
(x
max-x
min
),xi∈x
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0071]
其中r为服从[0,1]区间均匀分布的随机数;
[0072]
s23、计算反向种群集按照下式计算每个个体xi的反向个体
[0073][0074]
s24、对原始种群和反向种群融合并筛选:因为问题的目标是最大化f(x),故取集合中使得目标函数f(x)较大的前d个元素(d的取值可由用户自行定义),并随机等分到两个集合xm与xf中,分别代表雄性种群和雌性种群;记min f(x)为函数f(x)的最小值,argmin f(x)表示求使目标函数f(x)取最小值时的变量值,则记录“食物”为:
[0075]ffood
=minf(x),x
food
=argminf(x),x∈xm∪xf。
[0076]
s3、对优化过程进行迭代:设置问题求解的总迭代次数为t,当前次数为t;计算环境参数:温度h、食物数量q,在t≤t时,根据当前的食物数量q与其门限值q
th
的关系,和当前温度h与其门限值h
th
的关系进行迭代求解;每一次迭代结束后更新当前场上各个性别种群中的最优个体,并将其定义为食物的位置,并与上一代作比较,并对t进行自增,重复执行s3;直到t》t时,跳出循环,输出全局最优解;
[0077]
如图2所示,所述步骤s3包括如下子步骤:
[0078]
s31、计算环境参数并判断:根据当前迭代次数t,计算温度h、食物数量q如下:
[0079][0080]
当q《q
th
时进入s32;当q≥q
th
且h》h
th
时进入s33;当q≥q
th
且h≤h
th
时进入s34;在s32、s33、s34各自执行完毕后,进入s35;q
th
、h
th
分别为预设的食物数量和温度门限值;
[0081]
s32、探索:当前的食物数量q小于食物数量门限值q
th
时,性别为g的蛇群中的每个个体x
g,i
以能力α
g,i
搜索食物并按照下式更新当前的位置为x
g,i


[0082]
x
g,i

=x
g,r
±
0.05α
g,i
((x
max-x
min
)r+x
min
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0083]
其中r在计算式内参与运算时表示服从区间[0,1]上均匀分布的随机数,在做角标时表示种群中编号为r的一随机个体;
±
代表在实际计算时随机取正负,概率均等,为50%;g=f或m,分别表示雌性或雄性;x
g,r
表示性别为g的群体中随机个体r的位置,其搜索食物的能力为:
[0084][0085]
其中f
g,r
=f(x
g,r
)、f
g,i
=f(x
g,i
)、,为适应度函数(即目标函数)值;
[0086]
s33、挖掘:当食物数量q≥q
th
,且温度较高,即温度h高于门限值h
th
时,蛇群将向着食物所在的位置靠近并挖掘食物,更新自己的位置,这个过程受到当前环境温度h的影响,每个个体的位置计算公式为:
[0087]
x
g,i

=x
food
±
2rh(x
food-x
g,i
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0088]
s34、斗争、交配产卵:当食物数量q≥q
th
,且环境的温度h《h
th
时,蛇群会繁衍后代;蛇群中的个体将在求偶斗争和交配、产卵繁衍后代两种行为中随机选择一种:
[0089]
以60%的概率,蛇群中的个体将进行求偶斗争:
[0090][0091]
其中β
g,i
表示性别为g的个体i的斗争能力,受到当前性别群体中的最优秀个体,即具有最大的函数值f
g,best
的个体的影响,计算如下:
[0092][0093]
以40%的概率,蛇群中的个体将进行交配、产卵繁衍后代;雄性群体的个体x
m,i
和雌性群体的个体x
f,i
按照如下公式进行交配:
[0094][0095]
其中,性别为g的个体i的交配能力定义为:
[0096][0097]
随后,产卵得到的后代取代当前性别种群中的最劣个体x
g,worst
,即使得f(x)取值最大的个体,将其替换为:
[0098]
x
g,worst

=x
min
+r(x
max-x
min
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(12);
[0099]
s35、更新:在每轮循环结束时对当前场上性别为g的群体中最优、最劣个体进行记录:
[0100][0101]
其中,argminf(x
g,i
)表示求使目标函数f(x
g,i
)取最小值时的变量值,argmaxf(x
g,i
)表示求使目标函数f(x
g,i
)取最大值时的变量值。
[0102]
s4、求解得到无人机对任务的最优分配,将此分配方案输出,并计算其最终收益。
[0103]
本实施例中的分配问题由5个无人机和4个待完成任务构成,如图3所示,图中,uav表示无人机,task表示待完成任务;其代价矩阵及其最优解矩阵为:
[0104][0105]
本实施例中分配问题模型中的总迭代次数t=50,种群数量p=4。
[0106]
结合上述参数进行仿真计算,其结果如图4所示,可以直观的看到分配方案收敛到了全局最优。仿真结果证实了所提出的分配方案可以实现无人机任务的最优分配。
[0107]
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1