Scheduling automation system application state management method
By monitoring computing tasks and resource status in real time, formulating differentiated priority management, and introducing an adaptive scheduling algorithm based on reinforcement learning, the problems of dynamic status awareness and heterogeneous resource scheduling in the scheduling automation system are solved, achieving efficient resource utilization and system performance improvement.
Patent Information
- Application Number
- CN202411380472.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2025-01-10
AI Technical Summary
Existing automated scheduling systems lack dynamic state awareness and feedback mechanisms, lack differentiated scheduling strategies, have weak adaptive optimization capabilities, and are unable to cope with heterogeneous resource environments.
By monitoring the status of computing tasks and resources in real time, we formulate differentiated priority management strategies, introduce adaptive scheduling algorithms based on reinforcement learning, dynamically adjust task and resource allocation, and optimize scheduling strategies.
It enables adaptive scheduling for complex and ever-changing computing environments, improves resource utilization and system response speed, supports heterogeneous resource scheduling, and enhances system performance and scalability.
Smart Images

Figure CN119292745A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of dispatching automation, and in particular to a method for managing application status of a dispatching automation system. Background Art
[0002] Dispatching automation is the automation of power system dispatching by using control systems and telecontrol technology with electronic computers as the core. It includes safety monitoring, safety analysis, state estimation, online load forecasting, automatic power generation control, automatic economic dispatching, etc. Dispatching automation is an important part of the comprehensive automation of power systems. It can help on-duty dispatchers improve their operation and management level, keep the power system in a safe and economical operation state at any time, and ensure the provision of high-quality electricity to users.
[0003] (1) Lack of dynamic state perception and feedback mechanism. Most existing technologies remain at the static scheduling strategy level and are unable to perceive task execution status and resource utilization in real time, making it difficult to make timely and effective scheduling decisions.
[0004] (2) Lack of differentiated scheduling strategies. Existing technologies usually adopt a unified scheduling strategy and cannot adopt differentiated priority management and resource allocation solutions for different types of tasks.
[0005] (3) The adaptive optimization capability is weak. There are few existing technologies that use machine learning and other technologies to achieve adaptive scheduling strategy optimization, making it difficult to continuously improve system performance.
[0006] (4) Lack of support for heterogeneous resource scheduling. Most existing technologies target traditional single-type computing resources and are difficult to cope with complex heterogeneous environments such as cloud computing and edge computing. Therefore, it is necessary to design corresponding technical solutions to solve this problem. Summary of the invention
[0007] 1. Technical issues to be resolved
[0008] In view of the shortcomings of the prior art, the present invention provides a method for managing the application status of a scheduling automation system, which solves the technical problems of lack of dynamic state perception and feedback mechanism, lack of differentiated scheduling strategy, weak adaptive optimization capability and lack of support for heterogeneous resource scheduling.
[0009] (II) Technical solution
[0010] To achieve the above objectives, the present invention is implemented through the following technical solutions: a method for managing the application status of a dispatching automation system, the method steps comprising the following:
[0011] S1. Dynamic task status management:
[0012] S101, real-time monitoring of dynamic status indicators of various computing tasks;
[0013] S102. Develop differentiated priority management strategies based on the different characteristics of task types;
[0014] For delay-sensitive real-time tasks, their priority is promptly increased to shorten the response time;
[0015] For throughput-sensitive batch processing tasks, appropriately lower their priority to improve concurrent processing capabilities;
[0016] S103. Dynamically adjust task priorities to ensure that key tasks are executed efficiently and preferentially;
[0017] S2. Dynamic resource status management:
[0018] S201, continuously monitoring dynamic status indicators of various computing resources, where the dynamic status indicators include utilization and load conditions;
[0019] S202, dynamically adjusting the resource allocation plan according to the resource status;
[0020] For idle resources with low resource utilization, some low-priority tasks are appropriately allocated for temporary use to improve the overall resource utilization efficiency;
[0021] According to the performance characteristics of different resources, select the most suitable resources for scheduling for different types of tasks;
[0022] S203, dynamically optimizing resource allocation to ensure that the overall resource utilization of the system is continuously improved;
[0023] S3, adaptive scheduling strategy optimization:
[0024] S301. Introduce an adaptive scheduling algorithm based on reinforcement learning to continuously learn and accumulate various feedback data during the scheduling process;
[0025] S302, dynamically adjusting scheduling model parameters based on the learned scheduling experience to further improve scheduling efficiency and system performance;
[0026] S303, continuously optimize the scheduling strategy to ensure that the system can adapt to the complex and changing computing environment. Preferably, the dynamic status indicators include execution progress, estimated completion time, resource occupancy, task priority, task dependency and task running environment;
[0027] The task execution progress includes the amount of calculation completed and the time consumed;
[0028] The estimated completion time includes the estimated completion time based on the historical execution pattern and current execution progress of the task;
[0029] Resource usage includes the CPU, memory, and network bandwidth currently occupied by the task;
[0030] Task priorities include the relative priorities of different types of tasks;
[0031] Task dependencies include the pre- and post-dependencies between tasks;
[0032] The task running environment includes the operating system and the software and hardware environment.
[0033] Preferably, in step S101, the specific method steps for real-time monitoring of dynamic status indicators of various computing tasks are as follows:
[0034] S1011, establishing a task monitoring module: collecting the operation data of various computing tasks in real time through the system API or monitoring agent;
[0035] The collected data includes task ID, task type, task status, execution progress, and estimated completion time;
[0036] S1012, regularly collect task status data: set a suitable collection period to collect task status data once every minute;
[0037] The collected data is stored in a time series database for historical data analysis;
[0038] S1013, real-time calculation of task dynamic indicators: based on the collected original task data, real-time calculation of task dynamic status indicators;
[0039] S1014, reporting task status changes: when the task status changes, report it to the scheduling management module in real time;
[0040] The scheduling module dynamically adjusts task priorities and resource allocation strategies accordingly.
[0041] Preferably, in step S102, differentiated priority management strategies are formulated according to different characteristics of task types, and the specific method steps include the following:
[0042] S1021, Task Classification and Characteristics Analysis: Identify and classify various types of computing tasks in the scheduling automation system, including real-time tasks, batch tasks, and periodic tasks;
[0043] Analyze the characteristics of various tasks, including the delay sensitivity of real-time tasks and the throughput sensitivity of batch tasks;
[0044] S1022, establish priority classification standards: set different priority classification standards according to the characteristics of the tasks;
[0045] For throughput-sensitive batch processing tasks, set a relatively low priority threshold to balance resource competition between them and other tasks in the system;
[0046] S1023, task priority setting: for each task, an initial priority is set for it according to its type, urgency and resource requirement factors combined with the priority classification criteria;
[0047] The initial priority setting should take into account the importance and urgency of the task to ensure that critical tasks can obtain sufficient resource support;
[0048] S1024, dynamic adjustment of priority: during system operation, real-time monitoring of dynamic status indicators of various tasks, including execution time and resource occupancy rate;
[0049] According to the monitoring results and combined with the task priority setting rules, the priority of the task is dynamically adjusted;
[0050] S1025, priority conflict resolution: when multiple tasks require high-priority resources at the same time, a priority conflict resolution mechanism is developed;
[0051] Comprehensively evaluate and prioritize tasks based on task urgency, resource requirements, and system load factors;
[0052] S1026, Strategy Optimization and Update: Regularly evaluate and optimize the priority management strategy, and adjust the priority classification standards and task priority setting rules according to the system operation status and changes in task requirements.
[0053] Preferably, in step S201, the dynamic status indicators of various computing resources are continuously monitored by taking the following specific method steps:
[0054] S2011, Establish a resource monitoring system: deploy specialized monitoring software or agent programs to continuously collect resource utilization data on each computing node;
[0055] Monitoring metrics include CPU utilization, memory usage, network throughput, and disk I / O;
[0056] S2012, real-time acquisition of resource status data: periodically pulling resource status data of each computing node from the monitoring system through an API or a data interface;
[0057] Use push or pull methods to select the appropriate data collection method based on actual needs;
[0058] S2013, aggregation and analysis of resource status: aggregation and analysis of the collected resource status data to calculate the overall utilization of various computing resources;
[0059] Use various data analysis and visualization techniques, including time series analysis and anomaly detection, to discover trends and anomalies in resource utilization;
[0060] S2014, cache and update resource status: store the analyzed resource status data in a cache or database for query and use at any time;
[0061] Regularly update resource status data to ensure the timeliness and accuracy of the data;
[0062] S2015, provide resource status query interface: provide resource status query API or interface in the scheduling system, so that the scheduling algorithm can obtain the required resource information at any time;
[0063] Provide resource status data of various granularities and dimensions according to the requirements of the scheduling algorithm.
[0064] Preferably, in step S202, dynamically adjusting the resource allocation scheme according to the resource status takes the following specific steps:
[0065] S2021, real-time acquisition of resource status data: real-time acquisition of dynamic indicators of resource utilization and load conditions of each computing node from the established resource monitoring system; ensure the real-time and accuracy of data to provide a basis for subsequent resource adjustments;
[0066] S2022, analyzing resource utilization: analyzing the acquired resource status data to identify the imbalance of resource utilization in the current system; for example, resource utilization of some nodes is too high, while resource utilization of other nodes is low;
[0067] S2023, formulate resource adjustment plan: formulate corresponding resource adjustment plan according to the resource utilization analysis results, mainly including: migrating some low-priority tasks from high-load nodes to low-load nodes to balance resource utilization; appropriately assigning some low-priority tasks to idle nodes with low resource utilization to improve overall resource utilization; scheduling different tasks to the most suitable resource nodes for execution according to their characteristics;
[0068] S2024, perform resource adjustment: implement the above resource adjustment plan to achieve dynamic optimization of resources by dynamically migrating tasks or reallocating resources. The impact of task migration on system performance needs to be considered to minimize interference with services.
[0069] S2025, monitor adjustment effects: continuously monitor the execution effect of the resource adjustment plan to check whether resource utilization is more balanced and whether overall performance is optimized;
[0070] Based on the monitoring results, fine-tune the resource adjustment strategy in a timely manner to ensure that the system can continue to maintain a good resource utilization status.
[0071] Preferably, in step S301, the specific method steps for the reinforcement learning algorithm to continuously learn and accumulate various feedback data in the scheduling process include the following:
[0072] S3011, establish a task execution environment model: define the task state space S, including task type, priority, and resource requirements;
[0073] Define the system resource state space R, including the available resources such as CPU, memory, network bandwidth, etc.
[0074] Define the task scheduling action space A, including raising / lowering priority and allocating / reclaiming resources;
[0075] S3012, Design of reinforcement learning intelligent scheduler: Use deep Q-learning algorithm as the learning model for scheduling strategy;
[0076] Define the Q function Q(s,a) to represent the expected reward of taking action a in state s;
[0077] S3013, reward function r(s,a,s') design: increase the reward for completing key tasks, reduce the penalty for task delays and resource waste, and balance the rewards and penalties for the overall performance of the system;
[0078] S3014, training scheduling strategy model: initializing Q function parameters θ;
[0079] In the simulation environment, the following steps are continuously performed: observe the current state s, select action a according to the ε-greedy strategy, execute action a, observe the next state s' and reward r; update the Q function parameter θ according to the Q-learning update rule; repeat the above process until the Q function converges;
[0080] S3015, deploy adaptive scheduler: deploy the trained Q function model to the actual scheduling system;
[0081] Monitor system status online and select the optimal scheduling action in real time based on the current status;
[0082] Continuously collect task execution feedback and periodically fine-tune the Q function parameters to adapt to dynamic changes in the system;
[0083] Algorithm formula: Q(s,a)=Q(s,a)+α*[r(s,a,s')+γ*max_a'Q(s',a')-Q(s,a)]
[0084] Among them, Q is the function value, α is the learning rate, γ is the discount factor, ε is the exploration probability, s is the current state, describing the current attributes and conditions of the task and system resources, a is the current scheduling action taken, r is the reward function, s' is the next state transferred to after executing action a, and a' is the next scheduling action that can be taken in the next state s'.
[0085] Preferably, in step S302, the specific steps of dynamically adjusting the scheduling model parameters according to the learned scheduling experience are:
[0086] S3021, Data Collection and Analysis: Conduct in-depth analysis of various feedback data to understand the strengths and weaknesses of the current scheduling strategy and the key factors that can be improved;
[0087] S3022, model parameter extraction: extract key model parameters in the scheduling strategy from the collected data, including task priority weights and resource allocation strategies;
[0088] S3023, parameter optimization iteration: using the reinforcement learning adaptive algorithm, continuously trying to adjust the values of these key parameters and observing the changes in scheduling performance;
[0089] Through multiple rounds of iterative optimization, we find the best parameter combination that can maximize scheduling efficiency and system performance;
[0090] S3024, dynamic parameter update: dynamically update the optimized best parameter value to the scheduling model so that it can reflect the current best scheduling strategy in real time;
[0091] As the computing environment changes, these parameters are continuously monitored and updated in a timely manner to ensure that the scheduling strategy can be continuously optimized;
[0092] S3025, Performance Evaluation and Feedback: Apply the updated scheduling model to the actual scheduling process and continuously monitor system performance indicators;
[0093] If you find that the performance does not meet your expectations, you need to go back to the steps of data analysis and model optimization and continue to iterate and optimize.
[0094] Preferably, in step S303, the specific method steps for continuously optimizing the scheduling strategy are:
[0095] S3031, dynamic scheduling optimization framework using reinforcement learning: introduces deep Q-learning reinforcement learning algorithm to continuously learn and optimize scheduling decisions; uses system status as algorithm input and scheduling decisions as algorithm output; uses system performance as reward signal to adaptively adjust algorithm parameters;
[0096] S3032, Fusion Meta-heuristic Optimization Algorithm: Introduce the meta-heuristic algorithm of particle swarm optimization and combine it with reinforcement learning method; use meta-heuristic algorithm to explore a wider range of scheduling strategy space; reinforcement learning algorithm is responsible for optimizing the current strategy to form collaborative optimization;
[0097] S3033, introduce transfer learning mechanism: use historical scheduling optimization experience as the initial knowledge of reinforcement learning; conduct transfer learning to quickly adapt to new environments based on the characteristics of different computing environments; continuously fine-tune the reinforcement learning model to ensure that it maintains excellent performance in changing environments;
[0098] S3034, multi-objective optimization and adaptive weight adjustment: optimize multiple performance indicators simultaneously, including response time, resource utilization and energy consumption; dynamically adjust the weight of each objective according to actual environmental requirements; adopt the Pareto optimization strategy to find the scheduling decision with the best overall performance.
[0099] Preferably, the scheduling strategy optimization algorithm under the reinforcement learning framework is:
[0100] Let the system state be s∈S, the scheduling decision be a∈A, and the performance index be r. The deep Q learning algorithm is used for optimization. The core formula is as follows: Q(s,a)=r+γ*max_a'Q(s',a')
[0101] Where: Q(s,a) represents the expected future reward obtained by taking decision a in state s, r represents the immediate reward obtained by the current decision a, γ is the discount factor used to balance the current reward and future reward, s' represents the next state to which the system transfers after taking decision a, and a' represents all the decisions that can be selected in state s';
[0102] The algorithm steps are as follows:
[0103] Initialize the Q function network parameters θ;
[0104] Select decision a based on the current state s and the ε-greedy strategy;
[0105] Execute decision a, observe and obtain immediate reward r and next state s';
[0106] Calculate the target Q value: y = r + γ * max_a'Q (s', a'; θ);
[0107] Update the Q function network parameters θ so that Q(s,a;θ) approaches the target Q value y;
[0108] Store (s,a,r,s') into the experience pool;
[0109] Sample mini-batch data from the experience pool and continuously optimize the Q function.
[0110] (III) Beneficial effects
[0111] Compared with the prior art, the present invention has the following beneficial effects: it adopts dynamic state management, abandons the traditional static scheduling mode, and can better adapt to complex and changeable computing environments; it introduces differentiated scheduling strategies, adopts targeted priority management and resource allocation for different types of tasks, and improves the overall system performance; it combines reinforcement learning technology to achieve adaptive scheduling strategy optimization, and has strong self-learning ability and adaptability; it supports heterogeneous resource scheduling, and can be widely used in complex heterogeneous environments such as cloud computing and edge computing;
[0112] Higher resource utilization and system response speed, the dynamic state management strategy can make full use of idle resources and improve the overall system performance; stronger adaptability, the scheduling algorithm based on reinforcement learning can continuously optimize the scheduling strategy and adapt to the complex and changeable computing environment; better heterogeneous resource scheduling capabilities, support differentiated scheduling strategies, suitable for complex heterogeneous environments such as cloud computing and edge computing; better scalability and mobility, flexible system design, can be widely used in various automated scheduling scenarios. BRIEF DESCRIPTION OF THE DRAWINGS
[0113] Figure 1 It is a schematic diagram of the overall method steps of the present invention;
[0114] Figure 2 It is a schematic diagram of the dynamic state indicators of the present invention;
[0115] Figure 3 A schematic diagram of the specific method steps for real-time monitoring of dynamic status indicators of various computing tasks of the present invention;
[0116] Figure 4 A schematic diagram of specific method steps for formulating differentiated priority management strategies according to different characteristics of task types of the present invention;
[0117] Figure 5 The following specific method steps are adopted for the present invention to continuously monitor the dynamic status indicators of various computing resources;
[0118] Figure 6 The following is a schematic diagram of specific steps taken by the present invention to dynamically adjust the resource allocation scheme according to the resource status;
[0119] Figure 7 A schematic diagram of specific steps for dynamically adjusting scheduling model parameters according to the scheduling experience learned in the present invention;
[0120] Figure 8 It is a schematic diagram of the specific method steps of the continuous optimization scheduling strategy of the present invention. DETAILED DESCRIPTION
[0121] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0122] See also Figure 1-Figure 8 The embodiment of the present invention provides a technical solution: a method for managing the application status of a scheduling automation system, the method steps comprising the following:
[0123] S1. Dynamic task status management:
[0124] S101, real-time monitoring of dynamic status indicators of various computing tasks;
[0125] S102. Develop differentiated priority management strategies based on the different characteristics of task types;
[0126] For delay-sensitive real-time tasks, their priority is promptly increased to shorten the response time;
[0127] For throughput-sensitive batch processing tasks, appropriately lower their priority to improve concurrent processing capabilities;
[0128] S103. Dynamically adjust task priorities to ensure that key tasks are executed efficiently and preferentially;
[0129] S2. Dynamic resource status management:
[0130] S201, continuously monitoring dynamic status indicators of various computing resources, where the dynamic status indicators include utilization and load conditions;
[0131] S202, dynamically adjusting the resource allocation plan according to the resource status;
[0132] For idle resources with low resource utilization, some low-priority tasks are appropriately allocated for temporary use to improve the overall resource utilization efficiency;
[0133] According to the performance characteristics of different resources, select the most suitable resources for scheduling for different types of tasks;
[0134] S203, dynamically optimizing resource allocation to ensure that the overall resource utilization of the system is continuously improved;
[0135] S3, adaptive scheduling strategy optimization:
[0136] S301. Introduce an adaptive scheduling algorithm based on reinforcement learning to continuously learn and accumulate various feedback data during the scheduling process;
[0137] S302, dynamically adjusting scheduling model parameters based on the learned scheduling experience to further improve scheduling efficiency and system performance;
[0138] S303. Continuously optimize the scheduling strategy to ensure that the system can adapt to complex and changing computing environments.
[0139] Further improved, the dynamic status indicators include execution progress, estimated completion time, resource usage, task priority, task dependency and task running environment;
[0140] The task execution progress includes the amount of calculation completed and the time consumed;
[0141] The estimated completion time includes the estimated completion time based on the historical execution pattern and current execution progress of the task;
[0142] Resource usage includes the CPU, memory, and network bandwidth currently occupied by the task;
[0143] Task priorities include the relative priorities of different types of tasks;
[0144] Task dependencies include pre / post dependencies between tasks;
[0145] The task running environment includes the operating system and the software and hardware environment.
[0146] Establish a real-time task monitoring mechanism to collect dynamic indicator data covering task execution progress, resource usage, dependencies, etc., to provide data support for subsequent dynamic management.
[0147] As a further improvement, in step S101, the specific method steps for real-time monitoring of dynamic status indicators of various computing tasks are as follows:
[0148] S1011, establishing a task monitoring module: collecting the operation data of various computing tasks in real time through the system API or monitoring agent;
[0149] The collected data includes task ID, task type, task status, execution progress, and estimated completion time;
[0150] S1012, regularly collect task status data: set a suitable collection period to collect task status data once every minute;
[0151] The collected data is stored in a time series database for historical data analysis;
[0152] S1013, real-time calculation of task dynamic indicators: based on the collected original task data, real-time calculation of task dynamic status indicators;
[0153] S1014, reporting task status changes: when the task status changes, report it to the scheduling management module in real time;
[0154] The scheduling module dynamically adjusts task priorities and resource allocation strategies accordingly.
[0155] Through the above steps, the dynamic status indicators of various computing tasks can be monitored in real time, providing a basis for subsequent task priority management and resource allocation optimization.
[0156] As a further improvement, in step S102, differentiated priority management strategies are formulated according to different characteristics of task types, and the specific method steps include the following:
[0157] S1021, Task Classification and Characteristics Analysis: Identify and classify various types of computing tasks in the scheduling automation system, including real-time tasks, batch tasks, and periodic tasks;
[0158] Analyze the characteristics of various tasks, including the delay sensitivity of real-time tasks and the throughput sensitivity of batch tasks;
[0159] S1022, formulate priority classification standards: according to the characteristics of the tasks, set different priority classification standards, and set a higher priority threshold for delay-sensitive real-time tasks to ensure that they receive timely responses;
[0160] For throughput-sensitive batch processing tasks, set a relatively low priority threshold to balance resource competition between them and other tasks in the system;
[0161] S1023, task priority setting: for each task, an initial priority is set for it according to its type, urgency and resource requirement factors combined with the priority classification criteria;
[0162] The initial priority setting should take into account the importance and urgency of the task to ensure that critical tasks can obtain sufficient resource support;
[0163] S1024, dynamic adjustment of priority: during system operation, real-time monitoring of dynamic status indicators of various tasks, including execution time and resource occupancy rate;
[0164] According to the monitoring results and task priority setting rules, the priority of the task is adjusted dynamically. When a real-time task is delayed, its priority is temporarily increased to shorten the response time.
[0165] S1025, priority conflict resolution: when multiple tasks require high-priority resources at the same time, a priority conflict resolution mechanism is developed;
[0166] Comprehensively evaluate and prioritize tasks based on task urgency, resource requirements, and system load factors;
[0167] S1026, Strategy Optimization and Update: Regularly evaluate and optimize the priority management strategy, and adjust the priority classification standards and task priority setting rules according to the system operation status and changes in task requirements.
[0168] Through the above method and steps, it can be ensured that various tasks in the scheduling automation system can be reasonably managed according to their different characteristics, thereby achieving effective utilization of system resources and efficient execution of tasks.
[0169] Further improved, in step S201, the dynamic status indicators of various computing resources are continuously monitored by taking the following specific method steps:
[0170] S2011, Establish a resource monitoring system: deploy specialized monitoring software or agent programs to continuously collect resource utilization data on each computing node;
[0171] Monitoring metrics include CPU utilization, memory usage, network throughput, and disk I / O;
[0172] S2012, real-time acquisition of resource status data: periodically pulling resource status data of each computing node from the monitoring system through an API or a data interface;
[0173] Use push or pull methods to select the appropriate data collection method based on actual needs;
[0174] S2013, aggregation and analysis of resource status: aggregation and analysis of the collected resource status data to calculate the overall utilization of various computing resources;
[0175] Use various data analysis and visualization techniques, including time series analysis and anomaly detection, to discover trends and anomalies in resource utilization;
[0176] S2014, cache and update resource status: store the analyzed resource status data in a cache or database for query and use at any time;
[0177] Regularly update resource status data to ensure the timeliness and accuracy of the data;
[0178] S2015, provide resource status query interface: provide resource status query API or interface in the scheduling system, so that the scheduling algorithm can obtain the required resource information at any time;
[0179] Provide resource status data of various granularities and dimensions according to the requirements of the scheduling algorithm.
[0180] Through the above steps, the scheduling system can continuously and in real time monitor and obtain the dynamic status indicators of various computing resources, providing necessary data support for subsequent dynamic resource allocation and scheduling optimization.
[0181] Further improved, in step S202, dynamically adjusting the resource allocation scheme according to the resource status takes the following specific steps:
[0182] S2021, real-time acquisition of resource status data: real-time acquisition of dynamic indicators of resource utilization and load conditions of each computing node from the established resource monitoring system; ensure the real-time and accuracy of data to provide a basis for subsequent resource adjustments;
[0183] S2022, analyzing resource utilization: analyzing the acquired resource status data to identify the imbalance of resource utilization in the current system; for example, resource utilization of some nodes is too high, while resource utilization of other nodes is low;
[0184] S2023, formulate resource adjustment plan: formulate corresponding resource adjustment plan according to the resource utilization analysis results, mainly including: migrating some low-priority tasks from high-load nodes to low-load nodes to balance resource utilization; appropriately assigning some low-priority tasks to idle nodes with low resource utilization to improve overall resource utilization; scheduling different tasks to the most suitable resource nodes for execution according to their characteristics;
[0185] S2024, perform resource adjustment: implement the above resource adjustment plan to achieve dynamic optimization of resources by dynamically migrating tasks or reallocating resources. The impact of task migration on system performance needs to be considered to minimize interference with services.
[0186] S2025, monitor adjustment effects: continuously monitor the execution effect of the resource adjustment plan to check whether resource utilization is more balanced and whether overall performance is optimized;
[0187] Based on the monitoring results, fine-tune the resource adjustment strategy in a timely manner to ensure that the system can continue to maintain a good resource utilization status.
[0188] Through the above steps, the scheduling system can dynamically adjust the resource allocation plan according to the real-time resource status data, improve the overall resource utilization efficiency, and ensure that key tasks can be efficiently executed. At the same time, it also needs to pay attention to the characteristics of different task types and select the most appropriate resources for them for scheduling.
[0189] Further improved, in step S301, the specific method steps of the reinforcement learning algorithm to continuously learn and accumulate various feedback data in the scheduling process include the following:
[0190] S3011, establish a task execution environment model: define the task state space S, including task type, priority, and resource requirements;
[0191] Define the system resource state space R, including the available resources such as CPU, memory, network bandwidth, etc.
[0192] Define the task scheduling action space A, including raising / lowering priority and allocating / reclaiming resources;
[0193] S3012, Design of reinforcement learning intelligent scheduler: Use deep Q-learning algorithm as the learning model for scheduling strategy;
[0194] Define the Q function Q(s,a) to represent the expected reward of taking action a in state s;
[0195] S3013, reward function r(s,a,s') design: increase the reward for completing key tasks, reduce the penalty for task delays and resource waste, and balance the rewards and penalties for the overall performance of the system;
[0196] S3014, training scheduling strategy model: initializing Q function parameters θ;
[0197] In the simulation environment, the following steps are continuously performed: observe the current state s, select action a according to the ε-greedy strategy, execute action a, observe the next state s' and reward r; update the Q function parameter θ according to the Q-learning update rule; repeat the above process until the Q function converges;
[0198] S3015, deploy adaptive scheduler: deploy the trained Q function model to the actual scheduling system;
[0199] Monitor system status online and select the optimal scheduling action in real time based on the current status;
[0200] Continuously collect task execution feedback and periodically fine-tune the Q function parameters to adapt to dynamic changes in the system;
[0201] Algorithm formula: Q(s,a)=Q(s,a)+α*[r(s,a,s')+γ*max_a'Q(s',a')-Q(s,a)]
[0202] Among them, Q is the function value, which represents the expected reward obtained by taking action a in state s, α is the learning rate, γ is the discount factor, ε is the exploration probability, s is the current state, describing the current attributes and conditions of tasks and system resources, a is the scheduling action currently taken, such as increasing / decreasing task priority, allocating / reclaiming resources, etc., r is the reward function, which gives corresponding rewards or penalties according to the current state s, taking action a, and transferring to the next state s', s' is the next state transferred to after executing action a, and a' is the next scheduling action that can be taken in the next state s'.
[0203] Through this adaptive scheduling mechanism based on reinforcement learning, the scheduling system can continuously learn and optimize during operation, adapt to complex and changing tasks and resource environments, and improve overall task processing performance and resource utilization efficiency.
[0204] Further improved, in step S302, the specific steps of dynamically adjusting the scheduling model parameters according to the learned scheduling experience are:
[0205] S3021, Data Collection and Analysis: Conduct in-depth analysis of various feedback data to understand the strengths and weaknesses of the current scheduling strategy and the key factors that can be improved;
[0206] S3022, model parameter extraction: extract key model parameters in the scheduling strategy from the collected data, including task priority weights and resource allocation strategies. These parameters directly affect the decision-making behavior and final performance of the scheduling system;
[0207] S3023, parameter optimization iteration: using the reinforcement learning adaptive algorithm, continuously trying to adjust the values of these key parameters and observing the changes in scheduling performance;
[0208] Through multiple rounds of iterative optimization, we find the best parameter combination that can maximize scheduling efficiency and system performance;
[0209] S3024, dynamic parameter update: dynamically update the optimized best parameter value to the scheduling model so that it can reflect the current best scheduling strategy in real time;
[0210] As the computing environment changes, these parameters are continuously monitored and updated in a timely manner to ensure that the scheduling strategy can be continuously optimized;
[0211] S3025, Performance Evaluation and Feedback: Apply the updated scheduling model to the actual scheduling process and continuously monitor system performance indicators;
[0212] If you find that the performance does not meet your expectations, you need to go back to the steps of data analysis and model optimization and continue to iterate and optimize.
[0213] Through the above steps, the scheduling system can make full use of the empirical data accumulated in the actual scheduling process and dynamically adjust key parameters so that the scheduling strategy can be continuously optimized, thereby improving the overall scheduling efficiency and system performance and adapting to complex and changing computing environments.
[0214] Further improved, in step S303, the specific method steps for continuously optimizing the scheduling strategy are:
[0215] S3031, dynamic scheduling optimization framework using reinforcement learning: introduces deep Q-learning reinforcement learning algorithm to continuously learn and optimize scheduling decisions; uses system status as algorithm input and scheduling decisions as algorithm output; uses system performance as reward signal to adaptively adjust algorithm parameters;
[0216] S3032, Fusion Meta-heuristic Optimization Algorithm: Introduce the meta-heuristic algorithm of particle swarm optimization and combine it with reinforcement learning method; use meta-heuristic algorithm to explore a wider range of scheduling strategy space; reinforcement learning algorithm is responsible for optimizing the current strategy to form collaborative optimization;
[0217] S3033, introduce transfer learning mechanism: use historical scheduling optimization experience as the initial knowledge of reinforcement learning; conduct transfer learning to quickly adapt to new environments based on the characteristics of different computing environments; continuously fine-tune the reinforcement learning model to ensure that it maintains excellent performance in changing environments;
[0218] S3034, multi-objective optimization and adaptive weight adjustment: optimize multiple performance indicators simultaneously, including response time, resource utilization and energy consumption; dynamically adjust the weight of each objective according to actual environmental requirements; adopt the Pareto optimization strategy to find the scheduling decision with the best overall performance.
[0219] Achieve continuous optimization of scheduling strategies to ensure that the system can adapt to complex and changing computing environments.
[0220] Specifically, the scheduling strategy optimization algorithm under the reinforcement learning framework is:
[0221] Let the system state be s∈S, the scheduling decision be a∈A, and the performance index be r. The deep Q learning algorithm is used for optimization. The core formula is as follows: Q(s,a)=r+γ*max_a'Q(s',a')
[0222] Where: Q(s,a) represents the expected future reward obtained by taking decision a in state s, r represents the immediate reward obtained by the current decision a, γ is the discount factor used to balance the current reward and future reward, s' represents the next state to which the system transfers after taking decision a, and a' represents all the decisions that can be selected in state s';
[0223] The algorithm steps are as follows:
[0224] Initialize the Q function network parameters θ;
[0225] Select decision a based on the current state s and the ε-greedy strategy;
[0226] Execute decision a, observe and obtain immediate reward r and next state s';
[0227] Calculate the target Q value: y = r + γ * max_a'Q (s', a'; θ);
[0228] Update the Q function network parameters θ so that Q(s,a;θ) approaches the target Q value y;
[0229] Store (s,a,r,s') into the experience pool;
[0230] Sample mini-batch data from the experience pool and continuously optimize the Q function.
[0231] It is integrated with meta-heuristic algorithms (such as genetic algorithms) to explore the scheduling strategy space more extensively. At the same time, a transfer learning mechanism is introduced to use historical optimization experience to quickly adapt to the new computing environment. Through multi-objective optimization and adaptive weight adjustment, multiple performance indicators of the system can be taken into account.
[0232] The algorithm has strong adaptability and optimization capabilities, can continuously improve the performance of scheduling strategies, and adapt to complex and changing computing environments.
[0233] Summary, dynamic state management is adopted, which abandons the traditional static scheduling mode and can better adapt to complex and changeable computing environments; differentiated scheduling strategies are introduced, and targeted priority management and resource allocation are adopted for different types of tasks, which improves the overall system performance; reinforcement learning technology is combined to achieve adaptive scheduling strategy optimization, which has strong self-learning ability and adaptability; heterogeneous resource scheduling is supported, which can be widely used in complex heterogeneous environments such as cloud computing and edge computing;
[0234] Higher resource utilization and system response speed, the dynamic state management strategy can make full use of idle resources and improve the overall system performance; stronger adaptability, the scheduling algorithm based on reinforcement learning can continuously optimize the scheduling strategy and adapt to the complex and changeable computing environment; better heterogeneous resource scheduling capabilities, support differentiated scheduling strategies, suitable for complex heterogeneous environments such as cloud computing and edge computing; better scalability and mobility, flexible system design, can be widely used in various automated scheduling scenarios.
[0235] The above shows and describes the basic principles and main features of the present invention and the advantages of the present invention. It is obvious to those skilled in the art that the present invention is not limited to the details of the above exemplary embodiments, and the present invention can be implemented in other specific forms without departing from the spirit or basic features of the present invention. Therefore, no matter from which point of view, the embodiments should be regarded as exemplary and non-restrictive. The scope of the present invention is defined by the attached claims rather than the above description, and it is intended that all changes falling within the meaning and scope of the equivalent elements of the claims are included in the present invention. Any figure mark in the claims should not be regarded as limiting the claims involved.
[0236] In addition, it should be understood that although the present specification is described according to implementation modes, not every implementation mode contains only one independent technical solution. This description of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment may also be appropriately combined to form other implementation modes that can be understood by those skilled in the art.
Claims
1. A method for managing application status of a dispatching automation system, characterized in that: The method steps include the following: S1. Dynamic task status management: S101, real-time monitoring of dynamic status indicators of various computing tasks; S102. Develop differentiated priority management strategies based on the different characteristics of task types; For delay-sensitive real-time tasks, increase their priority to shorten response time; For throughput-sensitive batch processing tasks, lower their priority to improve concurrent processing capabilities; S103. Dynamically adjust task priorities to ensure that key tasks are executed first; S2. Dynamic resource status management: S201, continuously monitoring dynamic status indicators of various computing resources, where the dynamic status indicators include utilization and load conditions; S202, dynamically adjusting the resource allocation plan according to the resource status; For idle resources with low resource utilization, some low-priority tasks are appropriately allocated for temporary use to improve the overall resource utilization efficiency; idle resources with low resource utilization refer to resources whose resource utilization is lower than the preset resource utilization; Select resources for scheduling different types of tasks based on the performance characteristics of different resources; S203, dynamically optimizing resource allocation to ensure that the overall resource utilization of the system is continuously improved; S3, adaptive scheduling strategy optimization: S301. Introduce an adaptive scheduling algorithm based on reinforcement learning to continuously learn and accumulate various feedback data during the scheduling process; S302, dynamically adjusting scheduling model parameters based on the learned scheduling experience to further improve scheduling efficiency and system performance; S303. Continuously optimize the scheduling strategy to ensure that the system can adapt to complex and changing computing environments.
2. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: Dynamic status indicators include execution progress, estimated completion time, resource usage, task priority, task dependencies, and task operating environment; The task execution progress includes the amount of calculation completed and the time consumed; The estimated completion time includes the estimated completion time based on the historical execution pattern and current execution progress of the task; Resource usage includes the CPU, memory, and network bandwidth currently occupied by the task; Task priorities include the relative priorities of different types of tasks; Task dependencies include the pre- and post-dependencies between tasks; The task running environment includes the operating system and the software and hardware environment.
3. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S101, the specific method steps for real-time monitoring of dynamic status indicators of various computing tasks are as follows: S1011, establishing a task monitoring module: collecting the operation data of various computing tasks in real time through the system API or monitoring agent; The collected data includes task ID, task type, task status, execution progress, and estimated completion time; S1012, regularly collect task status data: set a collection cycle to collect task status data once every minute; The collected data is stored in a time series database for historical data analysis; S1013, real-time calculation of task dynamic indicators: based on the collected original task data, real-time calculation of task dynamic status indicators; S1014, reporting task status changes: when the task status changes, report it to the scheduling management module in real time; The scheduling module dynamically adjusts task priorities and resource allocation strategies accordingly.
4. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S102, differentiated priority management strategies are formulated according to different characteristics of task types. The specific method steps include the following: S1021, Task Classification and Characteristics Analysis: Identify and classify various types of computing tasks in the scheduling automation system, including real-time tasks, batch tasks, and periodic tasks; Analyze the characteristics of various tasks, including the delay sensitivity of real-time tasks and the throughput sensitivity of batch tasks; S1022, establish priority classification standards: set different priority classification standards according to the characteristics of the tasks; For throughput-sensitive batch processing tasks, set a relatively low priority threshold to balance resource competition between them and other tasks in the system; S1023, task priority setting: for each task, an initial priority is set for it according to its type, urgency and resource requirement factors combined with the priority classification criteria; The initial priority setting should take into account the importance and urgency of the task to ensure that critical tasks can obtain sufficient resource support; S1024, dynamic adjustment of priority: during system operation, real-time monitoring of dynamic status indicators of various tasks, including execution time and resource occupancy rate; According to the monitoring results and combined with the task priority setting rules, the priority of the task is dynamically adjusted; S1025, priority conflict resolution: when multiple tasks require high-priority resources at the same time, a priority conflict resolution mechanism is developed; Comprehensively evaluate and prioritize tasks based on task urgency, resource requirements, and system load factors; S1026, Strategy Optimization and Update: Regularly evaluate and optimize the priority management strategy, and adjust the priority classification standards and task priority setting rules according to the system operation status and changes in task requirements.
5. The method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S201, the dynamic status indicators of various computing resources are continuously monitored by taking the following specific method steps: S2011, Establish a resource monitoring system: deploy specialized monitoring software or agent programs to continuously collect resource utilization data on each computing node; Monitoring metrics include CPU utilization, memory usage, network throughput, and disk I / O; S2012, real-time acquisition of resource status data: periodically pulling resource status data of each computing node from the monitoring system through an API or a data interface; Use push or pull methods to select the appropriate data collection method based on actual needs; S2013, aggregation and analysis of resource status: aggregation and analysis of the collected resource status data to calculate the overall utilization of various computing resources; Use various data analysis and visualization techniques, including time series analysis and anomaly detection, to discover trends and anomalies in resource utilization; S2014, cache and update resource status: store the analyzed resource status data in a cache or database for query and use at any time; Regularly update resource status data to ensure the timeliness and accuracy of the data; S2015, provide resource status query interface: provide resource status query API or interface in the scheduling system, so that the scheduling algorithm can obtain the required resource information at any time; Provide resource status data of various granularities and dimensions according to the requirements of the scheduling algorithm.
6. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S202, the resource allocation scheme is dynamically adjusted according to the resource status by taking the following specific steps: S2021, real-time acquisition of resource status data: real-time acquisition of dynamic indicators of resource utilization and load conditions of each computing node from the established resource monitoring system; ensure the real-time and accuracy of data to provide a basis for subsequent resource adjustments; S2022, analyzing resource utilization: analyzing the acquired resource status data to identify imbalanced resource utilization in the current system; S2023, formulate resource adjustment plan: formulate corresponding resource adjustment plan according to the resource utilization analysis results, mainly including: migrating some low-priority tasks from high-load nodes to low-load nodes to balance resource utilization; appropriately assigning some low-priority tasks to idle nodes with low resource utilization to improve overall resource utilization; scheduling different tasks to the most suitable resource nodes for execution according to their characteristics; S2024, perform resource adjustment: implement the above resource adjustment plan to achieve dynamic optimization of resources by dynamically migrating tasks or reallocating resources. The impact of task migration on system performance needs to be considered to minimize interference with services. S2025, monitor adjustment effects: continuously monitor the execution effect of the resource adjustment plan to check whether resource utilization is more balanced and whether overall performance is optimized; Based on the monitoring results, fine-tune the resource adjustment strategy in a timely manner to ensure that the system can continue to maintain a good resource utilization status.
7. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S301, the specific method steps for the reinforcement learning algorithm to continuously learn and accumulate various feedback data in the scheduling process include the following: S3011, establish a task execution environment model: define the task state space S, including task type, priority, and resource requirements; Define the system resource state space R, including the available resources such as CPU, memory, network bandwidth, etc. Define the task scheduling action space A, including raising / lowering priority and allocating / reclaiming resources; S3012, Design of reinforcement learning intelligent scheduler: Use deep Q-learning algorithm as the learning model for scheduling strategy; Define the Q function Q(s,a) to represent the expected reward of taking action a in state s; S3013, reward function r(s,a,s') design: increase the reward for completing key tasks, reduce the penalty for task delays and resource waste, and balance the rewards and penalties for the overall performance of the system; S3014, training scheduling strategy model: initializing Q function parameters θ; In the simulation environment, the following steps are continuously performed: observe the current state s, select action a according to the ε-greedy strategy, execute action a, observe the next state s' and reward r; update the Q function parameter θ according to the Q-learning update rule; repeat the above process until the Q function converges; S3015, deploy adaptive scheduler: deploy the trained Q function model to the actual scheduling system; Monitor system status online and select the optimal scheduling action in real time based on the current status; Continuously collect task execution feedback and periodically fine-tune the Q function parameters to adapt to dynamic changes in the system; Algorithm formula: Q(s,a)=Q(s,a)+α*[r(s,a,s')+γ*max_a'Q(s',a')-Q(s,a)] Among them, Q is the function value, α is the learning rate, γ is the discount factor, ε is the exploration probability, s is the current state, describing the current attributes and conditions of the task and system resources, a is the current scheduling action taken, r is the reward function, s' is the next state transferred to after executing action a, and a' is the next scheduling action that can be taken in the next state s'.
8. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S302, the specific steps of dynamically adjusting the scheduling model parameters according to the learned scheduling experience are as follows: S3021, Data Collection and Analysis: Conduct in-depth analysis of various feedback data to understand the strengths and weaknesses of the current scheduling strategy and the key factors that can be improved; S3022, model parameter extraction: extract key model parameters in the scheduling strategy from the collected data, including task priority weights and resource allocation strategies; S3023, parameter optimization iteration: using the reinforcement learning adaptive algorithm, continuously trying to adjust the values of these key parameters and observing the changes in scheduling performance; Through multiple rounds of iterative optimization, we find the best parameter combination that can maximize scheduling efficiency and system performance; S3024, dynamic parameter update: dynamically update the optimized best parameter value to the scheduling model so that it can reflect the current best scheduling strategy in real time; As the computing environment changes, these parameters are continuously monitored and updated in a timely manner to ensure that the scheduling strategy can be continuously optimized; S3025, Performance Evaluation and Feedback: Apply the updated scheduling model to the actual scheduling process and continuously monitor system performance indicators; If you find that the performance does not meet your expectations, you need to go back to the data analysis and model optimization steps and continue to iterate and optimize.
9. A method for managing application status of a dispatching automation system according to claim 1, characterized in that: In step S303, the specific method steps for continuously optimizing the scheduling strategy are: S3031, dynamic scheduling optimization framework using reinforcement learning: introduces deep Q-learning reinforcement learning algorithm to continuously learn and optimize scheduling decisions; uses system status as algorithm input and scheduling decisions as algorithm output; uses system performance as reward signal to adaptively adjust algorithm parameters; S3032, Fusion Meta-heuristic Optimization Algorithm: Introduce the meta-heuristic algorithm of particle swarm optimization and combine it with reinforcement learning method; use meta-heuristic algorithm to explore a wider range of scheduling strategy space; The reinforcement learning algorithm is responsible for optimizing the current strategy to form collaborative optimization; S3033, introduce transfer learning mechanism: use historical scheduling optimization experience as the initial knowledge of reinforcement learning; conduct transfer learning to quickly adapt to new environments based on the characteristics of different computing environments; continuously fine-tune the reinforcement learning model to ensure that it maintains excellent performance in changing environments; S3034, multi-objective optimization and adaptive weight adjustment: optimize multiple performance indicators simultaneously, including response time, resource utilization and energy consumption; dynamically adjust the weight of each objective according to actual environmental requirements; adopt the Pareto optimization strategy to find the scheduling decision with the best overall performance.
10. A method for managing application status of a dispatching automation system according to claim 9, characterized in that: The scheduling strategy optimization algorithm under the reinforcement learning framework is: Let the system state be s∈S, the scheduling decision be a∈A, and the performance index be r. The deep Q learning algorithm is used for optimization. The core formula is as follows: Q(s,a)=r+γ*max_a'Q(s',a') Where: Q(s,a) represents the expected future reward obtained by taking decision a in state s, r represents the immediate reward obtained by the current decision a, γ is the discount factor used to balance the current reward and future reward, s' represents the next state to which the system transfers after taking decision a, and a' represents all the decisions that can be selected in state s'; The algorithm steps are as follows: Initialize the Q function network parameters θ; Select decision a based on the current state s and the ε-greedy strategy; Execute decision a, observe and obtain immediate reward r and next state s'; Calculate the target Q value: y = r + γ * max_a'Q (s', a'; θ); Update the Q function network parameters θ so that Q(s,a;θ) approaches the target Q value y; Store (s,a,r,s') into the experience pool; Sample mini-batch data from the experience pool and continuously optimize the Q function.
Citation Information
Cited By
Parallel processing architecture optimization method and system of test equipment
CN119537036A
A parallel processing architecture optimization method and system for testing equipment
CN119537036B
Processor low-power-consumption state switching method based on RISC-V server platform
CN119576108A
Distributed management system and method for cloud container cluster
CN119728592A
Multi-port test equipment resource allocation management system and method
CN119781989A