Task allocation method and device, electronic equipment, medium and program product
By determining the appropriate task type in the task processing group and assigning within the group tasks, the problem of low task processing efficiency in the existing technology is solved, and the quality of task completion and the risk of overdue reduction is improved.
Patent Information
- Application Number
- CN202411912276.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-24
- Publication Date
- 2025-04-01
AI Technical Summary
The task allocation method in the prior art can easily lead to a long service task processing time and low task processing efficiency.
By obtaining the task type and type task volume in the task processing request, determining the processing cost required by each task processing group to process each task type, generating a cost matrix, using Hungarian algorithms and linear planning algorithms to assign tasks, ensuring that each task processing group is suitable for the task type and in-group tasks are allocated.
A dynamic balance between processing efficiency and completion quality is achieved, the quality of task completion is improved, and the situation of overdue tasks is reduced.
Smart Images

Figure CN119740830A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, in particular to the field of artificial intelligence and financial technology, and more specifically to a task allocation method, apparatus, device, medium and program product. Background Art
[0002] The task allocation method in the related art generally adopts random allocation or average allocation according to the number of task processors; however, the allocation method in the related art easily leads to a longer business task processing time, thereby resulting in lower task processing efficiency. Summary of the invention
[0003] In view of the above problems, the present disclosure provides a task allocation method, apparatus, device, medium and program product.
[0004] According to a first aspect of the present disclosure, a task allocation method is provided, comprising:
[0005] In response to the task processing request, obtaining at least one task type included in the task processing request and a type task quantity of each task type;
[0006] For an i-th task processing group among M task processing groups for processing task processing requests, determining a processing cost required for the i-th task processing group to process each task type, wherein M is a positive integer, 1≤i≤M;
[0007] Generate a cost matrix according to the processing cost of each task type by each of the M task processing groups;
[0008] Processing the cost matrix using a preset first task allocation algorithm to obtain the task type corresponding to each task processing group; and
[0009] For each task processing group, a preset second task allocation algorithm is used to perform intra-group task allocation on the group task volume of the task type corresponding to the task processing group to obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
[0010] According to an embodiment of the present disclosure, determining the processing cost required for the i-th task processing group to process each task type includes:
[0011] According to the group evaluation data of the i-th task processing group and the type task volume of each task type, the processing cost required for the i-th task processing group to process each type of task volume is determined, wherein the group evaluation data includes group evaluation results corresponding to at least one evaluation indicator.
[0012] According to an embodiment of the present disclosure, the above method further includes:
[0013] For the jth evaluation indicator of at least one evaluation indicator, each task processing member included in the i-th task processing group is evaluated using the jth evaluation indicator to obtain the jth individual evaluation result corresponding to each task processing member, where j is a positive integer;
[0014] The group evaluation result for the jth evaluation indicator is determined according to the jth individual evaluation result corresponding to each task processing member.
[0015] According to an embodiment of the present disclosure, determining a group evaluation result for the jth evaluation indicator according to the jth individual evaluation result corresponding to each task processing member includes:
[0016] The j-th individual evaluation results corresponding to each task processing member are added together to obtain the group evaluation result for the j-th evaluation indicator.
[0017] According to an embodiment of the present disclosure, the evaluation index includes at least one of the following: task processing efficiency, task return rate, number of unfinished tasks, and task matching degree.
[0018] According to an embodiment of the present disclosure, each task processing member included in the i-th task processing group is evaluated using the j-th evaluation index, and the j-th individual evaluation result corresponding to each task processing member is obtained, including:
[0019] For each task processing member of the i-th task group, the task processing data generated by the task processing member within a preset time period is obtained, wherein the task processing data includes: the number of processed tasks, the task processing time, and the number of returned tasks;
[0020] Determine the task processing efficiency of the task processing members based on the number of tasks processed and the task processing time;
[0021] Determine the task return rate of the task processing members based on the number of tasks reworked and the number of tasks processed;
[0022] The task matching degree is determined based on the task processing efficiency and task return rate.
[0023] According to an embodiment of the present disclosure, determining the task matching degree according to the task processing efficiency and the task return rate includes:
[0024] The task processing efficiency, the weight of the task processing efficiency, the task return rate, and the weight of the task return rate are weighted and summed to obtain the task matching degree.
[0025] According to an embodiment of the present disclosure, the preset first task allocation algorithm includes the Hungarian algorithm, wherein processing the cost matrix using the preset first task allocation algorithm includes:
[0026] The cost matrix is transformed using the Hungarian algorithm to obtain the transformed cost matrix;
[0027] When the number of independent zero elements in the transformed cost matrix is determined to be the same as the dimension of the cost matrix, the task type corresponding to each task processing group is determined according to the transformed cost matrix, wherein the independent zero element represents the row or column where the independent zero element is located, and the elements other than the independent zero element are non-zero elements.
[0028] According to an embodiment of the present disclosure, the second task allocation algorithm includes a linear programming algorithm, wherein a constraint condition of the linear programming algorithm includes that the sum of the individual task amounts of each task processing member is equal to the group task amount.
[0029] A second aspect of the present disclosure provides a task allocation device, comprising:
[0030] An acquisition module, configured to acquire, in response to a task processing request, at least one task type included in the task processing request and a type task quantity of each task type;
[0031] A first determining module is used to determine, for an i-th task processing group among the M task processing groups used to process the task processing request, a processing cost required for the i-th task processing group to process each of the task types, wherein M is an integer ≥ 1, 1≤i≤M;
[0032] A generating module, configured to generate a cost matrix according to the processing cost of each task type of each of the M task processing groups;
[0033] a cost matrix processing module, configured to process the cost matrix using a preset first task allocation algorithm to obtain a task type corresponding to each task processing group; and
[0034] The task allocation module is used to perform intra-group task allocation on the group task volume of the task type corresponding to each task processing group using a preset second task allocation algorithm to obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
[0035] A third aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above method.
[0036] The fourth aspect of the present disclosure further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above method when the above computer program or instructions are executed by a processor.
[0037] The fifth aspect of the present disclosure further provides a computer program product, including a computer program or instructions, which implement the steps of the above method when the above computer program or instructions are executed by a processor.
[0038] According to an embodiment of the present disclosure, after obtaining at least one task type contained in a task processing request and the type task amount of each task type, for the i-th task processing group among the M task processing groups used to process the task processing request, determine the processing cost required for the i-th task processing group to process each task type; then, generate a cost matrix based on the processing costs of each task type for each of the M task processing groups; then, process the cost matrix using a preset first task allocation algorithm to obtain the task type corresponding to each task processing group; then, for each task processing group, use a preset second task allocation algorithm to perform intra-group task allocation on the group task amount of the task type corresponding to the task processing group, and obtain the intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task amount corresponding to each task processing member. The present disclosure achieves a dynamic balance between processing efficiency and completion quality by first determining the task type suitable for each task processing group and then allocating tasks within the group, which helps to improve the quality of task completion and also helps to reduce the situation of task overdue. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:
[0040] Figure 1 The application scenario diagram of the task allocation method, apparatus, device, medium and program product according to the embodiment of the present disclosure is schematically shown;
[0041] Figure 2 A flowchart of a task allocation method according to an embodiment of the present disclosure is schematically shown;
[0042] Figure 3 A schematic diagram schematically shows cost matrix generation according to an embodiment of the present disclosure;
[0043] Figure 4 A schematic diagram of determining evaluation data according to an embodiment of the present disclosure is schematically shown;
[0044] Figure 5 A flowchart for determining a personal assessment result according to an embodiment of the present disclosure is schematically shown;
[0045] Figure 6 A structural block diagram of a task allocation device according to an embodiment of the present disclosure is schematically shown; and
[0046] Figure 7 A block diagram of an electronic device suitable for implementing the above method according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0047] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.
[0048] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.
[0049] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.
[0050] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).
[0051] In the technical solution of the present disclosure, the user information (including but not limited to user personal information, user image information, user device information, such as location information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0052] In the scenario of using personal information for automated decision-making, the methods, devices, and systems provided by the embodiments of the present disclosure provide users with corresponding operation portals for users to choose to agree or reject the automated decision-making results; if the user chooses to reject, the expert decision-making process will be entered. The expression "automated decision-making" here refers to the activity of automatically analyzing and evaluating a person's behavioral habits, interests and hobbies, or economic, health, credit status, etc. through computer programs, and making decisions. The expression "expert decision-making" here refers to the activity of making decisions by people who specialize in a certain field, have specialized experience, knowledge and skills, and have reached a certain level of professionalism.
[0053] Figure 1 The application scenario diagram of the task allocation method, apparatus, device, medium and program product according to the embodiments of the present disclosure is schematically shown.
[0054] like Figure 1 As shown, the application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.
[0055] The user can use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only for example).
[0056] The first terminal device 101, the second terminal device 102, and the third terminal device 103 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.
[0057] The server 105 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103. The background management server may analyze and process the received data such as user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.
[0058] It should be noted that the task allocation method provided in the embodiment of the present disclosure can generally be executed by the server 105. Accordingly, the task allocation device provided in the embodiment of the present disclosure can generally be set in the server 105. The task allocation method provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Accordingly, the task allocation device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105.
[0059] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.
[0060] The following will be based on Figure 1 The scene described by Figure 2~Figure 5 The task allocation method of the disclosed embodiment is described in detail.
[0061] Figure 2 The flowchart of the task allocation method according to the embodiment of the present disclosure is schematically shown.
[0062] like Figure 2 As shown, the task allocation of this embodiment includes operations S210 to S250, and the task allocation method can be executed by a server or a terminal device.
[0063] In operation S210 , in response to a task processing request, at least one task type included in the task processing request and a type task amount of each task type are obtained.
[0064] For example, the task processing request may include task type a, task type b, and task type c, as well as a type task amount of task type a, a type task amount of task type b, and a type task amount of task type c.
[0065] In operation S220 , for an i-th task processing group among M task processing groups for processing task processing requests, a processing cost required for the i-th task processing group to process each task type is determined, where M is a positive integer, 1≤i≤M.
[0066] According to an embodiment of the present disclosure, the processing cost represents the resource cost required to complete the task, which may include time, manpower, materials, equipment, etc.
[0067] According to an embodiment of the present disclosure, in the case where task types include task type a, task type b, and task type c, for the i-th task processing group among the M task processing groups used to process task processing requests, determining the processing cost required for the i-th task processing group to process each task type may include: determining the processing cost ai required for the i-th task processing group to process task type a; determining the processing cost bi required for the i-th task processing group to process task type b; and determining the processing cost ci required for the i-th task processing group to process task type c.
[0068] According to an embodiment of the present disclosure, determining the processing cost required for the i-th task processing group to process the j-th task type may include determining the processing cost based on the processing efficiency, return rate, task matching degree, number of unfinished tasks, and total task volume of the task type of the i-th task processing group.
[0069] For example, the processing cost can be determined using the following formula (1).
[0070] (1);
[0071] Among them, the processing efficiency ij is the processing efficiency of task processing group i in processing type j tasks; return rate ij is the return rate of task processing group i processing type j task; task matching degree ij is the matching degree of task processing group i to process task type j; unfinished tasks i is the number of tasks currently remaining in task processing group i; the total task volume is the total task volume of type j tasks.
[0072] In operation S230 , a cost matrix is generated according to the processing costs of each of the M task processing groups for each task type.
[0073] In one embodiment, the horizontal dimension of the cost matrix may be the task type, and the vertical dimension may be the task processing group.
[0074] In another embodiment, the horizontal dimension of the cost matrix may be the task processing group, and the vertical dimension may be the task type.
[0075] For example, the task types include task type a, task type b and task type c, and the task processing groups include task processing group 1, task processing group 2 and task processing group 3. Then, according to the processing costs of each of the M task processing groups for each task type, generating a cost matrix may include: generating a cost matrix according to the processing cost a1 of task processing group 1 for task type a, the processing cost b1 of task processing group 1 for task type b, the processing cost c1 of task processing group 1 for task type c, the processing cost a2 of task processing group 2 for task type a, the processing cost b2 of task processing group 2 for task type b, the processing cost c2 of task processing group 2 for task type c, the processing cost a3 of task processing group 3 for task type a, the processing cost b3 of task processing group 23 for task type b, and the processing cost c3 of task processing group 3 for task type c.
[0076] In operation S240, the cost matrix is processed using a preset first task allocation algorithm to obtain the task type corresponding to each task processing group.
[0077] According to an embodiment of the present disclosure, the first task allocation algorithm may include a Hungarian algorithm. After being processed by the Hungarian algorithm, the task type suitable for each task processing group to process may be determined. For example, task processing group 1 is suitable for processing task type b, task processing group 2 is suitable for processing task type a, and task processing group 3 is suitable for processing task type c.
[0078] In operation S250, for each task processing group, a preset second task allocation algorithm is used to perform intra-group task allocation on the group task volume of the task type corresponding to the task processing group to obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
[0079] According to an embodiment of the present disclosure, the second task allocation algorithm may include a linear programming algorithm, wherein a constraint condition of the linear programming algorithm includes that the sum of the individual task amounts of each task processing member is equal to the group task amount.
[0080] According to an embodiment of the present disclosure, after obtaining at least one task type contained in a task processing request and the type task amount of each task type, for the i-th task processing group among the M task processing groups used to process the task processing request, determine the processing cost required for the i-th task processing group to process each task type; then, generate a cost matrix based on the processing costs of each task type for each of the M task processing groups; then, process the cost matrix using a preset first task allocation algorithm to obtain the task type corresponding to each task processing group; then, for each task processing group, use a preset second task allocation algorithm to perform intra-group task allocation on the group task amount of the task type corresponding to the task processing group, and obtain the intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task amount corresponding to each task processing member. The present disclosure achieves a dynamic balance between processing efficiency and completion quality by first determining the task type suitable for each task processing group and then allocating tasks within the group, which helps to improve the quality of task completion and also helps to reduce the situation of task overdue.
[0081] Figure 3 The schematic diagram of cost matrix generation according to an embodiment of the present disclosure is schematically shown.
[0082] like Figure 3 As shown, the embodiment includes three task processing groups, namely task processing group 1, task processing group 2 and task processing group 3; and three task types, namely task type A, task type B and task type C. The method for determining the cost matrix includes: first, for task processing group 1, determining the processing cost A1 of task processing group 1 processing task type A, the processing cost B1 of task processing group 1 processing task type B, and the processing cost C1 of task processing group 1 processing task type C; then, for task processing group 2, determining the processing cost A2 of task processing group 2 processing task type A, the processing cost B2 of task processing group 2 processing task type B, and the processing cost C2 of task processing group 2 processing task type C; then, for task processing group 3, determining the processing cost A3 of task processing group 3 processing task type A, the processing cost B3 of task processing group 3 processing task type B, and the processing cost C3 of task processing group 3 processing task type C. Thereafter, a cost matrix 310 is generated based on the processing cost A1, the processing cost B1, the processing cost C1, the processing cost A2, the processing cost B2, the processing cost C2, the processing cost A3, the processing cost B3, and the processing cost C3.
[0083] According to an embodiment of the present disclosure, determining the processing cost required for the i-th task processing group to process each task type includes: determining the processing cost required for the i-th task processing group to process each type of task based on group evaluation data of the i-th task processing group and the type task volume of each task type, wherein the group evaluation data includes group evaluation results corresponding to at least one evaluation indicator.
[0084] According to an embodiment of the present disclosure, determining the processing cost required for the ith task processing group to process each type of task based on the group evaluation data of the ith task processing group and the type task volume of each task type may include: determining the processing cost required for the ith task processing group to process the type task volume of type a based on the group evaluation data of the ith task processing group and the type task volume of task type a; determining the processing cost required for the ith task processing group to process the type task volume of type b based on the group evaluation data of the ith task processing group and the type task volume of task type b; determining the processing cost required for the ith task processing group to process the type task volume of type c based on the group evaluation data of the ith task processing group and the type task volume of task type c.
[0085] According to the embodiments of the present disclosure, by utilizing group evaluation data and type task volume, and combining the task group processing capability and task volume to comprehensively determine the processing cost, it is helpful to obtain a more accurate processing cost.
[0086] According to an embodiment of the present disclosure, the method also includes: for the jth evaluation indicator among at least one evaluation indicator, using the jth evaluation indicator to evaluate each task processing member included in the ith task processing group, to obtain the jth personal evaluation result corresponding to each task processing member, where j is a positive integer; and determining the group evaluation result for the jth evaluation indicator according to the jth personal evaluation result corresponding to each task processing member.
[0087] According to the embodiments of the present disclosure, by using the individual evaluation result of each task processing member to determine the group evaluation result, the processing capability of the task processing group can be effectively reflected, thereby obtaining a more accurate processing cost.
[0088] FIG4 schematically shows a schematic diagram of determining evaluation data according to an embodiment of the present disclosure.
[0089] like Figure 4As shown, the evaluation indicators of this embodiment include evaluation indicator a410, evaluation indicator b420 and evaluation indicator c430. Each task processing member in the task processing group 1, such as task processing member 11, task processing member 12 and task processing member 13, is evaluated. First, the task processing member 11, the task processing member 12 and the task processing member 13 are evaluated in turn using the evaluation indicator a410 to obtain personal evaluation results 411, personal evaluation results 412 and personal evaluation results 413; then, the task processing member 11, the task processing member 12 and the task processing member 13 are evaluated in turn using the evaluation indicator b420 to obtain personal evaluation results 421, personal evaluation results 422 and personal evaluation results 423; then, the task processing member 11, the task processing member 12 and the task processing member 13 are evaluated in turn using the evaluation indicator c430 to obtain personal evaluation results 431, personal evaluation results 432 and personal evaluation results 433. The group evaluation result 432 and the personal evaluation result 433 are determined; then, the group evaluation result 440 for the evaluation index a410 is determined according to the personal evaluation result 411, the personal evaluation result 412 and the personal evaluation result 413; the group evaluation result 450 for the personal evaluation result b420 is determined according to the personal evaluation result 421, the personal evaluation result 422 and the personal evaluation result 423; thereafter, the group evaluation result 460 for the evaluation index c430 is determined according to the personal evaluation result 431, the personal evaluation result 432 and the personal evaluation result 433; thereafter, the group evaluation data 470 is determined according to the group evaluation result 440, the group evaluation result 450 and the group evaluation result 460.
[0090] According to an embodiment of the present disclosure, determining the group evaluation result for the jth evaluation indicator based on the jth personal evaluation result corresponding to each task processing member includes: adding the jth personal evaluation result corresponding to each task processing member to obtain the group evaluation result for the jth evaluation indicator.
[0091] For example, Figure 4 As shown, personal assessment results 411, 412 and 413 are added together to obtain group assessment result 440; personal assessment results 421, 422 and 423 are added together to obtain group assessment result 450; personal assessment results 431, 432 and 433 are added together to obtain group assessment result 460.
[0092] According to the embodiments of the present disclosure, the group evaluation result is obtained by adding the individual evaluation results corresponding to each task processing member, which is simple and convenient to operate.
[0093] According to an embodiment of the present disclosure, the evaluation index includes at least one of the following: task processing efficiency, task return rate, number of unfinished tasks, and task matching degree.
[0094] According to the embodiments of the present disclosure, by using evaluation indicators such as task processing efficiency, task return rate, number of unfinished tasks, and task matching degree for evaluation, the processing capabilities of task processing members can be better reflected.
[0095] Figure 5 The flowchart for determining a personal assessment result according to an embodiment of the present disclosure is schematically shown.
[0096] like Figure 5 As shown, this embodiment includes operations S510 to S540.
[0097] In operation S510, for each task processing member of the i-th task group, task processing data generated by the task processing member within a preset time period is obtained, wherein the task processing data includes: the number of processed tasks, the task processing time, and the number of returned tasks.
[0098] In an embodiment of the present disclosure, before obtaining the user's information, the user's consent or authorization may be obtained. For example, before operation S510, a request to obtain the user's information may be issued to the user. When the user agrees or authorizes that the user's information may be obtained, the operation S510 is performed.
[0099] In operation S520 , the task processing efficiency of the task processing member is determined according to the number of processed tasks and the task processing time.
[0100] According to an embodiment of the present disclosure, task processing efficiency represents the number of tasks processed per unit time. Determining the task processing efficiency of a task processing member based on the number of processed tasks and the task processing time may include: dividing the number of processed tasks by the task processing time to obtain the task processing efficiency. For example, for business personnel A, if 100 tasks are completed within 4 hours, his task processing efficiency may be 25 tasks per hour.
[0101] In operation S530 , a task return rate of the task processing member is determined according to the number of task reworks and the number of processed tasks.
[0102] According to the embodiments of the present disclosure, return refers to the situation where a business personnel submits a task to the next processing position after processing it, and the business personnel at the next processing position believes that there is a problem and returns the task to the original business personnel for reprocessing. When the same task is returned multiple times, the number of returns is only counted once, or it is returned because it is found that the processing process does not meet the standard requirements.
[0103] According to an embodiment of the present disclosure, determining the task return rate of a task processing member according to the number of task returns and the number of processed tasks may include: dividing the number of task returns and the number of processed tasks to obtain the task return rate. For example, business personnel A has completed a total of 100 tasks, of which 40 tasks have been returned by the next position, then his task return rate may be: 40÷100 = 0.4.
[0104] In operation S540 , the task matching degree is determined according to the task processing efficiency and the task return rate.
[0105] According to an embodiment of the present disclosure, for example, it may include: performing weighted sum processing on the task processing efficiency, the weight of the task processing efficiency, the task return rate, and the weight of the task return rate to obtain the task matching degree.
[0106] For example, the weight of task processing efficiency can be 0.8, and the weight of task return rate can be 0.2; business personnel A completed 1000 tasks and spent 40 hours, of which 100 were returned; then the task matching degree can be (1000÷40)×0.8+(100÷1000)×0.2=20.02.
[0107] In one embodiment, the task matching degree can also be characterized by the weighted value of the performance score and the progress according to the 7:3 weight. The performance score can be the weighted value of the task return rate and the task processing efficiency according to the 7:3 weight; the progress can be the proportion of the performance score of each month compared with the previous month. The calculation formula can be: performance score = 0.7×task return rate + 0.3×task processing efficiency, progress = (performance score of the current month - performance score of the previous month) / performance score of the previous month, task matching degree = 0.7×performance score of the current month + 0.3×progress.
[0108] For example, a business person completed 1,000 tasks last month, spending 40 hours, of which 100 were returned; this month, he completed 1,200 tasks, spending 40 hours, of which 80 were returned. The task matching degree can be:
[0109] Last month's performance score = 0.7 × (100 / 1000) + 0.3 × (1000 / 40) = 7.57
[0110] Performance score for the month = 0.7 × (80 / 1200) + 0.3 × (1200 / 40) = 9.05
[0111] Task fit = 0.7 × 9.05 + 0.3 × (9.05-7.57) / 7.57 = 6.39.
[0112] According to the embodiments of the present disclosure, the task processing efficiency and task return rate of the task processing members can be effectively reflected based on the number of processed tasks, the task processing time, and the number of task returns.
[0113] According to an embodiment of the present disclosure, the preset first task allocation algorithm includes the Hungarian algorithm, wherein processing the cost matrix using the preset first task allocation algorithm includes:
[0114] The cost matrix is transformed using the Hungarian algorithm to obtain the transformed cost matrix;
[0115] When the number of independent zero elements in the transformed cost matrix is determined to be the same as the dimension of the cost matrix, the task type corresponding to each task processing group is determined according to the transformed cost matrix, wherein the independent zero element represents the row or column where the independent zero element is located, and the elements other than the independent zero element are non-zero elements.
[0116] According to an embodiment of the present disclosure, the cost matrix is transformed using the Hungarian algorithm to obtain the transformed cost matrix, which may include: for each row of the cost matrix, finding the minimum value of the row, and then subtracting the minimum value from the numbers in the row; for each column of the cost matrix, finding the minimum value of the column, and then subtracting the minimum value from the numbers in the column to obtain the transformed cost matrix.
[0117] According to an embodiment of the present disclosure, when the number of independent zero elements in the transformed cost matrix is determined to be the same as the dimension of the cost matrix, determining the task type corresponding to each task processing group according to the transformed cost matrix includes: finding as many independent zeros as possible in the transformed cost matrix, where an independent zero refers to a zero that has no other zeros in the same row or column; if the number of independent zeros found is equal to the order of the cost matrix, it means that the optimal solution has been found; otherwise, the transformed cost matrix is transformed until the optimal solution is found.
[0118] For example, assuming there are three types of tasks, A, B, and C, and there are three task processing groups, A, B, and C, then the cost matrix is: ; At this time, the Hungarian algorithm can be directly used to calculate the solution. The specific steps are as follows:
[0119] 1. For each row, such as A, B, C, find the minimum value of the row, such as A, and then subtract this minimum value from the numbers in the row;
[0120] 2. Similarly, for each column, such as A, B, and C, find the minimum value of the column, such as C, and then subtract this minimum value from the numbers in the column;
[0121] 3. Use the least number of horizontal and vertical lines to cover all the zero elements of the matrix formed after step 2. If the number of lines required is exactly 3, then all zero position indexes are the best allocation method, and the calculation ends; if the number of lines required is less than 3, continue to step 4;
[0122] 4. In the matrix of step 3, find the smallest element in the row and column that is not covered by the line, record it as k. Subtract k from all the elements that are not covered, and add k to the elements that are covered twice by the line. Repeat step 3 until the calculation is completed.
[0123] According to an embodiment of the present disclosure, after the task types corresponding to each task processing group are determined using the Hungarian algorithm, a linear programming algorithm is used within the task processing group to allocate the task amount of each task processing member. The goal of the allocation is to minimize the total completion time and maximize the total completed task quality, and maintain the balance of task allocation. The following formula (2) can be used.
[0124] (2);
[0125] Among them: w1, w2 and w3 are the weights of processing efficiency, withdrawal rate and balance respectively, which are used to balance the relationship between efficiency, quality and balance. Normally, they can all be set to 1, and can be dynamically adjusted according to the actual effect; is the average number of tasks, i.e. ; Constraints: Total number of tasks Constraints: Total number of tasks; non-negative constraints: .
[0126] Then use the linear programming solver to solve the above expression (2) to obtain the number of tasks for each task processing member.
[0127] Linear programming is generally solved using the "simple form method". The specific steps are as follows:
[0128] 1. Initialization: Select an initial Basic Feasible Solution (BFS), which is usually obtained by converting inequalities into equations by adding slack variables.
[0129] 2. Iteration: Starting from the current BFS, check whether there is a possibility of improvement; if so, select a variable entering the basis and a variable leaving the basis to exchange to obtain a new BFS.
[0130] 3. Termination condition: Stop iteration when there is no room for further improvement, and the optimal solution has been found.
[0131] For example, assuming that a task processing group has only 4 task processing members and the total number of tasks to be assigned is 100, the first step is to assume that the first person is assigned 100 tasks and the remaining personnel are assigned 0, and then calculate the result value z of the equation; the second step is to iterate step by step, that is, to continuously adjust the number of tasks assigned to the four personnel, as long as the condition that the sum of the number of tasks assigned to the four personnel is 100 is met, such as the first person is assigned 97 and the remaining personnel are assigned 1, and then calculate the result value z of the equation; the third step is to find the smallest z value, which means that the optimal solution has been found.
[0132] According to an embodiment of the present disclosure, the cost matrix is processed using the Hungarian algorithm to obtain the task type that each task processing group is suitable for processing, and then the linear programming algorithm is used to allocate tasks within the group to ensure the efficiency and rationality of task allocation.
[0133] Based on the above task method, the present disclosure also provides a task allocation device. Figure 6 The device is described in detail.
[0134] Figure 6 The structure block diagram of the task allocation device according to the embodiment of the present disclosure is schematically shown.
[0135] like Figure 6 As shown, the task allocation device 600 of this embodiment includes an acquisition module 610 , a first determination module 620 , a generation module 630 , a cost matrix processing module 640 and a task allocation module 650 .
[0136] The acquisition module 610 is used to obtain, in response to a task processing request, at least one task type included in the task processing request and a type task amount of each task type.
[0137] The first determination module 620 is used to determine the processing cost required for the i-th task processing group to process each of the task types among the M task processing groups used to process the task processing request, where M is an integer ≥1, 1≤i≤M.
[0138] The generating module 630 is used to generate a cost matrix according to the processing cost of each task type of each of the M task processing groups.
[0139] The cost matrix processing module 640 is used to process the cost matrix using a preset first task allocation algorithm to obtain the task type corresponding to each task processing group.
[0140] The task allocation module 650 is used to perform intra-group task allocation on the group task volume of the task type corresponding to the task processing group for each of the task processing groups using a preset second task allocation algorithm, and obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
[0141] According to an embodiment of the present disclosure, the first determination module includes: a first determination submodule.
[0142] The first determination submodule is used to determine the processing cost required for the i-th task processing group to process each type of task based on the group evaluation data of the i-th task processing group and the type task volume of each task type, wherein the group evaluation data includes group evaluation results corresponding to at least one evaluation indicator.
[0143] According to an embodiment of the present disclosure, the above-mentioned device further includes: an evaluation module and a second determination module.
[0144] The evaluation module is used to evaluate each task processing member included in the ith task processing group using the jth evaluation indicator among at least one evaluation indicator, and obtain the jth personal evaluation result corresponding to each task processing member, where j is a positive integer.
[0145] The second determination module is used to determine the group evaluation result for the jth evaluation indicator according to the jth individual evaluation result corresponding to each task processing member.
[0146] According to an embodiment of the present disclosure, the second determination module includes: a summing submodule.
[0147] The summing submodule is used to add the j-th individual evaluation results corresponding to each task processing member to obtain the group evaluation result for the j-th evaluation indicator.
[0148] According to an embodiment of the present disclosure, the evaluation index includes at least one of the following: task processing efficiency, task return rate, number of unfinished tasks, and task matching degree.
[0149] According to an embodiment of the present disclosure, the evaluation module includes: an acquisition submodule, a second determination submodule, a third determination submodule and a fourth determination submodule.
[0150] The acquisition submodule is used to obtain the task processing data generated by each task processing member of the i-th task group within a preset time period, wherein the task processing data includes: the number of processed tasks, the task processing time, and the number of task returns.
[0151] The second determination submodule is used to determine the task processing efficiency of the task processing member according to the number of processed tasks and the task processing time.
[0152] The third determination submodule is used to determine the task return rate of the task processing member according to the number of tasks to be reworked and the number of tasks that have been processed.
[0153] The fourth determination submodule is used to determine the task matching degree according to the task processing efficiency and the task return rate.
[0154] According to an embodiment of the present disclosure, the fourth determining submodule includes: a summing unit.
[0155] The summing unit is used to perform weighted summing processing on the task processing efficiency, the weight of the task processing efficiency, the task return rate, and the weight of the task return rate to obtain the task matching degree.
[0156] According to an embodiment of the present disclosure, the preset first task allocation algorithm includes the Hungarian algorithm. According to an embodiment of the present disclosure, the cost matrix processing module includes: a transformation submodule and a fifth determination submodule.
[0157] The transformation submodule is used to transform the cost matrix using the Hungarian algorithm to obtain a transformed cost matrix.
[0158] In the fifth determination submodule, when the user determines the number of independent zero elements in the transformed cost matrix, which is the same as the dimension of the cost matrix, the user determines the task type corresponding to each task processing group according to the transformed cost matrix, wherein the independent zero element represents the row or column where the independent zero element is located, and the elements other than the independent zero element are non-zero elements.
[0159] According to an embodiment of the present disclosure, the second task allocation algorithm includes a linear programming algorithm, wherein a constraint condition of the linear programming algorithm includes that the sum of the individual task amounts of each task processing member is equal to the group task amount.
[0160] According to an embodiment of the present disclosure, any multiple modules of the acquisition module 610, the first determination module 620, the generation module 630, the cost matrix processing module 640 and the task allocation module 650 can be combined in one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the acquisition module 610, the first determination module 620, the generation module 630, the cost matrix processing module 640 and the task allocation module 650 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware and firmware or in an appropriate combination of any of them. Alternatively, at least one of the acquisition module 610, the first determination module 620, the generation module 630, the cost matrix processing module 640 and the task allocation module 650 may be at least partially implemented as a computer program module, which may perform corresponding functions when executed.
[0161] Figure 7 A block diagram of an electronic device suitable for implementing the above method according to an embodiment of the present disclosure is schematically shown.
[0162] like Figure 7 As shown, the electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage part 708 to a random access memory (RAM) 703. The processor 701 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 701 may also include an onboard memory for caching purposes. The processor 701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0163] In RAM 703, various programs and data required for the operation of electronic device 700 are stored. Processor 701, ROM 702 and RAM 703 are connected to each other via bus 704. Processor 701 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 702 and / or RAM 703. It should be noted that the program can also be stored in one or more memories other than ROM 702 and RAM 703. Processor 701 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.
[0164] According to an embodiment of the present disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, which is also connected to the bus 704. The electronic device 700 may further include one or more of the following components connected to the input / output (I / O) interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 708 including a hard disk, etc.; and a communication portion 709 including a network interface card such as a LAN card, a modem, etc. The communication portion 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the input / output (I / O) interface 705 as needed. A removable medium 711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.
[0165] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.
[0166] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, it may include but is not limited to: 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), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus or a device. For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the ROM 702 and / or RAM 703 described above and / or one or more memories other than ROM 702 and RAM 703.
[0167] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the above method provided by the embodiment of the present disclosure.
[0168] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 701. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.
[0169] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 709, and / or installed from the removable medium 711. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0170] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.
[0171] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).
[0172] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0173] It will be appreciated by those skilled in the art that the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.
[0174] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.
Claims
1. A task allocation method, characterized in that: The method comprises: In response to a task processing request, obtaining at least one task type included in the task processing request and a type task amount of each task type; For an i-th task processing group among the M task processing groups for processing the task processing request, determining a processing cost required for the i-th task processing group to process each of the task types, wherein M is a positive integer, 1≤i≤M; Generate a cost matrix according to the processing cost of each task type by each of the M task processing groups; Processing the cost matrix using a preset first task allocation algorithm to obtain a task type corresponding to each task processing group; and For each of the task processing groups, a preset second task allocation algorithm is used to perform intra-group task allocation on the group task volume of the task type corresponding to the task processing group to obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
2. The method according to claim 1, characterized in that The determining of the processing cost required for the i-th task processing group to process each of the task types comprises: Based on the group evaluation data of the i-th task processing group and the type task volume of each task type, determine the processing cost required for the i-th task processing group to process each type of task volume, wherein the group evaluation data includes group evaluation results corresponding to at least one evaluation indicator.
3. The method according to claim 2, characterized in that The method further comprises: For the jth evaluation indicator of at least one evaluation indicator, use the jth evaluation indicator to evaluate each task processing member included in the i-th task processing group to obtain the jth individual evaluation result corresponding to each task processing member, where j is a positive integer; A group evaluation result for the jth evaluation indicator is determined according to the jth individual evaluation result corresponding to each of the task processing members.
4. The method according to claim 3, characterized in that The step of determining the group evaluation result for the jth evaluation indicator according to the jth individual evaluation result corresponding to each of the task processing members includes: The j-th individual evaluation results corresponding to each of the task processing members are added together to obtain a group evaluation result for the j-th evaluation indicator.
5. The method according to claim 3, characterized in that: The evaluation index includes at least one of the following: task processing efficiency, task return rate, number of unfinished tasks, and task matching degree.
6. The method according to claim 5, characterized in that The step of evaluating each task processing member included in the ith task processing group by using the jth evaluation index to obtain the jth individual evaluation result corresponding to each task processing member includes: For each task processing member of the i-th task group, obtaining the task processing data generated by the task processing member within a preset time period, wherein the task processing data includes: the number of processed tasks, the task processing time, and the number of returned tasks; Determining the task processing efficiency of the task processing member according to the number of processed tasks and the task processing time; Determine the task return rate of the task processing member according to the number of tasks reworked and the number of tasks processed; The task matching degree is determined according to the task processing efficiency and the task return rate.
7. The method according to claim 6, characterized in that Determining the task matching degree according to the task processing efficiency and the task return rate includes: The task matching degree is obtained by performing weighted sum processing on the task processing efficiency, the weight of the task processing efficiency, the task return rate, and the weight of the task return rate.
8. The method according to claim 1, characterized in that The preset first task allocation algorithm includes the Hungarian algorithm, wherein the processing of the cost matrix using the preset first task allocation algorithm includes: The cost matrix is transformed by using the Hungarian algorithm to obtain a transformed cost matrix; When the number of independent zero elements in the transformed cost matrix is determined to be the same as the dimension of the cost matrix, the task type corresponding to each task processing group is determined according to the transformed cost matrix, wherein the independent zero element represents the row or column where the independent zero element is located, and the elements other than the independent zero element are non-zero elements.
9. The method according to claim 1, characterized in that: The second task allocation algorithm comprises a linear programming algorithm, wherein the constraint condition of the linear programming algorithm comprises that the sum of the individual task amounts of each task processing member is equal to the group task amount.
10. A task allocation device, characterized in that: The device comprises: An acquisition module, configured to acquire, in response to a task processing request, at least one task type included in the task processing request and a type task quantity of each task type; A first determining module is used to determine, for an i-th task processing group among the M task processing groups used to process the task processing request, a processing cost required for the i-th task processing group to process each of the task types, wherein M is an integer ≥ 1, 1≤i≤M; A generating module, configured to generate a cost matrix according to the processing cost of each task type of each of the M task processing groups; a cost matrix processing module, configured to process the cost matrix using a preset first task allocation algorithm to obtain a task type corresponding to each task processing group; and The task allocation module is used to perform intra-group task allocation on the group task volume of the task type corresponding to each task processing group using a preset second task allocation algorithm to obtain an intra-group allocation result for the task processing group, wherein the intra-group allocation result includes the personal task volume corresponding to each task processing member.
11. An electronic device, comprising: one or more processors; a memory for storing one or more computer programs, It is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 9.
12. A computer-readable storage medium having a computer program or instruction stored thereon, characterized in that: When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.
13. A computer program product comprising a computer program or instructions, characterized in that When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.