CN117829460A - 一种移动任务合并方法、装置、设备及存储介质 - Google Patents
一种移动任务合并方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117829460A CN117829460A CN202311671001.4A CN202311671001A CN117829460A CN 117829460 A CN117829460 A CN 117829460A CN 202311671001 A CN202311671001 A CN 202311671001A CN 117829460 A CN117829460 A CN 117829460A
- Authority
- CN
- China
- Prior art keywords
- task
- mobile
- movement
- duration
- moving
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims abstract description 22
- 238000004891 communication Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 18
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请实施例公开了一种移动任务合并方法、装置、设备及存储介质,其包括:接收第一移动任务;在当前已接收且未完成的各移动任务中查找相比配的第二移动任务;基于第一移动任务和第二移动任务分别确定第一移动时长和第二移动时长,第一移动时长为第二移动任务的剩余移动时长与第一移动任务所需的第三移动时长的和值,第二移动时长为第一移动任务和第二移动任务未完成部分合并后得到的第三移动任务所需的移动时长;第二移动时长小于第一移动时长时,将第一移动任务和第二移动任务的未完成部分合并得到第三移动任务;取消执行第二移动任务,并确定执行第三移动任务。采用上述方法可以解决存在多个任务时,单台机器人的任务执行效率低的的技术问题。
Description
技术领域
本申请实施例涉及人工智能技术领域,尤其涉及一种移动任务合并方法、装置、设备及存储介质。
背景技术
室内自动驾驶的机器人由于具有自主移动、自动避障、自动充电等功能,被广泛用于智能配送等场景,如在医院等场所中使用,用于实现物资配送,从而节省人力成本。
现有技术中,在多个机器人智能移动且完成相应业务(如配送业务)的场景中,可以通过智能调度,合理地为机器人分配任务,以最大化的提高多个机器人整体的任务执行效率。但是,无法提高单台机器人的任务执行效率,并且,智能调度也不适用于单台机器人工作的场景。举例而言,医院场景下,用户想要将多种物资从药房A送到科室B和科室C。机器人接收到该任务后,从药房A出发,依次向科室B和科室C移动。机器人执行该任务过程中,如果有新的任务需要将物资从药房A送到科室C和科室D,那么,按照现有技术,需要机器人先执行完第一个任务,再执行第二个任务,这样使得机器人的任务执行效率比较低。
发明内容
本申请实施例提供了一种移动任务合并方法、装置、设备及存储介质,以解决现有技术中存在多个任务时,单台机器人的任务执行效率低的技术问题。
第一方面,本申请一个实施例提供了一种移动任务合并方法,包括:
接收新的第一移动任务;
在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点;
基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值;
基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长;
在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务;
取消执行第二移动任务,并确定执行第三移动任务。
第二方面,本申请一个实施例还提供了一种移动任务合并装置,包括:
任务接收单元,用于接收新的第一移动任务;
任务查找单元,用于在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点;
第一时长确定单元,用于基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值;
第二时长确定单元,用于基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长;
任务合并单元,用于在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务;
任务取消单元,用于取消执行第二移动任务,并确定执行第三移动任务。
第三方面,本申请一个实施例还提供了一种移动任务合并设备,包括:
一个或多个处理器;
通信接口,用于实现通信;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的移动任务合并方法。
第四方面,本申请一个实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的移动任务合并方法。
上述,接收到新的第一移动任务后,在当前已接收且未完成的各移动任务中,查找相匹配的第二移动任务,第二移动任务中未执行完成的至少一个业务站点与第一移动任务包含的至少一个业务站点重合,根据第一移动任务和第二移动任务分别计算第一移动时长和第二移动时长,第一移动时长为顺序执行第二移动任务和第一移动任务所需的移动时长,第二移动时长为合并第二移动任务和第一移动任务后所需的移动时长,在第二移动时长小于第一移动时长时,将第二移动任务和第一移动任务合并,以得到第三移动任务,并取消执行第二移动任务并确定执行第三移动任务的技术手段,解决了相关技术中存在多个任务时,单台机器人的任务执行效率低的技术问题。通过移动设备在各站点间的移动时长,确定是否合并移动任务,可以提高执行移动任务的单台机器人的任务执行效率,并且,可以实现与移动设备执行的业务解耦,不论业务如何变化,均可基于移动时长确定是否合并移动任务,使得移动任务合并方法的扩展性、实用性以及可维护性都大幅提高。
附图说明
图1为本申请一个实施例提供的一种移动任务合并方法的流程图;
图2为本申请一个实施例提供的一种移动任务合并方法的流程示意图;
图3为本申请一个实施例提供的一种移动任务合并装置的结构示意图;
图4为本申请一个实施例提供的一种移动任务合并设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
需要注意的是,由于篇幅所限,本申请说明书没有穷举所有可选的实施方式,本领域技术人员在阅读本申请说明书后,应该能够想到,只要技术特征不互相矛盾,那么技术特征的任意组合均可以构成可选的实施方式。
下面对各实施例进行详细说明。
现有技术中,为了提高单台机器人的任务执行效率,可以采用与业务有关的合并规则对任务进行合并。具体来说,先判断两个任务的目标点(即机器人移动的目的地)是否相同,如果相同,再判断两个任务的任务类型是否相同(比如是否都为配送业务、或者是否都为拍照业务等)、支持的机器人(即可执行任务的机器人)是否相同等,基于判断结果,确定是否合并两个任务。这样虽然能实现任务合并,提高单台机器人的任务执行效率,但是这种方式与业务的耦合大,不同的业务需要制定不同的合并规则。比如,机器人移动过程中可能需要执行跨楼层、乘电梯、按照某个顺序进行配送等业务,这样会使得与业务有关的合并规则非常复杂,业务改动也会让规则改动。这时,基于与业务有关的合并规则的方式对任务进行合并存在以下缺陷:1、规则制定困难。需要深入理解业务逻辑和订单数据(即任务)的特性,制定合适的规则,如果规则制定不当,可能会导致合并结果不准确或者效率低;2、规则维护复杂。当订单数据(即任务)或业务需求发生变化时,可能需要调整或更新规则,这可能需要投入大量时间和资源来维护规则,以保证规则的有效性;3、依赖人工干预。需要人工干预来调整或优化规则,增加人力成本且可能出现人为导致的错误;4、无法处理复杂情况。基于与业务有关的合并规则进行合并只能处理特定的情况或场景,对于复杂或非标准的情况暂时无法处理,需要制定更复杂的规则或算法;5、可能存在误判。会出现因为规则的不完善或数据不准确而产生误判的情况,进而导致合并错误或不准确。
基于此,本申请实施例中提供了一种移动任务合并方法,该方法通过借助机器人移动过程中规划的路径对应的移动时长来判断是否合并任务,与业务的具体内容无关,不仅可以提升机器人的任务执行效率,还提高了合并规则的可维护性和扩展性。
本申请一个实施例提供的移动任务合并方法可以由移动任务合并设备执行。该移动任务合并设备可以通过软件和/或硬件的方式实现,该移动任务合并设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。
当前,移动任务合并设备可以是为移动设备下发任务、制定移动路径、管理移动设备信息的服务器。其中,移动设备可以是具有移动功能的机器人、配送车等智能移动设备。实施例中,以移动设备为机器人为例进行描述。
为了便于理解,先对机器人和服务器进行简要说明。其中,服务器可以认为是对机器人进行调度的云服务器,其上部署有调度系统,调度系统实现的步骤、功能均可认为是服务器实现的步骤、功能。调度系统通过B/S架构运行。这时,用户可以通过浏览器访问调度系统,进而通过调度系统下发任务。其中,任务是指让机器人从某个地点移动至另一个或多个地点,并在目的地执行设定业务(如配送物品的业务、收取物品的业务、拍照业务、喊话业务等)。当前,将机器人需要执行的任务记为移动任务。调度系统接收用户下发的移动任务后,便可将移动任务分配给合适的机器人执行该移动任务。
机器人通过WebSocket协议与调度系统建立连接并保持连接,以与调度系统进行通信。调度系统向机器人下发移动任务后,机器人作为终端响应移动任务。响应过程中,机器人先基于当前的移动任务请求调度系统做路径规划。调度系统基于机器人的请求做好路径规划后下发给机器人。机器人按照规划的路径运行,以实现响应移动任务。
其中,调度系统对移动任务做路径规划时,可以基于站点实现路径规划。站点可以理解为机器人移动过程中途径的地点。每个站点均有相应的属性,机器人到达站点时,调度系统基于站点的属性可以告知机器人在该站点需要做什么,比如,需要机器人进行拍照、喊话、拿取物资、配送物资等。站点可以分为业务站点和辅助站点。
业务站点也可理解为任务站点,有对应的物理区域,即每个业务站点可以代表一个真实世界存在的地址,比如,医院场景下,药房、各科室、手术室、病房等均可作为业务站点。当前,每个移动任务均包含多个业务站点,机器人在业务站点可以执行与任务有关的业务。比如,移动任务为:去地点A取物资并配送到地点B,这时,该移动任务包含的业务站点为地点A和地点B。
辅助站点是在机器人移动过程中辅助机器人运行的站点,比如,机器人从业务站点A移动至业务站点B时,有多条可以通行的路径,这时,基于某条路径上设置的辅助站点,便可使机器人知道选择哪条路径。再如,电梯呼叫站点可以作为辅助站点,以在机器人到达该站点后做呼叫电梯的请求,进而通过电梯实现跨楼层移动。还如,充电点(供机器人充电的站点)、待机点(使机器人待机的站点)等也可作为辅助站点,这时,机器人途径辅助站点时,可以在辅助站点执行特定的行为,该行为与业务无关,但是可以辅助机器人完成当前正在执行的移动任务。
一般而言,每条规划的路径均包括多个站点,多个站点包含相应移动任务中的各业务站点以及辅助机器人确定移动方向的辅助站点。举例而言,移动任务是从站点A开始,分别配送物资到站点B和站点C,这时,可以认为站点A、站点B以及站点C为业务站点,且站点A为任务起始站点、站点B和站点C为目标站点。调度系统基于站点A、站点B和站点C做路径规划时,为了便于机器人确定行走路径,还增加了辅助站点D和辅助站点E,行成了一条机器人的移动路径:站点A-站点D-站点E-站点B-站点C。之后,将该移动路径下发给机器人,机器人收到该移动路径后,先保存该移动路径,之后,机器人开始执行移动任务,这时,机器人先移动到站点A,并按照该移动路径移动。其中,移动路径可理解为供机器人参考移动的路径。
一个实施例中,调度系统预先存储有各业务站点以及各辅助站点的相关信息(比如位置信息),以实现移动路径的规划。当前,规划移动路径时,可以基于最优路径原则。最优路径原则可以是选择移动距离最短的路径作为当前规划的移动路径,还可以是选择移动时间最短的路径作为当前规划的移动路径。实施例中,路径规划的实现过程可参考当前已有的路径规划的实现过程,当前不另描述。
机器人按照调度系统下发的移动路径移动时,先运行到任务起始站点,之后,按照移动路径开始移动。移动过程中,机器人每次到达一个站点(包括任务起始站点)、离开一个站点以及在站点做动作(如配送、拿取、喊话、拍照、呼叫电梯等动作)均会上报给调度系统。这样,调度系统基于机器人上报的内容,便可计算得到机器人到达各站点的时间、离开各个站点的时间以及在各站点做动作的时间。在多个机器人协同完成移动任务的场景中,调度系统基于机器人执行移动任务过程中上报的大量内容,便可统计出机器人在每两个站点间的移动时长(如调度系统取两个站点间多次的移动时长的平均值作为两个站点间的移动时长),并且,随着机器人上报内容的更新,每两个站点间的移动时长也可以更新。
在此基础上,调度系统规划某条移动路径后,便可基于预先统计得到的移动路径中每两个相邻站点间的移动时长,确定机器人按照该移动路径进行移动时的移动时长(该移动时长不包括做动作的时长),进而基于确定的移动时长来判断是否需要进行任务合并,即执行移动任务合并方法。
具体来说,图1为本申请一个实施例提供的一种移动任务合并方法的流程图,参考图1,服务器部署的调度系统执行移动任务合并方法时,具体包括步骤110-步骤160:
步骤110、接收新的第一移动任务。
示例性的,第一移动任务为调度系统当前接收到的新的供移动设备执行的移动任务。当前,以移动设备为机器人为例进行描述。
第一移动任务由用户下发至调度系统。比如,用户通过自身使用的设备中安装的浏览器登录服务器中的调度系统,之后便可在调度系统中创建并下发第一移动任务。调度系统接收用户下发的第一移动任务。
步骤120、在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点。
示例性的,调度系统接收到第一移动任务后,获取机器人移动区域中当前已接收且未完成的全部移动任务。可理解,移动区域是指机器人进行移动时的移动范围区域,比如,机器人可以在一栋楼中进行移动,那么,移动区域便是这栋楼。
实施例中,当前已接收且未完成的移动任务包括两种情况。第一种是已经下发给机器人执行的移动任务,即该移动任务正在执行中。另一种是正在排队还未下发给机器人的移动任务。当前,先获取当前正在执行且还未执行完成的全部移动任务,并在其中查找第二移动任务,之后,再获取正在排队且还未下发给机器人的全部移动任务,并在其中查找第二移动任务。
具体来说,由于机器人执行移动任务中会上报到达站点、离开站点以及做动作等内容,所以,调度系统基于机器人上报的内容,便可明确每个机器人当前正在执行的移动任务以及执行进度(或情况),在此基础上,调度系统便可获取到每个当前正在执行且未完成的移动任务,并且,基于正在执行且未完成的移动任务对应的移动路径以及机器人上报的内容,可以确定机器人已经经过的站点以及还未到达的站点。
可选的,调度系统先判断机器人的移动区域中是否有正在执行且还未执行完成的移动任务。如果有,则获取全部的正在执行且未完成的移动任务,否则,说明当前没有正在执行的移动任务,这时,调度系统判断是否有正在排队且还未下发给机器人的移动任务,如果有,则获取正在排队的移动任务,否则,确定当前没有正在排队的移动任务,由调度系统选择一个合适的机器人并向机器人下发第一移动任务。
一个实施例中,调度系统获取到全部的正在执行且未完成的移动任务后,可以判断第一移动任务包含的各业务站点是否出现在正在执行且未完成的移动任务中且该业务站点为执行移动任务的机器人还未到达的业务站点(机器人还未到达的业务站点,可以认为是未执行完成的业务站点)。即调度系统先获取一个正在执行且未完成的移动任务,之后,判断该正在执行且未完成的移动任务中机器人还未移动到的业务站点与第一移动任务包含的业务站点是否存在重合,如果存在重合(重合的业务站点的数量可以为至少一个),则说明该正在执行且未完成的移动任务与第一移动任务存在合并的可能,此时,将该正在执行且未完成的移动任务记为第二移动任务,并认为第二移动任务与第一移动任务相匹配。如果不存在重合,则说明两者没有重合可能,这时,获取另一个正在执行且未完成的移动任务,再进行业务站点的重合匹配,直到查找到第二移动任务。
可理解,如果遍历完全部正在执行且未完成的移动任务,均没有找到第二移动任务,则可以获取当前处于排队状态等待下发给机器人的全部移动任务,并按照查找第二移动任务的方式,在这些移动任务中查找第二移动任务。这时,正在排队的移动任务中的每个业务站点均可认为是未执行完成的业务站点,即还没有机器人到达这些业务站点执行相应的任务。如果仍未查找到第二移动任务,则认为当前没有可以与第一移动任务合并的移动任务,因此,调度系统可以正常处理第一移动任务,比如将第一移动任务添加到排队的移动任务中。等到某个合适的机器人完成正在执行的移动任务后,将第一移动任务下发至该机器人执行。如果在排队的移动任务中查找到第二移动任务,则仍可执行后续对第二移动任务的处理,以确定是否将第一移动任务和第二移动任务合并。
可选的,调度系统可以先对第一移动任务进行路径规划,以确定其包含的业务站点,之后,再查找第二移动任务。
可选的,查找第二移动任务时,除了设置业务站点重合,还可以设置为站点重合,即无论是业务站点还是辅助站点,只要已接收且未完成的移动任务中,未执行完成的至少一个站点与第一移动任务对应的移动路径中的至少一个站点重合,则将已接收且未完成的移动任务认为是第二移动任务。
步骤130、基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值。
示例性的,查找到第二移动任务后,基于第一移动任务和第二移动任务计算得到机器人对两个任务顺序执行时,将需要的全部站点(即第二移动任务对应的还未移动到的站点以及第一移动任务对应的各站点)移动完所需的移动时长,当前,将该移动时长记为第一移动时长。
当前,先统计第二移动任务对应的移动路径中机器人还未移动到的各站点,即统计剩余站点,机器人还未完成剩余站点对应的业务。可理解,对于正在执行的第二移动任务,剩余站点可以结合机器人的移动路径以及机器人当前的移动位置得到。对于正在排队的第二移动任务,剩余站点可以是第二移动任务对应的移动路径中的每一个站点。
计算第一移动时长时,先计算机器人在剩余站点中所需的移动时长,当前记为剩余移动时长。需说明,移动时长是指机器人在站点间移动的时长,不包含在站点做业务的时长。当前,调度系统获取到预先统计的相邻剩余站点间的移动时长,再对相邻剩余站点间的移动时长相加,便可得到剩余移动时长。
计算第一移动时长时,还计算机器人执行第一移动任务时所需的移动时长,当前记为第三移动时长。具体来说,调度系统以第二移动任务结束时的站点作为第一移动任务的起始站点,规划第一移动任务对应的移动路径,之后,获取该移动路径中相邻站点间的移动时长,并将相邻站点间的移动时长相加,以得到执行第一移动任务时所需的第三移动时长。之后,将该第三移动时长与剩余移动时长相加便可得到第一移动时长。
基于此,一个实施例中,步骤130可进一步包括步骤131-步骤133:
步骤131、计算所述第二移动任务的剩余移动时长。
示例性的,调度系统先统计第二移动对应的移动路径中的各剩余站点,之后,基于各剩余站点中相邻站点间的移动时长,得到剩余移动时长。此时,步骤131可包括步骤1311-步骤1312:
步骤1311、基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定移动设备在所述移动路径中还未移动到的每个站点,所述移动路径包含的多个站点分别为相应移动任务中的各业务站点以及至少一个辅助站点。
执行移动设备可以理解为执行第二移动任务的机器人。
示例性的,对于正在执行的第二移动任务,移动设备当前的移动位置可以理解为机器人最近一次向调度系统上报的位置,比如,机器人最近一次向调度系统上报离开某个站点,那么,该站点便可认为是机器人当前的移动位置。再如,机器人最近一次向调度系统上报到达某个站点,那么,该站点便可认为是机器人当前的移动位置。对于正在排队的第二移动任务,移动设备当前的移动位置可以确定为没有。
调度系统为第二移动任务规划移动路径后,计算剩余移动时长时,可以使用规划的移动路径。并且,结合机器人当前的移动位置,便可以确定机器人在移动路径中还未移动到的各站点,未移动到的各站点可以是业务站点也可以是辅助站点。可理解,对于正在排队的第二移动任务,移动路径中的每个站点均可认为是还未移动到的站点。
举例而言,第二移动任务对应的移动路径为:站点A-站点B-站点C-站点E-站点F,机器人当前的移动位置为到达站点B,这时,调度系统可以确定机器人还未移动到的各站点分别为站点C、站点E和站点F。
步骤1312、基于所述移动路径中还未移动到的每个站点以及所述每个站点中相邻站点的移动时长,确定所述第二移动任务的剩余移动时长。
示例性的,调度系统在预先统计的每两个站点间的移动时长中,查找第二移动任务对应的还未移动到的相邻站点间的移动时长,进而将查找到的移动时长相加,便可得到剩余移动时长。相邻站点是指移动路径中机器人移动过程中顺序经过的两个站点。
举例而言,调度系统确定机器人还未移动到的各站点分别为站点C、站点E和站点F,站点C和站点E为相邻站点,站点E和站点F为相邻站点,这时,调度系统从预先统计的每两个站点间的移动时长中,查找机器人从站点C移动到站点E的移动时长以及站点E移动到站点F的移动时长,之后,将两个移动时长相加,便可得到第二移动任务的剩余移动时长。
步骤132、以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,计算执行所述第一移动任务所需的第三移动时长。
示例性的,第二移动任务中的最后一个站点是指第二移动任务对应的移动路径中的最后一个站点,调度系统将该站点作为第一移动任务的起始站点,然后,结合第一移动业务包含的各业务站点,进行路径规划,以得到以第二移动任务中的最后一个站点作为起始站点的一条移动路径,之后,基于这条移动路径中每相邻的两个站点间的移动时长便可得到机器人走遍这条移动路径的每个站点所需的第三移动时长。第三移动时长也可以理解为执行第一移动任务时所需的移动时长,其不包含执行第一移动任务时机器人在各站点做业务所需的时长。
基于此,步骤132可进一步包括步骤1321-步骤1322:
步骤1321、以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,规划得到包含所述各业务站点以及所述起始站点的移动路径。
示例性的,调度系统为第二移动任务规划移动路径后,便可获取到第二移动任务对应的移动路径中的最后一个站点,之后,将这最后一个站点作为第一移动任务的起始站点,即执行第二移动任务的机器人到达相应移动路径的最后一个站点且执行完相应的业务后,便将最后一个站点作为第一移动任务的起始站点,并开始执行第一移动任务。
一个实施例中,调度系统基于第二移动任务中的最后一个站点以及第一移动任务包含的各业务站点进行路径规划,以得到一条供机器人执行第一移动任务使用的移动路径。该条移动路径的起始站点为第二移动任务中的最后一个站点,且包含第一移动任务的各业务站点,还可包括至少一个辅助站点。其中,调度系统进行路径规划时使用的技术手段可参考现有的路径规划技术手段。
步骤1322、基于所述移动路径中相邻站点间的移动时长,计算执行所述第一移动任务所需的第三移动时长。
示例性的,调度系统在预先统计的每两个站点间的移动时长中,查找为第一移动任务规划的移动路径中相邻的每两个站点间的移动时长,将查找到的移动时长相加,便可得到第三移动时长。
举例而言,第二移动任务的最后一个站点为站点F,第一移动任务包含的业务站点为站点E、站点P和站点Q,调度系统将站点F作为第一移动任务的起始站点,并进行路径规划,得到的一条移动路径为:站点F-站点E-站点N-站点P-站点Q,其中,站点N为辅助站点。之后,调度系统在预先统计的每两个站点间的移动时长中,查找机器人从站点F移动到站点E的移动时长、站点E移动到站点N的移动时长,站点N移动到站点P的移动时长以及站点P移动到站点Q的移动时长,查找完成后将这四个移动时长相加,便可得到第三移动时长。
步骤133、计算所述剩余移动时长和所述第三移动时长的和值,得到所述第一移动时长。
示例性的,将剩余移动时长和第三移动时长相加后便可得到第一移动时长,即得到机器人依次执行第二移动任务中未完成的部分以及第一移动任务所需的移动时长。可理解,对于正在排队的第二移动任务,未完成的部分为整个第二移动任务,对于正在执行的第二移动任务,未完成的部分为机器人还未到达的业务站点。
步骤140、基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长。
示例性的,查找到第二移动任务后,调度系统还将第二移动任务中未完成的部分和第一移动任务合并后得到的新的移动任务,当前记为第三移动任务。其中,对于正在执行的第二移动任务,第二移动任务中未完成的部分可以理解为机器人还未到达并且还未执行相应业务的业务站点。对于正在排队的第二移动任务,第二移动任务中未完成的部分可以理解为第二移动任务中每个业务站点。合并后的第三移动任务包括第二移动任务未完成的各业务站点以及第一移动任务的各业务站点。之后,调度系统为第三移动任务规划对应的移动路径,并计算机器人沿着该移动路径进行移动时所需的移动时长,当前记为第三移动时长。
在此基础上,步骤140可进一步包括步骤141-步骤144:
步骤141、基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定所述移动设备在所述移动路径中还未移动到的业务站点。
示例性的,调度系统得到为第二移动任务规划的移动路径后,结合机器人当前的移动位置,便可确定第二移动任务中,机器人还未移动到(即还未到达)的业务站点。还未移动到的业务站点可能为一个,也可能为多个。还未移动到的业务站点便可认为是第二移动任务未完成的部分,即机器人还未在这些做业务站点中执行相应的业务。对于正在排队的第二移动任务,移动设备当前的移动位置可以确定为没有,这时,第二移动任务的每个业务站点均认为是未完成的部分。
步骤142、基于所述第二移动任务中所述移动设备还未移动到的业务站点以及所述第一移动任务中的各业务站点,创建第三移动任务,所述第三移动任务包含所述还未移动到的业务站点以及所述第一移动任务中的各业务站点。
将第二移动任务中机器人还未移动到的各业务站点以及第一移动任务包含的各业务站点一同作为新的第三移动任务包含的各业务站点,进而创建得到第三移动任务。
举例而言,第二移动任务对应的移动路径为:站点A-站点B-站点C-站点E-站点F,其中,站点B和站点C为辅助站点,站点A、站点E和站点F为业务站点,机器人当前的移动位置为到达站点B,这时,调度系统可以确定机器人还未移动到的业务站点分别为站点E和站点F。第一移动业务包含的业务站点分别为站点E、站点M以及站点P。调度系统创建第三移动任务时,第三移动任务包含的业务站点分别为:站点E、站点F、站点M和站点P。并且,每个业务站点需要执行的业务仍未原有移动任务中该业务站点需要执行的业务。
步骤143、规划所述第三移动任务对应的移动路径。
示例性的,调度系统基于第三移动任务包含的各业务站点,为第三移动任务规划相应的移动路径。规划的移动路径包含第三移动任务的各业务站点,还可包括至少一个辅助站点。
步骤144、基于所述第三移动任务对应的移动路径中相邻站点间的移动时长,计算执行所述第三移动任务所需的第二移动时长。
示例性的,调度系统在预先统计的每两个站点间的移动时长中,查找为第三移动任务规划的移动路径中相邻的每两个站点间的移动时长,将查找到的移动时长相加,便可得到第二移动时长。
举例而言,第三移动任务包含的业务站点分别为:站点E、站点F、站点M和站点P。规划的移动路径为:站点E-站点F-站点R-站点M-站点P,其中,站点R为辅助站点。之后,调度系统在预先统计的每两个站点间的移动时长中,查找机器人从站点E移动到站点F的移动时长、站点F移动到站点R的移动时长,站点R移动到站点M的移动时长以及站点M移动到站点P的移动时长,查找完成后将这四个移动时长相加,便可得到第二移动时长。
需说明,步骤130和步骤140可以同时执行,也可以顺序执行,实施例对此不作限定。其中,调度系统进行路径规划时使用的技术手段可参考现有的路径规划技术手段。
步骤150、在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务。
可理解,对于第二移动任务中未完成部分的各业务站点以及第一移动任务中的各业务站点合并为第三移动任务后,机器人执行第三移动任务时对各业务站点的移动顺序与顺序执行第二移动任务和第一移动任务时的移动顺序可能不同,且移动过程中所需的辅助站点也可能不同,这样会导致第二移动时长和第一移动时长的值也可能不同。
这时,调度设备计算得到第一移动时长和第二移动时长后,比较第一移动时长和第二移动时长。如果第一移动时长等于第二移动时长,则说明机器人执行第二移动任务并在执行完毕后再执行第一移动任务花费的移动时长与机器人执行第三移动任务(即第二移动任务未完成部分与第一移动任务合并)花费的移动时长相等。如果第一移动时长小于第二移动时长,则说明机器人执行第二移动任务并在执行完毕后再执行第一移动任务花费的移动时长少于机器人执行第三移动任务花费的移动时长。如果第一移动时长大于第二移动时长,则说明机器人执行第二移动任务并在执行完毕后再执行第一移动任务花费的移动时长多于机器人执行第三移动任务花费的移动时长。
基于此,实施例中,如果第一移动时长等于或小于第二移动时长,则调度系统确定第二移动任务不与第一移动任务合并,即第二移动任务和第一移动任务分别被执行。如果第一移动时长大于第二移动时长,则说明机器人执行合并的第三移动任务花费的移动时长更短,这时,调度系统确定让机器人执行第三移动任务。此时,调度系统先创建第三移动任务。即调度系统将第二移动任务中未完成部分的各业务站点以及第一移动任务包含的各业务站点一同作为新的第三移动任务包含的各业务站点,进而创建得到第三移动任务。第三移动任务中,机器人在各业务站点执行的业务与机器人在原移动任务中执行的业务相同。
一个实施例中,为了进一步提高机器人的任务执行效率,还可以设置预设百分比,预设百分比可以由用户结合自身的实际需求设置。这时,步骤150可具体为:在所述第二移动时长小于所述第一移动时长与预设百分比的乘积时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务。
示例性的,调度系统得到第一移动时长后,将第一移动时长与预设百分比相乘,这时,得到的数值一般小于第一移动时长。之后,将第二移动时长与第一移动时长和预设百分比的乘积相比较,如果第二移动时长小于第一移动时长和预设百分比的乘积,则说明机器人执行第三移动任务花费的移动时长比机器人执行第二移动任务并在执行完毕后再执行第一移动任务花费的移动时长短,并且,可以提高的效率为预设百分比。比如,预设百分比为70%,第二移动时长小于第一移动时长*70%,则说明机器人执行第三移动任务花费的移动时长比机器人继续执行第二移动任务并在执行完毕后再执行第一移动任务花费的移动时长至少缩短了70%。可以实现更高的移动效率,进而得到更高的任务执行效率。
步骤160、取消执行第二移动任务,并确定执行第三移动任务。
示例性的,对于正在执行的第二移动任务,取消执行第二移动任务可理解为,调度系统创建第三移动任务后,向执行第二移动任务的机器人下发一条指令,该指令用于使机器人停止执行第二移动任务。确定执行第三移动任务可理解为,调度系统还向执行第二移动任务的机器人下发第三移动任务,以使机器人停止执行第二移动任务后执行第三移动任务。相应的,机器人根据调度系统下发的指令停止执行第二移动任务,并接收调度系统下发的第三移动任务。之后,机器人请求调度系统对第三移动任务做路径规划,并基于调度系统规划的移动路径移动,并在到达相应的站点后执行对应的业务。
对于正在排队的第二移动任务,取消执行第二移动任务可理解为,取消第二移动任务的排队。确定执行第三移动任务可理解为,将第三移动任务进行排队,并选择合适的机器人发送第三移动任务。
上述,调度系统接收到新的第一移动任务后,在当前已接收且未完成的各移动任务中,查找相匹配的第二移动任务,第二移动任务中未执行完成的至少一个业务站点与第一移动任务包含的至少一个业务站点重合,根据第一移动任务和第二移动任务分别计算第一移动时长和第二移动时长,第一移动时长为顺序执行第二移动任务和第一移动任务所需的移动时长,第二移动时长为合并第二移动任务和第一移动任务后所需的移动时长,在第二移动时长小于第一移动时长时,将第二移动任务和第一移动任务合并,以得到第三移动任务,并取消执行第二移动任务并确定执行第三移动任务的技术手段,解决了相关技术中存在多个任务时,单台机器人的任务执行效率低的技术问题。通过移动设备在各站点间的移动时长,确定是否合并移动任务,可以提高执行移动任务的单台机器人的任务执行效率,并且,可以实现与移动设备执行的业务解耦,不论业务如何变化,均可基于移动时长确定是否合并任务任务,使得移动任务合并方法的扩展性、实用性以及可维护性都大幅提高。并且,通过预设百分比,可以进一步提高机器人的任务执行效率。
在上述实施例的基础上,可能存在多个第二移动任务符合合并的要求,这时候,为了进一步提高机器人配送效率,选择合并得到的第三移动任务移动时长最短时的第二移动任务。基于此,实施例中,步骤150之后,还可以包括:保存所述第三移动任务以及对应的第二移动时长;返回执行所述在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务的操作,以查找到新的第二移动任务,直到保存到全部的第三移动任务以及对应的第二移动时长;在全部的第三移动任务以及对应的第二移动时长中,选择第二移动时长最少的第三移动任务作为下发给执行移动设备的移动任务。
示例性的,调度系统查找到一个第二移动任务,并确定需要创建第三移动任务后,将创建的第三移动任务和本次计算得到的第二移动时长关联保存。之后,调度系统继续查找下一个第二移动任务,并继续计算第一移动时长和第二移动时长,在第二移动时长小于第一移动时长时,再次创建第三移动任务,并与第二移动时长关联保存。重复此过程,调度系统可以得到符合要求的全部的第三移动任务,并关联保存每个第三移动任务以及对应的第二移动时长。之后,调度系统在关联保存的第三移动任务以及对应的第二移动时长中,选择最短的第二移动时长,即机器人执行第三移动任务时花费最短的移动时长。之后,将选择的最短的第二移动时长对应的第三移动任务作为需要机器人执行的移动任务,即确定为需要执行的第三移动任务。之后,调度系统取消执行第二移动任务,并确定执行第三移动任务。
上述,通过遍历全部已接收且未完成的移动任务,找到每个与第一移动任务相匹配的第二移动任务,逐个确定第二移动任务是否可以与第一移动任务合并,并在合并得到的每个第三移动任务中,找到第二移动时长最短的第三移动任务作为移动设备应执行的移动任务,可以在基于移动时长对移动任务合并的基础上,使移动设备执行合并后移动时长最短的移动任务,进一步的提高了移动设备的任务执行效率。
下面对本申请实施例提供的移动任务合并方法进行示例性描述,本示例中,移动设备为机器人,图2为本申请一个实施例提供的一种移动任务合并方法的流程示意图。参考图2,用户通过自身使用设备中的浏览器访问服务器中的调度系统,并向调度系统下发移动任务(当前为调度系统接收到的第一个移动任务),调度系统接收到移动任务后,选择合适的机器人下发该移动任务。机器人接收到移动任务后,向调度系统请求路径规划,调度系统基于机器人的请求做路径规划,并将路径规划结果(即规划好的移动路径)下发给机器人,机器人按照路径规划结果开始执行移动任务。
之后,用户通过自身使用设备中的浏览器再次向调度系统下发移动任务(可认为是第一移动任务),调度系统接收到该移动任务后,进行移动任务检测,检测过程为:在当前已接收且未完成的各移动任务中,查找与第一移动任务相匹配的第二移动任务,并计算第一移动时长和第二移动时长,基于第一移动时长和第二移动时长确定可以合并移动任务时,创建第三移动任务并关联保存第二移动时长,找到全部第二移动任务后,在当前已保存的各第三移动任务中,选择第二移动时长最短的第三移动任务。这时,确定移动任务可合并,并向机器人发送取消执行当前的第二移动任务,并向机器人下发第三移动任务。后续,机器人可以基于第三移动任务向调度系统请求路径规划,并基于调度系统反馈的路径规划结果执行第三移动任务。当确定没有可以合并的移动任务时,调度系统可以选择合适的机器人下发第一移动任务。后续,机器人可以基于第一移动任务向调度系统请求路径规划,并基于调度系统反馈的路径规划结果执行第一移动任务。
通过上述示例,可以提高机器人的任务执行效率。
图3为本申请一个实施例提供的一种移动任务合并装置的结构示意图。参考图3,该移动任务合并装置包括:任务接收单元201、任务查找单元202、第一时长确定单元203、第二时长确定单元204、任务合并单元205以及任务取消单元206。
其中,任务接收单元201,用于接收新的第一移动任务;任务查找单元202,用于在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点;第一时长计算单元203,用于基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值;第二时长计算单元204,用于基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长;任务合并单元205,用于在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务;任务取消单元206,用于取消执行第二移动任务,并确定执行第三移动任务。
在上述实施例的基础上,所述第一时长确定单元203包括:剩余时长计算子单元,用于计算所述第二移动任务的剩余移动时长;第三时长确定子单元,用于以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,计算执行所述第一移动任务所需的第三移动时长;移动时长相加子单元,用于计算所述剩余移动时长和所述第三移动时长的和值,得到所述第一移动时长。
在上述实施例的基础上,所述剩余时长计算子单元包括:第一站点确定孙单元,用于基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定所述移动设备在所述移动路径中还未移动到的每个站点,所述移动路径包含的多个站点分别为相应移动任务中的各业务站点以及至少一个辅助站点;剩余移动时长计算孙单元,用于基于所述移动路径中还未移动到的每个站点以及所述每个站点中相邻站点的移动时长,确定所述第二移动任务的剩余移动时长。
在上述实施例的基础上,所述第三时长确定子单元包括:第一路径规划孙单元,用于以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,规划得到包含所述各业务站点以及所述起始站点的移动路径;第三移动时长计算孙单元,用于基于所述移动路径中相邻站点间的移动时长,计算执行所述第一移动任务所需的第三移动时长。
在上述实施例的基础上,所述第二时长确定单元204包括:第二站点确定子单元,用于基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定所述移动设备在所述移动路径中还未移动到的业务站点;任务创建子单元,用于基于所述第二移动任务中所述移动设备还未移动到的业务站点以及所述第一移动任务中的各业务站点,创建第三移动任务,所述第三移动任务包含所述还未移动到的业务站点以及所述第一移动任务中的各业务站点;第二路径规划子单元,用于规划所述第三移动任务对应的移动路径;第二移动时长计算子单元,用于基于所述第三移动任务对应的移动路径中相邻站点间的移动时长,计算执行所述第三移动任务所需的第二移动时长。
在上述实施例的基础上,移动任务合并装置还包括:任务保存单元,用于在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务之后,保存所述第三移动任务以及对应的第二移动时长;返回单元,用于返回执行所述在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务的操作,以查找到新的第二移动任务,直到保存到全部的第三移动任务以及对应的第二移动时长;任务选择单元,用于在全部的第三移动任务以及对应的第二移动时长中,选择第二移动时长最少的第三移动任务作为下发给移动设备的移动任务。
在上述实施例的基础上,任务合并单元205具体用于在所述第二移动时长小于所述第一移动时长与预设百分比的乘积时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务。
本申请实施例提供的移动任务合并装置包含在移动任务合并设备中,且可用于执行上述任意实施例中提供的移动任务合并方法,具备相应的功能和有益效果。
值得注意的是,上述移动任务合并装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
图4为本申请一个实施例提供的一种移动任务合并设备的结构示意图。参考图4,该移动任务合并设备包括:处理器31、存储器32以及通信接口33。其中,处理器31、存储器32以及通信接口33可以通过总线或其他方式连接,图4中以通过总线连接为例。
处理器31的数量为一个或多个,图4中以一个处理器31为例。处理器31可以是中央处理器(Central Processing Unit,CPU),也可以是其他类型或种类的处理器。处理器31通过运行在存储器32中的软件程序、指令以及模块,实现移动任务合并设备的各种功能应用以及数据处理,进而可以实现本申请实施例中提供的移动任务合并方法。
存储器32作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的移动任务合并方法对应的程序指令/模块(如任务接收单元201、任务查找单元202、第一时长计算单元203、第二时长计算单元204、任务合并单元205以及任务取消单元206)。存储器32可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据移动任务合并设备的使用所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器32可进一步包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至移动任务合并设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。可理解,当处理器31具备存储功能时,存储器32和处理器31也可以集成在一个物理实体。
通信接口33的数量为一个或多个,图4中以一个通信接口33为例。通信接口33实现通信。比如,通过通信接口33与移动设备进行数据、指令等的传输。通信接口33的接口类型当前不作限定。
此外,移动任务合并设备还包括输入装置、输出装置等设备,其中,输入装置可用于接收输入的数字或字符信息,以及产生与移动任务合并设备的用户设置以及功能控制有关的键信号输入。输出装置可包括显示屏等显示设备以及其他数据输出设备。此外,移动任务合并设备还可包括电源等设备。
上述移动任务合并设备包含移动任务合并装置,可以用于执行任意移动任务合并方法,具备相应的功能和有益效果,当前未描述的具体细节可参考前述移动任务合并方法的相关描述。
本申请一个实施例还提供一种移动任务合并系统,其包括:前述的移动任务合并设备(即服务器)以及服务器进行移动任务调度的移动设备(如机器人)。该移动任务合并系统中各设备执行的操作可参考前述内容,具备相应的功能以及有益效果。
本申请一个实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由移动任务合并设备的处理器执行时用于执行本申请任意实施例中提供的移动任务合并方法中的相关操作,且具备相应的功能和有益效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。
因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理模块以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理模块执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (10)
1.一种移动任务合并方法,其特征在于,包括:
接收新的第一移动任务;
在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点;
基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值;
基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长;
在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务;
取消执行第二移动任务,并确定执行第三移动任务。
2.根据权利要求1所述的移动任务合并方法,其特征在于,所述基于所述第一移动任务和所述第二移动任务确定第一移动时长,包括:
计算所述第二移动任务的剩余移动时长;
以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,计算执行所述第一移动任务所需的第三移动时长;
计算所述剩余移动时长和所述第三移动时长的和值,得到所述第一移动时长。
3.根据权利要求2所述的移动任务合并方法,其特征在于,所述计算所述第二移动任务的剩余移动时长,包括:
基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定所述移动设备在所述移动路径中还未移动到的每个站点,所述移动路径包含的多个站点分别为相应移动任务中的各业务站点以及至少一个辅助站点;
基于所述移动路径中还未移动到的每个站点以及所述每个站点中相邻站点的移动时长,确定所述第二移动任务的剩余移动时长。
4.根据权利要求2所述的移动任务合并方法,其特征在于,所述以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,计算执行所述第一移动任务所需的第三移动时长,包括:
以所述第二移动任务中的最后一个站点作为所述第一移动任务的起始站点,并结合所述第一移动任务包含的各业务站点,规划得到包含所述各业务站点以及所述起始站点的移动路径;
基于所述移动路径中相邻站点间的移动时长,计算执行所述第一移动任务所需的第三移动时长。
5.根据权利要求1所述的移动任务合并方法,其特征在于,所述基于所述第一移动任务和所述第二移动任务确定第二移动时长,包括:
基于所述第二移动任务对应的移动路径以及执行移动设备当前的移动位置,确定所述移动设备在所述移动路径中还未移动到的业务站点;
基于所述第二移动任务中所述移动设备还未移动到的业务站点以及所述第一移动任务中的各业务站点,创建第三移动任务,所述第三移动任务包含所述还未移动到的业务站点以及所述第一移动任务中的各业务站点;
规划所述第三移动任务对应的移动路径;
基于所述第三移动任务对应的移动路径中相邻站点间的移动时长,计算执行所述第三移动任务所需的第二移动时长。
6.根据权利要求1所述的移动任务合并方法,其特征在于,所述在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务之后,还包括:
保存所述第三移动任务以及对应的第二移动时长;
返回执行所述在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务的操作,以查找到新的第二移动任务,直到保存到全部的第三移动任务以及对应的第二移动时长;
在全部的第三移动任务以及对应的第二移动时长中,选择第二移动时长最少的第三移动任务作为下发给移动设备的移动任务。
7.根据权利要求1所述的移动任务合并方法,其特征在于,所述在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务,包括:
在所述第二移动时长小于所述第一移动时长与预设百分比的乘积时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务。
8.一种移动任务合并装置,其特征在于,包括:
任务接收单元,用于接收新的第一移动任务;
任务查找单元,用于在当前已接收且未完成的各移动任务中,查找与所述第一移动任务相比配的第二移动任务,所述第二移动任务中未执行完成的至少一个业务站点与所述第一移动任务包含的至少一个业务站点重合,每个移动任务均包含多个业务站点;
第一时长确定单元,用于基于所述第一移动任务和所述第二移动任务确定第一移动时长,所述第一移动时长为第二移动任务的剩余移动时长与所述第二移动任务执行完成后到所述第一移动任务执行完成所需的第三移动时长的和值;
第二时长确定单元,用于基于所述第一移动任务和所述第二移动任务确定第二移动时长,所述第二移动时长为所述第一移动任务和所述第二移动任务未完成部分合并后得到的第三移动任务执行完成所需的移动时长;
任务合并单元,用于在所述第二移动时长小于所述第一移动时长时,将所述第一移动任务和所述第二移动任务的未完成部分合并,得到第三移动任务;
任务取消单元,用于取消执行第二移动任务,并确定执行第三移动任务。
9.一种移动任务合并设备,其特征在于,包括:
一个或多个处理器;
通信接口,用于实现通信;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的移动任务合并方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的移动任务合并方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311671001.4A CN117829460A (zh) | 2023-12-06 | 2023-12-06 | 一种移动任务合并方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311671001.4A CN117829460A (zh) | 2023-12-06 | 2023-12-06 | 一种移动任务合并方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117829460A true CN117829460A (zh) | 2024-04-05 |
Family
ID=90504947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311671001.4A Pending CN117829460A (zh) | 2023-12-06 | 2023-12-06 | 一种移动任务合并方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117829460A (zh) |
-
2023
- 2023-12-06 CN CN202311671001.4A patent/CN117829460A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210150908A1 (en) | Systems and methods for automated real-time and advisory routing within a fleet of geographically distributed drivers | |
US11928644B2 (en) | Articles picking method, control system and articles picking system | |
US10387984B2 (en) | Method of providing call taxi service and call taxi service server | |
CN106228302A (zh) | 一种用于在目标区域内进行任务调度的方法与设备 | |
CN106294614A (zh) | 用于访问业务的方法和装置 | |
CN110861104B (zh) | 一种辅助机器人运送物品的方法、介质、终端和装置 | |
US20220374018A1 (en) | Method and apparatus for controlling automated guided vehicle | |
WO2022206591A1 (zh) | 配送订单处理方法、装置及计算机设备 | |
CN111199370A (zh) | 订单信息处理方法、装置、存储介质及电子设备 | |
US20180107223A1 (en) | Method and system for generating navigation data and transporting object | |
US20220092524A1 (en) | Goods pickup method and device | |
CN110247979B (zh) | 一种调度方案确定方法、装置及电子设备 | |
CN111311144B (zh) | 数据处理方法、装置、服务器和非易失性存储介质 | |
WO2016060377A1 (ko) | 물품배송처리방법 및 물품배송처리서버 | |
CN111703802B (zh) | 出入库流程的控制方法和装置、仓储系统 | |
WO2020257330A1 (en) | Reassigned delivery protocol | |
WO2020257328A1 (en) | Detecting delivery status based on geo-fencing | |
CN117829460A (zh) | 一种移动任务合并方法、装置、设备及存储介质 | |
CN112561362A (zh) | 无人递送系统订单调度方法、系统、终端及存储介质 | |
KR20200097474A (ko) | 무인 배달로봇 관리 시스템 및 방법 | |
US20180330318A1 (en) | Systems and Methods for Dynamically Updating Stored Lists Based on Contemporaneous Location Data Associated with Client Devices | |
CN114662888A (zh) | 作业管理方法、装置、电子设备以及存储介质 | |
CN112781602A (zh) | 订单派送方法、装置、设备及存储介质 | |
US20210166186A1 (en) | Information processing device, moving device, information processing system, method, and program | |
CN112556706A (zh) | 一种导航方法、装置、设备和机器可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |