CN109598401A - 车辆调度方法、装置、设备及其存储介质 - Google Patents
车辆调度方法、装置、设备及其存储介质 Download PDFInfo
- Publication number
- CN109598401A CN109598401A CN201811212628.2A CN201811212628A CN109598401A CN 109598401 A CN109598401 A CN 109598401A CN 201811212628 A CN201811212628 A CN 201811212628A CN 109598401 A CN109598401 A CN 109598401A
- Authority
- CN
- China
- Prior art keywords
- task
- vehicle
- vehicles
- tasks
- current
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012163 sequencing technique Methods 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 12
- 238000010276 construction Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000003672 processing method Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了车辆调度方法、装置、设备及其存储介质。该方法包括:获取待分配任务集合和待调度车辆集合的车辆数上限值;将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集;第一个任务波次被指派完成之后,将波次集合中每个其他任务波次通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。根据本申请实施例的技术方案,提高了车辆的利用率,实现了单元区域车辆资源的互通共享。
Description
技术领域
本申请一般涉及物流领域,尤其涉及车辆调度方法、装置、设备及其存储介质。
背景技术
物流领域中,物流中心根据用户要求对物品进行多重处理后,按时送到指定地点。基于物流配送需求产生的运输网络,错综复杂。
现有物流网络,大致可以分为干线网络和支线网络,干线网络由长途运输的线路构成,支线网络则由同城的运输线路构成。目前支线网络,运输时间短,发车频次多,灵活性较大。在支线网络中的车辆调度问题,主要为人工手动排班方式。在支线网络中,人为划分出单元区域,并以单元区域为单位分配单元区域内的支线运输任务。
单元区域的车辆存在不能互通,车辆利用率低的问题。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种车辆调度方法、装置、设备及存储介质来打破单元区域管理的管理模式,提升支线网络中车辆的使用率。
第一方面,本申请实施例提供了一种车辆调度方法,该方法包括:
获取待分配任务集合和待调度车辆集合的车辆数上限值;
将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集;
第一个任务波次被指派完成之后,将波次集合中每个其他任务波次通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。
第二方面,本申请实施例提供了一种车辆调度装置,该装置包括:
第一获取模块,用于获取待分配任务集合和待调度车辆集合的车辆数上限值;
任务排序模块,用于将待分配任务集合中的各个任务按照时间排序,得到包括至少一个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集;
第一任务指派模块,用于第一个任务波次被指派完成之后,将波次集合中每个其他任务波次通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现如本申请实施例描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序用于:
该计算机程序被处理器执行时实现如本申请实施例描述的方法。
本申请实施例提供的车辆调度的方案,通过将待分配任务按照时间排序处理,将指派问题转化为非时间窗的指派问题,并在完成第一任务波次后,利用匈牙利算法将相应波次任务指派给对应的车辆,从而实现自动化排班,节省了人力成本,提高了车辆的利用率,实现了单元区域车辆资源的互通共享。
进一步地,通过车辆类型的处理,进一步提高不同类型车辆的利用率。
进一步地,输出多种数据为调度管理平台提供了丰富的数据资源,便于调度管理的优化处理。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了本申请实施例提供的车辆调度方法的流程示意图;
图2示出了本申请又一实施例提供的车辆调度方法的流程示意图;
图3示出了本申请实施例中构建空驶距离矩阵方法的流程示意图;
图4示出了根据本申请一个实施例的车辆调度装置400的示例性结构框图;
图5示出了根据本申请一个实施例的车辆调度装置500的示例性结构框图;
图6示出了本申请实施例中构建空驶距离矩阵单元的示例性结构示意图;
图7示出了适于用来实现本申请实施例的计算机系统的示例性结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参考图1,图1示出了本申请实施例提供的车辆调度方法的流程示意图。
如图1所示,该方法包括:
步骤110,获取待分配任务集合和待调度车辆集合的车辆数上限值。
步骤120,将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集。
本申请实施例中,获取待分配任务集合和待调度车辆集合的上限值,并将待分配任务集合中的所有任务按照任务执行的时间排序,得到包括至少两个任务波次的波次集合。待分配任务集合是指所有待分配的任务,待调度车辆集合,是指所有可供调度的车辆,其上限值表示这些车辆的总数。任务波次,是指有待分配任务集合中对应同一时刻的至少一个任务构成的子集。例如存在多个任务,任务编号可以依次为1,2,3,4,5,其中任务编号为1,2,3的待分配任务的执行时间均为8∶35∶00,则称任务编号1,2,3的组合为一个任务波次。
本申请实施例中,通过将所有任务按照时间进行排序后,根据时间关系将待分配任务拆分成至少一个任务波次。同一个任务波次中的任务的执行时间重合,任务之间不能串联。这种将待分配任务按照执行时间划分为任务波次的处理方式,将任务分配的时间问题转换为任务集合的非时间窗指派问题,从而提高车辆调度算法的处理效率。
步骤130,第一个任务波次被指派完成之后,将波次集合中每个其他任务波次通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。
本申请实施例中,将所有任务按照执行时间(或称为开始时间)分成任务波次后,从第一个任务波次开始,将第一个任务波次中的各个任务分别指派给执行的车辆。在第一个任务波次执行过程中,判断第一任务波次的任务数目是否小于等于待调度车辆的车辆数目的上限值,根据判断的结果初始化当前车辆,当前车辆是指待调度车辆集合中用于执行当前任务波次的车辆。
从第二个任务波次开始,将第二个任务波次中的任务通过匈牙利算法指派给调度车辆集合中用于执行该任务波次的车辆。其中,匈牙利算法以每个任务波次中车辆的空驶距离最小化为目标函数来实现任务与车辆的指派问题。匈牙利算法是匈牙利数学家D.Koning关于矩阵中独立零元素定理提出的用于解决指派问题的优化方法,其主要依据是在代价矩阵的任意行或列加上或者减去一个常数不会改变最优分配方案。其可以将指派问题的复杂度从n!降低到n3并有步骤简单、快速有效等优点。
本申请实施例中,根据判断的结果初始化当前车辆,当前车辆是指待调度车辆集合中用于执行当前任务波次的车辆。然后通过构建其他任务波次与待调度车辆集合中用于执行其他任务波次的车辆的空驶距离矩阵,以空驶距离最小化为目标来将其他的任务波次中的每一个任务指派给待调度车辆中与之对应的车辆。
本申请实施例中通过匈牙利算法构建空驶距离矩阵的思想以将空驶距离最小化为目的来实现车辆任务的指派。通过将匈牙利算法应用于车辆调度领域,打破了单元区域的限定,实现了支线网络的车辆任务自动化匹配。
进一步地,请参考图2,图2示出了本申请又一实施例提供的车辆调度方法的流程示意图。
如图2所示,该方法包括:
步骤210,获取待分配任务集合和待调度车辆集合的车辆数上限值。
步骤220,将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集。
步骤230,判断第一个任务波次中第一个任务波次的任务数目是否小于等于待调度车辆集合的车辆数上限值。
步骤230a,如果第一个任务波次的任务数目小于等于待调度车辆集合的车辆数上限值,则初始化当前车辆的数目为任务数目,以及初始化当前车辆的出发位置和出发时间。
步骤230b,如果第一个任务波次的任务数目大于待调度车辆集合的车辆数上限值,则初始化当前车辆的数目为待调度车辆集合的车辆数上限值,以及初始化当前车辆的出发位置和出发时间。
步骤240,在初始化当前车辆的数目为任务数目之后,判断是否还存在未指派任务。
步骤250,如果存在未指派任务,即波次集合中其他任务波次,则通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。如果不存在未指派任务,则结束。
在本申请实施例中,利用匈牙利算法解决车辆指派任务问题,提高了支线网络中车辆资源的利用率。
请参考图3,图3示出了本申请实施例中构建空驶距离矩阵方法的流程示意图。
步骤310,根据其他任务波次的任务数目与当前车辆的车辆数目的比较结果,虚拟处理得到虚拟任务数目或虚拟车辆数目。
其中,步骤310,包括:
步骤310a,获取其他任务波次的出发时间和任务数目;
步骤310b,判断其他任务波次的任务数目是否等于当前车辆的车辆数目:
步骤310c,如果小于当前车辆的车辆数目,则虚拟任务数目,以使得虚拟任务数目和其他任务波次的任务数目之和与当前车辆的车辆数目一一对应;
步骤310d,如果大于当前车辆的车辆数目,则虚拟车辆数目,以使得虚拟任务数目和当前车辆的车辆数目之和与其他任务波次的任务数目一一对应。
步骤320,判断虚拟处理后的结果是否可以执行,以优化空驶距离矩阵。
其中,步骤320,还可以包括:
步骤320a,获取虚拟处理后的结果中第i个任务的出发时间。
步骤320b,判断待调度车辆集合中第j台车辆的当前任务的结束时间与该台车辆从当前位置到第i个任务的出发位置的空驶时间之和是否小于等于第i个任务的出发时间。
如果小于等于第i个任务的出发时间,则表示第i个任务可以被第j台车辆执行;
如果大于第i个任务的出发时间,则表示第i个任务不可以被第j台车辆执行,并将第j台车辆的空驶距离设置为预定值,其中,i的取值小于等于虚拟处理后的结果的任务数目,j的取值小于等于上限值。预定值,例如可以是很大的数值,或者用无穷大表示。
在上述实施例基础上,该方法还可以包括:
如果第i个任务不可以被第j台车辆执行,但被指派给第j台车辆,且当前车辆的车辆数目小于上限值,则用待调度车辆集合中新的车辆替换第j台车辆,用于执行第i个任务;
如果第i个任务不可以被第j台车辆执行,但被指派给第j台车辆,且当前车辆的车辆数目等于待调度车辆集合的上限值,则放弃第i个任务。
其中,本申请描述匈牙利算法模型可以归纳为公式(1):
(5)
在上述模型中出现的参数和决策变量如下:
j车辆的编号,j∈J,J表示车辆的集合;
w任务的编号,w∈W,W表示任务的集合;
其中,每个w任务可以是
t1表示第w个任务的开始时间,w∈W
t2表示第w个任务的结束时间(到达时间+卸货时间),w∈W
l1表示第w个任务的始发地点,w∈W
l2表示第w个任务的到达地点,w∈W
α表示车辆成本系数
β表示空驶距离的成本系数
p表示车辆行驶速度,可按照高峰期和非高峰期设置分段速度,p1表示高峰期速度,p2表示非高峰期的速度。
Num表示车辆的集合的上限值;
表示任务i的结束地点il2和任务s的起始地点sl1之间的距离。
其中,
Cj等于0表示j号车不使用;
Cj等于1表示j号车被使用;
良示j号车的第k个任务的任务编号;
xwj等于0表示第w个任务不分配给j号车;
xwj等于1表示第w个任务被分配给j号车;
当不限制车辆数目,且需要完成所有的待分配任务时,每个任务必须被指派且仅能指派给一个车辆,其约束条件可以如公式(3)的限制。
当限制车辆数目为某一固定值时,计算车辆最多可以完成的任务数目,同时任务之间串接的空驶距离的总和满足最小化的条件,其中,表示任务w要么被放弃,要么被指派且仅能指派给一个车辆。
上述实施例基础上,该方法还可以,在获取待分配任务集合和待调度车辆集合的上限值之前,进一步包括:
按照车辆的额定载重将车辆进行分类处理,得到第一类型的待调度车辆集合和第二类型的待调度车辆集合。
在第一类型的待调度车辆集合完成指派之后,将剩余的待分配任务指派给第二类型的待调度车辆集合。
上述实施例通过将车辆按照类型进行归类处理,提高了多种类型车辆的利用率。
上述实施例基础上,该方法还可以,在完成指派之后输出以下至少一者:待分配任务集合中的任务和待调度车辆集合中车辆的匹配关系、每台车辆的有效任务公里数目、空驶距离公里数目、完成任务的数目。
本申请上述实施例通过输出指派任务的结果和相关信息,丰富了数据接口,为调度管理平台提供了丰富的数据资源。
应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
进一步参考图4,图4示出了根据本申请一个实施例的车辆调度装置400的示例性结构框图。
如图4所示,该装置400包括:
第一获取模块410,用于获取待分配任务集合和待调度车辆集合的车辆数上限值。
任务排序模块420,用于将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集。
第一任务指派模块430,用于第一个任务波次被指派完成之后,将波次集合中每个其他任务波次通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。
本申请实施例中,获取待分配任务集合和待调度车辆集合的车辆数上限值,并将待分配任务集合中的所有任务按照任务执行的时间排序,得到至少一个任务波次。待分配任务集合是指所有待分配的任务,待调度车辆集合,是指所有可供调度的车辆,其上限值表示这些车辆的总数。任务波次,是指有待分配任务结合中对应同一时刻的至少一个任务构成的子集。例如存在多个任务,任务编号可以依次为1,2,3,4,5,其中任务编号为1,2,3的待分配任务的执行时间均为8∶35∶00,则称任务编号1,2,3的组合为一个任务波次。
本申请实施例中,通过将所有任务按照时间进行排序后,根据时间关系将待分配任务拆分成至少两个任务波次。同一个任务波次中的任务的执行时间重合,任务之间不能串联。这种将待分配任务按照执行时间划分为任务波次的处理方式,将任务分配的时间问题转换为任务集合的非时间窗指派问题,从而提高车辆调度算法的处理效率。
本申请实施例中,将所有任务按照执行时间(或称为开始时间)分成任务波次后,从第一个任务波次开始,将第一个任务波次中的各个任务分别指派给执行的车辆。在第一个任务波次执行过程中,判断第一任务波次的任务数目是否小于等于待调度车辆的车辆数目的上限值,根据判断的结果初始化当前车辆,当前车辆是指待调度车辆集合中用于执行当前任务波次的车辆。
从第二个任务波次开始,将第二个任务波次中的任务通过匈牙利算法指派给调度车辆集合中用于执行该任务波次的车辆。其中,匈牙利算法以每个任务波次中车辆的空驶距离最小化为目标函数来实现任务与车辆的指派问题。匈牙利算法是匈牙利数学家D.Koning根据矩阵中独立零元素定理提出的用于解决指派问题的优化方法。其主要依据是:在代价矩阵的任意行或列加上或者减去一个常数不会改变最优分配方案。其可以将指派问题的复杂度从n!降低到n3并有步骤简单、快速有效等优点。
本申请实施例中,根据判断的结果初始化当前车辆,当前车辆是指待调度车辆集合中用于执行当前的任务波次的车辆。然后通过构建其他的任务波次与待调度车辆集合中用于执行该任务波次的车辆的空驶距离矩阵,以空驶距离最小化为目标来将其他的任务波次中的每一个任务指派给待调度车辆中与之对应的车辆。
本申请实施例中通过匈牙利算法构建空驶距离矩阵的思想以将空驶距离最小化为目的来实现车辆任务的指派。通过应用匈牙利算法应用于车辆调度领域,打破了单元区域的限定,实现了支线网络的车辆任务自动化匹配。
进一步地,请参考图5,图5示出了本申请又一实施例提供的用于车辆调度装置的结构示意图。
如图5所示,该装置500包括:
第一获取模块510,用于获取待分配任务集合和待调度车辆集合的车辆数上限值。
任务排序模块520,用于将待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,任务波次是指由待分配任务集合中对应同一时刻的至少一个任务构成的子集。
第一判断模块530,用于判断第一个任务波次中第一个任务波次的任务数目是否小于等于待调度车辆集合的车辆数上限值。
第一初始化模块540,用于如果第一个任务波次的任务数目小于等于待调度车辆集合的车辆数上限值,则初始化当前车辆的数目为任务数目,以及初始化当前车辆的出发位置和出发时间;
第二初始化模块550,用于如果第一个任务波次的任务数目大于待调度车辆集合的车辆数上限值,则初始化当前车辆的数目为待调度车辆集合的车辆数上限值,以及初始化当前车辆的出发位置和出发时间。
任务判断单元560,用于在初始化当前车辆的数目为任务数目之后,判断是否还存在未指派任务。
第一任务指派模块570,用于如果存在未指派任务,即波次集合中其他任务波次,则通过匈牙利算法指派给待调度车辆集合中用于执行其他任务波次的车辆。例如可以是,用于通过构建其他的任务波次与待调度车辆集合中用于执行该任务波次的车辆的空驶距离矩阵,以空驶距离最小化为目标来将其他的任务波次中的每一个任务指派给待调度车辆中与之对应的车辆。
如果不存在未指派任务,则结束。
在本申请实施例中,利用匈牙利算法解决车辆指派任务问题,提高了支线网络中车辆资源的利用率。
请参考图6,图6示出了本申请实施例中构建空驶距离矩阵单元的结构示意图。
如图6所示,其包括:
虚拟子单元610,用于根据其他任务波次的任务数目与当前车辆的车辆数目的比较结果,虚拟处理得到虚拟任务数目或虚拟车辆数目。
其中,虚拟子单元610,还可以包括:
第一获取子单元610a,用于获取其他任务波次的出发时间和任务数目。
第三判断子单元610b,用于判断其他任务波次的任务数目是否等于当前车辆的车辆数目。
任务虚拟子单元610c,用于如果小于当前车辆的车辆数目,则虚拟任务数目,以使得虚拟任务数目和其他任务波次的任务数目之和与当前车辆的车辆数目一一对应;或者
车辆虚拟子单元610d,用于如果大于当前车辆的车辆数目,则虚拟车辆数目,以使得虚拟任务数目和当前车辆的车辆数目之和与其他任务波次的任务数目一一对应。
第二判断子单元620,用于判断虚拟处理后的结果是否可以执行,以优化空驶距离矩阵。
第二判断子单元620,还可以包括:
第二获取子单元620a,用于获取虚拟处理后的结果中第i个任务的出发时间。
第四判断子单元620b,用于判断待调度车辆集合中第j台车辆的当前任务的结束时间与该台车辆从当前位置到第i个任务的出发位置的空驶时间之和是否小于等于第i个任务的出发时间。
如果小于等于第i个任务的出发时间,则表示第i个任务可以被第j台车辆执行;
如果大于第i个任务的出发时间,则表示第i个任务不可以被第j台车辆执行,并将第j台车辆的空驶距离设置为预定值,其中,i的取值小于等于虚拟处理后的结果的任务数目,j的取值小于等于上限值。预定值,例如可以是很大的数值,或者用无穷大表示。
在上述实施例基础上,用于车辆调度的装置可以包括车辆替换模块,用于如果第i个任务不可以被第j台车辆执行,但被指派给第j台车辆,且当前车辆的车辆数目小于上限值,则用待调度车辆集合中新的车辆替换第j台车辆,用于执行第i个任务;
任务放弃模块,用于如果第i个任务不可以被第j台车辆执行,但被指派给第j台车辆,且当前车辆的车辆数目等于待调度车辆集合的上限值,则放弃第i个任务。
在上述实施例基础上,车辆调度装置还可以包括:
分类处理单元,用于按照车辆的额定载重将车辆进行分类处理,得到第一类型的待调度车辆集合和第二类型的待调度车辆集合;
第二任务指派单元,用于在第一类型的待调度车辆集合完成指派之后,将剩余的待分配任务指派给第二类型的待调度车辆集合。
在上述实施例基础上,车辆调度装置还可以包括:
输出模块,用于输出以下至少一者:待分配任务集合中的任务和待调度车辆集合中车辆的匹配关系、每台车辆的有效任务公里数目、空驶距离公里数目、完成任务的数目。
应当理解,装置400-600中记载的诸单元或模块与参考图1-3描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于装置400-600及其中包含的单元,在此不再赘述。装置400-600可以预先实现在电子设备的浏览器或其他安全应用中,也可以通过下载等方式而加载到电子设备的浏览器或其安全应用中。装置400-600中的相应单元可以与电子设备中的单元相互配合以实现本申请实施例的方案。
下面参考图7,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统700的结构示意图。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统500操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考图1-3描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,前述计算机程序包含用于执行图1-3的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一获取模块、任务排序模块以及第一任务指派模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,第一获取模块还可以被描述为“用于获取待分配任务集合和待调度车辆集合的上限值的模块”。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中前述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,前述程序被一个或者一个以上的处理器用来执行描述于本申请的车辆调度方法。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (22)
1.一种车辆调度方法,其特征在于,该方法包括:
获取待分配任务集合和待调度车辆集合的车辆数上限值;
将所述待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,所述任务波次是指由所述待分配任务集合中对应同一时刻的至少一个任务构成的子集;
第一个任务波次被指派完成之后,将所述波次集合中每个其他任务波次通过匈牙利算法指派给所述待调度车辆集合中用于执行所述其他任务波次的车辆。
2.根据权利要求1所述的方法,其特征在于,所述第一个任务波次被指派,包括:
判断所述第一个任务波次的任务数目是否小于等于所述车辆数上限值;
根据所述判断的结果初始化当前车辆,所述当前车辆是指所述待调度车辆集合中用于执行当前任务波次的可用车辆。
3.根据权利要求2所述的方法,其特征在于,根据所述判断的结果初始化当前车辆,包括:
如果所述第一个任务波次的任务数目小于等于所述车辆数上限值,则初始化当前车辆的数目为所述任务数目,以及初始化所述当前车辆的出发位置和出发时间;
如果所述第一个任务波次的任务数目大于所述车辆数上限值,则初始化所述当前车辆的数目为所述车辆数上限值,以及初始化所述当前车辆的出发位置和出发时间。
4.根据权利要求1-3任一项所述的方法,其特征在于,将所述波次集合中每个其他任务波次通过匈牙利算法指派给所述待调度车辆集合中用于执行该任务波次的车辆,包括:
通过构建所述其他任务波次与所述待调度车辆集合中用于执行该任务波次的车辆的空驶距离矩阵,以空驶距离最小化为目标来将所述其他任务波次中的每一个任务指派给所述待调度车辆中与之对应的车辆。
5.根据权利要求4所述的方法,其特征在于,所述构建所述其他任务波次与所述待调度车辆集合中用于执行该任务波次的车辆的空驶距离矩阵,包括:
根据所述其他任务波次的任务数目与所述当前车辆的车辆数目的比较结果,虚拟处理得到虚拟任务数目或虚拟车辆数目判断所述虚拟处理后的结果是否可以执行,以优化所述空驶距离矩阵。
6.根据权利要求5所述的方法,其特征在于,根据所述其他任务波次的任务数目与所述当前车辆的车辆数目的比较结果,虚拟处理得到虚拟任务数目或虚拟车辆数目,包括:
获取所述其他任务波次的出发时间和任务数目;
判断所述其他任务波次的任务数目是否等于所述当前车辆的车辆数目;
如果小于所述当前车辆的车辆数目,则虚拟任务数目,以使得所述虚拟任务数目和所述其他任务波次的任务数目之和与所述当前车辆的车辆数目一一对应;
如果大于所述当前车辆的车辆数目,则虚拟车辆数目,以使得所述虚拟任务数目和所述当前车辆的车辆数目之和与所述其他任务波次的任务数目一一对应。
7.根据权利要求5或6所述的方法,其特征在于,判断所述虚拟处理后的结果是否可以执行,包括:
获取所述虚拟处理后的结果中第i个任务的出发时间;
判断所述待调度车辆集合中第j台车辆的当前任务的结束时间与该台车辆从当前位置到所述第i个任务的出发位置的空驶时间之和是否小于等于所述第i个任务的出发时间;
如果小于等于所述第i个任务的出发时间,则表示所述第i个任务可以被所述第j台车辆执行;
如果大于所述第i个任务的出发时间,则表示所述第i个任务不可以被所述第j台车辆执行,并将所述第j台车辆的空驶距离设置为预定值,其中,i的取值小于等于所述虚拟处理后的结果的任务数目,j的取值小于等于所述上限值。
8.根据权利要求5或6所述的方法,其特征在于,该方法还包括:
如果所述第i个任务不可以被所述第j台车辆执行,但被指派给第j台车辆,且所述当前车辆的车辆数目小于所述上限值,则用所述待调度车辆集合中新的车辆替换所述第j台车辆,用于执行所述第i个任务;
如果所述第i个任务不可以被所述第j台车辆执行,但被指派给所述第j台车辆,且所述当前车辆的车辆数目等于所述上限值,则放弃所述第i个任务。
9.根据权利要求1所述的方法,其特征在于,在获取待分配任务集合和待调度车辆集合的车辆数上限值之前,该方法还包括:
按照车辆的额定载重将车辆进行分类处理,得到第一类型的待调度车辆集合和第二类型的待调度车辆集合;
在所述第一类型的待调度车辆集合完成指派之后,将剩余的所述待分配任务指派给第二类型的待调度车辆集合。
10.根据权利要求1所述的方法,其特征在于,该方法还包括:
输出以下至少一者:所述待分配任务集合中的任务和所述待调度车辆集合中车辆的匹配关系、每台车辆的有效任务公里数目、空驶距离公里数目、完成任务的数目。
11.一种车辆调度装置,其特征在于,该装置包括:
第一获取模块,用于获取待分配任务集合和待调度车辆集合的车辆数上限值;
任务排序模块,用于将所述待分配任务集合中的各个任务按照时间排序,得到包括至少两个任务波次的波次集合,所述任务波次是指由所述待分配任务集合中对应同一时刻的至少一个任务构成的子集;
第一任务指派模块,用于第一个任务波次被指派完成之后,将所述波次集合中每个其他任务波次通过匈牙利算法指派给所述待调度车辆集合中用于执行所述其他任务波次的车辆。
12.根据权利要求11所述的装置,其特征在于,所述第一任务指派模块,包括:
第一判断单元,用于判断所述第一个任务波次的任务数目是否小于等于所述车辆数上限值;
初始化单元,用于根据所述判断的结果初始化当前车辆,所述当前车辆是指所述待调度车辆集合中用于执行当前任务波次的可用车辆。
13.根据权利要求12所述的装置,其特征在于,所述初始化单元,包括:
第一初始化子单元,用于如果所述第一个任务波次的任务数目小于等于所述车辆数上限值,则初始化当前车辆的数目为所述任务数目,以及初始化所述当前车辆的出发位置和出发时间;
第二初始化子单元,用于如果所述第一个任务波次的任务数目大于所述车辆数上限值,则初始化所述当前车辆的数目为所述车辆数上限值,以及初始化所述当前车辆的出发位置和出发时间。
14.根据权利要求11-13任一项所述的装置,其特征在于,所述第一任务指派模块,还包括:
构建单元,用于通过构建所述其他任务波次与所述待调度车辆集合中用于执行该任务波次的车辆的空驶距离矩阵,以空驶距离最小化为目标来将所述其他任务波次中的每一个任务指派给所述待调度车辆中与之对应的车辆。
15.根据权利要求14所述的装置,其特征在于,所述构建单元,包括:
虚拟子单元,用于根据所述其他任务波次的任务数目与所述当前车辆的车辆数目的比较结果,虚拟处理得到虚拟任务数目或虚拟车辆数目;
第二判断子单元,用于判断所述虚拟处理后的结果是否可以执行,以优化所述空驶距离矩阵。
16.根据权利要求15所述的装置,其特征在于,所述虚拟子单元,包括:
第一获取子单元,用于获取所述其他任务波次的出发时间和任务数目;
第三判断子单元,用于判断所述其他任务波次的任务数目是否等于所述当前车辆的车辆数目;
任务虚拟子单元,用于如果小于所述当前车辆的车辆数目,则虚拟任务数目,以使得所述虚拟任务数目和所述其他任务波次的任务数目之和与所述当前车辆的车辆数目一一对应;
车辆虚拟子单元,用于如果大于所述当前车辆的车辆数目,则虚拟车辆数目,以使得所述虚拟任务数目和所述当前车辆的车辆数目之和与所述其他任务波次的任务数目一一对应。
17.根据权利要求15或16所述的装置,其特征在于,第二判断子单元,包括:
第二获取子单元,用于获取所述虚拟处理后的结果中第i个任务的出发时间;
第四判断子单元,用于判断所述待调度车辆集合中第j台车辆的当前任务的结束时间与该台车辆从当前位置到所述第i个任务的出发位置的空驶时间之和是否小于等于所述第i个任务的出发时间;
如果小于等于所述第i个任务的出发时间,则表示所述第i个任务可以被所述第j台车辆执行;
如果大于所述第i个任务的出发时间,则表示所述第i个任务不可以被所述第j台车辆执行,并将所述第j台车辆的空驶距离设置为预定值,其中,i的取值小于等于所述虚拟处理后的结果的任务数目,j的取值小于等于所述上限值。
18.根据权利要求15或16所述的装置,其特征在于,该装置还包括:
车辆替换模块,用于如果所述第i个任务不可以被所述第j台车辆执行,但被指派给第j台车辆,且所述当前车辆的车辆数目小于所述上限值,则用所述待调度车辆集合中新的车辆替换所述第j台车辆,用于执行所述第i个任务;
任务放弃模块,用于如果所述第i个任务不可以被所述第j台车辆执行,但被指派给所述第j台车辆,且所述当前车辆的车辆数目等于所述上限值,则放弃所述第i个任务。
19.根据权利要求11所述的装置,其特征在于,在所述第一获取模块之前,该装置还包括:
分类处理单元,用于按照车辆的额定载重将车辆进行分类处理,得到第一类型的待调度车辆集合和第二类型的待调度车辆集合;
第二任务指派单元,用于在所述第一类型的待调度车辆集合完成指派之后,将剩余的所述待分配任务指派给第二类型的待调度车辆集合。
20.根据权利要求11所述的装置,其特征在于,该装置还包括:
输出模块,用于输出以下至少一者:所述待分配任务集合中的任务和所述待调度车辆集合中车辆的匹配关系、每台车辆的有效任务公里数目、空驶距离公里数目、完成任务的数目。
21.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-10中任一所述的方法。
22.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序用于:
所述计算机程序被处理器执行时实现如权利要求1-10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811212628.2A CN109598401B (zh) | 2018-10-17 | 2018-10-17 | 车辆调度方法、装置、设备及其存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811212628.2A CN109598401B (zh) | 2018-10-17 | 2018-10-17 | 车辆调度方法、装置、设备及其存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109598401A true CN109598401A (zh) | 2019-04-09 |
CN109598401B CN109598401B (zh) | 2023-11-28 |
Family
ID=65957422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811212628.2A Active CN109598401B (zh) | 2018-10-17 | 2018-10-17 | 车辆调度方法、装置、设备及其存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109598401B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866629A (zh) * | 2019-09-20 | 2020-03-06 | 合肥工业大学 | 面向异构任务的车辆路径优化方法及装置 |
CN111081015A (zh) * | 2019-12-17 | 2020-04-28 | 深圳市锐明技术股份有限公司 | 一种出租车调度方法、装置、存储介质和智能终端 |
CN111144780A (zh) * | 2019-12-31 | 2020-05-12 | 中国联合网络通信集团有限公司 | 车辆调度方法、装置、设备以及存储介质 |
CN111487962A (zh) * | 2020-03-30 | 2020-08-04 | 北京化工大学 | 一种应用于仓储环境下多机器人路径快速规划方法 |
CN111738619A (zh) * | 2020-07-06 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN114613710A (zh) * | 2022-05-11 | 2022-06-10 | 弥费实业(上海)有限公司 | 基于完工时间的提前派车方法、系统及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104504453A (zh) * | 2014-11-20 | 2015-04-08 | 昆明理工大学 | 一种多目标优化的军事运输过程的优化调度方法 |
CN104537426A (zh) * | 2014-11-20 | 2015-04-22 | 昆明理工大学 | 一种快递送货过程的优化调度方法 |
CN106341787A (zh) * | 2015-07-15 | 2017-01-18 | 上海苏先信息技术有限公司 | 一种车辆预定分派系统及方法 |
CN107341553A (zh) * | 2017-05-26 | 2017-11-10 | 北京三快在线科技有限公司 | 一种车辆调度方法及装置,电子设备 |
-
2018
- 2018-10-17 CN CN201811212628.2A patent/CN109598401B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104504453A (zh) * | 2014-11-20 | 2015-04-08 | 昆明理工大学 | 一种多目标优化的军事运输过程的优化调度方法 |
CN104537426A (zh) * | 2014-11-20 | 2015-04-22 | 昆明理工大学 | 一种快递送货过程的优化调度方法 |
CN106341787A (zh) * | 2015-07-15 | 2017-01-18 | 上海苏先信息技术有限公司 | 一种车辆预定分派系统及方法 |
CN107341553A (zh) * | 2017-05-26 | 2017-11-10 | 北京三快在线科技有限公司 | 一种车辆调度方法及装置,电子设备 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866629A (zh) * | 2019-09-20 | 2020-03-06 | 合肥工业大学 | 面向异构任务的车辆路径优化方法及装置 |
CN110866629B (zh) * | 2019-09-20 | 2022-12-13 | 合肥工业大学 | 面向异构任务的车辆路径优化方法及装置 |
CN111081015A (zh) * | 2019-12-17 | 2020-04-28 | 深圳市锐明技术股份有限公司 | 一种出租车调度方法、装置、存储介质和智能终端 |
CN111144780A (zh) * | 2019-12-31 | 2020-05-12 | 中国联合网络通信集团有限公司 | 车辆调度方法、装置、设备以及存储介质 |
CN111144780B (zh) * | 2019-12-31 | 2022-05-03 | 中国联合网络通信集团有限公司 | 车辆调度方法、装置、设备以及存储介质 |
CN111487962A (zh) * | 2020-03-30 | 2020-08-04 | 北京化工大学 | 一种应用于仓储环境下多机器人路径快速规划方法 |
CN111738619A (zh) * | 2020-07-06 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN111738619B (zh) * | 2020-07-06 | 2023-11-07 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN114613710A (zh) * | 2022-05-11 | 2022-06-10 | 弥费实业(上海)有限公司 | 基于完工时间的提前派车方法、系统及计算机设备 |
CN114613710B (zh) * | 2022-05-11 | 2022-07-26 | 弥费实业(上海)有限公司 | 基于完工时间的提前派车方法、系统及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109598401B (zh) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109598401A (zh) | 车辆调度方法、装置、设备及其存储介质 | |
CN110712206B (zh) | 智能机器人的多任务分配方法、装置、设备及存储介质 | |
CN107038069B (zh) | Hadoop平台下动态标签匹配DLMS调度方法 | |
CN110413412B (zh) | 一种基于gpu集群资源分配的方法和装置 | |
CN104657214A (zh) | 一种基于多队列和多优先级的大数据任务管理系统和方法 | |
CN105491150A (zh) | 基于时间序列的负载均衡处理方法及系统 | |
CN110187958B (zh) | 一种任务处理方法、装置、系统、设备及存储介质 | |
CN111178686B (zh) | 一种网约车的分配方法、装置、电子设备及存储介质 | |
CN107092981B (zh) | 紧密衔接工序组优先加工的二车间综合调度方法 | |
CN105373426B (zh) | 一种基于Hadoop的车联网内存感知实时作业调度方法 | |
CN111860853B (zh) | 在线预测系统、设备、方法及电子设备 | |
CN104598298A (zh) | 基于虚拟机当前工作性质以及任务负载的虚拟机调度算法 | |
CN109799805B (zh) | 一种可靠性感知的高性能汽车电子调度算法 | |
CN113821308A (zh) | 片上系统、虚拟机任务处理方法及设备、存储介质 | |
US8281313B1 (en) | Scheduling computer processing jobs that have stages and precedence constraints among the stages | |
CN115619002A (zh) | 一种灵活动态混合关键系统调度方法 | |
CN111143210A (zh) | 一种测试任务调度方法和系统 | |
CN109189581B (zh) | 一种作业调度方法和装置 | |
CN109062683B (zh) | 主机资源分配的方法、装置及计算机可读存储介质 | |
CN112561330B (zh) | 一种调度指令的生成方法、装置、电子设备及介质 | |
CN111813541B (zh) | 一种任务调度方法、装置、介质和设备 | |
CN116430738B (zh) | 一种混合关键系统的自适应动态调度方法 | |
CN114035930B (zh) | 用于任务调度的方法及装置、电子设备、可读存储介质 | |
CN111796934B (zh) | 任务下发方法、装置、存储介质和电子设备 | |
CN114237866A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |