Order allocation method and device, program product, electronic equipment and storage medium
By dynamically dividing the database area into multiple balanced partitions and assigning pickers, the problem of low picking efficiency in the prior art is solved, and the efficiency and adaptability of order picking are improved.
Patent Information
- Application Number
- CN202411653946.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2025-03-14
AI Technical Summary
The picking efficiency in the prior art is low and it is difficult to cope with the growing volume of orders.
By obtaining the map data and order data of the target library area, dynamically divide the library area into multiple partitions, each partition equals the order quantity, and assigns pickers to each partition based on the map data to reduce walking paths.
Improve the efficiency of pickers in the process of picking allocated orders, ensuring the adaptability and efficiency of order selection.
Smart Images

Figure CN119624315A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of logistics technology, and more specifically, to an order distribution method and device, a program product, an electronic device, and a storage medium. Background Art
[0002] In order to improve user experience and provide users with quality services, existing e-commerce platforms have set high requirements for logistics efficiency, and outbound operations are an important part of it. When outbound operations occur, orders need to be assigned to appropriate pickers for order picking.
[0003] In the prior art, the order picking method and the batch picking method are generally adopted. Among them, the order picking method is to complete the picking of one order at a time, which can reduce the subsequent sorting, but the operation efficiency is low for scenes with large warehouse area and few order lines, and it is difficult to deal with large orders; the batch picking method is to group multiple orders into a batch and pick them together, which can improve the picking efficiency and is suitable for scenes with large quantities and high repeatability, but it requires a subsequent sorting environment and good on-site management.
[0004] Therefore, the current picking method is unable to cope with the growing order volume, resulting in low picking efficiency. Summary of the invention
[0005] The purpose of the embodiments of the present application is to provide an order allocation method and device, a program product, an electronic device, and a storage medium to solve the technical problem of low picking efficiency in the prior art.
[0006] In a first aspect, an embodiment of the present application provides an order allocation method, comprising: obtaining map data and order data corresponding to a target warehouse area, wherein the map data includes channel numbers corresponding to multiple channels in the target warehouse area; when the number of pickers in the target warehouse area changes, dividing the target warehouse area into multiple partitions according to the order data and the number of personnel, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap with each other and the number of orders is balanced; assigning a picker to each partition according to the map data, so that the total difference between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which he is assigned is minimized; and sorting the orders in each partition according to the sorting strategy and the order data.
[0007] In the above scheme, when the number of pickers in the target warehouse area changes, the target warehouse area can be re-partitioned according to the updated number of personnel, and the channels and order quantities picked by each picker can be rebalanced, that is, the target warehouse area can be dynamically divided into a corresponding number of partitions, and the number of orders in multiple partitions can be basically balanced, so as to avoid a certain partition taking a long time to pick orders; at the same time, the partition can be allocated nearby according to the current location of the picker, so as to reduce the walking path of the picker. Therefore, the order allocation method provided in the embodiment of the present application can improve the picking efficiency of the pickers in the process of picking the allocated orders.
[0008] In an optional implementation, the order data includes the total order quantity corresponding to the target warehouse area and the channel order quantity corresponding to each channel, and the target warehouse area is divided into multiple partitions according to the order data and the number of personnel, including: determining the average order quantity corresponding to each partition according to the total order quantity and the number of personnel; repeating the following steps starting from n=1 until i+1 is the number of partitions: starting from the nth channel in the target warehouse area, dividing the nth channel to the m-1th channel into the i-th partition, and updating n to m, wherein the order quantity in the nth channel to the m-1th channel is not greater than the average order quantity, n is an integer greater than 0 and not greater than the number of channels, m is an integer greater than 1 and not greater than the number of channels, and i is an integer greater than 0 and not greater than the number of partitions; when i+1 is the number of partitions, the remaining channels are divided into the i+1th partition. In the above scheme, when the number of picking personnel in the target warehouse area changes, the entire warehouse area can be dynamically split into a corresponding number of partitions. Among them, multiple channels are divided into a partition in turn, so that the channels in each partition are continuous; at the same time, the order ratio of the current partition is checked during the partitioning process to ensure the basic balance of orders, so as to improve the picking efficiency of pickers in the process of picking the assigned orders.
[0009] In an optional embodiment, the method of assigning a picker to each partition according to the map data includes: assigning the partition corresponding to the channel where the picker is located to the picker; and using the enumeration method to assign the remaining partitions to the remaining pickers, so that the sum of the differences between the channel numbers corresponding to the channels where the remaining pickers are currently located and the channel numbers corresponding to the partitions to which they are assigned is minimized. In the above scheme, when assigning pickers to each partition, the changes in the original pickers and the walking paths of the pickers are minimized as much as possible, thereby improving the picking efficiency of the pickers in the process of picking the assigned orders.
[0010] In an optional embodiment, the order data includes the order location of the order in the partition and / or the latest delivery time of the order, and the sorting strategy includes at least one of the following: an extreme speed strategy, which represents sorting the orders according to the distance between the current location of the picker and the order location; a timeliness strategy, which represents sorting the orders according to the latest delivery time. In the above scheme, extreme speed strategy, timeliness strategy and comprehensive mode (including extreme speed mode and timeliness mode) are supported. When the timeliness requirement is not tight, picking can be carried out in a distance-first manner; when the timeliness requirement is tight, picking can be carried out strictly in a timeliness-first manner, or switching can be carried out to take into account both timeliness and distance. Therefore, the order allocation method provided in the embodiment of the present application takes into account the needs of different warehouse areas and different time periods, and can adapt to a variety of scenarios, thereby improving the adaptability of order picking.
[0011] In an optional implementation, when the sorting strategy includes the extreme speed strategy, the sorting of orders in each partition according to the sorting strategy and the order data includes: calculating the picking distance between the current position and the order position; and sorting the orders in the partition in ascending order of the picking distance. In the above scheme, the extreme speed strategy can be switched to pick the nearest items according to the habits of the pickers, thereby reducing the walking path of the pickers.
[0012] In an optional implementation, when the sorting strategy includes the timeliness strategy, the sorting of the orders in each partition according to the sorting strategy and the order data includes: sorting the orders in the partition in order from earliest to latest according to the latest delivery time. In the above scheme, the timeliness strategy can be switched when the latest delivery time of the order is approaching, so as to ensure that all orders can be picked and shipped before the latest delivery time as much as possible.
[0013] In an optional embodiment, when the sorting strategy includes the extreme speed strategy and the timeliness strategy, the orders in each partition are sorted according to the sorting strategy and the order data, including: starting from an initial position being the current position and p being 1, the following steps are repeatedly performed for the orders in the partition until p is the number of orders in the partition: calculating the picking time between the initial position and the order position corresponding to the unsorted order; judging whether there is an order whose difference between the latest delivery time and the picking time is less than 0; if so, updating the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is greater than the order with the smallest picking time in the p-1th order as a new p-1th order, and updating the initial position to the positioning position corresponding to the pth order; if not, determining the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is the smallest as the p-1th order, and updating the initial position to the positioning position corresponding to the pth order. In the above solution, you can switch to a comprehensive mode (including extreme speed strategy and time-sensitive strategy) to allocate orders nearby while ensuring timeliness.
[0014] In an optional embodiment, the order distribution method further includes: when there is a new order, determining whether the order position corresponding to the new order is located in the forward direction of the picker; if the order position corresponding to the new order is located in the forward direction, inserting the new order into the forward queue corresponding to the picker; otherwise, inserting the new order into the reverse queue corresponding to the picker; wherein the picker picks the orders in the reverse queue after picking the orders in the forward queue. In the above scheme, the new orders generated after the start of picking can be continuously inserted into the walking path of the picker, so that the picking density becomes larger and larger, and the picker can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0015] In an optional implementation, the inserting of the new order into the forward queue corresponding to the picker includes: inserting the new order into the forward queue corresponding to the picker using a binary search method. In the above solution, new orders generated after the start of picking can be continuously inserted into the walking path of the picker, so that the picking density is increasing, and the picker can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0016] In an optional embodiment, the order distribution method further includes: when there are multiple new orders and the priorities of the multiple new orders are higher than the priorities of the orders in the picking queue, inserting the new order at the head of the picking queue and sorting the multiple orders according to the sorting strategy; or, when there is an order with a higher priority in the picking queue, inserting the order at the head of the picking queue and sorting the remaining orders in the picking queue according to the sorting strategy. In the above scheme, orders that need to be expedited (i.e., orders with high priority) can be sorted at the front of the queue, thereby improving the flexibility of order picking.
[0017] In a second aspect, an embodiment of the present application provides an order distribution device, comprising: an acquisition module, used to acquire map data and order data corresponding to a target warehouse area, wherein the map data includes channel numbers corresponding to multiple channels in the target warehouse area; a division module, used to divide the target warehouse area into multiple partitions according to the order data and the number of personnel when the number of picking personnel in the target warehouse area changes, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap with each other and the number of orders is balanced; an allocation module, used to allocate a picking personnel to each partition according to the map data, so as to minimize the total difference between the channel number corresponding to the channel where the picking personnel is currently located and the channel number corresponding to the partition to which he is assigned; a sorting module, used to sort the orders in each partition according to the sorting strategy and the order data.
[0018] In the above scheme, when the number of pickers in the target warehouse area changes, the target warehouse area can be re-partitioned according to the updated number of personnel, and the channels and order quantities picked by each picker can be rebalanced, that is, the target warehouse area can be dynamically divided into a corresponding number of partitions, and the number of orders in multiple partitions can be basically balanced, so as to avoid a certain partition taking a long time to pick orders; at the same time, the partition can be allocated nearby according to the current location of the picker, so as to reduce the walking path of the picker. Therefore, the order allocation method provided in the embodiment of the present application can improve the picking efficiency of the pickers in the process of picking the allocated orders.
[0019] In an optional implementation, the order data includes the total order quantity corresponding to the target warehouse area and the channel order quantity corresponding to each channel, and the division module is specifically used to: determine the average order quantity corresponding to each partition according to the total order quantity and the number of personnel; repeat the following steps starting from n=1 until i+1 is the number of partitions: starting from the nth channel in the target warehouse area, divide the nth channel to the m-1th channel into the i-th partition, and update n to m, wherein the order quantity in the nth channel to the m-1th channel is not greater than the average order quantity, n is an integer greater than 0 and not greater than the number of channels, m is an integer greater than 1 and not greater than the number of channels, and i is an integer greater than 0 and not greater than the number of partitions; when i+1 is the number of partitions, divide the remaining channels into the i+1th partition. In the above scheme, when the number of picking personnel in the target warehouse area changes, the entire warehouse area can be dynamically split into the corresponding number of partitions. Among them, multiple channels are divided into a partition in turn, so that the channels in each partition are continuous; at the same time, the order ratio of the current partition is checked during the partitioning process to ensure the basic balance of orders, so as to improve the picking efficiency of pickers in the process of picking the assigned orders.
[0020] In an optional implementation, the allocation module is specifically used to: allocate the partition corresponding to the channel where the picker is located to the picker; and use the enumeration method to allocate the remaining partitions to the remaining pickers, so that the sum of the differences between the channel numbers corresponding to the channels where the remaining pickers are currently located and the channel numbers corresponding to the partitions to which they are allocated is minimized. In the above scheme, when assigning pickers to each partition, the changes in the original pickers and the walking paths of the pickers are minimized as much as possible, thereby improving the picking efficiency of the pickers in the process of picking the assigned orders.
[0021] In an optional embodiment, the order data includes the order location of the order in the partition and / or the latest delivery time of the order, and the sorting strategy includes at least one of the following: an extreme speed strategy, which represents sorting the orders according to the distance between the current location of the picker and the order location; a timeliness strategy, which represents sorting the orders according to the latest delivery time. In the above scheme, extreme speed strategy, timeliness strategy and comprehensive mode (including extreme speed mode and timeliness mode) are supported. When the timeliness requirement is not tight, picking can be carried out in a distance-first manner; when the timeliness requirement is tight, picking can be carried out strictly in a timeliness-first manner, or switching can be carried out to take into account both timeliness and distance. Therefore, the order allocation method provided in the embodiment of the present application takes into account the needs of different warehouse areas and different time periods, and can adapt to a variety of scenarios, thereby improving the adaptability of order picking.
[0022] In an optional implementation, when the sorting strategy includes the extreme speed strategy, the sorting module is specifically used to: calculate the picking distance between the current position and the order position; and sort the orders in the partition in ascending order of the picking distance. In the above scheme, the extreme speed strategy can be switched to pick the items nearby according to the habits of the pickers, thereby reducing the walking path of the pickers.
[0023] In an optional implementation, when the sorting strategy includes the timeliness strategy, the sorting module is specifically used to sort the orders in the partition in order from the earliest to the latest delivery time. In the above solution, the timeliness strategy can be switched when the latest delivery time of the order is approaching, so as to ensure that all orders can be picked and shipped before the latest delivery time as much as possible.
[0024] In an optional embodiment, when the sorting strategy includes the extreme speed strategy and the timeliness strategy, the sorting module is specifically used to: starting from an initial position being the current position and p being 1, repeatedly performing the following steps for the orders in the partition until p is the number of orders in the partition: calculating the picking time between the initial position and the order position corresponding to the unsorted order; determining whether there is an order whose difference between the latest delivery time and the picking time is less than 0; if so, updating the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is greater than the order with the smallest picking time in the p-1th order as a new p-1th order, and updating the initial position to the positioning position corresponding to the pth order; if not, determining the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is the smallest as the pth order, and updating the initial position to the positioning position corresponding to the pth order. In the above solution, you can switch to a comprehensive mode (including extreme speed strategy and time-sensitive strategy) to allocate orders nearby while ensuring timeliness.
[0025] In an optional embodiment, the order distribution device further includes: a judgment module, which is used to judge whether the order position corresponding to the new order is located in the forward direction of the picker when there is a new order; a first insertion module, which is used to insert the new order into the forward queue corresponding to the picker if the order position corresponding to the new order is located in the forward direction; otherwise, insert the new order into the reverse queue corresponding to the picker; wherein the picker picks the orders in the reverse queue after picking the orders in the forward queue. In the above scheme, the new orders generated after the start of picking can be continuously inserted into the walking path of the picker, so that the picking density becomes larger and larger, and the picker can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0026] In an optional implementation, the first insertion module is specifically used to: insert the new order into the forward queue corresponding to the picker by using a binary search method. In the above scheme, new orders generated after the start of picking can be continuously inserted into the walking path of the picker, so that the picking density is increasing, and the picker can process as many orders as possible at a time, thereby improving the efficiency of order picking.
[0027] In an optional embodiment, the order distribution device further includes: a second insertion module, which is used to insert the new order at the head of the picking queue and sort the multiple orders according to the sorting strategy when there are multiple new orders and the priorities of the multiple new orders are higher than the priorities of the orders in the picking queue; or, when there is an order with a higher priority in the picking queue, insert the order at the head of the picking queue and sort the remaining orders in the picking queue according to the sorting strategy. In the above scheme, orders that need to be expedited (i.e., orders with high priority) can be sorted at the front of the queue, thereby improving the flexibility of order picking.
[0028] In a third aspect, an embodiment of the present application provides a computer program product, including computer program instructions, which, when read and executed by a processor, execute the order allocation method as described in the first aspect.
[0029] In a fourth aspect, an embodiment of the present application provides an electronic device, comprising: a processor, a memory and a bus; the processor and the memory communicate with each other through the bus; the memory stores computer program instructions that can be executed by the processor, and the processor calls the computer program instructions to execute the order allocation method described in the first aspect.
[0030] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer program instructions. When the computer program instructions are executed by a computer, the computer executes the order allocation method as described in the first aspect.
[0031] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the following specifically cites the embodiments of the present application and describes them in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0033] Figure 1 A flowchart of an order allocation method provided in an embodiment of the present application;
[0034] Figure 2 A schematic diagram of a standard map provided in an embodiment of the present application;
[0035] Figure 3 A schematic diagram of a difference map provided in an embodiment of the present application;
[0036] Figure 4 A schematic diagram of another difference map provided in an embodiment of the present application;
[0037] Figure 5 A schematic diagram of a dynamic partitioning process provided in an embodiment of the present application;
[0038] Figure 6 A schematic diagram of an order distribution system provided in an embodiment of the present application;
[0039] Figure 7 A structural block diagram of an order distribution device provided in an embodiment of the present application;
[0040] Figure 8 A structural block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0041] The technical solutions in the embodiments of the present application will be described below in conjunction with the accompanying drawings in the embodiments of the present application. First, some terms in the embodiments of the present application will be explained.
[0042] Process picking: Different from order picking and batch picking, process picking continuously adds new orders to the current picking task after they are generated. The pickers can complete the picking of all processable goods on the walking path, making the order density on the walking path continuously increase.
[0043] Dynamic partitioning and rebalancing: When multiple people are doing process picking in a warehouse area, the warehouse area will be partitioned (including channels and orders) according to the number of people, so that the channels in each partition are continuous and the orders in the partition are roughly even. Whenever there is a change in personnel, the partition needs to be re-partitioned to rebalance the channels and order volume of each person.
[0044] top N: N order tasks displayed on the picker's handheld device, which are the tasks that the picker is about to pick.
[0045] Order queue: The order of order picking assigned to each picker, including top N, forward queue, reverse queue and waiting queue. Top N is the order task displayed on the picker's handheld device, the forward queue and reverse queue are the order tasks in the forward and reverse directions of the picker respectively, and the waiting queue is the order that will not be picked first based on the currently configured filtering rules.
[0046] Strategy mode: The order picking order calculation strategy is divided into extreme speed mode, time-efficiency mode and comprehensive mode. Extreme speed mode strictly follows the order of distance between the order and the current location of the picker; time-efficiency mode strictly follows the latest delivery time of the order, and if the latest delivery time is the same, it is then sorted by distance; comprehensive mode takes into account both distance and time efficiency, and calculates the order by distance priority without affecting the delivery time efficiency of the order.
[0047] Batch pinning: For orders that need to be picked and shipped out urgently, they can be pinned to the top, and the order will be brought to the front of the forward queue. That is, after the pickers complete the top N displayed on the handheld device, they will immediately pick the pinned orders.
[0048] Please refer to Figure 1 , Figure 1 A flowchart of an order allocation method provided in an embodiment of the present application, the order allocation method may specifically include the following steps:
[0049] Step S101: Acquire map data and order data corresponding to a target warehouse area, wherein the map data includes channel numbers corresponding to a plurality of channels in the target warehouse area.
[0050] Step S102: When the number of picking personnel in the target warehouse area changes, the target warehouse area is divided into multiple partitions according to the order data and the number of personnel, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap and the order quantity is balanced.
[0051] Step S103: assigning a picker to each partition according to the map data, so that the total difference between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which he is assigned is minimized.
[0052] Step S104: Sort the orders in each partition according to the sorting strategy and order data.
[0053] Specifically, in the above step S101, a warehouse may include multiple storage areas, each storage area may include multiple channels, each channel may include multiple storage locations, and the goods corresponding to the order are stored in the corresponding storage locations. Among them, the target storage area refers to the storage area in the warehouse that currently needs to allocate orders, and the map data corresponding to the target storage area includes the channel numbers corresponding to the multiple channels in the target storage area.
[0054] Since there are many warehouses and there are several different storage areas in the warehouses, and the different opening times and personnel will lead to large differences in the layout of warehouses and storage areas. For example, the storage area map can include a standard map and a difference map. The following examples introduce three types of storage area maps.
[0055] Please refer to Figure 2 , Figure 2 This is a schematic diagram of a standard map provided in an embodiment of the present application. In the standard map, the non-side channel has two sides AB, side A is odd-numbered columns, side B is even-numbered columns, and the column numbers increase in the same direction, where the storage location number is storage area number-channel number-column number. Please refer to Figure 3 , Figure 3 This is a schematic diagram of a difference map provided by an embodiment of the present application. In the difference map, the left and right sides of the same physical channel belong to different logical channels, and each logical channel is numbered separately. Figure 4 , Figure 4 A schematic diagram of another difference map provided in an embodiment of the present application, in which the column numbers of adjacent channels are incremented in opposite directions.
[0056] As an implementation method, the channel numbers corresponding to the above-mentioned standard map can be set to a standard format, and the channel numbers corresponding to the difference map can be mapped once, and the channel numbers corresponding to the difference map can be uniformly converted into the above-mentioned standard format; in this way, the channel numbers included in the above-mentioned map data are all channel numbers in the standard format.
[0057] It can be understood that after executing the order allocation method provided in the embodiment of the present application, the channel transformation in the standard format can be transferred to the channel number corresponding to the original difference map, so as to facilitate the correspondence with the difference map.
[0058] The order data may include data related to the orders located in the target warehouse area. The specific implementation of the above order data is not specifically limited in the present application embodiment, and those skilled in the art may make appropriate adjustments according to actual conditions. For example, the order data may include the total number of orders corresponding to the target warehouse area, the number of channel orders corresponding to each channel, the location of the order in the target warehouse area, the latest delivery time of the order, etc.
[0059] In addition, the specific implementation methods for obtaining the above-mentioned map data and order data are also not specifically limited in the embodiments of the present application, and those skilled in the art may make appropriate adjustments according to actual conditions. For example, map data and order data sent by an external device may be received; or map data and order data stored locally or in the cloud may be read; or map data and order data may be generated, etc.
[0060] In the above step S102, when the number of orders in the target warehouse area increases or decreases, new pickers can be added to the target warehouse area or the number of pickers in the target warehouse area can be reduced. At this time, the number of pickers in the target warehouse area will change. It should be noted that the first order allocation in the target warehouse area can also be regarded as a change in the number of pickers, that is, the number of pickers in the target warehouse area increases from 0 to multiple.
[0061] When the number of pickers in the target warehouse area changes, in order to ensure the efficiency of order picking, the target warehouse area can be re-divided into multiple partitions. The number of partitions obtained by dividing the target warehouse area can be equal to the number of pickers in the target partition, so that each picker can be assigned a partition, and the picker picks the orders in the partition.
[0062] It should be noted that the embodiment of the present application also does not make any specific limitations on the specific implementation method of dividing the target warehouse area into multiple partitions. Technical personnel in this field can make appropriate adjustments according to actual conditions so that the multiple partitions obtained by the division do not overlap with each other and the order quantities are balanced.
[0063] In the above step S103, since the number of the multiple partitions obtained by dividing the target warehouse area can be equal to the number of pickers in the target partition, one picker can be assigned to each partition.
[0064] It should be noted that the embodiment of the present application also does not make any specific limitations on the specific implementation method of assigning picking personnel to partitions. Technical personnel in this field can make appropriate adjustments based on actual conditions to minimize the total difference between the channel number corresponding to the channel where the picking personnel is currently located and the channel number corresponding to the partition to which they are assigned.
[0065] In the above step S104, the orders in each partition can be sorted according to the sorting strategy and order data. As an implementation method, the above sorting strategy can be predetermined, and the target warehouse area is subsequently sorted using the above sorting strategy; as another implementation method, the above sorting strategy can also be changed in real time, and different sorting strategies are switched according to different situations to sort the target warehouse area.
[0066] After the order sorting is completed, the orders can be pushed to the handheld devices of the pickers in sequence according to the sorting order, and the pickers can pick the orders in the corresponding partitions according to the above sorting order.
[0067] In the above scheme, when the number of pickers in the target warehouse area changes, the target warehouse area can be re-partitioned according to the updated number of personnel, and the channels and order quantities picked by each picker can be rebalanced, that is, the target warehouse area can be dynamically divided into a corresponding number of partitions, and the number of orders in multiple partitions can be basically balanced, so as to avoid a certain partition taking a long time to pick orders; at the same time, the partition can be allocated nearby according to the current location of the picker, so as to reduce the walking path of the picker. Therefore, the order allocation method provided in the embodiment of the present application can improve the picking efficiency of the pickers in the process of picking the allocated orders.
[0068] Further, based on the above embodiment, the order data may include the total order quantity corresponding to the target warehouse area and the channel order quantity corresponding to each channel. The target warehouse area may be dynamically partitioned by using a greedy algorithm. In this case, the above step S102 may specifically include the following steps:
[0069] Step 1), determine the average order quantity corresponding to each partition based on the total order quantity and the number of personnel;
[0070] Step 2), starting from n=1, repeat the following steps until i+1 is the number of partitions: starting from the nth channel in the target warehouse area, divide the nth channel to the m-1th channel into the ith partition, and update n to m, wherein the number of orders in the nth channel to the m-1th channel is not greater than the average order number, n is an integer greater than 0 and not greater than the number of channels, m is an integer greater than 1 and not greater than the number of channels, and i is an integer greater than 0 and not greater than the number of partitions.
[0071] Step 3), when i+1 is the number of partitions, the remaining channels are divided into the i+1th partition.
[0072] Specifically, in the above step 1), as an implementation method, the total order quantity may include orders that have not been picked in the warehouse area; as another implementation method, the total order quantity may include orders that have not been picked except for the orders locked by the original pickers (i.e., the orders that have been pushed to the pickers' handheld devices).
[0073] For example: First, determine the total order quantity order_total, the channel order quantity order_channel_i corresponding to each channel, and calculate the average order quantity order_avg = order_total / n for each picker including the newly added pickers.
[0074] Then, starting from the first channel, the cumulative number of orders total_sum_1 = total_sum_1 + order_channel_1. If total_sum_1 does not exceed order_avg, total_sum_1 is added to the number of orders in the second channel, order_channel_2. This continues until the mth channel, when total_sum_1>order_avg, the first partition is obtained, which includes channels 1 to m-1 and the first (total_sum_1-order_channel_m) orders.
[0075] Then, starting from the mth channel, accumulate the number of orders total_sum_2, repeat the above steps, and get the channels and orders included in the second partition; repeat the above steps until the last partition includes all the remaining channels and orders, and then get multiple partitions and their channels and orders.
[0076] In the above scheme, when the number of pickers in the target warehouse area changes, the entire warehouse area can be dynamically divided into a corresponding number of partitions. Among them, by sequentially dividing multiple channels into one partition, the channels in each partition are made continuous; at the same time, the order ratio of the current partition is checked during the partitioning process to ensure the basic balance of orders, so as to improve the picking efficiency of pickers in the process of picking the assigned orders.
[0077] Further, based on the above embodiment, the above step S103 may specifically include the following steps:
[0078] Step 1), assign the partition corresponding to the channel where the picker is located to the picker.
[0079] Step 2), using enumeration method to allocate the remaining partitions to the remaining pickers, so that the sum of the differences between the channel numbers corresponding to the channels where the remaining pickers are currently located and the channel numbers corresponding to the partitions to which they are allocated is minimized.
[0080] Specifically, in the above step 1), the partition containing the channel where the original picker is currently located can be first assigned to the picker. As an implementation method, if there are multiple pickers currently located in the same channel, this partition can be assigned to the picker with the smallest ID.
[0081] Please refer to Figure 5 , Figure 5 A schematic diagram of a dynamic partitioning process provided in an embodiment of the present application. In the dynamic partitioning process, a greedy algorithm can be used to dynamically partition the target warehouse area, and an enumeration method can be used to assign partitions to pickers.
[0082] In the above scheme, when assigning pickers to each partition, the changes of the original pickers and the walking paths of the pickers are minimized as much as possible, thereby improving the picking efficiency of the pickers in the process of picking the assigned orders.
[0083] Further, based on the above embodiment, the above order data may include the order location of the order in the partition and / or the latest delivery time of the order. At this time, the above sorting strategy may include at least one of the following: an extreme speed strategy, which represents sorting the orders according to the distance between the current location of the picker and the order location; a timeliness strategy, which represents sorting the orders according to the latest delivery time.
[0084] Specifically, in the extreme speed mode, the orders are strictly sorted according to the distance between the order location and the current location of the picker, that is, the order with the closest distance is recommended to the picker each time; in the timeliness mode, the orders are strictly sorted according to the latest delivery time of the order. If two orders have the same timeliness, they are sorted according to distance; in the comprehensive mode, both distance and timeliness are taken into account. Under the premise of not affecting timeliness, orders with short distance are given priority.
[0085] In the embodiments of the present application, as a first implementation, the sorting strategy may include an extreme speed strategy; as a second implementation, the sorting strategy may include a timeliness strategy; as a third implementation, the sorting strategy may include both an extreme speed strategy and a timeliness strategy. Among them, the third implementation can be understood as a comprehensive strategy obtained by taking into account both the extreme speed strategy and the timeliness strategy.
[0086] In the above scheme, the extreme speed strategy, time-efficiency strategy and comprehensive mode (including the extreme speed mode and the time-efficiency mode) are supported. When the time-efficiency requirement is not tight, the picking can be carried out in a distance-first manner; when the time-efficiency requirement is tight, the picking can be carried out strictly in a time-efficiency-first manner, or the time-efficiency and distance can be switched. Therefore, the order allocation method provided in the embodiment of the present application takes into account the needs of different warehouses at different time periods, and can adapt to a variety of scenarios, thereby improving the adaptability of order picking.
[0087] Further, based on the above embodiment, when the sorting strategy includes the extreme speed strategy, the above step S104 may specifically include the following steps:
[0088] Step 1), calculate the picking distance between the current location and the order location.
[0089] Step 2), sort the orders in the partition in ascending order of picking distance.
[0090] In the above scheme, the extreme speed strategy can be switched to allow pickers to pick items nearby according to their habits, thereby reducing the walking distance of pickers.
[0091] Further, based on the above embodiment, when the sorting strategy includes a timeliness strategy, the above step S104 may specifically include the following steps:
[0092] Sort the orders within the partition in order from earliest to latest delivery time.
[0093] In the above solution, the timeliness strategy can be switched when the latest delivery time of the order is approaching, so as to ensure that all orders can be picked and shipped before the latest delivery time.
[0094] Further, based on the above embodiment, when the sorting strategy includes the extreme speed strategy and the timeliness strategy, the greedy algorithm can be used to sort the orders. In this case, the above step S104 can specifically include the following steps:
[0095] Starting from the initial position being the current position and p being 1, the following steps are repeated for the orders in the partition until p is the number of orders in the partition:
[0096] Step 1), calculate the picking time between the initial location and the order location corresponding to the unsorted order.
[0097] Step 2) determines whether there is an order whose difference between the latest delivery time and the picking time is less than 0.
[0098] Step 3), if it exists, the difference between the latest delivery time and the picking time is not less than 0, and the order whose picking time is greater than the order with the smallest picking time in the p-1th order is updated as the new p-1th order, and the initial position is updated to the positioning position corresponding to the pth order.
[0099] Step 4), if it does not exist, the order with the difference between the latest delivery time and the picking time not less than 0 and the shortest picking time is determined as the pth order, and the initial position is updated to the positioning position corresponding to the pth order.
[0100] Specifically, in the above step 1), for the initial sorting, the initial position refers to the current position of the picker, and the unsorted orders refer to all orders in the warehouse area; for non-initial sorting, the initial position refers to the order position corresponding to the last sorted order, and the unsorted orders refer to some orders in the warehouse area that have not been sorted. As an implementation method, the above initial position can refer to the position corresponding to the warehouse location where the picker is currently located, and correspondingly, the above order position can refer to the position corresponding to the warehouse location where the order is located.
[0101] In the above step 2), if the difference between the latest delivery time and the picking time is less than 0, it means that when the picker picks the order, it will exceed the latest delivery time of the order, so the order needs to be picked in advance.
[0102] In the above step 3), if there is an order whose difference between the latest delivery time and the picking time is less than 0, it means that when the picker picks the order, it will exceed the latest delivery time of the order, and the last sorted order needs to be re-determined. In other words, the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is greater than the order with the smallest picking time among the p-1th orders can be updated as the new p-1th order, and the initial position is updated to the positioning position corresponding to the pth order. As an implementation method, the above positioning position can refer to the position corresponding to the storage location where the pth order is located.
[0103] It should be noted that when p is 1, it is the initial sorting, so there will be no orders where the difference between the latest delivery time and the picking time is less than 0.
[0104] In the above step 4), if there is no order whose difference between the latest delivery time and the picking time is less than 0, the next order to be sorted can be determined. In other words, the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is the smallest can be determined as the pth order, and the initial position is updated to the positioning position corresponding to the pth order. As an implementation method, the positioning position can refer to the position corresponding to the storage location where the pth order is located.
[0105] For example: First, we can determine the picking time T1 required for each order's corresponding order location to the current location without any picking operation and the latest picking time TLast corresponding to the order, and select the order with TLast-T1>=0 and the smallest T1 as the first order; then, calculate the picking time T2 required for other orders to be picked after the first order is picked, and check whether TLast-T2<0 exists.
[0106] If TLast-T2<0 does not exist, the first order is ranked first, and the order with TLast-T2>=0 and the smallest T2 is selected as the second order; if TLast-T2<0 exists, the order with TLast-T1>=0 and the second-to-last smallest T1 is selected as the first order; and so on, until all orders in the partition are sorted.
[0107] In the above solution, you can switch to a comprehensive mode (including extreme speed strategy and time-sensitive strategy) to allocate orders nearby while ensuring timeliness.
[0108] Further, based on the above embodiment, the order allocation method provided in the embodiment of the present application may also include the following steps:
[0109] Step 1), when there is a new order, determine whether the order location corresponding to the new order is in the forward direction of the picker.
[0110] Step 2), if the order position corresponding to the new order is in the forward direction, the new order is inserted into the forward queue corresponding to the picker; otherwise, the new order is inserted into the reverse queue corresponding to the picker; wherein the picker picks the order in the reverse queue after picking the order in the forward queue.
[0111] Specifically, since it takes a lot of time for pickers to turn around and pick repeatedly, resulting in low picking efficiency, the picking queue can be divided into a forward queue and a reverse queue. After picking the orders in the forward queue, the pickers turn around and pick the orders in the reverse queue.
[0112] In the application embodiment, if the order position corresponding to the new order is located in the forward direction of the picker, it means that the picker can pick up the new order when picking orders in the forward queue, so the new order can be inserted into the forward queue corresponding to the picker; if the order position corresponding to the new order is not located in the forward direction of the picker, it means that the picker can pick up the new order when picking orders in the reverse queue, so the new order can be inserted into the reverse queue corresponding to the picker.
[0113] In the above scheme, new orders generated after the start of picking can be continuously inserted into the walking path of the pickers, so that the picking density becomes larger and larger, and the pickers can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0114] Further, based on the above embodiment, a binary insertion method may be used to dynamically insert a new order. In this case, the step of inserting the new order into the forward queue corresponding to the picker may specifically include the following steps:
[0115] A binary search method is used to insert new orders into the forward queue corresponding to the picker.
[0116] For example: If the priority of the new order is not lower than the priority of the first order in the forward queue, the new order can be inserted at the first place in the forward queue and the order insertion process is terminated.
[0117] If the priority of the new order is lower than the priority of the last order in the forward queue, the new order can be inserted at the end of the forward queue and the order insertion process is terminated.
[0118] If the priority of the new order is lower than the priority of the first order in the forward queue and higher than the priority of the last order in the forward queue, then record the minimum queue range containing the new order, downIdx on the left and upIdx on the right, initially downIdx=0, upIdx=len, where len represents the forward queue; find the middle storage location midIdx, midIdx=downIdx+(upIdx-downIdx) / 2; if the priority of the new order is lower than midIdx, then downIdx=midIdx+1, that is, the new order is inserted into the second half of the forward queue), otherwise upIdx=midIdx-1, that is, the new order is inserted into the first half of the forward queue; if downIdx<=upIdx, repeat the above steps to update downIdx and upIdx; until the appropriate position is found, and terminate the order insertion process.
[0119] In the above scheme, new orders generated after the start of picking can be continuously inserted into the walking path of the pickers, so that the picking density becomes larger and larger, and the pickers can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0120] Further, based on the above embodiment, the order allocation method provided in the embodiment of the present application may also include the following steps:
[0121] When there are multiple new orders and the priorities of the multiple new orders are higher than the priorities of the orders in the picking queue, the new order is inserted at the first of the picking queue, and the multiple orders are sorted according to the sorting strategy.
[0122] Alternatively, the order allocation method provided in the embodiment of the present application may also include the following steps:
[0123] When there is an order with a higher priority in the picking queue, the order is inserted at the first place in the picking queue, and the remaining orders in the picking queue are sorted according to the sorting strategy.
[0124] Specifically, the priority of an order that needs to be expedited can be increased at any time, and it can be moved to the front of the picking queue. As an implementation method, when a batch order is placed at the top, all the placed orders will be sorted based on the sorting strategy separately, and other orders will continue to be sorted in the queue of the placed orders.
[0125] In the above scheme, orders that need to be expedited (ie, orders with high priority) can be sorted at the front of the queue, thereby improving the flexibility of order picking.
[0126] Please refer to Figure 6 , Figure 6 This is a schematic diagram of an order distribution system provided in an embodiment of the present application, which includes a warehouse map service, a warehouse management system (WMS) service, and an algorithm service. The warehouse map service is used to convert the warehouse map into a standard format and output it to the algorithm service, and to receive the map data returned by the algorithm service and convert it into the channel number of the original map; the algorithm service is used to execute the above-mentioned order distribution method.
[0127] The WMS service is used to control the overall picking rhythm, create process picking instances at the warehouse area level (that is, after the current warehouse area starts process picking, the behavior of controlling all picking operations in the warehouse area is called a process picking instance. When the warehouse area closes process picking, the instance ends), connect the actual picking operation and the algorithm service, and issue various instructions to the algorithm service. In addition, order generation and recording are performed by the WMS service. The WMS service interacts with the algorithm service in real time and pushes new orders to the algorithm service for priority calculation. When the picker completes a picking order, the WMS service pulls the highest priority order from the algorithm service. When there is an increase or decrease in personnel, the WMS service calls the algorithm service to recalculate the queues of each partition.
[0128] Please refer to Figure 7 , Figure 7A structural block diagram of an order distribution device provided in an embodiment of the present application, the order distribution device 700 includes: an acquisition module 701, used to obtain map data and order data corresponding to a target warehouse area, wherein the map data includes channel numbers corresponding to multiple channels in the target warehouse area; a division module 702, used to divide the target warehouse area into multiple partitions according to the order data and the number of personnel when the number of pickers in the target warehouse area changes, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap with each other and the number of orders is balanced; an allocation module 703, used to allocate a picker to each partition according to the map data, so that the total difference between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which he is assigned is minimized; a sorting module 704, used to sort the orders in each partition according to the sorting strategy and the order data.
[0129] In the above scheme, when the number of pickers in the target warehouse area changes, the target warehouse area can be re-partitioned according to the updated number of personnel, and the channels and order quantities picked by each picker can be rebalanced, that is, the target warehouse area can be dynamically divided into a corresponding number of partitions, and the number of orders in multiple partitions can be basically balanced, so as to avoid a certain partition taking a long time to pick orders; at the same time, the partition can be allocated nearby according to the current location of the picker, so as to reduce the walking path of the picker. Therefore, the order allocation method provided in the embodiment of the present application can improve the picking efficiency of the pickers in the process of picking the allocated orders.
[0130] Further, on the basis of the above embodiment, the order data includes the total order quantity corresponding to the target warehouse area and the channel order quantity corresponding to each channel, and the division module 702 is specifically used to: determine the average order quantity corresponding to each partition according to the total order quantity and the number of personnel; repeat the following steps starting from n=1 until i+1 is the number of partitions: starting from the nth channel in the target warehouse area, divide the nth channel to the m-1th channel into the i-th partition, and update n to m, wherein the order quantity in the nth channel to the m-1th channel is not greater than the average order quantity, n is an integer greater than 0 and not greater than the number of channels, m is an integer greater than 1 and not greater than the number of channels, and i is an integer greater than 0 and not greater than the number of partitions; when i+1 is the number of partitions, divide the remaining channels into the i+1th partition.
[0131] In the above scheme, when the number of pickers in the target warehouse area changes, the entire warehouse area can be dynamically divided into a corresponding number of partitions. Among them, by sequentially dividing multiple channels into one partition, the channels in each partition are made continuous; at the same time, the order ratio of the current partition is checked during the partitioning process to ensure the basic balance of orders, so as to improve the picking efficiency of pickers in the process of picking the assigned orders.
[0132] Furthermore, based on the above-mentioned embodiment, the allocation module 703 is specifically used to: allocate the partition corresponding to the channel where the picking personnel is located to the picking personnel; and use the enumeration method to allocate the remaining partitions to the remaining picking personnel so that the total difference between the channel number corresponding to the channel where the remaining picking personnel are currently located and the channel number corresponding to the partition to which they are allocated is minimized.
[0133] In the above scheme, when assigning pickers to each partition, the changes of the original pickers and the walking paths of the pickers are minimized as much as possible, thereby improving the picking efficiency of the pickers in the process of picking the assigned orders.
[0134] Further, based on the above embodiment, the order data includes the order location of the order in the partition and / or the latest delivery time of the order, and the sorting strategy includes at least one of the following: an extreme speed strategy, which represents sorting the orders according to the distance between the current location of the picker and the order location; a timeliness strategy, which represents sorting the orders according to the latest delivery time.
[0135] In the above scheme, the extreme speed strategy, time-efficiency strategy and comprehensive mode (including the extreme speed mode and the time-efficiency mode) are supported. When the time-efficiency requirement is not tight, the picking can be carried out in a distance-first manner; when the time-efficiency requirement is tight, the picking can be carried out strictly in a time-efficiency-first manner, or the time-efficiency and distance can be switched. Therefore, the order allocation method provided in the embodiment of the present application takes into account the needs of different warehouses at different time periods, and can adapt to a variety of scenarios, thereby improving the adaptability of order picking.
[0136] Further, based on the above embodiment, when the sorting strategy includes the extreme speed strategy, the sorting module 704 is specifically used to: calculate the picking distance between the current location and the order location; and sort the orders in the partition in order of the picking distance from small to large.
[0137] In the above scheme, the extreme speed strategy can be switched to allow pickers to pick items nearby according to their habits, thereby reducing the walking distance of pickers.
[0138] Further, based on the above embodiment, when the sorting strategy includes the timeliness strategy, the sorting module 704 is specifically used to sort the orders in the partition in order of the latest delivery time from early to late.
[0139] In the above solution, the timeliness strategy can be switched when the latest delivery time of the order is approaching, so as to ensure that all orders can be picked and shipped before the latest delivery time.
[0140] Further, on the basis of the above embodiment, when the sorting strategy includes the extreme speed strategy and the timeliness strategy, the sorting module 704 is specifically used to: starting from the initial position being the current position and p being 1, repeatedly perform the following steps for the orders in the partition until p is the number of orders in the partition: calculate the picking time between the initial position and the order position corresponding to the unsorted order; determine whether there is an order whose difference between the latest delivery time and the picking time is less than 0; if so, update the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is greater than the order with the smallest picking time in the p-1th order to a new p-1th order, and update the initial position to the positioning position corresponding to the pth order; if not, determine the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is the smallest as the pth order, and update the initial position to the positioning position corresponding to the pth order.
[0141] In the above solution, you can switch to a comprehensive mode (including extreme speed strategy and time-sensitive strategy) to allocate orders nearby while ensuring timeliness.
[0142] Furthermore, on the basis of the above embodiment, the order distribution device 700 also includes: a judgment module, which is used to judge whether the order position corresponding to the new order is located in the forward direction of the picker when there is a new order; a first insertion module, which is used to insert the new order into the forward queue corresponding to the picker if the order position corresponding to the new order is located in the forward direction; otherwise, insert the new order into the reverse queue corresponding to the picker; wherein, the picker picks the order in the reverse queue after picking the order in the forward queue.
[0143] In the above scheme, new orders generated after the start of picking can be continuously inserted into the walking path of the pickers, so that the picking density becomes larger and larger, and the pickers can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0144] Furthermore, based on the above embodiment, the first insertion module is specifically used to: use a binary search method to insert the new order into the forward queue corresponding to the picker.
[0145] In the above scheme, new orders generated after the start of picking can be continuously inserted into the walking path of the pickers, so that the picking density becomes larger and larger, and the pickers can process as many orders as possible at one time, thereby improving the efficiency of order picking.
[0146] Furthermore, on the basis of the above embodiment, the order distribution device 700 also includes: a second insertion module, which is used to insert the new order at the first position of the picking queue when there are multiple new orders and the priorities of the multiple new orders are higher than the priorities of the orders in the picking queue, and sort the multiple orders according to the sorting strategy; or, when there is an order with a higher priority in the picking queue, insert the order at the first position of the picking queue, and sort the remaining orders in the picking queue according to the sorting strategy.
[0147] In the above scheme, orders that need to be expedited (ie, orders with high priority) can be sorted at the front of the queue, thereby improving the flexibility of order picking.
[0148] Please refer to Figure 8 , Figure 8 The structural block diagram of an electronic device provided in an embodiment of the present application, the electronic device 800 includes: at least one processor 801, at least one communication interface 802, at least one memory 803 and at least one communication bus 804. Among them, the communication bus 804 is used to realize the direct connection and communication of these components, the communication interface 802 is used to communicate signaling or data with other node devices, and the memory 803 stores machine-readable instructions executable by the processor 801. When the electronic device 800 is running, the processor 801 communicates with the memory 803 through the communication bus 804, and the above-mentioned order allocation method is executed when the machine-readable instructions are called by the processor 801.
[0149] For example, the processor 801 of the embodiment of the present application reads a computer program from the memory 803 through the communication bus 804 and executes the computer program to implement the following method: obtaining map data and order data corresponding to the target warehouse area, wherein the map data includes channel numbers corresponding to multiple channels in the target warehouse area; when the number of pickers in the target warehouse area changes, dividing the target warehouse area into multiple partitions according to the order data and the number of personnel, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap with each other and the number of orders is balanced; assigning a picker to each partition according to the map data, so that the total difference between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which he is assigned is minimized; and sorting the orders in each partition according to the sorting strategy and the order data.
[0150] Among them, the processor 801 includes one or more, which can be an integrated circuit chip with signal processing capabilities. The above-mentioned processor 801 can be a general-purpose processor, including a central processing unit (CPU), a micro control unit (MCU), a network processor (NP) or other conventional processors; it can also be a dedicated processor, including a neural network processor (NPU), a graphics processor (GPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. In addition, when there are multiple processors 801, some of them can be general-purpose processors and the other part can be dedicated processors.
[0151] The memory 803 includes one or more, which may be, but not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc.
[0152] Understandably, Figure 8 The structure shown is for illustration only. The electronic device 800 may also include Figure 8 More or fewer components as shown, or with Figure 8 Different configurations are shown. Figure 8 Each component shown in can be implemented by hardware, software or a combination thereof. In the embodiment of the present application, the electronic device 800 can be, but is not limited to, a physical device such as a desktop computer, a laptop computer, a smart phone, a smart wearable device, a vehicle-mounted device, etc., and can also be a virtual device such as a virtual machine. In addition, the electronic device 800 is not necessarily a single device, but can also be a combination of multiple devices, such as a server cluster, etc.
[0153] The embodiment of the present application also provides a computer program product, including a computer program stored on a computer-readable storage medium, the computer program including computer program instructions, when the computer program instructions are executed by a computer, the computer can execute the steps of the order allocation method in the above embodiment, for example including: Step S101: Obtain map data and order data corresponding to the target warehouse area, wherein the map data includes channel numbers corresponding to multiple channels in the target warehouse area. Step S102: When the number of personnel of the pickers in the target warehouse area changes, the target warehouse area is divided into multiple partitions according to the order data and the number of personnel, wherein the number of partitions of the multiple partitions is equal to the number of personnel, the multiple partitions do not overlap with each other and the number of orders is balanced. Step S103: Allocate a picker to each partition according to the map data, so that the sum of the differences between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which it is assigned is minimized. Step S104: Sort the orders in each partition according to the sorting strategy and the order data.
[0154] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer program instructions. When the computer program instructions are executed by a computer, the computer executes the order allocation method described in the aforementioned method embodiment.
[0155] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, and the indirect coupling or communication connection of the devices or units can be electrical, mechanical or other forms.
[0156] In addition, the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0157] Furthermore, the functional modules in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
[0158] It should be noted that if the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can essentially be embodied in the form of a software product, or the part that contributes to the prior art or the part of the technical solution. The computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM) random access memory (RAM), disk or optical disk, and other media that can store program codes.
[0159] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any such actual relationship or order between these entities or operations.
[0160] The above description is only an embodiment of the present application and is not intended to limit the protection scope of the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. An order allocation method, characterized in that: include: Acquire map data and order data corresponding to the target warehouse area, wherein the map data includes channel numbers corresponding to a plurality of channels in the target warehouse area; When the number of picking personnel in the target warehouse area changes, the target warehouse area is divided into a plurality of partitions according to the order data and the number of personnel, wherein the number of the plurality of partitions is equal to the number of personnel, the plurality of partitions do not overlap with each other and the order numbers are balanced; According to the map data, a picker is assigned to each partition so that the sum of the differences between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which the picker is assigned is minimized; Orders in each partition are sorted according to the sorting strategy and the order data.
2. The order allocation method according to claim 1, characterized in that: The order data includes the total order quantity corresponding to the target warehouse area and the channel order quantity corresponding to each channel. The target warehouse area is divided into multiple partitions according to the order data and the number of personnel, including: Determine the average order quantity corresponding to each partition according to the total order quantity and the number of personnel; Repeat the following steps starting from n=1 until i+1 is the number of partitions: Starting from the nth channel in the target storage area, divide the nth channel to the m-1th channel into the ith partition, and update n to m, wherein the number of orders in the nth channel to the m-1th channel is not greater than the average order quantity, n is an integer greater than 0 and not greater than the number of channels, m is an integer greater than 1 and not greater than the number of channels, and i is an integer greater than 0 and not greater than the number of partitions; When i+1 is the number of partitions, the remaining channels are divided into the i+1th partition.
3. The order allocation method according to claim 1, characterized in that: The assigning a picking person to each zone according to the map data comprises: Allocate the partition corresponding to the channel where the picker is located to the picker; The remaining partitions are allocated to the remaining pickers by enumeration method, so that the sum of the differences between the channel numbers corresponding to the channels where the remaining pickers are currently located and the channel numbers corresponding to the partitions to which they are allocated is minimized.
4. The order allocation method according to claim 1, characterized in that: The order data includes the order location of the order in the partition and / or the latest delivery time of the order, and the sorting strategy includes at least one of the following: The extreme speed strategy is characterized in that the orders are sorted according to the distance between the current location of the picker and the location of the order; The timeliness strategy represents sorting the orders according to the latest delivery time.
5. The order allocation method according to claim 4, characterized in that: When the sorting strategy includes the extreme speed strategy, sorting the orders in each partition according to the sorting strategy and the order data includes: Calculate the picking distance between the current location and the order location; The orders in the partition are sorted in ascending order of the picking distance.
6. The order distribution method according to claim 4, characterized in that: When the sorting strategy includes the timeliness strategy, sorting the orders in each partition according to the sorting strategy and the order data includes: The orders in the partition are sorted in order from earliest to latest according to the latest delivery time.
7. The order distribution method according to claim 4, characterized in that: When the sorting strategy includes the extreme speed strategy and the timeliness strategy, sorting the orders in each partition according to the sorting strategy and the order data includes: Starting from the initial position being the current position and p being 1, the following steps are repeatedly performed for the orders in the partition until p is the number of orders in the partition: Calculating the picking time between the initial position and the order position corresponding to the unsorted order; Determine whether there is an order for which the difference between the latest delivery time and the picking time is less than 0; If it exists, the difference between the latest delivery time and the picking time is not less than 0, and the order whose picking time is greater than the order with the smallest picking time in the p-1th order is updated as the new p-1th order, and the initial position is updated to the positioning position corresponding to the pth order; If it does not exist, the order whose difference between the latest delivery time and the picking time is not less than 0 and whose picking time is the smallest is determined as the pth order, and the initial position is updated to the positioning position corresponding to the pth order.
8. The order allocation method according to any one of claims 1 to 7, characterized in that: Also includes: When there is a new order, determining whether the order location corresponding to the new order is located in the forward direction of the picker; If the order position corresponding to the new order is in the forward direction, inserting the new order into the forward queue corresponding to the picker; Otherwise, insert the new order into the reverse queue corresponding to the picker; The picking personnel pick up the orders in the reverse queue after picking up the orders in the forward queue.
9. The order distribution method according to claim 8, characterized in that: The inserting the new order into the forward queue corresponding to the picker comprises: The new order is inserted into the forward queue corresponding to the picker using a binary search method.
10. The order allocation method according to any one of claims 1 to 7, characterized in that: Also includes: When there are multiple new orders and the priorities of the multiple new orders are all higher than the priorities of the orders in the picking queue, insert the new order at the first position of the picking queue, and sort the multiple new orders according to the sorting strategy; or, When there is an order with a higher priority in the picking queue, the order is inserted at the first position of the picking queue, and the remaining orders in the picking queue are sorted according to the sorting strategy.
11. An order distribution device, characterized in that: include: An acquisition module, used to acquire map data and order data corresponding to a target warehouse area, wherein the map data includes channel numbers corresponding to a plurality of channels in the target warehouse area; A partitioning module, configured to divide the target warehouse area into a plurality of partitions according to the order data and the number of personnel when the number of personnel of the picking personnel in the target warehouse area changes, wherein the number of the plurality of partitions is equal to the number of personnel, the plurality of partitions do not overlap with each other and the order numbers are balanced, and the channels in each partition are continuous; An allocation module, for allocating a picker to each partition according to the map data, so that the sum of the differences between the channel number corresponding to the channel where the picker is currently located and the channel number corresponding to the partition to which the picker is allocated is minimized; The sorting module is used to sort the orders in each partition according to the sorting strategy and the order data.
12. A computer program product, characterized in that The method comprises computer program instructions, which, when read and executed by a processor, execute the order allocation method according to any one of claims 1 to 10.
13. An electronic device, characterized in that: include: processor, memory, and bus; The processor and the memory communicate with each other via the bus; The memory stores computer program instructions that can be executed by the processor, and the processor calls the computer program instructions to execute the order allocation method according to any one of claims 1 to 10.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions, which, when executed by a computer, enable the computer to execute the order allocation method according to any one of claims 1 to 10.