A task allocation method, apparatus, device and medium
Patent Information
- Application Number
- CN202611277067.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-21
- Publication Date
- 2026-10-30
AI Technical Summary
[0005]本发明提供了一种任务分配方法、装置、设备及介质,可以解决任务分配效率较低的问题
[0011]本发明实施例的技术方案,通过获取待分配任务对应的候选任务执行方列表;其中,候选任务执行方列表中的各个候选任务执行方均对应一个当前任务处理信息池。之后,基于预设任务数量阈值对当前任务处理信息池进行数据筛选,并基于数据筛选结果确定候选任务执行方对应的任务处理类别。最后,基于预设类别划分规则对任务处理类别进行类别筛选,确定候选任务执行方列表中的目标任务执行方,并将待分配任务分配至目标任务执行方。由于通过对各个执行节点的任务状态进行实时筛选,解决了任务分配效率较低的问题,能够实现任务的智能化、动态化及精准化分配,提高了待分配任务的分配效率。
Smart Images

Figure CN123014585A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing technology, and in particular to a task allocation method, apparatus, device, and medium. Background Technology
[0002] In information-based business process management systems, the rational allocation of tasks directly affects the system's processing efficiency and resource utilization. Business platforms, such as work order processing systems, approval workflow systems, and customer service request allocation systems, all face the technical challenge of how to efficiently and evenly distribute pending tasks to various processing nodes.
[0003] In existing technologies, two common task allocation methods are: polling or uniform allocation, and proactive acquisition. However, polling or uniform allocation cannot detect the real-time status of each processing node. When a node is unable to process a task due to objective reasons, the task will still be allocated to that node, leading to task backlog. On the other hand, different processing nodes have objective differences in processing capabilities. Uniform allocation may cause low-capacity nodes to operate under overload and high-capacity nodes to be idle, resulting in a decrease in the overall system processing efficiency. In addition, proactive acquisition relies on manual intervention or node-initiated triggering, resulting in low system automation and requiring nodes to perform frequent manual operations, which affects work efficiency.
[0004] Therefore, how to achieve intelligent, dynamic, and precise task allocation and improve the allocation efficiency of tasks to be assigned is an urgent problem to be solved. Summary of the Invention
[0005] This invention provides a task allocation method, apparatus, device, and medium that can solve the problem of low task allocation efficiency.
[0006] According to one aspect of the present invention, a task allocation method is provided, comprising: Obtain a list of candidate task executors corresponding to the tasks to be assigned; wherein each candidate task executor in the list corresponds to a current task processing information pool; The current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Based on preset category classification rules, the task processing categories are filtered to determine the target task executor in the candidate task executor list, and the task to be assigned is assigned to the target task executor.
[0007] According to another aspect of the present invention, a task allocation device is provided, comprising: The data acquisition module is used to acquire a list of candidate task executors corresponding to the task to be assigned; wherein, each candidate task executor in the list of candidate task executors corresponds to a current task processing information pool; The data filtering module is used to filter the current task processing information pool based on a preset task quantity threshold, and to determine the task processing category corresponding to the candidate task executor based on the data filtering results. The task allocation module is used to filter the task processing categories based on preset category classification rules, determine the target task executor in the candidate task executor list, and allocate the task to be assigned to the target task executor.
[0008] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the task allocation method described in any embodiment of the present invention.
[0009] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the task allocation method described in any embodiment of the present invention.
[0010] According to another aspect of the present invention, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the task allocation method described in any embodiment of the present invention.
[0011] The technical solution of this invention involves obtaining a list of candidate task executors corresponding to the tasks to be assigned; each candidate task executor in the list corresponds to a current task processing information pool. Then, the current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Finally, the task processing categories are filtered based on preset category division rules to determine the target task executor in the candidate task executor list, and the tasks to be assigned are assigned to the target task executor. Because the task status of each execution node is filtered in real time, the problem of low task allocation efficiency is solved, enabling intelligent, dynamic, and precise task allocation, thus improving the allocation efficiency of tasks to be assigned.
[0012] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0013] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0014] Figure 1 This is a flowchart of a task allocation method provided in Embodiment 1 of the present invention; Figure 2 This is a flowchart of a task allocation method provided according to Embodiment 2 of the present invention; Figure 3 This is a flowchart of an optional task allocation method provided according to Embodiment 2 of the present invention; Figure 4 This is a flowchart of a backlog task reallocation method provided in Embodiment 2 of the present invention; Figure 5 This is a schematic diagram of the structure of a task allocation device according to Embodiment 3 of the present invention; Figure 6 This is a schematic diagram of the structure of an electronic device that implements the task allocation method of the present invention. Detailed Implementation
[0015] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0016] It should be noted that the terms "first," "second," "target," etc., used in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0017] Example 1 Figure 1 This is a flowchart of a task allocation method provided in Embodiment 1 of the present invention. This embodiment is applicable to the automatic allocation of tasks to be assigned in a business platform. The method can be executed by a task allocation device, which can be implemented in hardware and / or software and can be configured in an electronic device. Figure 1 As shown, the method includes: S110. Obtain a list of candidate task executors corresponding to the task to be assigned; wherein, each candidate task executor in the list of candidate task executors corresponds to a current task processing information pool.
[0018] In this context, "tasks to be assigned" refers to newly generated task instances that have not yet been assigned to any task executor. Typically, a task to be assigned can be represented as a data object containing fields such as task identifier, generation time, and business attributes. For example, in an insurance claims scenario, a task to be assigned could be a newly generated health insurance claim case. "Task processing information pool" refers to the data storage area corresponding to each task executor. Typically, the task processing information pool records dynamic data such as the number of tasks currently being processed by the executor, the processing status of each task, and the processing time. For example, the task processing information pool could be a salesperson's personal task pool. "Current task processing information pool" refers to the task processing information pool corresponding to each task executor at the current decision-making moment. "Candidate task executor" refers to a potential executor with the authority to process tasks to be assigned. For example, in an insurance claims scenario, a candidate task executor could be a salesperson with claims processing authority. "Candidate task executor list" refers to a collection of all candidate task executors. For example, taking an insurance claims scenario as an example, the list of candidate task executors can be a set of all active and authorized claims agents under the organization.
[0019] S120. Based on a preset task quantity threshold, the current task processing information pool is filtered, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results.
[0020] The preset task quantity threshold can refer to one or more pre-defined numerical standards used to determine the task load status of the executor. Typically, the preset task quantity threshold can be a single value or a set of thresholds. The data filtering result can refer to the classification result obtained by comparing the current task volume of each candidate task executor with the preset task quantity threshold. The task processing category can refer to the category label assigned to the candidate task executors based on the data filtering result. Typically, different task processing categories correspond to different allocation priorities or processing strategies.
[0021] S130. Based on the preset category classification rules, the task processing category is filtered to determine the target task executor in the candidate task executor list, and the task to be assigned is assigned to the target task executor.
[0022] The preset category division rules refer to the pre-defined rule logic used to determine the allocation priority among different task processing categories. Typically, the preset category division rules specify from which categories the target executor is selected, and how the best candidate is chosen within each category. The target task executor can refer to the sole entity ultimately selected and assigned the task. For example, the target task executor could be a salesperson selected to receive new cases.
[0023] The technical solution of this invention involves obtaining a list of candidate task executors corresponding to the tasks to be assigned; each candidate task executor in the list corresponds to a current task processing information pool. Then, the current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Finally, the task processing categories are filtered based on preset category division rules to determine the target task executor in the candidate task executor list, and the tasks to be assigned are assigned to the target task executor. Because the task status of each execution node is filtered in real time, the problem of low task allocation efficiency is solved, enabling intelligent, dynamic, and precise task allocation, thus improving the allocation efficiency of tasks to be assigned.
[0024] Example 2 Figure 2This is a flowchart of a task allocation method provided in Embodiment 2 of the present invention. This embodiment is a refinement based on the above embodiment. Specifically, this embodiment refines the step of "screening the task processing categories based on preset category classification rules to determine the target task executor in the candidate task executor list". Specifically, it may include: if a first type of task executor is identified, then the first type of task executor is included as the target task executor in the candidate task executor list; if the first type of task executor is not identified but a second type of task executor is identified, then the remaining processing time for each second type of task executor to complete the currently pending task in the current task processing information pool is predicted, and the second type of task executor with the shortest remaining processing time is included as the target task executor in the candidate task executor list. Figure 2 As shown, the method includes: S210. Obtain a list of candidate task executors corresponding to the task to be assigned; wherein, each candidate task executor in the list of candidate task executors corresponds to a current task processing information pool.
[0025] S220. If the number of currently pending tasks in the current task processing information pool is zero, then the task processing category corresponding to the candidate task executor is marked as the first type of task executor.
[0026] The current pending task quantity refers to the number of tasks that the task executor is currently processing but has not yet completed, retrieved from the task processing information pool corresponding to that executor. Typically, the current pending task quantity is a real-time dynamic data point reflecting the current load status of the executor. The first type of task executor refers to those marked as having zero pending tasks after data filtering. Typically, the first type of task executor is in a completely idle state and is ready to receive new tasks immediately.
[0027] S230. If the number of currently pending tasks in the current task processing information pool is one, then the task processing category corresponding to the candidate task executor is marked as the second type of task executor.
[0028] The second type of task executor refers to the task executor that, after data filtering, is marked as having one task currently pending. Typically, the second type of task executor has only one task currently being processed and is in a state of nearing idleness.
[0029] Specifically, after obtaining the list of candidate task executors for the tasks to be assigned, a preset task quantity threshold can be used to filter the current task processing information pool. If the number of tasks currently pending in the current task processing information pool is zero, the task processing category corresponding to the candidate task executor is marked as the first type of task executor. If the number of tasks currently pending in the current task processing information pool is one, the task processing category corresponding to the candidate task executor is marked as the second type of task executor. If the number of tasks currently pending in the current task processing information pool is greater than one, the task processing category corresponding to the candidate task executor is marked as the third type of task executor or left unmarked. Thus, by establishing an objective and real-time executor status classification system, priority stratification of task allocation can be achieved, thereby improving the overall processing efficiency of the system.
[0030] S240. If the first type of task executor is identified, then the first type of task executor is included as the target task executor in the candidate task executor list.
[0031] S250. If the first type of task executor is not identified but the second type of task executor is identified, predict the remaining processing time for each second type of task executor to complete the current task in the current task processing information pool, and select the second type of task executor with the shortest remaining processing time as the target task executor in the candidate task executor list.
[0032] The remaining processing time can refer to the predicted remaining time from the current system time until all tasks in the second category are completed.
[0033] Specifically, if a first-type task executor exists, it is directly selected as the target task executor in the candidate task executor list. If no first-type task executor exists but a second-type task executor does, the remaining processing time for each second-type task executor to complete the currently pending tasks in the current task processing information pool needs to be predicted, and the second-type task executor with the shortest remaining processing time is selected as the target task executor in the candidate task executor list. Thus, by predicting the remaining time using real-time data, objective, accurate, and dynamic intelligent allocation can be achieved.
[0034] In an optional implementation, predicting the remaining processing time for each second-type task executor to complete the currently pending tasks in the current task processing information pool includes: Step a1: Obtain the historical processing efficiency parameters corresponding to the second type of task executor, the current processing stage corresponding to the current task to be processed, and the processing time of the current stage.
[0035] Historical processing efficiency parameters refer to quantitative indicators used to represent the processing speed of a task executor. For example, historical processing efficiency parameters can be calculated based on historical task data completed by the executor. Typically, historical processing efficiency parameters can be used as weighting coefficients to reflect the inherent processing capability of the executor; the larger the value, the higher the processing efficiency and the shorter the time required to complete the same task. Processing stages refer to the various processing phases defined in the business process. Typically, each task will sequentially go through various processing stages during its lifecycle. The current processing stage refers to the processing stage in which the currently pending task is located at the current moment. The current stage processing duration refers to the length of time from the start of the current stage to the current system moment. Typically, the current stage processing duration indicates how long the stage has been processing. For example, following the above example, taking the current system time as systime, the start time of the current stage corresponding to the acceptance stage as t1s, the start time of the current stage corresponding to the bill entry stage as t2s, the start time of the current stage corresponding to the check-in stage as t3s, and the start time of the current stage corresponding to the claims settlement stage as t4s, then the processing time of the current stage corresponding to the acceptance stage can be expressed as: systime-t1s, the processing time of the current stage corresponding to the bill entry stage can be expressed as: systime-t2s, the processing time of the current stage corresponding to the check-in stage can be expressed as: systime-t3s, and the processing time of the current stage corresponding to the claims settlement stage can be expressed as: systime-t4s.
[0036] Step a2: Based on the current processing stage and the preset business processing flow, determine the theoretical processing time set corresponding to the current task to be processed, and determine the complexity factor set based on historical task processing information and current task processing information.
[0037] The pre-defined business processing flow refers to a pre-defined process model used to standardize the order of task processing. Typically, a pre-defined business processing flow is a static definition that specifies the steps a task must go through from start to finish, and the order in which these steps occur. For example, taking an insurance claims scenario as an example, the pre-defined business processing flow could include an acceptance step, an invoice entry step, a check-in step, and a claims settlement step. Similar tasks refer to tasks of the same processing scenario type. Theoretical processing time refers to the expected standard time required to complete a certain processing step, estimated based on historical data of similar tasks. Typically, different processing steps correspond to different theoretical processing times. For example, if the pre-defined business processing flow includes an acceptance step, an invoice entry step, a check-in step, and a claims settlement step, the theoretical processing time for the acceptance step could be t1, the theoretical processing time for the invoice entry step could be t2, the theoretical processing time for the check-in step could be t3, and the theoretical processing time for the claims settlement step could be t4. The theoretical processing time for each step can be expressed by the formula: The calculation yielded the result. This can represent the minimum time taken among nearly 100 similar tasks in this processing stage. This can represent the maximum time taken among nearly 100 similar tasks in this processing stage. This can represent the average time spent on nearly 100 similar tasks in this processing stage. The theoretical processing time set can refer to the set of all theoretical times from the first stage to the last stage in the same business processing flow. For example, continuing from the above example, the theoretical processing time set can be {t1, t2, t3, t4}.
[0038] Task processing information refers to all types of data related to the task processing process. Typically, task processing information can include static attributes such as task type, number of events, number of bills, and insurance type, as well as dynamic attributes such as the current processing stage, stage start time, and processing duration. Historical task processing information refers to the task processing information corresponding to each completed task within a historical time period. Current task processing information refers to the task processing information corresponding to the currently pending task. Complexity factor refers to the complexity of the currently pending task at that processing stage relative to the historical average task. Typically, a currently pending task corresponds to different complexity factors at different processing stages. The complexity factor set refers to the set of various complexity factors corresponding to the currently pending task at different processing stages.
[0039] Optionally, the set of complexity factors includes: a complexity factor for the acceptance process, a complexity factor for the data entry process, a complexity factor for the check-in process, and a complexity factor for the claims process. The complexity factor for the acceptance process can refer to an adjustment coefficient used to represent the complexity of the task in the acceptance process. For example, in this embodiment of the invention, taking an insurance claims scenario as an example, the complexity factor for the acceptance process can be represented by P_t1, and this complexity factor is set to a fixed reference value of 1. The complexity factor for the data entry process can refer to an adjustment coefficient used to represent the complexity of the task in the bill entry process. Typically, the complexity factor for the data entry process depends on the number of events entered in the acceptance process. For example, continuing from the above example, the complexity factor for the data entry process can be represented by: P_t2 = t1_event / ave_event. t1_event can represent the number of events entered in the acceptance process for the current pending task, and ave_event can represent the average number of events in the acceptance process for the last 100 similar cases. The complexity factor for the check-in process can refer to an adjustment coefficient used to represent the complexity of the task in the check-in process. Typically, the complexity factor of the check-in process depends on the number of bills entered in the bill entry process. For example, continuing the previous example, the complexity factor of the check-in process can be represented by: P_t3 = t2_bill / ave_bill. t2_bill represents the number of bills entered in the current pending task's entry process, and ave_bill represents the average number of bills entered in the entry process for the last 100 similar cases. The complexity factor of the claims settlement process can refer to an adjustment coefficient used to represent the complexity of the claims settlement task. Typically, the complexity factor of the claims settlement process depends on the number of events and bills. For example, continuing the previous example, the complexity factor of the claims settlement process can be represented by: P_t4 = (t1_event / ave_event) × (t2_bill / ave_bill) × fin. fin represents whether a claims settlement formula has been developed for the current pending task's claim type; 0 indicates yes, 1 indicates no.
[0040] Step a3: Based on the historical processing efficiency parameters, the current processing stage, the current processing time, the theoretical processing time set, and the complexity factor set, calculate the remaining processing time for the second type of task executor to complete the current task to be processed.
[0041] Specifically, if only the second type of task executor is identified but the first type of task executor is not identified, the historical processing efficiency parameters, the current processing stage of the current task, and the processing time of the current stage can be obtained first. Then, the theoretical processing time set for the current task is determined using the current processing stage and the preset business processing flow, and a set of complexity factors is determined based on historical task processing information and current task processing information. Finally, the remaining processing time for the second type of task executor to complete the current task is calculated comprehensively using the historical processing efficiency parameters, the current processing stage, the current stage processing time, the theoretical processing time set, and the complexity factor set. This allows for accurate prediction of when each executor will be idle, providing an effective basis for allocation strategies.
[0042] In an optional implementation, the step of calculating the remaining processing time for the second type of task executor to complete the current task based on the historical processing efficiency parameters, the current processing stage, the current stage processing time, the theoretical processing time set, and the complexity factor set includes: Step b1: Determine the estimated processing time set corresponding to the second type of task executor based on the theoretical processing time set and the complexity factor set; wherein, the estimated processing time set includes the first estimated processing time corresponding to the current processing stage and the second estimated processing time corresponding to the subsequent processing stage.
[0043] The estimated processing time can refer to the adjusted processing time obtained by multiplying the theoretical processing time by the corresponding complexity factor. For example, continuing the above example, the estimated processing time for the acceptance stage can be expressed as: P_t1×t1, the estimated processing time for the bill entry stage can be expressed as: P_t2×t2, the estimated processing time for the check-in stage can be expressed as: P_t3×t3, and the estimated processing time for the settlement stage can be expressed as: P_t4×t4. The first estimated processing time can refer to the estimated processing time corresponding to the current processing stage. Subsequent processing stages can refer to each processing stage arranged after the current processing stage in the entire preset business processing flow. The second estimated processing time can refer to the estimated processing time corresponding to the subsequent processing stage. The set of estimated processing times can refer to the set composed of the first estimated processing time and each second estimated processing time corresponding to the same currently pending task.
[0044] Step b2: Compare the current processing time with the first estimated processing time to obtain the numerical comparison result.
[0045] The numerical comparison result can refer to the result obtained by comparing the current processing time with the first estimated processing time. For example, the numerical comparison result can be that the current processing time is greater than the first estimated processing time, or it can be that the current processing time is less than the first estimated processing time.
[0046] Step b3: Based on the numerical comparison results, historical processing efficiency parameters, estimated processing time set, and current stage processing time, calculate the remaining processing time for the second type of task executor to complete the current pending task.
[0047] Specifically, after determining the theoretical processing time set corresponding to the current task based on the current processing stage and the preset business processing flow, and determining the complexity factor set based on historical task processing information and current task processing information, the theoretical processing time in the theoretical processing time set can be multiplied by the complexity factor in the complexity factor set to obtain the estimated processing time set corresponding to the second type of task executor. Then, the processing time of the current stage is numerically compared with the first estimated processing time to obtain the numerical comparison result. Finally, the remaining processing time for the second type of task executor to complete the current task is calculated comprehensively using the numerical comparison result, historical processing efficiency parameters, the estimated processing time set, and the current stage processing time.
[0048] In an optional implementation, the step of calculating the remaining processing time for the second type of task executor to complete the current pending task based on the numerical comparison results, historical processing efficiency parameters, estimated processing time set, and current stage processing time includes: Step c1: If the numerical comparison result shows that the current processing time is longer than the first estimated processing time, then sum up each of the second estimated processing times to obtain the first subsequent estimated processing time, and take the product of the first subsequent estimated processing time and the historical processing efficiency parameter as the remaining processing time.
[0049] The estimated processing time for the first subsequent step can refer to the sum of the estimated processing times for all subsequent processing steps.
[0050] Specifically, following the above example, taking the historical processing efficiency parameter as N as an example, when the current processing link is the acceptance link, if P_t1×t1<systime-t1s, the remaining processing duration can be expressed as: t_residue=N×(P_t2×t2+P_t3×t3+P_t4×t4). When the current processing link is the bill entry link, if P_t2×t2<systime-t2s, then t_residue=N×(P_t3×t3+P_t4×t4). When the current processing link is the verification and entry link, if P_t3×t3<systime-t3s, then t_residue=N×P_t4×t4. When the current processing link is the adjustment and calculation link, if P_t4×t4<systime-t4s, then t_residue=N×0.
[0051] Step c2: If the numerical comparison result indicates that the current link processing duration is less than the first estimated processing duration, calculate the processing duration difference between the first estimated processing duration and the current link processing duration, sum the processing duration difference and the first subsequent estimated processing duration to obtain a second subsequent estimated processing duration, and take the product of the second subsequent estimated processing duration and the historical processing efficiency parameter as the remaining processing duration.
[0052] Herein, the processing duration difference may refer to the calculated difference between the first estimated processing duration and the current link processing duration. The second subsequent estimated processing duration may refer to the sum of the processing duration difference and the first subsequent estimated processing duration.
[0053] Specifically, following the above example, when the current processing link is the acceptance link, if P_t1×t1>systime-t1s, then t_residue=N×(P_t1×t1-(systime-t1s)+P_t2×t2+P_t3×t3+P_t4×t4). When the current processing link is the bill entry link, if P_t2×t2>systime-t2s, then t_residue=N×(P_t2×t2-(systime-t2s)+P_t3×t3+P_t4×t4). When the current processing link is the verification and entry link, if P_t3×t3>systime-t3s, then t_residue=N×(P_t3×t3-(systime-t3s)+P_t4×t4). When the current processing link is the adjustment and calculation link, if P_t4×t4>systime-t4s, then t_residue=N×(P_t4×t4-(systime-t4s)).
[0054] S260. Assign the to-be-assigned task to the target task executor.
[0055] The technical solution of this invention involves obtaining a list of candidate task executors corresponding to the tasks to be assigned; each candidate task executor in the list corresponds to a current task processing information pool. Then, if the number of tasks to be processed in the current task processing information pool is zero, the task processing category corresponding to the candidate task executor is marked as a first-type task executor. If the number of tasks to be processed in the current task processing information pool is one, the task processing category corresponding to the candidate task executor is marked as a second-type task executor. Further, if a first-type task executor is identified, it is used as the target task executor in the candidate task executor list. If no first-type task executor is identified but a second-type task executor is identified, the remaining processing time for each second-type task executor to complete the currently pending tasks in the current task processing information pool is predicted, and the second-type task executor with the shortest remaining processing time is used as the target task executor in the candidate task executor list. Finally, the tasks to be assigned are assigned to the target task executors. By filtering the task status of each execution node in real time, the problem of low task allocation efficiency is solved, enabling intelligent, dynamic, and precise task allocation and improving the allocation efficiency of tasks to be assigned.
[0056] Figure 3The diagram shows a flowchart of an optional task allocation method provided by an embodiment of the present invention. Specifically, taking an insurance claims scenario as an example, a personal task pool (i.e., a task processing information pool) is set up in advance for each claims agent (i.e., a candidate task executor), with a maximum task quantity of 2 in the task pool. When a new customer files a claim, the system generates a new claim case (i.e., a task to be assigned) and triggers a check on each agent's task pool. The check steps are as follows: First, the number of claim cases in the agent's personal task pool is filtered using a preset task quantity threshold. If an agent's personal task pool has 0 claim cases, the agent is added to the idle agent resource table. The added fields include: idle start time t_idle and the number of tasks processed that day. At this time, the task to be assigned is assigned to the agent in the idle agent resource table with the fewest cases processed that day. If the number of cases processed by the candidate agents is the same, the idle time is calculated, and the agent with the longest idle time is assigned the task. Wherein, idle time t' = current system time - t_idle. If there are no salespersons with 0 cases in their personal task pool, but there are salespersons with 1 case, the estimated completion time (i.e., remaining processing time) for the salesperson with 1 case will be predicted based on their own abilities and business characteristics. The predicted results will be sorted, and the case will be assigned to the salesperson whose estimated completion time is closest to the current time. If neither of these two conditions is met, it means the current salesperson has two tasks being processed. In this case, no case will be assigned until the next check meets the above two conditions. In this embodiment of the invention, a check can be triggered every 10 minutes.
[0057] Figure 4 The diagram shows a flowchart of a backlog task redistribution method provided by an embodiment of the present invention. Specifically, while performing the above task allocation process, a batch processing task can also be executed every hour. For example, the personal task pool (i.e., task processing information pool) of each claims agent (i.e., candidate task executor) is traversed and checked. For tasks in the personal task pool whose current processing stage is the acceptance stage, the time difference system-t1s between the start time of the current stage and the current system time is calculated. It is determined whether system-t1s exceeds the system preset time. If it exceeds the time limit, the case is deleted from the independent task pool and added to the backlog task pool. The backlog tasks in the backlog task pool are sorted according to the acceptance time from oldest to newest, and the backlog tasks in the backlog task pool are redistributed with priority.
[0058] Example 3 Figure 5 This is a schematic diagram of a task allocation device provided in Embodiment 3 of the present invention. Figure 5 As shown, the device includes: a data acquisition module 310, a data filtering module 320, and a task allocation module 330; The data acquisition module 310 is used to acquire a list of candidate task executors corresponding to the task to be assigned; wherein each candidate task executor in the list of candidate task executors corresponds to a current task processing information pool. The data filtering module 320 is used to filter the current task processing information pool based on a preset task quantity threshold, and determine the task processing category corresponding to the candidate task executor based on the data filtering results. The task allocation module 330 is used to filter the task processing categories based on preset category classification rules, determine the target task executor in the candidate task executor list, and allocate the task to be assigned to the target task executor.
[0059] The technical solution of this invention involves obtaining a list of candidate task executors corresponding to the tasks to be assigned; each candidate task executor in the list corresponds to a current task processing information pool. Then, the current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Finally, the task processing categories are filtered based on preset category division rules to determine the target task executor in the candidate task executor list, and the tasks to be assigned are assigned to the target task executor. Because the task status of each execution node is filtered in real time, the problem of low task allocation efficiency is solved, enabling intelligent, dynamic, and precise task allocation, thus improving the allocation efficiency of tasks to be assigned.
[0060] Optional, the data filtering module 320 can be used for: If the current number of pending tasks in the current task processing information pool is zero, then the task processing category corresponding to the candidate task executor is marked as the first type of task executor. If the number of currently pending tasks in the current task processing information pool is one, then the task processing category corresponding to the candidate task executor is marked as the second type of task executor.
[0061] Optionally, the task allocation module 330 may specifically include: a first allocation unit and a second allocation unit; The first allocation unit is used to identify the first type of task executor and then include the first type of task executor as the target task executor in the candidate task executor list. The second allocation unit is used to predict the remaining processing time for each second type of task executor to complete the current pending task in the current task processing information pool if the first type of task executor is not identified but the second type of task executor is identified, and to select the second type of task executor with the shortest remaining processing time as the target task executor in the candidate task executor list.
[0062] Optional, the second allocation unit can be used for: Obtain the historical processing efficiency parameters of the second type of task executor, the current processing stage of the current task to be processed, and the processing time of the current stage; Based on the current processing stage and the preset business processing flow, determine the theoretical processing time set corresponding to the current task to be processed, and determine the complexity factor set based on historical task processing information and current task processing information. Based on the historical processing efficiency parameters, the current processing stage, the processing time of the current stage, the theoretical processing time set, and the complexity factor set, calculate the remaining processing time for the second type of task executor to complete the current task to be processed.
[0063] Optional, the set of complexity factors includes: complexity factors for the acceptance process, complexity factors for the data entry process, complexity factors for the check-in process, and complexity factors for the processing process.
[0064] Optional, the second allocation unit can be used for: The estimated processing time set corresponding to the second type of task executor is determined based on the theoretical processing time set and the complexity factor set; wherein, the estimated processing time set includes the first estimated processing time corresponding to the current processing stage and the second estimated processing time corresponding to the subsequent processing stage; The current processing time is compared with the first estimated processing time to obtain a numerical comparison result. Based on the numerical comparison results, historical processing efficiency parameters, estimated processing time set, and current stage processing time, calculate the remaining processing time for the second type of task executor to complete the current pending task.
[0065] Optional, the second allocation unit can be used for: If the numerical comparison result is that the current processing time is greater than the first estimated processing time, then the second estimated processing times are summed to obtain the first subsequent estimated processing time, and the product of the first subsequent estimated processing time and the historical processing efficiency parameter is taken as the remaining processing time. If the numerical comparison result is that the current processing time is less than the first estimated processing time, then the processing time difference between the first estimated processing time and the current processing time is calculated, and the processing time difference and the first subsequent estimated processing time are summed to obtain the second subsequent estimated processing time. The product of the second subsequent estimated processing time and the historical processing efficiency parameter is taken as the remaining processing time.
[0066] The task allocation device provided in the embodiments of the present invention can execute the task allocation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0067] Example 4 Figure 6 A schematic diagram of an electronic device 410 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0068] like Figure 6 As shown, the electronic device 410 includes at least one processor 420 and a memory, such as a read-only memory (ROM) 430 or a random access memory (RAM) 440, communicatively connected to the at least one processor 420. The memory stores computer programs executable by the at least one processor. The processor 420 can perform various appropriate actions and processes based on the computer program stored in the ROM 430 or loaded into the RAM 440 from storage unit 490. The RAM 440 may also store various programs and data required for the operation of the electronic device 410. The processor 420, ROM 430, and RAM 440 are interconnected via a bus 450. An input / output (I / O) interface 460 is also connected to the bus 450.
[0069] Multiple components in electronic device 410 are connected to I / O interface 460, including: input unit 470, such as keyboard, mouse, etc.; output unit 480, such as various types of monitors, speakers, etc.; storage unit 490, such as disk, optical disk, etc.; and communication unit 4100, such as network card, modem, wireless transceiver, etc. Communication unit 4100 allows electronic device 410 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0070] Processor 420 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 420 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 420 performs the various methods and processes described above, such as task allocation methods.
[0071] The method includes: Obtain a list of candidate task executors corresponding to the tasks to be assigned; wherein each candidate task executor in the list corresponds to a current task processing information pool; The current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Based on preset category classification rules, the task processing categories are filtered to determine the target task executor in the candidate task executor list, and the task to be assigned is assigned to the target task executor.
[0072] In some embodiments, the task allocation method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 490. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 410 via ROM 430 and / or communication unit 4100. When the computer program is loaded into RAM 440 and executed by processor 420, one or more steps of the task allocation method described above may be performed. Alternatively, in other embodiments, processor 420 may be configured to perform the task allocation method by any other suitable means (e.g., by means of firmware).
[0073] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0074] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0075] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0076] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0077] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0078] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through a communication network. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0079] This application also discloses a computer program product, which includes a computer program that, when executed by a processor, implements the task allocation method provided in any embodiment of this application. This program product shares the same inventive concept as the task allocation methods disclosed in the embodiments of this application, and therefore will not be described in detail here.
[0080] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0081] 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 be made according to 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 task allocation method, characterized in that, include: Obtain a list of candidate task executors corresponding to the tasks to be assigned; wherein each candidate task executor in the list corresponds to a current task processing information pool; The current task processing information pool is filtered based on a preset task quantity threshold, and the task processing category corresponding to the candidate task executor is determined based on the data filtering results. Based on preset category classification rules, the task processing categories are filtered to determine the target task executor in the candidate task executor list, and the task to be assigned is assigned to the target task executor.
2. The method according to claim 1, characterized in that, The process of filtering the current task processing information pool based on a preset task quantity threshold, and determining the task processing category corresponding to the candidate task executor based on the data filtering results, includes: If the current number of pending tasks in the current task processing information pool is zero, then the task processing category corresponding to the candidate task executor is marked as the first type of task executor. If the number of currently pending tasks in the current task processing information pool is one, then the task processing category corresponding to the candidate task executor is marked as the second type of task executor.
3. The method according to claim 2, characterized in that, The step of filtering the task processing categories based on preset category classification rules to determine the target task executor in the candidate task executor list includes: If the first type of task executor is identified, then the first type of task executor is included as the target task executor in the candidate task executor list; If the first type of task executor is not identified but the second type of task executor is identified, then the remaining processing time for each second type of task executor to complete the current pending task in the current task processing information pool is predicted, and the second type of task executor with the shortest remaining processing time is selected as the target task executor in the candidate task executor list.
4. The method according to claim 3, characterized in that, The prediction of the remaining processing time for each second-type task executor to complete the currently pending tasks in the current task processing information pool includes: Obtain the historical processing efficiency parameters of the second type of task executor, the current processing stage of the current task to be processed, and the processing time of the current stage; Based on the current processing stage and the preset business processing flow, determine the theoretical processing time set corresponding to the current task to be processed, and determine the complexity factor set based on historical task processing information and current task processing information. Based on the historical processing efficiency parameters, the current processing stage, the processing time of the current stage, the theoretical processing time set, and the complexity factor set, calculate the remaining processing time for the second type of task executor to complete the current task to be processed.
5. The method according to claim 4, characterized in that, The set of complexity factors includes: complexity factors for the acceptance process, complexity factors for the data entry process, complexity factors for the check-in process, and complexity factors for the processing process.
6. The method according to claim 4, characterized in that, The calculation of the remaining processing time for the second type of task executor to complete the current task, based on the historical processing efficiency parameters, the current processing stage, the current stage processing time, the theoretical processing time set, and the complexity factor set, includes: The estimated processing time set corresponding to the second type of task executor is determined based on the theoretical processing time set and the complexity factor set; wherein, the estimated processing time set includes the first estimated processing time corresponding to the current processing stage and the second estimated processing time corresponding to the subsequent processing stage; The current processing time is compared with the first estimated processing time to obtain a numerical comparison result. Based on the numerical comparison results, historical processing efficiency parameters, estimated processing time set, and current stage processing time, calculate the remaining processing time for the second type of task executor to complete the current pending task.
7. The method according to claim 6, characterized in that, The calculation of the remaining processing time for the second type of task executor to complete the current pending task based on the numerical comparison results, historical processing efficiency parameters, estimated processing time set, and current stage processing time includes: If the numerical comparison result is that the current processing time is greater than the first estimated processing time, then the second estimated processing times are summed to obtain the first subsequent estimated processing time, and the product of the first subsequent estimated processing time and the historical processing efficiency parameter is taken as the remaining processing time. If the numerical comparison result is that the current processing time is less than the first estimated processing time, then the processing time difference between the first estimated processing time and the current processing time is calculated, and the processing time difference and the first subsequent estimated processing time are summed to obtain the second subsequent estimated processing time. The product of the second subsequent estimated processing time and the historical processing efficiency parameter is taken as the remaining processing time.
8. A task allocation device, characterized in that, include: The data acquisition module is used to acquire a list of candidate task executors corresponding to the task to be assigned; wherein, each candidate task executor in the list of candidate task executors corresponds to a current task processing information pool; The data filtering module is used to filter the current task processing information pool based on a preset task quantity threshold, and to determine the task processing category corresponding to the candidate task executor based on the data filtering results. The task allocation module is used to filter the task processing categories based on preset category classification rules, determine the target task executor in the candidate task executor list, and allocate the task to be assigned to the target task executor.
9. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the task allocation method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the task allocation method according to any one of claims 1-7.