基于物流柜的无人机自动调度方法与系统
文献发布时间:2023-06-19 18:30:43
技术领域
本申请涉及无人机调度技术领域,具体涉及一种基于物流柜的无人机自动调度方法与系统。
背景技术
随着科学技术的不断发展,尤其是5G通信等相关技术的广泛应用,以及包裹运输需求的快速增加,无人机在物流行业的应用不断发展。由于无人机运输具有快速、安全、成本低、调度灵活等优势,并且能弥补传统的航空运力空白,因此借助无人机与物流柜对包裹进行协同配送是未来物流行业发展的必然趋势之一,具有较高的实用价值和广阔的应用前景。目前已有若干企业成功的将该模式应用到城市的快递、外卖等运输场景中。
伴随着用户配送包裹需求的快速增长,用户对包裹配送的需求愈加严格,其中,包裹配送的时效性是最常见用户需求之一。对于一批给定的包裹配送需求,在有限的无人机与物流柜资源的场景中,为每架无人机制定的规划方案时,需保证每架无人机以尽可能少的时间完成所有的任务,同时无人机的停靠方案之间不存在冲突。
但是,现有方法在考虑无人机的停靠方案不存在冲突的情况下,获取到的可行的规划方案的最大完工时间较长。
发明内容
(一)解决的技术问题
针对现有技术的不足,本申请提供了一种基于物流柜的无人机自动调度方法与系统,以解决现有技术现有方法在考虑无人机的停靠方案不存在冲突的情况下,获取到的可行的规划方案的最大完工时间较长的问题。
(二)技术方案
为实现以上目的,本申请通过以下技术方案予以实现:
在本申请的第一方面,提供了一种基于物流柜的无人机自动调度方法,所述方法包括:
S1、获取初始调度信息;
S2、初始化限制时段集合群P;其中,所述限制时段集合群P表示由N
S3、复制限制时段集合群P,得到复制后的限制时段集合群P′,并创建新的限制时段集合p
S4、进行迭代;其中,初始化迭代次数i=1;
S5、遍历限制时段集合群P;其中,初始化限制时段集合索引b=1;
S6、判断b≤N
S7、基于限制时段集合p
S8、判断O
S9、更新p
S10、判断O
S11、更新p
S12、更新迭代次数i=i+1,判断i≤NI是否成立,若是,则转S13;否则转S14;其中,N
S13、更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转S5;
S14、输出p
可选的,所述S2中初始化限制时段集合群P中的参数,包括:
S201、初始化b=1;
S202、判断b≤N
S203、初始化p
S204、初始化改进幅度边界
S205、初始化
S206、初始化
S207、更新b=b+1,转S202。
可选的,所述S7基于限制时段集合p
S701、获取限制时段集合p
S702、初始化待分支节点集合C为空集,规划方案S为空集,对应每个无人机创建一个搜索树R,为每个物流柜创建一个冲突时段集合F;
其中,R
S703、遍历无人机;其中,初始化无人机编号j=1;
S704、判断j≤N
S705、设置无人机d
S706、将根节点添加到待分支节点集合C;
S707、判断搜索树R
S708、判断待分支节点集合C是否为空集,若是,转S710;否则转S709;
S709、对待分支节点集合C中的首个节点F进行分支,转S707;S710、计算d
S711、计算搜索树R
S712、选择有效配送时间比最大的节点,根据搜索树R
S713、将S
S714、输出规划方案S;
S715、计算规划方案S的最大完工时间O
S716、在所述最大完工时间O
可选的,所述S709中对待分支节点集合C中的首个节点F进行分支,包括:
S70901、获取限制时段集合p
S70902、遍历物流柜集合L;其中,初始化物流柜编号k=1;
S70903、判断k≤N
S70904、判断该物流柜是否为待分支节点F对应的物流柜,若是,则更新k=k+1,转S70903;否则转S70905;
S70905、计算无人机d
S70906、判断任务集合T中是否存在以节点F对应的物流柜为起点,物流柜l
S70907、判断在根节点到节点F的分支中是否包含该任务,若是,转S70916;否则转S70908;
S70908、判断
S70909、令无人机d
S70910、更新无人机d
S70911、计算物流柜l
S70912、判断E
S70913、更新E
S70914、判断
S70915、基于物流柜l
S70916、判断节点F是否为根节点且R
S70917、创建一个虚拟任务;其中,所述虚拟任务的起点为节点F对应的物流柜,终点为物流柜l
S70918、令无人机d
S70919、计算物流柜l
S70920、判断E
S70921、更新E
S70922、在所述待分支节点集合C中删除节点F;
S70923、输出搜索树R
可选的,所述S13中更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转S5,包括:
S1301、更新时间改进幅度边界
S1302、对时间改进幅度进行更新,得到更新后的
S1303、遍历限制时段集合群P;其中,初始化限制时段集合索引b=1;
S1304、判断b≤N
S1305、遍历p
S1306、判断j≤N
S1307、更新p
S1308、更新p
S1309、更新j=j+1,转S1306;
S1310、更新b=b+1,转S1304。
可选的,所述S1302中对时间改进幅度进行更新,得到更新后的
S130201、遍历所述限制时段集合群P;其中,初始化限制时段集合索引b=1;
S130202、判断b≤N
S130203、遍历p
S130205、随机生成小数r
其中,r
S130206、判断
S130207、判断
S130208、随机生成小数r
其中,小数r
S130209、判断
S130210、判断
S130211、更新j=j+1,转步骤S130204;
S130212、更新b=b+1,转S130202;
S130213、输出更新后的
在本申请的第二方面,提供了一种基于物流柜的无人机自动调度系统,所述系统包括:
第一获取模块,用于执行S1、获取初始调度信息;
第一初始化模块,用于执行S2、初始化限制时段集合群P;其中,所述限制时段集合群P表示由N
第一复制模块,用于执行S3、复制限制时段集合群P,得到复制后的限制时段集合群P′,并创建新的限制时段集合p
第一迭代模块,用于执行S4、进行迭代;其中,初始化迭代次数i=1;
第一遍历模块,用于执行S5、遍历限制时段集合群P;其中,初始化限制时段集合索引b=1;
第一判断模块,用于执行S6、判断b≤N
第二获取模块,用于执行S7、基于限制时段集合p
第二判断模块,用于执行S8、判断O
第一更新模块,用于执行S9、更新p
第三判断模块,用于执行S10、判断O
第二更新模块,用于执行S11、更新p
第四判断模块,用于执行S12、更新迭代次数i=i+1,判断i≤N
第三更新模块,用于执行S13、更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转第一遍历模块执行S5;
第一输出模块,用于执行S14、输出p
可选的,所述第一初始化模块,包括:
第一初始化子模块,用于执行S201、初始化b=1;
第一判断子模块,用于执行S202、判断b≤N
第二初始化子模块,用于执行S203、初始化p
第三初始化子模块,用于执行S204、初始化改进幅度边界
第四初始化子模块,用于执行S205、初始化
第五初始化子模块,用于执行S206、初始化
第一更新子模块,用于执行S207、更新b=b+1,转第一判断子模块执行S202。
在本申请的第三方面,提供了一种电子设备,所述电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的基于物流柜的无人机自动调度方法步骤。
在本申请的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的基于物流柜的无人机自动调度方法步骤。
(三)有益效果
本申请提供了一种基于物流柜的无人机自动调度方法与系统,与现有技术相比,具备以下有益效果:
在本申请所提供的技术方案中,S1、获取初始调度信息;S2、初始化限制时段集合群P;S3、复制限制时段集合群P,得到复制后的限制时段集合群P′,并创建新的限制时段集合p
基于上述处理,通过为配送任务集合中的每个任务赋予了限制执行时间段,和通过树搜索的启发式方法逐个规划每架无人机的飞行方案,保证了每架无人机的停靠方案中不存在冲突。然后,基于粒子群迭代搜索的方式,在每次迭代过程中分别更新每个任务的释放时间以及截止时间,寻找到更适合每个任务的限制执行时间段,以及对应的最大完工时间最小的规划方案。基于树搜索和粒子群迭代搜索的结合,可以快速获取到最大完工时间最小的规划方案,降低了获取规划方案的时间成本和计算成本,以及有效缩短了获取到的规划方案的最大完工时间,极大提升了获取到的规划方案的质量,提高了无人机的配送效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于物流柜的无人机自动调度方法的流程图;
图2为本申请实施例提供的一种基于有效配送时间比的树搜索的流程图;
图3为本申请实施例提供的一种基于任务限制执行时间段的分支探索流程图;
图4为本申请实施例提供的一种计算任务执行时间段的流程图;
图5为本申请实施例提供的一种基于物流柜的无人机自动调度系统的结构图;
图6为本申请实施例提供的一种电子设备的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例通过提供一种基于物流柜的无人机自动调度方法与系统,解决了现有技术中在考虑无人机的停靠方案不存在冲突的情况下,获取到的可行的规划方案的最大完工时间较长的问题,基于树搜索和粒子群迭代搜索的结合,可以快速获取到最大完工时间最小的规划方案,降低了获取规划方案的时间成本和计算成本,以及有效缩短了获取到的规划方案的最大完工时间,极大提升了获取到的规划方案的质量,提高了无人机的配送效率。
本申请实施例中的技术方案为解决上述技术问题,总体思路如下:
在无人机与物流柜协同配送模式中,物流柜的柜顶部作为无人机的起降平台,无人机可以在物流柜顶部自动完成包裹的装载,飞行到指定的物流柜顶部后自动完成包裹的卸载。在执行配送任务时,无人机携带货物从发出地飞往接收地,其有序访问的多个物流柜之间的路线连起来构成路径,可行的规划方案包含每架无人机的飞行路径。无人机需要在物流柜上装卸货物和更换电池,且一个物流柜的顶部在同一时段只能供一架无人机停靠,无人机在同一物流柜上的停靠时段有重叠即会产生冲突,可行的规划方案包含无人机在物流柜上的停靠方案。
针对用户对包裹配送的时效性要求,本发明的目的为:对于一批给定的任务,如何安排每架无人机的配送路径以及详细的停靠时间段,且无人机之间在停靠时不存在冲突,以最小的最大完工时间完成对所有包裹的配送。
为了实现上述目的,本申请通过为配送任务集合中的每个任务赋予了限制执行时间段,并且基于树搜索的启发式方法逐个规划每架无人机的飞行方案。然后,基于粒子群迭代搜索的方式,在每次迭代过程中分别更新每个任务的释放时间以及截止时间,寻找到更适合每个任务的限制执行时间段,以及对应的最大完工时间最小的规划方案。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
本申请实施例所提供的无人机与物流柜协同配送方法,是应用于有N
第i个配送任务t
第j个无人机d
任务释放时间表示设定的接收到任务的时间。其中,所有任务都必须在其对应的任务释放时间之后才可以执行;
任务截止时间表示所设定的任务失效的时间。其中,所有任务都必须在其对应的任务截止时间之前完成。
任务限制执行时间段,简称限制时段,表示从任务释放时间开始到任务截止时间结束的时间段。
任务限制执行时间段集合,简称限制时段集合,表示由每个任务的限制时段组成的长度为N
任务限制执行时间段集合群体,简称限制时段集合群,由N
此外,在本申请提供的实施例中,采用粒子群算法对每个任务的释放时间与开始时间进行更新时,每个任务释放时间与截止时间都分别对应一个时间改进幅度。其中,
参见图1,图1为本申请实施例提供的一种基于物流柜的无人机自动调度方法的流程图。如图1所示,无人机自动调度方法包括:
S1、获取初始调度信息。
其中,初始调度信息包括:配送任务集合T、物流柜集合L、物流无人机集合D以及每架无人机的停靠位置信息。
S2、初始化限制时段集合群P。
其中,限制时段集合群P表示由N
S3、复制限制时段集合群P,得到复制后的限制时段集合群P′,并创建新的限制时段集合p
其中,初始化p
S4、进行迭代;其中,初始化迭代次数i=1。
S5、遍历限制时段集合群P;其中,初始化限制时段集合索引b=1。
S6、判断b≤N
S7、基于限制时段集合p
S8、判断O
S9、更新p
S10、判断O
S11、更新p
S12、更新迭代次数i=i+1,判断i≤N
S13、更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转S5。
S14、输出p
基于上述处理,通过为配送任务集合中的每个任务赋予了限制执行时间段,以及通过树搜索的启发式方法逐个规划每架无人机的飞行方案,保证了每架无人机的停靠方案中不存在冲突。然后,基于粒子群迭代搜索的方式,在每次迭代过程中分别更新每个任务的释放时间以及截止时间,寻找到更适合每个任务的限制执行时间段,以及对应的最大完工时间最小的规划方案。基于树搜索和粒子群迭代搜索的结合,可以快速获取到最大完工时间最小的规划方案,降低了获取规划方案的时间成本和计算成本,以及有效缩短了获取到的规划方案的最大完T时间,极大提升了获取到的规划方案的质量,提高了无人机的配送效率。
针对步骤S2,初始化限制时段集合群P,包括:
S201、初始化b=1。
S202、判断b≤N
S203、初始化p
S204、初始化改进幅度边界
S205、初始化
S206、初始化
S207、更新b=b+1,转S202。
针对步骤S203,截止时间A为一个非常大的数值。
基于上述处理,为配送任务集合中的每个任务赋予了限制执行时间段。其中,限制执行时间段由释放时间和截止时间两个属性构成。
针对步骤S3,复制后的限制时段集合群P′中的每个限制时段集合p
新的限制时段集合p
此外,在步骤S3中,显而易见地,p
有效配送时间比表示给定的某条无人机规划方案中,实际配送任务的消耗的时间与完成整个配送方案所耗费的时间的比值。
搜索树R
无人机在物流柜上的停靠时间段表示从无人机d
参见图2,图2为本申请实施例提供的一种基于有效配送时间比的树搜索的流程图。如图2所示,在步骤S7中,基于限制时段集合p
S701、获取限制时段集合p
S702、初始化待分支节点集合C为空集,规划方案S为空集,对应每个无人机创建一个搜索树R,为每个物流柜创建一个冲突时段集合F。
其中,R
S703、遍历无人机;其中,初始化无人机编号j=1。
S704、判断j≤N
S705、设置无人机d
S706、将根节点添加到待分支节点集合C。
S707、判断搜索树R
S708、判断待分支节点集合C是否为空集,若是,转S710,否则转S709。
S709、对待分支节点集合C中的首个节点F进行分支,转S707。
具体的,参见图3,图3为本申请实施例提供的一种基于任务限制执行时间段的分支探索流程图。如图3所示,步骤S709中对待分支节点集合C中的首个节点F进行分支,包括:
S70901、获取限制时段集合p
S70902、遍历物流柜集合L;其中,初始化物流柜编号k=1。
S70903、判断k≤N
S70904、判断该物流柜是否为待分支节点F对应的物流柜,若是,则更新k=k+1,转S70903;否则转S70905。
S70905、计算无人机d
S70906、判断任务集合T中是否存在以节点F对应的物流柜为起点,物流柜l
S70907、判断在根节点到节点F的分支中是否包含该任务,若是,转S70916;否则转S70908。
S70908、判断
S70909、令无人机d
S70910、更新无人机d
S70911、计算物流柜l
S70912、判断E
S70913、更新E
S70914、判断
S70915、基于物流柜l
S70916、判断节点F是否为根节点且R
S70917、创建一个虚拟任务;其中,所述虚拟任务的起点为节点F对应的物流柜,终点为物流柜l
S70918、令无人机d
S70919、计算物流柜l
S70920、判断E
S70921、更新E
S70922、在所述待分支节点集合C中删除节点F。
S70923、输出搜索树R
基于上述处理,完成对待分支节点集合C中的首个节点F进行分支的过程。
此外,在步骤S709中,计算无人机执行任务时的起飞时间、到达时间以及任务完成时间的过程,可参见图4,图4为本申请实施例提供的一种计算任务执行时间段的流程图。如图4所示,计算任务执行时间段的步骤,包括:
步骤a、初始化起飞时间为上一任务执行完毕时间。
步骤b、判断该任务是否为虚拟任务,若否,转步骤c;若是,则转步骤f。
步骤c、根据任务释放时间,判断该任务是否已经释放,若否,转步骤d;若是,则转步骤e。
步骤d、更新起飞时间为任务释放时间。
步骤e、更新起飞时间为当前起飞时间加装载货物时间。
步骤f、计算无人机到达任务接收站点的时间。
步骤g、判断该无人机是否可以降落,若否,则转步骤h;若是,则转步骤k。
步骤h、根据到达的物流柜的冲突时段集合更新无人机的到达时间。
步骤i、计算该任务的完成时间=到达时间+卸载货物时间。
步骤j、倒推计算并更新无人机的起飞时间。
步骤k、输出无人机执行该任务的起飞时间、到达时间以及任务完成时间。
S710、计算d
S711、计算搜索树R
S712、选择有效配送时间比最大的节点,根据搜索树R
S713、将S
S714、输出规划方案S。
此外,在步骤S7中,确定p
S715、计算规划方案S的最大完工时间O
S716、在所述最大完工时间O
针对步骤S716,预设时间段H为一个非常大的时间长度,以使在最大完工时间O
在本申请提供的实施例中,从无人机从降落到物流柜开始,到无人机再次从该物流柜起飞结束,此段时间称为无人机在该物流柜上的停靠时间段。可知,停靠时间段由卸载货物时间、滞留等待时间以及装载货物时间三部分组成
在本申请提供的实施例中,
具体的,步骤S13中,更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转S5,包括:
S1301、更新时间改进幅度边界
S1302、对时间改进幅度进行更新,得到更新后的
S1303、遍历限制时段集合群P。其中,初始化限制时段集合索引b=1。
S1304、判断b≤N
S1305、遍历p
S1306、判断j≤N
S1307、更新p
S1308、更新p
S1309、更新j=j+1,转S1306。
S1310、更新b=b+1,转S1304。
针对步骤S1302中,对时间改进幅度进行更新,得到更新后的
S130201、遍历所述限制时段集合群P。其中,初始化限制时段集合索引b=1。
S130202、判断b≤N
S130203、遍历p
S130204、判断j≤N
S130205、随机生成小数r
其中,r
S130206、判断
S130207、判断
S130208、随机生成小数r
其中,小数r
S130209、判断
S130210、判断
S130211、更新j=j+1,转步骤S130204。
S130212、更新b=b+1,转S130202。
S130213、输出更新后的
基于相同的发明构思,本申请实施例还提供了一种无人机与物流柜协同配送装置,参见图5,图5为本申请实施例提供的一种基于物流柜的无人机自动调度系统的结构图。如图5所示,该系统包括:
第一获取模块501,用于执行S1、获取初始调度信息;所述初始调度信息包括:配送任务集合T、物流柜集合L、物流无人机集合D以及每架无人机的停靠位置信息。
第一初始化模块502,用于执行S2、初始化限制时段集合群P;其中,所述限制时段集合群P表示由N
第一复制模块503,用于执行S3、复制限制时段集合群P,得到复制后的限制时段集合群P′,并创建新的限制时段集合p
第一迭代模块504,用于执行S4、进行迭代。其中,初始化迭代次数i=1。
第一遍历模块505,用于执行S5、遍历限制时段集合群P。其中,初始化限制时段集合索引b=1。
第一判断模块506,用于执行S6、判断b≤N
第二获取模块507,用于执行S7、基于限制时段集合p
第二判断模块508,用于执行S8、判断O
第一更新模块509,用于执行S9、更新p
第三判断模块510,用于执行S10、判断O
第二更新模块511,用于执行S11、更新p
第四判断模块512,用于执行S12、更新迭代次数i=i+1,判断i≤N
第三更新模块513,用于执行S13、更新限制时段集合群P中每个限制时段集合的任务释放以及截止时间,转第一遍历模块505执行S5。
第一输出模块514,用于执行S14、输出p
本申请实施例还提供了一种电子设备,参见图6,图6为本申请实施例提供的一种电子设备的结构图。如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现上述任一基于物流柜的无人机自动调度方法。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述任一基于物流柜的无人机自动调度方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一基于物流柜的无人机自动调度方法。
综上所述,与现有技术相比,具备以下有益效果:
基于上述处理,通过为配送任务集合中的每个任务赋予了限制执行时间段,和通过树搜索的启发式方法逐个规划每架无人机的飞行方案,保证了每架无人机的停靠方案中不存在冲突。然后,基于粒子群迭代搜索的方式,在每次迭代过程中分别更新每个任务的释放时间以及截止时间,从而寻找到更适合每个任务的限制执行时间段,以及对应的最大完工时间最小的规划方案。基于树搜索和粒子群迭代搜索的结合,可以快速获取到最大完工时间最小的规划方案,降低了获取规划方案的时间成本和计算成本,以及有效缩短了获取到的规划方案的最大完工时间,极大提升了获取到的规划方案的质量,提高了无人机的配送效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解、其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
- 一种基于无人机的公安智能指挥调度方法及系统
- 自动识别物流系统、自动识别物流门和自动识别物流方法
- 无人机与物流柜协同配送智能调度方法与系统
- 物流柜与无人机协同配送任务调度方法和系统