CN118095987A - 一种机器人集群调度方法、装置、存储介质及电子设备 - Google Patents

一种机器人集群调度方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN118095987A
CN118095987A CN202410329386.4A CN202410329386A CN118095987A CN 118095987 A CN118095987 A CN 118095987A CN 202410329386 A CN202410329386 A CN 202410329386A CN 118095987 A CN118095987 A CN 118095987A
Authority
CN
China
Prior art keywords
transportation
robot
scheduling scheme
scheduling
robots
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410329386.4A
Other languages
English (en)
Inventor
牛昊一
高丰
庄文秀
向甜
张北北
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202410329386.4A priority Critical patent/CN118095987A/zh
Publication of CN118095987A publication Critical patent/CN118095987A/zh
Pending legal-status Critical Current

Links

Landscapes

  • General Factory Administration (AREA)

Abstract

本说明书公开了一种机器人集群调度方法、装置、存储介质及电子设备。在本说明书提供的机器人集群调度方法中,获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;在满足每个运输点最多被每个机器人访问一次的约束条件下,根据运输需求以及运输能力信息将货物分配给机器人,得到指定数量个调度方案,其中,调度方案用于表征机器人在运输过程中需要执行的运输任务,运输任务的信息包括起始运输点、结束运输点、货物运输量;针对每个调度方案,确定该调度方案中所有机器人在执行运输任务时消耗的运输成本;根据运输成本在各调度方案中确定目标调度方案,并采用目标调度方案完成运输任务。

Description

一种机器人集群调度方法、装置、存储介质及电子设备
技术领域
本说明书涉及计算机技术领域,尤其涉及一种机器人集群调度方法、装置、存储介质及电子设备。
背景技术
随着科技的不断发展,愈发成熟的机器人技术已经在许多领域中都有了一定程度的应用。例如,在货运物流领域中,移动机器人可以自主完成不同规格货物的收纳、搬运、输送等任务,通过充分发挥自动化设备的高效特性,大大提高了制造业和物流业的作业效率。
但现阶段,货物运输过程具有货物批量多、品种多和复杂度高的特点,采用单台移动机器人很难满足运输需求,实际货物运输系统均采用多台不同类型、不同尺寸和不同功能的移动机器人组成多异构移动机器人集群进行作业。在这种环境下,为每个机器人合理分配任务是实现低成本与高效运输的关键所在。
因此,如何合理地调度机器人集群,以在消耗成本较低的情况下保证较高的运输效率是一个亟待解决的问题。
发明内容
本说明书提供一种机器人集群调度方法、装置、存储介质及电子设备,以至少部分地解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种机器人集群调度方法,包括:
获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;
在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;
针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;
根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
可选地,所述运输需求至少包括目标运输点、货物量;
所述运输能力信息至少包括最大载货量、最大移动距离、固定成本、移动成本。
可选地,在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,具体包括:
在满足每个运输点最多被每个机器人访问一次的约束条件、机器人移动距离约束条件以及机器人载货量约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人。
可选地,所述机器人移动距离约束条件包括:
针对每个机器人,分配给该机器人的任意两个连续的运输任务中,排序靠前的运输任务的结束运输点与排序靠后的运输任务的起始运输点相同。
可选地,所述机器人载货量约束条件包括:
针对每个机器人,该机器人在开始执行运输任务时的载货量不大于该机器人的最大载货量;
和/或,针对每个运输任务,执行该运输任务的机器人在离开该运输任务的起始运输点的载货量与离开该运输任务的结束运输点时的载货量的差与该运输任务的货物运输量相同。
可选地,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本,具体包括:
根据该调度方案中所述各机器人的使用情况以及所述各机器人的固定成本,确定该调度方案的固定运输成本;
根据该调度方案中所述各机器人在执行所述运输任务时的移动距离以及所述各机器人的移动成本,确定该调度方案的移动运输成本;
根据所述固定运输成本和所述移动运输成本,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本。
可选地,在根据所述运输成本在各调度方案中确定目标调度方案之前,所述方法还包括:
根据预先设置的更新因子,确定更新系数;
根据所述更新系数对各调度方案进行更新。
可选地,所述更新因子至少包括惯性因子、自我认知因子、社会认知因子,所述更新系数不大于所述惯性因子、所述自我认知因子、所述社会认知因子之和;
根据所述更新系数对各调度方案进行更新,具体包括:
将所述各调度方案中选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为局部最优方案;
在历史上对所述各调度方案进行更新的过程中出现过的所有调度方案中,选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为全局最优方案;
针对每个调度方案,当所述更新系数不大于所述惯性因子时,根据与该调度方案相对应的调度方案以及该调度方案更新该调度方案;
当所述更新系数大于所述惯性因子且不大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述局部最优方案更新该调度方案;
当所述更新系数大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述全局最优方案更新该调度方案。
可选地,在采用所述目标调度方案完成所述运输任务之前,所述方法还包括:
以执行所述运输任务时调度的所有机器人的运输成本最低为优化目标,对所述目标调度方案进行优化。
本说明书提供的一种机器人集群调度装置,所述装置包括:
获取模块,用于获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;
分配模块,用于在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;
确定模块,用于针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;
调度模块,用于根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述机器人集群调度方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述机器人集群调度方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的机器人集群调度方法中,获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
在采用本说明书提供的机器人集群调度方案调度机器人集群执行运输任务时,可根据运输点位置、货物运输需求、机器人运输能力信息等数据构建满足预设的约束条件的调度方案,并持续对调度方案进行更新迭代,直到确定出满足预设规则的调度方案,并采用确定出的调度方案调度机器人集群执行运输任务。采用本方法可通过约束条件使机器人集群在保证运输效率的情况下,以较低的运输成本完成运输任务。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中一种机器人集群调度方法的流程示意图;
图2为本说明书中一种货物运输场景的示意图;
图3为本说明书提供的一种机器人集群调度装置的示意图;
图4为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书中一种机器人集群调度方法的流程示意图,具体包括以下步骤:
S100:获取运输点的位置、运输需求以及机器人集群中各机器人的运输能力信息。
本说明书所提供的机器人集群调度方法中的所有步骤均可由任何具有计算功能的电子设备实现,例如终端、服务器等设备。
本方法主要应用于采用机器人集群进行货物运输的场景,基于此,可在此步骤中首先获取货物运输系统中所有运输点所在的位置。在本方法中,运输点可包括机器人出发的配送中心点以及作为运输目的地的送货点。一般地,配送中心点的数量会远少于送货点。
同时,为了后续安排机器人对货物进行高效地运输,在此步骤中还可获取到获取的运输需求以及机器人集群中各机器人的运输能力信息。运输需求为需要运输点的货物的运输需求,可至少包括每个货物的目标运输点和货物运输量。其中,一个货物的目标运输点为该货物需要被送到的运输点,货物运输量为该货物的重量和/或体积。机器人运输能力可至少包括每个机器人的最大载货量、最大移动距离、固定成本、移动成本。其中,最大载货量为机器人在移动时最多可装载的货物的重量和/或体积,最大移动距离为机器人在中途不充电的情况下一次能够移动的最大距离,固定成本为机器人使用一次需要花费的成本(从配送中心点出发完成所有运输任务并回到配送中心点后视为使用一次),移动成本为机器人每移动单位距离需要消耗的成本。
值得一提的是,本方法所采用的用于运输的机器人集群可以是异构机器人集群。通俗地说,在本方法所采用的机器人集群中可存在多种不同类型的机器人。其中,相同类型的机器人的运输能力信息相同,不同类型的机器人的运输能力信息不同;机器人的类型以及每个类型的机器人的数量可根据具体需求进行设置,本说明书对此不做具体限制。
图2为本说明书提供的一种货物运输场景的示意图。如图2所示,在该场景中,存在作为运输点的两个配送中心点和若干送货点,各运输点的位置不同。在该场景所采用的机器人集群中存在三种不同类型的机器人A、B、C各若干。与图2所示的场景相似的场景均能够执行本说明书所提供的机器人集群调度方法。
S102:在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量。
在步骤S100中确定出运输场景包含的运输点的位置、需要运输的货物的运输需求,以及采用的机器人集群中各机器人的运输能力信息后,可在此步骤中,进一步为各机器人安排合适的运输工作。
本说明书所提供的机器人集群调度方法旨在为运输场景找到最合理的机器人调度方案,使机器人的运输效率尽可能高的同时消耗的运输成本尽可能少。基于此,在此步骤中为机器人安排运输任务时需要遵循一定的约束条件来同时满足低成本与高效的要求。
对于货物运输的场景来说,无论是机器人的运输效率还是成本消耗,都会受到机器人运输货物的路线的影响,因此,为机器人规划出合理的运输路线是必要的。一般情况下,一个货物运输场景中的所有运输点的位置都是固定的,且一个机器人每次从配送中心出发后能够移动的距离是有限的。为了最大程度地利用机器人的移动能力,在此步骤中,可首先将机器人在一次运输过程中,每个运输点都最多只能访问一次作为调度机器人的约束条件。其中,一次运输过程可以理解为机器人将所有分配到的运输任务执行完毕,完成了一次调度的过程,也就是机器人从配送中心出发,将所有货物运输完毕并最终再回到配送中心的过程。对于任意一个机器人来说,它在一次运输过程中从一个送货点离开后,就不会再回到这一送货点了。通过这一约束条件可保证机器人在运输过程中不会重复经过同一路径,使机器人的有限的移动能力不被浪费。
更进一步地,除上述约束条件外,在调度机器人集群时还可根据场景需求额外增加其它约束条件,本说明书对此不作具体限制。例如,机器人本身的运输能力也可被考虑作为约束条件的一部分。具体地,在满足每个运输点最多被每个机器人访问一次的约束条件、机器人移动距离约束条件以及机器人载货量约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人。
在步骤S100中对机器人的运输能力信息的描述中说明,机器人的运输能力信息中存在最大载货量以及最大移动距离。在为机器人安排运输货物的规划时,是不能够为机器人安排突破机器人本身的运输能力的运输任务的。因此,可将机器人的移动距离以及机器人的载货量也作为约束条件加载到对调度方案的规划中。
在一具体实施例中,机器人移动距离约束条件包括:针对每个机器人,分配给该机器人的任意两个连续的运输任务中,排序靠前的运输任务的结束运输点与排序靠后的运输任务的起始运输点相同。为了使机器人有限的移动距离得到最大程度的利用,可以为机器人安排能够连续执行的运输任务。可以想到的,在将运输任务分配给机器人的同时,也会规定运输任务的执行顺序。当机器人在按照顺序执行运输任务时,每个运输任务的起始运输点都是上一个运输任务的结束运输点,那么机器人的所有移动能力都会充分运用到执行运输任务上,而不会出现从一个运输点跑到另一个运输点却没有运输任何货物的情况,导致移动能力浪费。具体地,可按照下述公式来构建约束条件:
其中,i、j为运输点编号,k为机器人编号;n为运输点数量,N为机器人数量;表示机器人k是否从运输点i运送货物到运输点j。在一个调度方案中,当机器人k需要执行从运输点i运送货物到运输点j的运输任务时,/>取1;当机器人k不需要执行从运输点i运送货物到运输点j的运输任务时,/>取0。
在一具体实施例中,机器人载货量约束条件包括:针对每个机器人,该机器人在开始执行运输任务时的载货量不大于该机器人的最大载货量。在实际应用时,每个机器人都存在最大载货量的限制,在机器人出发时,其能够携带的货物量是不能够超过自身的最大载货量的。具体地,可按照下述公式来构建约束条件:
其中,i、j为运输点编号,k为机器人编号;n为运输点数量,N为机器人数量;yij表示机器人离开运输点i前往运输点j时装载的货物量,Qk表示机器人k的最大载货量;编号为0的运输点表示配送中心;表示机器人k是否从运输点i运送货物到运输点j。在一个调度方案中,当机器人k需要执行从运输点i运送货物到运输点j的运输任务时,/>取1;当机器人k不需要执行从运输点i运送货物到运输点j的运输任务时,/>取0。
在一具体实施例中,机器人载货量约束条件包括:针对每个运输任务,执行该运输任务的机器人在离开该运输任务的起始运输点的载货量与离开该运输任务的结束运输点时的载货量的差与该运输任务的货物运输量相同。在机器人执行运输任务的过程中,需要保证每个运输点所述的货物量都被满足,尽可能地减少运输任务没有执行成功的概率。具体地,可按照下述公式来构建约束条件:
其中,i、j为运输点编号,k为机器人编号;n为运输点数量,N为机器人数量;yij表示机器人离开运输点i前往运输点j时装载的货物量,dj表示运输点j需要的货物运输量。
以上为本说明书提供的几个可行的约束条件,除上述约束条件外,还可根据不同场景下的不同需求额外构建其它的约束条件,本说明书对此不做具体限制。值得一提的是,各不同的约束条件可单独使用,也可组合使用。
在确定出约束条件后,便能够在满足约束条件的情况下根据各货物的运输需求以及各机器人的运输能力信息,将货物分配给机器人进行运输,即为机器人安排运输任务。在本方法中,在完成对所有机器人的运输任务安排后,可将包含所有机器人需要执行的运输任务的信息作为调度方案。举例来说,假设机器人集群中存在三个机器人A1、B1、C1,其中,在满足了约束条件的情况下,机器人A1需要按顺序执行运输任务a、b、c,机器人B1需要按顺序执行运输任务d、e,机器人C1需要按顺序执行运输任务f、g、h,这便能够作为一个可行的调度方案。运输任务的信息可包括但不限于起始运输点、结束运输点以及货物运输量。其中,起始运输点为机器人结束上一运输任务后运输任务的起点,结束运输点为运输任务的终点,货物运输量为该运输任务需要运输的货物量。
通常情况下,在为机器人安排货物运输的规划时,能够确定出不止一个满足约束条件的调度方案。不难想到,每个调度方案的运输效果肯定是不同的,因此,在本方法后续步骤中需要进一步确定出最优的调度方案。
S104:针对每个调度方案,确定该调度方案中所有机器人在执行运输任务时消耗的运输成本。
在步骤S102中,由于预先设置了每个机器人在一次运输过程中最多访问每个运输点一次的约束条件,因此,确定出的所有调度方案的运送效率都不会低。在此基础上,可以从每个调度方案的运输成本入手,进一步筛选出更优地调度方案。
基于上述思想,可在此步骤中,确定出每个调度方案中所有机器人在执行运输任务时消耗的运输成本。正如步骤S100介绍的,机器人的运输能力信息中包括了机器人的固定成本和移动成本。同样的,一个调度方案的运输成本也可以分为固定运输成本和移动运输成本。因此,在确定一个调度方案的运输成本时,可具体地,根据该调度方案中所述各机器人的使用情况以及所述各机器人的固定成本,确定该调度方案的固定运输成本;根据该调度方案中所述各机器人在执行所述运输任务时的移动距离以及所述各机器人的移动成本,确定该调度方案的移动运输成本;根据所述固定运输成本和所述移动运输成本,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本。
其中,一个调度方案的固定运输成本可根据调度方案中所有机器人的固定成本来确定,只要调度方案中使用了一个机器人,就需要消耗一份该机器人的固定成本。因此,调度方案中使用的各机器人的固定成本之和便是调度方案的固定运输成本。而一个调度方案的移动运输成本需要根据每个机器人本身的移动成本以及每个机器人在该调度方案的安排下移动的距离来决定,一个机器人的移动成本为该机器人移动单位距离需要消耗的成本,结合该机器人在调度方案中需要移动的距离,便能够确定出该机器人在调度方案中因移动而消耗的总成本,每个机器人在调度方案中因移动而消耗的总成本之和便是该调度方案的移动运输成本。而调度方案的运输成本便是固定运输成本加上移动运输成本。具体地,一个调度方案的运输成本可按照下述公式来确定:
其中,COST表示运输成本;i、j为运输点编号,k为机器人编号;n为运输点数量,N为机器人数量;fk为机器人k的固定成本,mk为机器人k的移动成本;cij为运输点i到运输点j需要移动的距离,表示机器人k是否从运输点i运送货物到运输点j。在一个调度方案中,当机器人k需要执行从运输点i运送货物到运输点j的运输任务时,/>取1;当机器人k不需要执行从运输点i运送货物到运输点j的运输任务时,/>取0。
S106:根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
在步骤S104中确定出各调度方案的运输成本后,便可在此步骤中选择出较优的调度方案作为目标调度方案,并执行运输任务。在本说明书提供的机器人集群调度方法中,在各调度方案的运输效率相似的情况下,可在此步骤中,选择运输成本最低的方案作为目标调度方案。
更优地,步骤S102中确定出的各调度方案并没有包括所有可能的调度方案,因此,在确定目标调度方案前,可对各调度方案进行一定程度的更新迭代,尝试寻找更优的调度方案。其中,对调度方案进行更新的方式可存在多种,本说明书在此提供一种具体实施例以供参考。具体地,可根据预先设置的更新因子,确定更新系数;根据所述更新系数对各调度方案进行更新。
在本方法中,可预先设置三种不同的更新因子,分别为惯性因子w、自我认知因子c1和社会认知因子c2。其中,w用于增强更新调度方案的算法的全局搜索能力;c1用于反应调度方案对自身历史最优解的认知程度;c2用于反应其它调度方案对该调度方案的历史最优解的认知程度。在本方法中,可将更新系数α确定为α=rand(0,w+c1+c2),即在0与w、c1、c2的和之间确定一个随机数作为更新因子α。此时,更新系数不会大于惯性因子、自我认知因子、社会认知因子之和。
在更新调度方案时,会对每个一调度方案均进行更新。具体地,可将所述各调度方案中选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为局部最优方案;在历史上对所述各调度方案进行更新的过程中出现过的所有调度方案中,选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为全局最优方案;针对每个调度方案,当所述更新系数不大于所述惯性因子时,根据与该调度方案相对应的调度方案以及该调度方案更新该调度方案;当所述更新系数大于所述惯性因子且不大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述局部最优方案更新该调度方案;当所述更新系数大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述全局最优方案更新该调度方案。
在本方法中,在更新调度方案的过程中会对各调度方案进行多轮次的更新,直到满足预设的规则为止。在每一轮次更新结束后,得到的更新后的各调度方案中,运输成本最低的调度方案便是下一轮次更新时的局部最优方案;而在对一批调度方案进行更新的过程中,在已经进行过的所有轮次中出现过的所有调度方案中,运输成本最低的调度方案为全局最优方案。
同时,调度方案实际上可采用编码的形式进行表示。对于任意一段表示调度方案的编码序列,都可找到该编码序列相反的编码序列,用于表示另一个调度方案。在本方法中,可将两个互为相反的编码序列所对应的调度方案确定为相互对应的调度方案。
基于上述内容,可在更新系数取到不同的数值时,对各调度方案进行不同程度的更新。具体地,在本方法中,对一个调度方案进行更新时,会根据该调度方案本身与另一个根据更新系数选择出的调度方案进行更新。为了便于理解,在此将更新前的调度方案本身称为调度方案A,将根据更新系数选择出的调度方案称为调度方案B。在更新系数不大于惯性因子时,调度方案B为与调度方案A对应的调度方案;当更新系数大于惯性因子且不大于惯性因子与自我认知因子之和时,调度方案B为当前的局部最优方案;当更新系数大于惯性因子与自我认知因子之和时,调度方案B为全局最优方案。
在更新系数的不同取值下,调度方案B的选择有所不同,但根据调度方案A与调度方案B对调度方案A进行更新的方式是相同的。具体地,可在调度方案A的编码序列中确定出起始位置s与结束位置e,将s与e之间的编码保留不变,将除此之外的编码替换为调度方案B中相同位置的编码。得到的新的编码序列即为更新完成的调度方案的编码序列。举例来说,假设调度方案A的编码序列为{101100010100},调度方案B的编码序列为{010011010001},s为2,e为7,那么此时,可将调度方案A的编码序列中第2位到第7位的编码保留,将其它位置的编码替换为调度方案B中相同位置的编码,得到编码序列{001100010001},作为更新后的调度方案的编码序列。
更优地,在每一轮次完成对调度方案的更新后,可对更新后的局部最优方案,也就是当前轮次下运输成本最低的目标调度方案进行更进一步地优化。具体地,可以执行所述运输任务时调度的所有机器人的运输成本最低为优化目标,对所述目标调度方案进行优化。其中,对目标调度方案进行优化时可存在多种不同的方式,本说明书在此提供一种具体实施例以供参考。
在本方法中,可将目标调度方案的运输成本的倒数确定为目标调度方案的能量。如下式所示:
其中,E为目标调度方案的能量,i、j为运输点编号,k为机器人编号;n为运输点数量,N为机器人数量;fk为机器人k的固定成本,mk为机器人k的移动成本;cij为运输点i到运输点j需要移动的距离,表示机器人k是否从运输点i运送货物到运输点j。在一个调度方案中,当机器人k需要执行从运输点i运送货物到运输点j的运输任务时,/>取1;当机器人k不需要执行从运输点i运送货物到运输点j的运输任务时,/>取0。
可通过对目标调度方案的编码序列中的编码段进行换位或移动等调整,提升目标调度方案的能量。可以看出,目标调度方案的能量越高,其运输成本就越低。通过这种优化方式,能够进一步降低目标调度方案的运输成本。
在每一轮次对所有调度方案进行更新后,都可对更新后的局部最优方案进行上述优化。当满足预设的规则后,可将历史最优方案输出,并采用历史最优方案完成运输任务。其中,预设的规则可以是对调度方案进行更新迭代的轮次达到预设轮次,和/或当前的局部最优方案在优化后的能量达到预设能量。
在采用本说明书提供的机器人集群调度方案调度机器人集群执行运输任务时,可根据运输点位置、货物运输需求、机器人运输能力信息等数据构建满足预设的约束条件的调度方案,并持续对调度方案进行更新迭代,直到确定出满足预设规则的调度方案,并采用确定出的调度方案调度机器人集群执行运输任务。采用本方法可通过约束条件使机器人集群在保证运输效率的情况下,以较低的运输成本完成运输任务。
更进一步地,本说明书所提供的机器人集群调度方法在调度机器人集群执行运输任务时,不依赖于配送中心及送货点位置的布局及物理空间约束,配送中心和送货点位置可以任意调整;同时,本方法不限制机器人类型、移动距离与最大载货量等属性,能够实现对多类型机器人混合组成的多异构机器人集群的高效调度;另外,本方法能够根据货物运输需求和机器人系统的实际运行状况,结合机器人的运输能力信息,为所有送货点计算并安排最优机器人进行运输。
综上所述,本说明书所提供的一种机器人集群调度方法实现了在满足运输需求约束的同时优化并提升多异构机器人集群运输效率的目的,保证了机器人的高效调度,解决了传统调度方法针对多异构机器人集群全局优化效果较差的问题,可以大幅提升多异构机器人集群的调度效率。
以上是本说明书提供的机器人集群调度方法,基于同样的思路,本说明书还提供了相应的机器人集群调度装置,如图3所示。
图3为本说明书提供的一种机器人集群调度装置示意图,具体包括:
获取模块200,用于获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;
分配模块202,用于在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;
确定模块204,用于针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;
调度模块206,用于根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
可选地,所述运输需求至少包括目标运输点、货物量;所述运输能力信息至少包括最大载货量、最大移动距离、固定成本、移动成本。
可选地,所述分配模块202,具体用于在满足每个运输点最多被每个机器人访问一次的约束条件、机器人移动距离约束条件以及机器人载货量约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人。
可选地,所述机器人移动距离约束条件包括:针对每个机器人,分配给该机器人的任意两个连续的运输任务中,排序靠前的运输任务的结束运输点与排序靠后的运输任务的起始运输点相同。
可选地,所述机器人载货量约束条件包括:针对每个机器人,该机器人在开始执行运输任务时的载货量不大于该机器人的最大载货量;和/或,针对每个运输任务,执行该运输任务的机器人在离开该运输任务的起始运输点的载货量与离开该运输任务的结束运输点时的载货量的差与该运输任务的货物运输量相同。
可选地,所述确定模块204,具体用于根据该调度方案中所述各机器人的使用情况以及所述各机器人的固定成本,确定该调度方案的固定运输成本;根据该调度方案中所述各机器人在执行所述运输任务时的移动距离以及所述各机器人的移动成本,确定该调度方案的移动运输成本;根据所述固定运输成本和所述移动运输成本,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本。
可选地,所述装置还包括更新模块208,具体用于根据预先设置的更新因子,确定更新系数;根据所述更新系数对各调度方案进行更新。
可选地,所述更新因子至少包括惯性因子、自我认知因子、社会认知因子,所述更新系数不大于所述惯性因子、所述自我认知因子、所述社会认知因子之和;
所述更新模块208,具体用于将所述各调度方案中选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为局部最优方案;在历史上对所述各调度方案进行更新的过程中出现过的所有调度方案中,选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为全局最优方案;针对每个调度方案,当所述更新系数不大于所述惯性因子时,根据与该调度方案相对应的调度方案以及该调度方案更新该调度方案;当所述更新系数大于所述惯性因子且不大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述局部最优方案更新该调度方案;当所述更新系数大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述全局最优方案更新该调度方案。
可选地,所述装置还包括优化模块210,具体用于以执行所述运输任务时调度的所有机器人的运输成本最低为优化目标,对所述目标调度方案进行优化。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的机器人集群调度方法。
本说明书还提供了图4所示的电子设备的示意结构图。如图4所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的机器人集群调度方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(ProgrammableLogic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware DescriptionLanguage,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced BooleanExpression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java HardwareDescription Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware DescriptionLanguage)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated CircuitHardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种机器人集群调度方法,其特征在于,包括:
获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;
在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;
针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;
根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
2.如权利要求1所述的方法,其特征在于,所述运输需求至少包括目标运输点、货物量;
所述运输能力信息至少包括最大载货量、最大移动距离、固定成本、移动成本。
3.如权利要求2所述的方法,其特征在于,在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,具体包括:
在满足每个运输点最多被每个机器人访问一次的约束条件、机器人移动距离约束条件以及机器人载货量约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人。
4.如权利要求3所述的方法,其特征在于,所述机器人移动距离约束条件包括:
针对每个机器人,分配给该机器人的任意两个连续的运输任务中,排序靠前的运输任务的结束运输点与排序靠后的运输任务的起始运输点相同。
5.如权利要求3所述的方法,其特征在于,所述机器人载货量约束条件包括:
针对每个机器人,该机器人在开始执行运输任务时的载货量不大于该机器人的最大载货量;
和/或,针对每个运输任务,执行该运输任务的机器人在离开该运输任务的起始运输点的载货量与离开该运输任务的结束运输点时的载货量的差与该运输任务的货物运输量相同。
6.如权利要求2所述的方法,其特征在于,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本,具体包括:
根据该调度方案中所述各机器人的使用情况以及所述各机器人的固定成本,确定该调度方案的固定运输成本;
根据该调度方案中所述各机器人在执行所述运输任务时的移动距离以及所述各机器人的移动成本,确定该调度方案的移动运输成本;
根据所述固定运输成本和所述移动运输成本,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本。
7.如权利要求1所述的方法,其特征在于,在根据所述运输成本在各调度方案中确定目标调度方案之前,所述方法还包括:
根据预先设置的更新因子,确定更新系数;
根据所述更新系数对各调度方案进行更新。
8.如权利要求7所述的方法,其特征在于,所述更新因子至少包括惯性因子、自我认知因子、社会认知因子,所述更新系数不大于所述惯性因子、所述自我认知因子、所述社会认知因子之和;
根据所述更新系数对各调度方案进行更新,具体包括:
将所述各调度方案中选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为局部最优方案;
在历史上对所述各调度方案进行更新的过程中出现过的所有调度方案中,选择所有机器人在执行运输任务时消耗的运输成本最小的调度方案,确定为全局最优方案;
针对每个调度方案,当所述更新系数不大于所述惯性因子时,根据与该调度方案相对应的调度方案以及该调度方案更新该调度方案;
当所述更新系数大于所述惯性因子且不大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述局部最优方案更新该调度方案;
当所述更新系数大于所述惯性因子与所述自我认知因子之和时,根据该调度方案以及所述全局最优方案更新该调度方案。
9.如权利要求1所述的方法,其特征在于,在采用所述目标调度方案完成所述运输任务之前,所述方法还包括:
以执行所述运输任务时调度的所有机器人的运输成本最低为优化目标,对所述目标调度方案进行优化。
10.一种机器人集群调度装置,其特征在于,包括:
获取模块,用于获取运输点的位置、货物的运输需求以及机器人集群中各机器人的运输能力信息;
分配模块,用于在满足每个运输点最多被每个机器人访问一次的约束条件下,根据所述运输需求以及所述运输能力信息将所述货物分配给所述机器人,得到指定数量个调度方案,其中,调度方案用于表征所述机器人在运输过程中需要执行的运输任务,所述运输任务的信息包括起始运输点、结束运输点、货物运输量;
确定模块,用于针对每个调度方案,确定该调度方案中所有机器人在执行所述运输任务时消耗的运输成本;
调度模块,用于根据所述运输成本在各调度方案中确定目标调度方案,并采用所述目标调度方案完成所述运输任务。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~9任一项所述的方法。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~9任一项所述的方法。
CN202410329386.4A 2024-03-21 2024-03-21 一种机器人集群调度方法、装置、存储介质及电子设备 Pending CN118095987A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410329386.4A CN118095987A (zh) 2024-03-21 2024-03-21 一种机器人集群调度方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410329386.4A CN118095987A (zh) 2024-03-21 2024-03-21 一种机器人集群调度方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN118095987A true CN118095987A (zh) 2024-05-28

Family

ID=91156272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410329386.4A Pending CN118095987A (zh) 2024-03-21 2024-03-21 一种机器人集群调度方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN118095987A (zh)

Similar Documents

Publication Publication Date Title
CN108596540B (zh) 补货方法及装置、计算机可读存储介质、电子设备
Nguyen et al. Generalized target assignment and path finding using answer set programming
Van Den Berg et al. Optimal routing in an automated storage/retrieval system with dedicated storage
CN103003791B (zh) 分配共享堆栈的部分的系统和方法
KR102670090B1 (ko) 피킹 스케줄링 시스템, 방법 및 장치
AU2020368945A1 (en) Merging processing system, method and device
Poppenborg et al. Online scheduling of flexible job-shops with blocking and transportation
CN115829017B (zh) 一种基于芯粒的数据处理的方法、装置、介质及设备
US20130047004A1 (en) Task scheduling method of a semiconductor device
CN116225669B (zh) 一种任务执行方法、装置、存储介质及电子设备
CN114548772A (zh) 配送任务调度方法、装置、存储介质及电子设备
CN116185629A (zh) 一种任务执行的方法、装置、存储介质及电子设备
CN112101841A (zh) 一种物流路径规划方法、装置、设备及存储介质
CN112434875B (zh) 一种用于智能仓储的设备路径管理方法、系统和服务器
CN116932175B (zh) 一种基于序列生成的异构芯片任务调度方法以及装置
Zhen et al. How to deploy robotic mobile fulfillment systems
CN118095987A (zh) 一种机器人集群调度方法、装置、存储介质及电子设备
CN116150563B (zh) 一种业务执行方法、装置、存储介质及电子设备
CN116823104A (zh) 用于确定最优货位的方法、装置、存储介质及处理器
CN113298445B (zh) 一种模型训练和调度无人设备的方法及装置
CN114925982A (zh) 一种模型训练方法、装置、存储介质及电子设备
CN114077944A (zh) 一种订单分配方法、装置、存储介质及电子设备
CN116151907A (zh) 一种处理订单的方法、装置、电子设备及计算机存储介质
CN112749930A (zh) 推荐订单分拣顺序的方法、装置、存储介质以及电子设备
Huang et al. A Conflict-aware Dynamic Relocation Scheme of AGVs in Warehouse Logistics

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination