CN115049342A - 货物的出库控制方法、装置和计算机可读存储介质 - Google Patents
货物的出库控制方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN115049342A CN115049342A CN202210809614.9A CN202210809614A CN115049342A CN 115049342 A CN115049342 A CN 115049342A CN 202210809614 A CN202210809614 A CN 202210809614A CN 115049342 A CN115049342 A CN 115049342A
- Authority
- CN
- China
- Prior art keywords
- order
- orders
- collection
- goods
- preset
- 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
-
- 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/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Warehouses Or Storage Devices (AREA)
Abstract
本公开涉及一种货物的出库控制方法、装置和计算机可读存储介质,涉及智慧物流、计算机技术领域。本公开的方法包括:根据订单池内的多个订单生成一个或多个路径集合订单根据一个或多个路径集合订单,生成拣货集合订单;根据拣货集合订单对货物进行拣选;根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口;根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
Description
技术领域
本公开涉及智慧物流、计算机技术领域,特别涉及一种货物的出库控制方法、装置和计算机可读存储介质。
背景技术
随着互联网技术和物流技术的发展,人们的生活越来越方便,可以做到足不出户购买商品。很多超市、门店提供配送服务,用户在网上下单,预约配送时间,等待配送人员送达。
门店内的生产模式包括:根据用户的订单进行拣货,对同一时段或波次内的订单全部拣货之后,统一进行打包,由配送人员按照各个用户的订单将货物分拣装袋后进行配送。
发明内容
发明人发现:分拣错误:由配送人员将货物按照订单进行分拣,完全靠货物名称识别,分拣易错,并且效率很低。
本公开所要解决的一个技术问题是:如何提高货物出库和配送的效率和准确率。
根据本公开的一些实施例,提供的一种货物的出库控制方法,包括:根据订单池内的多个订单生成一个或多个路径集合订单根据一个或多个路径集合订单,生成拣货集合订单;根据拣货集合订单对货物进行拣选;根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口;根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
在一些实施例中,根据一个或多个路径集合订单,生成拣货集合订单包括:在订单池中存在一个或多个待生产订单的情况下,根据一个或多个路径集合订单和一个或多个待生产订单,生成拣货集合订单,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到一个或多个路径集合订单中的订单。
在一些实施例中,根据一个或多个路径集合订单和一个或多个待生产订单,生成拣货集合订单包括:在一个或多个路径集合订单和一个或多个待生产订单的订单总量未到达预设生产量的情况下,根据订单池内剩余订单的最晚生产时间和货物种类,选取一个或多个订单作为预生产订单;根据一个或多个路径集合订单、一个或多个待生产订单和一个或多个预生产订单,生成拣货集合订单。
在一些实施例中,根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中包括:根据拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中,其中,货物的总体积小于或等于存储格口的容积的订单对应一个存储格口,货物的总体积大于存储格口的容积的订单对应多个存储格口。
在一些实施例中,存储格口分配策略包括:将同一路径集合订单中各个订单的货物分配到相邻的存储格口中的第一子策略,将配送地址位于同一预设区域内的订单的货物分配到预设区域对应的存储隔口中的第二子策略,以及第一子策略和第二子策略的优先级。
在一些实施例中,根据拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中包括:针对每个已拣选货物,确定该货物所属的订单,以及该货物所属的订单是否已分配存储格口;在该货物所属的订单未分配存储格口且第一子策略优先级高于第二子策略的情况下,确定该货物所属的路径集合订单中是否存在已分配存储格口的订单;在该货物所属的路径集合订单中存在已分配存储格口的订单的情况下,自动将货物存放至已分配存储格口的订单相邻的空闲存储格口中。
在一些实施例中,根据拣货集合订单对应的各个订单、各个订单中货物的数量、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中还包括:在该货物所属的订单已分配存储格口的情况下,确定该货物的体积是否小于或等于已分配的存储格口的剩余容积;在该货物的体积小于或等于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口中;在该货物的体积大于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口的相邻的空闲存储格口中。
在一些实施例中,该方法还包括:识别并筛选出已拣选的货物中的预设类别的货物;向分配人员发送指示信息,其中,指示信息包括:预设类别的货物对应的存储格口,以便分配人员将预设类别的货物存放至对应的存储格口。
在一些实施例中,根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务包括:针对每个路径集合订单,在该路径集合订单中存在未完成的订单的情况下,根据该路径集合单与拣货集合订单对应的各个订单重新生成集合订单,并将集合订单发送至一个配送人员进行配送;在该路径集合订单中不存在未完成的订单的情况下,将该路径集合订单发送至一个配送人员进行配送。
在一些实施例中,根据订单池内的多个订单生成一个或多个路径集合订单包括:以预设周期,利用订单池中的全部订单生成多个候选集合订单;在多个候选集合订单中的第i个候选集合订单不满足预设约束条件的情况下,将第i个候选集合订单中的全部订单移入订单池,1≤i≤N,N为候选集合订单总数;将满足预设约束条件的一个或多个候选集合订单作为一个或多个路径集合订单。
在一些实施例中,预设约束条件包括以下至少一项:第i个候选集合订单的最早生产时间大于当前时间和预设参数之和,其中最早生产时间为第i个候选集合订单中的各订单的生产时间中的最早时间;且第i个候选集合订单中的订单总数小于预设上限值;在将第i个候选集合订单分为预设类型订单集合和非预设类型订单集合的情况下,预设类型订单集合中的任一预设类型订单的配送时间大于非预设类型订单集合中的任一非预设类型订单的配送时间。
在一些实施例中,利用订单池中的全部订单生成多个候选集合订单包括:利用第一算法对订单池中的全部订单进行处理,以生成多个候选集合订单;其中,第一算法包括:从订单池中随机选择一个订单;在已有候选集合订单的情况下,若利用预设策略能够在已有候选集合订单中找到匹配位置,则将随机选择的订单插入匹配位置;若不能在已有候选集合订单中找到匹配位置,或者当前没有候选集合订单,则将随机选择的订单插入新的候选集合订单中;重复从订单池中随机选择一个订单,直到将订单池中没有订单为止。
在一些实施例中,利用订单池中的全部订单生成多个候选集合订单包括:利用第二算法对目标集合中的全部订单进行处理,以生成多个候选集合订单;其中,第二算法包括:按照预设规则将订单池的订单分为种子订单和非种子订单;从多个种子订单中随机选择一个种子订单作为基础订单;利用预设策略选择出能够与基础订单放置在同一集合订单中的种子订单和非种子订单,以生成集合订单;重复从多个种子订单中随机选择一个种子订单作为基础订单,直到多个种子订单处理完为止。
在一些实施例中,根据一个或多个路径集合订单,生成拣货集合订单包括:利用预设规则对待拣货订单池中的全部订单进行过滤处理,以得到多个候选订单,其中,待拣货订单池包括一个或多个路径集合订单包括的订单;利用多个候选订单进行层次聚类以构建聚类树对聚类树进行层次遍历,以便从聚类树中选择出满足预设条件的目标节点;利用目标节点中包括的全部候选订单生成拣货集合订单。
在一些实施例中,对聚类树进行层次遍历包括:在层次遍历过程中,若聚类树的根节点满足预设条件,则将聚类树的根节点作为目标节点;若聚类树的根节点不满足预设条件,则分别将聚类树的根节点的每个子节点作为待处理节点;判断待处理节点是否满足预设条件;若待处理节点满足预设条件,则将待处理节点作为目标节点;若待处理节点不满足预设条件,则判断待处理节点是否有子节点;若待处理节点有子节点,则分别将待处理节点的每个子节点作为当前的待处理节点;重复判断当前的待处理节点是否满足预设条件。
在一些实施例中,预设条件包括以下条件中的至少一项:待处理节点包括的全部候选订单所对应的物品总数不超过第一门限;待处理节点包括的候选订单总数不超过第二门限;当前时间位于拣货集合订单下发时间区间内。
在一些实施例中,利用多个候选订单构建聚类树包括:生成与多个候选订单一一对应的多个集合订单,其中每个集合订单具有一个对应的候选订单;将多个集合订单放入聚类集合中;计算聚类集合中的每两个集合订单之间的距离;将具有最小距离的两个集合订单合并成一个新集合订单,新集合订单包括具有最小距离的两个集合订单所包括的全部候选订单;生成与新集合订单对应的节点;利用新集合订单替换具有最小距离的两个集合订单,以便对聚类集合进行更新;重复计算聚类集合中的每两个集合订单之间的距离,直到聚类集合中只有一个集合订单为止;利用生成的全部节点构建聚类树。
在一些实施例中,利用预设规则对待拣货订单池中的全部订单进行过滤处理包括:对全部订单进行过滤处理,以便从全部订单中获得用于生成集合订单的多个待处理订单;判断多个待处理订单中的每个待处理订单是否能在预定时间内完成处理;若每个待处理订单能在预定时间内完成处理,则将每个待处理订单作为候选订单。
在一些实施例中,待拣货订单池还包括:一个或多个待生产订单和一个或多个预生产订单中至少一项,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到一个或多个路径集合订单中的订单,每个预生产订单是根据订单池内剩余订单的最晚生产时间和货物种类选取的。
根据本公开的另一些实施例,提供的一种货物的出库控制装置,包括:路径集单模块,用于根据订单池内的多个订单生成一个或多个路径集合订单;拣货集单模块,用于根据一个或多个路径集合订单,生成拣货集合订单;拣选模块,用于根据拣货集合订单对货物进行拣选;分播模块,用于根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口;下发模块,用于根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
根据本公开的又一些实施例,提供的一种货物的出库控制装置,包括:处理器;以及耦接至处理器的存储器,用于存储指令,指令被处理器执行时,使处理器执行如前述任意实施例的货物的出库控制方法。
根据本公开的再一些实施例,提供的一种非瞬时性计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现任意实施例的货物的出库控制方法。
本公开中首先生成一个或多个路径集合订单,再根据路径集合订单生成拣货集合订单,根据拣货集合订单对货物进行拣选,对于已拣选的货物自动进行二次分拣,并分配至存储格口中,进而根据一个或多个路径集合订单向配送人员发送配送任务。根据拣货集合订单对应的各个订单和各个路径集合订单,对货物进行自动二次分拣,并分配存储格口,配送人员只需要到对应的格口获取需要配送的货物即可,不需要人工进行二次分拣,提高了货物出库和配送的效率和准确率。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开的一些实施例的货物的出库控制方法的流程示意图。
图2示出本公开的另一些实施例的货物的出库控制方法的流程示意图。
图3A和图3B为本公开一些实施例的候选集合订单示意图;
图4A和图4B为本公开另一些实施例的候选集合订单示意图;
图5为本公开一个实施例的集合订单距离计算示意图;
图6为本公开一个实施例的集合订单分布示意图;
图7为本公开一个实施例的聚类树示意图;
图8为本公开另一个实施例的聚类树示意图;
图9示出本公开的一些实施例的货物的出库控制装置的结构示意图。
图10示出本公开的另一些实施例的货物的出库控制装置的结构示意图。
图11示出本公开的又一些实施例的货物的出库控制装置的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开提供一种货物的出库控制方法,下面结合图1进行描述。
图1为本公开货物的出库控制方法一些实施例的流程图。如图1所示,该实施例的方法包括:步骤S102~S110。
在步骤S102中,根据订单池内的多个订单生成一个或多个路径集合订单。
用户下单后,每个订单会进入订单池,进一步下发生成。每个路径集合订单包括多个订单,针对每个路径集合订单生成对应一条规划路径,可以使配送人员在一次配送中按照规划路径完成各个订单的配送。后续实施例中将详细描述路径集合订单的生成过程。
在步骤S104中,根据一个或多个路径集合订单,生成拣货集合订单。
在一些实施例中,在订单池中存在一个或多个待生产订单的情况下,根据一个或多个路径集合订单和一个或多个待生产订单,生成拣货集合订单,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到一个或多个路径集合订单中的订单。
订单池中可能存在无法划分到路径集合订单中,但已经快到达最晚生产时间的订单,这部分订单作为待生产订单也用于生成拣货集合订单。
在一些实施例中,在一个或多个路径集合订单和一个或多个待生产订单的订单总量未到达预设生产量的情况下,根据订单池内剩余订单的最晚生产时间和货物种类,选取一个或多个订单作为预生产订单;根据一个或多个路径集合订单、一个或多个待生产订单和一个或多个预生产订单,生成拣货集合订单。
由于用户选择的配送时间可能会集中在某些时段(高峰时段,例如,下午5-7点),而另一些时段的订单量较小,在这种情况下,可以在订单量较小的时段可以对高峰时段的订单进行预生产,以提高整体的出库效率。将已经获得的一个或多个路径集合订单和一个或多个待生产订单的订单总量作为当前波次的订单量,判断当前波次的订单量是否达到预设生产量(产能),如果没有,则可以在订单池剩余的订单中选取一个或多个订单作为预生产订单加入当前波次,以使当前波次的订单量达到或接近预设生产量。
选取的预生产订单不能包含预设种类的货物,例如,不能包含控温、实时加工等特殊货物。预生产订单的最晚生产时间可以在高峰时段或其他提前配置的时间段内。预生产订单可以先不进行出库配送,待最晚拣货时间时或与其他订单组合生成集合订单时进行出库提醒。
后续实施例将对拣货集合订单的生成方法进行详细描述。
在步骤S106中,根据拣货集合订单对货物进行拣选。
可以将拣货集合订单发送至对应的拣货人员进行拣货,或者通过设备进行自动拣货。
在步骤S108中,根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中。
在一些实施例中,根据拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中,其中,货物的总体积小于或等于存储格口的容积的订单对应一个存储格口,货物的总体积大于存储格口的容积的订单对应多个存储格口。
在一些实施例中,存储格口分配策略包括:将同一路径集合订单中各个订单的货物分配到相邻的存储格口中的第一子策略(例如同一路径集合订单中各个订单的货物存储到同一列的存储格口中),将配送地址位于同一预设区域内的订单的货物分配到预设区域对应的存储隔口中的第二子策略,以及第一子策略和第二子策略的优先级。
第一子策略使得同一路径集合订单中各个订单被集中分配存储隔口,可以使配送人员尽快获取同一路径集合订单中的货物,减少各个货物的出库时间差,提高货物的出库效率和配送效率。第二子策略使得同一预设区域内的订单被集中分配存储隔口。针对不属于路径集合订单的待生产订单、预生产订单等,可以采用第二子策略分配存储隔口,同一预设区域内的订单被同一配送人员配送的概率高,集中分配存储隔口可以提高货物的出库效率和配送效率。各个预设区域对应的存储隔口可以分拣订单分布规则预先分配和绑定,方便配送人员取货。
可以采用分播墙设备自动将已拣选的货物分配至存储格口中。例如,将拣货集合订单对应的各个订单、各个路径集合订单以及存储格口分配策略发送到分播墙设备,将已拣选的货物放入分播墙设备进行自动分播(将相同订单中的货物划分到一起)和存储。
在一些实施例中,针对每个已拣选货物,确定该货物所属的订单,以及该货物所属的订单是否已分配存储格口;在该货物所属的订单未分配存储格口且第一子策略优先级高于第二子策略的情况下,确定该货物所属的路径集合订单中是否存在已分配存储格口的订单;在该货物所属的路径集合订单中存在已分配存储格口的订单的情况下,自动将货物存放至已分配存储格口的订单相邻的空闲存储格口中。
在该货物所属的订单未分配存储格口且该货物所属的订单不属于任何路径集合订单的情况下,根据该货物所属的订单的配送地址,将该货物存放至对应的存储格口中。
进一步,在该货物所属的订单已分配存储格口的情况下,确定该货物的体积是否小于或等于已分配的存储格口的剩余容积;在该货物的体积小于或等于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口中;在该货物的体积大于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口的相邻的空闲存储格口中。
分播墙设备可以通过扫描货物的标识码识别货物所属的订单,进而进行自动分播和存储。每个订单的货物存储到对应的存储格口后可以进行亮灯提示,并打印对应的小票。
在一些实施例中,识别并筛选出已拣选的货物中的预设类别的货物;向分配人员发送指示信息,其中,指示信息包括:预设类别的货物对应的存储格口,以便分配人员将预设类别的货物存放至对应的存储格口。
预设类别的货物例如易碎物品、食品、重量过大的物品等,这些可以通过人工存放至对应的存储格口,针对剩余的已拣选的货物自动分配至存储格口。
为了提高效率,也可以将已拣选的货物中的一部分分配给分配人员进行自动分播和存放。支持设备自动分播和人工分播两种方式,并且两种方式支持同时分播。
在步骤S110中,根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
货物出库时,可以将分播墙设备上对应于同一路径集合订单的各个存储格口中的货物按箱取出,并将空箱装入存储格口中。
针对出库时间差及配送时效要求,可能会出现配送无法按照路径集合订单完成揽收,需对出库或即将出库的订单进行实时的二次计算并通过系统指派给配送人员直接揽收。
在一些实施例中,针对每个路径集合订单,在该路径集合订单中存在未完成的订单的情况下,根据该路径集合单与拣货集合订单对应的各个订单重新生成集合订单,并将集合订单发送至一个配送人员进行配送;在该路径集合订单中不存在未完成的订单的情况下,将该路径集合订单发送至一个配送人员进行配送。
重新生成集合订单的方法可以参考后续实施例中生成路径集合订单的方法。针对不属于路径集合订单的待生产订单可以用于重新生成集合订单,也可以在配送前与其他订单或路径集合订单重新生成集合订单。针对预生产订单,可以在需要出库时,与其他订单或路径集合订单重新生成集合订单。
上述实施例中首先生成一个或多个路径集合订单,再根据路径集合订单生成拣货集合订单,根据拣货集合订单对货物进行拣选,对于已拣选的货物自动进行二次分拣,并分配至存储格口中,进而根据一个或多个路径集合订单向配送人员发送配送任务。根据拣货集合订单对应的各个订单和各个路径集合订单,对货物进行自动二次分拣,并分配存储格口,配送人员只需要到对应的格口获取需要配送的货物即可,不需要人工进行二次分拣,提高了货物出库和配送的效率和准确率。
本公开提供了从订单处理到下发配送任务的一套完整的货物出库的方法。如图2所示,用户下单后进入订单池,订单池内的订单生成路径集合订单,同时下发生产,路径集合订单、待生产订单和预生产订单生成拣货集合订单,根据拣货集合订单进行拣货,已拣选的货物根据存储格口分配策略进行自动分播,分播完成后,根据路径集合订单进行实时派单。
下面描述生成路径集合订单的一些实施例。
在一些实施例中,以预设周期,利用订单池中的全部订单生成多个候选集合订单;在多个候选集合订单中的第i个候选集合订单不满足预设约束条件的情况下,将第i个候选集合订单中的全部订单移入订单池,1≤i≤N,N为候选集合订单总数;将满足预设约束条件的一个或多个候选集合订单作为一个或多个路径集合订单。
例如,预设周期为1分钟。
在一些实施例中,可利用以下第一算法或第二算法对订单池中的全部订单进行处理,以生成多个候选集合订单。
第一算法也可被称为贪心算法,具体内容如下:
1)从订单池中随机选择一个订单。
2)在已有候选集合订单的情况下,若利用预设策略能够在已有候选集合订单中找到匹配位置,则将随机选择的订单插入匹配位置。
例如,预设策略包括同一候选集合订单中由同一配送人员进行配送时配送距离最短等条件。可将集合订单生成问题转换为VRP(Vehicle Routing Problem,车辆路径规划问题)进行处理。可以根据配送地址、货物属性、期望送达时间窗、配送人员单次行驶距离等因素,规划候选集合订单对应的配送路径,利用配送人员行驶时长,达到单次可配送不同时效的多个订单,并且保证按照用户要求的时间窗准时送达。派单前可持续生成路径集合订单,对于集合成功但未进行生产的路径集合订单进行下发生产。
例如,订单池中包括3个订单,相应的订单编号为{11,24,33}。
目前有两个候选集合订单,具体为:候选集合订单一:1-3-14-26,候选集合订单二:5-2-7。
随机从订单池中提取出一个订单,即订单11,然后在候选集合订单一和候选集合订单二中判断是否存在满足VRP的约束条件、且使得VRP目标函数值增加最小的位置,若存在这样的位置,则将订单11插入该位置。
需要说明的是,由于VRP并不是本公开的发明点所在,因此这里不展开描述。
3)若不能在已有候选集合订单中找到匹配位置,或者当前没有候选集合订单,则将随机选择的订单插入新的候选集合订单中。
例如,在上述实施例中,在集合订单一和集合订单二中判断不存满足VRP的约束条件、且使得VRP目标函数值增加最小的位置,则将订单11插入到一个新的集合订单中。
4)重复从订单池中随机选择一个订单,直到将订单池中没有订单为止。
第二算法也可被称为种子订单吸附算法,具体内容如下:
1)按照预设规则将订单池的订单分为种子订单和非种子订单。
在一些实施例中,预设规则包括:在订单池中,将下发时间与当前时间之差小于时差门限的订单作为种子订单,将订单池中除种子订单之外的订单作为非种子订单。
即,将即将到达下发时间的订单作为种子订单。
2)从多个种子订单中随机选择一个种子订单作为基础订单。
3)利用预设策略选择出能够与基础订单放置在同一集合订单中的种子订单和非种子订单,以生成集合订单。
在一些实施例中,在基础订单的基础上,以VRP目标函数值增加最小的策略吸附其它订单,以生成集合订单。
4)重复从多个种子订单中随机选择一个种子订单作为基础订单,直到多个种子订单处理完为止。
5)在多个种子订单处理完后,若订单池中包括剩余订单,则利用第一算法对订单池中的全部剩余订单进行处理。
需要说明的是,在优化过程中,除了关注每个配送人员的配送距离是否最短外,还需要考虑门店整天的集单率,集单率高低直接影响配送人员的配送效率。例如,与集单率相关的目标函数如下所示:
可以根据VRP目标函数和与集单率相关的目标函数生成候选集合订单。
在一些实施例中,在利用上述第一算法或第二算法生成多个候选集合订单后,还通过对多个候选集合订单进行第一优化处理,以便得到优化的候选集合订单。
例如,第一优化处理包括:首先随机选择预定数量的候选集合订单作为第一待处理集合订单,接下来在每个第一待处理集合订单中,将至少一个订单移入订单池,然后利用上述的第一算法对订单池中的全部订单进行处理。需要说明的是,为了保证优化处理的稳定性,若某个候选集合订单中只有两个订单,则选择该候选集合订单。
在上述第一优化处理中,通过对候选集合订单中包括的订单进行重组,从而能够得到优化的候选集合订单。
如图3A所示,目前有3个候选集合订单。候选集合订单21中包括5个订单,候选集合订单22中包括2个订单,集合订单23中包括3个订单。如图3B所示,通过上述第一优化处理,对候选集合订单21和候选22中包括的订单进行了重组。在这种情况下,候选集合订单21中包括4个订单,候选集合订单22中包括3个订单,候选集合订单23保持不变。
在一些实施例中,在第一优化处理后,还可对多个候选集合订单进行第二优化处理,以便对候选集合订单进行随机优化,得到进一步优化后的候选集合订单。
例如,第二优化处理包括:以预设频率产生随机数,若随机数大于预设扰动值,则检查是否存在独立种子订单,其中独立种子订单为未与其它订单构成候选集合订单的种子订单。若存在独立种子订单,则将独立种子订单移入订单池,并随机选择满足预设条件的预定数量个候选集合订单作为第二待处理集合订单。
例如,预设条件包括:第二待处理集合订单中的订单总数小于预设数量门限。即选择订单数量较少的集合订单作为第二待处理集合订单。
接下来,将每个第二待处理集合订单中的全部订单移入订单池。最后利用第二算法对订单池中的全部订单进行处理。
如图4A所示,目前有3个候选集合订单。候选集合订单31中包括5个订单,候选集合订单32中包括2个订单,候选集合订单33中包括3个订单。此外还有一个种子订单30未与其它订单组成候选集合订单。如图4B所示,通过第二优化处理,种子订单30与原包括在集合订单31中的一个订单、以及原包括在候选集合订单32中的一个订单组成候选集合订单33。由此有效提高整体的集单率。
需要说明的是,在图4B中,通过第二优化处理,原候选集合订单32中的一个订单未与其它订单组成集合订单。由于该订单为非种子订单,因此可将该订单返回订单池,以便参与下次的集合订单生成,从而增加整体的订单组合成功的概率。
经过上述实施例的方法后得到多个候选集合订单,进一步筛选满足预设约束条件的一个或多个候选集合订单作为一个或多个路径集合订单。
在一些实施例中,预设约束条件包括:第i个候选集合订单的最早生产时间大于当前时间和预设参数之和,其中最早生产时间为第i个候选集合订单中的各订单的生产时间中的最早时间;且第i个候选集合订单中的订单总数小于预设上限值。
即,预设约束条件如下式所示:
在一些实施例中,在将第i个候选集合订单分为预设类型订单集合和非预设类型订单集合的情况下,预设类型订单集合中的任一预设类型订单的配送时间大于非预设类型订单集合中的任一非预设类型订单的配送时间。预设类型订单集合例如为餐饮类订单。
即,相应的预设约束条件如下式所示:
在一些实施例中,在将第i个候选集合订单中的全部订单移入订单池之前,判断第i个候选集合订单的最晚下发时间与当前时间的差值是否大于预设时间门限。在差值大于预设时间门限的情况下,执行将第i个候选集合订单中的全部订单移入订单池。
也就是说,若第i个候选集合订单不是全局最优的,但此时还未到该第i个候选集合订单的最晚下发时间,在这种情况下,将该第i个候选集合订单这的全部订单移入订单池,以便这些订单参与下一次的集合订单优化处理。
在一些实施中,在差值不大于预设时间门限的情况下,将第i个候选集合订单进行下发处理。
也就是说,若第i个候选集合订单不是全局最优的,但此时该第i个候选集合订单的最晚下发时间就要到了,在这种情况下将该第i个候选集合订单进行下发处理,以便能够按时完成该第i个候选集合订单的处理。
在一些实施例中,在第i个候选集合订单满足预设约束条件的情况下,将第i个候选集合订单进行下发处理。
即,若第i个候选集合订单是全局最优的,则无需再对该第i个候选集合订单进行处理,直接将该第i个候选集合订单进行下发处理。
在本公开上述实施例提供的集合订单优化处理方法中,不仅关注每个快递员配送距离是否最短,还关注门店整天的集单率,从而使得所生成的集合订单全局最优。
下面描述生成拣选集合订单的一些实施例。
在一些实施例中,利用预设规则对待拣货订单池中的全部订单进行过滤处理,以得到多个候选订单,利用多个候选订单进行层次聚类以构建聚类树;对聚类树进行层次遍历,以便从聚类树中选择出满足预设条件的目标节点;利用目标节点中包括的全部候选订单生成拣货集合订单。
待拣货订单池包括一个或多个路径集合订单包括的订单,还可以包括一个或多个待生产订单和一个或多个预生产订单中至少一项。
在一些实施例中,过滤处理的方法如下。
1)对待拣货订单池的全部订单进行过滤处理,以便从全部订单中获得用于生成拣货集合订单的多个待处理订单。
例如,可利用预设的黑名单或白名单对待拣货订单池的全部订单进行过滤处理。
2)判断多个待处理订单中的第i个待处理订单是否能在预定时间内完成处理,1≤i≤N,N为待处理订单总数。
若第i个待处理订单能在预定时间内完成处理,则执行步骤3);否则执行步骤4)。
例如,若当前时间未超过该第i个订单的最晚拣货时间,则确定第i个待处理订单能在预定时间内完成处理,否则确定第i个待处理订单不能在预定时间内完成处理。
3)将第i个待处理订单作为候选订单。
4),对第i个待处理订单进行下发处理。
也就是说,若当前时间已超过该第i个订单的最晚拣货时间,则对该订单进行下发处理,以便尽可能地减小该第i个订单的延迟时间。
在一些实施例中,构建聚类树的方法下。
1)生成与多个候选订单一一对应的多个集合订单,其中每个集合订单具有一个对应的候选订单。
例如,若有7个候选订单F0-F6,则生成相对应的7个集合订单p0-p6,其中集合订单p0中包括候选订单F0,集合订单p1中包括候选订单F1,集合订单p2中包括候选订单F2,以此类推。
2)将多个集合订单放入聚类集合中。
3)计算聚类集合中的每两个集合订单之间的距离。
在一些实施例中,可采用质心连锁(centroid linkage)的方式计算两个集合订单之间的距离。
设第一集合订单为两个集合订单中的一个,第二集合订单为两个集合订单中的另一个。
首先统计第一集合订单中的全部候选订单对应的全部第一拣货位置,以及第二集合订单中的全部候选订单对应的全部第二拣货位置。
接下来计算全部第一拣货位置中的每个第一拣货位置与全部第二拣货位置中的每个第二拣货位置的距离。例如,这里的距离可以为欧式距离。
接下来,根据计算得到的全部距离的平均值、第一集合订单中的全部候选订单的预设下发时间、第二集合订单中的全部候选订单的预设下发时间确定第一集合订单和第二集合订单之间的距离。
例如,第一集合订单和第二集合订单之间的距离D为:
D=D1+α(abs(T1-T2)) (4)
其中,D1为全部距离的平均值,T1为第一集合订单中的全部候选订单的预设下发时间,T2为第二集合订单中的全部候选订单的预设下发时间,abs为绝对值函数,α为权重值。
例如,如图5所示,左侧的圆表示第一集合订单,具有2个第一拣货位置。右侧的圆表示第二集合订单,具有2个第二拣货位置。分别计算每个第一拣货位置与每个第二拣货位置的距离,并计算所得到距离的平均值,以得到上述参数D1。
需要说明的是,上述公式(4)中的等号右侧的第二项的作用是在确保集合订单的生成过程中,不仅考虑拣货距离的远近,还要考虑订单的预计下发时间也尽可能的相近。由此,在时间紧急(预计下发时间离当前时间近)的情况下倾向于将订单集合在一起,从而提高集合订单的生成效率。
需要说明的是,第一集合订单中的全部候选订单的预设下发时间为第一集合订单中的全部候选订单的最晚拣货时间中的最早时间。第二集合订单中的全部候选订单的预设下发时间为第二集合订单中的全部候选订单的最晚拣货时间中的最早时间。
4)将具有最小距离的两个集合订单合并成一个新集合订单,新集合订单包括具有最小距离的两个集合订单所包括的全部候选订单;
5)生成与新集合订单对应的节点。
6)利用新集合订单替换具有最小距离的两个集合订单,以便对聚类集合进行更新。
7)重复计算聚类集合中的每两个集合订单之间的距离,直到聚类集合中只有一个集合订单为止。
8)利用生成的全部节点构建聚类树。
例如,聚类集合S中具有集合订单p0-p6,即:
S={p0,p1,p2,p3,p4,p5,p6}
集合订单p0-p6的分布如图6所示。
在集合S中,p5和p6的距离最小,则将p5和p6合并成新的集合订单p7,p7中包括的订单为{F5,F6}。接下来生成与集合订单p7相对于的节点,并将集合S进行更新。此时集合S为:
S={p0,p1,p2,p3,p4,p7}
接下来,由于p4和p7的距离最小,则将p4和p7合并成新的集合订单p8,p8中包括的订单为{F4,F5,F6}。接下来生成与集合订单p8相对于的节点,并将集合S进行更新。此时集合S为:
S={p0,p1,p2,p3,p8}
接下来,由于p1和p2的距离最小,则将p1和p2合并成新的集合订单p9,p9中包括的订单为{F1,F2}。接下来生成与集合订单p9相对于的节点,并将集合S进行更新。此时集合S为:
S={p0,p9,p3,p8}
接下来,由于p0和p9的距离最小,则将p0和p9合并成新的集合订单p10,p10中包括的订单为{F0,F1,F2}。接下来生成与集合订单p10相对于的节点,并将集合S进行更新。此时集合S为:
S={p10,p3,p8}
接下来,由于p3和p8的距离最小,则将p3和p8合并成新的集合订单p11,p11中包括的订单为{F3,F4,F5,F6}。接下来生成与集合订单p11相对于的节点,并将集合S进行更新。此时集合S为:
S={p10,p11}
接下来,由于集合S中只有集合订单p10和p11,因此将p10和p11合并成新的集合订单p12,p12中包括的订单为{F0,F1,F2,F3,F4,F5,F6}。接下来生成与集合订单p12相对于的节点,并将集合S进行更新。此时集合S为:
S={p12}
根据所生成的节点所生成的聚类树如图7所示。
在一些实施例中,对聚类树进行层次遍历的方法如下。
在一些实施例中,在层次遍历过程中,若聚类树的根节点满足预设条件,则将聚类树的根节点作为目标节点。
在一些实施例中,若聚类树的根节点不满足预设条件,则分别将聚类树的根节点的每个子节点作为待处理节点。接下来判断待处理节点是否满足预设条件。若待处理节点满足预设条件,则将待处理节点作为目标节点。
若待处理节点不满足预设条件,则判断待处理节点是否有子节点。若待处理节点有子节点,则分别将待处理节点的每个子节点作为当前的待处理节点,重复判断当前的待处理节点是否满足预设条件。
在一些实施例中,将多个候选订单中的未包括在集合订单中的候选订单移入订单池。
在一些实施例中,预设条件包括以下条件中的至少一项:
1)待处理节点包括的全部候选订单所对应的物品总数不超过第一门限;
2)待处理节点包括的候选订单总数不超过第二门限;
3)当前时间位于集合订单下发时间区间内。
例如,集合订单下发时间区间为[预设下发时间-预设间隔时间,预设下发时间],其中预设下发时间为待处理节点包括的各候选订单的最晚拣货时间中的最早时间。
假设集合订单中包括A订单和B订单。A订单的最晚拣货时间为13:40,B订单的最晚拣货时间为13:30,集合订单的拣货时间为5分钟,则集合订单的最晚拣货时间为13:25。假设预设间隔时间为1分钟,则集合单的下发时间区间为[13:24–13:25],若当前时间在该区间内,则该集合订单下发。
例如,订单的拣货时间为(T+a*集合订单中类目数+b*拣货区域数),T为拣货准备时间,a为拣货员切换类目时间,b为切换类目时间的时间,这些参数均可按照实际状况来配置。
例如,假设集合订单中的sku(Stock Keeping Unit,库存单位)分3个类目,分布在2个拣货区域。拣货准则时间为30s,拣货员从一个类目到另外一个类目的时间是10s,从一个拣货区域到另外一个拣货区域的时间是20s。则该集合单的拣货时间为30s+3*10s+20*2s=1分40秒。
在一些实施例中,利用目标节点中包括的全部候选订单生成拣货集合订单的方法如下。
在一些实施例中,如图7所示,若聚类树的根节点D1满足预设条件,则将聚类树的根节点作为目标节点,进而将根节点D1中包括的全部候选订单F0-F6生成集合订单。
即,集合订单C={F0,F1,F2,F3,F4,F5,F6}。
在一些实施例中,如图7所示,聚类树的根节点D1不满足预设条件,且根节点D1具有两个子节点D2和D3,则分别对子节点D2和子节点D3进行检测。若子节点D2和子节点D3均满足预设条件,则根据子节点D2中包括的全部候选订单F3-F6生成集合订单C1,根据子节点D3中包括的全部候选订单F0-F2生成集合订单C2。
即,集合订单C1={F3,F4,F5,F6},集合订单C2={F0,F1,F2}。
在一些实施例中,如图8所示,聚类树的根节点D1不满足预设条件,且根节点D1具有两个子节点D2和D3,则分别对子节点D2和子节点D3进行检测。
1)子节点D2不满足预设条件,子节点D2具有子节点D5,则对子节点D5进行检测。若子节点D5满足预设条件,则根据子节点D5中包括的全部候选订单F4-F6生成集合订单C1。
2)子节点D3均满足预设条件,根据子节点D3中包括的全部候选订单F0-F2生成集合订单C2。
即,集合订单C1={F4,F5,F6},集合订单C2={F0,F1,F2}。
此外,将未加入集合订单的候选订单F3移入订单池,以便用于下次的集合订单生成处理。
在一些实施例中,如图8所示,聚类树的根节点D1不满足预设条件,且根节点D1具有两个子节点D2和D3,则分别对子节点D2和子节点D3进行检测。
1)子节点D2不满足预设条件,子节点D2具有子节点D5,则对子节点D5进行检测。若子节点D5满足预设条件,则根据子节点D5中包括的全部候选订单F4-F6生成集合订单C1。
2)子节点D3不满足预设条件,子节点D3具有子节点D4,则对子节点D4进行检测。若子节点D4满足预设条件,则根据子节点D4中包括的全部候选订单F1-F2生成集合订单C2。
即,集合订单C1={F4,F5,F6},集合订单C2={F1,F2}。
此外,将未加入集合订单的候选订单F0和F3移入订单池,以便用于下次的集合订单生成处理。
在本公开上述实施例提供的集合订单生成方法中,根据多个订单之间的距离进行层次聚类以构建聚类树,进而对聚类树进行层次遍历,以便从聚类树中选择出满足预设条件的目标节点,进而用目标节点中包括的全部订单生成集合订单。由于处于同一集合订单中的全部订单聚类较近,从而有效减小拣货员的走动距离,提高工作效率。
本公开还提供一种货物的出库控制装置,下面结合图9进行描述。
图9为本公开货物的出库控制装置的一些实施例的结构图。如图9所示,该实施例的装置90包括:路径集单模块910,拣货集单模块920,拣选模块930,分播模块940,下发模块950。
路径集单模块910用于根据订单池内的多个订单生成一个或多个路径集合订单。
路径集单模块910用于执行前述实施例中的生成路径集合订单的方法。
拣货集单模块920用于根据一个或多个路径集合订单,生成拣货集合订单。
在一些实施例中,拣货集单模块920用于在订单池中存在一个或多个待生产订单的情况下,根据一个或多个路径集合订单和一个或多个待生产订单,生成拣货集合订单,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到一个或多个路径集合订单中的订单。
在一些实施例中,拣货集单模块920用于在一个或多个路径集合订单和一个或多个待生产订单的订单总量未到达预设生产量的情况下,根据订单池内剩余订单的最晚生产时间和货物种类,选取一个或多个订单作为预生产订单;根据一个或多个路径集合订单、一个或多个待生产订单和一个或多个预生产订单,生成拣货集合订单。
拣货集单模块920用于执行前述实施例中的生成拣货集合订单的方法。
拣选模块930用于根据拣货集合订单对货物进行拣选。
分播模块940用于根据拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口。
在一些实施例中,分播模块940用于根据拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中,其中,货物的总体积小于或等于存储格口的容积的订单对应一个存储格口,货物的总体积大于存储格口的容积的订单对应多个存储格口。
在一些实施例中,存储格口分配策略包括:将同一路径集合订单中各个订单的货物分配到相邻的存储格口中的第一子策略,将配送地址位于同一预设区域内的订单的货物分配到预设区域对应的存储隔口中的第二子策略,以及第一子策略和第二子策略的优先级。
在一些实施例中,分播模块940用于针对每个已拣选货物,确定该货物所属的订单,以及该货物所属的订单是否已分配存储格口;在该货物所属的订单未分配存储格口且第一子策略优先级高于第二子策略的情况下,确定该货物所属的路径集合订单中是否存在已分配存储格口的订单;在该货物所属的路径集合订单中存在已分配存储格口的订单的情况下,自动将货物存放至已分配存储格口的订单相邻的空闲存储格口中。
在一些实施例中,分播模块940用于在该货物所属的订单已分配存储格口的情况下,确定该货物的体积是否小于或等于已分配的存储格口的剩余容积;在该货物的体积小于或等于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口中;在该货物的体积大于已分配的存储格口的剩余容积的情况下,自动将该货物存放至已分配的存储格口的相邻的空闲存储格口中。
在一些实施例中,分播模块940还用于识别并筛选出已拣选的货物中的预设类别的货物;向分配人员发送指示信息,其中,指示信息包括:预设类别的货物对应的存储格口,以便分配人员将预设类别的货物存放至对应的存储格口。
在一些实施例中,分播模块940可以采用分播墙设备实现,或者设置在分播墙设备内,或者,分播模块940将已拣选的货物、拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略发送至分播墙设备,利用分播墙设备自动将已拣选的货物分配至存储格口中。
下发模块950用于根据一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
在一些实施例中,下发模块950用于针对每个路径集合订单,在该路径集合订单中存在未完成的订单的情况下,根据该路径集合单与拣货集合订单对应的各个订单重新生成集合订单,并将集合订单发送至一个配送人员进行配送;在该路径集合订单中不存在未完成的订单的情况下,将该路径集合订单发送至一个配送人员进行配送。
本公开的实施例中的货物的出库控制装置可各由各种计算设备或计算机系统来实现,下面结合图10以及图11进行描述。
图10为本公开货物的出库控制装置的一些实施例的结构图。如图10所示,该实施例的装置100包括:存储器1010以及耦接至该存储器1010的处理器1020,处理器1020被配置为基于存储在存储器1010中的指令,执行本公开中任意一些实施例中的货物的出库控制方法。
其中,存储器1010例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)、数据库以及其他程序等。
图11为本公开货物的出库控制装置的另一些实施例的结构图。如图11所示,该实施例的装置110包括:存储器1110以及处理器1120,分别与存储器1010以及处理器1020类似。还可以包括输入输出接口1130、网络接口1140、存储接口1150等。这些接口1130,1140,1150以及存储器1110和处理器1120之间例如可以通过总线1160连接。其中,输入输出接口1130为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口1140为各种联网设备提供连接接口,例如可以连接到数据库服务器或者云端存储服务器等。存储接口1150为SD卡、U盘等外置存储设备提供连接接口。
本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (22)
1.一种货物的出库控制方法,包括:
根据订单池内的多个订单生成一个或多个路径集合订单;
根据所述一个或多个路径集合订单,生成拣货集合订单;
根据所述拣货集合订单对货物进行拣选;
根据所述拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口;
根据所述一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
2.根据权利要求1所述的出库控制方法,其中,所述根据所述一个或多个路径集合订单,生成拣货集合订单包括:
在所述订单池中存在一个或多个待生产订单的情况下,根据所述一个或多个路径集合订单和所述一个或多个待生产订单,生成所述拣货集合订单,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到所述一个或多个路径集合订单中的订单。
3.根据权利要求2所述的出库控制方法,其中,所述根据所述一个或多个路径集合订单和所述一个或多个待生产订单,生成所述拣货集合订单包括:
在所述一个或多个路径集合订单和所述一个或多个待生产订单的订单总量未到达预设生产量的情况下,根据所述订单池内剩余订单的最晚生产时间和货物种类,选取一个或多个订单作为预生产订单;
根据所述一个或多个路径集合订单、所述一个或多个待生产订单和所述一个或多个预生产订单,生成所述拣货集合订单。
4.根据权利要求1所述的出库控制方法,其中,所述根据所述拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中包括:
根据所述拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中,其中,货物的总体积小于或等于存储格口的容积的订单对应一个存储格口,货物的总体积大于存储格口的容积的订单对应多个存储格口。
5.根据权利要求4所述的出库控制方法,其中,所述存储格口分配策略包括:将同一路径集合订单中各个订单的货物分配到相邻的存储格口中的第一子策略,将配送地址位于同一预设区域内的订单的货物分配到所述预设区域对应的存储隔口中的第二子策略,以及第一子策略和第二子策略的优先级。
6.根据权利要求5所述的出库控制方法,其中,所述根据所述拣货集合订单对应的各个订单、各个订单中货物的体积、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中包括:
针对每个已拣选货物,确定该货物所属的订单,以及该货物所属的订单是否已分配存储格口;
在所述该货物所属的订单未分配存储格口且所述第一子策略优先级高于所述第二子策略的情况下,确定该货物所属的路径集合订单中是否存在已分配存储格口的订单;
在该货物所属的路径集合订单中存在已分配存储格口的订单的情况下,自动将所述货物存放至已分配存储格口的订单相邻的空闲存储格口中。
7.根据权利要求6所述的控制方法,其中,所述根据所述拣货集合订单对应的各个订单、各个订单中货物的数量、各个路径集合订单和存储格口分配策略,自动将已拣选的货物分配至存储格口中还包括:
在所述该货物所属的订单已分配存储格口的情况下,确定该货物的体积是否小于或等于已分配的存储格口的剩余容积;
在该货物的体积小于或等于已分配的存储格口的剩余容积的情况下,自动将该货物存放至所述已分配的存储格口中;
在该货物的体积大于已分配的存储格口的剩余容积的情况下,自动将该货物存放至所述已分配的存储格口的相邻的空闲存储格口中。
8.根据权利要求1所述的出库控制方法,还包括:
识别并筛选出所述已拣选的货物中的预设类别的货物;
向分配人员发送指示信息,其中,所述指示信息包括:所述预设类别的货物对应的存储格口,以便所述分配人员将所述预设类别的货物存放至对应的存储格口。
9.根据权利要求1所述的出库控制方法,其中,所述根据所述一个或多个路径集合订单,向一个或多个配送人员发送配送任务包括:
针对每个路径集合订单,在该路径集合订单中存在未完成的订单的情况下,根据该路径集合单与所述拣货集合订单对应的各个订单重新生成集合订单,并将所述集合订单发送至一个配送人员进行配送;
在该路径集合订单中不存在未完成的订单的情况下,将该路径集合订单发送至一个配送人员进行配送。
10.根据权利要求1所述的出库控制方法,其中,所述根据订单池内的多个订单生成一个或多个路径集合订单包括:
以预设周期,利用订单池中的全部订单生成多个候选集合订单;
在所述多个候选集合订单中的第i个候选集合订单不满足预设约束条件的情况下,将所述第i个候选集合订单中的全部订单移入所述订单池,1≤i≤N,N为候选集合订单总数;
将满足预设约束条件的一个或多个候选集合订单作为所述一个或多个路径集合订单。
11.根据权利要求10所述的出库控制方法,其中,所述预设约束条件包括以下至少一项:
所述第i个候选集合订单的最早生产时间大于当前时间和预设参数之和,其中所述最早生产时间为所述第i个候选集合订单中的各订单的生产时间中的最早时间;且所述第i个候选集合订单中的订单总数小于预设上限值;
在将所述第i个候选集合订单分为预设类型订单集合和非预设类型订单集合的情况下,所述预设类型订单集合中的任一预设类型订单的配送时间大于所述非预设类型订单集合中的任一非预设类型订单的配送时间。
12.根据权利要求10所述的出库控制方法,其中,所述利用订单池中的全部订单生成多个候选集合订单包括:
利用第一算法对所述订单池中的全部订单进行处理,以生成多个候选集合订单;
其中,所述第一算法包括:
从所述订单池中随机选择一个订单;
在已有候选集合订单的情况下,若利用预设策略能够在所述已有候选集合订单中找到匹配位置,则将随机选择的订单插入所述匹配位置;
若不能在所述已有候选集合订单中找到匹配位置,或者当前没有候选集合订单,则将随机选择的订单插入新的候选集合订单中;
重复从所述订单池中随机选择一个订单,直到将所述订单池中没有订单为止。
13.根据权利要求10所述的方法,其中,所述利用订单池中的全部订单生成多个候选集合订单包括:
利用第二算法对所述目标集合中的全部订单进行处理,以生成多个候选集合订单;
其中,所述第二算法包括:
按照预设规则将所述订单池的订单分为种子订单和非种子订单;
从所述多个种子订单中随机选择一个种子订单作为基础订单;
利用所述预设策略选择出能够与所述基础订单放置在同一集合订单中的种子订单和非种子订单,以生成集合订单;
重复从所述多个种子订单中随机选择一个种子订单作为基础订单,直到所述多个种子订单处理完为止。
14.根据权利要求1所述的出库控制方法,其中,所述根据所述一个或多个路径集合订单,生成拣货集合订单包括:
利用预设规则对待拣货订单池中的全部订单进行过滤处理,以得到多个候选订单,其中,所述待拣货订单池包括所述一个或多个路径集合订单包括的订单;
利用所述多个候选订单进行层次聚类以构建聚类树;
对所述聚类树进行层次遍历,以便从所述聚类树中选择出满足预设条件的目标节点;
利用所述目标节点中包括的全部候选订单生成所述拣货集合订单。
15.根据权利要求14所述的出库控制方法,其中,所述对所述聚类树进行层次遍历包括:
在层次遍历过程中,若所述聚类树的根节点满足所述预设条件,则将所述聚类树的根节点作为目标节点;
若所述聚类树的根节点不满足所述预设条件,则分别将所述聚类树的根节点的每个子节点作为待处理节点;
判断所述待处理节点是否满足所述预设条件;
若所述待处理节点满足所述预设条件,则将所述待处理节点作为目标节点;
若所述待处理节点不满足所述预设条件,则判断所述待处理节点是否有子节点;
若所述待处理节点有子节点,则分别将所述待处理节点的每个子节点作为当前的待处理节点;
重复判断所述当前的待处理节点是否满足所述预设条件。
16.根据权利要求15所述的出库控制方法,其中,所述预设条件包括以下条件中的至少一项:
所述待处理节点包括的全部候选订单所对应的物品总数不超过第一门限;
所述待处理节点包括的候选订单总数不超过第二门限;
当前时间位于所述拣货集合订单下发时间区间内。
17.根据权利要求14所述的出库控制方法,其中,所述利用所述多个候选订单构建聚类树包括:
生成与所述多个候选订单一一对应的多个集合订单,其中每个集合订单具有一个对应的候选订单;
将所述多个集合订单放入聚类集合中;
计算所述聚类集合中的每两个集合订单之间的距离;
将具有最小距离的两个集合订单合并成一个新集合订单,所述新集合订单包括所述具有最小距离的两个集合订单所包括的全部候选订单;
生成与所述新集合订单对应的节点;
利用所述新集合订单替换所述具有最小距离的两个集合订单,以便对所述聚类集合进行更新;
重复计算所述聚类集合中的每两个集合订单之间的距离,直到所述聚类集合中只有一个集合订单为止;
利用生成的全部节点构建所述聚类树。
18.根据权利要求14所述的出库控制方法,其中,所述利用预设规则对待拣货订单池中的全部订单进行过滤处理包括:
对所述全部订单进行过滤处理,以便从所述全部订单中获得用于生成集合订单的多个待处理订单;
判断所述多个待处理订单中的每个待处理订单是否能在预定时间内完成处理;
若所述每个待处理订单能在预定时间内完成处理,则将所述每个待处理订单作为所述候选订单。
19.根据权利要求14所述的出库控制方法,其中,所述待拣货订单池还包括:一个或多个待生产订单和一个或多个预生产订单中至少一项,其中,每个待生产订单为最晚生产时间与当前时间的差小于或等于阈值但未被划分到所述一个或多个路径集合订单中的订单,每个预生产订单是根据所述订单池内剩余订单的最晚生产时间和货物种类选取的。
20.一种货物的出库控制装置,包括:
路径集单模块,用于根据订单池内的多个订单生成一个或多个路径集合订单;
拣货集单模块,用于根据所述一个或多个路径集合订单,生成拣货集合订单;
拣选模块,用于根据所述拣货集合订单对货物进行拣选;
分播模块,用于根据所述拣货集合订单对应的各个订单和各个路径集合订单,自动将已拣选的货物分配至存储格口中,其中,每个订单对应一个或多个存储格口;
下发模块,用于根据所述一个或多个路径集合订单,向一个或多个配送人员发送配送任务。
21.一种货物的出库控制装置,包括:
处理器;以及
耦接至所述处理器的存储器,用于存储指令,所述指令被所述处理器执行时,使所述处理器执行如权利要求1-19任一项所述的货物的出库控制方法。
22.一种非瞬时性计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现权利要求1-19任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210809614.9A CN115049342A (zh) | 2022-07-11 | 2022-07-11 | 货物的出库控制方法、装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210809614.9A CN115049342A (zh) | 2022-07-11 | 2022-07-11 | 货物的出库控制方法、装置和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115049342A true CN115049342A (zh) | 2022-09-13 |
Family
ID=83164667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210809614.9A Pending CN115049342A (zh) | 2022-07-11 | 2022-07-11 | 货物的出库控制方法、装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115049342A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115619489A (zh) * | 2022-11-08 | 2023-01-17 | 湖北凯乐仕通达科技有限公司 | 订单分拣方法、装置和计算机设备 |
CN116384711A (zh) * | 2023-06-02 | 2023-07-04 | 北京京东乾石科技有限公司 | 一种任务处理方法及装置 |
WO2024011971A1 (zh) * | 2022-07-11 | 2024-01-18 | 北京沃东天骏信息技术有限公司 | 订单的处理方法、装置和计算机可读存储介质 |
-
2022
- 2022-07-11 CN CN202210809614.9A patent/CN115049342A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024011971A1 (zh) * | 2022-07-11 | 2024-01-18 | 北京沃东天骏信息技术有限公司 | 订单的处理方法、装置和计算机可读存储介质 |
CN115619489A (zh) * | 2022-11-08 | 2023-01-17 | 湖北凯乐仕通达科技有限公司 | 订单分拣方法、装置和计算机设备 |
CN116384711A (zh) * | 2023-06-02 | 2023-07-04 | 北京京东乾石科技有限公司 | 一种任务处理方法及装置 |
CN116384711B (zh) * | 2023-06-02 | 2023-11-03 | 北京京东乾石科技有限公司 | 一种任务处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115049342A (zh) | 货物的出库控制方法、装置和计算机可读存储介质 | |
Van Den Berg | A literature survey on planning and control of warehousing systems | |
CN109978423B (zh) | 库存调度方法、装置以及计算机可读存储介质 | |
CN109772714B (zh) | 货物拣选方法及装置、存储介质、电子设备 | |
CN110533350B (zh) | 一种拣选单生成方法及装置 | |
CN109767151B (zh) | 仓储管理方法、装置、介质及电子设备 | |
CN110599090B (zh) | 一种仓储出库管理方法、服务器和存储介质 | |
CN109214756B (zh) | 整车物流调度方法及装置、存储介质、终端 | |
CN111091328A (zh) | 一种仓储入库管理方法和管理装置 | |
CN109523202B (zh) | 订单处理方法、装置、设备及计算机可读存储介质 | |
WO2024011971A1 (zh) | 订单的处理方法、装置和计算机可读存储介质 | |
Javanmard et al. | Solving a multi-product distribution planning problem in cross docking networks: An imperialist competitive algorithm | |
CN110334993B (zh) | 一种对播种货位进行管控的方法、装置及计算机设备 | |
CN113592440B (zh) | 一种基于大数据的智慧物流取件分析系统及方法 | |
CN112766663A (zh) | 机器人调度方法和装置 | |
CN112149925A (zh) | 仓储任务自动分拨方法和装置、仓储管理方法和系统 | |
US7031801B1 (en) | Continuous item picking in a distribution center using coordinated item picking periods | |
CN111985862A (zh) | 定位库存物品的方法和装置 | |
CN114580996A (zh) | 料箱的出库方法 | |
CN115719193A (zh) | 一种物联网的物流车辆调度规划系统 | |
US11681983B2 (en) | Systems and methods for prioritizing pick jobs while optimizing efficiency | |
TW202036408A (zh) | 通訊伺服器裝置及其操作方法 | |
CN112785025B (zh) | 仓库布局方法和装置 | |
CN113159467A (zh) | 一种派车单处理方法和装置 | |
CN110689202A (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 |