掌桥专利:专业的专利平台
掌桥专利
首页

基于飞行器电量消耗的路径规划方法和装置

文献发布时间:2023-06-19 18:29:06


基于飞行器电量消耗的路径规划方法和装置

技术领域

本发明涉及人工智能技术领域,尤其涉及一种基于飞行器电量消耗的路径规划方法和装置。

背景技术

飞行器在执行复杂任务时,任务划分结果的不同,将影响着任务完成所需的总体时间和飞行器的电量消耗,飞行器的电量消耗也决定着飞行器应对新任务时的响应速度。因此,如何在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群是目前的一个研究方向。

发明内容

本发明提供一种基于飞行器电量消耗的路径规划方法和装置,用以提供一种基于飞行器电量消耗的路径规划方法,实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群。

本发明提供一种基于飞行器电量消耗的路径规划方法,包括:获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;

其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

在其中一个实施例中,所述基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群,包括:基于蚁群算法的参数和蚁群算法,按照单旅行商问题确定多条总体路径;基于各架飞行器的电量确定每条总体路径对应的多个任务群;每个任务群中的任务由一架飞行器执行;基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间,从多条总体路径中确定当前迭代下的最优总体路径;基于影响信息素更新的目标函数更新每条总体路径上的信息素;其中,所述影响信息素更新的目标函数基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间确定;在迭代次数小于最大迭代次数的情况下,根据更新后的信息素确定当前迭代以及历史迭代中的最优总体路径及其对应的任务群;在迭代次数等于最大迭代次数的情况下,输出当前迭代以及历史迭代中的最优总体路径及其对应的任务群。

在其中一个实施例中,所述基于各架飞行器的电量确定每条总体路径对应的任务群,包括:基于每条总体路径中多个目标任务点的访问顺序以及第一飞行器的总电量,确定第一飞行器能够完成的目标任务点及其个数,并将第一飞行器能够完成的目标任务点确定为第一飞行器对应的第一任务群;基于每条总体路径中多个目标任务点的访问顺序以及第二飞行器的总电量,依次从多个目标任务点中除第一任务群之外的其他任务点中,确定第二飞行器能够完成的目标任务点及其个数,并将第二飞行器能够完成的目标任务点确定为第二飞行器对应的第二任务群。

在其中一个实施例中,所述影响信息素更新的目标函数

在其中一个实施例中,所述完成每条总体路径上对应的所有任务点需要的最大时长max(T

在其中一个实施例中,所述第s架飞行器完成对应任务群中的任务所消耗的电量E

在其中一个实施例中,所述

本发明还提供一种基于飞行器电量消耗的路径规划装置,包括:第一获取模块,用于获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;确定模块,用于基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于飞行器电量消耗的路径规划方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于飞行器电量消耗的路径规划方法的步骤。

本发明提供的基于飞行器电量消耗的路径规划方法和装置,通过使蚁群算法在每一次的迭代过程中,基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径,从而使最终确定的最优总体路径能够满足低电量消耗和总体任务完成时间短。同时,在每一次的迭代过程中,还基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,可以实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的飞行器多任务划分的应用场景示意图;

图2是本发明提供的基于飞行器电量消耗的路径规划方法的流程示意图之一;

图3是本发明提供的基于飞行器电量消耗的路径规划方法的流程示意图之二;

图4是本发明提供的基于飞行器电量消耗的路径规划方法的流程示意图之三;

图5是本发明提供的基于飞行器电量消耗的路径规划装置的结构示意图;

图6是本发明提供的基于飞行器电量消耗的路径规划装置的结构示意图;

图7是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了便于理解,首先对本发明涉及的技术术语进行解释。

(1)蚁群算法

蚁群算法是受到对真实蚂蚁群觅食行为研究的启发而提出。生物学研究表明:一群相互协作的蚂蚁能够找到食物和巢穴之间的最短路径,而单只蚂蚁则不能。生物学家经过大量细致观察研究发现,蚂蚁个体之间的行为是相互作用相互影响的。蚂蚁在运动过程中,能够在它所经过的路径上留下一种称之为信息素的物质,而此物质恰恰是蚂蚁个体之间信息传递交流的载体。蚂蚁在运动时能够感知这种物质,并且习惯于追踪此物质爬行,当然爬行过程中还会释放信息素。一条路上的信息素踪迹越浓,其它蚂蚁将以越高的概率跟随爬行此路径,从而该路径上的信息素踪迹会被加强,因此,由大量蚂蚁组成的蚁群的集体行为便表现出一种信息正反馈现象。某一路径上走过的蚂蚁越多,则后来者选择该路径的可能性就越大。

通常情况下,蚁群算法包括以下步骤:

步骤一,初始化蚁群中蚂蚁的数量m、信息素启发式因子为α、期望启发因子为β、信息素蒸发系数为ρ、信息素强度为Q,初始化地图,地图中所有路径信息素为0。

步骤二,启动第一轮迭代,在出发点放置所有蚂蚁,所有蚂蚁按照概率选择相应的路线。

步骤三,得到所有的蚂蚁到达路径的终点,根据每只蚂蚁选择的路径更新每只蚂蚁在两个节点之间留下的信息素。

步骤四,进行下一轮的迭代,直到迭代的次数达到最大迭代次数。

步骤五,以最后一轮中确定其中一只蚂蚁的路线为最优路线。最优路线上的信息素最多且路径最短。

为了便于理解,结合图1说明飞行器多任务划分的应用场景,如图1所示,编号1为充电平台,位于任务区域内,编号2-26代表多项待执行的目标任务所在点,具体用圆圈表示,每项任务所需的完成时间各不相同。被调用的飞行器存在电量不足的情况,因此需要先返回充电平台进行充电,再从充电平台位置出发前往任务点执行任务,完成任务后再返回充电平台等待下一轮次任务出现。

可以理解,任务的划分首先应确保执行任务的飞行器在完成任务后可以安全返回充电平台,且具备快速响应能力,即所有执行任务的飞行器的电量总和低,进而可以较快地对飞行器电池完成充电。此外,任务的划分应确保总体任务的完成时间短,即所有任务的完成时刻与飞行器出发的初始时刻之间的时间间隔,其最大值应尽可能小。因此,针对上述场景,为了实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群,提出了本发明的基于飞行器电量消耗的路径规划方法。

下面结合图2-图7描述本发明的基于飞行器电量消耗的路径规划方法和装置。

图2为本发明提供的基于飞行器电量消耗的路径规划方法的流程示意图之一。应理解,本发明提供的基于飞行器电量消耗的路径规划方法可以由基于飞行器电量消耗的路径规划装置执行。如图2所示,该基于飞行器电量消耗的路径规划方法可以包括以下步骤:

步骤210,获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量。

其中,所述蚁群算法的参数中包括最大迭代次数。此外,蚁群算法的参数还包括:蚂蚁的数量m、信息素启发式因子为α、期望启发因子为β、信息素蒸发系数为ρ以及信息素强度为Q。所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点。

步骤220,基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序。

其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

可以理解,通常情况下,蚁群算法在每一次迭代过程中,会确定出当前迭代下的最优路径,然后根据当前迭代下的最优路径进行信息素的更新,而最优总体路径主要以路径的距离长短确定。而在本发明中,为了满足低电量消耗和总体任务完成时间短,因此,基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间确定当前迭代中的最优总体路径,从而使最终确定的最优总体路径能够满足低电量消耗和总体任务完成时间短,同时,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,可以实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群。

本发明提供的基于飞行器电量消耗的路径规划方法,通过使蚁群算法在每一次的迭代过程中,基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径,从而使最终确定的最优总体路径能够满足低电量消耗和总体任务完成时间短。同时,在每一次的迭代过程中,还基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,可以实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群。

在其中一个实施例中,所述基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群,如图3所示,包括以下步骤:

步骤310,基于蚁群算法的参数和蚁群算法,按照单旅行商问题确定多条总体路径。

示例性地,单旅行商问题可以为一个人要逛34个城市,然后需要设计一条从起点出发逛完所有城市回到起点,让路径最短。对应地,在本发明中,按照单旅行商问题确定多条总体路径可以理解为每只蚂蚁确定完成多个目标任务点对应的一条总体路径,因此,蚁群中的多只蚂蚁即确定完成多个目标任务点对应的多条总体路径,每条总体路径表示多个目标任务点及其访问顺序。

步骤320,基于各架飞行器的电量确定每条总体路径对应的多个任务群;每个任务群中的任务由一架飞行器执行。

其中,任务群为对每条总路径中的多个目标任务进行划分,得到的多个任务集合。

可以理解,由于一架飞行器的电量不足以完成每条总路径中的多个目标任务,因此可以由多架飞行器执行每条总体路径上的多个目标任务,因此,可以基于各架飞行器的电量确定每条总体路径对应的多个任务集合(即多个任务群),然后由每架飞行器完成相应任务群中的目标任务。

可以理解,每项目标任务仅能被飞行器执行一次,也可以表示为

步骤330,基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间,从多条总体路径中确定当前迭代下的最优总体路径。

如前所述,每次迭代过程中,每只蚂蚁均可以确定一条总体路径,因此多只蚂蚁就确定多条总体路径,每条总体路径对应的多个任务群,每个任务群中的任务由一架飞行器执行。因此,为了从多条总体路径中确定最优总体路径,并且,为了使确定的最优总体路径满足低电量消耗和总体任务完成时间短,可以基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间,从多条总体路径中确定当前迭代下的最优总体路径。

可以理解,各架飞行器完成的对应的任务群中的任务共同组成了每条总体路径中的多个目标任务。也就是说,根据完成每条总体路径的多个目标任务所调用的飞行器消耗的总电量以及多个目标任务完成的总体时间,从多条总体路径中确定当前迭代下的最优总体路径。需要说明的是,最优总体路径对应的各架飞行器完成对应的任务群中的任务消耗的电量总和最小,并且多个目标任务完成的总体时间最小。

步骤340,基于影响信息素更新的目标函数更新每条总体路径上的信息素;其中,所述影响信息素更新的目标函数基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间确定。

可以理解,与每次迭代过程中信息素的更新与最优路径的确定过程类似。同理,如前所述的每只蚂蚁均可以确定一条总体路径,因此多只蚂蚁就确定多条总体路径,每条总体路径对应的多个任务群,每个任务群中的任务由一架飞行器执行,并且每条总体路径的上的信息素强度是确定最优总体路径的一个判断条件。因此,可以基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间确定影响信息素更新的目标函数,以使基于影响信息素更新的目标函数更新每条总体路径上的信息素,从而使确定最终的最优路径满足低电量消耗和总体任务完成时间短。

步骤350,在迭代次数小于最大迭代次数的情况下,根据更新后的信息素确定当前迭代以及历史迭代中的最优总体路径及其对应的任务群;在迭代次数等于最大迭代次数的情况下,输出当前迭代以及历史迭代中的最优总体路径及其对应的任务群。

其中,当前迭代以及历史迭代中的最优总体路径为从当前迭代次数以及历史迭代中确定的最优路径。可以理解,每次迭代完成之后,均可以将当前迭代过程中确定的最优总体路径与之前迭代过程中确定的最优路径比较,确定是否更新最优总体路径。并且每个最优总体路径对应的任务群不同,因此在迭代次数等于最大迭代次数的情况下输出当前迭代以及历史迭代中的最优总体路径及其对应的任务群。

在其中一个实施例中,影响信息素更新的目标函数

其中,所述完成每条总体路径上对应的所有任务点需要的最大时长max(T

其中,所述第s架飞行器完成对应任务群中的任务所消耗的电量E

其中,

在其中一个实施例中,所述基于各架飞行器的电量确定每条总体路径对应的任务群,如图4所示,包括以下步骤:

步骤410,基于每条总体路径中多个目标任务点的访问顺序以及第一飞行器的总电量,确定第一飞行器能够完成的目标任务点及其个数,并将第一飞行器能够完成的目标任务点确定为第一飞行器对应的第一任务群。

具体地,针对根据蚁群算法生成的每条总体路径中多个目标任务点的访问顺序,假定第一飞行器从充电平台出发,首先计算其执行完第一项目标任务后的电量剩余情况,如果剩余电量可以支撑其前往路径上的下一任务点并完成任务,且完成下一项任务后的剩余电量仍然可以保证其飞回出发位置,则第一飞行器将继续执行任务。以此类推,第一飞行器依据路径规划每执行完一项任务,将进行剩余电量的计算。假设在某次计算中,上述关于飞行器剩余电量的要求无法实现,若将此时路径上的下一任务点命名为任务J,则第一飞行器将不再执行任务J,并将直接返回充电平台,并且将任务J之前已经执行过的任务确定为第一飞行器对应的第一任务群。

步骤420,基于每条总体路径中多个目标任务点的访问顺序以及第二飞行器的总电量,依次从多个目标任务点中除第一任务群之外的其他任务点中,确定第二飞行器能够完成的目标任务点及其个数,并将第二飞行器能够完成的目标任务点确定为第二飞行器对应的第二任务群。

与前述第一飞行器的任务群的确定过程类似,针对根据蚁群算法生成的每条总体路径中多个目标任务点的访问顺序,第二飞行器将从充电平台直接飞往任务J,从任务J开始按照多个目标任务点的访问顺序执行后续未完成的任务,并做剩余电量的计算,从而可以确定第二飞行器对应的第二任务群。

可以理解,直至多个目标任务均被完成,则上述计算结束,从而也就达到了以飞行器自身电池容量作为限制,实现对多任务划分的目的。也就说,重复上述步骤410和步骤420,直到多个目标任务均被完成,即完成了将多个目标任务划分为多个任务群的过程。其中,每个任务群由相应的飞行器执行。

还可以理解,在确定任务群之后,实际执行过程中每个飞行器可以同时去执行相应的任务群中的任务。

在其中一个实施例中,提供了一种基于飞行器电量消耗的路径规划的详细的实现方式,下面详细介绍该详细的实现方式。

具体地,可以基于MATLAB R2016a环境探究参数取值的不同对蚂蚁算法带来的影响。在本实施例中,PC机配置可以为Intel(R)Core(TM)i5-9300H@2.4Ghz,处理器数量为四核八线程,16G内存。

仿真的场景可以参考图1,目标任务点位置及对应的任务完成所需的时间信息如表1所示。飞行器的相关性能参数如表2所示。

表1 目标任务点位置及对应的任务时间信息

表2 任务划分场景中飞行器的性能参数

以下将分别分析蚁群算法中六个参数即蚂蚁的数量m、信息素启发式因子为α、期望启发因子为β、信息素蒸发系数为ρ、信息素强度为Q以及最大迭代次数G的不同取值对目标函数的影响,并寻找到最佳的参数设置情况后再进行后续的仿真验证。

一、关于信息素启发式因子α和期望启发因子β

α的取值相对较小时,会出现搜索过程陷入局部最优的情况,取值较大会减弱算法的随机性。而β在取值相对较大时,虽然提升了算法的收敛速度,但削弱了求解过程的随机性。α和β两者之间存在着极强的关联性,若想使得蚁群算法在全局搜索中体现强的随机性和高的收敛性能,需要合理选定两者之间的搭配关系。

为了确定α和β的取值,将蚂蚁的数量m设定为20,ρ设定为0.2,Q设定为10,G设定为100。针对上述两参数不同的取值,每组仿真50次,并统计上述目标函数z的三个指标最优值、最差值以及平均值,如表3所示。

表3 α和β的不同取值对目标函数的影响

依据表3,通过比较α和β取不同值时,目标函数三个指标的数值大小。可以得到α和β分别取1和5时,上述三个指标均优于其余取值情况。

二、关于信息素蒸发系数ρ,通常情况下,信息素蒸发系数ρ的取值范围在0到1之间,它将直接影响着算法在搜索过程中的随机性。为了确定ρ的取值,将m设定为20,α和β依次设定为1和5,Q设定10,G设定为100。针对ρ不同的取值,每组仿真50次,并记录目标函数的最优值、最差值以及平均值,如下表4所示。

表4 ρ的不同取值对目标函数的影响

通过对比信息素蒸发系数ρ取不同值时,目标函数的最优值、最差值以及平均值的数值大小。可以得到,信息素蒸发系数ρ取值在0.1至0.3时,上述三个指标均优于其余取值情况。

三、关于蚁群中蚂蚁的数量m

m的取值相对较大时算法将会产生过多相同解,从而影响信息素的正反馈能力。但数量相对较少时,将会削弱搜索过程的随机性。

为了确定m的取值,将α和β分别设定1和5,ρ设定为0.1,Q设定为10,G设定为100。针对蚂蚁数量m不同的取值,每组仿真50次,并统计目标函数的三个指标和算法的运行时间,如下表5所示。

表5 m的取值对目标函数的影响

通过对比蚂蚁数量m取不同值时,目标函数的最优值、最差值以及平均值的数值大小。可以得到,随着m的增大,算法的寻优能力将有所提升,但程序的运行时间也将随着增长。综合考虑目标函数的三个指标以及程序的运行时间,蚂蚁数量m的取值可以在20至40之间。

四、关于信息素强度Q

Q的选取极大地依赖于α、β和ρ的取值大小。为了确定Q的取值,将α和β分别设定1和5,ρ设定为0.1,m设定为20,G设定为100。针对Q不同的取值,每组仿真50次,并记录目标函数的最优值、最差值以及平均值,如下表6所示。

表6 Q的取值对目标函数的影响

通过对比信息素强度Q取不同值时,目标函数的最优值、最差值以及平均值的数值大小,信息素强度Q没有明显影响算法的性能。通过对比上述三个指标,在α、β和ρ的取值依次设定为1、5和0.1时,将信息素强度Q的取值选定为10。

五、关于最大迭代次数G

最大迭代次数G是影响蚁群算法运行结束的参数。在算法运行过程中,若迭代次数达到G次,将停止运算并输出当前的最优解。为了确定最大迭代次数G的取值,将α和β依次设定为1和5,ρ设定为0.1,m设定为20,Q设定为10。针对最大迭代次数G不同的取值,每组仿真50次,并统计目标函数的三个指标和算法的运行时间,如下表7所示。

表7 G的取值对目标函数的影响

通过对比最大迭代次数G取不同值时,目标函数的最优值、最差值以及平均值的数值大小。可以得到,随着G的增大,目标函数三个指标中的平均值呈现小幅度的降低,但运行时间将随之增长。因此综合考虑平均值和运行时间后,最大迭代次数G将被设定为100。

基于上述对蚁群算法相关参数取值的分析,在进行仿真验证时,参数设置情况如下表8所示。

表8 蚁群算法的参数设置

在上述参数设置下,经算法优化后的多任务划分结果如表9所示。其中第三列表示飞行器按照第二列所示的任务执行次序,从充电平台位置出发执行完各项任务,并返回充电平台后的电量消耗。而第四列表示飞行器从充电平台出发到执行完第二列所示的任务后,两时刻之间的时间间隔。依据第二列所示的多任务划分结果,飞行器消耗的总电量为909.4588Wh,任务完成的总体时间为131.6407小时(h)。

表9 优化后的多任务划分结果

依据表9所示的多任务划分结果,可绘制出飞行器的飞行路径如图5所示。其中,圆圈对应的任务点代表编号为1的任务群中的任务,长方形对应的任务点代表编号为5的任务群中的任务,菱形对应的任务点代表编号为6的任务群中的任务,加号(+)对应的任务点代表编号为2的任务群中的任务,乘号(x)对应的任务点代表编号为4的任务群中的任务,星号(米字)对应的任务点代表编号为3的任务群中的任务。

下面对本发明提供的基于飞行器电量消耗的路径规划装置进行描述,下文描述的基于飞行器电量消耗的路径规划装置与上文描述的基于飞行器电量消耗的路径规划方法可相互对应参照。

图6是本发明提供的基于飞行器电量消耗的路径规划装置的示意图,如图6所示,本发明实施例提供的基于飞行器电量消耗的路径规划装置,包括:

获取模块610,用于获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;

确定模块610,用于基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;

其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

本发明提供的基于飞行器电量消耗的路径规划装置,通过使蚁群算法在每一次的迭代过程中,基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径,从而使最终确定的最优总体路径能够满足低电量消耗和总体任务完成时间短。同时,在每一次的迭代过程中,还基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,可以实现在满足低电量消耗和总体任务完成时间短的前提下,将复杂的多项任务划分为多个任务群。

基于上述任一实施例,在本实施例中,所述确定模块620包括:

第一确定单元,用于基于蚁群算法的参数和蚁群算法,按照单旅行商问题确定多条总体路径;

第二确定单元,用于基于各架飞行器的电量确定每条总体路径对应的多个任务群;每个任务群中的任务由一架飞行器执行;

第三确定单元,用于基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间,从多条总体路径中确定当前迭代下的最优总体路径;

更新单元,用于基于影响信息素更新的目标函数更新每条总体路径上的信息素;其中,所述影响信息素更新的目标函数基于各架飞行器完成对应的任务群中的任务消耗的电量总和以及多个目标任务完成的总体时间确定;

第四确定单元,用于在迭代次数小于最大迭代次数的情况下,根据更新后的信息素确定当前迭代以及历史迭代中的最优总体路径及其对应的任务群;在迭代次数等于最大迭代次数的情况下,输出当前迭代以及历史迭代中的最优总体路径及其对应的任务群。

基于上述任一实施例,在本实施例中,所述第二确定单元包括:

第五确定单元,用于基于每条总体路径中多个目标任务点的访问顺序以及第一飞行器的总电量,确定第一飞行器能够完成的目标任务点及其个数,并将第一飞行器能够完成的目标任务点确定为第一飞行器对应的第一任务群;

第六确定单元,用于基于每条总体路径中多个目标任务点的访问顺序以及第二飞行器的总电量,依次从多个目标任务点中除第一任务群之外的其他任务点中,确定第二飞行器能够完成的目标任务点及其个数,并将第二飞行器能够完成的目标任务点确定为第二飞行器对应的第二任务群。

基于上述任一实施例,在本实施例中,所述影响信息素更新的目标函数

基于所述影响信息素更新的目标函数确定的第k只蚂蚁在第i个目标任务点和第j个目标任务点之间的路径的信息素为:

基于上述任一实施例,在本实施例中,所述完成每条总体路径上对应的所有任务点需要的最大时长max(T

在其中一个实施例中,所述第s架飞行器完成对应任务群中的任务所消耗的电量E

基于上述任一实施例,在本实施例中,所述

图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(communications interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行基于飞行器电量消耗的路径规划方法。其中,基于飞行器电量消耗的路径规划方法包括:获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行本发明提供的基于飞行器电量消耗的路径规划方法。其中,基于飞行器电量消耗的路径规划方法包括:获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行本发明提供的基于飞行器电量消耗的路径规划方法。其中,基于飞行器电量消耗的路径规划方法包括:获取蚁群算法的参数、多个目标任务点以及各架飞行器的电量;其中,所述蚁群算法的参数中包括最大迭代次数;所述多个目标任务点为飞行器即将执行的多个目标任务对应的任务点,每个目标任务点对应蚁群算法中的构成路径的每个节点;基于所述蚁群算法的参数、各架飞行器的电量以及改进后的蚁群算法,确定在最大迭代次数内的最优总体路径及其对应的任务群;其中,总体路径表示多个目标任务点及其对应的访问顺序;其中,所述改进后的蚁群算法在每一次的迭代过程中,基于各架飞行器的电量确定当前迭代中的各个总体路径对应的任务群,以及基于各架飞行器完成任务消耗的电量以及多个目标任务完成的总体时间,确定当前迭代中的最优总体路径。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

可以理解,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种基于皮带机消耗电量的皮带秤计量方法及装置
  • 一种基于皮带机消耗电量的皮带秤计量方法及装置
技术分类

06120115579269