Intelligent self-adaptive real-time task scheduling method and system based on multi-dimensional optimization

Through the multi-dimensional optimization intelligent adaptive real-time task scheduling method, combined with multi-factor dynamic priority scheduling, adaptive acceleration factor management and load balancing, the problems of parallelism reduction and load imbalance in the existing technology are solved, and the problem of task scheduling is improved. Resource utilization and system performance.

CN119292742APending Publication Date: 2025-01-10NANJING HOWSO TECH

Patent Information

Application Number
CN202411330769.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2025-01-10

AI Technical Summary

Technical Problem

The task scheduling methods in existing real-time systems are difficult to adapt to the multi-core processor environment, resulting in reduced parallelism, unbalanced processor load, insufficient accuracy of static or dynamic scheduling, lack of coordination mechanisms, and unable to effectively improve resource utilization.

Method used

Using intelligent adaptive real-time task scheduling method based on multi-dimensional optimization, the scheduling strategy is realized through task decomposition, multi-factor dynamic priority scheduling, adaptive acceleration factor management, load balancing and hybrid scheduling determination, combined with static and dynamic analysis. collaborative optimization.

Benefits of technology

It significantly improves system resource utilization, scheduling flexibility and response speed, optimizes system performance and throughput, enhances system robustness and energy consumption management, and achieves more efficient resource utilization and task scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119292742A_ABST
    Figure CN119292742A_ABST
Patent Text Reader

Abstract

The invention discloses an intelligent self-adaptive real-time task scheduling method and system based on multi-dimensional optimization. The method comprises the following steps: S1, inputting a task; s2, a DAG task is decomposed into independent sequential sub-tasks; s3, dynamically calculating the priorities of the tasks by adopting a multi-factor dynamic priority scheduling module, and updating the priorities of the tasks; s4, dynamically adjusting an acceleration factor by adopting a self-adaptive acceleration factor management module; s5, vertex correlation analysis is carried out, and a variance of processor load imbalance is calculated by adopting a load balanced distribution algorithm and is minimized; s6, in combination with static analysis and dynamic inspection, a hybrid schedulability judgment module is adopted to judge the tasks, and judgment results are fused; and S7, fusing decisions by adopting a decision fusion algorithm, obtaining a scheduling strategy through a scheduling strategy coordinator, executing the task, and monitoring the task in real time. Real-time monitoring and real-time optimization scheduling are realized, and the utilization rate of resources is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of computer technology, and in particular relates to a method and system for intelligent adaptive real-time task scheduling based on multi-dimensional optimization. Background Art

[0002] At present, task scheduling in real-time systems is the key to ensuring system performance and reliability. With the popularity of multi-core processors, multi-processor real-time scheduling has become a research hotspot. The directed acyclic graph (DAG) task model can effectively represent complex tasks with internal parallelism, so it is widely used in modern real-time systems.

[0003] The DAG stretching algorithm proposed by existing researchers is the technical solution closest to the present invention. The main steps of this method are as follows: a) Task decomposition: decompose the DAG task into a series of segments; b) DAG stretching: stretch the critical path to the task deadline, and fill the subtasks of the non-critical path into the slack time; c) Priority allocation: use the global earliest deadline first (G-EDF) algorithm to assign priorities to subtasks; d) Scheduling execution: execute tasks on a multi-processor platform according to the assigned priorities. The DAG stretching algorithm in this technical solution may over-split subtasks, resulting in reduced parallelism; fixed priority algorithms such as G-EDF are difficult to adapt to changes in dynamic task characteristics; and static acceleration factors are used, which cannot be dynamically adjusted according to system load; the recovery method does not consider load balancing, which may lead to uneven processor load; the accuracy of a single static or dynamic schedulability determination method is insufficient; each optimization module works independently and lacks a coordination mechanism.

[0004] Chinese patent document CN 111984381 A discloses a Kubernetes resource scheduling optimization method based on historical data prediction, which adopts a combined model that can best play the advantages of the ARIMA model and the RBF neural network model as the final prediction model. By collecting the historical resource usage library of applications running on the container manager Kubernetes platform, and then establishing a model to predict the resource usage in a certain period of time in the future, these predicted data are finally applied to the resource dynamic scheduling module and monitoring module in the scheduling design. This technical solution mainly optimizes scheduling based on historical data, and does not use real-time feedback data from real-time monitoring.

[0005] Chinese patent document CN 118172605 A discloses a method for optimizing the flexible resource aggregation standby scheduling of distributed energy storage clusters, including: obtaining discharge loss recovery data, calculating the discharge loss recovery data packet considering the flexible resources of the distributed energy storage cluster from the discharge loss recovery data of each distributed energy storage group; determining the discharge loss recovery flexibility of each distributed energy storage group through a macro scheduler, and transmitting the standby discharge capacity value corresponding to each distributed energy storage group to the aggregator of each distributed energy storage group; realizing scheduling optimization considering the flexible resources of the distributed energy storage cluster through calculation and allocation. This technical solution mainly performs resource scheduling through discharge loss and recovery data.

[0006] Therefore, it is necessary to provide a method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization to improve resource utilization. Summary of the invention

[0007] The technical problem to be solved by the present invention is to provide a method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization, for multi-factor dynamic priority scheduling, and dynamically adjust the acceleration factor, combining dynamic analysis and static analysis, and each optimization module works independently and coordinates scheduling to obtain the optimal scheduling strategy, thereby improving resource utilization.

[0008] In order to solve the above technical problems, the technical solution adopted by the present invention is: the method of intelligent adaptive real-time task scheduling based on multi-dimensional optimization specifically comprises the following steps:

[0009] S1: Input task, receive and parse DAG task description through task input module;

[0010] S2: Decompose the DAG task into independent sequential subtasks to maintain parallel execution capabilities;

[0011] S3: Use a multi-factor dynamic priority scheduling module to dynamically calculate the priority of the task and update the priority of the task;

[0012] S4: Adopt the adaptive acceleration factor management module to dynamically adjust the acceleration factor, optimize the scheduling performance, and output the acceleration factor adjustment suggestions;

[0013] S5: Perform vertex association analysis, and use a load balancing algorithm to calculate the variance of processor load imbalance and minimize it to maintain vertex integrity;

[0014] S6: Combine static analysis and dynamic inspection to use a hybrid schedulability determination module to determine the tasks separately, and merge the determination results;

[0015] S7: Use decision fusion algorithm to fuse the decisions, obtain the scheduling strategy through the scheduling strategy coordinator, execute the task, and monitor the task in real time, and then transmit the real-time monitoring data to the scheduling strategy coordinator for real-time optimization.

[0016] By adopting the above technical solution, the received tasks are DAG parsed, and then the parallel decomposition method is adopted to maintain the original parallelism while decomposing the tasks, thereby improving the utilization of system resources; a multi-factor dynamic priority scheduling mechanism is designed to improve scheduling flexibility and task response speed; an adaptive acceleration factor management method is developed to optimize system performance and throughput, and dynamically adjust the system load; a load-balancing vertex recovery technology is proposed to achieve load balancing while restoring vertex integrity; a hybrid schedulability determination framework is designed, combining static analysis and dynamic inspection to improve determination accuracy; and a scheduling strategy coordinator is developed to realize multi-module collaborative work and achieve the global optimal scheduling effect.

[0017] Preferably, the specific steps of step S1 are: using XML format to describe the DAG task, including node information, edge information, execution time and deadline, etc.; then designing an XML parser, and converting the task information into an internal data structure through the XML parser.

[0018] This internal data structure, namely the adjacency list, contains the following information: (1) Node list: stores the ID, execution time, deadline and other attributes of each task node; (2) Edge list: for each node, stores the ID list of its direct successor nodes; (3) In-degree array: records the in-degree (number of predecessor nodes) of each node; (4) Out-degree array: records the out-degree (number of successor nodes) of each node.

[0019] Preferably, the specific steps of step S2 are:

[0020] S21: Receive the input DAG task, use the improved critical path method (CPM) to calculate the earliest start time EST and the latest start time LST of each node; then use the parallelism analysis algorithm to calculate the parallelism of each node; the calculation formula is:

[0021] Computational parallelism = (LST-EST) / execution time;

[0022] S22: Adopt subtask reorganization algorithm, based on parallelism, use hierarchical clustering method to group nodes, and maintain the original dependency relationship within each group, and output the reorganized subtask set.

[0023] The parallelism-preserving decomposition method in this technical solution improves the DAG stretching algorithm proposed by Qamhieh et al. (2014). By maintaining the parallelism of subtasks, it avoids the problem of over-splitting of subtasks in the original algorithm. The parallelism-preserving decomposition method and load-balanced vertex recovery technology significantly improve the utilization of system resources. The problem of over-splitting of subtasks in the original algorithm is avoided; compared with the traditional DAG task scheduling method, the resource utilization rate is improved by 15% on average. Under high load conditions (system load exceeds 80%), the resource utilization rate can be improved by up to 20%.

[0024] Preferably, the specific steps of step S3 are:

[0025] S31: Initialize the weight and use a multi-dimensional scoring function to score the priority of the task, that is, calculate the initial priority score of each subtask; the calculation formula is: priority score = w1*(1 / deadline)+w2*execution progress+w3*resource utilization, where w1, w2, and w3 are weight coefficients, which are adjusted dynamically;

[0026] S32: A threshold is set according to the calculated priority score. When the new priority score is greater than the old priority score by a larger amount than the set threshold, an update mechanism is triggered to perform an update.

[0027] In the above technical solution, a multi-dimensional scoring function is introduced to comprehensively consider the deadline, execution progress and resource utilization; a method for dynamically adjusting weight coefficients is used, and a threshold-based priority update trigger mechanism is used; the traditional EDF (earliest deadline first) algorithm of the multi-factor dynamic priority scheduling mechanism is adopted, so that the system can better respond to changes in task characteristics, enhance scheduling flexibility, and shorten task response time by an average of 20%, especially for tasks with strong bursts, the response time can be shortened by up to 35%. Compared with the fixed priority algorithm, the dynamic adjustment capability is improved by 40%, which is reflected in the increase in the number of priority adjustments and the improvement in adjustment accuracy.

[0028] Preferably, the specific steps of step S4 are:

[0029] S41: Perform real-time performance monitoring and collect system data, including system load, task completion rate, and response time; pre-process the collected data, i.e., use a sliding window algorithm to smooth the data;

[0030] S42: Initialize the acceleration factor, use a reinforcement learning model (such as Q-learning), input the preprocessed data into the reinforcement learning model, use the acceleration factor adaptive algorithm, output the acceleration factor adjustment suggestion, the system adjusts the acceleration factor according to the adjustment suggestion and evaluates the performance, feeds the evaluation result back to the monitoring component, and starts a new round of optimization; the reinforcement learning model Q-learning update formula is:

[0031] Q(s,a)←Q(s,a)+α[r+γmaxQ(s',a')-Q(s,a)];

[0032] Where s is the current state; a is the action taken in the current state; r is the immediate reward obtained after executing action a; α is the learning rate; γ is the discount factor; s' is the new state reached after executing action a; a' is the (possible) action taken in the new state s'; maxQ(s',a') is the maximum Q value of all (possible) actions a' in the new state s'. The adjustment suggestion includes a state space, an action space, and a reward function. The state space includes system load, task completion rate, and current acceleration factor. The action space includes increasing / decreasing acceleration factor. The reward function includes the degree of improvement based on system performance.

[0033] In this system, state s includes the current system load, task completion rate and current acceleration factor; action a includes increasing or decreasing the acceleration factor; the new state s' is the new state of the system after the action is executed; and a' is the next action that the system may take in the new state. The multi-factor dynamic priority scheduling mechanism is an extension of the research of Chen and Chakraborty (2011). It improves the static acceleration factor into a dynamic adaptive mechanism. The adaptive acceleration factor management method adopted enables the system to maintain high efficiency under different loads and optimizes the performance of the system; reinforcement learning (Q-learning) is used to dynamically adjust the acceleration factor; the system state, action and reward function are applied to real-time task scheduling scenarios; the average throughput is increased by 25%, and the performance can be improved by 40% in scenarios with large load fluctuations. The task completion rate is 15% higher than the traditional method under high load conditions (more than 90%). Through more efficient resource utilization and task scheduling, the overall energy consumption of the system is reduced; under the same throughput, it saves 12% of energy consumption compared with the traditional method; under low load conditions (system load is less than 30%), energy consumption can be saved by 20% through intelligent scheduling.

[0034] Preferably, the specific steps of step S5 are:

[0035] S51 Vertex Association Analysis: First, the load-balanced vertex recovery module is used to perform vertex association analysis, build a vertex association graph, and then use depth-first search (DFS) to identify strongly connected components;

[0036] S52 load balancing allocation algorithm: Use the improved simulated annealing algorithm to obtain the objective function, calculate the variance of the processor load imbalance, then minimize the variance of the processor, and pass the constraint conditions to maintain vertex integrity.

[0037] The load-balanced vertex recovery technology improves the vertex recovery method proposed by Saifullah et al. (2013). It introduces load balancing considerations in the vertex recovery process and uses an improved simulated annealing algorithm for load balancing optimization, thereby achieving load balancing while restoring vertex integrity.

[0038] Preferably, the specific steps of step S6 are:

[0039] S61: Use the improved response time analysis (RTA) method to perform static analysis to obtain the parallelism and dependencies between tasks;

[0040] S62: Perform dynamic inspections to monitor task execution in real time and use a sliding window algorithm to predict future task execution;

[0041] S63: Use the Bayesian reasoning method to fuse the determination results to obtain a schedulability determination result. The Bayesian reasoning method formula is: P(schedulability|static analysis, dynamic check)=P(static analysis, dynamic check|schedulability)*P(schedulability) / P(static analysis, dynamic check).

[0042] The calculation formula of the improved RTA method is:

[0043]

[0044] Where: R_i is the response time of task i; C_i is the worst case execution time of task i; hp(i) is the set of tasks with higher priority than task i; T_j is the period of task j; B_i is the maximum blocking time that task i may suffer; I_i(R_i^k) is the interference time caused by parallel execution within the time window R_i^k;

[0045] The formula for parallelism analysis is: P_i = max(0, (D_i-R_i) / C_i);

[0046] The formula for dependency analysis is: Dep(i,j)=1,iftaskj depends on task i Dep(i,j)=0,otherwise;

[0047] Where: P_i is the parallelism of task i; D_i is the deadline of task i; Dep(i,j) represents the dependency between tasks i and j; by iteratively calculating R_i until convergence, the worst-case response time of each task can be obtained; combining parallelism analysis and dependency analysis, the characteristics of the task set can be comprehensively evaluated to provide a basis for subsequent scheduling decisions.

[0048] The core formula of the sliding window algorithm is:

[0049] Predicted value P(t+1)=∑(i=0to w-1)[α_i*E(ti)] / ∑(i=0to w-1)α_i;

[0050] Where: P(t+1) is the predicted value at the next moment; E(ti) is the i-th historical execution time in the window; w is the sliding window size; α_i is the weight factor, usually α_i = (wi) / w, giving higher weight to recent data;

[0051] The formula for estimating the probability of task overtime is: PTO(t+1)=1-exp(-max(0,P(t+1)-D) / σ);

[0052] Where: PTO(t+1) is the probability of task timeout at the next moment; D is the deadline of the task; σ is the standard deviation of the task execution time, calculated based on the historical data in the window;

[0053] The formula for dynamically adjusting the window size is: w(t+1)=w(t)+β*(PTO(t)-PTO_target);

[0054] Where: w(t+1): the window size at the next moment; w(t) is the current window size; β is the adjustment coefficient;

[0055] PTO_target is the target timeout probability;

[0056] Through these formulas, the sliding window algorithm can predict the execution of future tasks based on historical execution data and dynamically adjust the window size to adapt to system changes. The predicted value P(t+1) and the timeout probability PTO(t+1) will be used as key indicators for dynamic inspection to evaluate the schedulability of tasks.

[0057] This hybrid schedulability determination framework combines the static analysis method of Baruah et al. (2010) and the dynamic checking method of Baker et al. (2008) to achieve the combination of static analysis and dynamic checking, and integrates the judgment results of static analysis and dynamic checking to finally obtain the schedulability judgment result and improve the judgment accuracy.

[0058] Preferably, the specific steps of step S7 are:

[0059] S71: Use the publish-subscribe model, define standardized message formats (such as JSON), and design inter-module communication protocols;

[0060] S72: using a multi-objective genetic algorithm, using a binary string of task-processor allocation for encoding to obtain maximum resource utilization, minimum response time, and maximum schedulability, and obtaining an optimal scheduling strategy;

[0061] S73: creating multiple execution threads corresponding to multiple processor cores, so as to allocate and execute tasks according to an optimal scheduling strategy;

[0062] S74: Monitors system performance indicators in real time, collects data using lightweight probe technology, implements a ring buffer to store historical data, uses a moving average method to smooth data, and then transmits the real-time monitoring data to the scheduling strategy coordinator for real-time optimization.

[0063] Design the communication protocol between modules to achieve overall optimization, use multi-objective genetic algorithm for decision fusion, use multi-threading technology, each processor corresponds to an execution thread, realize the task queue and task switching mechanism; use semaphore to achieve task synchronization; through multi-module collaboration, the system can better cope with complex and dynamically changing task environments, and improve the robustness of the system. In the case of sudden changes in task parameters (such as a sudden increase in execution time of 50%), the system recovery time is shortened by 30% compared with traditional methods. The adaptability to newly added tasks is improved, and the original scheduling plan can be quickly adjusted, and the adjustment time is shortened by 40% on average.

[0064] Preferably, the specific steps of the multi-objective genetic algorithm in step S72 are:

[0065] S721: First, collect the output of each module and initialize the population.

[0066] S722: Then, a multi-objective genetic algorithm is used to sequentially perform fitness evaluation, selection, crossover, and mutation operations, and the fitness evaluation, selection, crossover, and mutation operations are repeated until a termination condition is met;

[0067] S723: Finally, the optimal scheduling strategy is output and the task execution module is started.

[0068] The technical problem to be solved by the present invention is to provide an intelligent adaptive real-time task scheduling system based on multi-dimensional optimization to improve resource utilization.

[0069] In order to solve the above technical problems, the technical solution adopted by the present invention is: the intelligent adaptive real-time task scheduling system based on multi-dimensional optimization includes a task input module, a parallel maintenance decomposition module, a multi-factor dynamic priority scheduling module, an adaptive acceleration factor management module, a load balancing vertex recovery module, a hybrid schedulability determination module, a scheduling strategy coordinator, a task execution module and a performance monitoring module. The task input module, the parallel maintenance decomposition module, the multi-factor dynamic priority scheduling module, the adaptive acceleration factor management module, the load balancing vertex recovery module, the hybrid schedulability determination module, the scheduling strategy coordinator, the task execution module and the performance monitoring module form data connections in sequence, and the performance monitoring module then transmits the real-time monitoring data to the scheduling strategy module, thereby forming a closed-loop real-time task scheduling system.

[0070] The task input module is used to receive and parse the DAG task description, the parallel maintenance decomposition module is used to decompose the DAG task into independent sequential subtasks to maintain parallel execution capabilities; the multi-factor dynamic priority scheduling module is used to dynamically calculate the priority score of the task and update the task priority; the adaptive acceleration factor management module is used to dynamically adjust the acceleration factor to optimize the scheduling performance; the load balancing vertex recovery module is used to ensure vertex integrity while minimizing the load imbalance between processors; the hybrid schedulability determination module is used to combine static analysis and dynamic inspection to improve the accuracy of determination; the scheduling strategy coordinator is used to coordinate the management of various modules, obtain the optimal scheduling strategy, achieve overall optimization, and execute tasks according to the optimal scheduling strategy; the performance monitoring module is used to monitor the system performance data in real time, and transmit the obtained monitoring data to the scheduling strategy coordinator. The above technical solution is integrated into a complete scheduling system to form a real-time optimization scheduling framework system with closed-loop feedback.

[0071] The system significantly improves the utilization of system resources through parallel-keeping decomposition method and load-balancing vertex recovery technology; the multi-factor dynamic priority scheduling mechanism enables the system to better cope with changes in task characteristics, which is manifested in the increase in the number of priority adjustments and the improvement of adjustment accuracy. The hybrid schedulability judgment framework improves the accuracy and real-time performance of the judgment; the adaptive acceleration factor management method enables the system to maintain high efficiency under different loads; the collaborative work of multiple modules enables the system to better cope with complex and dynamically changing task environments; through more efficient resource utilization and task scheduling, the overall energy consumption of the system is reduced; the modular design makes the system easy to expand and optimize. The time cost of adding new scheduling strategies or optimizing algorithms is reduced by 50%.

[0072] The modular design and standardized interface of the system reduce the difficulty of development and maintenance. The development cycle of new functions is shortened by an average of 30%. The system fault diagnosis time is reduced by 40%, mainly due to the independence of each module and the clear interaction mechanism. The system can better adapt to different types of task sets and hardware environments.

[0073] Compared with the prior art, the present invention has the following beneficial effects:

[0074] (1) Improve system resource utilization: Through the parallel-preserving decomposition method and load-balanced vertex recovery technology, the present invention significantly improves system resource utilization; compared with the traditional DAG task scheduling method, the resource utilization is improved by an average of 15%; under high load conditions (system load exceeds 80%), the resource utilization can be improved by up to 20%;

[0075] (2) Enhanced scheduling flexibility: The multi-factor dynamic priority scheduling mechanism enables the system to better respond to changes in task characteristics; the task response time is shortened by 20% on average, and for tasks with strong bursts, the response time can be shortened by up to 35%; compared with the fixed priority algorithm, the dynamic adjustment capability is improved by 40%, which is reflected in the increase in the number of priority adjustments and the improvement in adjustment accuracy;

[0076] (3) Improved schedulability: The hybrid schedulability judgment framework improves the accuracy and real-time performance of the judgment. The range of schedulable task sets is expanded by about 10% compared with the traditional method. The false positive rate (judging an unschedulable task as schedulable or vice versa) is reduced from 5% of the traditional method to 1.5%;

[0077] (4) Optimizing system performance: The adaptive acceleration factor management method enables the system to maintain high efficiency under different loads. The average throughput is increased by 25%, and the performance can be improved by 40% in scenarios with large load fluctuations. The task completion rate is 15% higher than the traditional method under high load conditions (above 90%);

[0078] (5) Enhanced system robustness: Multiple modules work together to enable the system to better cope with complex and dynamically changing task environments. In the event of a sudden change in task parameters (such as a 50% increase in execution time), the system recovery time is 30% shorter than traditional methods. The adaptability to new tasks is improved, and the original scheduling plan can be quickly adjusted, with an average adjustment time of 40% shorter;

[0079] (6) Reduced energy consumption: Through more efficient resource utilization and task scheduling, the overall energy consumption of the system is reduced. At the same throughput, it saves 12% energy compared to traditional methods. Under low load conditions (system load below 30%), energy savings can reach 20% through intelligent scheduling;

[0080] (7) Improved scalability: The modular design makes the system easy to expand and optimize. The time cost of adding new scheduling strategies or optimization algorithms is reduced by 50%. The scalability of system performance increases with the number of processors. When expanding from 8 cores to 32 cores, the performance improvement is close to linear (reaching 92% of the ideal situation);

[0081] (8) Optimize development and maintenance efficiency: The modular design and standardized interface of the system reduce the difficulty of development and maintenance. The new function development cycle is shortened by an average of 30%. The system fault diagnosis time is reduced by 40%, mainly due to the independence of each module and the clear interaction mechanism;

[0082] (9) Enhanced adaptability: The system can better adapt to different types of task sets and hardware environments. In heterogeneous computing environments, compared with traditional methods, the difference in task completion time is reduced by 25%, showing better load balancing capabilities. For scenarios with a mixture of periodic and non-periodic tasks, the scheduling efficiency is improved by 35%. BRIEF DESCRIPTION OF THE DRAWINGS

[0083] Figure 1 The overall system architecture of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0084] Figure 2 It is a parallel maintenance decomposition flow chart in step S2 of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0085] Figure 3 It is a flow chart of the adaptive acceleration factor management module in step S3 of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0086] Figure 4 It is a flow chart of the hybrid schedulability determination module of step S6 in the method of intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0087] Figure 5 It is a decision flow chart of the scheduling strategy coordinator in step S7 of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0088] Figure 6 The resource utilization comparison diagram in the method of intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention, wherein (a) is when the load is low; (b) is when the load is medium; (c) is when the load is high;

[0089] Figure 7 A comparison chart of scheduling flexibility in the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0090] Figure 8A comparison diagram of the adjustability of the hybrid schedulability determination framework in step S6 of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0091] Fig. 9 A comparison diagram of system performance optimization after the adaptive acceleration factor management method in step S4 is adopted in the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention;

[0092] Fig.10 This is a scalability comparison chart of the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization of the present invention. DETAILED DESCRIPTION

[0093] The embodiments of the present invention are described in detail below in conjunction with the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solutions of the present invention and are not intended to limit the protection scope of the present invention.

[0094] Example: Figures 2 to 5 As shown, the method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization specifically includes the following steps:

[0095] S1: System initialization, system hardware environment: 4-core processor, main frequency 3GHz; software environment: Linux operating system, kernel version 5.10; initialize the parameters of each module; input tasks, receive and parse DAG task descriptions through the task input module;

[0096] The specific steps of step S1 are: describe the DAG task in XML format, including node information, edge information, execution time and deadline, etc.; then design an XML parser, and convert the task information into an internal data structure through the XML parser; the internal data structure, i.e., the adjacency list, includes the following information: (1) node list: stores the ID, execution time, deadline and other attributes of each task node; (2) edge list: for each node, stores the ID list of its direct successor node; (3) in-degree array: records the in-degree (number of predecessor nodes) of each node; (4) out-degree array: records the out-degree (number of successor nodes) of each node; in this embodiment, a real-time system including 10 DAG tasks is used, and the XML description files of 5 DAG tasks are first input;

[0097] The following is an example XML description of one of the DAG tasks:

[0098] <? xml version="1.0" encoding="UTF-8"? >

[0099] <dag-task id="task1">

[0100] <nodes>

[0101] <node id="1">

[0102] <execution-time> 10< / execution-time>

[0103]

[0104] <node id="2">

[0105] <execution-time> 15< / execution-time>

[0106]

[0107] <node id="3">

[0108] <execution-time> 20< / execution-time>

[0109]

[0110] < / nodes>

[0111] <edges>

[0112] <edge>

[0113] <source> 1

[0114] <target> 2< / target>

[0115] < / edge>

[0116] <edge>

[0117] <source> 1

[0118] <target> 3< / target>

[0119] < / edge>

[0120] < / edges>

[0121] <deadline> 100< / deadline>

[0122] <period> 200< / period>

[0123]

[0124] This XML describes a DAG task with 3 nodes. Node 1 is the start node, with an execution time of 10 time units. It has two child nodes: Node 2 and Node 3. The deadline of the task is 100 time units, and the period is 200 time units.

[0125] S2: Decompose the DAG task into independent sequential subtasks to maintain parallel execution capabilities;

[0126] like Figure 2 As shown, the specific steps of step S2 are:

[0127] S21: Receive the input DAG task, use the improved critical path method (CPM) to calculate the earliest start time EST and the latest start time LST of each node; then use the parallelism analysis algorithm to calculate the parallelism of each node; the calculation formula is:

[0128] Computational parallelism = (LST-EST) / execution time;

[0129] S22: adopting a subtask reorganization algorithm, based on the degree of parallelism, using a hierarchical clustering method to group the nodes, and maintaining the original dependency relationship within each group, and outputting a reorganized subtask set; in this embodiment, 25 subtasks are output;

[0130] S3: Use a multi-factor dynamic priority scheduling module to dynamically calculate the priority of the task and update the priority of the task;

[0131] The specific steps of step S3 are:

[0132] S31: Initialize the weight, use a multi-dimensional scoring function to score the priority of the task, that is, calculate the initial priority score of each subtask; the calculation formula is: priority score = w1*(1 / deadline)+w2*execution progress+w3*resource utilization, where w1, w2, and w3 are weight coefficients, which are adjusted dynamically; in this embodiment, the initial weights are: w1=0.5, w2=0.3, and w3=0.2;

[0133] S32: according to the calculated priority score, a threshold Δ is set, and when the new priority score is greater than the set threshold compared with the old priority score, an update mechanism is triggered to perform an update; that is, when |new priority score-old priority score|>Δ, the update mechanism is triggered;

[0134] The following is a pseudo-code implementation of the priority update mechanism:

[0135] Function updateTaskPriority(task, newPriorityScore):

[0136] Δ=0.1 / / Set threshold;

[0137] If |new priority score - task.old priority score|>Δ:

[0138] task.priority = calculateNewPriority(newPriorityScore);

[0139] Task.OldPriorityScore = NewPriorityScore;

[0140] Returns true / / indicates that the priority has been updated;

[0141] otherwise:

[0142] Returns false / / indicates that the priority is not updated;

[0143] The function calculates the new priority (priority score):

[0144] Returns rounded down (priority score * 10) / / maps the score to an integer range of 0-10;

[0145] / / Main loop;

[0146] For each task in the task list:

[0147] New priority score = w1*(1 / task.deadline)+w2*task.execution progress+w3*

[0148] Task.ResourceUtilization;

[0149] If updateTaskPriority(task, newPriorityScore):

[0150] reordertaskqueue();

[0151] This pseudocode example shows how to implement a priority update mechanism. It first calculates a new priority score and then compares it with the old priority score. If the difference exceeds the threshold Δ, the update mechanism is triggered to calculate a new priority and update the task information. If the priority changes, the task queue is also reordered; this implementation can dynamically adjust task priorities while avoiding frequent updates due to small fluctuations, thus achieving a balance between flexibility and stability;

[0152] S4: Adopt the adaptive acceleration factor management module to dynamically adjust the acceleration factor, optimize the scheduling performance, and output the acceleration factor adjustment suggestions;

[0153] like Figure 3 As shown, the specific steps of step S4 are:

[0154] S41: Perform real-time performance monitoring and collect system data, including system load, task completion rate, and response time; pre-process the collected data, i.e., use a sliding window algorithm to smooth the data;

[0155] S42: Initialize the acceleration factor, use a reinforcement learning model (such as Q-learning), input the preprocessed data into the reinforcement learning model, use the acceleration factor adaptive algorithm, output the acceleration factor adjustment suggestion, the system adjusts the acceleration factor according to the adjustment suggestion and evaluates the performance, feeds the evaluation result back to the monitoring component, and starts a new round of optimization; the reinforcement learning model Q-learning update formula is:

[0156] Q(s,a)←Q(s,a)+α[r+γmaxQ(s',a')-Q(s,a)];

[0157] Among them, s is the current state; a is the action taken in the current state; r is the immediate reward obtained after executing action a; α is the learning rate; γ is the discount factor; s' is the new state reached after executing action a; a' is the action that may be taken in the new state s'; maxQ(s',a') is the maximum Q value of all possible actions a' in the new state s'. The adjustment suggestion includes a state space, an action space, and a reward function. The state space includes the system load, the task completion rate, and the current acceleration factor. The action space includes increasing / decreasing the acceleration factor. The reward function includes the degree of improvement based on system performance. In this system, the state s includes the current system load, the task completion rate, and the current acceleration factor; the action a includes increasing or decreasing the acceleration factor; the new state s' is the new state of the system after the action is executed; and a' is the next action that the system may take in the new state. The adaptive acceleration factor management method adopted enables the system to maintain high efficiency under different loads and optimizes the performance of the system; reinforcement learning (Q-learning) is used to dynamically adjust the acceleration factor; the system state, action and reward function are applied to real-time task scheduling scenarios; the average throughput is increased by 25%, and the performance can be improved by 40% in scenarios with large load fluctuations. The task completion rate is 15% higher than the traditional method under high load conditions (more than 90%). Through more efficient resource utilization and task scheduling, the overall energy consumption of the system is reduced; at the same throughput, it saves 12% of energy compared with traditional methods; under low load conditions (system load is less than 30%), energy savings can reach 20% through intelligent scheduling;

[0158] S5: Perform vertex association analysis, and use the load balancing algorithm to calculate the variance of processor load imbalance and minimize it to maintain vertex integrity;

[0159] The specific steps of step S5 are:

[0160] S51 Vertex Association Analysis: First, the load-balanced vertex recovery module is used to perform vertex association analysis, build a vertex association graph, and then use depth-first search (DFS) to identify strongly connected components;

[0161] S52 Load balancing distribution algorithm: Use the improved simulated annealing algorithm to obtain the objective function, calculate the variance of the processor load imbalance, and then minimize the variance of the processor, and pass the constraint conditions to maintain the vertex integrity; in this embodiment, the initial temperature is 100 and the cooling rate is 0.95;

[0162] The following is a pseudo code implementation of the improved simulated annealing algorithm for load balancing distribution:

[0163] Function load balancing (task list, processor list):

[0164] current solution = initializetaskassignment();

[0165] Current temperature = 100;

[0166] Cooling rate = 0.95;

[0167] Minimum temperature = 0.01;

[0168] When current temperature > minimum temperature:

[0169] For i = 1 to the number of iterations:

[0170] New solution = generate neighborhood solution (current solution);

[0171] If accept (current solution, new solution, current temperature):

[0172] Current solution = new solution;

[0173] If the current solution is better than the optimal solution:

[0174] Optimal solution = current solution;

[0175] Current temperature*=cooling rate;

[0176] Return the optimal solution;

[0177] Function objective function (solution):

[0178] Load = calculate the load of each processor (solution);

[0179] variance = calculate_load_variance(load);

[0180] Vertex integrity penalty = calculate the degree of vertex integrity violation (solution);

[0181] Returns variance + penalty coefficient * vertex integrity penalty;

[0182] The function generates a neighborhood solution (current solution):

[0183] new solution = copy(current solution);

[0184] Randomly select a task;

[0185] Move the task to a different processor;

[0186] Return to new solution

[0187] The function accepts (current solution, new solution, temperature):

[0188] Δe = objective function (new solution) - objective function (current solution);

[0189] If Δe<0:

[0190] Return true;

[0191] otherwise:

[0192] Probability = exp(-Δe / temperature);

[0193] Return a random number (0,1) < probability;

[0194] Function to calculate the degree of vertex integrity violation (solution):

[0195] Violation = 0;

[0196] For each vertex:

[0197] If the vertex subtasks are not on the same processor:

[0198] Violation degree += 1;

[0199] Returns the degree of violation;

[0200] This pseudocode example shows how to use the improved simulated annealing algorithm to achieve load balancing. The core of the algorithm is to minimize the variance of the processor load by continuously adjusting the task allocation scheme while considering the constraints of vertex integrity. The main improvements include:

[0201] (1) A vertex integrity penalty term is added to the objective function to ensure that the algorithm maintains vertex integrity as much as possible while optimizing load balancing;

[0202] (2) When generating neighborhood solutions, the vertex integrity constraint is taken into account, and moves that do not violate vertex integrity are preferred;

[0203] (3) An adaptive temperature parameter is used in the acceptance criterion, which enables the algorithm to better balance exploration and utilization during the search process; this implementation method can effectively balance the requirements of load balancing and vertex integrity, and at the same time, through the characteristics of the simulated annealing algorithm, there is a high probability of finding the global optimal solution;

[0204] S6: Combine static analysis and dynamic inspection to use a hybrid schedulability determination module to determine the tasks separately, and merge the determination results;

[0205] like Figure 4 As shown, the specific steps of step S6 are:

[0206] S61: Use the improved response time analysis (RTA) method to perform static analysis to obtain the parallelism and dependency between tasks; the calculation formula of the improved RTA method is:

[0207]

[0208] Where: R_i is the response time of task i; C_i is the worst case execution time of task i; hp(i) is the set of tasks with higher priority than task i; T_j is the period of task j; B_i is the maximum blocking time that task i may suffer; I_i(R_i^k) is the interference time caused by parallel execution within the time window R_i^k;

[0209] The formula for parallelism analysis is: P_i = max(0, (D_i-R_i) / C_i);

[0210] The formula for dependency analysis is: Dep(i,j)=1,iftaskj depends on task i Dep(i,j)=0,otherwise;

[0211] Where: P_i is the parallelism of task i; D_i is the deadline of task i; Dep(i,j) represents the dependency between tasks i and j; by iteratively calculating R_i until convergence, the worst-case response time of each task can be obtained; combining parallelism analysis and dependency analysis, the characteristics of the task set can be comprehensively evaluated to provide a basis for subsequent scheduling decisions;

[0212] S62: Perform dynamic inspection, monitor the task execution status in real time, and use the sliding window algorithm to predict the future task execution status; the core formula of the sliding window algorithm is:

[0213] Predicted value P(t+1)=∑(i=0to w-1)[α_i*E(ti)] / ∑(i=0to w-1)α_i;

[0214] Where: P(t+1) is the predicted value at the next moment; E(ti) is the i-th historical execution time in the window; w is the sliding window size; α_i is the weight factor, usually α_i = (wi) / w, giving higher weight to recent data;

[0215] The formula for estimating the probability of task overtime is: PTO(t+1)=1-exp(-max(0,P(t+1)-D) / σ);

[0216] Where: PTO(t+1) is the probability of task timeout at the next moment; D is the deadline of the task; σ is the standard deviation of the task execution time, calculated based on the historical data in the window;

[0217] The formula for dynamically adjusting the window size is: w(t+1)=w(t)+β*(PTO(t)-PTO_target);

[0218] Where: w(t+1): the window size at the next moment; w(t) is the current window size; β is the adjustment coefficient;

[0219] PTO_target is the target timeout probability;

[0220] Through these formulas, the sliding window algorithm can predict the execution of future tasks based on historical execution data and dynamically adjust the window size to adapt to system changes. The predicted value P(t+1) and the timeout probability PTO(t+1) will be used as key indicators for dynamic inspection to evaluate the schedulability of tasks;

[0221] S63: Use the Bayesian reasoning method to merge the determination results of the static analysis and the dynamic check to obtain a schedulability determination result. The Bayesian reasoning method formula is: P(schedulability|static analysis, dynamic check)=P(static analysis, dynamic check|schedulability)*P(schedulability) / P(static analysis, dynamic check); In this embodiment, a sliding window of 10ms is used for dynamic check; Bayesian reasoning: use a priori probability P(schedulability)=0.8;

[0222] S7: Use decision fusion algorithm to fuse the decisions, obtain the scheduling strategy through the scheduling strategy coordinator, execute the task, monitor the task in real time, and then transmit the real-time monitoring data to the scheduling strategy coordinator for real-time optimization;

[0223] like Figure 5 As shown, the specific steps of step S7 are:

[0224] S71: Use the publish-subscribe model, define standardized message formats (such as JSON), and design inter-module communication protocols;

[0225] S72: using a multi-objective genetic algorithm, using a binary string of task-processor allocation for encoding to obtain maximum resource utilization, minimum response time, and maximum schedulability, and obtaining an optimal scheduling strategy;

[0226] The specific steps of the multi-objective genetic algorithm in step S72 are:

[0227] S721: First, collect the output of each module and initialize the population.

[0228] S722: Then, a multi-objective genetic algorithm is used to sequentially perform fitness evaluation, selection, crossover, and mutation operations, and the fitness evaluation, selection, crossover, and mutation operations are repeated until a termination condition is met;

[0229] S723: Finally, the optimal scheduling strategy is output and the task execution module is started;

[0230] S73: Create multiple execution threads corresponding to multiple processor cores, so as to allocate and execute tasks according to the optimal scheduling strategy; the parameters of the multi-objective genetic algorithm in this embodiment are: population size 100, crossover rate 0.8, mutation rate 0.1; output the optimal scheduling strategy after 50 generations of iteration;

[0231] S74: Monitor system performance indicators in real time, collect data using lightweight probe technology, implement a circular buffer to store historical data, and use the moving average method to smooth the data; then transmit the real-time monitoring data to the scheduling strategy coordinator for real-time optimization. In this embodiment, 4 execution threads are created, corresponding to 4 processor cores; tasks are assigned and executed according to the scheduling strategy, and performance data is collected every 10ms during performance monitoring; a circular buffer of 1000 data points is used.

[0232] like Figure 1 As shown, the intelligent adaptive real-time task scheduling system based on multi-dimensional optimization includes a task input module, a parallel maintenance decomposition module, a multi-factor dynamic priority scheduling module, an adaptive acceleration factor management module, a load balancing vertex recovery module, a hybrid schedulability determination module, a scheduling strategy coordinator, a task execution module and a performance monitoring module. The task input module, the parallel maintenance decomposition module, the multi-factor dynamic priority scheduling module, the adaptive acceleration factor management module, the load balancing vertex recovery module, the hybrid schedulability determination module, the scheduling strategy coordinator, the task execution module and the performance monitoring module form data connections in sequence, and the performance monitoring module then transmits the real-time monitoring data to the scheduling strategy module, thereby forming a closed-loop real-time task scheduling system.

[0233] The task input module is used to receive and parse the DAG task description, the parallel maintenance decomposition module is used to decompose the DAG task into independent sequential subtasks to maintain parallel execution capabilities; the multi-factor dynamic priority scheduling module is used to dynamically calculate the priority score of the task and update the task priority; the adaptive acceleration factor management module is used to dynamically adjust the acceleration factor to optimize the scheduling performance; the adaptive acceleration factor management module includes five main components: real-time performance monitoring, data preprocessing, reinforcement learning model, acceleration factor adjustment and performance evaluation; the load balancing vertex recovery module is used to ensure vertex integrity while minimizing the load imbalance between processors; the hybrid schedulability determination module is used to combine static analysis and dynamic inspection to improve the determination accuracy; the hybrid schedulability determination module performs static analysis and dynamic inspection at the same time. Static analysis uses an improved response time analysis method, while dynamic inspection monitors the execution of tasks in real time. The results of the two methods are fused through Bayesian reasoning to finally obtain the schedulability determination result. The scheduling strategy coordinator is used to coordinate the management of each module, obtain the optimal scheduling strategy, achieve overall optimization, and execute tasks according to the optimal scheduling strategy; the performance monitoring module is used to monitor system performance data in real time and transmit the obtained monitoring data to the scheduling strategy coordinator.

[0234] The above technical solutions are integrated into a complete scheduling system to form a real-time optimization scheduling framework system with closed-loop feedback. The system significantly improves the system resource utilization rate through parallel maintenance decomposition method and load balancing vertex recovery technology; the multi-factor dynamic priority scheduling mechanism enables the system to better cope with changes in task characteristics, which is manifested in the increase in the number of priority adjustments and the improvement of adjustment accuracy. The hybrid schedulability judgment framework improves the accuracy and real-time performance of the judgment; the adaptive acceleration factor management method enables the system to maintain high efficiency under different loads; the collaborative work of multiple modules enables the system to better cope with complex and dynamically changing task environments; through more efficient resource utilization and task scheduling, the overall energy consumption of the system is reduced; modular design makes the system easy to expand and optimize. The time cost of adding new scheduling strategies or optimization algorithms is reduced by 50%. The modular design and standardized interface of the system reduce the difficulty of development and maintenance. The new function development cycle is shortened by an average of 30%. The system fault diagnosis time is reduced by 40%, mainly due to the independence of each module and the clear interaction mechanism. The system can better adapt to different types of task sets and hardware environments.

[0235] In order to verify the improvement effect of the present invention, a series of comparative experiments were conducted. The experimental environment is: a 4-core processor, a main frequency of 3GHz, 8GB memory, and a Linux operating system (kernel version 5.10). A real-time task set containing 100 DAG tasks was used for testing, and the task period was distributed between 10ms and 1000ms.

[0236] (1) Improved system resource utilization: Figure 6 As shown in (a) to (c), Figure 6 (a) is when the load is low; Figure 6 (b) in the figure is for medium load; Figure 6 (c) shows the resource utilization comparison between the present invention and the traditional method under different load conditions. It can be seen that, especially under high load conditions, the resource utilization of the present invention is significantly improved, reaching 90%, while the traditional method is only 75%. This is mainly due to the application of the parallel preservation decomposition method (step S2) and the load balancing vertex recovery technology (step S5).

[0237] (2) Enhanced scheduling flexibility: Figure 7 The multi-factor dynamic priority scheduling mechanism (step S3) of the present invention enables the system to better cope with changes in task characteristics, especially reducing the response time of sudden tasks from 150ms to 97ms, an increase of 35%.

[0238] (3) Improved schedulability: Figure 8 As shown, the accuracy of schedulability determination is demonstrated; the hybrid schedulability determination framework (step S6) adopted by the present invention reduces the misjudgment rate from 5% to 1.5%, significantly improving the accuracy of determination.

[0239] (4) System performance optimization: Fig. 9 The throughput comparison under different system loads is shown in FIG. 4. The adaptive acceleration factor management method (step S4) of the present invention increases the throughput of the system under high load (90%) from 720 tasks / minute to 900 tasks / minute, an increase of 25%.

[0240] (5) Enhanced system robustness: In the task parameter mutation experiment (execution time increased by 50%), the system recovery time of the present invention is 700ms, while the traditional method takes 1000ms, which is shortened by 30%. This is mainly due to the multi-module collaborative working mechanism of the scheduling strategy coordinator (step S7).

[0241] (6) Reduced energy consumption:

[0242] At the same throughput (500 tasks / minute), the system energy consumption of the present invention is 88W, while that of the traditional method is 100W, saving 12% of energy consumption. This is due to the combined effect of more efficient resource utilization (steps S2 and S5) and intelligent scheduling (steps S3 and S4).

[0243] (7) Improved scalability: Fig.10As shown, the system scalability comparison is shown. The present invention achieves 92% (736 / 800) of the ideal situation in a 32-core environment, while the traditional method only achieves 70% (560 / 800). This is mainly due to the application of the parallel preservation decomposition method (step S2) and the load balancing vertex recovery technology (step S5).

[0244] (8) Development and maintenance efficiency optimization:

[0245] The new function development cycle was shortened from an average of 40 days to 28 days, a 30% reduction. The system fault diagnosis time was reduced from an average of 5 hours to 3 hours, a 40% reduction. This is mainly due to the modular design and standardized interface of the system.

[0246] (9) Enhanced adaptability:

[0247] In a heterogeneous computing environment (CPU+GPU), the standard deviation of task completion time is reduced from 200ms in the traditional method to 150ms, a reduction of 25%. This is mainly due to the combined effect of the multi-factor dynamic priority scheduling mechanism (step S3) and the adaptive acceleration factor management method (step S4).

[0248] Through the above experimental data and charts, we can clearly see that the present invention has significant improvements in many aspects compared with traditional methods. These improvements are directly derived from the core technical features of the present invention, including parallel preservation decomposition method, multi-factor dynamic priority scheduling mechanism, adaptive acceleration factor management method, load balancing vertex recovery technology, hybrid schedulability determination framework and scheduling strategy coordinator.

[0249] For ordinary technicians in this field, the specific embodiments are only illustrative descriptions of the present invention. It is obvious that the specific implementation of the present invention is not limited to the above-mentioned methods. As long as various non-substantial improvements are made using the method concepts and technical solutions of the present invention, or the concepts and technical solutions of the present invention are directly applied to other occasions without improvement, they are all within the protection scope of the present invention.

Claims

1. A method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization, characterized in that: The specific steps include: S1: Input task, receive and parse DAG task description through task input module; S2: Decompose the DAG task into independent sequential subtasks to maintain parallel execution capabilities; S3: Use a multi-factor dynamic priority scheduling module to dynamically calculate the priority of the task and update the priority of the task; S4: Adopt the adaptive acceleration factor management module to dynamically adjust the acceleration factor, optimize the scheduling performance, and output the acceleration factor adjustment suggestions; S5: Perform vertex association analysis, and use a load balancing algorithm to calculate the variance of processor load imbalance and minimize it to maintain vertex integrity; S6: Combine static analysis and dynamic inspection to use a hybrid schedulability determination module to determine the tasks separately, and merge the determination results; S7: Use decision fusion algorithm to fuse the decisions, obtain the scheduling strategy through the scheduling strategy coordinator, execute the task, and monitor the task in real time, and then transmit the real-time monitoring data to the scheduling strategy coordinator for real-time optimization.

2. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 1 is characterized in that: The specific steps of step S1 are: using XML format to describe the DAG task, including node information, edge information, execution time and deadline; and then designing an XML parser to convert the task information into an internal data structure through the XML parser.

3. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 1 is characterized in that: The specific steps of step S2 are: S21: Receive the input DAG task, use the improved critical path method to calculate the earliest start time EST and the latest start time LST of each node; then use the parallelism analysis algorithm to calculate the parallelism of each node; The calculation formula is: Computational parallelism = (LST-EST) / execution time; S22: Adopt subtask reorganization algorithm, based on parallelism, use hierarchical clustering method to group nodes, and maintain the original dependency relationship within each group, and output the reorganized subtask set.

4. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 3 is characterized in that: The specific steps of step S3 are: S31: Initialize the weight and use a multi-dimensional scoring function to score the priority of the task, that is, calculate the initial priority score of each subtask; the calculation formula is: priority score = w1*(1 / deadline)+w2*execution progress+w3*resource utilization, where w1, w2, and w3 are weight coefficients, which are adjusted dynamically; S32: A threshold is set according to the calculated priority score. When the new priority score is greater than the old priority score by a larger amount than the set threshold, an update mechanism is triggered to perform an update.

5. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 3 is characterized in that: The specific steps of step S4 are: S41: Perform real-time performance monitoring and collect system data, including system load, task completion rate, and response time; pre-process the collected data, i.e., use a sliding window algorithm to smooth the data; S42: Initialize the acceleration factor, use the reinforcement learning model, input the preprocessed data into the reinforcement learning model, use the acceleration factor adaptive algorithm, output the acceleration factor adjustment suggestion, the system adjusts the acceleration factor according to the adjustment suggestion and evaluates the performance, feeds back the evaluation result to the monitoring component, and starts a new round of optimization; The Q-learning update formula of the reinforcement learning model is: Q(s,a)←Q(s,a)+α[r+γmaxQ(s',a')-Q(s,a)]; Among them, s is the current state; a is the action taken in the current state; r is the immediate reward obtained after executing action a; α is the learning rate; γ is the discount factor; s' is the new state reached after executing action a; a' is the action taken in the new state s'; maxQ(s',a') is the maximum Q value of all actions a' in the new state s'.

6. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 5 is characterized in that: The specific steps of step S5 are: S51 Vertex Association Analysis: First, the load-balanced vertex recovery module is used to perform vertex association analysis, build a vertex association graph, and then use depth-first search to identify strongly connected components; S52 load balancing allocation algorithm: Use the improved simulated annealing algorithm to obtain the objective function, calculate the variance of the processor load imbalance, then minimize the variance of the processor, and pass the constraint conditions to maintain vertex integrity.

7. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 6 is characterized in that: The specific steps of step S6 are: S61: Use the improved response time analysis method to perform static analysis to obtain the parallelism and dependencies between tasks; S62: Perform dynamic inspections to monitor task execution in real time and use a sliding window algorithm to predict future task execution; S63: Use the Bayesian reasoning method to fuse the determination results to obtain a schedulability determination result. The Bayesian reasoning method formula is: P(schedulability|static analysis, dynamic check)=P(static analysis, dynamic check|schedulability)*P(schedulability) / P(static analysis, dynamic check).

8. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 7 is characterized in that: The specific steps of step S7 are: S71: Use the publish-subscribe model, define standardized message formats, and design inter-module communication protocols; S72: using a multi-objective genetic algorithm, using a binary string of task-processor allocation for encoding to obtain maximum resource utilization, minimum response time, and maximum schedulability, and obtaining an optimal scheduling strategy; S73: creating multiple execution threads corresponding to multiple processor cores, so as to allocate and execute tasks according to an optimal scheduling strategy; S74: Monitors system performance indicators in real time, collects data using lightweight probe technology, implements a ring buffer to store historical data, uses a moving average method to smooth data, and then transmits the real-time monitoring data to the scheduling strategy coordinator for real-time optimization.

9. The method for intelligent adaptive real-time task scheduling based on multi-dimensional optimization according to claim 8, characterized in that: The specific steps of the multi-objective genetic algorithm in step S72 are: S721: First, collect the output of each module and initialize the population; S722: Then, a multi-objective genetic algorithm is used to sequentially perform fitness evaluation, selection, crossover, and mutation operations, and the fitness evaluation, selection, crossover, and mutation operations are repeated until a termination condition is met; S723: Finally, the optimal scheduling strategy is output and the task execution module is started.

10. An intelligent adaptive real-time task scheduling system based on multi-dimensional optimization, characterized in that: It includes a task input module, a parallel maintenance decomposition module, a multi-factor dynamic priority scheduling module, an adaptive acceleration factor management module, a load balancing vertex recovery module, a hybrid schedulability determination module, a scheduling policy coordinator, a task execution module and a performance monitoring module. The task input module, the parallel maintenance decomposition module, the multi-factor dynamic priority scheduling module, the adaptive acceleration factor management module, the load balancing vertex recovery module, the hybrid schedulability determination module, the scheduling policy coordinator, the task execution module and the performance monitoring module form data connections in sequence, and the performance monitoring module then transmits the real-time monitoring data to the scheduling policy module, thereby forming a closed-loop real-time task scheduling system.

Citation Information

Patent Citations

  • Kubernetes resource scheduling optimization method based on historical data prediction

    CN111984381A

  • Semantic segmentation label annotation method for RGB-T bimodal image

    CN118172605A

Cited By

  • Data weaving system and method based on dynamic metadata identification and DAG optimization

    CN120492137A

  • Lightweight multitask real-time scheduling method based on microcomputer

    CN120803673A

  • Coroutine task scheduling optimization method based on OpenHarmony

    CN120929217A

  • Timed task execution optimization method and system

    CN121210072A

  • Underwater sound processing CPU-GPU dynamic load balancing method based on task flow model

    CN121764696A