本发明涉及物流的调度技术领域,具体地涉及一种基于车辆与无人机协同作业的末端配送方法及系统。
背景技术:
随着无人机技术的不断成熟,在末端配送领域,多个物流企业与科技公司已完成利用无人机进行末端配送的初步实验。由于无人机存在载重和飞行距离的限制,只能对一定范围内的顾客进行特定规格货物的配送,因此使用纯无人机配送在续航与载重上仍有较大局限。将车辆与无人机结合起来进行配送能够很好的解决无人机续航与载重的问题,在实现车机协同配送过程中,如何选择最佳的配送节点,优化车辆和无人机的行驶路线,以此提高车机协同配送效率是一个值得探讨的研究方向。但是,由于现有技术中还没有相关的调度方法能够适应无人机和车辆结合调度的特殊条件,从而制约了这一技术的进一步推广。
技术实现要素:
本发明实施方式的目的是提供一种基于车辆和无人机系统作业的末端配送方法及系统,方法及系统能够克服现有技术中调度算法无法适应车辆和无人机协同配送条件的技术缺陷。
为了实现上述目的,本发明实施方式提供一种基于车辆和无人机系统作业的末端配送方法,所述方法包括:
获取任一所述车辆的访问路径;
按照所述车辆的访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中;
判断选取的所述节点是否为所述车辆的访问路径中的倒数第二个节点;
在判断选取的所述节点不为所述车辆的访问路径中的倒数第二个节点的情况下,根据公式(1)分别计算在所述无人机以选取的所述节点为起飞节点,完成所述车辆的访问路径中选取的所述节点后的每个节点的配送任务的能耗系数,
其中,φ为所述能耗系数,d为选取的所述节点到完成配送任务的节点的距离,m为完成配送任务的节点的需求量;
判断所述无人机完成能耗系数最低的所述节点的配送任务的当前载重是否小于或等于所述无人机的负载能力;
在判断所述无人机完成能耗系数最低的所述节点的配送任务的当前载重小于或等于所述无人机的负载能力的情况下,判断所述无人机完成能耗系数最低的所述节点的配送任务的当前行进时长是否小于或等于所述无人机的续航能力;
在判断所述无人机完成能耗系数最低的所述节点的配送任务的当前行进时长小于或等于所述无人机的续航能力的情况下,将能耗系数最低的所述节点加入所述无人机当前的访问路径集合中;
判断能耗系数最低的所述节点是否为所述车辆的访问路径的最后一个节点;
在判断能耗系数最低的所述节点不为所述车辆的访问路径的最后一个节点的情况下,再次根据公式(1)分别计算在所述无人机以选取的所述节点为起飞节点,并执行所述方法的相应步骤;
在判断所述能耗系数最低的所述节点为所述车辆的访问路径的最后一个节点的情况下,判断所述无人机当前的访问路径集合中节点的数量是否大于2;
在所述无人机当前的访问路径集合中节点的数量为小于或等于2的情况下,清空所述无人机当前的访问路径集合,再次按照所述访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中,并执行所述方法的相应步骤;
在所述无人机当前的访问路径集合中节点的数量大于3的情况下,将所述无人机当前的访问路径集合中的节点存入无人机的访问路径中,并清空所述无人机当前的访问路径集合,再次按照所述访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中,并执行所述方法的相应步骤;
在判断选取的所述节点为所述车辆的访问路径中的倒数第二个节点的情况下,输出所述无人机的访问路径。
可选地,所述方法进一步包括:
在按照所述车辆的访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中的步骤中,分别采用所述车辆的访问路径中的每个节点作为首个被选取的节点,并执行所述方法的相应步骤以得到对应的无人机的访问路径;
分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解。
可选地,所述分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解具体包括:
根据公式(2)计算每个所述无人机的访问路径的配送时间,
其中,j1为所述配送时间,m为所述车辆的数量,
选择配送时间最短的所述无人机的访问路径作为最优解。
可选地,所述分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解具体包括:
根据公式(3)计算每个所述无人机的访问路径的配送成本,
其中,j2为所述配送成本,
选择配送成本最低的所述无人机的访问路径作为最优解。
可选地,所述方法进一步包括:
分别获取每个所述车辆的访问路径,并根据所述方法的相应步骤计算对应最优解以得到多个所述车辆情况下,所述无人机的访问路径的最优解。
可选地,所述方法进一步包括:
获取配送区域的节点信息以及当前可配送的车辆信息;
根据公式(4)和公式(5)设置目标函数,
其中,cij为所述配送区域内第i个节点到第j个节点之间的车辆运送成本,
根据公式(6)至公式(9)设置约束条件,
其中,di为节点i的需求量,bk为车辆k的最大负载量;
基于所述目标函数、所述约束条件生成每个所述车辆的访问路径。
可选地,所述基于所述目标函数、所述约束条件生成每个所述车辆的访问路径具体包括:
采用蚁群算法生成所述车辆的访问路径。
可选地,所述基于所述目标函数、所述约束条件生成每个所述车辆的访问路径具体包括:
采用快速贪婪算法生成所述车辆的访问路径。
另一方面,本发明还提供一种基于车辆与无人机协同作业的末端配送系统,所述系统包括处理器,所述处理器用于被配置成执行如上述任一所述的方法。
再一方面,本发明还提供一种存储介质,所述存储介质存储有指令,所述指令用于被机器读取以使得所述机器执行如上述任一所述的方法。
通过上述技术方案,本发明提供的基于车辆和无人机协同作业的末端配送方法及系统通过对现有技术中的调度算法进行改造,针对车辆访问路径的每个节点单独进行分析,确定无人机能够访问的节点,从而克服了现有技术中调度算法无法适应车辆和无人机协同配送条件的技术缺陷,提高了调度的效率。
本发明实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施方式,但并不构成对本发明实施方式的限制。在附图中:
图1是根据本发明的一个实施方式的基于车辆和无人机协同作业的末端配送方法的流程图;
图2是根据本发明的一个实施方式的生成车辆的访问路径的方法的流程图;以及
图3是根据本发明的一个示例的车辆的访问路径的示意图。
具体实施方式
以下结合附图对本发明实施方式的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施方式,并不用于限制本发明实施方式。
在本发明实施方式中,在未作相反说明的情况下,使用的方位词如“上、下、顶、底”通常是针对附图所示的方向而言的或者是针对竖直、垂直或重力方向上而言的各部件相互位置关系描述用词。
另外,若本发明实施方式中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施方式之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1是根据本发明的一个实施方式的基于车辆和无人机协同作业的末端配送方法的流程图。在图1中,该方法可以包括:
在步骤s10中,获取任一车辆的访问路径。其中,该访问路径可以是预先基于配送区域内的各个节点信息和待运输的车辆信息,采用预设的算法进行调度和规划得到的。对于该预设的算法,可以是本领域人员所知的多种方法。但是,在本发明的一个示例中,发明人基于无人机结合车辆的技术条件,设计了如图2所示出的方法。在图2中,该方法可以包括:
在步骤s30中,获取配送区域的节点信息以及当前可配送的车辆信息。
在步骤s31中,根据公式(4)和公式(5)设置目标函数,
其中,j3表示车辆配送的总成本,j4表示车辆配送的时间,cij为配送区域内第i个节点到第j个节点之间的车辆运送成本,
在步骤s32中,根据公式(6)至公式(9)设置约束条件,
其中,di为节点i的需求量,bk为车辆k的最大负载量。
在该步骤s32设置的目标函数中,公式(6)可以表示车辆k从停车场0出发,最终完成配送任务后返回停车场0。而公式(7)和公式(8)则可以表示节点只需要被配送一次,这样避免了由于不同车辆访问同一节点而导致的配送成本增加的问题。公式(9)则可以表示对于每个车辆所访问(配送货物)的节点,其节点的需求量应当小于车辆的最大负载量。
在步骤s33中,基于目标函数、约束条件生成每个车辆的访问路径。在该实施方式中,基于步骤s31和步骤s32所设置的目标函数和约束条件,在该实例中,可以采用例如蚁群算法和/或快速贪婪算法来生成每个车辆的访问路径。
在步骤s11中,按照车辆的访问路径的节点次序从访问路径中读取一个未被选取的节点,将选取的节点放入无人机当前的访问路径集合中。
在步骤s12中,判断选取的节点是否为车辆的访问路径中的倒数第二个节点。
在步骤s13中,在判断选取的节点不为车辆的访问路径中的倒数第二个节点的情况下,根据公式(1)分别计算在无人机以选取的节点为起飞节点,完成车辆的访问路径中选取的节点后的每个节点的配送任务的能耗系数,
其中,φ为能耗系数,d为选取的节点到完成配送任务的节点的距离,m为完成配送任务的节点的需求量。
由于在车辆配送的过程中,无人机的起飞、装载以及降落均需要时间,因此可以单架无人机要完成一次起飞、降落就需要车辆完成三个节点的配送任务的时间。也即在无人机完成一次起飞、降落的过程中,车辆需要完成三个节点的配送任务。因此,在步骤s12中,判断选取的节点是否为车辆的访问路径中的倒数第二个节点则是为了确定当前选取的节点是否能够作为无人机的起飞节点。在判断当前的选取的节点为倒数第二个节点的情况下,此时车辆需要执行配送任务的节点只有两个,这不足以为无人机的起飞、降落提供足够的时间。所以,此时已经不需要在继续规划无人机的路径,故在判断当前的选取的节点为倒数第二个节点的情况下,执行步骤s20,即输出无人机的访问路径。
反之,在判断当前的选取的节点不为倒数第二个节点的情况下,此时车辆需要执行配送任务的节点还有三个,车辆完成配送任务的时间仍然能够为无人机提供一次起飞、降落的时间。因此,可以执行步骤s13。
针对步骤s13中示出的方法,以图3中示出的示例为例。在图3中,车辆路径为1至8。在选取的节点为1的情况下,此时该车辆能够配送的节点有8各个,能够为无人机提供一次起飞、降落的时间。因此,可以采用公式(1)计算能耗系数。在选取的节点为1作为起飞节点的情况下,无人机能够访问的节点可能是节点2至8。因此,在步骤s13中就需要针对每个该节点2至8分别计算能耗系数,从而确定该无人机能够完成配送任务的节点,最终规划出无人机的访问路径。
在步骤s14中,判断无人机完成能耗系数最低的节点的配送任务的当前载重是否小于或等于无人机的负载能力。
在步骤s15中,在判断无人机完成能耗系数最低的节点的配送任务的当前载重小于或等于无人机的负载能力的情况下,判断无人机完成能耗系数最低的节点的配送任务的当前行进时长是否小于或等于无人机的续航能力。通过s14和步骤s15可以确定该无人机是否能够完成能耗系数最低的节点的配送任务。那么相应地,在判断无人机不能够完成该能耗系数最低的节点的情况下,表示此时无人机已经不能够继续执行配送任务,需要返回车辆,所以可以直接执行步骤s18。而在判断该无人机能够完成该能耗系数最低的节点的配送任务的情况下,此时表示该仍然可以继续完成配送任务,因此可以执行步骤s16。
在步骤s16中,在判断无人机完成能耗系数最低的节点的配送任务的当前行进时长小于或等于无人机的续航能力的情况下,将能耗系数最低的节点加入无人机当前的访问路径集合中。
在步骤s17中,判断能耗系数最低的节点是否为车辆的访问路径的最后一个节点。
在判断能耗系数最低的节点不为车辆的访问路径的最后一个节点的情况下,此时说明无人机当前仍然有执行配送任务的时间,因此可以再次根据公式(1)分别计算在无人机以选取的节点为起飞节点,并执行该方法的相应步骤(即返回执行步骤s13)。
在步骤s18中,在判断能耗系数最低的节点为车辆的访问路径的最后一个节点的情况下,判断无人机当前的访问路径集合中节点的数量是否大于2。在前述中已经指出,无人机要完成一次起飞、降落的过程需要至少三个节点。那么,无人机当前的访问路径集合中的节点的数量大于2则说明此时已经能够构成一个无人机的起飞、降落的完整过程。而反之,当前的访问路径集合中的节点的数量小于2的情况则说明当前不足以构成一个完整过程。因此,在该数量大于2的情况下,应当执行步骤s19;而在小于或等于2的情况下,则可以返回执行步骤s21。即:
在步骤s20中,在无人机当前的访问路径集合中节点的数量为小于或等于2的情况下,清空无人机当前的访问路径集合,再次按照访问路径的节点次序从访问路径中读取一个未被选取的节点,将选取的节点放入无人机当前的访问路径集合中,并执行该方法的相应步骤(即返回执行步骤s11);
在步骤s19中,在无人机当前的访问路径集合中节点的数量大于3的情况下,将无人机当前的访问路径集合中的节点存入无人机的访问路径中,并清空无人机当前的访问路径集合(步骤s20),再次按照访问路径的节点次序从访问路径中读取一个未被选取的节点,将选取的节点放入无人机当前的访问路径集合中,并执行该方法的相应步骤(即返回执行步骤s11)。
在步骤s21中,在判断选取的节点为车辆的访问路径中的倒数第二个节点的情况下,输出无人机的访问路径。
另外,在设计如图1所示的方法的过程中,发明人发现,在将车辆的访问路径的不同的节点作为无人机的首个起飞节点的情况下,即步骤s11中选取的首个节点为车辆的访问路径的第一个节点、第二个节点或第三个节点等,会产生多种无人机的访问路径。为了进一步提高本发明提供的方法的准确性。也可以在步骤s11中增加分别采用车辆的访问路径中的每个节点作为首个被选取的节点的步骤,并执行如图1中的方法的其余步骤,从而得到多个无人机的访问路径。而针对得到的每个访问路径,为了确定其各自的优劣度,发明人又设计了公式(2)和/或公式(3)来计算各自的优劣度,并最终选择最优的无人机的访问路径。
分别计算每个无人机的访问路径的优劣度,选择最优的无人机的访问路径作为最优解。具体地,可以是例如:
1、根据公式(2)计算每个所述无人机的访问路径的配送时间,
其中,j1为配送时间,m为车辆的数量,
选择配送时间最短的无人机的访问路径作为最优解。
其中,在该公式(2)中,
2、根据公式(3)计算每个所述无人机的访问路径的配送成本,
其中,j2为配送成本,
选择配送成本最低的所述无人机的访问路径作为最优解。
其中,在该公式(3)中,
另外,考虑到本发明提供的方法需要针对每个车辆的访问路径进行计算,从而得到整体(多个车辆)的无人机的访问路径。因此,本发明提供的方法还可以包括分别获取每个车辆的访问路径,并根据如图1中所示出的方法的相应步骤计算对应最优解以得到多个车辆情况下,无人机的访问路径的最优解的步骤。
另一方面,本发明还提供一种基于车辆与无人机协同作业的末端配送系统,所述系统包括处理器,所述处理器用于被配置成执行如上述任一所述的方法。
再一方面,本发明还提供一种存储介质,所述存储介质存储有指令,所述指令用于被机器读取以使得所述机器执行如上述任一所述的方法。
通过上述技术方案,本发明提供的基于车辆和无人机协同作业的末端配送方法及系统通过对现有技术中的调度算法进行改造,针对车辆访问路径的每个节点单独进行分析,确定无人机能够访问的节点,从而适应了车辆和无人机相结合调度的特殊条件,提高了调度的效率。
以上结合附图详细描述了本发明例的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施方式对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施方式方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个可以是单片机,芯片等或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施方式的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施方式的思想,其同样应当视为本发明实施方式所公开的内容。
1.一种基于车辆和无人机协同作业的末端配送方法,其特征在于,所述方法包括:
获取任一所述车辆的访问路径;
按照所述车辆的访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中;
判断选取的所述节点是否为所述车辆的访问路径中的倒数第二个节点;
在判断选取的所述节点不为所述车辆的访问路径中的倒数第二个节点的情况下,根据公式(1)分别计算在所述无人机以选取的所述节点为起飞节点,完成所述车辆的访问路径中选取的所述节点后的每个节点的配送任务的能耗系数,
其中,φ为所述能耗系数,d为选取的所述节点到完成配送任务的节点的距离,m为完成配送任务的节点的需求量;
判断所述无人机完成能耗系数最低的所述节点的配送任务的当前载重是否小于或等于所述无人机的负载能力;
在判断所述无人机完成能耗系数最低的所述节点的配送任务的当前载重小于或等于所述无人机的负载能力的情况下,判断所述无人机完成能耗系数最低的所述节点的配送任务的当前行进时长是否小于或等于所述无人机的续航能力;
在判断所述无人机完成能耗系数最低的所述节点的配送任务的当前行进时长小于或等于所述无人机的续航能力的情况下,将能耗系数最低的所述节点加入所述无人机当前的访问路径集合中;
判断能耗系数最低的所述节点是否为所述车辆的访问路径的最后一个节点;
在判断能耗系数最低的所述节点不为所述车辆的访问路径的最后一个节点的情况下,再次根据公式(1)分别计算在所述无人机以选取的所述节点为起飞节点,并执行所述方法的相应步骤;
在判断所述能耗系数最低的所述节点为所述车辆的访问路径的最后一个节点的情况下,判断所述无人机当前的访问路径集合中节点的数量是否大于2;
在所述无人机当前的访问路径集合中节点的数量为小于或等于2的情况下,清空所述无人机当前的访问路径集合,再次按照所述访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中,并执行所述方法的相应步骤;
在所述无人机当前的访问路径集合中节点的数量大于3的情况下,将所述无人机当前的访问路径集合中的节点存入无人机的访问路径中,并清空所述无人机当前的访问路径集合,再次按照所述访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中,并执行所述方法的相应步骤;
在判断选取的所述节点为所述车辆的访问路径中的倒数第二个节点的情况下,输出所述无人机的访问路径。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
在按照所述车辆的访问路径的节点次序从所述访问路径中读取一个未被选取的节点,将选取的所述节点放入无人机当前的访问路径集合中的步骤中,分别采用所述车辆的访问路径中的每个节点作为首个被选取的节点,并执行所述方法的相应步骤以得到对应的无人机的访问路径;
分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解。
3.根据权利要求2所述的方法,其特征在于,所述分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解具体包括:
根据公式(2)计算每个所述无人机的访问路径的配送时间,
其中,j1为所述配送时间,m为所述车辆的数量,
选择配送时间最短的所述无人机的访问路径作为最优解。
4.根据权利要求2所述的方法,其特征在于,所述分别计算每个所述无人机的访问路径的优劣度,选择最优的所述无人机的访问路径作为最优解具体包括:
根据公式(3)计算每个所述无人机的访问路径的配送成本,
其中,j2为所述配送成本,
选择配送成本最低的所述无人机的访问路径作为最优解。
5.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
分别获取每个所述车辆的访问路径,并根据所述方法的相应步骤计算对应最优解以得到多个所述车辆情况下,所述无人机的访问路径的最优解。
6.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
获取配送区域的节点信息以及当前可配送的车辆信息;
根据公式(4)和公式(5)设置目标函数,
其中,cij为所述配送区域内第i个节点到第j个节点之间的车辆运送成本,
根据公式(6)至公式(9)设置约束条件,
其中,di为节点i的需求量,bk为车辆k的最大负载量;
基于所述目标函数、所述约束条件生成每个所述车辆的访问路径。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标函数、所述约束条件生成每个所述车辆的访问路径具体包括:
采用蚁群算法生成所述车辆的访问路径。
8.根据权利要求6所述的方法,其特征在于,所述基于所述目标函数、所述约束条件生成每个所述车辆的访问路径具体包括:
采用快速贪婪算法生成所述车辆的访问路径。
9.一种基于车辆与无人机协同作业的末端配送系统,其特征在于,所述系统包括处理器,所述处理器用于被配置成执行如权利要求1至8任一所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有指令,所述指令用于被机器读取以使得所述机器执行如权利要求1至8任一所述的方法。
技术总结