A process task execution subject dynamic scheduling method and system

CN123014632APending Publication Date: 2026-10-30CHINA HARBOUR ENGINEERING
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611504774.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-09-24
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

[0005]本申请提供一种流程任务执行主体动态调度方法及系统,旨在解决现有技术在复杂组织环境的流程任务执行主体分配过程中,人员状态和任务属性动态变化、多种组织及业务约束相互耦合以及任务分配难以兼顾整体处理效率、人员负载均衡与业务优先级的问题

Benefits of technology

[0071]本申请基于对现有技术问题的进一步分析和研究,认识到现有技术在复杂组织环境的流程任务执行主体分配过程中,人员状态和任务属性动态变化、多种组织及业务约束相互耦合以及任务分配难以兼顾整体处理效率、人员负载均衡与业务优先级的问题,通过获取待分配任务集合、组织内执行主体信息以及系统运行状态信息,对执行主体和待分配任务分别进行特征化处理,并确定各待分配任务的任务优先级,使后续调度能够同时依据执行主体的实际状态、任务自身属性及当前系统运行状态进行处理;进一步通过任务约束条件对组织内执行主体进行硬约束筛选,先排除不具备任务执行资格的执行主体,再依据有效候选执行主体与对应待分配任务之间的预匹配结果以及系统运行状态信息对候选空间进行动态裁剪,从而减少进入后续精细匹配和组合优化阶段的候选数据量,降低大规模组织环境下的搜索空间和计算开销;在此基础上,通过根据任务特征数据和执行主体特征数据确定多个匹配特征,并由待分配任务的任务类型和系统运行状态信息共同确定各匹配特征对应的动态权重,使匹配评分能够随不同任务属性及系统负载状态动态调整,避免采用固定规则或固定权重时难以适应人员状态和任务属性变化的问题;进一步根据各待分配任务的任务优先级、匹配评分及各目标候选执行主体的剩余处理能力构建多约束组合优化模型,并根据任务规模、候选规模、约束复杂度以及系统运行状态信息确定相适应的目标求解策略,使多个待分配任务与多个执行主体之间的分配关系能够在任务优先级、主体处理能力及匹配程度等因素的共同约束下进行整体求解,从而降低局部规则匹配导致的任务分配失衡;同时,当新增待分配任务到达或已分配任务状态发生变化时,仅针对受影响任务集合及对应的受影响候选执行主体进行局部增量优化,并保持未受影响任务的原有分配结果不变,由此避免因局部任务变化而重复执行全量组合优化。因此,本申请通过候选空间动态压缩、随任务类型和系统状态变化的匹配评价、多约束整体优化以及受影响范围内的局部增量计算,使流程任务执行主体调度能够适应人员状态和任务属性的动态变化,并在多种组织及业务约束并存的情况下兼顾任务处理效率、执行主体负载和任务优先级,同时降低重复计算开销、提高在线调度实时性,从而解决复杂组织环境下现有任务分配方式动态适配能力不足、多种约束难以协调以及难以兼顾整体处理效率、人员负载均衡与业务优先级的问题。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123014632A_ABST
    Figure CN123014632A_ABST
Patent Text Reader

Abstract

The application discloses a process task execution subject dynamic scheduling method and system, the method comprises the following steps: obtaining a to-be-allocated task set, execution subject information and system running state information, determining execution subject feature data, task feature data and task priority; performing hard constraint screening based on task constraints, and dynamically pruning a candidate space in combination with a pre-matching result and a system running state; determining a dynamic weight and calculating a matching score according to a task type and a system running state; constructing a multi-constraint combination optimization model based on a task priority, a matching score and a remaining processing capacity, determining a solving strategy and obtaining a task allocation result; when a task is newly added or a state is changed, performing local incremental optimization on an affected range. Thus, candidate search and repeated solving overhead can be reduced, the real-time performance of task scheduling in a complex organizational environment can be improved, and processing efficiency, load balancing and business priority are taken into account.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of enterprise informatization and process task scheduling, and in particular to a method and system for dynamic scheduling of process task execution entities. Background Technology

[0002] As enterprises increasingly adopt information technology and digitize business processes, more and more business approvals, task processing, and collaborative operations are managed uniformly through process engines. During process execution, it is typically necessary to determine the task execution entity from among personnel within the organization with the corresponding processing authority or business responsibilities, based on the pending tasks generated by the business process. For large enterprises with complex hierarchical relationships and diverse business types, different personnel differ in organizational affiliation, job authority, business capabilities, task load, and availability. Furthermore, different tasks also exhibit different characteristics in terms of business type, processing timeframe, risk level, and processing requirements. Therefore, how to rationally determine the execution entity corresponding to each pending task has a significant impact on the operational efficiency of business processes and the efficiency of organizational resource utilization.

[0003] Existing task allocation methods typically include static allocation based on job position or role, conditional matching based on preset business rules, and load balancing based on polling, randomness, or the number of tasks. Static allocation relies heavily on pre-established job-person correspondences, making timely adjustments difficult when personnel status or business environment changes. Rule-based allocation usually sets matching conditions for departments, business types, and task attributes; as organizational levels, business types, and constraints increase, rules can easily overlap or become coupled, increasing maintenance complexity. While conventional load balancing can adjust the number of tasks among different personnel to some extent, it often struggles to simultaneously consider multiple factors such as personnel processing capacity, historical processing history, real-time work status, and task urgency. Therefore, in complex organizational environments, existing task allocation methods are prone to insufficient matching between tasks and execution entities, uneven distribution of tasks among personnel, and delayed response to urgent tasks. Furthermore, when multiple tasks and multiple candidate execution entities exist simultaneously, it is difficult to coordinate the task allocation results at an overall level.

[0004] Therefore, in the process of allocating task execution subjects in complex organizational environments, the dynamic changes in personnel status and task attributes, the coupling of various organizational and business constraints, and the difficulty in balancing overall processing efficiency, personnel load balancing, and business priorities in task allocation have become urgent problems that need to be solved. Summary of the Invention

[0005] This application provides a method and system for dynamic scheduling of process task execution subjects, aiming to solve the problems in the allocation of process task execution subjects in complex organizational environments, such as the dynamic changes in personnel status and task attributes, the coupling of multiple organizational and business constraints, and the difficulty in balancing overall processing efficiency, personnel load balancing and business priority in task allocation.

[0006] Firstly, a method for dynamically scheduling process task execution entities, the method comprising:

[0007] Obtain the set of tasks to be assigned, information on execution entities within the organization, and system operation status information; determine the execution entity characteristic data corresponding to each execution entity based on the information on execution entities within the organization; and determine the corresponding task characteristic data and task priority based on the task information of each task to be assigned.

[0008] Based on the task constraints corresponding to each of the tasks to be assigned, the execution entities within the organization are subjected to hard constraint screening to obtain a set of valid candidate execution entities corresponding to each of the tasks to be assigned; each valid candidate execution entity is pre-matched with the corresponding task to be assigned to obtain a pre-matching result; and the set of valid candidate execution entities is dynamically pruned based on the pre-matching result and the system running status information to obtain a target candidate execution entity set.

[0009] For each of the tasks to be assigned, multiple matching features are determined based on the corresponding task feature data and the execution entity feature data of each target candidate execution entity. The dynamic weights corresponding to each matching feature are determined based on the task type of the task to be assigned and the system running status information. The matching score between each target candidate execution entity and the task to be assigned is determined based on each matching feature and the corresponding dynamic weight.

[0010] Based on the task priority, corresponding matching score, and remaining processing capacity of each target candidate execution entity, a multi-constraint combination optimization model is constructed between the set of tasks to be assigned and each target candidate execution entity. The target solution strategy is determined based on the task size of the set of tasks to be assigned, the candidate size of the set of target candidate execution entities, the constraint complexity, and the system running status information. The multi-constraint combination optimization model is solved according to the target solution strategy to obtain the task allocation result.

[0011] When a new task to be assigned is obtained or the status of an assigned task changes, the set of affected tasks and the corresponding affected candidate execution entities are determined based on the new task to be assigned or the status change. While keeping the task assignment results of unaffected tasks unchanged, local incremental optimization is performed on the set of affected tasks and the affected candidate execution entities to obtain the updated task assignment results.

[0012] Optionally, in the above scheme, determining the corresponding task priority based on the task information of each task to be assigned includes:

[0013] Obtain the business level, deadline, and risk level of the task to be assigned to obtain basic task priority data;

[0014] The remaining processing time is determined based on the time difference between the deadline in the task priority base data and the current time, and the task urgency is determined based on the correspondence between the remaining processing time and the preset maximum processing time.

[0015] The business level and risk level in the task priority basic data are normalized to obtain business level feature values ​​and risk level feature values.

[0016] The task priority of the task to be assigned is obtained by fusion calculation based on the business level feature value, task time urgency and risk level feature value and their respective priority weights.

[0017] Optionally, in the above scheme, the step of performing hard constraint screening on the execution entities within the organization and dynamically pruning the set of valid candidate execution entities includes:

[0018] Obtain the permission requirements, assignable organizational scope, and qualification requirements corresponding to the task to be assigned, and obtain the hard constraints of the task.

[0019] The permission information, organization affiliation information, and qualification information corresponding to each execution entity are matched with the hard constraints of the task, and execution entities that do not meet the hard constraints of the task are filtered out to obtain the set of valid candidate execution entities;

[0020] A lightweight matching degree prediction is performed based on the execution entity feature data of each execution entity in the set of valid candidate execution entities and the task feature data of the task to be assigned, so as to obtain the pre-matching result corresponding to each valid candidate execution entity;

[0021] Dynamic pruning parameters are determined based on the candidate size of the set of valid candidate execution entities and the system operating status information, and each valid candidate execution entity is sorted according to the pre-matching results to obtain the candidate sorting results;

[0022] The effective candidate execution entity set is pruned according to the candidate ranking result and the dynamic pruning parameters to obtain the target candidate execution entity set.

[0023] Optionally, in the above scheme, determining the dynamic weights corresponding to each matching feature based on the task type of the task to be assigned and the system running status information includes:

[0024] Based on the task type, risk level, and capability requirements of the task to be assigned, determine the baseline weight corresponding to each of the matching features to obtain the task type weight factor.

[0025] The overall system load rate and task arrival density are determined from the system operating status information to obtain system status characteristics;

[0026] The system state weight factor is obtained by adjusting the state adjustment parameters corresponding to each matching feature according to the system state characteristics. Specifically, when the overall system load rate increases, the system state weight factor corresponding to the load balancing feature is increased, and when the task arrival density increases, the system state weight factor corresponding to the response time feature is increased.

[0027] The weight combination value is determined based on the task type weight factor and system state weight factor corresponding to each of the matching features, and the weight combination value is normalized to obtain the dynamic weight corresponding to each of the matching features.

[0028] Optionally, in the above scheme, determining multiple matching features and determining a matching score based on each matching feature and its corresponding dynamic weight includes:

[0029] The capability matching degree is determined based on the business capability tags of the target candidate execution entity and the capability requirements of the task to be assigned, thereby obtaining capability matching features;

[0030] The predicted load is determined based on the current task load and predicted task duration of the target candidate execution entity, and the load availability is determined based on the predicted load and the corresponding processing capacity limit, thus obtaining the load balancing characteristics.

[0031] The response capability is determined based on the historical response duration and on-time completion status of the target candidate execution entity, thus obtaining the response timeliness characteristics;

[0032] Historical processing capabilities are determined based on the historical task completion status, execution quality, and task return status of the target candidate execution entities, thus obtaining historical performance characteristics.

[0033] Risk handling capability is determined based on the degree of matching between the risk adaptability of the target candidate execution entity and the risk level of the task to be assigned, thus obtaining risk adaptability characteristics;

[0034] The matching score between the target candidate execution entity and the task to be assigned is obtained by weighting the performance based on the capability matching feature, load balancing feature, response time feature, historical performance feature, and risk adaptation feature, as well as their respective dynamic weights.

[0035] Optionally, in the above scheme, determining the objective solution strategy and solving the multi-constraint combinatorial optimization model according to the objective solution strategy includes:

[0036] The search space size index is determined based on the number of tasks in the set of tasks to be assigned and the number of candidates in the set of target candidate execution entities, and the constraint complexity index is determined based on the number of effective constraints currently participating in combinatorial optimization.

[0037] Based on the search space size index, constraint complexity index, and system operating status information, the solution scale level corresponding to the current multi-constraint combination optimization model is determined, and the solution strategy determination result is obtained.

[0038] When the solution strategy determination result is characterized as small-scale and low-complexity, the exact matching algorithm is determined as the target solution strategy; when the solution strategy determination result is characterized as medium-scale, the integer linear programming algorithm is determined as the target solution strategy; when the solution strategy determination result is characterized as large-scale, high-constraint complexity, or high system load, the heuristic global search algorithm is determined as the target solution strategy.

[0039] According to the objective solution strategy, with the constraint that each task to be assigned corresponds to only one target candidate execution entity and the cumulative task load of each target candidate execution entity does not exceed the corresponding remaining processing capacity, the multi-constraint combination optimization model is solved to obtain the initial task allocation result;

[0040] Obtain the actual solution time corresponding to the target solution strategy, compare the actual solution time with the preset maximum calculation time limit, and obtain the solution time limit judgment result;

[0041] When the solution time limit judgment result indicates that the actual solution time does not exceed the preset maximum computation time limit, the initial task allocation result is determined as the task allocation result; when the solution time limit judgment result indicates that the actual solution time exceeds the preset maximum computation time limit, the target solution strategy is downgraded, and the multi-constraint combined optimization model is re-solved according to the downgraded solution strategy to obtain the task allocation result.

[0042] Optionally, in the above scheme, after obtaining the task allocation result, the method further includes:

[0043] The unique task allocation relationship, the processing capacity of the executing entity, and the consistency of permissions and organizational affiliation in the task allocation results are verified to obtain the feasibility verification results.

[0044] When the feasibility verification result indicates that the task allocation result is feasible, the objective function value corresponding to the task allocation result is determined, and the allocation quality index is determined according to the ratio between the objective function value and the theoretical upper limit of the corresponding objective function.

[0045] The allocation quality index is compared with a preset quality threshold to obtain the allocation quality verification result;

[0046] When the feasibility verification result indicates that the task allocation result is feasible and the allocation quality verification result indicates that the preset quality threshold is reached, the task allocation result is determined as a verified task allocation result.

[0047] When the feasibility verification result indicates that the task allocation result is infeasible or the allocation quality verification result indicates that the preset quality threshold has not been reached, the conflicting tasks and conflicting constraints that caused the verification to fail are determined, and a subset of tasks to be recalculated is obtained.

[0048] Based on the current target solution strategy and the preset number of recalculations, the solution strategy is downgraded or locally redistributed for the subset of tasks to be recalculated, so as to obtain the corrected task allocation result, while keeping the task allocation result corresponding to the tasks that do not involve conflicts unchanged.

[0049] Optionally, in the above scheme, the step of performing local incremental optimization on the affected task set and the affected candidate execution entities includes:

[0050] The system obtains the task arrival rate and current system processing capacity of the tasks to be assigned, determines the sliding window parameters based on the task arrival rate and current system processing capacity, and establishes a dynamic task window containing tasks to be assigned in the near future based on the sliding window parameters.

[0051] When a new task to be assigned is obtained, the new task to be assigned is added to the dynamic task window. The incremental optimization range is determined based on the matching score between the new task to be assigned and each candidate execution entity in the dynamic task window and the current window state of the dynamic task window. The affected task set and the corresponding affected candidate execution entities are obtained. When the dynamic task window has not reached the preset window capacity, the new task to be assigned is determined as the affected task set. When the dynamic task window has reached the preset window capacity, the new task to be assigned and a preset number of end tasks in the dynamic task window are determined as the affected task set.

[0052] When the status of an assigned task changes, the set of affected tasks and the set of affected candidate execution entities are updated according to the execution entity corresponding to the status change and the assigned tasks associated with the execution entity.

[0053] When multiple tasks in the affected task set compete for the same affected candidate execution entity, the task competition order is determined according to the task priority of each affected task, and the conflict arbitration result is obtained.

[0054] Local joint optimization is performed based on the affected task set, the affected candidate execution entities, the corresponding matching scores, and the conflict arbitration results, while keeping the task allocation results of unaffected tasks in the dynamic task window unchanged, to obtain the updated task allocation results.

[0055] Optionally, in the above scheme, after executing the task according to the task allocation result, the method further includes:

[0056] Obtain the actual completion time, execution quality, task return status, load changes during execution, and the predicted matching score corresponding to task allocation for completed tasks to obtain task execution feedback data.

[0057] The task execution feedback data is subjected to abnormal data filtering, normalization processing, and feedback window filtering to obtain valid feedback data.

[0058] The prediction error is determined based on the actual execution results and corresponding prediction results in the effective feedback data, and the parameter adjustment amount corresponding to each dynamic weight is determined based on the prediction error and the contribution of each matching feature to the prediction result.

[0059] Based on the adjustment amount of each parameter and the preset parameter boundary, each dynamic weight is updated in a bounded manner, and the updated dynamic weight is normalized to obtain candidate update decision parameters.

[0060] The historical task time distribution of the corresponding execution entity is updated based on the actual completion time in the effective feedback data, and the business capability tags of the corresponding execution entity are adjusted according to the execution quality and abnormal execution of consecutive tasks of the same type, so as to obtain the updated execution entity feature data.

[0061] A set of verification tasks is constructed based on historical task data, and the prediction results corresponding to the set of verification tasks are re-determined according to the candidate update decision parameters. The parameter update verification results are obtained based on the correlation between the prediction results and the actual execution results corresponding to the set of verification tasks.

[0062] When the parameter update verification result meets the preset validity condition, the candidate update decision parameter is determined as a valid decision parameter; when the parameter update verification result does not meet the preset validity condition, the decision parameter of the previous version is determined as the valid decision parameter.

[0063] The execution entities are scheduled for subsequent tasks to be assigned based on the effective decision parameters and the updated execution entity feature data.

[0064] Secondly, a dynamic scheduling system for process task execution entities, the system comprising:

[0065] The feature determination module is used to obtain the set of tasks to be assigned, the information of the execution entities within the organization, and the system operation status information. Based on the information of the execution entities within the organization, it determines the execution entity feature data corresponding to each execution entity, and determines the corresponding task feature data and task priority based on the task information of each task to be assigned.

[0066] The candidate determination module is used to perform hard constraint screening on the execution entities within the organization according to the task constraints corresponding to each of the tasks to be assigned, to obtain a set of valid candidate execution entities corresponding to each of the tasks to be assigned; to perform pre-matching between each valid candidate execution entity and the corresponding task to be assigned, to obtain a pre-matching result, and to dynamically prune the set of valid candidate execution entities according to the pre-matching result and the system running status information, to obtain a target candidate execution entity set.

[0067] The matching and scoring module is used to determine multiple matching features for each of the tasks to be assigned based on the corresponding task feature data and the execution subject feature data of each target candidate execution subject, determine the dynamic weight corresponding to each matching feature based on the task type of the task to be assigned and the system running status information, and determine the matching score between each target candidate execution subject and the task to be assigned based on each matching feature and the corresponding dynamic weight.

[0068] The optimization scheduling module is used to construct a multi-constraint combination optimization model between the set of tasks to be assigned and each target candidate execution entity based on the task priority, corresponding matching score, and remaining processing capacity of each target candidate execution entity. It also determines the target solution strategy based on the task size of the set of tasks to be assigned, the candidate size of the set of target candidate execution entities, constraint complexity, and system running status information, and solves the multi-constraint combination optimization model according to the target solution strategy to obtain the task allocation result.

[0069] The incremental optimization module is used to determine the set of affected tasks and the corresponding affected candidate execution entities based on the newly added tasks to be assigned or the status of the assigned tasks when a new task to be assigned is obtained or the status of the assigned tasks changes. While keeping the task assignment results of unaffected tasks unchanged, the module performs local incremental optimization on the set of affected tasks and the affected candidate execution entities to obtain the updated task assignment results.

[0070] Compared with the prior art, this application has at least the following beneficial effects:

[0071] This application, based on further analysis and research of existing technical problems, recognizes that existing technologies, in the process of allocating task execution subjects in complex organizational environments, suffer from issues such as dynamic changes in personnel status and task attributes, coupling of multiple organizational and business constraints, and difficulty in balancing overall processing efficiency, personnel load balancing, and business priorities in task allocation. By acquiring the set of tasks to be assigned, information on execution subjects within the organization, and system operating status information, the application performs feature processing on both the execution subjects and the tasks to be assigned, and determines the task priority of each task to be assigned. This allows subsequent scheduling to be processed simultaneously based on the actual status of the execution subject, the task's own attributes, and the current system operating status. Furthermore, it uses task constraints to perform hard constraint screening on the execution subjects within the organization, first excluding execution subjects that are not qualified to perform tasks, and then dynamically pruning the candidate space based on the pre-matching results between valid candidate execution subjects and corresponding tasks to be assigned, as well as system operating status information. This reduces the amount of candidate data entering the subsequent fine-grained matching and combinatorial optimization stages, lowering the search space and computational overhead in large-scale organizational environments. Based on this, by using task feature data and execution subject... Multiple matching features are determined from the body feature data, and the dynamic weights corresponding to each matching feature are jointly determined by the task type of the task to be assigned and the system operation status information. This allows the matching score to be dynamically adjusted according to different task attributes and system load status, avoiding the problem of difficulty in adapting to changes in personnel status and task attributes when using fixed rules or fixed weights. Furthermore, a multi-constraint combinatorial optimization model is constructed based on the task priority, matching score, and remaining processing capacity of each target candidate execution entity for each task to be assigned. An appropriate target solution strategy is determined based on the task size, candidate size, constraint complexity, and system operation status information. This allows the allocation relationship between multiple tasks to be assigned and multiple execution entities to be solved as a whole under the joint constraints of factors such as task priority, entity processing capacity, and matching degree, thereby reducing task allocation imbalance caused by local rule matching. At the same time, when a new task to be assigned arrives or the status of an assigned task changes, only local incremental optimization is performed on the affected task set and the corresponding affected candidate execution entities, while keeping the original allocation results of unaffected tasks unchanged. This avoids repeating the full combinatorial optimization due to changes in local tasks. Therefore, this application enables the scheduling of process task execution entities to adapt to the dynamic changes in personnel status and task attributes by dynamically compressing the candidate space, matching evaluation that changes with task type and system state, overall optimization of multiple constraints, and local incremental calculation within the affected range. It also balances task processing efficiency, execution entity load, and task priority under multiple organizational and business constraints, while reducing redundant calculation overhead and improving the real-time performance of online scheduling. This solves the problems of insufficient dynamic adaptability of existing task allocation methods in complex organizational environments, difficulty in coordinating multiple constraints, and difficulty in balancing overall processing efficiency, personnel load balancing, and business priority. Attached Figure Description

[0072] Figure 1 A flowchart illustrating a dynamic scheduling method for a task execution entity provided in one embodiment of this application;

[0073] Figure 2 A schematic diagram of the overall architecture of a dynamic scheduling system for process task execution entities provided in this application embodiment;

[0074] Figure 3 A schematic diagram of the decision-making process of a dynamic scheduling method for a process task execution subject provided in an embodiment of this application;

[0075] Figure 4 A schematic diagram of matching score calculation provided in an embodiment of this application;

[0076] Figure 5 This is a schematic diagram of a multi-task combination optimization and adaptive solution provided in an embodiment of this application. Detailed Implementation

[0077] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0078] In one embodiment, such as Figure 1 As shown, a dynamic scheduling method for process task execution entities is provided. The overall process takes the tasks to be assigned and the execution entity data within the organization as inputs. Execution entity feature modeling and task feature modeling form the data foundation for scheduling calculations. Then, candidate screening and candidate space pruning, matching scoring, multi-constraint combination optimization, and online incremental scheduling are performed sequentially. In some embodiments, after task execution, further task execution feedback data is collected to calibrate matching scoring parameters and execution entity feature data, enabling subsequent task scheduling to be continuously adjusted based on actual execution conditions.

[0079] like Figure 3 As shown, the complete decision-making process may include task information extraction, task priority determination, execution subject feature determination, hard constraint screening, dynamic candidate space pruning, matching feature calculation, matching scoring, adaptive solution strategy selection, task optimization allocation, online incremental adjustment, execution feedback collection, and parameter adaptive updating. By reducing the candidate space before complex combinatorial optimization calculations and limiting the recalculation range when tasks arrive consecutively or the task state changes, full combinatorial optimization can be avoided for every task change.

[0080] In one implementation, the system first acquires a set of tasks to be assigned, information on execution entities within the organization, and system operating status information. The set of tasks to be assigned can be one or more process tasks currently generated by the process engine that have not yet had a designated processing entity. The information on execution entities within the organization can be derived from the organization management system, the access control system, the process engine, and the historical task database. The system operating status information reflects the overall operation of the current process task scheduling system, including the overall system load rate and the task arrival density per unit time.

[0081] For each execution entity i within the organization, execution entity feature data is determined based on the acquired execution entity information within the organization. Execution entity feature data can be represented using a normalized execution entity feature vector, i.e.:

[0082] P_i = {p_i1, p_i2, ..., p_in}, where each feature component is normalized to the range [0,1]. The execution entity's feature data can include at least organizational structure attributes, permission information, real-time task load, historical processing performance, and business capability tags, and may also include on-duty status and available time window. Organizational structure attributes include the execution entity's department, position, and organizational level; permission information can be represented as the set of permissions possessed by the execution entity, Perm(i); historical processing performance includes on-time completion rate, execution quality score, and number of task returns; business capability tags can be represented as SkillTags(i), and corresponding proficiency levels are configured for each business capability tag.

[0083] Real-time task load balancing considers not only the number of tasks currently being processed but also the load prediction results. The load of execution entity i can be expressed as:

[0084] Load(i) = Current task load + Predicted task time, where the predicted task time is estimated based on the historical task time distribution of execution subject i. By introducing the predicted task time, the characteristic data of the execution subject can reflect the currently occupied processing capacity and the processing capacity that may continue to be occupied in the short term.

[0085] For the task j to be assigned, the task information is processed in a structured manner to determine the task feature data. The task feature data can be represented using task feature vectors:

[0086] T_j = {t_j1, t_j2, ..., t_jm}, where each feature component is normalized to the range [0,1], and can specifically represent the business type, amount, risk level, project, deadline, response time, and required capability labels. Furthermore, task priority is determined based on the task's business level, remaining processing time, and risk level, allowing task priority to dynamically change with current time and business risk, rather than using a fixed high, medium, and low priority.

[0087] Subsequently, for each task to be assigned, hard constraints are applied to the executing entities within the organization based on the task constraints corresponding to that task. Hard constraints determine whether an executing entity possesses the basic qualifications to perform the corresponding task, including permission requirements, the scope of the organization to which it can be assigned, and qualification requirements. Executing entities that do not meet any hard constraints are directly excluded from the candidate pool corresponding to that task, thus obtaining a set of valid candidate executing entities.

[0088] After obtaining the set of valid candidate execution entities, instead of directly performing a full match calculation on all execution entities in the set, a lightweight matching degree prediction is first performed based on the execution entity feature data of each valid candidate execution entity and the task feature data of the corresponding task to be assigned, resulting in a pre-matching result. The valid candidate execution entities are then sorted according to the pre-matching result, and the pruning range is dynamically determined based on the candidate size and system operating status information. The set of valid candidate execution entities is then dynamically pruned to obtain the target candidate execution entity set. This process ensures that subsequent complex scoring and combination optimization are performed only on execution entities with a high pre-matching degree.

[0089] For each execution entity and corresponding task to be assigned in the target candidate execution entity set, multiple matching features are determined, including capability matching, load balancing, response timeliness, historical performance, and risk adaptation. Dynamic weights corresponding to each matching feature are determined based on the task type and system operating status information of the task to be assigned. The matching score between the execution entity and the task to be assigned is then determined by these multiple matching features and their corresponding dynamic weights. For example... Figure 4 As shown, task feature data and execution subject feature data are used together as the calculation input for each matching feature. At the same time, task type and system running status information participate in the dynamic weight determination, thereby outputting the corresponding matching score.

[0090] When multiple tasks need to be assigned, a multi-constraint combinatorial optimization model is constructed between the set of tasks to be assigned and each target candidate execution entity, based on the task priority, corresponding matching score, and remaining processing capacity of each target candidate execution entity. For example... Figure 5 As shown, multiple tasks to be assigned and multiple candidate execution entities form various optional allocation relationships. Combinatorial optimization is used to determine the overall task allocation result from multiple feasible allocation relationships. Furthermore, the objective solution strategy is determined based on the task size, candidate size, constraint complexity, and current system operating state, thereby avoiding the use of the same computational complexity solution method for scheduling problems of different sizes.

[0091] Once task allocation results are available, if new tasks are added to be allocated, or if the execution entity corresponding to an already allocated task becomes unavailable, or if the task priority changes, the set of tasks directly affected by the change and the candidate execution entities affected are determined. While keeping the allocation relationships of other unaffected tasks unchanged, only local incremental optimization is performed on the affected scope, and the updated task allocation results are formed based on the results of the local incremental optimization.

[0092] Through the above processing, this application uniformly describes the dynamic resource status and task requirements in a complex organizational environment by using execution subject characteristic data and task characteristic data. It reduces the data scale entering the fine matching and combinatorial optimization stage by using hard constraint screening and dynamic pruning of the candidate space. Then, it uses matching scores that change with task type and system running status, as well as multi-constraint combinatorial optimization, to achieve coordinated allocation between multiple tasks and multiple execution subjects. When a new task is added or the task status changes, only the affected range is locally incrementally optimized, thereby reducing the amount of repeated calculation in the scenario of continuous task arrival, improving the real-time performance of process task scheduling in a complex organizational environment, and taking into account task processing efficiency, execution subject load, and task priority.

[0093] In one implementation, for each task to be assigned, its business level, deadline, and risk level are obtained to form basic task priority data. The business level can be pre-configured based on the business process, the risk level can be determined based on business type, transaction amount, or process risk classification, and the deadline represents the latest time by which the task is required to be completed.

[0094] The remaining processing time, `remaining_time(j)`, is determined based on the time difference between the deadline in the task priority base data and the current time. Then, the task urgency, `TimeUrgency(j)`, is determined based on the relationship between the remaining processing time and the preset maximum processing time, `max_time`. The task urgency is determined according to the following formula:

[0095] TimeUrgency(j)=max(0,1-remaining_time(j) / max_time);

[0096] Here, `remaining_time(j)` is obtained from the time difference between the task deadline and the current time, and `max_time` is the preset maximum processing time. As the remaining processing time gradually decreases, `TimeUrgency(j)` increases accordingly; when the remaining processing time exceeds the preset maximum processing time, the `max` function sets the task's time urgency to 0 to avoid negative values.

[0097] Further normalization is performed on the business level (business_level(j)) and risk level (risk(j)) respectively to obtain the corresponding business level feature values ​​and risk level feature values. Task priority is determined according to the following formula:

[0098] PriorityScore(j)=w_b·Norm(business_level(j))+w_t·TimeUrgency(j)+w_r·Norm(risk(j));

[0099] Where Norm(business_level(j)) is the normalized business level, Norm(risk(j)) is the normalized risk level, and w_b, w_t, and w_r are the adjustable priority weights corresponding to the business level, task time urgency, and risk level, respectively.

[0100] With the above-mentioned task priority determination method, task priority is no longer determined solely by the pre-configured business level, but simultaneously considers the business level, the remaining processing time that dynamically changes with the current time, and the task risk level. This allows tasks that are close to the deadline or have high business risks to obtain higher task priority, and enables task priority to be further used as the basis for multi-task combination optimization and task competition arbitration, thereby reducing the problem of untimely response to emergency tasks under the fixed priority mechanism.

[0101] In one implementation, for any task to be assigned, the permission requirements, the scope of the assignable organization, and the qualification requirements corresponding to the task are first obtained to obtain the hard constraints of the task.

[0102] Permission requirements are used to limit the types of permissions that can handle corresponding tasks. Let the set of permissions possessed by the executing entity i be Perm(i), and the set of permissions required by the task j to be assigned be TaskReqPerm(j). The permission constraints are as follows:

[0103] Perm(i) TaskReqPerm(j); The execution subject will only be filtered by permission constraints if the set of permissions it has can cover the set of permissions required by the task to be assigned.

[0104] The allocatable organization scope is used to restrict which organization nodes a task can be assigned to. Let the organization to which the executing entity i belongs be Org(i), and the allocatable organization scope of the task j to be assigned be TaskOrgScope(j). The executing entity is filtered by the organization affiliation constraint only if Org(i) falls into TaskOrgScope(j).

[0105] Qualification requirements are used to limit the approval or business qualifications required to process a specific task. Let the qualification information of the executing entity i be Qual(i), and the qualification requirement of the task j to be assigned be TaskQualReq(j). The executing entity is selected through qualification constraints only if Qual(i) satisfies TaskQualReq(j).

[0106] Through the above hard constraint processing, executors that do not meet any of the mandatory conditions are filtered out, forming a set C of valid candidate executors. Factors such as current task load, historical processing experience, response efficiency, and risk adaptability, which do not determine executor eligibility but affect execution results, are not used for hard filtering but participate as soft constraints in subsequent matching scoring and combination optimization.

[0107] After obtaining the set of valid candidate execution entities C, based on the execution entity feature data of each execution entity in the set and the task feature data of the task to be assigned, a lightweight matching function or a prediction model trained based on historical data is used to estimate the degree of matching between each valid candidate execution entity and the task to be assigned, and a pre-matching result is obtained.

[0108] Subsequently, the valid candidate execution entities are sorted according to the pre-matching results, and dynamic pruning parameters are determined based on the candidate size of the valid candidate execution entity set and the system running status information. Dynamic pruning can be performed using a dynamic threshold method or a Top-N method. When using the Top-N method, N is not a fixed value, but is adjusted according to the current candidate size or the real-time system load; when the candidate size is large or the system load is high, the number of candidates entering subsequent fine-grained calculations can be reduced by adjusting N; if computing resources allow, more highly matched candidate entities can be retained.

[0109] The effective candidate execution entity set C is pruned based on the candidate ranking results and dynamic pruning parameters to obtain the target candidate execution entity set C*. Subsequent matching feature calculations and combination optimizations are all based on the target candidate execution entity set C*.

[0110] Through the above processing, this application first removes infeasible execution entities by hard constraints such as permissions, organizational affiliation, and qualifications, and then further reduces the search space through lightweight pre-matching and dynamic candidate pruning. This allows complex matching scoring and combinatorial optimization to avoid traversing all organizational members. Even when the organizational size, task volume, or system load increases, the scale of data participating in subsequent calculations can still be controlled, thereby reducing the computational overhead of combinatorial optimization and improving the real-time performance of process task scheduling.

[0111] In one implementation, multiple matching features between the target candidate execution entity and the task to be assigned are given dynamic weights that vary with the task type and system operating status, instead of using the same scoring weights for different scenarios.

[0112] First, the baseline weights for each matching feature are determined based on the task type, risk level, and capability requirements of the tasks to be assigned, forming the task type weight factor α_k(j). For example, for tasks with higher risk levels, the α_5 corresponding to the risk matching feature can be increased, giving the risk matching factor a greater influence in the scoring process for this type of task.

[0113] Further, the overall system load ratio (LoadRatio) and task arrival density (TaskDensity) are obtained from the system operation status information to form system status characteristics. The system operation status can be recorded as follows:

[0114] S=(LoadRatio,TaskDensity);

[0115] The system state weight factor β_k(S) corresponding to each matching feature is determined based on the system state characteristics. For example, when the overall system load rate is high, the system state weight factor β_2 corresponding to the load balancing feature is increased. One implementation of this is as follows:

[0116] β_2 = 1 + λ·LoadRatio; where λ is used to adjust the degree of influence of the overall load rate on the load balancing feature weights. When the task arrival density is high, increase β_3 corresponding to the response time feature, so that the system pays more attention to the response efficiency of the target candidate execution subject when tasks arrive in a concentrated manner.

[0117] For the k-th matching feature, a weight combination value is formed based on the corresponding task type weight factor α_k(j) and system state weight factor β_k(S), and then normalization is performed. The dynamic weight w_k(j,S) is determined according to the following formula:

[0118] w_k(j,S)=α_k(j)·β_k(S) / Σ_(l=1)^K α_l(j)·β_l(S);

[0119] After normalization, the dynamic weights corresponding to each matching feature form a unified weight set for matching scoring.

[0120] Through the above processing, the same executing entity can adopt different scoring emphases for different task types, and the influence of each matching feature can also be adjusted for the same type of task under different system operating states. This achieves dynamic weighting driven by the dual dimensions of "task type + system operating state", avoiding the problem that fixed weights cannot adapt to the actual scheduling state in high-risk, high-load or concentrated task arrival scenarios.

[0121] like Figure 4As shown, in one implementation, capability matching features, load balancing features, response timeliness features, historical performance features, and risk adaptation features are determined based on the execution entity feature data of the target candidate execution entity and the task feature data of the task to be assigned, and the final matching score is determined by combining the corresponding dynamic weights.

[0122] The capability matching feature is determined based on the matching between the business capability tag SkillTags(i) of the target candidate execution entity and the capability tag skill_req(j) required by the task to be assigned. One way to calculate the capability matching feature f1 is as follows:

[0123] f1=|SkillTags(i)∩skill_req(j)| / |skill_req(j)|;

[0124] The degree of capability matching can also be determined based on the cosine similarity between the executor's skill vector and the task capability requirement vector. In addition to indicating the presence or absence of a tag, business capability labels can also be configured with corresponding proficiency levels, allowing the executor's experience in handling specific types of tasks to participate in the capability matching judgment.

[0125] For load balancing characteristics, Load(i) is first determined based on the current task volume of the executing entity and the predicted task time obtained from historical task time predictions. Then, the load availability is determined by combining the upper limit of the executing entity's processing capacity, LoadMax(i). The load balancing characteristic f2 is determined according to the following formula:

[0126] f2 = 1 - Load(i) / LoadMax(i); where Load(i) is closer to LoadMax(i) and the corresponding load balancing characteristic value is lower, which suppresses the execution entity with higher current load in the matching score.

[0127] The response timeliness characteristic is determined based on the historical average response time and on-time completion rate of the executing entity. One method for calculating the response timeliness characteristic f3 is as follows:

[0128] f3=μ_r·OnTimeRate(i)+(1-μ_r)·max(0, 1-T_resp(i) / T_ref)

[0129] Where OnTimeRate(i) is the historical on-time rate of the executing entity, T_resp(i) is the historical average response time, T_ref is the response time reference benchmark, and μ_r∈[0,1] is the harmonic coefficient.

[0130] For historical performance characteristics, a weighted normalization is performed based on the historical task completion rate, execution quality score, and number of task returns of the implementing entity. One way to calculate historical performance characteristic f4 is as follows:

[0131] f4=ν_1·CompletionRate(i)+ν_2·QualityScore(i)+ν_3·(1-Norm(RevertCount(i)));

[0132] Where: ν_1+ν_2+ν_3=1, CompletionRate(i) represents the task completion rate, QualityScore(i) represents the execution quality score, RevertCount(i) represents the number of task reversals, and Norm(·) represents the normalization operator.

[0133] The risk suitability characteristic is determined based on the degree of matching between the risk level corresponding to the risk tolerance or qualifications of the implementing entity and the risk level of the task to be assigned. One way to calculate the risk suitability characteristic f5 is as follows:

[0134] f5 = 1 - |RiskLevel(i) - risk(j)|; where RiskLevel(i) is the risk level corresponding to the qualification of the executing entity and normalized to [0,1], and risk(j) is the risk level of the task to be assigned. The closer the two risk levels are, the higher the risk fit feature value.

[0135] All the above matching features are normalized to the range [0,1] and weighted according to the dynamic weights. The matching score between the target candidate execution entity i and the task to be assigned j is:

[0136] Score(i,j)=Σ_(k=1)^K[w_k(j,S)×f_k(P_i,T_j)]; where f_k(P_i,T_j) represents the k-th matching feature, and w_k(j,S) is the dynamic weight corresponding to the k-th matching feature.

[0137] Through the above processing, this application decomposes the degree of fit between the executing entity and the task into multiple quantifiable matching features such as capability, load, response, historical performance and risk. Then, it integrates them in a unified manner according to the dynamic weights corresponding to the task type and system operation status, so that the matching score can not only reflect the business capability of the target candidate executing entity itself, but also reflect its current load, historical processing performance and the degree of fit with the specific task risk, thereby providing a unified and comparable quantitative basis for subsequent multi-task combination optimization.

[0138] like Figure 5As shown, in one implementation, the task allocation process between the target candidate execution entity set C and the task set J is formalized as a multi-constraint combinatorial optimization model. The model inputs include the target candidate execution entity set C, the execution entity feature data P_i and matching score Score(i,j) corresponding to each execution entity, the task set J, the task feature data T_j and task priority Score(j) corresponding to each task, the system running state S, and the remaining processing capacity Cap(i) of each target candidate execution entity.

[0139] The allocation relationship between tasks and implementing entities is represented using a decision variable matrix:

[0140] X = {x_ij}; where x_ij ∈ {0, 1}, and x_ij is used to indicate whether the execution subject i is assigned to execute task j.

[0141] The multi-constraint combinatorial optimization model aims to maximize the weighted sum of the overall matching scores. The objective function is:

[0142] Max Z=Σ_(i∈C*)Σ_(j∈J)[x_ij·Score(i,j)·λ_p(j)];

[0143] Wherein, λ_p(j) is the task priority weight coefficient determined according to PriorityScore(j). The higher the task priority, the larger λ_p(j) is, so that the high-priority task gets a higher weight in the overall combinatorial optimization.

[0144] For unique task allocation, each task to be allocated must be undertaken by only one executing entity, with the corresponding constraint being:

[0145] Σ_(i∈C*)x_ij=1, ∀j∈J;

[0146] Regarding the processing capacity of the execution entity, the cumulative task load allocated to any execution entity must not exceed the corresponding remaining processing capacity. The corresponding constraint is:

[0147] Σ_(j∈J)x_ij≤Cap(i), ∀i∈C*;

[0148] Cap(i) is measured in terms of task equivalents and is determined jointly based on the current real-time load of the executing entity and the load prediction results. For the predicted task time, it can be converted into task equivalents based on the historical average task time of the corresponding executing entity, so that the load and processing capacity have a consistent measurement basis.

[0149] Task priority also participates in scheduling as a soft constraint for ordering. When multiple tasks to be assigned compete for the same highly matched target candidate execution subject, the processing order is determined according to the descending order of PriorityScore(j).

[0150] For the case where there is only a single task to be assigned, i.e., |J|=1;

[0151] Multi-task combination optimization can degenerate into directly selecting the execution subject with the highest matching score, as follows:

[0152] i*=argmax_(i∈C*) Score(i,j);

[0153] This avoids initiating the complete combinatorial optimization solution process in a single-task scenario.

[0154] For multiple tasks to be assigned, the search space scale index is determined based on the number of tasks and the number of target candidate execution entities: M_scale=|J|×|C*|;

[0155] Simultaneously, the constraint complexity κ is determined based on the total number of valid constraints involved in the current task set. Valid constraints may include the number of permission constraint variants, the number of organizational affiliations, and the number of qualification level hierarchies. The system running state is still represented as:

[0156] S=(LoadRatio,TaskDensity);

[0157] The objective solution strategy is adaptively selected based on M_scale, κ, and the system operating state.

[0158] When: M_scale≤ And: κ≤ In such cases, an exact solution path can be employed, such as the bipartite graph maximum weight matching algorithm, the Hungarian algorithm, or the Kuhn-Munkres algorithm, to accurately solve multi-constraint combinatorial optimization models. To preset a small-scale threshold, for example, it can be set to 50-200.

[0159] When the above exact solution conditions are not met, but the following conditions are met:

[0160] M_scale≤ And: κ≤ When the task allocation problem is transformed into a 0-1 integer linear programming problem, it can be solved using an integer linear programming solver, such as by using the branch and bound method or the cutting plane method to find the optimal or near-optimal solution. This is a preset medium-scale threshold, for example, it can be set to 200 to 1000.

[0161] When: M_scale> ; or: κ> Alternatively, if the overall system load satisfies LoadRatio > θ_load, a heuristic global search method such as genetic algorithm, simulated annealing algorithm, or particle swarm optimization algorithm can be used. Here, θ_load is a preset load warning threshold, for example, 0.8. The number of iterations and population size of the heuristic global search can be dynamically adjusted according to M_scale, and a preset maximum computation time limit T_max can be set.

[0162] The multi-constraint combinatorial optimization model is solved according to the selected objective solution strategy to obtain the initial task allocation result, and the actual solution time is recorded. When the actual solution time does not exceed T_max, the initial task allocation result is used as the task allocation result. When the actual solution time exceeds T_max, a solution strategy degradation is triggered. The exact solution path can be downgraded to the integer linear programming solution path, and the integer linear programming solution path can be downgraded to the heuristic global search path; if the heuristic global search path still exceeds the preset maximum computation time limit, a greedy fast allocation is used as a final fallback.

[0163] Through the above processing, this application adaptively determines the solution strategy based on the search space size, constraint complexity, and system load of the actual optimization problem. This enables small-scale problems to obtain better overall allocation results through exact solutions, while medium- and large-scale problems adopt solution methods adapted to their computational complexity. The solution time is controlled by the maximum computation time limit and the solution strategy degradation, thereby avoiding excessive computational overhead from fixed solution algorithms in large-scale or high-load scenarios. At the same time, it can take into account the overall matching quality of multi-tasks and the real-time performance of online scheduling.

[0164] In one implementation, after obtaining the task allocation results, a feasibility check and an allocation quality check are further performed on the task allocation results.

[0165] First, a feasibility check is performed. For each task to be assigned, it is verified that there is one and only one executing entity, completing the task uniqueness assignment check; for each executing entity, it is verified that the cumulative task load formed by the assigned tasks does not exceed the corresponding processing capacity, completing the capacity check; at the same time, the corresponding permission information and organizational affiliation information of the executing entity are re-verified to meet the task constraints, completing the constraint consistency check. When any hard constraint is not met, the corresponding task assignment result is marked as infeasible.

[0166] When the task allocation result satisfies the above feasibility conditions, calculate the objective function value Z* corresponding to the task allocation result, and determine the theoretical upper bound Z_UB of the corresponding objective function. For the maximization problem, Z_UB can be obtained by relaxing linear programming, or it can be combined with the lower bound obtained by a greedy algorithm to form an estimation interval.

[0167] Based on Z* and Z_UB, determine the allocation quality index η: η = Z* / Z_UB; and satisfy: η ≤ 1;

[0168] The closer η is to 1, the closer the current task allocation result is to the theoretical upper limit. When η < 1 - ε, the quality of the current task allocation result is determined to be significantly lower than expected. Here, ε is a preset tolerance, for example, it can be 0.05.

[0169] When a task allocation result simultaneously meets the feasibility conditions and reaches the preset quality threshold, the result is considered a valid task allocation result. When a task allocation result is not feasible, or the allocation quality indicators do not meet the preset requirements, the conflicting tasks and conflicting constraints that caused the verification to fail are identified, forming a subset of tasks to be recalculated.

[0170] When the current solution path is an exact solution path or an integer linear programming solution path, it can automatically downgrade to the next level of solution strategy for recalculation. The maximum number of recalculations is R_max, for example, R_max can be 2 to 3 times. When a heuristic global search method has been used or the preset number of recalculations has been reached, after excluding conflicting constraints that would make it infeasible, only a local reallocation is performed on the subset of tasks to be recalculated, while the original task allocation results remain unchanged for the remaining tasks that are not involved in conflicts.

[0171] If a feasible task allocation result cannot be obtained after the above-mentioned degradation solution or local reallocation, an alarm message is output, the corresponding task is transferred to the manual allocation queue, and a failure log is recorded for subsequent analysis of the cause of failure and related constraints.

[0172] Through the above processing, this application does not directly use the first output of the combinatorial optimization algorithm as the final scheduling result, but further verifies it from the two levels of hard constraint feasibility and objective function quality. When the result is abnormal, it uses a solution strategy to downgrade or a conflict task local recalculation method to correct it. This reduces the probability that infeasible or low-quality allocations will directly enter the process execution stage, and improves the reliability and robustness of task scheduling results while maintaining the stability of the allocation relationship of non-conflicting tasks.

[0173] In one implementation, for online operation scenarios where process tasks continuously arrive, an incremental scheduling method combining sliding window and local re-optimization is adopted.

[0174] A dynamic task window W driven by system maintenance time or task quantity, containing task batches B_W of tasks to be assigned in the near future, satisfying: B_W J, the window size |W| of the dynamic task window is dynamically adjusted based on the task arrival rate λ_arrival and the current system processing capacity. When the task arrival rate is high, the window can be reduced to decrease the amount of data in a single joint calculation and ensure task response time; when the task arrival rate is low, the window can be expanded to allow more tasks to participate in the combined optimization and improve the joint allocation effect.

[0175] When a new task j_new arrives, it is added to the end of the current dynamic task window, and its matching score with the candidate execution entities in the dynamic task window is determined. If the dynamic task window has not yet reached its preset window capacity, the new task to be assigned is treated as the current set of affected tasks. Only the new task to be assigned is matched and assigned with the candidate execution entities in the window, and the new task is inserted into the appropriate assignment position.

[0176] When the dynamic task window reaches its preset window capacity, the newly added tasks to be assigned and a preset number of end tasks within the dynamic task window are identified as the affected task set. The preset number can be denoted as δ, and δ must be much smaller than |W|. For example, δ can be 3 to 5. Thus, only a small range of tasks at the end of the window are locally re-optimized, without recalculating all tasks within the window.

[0177] When the status of an assigned task changes, such as when the corresponding execution entity changes from an available state to an unavailable state, or when the task priority changes after being manually adjusted, the set of affected tasks and the affected candidate execution entities are determined based on the execution entity whose status has changed and the assigned tasks associated with that execution entity, and local reallocation is performed only for this range.

[0178] When a newly added task competes with an already assigned task for the same highly matched affected candidate execution entity, conflict arbitration is performed based on the task priority of each affected task, and the competition order is determined in descending order of PriorityScore. Tasks with higher task priority retain their corresponding execution entities, while tasks with lower task priority release their execution entities and enter the next round of dynamic task window for re-matching.

[0179] To avoid frequent recalculations caused by new tasks and continuous changes in task status, a minimum incremental adjustment interval Δt_min can be set, for example, from 30 seconds to 2 minutes. Task changes occurring between two incremental adjustments can be accumulated and then performed in batches at the next adjustment time, thereby reducing the jitter in task allocation results caused by frequent re-optimization.

[0180] Through the above processing, this application uses a dynamic task window to limit the scope of recent tasks in online scheduling, and further limits the local recalculation objects according to the task arrival status and task change range. This ensures that new tasks and local state changes do not require triggering a full recalculation between all unassigned tasks and all candidate execution entities. At the same time, the timeliness and stability of task allocation are maintained through task priority conflict arbitration and minimum adjustment interval, thereby reducing the repetitive calculation overhead in continuous task scenarios and improving online scheduling efficiency.

[0181] In one implementation, after the task is completed according to the task allocation results, multi-dimensional task execution feedback data related to the actual task execution is collected.

[0182] Task execution feedback data can include timeliness, quality, load, and prediction comparison dimensions. The timeliness dimension includes the actual completion time Duration_actual(j) and the deviation of the actual completion time from the deadline Slack(j), where Slack(j) is positive for early completion and negative for late completion. The quality dimension includes the execution quality score Q_actual(j), the number of task rollbacks Revert_count(j), and the rework rate Rework_rate(j). The load dimension includes the actual load change trajectory of the corresponding execution entity during task execution Load_trajectory(i,j). The prediction comparison dimension includes the prediction matching score Score_pred(i*,j) and the predicted completion time Duration_pred(j) corresponding to task allocation.

[0183] Preprocess the task execution feedback data. Samples with a duration exceeding the 99th quantile of the historical task duration distribution are marked as outliers. These outliers are not included in subsequent parameter updates but can be retained separately for anomaly analysis. For other feedback data, Min-Max normalization or Z-Score standardization can be used based on their data distribution to map data from different dimensions to a uniform scale.

[0184] Simultaneously, a feedback window approach is used to filter recent feedback data, retaining only the feedback data corresponding to the most recent N tasks for parameter updates, where N is the size of the feedback window, for example, it can be 50 to 200. Historical data exceeding the feedback window gradually decays and exits the current update process, making parameter updates more reflective of the recent task execution status.

[0185] For each completed task j, calculate the prediction error based on the actual execution result and the prediction result:

[0186] Error(j) = Q_actual(j) - Q_pred(j); where Q_pred(j) can be obtained by mapping the matching score Score(i*,j) corresponding to the task assignment, for example: Q_pred = α·Score + β; further, the parameter adjustment direction corresponding to each dynamic weight is estimated based on the prediction error and the contribution of each matching feature to the prediction result. The contribution of each weight term to the error can be approximately determined by the following formula:

[0187] Error / w_k≈(Q_actual-Q_pred)·f_k(P_i*,T_j) / Σ_l w_l·f_l;

[0188] This allows us to determine which matching feature dimensions are the main sources of prediction bias.

[0189] After determining the direction of parameter adjustment, the dynamic weights are adjusted using an update method with boundary constraints:

[0190] w_k^(t+1)=Clip(w_k^(t)+γ_t·Error(j)·sign(∂Error / ∂w_k),w_min,w_max)

[0191] Clip(·, w_min, w_max) is the clipping function, which keeps the updated dynamic weights within the preset parameter boundaries [w_min, w_max]. For example, w_min can be 0.01 and w_max can be 0.5, thereby avoiding extreme weight drift caused by a single abnormal feedback; γ_t is the learning step size used in the t-th parameter update.

[0192] The learning step size can be dynamically determined using a decay method: γ_t = γ_0 / (1 + t / τ), where γ_0 is the initial learning step size, for example, it can be taken as 0.01 to 0.05, and τ is the decay half-life parameter. As the number of parameter updates increases, the learning step size gradually decreases, so that in the early stage, it can converge to a reasonable parameter range with a larger adjustment range, and in the later stage, a smaller step size is used for fine adjustment.

[0193] The updated dynamic weights are further normalized to satisfy Σw_k=1, thereby maintaining the consistency of the matching scoring scale. When the number of effective feedback samples is less than the preset minimum value M_min, the dynamic weights are not updated, and the initial preset weights are continued to be used. M_min can be, for example, 10 to 20, to reduce parameter distortion caused by statistical fluctuations in small samples.

[0194] In addition to dynamic weights, the feature data of the executing entity is continuously updated based on effective feedback data. For the business capability tag SkillTags(i), when the executing entity i continuously completes N_up tasks of the same type and the average execution quality score is higher than Q_high, the proficiency of the corresponding skill tag is increased. For example, N_up can be 5, Q_high can be 0.9, the proficiency adjustment amount Δ_s_up can be +0.05 to +0.1, and the upper limit of proficiency is set to 1.0.

[0195] When an executor experiences N_down consecutive task rejections or timeouts, the proficiency level of the corresponding business capability tag is reduced. For example, N_down can be 3, and the proficiency adjustment amount Δ_s_down can be -0.05 to -0.1, with the lower limit of proficiency set to 0.1. To avoid frequent changes in business capability tags due to short-term fluctuations, the adjustment range for a single instance is constrained by upper and lower limits, and there must be at least L_adj task samples between consecutive adjustments.

[0196] For the historical task time distribution of the executing entity, maintain the historical time mean μ_i and standard deviation σ_i corresponding to executing entity i. After each task is completed by the executing entity, update the data smoothly using an exponentially weighted moving average:

[0197] μ_i^(new)=α_EWMA·Duration_actual+(1-α_EWMA)·μ_i^(old);

[0198] σ_i^(new)=α_EWMA·|Duration_actual-μ_i^(new)|+(1-α_EWMA)·σ_i^(old)

[0199] Here, α_EWMA is a smoothing factor, which can be set to, for example, 0.1 to 0.3, to ensure that the recent task execution time has a significant impact on the historical task execution time distribution. Based on the updated μ_i and σ_i, the LoadMax(i) of the corresponding execution subject and the predicted task execution time are recalibrated.

[0200] When a Duration_actual deviates from μ_i by more than k·σ, the corresponding sample is treated as an outlier and is not used for the exponentially weighted moving average update, but is recorded as a special task event. Here, k can be, for example, 3 to 4.

[0201] In some implementations, after accumulating U feedback samples, the mapping coefficients used within the matching feature f_k can be recalibrated to give the matching score distribution a better correspondence with the actual execution quality distribution.

[0202] After obtaining the candidate update decision parameters and the updated executor feature data, the effect of the parameter update is further validated. A validation task set V can be formed by randomly selecting 10%–20% of historical task data. The candidate update decision parameters are then used to recalculate the predicted scores for the validation tasks, and the updated scores are compared with the corresponding actual execution quality using correlation analysis. The validation metrics are:

[0203] Corr = PearsonCorrelation(Score_updated, Q_actual); The higher the Corr, the greater the correlation between the predicted score obtained from the candidate updated decision parameters and the actual performance quality.

[0204] When Corr ≥ Corr_threshold and ΔCorr = Corr - Corr_old > 0, the parameter update is considered valid, and the candidate update decision parameter is taken as the valid decision parameter. Corr_threshold can be, for example, 0.7.

[0205] The parameter update can be determined to have failed to meet the preset validity condition if any of the following conditions are met:

[0206] Corr <Corr_threshold;

[0207] ΔCorr <- δ_corr;

[0208] Alternatively, any dynamic weight w_k may touch w_min or w_max consecutively B_max times.

[0209] Where δ_corr is the negative tolerance threshold, for example, it can be 0.05, and B_max can be 3, for example.

[0210] The system maintains a parameter version chain. Before each parameter update, the previous version's parameter state is saved as a parameter snapshot V_(t-1), and the parameter version number Ver_t is maintained. When the parameter update verification passes, the candidate update decision parameter is adopted and the parameter version number is incremented; when the verification fails, the previous version decision parameter is restored and the reason for the rollback is recorded.

[0211] The finalized effective decision parameters and updated execution subject feature data are used to schedule subsequent tasks to be assigned, thus forming a closed-loop processing process of "task allocation - task execution - feedback collection - parameter update - effect verification - adopting new parameters or restoring the previous version of parameters - subsequent task allocation".

[0212] Through the above processing, this application continuously calibrates the matching scoring parameters and execution subject feature data by utilizing the actual completion time, execution quality, task rollback, load trajectory, and the deviation between the predicted results and the actual results. Furthermore, by limiting error updates through parameter boundaries, cold start protection, abnormal sample isolation, verification task replay, and parameter version rollback, the scheduling model can be continuously adjusted according to the actual task execution results. At the same time, it reduces the risk of continuous shift of model parameters and degradation of scheduling performance caused by abnormal feedback or short-term data fluctuations.

[0213] like Figure 2 As shown, in one embodiment, the dynamic scheduling system for the execution of process tasks includes a feature determination module, a candidate determination module, a matching and scoring module, an optimization scheduling module, and an incremental optimization module. Each module can be implemented by different program functional units in the same computer device, or can be deployed on multiple server nodes capable of data communication.

[0214] The feature determination module is used to acquire the set of tasks to be assigned, information on the executing entities within the organization, and system operating status information. Based on the information on the executing entities within the organization, it determines the characteristic data corresponding to each executing entity. Based on the task information of each task to be assigned, it determines the corresponding task characteristic data and task priority. The feature determination module can establish data connections with the enterprise organizational management system, permission system, process engine, and historical task database to obtain basic data such as departments, positions, permissions, real-time load, historical performance, business capability tags, task types, risk levels, and deadlines.

[0215] The candidate determination module receives the data generated by the feature determination module, performs hard constraint screening based on permission requirements, allocable organizational scope, and qualification requirements, and forms a set of valid candidate execution entities. Then, it obtains the pre-matching results corresponding to each valid candidate execution entity through lightweight matching degree estimation, and dynamically prunes the set of valid candidate execution entities based on the pre-matching results and system operation status information, and outputs the target candidate execution entity set.

[0216] The matching and scoring module is used to determine matching features such as capability matching, load balancing, response timeliness, historical performance, and risk adaptation based on the execution feature data of the target candidate execution entity and the task feature data of the task to be assigned. It also dynamically adjusts the weight of the corresponding matching features according to the task type and system operation status information of the task to be assigned, thereby outputting the matching score between each target candidate execution entity and each task to be assigned. Figure 4 The data processing relationships between task feature data, execution subject feature data, multiple matching features, dynamic weights, and matching scores in the matching scoring module are shown.

[0217] The optimization scheduling module is used to construct a multi-constraint combinatorial optimization model based on the task priority of each task to be assigned, the corresponding matching score, and the remaining processing capacity of each target candidate execution entity. It then determines the target solution strategy based on the task size, candidate size, constraint complexity, and system running status information, and solves the multi-constraint combinatorial optimization model according to the target solution strategy and outputs the task allocation results. Figure 5 The diagram illustrates the optional allocation relationships between multiple tasks to be assigned and multiple target candidate execution entities, as well as the processing relationships for selecting the corresponding solution path based on the solution conditions.

[0218] The incremental optimization module continuously acquires task status information. When a new task to be assigned is detected, or when the execution entity corresponding to an assigned task becomes unavailable, or when the task priority changes, the module determines the set of affected tasks and the corresponding candidate execution entities. It then calls the matching and scoring module and the optimization scheduling module to perform local incremental optimization on the affected scope, generating an updated task allocation result while keeping the allocation results of unaffected tasks unchanged.

[0219] The processing results are passed between modules in the following order: feature data, candidate data, matching score, task allocation result, and task change information. Figure 2 The overall architecture shown can also be configured with execution feedback and parameter adaptive update functions, which are used to feed back the actual execution results to the subsequent scoring and feature determination process after the task is completed. The specific implementation of this feedback processing can adopt the feedback method of the above embodiment.

[0220] Through the above system structure, this application divides the execution subject and task feature processing, candidate space reduction, dynamic matching scoring, multi-constraint combination optimization, and local incremental calculation into interconnected functional modules, enabling a large number of organizational resources and continuously generated process tasks to be automatically scheduled according to a unified data processing chain. By reducing the computational overhead caused by full matching and combination optimization through candidate space compression and local recalculation of the affected range, the efficiency of task scheduling and processing of the process engine in complex organizational environments and continuous task scenarios is improved.

[0221] Taking the enterprise contract approval process as an example, task j to be assigned is a contract approval task. The business type of this task, biz_type, is contract approval, which can be coded as 0.8; the business level and risk level are both high, and in a normalization method, high, medium, and low can correspond to 1.0, 0.6, and 0.3 respectively; the project it belongs to is an overseas project X, which can be formed by one-hot encoding or other encoding methods; the task deadline is 3 working days, and the remaining processing time is determined by the difference between the deadline and the current time and mapped to the task's time urgency; the required capability tag skill_req includes risk control, overseas, and large amount.

[0222] For a candidate execution entity, whose organizational and job information is head of the overseas business unit, and whose permission set (Perm) includes approval and risk control permissions, and is compared with the permissions required for the task; the current task volume is 2, and the predicted load corresponds to a task equivalent of 1, then:

[0223] Load(i) = current 2 + predicted 1 = 3; if the corresponding LoadMax(i) = 5, then the load balancing characteristic is: f2 = 1 - 3 / 5 = 0.4;

[0224] The entity's historical task completion rate is 0.95, its historical quality score is 0.9, its business capability tags include overseas, large-amount, and risk control, and its on-duty status is on-duty with an available time window of 24 hours.

[0225] Let's further assume that after a certain contract approval task undergoes hard constraint screening, the set of valid candidate execution entities is: {P1, P2, P3, P4, P5}.

[0226] The system uses Top-3 candidate pruning based on the lightweight pre-matching results to obtain the target candidate execution subject set: C*={P1, P2, P3};

[0227] For this high-risk contract task, the task type weighting factor can be: α=(0.2, 0.15, 0.15, 0.2, 0.3);

[0228] The system state weight factor corresponding to the current system operating state can be: β=(1, 1.2, 1, 1, 1);

[0229] According to the dynamic weight calculation method: w_k = α_k·β_k / Σ_l α_l·β_l;

[0230] After normalization, we get: w≈(0.194, 0.175, 0.146, 0.194, 0.291);

[0231] The priority of this contract approval task is determined based on the business level, remaining processing time, and risk level, and is at a relatively high level.

[0232] For the target candidate execution entities P1, P2, and P3, their matching features and matching scores are as follows:

[0233] P1: f1=1.00, f2=0.40, f3=0.90, f4=0.92, f5=0.80, Score≈0.81;

[0234] P2: f1=0.80, f2=0.60, f3=0.85, f4=0.88, f5=0.70, Score≈0.76;

[0235] P3: f1=0.90, f2=0.50, f3=0.95, f4=0.90, f5=0.75, Score≈0.79.

[0236] In this example, with only one task to be assigned, combinatorial optimization degenerates into a single-task selection process, choosing P1 with the highest matching score as the executor of the contract approval task. By reducing the five executors in the original set of valid candidate executors to three target candidate executors, the computational cost of subsequent fine-tuning matching is reduced by approximately 40% in this example.

[0237] In a pilot scenario for contract approval within a specific large enterprise, compared to the original rule-based allocation method, contract approval efficiency, calculated based on average approval time, improved by approximately 30%. Personnel task distribution became more balanced, and response times for high-priority tasks were correspondingly shortened. These pilot results illustrate the operational situation in a specific application environment and do not necessarily represent the same numerical effect under different organizational structures, task scales, and system operating conditions.

[0238] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

Claims

1. A method for dynamic scheduling of process task execution entities, characterized in that, The method includes: Obtain the set of tasks to be assigned, information on execution entities within the organization, and system operation status information; determine the execution entity characteristic data corresponding to each execution entity based on the information on execution entities within the organization; and determine the corresponding task characteristic data and task priority based on the task information of each task to be assigned. Based on the task constraints corresponding to each of the tasks to be assigned, the execution entities within the organization are subjected to hard constraint screening to obtain a set of valid candidate execution entities corresponding to each of the tasks to be assigned; each valid candidate execution entity is pre-matched with the corresponding task to be assigned to obtain a pre-matching result; and the set of valid candidate execution entities is dynamically pruned based on the pre-matching result and the system running status information to obtain a target candidate execution entity set. For each of the tasks to be assigned, multiple matching features are determined based on the corresponding task feature data and the execution entity feature data of each target candidate execution entity. The dynamic weights corresponding to each matching feature are determined based on the task type of the task to be assigned and the system running status information. The matching score between each target candidate execution entity and the task to be assigned is determined based on each matching feature and the corresponding dynamic weight. Based on the task priority, corresponding matching score, and remaining processing capacity of each target candidate execution entity, a multi-constraint combination optimization model is constructed between the set of tasks to be assigned and each target candidate execution entity. The target solution strategy is determined based on the task size of the set of tasks to be assigned, the candidate size of the set of target candidate execution entities, the constraint complexity, and the system running status information. The multi-constraint combination optimization model is solved according to the target solution strategy to obtain the task allocation result. When a new task to be assigned is obtained or the status of an assigned task changes, the set of affected tasks and the corresponding affected candidate execution entities are determined based on the new task to be assigned or the status change. While keeping the task assignment results of unaffected tasks unchanged, local incremental optimization is performed on the set of affected tasks and the affected candidate execution entities to obtain the updated task assignment results.

2. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, The step of determining the corresponding task priority based on the task information of each task to be assigned includes: Obtain the business level, deadline, and risk level of the task to be assigned to obtain basic task priority data; The remaining processing time is determined based on the time difference between the deadline in the task priority base data and the current time, and the task urgency is determined based on the correspondence between the remaining processing time and the preset maximum processing time. The business level and risk level in the task priority basic data are normalized to obtain business level feature values ​​and risk level feature values. The task priority of the task to be assigned is obtained by fusion calculation based on the business level feature value, task time urgency and risk level feature value and their respective priority weights.

3. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, The step of performing hard-constraint screening on the execution entities within the organization and dynamically pruning the set of valid candidate execution entities includes: Obtain the permission requirements, assignable organizational scope, and qualification requirements corresponding to the task to be assigned, and obtain the hard constraints of the task. The permission information, organization affiliation information, and qualification information corresponding to each execution entity are matched with the hard constraints of the task, and execution entities that do not meet the hard constraints of the task are filtered out to obtain the set of valid candidate execution entities; A lightweight matching degree prediction is performed based on the execution entity feature data of each execution entity in the set of valid candidate execution entities and the task feature data of the task to be assigned, so as to obtain the pre-matching result corresponding to each valid candidate execution entity; Dynamic pruning parameters are determined based on the candidate size of the set of valid candidate execution entities and the system operating status information, and each valid candidate execution entity is sorted according to the pre-matching results to obtain the candidate sorting results; The effective candidate execution entity set is pruned according to the candidate ranking result and the dynamic pruning parameters to obtain the target candidate execution entity set.

4. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, The step of determining the dynamic weights corresponding to each matching feature based on the task type of the task to be assigned and the system running status information includes: Based on the task type, risk level, and capability requirements of the task to be assigned, determine the baseline weight corresponding to each of the matching features to obtain the task type weight factor. The overall system load rate and task arrival density are determined from the system operating status information to obtain system status characteristics; The system state weight factor is obtained by adjusting the state adjustment parameters corresponding to each matching feature according to the system state characteristics. Specifically, when the overall system load rate increases, the system state weight factor corresponding to the load balancing feature is increased, and when the task arrival density increases, the system state weight factor corresponding to the response time feature is increased. The weight combination value is determined based on the task type weight factor and system state weight factor corresponding to each of the matching features, and the weight combination value is normalized to obtain the dynamic weight corresponding to each of the matching features.

5. The method for dynamic scheduling of process task execution entities according to claim 4, characterized in that, The step of determining multiple matching features and determining a matching score based on each matching feature and its corresponding dynamic weight includes: The capability matching degree is determined based on the business capability tags of the target candidate execution entity and the capability requirements of the task to be assigned, thereby obtaining capability matching features; The predicted load is determined based on the current task load and predicted task duration of the target candidate execution entity, and the load availability is determined based on the predicted load and the corresponding processing capacity limit, thus obtaining the load balancing characteristics. The response capability is determined based on the historical response duration and on-time completion status of the target candidate execution entity, thus obtaining the response timeliness characteristics; Historical processing capabilities are determined based on the historical task completion status, execution quality, and task return status of the target candidate execution entities, thus obtaining historical performance characteristics. Risk handling capability is determined based on the degree of matching between the risk adaptability of the target candidate execution entity and the risk level of the task to be assigned, thus obtaining risk adaptability characteristics; The matching score between the target candidate execution entity and the task to be assigned is obtained by weighting the performance based on the capability matching feature, load balancing feature, response time feature, historical performance feature, and risk adaptation feature, as well as their respective dynamic weights.

6. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, The determination of the objective solution strategy and the solution of the multi-constraint combined optimization model according to the objective solution strategy include: The search space size index is determined based on the number of tasks in the set of tasks to be assigned and the number of candidates in the set of target candidate execution entities, and the constraint complexity index is determined based on the number of effective constraints currently participating in combinatorial optimization. Based on the search space size index, constraint complexity index, and system operating status information, the solution scale level corresponding to the current multi-constraint combination optimization model is determined, and the solution strategy determination result is obtained. When the solution strategy determination result is characterized as small-scale and low-complexity, the exact matching algorithm is determined as the target solution strategy; when the solution strategy determination result is characterized as medium-scale, the integer linear programming algorithm is determined as the target solution strategy; when the solution strategy determination result is characterized as large-scale, high-constraint complexity, or high system load, the heuristic global search algorithm is determined as the target solution strategy. According to the objective solution strategy, with the constraint that each task to be assigned corresponds to only one target candidate execution entity and the cumulative task load of each target candidate execution entity does not exceed the corresponding remaining processing capacity, the multi-constraint combination optimization model is solved to obtain the initial task allocation result; Obtain the actual solution time corresponding to the target solution strategy, compare the actual solution time with the preset maximum calculation time limit, and obtain the solution time limit judgment result; When the solution time limit judgment result indicates that the actual solution time does not exceed the preset maximum computation time limit, the initial task allocation result is determined as the task allocation result; when the solution time limit judgment result indicates that the actual solution time exceeds the preset maximum computation time limit, the target solution strategy is downgraded, and the multi-constraint combined optimization model is re-solved according to the downgraded solution strategy to obtain the task allocation result.

7. The method for dynamic scheduling of process task execution entities according to claim 6, characterized in that, After obtaining the task allocation result, the method further includes: The unique task allocation relationship, the processing capacity of the executing entity, and the consistency of permissions and organizational affiliation in the task allocation results are verified to obtain the feasibility verification results. When the feasibility verification result indicates that the task allocation result is feasible, the objective function value corresponding to the task allocation result is determined, and the allocation quality index is determined according to the ratio between the objective function value and the theoretical upper limit of the corresponding objective function. The allocation quality index is compared with a preset quality threshold to obtain the allocation quality verification result; When the feasibility verification result indicates that the task allocation result is feasible and the allocation quality verification result indicates that the preset quality threshold is reached, the task allocation result is determined as a verified task allocation result. When the feasibility verification result indicates that the task allocation result is infeasible or the allocation quality verification result indicates that the preset quality threshold has not been reached, the conflicting tasks and conflicting constraints that caused the verification to fail are determined, and a subset of tasks to be recalculated is obtained. Based on the current target solution strategy and the preset number of recalculations, the solution strategy is downgraded or locally redistributed for the subset of tasks to be recalculated, so as to obtain the corrected task allocation result, while keeping the task allocation result corresponding to the tasks that do not involve conflicts unchanged.

8. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, The local incremental optimization of the affected task set and the affected candidate execution entities includes: The system obtains the task arrival rate and current system processing capacity of the tasks to be assigned, determines the sliding window parameters based on the task arrival rate and current system processing capacity, and establishes a dynamic task window containing tasks to be assigned in the near future based on the sliding window parameters. When a new task to be assigned is obtained, the new task to be assigned is added to the dynamic task window. The incremental optimization range is determined based on the matching score between the new task to be assigned and each candidate execution entity in the dynamic task window and the current window state of the dynamic task window. The affected task set and the corresponding affected candidate execution entities are obtained. When the dynamic task window has not reached the preset window capacity, the new task to be assigned is determined as the affected task set. When the dynamic task window has reached the preset window capacity, the new task to be assigned and a preset number of end tasks in the dynamic task window are determined as the affected task set. When the status of an assigned task changes, the set of affected tasks and the set of affected candidate execution entities are updated according to the execution entity corresponding to the status change and the assigned tasks associated with the execution entity. When multiple tasks in the affected task set compete for the same affected candidate execution entity, the task competition order is determined according to the task priority of each affected task, and the conflict arbitration result is obtained. Local joint optimization is performed based on the affected task set, the affected candidate execution entities, the corresponding matching scores, and the conflict arbitration results, while keeping the task allocation results of unaffected tasks in the dynamic task window unchanged, to obtain the updated task allocation results.

9. The method for dynamic scheduling of process task execution entities according to claim 1, characterized in that, After executing the task according to the task allocation result, the method further includes: Obtain the actual completion time, execution quality, task return status, load changes during execution, and the predicted matching score corresponding to task allocation for completed tasks to obtain task execution feedback data. The task execution feedback data is subjected to abnormal data filtering, normalization processing, and feedback window filtering to obtain valid feedback data. The prediction error is determined based on the actual execution results and corresponding prediction results in the effective feedback data, and the parameter adjustment amount corresponding to each dynamic weight is determined based on the prediction error and the contribution of each matching feature to the prediction result. Based on the adjustment amount of each parameter and the preset parameter boundary, each dynamic weight is updated in a bounded manner, and the updated dynamic weight is normalized to obtain candidate update decision parameters. The historical task time distribution of the corresponding execution entity is updated based on the actual completion time in the effective feedback data, and the business capability tags of the corresponding execution entity are adjusted according to the execution quality and abnormal execution of consecutive tasks of the same type, so as to obtain the updated execution entity feature data. A set of verification tasks is constructed based on historical task data, and the prediction results corresponding to the set of verification tasks are re-determined according to the candidate update decision parameters. The parameter update verification results are obtained based on the correlation between the prediction results and the actual execution results corresponding to the set of verification tasks. When the parameter update verification result meets the preset validity condition, the candidate update decision parameter is determined as a valid decision parameter; when the parameter update verification result does not meet the preset validity condition, the decision parameter of the previous version is determined as the valid decision parameter. The execution entities are scheduled for subsequent tasks to be assigned based on the effective decision parameters and the updated execution entity feature data.

10. A dynamic scheduling system for process task execution entities, characterized in that, The system includes: The feature determination module is used to obtain the set of tasks to be assigned, the information of the execution entities within the organization, and the system operation status information. Based on the information of the execution entities within the organization, it determines the execution entity feature data corresponding to each execution entity, and determines the corresponding task feature data and task priority based on the task information of each task to be assigned. The candidate determination module is used to perform hard constraint screening on the execution entities within the organization according to the task constraints corresponding to each of the tasks to be assigned, to obtain a set of valid candidate execution entities corresponding to each of the tasks to be assigned; to perform pre-matching between each valid candidate execution entity and the corresponding task to be assigned, to obtain a pre-matching result, and to dynamically prune the set of valid candidate execution entities according to the pre-matching result and the system running status information, to obtain a target candidate execution entity set. The matching and scoring module is used to determine multiple matching features for each of the tasks to be assigned based on the corresponding task feature data and the execution subject feature data of each target candidate execution subject, determine the dynamic weight corresponding to each matching feature based on the task type of the task to be assigned and the system running status information, and determine the matching score between each target candidate execution subject and the task to be assigned based on each matching feature and the corresponding dynamic weight. The optimization scheduling module is used to construct a multi-constraint combination optimization model between the set of tasks to be assigned and each target candidate execution entity based on the task priority, corresponding matching score, and remaining processing capacity of each target candidate execution entity. It also determines the target solution strategy based on the task size of the set of tasks to be assigned, the candidate size of the set of target candidate execution entities, constraint complexity, and system running status information, and solves the multi-constraint combination optimization model according to the target solution strategy to obtain the task allocation result. The incremental optimization module is used to determine the set of affected tasks and the corresponding affected candidate execution entities based on the newly added tasks to be assigned or the status of the assigned tasks when a new task to be assigned is obtained or the status of the assigned tasks changes. While keeping the task assignment results of unaffected tasks unchanged, the module performs local incremental optimization on the set of affected tasks and the affected candidate execution entities to obtain the updated task assignment results.