CN111722596A - 一种多级调度方法和装置 - Google Patents

一种多级调度方法和装置 Download PDF

Info

Publication number
CN111722596A
CN111722596A CN201910211451.2A CN201910211451A CN111722596A CN 111722596 A CN111722596 A CN 111722596A CN 201910211451 A CN201910211451 A CN 201910211451A CN 111722596 A CN111722596 A CN 111722596A
Authority
CN
China
Prior art keywords
node
scheduling
nodes
current
level
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.)
Granted
Application number
CN201910211451.2A
Other languages
English (en)
Other versions
CN111722596B (zh
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.)
Beijing Jingbangda Trade Co Ltd
Beijing Jingdong Zhenshi Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201910211451.2A priority Critical patent/CN111722596B/zh
Publication of CN111722596A publication Critical patent/CN111722596A/zh
Application granted granted Critical
Publication of CN111722596B publication Critical patent/CN111722596B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4189Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
    • G05B19/41895Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system using automatic guided vehicles [AGV]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31277Dispatching rules, shortest travel time or bidding based to reduce empty travel
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种多级调度方法,应用于调度系统中的任一调度子系统,其特征在于,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点,每级中间节点包括至少一个中间节点;该方法包括:当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务。

Description

一种多级调度方法和装置
技术领域
本发明涉及信息处理技术领域,特别涉及一种多级调度方法和装置。
背景技术
自动化分拣场地能够实现包裹的自动化分拣、调度、发货的全流程无人自动化,全流程无人自动化能够极大提高分拣配送的效率。调度是保证包裹被准确配送到对应目的地的基础,同时也是影响效率的关键,是自动化分拣场地实现自动化的重要的一环。
现有的技术是按照人工配置的调度计划来实现调度,即根据包裹的目的地来配置起始位置、中间位置、发货口位置的对应关系,无人搬运车(Automated Guided Vehicles,AGV)按照人工配置的对应关系对包裹进行从起始位置、中间位置、到发货口位置的自动调度搬运。
发明内容
有鉴于此,本发明的目的在于提供一种多级调度方法和装置,能够实现任务的自动化调度,提高调度效率。
为了达到上述目的,本发明提供了如下技术方案:
一种多级调度方法,应用于调度系统中的任一调度子系统,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点;该方法包括:
当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;
将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务;
其中,所述调度系统中的其它调度子系统与所述任一调度子系统具有不同的起始级节点、相同的N级中间节点、以及相同或不同的终结级节点;所述调度系统中的所有调度子系统共用所述任务调度表。
一种多级调度装置,应用于调度系统中的任一调度子系统,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点;该装置包括:
决策单元,用于当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;
调度单元,将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务;
其中,所述调度系统中的其它调度子系统与所述任一调度子系统具有不同的起始级节点、相同的N级中间节点、以及相同或不同的终结级节点;所述调度系统中的所有调度子系统共用所述任务调度表。
一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;所述至少一个处理器执行所述一个或多个计算机程序时实现如上述多级调度方法中的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现如上述多级调度方法。
由上面的技术方案可知,本发明中,调度子系统中的起始级节点有待调度任务时,根据各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径,将所述最优调度路径作为所述待调度任务的最优调度路径,从而使得所述最优调度路径中的各级节点待调度任务的最优调度路径信息执行所述待调度任务,实现任务调度。本发明可以实现任务的自动化调度,提高调度效率。
附图说明
图1是本发明实施例调度系统及其包含的调度子系统的架构示意图;
图2是本发明实施例多级调度方法流程图;
图3是本发明实施例多级调度装置的结构示意图;
图4是本发明实施例电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
本发明适用于需要进行多级调度的调度系统中的任一调度子系统。调度系统中包括多个起始级节点(即第0级节点)、N级中间节点、和一个或多个终结级节点。在所述调度系统中,根据起始级节点个数划分为多个调度子系统,其中,每个调度子系统中仅包括一个起始级节点且不同调度子系统的起始级节点互不相同,另外所有调度子系统共用所述N级中间节点,不同调度子系统的终结级节点可以相同也可以不同,是由调度子系统的起始级节点确定的。因此,在本发明中,调度系统中的任一调度子系统都包括一个起始级节点、N级中间节点、和一个终结级节点。
参见图1,图1是本发明实施例调度系统及其包含的调度子系统的架构示意图,如图1所示,调度系统中包括2起始级节点:N01、N02,第1级中间节点,包括的中间节点有:N11、N12、N13,以及1个终结级节点:N21。在图1所示调度系统中,根据起始级节点个数划分为2个调度子系统,其中,第一个调度子系统包括如下节点:一个起始级节点N01、第1级中间节点N11、N12、N13,以及一个终结级节点N21;第二个调度子系统包括如下节点:一个起始级节点N02、第1级中间节点N11、N12、N13,以及一个终结级节点N21。
本发明实施例中,所述调度系统的一个典型例子是自动化分拣场地,在自动化分拣场地中,具有多个格口、一级或多级打包台、和一个或多个发货口。将自动化分拣场地对应到所述调度系统,则格口即为起始级节点(例如图1中的节点N01、N02),发货口即为终结级节点(例如图1中的终结级节点N21),一级或多级打包台则为N级中间节点(例如图1中的第一级中间节点N11、N12、和N13)。可以根据自动化分拣场地中的格口进一步将自动化分拣场地对应的调度系统划分为多个调度子系统(例如图1中根据起始级节点N01、N02划分的两个调度子系统),每个调度子系统包括一个格口和该格口对应的一个发货口,还包括所述一级或多级作为中间节点的打包台。
本发明实施例中,调度系统用于执行调度任务,调度任务的执行依赖于调度路径,调度路径为从起始级节点出发,经由各级中间节点到达终结级节点的一条路径,且调度路径中不能同时包括两个及两个以上的同级节点。对于一个调度任务来说,其调度路径中的节点按照调度路径中的节点顺序依次执行该调度任务,每个节点执行的调度操作可能是相同的,也可能不相同的,由具体的调度场景确定。在实际应用中,对于一个调度任务来说,调度路径可以有多种,但是为了提高调度系统的调度效率,需要为调度任务确定一个最优调度路径,基于最优调度路径对调度任务进行调度操作。
参见图2,图2是本发明实施例多级调度方法流程图,该方法应用于调度系统中的任一调度子系统,其中,所述调度子系统中包括有起始级节点、N级中间节点、和终结级节点,N级中间节点中的每一级包括至少一个中间节点;如图2所示,该方法具体应用于起始级节点,主要包括以下步骤:
步骤201、当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径。
步骤102、将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务。
以下介绍上述方法步骤的实现原理,并结合上述图1进行举例说明:
步骤201的实现原理:
由于调度系统中的所有调度子系统共用N级中间节点,不同调度子系统在进行任务调度时,可能会同时使用相同的中间节点。例如图1中,两个调度子系统的起始级节点在确定自身的调度任务的最优调度路径时,第一个调度子系统的起始级节点N01确定的最优调度路径是N01→N11→N21,第二个起始级节点N02确定的最优调度路径是N02→N11→N21,可以看出,两个调度子系统同时使用了中间节点N11,导致中间节点N11的处理压力非常大,而其它中间节点则处于空闲状态,这显然是不合理的。
本发明实施例中,为了避免同一中间节点同时承担过多的调度任务量,在确定待调度任务的最优调度路径时,将各中间节点当前的调度任务量考虑在内。为此,配置一个所有调度子系统共用一个任务调度表,任务调度表中记录调度系统中当前的所有待调度任务及每一调度任务的最优调度路径。对于任一中间节点来说,可以通过查找确定最优调度路径中包含该中间节点的待调度任务的数量,将查找确定的数量作为该中间节点当前的调度任务量,从而基于该中间节点当前的调度任务量确定该中间节点是否能够作为某一待调度任务的最优调度路径中的节点。
本发明中,基于蚁群算法原理确定待调度任务的最优调度路径,同时将各中间节点当前的调度任务量考虑在内,实现对蚁群算法的优化。如果一个中间节点的调度任务量过多,达到一定阈值,则不允许将该中间节点作为最优调度路径中的节点。
现有实现中,蚁群算法原理如下:
1、蚂蚁在走过的路径上释放信息素;
2、碰到还没走过的路口,就随机挑选一条路走,同时,释放与路径长度有关的信息素;
3、信息素浓度与路径长度成反比。后来的蚂蚁再次碰到该路口时,就选择信息素浓度较高路径。
4、最优路径上的信息素浓度越来越大。
5、最终蚁群找到最优寻食路径。
本发明实施例中,为了计算从调度子系统的起始级节点到终结级节点的最优调度路径,需要预先计算所述起始级节点与所述终结级节点之间的路段距离,以及所述任一调度子系统中级数相邻的任意两个节点之间的路段距离,并对每个路段进行信息素初始化配置(例如,将所有路段的信息素初始化为1)。例如对于图1,需要计算N01分别与N11、N12、N13之间的路段的距离,计算N11、N12、及N13与N20之间的路段的距离,以及计算N01与N20之间的路段的距离,同时对这些路段赋予信息素初始化值(例如信息素初始化值1)。
基于上述的路段距离计算和路段的信息素初始化配置,本步骤101中,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径,具体实现方法为:
循环执行以下操作直至循环次数达到预设循环次数T:从所述任一调度子系统中随机选出M个节点作为起止节点;针对选出的每个起止节点,基于所述任一调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径,该闭合路径经由各级节点中的一个节点且该闭合路径中的各中间节点当前的调度任务量未超过预设任务量阈值;更新确定的M个闭合路径中每个路段的信息素;
确定T次循环中确定的距离最短的闭合路径,根据该闭合路径确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径。
在上述确定最优调度路径的方法中,每轮循环中,随机选择的M个节点即相当于为蚁群算法中设置的M个蚂蚁选择的出发位置,根据蚁群算法,每个蚂蚁都会从自身的出发位置开始,优先挑选信息素较高的路径走,同时在经过的路径上释放信息素,最终走回出发位置(即确定了一条闭合路径)。所有蚂蚁都走完出发位置,一次迭代完成。每次迭代都可以确定M条闭合路径,其中一条为该次迭代中的最优闭合路径。通过多次迭代(循环),最终可以确定多次迭代中的最优闭合路径,可以根据该最优闭合路径确定从调度子系统的起始级节点到终结级节点之间的最优调度路径。
在上述确定最优调度路径的方法中,基于所述调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点的闭合路径的具体实现方法如下:
将该起止节点作为当前节点,并循环执行以下操作:确定可作为当前节点在闭合路径中的下一节点的所有备选节点,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法(也称为轮盘赌算法),从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点,如果该备选节点是该起止节点,则此时已经确定了整个闭合路径,需要结束循环,否则,将当前节点在闭合路径的下一节点作为当前节点,再次执行本循环。
这里,确定可作为当前节点在闭合路径中的下一节点的所有备选节点,具体包括:
如果当前节点为所述起始级节点,则将所述N级中间节点中的所有第一级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点所述终结级节点,则将所述起始级级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点是中间节点,则若当前节点是第N级中间节点,则将所述终结级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点,若当前节点是第i级中间节点且i小于N,则将所述N级中间节点中的所有第i+1级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点。
根据上述确定可作为当前节点在闭合路径中的下一节点的所有备选节点的具体实现方法,可以保证从任一起止节点为出发点和结束点的闭合路径,必然是一个按照以下节点顺序依次连接起来闭合路径:起始级节点—>第1级中间节点—>第二级中间节点—>……—>第N级中间节点—>终结级节点—>起始级节点,且该闭合路径中的每一级节点(包括起始级节点和终结级节点)有且仅有一个。
根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点,具体包括:
计算当前节点与所有备选节点之间的路段的信息素总和,选择一个介于0到该信息素总和之间的信息素值,并从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,如果当前节点与该备选节点之间的路段的信息素大于该信息素值,则将该备选节点作为当前节点在闭合路径中的下一节点,否则,在所有备选节点中随机选择一个当前的调度任务量小于预设任务量阈值的备选节点,将随机选择的备选节点作为当前节点在闭合路径中的下一节点。
在上述确定最优调度路径的方法中,更新确定的M个闭合路径中每个路段的信息素的方法为:对于每一闭合路径中的每个路段,将该路段当前的信息素除以该路段的距离的平方得到一个商值,将该路段当前的信息素增加该商值。
下面结合图1,对确定最优调度路径的方法进行举例说明:
假设第一个调度子系统的起始级节点N01有待调度任务,N01开始基于蚁群算法原理和中间节点N11、N12、N13当前的调度任务量确定从N01出发,经过一个第1级中间节点到达N21的最优调度路径。
假设N01到N11、N12、N13的路段的距离分别为8、9、5,N11、N12、N13到N21的路段的距离分别为:6、6、6,N01到N21的距离为10。N11、N12、N13当前的调度任务量分别为1、2、3,且任务量阈值为3。假设设置有3个蚂蚁(即M=3),且循环次数T=100。则最优调度路径的确定过程为执行100次循环迭代。
以下以第一次循环迭代为例进行说明:
假设为3个蚂蚁选择的3个起止节点分别为N01、N12、N13。则分别确定以各个起止节点为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径过程如下:
对于起止节点N01:N01作为当前节点,确定可作为N01的下一节点的所有备选节点(包括N11、N12、N13),N01作为当前节点,与所有备选节点的信息素和为3,在0到3之间选择一个信息素值(假设为2),并选择一个备选节点(假设为N11),由于N01到N11的路段的信息素当前为1,小于2,因此,只能在所有备选节点中随机选择一个当前的调度任务量小于预设任务量阈值的备选节点(只有N11和N12可以参与选择,N13由于当前调度任务量达到任务量阈值3,不能参与选择),假设选定了N11作为下一节点。N11作为当前节点,确定可作为N11的下一节点的所有备选节点(包括N21),因此,N21被确定为N11的下一节点。N21的下一节点只能是N01。至此,确定了以N01为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径:N01→N11→N21→N01。
对于起止节点N12:N12作为当前节点,确定可作为N12的下一节点的所有备选节点(包括N21),因此,N21被确定为N12的下一节点。N21的下一节点只能是N01。可作为N01的下一节点的所有备选节点包括N11、N12、N13,然而,由于闭合路径中每一级节点有且仅有1个,而路径中已经有第1级节点N12,因此N01的下一级节点只能是N12。至此,确定了以N12为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径:N12→N21→N01→N12。
对于起止节点N13:N13作为当前节点,确定可作为N13的下一节点的所有备选节点(包括N21),因此,N21被确定为N13的下一节点。N21的下一节点只能是N01。可作为N01的下一节点的所有备选节点包括N11、N12、N13,然而,由于闭合路径中每一级节点有且仅有1个,而路径中已经有第1级节点N13,因此N01的下一节点只能是N13。至此,确定了以N13为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径:N13→N21→N01→N13。这里,需要说明的是,由于N13当前的调度任务量达到任务量阈值,因此,在将N13作为当前节点确定N13的下一节点时,或者在确定N01的下一节点是N13时,均可以结束执行确定以N13为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径的操作,因为该条闭合路径中包括当前任务量达到任务量阈值的节点N13,不能作为最优调度路径。
执行以上确定以各起止节点为出发点和结束点,包括各级节点且每一级节点有且仅有一个的闭合路径之后,还需要对各闭合路径中各路段的信息素值进行更新,更新方法如下:
对于闭合路径N01→N11→N21→N01:N01→N11路段的信息素更新为1+1÷82=1.015625,N11→N21路段的信息素更新为1+1÷62=1.027778,N21→N01路段的信息素更新为1+1÷102=1.01。
对于闭合路径N12→N21→N01→N12,N12→N21路段的信息素更新为1+1÷62=1.027778,N21→N01路段的信息素更新为1.01+1.01÷102=1.0201,N01→N12路段的信息素更新为1+1÷92=1.012346。
闭合路径N13→N21→N01→N13不能作为最优路径,也可以不参与信息素更新计算。
至此,一轮循环迭代结束。其它各轮循环的原理与第一轮循环的原理相同,不再赘述。之后,可以将比较多轮循环中确定的所有闭合路径中的距离最短的闭合路径,假设为N01→N11→N21→N01,则可以根据该闭合路径确定从N01到N21的最优调度路径,即N01→N11→N21,N21→N01不能作为调度路径,这主要是因为此路段是为了实现蚁群算法而虚拟出的路段,实际上并不存在从N01到N21的直达路径。
步骤202的实现原理:
步骤202中,在调度子系统的起始级节点有待调度任务,并确定了从该起始级节点到终结级节点的最优调度路径后,可以将所述最优调度路径作为所述待调度任务的最优调度路径,并将待调度任务信息(包括待调度任务标识)及其最优调度路径信息添加到任务调度表中。将待调度任务信息及其最优调度路径信息添加到任务调度表中,使得该待调度任务的最优调度路径中的各中间节点可以基于添加到任务调度表中的该信息执行该待调度任务,同时,还可以使其它调度子系统在确定最优调度路径时可以及时获知各中间节点的当前调度任务量。
在实际应用中,待调度任务的最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务时,调度系统不同具体的实现过程也不相同,属于具体实现的问题。
例如在自动化分拣场地中,作为起始级节点的格口执行待调度任务时,实际上就是将目的地相同的多个包裹装入同一编织袋并标注待调度任务信息(包括待调度任务标识),之后可以请求AGV将编织袋运输到该待调度任务的最优调度路径中的下一节点;最优调度路径中的各级中间节点(即各级打包台),则会对AGV运输过来的装满包裹的编织袋执行打标签等操作(不同级别的打包台执行的操作可以相同或不同,由具体实现决定),并根据编织袋上标注的待调度任务信息在任务调度表中找到对应的最优调度路径,从而确定最优调度路径中的下一节点,然后继续请求AGV将编织袋运输到最优调度路径中的下一节点;编织袋通过各级节点的处理最终被运输到终结级节点(即发货口),而终结级节点将AGV运输来的编织袋按照待调度任务信息装箱发货即可。
在上述各级中间节点请求AGV将编织袋运输到最优调度路径中的下一节点时,还可以对任务调度表中待调度任务信息及其最优调度路径进行更新,例如,将最优调度路径中的上一节点从最优调度路径中删除,从而使得该上一节点当前的调度任务量也相应减少,从而可以最大限度的承载待调度任务,避免资源浪费。
以上对本发明实施例多级调度方法进行了详细说明,本发明还提供了一种多级调度装置,以下结合图3进行详细说明:
参见图3,图3是一种多级调度装置的结构示意图,该装置应用于调度系统中的任一调度子系统,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点;该装置具体应用于所述任一调度子系统的起始级节点,包括:
决策单元301,用于当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;
调度单元302,将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务;
其中,所述调度系统中的其它调度子系统与所述任一调度子系统具有不同的起始级节点、相同的N级中间节点、以及相同或不同的终结级节点;所述调度系统中的所有调度子系统共用所述任务调度表。
图3所示装置还包括计算单元303;
所述计算单元303,用于预先计算所述起始级节点与所述终结级节点之间的路段距离,以及所述任一调度子系统中级数相邻的任意两个节点之间的路段距离,并对每个路段进行信息素初始化配置;
所述决策单元301,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径,包括:
循环执行以下操作直至循环次数达到预设循环次数T:从所述任一调度子系统中随机选出M个节点作为起止节点;针对选出的每个起止节点,基于所述任一调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径,且该闭合路径中的每个中间节点当前的调度任务量不超过预设任务量阈值;更新确定的M个闭合路径中每个路段的信息素;
确定T次循环中确定的距离最短的闭合路径,根据该闭合路径确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径。
图3所示装置中,
所述决策单元301,基于所述调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径时,用于:
将该起止节点作为当前节点,并循环执行以下操作:确定可作为当前节点在闭合路径中的下一节点的所有备选节点,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点,如果该备选节点是该起止节点,则结束循环,否则,将当前节点在闭合路径的下一节点作为当前节点,再次执行本循环。
图3所示装置中,
所述决策单元301,确定可作为当前节点在闭合路径中的下一节点的所有备选节点时,用于:
如果当前节点为所述起始级节点,则将所述N级中间节点中的所有第一级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点所述终结级节点,则将所述起始级级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点是中间节点,则若当前节点是第N级中间节点,则将所述终结级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点,若当前节点是第i级中间节点且i小于N,则将所述N级中间节点中的所有第i+1级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点。
图3所示装置中,
所述决策单元301,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点时,用于:
计算当前节点与所有备选节点之间的路段的信息素总和,选择一个介于0到该信息素总和之间的信息素值,并从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,如果当前节点与该备选节点之间的路段的信息素大于该信息素值,则将该备选节点作为当前节点在闭合路径中的下一节点,否则,在所有备选节点中随机选择一个当前的调度任务量小于预设任务量阈值的备选节点,将随机选择的备选节点作为当前节点在闭合路径中的下一节点。
图3所示装置中,
所述决策单元301,确定一备选节点当前的调度任务量时,用于:在所述调度任务表中查找确定最优调度路径中包含该备选节点的待调度任务个数,将查找确定的待调度任务个数确定为该备选节点当前的调度任务量。
图3所示装置中,
所述决策单元301,更新确定的M个闭合路径中每个路段的信息素时,用于:
对于每一闭合路径中的每个路段,将该路段当前的信息素除以该路段的距离的平方得到一个商值,将该路段当前的信息素增加该商值。
本发明实施例还提供了一种电子设备,如图4所示,该电子设备包括:至少一个处理器401,以及与所述至少一个处理器401通过总线相连的存储器402;所述存储器402存储有可被所述至少一个处理器401执行的一个或多个计算机程序;所述至少一个处理器401执行所述一个或多个计算机程序时实现如图2所示的多级调度方法中的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现如图2所示的多级调度方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (16)

1.一种多级调度方法,应用于调度系统中的任一调度子系统,其特征在于,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点;该方法包括:
当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;
将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务;
其中,所述调度系统中的其它调度子系统与所述任一调度子系统具有不同的起始级节点、相同的N级中间节点、以及相同或不同的终结级节点;所述调度系统中的所有调度子系统共用所述任务调度表。
2.根据权利要求1所述的方法,其特征在于,
预先计算所述起始级节点与所述终结级节点之间的路段距离,以及所述任一调度子系统中级数相邻的任意两个节点之间的路段距离,并对每个路段进行信息素初始化配置;
根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径,包括:
循环执行以下操作直至循环次数达到预设循环次数T:从所述任一调度子系统中随机选出M个节点作为起止节点;针对选出的每个起止节点,基于所述任一调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径,且该闭合路径中的每个中间节点当前的调度任务量不超过预设任务量阈值;更新确定的M个闭合路径中每个路段的信息素;
确定T次循环中确定的距离最短的闭合路径,根据该闭合路径确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径。
3.根据权利要求2所述的方法,其特征在于,
基于所述调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径的方法为:
将该起止节点作为当前节点,并循环执行以下操作:确定可作为当前节点在闭合路径中的下一节点的所有备选节点,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点,如果该备选节点是该起止节点,则结束循环,否则,将当前节点在闭合路径的下一节点作为当前节点,再次执行本循环。
4.根据权利要求3所述的方法,其特征在于,
确定可作为当前节点在闭合路径中的下一节点的所有备选节点的方法为:
如果当前节点为所述起始级节点,则将所述N级中间节点中的所有第一级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点所述终结级节点,则将所述起始级级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点是中间节点,则若当前节点是第N级中间节点,则将所述终结级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点,若当前节点是第i级中间节点且i小于N,则将所述N级中间节点中的所有第i+1级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点。
5.根据权利要求3所述的方法,其特征在于,
根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点的方法为:
计算当前节点与所有备选节点之间的路段的信息素总和,选择一个介于0到该信息素总和之间的信息素值,并从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,如果当前节点与该备选节点之间的路段的信息素大于该信息素值,则将该备选节点作为当前节点在闭合路径中的下一节点,否则,在所有备选节点中随机选择一个当前的调度任务量小于预设任务量阈值的备选节点,将随机选择的备选节点作为当前节点在闭合路径中的下一节点。
6.根据权利要求5的方法,其特征在于,
确定一备选节点当前的调度任务量的方法为:在所述调度任务表中查找确定最优调度路径中包含该备选节点的待调度任务个数,将查找确定的待调度任务个数确定为该备选节点当前的调度任务量。
7.根据权利要求2所述的方法,其特征在于,
更新确定的M个闭合路径中每个路段的信息素的方法为:
对于每一闭合路径中的每个路段,将该路段当前的信息素除以该路段的距离的平方得到一个商值,将该路段当前的信息素增加该商值。
8.一种多级调度装置,应用于调度系统中的任一调度子系统,其特征在于,所述调度子系统中包括起始级节点、N级中间节点、和终结级节点;该方法包括:
决策单元,用于当所述起始级节点有待调度任务时,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径;
调度单元,将所述最优调度路径作为所述待调度任务的最优调度路径,将所述待调度任务及其最优调度路径信息添加到任务调度表,以使所述最优调度路径中的各级节点基于所述任务调度表中的所述待调度任务的最优调度路径信息执行所述待调度任务;
其中,所述调度系统中的其它调度子系统与所述任一调度子系统具有不同的起始级节点、相同的N级中间节点、以及相同或不同的终结级节点;所述调度系统中的所有调度子系统共用所述任务调度表。
9.根据权利要求8所述的装置,其特征在于,该装置还包括计算单元;
所述计算单元,用于预先计算所述起始级节点与所述终结级节点之间的路段距离,以及所述任一调度子系统中级数相邻的任意两个节点之间的路段距离,并对每个路段进行信息素初始化配置;
所述决策单元,根据N级中间节点中各中间节点当前的调度任务量和蚁群算法原理,确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径,包括:
循环执行以下操作直至循环次数达到预设循环次数T:从所述任一调度子系统中随机选出M个节点作为起止节点;针对选出的每个起止节点,基于所述任一调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径,且该闭合路径中的每个中间节点当前的调度任务量不超过预设任务量阈值;更新确定的M个闭合路径中每个路段的信息素;
确定T次循环中确定的距离最短的闭合路径,根据该闭合路径确定从所述起始级节点出发并经由各级中间节点到达所述终结级节点的最优调度路径。
10.根据权利要求9所述的装置,其特征在于,
所述决策单元,基于所述调度子系统中各路段当前的信息素,确定以该起止节点为出发点和结束点、包括各级节点且每一级节点有且仅有一个的闭合路径时,用于:
将该起止节点作为当前节点,并循环执行以下操作:确定可作为当前节点在闭合路径中的下一节点的所有备选节点,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点,如果该备选节点是该起止节点,则结束循环,否则,将当前节点在闭合路径的下一节点作为当前节点,再次执行本循环。
11.根据权利要求10所述的装置,其特征在于,
所述决策单元,确定可作为当前节点在闭合路径中的下一节点的所有备选节点时,用于:
如果当前节点为所述起始级节点,则将所述N级中间节点中的所有第一级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点所述终结级节点,则将所述起始级级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点;
如果当前节点是中间节点,则若当前节点是第N级中间节点,则将所述终结级节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点,若当前节点是第i级中间节点且i小于N,则将所述N级中间节点中的所有第i+1级中间节点确定为可作为当前节点在闭合路径中的下一节点的所有备选节点。
12.根据权利要求10所述的装置,其特征在于,
所述决策单元,根据当前节点与所有备选节点之间的路段的信息素和轮盘算法,从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,将该备选节点作为当前节点的在闭合路径中的下一节点时,用于:
计算当前节点与所有备选节点之间的路段的信息素总和,选择一个介于0到该信息素总和之间的信息素值,并从所有备选节点中选择一个当前的调度任务量小于预设任务量阈值的备选节点,如果当前节点与该备选节点之间的路段的信息素大于该信息素值,则将该备选节点作为当前节点在闭合路径中的下一节点,否则,在所有备选节点中随机选择一个当前的调度任务量小于预设任务量阈值的备选节点,将随机选择的备选节点作为当前节点在闭合路径中的下一节点。
13.根据权利要求12的装置,其特征在于,
所述决策单元,确定一备选节点当前的调度任务量时,用于:在所述调度任务表中查找确定最优调度路径中包含该备选节点的待调度任务个数,将查找确定的待调度任务个数确定为该备选节点当前的调度任务量。
14.根据权利要求9所述的装置,其特征在于,
所述决策单元,更新确定的M个闭合路径中每个路段的信息素时,用于:
对于每一闭合路径中的每个路段,将该路段当前的信息素除以该路段的距离的平方得到一个商值,将该路段当前的信息素增加该商值。
15.一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;其特征在于,所述至少一个处理器执行所述一个或多个计算机程序时实现权利要求1-7任一权项所述的方法步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现权利要求1-7中任一项所述的方法。
CN201910211451.2A 2019-03-20 2019-03-20 一种多级调度方法和装置 Active CN111722596B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910211451.2A CN111722596B (zh) 2019-03-20 2019-03-20 一种多级调度方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910211451.2A CN111722596B (zh) 2019-03-20 2019-03-20 一种多级调度方法和装置

Publications (2)

Publication Number Publication Date
CN111722596A true CN111722596A (zh) 2020-09-29
CN111722596B CN111722596B (zh) 2023-03-10

Family

ID=72562406

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910211451.2A Active CN111722596B (zh) 2019-03-20 2019-03-20 一种多级调度方法和装置

Country Status (1)

Country Link
CN (1) CN111722596B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064612A1 (en) * 2005-09-19 2007-03-22 Sbc Knowledge Ventures L.P. Method and apparatus for selecting an optimal path from a path-starting node of a network to a path-ending node of the network
US20080244584A1 (en) * 2007-03-26 2008-10-02 Smith Gary S Task scheduling method
CN104331743A (zh) * 2014-10-11 2015-02-04 清华大学 一种基于多目标优化的电动车辆出行规划方法
CN105469201A (zh) * 2015-07-20 2016-04-06 浙江工业大学 一种物流配送中心作业任务处理与调度的方法
CN106095555A (zh) * 2016-06-17 2016-11-09 河海大学常州校区 基于蚁群算法的wsan中执行器任务调度方法
CN106951059A (zh) * 2017-03-28 2017-07-14 中国石油大学(华东) 基于dvs与改进蚁群算法的云数据中心节能方法
CN107220731A (zh) * 2017-05-23 2017-09-29 南京邮电大学 一种物流配送路径规划方法
CN107272679A (zh) * 2017-06-15 2017-10-20 东南大学 基于改进的蚁群算法的路径规划方法
CN107632584A (zh) * 2017-10-23 2018-01-26 上海木爷机器人技术有限公司 基于云端的机器人调度系统及方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064612A1 (en) * 2005-09-19 2007-03-22 Sbc Knowledge Ventures L.P. Method and apparatus for selecting an optimal path from a path-starting node of a network to a path-ending node of the network
US20080244584A1 (en) * 2007-03-26 2008-10-02 Smith Gary S Task scheduling method
CN104331743A (zh) * 2014-10-11 2015-02-04 清华大学 一种基于多目标优化的电动车辆出行规划方法
CN105469201A (zh) * 2015-07-20 2016-04-06 浙江工业大学 一种物流配送中心作业任务处理与调度的方法
CN106095555A (zh) * 2016-06-17 2016-11-09 河海大学常州校区 基于蚁群算法的wsan中执行器任务调度方法
CN106951059A (zh) * 2017-03-28 2017-07-14 中国石油大学(华东) 基于dvs与改进蚁群算法的云数据中心节能方法
CN107220731A (zh) * 2017-05-23 2017-09-29 南京邮电大学 一种物流配送路径规划方法
CN107272679A (zh) * 2017-06-15 2017-10-20 东南大学 基于改进的蚁群算法的路径规划方法
CN107632584A (zh) * 2017-10-23 2018-01-26 上海木爷机器人技术有限公司 基于云端的机器人调度系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
冯珊珊: "基于适应度与蚁群分散搜索的多机器人任务分配", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
魏东 等: "基于混合蚁群算法的网格任务调度", 《计算机工程》 *

Also Published As

Publication number Publication date
CN111722596B (zh) 2023-03-10

Similar Documents

Publication Publication Date Title
CN108629531B (zh) 货物运输方法和用于货物运输的装置
JP6650508B2 (ja) 倉庫管理システム及び倉庫管理方法
CN105354648A (zh) Agv调度管理的建模及其优化方法
CN105868190A (zh) 一种在etl中优化任务处理的方法及系统
Coltin et al. Scheduling for transfers in pickup and delivery problems with very large neighborhood search
CN113075927A (zh) 基于预约表的仓储潜伏式多agv路径规划方法
CN111768629B (zh) 车辆调度方法、装置和系统
CN112036756A (zh) 一种双负载多agv调度方法
Poppenborg et al. Online scheduling of flexible job-shops with blocking and transportation
CN108154262B (zh) 一种基于形式化方法的物流运输无人车多任务规划方法
CN109934388A (zh) 一种用于智能拣选优化系统
CN109978232A (zh) 一种用于agv小车路径优化算法
CN105808346B (zh) 一种任务调度方法与装置
CN105634974A (zh) 软件定义网络中的路由确定方法和装置
CN111722596B (zh) 一种多级调度方法和装置
CN112465180A (zh) 车辆路径规划方法和装置
CN112434875B (zh) 一种用于智能仓储的设备路径管理方法、系统和服务器
Ahmadi et al. Weight constrained path finding with bidirectional A
CN112862212B (zh) 基于改进麻雀搜索算法的多agv调度方法、装置及设备
WO2022068935A1 (zh) 一种电梯资源调度方法及装置
Badakhshian et al. Performance optimization of simultaneous machine and automated guided vehicle scheduling using fuzzy logic controller based genetic algorithm
CN111487962B (zh) 一种应用于仓储环境下多机器人路径快速规划方法
CN110568826B (zh) 基于不可控事件的自动制造系统最大许可行为控制方法
Cano et al. On the computation of the minimal siphons of S 4 PR nets from a generating family of siphons
CN113253692A (zh) Agv的巡游方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20210226

Address after: 100080 Beijing Haidian District, Suzhou Street, No. 20 Courtyard, No. 2 Building, 1st Floor

Applicant after: Beijing Jingbangda Trading Co.,Ltd.

Address before: 8 / F, 76 Zhichun Road, Haidian District, Beijing 100083

Applicant before: BEIJING JINGDONG SHANGKE INFORMATION TECHNOLOGY Co.,Ltd.

Applicant before: BEIJING JINGDONG CENTURY TRADING Co.,Ltd.

Effective date of registration: 20210226

Address after: 6 / F, 76 Zhichun Road, Haidian District, Beijing 100086

Applicant after: Beijing Jingdong Zhenshi Information Technology Co.,Ltd.

Address before: 100080 Beijing Haidian District, Suzhou Street, No. 20 Courtyard, No. 2 Building, 1st Floor

Applicant before: Beijing Jingbangda Trading Co.,Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant