CN111815213A - 配送计划生成装置、系统、方法及计算机可读存储介质 - Google Patents
配送计划生成装置、系统、方法及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111815213A CN111815213A CN201910293994.3A CN201910293994A CN111815213A CN 111815213 A CN111815213 A CN 111815213A CN 201910293994 A CN201910293994 A CN 201910293994A CN 111815213 A CN111815213 A CN 111815213A
- Authority
- CN
- China
- Prior art keywords
- delivery
- task
- loading
- tasks
- loaded
- 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
Images
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/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Quality & Reliability (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了配送计划生成装置、系统、方法及计算机可读存储介质。该配送计划生成装置包括:存储多个配送任务、多个收纳箱以及多个配送车辆的信息的存储器;以及处理器,其针对多个配送任务中的多个第一配送任务,计算多个第一配送任务装载至多个收纳箱的装载姿势,根据装载有第一配送任务的收纳箱,生成每个收纳箱的第二配送任务;根据多个配送车辆,生成第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。本发明能够同时计算车辆路线问题以及货物装载姿势,可以提高配送计划的装载率并减少行驶距离。
Description
技术领域
本发明涉及车辆路线问题(VRP,Vehicle Routing Problem)技术领域,具体涉及配送车辆的配送计划生成装置、系统、方法及计算机可读存储介质。
背景技术
车辆路线问题(VRP)是指一定数量的客户,各自有不同数量的货物需求,配送中心向客户提供货物,由一个车队负责配送货物,组织适当的行车路线,目标是使得客户的需求得到满足,并能在一定的约束下,达到诸如路程最短、成本最小、耗费时间最少等目的。
目前有关车辆路线问题的求解方法,包括精确算法(exact algorithm)与启发式解法(heuristics),其中精密算法有分支界限法、分支切割法、集合涵盖法等;启发式解法有节约法、模拟退火法、确定性退火法、禁忌搜寻法、基因算法、神经网络、蚂蚁殖民算法、遗传算法(GA,Genetic Algorithm)等。在车辆配送计划的自动生成中,通常作为邻域搜索方法之一的大邻域搜索(LNS,Large Neighborhood Search)比较有效,使用LNS搜索针对车辆的最佳配送任务分配模式。关于搜索,通常是以接近最佳解的方式,将与最佳解的差(成本总和)数值化,逐步向削减成本的方向重复进行。
另外,向特定的容器,如收纳箱或配送车辆的车厢(载物台),进行货物装载时的装载姿势计算,可以作为用于寻找到使装载货物的容器的数量最小的装箱问题(binparking)来处理。这里,装载姿势是指货物在特定容积摆放姿态或码放姿态。关于装箱问题,基本上是NP难(NP-HARD)问题,现有技术提出了如贪婪算法、GA算法等各种近似法(算法)。在考虑了三维形状的情况下,利用三维装箱,在进一步考虑了货物的出入时机(timing)的情况下,可以利用与四维对应的相关算法。
发明内容
本发明的至少一个实施例提供了一种配送计划生成方法、装置及系统,用以同时计算车辆路线问题以及货物装载姿势,可以提高配送计划的装载率并减少行驶距离。
根据本发明的一个方面,至少一个实施例提供了一种配送计划生成装置,包括:
存储器,用于存储多个配送任务、多个收纳箱以及多个配送车辆的信息;
处理器,用于针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;以及
用于根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
根据本发明的另一方面,至少一个实施例提供了一种配送计划生成方法,包括:
获取多个配送任务、多个收纳箱以及多个配送车辆的信息;
针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;
根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
根据本发明的另一方面,至少一个实施例提供了一种配送计划生成系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的配送计划生成方法。
根据本发明的另一方面,至少一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的配送计划生成方法。
与现有技术相比,本发明实施例提供的配送计划生成方法、装置及系统,根据尺寸规格将较小的货物装入至收纳箱,并将收纳箱作为虚拟货物生成对应的配送任务,进而针对所有的配送任务,在生成配送计划时同时考虑VRP问题和装箱问题,可以提高配送计划的装载率并减少行驶距离。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的配送计划生成装置的一种结构示意图;
图2为本发明实施例提供的配送计划生成系统的一种整体结构框图;
图3为本发明实施例提供的配送计划生成方法的一种流程示意图;
图4为本发明实施例提供的配送计划生成方法的另一种流程示意图;
图5为本发明实施例提供的配送计划生成装置的另一种结构示意图;
图6为本发明实施例的配送计划生成方法的一个示例流程图;
图7为本发明实施例中的站点数据的一个示例图;
图8为本发明实施例中的车辆数据的一个示例图;
图9为本发明实施例中的收纳箱数据的一个示例图;
图10为本发明实施例中的配送任务数据的一个示例图;
图11为本发明实施例中的计算条件设定的一个示例图;
图12为本发明实施例中第一装载处理的一个流程示意图;
图13为本发明实施例中第二装载处理的一个流程示意图;
图14为本发明实施例中第二装载处理的另一流程示意图;
图15为本发明实施例中行程中的车辆装载率判断的一个流程示意图;
图16为本发明实施例中收纳箱混载的一个流程示意图;
图17A~17C为本发明实施例中生成的输出画面的一个示例图;
图18为本发明实施例的配送计划生成系统框图的另一种结构示意图;
图19为图18所示的另一种系统框图中的处理以及数据的连接关系的示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本发明的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本发明的范围和精神。另外,为了清楚和简洁,省略了对已知功能和构造的描述。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在通过配送车辆(如卡车)进行配送,尤其是在企业对企业(B2B)的干线运输中,车辆装载率的提高和行驶距离的减少成为最重要的课题。使用解决VRP问题的算法能够生成仅将行驶距离最佳化的计划。另外,使用解决装箱问题的算法也能够计算最佳的(接近实用化水平)的货物装载姿势。但是,在单独地计算上述问题的情况下,通常需要通过VRP针对车厢的容积取余量(margin),如果余量过多则会导致装载率下降,如果余量过少,则实际上有可能无法装载。因此,需要同时解决VRP问题和装箱问题,但是现有技术目前还不存在实用化水平的解决方案。因此,为了达到目标的装载率,现有技术通常需要通过手动作业来修改所生成的配送计划,导致制作配送计划的时间耗费较长。而在实际的配送中,需要在考虑货物装载姿势的基础上,可能需要把部分货物先装到收纳箱,从而需要分两个阶段装载到卡车的车厢中,因此依靠手动作业,难以实现高效的车辆路线问题和货物装载姿势的同时计算。
例如,在日本专利申请(特开平11-161697)中,公开了一种考虑了货物的可否堆叠以及装载率,将多个交付目的地的组合分配给配送车辆的方法。但是,该申请并未公开包括上述向收纳箱装载在内的两个阶段的装载。
本发明实施例提供了一种配送计划生成方法,在装箱问题中将尺寸规格较小的货物装入至收纳箱,在生成配送计划时同时考虑VRP问题和装箱问题,可以提高配送计划的装载率并减少行驶距离。
需要说明的是,本发明实施例中,每个配送任务的尺寸规格,通常是指该配送任务的配送对象(如货物)的尺寸规格。另外,为了简化描述,本文中所述的“将某个配送任务装载至收纳箱(或配送车辆)”,是指把某个配送任务的配送对象装载至收纳箱(或配送车辆)。
根据本发明的至少一个实施例,还提供了如图1所示配送计划生成装置10,包括:
存储器11,用于存储多个配送任务、多个收纳箱以及多个配送车辆的信息;
处理器12,用于针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;以及,根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到所分配的配送车辆的情况下,排除所述候选配送计划。
具体的,所述存储器11中还可以存储有可在所述处理器12上运行的程序。所述处理器12执行所述程序时可以实现上述的功能。
根据本发明至少一个实施例,所述处理器12,还用于在计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势之前,将所述多个配送任务中的尺寸规格与所述收纳箱进行比较,将能够装载至所述收纳箱的配送任务作为所述第一配送任务。
根据本发明至少一个实施例,所述处理器12,还用于将所述多个配送任务中除所述第一配送任务外的第三配送任务与所述第二配送任务合并,针对合并后的配送任务,生成所述候选配送计划。
根据本发明至少一个实施例,所述处理器12,还用于将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务归集到同一配送任务组中;针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
根据本发明至少一个实施例,所述处理器12,还用于在计算所述第一配送任务装载至所述多个收纳箱的装载姿势的过程中,将不可堆叠的第一配送任务的高度,设置为装载该第一配送任务的收纳箱的高度。
根据本发明至少一个实施例,所述处理器12,还用于在生成所述候选配送计划的过程中,将未分配的配送任务分配至一目标配送车辆时,判断在该配送任务装载到该目标配送车辆后,该目标配送车辆的装载率是否低于第一预设装载率;在该装载率低于第一预设装载率时,继续分配下一个未分配的配送任务;在该装载率不低于第一预设装载率时,计算分配到该目标配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到该目标配送车辆上的配送任务能否装载到该目标配送车辆,并在判断结果为否的情况下,排除所述候选配送计划。
根据本发明至少一个实施例,所述处理器12,还用于在计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势时:针对所述候选配送计划中的每一配送车辆,提取该配送车辆在站点间的配送顺序;将该配送车辆的车厢在纵深方向划分为多个子区域,并按照所述配送顺序的倒序方向,依次针对每个站点需要卸载的配送任务进行装载处理;在完成所有站点的装载处理后,得到分配到该配送车辆上的配送任务在该配送车辆中的装载姿势,并根据该配送车辆已装载配送任务的子区域的纵深长度的和值是否超出车厢长度,获得分配到该配送车辆的配送任务能否装载到该配送车辆的判断结果。
根据本发明至少一个实施例,所述处理器12,还用于在生成所述候选配送计划之后,提取所述候选配送计划中的各个配送车辆的行程,并判断每个行程中配送车辆在站点完成货物装载后的装载率是否均大于第二预设装载率,若否,则排除所述候选配送计划,并重新生成新的候选配送计划。
根据本发明至少一个实施例,所述处理器12,还用于在生成所述第二配送任务的候选配送计划之前,将所述收纳箱的装载率低于第三预设装载率,出发站点和目标站点均相同,且交货期限的差异不超出预设门限的多个收纳箱集中至同一收纳箱组;针对每个收纳箱组,提取该收纳箱组中各收纳箱的配送任务,重新计算提取的配送任务装载至收纳箱的装载姿势,并为重新装载的收纳箱生成第二配送任务。
图2给出了本发明实施例提供的配送计划生成系统的整体结构框图的一个示例。在图2中以计算机为例进行说明。计算机100由处理器(CPU)104、主存储装置105、二次存储装置106、主总线103、显卡107、网络接口卡(NIC)108(通过网线110连接至网络)、视频输出端口109构成。计算机100通过NIC 108能够与计算机外部进行数据输入输出,通过视频输出端口109能够向外部显示设备输出画面。在实际的结构中,除了图2所列的模块,还可以包含键盘、鼠标等输入装置。这里,主存储装置105具体可以是计算机的内存,二次存储装置106可以是计算机的硬盘(如机械硬盘HDD或固定硬盘SSD)。
二次存储装置106中存储有本发明实施例的运算处理的所需的各种输入数据和程序模块,如数据输入处理模块122,计算条件设定处理模块123,最佳解搜索处理模块124,货物装载处理模块125,配车计划输出处理模块126,站点数据模块142,车辆数据模块143,收纳箱数据模块144,配送任务数据模块145和道路信息数据151。在执行运算处理时,二次存储装置106的数据被主存储装置105内的输入输出/计算执行处理模块121适当地读入,并结合站点间距离数据模块141进行搜索处理,输出配送计划。
请参照图3,根据本发明实施例提供了一种配送计划生成方法,该方法可以输出利用多个配送车辆,巡回多个站点,进行配送任务的最佳顺序,如图3所示,该方法包括:
S31,获取多个配送任务、多个收纳箱以及多个配送车辆的信息。
这里,在S31中,获取需要配送的多个配送任务的信息,通常可以包括配送任务的起始站点、结束站点、交货期限、尺寸规格(如配送对象的长宽高和体积)、重量、是否可以堆叠等信息。具体的,在配送对象为内置于一包装箱中的货物时,该配送对象的尺寸规格可以采用该包装箱的尺寸规格。
在S31中还可以获取用于配送货物的配送车辆的信息,具体可以包括配送车辆的数量,每个配送车辆的车厢的尺寸规格(如长宽高和容积)以及车辆载重的上限值等信息,另外,还可以包括配送车辆的编号(车辆ID)、驾驶员、出发站点(即该配送车辆开始执行配送任务时的起始站点)、结束站点(即该配送车辆完成配送任务后需要返回的站点)、车辆的工作起始时刻和结束时刻等信息。
本发明实施例还引入了收纳箱,用于装载尺寸较小的货物,以减少配送计划的计算复杂度。具体的,收纳箱的信息可以包括收纳箱的尺寸规格,如长宽高、体积和容积等信息。这里,收纳箱的体积是指收纳箱的外框尺寸所占的空间大小,收纳箱的容积是指收纳箱的内部容纳空间的大小。由于收纳箱的箱体具有一定的厚度,因此收纳箱的体积大于收纳箱的容积。
为了简化计算,本文中所有尺寸规格(如体积/容积)都可以转换为长方体的长宽高的指标。在某些场景中,实际尺寸规格可能并非长方体形状,此时可以按照实际尺寸规格在三维方向的大小,将其转换为能够容纳该实际尺寸规格的最小长方体形状,进而得到其长方体的长宽高的指标。
需要指出的是,本发明实施例中的配送车辆和收纳箱均可以包括有多种不同规格,即可以包括有多种不同车厢尺寸和载重量的配送车辆,也可以包括有多种不同容积大小的收纳箱。本发明实施例对此不做具体限定。
S32,针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务。
这里,为了简化计算,本发明实施例将所述多个配送任务中可以装载至收纳箱的第一配送任务,装载到一个或多个收纳箱中,并计算第一配送任务在收纳箱中的装载姿势(摆放姿势),并为已装载有所述第一配送任务的收纳箱生成新的第二配送任务,具体的,第二配送任务的尺寸规格可以采用收纳箱的尺寸规格(如收纳箱的外框尺寸)。
另外,第二配送任务的起始站点、结束站点、交货期限、重量、是否可以堆叠等信息可以根据该收纳箱所装载的第一配送任务来确定。为简化计算,本发明实施例中,同一个收纳箱中仅装载起始站点和结束站点均相同的第一配送任务,并且同一个收纳箱中的所有配送任务的交货期限之间的差异最好在某个预设时间范围以内。此时,第二配送任务的起始站点、结束站点和交货期限可以根据该收纳箱中的任一个第一配送任务来设置,而该第二配送任务的重量则可以根据该收纳箱所装载的所有配送任务的总重量来确定。另外,该第二配送任务的是否可以堆叠则可以根据该收纳箱中每个配送任务的堆叠属性来设置,例如,在其中的任一配送任务为不可堆叠时,则该收纳箱的第二配送任务也设置为不可堆叠;在其中的所有配送任务均为可以堆叠时,则该收纳箱的第二配送任务可设置为可以堆叠。
此外,根据本发明的至少一个实施例,在上述S32中,可以将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务归集到同一配送任务组中;然后,针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
可以看出,在上述S32中,将多个第一配送任务装载至一个或多个收纳箱,然后为该收纳箱虚拟了一个第二配送任务。
另外,在将多个第一配送任务装载至收纳箱时,可以采用现有技术的各种装箱算法进行处理,本发明实施例对此不做具体限定。需要说明的是,在进行装箱计算时,可以考虑第一配送任务是否可以堆叠的属性进行装载计算,例如,在装载计算过程中,可以将不可堆叠的第一配送任务的高度,设置为装载该第一配送任务的收纳箱的高度,以避免发生对该第一配送任务的堆叠。
S33,根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
这里,在S33中,可以采用现有技术的各种VRP的求解算法来进行候选配送计划的搜索生成,并且在搜索生成候选配送计划的过程中,本发明实施例可以采用现有的装箱算法,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到各个配送车辆上的配送任务能否装载到对应的配送车辆上,如果存在任一配送任务不能装载到所分配到的配送车辆,则排除所述候选配送计划,并重新生成新的候选配送计划。
以上S33中,可以针对第二配送任务计算候选配送计划,进而计算分配到各个配送车辆上的第二配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的第二配送任务不能装载到所分配的配送车辆的情况下,排除所述候选配送计划。
具体的,在搜索生成所述候选配送计划的过程中,可以逐个进行配送任务的分配,直至完成所有配送任务的分配。考虑到在配送车辆剩余空间较大时,通常不存在无法装载当前分配的配送任务的问题,因此,为提高计算效率加快配送计划的生成,本发明实施例可以在将未分配的配送任务分配至一目标配送车辆时,判断在该配送任务装载到该目标配送车辆后,该目标配送车辆的装载率是否低于第一预设装载率。在该装载率低于第一预设装载率时,不执行配送任务能否装载到目标配送车辆的判断,而是直接继续分配下一个未分配的配送任务,并重复进行上述装载率的判断过程;而在该装载率不低于第一预设装载率时,则可以计算分配到该目标配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到该目标配送车辆上的配送任务能否装载到该目标配送车辆,并在判断结果为否的情况下,排除所述候选配送计划。
通过以上步骤,本发明实施例实现了将尺寸规格较小的第一配送任务装载到收纳箱,从而为同一收纳箱的第一配送任务虚拟一个新的第二配送任务,由此可以减少参与VRP计算和装箱计算的配送任务的数量,提高配送计划的生成效率。另外,由于同时考虑了车辆路线问题以及货物装载姿势,本发明实施例还可以提高配送计划的装载率并减少行驶距离。
此外,根据本发明的至少一个实施例,在上述S32的计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势之前,可以将所述多个配送任务中的尺寸规格与所述收纳箱进行比较,将能够装载至所述收纳箱的配送任务作为所述第一配送任务。另外,考虑到有多种不同规格的收纳箱时,一种较为简单的实现方式是以尺寸规格最小的收纳箱作为判断标准,将尺寸规格小于该最小的收纳箱的配送任务为第一配送任务。
装载到同一配送车辆的多个配送任务可能在不同的站点进行卸载,例如,如果在车厢中,配送在后的配送任务a的装载位置,位于配送在前的配送任务b的装载位置之前,在进行配送任务b的卸载时,通常需要先将配送任务a先从车厢中卸载,再卸载配送任务b,然后再把配送任务a重新装载到车厢,由此导致卸载效率低下。
为了提高卸载效率,根据本发明的至少一个实施例,在上述S33中,计算计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势时,可以针对所述候选配送计划中的每一配送车辆,提取该配送车辆在站点间的配送顺序;将该配送车辆的车厢在纵深方向划分为多个子区域,并按照所述配送顺序的倒序方向,依次针对每个站点需要卸载的配送任务进行装载处理,具体的,在每个站点的装载处理中,将该配送车辆需要在该站点卸载的货物,装入至该站点对应的子区域,其中,在该配送车辆需要在该站点卸载的货物能够装载至该子区域时,向该子容器追加该货物对应的配送任务;在不能装载至该子区域时,重复执行追加该站点对应的子区域,并向追加的子区域进行装载的过程,直至装载完成。在完成所有站点的装载处理后,得到分配到该配送车辆上的配送任务在该配送车辆中的装载姿势,并根据该配送车辆已装载配送任务的子区域的纵深长度的和值是否超出车厢长度,获得分配到该配送车辆的配送任务能否装载到该配送车辆的判断结果。
此外,根据本发明的至少一个实施例,生成所述候选配送计划之后,还可以提取所述候选配送计划中的各个配送车辆的行程,并判断每个行程中配送车辆在站点完成货物装载后的装载率是否均大于第二预设装载率,若否,则排除所述候选配送计划,并重新生成新的候选配送计划。通过上述处理,可以舍弃装载率过低的配送计划,保证所生成的配送计划具有期望的装载率。
此外,根据本发明的至少一个实施例,在上述S33之后,还可以按照预定的评价标准,生成所述候选配送计划的评价结果;进而根据所述候选配送计划的评价结果,将一个或多个候选配送计划作为最终配送计划进行输出。具体的,所述评价标准可以考虑各种与任务成本相关的因素,如配送车辆的行驶路线长度以及车辆装载率等,本发明实施例对此不做具体限定。
考虑到所述多个配送任务中还存在除第一配送任务外的第三配送任务,为了生成包括第三配送任务的候选配送计划,本发明实施例在上述S33中生成所述第二配送任务的候选配送计划之前,可以将所述多个配送任务中除所述第一配送任务外的第三配送任务与所述第二配送任务合并,然后,在上述S33中,针对合并后的配送任务,生成所述候选配送计划。为此,请参照图4,本发明实施例还提供了另一种配送计划生成方法,如图4所示,该方法包括:
S41,获取多个配送任务、多个收纳箱以及多个配送车辆的信息。
这里,上述S41与图1的S31相类似,为节约篇幅,此处不再赘述。
S42,针对所述多个配送任务中的尺寸规格小于收纳箱的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务,并与所述多个配送任务中除第一配送任务外的第三配送任务合并,得到合并后的第四配送任务。
这里,本发明实施例将多个需要配送的多个配送任务分成第一配送任务和第三配送任务,其中,第一配送任务的尺寸规格小于预定收纳箱,第二配送任务的尺寸规格不小于收纳箱。具体的,第一配送任务的尺寸规格小于收纳箱,是指第一配送任务的货物可以装入该预定收纳箱,而第二配送任务因体积限制因素无法装入该预定收纳箱。需要指出的是,本发明实施例可以根据需要来设置收纳箱可以装载的配送任务的尺寸,例如根据收纳箱的长宽高来设置配送任务的长宽高的上限,本发明实施例对此不做具体限定。
另外,考虑到有多种不同规格的收纳箱时,一种较为简单的实现方式是以尺寸规格最小的收纳箱作为上述预定收纳箱,尺寸规格小于该预定收纳箱的配送任务为第一配送任务,尺寸规格不小于该预定收纳箱的配送任务为第二配送任务。
此时,根据本发明的至少一个实施例,在上述S42中,可以将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务归集到同一配送任务组中;然后,针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
这里,为提高已装载有第一配送任务的收纳箱的装载率,进而提高配送车辆的装载率,可以将装载率低于某个预设装载率(假设为第三预设装载率),出发站点和目标站点均相同,且交货期限的差异不超出预设门限的收纳箱划分至同一收纳箱组;然后,针对每个收纳箱组,提取该收纳箱组中各收纳箱的配送任务,重新计算提取的配送任务装载至收纳箱的装载姿势,并为重新装载的收纳箱生成第二配送任务。具体的,将提取的配送任务进行装载时,可以采用这些配送任务之前装载的收纳箱进行装载,也可以采用上述收纳箱以外的新的收纳箱进行装载,本发明实施例对此不做具体限定。
在上述S42中,将第一配送任务装载至一个或多个收纳箱,然后将该收纳箱作为一个虚拟的第二配送任务,生成该第二配送任务及其相关属性(如配送任务的起始站点、结束站点、交货期限、尺寸规格(如配送对象的长宽高和体积)、重量、是否可以堆叠等信息)虚拟货物的配送任务,然后与第三配送任务进行合并,得到合并后的配送任务。为了便于描述,可以将上述合并后的配送任务称为第四配送任务,可见,第四配送任务包括第二配送任务和第三配送任务。
具体的,在将多个第一配送任务装载至收纳箱时,可以采用现有技术的各种装箱算法进行处理,本发明实施例对此不做具体限定。
S43,根据所述多个配送车辆,生成第四配送任务的配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
这里,在S43中,可以采用现有技术的各种VRP的求解算法来进行候选配送计划的搜索生成,并且在候选配送计划的生成过程中,每向当前的候选配送计划插入一个未分配的配送任务后,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并判断该候选配送计划中的配送任务能否装载到对应的配送车辆,如果任一配送任务不能装载到对应的配送车辆,则排除当前的候选配送计划,并重新生成新的候选配送计划。
通过以上步骤,本发明实施例能够实现针对包括第二配送任务和第三配送任务在内的配送任务的候选配送计划的生成,由于在候选配送计划生成过程中,同时考虑了VRP和装箱问题,因此本发明实施例可以提高配送计划的装载率并减少行驶距离。
基于以上方法,本发明实施例还提供了实施上述方法的装置。如图5所示,本发明实施例提供的一种配送计划生成装置50包括:
数据获取单元51,用于获取多个配送任务、多个收纳箱以及多个配送车辆的信息;
第一计算单元52,用于针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;
第二计算单元55,用于根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
此外,根据本发明的至少一个实施例,所述第一计算单元52,还用于在计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势之前,将所述多个配送任务中的尺寸规格与所述收纳箱进行比较,将能够装载至所述收纳箱的配送任务作为所述第一配送任务。
此外,根据本发明的至少一个实施例,所述第二计算单元55,还用于将所述多个配送任务中除所述第一配送任务外的第三配送任务与所述第二配送任务合并,针对合并后的配送任务,生成所述候选配送计划。
此外,根据本发明的至少一个实施例,所述第一计算单元52,还用于将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务归集到同一配送任务组中;针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
此外,根据本发明的至少一个实施例,所述第一计算单元52,还用于在计算所述第一配送任务装载至所述多个收纳箱的装载姿势的过程中,将不可堆叠的第一配送任务的高度,设置为装载该第一配送任务的收纳箱的高度。
此外,根据本发明的至少一个实施例,所述第二计算单元55,还用于在生成所述候选配送计划的过程中,将未分配的配送任务分配至一目标配送车辆时,判断在该配送任务装载到该目标配送车辆后,该目标配送车辆的装载率是否低于第一预设装载率;在该装载率低于第一预设装载率时,继续分配下一个未分配的配送任务;在该装载率不低于第一预设装载率时,计算分配到该目标配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到该目标配送车辆上的配送任务能否装载到该目标配送车辆,并在判断结果为否的情况下,排除所述候选配送计划。
此外,根据本发明的至少一个实施例,所述第二计算单元55,还用于在计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势时:针对所述候选配送计划中的每一配送车辆,提取该配送车辆在站点间的配送顺序;将该配送车辆的车厢在纵深方向划分为多个子区域,并按照所述配送顺序的倒序方向,依次针对每个站点需要卸载的配送任务进行装载处理;在完成所有站点的装载处理后,得到分配到该配送车辆上的配送任务在该配送车辆中的装载姿势,并根据该配送车辆已装载配送任务的子区域的纵深长度的和值是否超出车厢长度,获得分配到该配送车辆的配送任务能否装载到该配送车辆的判断结果。
此外,根据本发明的至少一个实施例,所述第二计算单元55,还用于在生成所述候选配送计划之后,提取所述候选配送计划中的各个配送车辆的行程,并判断每个行程中配送车辆在站点完成货物装载后的装载率是否均大于第二预设装载率,若否,则排除所述候选配送计划,并重新生成新的候选配送计划。
此外,根据本发明的至少一个实施例,所述第一计算单元52,还用于在生成每个收纳箱的第二配送任务之后,将装载率低于第三预设装载率,出发站点和目标站点均相同,且交货期限的差异不超出预设门限的收纳箱划分至同一收纳箱组;针对每个收纳箱组,提取该收纳箱组中各收纳箱的配送任务,重新计算提取的配送任务装载至收纳箱的装载姿势,并为重新装载的收纳箱生成第二配送任务。
根据本发明的至少一个实施例,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现上述任意一个方法实施例中所述的配送计划生成方法。
根据本发明的至少一个实施例,还提供了一种配送车辆的配送计划的生成系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任意一个方法实施例中的配送计划生成方法中。
接下来,将通过更为详细的示例,对本发明实施例的配送计划生成方法、装置及系统进行说明。
为帮助理解本发明实施例的以上方案,接下来通过若干示例的具体的流程,对本发明实施例的方法作更为具体的描述。
请参照图6,本发明实施例的配送车辆的配送计划生成方法的一个示例流程,其给出了步骤201至步骤203之间的具体处理步骤:
在执行主运算处理300之前,先通过数据读取处理210依次从相关模块中读入站点数据(master data)、车辆数据、收纳箱数据(pallet master)和配送任务数据。之后、作为主运算处理300的预处理而执行计算条件设定步骤220以及第一装载处理(即收纳箱装载计算230)。
在主运算处理300中,为得到最佳配送计划而在运算循环301中重复进行配送计划的制作,直到达到预定的运算处理次数的上限为止,然后将接近最佳解的计划作为运算处理的结果而输出配车计划202。在运算处理中,在向配送任务分配配送车辆时,可以使用“临近搜索”等配送计划制作算法,将各种组合的模式作为配送计划的候选而在各运算循环中生成一个(或多个)配送计划。
车辆装载姿势判定350中,通过在该候选配送计划302内的各站点中的配送任务的装载,来判定分配到配送车辆的配送任务能否装载到所分配的配送车辆的车厢(也可称为载物台)上。在判断结果为否时,排除该候选配送计划,并重新生成其他的候选配送计划302。
另一方面,在候选配送计划没有违反预设条件,或者在候选配送计划满足一定的预设条件时,可以实施总成本计算处理310。另外,在所生成的候选配送计划中,如果配送顺序不一致的配送任务的数量在某个预设数值以下、分配的配送车辆的台数为预先设定的数量以下,此时满足了使运算循环301中途结束的判定条件,因此可以在达到所述运算处理次数的上限之前退出运算循环301,并从到该处理为止的运算结果选择适当的候选配送计划并进行配车计划的输出处理202。
图7、图8、图9和图10表示通过数据读取处理210读入的数据形式的一个示例。其中,在图7所示的从站点数据模块142读入的站点数据中,指定站点名411、表示站点位置的纬度412/经度413、站点区域414、限定了接受配送任务的车辆类型限制415、站点营业开始时间416、营业结束时间417、卸载所需时间418等信息。
在图8所示的从车辆数据模块143读入的车辆数据中,指定唯一标识车辆的车辆ID431、车辆类型432、驾驶员(或连络目的地)433、车辆出发时的出发站点434和结束时的结束站点435、车辆的车厢形状436(具体可以采用宽(m)x纵深(m)x高(m)等进行表示)、车辆重量的上限值437(t或kg等)、车辆工作的起始时刻438、结束时刻439以及该车辆所管辖的区域440等信息。
在图9所示的从收纳箱数据模块144读入的收纳箱数据中,指定用于第一装载处理(即向收纳箱的装载)的收纳箱的形状。收纳箱形状有表示向收纳箱装载时的内侧形状的内框形状453、和向配送车辆装载时所采用的外框形状452这两种。另外,可否堆叠455为否的收纳箱表示在向配送车辆车厢装载时在该收纳箱的上下方向不可以有其他的货物/收纳箱,用于表示该收纳箱是否可以堆叠。另外,还可以包括空容器返回目的的455和折叠后形状457等数据。
在图10所示的从配送任务数据模块145读入的配送任务数据中,指定各个配送任务(如配送任务482/483等)要配送的日期471、成为配送源的出发地点472、成为配送目的地的到达地点473、在配送源取得货物的取货期限474、在配送目的地交货的交货期限475、配送任务的形状476、个数477以及重量478。另外,在对配送车辆的车辆类型有要求时,还可以指定所需的车辆类型限制478。另外,在对所装入的收纳箱的类型有限制时,还可以指定收纳箱限制480;以及,还可以指定该配送任务是否可以堆叠481。
图11的计算条件设定220是配送计划生成或装载计算所需的计算参数的设定项目491、在计算前能够每次作为输入数据的一部分而读取,也可以作为默认值492而在程序启动时读取或者也可以设定指定值493。在此,关于计算次数可以指定图6的重复循环301的重复次数,关于行驶速度可以指定配送车辆的计算上的行驶速度,关于收纳箱装载限制可以指定是否考虑后述的装载至同一收纳箱的配送任务的相关限制条件;关于收纳箱装载率限制条件和收纳箱混载条件可以用于后续的收纳箱装载时的判定条件。
关于第一装载处理,图12表示了在图6所示的收纳箱装载计算230的处理流程的细节。在收纳箱装载对象判定231中、对图10的配送任务数据模块145的配送任务的形状476和图9的收纳箱数据模块144的收纳箱数据的内框形状453进行比较,从而将配送任务分成能够装入收纳箱内的配送任务和不能装入收纳箱内的配送任务。不能装入收纳箱内的配送任务,因此不属于向收纳箱的装载对象,因此在本处理流程中被排除。在配送任务分类232中,参照图11的计算条件设定中的收纳箱装载限制,将配送任务分成为配送任务组。在图11所示的例子中,将图10的配送任务中具有同一OD(即同一出发地、目的地)、且同一交货期限的配送任务归集到同一配送任务组。接下来,针对每个配送任务组重复进行向收纳箱的装载处理(步骤233)。在装载计算中、需要根据收纳箱的内框形状,生成多个成为计算上配送任务的分配目的地的容器(步骤234)。在图9的例子中,参照收纳箱数据的内框形状453可以生成3个容器。接着,参照配送任务数据145的可否堆叠481,在不可堆叠的情况下,将配送任务的形状476的高度设为该配送任务装入的目标容器的高度(步骤235)。由此可以抑制在装载过程中避免在该配送任务上下方向装载别的配送任务。在向容器的装载的步骤236中,可以利用通常的解决装箱问题(bin parking)的求解器(solver)、库以及OSS。在该示例中,由于是三维装载,因此可以优先选择考虑三维加时间轴的四维装箱问题的算法。该装载处理的结果,输出针对特定容器考虑了配送任务的形状的装载姿势。
在该处理流程中,针对一个容器装载多个配送任务,判断是否还存在配送任务组中的未分配的配送任务(步骤237)、在有剩余的情况下,提取剩余的配送任务(238)、再次重复进行装载到容器的处理,直到没有未分配的配送任务为止。另外,现有技术中也存在能够一次处理装箱分配的算法,采用这种算法时,可以省略步骤237和238的处理。
在装载了所有配送任务组的配送任务后,进行在配送任务组中将配送任务与已装载的收纳箱相关联而集中处理(239)。通过上述处理,图10的配送任务按照每个该收纳箱而作为一个虚拟的配送任务而被集中,从而减少了后续需要向车辆装载的任务数量。在针对所有的配送组的装载处理结束后,整合收纳箱装载对象外的配送任务和所述虚拟的配送任务,由此,能够在包括第二装载处理的主运算处理300中,将上述虚拟的配送任务与其他配送任务进行同样地处理。
关于第二装载处理,图13表示主运算处理300的细节。首先,根据配送计划生成所需的上述输入数据和上述计算条件、利用配送计划生成引擎(VRP:Vehicle RoutingProblem)来生成候选配送计划(302)。关于VRP,通常为NP困难,可以使用通过重复计算来搜索最佳结果(=配送计划)的算法。
在配送计划搜索中,将未分配的配送任务按照适当的配送顺序插入到配送目的地的车辆(303)。接着,判定针对该车辆已分配的配送任务和此后要插入的配送任务的合计装载率(根据形状476来计算)是否为预定值以上的比例(例:75%)(304)。由于向容器的装载计算353通常需要花费较多计算时间的处理,因此通过加入阈值判定处理304,能够在明显可装载的情况下避免进行装载计算353,从而实现缩短计算时间的目的。当然,在计算机运算速度足够快等情况,计算时间不会成为问题的情形下,也可以不要执行该判定处理304。
对于在上述预定值以上的情况,确定成为装载计算对象的容器(该情况下作为插入对象的车辆的车厢)和装载的货物(已有配送任务+要插入的配送任务),并传递给成为第二装载主处理的装载计算360(305)。在装载计算360中,在每次制作容器时,从车辆数据模块143的的载物台形状436获取多个容器的形状(351)。接着,从成为装载计算的对象的配送任务数据模块145的配送任务数据中参照可否堆叠481,在不可堆叠的情况下,将该配送任务形状476的高度设定为容器的高度(352)。向容器的装载353与收纳箱装载一样,能够采用现有技术的装箱问题的算法。向容器的装载353处理的结果,能够将可否装载作为输出而获得,或者,将装载后的整体的货物装载姿势的纵深与车辆的车厢的纵深(容器长度)进行比较来进行是否较长的判定(354)。在货物装载姿势的纵深较长的情况下,由于货物超出了车厢,因此判断为不可装载。在不可装载的情况下,判定为配送计划生成处理中发生了违反限制条件(355),此时放弃该候选配送计划,然后再次进行候选配送计划的生成处理302。此时,不返回到配送计划候选生成处理302而通过追加配送计划生成的成本也能够获得同样的效果。当在可否装载354中判定为可装载的情况下,确定货物装载姿势并前进到配送计划生成(VRP)的成本计算310。
在将多个货物装载到配送车辆,并配送到多个配送目的地的运输方式中,如果不将在最后的配送目的地卸货的货物先装载,则在各配送目的地会发生额外的货物的装卸而导致卸载效率非常差。这是因为车厢通常只能从后面进行货物的装卸。另外,关于到达和离开仓库(配送的起点/终点)的情形,将从仓库出发并在配送完成后返回到仓库设为一个行程(one trip)。提高向配送车辆的货物的装载率,减少行程数量也是配送业务中重要的KPI之一。因此,在向卡车的装载计算360中,图14考虑了该配送顺序的装载的实施方法。
作为图14的实施前提,读入图11的计算条件设定,确认装载顺序限制是否有效。在进入图14的处理前,假设候选配送计划和对象车辆、以及成为装载计算的对象的容器装载的货物已经确定(305)。首先,提取包括了对象车辆的配送顺序和插入对象的配送任务的行程(361)。在从此开始的处理中,在该行程的最初的仓库的装载,以配送的倒序来装载货物。在进行倒序装载时,将车厢在纵深方向划分为多个子区域(子容器)。关于子区域的形状,可以从车辆数据模块143的载物台形状436获取宽和高,使用在该行程中装载的配送任务的纵深来生成(362)。在装载配送任务的货物时,如果货物可能旋转,则不仅可以使用纵深,还可以使用宽度和高度来生成子容器。
接着,按照该配送行程的配送站点的倒序重复,从车厢的里面开始装载(即按照先内后外的方式,从车厢的最深处向车厢入口的方向进行装载),重复向子容器进行装载(363)。针对上述生成的容器,提取在该配送站点要卸载的配送任务来进行装载(364)。在此,进行与图13的向容器的装载353同样的处理。获取装载结果,并进行可否装载可否的判定(365)。在不可装载的情况下,判断为无法向该子容器装载再进行装载,将该子容器设为已装载完,进行货物装载姿势的确定,并新追加子容器(366),再次进行向子容器的装载(364)。在能够装载的情况下,向该子容器追加该配送任务(367),在下一个循环中,进一步在配送站点进行向该子容器的装载。在所有的配送站点完成向子容器的装载后,进行图13的可否装载的判定处理354。在该情况下,当已装载的子容器的纵深长度的合计值超过了该卡车的载物台纵深的情况下,则判定为不可装载,否则可以判定为能够装载。
如上所述,各个行程的装载率是配送业务中重要的KPI之一。因此,对于配送计划,可能存在生成使行程的装载率满足预定值的要求。为此,在图13的主运算循环中装载处理354完成后,在配送计划成本计算310之前,还可以加入装载率是否满足预定值的判定(图15)。上述预定值可以由图11的计算条件设定处理模块146来设定。首先,从该车辆的配送计划候选提取所有的行程(371)、在各行程中,在仓库进行装载时,重复判定是否超过了预定的装载率(372,373)。在未超过预定的车辆装载率的情况下,在图13的主运算处理的配送计划候选生成302中重新生成新的候选配送计划(374)。
在第一装载处理中根据收纳箱装载限制在收纳箱上装载同一配送任务组的配送任务,但是,可能存在同一配送任务组中的配送任务较少的情形,由此导致该配送任务组对应的收纳箱中的货物较少的情形。在该情况下,收纳箱的容积浪费较多,车辆装载率也会下降,因此,本示例中还可以放松收纳箱装载的限制,通过在收纳箱中混载别的配送任务组的配送任务,则能够提高装载率。具体的,可以在图13的装载计算360中,在进行向车厢(容器)的装载353之前,再次执行图16所示的向收纳箱的装载处理来实现。首先,在第一装载处理中,以向收纳箱装载而整合为一个配送任务为对象,提取低于图11的计算条件146所示的收纳箱装载率条件(例:20%)的配送任务(381)。接着,从提取出的收纳箱中,以基于图11的收纳箱混载条件而可混载的收纳箱组进行分组(382)。基于此,以混载的收纳箱组重复进行第一装载处理(383)。一旦从该收纳箱组提取出所有的配送任务,与至此为止同样的方式来登记容器(385)。使用该配送任务组和上述容器来实施装载计算(386),与图12的处理239同样地再次将收纳箱中装载的配送任务与收纳箱关联,并确定货物装载姿势。因为所有收纳箱的货物装载姿势已决定,因此可以进入到后续的装载处理353。
在主运算循环300之后,输出配送计划202并进行显示等处理。要输出的配送计划可以不限于一个。通常,可以以运算的结果、总行驶距离、总配送时间、所需要的车辆台数、未分配的配送任务数、属性不一致(不符合要求)的配送任务数等多个方面来选择一个或多个优良的配送计划而分别进行输出。图17A~17C表示画面输出示例,其中,图17A由将每个配送车辆(如车辆611~613)的运行状态按照时间序列(如时间点621/661/622和623等)以甘特图的样式来显示的配送计划600,如配送计划中经过的站点、车辆移动状态和休息状态等(如631~637、641~648以及651~655)。图17B为针对某个车辆在地图上显示的配送路径711的示例,包括在配送计划中包含的配送站点(711/713/714/715等)和配送行程721。图17C为该配送路径的特定站点的货物的装载姿势800构成。
这里,图17中以车辆B2345的输出为例进行了说明。在配送计划600的显示上,车辆B2345(612)作为纵轴的标签来显示,右侧按照时间序列显示了具体的运行状态。配送计划600和配送路径700能够协作动作。例如,仅针对配送计划600的画面上指定的车辆在配送路径700上进行显示、在配送计划600中以横轴为时间轴而制定特定时刻661时,在配送路径700上显示该车辆的计划上的位置731等。当该车辆的运行状态为”移动”的情况下,为了在地图上确定车辆位置731,而在移动速度为恒定的情况下,将目的地和出发地间的路径进行细分,将从出发地起到达该时刻的地点设为显示表示位置即可。货物的装载姿势800显示该车辆在该位置处的车厢中的内容。图17C的例子为三维示例,其中,最外围的最大长方体811表示车厢,虚线构成的每个长方体821表示收纳箱,尺寸较大的配送任务的货物821可以直接装载在车厢内,尺寸较小的配送任务可以装入至收纳箱中。当然,也可以在不靠考虑高度的情况下采用二维的布局(layout)。在第一装载处理中,收纳箱中装载的货物装载姿势示例如图所示,则对于每个收纳箱用虚线框(当然也可以用其他颜色的线条)来显示收纳箱(821)。图17是通过画面进行输出的显示,当然本发明实施例还可以将同样的显示内容输出到PDF文件或纸质输出介质上。
接着,使用图18的框图来说明本发明实施例提供的配送计划生成系统的另一实施方式。图18是将图4中以单个计算机100替换为服务器/客户端结构,以1台服务器102和多台客户端计算机101/117的结构为例而表示的结构。服务器102和客户端101可以是与图4的计算机100基本相同的硬件结构。即,具有CPU104、主存储装置105、二次存储装置106、主总线103、显卡107、网络接口卡(NIC)、视频输出接口等。服务器102经由内网、因特网111与远程的客户端102协作,进行图6所示的运算处理以及输出处理。图19表示该另一实施方式的处理/数据的连接关系。客户端101首先为了与服务器102安全地连接,针对API 116进行ID/PW等中的认证处理,并以1:1的方式进行连接,并进入执行等待状态。此时,在服务器侧能够通过启动客户端101专用的进行动作的进程(process)或线程(thread),同时并行地处理来自多个客户端(例:客户端117)的执行请求。在输入数据读取210中,可以从客户端101读入站点数据模块142、车辆数据模块143、收纳箱数据模块144以及配送任务数据模块145的相关数据。如图17的示例类似,也可以从客户端101处仅读入配送任务数据模块145的数据,从服务器102读入站点数据模块142/车辆数据模块143/收纳箱数据模块144的数据。通常,站点信息和车辆信息发生变更的频率较少,因此作为主数据(master data)可以配置在服务器侧,可以有效降低数据输入处理模块122的负荷。数据通常以CSV、表形式、数据库的表等形式来保存。数据输入处理模块122的结果和配送任务数据模块145的数据经由网络111从服务器102的API接口116读入。之后,经由计算条件设定处理模块123生成输入API数据500。或者,如图17那样,也可以是数据输入处理模块122经由API接口116获得站点数据模块142的数据,采用从服务器102的API接口116读入的形式。即,相当于在数据输入处理模块122进行计算条件设定处理123的一部分。在计算条件设定处理模块123中,与货物装载处理模块125协作来执行第一装载处理,并生成收纳箱的货物装载姿势。关于站点间距离数据模块141,可以使用道路信息数据模块151和站点数据模块142的数据而在服务器102上生成。
需要说明的是,道路信息数据151可以通过经由NIC108从因特网等外部的地图信息提供服务112响应请求(on demand)来收集。之后,实施相当于主运算处理300的最佳解搜索处理124,与向车厢的货物装载处理模块125协作地生成的1个以上的输出API数据550,并经由API 116传递给客户端101。在配送计划输出处理模块126中,执行相当于图6的配送计划输出202的处理,如执行画面等结果输出。在客户端101输出的配送路径700中使用的地图,也可以经由NIC113,而从因特网等外部的地图信息提供服务112应请求地(ondemand)进行获取。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (20)
1.一种配送计划生成装置,其特征在于,包括:
存储器,用于存储多个配送任务、多个收纳箱以及多个配送车辆的信息;
处理器,用于针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;以及用于根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
2.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势之前,将所述多个配送任务中的尺寸规格与所述收纳箱进行比较,将能够装载至所述收纳箱的配送任务作为所述第一配送任务。
3.如权利要求2所述的配送计划生成装置,其特征在于,
所述处理器,还用于将所述多个配送任务中除所述第一配送任务外的第三配送任务与所述第二配送任务合并,针对合并后的配送任务,生成所述候选配送计划。
4.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务分配到同一配送任务组中;针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
5.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在计算所述第一配送任务装载至所述多个收纳箱的装载姿势的过程中,将不可堆叠的第一配送任务的高度,设置为装载该第一配送任务的收纳箱的高度。
6.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在生成所述候选配送计划的过程中,将未分配的配送任务分配至一目标配送车辆时,判断在该配送任务装载到该目标配送车辆后,该目标配送车辆的装载率是否低于第一预设装载率;在该装载率低于第一预设装载率时,继续分配下一个未分配的配送任务;在该装载率不低于第一预设装载率时,计算分配到该目标配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到该目标配送车辆上的配送任务能否装载到该目标配送车辆,并在判断结果为否的情况下,排除所述候选配送计划。
7.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势时:针对所述候选配送计划中的每一配送车辆,提取该配送车辆在站点间的配送顺序;将该配送车辆的车厢在纵深方向划分为多个子区域,并按照所述配送顺序的倒序方向,依次针对每个站点需要卸载的配送任务进行装载处理;在完成所有站点的装载处理后,得到分配到该配送车辆上的配送任务在该配送车辆中的装载姿势,并根据该配送车辆已装载配送任务的子区域的纵深长度的和值是否超出车厢长度,获得分配到该配送车辆的配送任务能否装载到该配送车辆的判断结果。
8.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在生成所述候选配送计划之后,提取所述候选配送计划中的各个配送车辆的行程,并判断每个行程中配送车辆在站点完成货物装载后的装载率是否均大于第二预设装载率,若否,则排除所述候选配送计划,并重新生成新的候选配送计划。
9.如权利要求1所述的配送计划生成装置,其特征在于,
所述处理器,还用于在生成所述第二配送任务的候选配送计划之前,将所述收纳箱的装载率低于第三预设装载率,出发站点和目标站点均相同,且交货期限的差异不超出预设门限的多个收纳箱集中至同一收纳箱组;针对每个收纳箱组,提取该收纳箱组中各收纳箱的配送任务,重新计算提取的配送任务装载至收纳箱的装载姿势,并为重新装载的收纳箱生成第二配送任务。
10.一种配送计划生成方法,其特征在于,包括:
获取多个配送任务、多个收纳箱以及多个配送车辆的信息;
针对所述多个配送任务中的多个第一配送任务,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,按照装载有所述第一配送任务的每个收纳箱,生成第二配送任务;
根据所述多个配送车辆,生成所述第二配送任务的候选配送计划,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,并在分配到配送车辆上的配送任务不能装载到该配送车辆的情况下,排除所述候选配送计划。
11.如权利要求10所述的方法,其特征在于,在计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势之前,将所述多个配送任务中的尺寸规格与所述收纳箱进行比较,将能够装载至所述收纳箱的配送任务作为所述第一配送任务。
12.如权利要求11所述的方法,其特征在于,所述生成所述第二配送任务的候选配送计划,包括:
将所述多个配送任务中除所述第一配送任务外的第三配送任务与所述第二配送任务合并,针对合并后的配送任务,生成所述候选配送计划。
13.如权利要求10所述的方法,其特征在于,计算所述多个第一配送任务装载至所述多个收纳箱的装载姿势,包括:
将所述多个第一配送任务中出发站点、目标站点和交货期限均相同的配送任务归集到同一配送任务组中;
针对每个配送任务组,基于同一收纳箱内仅能装载同一配送任务组的配送任务的限制条件,计算该配送任务组中的配送任务装入至所述收纳箱的装载姿势。
14.如权利要求10所述的方法,其特征在于,
在计算所述第一配送任务装载至所述多个收纳箱的装载姿势的过程中,将不可堆叠的第一配送任务的高度,设置为装载该第一配送任务的收纳箱的高度。
15.如权利要求10所述的方法,其特征在于,
在生成所述候选配送计划的过程中,将未分配的配送任务分配至一目标配送车辆时,判断在该配送任务装载到该目标配送车辆后,该目标配送车辆的装载率是否低于第一预设装载率;
在该装载率低于第一预设装载率时,继续分配下一个未分配的配送任务;
在该装载率不低于第一预设装载率时,计算分配到该目标配送车辆上的配送任务在该配送车辆中的装载姿势,并判断分配到该目标配送车辆上的配送任务能否装载到该目标配送车辆,并在判断结果为否的情况下,排除所述候选配送计划。
16.如权利要求10所述的方法,其特征在于,计算分配到各个配送车辆上的配送任务在该配送车辆中的装载姿势,包括:
针对所述候选配送计划中的每一配送车辆,提取该配送车辆在站点间的配送顺序;
将该配送车辆的车厢在纵深方向划分为多个子区域,并按照所述配送顺序的倒序方向,依次针对每个站点需要卸载的配送任务进行装载处理;
在完成所有站点的装载处理后,得到分配到该配送车辆上的配送任务在该配送车辆中的装载姿势,并根据该配送车辆已装载配送任务的子区域的纵深长度的和值是否超出车厢长度,获得分配到该配送车辆的配送任务能否装载到该配送车辆的判断结果。
17.如权利要求10所述的方法,其特征在于,在生成所述候选配送计划之后,所述方法还包括:
提取所述候选配送计划中的各个配送车辆的行程,并判断每个行程中配送车辆在站点完成货物装载后的装载率是否均大于第二预设装载率,若否,则排除所述候选配送计划,并重新生成新的候选配送计划。
18.如权利要求10所述的方法,其特征在于,在生成所述第二配送任务的候选配送计划之前,所述方法还包括:
将所述收纳箱的装载率低于第三预设装载率,出发站点和目标站点均相同,且交货期限的差异不超出预设门限的多个收纳箱集中至同一收纳箱组;
针对每个收纳箱组,提取该收纳箱组中各收纳箱的配送任务,重新计算提取的配送任务装载至收纳箱的装载姿势,并为重新装载的收纳箱生成第二配送任务。
19.一种配送计划生成系统,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求10至18中任一项所述方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求10至18中任一项所述方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910293994.3A CN111815213A (zh) | 2019-04-12 | 2019-04-12 | 配送计划生成装置、系统、方法及计算机可读存储介质 |
JP2020036138A JP6993449B2 (ja) | 2019-04-12 | 2020-03-03 | 配送計画生成装置、システム、方法及びコンピュータ読み取り可能な記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910293994.3A CN111815213A (zh) | 2019-04-12 | 2019-04-12 | 配送计划生成装置、系统、方法及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111815213A true CN111815213A (zh) | 2020-10-23 |
Family
ID=72831443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910293994.3A Pending CN111815213A (zh) | 2019-04-12 | 2019-04-12 | 配送计划生成装置、系统、方法及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6993449B2 (zh) |
CN (1) | CN111815213A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115258A (zh) * | 2021-11-18 | 2022-03-01 | 上海擎朗智能科技有限公司 | 移动设备的控制方法、装置及存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113313286A (zh) * | 2021-04-23 | 2021-08-27 | 北京国信云服科技有限公司 | 基于遗传算法的末端物流网点布局方法、装置、设备及介质 |
CN113256136A (zh) * | 2021-06-02 | 2021-08-13 | 深圳市海柔创新科技有限公司 | 任务分配方法、装置、设备及存储介质 |
CN115193753B (zh) * | 2022-07-26 | 2023-11-10 | 南京维拓科技股份有限公司 | 一种立库内智能匹配的拣货方法 |
JP7329119B1 (ja) * | 2022-11-02 | 2023-08-17 | 株式会社セブン&アイ・ホールディングス | 商品情報管理装置、商品情報管理方法及び商品情報管理プログラム |
CN115619198B (zh) * | 2022-11-28 | 2023-05-16 | 中国外运股份有限公司 | 库位移动规划方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4692876A (en) * | 1984-10-12 | 1987-09-08 | Hitachi, Ltd. | Automatic freight stacking system |
JP2004083233A (ja) * | 2002-08-28 | 2004-03-18 | Honda Express Co Ltd | 巡回集荷配送計画策定方法 |
US20060265234A1 (en) * | 2005-05-23 | 2006-11-23 | Oracle International Corporation | Mission-specific vehicle capacity constraints in transportation planning |
WO2016071595A1 (fr) * | 2014-11-07 | 2016-05-12 | Peugeot Citroen Automobiles Sa | Enjoliveur de roue de véhicule a ajourage a géométrie variable |
CN109345017A (zh) * | 2018-10-08 | 2019-02-15 | 南京航空航天大学 | 一种考虑装箱约束的车间物料配送优化方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4011970B2 (ja) | 2002-05-20 | 2007-11-21 | 大日本印刷株式会社 | 積載効率シミュレーションシステム |
JP4128827B2 (ja) | 2002-08-20 | 2008-07-30 | 川崎汽船株式会社 | 貨物積付計画装置 |
JP2006106920A (ja) | 2004-10-01 | 2006-04-20 | Koichi Urata | 鮮度保持が要求される商品の販売システム |
US8676549B2 (en) | 2009-09-29 | 2014-03-18 | The Procter & Gamble Company | Method of maximizing shipping efficiency of absorbent articles |
JP2016071595A (ja) | 2014-09-30 | 2016-05-09 | 三菱電機株式会社 | 集荷管理装置、集荷管理プログラムおよび集荷システム |
JP6473638B2 (ja) | 2015-03-05 | 2019-02-20 | スキューズ株式会社 | 仕分け装置、コンピュータプログラム、仕分け方法 |
JP6082074B1 (ja) | 2015-09-30 | 2017-02-15 | 大塚倉庫株式会社 | 配車方法及び配車システム |
WO2017068871A1 (ja) | 2015-10-21 | 2017-04-27 | ソニー株式会社 | 情報処理装置、情報処理方法及び輸送システム |
-
2019
- 2019-04-12 CN CN201910293994.3A patent/CN111815213A/zh active Pending
-
2020
- 2020-03-03 JP JP2020036138A patent/JP6993449B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4692876A (en) * | 1984-10-12 | 1987-09-08 | Hitachi, Ltd. | Automatic freight stacking system |
JP2004083233A (ja) * | 2002-08-28 | 2004-03-18 | Honda Express Co Ltd | 巡回集荷配送計画策定方法 |
US20060265234A1 (en) * | 2005-05-23 | 2006-11-23 | Oracle International Corporation | Mission-specific vehicle capacity constraints in transportation planning |
WO2016071595A1 (fr) * | 2014-11-07 | 2016-05-12 | Peugeot Citroen Automobiles Sa | Enjoliveur de roue de véhicule a ajourage a géométrie variable |
CN109345017A (zh) * | 2018-10-08 | 2019-02-15 | 南京航空航天大学 | 一种考虑装箱约束的车间物料配送优化方法 |
Non-Patent Citations (2)
Title |
---|
刘宁君等: "运输机群货物装载方案生成方法", 《北京航空航天大学学报》 * |
王涛等: "求解复杂集装箱装载问题的新方法", 《中国工程科学》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115258A (zh) * | 2021-11-18 | 2022-03-01 | 上海擎朗智能科技有限公司 | 移动设备的控制方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2020173789A (ja) | 2020-10-22 |
JP6993449B2 (ja) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111815213A (zh) | 配送计划生成装置、系统、方法及计算机可读存储介质 | |
JP6862589B2 (ja) | 配送車両の配送計画生成方法、装置およびシステム | |
CN106156961B (zh) | 一种车辆调度方法和装置 | |
CN108549978B (zh) | 一种调配安全货运车辆的方法及系统 | |
Fazi et al. | A variant of the split vehicle routing problem with simultaneous deliveries and pickups for inland container shipping in dry-port based systems | |
US20170262791A1 (en) | System and Method of Vessel Scheduling for Product Distribution | |
CN111768151A (zh) | 一种货物装车用车辆装载方法及系统 | |
CN113033866B (zh) | 一种紧急订单配送调度优化方法 | |
Rieck et al. | A new mixed integer linear model for a rich vehicle routing problem with docking constraints | |
Kang et al. | Development of a maritime transportation planning support system for car carriers based on genetic algorithm | |
CN111598341A (zh) | 一种基于物资配载和路径优化电力物资配送方法及系统 | |
CN114386652A (zh) | 一种自动化码头agv智能调度方法及系统 | |
Delgado-Ortegon | Models and algorithms for container vessel stowage optimization | |
CN115829451A (zh) | 物流路径规划方法、装置、计算机设备和存储介质 | |
CN111652551B (zh) | 货物运输装箱方法及装置 | |
CN112801336A (zh) | 一种组合拼载的货运调控方法 | |
Tschöke et al. | Container supply with multi-trailer trucks: parking strategies to speed up the gantry crane-based loading of freight trains in rail yards | |
KR20190137115A (ko) | 시뮬레이션 장치, 제어 장치 및 시뮬레이션 프로그램 | |
Lee | Real-life vehicle routing with non-standard constraints | |
Eliiyi et al. | Storage optimization for export containers in the port of izmir | |
Fazili | Physical internet, conventional, and hybrid logistic systems: An optimization based comparison | |
CN112418552B (zh) | 基于调度要求对货单与承运车辆进行优化调度的工作方法 | |
CN112862135A (zh) | 快件运输线路规划方法、装置、服务器及存储介质 | |
JP6879353B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN112623603B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201023 |
|
RJ01 | Rejection of invention patent application after publication |