A method and apparatus for task allocation
Patent Information
- Application Number
- CN202610992713.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-03
- Publication Date
- 2026-10-09
AI Technical Summary
但是上述分配方式缺乏对于任务难度的评估,各个任务难度不同导致分拣人员的分拣速度也不同,容易导致分拣人员的任务不均,影响整体的任务效率
[0014]上述发明中的一个实施例具有如下优点或有益效果:能够结合任务维度的任务难度指标和待分配人员维度的分拣能力指标综合构建匹配矩阵,并通过能力复制和求解算法的机制进行矩阵的精准求解,打破任务与人员数量相等的约束,实现全局效率的最大化。根据计算得到的解确定的任务分配方案为基于全局场景确定的,大大提高了任务的整体处理效率。
Smart Images

Figure CN122887353A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer technology, and in particular to a method and apparatus for task allocation. Background Technology
[0002] Currently, in logistics warehouse management scenarios, after a warehouse receives a batch of sorting tasks, the warehousing system typically allocates and distributes them to sorting personnel, who then perform the sorting operations to complete the tasks. Task allocation can usually be done using a round-robin approach, where tasks are assigned to available sorting personnel in a specific order after they are received, or a first-come, first-served approach, assigning tasks to sorting personnel in the order they arrive. However, these allocation methods lack assessment of task difficulty. Different tasks have varying levels of difficulty, leading to different sorting speeds among personnel and potentially causing uneven workload distribution, thus impacting overall efficiency. Summary of the Invention
[0003] In view of this, embodiments of the present invention provide a method and apparatus for task allocation, which can comprehensively consider task difficulty indicators, sorting ability indicators of personnel to be assigned, and the quantity relationship between tasks and personnel to allocate tasks, ensuring the accuracy of allocation results and helping to improve the sorting efficiency of tasks to be processed.
[0004] To achieve the above objectives, according to one aspect of the present invention, a method for task allocation is provided, comprising: A matching matrix between the tasks to be processed and the personnel to be assigned is constructed based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned. The matching matrix is copied according to the maximum task allocation, and the copy result is appended to the right side of the matching matrix to obtain the extended matrix; Calculate the cost matrix between the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix; The cost matrix is solved with the goal of minimizing the cost, and a task allocation scheme is generated based on the solution.
[0005] Optionally, the rows of the matching matrix correspond to the tasks to be processed, and the columns of the matching matrix correspond to the personnel to be assigned. Constructing the matching matrix between the tasks to be processed and the personnel to be assigned based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned includes: The benefit value of each task to be processed is calculated based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned. A matching matrix between the tasks to be processed and the personnel to be assigned is constructed based on the benefit values.
[0006] Optionally, the step of copying the matching matrix according to the maximum task allocation and appending the copy result to the right side of the matching matrix to obtain an expanded matrix includes: The number of times the matching matrix is copied is determined based on the maximum task allocation amount; The matching matrix is copied according to the specified number of copies, and the copying results are sequentially appended to the right side of the matching matrix to obtain the extended matrix.
[0007] Optionally, before constructing the matching matrix between the task to be processed and the personnel to be assigned based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned, the method further includes: Determine the task parameters of the task to be processed, and calculate the task difficulty index of the task to be processed based on the task parameters and preset weights; The task parameters include at least one of the following: order quantity, product specification quantity, storage space quantity, product size, and product type.
[0008] Optionally, before constructing the matching matrix between the task to be processed and the personnel to be assigned based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned, the method further includes: Obtain the number of unfinished tasks of the personnel to be assigned, and calculate the load rate of the personnel to be assigned based on the number of unfinished tasks; Calculate the ability value of the personnel to be assigned based on their historical task efficiency and ability parameters. The sorting capacity index of the personnel to be assigned is calculated based on the load rate and the capacity value.
[0009] Optionally, the method further includes: Listen for task change events and personnel change events, and upon detecting a task change event and / or personnel change event, reassign the pending tasks corresponding to the task change event and / or personnel change event.
[0010] According to another aspect of the present invention, a task allocation apparatus is provided, comprising: A construction module is used to construct a matching matrix between the task to be processed and the personnel to be assigned, based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned. An extension module is used to copy the matching matrix according to the maximum task allocation amount, and append the copy result to the right side of the matching matrix to obtain an extended matrix; The first calculation module is used to calculate the cost matrix between the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix; The generation module is used to solve the cost matrix with the objective function of minimizing the cost, and generate a task allocation scheme based on the solution result.
[0011] According to another aspect of the present invention, an electronic device is provided, comprising: one or more processors; and a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the task allocation method provided in the embodiments of the present invention.
[0012] According to another aspect of the present invention, a computer-readable medium is provided having a computer program stored thereon, which, when executed by a processor, implements the task allocation method provided in the embodiments of the present invention.
[0013] According to another aspect of the present invention, a computer program product is provided, including a computer program that, when executed by a processor, implements the task allocation method provided in the embodiments of the present invention.
[0014] One embodiment of the above invention has the following advantages or beneficial effects: it can comprehensively construct a matching matrix by combining the task difficulty index of the task dimension and the sorting capability index of the personnel to be assigned, and accurately solve the matrix through the mechanism of capability replication and solution algorithm, breaking the constraint that the number of tasks and personnel are equal, and maximizing global efficiency. The task allocation scheme determined based on the calculated solution is determined based on the global scenario, which greatly improves the overall processing efficiency of the task.
[0015] The further effects of the aforementioned unconventional alternative methods will be explained below in conjunction with specific implementation methods. Attached Figure Description
[0016] The accompanying drawings are provided to better understand the invention and are not intended to unduly limit the scope of the invention. Wherein: Figure 1 This is a schematic diagram of the main steps of the task allocation method according to an embodiment of the present invention; Figure 2 An architecture diagram of a task allocation system provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the main modules of a task allocation device according to an embodiment of the present invention; Figure 4 This is an exemplary system architecture diagram in which embodiments of the present invention can be applied; Figure 5This is a schematic diagram of the structure of a computer system suitable for implementing terminal devices or servers of the present invention. Detailed Implementation
[0017] The following description, in conjunction with the accompanying drawings, illustrates exemplary embodiments of the present invention, including various details to aid understanding. These details should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the invention. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0018] It should be noted that the technical solutions disclosed in this invention, regarding the collection, updating, analysis, processing, use, transmission, and storage of user personal information, all comply with relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. Necessary measures are taken to prevent unauthorized access to user personal information data and to safeguard user personal information security, network security, and national security.
[0019] It should be noted that the collection, use, storage, sharing and transfer of user personal information involved in the technical solution of the present invention all comply with the provisions of relevant laws and regulations, and require notification to users and obtaining their consent or authorization. When applicable, user personal information is subjected to de-identification and / or anonymization and / or encryption technical processing.
[0020] Currently, in modern warehousing systems, received customer orders are typically aggregated into multiple waves of tasks. Each wave of tasks is then distributed to various sorting personnel according to a pre-set allocation method. Traditional task allocation methods include: Round-robin allocation: tasks are assigned to available personnel in turn, ignoring differences in task difficulty and personnel capabilities; First-come, first-served (FIFO): tasks are assigned according to arrival order, which can lead to highly skilled personnel handling simple tasks, resulting in inefficiency; and static rule matching: such as "large items are assigned to male employees," which lacks quantitative evaluation and global optimization.
[0021] However, the above methods often only allocate tasks on a single basis, focusing only on which sorting personnel can improve the sorting efficiency of that task, without assessing the overall sorting efficiency of all tasks. This can easily lead to localized maximum sorting efficiency rather than overall maximum efficiency. Furthermore, these allocation methods can result in uneven task distribution. For example, assigning easier tasks to more capable sorting personnel wastes their skills, while assigning more difficult tasks to less capable personnel leads to extremely low sorting efficiency for those tasks, impacting overall sorting efficiency.
[0022] Considering the shortcomings of the above allocation methods, this invention provides a task allocation method that comprehensively determines the allocation method of the tasks to be processed in the current wave from two dimensions: task difficulty index and sorting capacity index. At the same time, it takes into account the situation that the same sorting personnel can be assigned multiple tasks to be processed, and further expands the matching matrix formed by tasks and personnel. The task allocation scheme is obtained by solving the expanded matrix, which ensures the rationality of the task allocation result and helps to improve the overall sorting efficiency of subsequent tasks.
[0023] Figure 1 This is a schematic diagram illustrating the main steps of a task allocation method according to an embodiment of the present invention. Figure 1 As shown, the task allocation method mainly includes steps S101 to S104.
[0024] Step S101: Construct a matching matrix between tasks to be processed and personnel to be assigned based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned.
[0025] After receiving sorting tasks, a WMS (Warehouse Management System) typically aggregates multiple sorting tasks into different waves according to certain rules. For example, if the WMS receives multiple orders and needs to pick goods from each order in the warehouse, each order can be considered a sorting task. These tasks are aggregated based on the timeliness of the orders, resulting in multiple waves of tasks. Aggregation can be based on order parameters, such as same-day or next-day delivery, resulting in waves of tasks for same-day and next-day delivery. Subsequently, during task allocation, sorting tasks within each wave are assigned to ensure the overall sorting efficiency of the wave. For each wave, it's necessary to obtain the task difficulty index of all pending tasks and the sorting ability index of the personnel to be assigned in the warehouse. These two indicators, serving as different dimensions of data for task allocation, jointly influence the task allocation result, helping to achieve accurate allocation of tasks throughout the wave. Specifically, after obtaining the two indicator data, a matching matrix between pending tasks and personnel to be assigned can be constructed based on the indicator data. In this matrix, the columns represent personnel to be assigned and the rows represent tasks to be processed. The value of each item in the matrix can be a benefit value or a matching value calculated based on the sorting capacity index of the corresponding personnel to be assigned and the tasks to be processed.
[0026] In one embodiment, the task difficulty index can be determined based on the number of orders involved in the task, the number of SKUs (StockKeeping Units), the number of storage locations, etc.; the sorting capacity index can be determined based on the historical sorting efficiency of the personnel to be assigned.
[0027] Step S102: Copy the matching matrix according to the maximum task allocation, and append the copy result to the right side of the matching matrix to obtain the extended matrix.
[0028] The Hungarian algorithm can be used to solve the matching matrix, and a sorting plan is generated based on the personnel matched to each task in the solution. However, this method results in one task being matched with one personnel. In real-world scenarios, the sorting efficiency of highly capable individuals may be much higher than that of less capable individuals. Therefore, it is possible that a highly capable individual can complete multiple sorting tasks in a shorter time than a less capable individual can complete a single task. To break this constraint that the number of tasks equals the number of personnel, i.e., one personnel is assigned only one task, the original matching matrix can be expanded. Furthermore, to avoid excessive load on individual personnel, a maximum task allocation is pre-set; that is, the number of tasks assigned to any single personnel cannot exceed this maximum allocation.
[0029] To achieve the above expansion, the original matching matrix can be copied, and the copied result appended to the right side of the original matching matrix. This results in an expanded matrix in the column direction. Each column represents a task position that can be assigned to each person to be assigned. The number of task positions is the same as the number of copies, and the number of copies is the same as the maximum number of tasks that can be assigned. This expansion method effectively breaks the constraint that the number of tasks to be processed equals the number of people to be assigned. Although each task position can only match one task, each person to be assigned corresponds to multiple task positions, which is equivalent to each person to be assigned being able to match multiple tasks, thus overcoming the aforementioned constraint.
[0030] In one embodiment, the maximum task allocation amount can be dynamically adjusted according to the current allocation scenario, such as increasing it appropriately during peak periods and decreasing it appropriately during off-peak periods.
[0031] Step S103: Calculate the cost matrix of the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix.
[0032] After obtaining the extended matrix, the cost matrix for subsequent solutions can be calculated. Only after obtaining the cost matrix can the standard Hungarian algorithm (such as the Jonker-Volgenant algorithm (a variant of the Hungarian algorithm) or the Kuhn-Munkres algorithm) be called to calculate the optimal solution. Specifically, if the matching matrix... If the matrix is n×m, the expanded matrix S′ is n×m. The matrix of Kmax, where Kmax is the number of replications. Cost matrix. The conversion formula is:
[0033] If the obtained cost matrix is not a square matrix, rows or columns need to be supplemented to ensure the accuracy of the solution. The cost of the supplemented rows or columns is set to 0.
[0034] Step S104: Solve the cost matrix with the minimum cost as the objective function, and generate a task allocation scheme based on the solution results.
[0035] Using minimum cost as the objective function, the Hungarian algorithm is used to solve the cost matrix. Based on the solution, the matching task position for each task to be processed is determined, and then the personnel to be assigned to the corresponding task position is determined, so as to determine which personnel to assign the task to and the final task allocation scheme.
[0036] In one embodiment, in addition to ensuring global optimality during the solution process, other business constraints can be set, such as allowing specific types of pending tasks to be assigned only to specific personnel, in order to adapt to different business scenario requirements.
[0037] The task allocation method provided by this invention can comprehensively construct a matching matrix by combining task difficulty indicators from the task dimension and sorting capability indicators from the personnel dimension. It then uses capability replication and solution algorithms to accurately solve the matrix, breaking the constraint that the number of tasks and personnel must be equal, thereby maximizing global efficiency. The task allocation scheme determined based on the calculated solution is based on the global scenario, significantly improving the overall task processing efficiency.
[0038] In one embodiment, the rows of the matching matrix correspond to the tasks to be processed, and the columns of the matching matrix correspond to the personnel to be assigned. The matching matrix between the tasks to be processed and the personnel to be assigned is constructed based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned. This includes: calculating the benefit value of each task to be processed and assigning it to each personnel to be assigned based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned; and constructing the matching matrix between the tasks to be processed and the personnel to be assigned based on the benefit value.
[0039] When constructing the matching matrix, the rows of the matrix can represent the tasks to be processed. That is, if the number of tasks to be processed is n, then the number of rows in the matching matrix is n, and the i-th row of the matching matrix represents the i-th task to be processed. The columns of the matrix represent the personnel to be assigned, and the meaning of each column is similar to that of the tasks to be processed. When constructing the matching matrix, a benefit value can be calculated as the value of each item in the matrix. This benefit value represents the quantitative value of the benefit generated when task i is assigned to personnel j. Specifically, the benefit value is positively correlated with the sorting ability index of the personnel to be assigned and negatively correlated with the task difficulty index. Therefore, the benefit value... The calculation formula can be:
[0040] in, As a sorting capacity indicator, This is an indicator of task difficulty. It is a very small positive number used to prevent the calculation from failing due to division by zero.
[0041] In one embodiment, the row and column correspondence between tasks to be processed and personnel to be assigned can be interchanged.
[0042] In one embodiment, the matching matrix is copied according to the maximum task allocation amount, and the copied results are appended to the right side of the matching matrix to obtain an extended matrix. This includes: determining the number of times the matching matrix is copied according to the maximum task allocation amount; copying the matching matrix according to the number of copies, and appending the copied results to the right side of the matching matrix sequentially to obtain an extended matrix.
[0043] Matrix expansion can be achieved through copying. This involves copying the original matching matrix and appending the copy to the right side of the original matrix to obtain the final expanded matrix. Before performing the copying operation, the number of copies needs to be determined, which can be based on the maximum task allocation. The number of copies can be set to the maximum task allocation. Setting the maximum task allocation limits the workload of personnel to be assigned, preventing them from becoming overloaded.
[0044] In one practical example, since the purpose of copying is to break the one-to-one correspondence between tasks and personnel, and to increase the many-to-one correspondence between them, with the same task only able to be assigned to one person, while one person can be assigned multiple tasks, the copying operation should be performed in the direction of the row or column of the personnel to be assigned in the matching matrix. That is, if the column in the matching matrix represents the personnel to be assigned, the copying result should be appended to the right side of the matrix; if the row in the matching matrix represents the personnel to be assigned, the copying result should be appended to the bottom of the matrix.
[0045] In one embodiment, before constructing a matching matrix between the task to be processed and the sorting ability index of the personnel to be assigned, the method further includes: determining the task parameters of the task to be processed, and calculating the task difficulty index of the task to be processed based on the task parameters and preset weights; wherein, the task parameters include at least one of the following: order quantity, quantity of product specifications, quantity of storage locations, product size, and product type.
[0046] To accurately assess the task difficulty index of the tasks to be processed, before constructing the matching matrix, it is first necessary to obtain the multi-dimensional task parameters of the tasks in real time. These parameters are then combined with preset weights and weighted summation to calculate the task difficulty index value. To ensure the accuracy of the results, continuous variable task parameters need to be normalized, mapping them to the range [0,1] before weighted summation to obtain the final task difficulty index value. Multi-dimensional task parameters may include the number of orders. Product specifications and quantity (SKU quantity) Number of storage locations At least one of the following: product size and product type. Among them, product size... This parameter takes the value of 0 or 1, depending on whether the product is a large size. For example, if the product is a large size, the value is 1; otherwise, the value is 0. (Product type) This parameter also takes the value of 0 or 1, depending on whether the product is a perishable item. For example, if the product is perishable, the value is 1; otherwise, the value is 0. The following formula is the task difficulty index. An example of a calculation formula:
[0047] Among them, the calculated The value range is [0,1].
[0048] The task allocation method provided by the embodiments of the present invention can perform a copying operation on the constructed matching matrix to realize the copying of task processing capacity. Combined with the Hungarian algorithm for solving, it can solve the task allocation problem in scenarios where the number of tasks and the number of personnel are not equal, which helps to obtain an accurate task allocation scheme.
[0049] In one embodiment, before constructing a matching matrix between tasks to be processed and personnel to be assigned based on the task difficulty index of the tasks to be processed and the sorting capability index of the personnel to be assigned, the method further includes: obtaining the number of unfinished tasks of the personnel to be assigned and calculating the load rate of the personnel to be assigned based on the number of unfinished tasks; calculating the capability value of the personnel to be assigned based on the historical task efficiency and capability parameters of the personnel to be assigned; and calculating the sorting capability index of the personnel to be assigned based on the load rate and capability value.
[0050] Similar to calculating task difficulty metrics, calculating sorting capacity metrics also requires acquiring real-time, multi-dimensional data to accurately determine the current sorting capacity of the personnel to be assigned. Specifically, the acquired data for the personnel to be assigned includes static attribute data and dynamic attribute data. The dynamic attribute data refers to the number of tasks currently assigned but not yet completed by the personnel. Calculate the workload rate of the personnel to be assigned based on the number of unfinished tasks. The formula is Static attribute data includes the historical task efficiency of the personnel to be assigned. and / or years of service The capability value is calculated based on the obtained static attribute data. The calculation formula is: L = The weight values of 0.3 and 0.5 in this formula are merely examples and can be adjusted in actual applications. Furthermore, sorting capacity indicators... The calculation formula is shown below, where the weight values are only one example and can be adjusted for specific values:
[0051] in,( This can be used as a load attenuation factor, reflecting how overload reduces efficiency. The sorting capacity index calculated using this formula... The value range is [0,1].
[0052] In one embodiment, when calculating the sorting capacity index, the capacity value can also be calculated by combining other static attributes of the personnel to be assigned, such as recent average efficiency.
[0053] In one embodiment, the method further includes: listening to task change events and personnel change events, and after listening to task change events and / or personnel change events, reallocating the pending tasks corresponding to the task change events and / or personnel change events.
[0054] Since the calculation of the aforementioned indicator data and task allocation scheme is based on real-time data, and real-time data often fluctuates, it is necessary to accurately identify these changes to ensure the accuracy of the allocation scheme and adjust the scheme promptly. Specifically, changes in tasks and personnel can be identified by monitoring task change events and personnel change events. Then, a partial reassignment operation can be performed based on the pending tasks corresponding to the changed tasks and personnel, reducing the scope of task adjustments. For example, reassignment can be based on preset backup personnel, still using the above calculation method. Alternatively, to improve reassignment efficiency and reduce computational load, methods such as round-robin assignment can be used, facilitating the rapid allocation of changed tasks.
[0055] In one embodiment, the final generated task allocation scheme can be pushed to the system's task scheduling interface in the form of structured data, enabling the system to distribute tasks to the terminal devices of the personnel to be assigned, allowing them to execute the corresponding tasks. Simultaneously, the system can update the task allocation status of the personnel in real time, so that the next round of calculations can be performed when the next wave of tasks arrives.
[0056] The task allocation method provided by this invention can calculate accurate task difficulty and sorting capacity indicators by combining multi-dimensional real-time parameter data, providing an accurate data foundation for subsequent calculations. The sorting capacity indicator reflects the dynamic sorting ability of the personnel to be assigned, which helps to generate a task allocation scheme with maximum efficiency suitable for the current scenario. Furthermore, based on the above data, a matching matrix is constructed, and an extended allocation mechanism combining replication and the Hungarian algorithm is adopted, breaking the constraints of the number of tasks and personnel, and helping to generate a globally efficient solution. Finally, the task allocation scheme obtained through the above method can effectively improve the overall task processing efficiency.
[0057] Figure 2 This is an architecture diagram of a task allocation system provided in an embodiment of the present invention. The system includes a real-time job monitoring unit for providing data on personnel currently awaiting allocation (dynamic attribute data); a basic unit for providing data on tasks to be processed in the current wave; a human resources unit for providing data on personnel awaiting allocation (static attribute data); an intelligent service allocation engine for receiving data provided by the above units, allocating tasks, and issuing tasks; and a terminal device for receiving the issued tasks. The intelligent service allocation engine includes: a task difficulty index calculation unit for calculating task difficulty index; a sorting capacity index calculation unit for calculating sorting capacity index; a matrix construction unit for constructing a matching matrix, an extended matrix, and calculating a cost matrix; an algorithm unit for solving the constructed matrices; and a result evaluation unit for generating a task allocation scheme based on the solution results.
[0058] Figure 3 A schematic diagram of the main modules of the task allocation device provided in an embodiment of the present invention. Figure 3 As shown, the task allocation device 300 mainly includes a construction module 301, an extension module 302, a first calculation module 303, and a generation module 304.
[0059] Module 301 is used to construct a matching matrix between tasks to be processed and personnel to be assigned based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned. Extension module 302 is used to copy the matching matrix according to the maximum task allocation and append the copy result to the right side of the matching matrix to obtain the extended matrix; The first calculation module 303 is used to calculate the cost matrix of the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix; The generation module 304 is used to solve the cost matrix with the minimum cost as the objective function, and generate a task allocation scheme based on the solution results.
[0060] The task allocation apparatus provided in this embodiment of the invention can comprehensively construct a matching matrix by combining the task difficulty index of the task dimension and the sorting capability index of the personnel to be allocated dimension, and accurately solve the matrix through a capability replication and solution algorithm mechanism, breaking the constraint that the number of tasks and personnel are equal, and maximizing global efficiency. The task allocation scheme determined based on the calculated solution is determined based on the global scenario, which greatly improves the overall processing efficiency of the task.
[0061] In one embodiment, the rows of the matching matrix correspond to the tasks to be processed, and the columns of the matching matrix correspond to the personnel to be assigned. The construction module 301 is further configured to: calculate the benefit value of each task to be processed and assigned to each personnel based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned; and construct a matching matrix between the tasks to be processed and the personnel to be assigned based on the benefit value.
[0062] In one embodiment, the extension module 302 is further configured to: determine the number of times the matching matrix is copied based on the maximum task allocation; perform a copy operation on the matching matrix based on the number of copies, and sequentially append the copy results to the right side of the matching matrix to obtain the extension matrix.
[0063] In one embodiment, the task allocation device 300 further includes: a determination module 305 (not shown in the figure), used to determine the task parameters of the task to be processed, and to calculate the task difficulty index of the task to be processed according to the task parameters and preset weights; wherein, the task parameters include at least one of the following: order quantity, quantity of product specifications, quantity of storage space, product size and product type.
[0064] In one embodiment, the task allocation device 300 further includes: an acquisition module 306 (not shown in the figure), used to acquire the number of unfinished tasks of the personnel to be allocated, and calculate the load rate of the personnel to be allocated based on the number of unfinished tasks; a second calculation module 307 (not shown in the figure), used to calculate the capability value of the personnel to be allocated based on the historical task efficiency and capability parameters of the personnel to be allocated; and a third calculation module 308 (not shown in the figure), used to calculate the sorting capability index of the personnel to be allocated based on the load rate and capability value.
[0065] In one embodiment, the task allocation device 300 further includes a monitoring module 309 (not shown in the figure), which is used to monitor task change events and personnel change events, and to reallocate the tasks to be processed corresponding to the task change events and / or personnel change events after monitoring the task change events and / or personnel change events.
[0066] The task allocation apparatus provided in this embodiment of the invention can calculate accurate task difficulty and sorting capacity indicators by combining multi-dimensional real-time parameter data, providing an accurate data foundation for subsequent calculations. The sorting capacity indicator reflects the dynamic sorting ability of the personnel to be assigned, which helps to generate a task allocation scheme with maximum efficiency suitable for the current scenario. Furthermore, based on the above data, a matching matrix is constructed, and an extended allocation mechanism combining replication and the Hungarian algorithm is adopted, breaking the constraints of the number of tasks and personnel, and helping to generate a globally efficient solution. Finally, the task allocation scheme obtained through the above method can effectively improve the overall task processing efficiency.
[0067] Figure 4 An exemplary system architecture 400 is shown, in which the task allocation method or apparatus of embodiments of the present invention can be applied.
[0068] like Figure 4 As shown, system architecture 400 may include terminal devices 401, 402, and 403, a network 404, and a server 405. Network 404 serves as the medium for providing communication links between terminal devices 401, 402, and 403 and server 405. Network 404 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.
[0069] Users can use terminal devices 401, 402, and 403 to interact with server 405 via network 404 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 401, 402, and 403, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).
[0070] Terminal devices 401, 402, and 403 can be various electronic devices with displays that support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0071] Server 405 can be a server that provides various services, such as a backend management server that supports shopping websites browsed by users using terminal devices 401, 402, and 403 (for example only). The backend management server can analyze and process data such as received task assignment requests, and feed back the processing results (such as task assignment schemes - for example only) to the terminal devices.
[0072] It should be noted that the task allocation method provided in this embodiment of the invention is generally executed by server 405, and correspondingly, the task allocation device is generally located in server 405.
[0073] It should be understood that Figure 4 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0074] The following is for reference. Figure 5 It shows a schematic diagram of the structure of a computer system 500 suitable for implementing terminal devices or servers of the present invention. Figure 5 The terminal device or server shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of the present invention.
[0075] like Figure 5 As shown, the computer system 500 includes a central processing unit (CPU) 501, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 502 or programs loaded from storage section 508 into random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the system 500. The CPU 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0076] The following components are connected to I / O interface 505: an input section 506 including a keyboard, mouse, etc.; an output section 507 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 508 including a hard disk, etc.; and a communication section 509 including a network interface card such as a LAN card, modem, etc. The communication section 509 performs communication processing via a network such as the Internet. A drive 510 is also connected to I / O interface 505 as needed. A removable medium 511, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 510 as needed so that computer programs read from it can be installed into storage section 508 as needed.
[0077] In particular, according to the embodiments disclosed in this invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 509, and / or installed from removable medium 511. When the computer program is executed by central processing unit (CPU) 501, it performs the functions defined above in the system of this invention.
[0078] It should be noted that the computer-readable medium shown in this invention can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0079] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0080] The units or modules described in the embodiments of the present invention can be implemented in software or hardware. The described units or modules can also be housed in a processor; for example, a processor can be described as including a building module, an extension module, a first computing module, and a generation module. The names of these modules do not necessarily limit the unit or module itself; for example, a building module can also be described as "a module for constructing a matching matrix between tasks to be processed and personnel to be assigned based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned."
[0081] In another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiments; or it may exist independently and not assembled into the device. The computer-readable medium carries one or more programs, which, when executed by the device, cause the device to include: A matching matrix between tasks to be processed and personnel to be assigned is constructed based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned. The matching matrix is copied based on the maximum task allocation, and the copied result is appended to the right side of the matching matrix to obtain the extended matrix; Calculate the cost matrix between the tasks to be processed and the personnel to be assigned based on the matching matrix and the expansion matrix; The cost matrix is solved with the goal of minimizing the cost, and a task allocation scheme is generated based on the solution.
[0082] According to the technical solution of this invention, a matching matrix can be comprehensively constructed by combining the task difficulty index of the task dimension and the sorting capability index of the personnel to be assigned. The matrix is then precisely solved through a capability replication and solution algorithm mechanism, breaking the constraint that the number of tasks and personnel are equal, and maximizing global efficiency. The task allocation scheme determined based on the calculated solution is determined based on the global scenario, greatly improving the overall processing efficiency of the tasks.
[0083] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A method for task allocation, characterized in that, include: A matching matrix between the tasks to be processed and the personnel to be assigned is constructed based on the task difficulty index of the tasks to be processed and the sorting ability index of the personnel to be assigned. The matching matrix is copied according to the maximum task allocation, and the copy result is appended to the right side of the matching matrix to obtain the extended matrix; Calculate the cost matrix between the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix; The cost matrix is solved with the goal of minimizing the cost, and a task allocation scheme is generated based on the solution.
2. The method according to claim 1, characterized in that, The rows of the matching matrix correspond to the tasks to be processed, and the columns of the matching matrix correspond to the personnel to be assigned. Constructing the matching matrix between the tasks to be processed and the personnel to be assigned based on their task difficulty index and their sorting ability index includes: The benefit value of each task to be processed is calculated based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned. A matching matrix between the tasks to be processed and the personnel to be assigned is constructed based on the benefit values.
3. The method according to claim 1, characterized in that, The step of copying the matching matrix according to the maximum task allocation and appending the copy result to the right side of the matching matrix to obtain an expanded matrix includes: The number of times the matching matrix is copied is determined based on the maximum task allocation amount; The matching matrix is copied according to the specified number of copies, and the copying results are sequentially appended to the right side of the matching matrix to obtain the extended matrix.
4. The method according to any one of claims 1-3, characterized in that, Before constructing the matching matrix between the task to be processed and the personnel to be assigned based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned, the method further includes: Determine the task parameters of the task to be processed, and calculate the task difficulty index of the task to be processed based on the task parameters and preset weights; The task parameters include at least one of the following: order quantity, product specification quantity, storage space quantity, product size, and product type.
5. The method according to claim 4, characterized in that, Before constructing the matching matrix between the task to be processed and the personnel to be assigned based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned, the method further includes: Obtain the number of unfinished tasks of the personnel to be assigned, and calculate the load rate of the personnel to be assigned based on the number of unfinished tasks; Calculate the ability value of the personnel to be assigned based on their historical task efficiency and ability parameters. The sorting capacity index of the personnel to be assigned is calculated based on the load rate and the capacity value.
6. The method according to claim 1, characterized in that, The method further includes: Listen for task change events and personnel change events, and upon detecting a task change event and / or personnel change event, reassign the pending tasks corresponding to the task change event and / or personnel change event.
7. A task allocation device, characterized in that, include: A construction module is used to construct a matching matrix between the task to be processed and the personnel to be assigned, based on the task difficulty index of the task to be processed and the sorting ability index of the personnel to be assigned. An extension module is used to copy the matching matrix according to the maximum task allocation amount, and append the copy result to the right side of the matching matrix to obtain an extended matrix; The first calculation module is used to calculate the cost matrix between the task to be processed and the personnel to be assigned based on the matching matrix and the extended matrix; The generation module is used to solve the cost matrix with the objective function of minimizing the cost, and generate a task allocation scheme based on the solution result.
8. An electronic device, characterized in that, include: One or more processors; 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 method as described in any one of claims 1-6.
9. A computer-readable medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-6.