Task allocation method and device, equipment and storage medium
By constructing the time weight matrix and using the weighted binary graph matching algorithm, the problem of unreasonable allocation of warehousing tasks is solved, the reasonable allocation of warehousing tasks and the improvement of processing efficiency is achieved, the problem of different busyness of warehouse workers is solved, and the warehouse is improved production efficiency.
Patent Information
- Application Number
- CN202411171466.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-23
- Publication Date
- 2024-12-17
AI Technical Summary
In the prior art, it is difficult for production dispatchers to consider the difficulty of warehousing tasks overall, resulting in unreasonable task allocation, resulting in large differences in the busyness of warehouse workers, affecting the processing efficiency of warehousing tasks.
By constructing a time weight matrix, the weighted binary graph matching algorithm is used to allocate warehousing tasks to warehouse workers to ensure the reasonable allocation of tasks and improve processing efficiency.
It realizes the rational allocation of warehousing tasks, shortens the total execution time, improves the processing efficiency of warehousing tasks, improves the production operation efficiency of the warehouse, and achieves cost reduction and efficiency improvement.
Smart Images

Figure CN119151210A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the field of computer technology, and in particular to a task allocation method, device, equipment and storage medium. Background Art
[0002] With the rapid development of e-commerce, the requirements for the processing efficiency of storage tasks in warehouses are getting higher and higher. A good storage system should ensure the timely storage and accurate delivery of goods, and ensure fast and accurate delivery to customers. Therefore, the reasonable allocation of storage tasks in the warehouse is particularly important to improve the processing efficiency of storage tasks.
[0003] In the prior art, each warehousing task is usually assigned to each warehouse worker through manual scheduling, relying on the experience of the production scheduler.
[0004] In the process of implementing the present invention, the inventors found that there are at least the following technical problems in the prior art:
[0005] Production schedulers often fail to take into account the difficulty of each warehousing task as a whole, which often leads to unreasonable allocation of warehousing tasks and causes large differences in the busyness of warehouse workers. Summary of the invention
[0006] The present invention provides a task allocation method, device, equipment and storage medium to achieve reasonable allocation of warehousing tasks and improve the processing efficiency of warehousing tasks.
[0007] In a first aspect, an embodiment of the present invention provides a task allocation method, comprising:
[0008] Generate storage tasks based on the item acquisition tasks corresponding to the current warehouse;
[0009] Constructing a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker;
[0010] The time weight matrix is used as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm.
[0011] In a second aspect, an embodiment of the present invention further provides a task allocation device, comprising:
[0012] A generation module is used to generate storage tasks according to the storage item acquisition tasks in the current warehouse;
[0013] A construction module, used to construct a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each storage task, wherein the rows of the time weight matrix represent each storage task and the columns represent each warehouse worker;
[0014] An allocation module is used to use the time weight matrix as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to each of the warehouse workers based on the weighted bipartite graph matching algorithm.
[0015] In a third aspect, an embodiment of the present invention further provides a computer device, the computer device comprising:
[0016] one or more processors;
[0017] a storage device for storing one or more programs,
[0018] When the one or more programs are executed by the one or more processors, the one or more processors implement the task allocation method as described in any one of the first aspects.
[0019] In a fourth aspect, an embodiment of the present invention further provides a storage medium comprising computer executable instructions, wherein the computer executable instructions, when executed by a computer processor, are used to execute the task allocation method as described in any one of the first aspects.
[0020] In a fifth aspect, an embodiment of the present invention further provides a computer program product, characterized in that the computer program product comprises a computer program, and when the computer program is executed by a processor, the task allocation method as described in any one of the first aspects is implemented.
[0021] The embodiments of the above invention have the following advantages or beneficial effects:
[0022] An embodiment of the present invention provides a task assignment method, comprising: generating storage tasks according to item acquisition tasks corresponding to a current warehouse; constructing a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each storage task, wherein the rows of the time weight matrix represent each storage task and the columns represent each warehouse worker; using the time weight matrix as input to a weighted bipartite graph matching algorithm to assign the storage tasks to each warehouse worker based on the weighted bipartite graph matching algorithm. The above-mentioned technical scheme, the above-mentioned technical scheme, can first generate the storage tasks in the current warehouse according to the item acquisition tasks corresponding to the current warehouse, and realize the generation of storage tasks in the current warehouse to be assigned to warehouse workers. Secondly, it can determine the time for each warehouse worker in the current warehouse to perform each storage task, and then it can construct a time weight matrix according to the time for each warehouse worker in the current warehouse to perform each storage task, and then use the time weight matrix as the input of the weighted bipartite graph matching algorithm. The weighted bipartite graph matching algorithm can determine a variety of matching methods for storage tasks and warehouse workers, and determine the allocation method with the highest execution efficiency of storage tasks as the target allocation method, and allocate each storage task to each warehouse worker based on the target allocation method to achieve a reasonable allocation of storage tasks. This allocation method can make the total execution time of storage tasks the shortest, that is, the processing efficiency of storage tasks is the highest, thereby improving the production operation efficiency of the current warehouse and achieving the purpose of reducing costs and increasing efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 A flowchart of a task allocation method provided by an embodiment of the present invention;
[0024] Figure 2 A flowchart of another task allocation method provided by an embodiment of the present invention;
[0025] Figure 3 A schematic diagram of a KM algorithm flow in another task allocation method provided by an embodiment of the present invention;
[0026] Figure 4 A schematic diagram of allocating storage tasks to warehouse tasks in another task allocation method provided by an embodiment of the present invention;
[0027] Figure 5a A schematic diagram of the working time of each warehouse worker when each warehousing task is assigned to each warehouse worker by manual scheduling;
[0028] Figure 5b A schematic diagram of the working time of each warehouse worker when each warehousing task is assigned to each warehouse worker by means of the present application;
[0029] Figure 6 A schematic diagram of the structure of a task allocation device provided by an embodiment of the present invention;
[0030] Figure 7 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0031] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only parts related to the present invention, rather than all structures, are shown in the accompanying drawings.
[0032] It should be mentioned before discussing exemplary embodiments in more detail that some exemplary embodiments are described as processes or methods depicted as flow charts. Although the flow charts describe various operations (or steps) as sequential processes, many operations therein can be implemented in parallel, concurrently or simultaneously. In addition, the order of various operations can be rearranged. The process can be terminated when its operation is completed, but can also have additional steps not included in the accompanying drawings. The process can correspond to methods, functions, procedures, subroutines, subprograms, etc. In addition, the embodiments in the present invention and the features in the embodiments can be combined with each other without conflict.
[0033] Figure 1 The flowchart of a task allocation method provided by an embodiment of the present invention is applicable to the situation where it is necessary to reasonably allocate storage tasks to warehouse workers. The method can be executed by a task allocation device, which can be implemented by software and / or hardware. Figure 1 The method specifically comprises the following steps:
[0034] Step 110: Generate a storage task according to the item acquisition task corresponding to the current warehouse.
[0035] Among them, warehousing tasks include inbound tasks, in-stock tasks and outbound tasks. The item acquisition tasks corresponding to the current warehouse can be understood as the inbound orders and outbound orders corresponding to the current warehouse. For inbound orders, an inbound order is an inbound task, and outbound orders are allocated to the current warehouse by the logistics system based on the items contained in the shopping orders triggered by each user based on the shopping application.
[0036] Specifically, an incoming order is an incoming task. Therefore, an incoming task can be generated based on the incoming order. At this time, the incoming task can be understood as an incoming shelf task. For in-stock tasks, an in-stock task can be generated based on the incoming quantity of each incoming item in the incoming order corresponding to the current warehouse and the outgoing quantity of each outgoing item in the outgoing order. At this time, the in-stock task can be understood as an in-stock replenishment task. For outgoing tasks, the outgoing orders can be appropriately merged to obtain outgoing tasks. At this time, the outgoing tasks can be understood as picking outgoing tasks.
[0037] In the embodiment of the present invention, it is achieved that the storage tasks in the current warehouse are generated according to the item acquisition tasks corresponding to the current warehouse. These storage tasks can be understood as tasks to be assigned to warehouse workers.
[0038] Step 120: construct a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task.
[0039] Among them, the rows of the time weight matrix represent the warehousing tasks, and the columns represent the warehouse workers.
[0040] Specifically, first, the time taken by each warehouse worker to perform each warehousing task can be determined. In order to quickly and conveniently determine the time taken by each warehouse worker to perform each warehousing task, the average of the time taken by each warehouse worker to perform each warehousing task can be determined as the time taken by each warehouse worker to perform each warehousing task.
[0041] Furthermore, a time weight matrix can be constructed based on the time it takes for each warehouse worker in the current warehouse to perform each warehousing task. The rows of the time weight matrix represent each warehousing task, the columns represent each warehouse worker, and each element in the time weight matrix represents the time it takes for each warehouse worker to perform each warehouse task.
[0042] In the embodiment of the present invention, after determining the time for each warehouse worker in the current warehouse to perform each warehousing task, a time weight matrix is constructed according to the time for each warehouse worker in the current warehouse to perform each warehousing task.
[0043] Step 130: Use the time weight matrix as an input of a weighted bipartite graph matching algorithm to assign the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm.
[0044] The task allocation problem of allocating warehousing tasks to warehouse workers can be understood as a constraint problem, where the problem can be defined as allocating each warehousing task to each warehouse worker so that the total time spent on executing the warehousing task is the shortest. The constraints can be that each warehousing task must be assigned to one warehouse worker, each warehousing task is assigned to at most one warehouse worker, the completion time of each warehousing task is as close as possible, the workload of each warehouse worker is as balanced as possible, etc.
[0045] The number of warehousing tasks is usually greater than the number of warehouse workers, so one warehouse worker is often assigned at least one warehousing task.
[0046] The weighted bipartite graph matching algorithm can use the Hungarian algorithm to determine all matching results of warehousing tasks and warehouse workers, and then find the most efficient one from the matching results.
[0047] Specifically, the time weight matrix is used as the input of the weighted bipartite graph matching algorithm. The weighted bipartite graph matching algorithm can represent the time weight matrix based on the bipartite graph, and the bipartite graph is composed of a warehouse set and a worker set, the warehouse set is composed of each warehouse task, and the worker set is composed of each warehouse worker. After the initial top mark value is determined according to the greedy method, the Hungarian algorithm is called on the premise of the initial top mark value to determine all matching results of the warehouse tasks and warehouse workers. If there is a complete match of an equal subgraph in the matching result, the corresponding relationship between the warehouse tasks and the warehouse workers is determined according to the complete match of the equal subgraph. Otherwise, the initial top mark value can be adjusted to obtain the target top mark value, and the Hungarian algorithm is called on the premise of the target top mark value to determine all matching results of the warehouse tasks and warehouse workers until a complete match of the equal subgraph is found. Furthermore, the correspondence between warehousing tasks and warehouse workers can be determined according to the complete matching of equal subgraphs, and the warehousing tasks can be allocated to each warehouse worker based on the correspondence between warehousing tasks and warehouse workers to achieve a reasonable allocation of warehousing tasks. Moreover, this allocation method can minimize the total execution time of warehousing tasks, that is, the processing efficiency of warehousing tasks is the highest.
[0048] In an embodiment of the present invention, by using the time weight matrix as the input of the weighted bipartite graph matching algorithm, the weighted bipartite graph matching algorithm can determine multiple matching methods of warehousing tasks and warehouse workers, and determine the allocation method with the highest execution efficiency of the warehousing tasks as the target allocation method, and allocate each warehousing task to each warehouse worker based on the target allocation method, so as to achieve reasonable allocation of warehousing tasks.
[0049] The task assignment method provided by an embodiment of the present invention includes: generating warehousing tasks according to the item acquisition tasks corresponding to the current warehouse; constructing a time weight matrix according to the time for each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker; using the time weight matrix as the input of a weighted bipartite graph matching algorithm to assign the warehousing tasks to each warehouse worker based on the weighted bipartite graph matching algorithm. The above technical scheme can first generate storage tasks in the current warehouse according to the item acquisition tasks corresponding to the current warehouse, so as to generate storage tasks in the current warehouse to be assigned to warehouse workers. Secondly, it can determine the time for each warehouse worker in the current warehouse to perform each storage task. Then, it can construct a time weight matrix according to the time for each warehouse worker in the current warehouse to perform each storage task. Then, the time weight matrix is used as the input of the weighted bipartite graph matching algorithm. The weighted bipartite graph matching algorithm can determine multiple matching methods for storage tasks and warehouse workers, and determine the allocation method with the highest execution efficiency of storage tasks as the target allocation method. Based on the target allocation method, each storage task is allocated to each warehouse worker to achieve a reasonable allocation of storage tasks. This allocation method can make the total execution time of storage tasks the shortest, that is, the processing efficiency of storage tasks is the highest, thereby improving the production operation efficiency of the current warehouse and achieving the purpose of reducing costs and increasing efficiency.
[0050] Figure 2 A flowchart of another task assignment method provided by an embodiment of the present invention, the embodiment of the present invention can be applied to situations where warehousing tasks need to be reasonably assigned to warehouse workers. Based on the above embodiment, before constructing the time weight matrix according to the time for each warehouse worker in the current warehouse to perform each warehousing task, the embodiment of the present invention adds "determining the time for each warehouse worker to perform each warehousing task based on the standard labor efficiency of each type of warehousing task." or "determining the worker attributes of each warehouse worker, determining the task attributes of each warehousing task; inputting the worker attributes of each warehouse worker and the task attributes of each warehousing task as input information into the time prediction model, so that the time prediction model determines the time for each warehouse worker to perform each warehousing task." The explanations of the terms that are the same or corresponding to the above embodiments are not repeated here. See. Figure 2 , the task allocation method provided by the embodiment of the present invention includes:
[0051] Step 210: Generate an incoming warehousing task in the warehousing task according to the incoming item acquisition task in the current warehouse.
[0052] As mentioned above, an incoming order is an incoming task. Therefore, an incoming task can be generated based on the incoming order. At this time, the incoming task can be understood as an incoming shelving task.
[0053] In the embodiment of the present invention, it is achieved that the incoming warehousing task in the warehousing task is generated according to the incoming warehousing order in the current warehouse.
[0054] Step 220: Generate in-warehouse tasks in the warehousing tasks according to the inbound item acquisition tasks and the outbound item acquisition tasks in the current warehouse.
[0055] In one implementation, step 220 may specifically include:
[0056] The inventory of each item is determined according to the inventory of each item in the current warehouse and the incoming quantity of each incoming item in the incoming item acquisition task; when it is determined that the outgoing quantity of any outgoing item in any outgoing item acquisition task is greater than the inventory, the in-stock task is generated according to the outgoing item whose outgoing quantity is greater than the inventory.
[0057] Specifically, the in-stock task can be understood as an in-stock replenishment task, that is, the replenishment and stocking of items in the current warehouse. First, the incoming quantity of each incoming item can be determined according to the incoming order corresponding to the current warehouse, and then the outgoing quantity of each outgoing item can be determined according to the outgoing order corresponding to the current warehouse. Then, the inventory of each item can be determined according to the inventory quantity and the incoming quantity of each item, and the inventory and outgoing quantity of each outgoing item are compared. When it is determined that there are outgoing items with an outgoing quantity greater than the inventory, an in-stock task is generated according to the outgoing items with an outgoing quantity greater than the inventory.
[0058] Of course, the execution of in-stock tasks can timely replenish the outbound items whose outbound quantity is greater than the inventory, avoiding the impact on the outbound items.
[0059] In the embodiment of the present invention, an in-stock task of generating a warehousing task is implemented according to the incoming orders and outgoing orders in the current warehouse.
[0060] Step 230: Generate an outbound task in the warehousing task according to the outbound item acquisition task in the current warehouse.
[0061] In one implementation, step 230 may specifically include:
[0062] An initial outbound task is generated according to each of the outbound item acquisition tasks; a saving degree after merging any preset number of initial outbound tasks is determined, and based on the saving degree, the preset number of initial outbound tasks are merged to obtain the outbound task.
[0063] Specifically, the outbound task can be generated based on the CW saving algorithm. First, an initial outbound task can be generated based on an outbound order, and then the savings after merging any preset number of initial outbound tasks can be calculated. The number of initial outbound tasks that need to be merged to calculate the savings can be set according to actual needs and is not specifically limited here.
[0064] For example, the savings after merging any two initial outbound tasks can be calculated based on the formula ΔD ij =d io +d oj -d ij ,i,j=1,2,…,n,i≠j Calculate the savings after merging any two initial outbound tasks, where ΔD ij It represents the value of picking distance saved after the initial outbound tasks are merged into one task, d io represents the picking distance required to pick order i from the picking starting point, d oj represents the picking distance required to pick order j and return to the picking starting point, d ij Represents the distance between the last picked item of order i and the first picked item of order j.
[0065] Furthermore, the calculated savings can be arranged in ascending order, starting from the maximum savings, and the two initial outbound tasks corresponding to each savings can be merged in pairs until there are no initial outbound tasks that can be merged. The task obtained by merging the initial outbound tasks can be determined as the outbound task. Of course, when merging the initial outbound tasks, it is necessary to consider the task attributes of each initial outbound task. The task attributes can reflect the transportation method of each outbound item in the initial outbound task, for example, forklift transportation and manual transportation. Therefore, when it is determined that the task attributes of the two initial outbound tasks corresponding to the savings are consistent, the two initial outbound tasks corresponding to the savings are merged. When it is determined that the task attributes of the two initial outbound tasks corresponding to the savings are inconsistent, the two initial outbound tasks corresponding to the savings are respectively determined as outbound tasks until there are no initial outbound tasks that can be merged.
[0066] In practical applications, the savings after merging any three initial outbound tasks can also be calculated, and the calculated savings are arranged in ascending order. Starting from the maximum savings, the three initial outbound tasks corresponding to each savings are merged until there are no initial outbound tasks that can be merged.
[0067] In the embodiment of the present invention, the initial outbound tasks corresponding to the outbound orders in the current warehouse are merged according to the saving degree, so as to realize the outbound tasks in the generated warehousing tasks.
[0068] After step 230 , step 240 or step 250 is executed.
[0069] Step 240: Determine the time for each warehouse worker to perform each warehousing task based on the standard labor efficiency of each warehousing task.
[0070] In order to improve versatility, the time required for each warehouse worker to perform each warehouse task can be determined based on the standard labor efficiency of each warehouse task. The standard labor efficiency of warehouse workers in incoming warehouse tasks, in-warehouse tasks, and outgoing warehouse tasks can be measured based on the 82BSI standard for corresponding IE (the level that operators who have received training and have certain practical operation experience can achieve when completing the action).
[0071] The standard labor efficiency of warehouse workers in the current warehouse is shown in Table 1.
[0072] Table 1
[0073] Links Work Tasks Working hours relaxation Unit time / s Core drivers Warehouse discharge 20% 7759 Number of pallets received Warehouse discharge 20% 684 Number of boxes received Warehouse Inspection and acceptance of goods 15% 468 Number of boxes received*Ratio of packages turned over Warehouse Inspection and acceptance of goods 15% 612 SKU quantity received Warehouse Shelves-Small Items Shelves 20% 7666 Number of small item delivery pallets Warehouse Shelves-Small Items Shelves 20% 216 Small item delivery SKU quantity Warehouse Shelves-Small Items Loan Shelf 20% 180 Small item delivery quantity Warehouse Shelves-Medium and Large Items 20% 8042 Number of medium and large delivery pallets Warehouse Shelves-Medium and Large Items 20% 12771 SKU quantity for receiving medium and large items Warehouse Shelves-Medium and Large Items 20% 036 Quantity of medium and large items received Out of stock Picking - Picking and gathering small items 20% 8638 Small piece collection picking list quantity Out of stock Picking - Picking and gathering small items 20% 4391 Small item picking SKU quantity Out of stock Picking - Picking and gathering small items 20% 792 Number of small-item pick-up products*Ratio of small-item bagging Out of stock Picking - Pick by order on high shelves 20% 9883 Forklift Picking Pick Order Quantity Out of stock Picking - Pick by order on high shelves 20% 12699 Forklift picking sKU quantity Out of stock Picking - Pick by order on high shelves 20% 288 Number of items picked by forklift Out of stock Picking - picking by order from high shelf lower level / ground pile 20% 13462 DiNiu picking picking list quantity Out of stock Picking - picking by order from high shelf lower level / ground pile 20% 7618 SKU quantity of DiNiu picking Out of stock Picking - picking by order from high shelf lower level / ground pile 20% 288 Number of goods picked by DiNiu Out of stock Review and packaging 18% 396 SKU quantity shipped Out of stock Review and packaging 18% 144 Quantity of goods shipped Out of stock Review and packaging 18% 3000 Number of small items shipped out of the warehouse / number of items in the same package Out of stock Review and packaging 18% 9000 Number of large items shipped out of warehouse Out of stock Shipping 20% 288 Number of packages shipped Out of stock Shipping 20% 9143 Number of shipping pallets In Library Restocking 15% 4102 Number of replenishment tasks In Library Restocking 15% 21106 Replenishment SKU quantity
[0074] Furthermore, we can refer to Table 1 and determine the time it takes for each warehouse worker to perform each warehousing task based on the standard labor efficiency of each warehousing task.
[0075] In the embodiment of the present invention, the time for each warehouse worker in the current warehouse to perform each warehousing task is determined based on the standard labor efficiency, which is more versatile.
[0076] After step 240 , step 260 is executed.
[0077] Step 250: determine the worker attributes of each of the warehouse workers and the task attributes of each of the warehousing tasks; input the worker attributes of each of the warehouse workers and the task attributes of each of the warehousing tasks as input information into a time prediction model, so that the time prediction model determines the time for each of the warehouse workers to perform each of the warehousing tasks.
[0078] Specifically, in order to accurately determine the time when each warehouse worker performs each warehousing task, the time when each warehouse worker performs each warehousing task can be determined based on the worker attributes of each warehouse worker and the task attributes of each warehousing task. The worker attributes may include the time when the warehouse worker joined the company and the time when the warehouse worker performed each warehousing task in the historical time period, and the task attributes may include the items included in the warehousing task and the quantity of each item. Specifically, the worker attributes of each warehouse worker and the task attributes of each warehousing task can be input into the time prediction model as input information, so that the time prediction model determines the time when each warehouse worker performs each warehousing task.
[0079] Of course, the time prediction model is trained by the time when each warehouse worker performs each warehousing task in the historical time period, and is used to determine the time when each warehouse worker performs each warehousing task.
[0080] In the embodiment of the present invention, the time for each warehouse worker in the current warehouse to perform each warehousing task is determined with higher accuracy according to the time prediction model.
[0081] Step 260: Construct a time weight matrix based on the time taken by each warehouse worker in the current warehouse to perform each warehousing task.
[0082] Among them, the rows of the time weight matrix represent each warehousing task, and the columns represent each warehouse worker.
[0083] As described above, a time weight matrix can be constructed according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task. The rows of the time weight matrix represent each warehousing task, the columns represent each warehouse worker, and each element in the time weight matrix represents the time taken by each warehouse worker to perform each warehouse task.
[0084] In the embodiment of the present invention, a time weight matrix is constructed according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task.
[0085] Step 270: Use the time weight matrix as the input of the weighted bipartite graph matching algorithm to allocate the warehousing tasks to each warehouse worker based on the weighted bipartite graph matching algorithm.
[0086] In one implementation, step 270 may specifically include:
[0087] Represent the time weight matrix based on a bipartite graph, where the bipartite graph is composed of a warehousing set and a worker set. The warehousing set is composed of each warehousing task, and the worker set is composed of each warehouse worker; determine the corresponding relationship between the warehousing task and the warehouse worker according to the perfect matching of the equal subgraph found by the Hungarian algorithm; allocate the warehousing task to each warehouse worker based on the corresponding relationship between the warehousing task and the warehouse worker.
[0088] For the task allocation problem of allocating warehousing tasks to warehouse workers, it is described by the following formula:
[0089]
[0090] Among them, {c ij} is the time weight matrix, the rows are the numbers of the warehousing tasks, the columns are the numbers of the warehouse workers, and c ij represents the time required for the j-th warehouse worker to complete the i-th warehousing task.
[0091] Generally, n > m, that is, the number of warehouse tasks is greater than the number of warehouse workers, and a warehouse worker needs to be assigned multiple warehousing tasks. Assign p warehousing tasks to each of the m warehouse workers, and get n = pm + q, where q is the remainder (q < m). It can be understood that in addition to each of the m warehouse workers being assigned p warehousing tasks, the remaining q warehousing tasks are assigned to the warehouse worker with the least average time to complete these q warehousing tasks.
[0092] In practical applications, storage tasks can be allocated based on the weighted bipartite graph matching algorithm (KM algorithm). Figure 3 A flow chart of a KM algorithm in another task allocation method provided by an embodiment of the present invention is shown as follows: Figure 3 As shown, the time weight matrix C can be used as the input of the KM algorithm. The KM algorithm can first represent the time weight matrix based on the bipartite graph, that is, the storage set T can be constructed according to each storage task, and the worker set W can be constructed according to each warehouse worker. The two sides of the bipartite graph represent the storage set and the worker set respectively. At the same time, the initial top label values lx and ly are determined according to the greedy method. According to the Hungarian algorithm, the complete matching of the equal subgraph is found. When it is determined that the Hungarian algorithm has not found the complete matching of the equal subgraph, lx and ly are adjusted. Specifically, lx can be adjusted to lx-d, and ly can be adjusted to ly+d, where d=min{lx[i]+ly[j]-C[i][j]}, i is the visited vertex, and j is the visited vertex. Then, the complete matching of the equal subgraph can be continued according to the Hungarian algorithm until the complete matching of the equal subgraph is found. Then, the corresponding relationship between the storage task and the warehouse worker can be determined according to the complete matching of the equal subgraph found by the Hungarian algorithm, and the storage task can be assigned to each warehouse worker based on the corresponding relationship between the storage task and the warehouse worker.
[0093] Figure 4 A schematic diagram of allocating storage tasks to warehouse tasks in another task allocation method provided by an embodiment of the present invention, such as Figure 4 As shown, worker 1, worker 2, worker 3, and worker n represent warehouse worker 1, warehouse worker 2, warehouse worker 3, and warehouse worker n.
[0094] Each warehouse worker is assigned at least one warehousing task, and each warehouse worker completes his / her assigned warehousing task at a relatively close time.
[0095] Figure 5a This is a schematic diagram of the working time of each warehouse worker when each warehousing task is assigned to each warehouse worker through manual scheduling. Figure 5b This is a schematic diagram of the working time of each warehouse worker when each warehousing task is assigned to each warehouse worker by the method of this application, such as Figure 5a and 5b As shown, the balance of the time taken by each warehouse worker to perform the warehousing task has been improved, and the overall variance has been reduced from the original 10.62 to 0.40, and the working time of the warehouse workers has become more balanced. Compared with manually assigning each warehousing task to each warehouse worker, this application assigns each warehousing task to each warehouse worker, and the total moving distance of the warehouse workers has also been effectively reduced.
[0096] In an embodiment of the present invention, by using the time weight matrix as the input of the weighted bipartite graph matching algorithm, the weighted bipartite graph matching algorithm can determine multiple matching methods of warehousing tasks and warehouse workers, and determine the allocation method with the highest execution efficiency of the warehousing tasks as the target allocation method, and allocate each warehousing task to each warehouse worker based on the target allocation method, so as to achieve reasonable allocation of warehousing tasks.
[0097] The task allocation method provided by the embodiment of the present invention includes: generating incoming tasks among warehousing tasks according to incoming item acquisition tasks in the current warehouse; generating in-warehouse tasks among warehousing tasks according to incoming item acquisition tasks and outgoing item acquisition tasks in the current warehouse; generating outgoing tasks among warehousing tasks according to outgoing item acquisition tasks in the current warehouse; determining the time for each warehouse worker to perform each warehousing task according to the standard labor efficiency of each type of warehousing task; or, determining the worker attributes of each warehouse worker and the task attributes of each warehousing task; inputting the worker attributes of each warehouse worker and the task attributes of each warehousing task as input information into a time prediction model, so that the time prediction model determines the time for each warehouse worker to perform each warehousing task; constructing a time weight matrix according to the time for each warehouse worker in the current warehouse to perform each warehousing task; and using the time weight matrix as the input of a weighted bipartite graph matching algorithm, so as to allocate the warehousing tasks to each warehouse worker based on the weighted bipartite graph matching algorithm. The above technical scheme can first generate the incoming tasks in the warehousing tasks according to the incoming orders in the current warehouse, generate the in-stock tasks of the warehousing tasks according to the incoming orders and outgoing orders in the current warehouse, merge the initial outgoing tasks corresponding to the outgoing orders in the current warehouse through the saving degree, and generate the outgoing tasks in the warehousing tasks. Secondly, the time for each warehouse worker in the current warehouse with strong versatility to perform each warehousing task can be determined according to the standard labor efficiency, or the time for each warehouse worker in the current warehouse with higher accuracy to perform each warehousing task can be determined according to the time prediction model. The time weight matrix is constructed in time, and then the time weight matrix can be used as the input of the weighted bipartite graph matching algorithm. The weighted bipartite graph matching algorithm can determine multiple matching methods of warehousing tasks and warehouse workers, and determine the allocation method with the highest execution efficiency of warehousing tasks as the target allocation method. Based on the target allocation method, each warehousing task is allocated to each warehouse worker to achieve a reasonable allocation of warehousing tasks. This allocation method can make the total execution time of warehousing tasks the shortest, that is, the processing efficiency of warehousing tasks is the highest, and the coordinated allocation of warehousing tasks and warehouse personnel in the current warehouse is realized, thereby improving the production operation efficiency of the current warehouse and achieving the goal of reducing costs and increasing efficiency.
[0098] In addition, the task allocation method proposed in this application is highly scalable and can be extended to other scenarios, such as production and manufacturing, vehicle scheduling, etc.
[0099] Figure 6 The structure diagram of a task allocation device provided by an embodiment of the present invention is shown in FIG. The device and the task allocation methods of the above embodiments belong to the same inventive concept. For details not described in detail in the embodiment of the task allocation device, reference can be made to the embodiment of the above task allocation method.
[0100] The specific structure of the task allocation device is as follows: Figure 6 As shown, including:
[0101] A generating module 610, for generating a storage task according to a storage item acquisition task in the current warehouse;
[0102] A construction module 620 is used to construct a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker;
[0103] The allocation module 630 is used to use the time weight matrix as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to each of the warehouse workers based on the weighted bipartite graph matching algorithm.
[0104] On the basis of the above embodiment, the item acquisition task includes an incoming item acquisition task and an outgoing item acquisition task, and the warehousing task includes an incoming task, an in-warehouse task and an outgoing task. Accordingly, the generation module 610 is specifically used for:
[0105] The incoming warehouse task is generated according to the incoming warehouse item acquisition task; the in-warehouse task is generated according to the incoming warehouse item acquisition task and the out-of-warehouse item acquisition task; and the out-of-warehouse task is generated according to the out-of-warehouse item acquisition task.
[0106] In one implementation, generating the in-warehouse task according to the in-warehouse item acquisition task and the out-warehouse item acquisition task includes:
[0107] The inventory of each item is determined according to the inventory of each item in the current warehouse and the incoming quantity of each incoming item in the incoming item acquisition task; when it is determined that the outgoing quantity of any outgoing item in any outgoing item acquisition task is greater than the inventory, the in-stock task is generated according to the outgoing item whose outgoing quantity is greater than the inventory.
[0108] In one implementation, generating the outbound task according to the outbound item acquisition task includes:
[0109] An initial outbound task is generated according to each of the outbound item acquisition tasks; a saving degree after merging any preset number of initial outbound tasks is determined, and based on the saving degree, the preset number of initial outbound tasks are merged to obtain the outbound task.
[0110] Based on the above embodiment, the device further includes:
[0111] A determination module is used to determine the time for each warehouse worker to perform each warehousing task based on the standard labor efficiency of each type of warehousing task; or, to determine the worker attributes of each warehouse worker and the task attributes of each warehousing task; and to input the worker attributes of each warehouse worker and the task attributes of each warehousing task as input information into a time prediction model, so that the time prediction model determines the time for each warehouse worker to perform each warehousing task.
[0112] Based on the above embodiment, the allocation module 630 is specifically used for:
[0113] The time weight matrix is represented based on a bipartite graph, wherein the bipartite graph is composed of a warehouse set and a worker set, the warehouse set is composed of the warehouse tasks, and the worker set is composed of the warehouse workers; the correspondence between the warehouse tasks and the warehouse workers is determined based on the complete matching of the equal subgraphs found by the Hungarian algorithm; the warehouse tasks are allocated to the warehouse workers based on the correspondence between the warehouse tasks and the warehouse workers.
[0114] The task allocation device provided in the embodiment of the present invention can execute the task allocation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the task allocation method.
[0115] It is worth noting that in the embodiment of the above-mentioned task allocation device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of the present invention.
[0116] Figure 7 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention. Figure 7 A block diagram of an exemplary computer device 7 suitable for use in implementing embodiments of the present invention is shown. Figure 7 The computer device 7 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.
[0117] like Figure 7As shown, the computer device 7 is in the form of a general-purpose computing electronic device. The components of the computer device 7 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 connecting different system components (including the system memory 28 and the processing unit 16).
[0118] Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or a local bus using any of a variety of bus architectures. By way of example, these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
[0119] The computer device 7 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by the computer device 7, including volatile and non-volatile media, removable and non-removable media.
[0120] The system memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The computer device 7 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 34 may be used to read and write non-removable, non-volatile magnetic media ( Figure 7 not shown, usually called a "hard drive"). Although Figure 7 Not shown in the figure, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, a DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to the bus 18 via one or more data medium interfaces. The system memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present invention.
[0121] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in system memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. Program modules 42 generally perform the functions and / or methods of the embodiments described herein.
[0122] The computer device 7 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), one or more devices that enable a user to interact with the computer device 7, and / or any device that enables the computer device 7 to communicate with one or more other computing devices (e.g., network card, modem, etc.). Such communication may be performed via input / output (I / O) interface 22. Furthermore, the computer device 7 may also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN) and / or public network, such as the Internet) via network adapter 20. Figure 7 As shown, the network adapter 20 communicates with other modules of the computer device 7 via the bus 18. It should be understood that although Figure 7 Not shown, other hardware and / or software modules may be used in conjunction with computer device 7, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0123] The processing unit 16 executes various functional applications and page displays by running the programs stored in the system memory 28, for example, implementing the task allocation method provided in the embodiment of the present invention, which includes:
[0124] Generate storage tasks based on the item acquisition tasks corresponding to the current warehouse;
[0125] Constructing a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker;
[0126] The time weight matrix is used as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm.
[0127] Of course, those skilled in the art can understand that the processor can also implement the technical solution of the task allocation method provided by any embodiment of the present invention.
[0128] An embodiment of the present invention provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the task allocation method provided by the embodiment of the present invention is implemented, for example, and the method includes:
[0129] Generate storage tasks based on the item acquisition tasks corresponding to the current warehouse;
[0130] Constructing a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker;
[0131] The time weight matrix is used as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm.
[0132] The computer storage medium of the embodiment of the present invention can adopt any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to: an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.
[0133] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0134] The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0135] Computer program code for performing the operations of the present invention may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0136] It should be understood by those skilled in the art that the modules or steps of the present invention described above can be implemented by a general-purpose computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, optionally, they can be implemented by a program code executable by a computer device, so that they can be stored in a storage device and executed by the computing device, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present invention is not limited to any specific combination of hardware and software.
[0137] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A task allocation method, characterized in that: include: Generate storage tasks based on the item acquisition tasks corresponding to the current warehouse; Constructing a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each warehousing task, wherein the rows of the time weight matrix represent each warehousing task and the columns represent each warehouse worker; The time weight matrix is used as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm.
2. The task allocation method according to claim 1, characterized in that: The item acquisition task includes an incoming item acquisition task and an outgoing item acquisition task. The storage task includes an incoming task, an in-warehouse task and an outgoing task. Accordingly, a storage task is generated according to the item acquisition task corresponding to the current warehouse, including: Generate the warehousing task according to the warehousing item acquisition task; Generate the in-warehouse task according to the in-warehouse item acquisition task and the out-warehouse item acquisition task; The outbound item task is generated according to the outbound item acquisition task.
3. The task allocation method according to claim 2, characterized in that: Generating the in-warehouse task according to the in-warehouse item acquisition task and the out-warehouse item acquisition task includes: Determine the inventory of each item according to the inventory of each item in the current warehouse and the inventory of each incoming item in the incoming item acquisition task; When it is determined that the outbound quantity of any outbound item in any outbound item acquisition task is greater than the inventory quantity, the in-stock task is generated according to the outbound item whose outbound quantity is greater than the inventory quantity.
4. The task allocation method according to claim 2, characterized in that: Generating the outbound task according to the outbound item acquisition task includes: Generate an initial outbound task according to each of the outbound item acquisition tasks; The economy degree after merging any preset number of initial outbound tasks is determined, and the preset number of initial outbound tasks are merged based on the economy degree to obtain the outbound tasks.
5. The task allocation method according to claim 1, characterized in that: Before constructing the time weight matrix according to the time for each warehouse worker in the current warehouse to perform each storage task, the method further includes: The time required for each warehouse worker to perform each warehousing task is determined based on the standard labor efficiency of each warehousing task.
6. The task allocation method according to claim 1, characterized in that: Before constructing the time weight matrix according to the time for each warehouse worker in the current warehouse to perform each storage task, the method further includes: Determining worker attributes of each of the warehouse workers and task attributes of each of the warehousing tasks; The worker attributes of each warehouse worker and the task attributes of each warehousing task are input into a time prediction model as input information, so that the time prediction model determines the time for each warehouse worker to perform each warehousing task.
7. The task allocation method according to claim 1, characterized in that: Using the time weight matrix as an input of a weighted bipartite graph matching algorithm to assign the warehousing tasks to the warehouse workers based on the weighted bipartite graph matching algorithm includes: The time weight matrix is represented based on a bipartite graph, wherein the bipartite graph is composed of a warehouse set and a worker set, the warehouse set is composed of the warehouse tasks, and the worker set is composed of the warehouse workers; Determine the correspondence between the warehousing tasks and the warehouse workers according to the complete matching of the equal subgraphs found by the Hungarian algorithm; The warehousing tasks are allocated to the warehouse workers based on the corresponding relationship between the warehousing tasks and the warehouse workers.
8. A task allocation device, characterized in that: include: A generation module is used to generate storage tasks according to the storage item acquisition tasks in the current warehouse; A construction module, configured to construct a time weight matrix according to the time taken by each warehouse worker in the current warehouse to perform each storage task, wherein the rows of the time weight matrix represent each storage task and the columns represent each warehouse worker; An allocation module is used to use the time weight matrix as an input of a weighted bipartite graph matching algorithm to allocate the warehousing tasks to each of the warehouse workers based on the weighted bipartite graph matching algorithm.
9. A computer device, characterized in that: The computer device comprises: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the task allocation method as described in any one of claims 1 to 7.
10. A storage medium containing computer executable instructions, characterized in that: When the computer executable instructions are executed by a computer processor, they are used to perform the task allocation method according to any one of claims 1 to 7.
11. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the task allocation method according to any one of claims 1 to 7 is implemented.
