An adaptive task scheduling system and method
Through the collaborative work of multiple modules of the adaptive task scheduling system, redundant tasks can be identified and merged in real time, resource allocation can be optimized, and the problems of resource waste and low scheduling efficiency in the existing system can be solved, thus achieving efficient task scheduling and resource utilization.
Patent Information
- Application Number
- CN202510306869.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-15
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2045-03-15
AI Technical Summary
Existing task scheduling systems are unable to identify and handle redundant relationships between tasks, resulting in repeated execution of similar tasks, wasting computing resources, and reducing the overall execution efficiency of the system.
An adaptive task scheduling system is adopted, including an information collection module, a task evaluation module, a scheduling strategy generation module, a task redundancy analysis module and a dynamic priority adjustment module. Through real-time data collection, multi-dimensional evaluation, reinforcement learning algorithm optimization and dynamic adjustment, redundant tasks are identified and merged, and resource allocation and scheduling strategies are optimized.
It significantly improves the utilization of system resources, reduces the redundant overhead of task processing, realizes the intelligence and adaptability of task scheduling, and improves the overall execution efficiency of the system.
Smart Images

Figure CN120144257B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of task scheduling, and in particular to an adaptive task scheduling system and method. Background Art
[0002] With the rapid development of cloud computing technology, the problem of task scheduling in large-scale distributed computing environments has become increasingly prominent. In cloud computing environments, systems must simultaneously process a large number of computing tasks from different users, each with varying resource requirements, execution deadlines, and priority requirements. To improve system resource utilization and ensure timely task completion, an efficient task scheduling system is required to rationally allocate computing resources.
[0003] Currently, common task scheduling systems typically employ a static, rule-based scheduling strategy, pre-setting task priorities and resource allocation rules, and then scheduling tasks accordingly. While this approach is simple to implement, it fails to identify and address redundancies between tasks, leading to the frequent duplication of similar tasks. For example, multiple users may submit tasks with identical or similar resource requirements and computational objectives. Traditional scheduling systems treat these tasks as independent tasks, allocating resources and executing them separately. This wastes computing resources and reduces the overall system efficiency. Summary of the Invention
[0004] The present application provides an adaptive task scheduling system to improve the overall execution efficiency of the system.
[0005] In a first aspect, the present application provides an adaptive task scheduling system, the system comprising:
[0006] Information collection module, task evaluation module, scheduling strategy generation module, task redundancy analysis module, dynamic priority adjustment module and scheduling execution module;
[0007] The information collection module is used to periodically obtain task information, system resource information and user behavior data from the user side and the cloud server, and store the task information, system resource information and user behavior data in the information library;
[0008] The task evaluation module is configured to extract the task information, the system resource information, and the user behavior data from the information database, and evaluate the importance and resource requirements of each task based on the task information, the system resource information, and the user behavior data to generate a task value score;
[0009] The scheduling strategy generation module is used to generate a preliminary task execution plan based on the task value score and preset scheduling rules, and optimize the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision;
[0010] The task redundancy analysis module is used to mine mergeable redundant tasks from the task information, and generate a redundancy report based on the redundant tasks and feed it back to the scheduling strategy generation module;
[0011] The scheduling strategy generation module is used to adjust the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision;
[0012] The dynamic priority adjustment module is used to obtain the execution progress information of each task in the information library and the load information of each part of the system in real time, and dynamically adjust the task priority and resource allocation plan according to the execution progress information and the load information to obtain the adjustment result;
[0013] The scheduling execution module is used to coordinate the cloud server to execute tasks and allocate resources according to the target scheduling decision and the adjustment result, and to collect the execution status and resource usage of the tasks and generate an execution status report.
[0014] Through the above-mentioned technical solution, the adaptive task scheduling system provided by this application uses an information collection module to obtain task information, system resource information, and user behavior data in real time, providing comprehensive data support for system operation. The task evaluation module performs a multi-dimensional assessment of tasks based on this data, generating a task value score, accurately quantifying the importance of tasks and resource requirements. Based on this, the scheduling strategy generation module combines preset scheduling rules to generate a preliminary task execution plan and optimizes it using a reinforcement learning algorithm, achieving dynamic optimization of the scheduling strategy. Furthermore, the system innovatively introduces a task redundancy analysis module. By discovering mergeable redundant tasks and generating a redundancy report, it provides an optimization basis for the scheduling strategy generation module, enabling it to make targeted adjustments to the dynamic optimal scheduling decision, thereby achieving a more optimal target scheduling decision. Furthermore, the dynamic priority adjustment module dynamically adjusts task priorities and resource allocation plans by monitoring task execution progress and system load information in real time, further improving the system's adaptability. Finally, the scheduling execution module efficiently coordinates cloud servers to execute tasks and allocate resources based on the target scheduling decision and adjustment results, and achieves closed-loop monitoring of the task execution process through execution status reports. This multi-module collaborative working mechanism significantly improves system resource utilization, reduces redundant overhead in task processing, realizes intelligent and adaptable task scheduling, and effectively solves the problems of resource waste and low scheduling efficiency in traditional scheduling systems.
[0015] In a second aspect of the present application, an adaptive task scheduling method is provided, the system comprising:
[0016] Obtain task information, system resource information, and user behavior data from the user side and the cloud server at regular intervals, and store the task information, system resource information, and user behavior data in an information database;
[0017] Extracting the task information, the system resource information, and the user behavior data from the information database, and evaluating the importance and resource requirements of each task based on the task information, the system resource information, and the user behavior data to generate a task value score;
[0018] Generate a preliminary task execution plan based on the task value score and preset scheduling rules, and optimize the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision;
[0019] The task redundancy analysis module is used to mine mergeable redundant tasks from the task information, and generate a redundancy report based on the redundant tasks and feed it back to the scheduling strategy generation module;
[0020] Adjusting the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision;
[0021] Acquire the execution progress information of each task in the information database and the load information of each part of the system in real time, and dynamically adjust the task priority and resource allocation plan according to the execution progress information and the load information to obtain the adjustment result;
[0022] According to the target scheduling decision and the adjustment result, the cloud server is coordinated to execute tasks and allocate resources, and the execution status and resource usage of the tasks are collected to generate an execution status report.
[0023] In summary, one or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages:
[0024] 1. The adaptive task scheduling system provided in this application uses an information collection module to acquire task information, system resource information, and user behavior data in real time, providing comprehensive data support for system operation. The task evaluation module uses this data to perform a multi-dimensional assessment of tasks and generate a task value score, accurately quantifying the importance and resource requirements of the tasks. Based on this, the scheduling strategy generation module combines preset scheduling rules to generate a preliminary task execution plan and optimizes it using a reinforcement learning algorithm, achieving dynamic optimization of the scheduling strategy. Furthermore, the system innovatively introduces a task redundancy analysis module. By identifying mergeable redundant tasks and generating a redundancy report, it provides an optimization basis for the scheduling strategy generation module, enabling it to make targeted adjustments to the dynamic optimal scheduling decision, thereby achieving a more optimal target scheduling decision. Furthermore, the dynamic priority adjustment module dynamically adjusts task priorities and resource allocation plans by monitoring task execution progress and system load information in real time, further improving the system's adaptability. Finally, the scheduling execution module efficiently coordinates cloud servers to execute tasks and allocate resources based on the target scheduling decision and adjustment results, and implements closed-loop monitoring of the task execution process through execution status reports. This multi-module collaborative working mechanism significantly improves system resource utilization, reduces redundant overhead in task processing, realizes intelligent and adaptable task scheduling, and effectively solves the problems of resource waste and low scheduling efficiency in traditional scheduling systems.
[0025] 2. This application realizes real-time monitoring and dynamic adjustment of task execution status by setting a collaborative working mechanism of a state monitoring submodule, a load balancing submodule, a priority calculation submodule and a resource adjustment submodule in the dynamic priority adjustment module. The state monitoring submodule continuously collects execution progress information and load information to provide the system with real-time operation status data; the load balancing submodule calculates the load distribution of each part of the system based on these load information and generates load balancing parameters, which effectively avoids excessive concentration of system resources; the priority calculation submodule combines the execution progress information and the load balancing parameters, and obtains the updated task priority through dynamic calculation, ensuring the timeliness and rationality of task scheduling; the resource adjustment submodule reallocates system resources according to the updated task priority, generates an optimized resource adjustment plan, thereby improving the utilization efficiency of system resources. This multi-level dynamic adjustment mechanism not only enhances the system's ability to respond quickly to changes in task execution status, but also realizes the balanced use of system resources, effectively improving the overall task processing efficiency.
[0026] 3. The task evaluation module of this application realizes accurate evaluation of task value through hierarchical processing of multiple submodules. The data preprocessing submodule first normalizes the original data to ensure the data quality of subsequent analysis; the task feature analysis submodule conducts in-depth analysis of the preprocessed data, extracts feature parameters, and provides basic features for task evaluation; the resource demand evaluation submodule generates resource demand evaluation results by accurately estimating CPU resources, memory usage, storage space, and network bandwidth requirements, and realizes accurate prediction of task resource requirements; the user behavior analysis submodule generates comprehensive user behavior analysis results by analyzing user historical task patterns, evaluating priority levels, identifying usage habits, and calculating credit scores; the importance calculation submodule comprehensively scores feature parameters, resource demand evaluation results, and user behavior analysis results to obtain objective comprehensive task importance; finally, the value score generation submodule generates task value scores through standardized processing. This multi-dimensional evaluation mechanism not only realizes the scientific quantification of task value, but also provides a reliable basis for scheduling decisions, significantly improving the accuracy of system scheduling and resource utilization efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 An architecture diagram of an adaptive task scheduling system provided in an embodiment of the present application;
[0028] Figure 2 An architecture diagram of an adaptive task scheduling system provided in an embodiment of the present application;
[0029] Figure 3 A flowchart of an adaptive task scheduling method provided in this application. DETAILED DESCRIPTION
[0030] In order to enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below in conjunction with the drawings in the embodiments of this specification. Obviously, the described embodiments are only part of the embodiments of this application, not all of the embodiments.
[0031] In the description of the embodiments of this application, words such as "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "for example" or "for instance" in the embodiments of this application should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "for example" or "for instance" is intended to present the relevant concepts in a concrete manner.
[0032] In the description of the embodiments of the present application, the term "multiple" means two or more. For example, multiple systems refer to two or more systems, and multiple screen terminals refer to two or more screen terminals. In addition, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the indicated technical features. Thus, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized.
[0033] The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments.
[0034] On the basis of the above background technology, further, please refer to Figure 1 , Figure 1 This is an architecture diagram of an adaptive task scheduling system provided in an embodiment of the present application. The system can be implemented by a computer program or run as an independent tool application. Specifically, in the embodiment of the present application, the method can be applied on a server, but can also be applied to electronic devices such as servers. An adaptive task scheduling system includes: an information collection module 1, a task evaluation module 2, a scheduling strategy generation module 3, a task redundancy analysis module 4, a dynamic priority adjustment module 5, and a scheduling execution module 6;
[0035] The information collection module 1 is used to regularly obtain task information, system resource information and user behavior data from the user side and the cloud server, and store the task information, system resource information and user behavior data in the information database;
[0036] Specifically, the information collection module first establishes data connections with the user side and the cloud server. The user side refers to the access point where users submit tasks via their terminal devices, and the cloud server refers to the physical server cluster that performs computing tasks. The information collection module utilizes a timed trigger mechanism to send data acquisition requests to both the user side and the cloud server at preset intervals. For the user side, the task information acquired by the information collection module includes task attribute data such as task type, task size, and expected completion time; system resource information includes resource status data such as processor utilization, memory usage, storage space capacity, and network bandwidth; and user behavior data includes user operation data such as task submission frequency, resource usage habits, and task completion records. For the cloud server, the information collection module acquires operational data such as the current server cluster's task queue status, resource allocation, and load level. The information collection module uniformly encodes and formats the acquired task information, system resource information, and user behavior data into a standard data structure, which is then stored in the information repository via a data write interface. The information repository utilizes a distributed database architecture, categorizing and indexing data to support high-concurrency data read and write operations. Through this mechanism of regular collection and centralized storage, the system achieves comprehensive monitoring of the task execution environment, providing complete data support for subsequent task evaluation and scheduling optimization, while ensuring the real-time and reliability of the data.
[0037] The task evaluation module 2 is used to extract the task information, the system resource information and the user behavior data from the information database, and evaluate the importance and resource requirements of each task based on the task information, the system resource information and the user behavior data to generate a task value score;
[0038] Specifically, the task evaluation module reads the task information, system resource information, and user behavior data from the information repository via a database query interface. First, the task evaluation module preprocesses the read data, including filling missing values, correcting outliers, and standardizing the data format. Then, the task evaluation module extracts characteristic parameters such as task complexity, time sensitivity, and dependencies from the task information; estimates resource requirements such as processor resources, memory capacity, storage space, and network bandwidth required for task execution from the system resource information; and analyzes behavioral characteristics such as the user's historical task completion rate, resource utilization efficiency, and task urgency from the user behavior data. Next, the task evaluation module quantitatively evaluates the importance of the task using a weighted calculation method, where task complexity is weighted as 0.3, time sensitivity is weighted as 0.25, resource requirements are weighted as 0.25, and user behavior characteristics are weighted as 0.2. Finally, the task evaluation module normalizes the importance and resource requirement assessment results to generate a task value score between 0 and 100, with higher scores indicating more important tasks and more reasonable resource requirements. Through this multi-dimensional task evaluation mechanism, the system can accurately quantify the value of task execution, provide a scientific decision-making basis for subsequent scheduling strategy optimization, and ensure that system resources can be allocated preferentially to tasks with higher value.
[0039] Based on the above embodiment, as an optional embodiment, the task evaluation module includes: a data preprocessing submodule, a task feature analysis submodule, a resource demand evaluation submodule, a user behavior analysis submodule, an importance calculation submodule and a value score generation submodule;
[0040] The data preprocessing submodule is used to extract the task information, the system resource information and the user behavior data from the information database, and preprocess the task information, the system resource information and the user behavior data to obtain preprocessed data;
[0041] Specifically, the data preprocessing submodule extracts the task information, system resource information, and user behavior data from the information repository via a database query interface. First, the task information is preprocessed, including removing duplicate task records, supplementing missing task attribute fields, unifying task type identifiers, and standardizing task parameter formats to convert the task data into a standard data structure. Next, the system resource information is preprocessed, including correcting abnormal resource usage values, filling missing monitoring data points, eliminating noise in resource statistics, and standardizing resource measurement units to ensure the accuracy and consistency of resource data. Next, the user behavior data is preprocessed, including clearing invalid operation records, correcting timestamp errors, unifying user operation types, and normalizing user behavior characteristics to form a standard user behavior data format. Finally, the data preprocessing submodule performs time series alignment and formatting on the processed data to generate preprocessed data. Through this standardized data preprocessing mechanism, the system ensures data quality for subsequent analysis, provides a clean and complete data foundation for task evaluation, and improves the accuracy and reliability of evaluation results.
[0042] The task feature analysis submodule is used to analyze the preprocessed data to obtain feature parameters;
[0043] Specifically, the task feature analysis submodule first receives the preprocessed data output by the data preprocessing submodule and extracts the basic feature information of the task. For each task, computational complexity analysis is used to assess the task's computational complexity, including the number of computational instructions, the number of data accesses, and the algorithmic complexity. Time sensitivity analysis is used to determine the task's temporal characteristics, including task submission time, expected completion time, task execution cycle, and deadline constraints. Dependency analysis is used to identify the pre- and post-task relationships, including data dependency, resource dependency, and execution order dependency. Subsequently, the task feature analysis submodule performs a combined analysis of the extracted basic features to calculate comprehensive feature indicators for the task, including the task urgency index, execution difficulty coefficient, and criticality score. Finally, the task feature analysis submodule integrates all analysis results to generate feature parameters, including task complexity parameters, time constraint parameters, and dependency parameters. Through this multi-dimensional feature analysis mechanism, the system achieves a comprehensive characterization of task characteristics, providing a specific quantitative basis for subsequent resource demand assessment and importance calculation.
[0044] The resource requirement assessment submodule is used to estimate the CPU resources, memory usage requirements, storage space requirements and network bandwidth requirements required for the task based on the processed data, and generate a resource requirement assessment result;
[0045] Specifically, the resource demand assessment submodule first extracts the task's resource usage history and task type information from the preprocessed data. For CPU resource demand estimation, the number of processor cores and CPU time slice allocation ratio required for task execution are calculated by analyzing the task's computational instruction count, parallelism requirements, and historical CPU usage data. For memory usage demand estimation, the memory capacity requirements and memory access patterns during task execution are calculated by analyzing the task's dataset size, intermediate result storage capacity, and historical memory occupancy data. For storage space demand estimation, the disk space capacity and storage access bandwidth required during task execution are calculated by analyzing the task's input data volume, output data volume, and temporary file size. For network bandwidth demand estimation, the network bandwidth requirements and data transmission patterns during task execution are calculated by analyzing the task's data transmission volume, communication frequency, and network delay requirements. Finally, the resource demand assessment submodule integrates the various resource demand data to generate a resource demand assessment result containing specific resource configuration parameters. Through this precise resource demand assessment mechanism, the system achieves accurate prediction of task resource demand, providing a reliable decision-making basis for subsequent resource allocation optimization.
[0046] The user behavior analysis submodule is used to analyze the user's historical task patterns, evaluate the user's priority level, identify the user's usage habits, calculate the user's credit score, and generate the user behavior analysis results based on the processed data;
[0047] Specifically, the user behavior analysis submodule first extracts the user's historical operation records from the preprocessed data. To analyze the user's historical task patterns, the module collects statistics on the time distribution, task type distribution, and task size distribution of user-submitted tasks to identify the user's task submission patterns, including peak task submission frequency, common task type preferences, and typical task size characteristics. To assess user priority levels, the module analyzes the user's identity type, historical task completion quality, and resource utilization rationality to determine the user's basic priority level and dynamically adjusts it based on recent task execution. To identify user usage habits, the module analyzes the user's resource application patterns, task execution duration preferences, and system interaction methods to summarize the user's operational characteristics, including resource reservation habits, task execution cycles, and operational behavior patterns. To calculate the user's credit score, the module evaluates the user's resource utilization efficiency, task completion rate, and behavioral standardization to generate a quantitative indicator reflecting the user's credibility. Finally, the module integrates the various analysis results to generate a standardized user behavior analysis result. Through this systematic user behavior analysis mechanism, the system accurately characterizes user behavior characteristics, providing a personalized reference for task priority allocation and resource scheduling.
[0048] The importance calculation submodule is used to score the task based on the characteristic parameters, the resource demand assessment results, the user behavior analysis results and the preset scoring rules to obtain the comprehensive importance of the task;
[0049] The value score generating submodule is used to generate a standardized task value score according to the comprehensive importance of the task in combination with preset scoring rules and weights.
[0050] Specifically, the importance calculation submodule first receives feature parameters, resource demand assessment results, and user behavior analysis results, and reads preset scoring rules from a configuration file. The scoring rules include task complexity, time constraint, resource efficiency, and user credit. The importance calculation submodule then scores the task complexity, time constraint, and dependency parameters in the feature parameters; scores CPU utilization efficiency, memory usage rationality, storage space occupancy, and network bandwidth utilization in the resource demand assessment results; and scores user priority level, historical task completion rate, and resource usage history in the user behavior analysis results. The importance calculation submodule then weights each scoring result to obtain a comprehensive task importance. The value score generation submodule then maps the task importance value to a standard score range of 0 to 100 based on the comprehensive task importance, combined with the system's preset scoring rules and weighting parameters, to generate a standardized task value score. The scoring rules determine the baseline scores for different task types, while the weighting parameters control the influence of each evaluation dimension on the final score. Through this multi-dimensional scoring mechanism, the system achieves scientific quantification of task importance and provides an accurate value assessment basis for task scheduling optimization.
[0051] The scheduling strategy generation module 3 is used to generate a preliminary task execution plan based on the task value score and preset scheduling rules, and optimize the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision;
[0052] Specifically, the scheduling strategy generation module first receives the task value score generated by the task evaluation module and reads the preset scheduling rules from the configuration file. The preset scheduling rules include task priority rules, resource allocation rules, load balancing rules and time window rules, which define the basic scheduling constraints. The scheduling strategy generation module uses a heuristic algorithm to generate a preliminary task execution plan. The algorithm sorts tasks according to the task value score and allocates execution time and computing resources according to the preset scheduling rules. Subsequently, the scheduling strategy generation module constructs an optimization environment based on deep reinforcement learning, using the preliminary task execution plan as the initial state input. During the optimization process, the deep reinforcement learning algorithm sets the task queue state, resource usage state and system load state as the state space, and uses task selection, resource allocation and execution timing as the action space, and constructs a reward function based on task completion time, resource utilization and load balancing. The scheduling strategy generation module uses a deep Q network to estimate the action value function, continuously optimizes the network parameters through the experience replay mechanism, and finally obtains the dynamic optimal scheduling decision through policy iteration. This reinforcement learning-based optimization method enables the system to adaptively adjust the scheduling strategy according to the actual operating status, significantly improving task execution efficiency and resource utilization.
[0053] Based on the above embodiment, as an optional embodiment, the scheduling strategy generation module includes: a rule parsing submodule, a preliminary solution generation submodule and a reinforcement learning optimization submodule;
[0054] The rule parsing submodule is used to receive and parse preset scheduling rules, which include task priority rules, resource allocation rules, load balancing rules and time window rules, and generate rule parameters;
[0055] Specifically, the rule parsing submodule first reads the preset scheduling rules from the configuration file. For the analysis of task priority rules, the basic constraints of the task scheduling order are formed by extracting the priority definition standard, priority adjustment conditions and priority update cycle; for the analysis of resource allocation rules, the allocation boundary of system resources is determined by extracting resource quota limits, resource reservation strategies and resource recovery thresholds; for the analysis of load balancing rules, the system load balancing standard is set by extracting the load balancing target value, load transfer trigger conditions and balancing adjustment steps; for the analysis of time window rules, the time frame of task execution is established by extracting the task execution period division, time slice allocation ratio and scheduling cycle setting. Finally, the rule parsing submodule integrates and formats the various rule parameters obtained by analysis to generate a standard rule parameter data structure. Through this rule parsing mechanism, the system realizes the structured expression of scheduling constraints, provides a clear rule basis for the subsequent generation of scheduling solutions, and ensures the standardization and consistency of scheduling decisions.
[0056] The preliminary plan generating submodule is used to generate a preliminary task execution plan that meets the constraint conditions using a heuristic algorithm based on the task value score and the rule parameters;
[0057] Specifically, the preliminary solution generation submodule first receives the task value score output by the task evaluation module and the rule parameters generated by the rule parsing submodule. Then, a heuristic algorithm is used to construct a preliminary task scheduling plan. The algorithm first prioritizes the tasks based on the task value score, and tasks with high value scores are given higher execution priorities; then, according to the resource allocation rules in the rule parameters, the required computing resources are allocated to each task, including CPU time slices, memory space and network bandwidth; then, according to the load balancing rules, the load level of each node in the system is balanced by distributing the tasks in a decentralized manner; finally, according to the time window rules, a specific execution time period is arranged for each task, and it is ensured that the task execution sequence meets the dependency constraints. The preliminary solution generation submodule integrates the sorting results, resource allocation plan and execution sequence arrangement into a preliminary task execution plan. Through this heuristic-based solution generation mechanism, the system quickly constructs a task execution plan that meets basic constraints, provides an initial solution for subsequent optimization, and improves the efficiency of scheduling decision generation.
[0058] The reinforcement learning optimization submodule is used to optimize the preliminary task execution plan based on the reinforcement learning algorithm to obtain the dynamic optimal scheduling decision.
[0059] Specifically, the reinforcement learning optimization submodule first receives the preliminary task execution plan output by the preliminary plan generation submodule as the initial state input for optimization. It then constructs a task scheduling environment model, defining the state space as the combination of the current task queue state, system resource usage, and load distribution; and the action space as the set of task selection decisions, resource allocation adjustments, and execution timing changes. A reward function is designed to evaluate the quality of scheduling decisions, using task completion time, resource utilization, and load balance as basic indicators for reward calculation. Next, the reinforcement learning optimization submodule constructs a value function estimation model using a deep Q-network. This network maps states to action values through a multi-layer neural network structure. During the optimization process, an experience replay mechanism stores and samples historical decision data, continuously updates network parameters, and refines action selection strategies. Through repeated iterative training, the reinforcement learning algorithm gradually finds a more optimal scheduling strategy, ultimately outputting a dynamically optimal scheduling decision. Through this reinforcement learning-based optimization mechanism, the system achieves adaptive optimization of scheduling plans, improves resource utilization efficiency, and reduces task completion time.
[0060] The task redundancy analysis module 4 is used to mine mergeable redundant tasks from the task information, and generate a redundancy report based on the redundant tasks and feed it back to the scheduling strategy generation module;
[0061] Specifically, the task redundancy analysis module first reads the task information from the information repository and extracts the resource requirement, computational, and timing characteristics of each task to generate a task feature vector. Resource requirement characteristics include processor utilization, memory usage, storage space size, and network bandwidth requirements; computational characteristics include algorithm type, data processing scale, computational complexity, and parallelism requirements; and timing characteristics include submission time, expected completion time, execution priority, and deadline. The task redundancy analysis module then uses a multidimensional similarity calculation method to quantitatively assess the similarity between tasks. By calculating the Euclidean distance, cosine similarity, and temporal overlap between feature vectors, a task similarity matrix is generated. Simultaneously, the task redundancy analysis module analyzes the data dependencies, resource contention, and timing constraints between tasks to construct a task dependency graph. Next, the task redundancy analysis module selects highly similar task pairs based on a preset similarity threshold and, based on the task dependency graph, identifies redundant tasks that meet merging criteria. Finally, the task redundancy analysis module integrates the task similarity data, dependency descriptions, and task merging recommendations to generate a standardized redundancy report, which it then feeds back to the scheduling strategy generation module. Through this task redundancy analysis mechanism, the system realizes intelligent identification and optimized merging of repeated computing tasks, effectively reducing the waste of computing resources and improving overall execution efficiency.
[0062] Based on the above embodiment, as an optional embodiment, the task redundancy analysis module includes: a feature extraction submodule, a similarity calculation submodule, a dependency analysis submodule, a redundancy merging submodule and a report generation submodule;
[0063] The feature extraction submodule is used to read the task information from the information library, extract the resource requirement characteristics, calculation characteristics and timing characteristics of each task, and generate a task feature vector;
[0064] Specifically, the feature extraction submodule first reads the task information from the information library through the database interface. For the extraction of resource requirement features, by analyzing the resource configuration request of the task, resource parameters such as the number of CPU cores required, memory capacity requirements, storage space size and network bandwidth requirements are extracted; for the extraction of computational features, by analyzing the execution code and data scale of the task, computational parameters such as the algorithm type identifier, computational complexity level, data processing volume and parallelism requirements are extracted; for the extraction of timing features, by analyzing the submission records and execution requirements of the task, time parameters such as the task arrival time, expected completion time, execution priority and deadline are extracted. Subsequently, the feature extraction submodule performs standardization processing on the extracted feature data, unifies the feature values of different dimensions into the same numerical range, and organizes them into vector form to generate a task feature vector. Through this feature extraction mechanism, the system realizes the comprehensive collection and structured expression of task features, providing a standardized data basis for subsequent similarity calculation and redundancy analysis.
[0065] The similarity calculation submodule is used to quantitatively evaluate the similarity between tasks using a multi-dimensional similarity calculation method based on the task feature vectors to generate a task similarity matrix;
[0066] Specifically, the similarity calculation submodule first receives the task feature vectors generated by the feature extraction submodule. For each pair of task feature vectors, the Euclidean distance is calculated to assess the similarity of resource requirement characteristics, including differences in CPU usage, memory requirements, storage space, and network bandwidth. The cosine similarity is calculated to assess the similarity of computational characteristics, including algorithm type matching, computational complexity similarity, data scale similarity, and parallelism requirement consistency. Time overlap is calculated to assess the similarity of timing characteristics, including submission time proximity, completion time overlap, and priority similarity. Next, the similarity calculation submodule uses a weighted fusion method to comprehensively calculate the similarity evaluation results across the three dimensions to obtain a comprehensive similarity value between tasks. Finally, the similarity values between all task pairs are organized into a matrix to generate a task similarity matrix, where matrix element values range from 0 to 1, with larger values indicating greater similarity between tasks. Through this multi-dimensional similarity calculation mechanism, the system accurately quantifies task similarity relationships, providing reliable data support for subsequent redundant task identification.
[0067] The dependency analysis submodule is used to construct a task dependency graph based on the task feature vector;
[0068] Specifically, the dependency analysis submodule first receives the task feature vector, and identifies the dependency relationship between tasks by analyzing the data flow relationship, timing constraints and resource sharing in the feature vector. For the analysis of data flow relationships, the dependency chain between data production and consumption tasks is determined by identifying the corresponding relationship between input and output data between tasks; for the analysis of timing constraints, the dependency relationship of task execution order is established by comparing the execution time windows and priority requirements of tasks; for the analysis of resource sharing, the dependency constraints of resource access order are identified by detecting the competition relationship between tasks for the same resources. Subsequently, the dependency analysis submodule converts the various identified dependency relationships into directed edges, organizes the task nodes and dependency edges into the form of a directed acyclic graph, and constructs a complete task dependency graph, in which the nodes in the graph represent tasks, the edges represent dependency relationships, and the weights of the edges represent the dependency strength. Through this dependency analysis mechanism, the system realizes the graphical expression of task execution constraints, providing a clear dependency constraint reference for task scheduling and resource allocation.
[0069] The redundant merging submodule is used to identify mergeable tasks based on the task similarity matrix and the task dependency graph;
[0070] Specifically, the redundant merging submodule first receives the task similarity matrix generated by the similarity calculation submodule and the task dependency graph constructed by the dependency analysis submodule. The task similarity matrix is filtered according to a preset similarity threshold, and task pairs with similarities higher than the threshold are screened out as a preliminary merging candidate set; for each candidate task pair, by analyzing the dependency relationship in the task dependency graph, check whether there is a circular dependency between tasks, whether the execution timing constraints are violated, and whether resource competition conflicts occur. If the candidate task pair meets the similarity requirements and does not violate the dependency constraints, it is marked as a mergeable task. For mergeable tasks, the redundant merging submodule calculates the resource requirements after the merger, evaluates the resource saving effect brought about by the merge execution, and determines the final merging solution. Through this redundant merging mechanism, the system realizes the intelligent identification and optimal combination of repeated computing tasks, and improves resource utilization efficiency while ensuring the correct execution of tasks.
[0071] The report generation submodule is used to integrate the task similarity matrix, the task dependency graph and the mergeable tasks to generate a standardized redundancy analysis report.
[0072] Specifically, the report generation submodule first collects the intermediate results of the task redundancy analysis, including the task similarity matrix generated by the similarity calculation submodule, the task dependency graph constructed by the dependency analysis submodule, and the mergeable tasks identified by the redundancy merging submodule. For the task similarity matrix, the task identification, similarity value, and similarity feature description are recorded by extracting information about highly similar task pairs. For the task dependency graph, the key dependency paths, dependency strength, and execution constraint information are extracted by analyzing the graph structure. For the mergeable tasks, the specific content of the merge plan is statistically analyzed, including the combination method of the tasks to be merged, the expected resource savings, and the execution schedule after the merge. Subsequently, the report generation submodule organizes and compiles this information in a standard format to form a structured redundancy analysis report, which contains task similarity data, dependency relationship descriptions, merge plan details, and optimization suggestions. Through this report generation mechanism, the system achieves a systematic summary and clear presentation of the redundancy analysis results, providing a complete decision-making basis for optimizing and adjusting the scheduling strategy.
[0073] The scheduling strategy generation module 5 is used to adjust the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision;
[0074] Specifically, the scheduling strategy generation module first receives the redundancy report generated by the task redundancy analysis module and, through the redundancy report parsing submodule, extracts redundancy optimization parameters, including task similarity data, task dependencies, and merging recommendations. Subsequently, the task reorganization submodule within the scheduling strategy generation module reorganizes the tasks in the dynamic optimal scheduling decision based on the redundancy optimization parameters, combining tasks with high similarity that meet merging criteria into task groups to generate a first dynamic optimal scheduling decision. Next, the resource reallocation submodule optimizes and adjusts the resource allocation strategy in the first dynamic optimal scheduling decision based on the reorganized task structure, including recalculating the resource requirements of the merged tasks, adjusting resource allocation ratios, and optimizing resource usage timing, thereby generating a second dynamic optimal scheduling decision. Finally, the timing optimization submodule optimizes the execution timing of the second dynamic optimal scheduling decision based on the post-merger task dependencies, adjusting the task execution order and time window, ultimately forming the target scheduling decision. Through this multi-level scheduling strategy optimization mechanism, the system achieves intelligent merging of redundant tasks and resource reuse, significantly improving system resource utilization efficiency and reducing overall task execution time while ensuring correct task execution.
[0075] Based on the above embodiment, as an optional embodiment, the scheduling strategy generation module further includes: a redundancy report analysis submodule, a task reorganization submodule, a resource reallocation submodule and a timing optimization submodule;
[0076] The redundancy report parsing submodule is used to extract redundancy optimization parameters in the redundancy analysis report;
[0077] The task reorganization submodule is used to reorganize the tasks in the dynamic optimal scheduling decision according to the redundant optimization parameters to obtain a first dynamic optimal scheduling decision;
[0078] The resource reallocation submodule is configured to optimize and adjust the resource allocation strategy in the first dynamic optimal scheduling decision according to the redundancy optimization parameter to obtain a second dynamic optimal scheduling decision;
[0079] The timing optimization submodule is used to optimize the execution timing of the second dynamic optimal scheduling decision according to the redundant optimization parameters to obtain the target scheduling decision.
[0080] Specifically, the scheduling strategy generation module performs multi-stage processing on the task redundancy analysis report. First, the redundancy report parsing submodule reads the redundancy analysis report and extracts redundancy optimization parameters, including task similarity data, combinations of mergeable tasks, expected resource savings, and execution timing recommendations. Subsequently, the task reorganization submodule adjusts the task structure in the dynamic optimal scheduling decision based on the extracted redundancy optimization parameters, combining highly similar tasks into task groups and reorganizing the tasks to form a first dynamic optimal scheduling decision. Next, the resource reallocation submodule optimizes the resource allocation strategy in the first dynamic optimal scheduling decision based on the merged task structure. This involves recalculating the resource requirements of the task groups, adjusting the resource allocation ratios, and optimizing the resource usage timing, thereby generating a second dynamic optimal scheduling decision. Finally, the timing optimization submodule adjusts the execution timing of the second dynamic optimal scheduling decision based on the dependencies and execution constraints of the task groups. This involves arranging the execution order of the task groups, coordinating the time windows between tasks, and balancing the system load distribution, ultimately forming the target scheduling decision. Through this multi-stage optimization processing mechanism, the system achieves fine-grained adjustment of the scheduling strategy, which not only ensures the correct execution of tasks, but also improves resource utilization efficiency and reduces task execution time.
[0081] The dynamic priority adjustment module 6 is used to obtain the execution progress information of each task in the information library and the load information of each part of the system in real time, and dynamically adjust the task priority and resource allocation plan according to the execution progress information and the load information to obtain the adjustment result;
[0082] Specifically, the dynamic priority adjustment module establishes a real-time data connection with the information repository through the status monitoring submodule to continuously acquire and monitor task execution progress information and system load information. The execution progress information includes progress data such as the task completion percentage, current execution stage, and remaining execution time; the load information includes system status data such as processor utilization, memory occupancy, storage space usage, and network bandwidth usage. Subsequently, the load balancing submodule calculates the load distribution based on the load information of each system component and generates load balancing parameters for evaluating the balanced use of system resources. Next, the priority calculation submodule combines the task execution progress information and load balancing parameters and uses a dynamic weight calculation method to update the task priority value, raising the priority of tasks with lagging execution progress and light system load, and appropriately lowering the priority of tasks with excessive resource usage. The resource adjustment submodule then reallocates system resources based on the updated task priorities and generates a resource adjustment plan, including adjusting processor time slice allocation, replanning memory allocation strategies, and optimizing network bandwidth allocation. Finally, the feedback processing submodule integrates the task priority value and resource adjustment plan to generate an adjustment result in a standard format. Through this dynamic priority adjustment mechanism, the system realizes real-time monitoring and optimization adjustment of the task execution process, ensuring efficient utilization of system resources and balanced execution of tasks.
[0083] Based on the above embodiment, as an optional embodiment, the dynamic priority adjustment module includes: a status monitoring submodule, a load balancing submodule, a priority calculation submodule, a resource adjustment submodule and a feedback processing submodule;
[0084] The status monitoring submodule is used to obtain and monitor the execution progress information and the load information of each part of the system in real time in the information database;
[0085] The load balancing submodule is used to calculate the load conditions of various parts of the system according to the load information and generate load balancing parameters;
[0086] The priority calculation submodule is used to dynamically calculate the task priority based on the execution progress information and the load balancing parameters;
[0087] The resource adjustment submodule is used to dynamically adjust system resource allocation according to the task priority and generate a resource adjustment plan;
[0088] The feedback processing submodule is used to integrate the task priority value and the resource adjustment plan to generate an adjustment result.
[0089] Specifically, the scheduling strategy generation module performs multi-stage processing on the task redundancy analysis report. First, the redundancy report parsing submodule reads the redundancy analysis report and extracts redundancy optimization parameters, including task similarity data, combinations of mergeable tasks, expected resource savings, and execution timing recommendations. Subsequently, the task reorganization submodule adjusts the task structure in the dynamic optimal scheduling decision based on the extracted redundancy optimization parameters, combining highly similar tasks into task groups and reorganizing the tasks to form a first dynamic optimal scheduling decision. Next, the resource reallocation submodule optimizes the resource allocation strategy in the first dynamic optimal scheduling decision based on the merged task structure. This involves recalculating the resource requirements of the task groups, adjusting the resource allocation ratios, and optimizing the resource usage timing, thereby generating a second dynamic optimal scheduling decision. Finally, the timing optimization submodule adjusts the execution timing of the second dynamic optimal scheduling decision based on the dependencies and execution constraints of the task groups. This involves arranging the execution order of the task groups, coordinating the time windows between tasks, and balancing the system load distribution, ultimately forming the target scheduling decision. Through this multi-stage optimization processing mechanism, the system achieves fine-grained adjustment of the scheduling strategy, which not only ensures the correct execution of tasks, but also improves resource utilization efficiency and reduces task execution time.
[0090] The scheduling execution module 7 is used to coordinate the cloud server to execute tasks and allocate resources according to the target scheduling decision and the adjustment result, and to collect the execution status and resource usage of the tasks and generate an execution status report.
[0091] Specifically, the scheduling execution module first parses the received target scheduling decisions and adjustment results through the instruction parsing submodule, extracting the task execution order, resource allocation scheme, time window settings, and load balancing parameters to generate standardized execution instructions. Subsequently, the task distribution submodule assigns tasks to corresponding cloud server execution nodes based on the task type, resource requirements, and priority information in the execution instructions. Cloud server execution nodes include processor nodes, storage nodes, and network nodes. During task execution, the execution monitoring submodule collects real-time execution status data for each task, including task completion progress, resource utilization, execution time, and performance indicators. It also collects resource usage information for each cloud server node, including processor load, memory usage, storage space usage, and network bandwidth consumption. Finally, the execution monitoring submodule organizes and formats the collected execution status and resource usage data to generate an execution status report containing task execution status, resource utilization, and performance evaluation data. Through this refined execution management mechanism, the system achieves comprehensive monitoring of the task execution process and accurate recording of resource usage, providing reliable data support for continuous system optimization and performance improvement.
[0092] Based on the above embodiment, as an optional embodiment, the scheduling execution module includes: an instruction parsing submodule, a task distribution submodule, an execution monitoring submodule, an exception handling submodule and a result collection submodule;
[0093] The instruction parsing submodule is used to parse the target scheduling decision and the adjustment result to generate standardized execution instructions;
[0094] The task distribution submodule is used to distribute tasks to corresponding cloud server execution nodes according to the execution instructions;
[0095] The execution monitoring submodule is used to monitor the execution status and resource usage of the task in real time and generate the execution status report.
[0096] Specifically, the scheduling execution module implements task execution management through multiple submodules. First, the instruction parsing submodule receives the target scheduling decision output by the scheduling strategy generation module and the adjustment result generated by the dynamic priority adjustment module, extracts the task execution order, resource allocation plan, time window setting and load balancing parameters, and converts this information into standardized execution instructions, including task identification, execution node allocation, resource quota setting and scheduling timing arrangement. Subsequently, the task distribution submodule distributes the task to the corresponding cloud server execution node according to the content of the execution instruction, wherein the cloud server execution node includes processor node, storage node and network node, and each node is configured with the corresponding execution environment and resource parameters according to the execution instruction. Finally, the execution monitoring submodule collects the execution status data of each task in real time, including task running progress, resource occupancy, performance indicator data, and collects resource usage data of each cloud server node, including processor load, memory usage, storage space occupancy and network bandwidth consumption, and summarizes these monitoring data to generate an execution status report in a standard format. Through this refined execution management mechanism, the system achieves comprehensive control of the task execution process, ensuring the correct execution of tasks and efficient utilization of resources.
[0097] Based on the above embodiment, as an optional embodiment, the system further includes: a user interaction module
[0098] The user interaction module is used to receive task requests and query requests submitted by users, and provide task information to users according to the query requests.
[0099] Specifically, the user interaction module provides users with an interactive interface for task management. Users submit task requests through the interface, and the task requests contain information such as task type, execution parameters, resource requirements and priority requirements. The user interaction module stores this task information in the information library after standardization. When a user submits a query request, the user interaction module retrieves relevant task information from the information library according to the query conditions, including task execution status, completion progress, resource usage and estimated completion time, and displays this information to the user in the form of a chart or list. At the same time, the user interaction module provides a task monitoring function, allowing users to view the execution progress of the task in real time, including the current execution stage, resource occupancy and performance indicator data. Through this interactive mechanism, the system realizes effective communication between users and the task scheduling system, allowing users to conveniently submit tasks and promptly understand the task execution status, thereby improving the system's usability and user experience.
[0100] Based on the above embodiment, as an optional embodiment, the user interaction module includes: a request parsing unit and a request parsing unit
[0101] The request parsing unit is used to parse the task request, extract the task type, task parameters, and priority information and store them in the information database;
[0102] The request parsing unit is configured to extract relevant task information from the information database according to the query request.
[0103] Specifically, the user interaction module processes task requests and query requests respectively through a request parsing unit and a query parsing unit. First, the request parsing unit receives the task request submitted by the user, parses the request content, extracts task type information, including computing tasks, storage tasks or network tasks; extracts task parameter information, including input data size, processing algorithm type and output requirements; extracts priority information, including task urgency and importance level. The request parsing unit organizes the parsed and extracted information in a standard format and stores it in the information library through a data writing interface. Subsequently, the query parsing unit receives the query request sent by the user, parses the query conditions and filter parameters, retrieves the task information that meets the conditions from the information library, including task execution status, completion progress, resource usage and estimated completion time, and returns the retrieval results to the user interface for display. Through this request processing mechanism, the system realizes the standardized processing of user task requests and the accurate query of task information, thereby improving the efficiency and accuracy of user interaction.
[0104] Please refer to Figure 3 This application also discloses a flowchart of an adaptive task scheduling method provided by an embodiment of this application. The method includes:
[0105] S101, regularly obtaining task information, system resource information, and user behavior data from the user side and the cloud server, and storing the task information, system resource information, and user behavior data in an information database;
[0106] S102, extracting the task information, the system resource information, and the user behavior data from the information database, and evaluating the importance and resource requirements of each task based on the task information, the system resource information, and the user behavior data to generate a task value score;
[0107] S103, generating a preliminary task execution plan based on the task value score and preset scheduling rules, and optimizing the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision;
[0108] S104, the task redundancy analysis module is used to mine mergeable redundant tasks from the task information, and generate a redundancy report based on the redundant tasks and feed it back to the scheduling strategy generation module;
[0109] S105, adjusting the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision;
[0110] S106, acquiring in real time the execution progress information of each task in the information database and the load information of each part of the system, and dynamically adjusting the task priority and resource allocation plan based on the execution progress information and the load information to obtain an adjustment result;
[0111] S107, coordinating the cloud server to execute tasks and allocate resources according to the target scheduling decision and the adjustment result, collecting the execution status of the tasks and the resource usage, and generating an execution status report.
[0112] The above are merely exemplary embodiments of the present disclosure and are not intended to limit the scope of the present disclosure. In other words, any equivalent variations and modifications made in accordance with the teachings of the present disclosure are still within the scope of the present disclosure. Those skilled in the art will readily conceive of other embodiments of the present disclosure after considering the specification and practicing the disclosure.
[0113] This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art not described herein. The description and examples are to be considered as exemplary only, and the scope and spirit of the present disclosure are to be defined by the claims.
Claims
1. An adaptive task scheduling system, characterized in that: The system includes: an information collection module, a task evaluation module, a scheduling strategy generation module, a task redundancy analysis module, a dynamic priority adjustment module and a scheduling execution module; The information collection module is used to periodically obtain task information, system resource information and user behavior data from the user side and the cloud server, and store the task information, system resource information and user behavior data in the information library; The task evaluation module is configured to extract the task information, the system resource information, and the user behavior data from the information database, and evaluate the importance and resource requirements of each task based on the task information, the system resource information, and the user behavior data to generate a task value score; The scheduling strategy generation module is used to generate a preliminary task execution plan based on the task value score and preset scheduling rules, and optimize the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision; The task redundancy analysis module is used to mine mergeable redundant tasks from the task information, and generate a redundancy report based on the redundant tasks and feed it back to the scheduling strategy generation module; The scheduling strategy generation module is used to adjust the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision; The dynamic priority adjustment module is used to obtain the execution progress information of each task in the information library and the load information of each part of the system in real time, and dynamically adjust the task priority and resource allocation plan according to the execution progress information and the load information to obtain the adjustment result; The scheduling execution module is used to coordinate the cloud server to execute tasks and allocate resources according to the target scheduling decision and the adjustment result, and to collect the execution status and resource usage of the tasks and generate an execution status report, wherein: The task redundancy analysis module includes: a feature extraction submodule, a similarity calculation submodule, a dependency analysis submodule, a redundancy merging submodule and a report generation submodule; The feature extraction submodule is used to read the task information from the information library, extract the resource requirement characteristics, calculation characteristics and timing characteristics of each task, and generate a task feature vector; The similarity calculation submodule is used to quantitatively evaluate the similarity between tasks using a multi-dimensional similarity calculation method based on the task feature vectors to generate a task similarity matrix; The dependency analysis submodule is used to construct a task dependency graph based on the task feature vector; The redundant merging submodule is used to identify mergeable tasks based on the task similarity matrix and the task dependency graph; The report generation submodule is used to integrate the task similarity matrix, the task dependency graph and the mergeable tasks to generate a standardized redundancy analysis report.
2. The system according to claim 1, wherein: The task evaluation module includes: a data preprocessing submodule, a task feature analysis submodule, a resource demand evaluation submodule, a user behavior analysis submodule, an importance calculation submodule and a value score generation submodule; The data preprocessing submodule is used to extract the task information, the system resource information and the user behavior data from the information database, and preprocess the task information, the system resource information and the user behavior data to obtain preprocessed data; The task feature analysis submodule is used to analyze the preprocessed data to obtain feature parameters; The resource requirement assessment submodule is used to estimate the CPU resources, memory usage requirements, storage space requirements and network bandwidth requirements required for the task based on the processed data, and generate a resource requirement assessment result; The user behavior analysis submodule is used to analyze the user's historical task patterns, evaluate the user's priority level, identify the user's usage habits, calculate the user's credit score, and generate the user behavior analysis results based on the processed data; The importance calculation submodule is used to score the task based on the characteristic parameters, the resource demand assessment results, the user behavior analysis results and the preset scoring rules to obtain the comprehensive importance of the task; The value score generating submodule is used to generate a standardized task value score according to the comprehensive importance of the task in combination with preset scoring rules and weights.
3. The system according to claim 1, wherein: The scheduling strategy generation module includes: a rule parsing submodule, a preliminary solution generation submodule and a reinforcement learning optimization submodule; The rule parsing submodule is used to receive and parse preset scheduling rules, which include task priority rules, resource allocation rules, load balancing rules and time window rules, and generate rule parameters; The preliminary plan generating submodule is used to generate a preliminary task execution plan that meets the constraint conditions using a heuristic algorithm based on the task value score and the rule parameters; The reinforcement learning optimization submodule is used to optimize the preliminary task execution plan based on the reinforcement learning algorithm to obtain the dynamic optimal scheduling decision.
4. The system according to claim 1, wherein: The scheduling strategy generation module also includes: a redundant report analysis submodule, a task reorganization submodule, a resource reallocation submodule and a timing optimization submodule; The redundancy report parsing submodule is used to extract redundancy optimization parameters in the redundancy analysis report; The task reorganization submodule is used to reorganize the tasks in the dynamic optimal scheduling decision according to the redundant optimization parameters to obtain a first dynamic optimal scheduling decision; The resource reallocation submodule is configured to optimize and adjust the resource allocation strategy in the first dynamic optimal scheduling decision according to the redundancy optimization parameter to obtain a second dynamic optimal scheduling decision; The timing optimization submodule is used to optimize the execution timing of the second dynamic optimal scheduling decision according to the redundant optimization parameters to obtain the target scheduling decision.
5. The system according to claim 1, wherein: The dynamic priority adjustment module includes: a status monitoring submodule, a load balancing submodule, a priority calculation submodule, a resource adjustment submodule and a feedback processing submodule; The status monitoring submodule is used to obtain and monitor the execution progress information and the load information of each part of the system in real time in the information database; The load balancing submodule is used to calculate the load conditions of various parts of the system according to the load information and generate load balancing parameters; The priority calculation submodule is used to dynamically calculate the task priority based on the execution progress information and the load balancing parameters; The resource adjustment submodule is used to dynamically adjust system resource allocation according to the task priority and generate a resource adjustment plan; The feedback processing submodule is used to integrate the task priority value and the resource adjustment plan to generate an adjustment result.
6. The system according to claim 1, wherein: The scheduling execution module includes: an instruction parsing submodule, a task distribution submodule, an execution monitoring submodule, an exception handling submodule and a result collection submodule; The instruction parsing submodule is used to parse the target scheduling decision and the adjustment result to generate standardized execution instructions; The task distribution submodule is used to distribute tasks to corresponding cloud server execution nodes according to the execution instructions; The execution monitoring submodule is used to monitor the execution status and resource usage of the task in real time and generate the execution status report.
7. The system according to claim 1, wherein: The system also includes: a user interaction module The user interaction module is used to receive task requests and query requests submitted by users, and provide task information to users according to the query requests.
8. The system according to claim 7, characterized in that The user interaction module includes: a request parsing unit and a request parsing unit The request parsing unit is used to parse the task request, extract the task type, task parameters, and priority information and store them in the information database; The request parsing unit is configured to extract relevant task information from the information database according to the query request.
9. An adaptive task scheduling method, characterized in that: The method comprises: Obtain task information, system resource information, and user behavior data from the user side and the cloud server at regular intervals, and store the task information, system resource information, and user behavior data in an information database; Extracting the task information, the system resource information, and the user behavior data from the information database, and evaluating the importance and resource requirements of each task based on the task information, the system resource information, and the user behavior data to generate a task value score; Generate a preliminary task execution plan based on the task value score and preset scheduling rules, and optimize the preliminary task execution plan through a reinforcement learning algorithm to obtain a dynamic optimal scheduling decision; mining mergeable redundant tasks from the task information, and generating a redundancy report based on the redundant tasks; Adjusting the dynamic optimal scheduling decision according to the redundant report to obtain a target scheduling decision; Acquire the execution progress information of each task in the information database and the load information of each part of the system in real time, and dynamically adjust the task priority and resource allocation plan according to the execution progress information and the load information to obtain the adjustment result; According to the target scheduling decision and the adjustment result, coordinate the cloud server to execute tasks and allocate resources, collect the execution status and resource usage of tasks, and generate an execution status report, wherein, The step of mining mergeable redundant tasks from the task information and generating a redundancy report based on the redundant tasks specifically includes: Reading the task information from the information database, extracting resource requirement characteristics, computation characteristics, and timing characteristics of each task, and generating a task feature vector; Based on the task feature vectors, a multi-dimensional similarity calculation method is used to quantitatively evaluate the similarity between tasks to generate a task similarity matrix; Constructing a task dependency graph based on the task feature vector; Identifying mergible tasks based on the task similarity matrix and the task dependency graph; The task similarity matrix, the task dependency graph, and the mergeable tasks are integrated to generate a standardized redundancy analysis report.
Citation Information
Patent Citations
Task scheduling optimization method and system based on equipment state analysis
CN118193169A
Cloud resource automatic allocation system
CN118363765A