Task scheduling method and device, computer equipment and computer readable storage medium

By dynamically allocating task requests, resource topology graphs, and scheduling rules, and combining deep learning and graph databases, the scheduling rules are optimized, solving the problem of low resource utilization in traditional task scheduling methods and achieving efficient resource allocation and task scheduling.

CN120929207APending Publication Date: 2025-11-11CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510996710.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-18
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

Traditional task scheduling methods have low resource utilization in dynamic resource environments, cannot adapt to sudden traffic and performance fluctuations of heterogeneous nodes, and lack multi-constraint coordination mechanisms, resulting in resource mismatch and low global resource utilization.

Method used

By acquiring task requests, resource topology graphs, and scheduling rules, and utilizing resource allocation networks and task allocation networks, tasks are dynamically allocated to target scheduling nodes. By combining deep learning and graph database matching, scheduling rules and resource allocation are optimized to achieve task scheduling.

Benefits of technology

It improved resource utilization, avoided node overload, enhanced system response agility and stability, and ensured the rational allocation and efficient scheduling of resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120929207A_ABST
    Figure CN120929207A_ABST
Patent Text Reader

Abstract

The invention relates to a task scheduling method and device, computer equipment and a computer readable storage medium. The method comprises the following steps: obtaining a task request initiated by a user, a scheduling rule corresponding to the round of scheduling, and a resource topological graph and historical resource data of each scheduling node, and carrying out resource allocation on each scheduling node through a resource allocation network based on the task request, the resource topological graph and the scheduling rule, and obtaining a target scheduling node sequence which is used for executing each task of the task request and comprises a plurality of target scheduling nodes, and correspondingly allocating each task of the task request to each target scheduling node through a task allocation network according to the historical resource data of each target scheduling node and the task request so as to realize task scheduling. For each task scheduling, resource allocation is performed on the scheduling node according to the task request, and task allocation is further performed on the scheduling node after resource allocation is completed, so that the resource utilization rate is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of future networks and intelligent computing networks, and in particular to a task scheduling method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Technology

[0002] In today's highly complex and dynamically changing network environment, load balancing of server clusters has become one of the key technologies. Intelligent computing center network load balancing technology faces three major bottlenecks: First, traditional static rule engines (such as round-robin and least-connection) cannot adapt to dynamic resource environments, easily leading to resource mismatches under sudden traffic surges, performance fluctuations of heterogeneous nodes, and diverse task scenarios; second, fixed-threshold scheduling strategies are lagging, passively responding to overload, and rigid threshold settings easily lead to delayed remediation or migration oscillations; finally, existing systems lack multi-constraint coordination mechanisms, making it difficult to resolve rule conflicts in dimensions such as computing power, bandwidth, and latency, resulting in low global resource utilization.

[0003] Current traditional task scheduling methods suffer from low resource utilization. Summary of the Invention

[0004] Therefore, it is necessary to provide a task scheduling method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve resource utilization in response to the above-mentioned technical problems.

[0005] Firstly, this application provides a task scheduling method, including:

[0006] Obtain the user-initiated task request, the scheduling rules corresponding to this round of scheduling, and the resource topology and historical resource data of each scheduling node;

[0007] Through the resource allocation network, based on task requests, resource topology, and scheduling rules, resources are allocated to each scheduling node to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0008] Through the task allocation network, based on the historical resource data and task requests of each target scheduling node, each task in the task request is allocated to the corresponding target scheduling node to achieve task scheduling.

[0009] In conjunction with the first aspect, in one embodiment, a resource allocation network is used to allocate resources to each scheduling node based on task requests, resource topology maps, and scheduling rules, resulting in a sequence of target scheduling nodes for executing each task request, including:

[0010] Input the task request, resource topology map, and scheduling rules into the resource allocation network; the task request carries the task requirements and resource requirements.

[0011] By querying the resource topology graph using resource requirements, multiple candidate scheduling node sequences for each task to execute the task request are obtained from each scheduling node; the candidate scheduling node sequence includes multiple candidate scheduling nodes through which resources flow.

[0012] Based on the sequence of each candidate scheduling node, the task requirements, and the rule priority information pre-set for the scheduling rules, obtain the scheduling matching degree information between the task requirements and the sequence of each candidate scheduling node.

[0013] Based on scheduling matching information, the target scheduling node sequence is determined from each candidate scheduling node sequence.

[0014] In conjunction with the first aspect, in one embodiment, the method further includes:

[0015] Upon receiving an early warning signal, the process returns to the previous steps of allocating resources to each scheduling node through the resource allocation network based on the task request, resource topology, and scheduling rules, to obtain a sequence of target scheduling nodes for each task to execute the task request; the early warning signal includes at least one of the following: node overload of any target scheduling node, timeout of task request response, and triggering of a new scheduling rule.

[0016] In conjunction with the first aspect, in one embodiment, a task allocation network is used to allocate each task of a task request to each target scheduling node based on the historical resource data and task requests of each target scheduling node, including:

[0017] Input the historical resource data and task requirements of each target scheduling node into the task allocation network;

[0018] Feature extraction is performed on the historical resource data of each target scheduling node to obtain the temporal characteristics of each target scheduling node;

[0019] Based on the time series characteristics and task requirements, the resource requirements of each target scheduling node are predicted to obtain the predicted resource requirements of each target scheduling node.

[0020] Based on the predicted resource requirements of each target scheduling node, the tasks requested by the task are allocated to the corresponding target scheduling nodes.

[0021] In conjunction with the first aspect, in one embodiment, according to the predicted resource requirements of each target scheduling node, the tasks of the task request are allocated to each target scheduling node, including:

[0022] Each task in the task request is assigned to a corresponding target scheduling node to obtain an initial task allocation scheme;

[0023] Based on the predicted resource requests of each target scheduling node, the task ratios of the tasks corresponding to each target scheduling node in the initial task allocation scheme are adjusted to obtain multiple candidate task allocation schemes.

[0024] By using a pre-designed revenue function, the revenue value corresponding to each candidate task allocation scheme is obtained;

[0025] The candidate task allocation scheme corresponding to the maximum profit value is taken as the target task allocation scheme, and each task request is allocated to the target scheduling node according to the target task allocation scheme.

[0026] In conjunction with the first aspect, in one embodiment, the scheduling rules corresponding to this round of scheduling are obtained through the following steps:

[0027] Obtain network information, task resource requirements, scheduling performance information, node status characteristics, and link status characteristics for each scheduling node, as well as scheduling performance index data for the previous N rounds of scheduling before this round; N is an integer greater than or equal to 1, and the scheduling performance index data includes scheduling completion time, resource utilization, and scheduling success rate;

[0028] Based on the network information, task resource requirements, scheduling performance information, node status characteristics, and link status characteristics of each scheduling node, target status characteristics are obtained to characterize the correlation between the load and each scheduling node.

[0029] The network is obtained through scheduling rules. Based on the target state characteristics, scheduling performance index data, and task type distribution information of each task in the task request, the scheduling rules corresponding to the previous round of scheduling are updated to obtain the scheduling rules corresponding to the current round of scheduling.

[0030] In conjunction with the first aspect, in one embodiment, the network is obtained through scheduling rules. Based on the target state characteristics, scheduling performance index data, and task type distribution information of each task in the task request, the scheduling rules corresponding to the previous round of scheduling are updated to obtain the scheduling rules corresponding to the current round of scheduling, including:

[0031] By combining target state characteristics, scheduling performance index data, and task type distribution information, state information is obtained.

[0032] The state information is input into the scheduling rules to obtain the network, the value evaluation information of each candidate operation is obtained based on the state information, and the candidate operation with the highest value represented by the value evaluation information is taken as the target operation.

[0033] Update the scheduling rules corresponding to the previous round of scheduling based on the target operation, and obtain the scheduling rules corresponding to the current round of scheduling.

[0034] In conjunction with the first aspect, in one embodiment, updating the scheduling rule corresponding to the previous round of scheduling based on the target operation to obtain the scheduling rule corresponding to the current round of scheduling includes:

[0035] When a new scheduling rule is added to the target operation representation, the corresponding target scheduling rule is generated according to the target operation, and the target scheduling rule is added to the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling.

[0036] When the scheduling rules are adjusted according to the target operation, the scheduling rules corresponding to the previous round of scheduling are adjusted according to the target operation to obtain the scheduling rules corresponding to the current round of scheduling.

[0037] In conjunction with the first aspect, in one embodiment, the method further includes:

[0038] Obtain the actual resource requirements of each target scheduling node in the target task allocation scheme;

[0039] If the deviation between the actual resource demand and the corresponding predicted resource demand of each target scheduling node is greater than a preset deviation threshold, the process returns to the step of allocating each task request to the target scheduling node through the task allocation network based on the historical resource data and task requests of each target scheduling node.

[0040] In conjunction with the first aspect, after assigning each task of the task request to the corresponding target scheduling node to achieve task scheduling, the method further includes:

[0041] Obtain the scheduling performance metrics data for this round of scheduling, and compare the scheduling performance metrics data for this round of scheduling with the scheduling performance metrics data for the previous round of scheduling;

[0042] If the comparison results indicate a decline in scheduling performance, the system is rolled back to the state of the previous scheduling round.

[0043] Secondly, this application also provides a task scheduling device, comprising:

[0044] The acquisition module is used to acquire user-initiated task requests, scheduling rules corresponding to the current round of scheduling, and resource topology diagrams and historical resource data of each scheduling node;

[0045] The resource allocation module is used to allocate resources to each scheduling node through the resource allocation network based on task requests, resource topology, and scheduling rules, to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0046] The task allocation module is used to allocate each task in the task allocation request to the corresponding target scheduling node through the task allocation network, based on the historical resource data and task requests of each target scheduling node, so as to realize task scheduling.

[0047] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0048] Obtain the user-initiated task request, the scheduling rules corresponding to this round of scheduling, and the resource topology and historical resource data of each scheduling node;

[0049] Through the resource allocation network, based on task requests, resource topology, and scheduling rules, resources are allocated to each scheduling node to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0050] Through the task allocation network, based on the historical resource data and task requests of each target scheduling node, each task in the task request is allocated to the corresponding target scheduling node to achieve task scheduling.

[0051] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the following steps:

[0052] Obtain the user-initiated task request, the scheduling rules corresponding to this round of scheduling, and the resource topology and historical resource data of each scheduling node;

[0053] Through the resource allocation network, based on task requests, resource topology, and scheduling rules, resources are allocated to each scheduling node to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0054] Through the task allocation network, based on the historical resource data and task requests of each target scheduling node, each task in the task request is allocated to the corresponding target scheduling node to achieve task scheduling.

[0055] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, performs the following steps:

[0056] Obtain the user-initiated task request, the scheduling rules corresponding to this round of scheduling, and the resource topology and historical resource data of each scheduling node;

[0057] Through the resource allocation network, based on task requests, resource topology, and scheduling rules, resources are allocated to each scheduling node to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0058] Through the task allocation network, based on the historical resource data and task requests of each target scheduling node, each task in the task request is allocated to the corresponding target scheduling node to achieve task scheduling.

[0059] The aforementioned task scheduling method, apparatus, computer equipment, computer-readable storage medium, and computer program product acquire user-initiated task requests, scheduling rules corresponding to the current round of scheduling, and resource topology maps and historical resource data of each scheduling node. Through a resource allocation network, based on the task requests, resource topology maps, and scheduling rules, resources are allocated to each scheduling node to obtain a sequence of target scheduling nodes containing multiple target scheduling nodes for executing each task in the task request. Then, through the task allocation network, based on the historical resource data of each target scheduling node and the task request, each task in the task request is assigned to the corresponding target scheduling node to achieve task scheduling. The process involves acquiring task requests, scheduling rules corresponding to the current round of scheduling, and resource topology maps and historical resource data of each scheduling node. Through a resource allocation network, resources are allocated to each scheduling node based on the task requests, resource topology maps, and scheduling rules to obtain a sequence of target scheduling nodes. Finally, through the task allocation network, based on the historical resource data of each target scheduling node in the target scheduling sequence and the task request, each task in the task request is assigned to the corresponding target scheduling node to achieve task scheduling. For each task scheduling, resources are allocated to the scheduling nodes that will execute the task based on the task request. Furthermore, tasks are assigned to the scheduling nodes that have completed resource allocation. By performing resource allocation and task assignment, resource utilization is improved and node overload is avoided. Attached Figure Description

[0060] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0061] Figure 1 This is a diagram illustrating the application environment of a task scheduling method in one embodiment;

[0062] Figure 2 This is a flowchart illustrating a task scheduling method in one embodiment;

[0063] Figure 3 This is a flowchart illustrating the task scheduling process in another embodiment;

[0064] Figure 4 This is a schematic diagram of the resource allocation process in one embodiment;

[0065] Figure 5 This is a flowchart illustrating the task allocation process in one embodiment;

[0066] Figure 6 This is a structural block diagram of a task allocation device in one embodiment;

[0067] Figure 7 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

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

[0069] Intelligent computing center network load balancing technology faces three major bottlenecks: First, traditional static rule engines (such as round-robin and least-connection) cannot adapt to dynamic resource environments, easily leading to resource mismatches under sudden traffic surges, performance fluctuations of heterogeneous nodes, and diverse task scenarios. Second, fixed-threshold scheduling strategies suffer from lag, passively responding to overload, and rigid threshold settings, easily causing delays in remediation or migration oscillations. Finally, existing systems lack multi-constraint coordination mechanisms, making it difficult to resolve rule conflicts in dimensions such as computing power, bandwidth, and latency, resulting in low global resource utilization. These problems collectively lead to an inefficient state where task latency fluctuations, local overload, and resource idleness coexist.

[0070] The task scheduling method provided in this application embodiment can be applied to, for example, Figure 1In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Server 104 obtains task requests initiated by the user through terminal 102, retrieves the scheduling rules corresponding to this round of scheduling from the data storage system, as well as the resource topology map and historical resource data of each scheduling node. Through a resource allocation network, based on the task request, resource topology map, and scheduling rules, it allocates resources to each scheduling node to obtain a sequence of target scheduling nodes for executing the task request. The sequence of target scheduling nodes includes multiple target scheduling nodes. Then, through the task allocation network, based on the historical resource data and task request of each target scheduling node, it allocates each task of the task request to the corresponding target scheduling node to achieve task scheduling. Terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, projection devices, etc. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted displays. Head-mounted displays can be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. Server 104 can be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server providing cloud computing services.

[0071] In one exemplary embodiment, such as Figure 2 As shown, a task scheduling method is provided, which can be applied to... Figure 1 Taking server 104 as an example, the explanation includes the following steps S201 to S203. Wherein:

[0072] Step S201: Obtain the task request initiated by the user, the scheduling rules corresponding to this round of scheduling, and the resource topology map and historical resource data of each scheduling node.

[0073] Among them, scheduling rules can be understood as rules used to control the scheduling of execution tasks. They can be a set of predefined principles, strategies or decision criteria used to guide the behavior of the system in a specific scenario. Resource topology map can be understood as a map of the system. It can be a graphical representation used to display and describe the connection relationships and structure between various resources in the system (such as computing nodes, storage devices, network connections, etc.). Historical resource data can be understood as historical data on the usage of node resources.

[0074] For example, server 104 obtains a task request initiated by user through terminal 102. The task request contains multiple tasks to be scheduled. Server 104 obtains the scheduling rules corresponding to this round of scheduling from the data storage system, as well as the resource topology map corresponding to the scheduling system composed of each scheduling node and the historical resource data of each scheduling node.

[0075] Step S202: Through the resource allocation network, based on the task request, resource topology map and scheduling rules, resources are allocated to each scheduling node to obtain the target scheduling node sequence for each task to execute the task request; the target scheduling node sequence includes multiple target scheduling nodes.

[0076] The resource allocation network can be understood as a network that allocates system resources to scheduling nodes (nodes through which resources flow), and can include using the Neo4j graph database to perform shortest path algorithms for constraint matching to achieve resource allocation; the target scheduling node can be understood as the scheduling node through which resources flow, and the target scheduling node sequence can be understood as the set of target scheduling nodes.

[0077] In an exemplary embodiment, server 104 inputs task request, resource topology map and scheduling rules into resource allocation network, uses the resource requirements carried by task request to query resource topology map, determines multiple candidate scheduling node sequences through which resources flow, and then scores each candidate scheduling node sequence according to the rule priority information corresponding to the scheduling rules, the task requirements carried by task request and each candidate scheduling node sequence, and takes the candidate scheduling node sequence with the highest score as the target scheduling node sequence.

[0078] Step S203: Through the task allocation network, based on the historical resource data and task requests of each target scheduling node, each task in the task request is allocated to the corresponding target scheduling node to achieve task scheduling.

[0079] The task allocation network can be understood as a network that assigns each task in a task request to the corresponding target scheduling node. By using Nash equilibrium, the game of task allocation can be realized to ensure that the resource utilization of individuals and the whole reaches the best.

[0080] For example, server 104 inputs the historical resource data and task requests of each target scheduling node into the task allocation network, extracts features from the historical resource data of each target scheduling node to obtain the temporal features of each target scheduling node, predicts the resource requirements of each target scheduling node based on the temporal features and the task requirements in the task requests, obtains the predicted resource requirements of each target scheduling node, and finally allocates each task of the task request to each target scheduling node according to the predicted resource requirements of each target scheduling node, and each target scheduling node executes the task scheduling accordingly.

[0081] In the above task scheduling method, by acquiring the user-initiated task request, the scheduling rules corresponding to the current round of scheduling, and the resource topology and historical resource data of each scheduling node, the resource allocation network allocates resources to each scheduling node based on the task request, resource topology, and scheduling rules, resulting in a sequence of target scheduling nodes containing multiple target scheduling nodes for executing each task in the task request. Then, through the task allocation network, based on the historical resource data of each target scheduling node and the task request, each task in the task request is assigned to the corresponding target scheduling node to achieve task scheduling. For each task scheduling, resources are allocated to the scheduling nodes that will execute the task based on the task request. Furthermore, tasks are assigned to the scheduling nodes that have completed resource allocation. By performing resource allocation and task assignment, resource utilization is improved and node overload is avoided.

[0082] In one embodiment, a resource allocation network is used to allocate resources to each scheduling node based on task requests, resource topology, and scheduling rules, resulting in a sequence of target scheduling nodes for each task to execute the task request, including:

[0083] Input the task request, resource topology map, and scheduling rules into the resource allocation network. The task request carries task requirements and resource requirements. Use the resource requirements to query the resource topology map and obtain multiple candidate scheduling node sequences for each task to execute the task request from each scheduling node. The candidate scheduling node sequence includes multiple candidate scheduling nodes through which resources flow. Based on each candidate scheduling node sequence, task requirements, and rule priority information pre-set for the scheduling rules, obtain the scheduling matching degree information between the task requirements and each candidate scheduling node sequence. Based on the scheduling matching degree information, determine the target scheduling node sequence from each candidate scheduling node sequence.

[0084] Among them, task requirements can be understood as the final output result that the task request wants to achieve, which may include the conditions, goals and specific requirements that the user wants to complete the task must meet; resource requirements can be understood as the total amount and type of various resources required to complete a task or achieve a goal, which may include minimum bandwidth, maximum tolerable latency, etc.

[0085] In an exemplary embodiment, server 104 inputs the task request, resource topology map, and scheduling rules into the resource allocation network, constructs query conditions using the resource requirements carried in the task request, queries the resource topology map using the query conditions, determines candidate scheduling nodes through which the resource flows from multiple scheduling nodes, forms multiple candidate scheduling node sequences, calculates the matching between each candidate scheduling node in the candidate scheduling node sequence and the task requirements, and scores and sorts each candidate scheduling node sequence in combination with the rule priority preset for the scheduling rules, and determines the candidate scheduling node sequence with the highest score as the target scheduling node sequence.

[0086] Based on the aforementioned implementation method, by constructing query conditions, resource nodes that meet the resource requirements of the task are accurately matched from the resource topology map, thereby quickly locating potential scheduling nodes. Using matching degree indicators, scheduling rule priorities, and preset rules, each candidate sequence is scored, and the candidate sequence with the highest score is taken as the target sequence. Under the current network topology and load conditions, the optimal target scheduling node sequence is essentially a node sequence from the task initiation node to the target execution node, ensuring continuous bandwidth, the lowest latency, and the highest resource utilization efficiency.

[0087] In one embodiment, the method further includes: upon receiving an early warning signal, returning to the step of allocating resources to each scheduling node through a resource allocation network based on the task request, resource topology map, and scheduling rules to obtain a sequence of target scheduling nodes for executing the task request; the early warning signal includes at least one of the following: node overload of any target scheduling node, timeout of the task request response, and triggering of a new scheduling rule.

[0088] The warning signal can be understood as an indication that the system needs to be adjusted. It may include at least one of the following: detection of node overload in any target scheduling node, timeout of task request response, and triggering of a new scheduling rule.

[0089] For example, when server 104 detects at least one of the following situations: node overload at any target scheduling node, timeout of task request response, or triggering of a new scheduling rule, it generates an early warning signal. Under the instruction of the early warning signal, it returns to the following steps: inputting the task request, resource topology map, and scheduling rules into the resource allocation network; constructing query conditions using the resource requirements carried by the task request; querying the resource topology map through the query conditions; determining candidate scheduling nodes through which resources flow from multiple scheduling nodes; forming multiple candidate scheduling node sequences; calculating the matching between each candidate scheduling node in the candidate scheduling node sequence and the task requirements; and scoring and sorting each candidate scheduling node sequence based on the rule priority pre-set for the scheduling rules; and determining the candidate scheduling node sequence with the highest score as the target scheduling node sequence.

[0090] According to the above implementation method, the load status of each node is continuously monitored, such as node overload, task response timeout, or abnormal situations triggered by scheduling rules. Once any target scheduling node is detected to be overloaded, or a task response timeout is detected, or a new scheduling rule is triggered, an early warning signal is immediately generated. Under the indication of the early warning signal, the system will regenerate a new scheduling scheme based on the current resource and task information. This greatly improves the system's responsiveness and security, avoids system crashes or performance degradation, and the real-time resource reallocation ensures that the system can promptly avoid potential risks and maintain efficient operation.

[0091] In one embodiment, a task allocation network is used to allocate each task of a task request to each target scheduling node based on the historical resource data and task requests of each target scheduling node, including:

[0092] The historical resource data and task requirements of each target scheduling node are input into the task allocation network; features are extracted from the historical resource data of each target scheduling node to obtain the temporal features of each target scheduling node; resource requirements of each target scheduling node are predicted based on the temporal features and task requirements to obtain the predicted resource requirements of each target scheduling node; and each task request is allocated to the target scheduling node according to the predicted resource requirements of each target scheduling node.

[0093] Among them, time-series characteristics can be understood as data attributes and patterns that change over time, which can include periodic characteristics, trend characteristics, and sudden characteristics.

[0094] In an exemplary embodiment, server 104 inputs the historical resource data and task requirements of each target scheduling node into the task allocation network, uses a long-term feature extraction model to extract features from the historical resource data of each target scheduling node to obtain the periodic and trend features of each target scheduling node, uses a short-term feature extraction model to extract features from the historical resource data of each target scheduling node to obtain the burst features of each target scheduling node, and performs resource requirement prediction for each target scheduling node based on the periodic, trend, and burst features and the corresponding task requirements to obtain the predicted resource requirements of each target scheduling node, and allocates each task request to the corresponding target scheduling node according to the predicted resource requirements of each target scheduling node.

[0095] Based on the aforementioned implementation methods, multi-dimensional features (periodicity, trend, and suddenness) are combined with historical data and task requirements to conduct multi-angle analysis, thereby improving the accuracy of resource demand prediction. According to the predicted resource demand, each task in the task request is reasonably allocated to each target scheduling node, thereby improving resource utilization efficiency and avoiding scheduling delays or system bottlenecks caused by resource overload or shortage.

[0096] In one embodiment, the tasks of the task request are allocated to the target scheduling nodes according to the predicted resource requirements of each target scheduling node, including:

[0097] The task requests are assigned to the target scheduling nodes to obtain the initial task allocation scheme. Based on the predicted resource requests of each target scheduling node, the task ratios of the tasks corresponding to each target scheduling node in the initial task allocation scheme are adjusted to obtain multiple candidate task allocation schemes. The revenue value corresponding to each candidate task allocation scheme is obtained through a pre-designed revenue function. The candidate task allocation scheme with the maximum revenue value is taken as the target task allocation scheme, and the task requests are assigned to the target scheduling nodes according to the target task allocation scheme.

[0098] The benefit function (U_i) can be understood as a function representing the individual and overall collective benefit after task allocation and scheduling are performed according to the corresponding scheme. It can be represented as U_i=α*resource utilization rate_i-β*energy consumption_i-γ*global load imbalance. The weight coefficients (α,β,γ) are dynamically adjusted according to the node role (such as edge node, central cloud node).

[0099] For example, server 104 first assigns each task of the task request to each target scheduling node to obtain an initial task allocation scheme. Each target scheduling node is abstracted as an intelligent agent, aiming to maximize its own resource utilization and minimize energy consumption. Based on the predicted resource requests of each target scheduling node, the task ratio of the tasks corresponding to each target scheduling node in the initial task allocation scheme is adjusted, that is, a task ratio migration is proposed. The target scheduling node being migrated can choose to accept, negotiate or reject, thereby obtaining multiple candidate task allocation schemes. Through a pre-designed benefit function, the benefit value corresponding to each candidate task allocation scheme is calculated. The candidate task allocation scheme corresponding to the maximum benefit value is taken as the target task allocation scheme. According to the target task allocation scheme, each task of the task request is assigned to each target scheduling node, and each target scheduling node performs task scheduling accordingly.

[0100] According to the above implementation method, with the goal of maximizing benefits, the optimal scheduling scheme is adaptively selected. The scheduling node to be migrated can choose to accept, negotiate or reject the migration request, ensuring that the scheduling scheme takes into account the actual carrying capacity and preferences of the node, improving the cooperation and stability of the system, thereby enhancing the flexibility of the system's dynamic scheduling and achieving the optimal allocation of resources and tasks.

[0101] In one embodiment, the scheduling rules for this round of scheduling are obtained through the following steps:

[0102] The system acquires network information, task resource requirements, scheduling performance information, node status characteristics, and link status characteristics of each scheduling node, as well as scheduling performance metrics data from the previous N rounds of scheduling; N is an integer greater than or equal to 1, and the scheduling performance metrics data include scheduling completion time, resource utilization, and scheduling success rate. Based on the network information, task resource requirements, scheduling performance information, node status characteristics, and link status characteristics of each scheduling node, the system obtains target status characteristics to characterize the correlation between the load and each scheduling node. The system acquires network information through scheduling rules, and updates the scheduling rules corresponding to the previous round of scheduling based on the target status characteristics, scheduling performance metrics data, and the task type distribution information of each task request, thus obtaining the scheduling rules corresponding to the current round of scheduling.

[0103] Among them, network information can be understood as the characteristics of the system composed of various scheduling nodes, which may include the network topology of the system and the link load between various scheduling nodes; task resource requirement information can be understood as the characteristics of each scheduling node when performing scheduling, which may include the task type and resource requirements of the task being executed; scheduling performance information can be understood as the scheduling effect; node status characteristics can be understood as a multi-dimensional feature set describing the current state of a single network node (such as a router, server, sensor, etc.), which may include resource utilization, performance indicators, operating status, energy consumption level, and connection status, etc.; link status characteristics can be understood as a multi-dimensional feature set of current status information of the link between two network nodes, which may include bandwidth utilization, latency, packet loss rate, error rate, and link status, etc.; scheduling performance indicator data can be understood as the specific manifestation of scheduling performance information.

[0104] The scheduling rule acquisition network can be understood as a network that performs update operations on the scheduling rules of the previous round, and may include deep learning neural networks.

[0105] In an exemplary embodiment, server 104 obtains the network topology of the system composed of scheduling nodes, the task types and resource requirements of each scheduling node, historical scheduling effects, node status characteristics of each scheduling node, and link status characteristics of the links between nodes. It also needs to obtain scheduling performance index data from the previous N rounds of scheduling, including scheduling completion time, resource utilization, and scheduling success rate. Based on the network topology, task types, resource requirements, and historical scheduling effects, it organizes this data into attributed graph data. The graph data, node status characteristics, and link status characteristics are input into a graph neural network. Through multi-layer message passing and feature aggregation, target status characteristics reflecting the overall network load and the correlation between nodes are extracted. Finally, based on the target status characteristics, scheduling performance index data, and the task type distribution information of each task request, the scheduling rules corresponding to the previous round of scheduling are updated to obtain the scheduling rules corresponding to the current round of scheduling.

[0106] Based on the aforementioned implementation methods, scheduling rules are automatically updated and optimized based on the current target state characteristics, recent rounds of scheduling index data, and the distribution of new task types, thereby improving scheduling efficiency and rationality, and reducing resource waste and task delays.

[0107] In one embodiment, the network is obtained through scheduling rules. Based on the target state characteristics, scheduling performance index data, and task type distribution information of each task in the task request, the scheduling rules corresponding to the previous round of scheduling are updated to obtain the scheduling rules corresponding to the current round of scheduling, including:

[0108] By concatenating target state features, scheduling performance index data, and task type distribution information, state information is obtained. The state information is then input into the scheduling rule acquisition network to obtain the value evaluation information of each candidate operation based on the state information. The candidate operation with the highest value represented by the value evaluation information is then selected as the target operation. The scheduling rule corresponding to the previous round of scheduling is updated based on the target operation to obtain the scheduling rule corresponding to the current round of scheduling.

[0109] Candidate operations can be understood as system operations that may be performed on scheduling rules, including adding or modifying scheduling rules. Value assessment information can be understood as quantitative information on the benefits brought to the system after the operation on the scheduling rules is performed.

[0110] For example, server 104 concatenates target state features, scheduling performance index data, and task type distribution information to obtain state information. The state information is then input into a deep learning neural network to evaluate the value of candidate operations, thereby obtaining the value evaluation information of each subsequent operation. The candidate operation with the highest value represented by the value evaluation information is taken as the target operation. Finally, the scheduling rules corresponding to the previous round of scheduling are updated according to the instructions of the target operation. This includes adding scheduling rules to the scheduling rules corresponding to the previous round of scheduling and adjusting at least one of the following: the scheduling rules corresponding to the previous round of scheduling. This yields the scheduling rules corresponding to the current round of scheduling.

[0111] According to the above implementation method, the target state characteristics, scheduling performance indicators and task type distribution information are spliced ​​into comprehensive state information, which fully reflects the current scheduling environment of the system. By evaluating the value of candidate operations through deep learning neural networks, the most beneficial operation scheme for system optimization can be automatically identified, thereby realizing data-driven optimal decision-making. After selecting the operation with the highest value as the target operation, the scheduling rules of the previous round of scheduling are updated, so that the scheduling strategy can continuously adapt to the dynamic changes and optimization goals of the system.

[0112] In one embodiment, updating the scheduling rules corresponding to the previous round of scheduling based on the target operation to obtain the scheduling rules corresponding to the current round of scheduling includes:

[0113] When a new scheduling rule is added to the target operation representation, the corresponding target scheduling rule is generated according to the target operation, and the target scheduling rule is added to the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling; when a scheduling rule is adjusted according to the target operation representation, the scheduling rule corresponding to the previous round of scheduling is adjusted to obtain the scheduling rule corresponding to the current round of scheduling.

[0114] In an exemplary embodiment, when the target operation represents adding a new scheduling rule, the server 104 generates a corresponding target scheduling rule according to the target operation and adds the target scheduling rule to the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling; when the target operation represents adjusting a scheduling rule, the server 104 determines the scheduling rule to be adjusted from the scheduling rule corresponding to the previous round of scheduling, adjusts the scheduling rule to be adjusted according to the target operation, and combines the unadjusted scheduling rules to obtain the scheduling rule corresponding to the current round of scheduling.

[0115] Based on the aforementioned implementation method, by performing update operations on the scheduling rules corresponding to the previous round of scheduling according to the target operation, including adding new scheduling rules and modifying existing scheduling rules, the scheduling rules continuously adapt to the dynamic changes and optimization goals of the system, ensuring that each round of scheduling meets the current system environment, ensuring the rational utilization of system resources, and ensuring the stability of system operation.

[0116] In one embodiment, the method further includes: obtaining the actual resource requirements of each target scheduling node in the target task allocation scheme; if the deviation between the actual resource requirements of each target scheduling node and the corresponding predicted resource requirements is greater than a preset deviation threshold, returning to the step of allocating each task of the task request to each target scheduling node through the task allocation network according to the historical resource data and task requests of each target scheduling node.

[0117] For example, server 104 deploys a lightweight monitoring agent to periodically collect the actual resource requirements of each target scheduling node in the target task allocation scheme. If the deviation between the actual resource requirements of each target scheduling node and the corresponding predicted resource requirements is greater than a preset deviation threshold, the agent returns to retrain the long-term feature extraction model and the short-term feature extraction model, or executes the task allocation network to reallocate each task requested by each target scheduling node according to the historical resource data and task requests of each target scheduling node.

[0118] According to the above implementation method, by monitoring the deviation between actual resource demand and prediction, when the deviation exceeds a preset threshold, the model is retrained or rescheduled to ensure that the scheduling strategy is consistent with the actual state of the system.

[0119] In one embodiment, after assigning each task of the task request to the corresponding target scheduling node to achieve task scheduling, the method further includes:

[0120] Obtain the scheduling performance index data for this round of scheduling and compare it with the scheduling performance index data for the previous round of scheduling; if the comparison results indicate a decline in scheduling performance, roll back to the system state of the previous round of scheduling.

[0121] For example, server 104 obtains the scheduling performance index data of the current round of scheduling and compares the scheduling performance index data of the current round of scheduling with the scheduling performance index data of the previous round of scheduling. If the comparison result indicates that the scheduling performance of the system has declined (i.e., the resource utilization rate has decreased or the scheduling success rate has decreased), it automatically rolls back to the system state of the previous round of scheduling and records the abnormal scenario for offline analysis.

[0122] Based on the aforementioned implementation method, by comparing the scheduling performance indicators of the current round with those of the previous round, abnormal scenarios of declining scheduling performance can be accurately identified, potential system problems can be promptly identified, and after detecting a decline in scheduling performance indicators (such as reduced resource utilization or reduced scheduling success rate), the system automatically performs a rollback operation to restore the system to the better state of the previous round, ensuring the continuous and stable operation of the system.

[0123] In one exemplary embodiment, such as Figure 3 As shown, this paper designs a load balancing method and system for intelligent computing center networks. Addressing the problems of poor adaptability of static rules, slow response, and insufficient handling of multiple constraint conflicts in existing intelligent computing center network load balancing technologies, this application aims to provide a load balancing method and system based on intelligent rule matching and dynamic scheduling by integrating deep reinforcement learning, graph database matching, time series prediction, and multi-agent collaborative strategies.

[0124] in:

[0125] Graph Neural Networks (GNNs) are a type of neural network designed specifically for graph-structured data. They update node representations by aggregating feature information of nodes and their neighbors, capturing dependencies between nodes and the global structure of the graph. They have wide applications in fields such as node classification, link prediction, and recommender systems.

[0126] Deep Q Network: Deep Q Network is a classic algorithm in the field of deep reinforcement learning. It approximates the Q-value function (action value function) through deep neural networks, and outputs the expected reward for each action with the state as input, thus solving the storage and generalization problems of traditional Q learning in high-dimensional state space.

[0127] Long Short-Term Memory Network: Long Short-Term Memory Network (LSTM) is a special type of recurrent neural network. Through a gating mechanism consisting of a forget gate, an input gate, and an output gate, it solves the gradient vanishing or exploding problem when traditional RNNs (Recurrent Neural Networks) process long sequences, and achieves the capture of long-distance dependent information.

[0128] Autoregressive Integrated Moving Average (ARIMA) model: The Autoregressive Integrated Moving Average (ARIMA) model is a time series statistical model that integrates autoregressive, differencing, and moving average components to model stationary or differencing-stationary series. It predicts future values ​​based on the autocorrelation and moving average characteristics of historical data.

[0129] Nash equilibrium: Nash equilibrium is a core concept in game theory, referring to a stable state in which all participants in a multi-player game adopt the optimal response to the strategies of other players, and no single participant can improve their payoff by unilaterally changing their strategy.

[0130] The intelligent computing center network load balancing system consists of two core modules:

[0131] (1) Intelligent rule matching and scheduling module: Through the self-evolution mechanism of dynamic rule base based on deep reinforcement learning and the efficient matching algorithm of graph pattern matching, a refined resource allocation scheme is generated to realize real-time dynamic scheduling under complex constraints. This module breaks through the static limitations of traditional rule engines and forms a closed-loop optimization system of "rule generation - intelligent matching - elastic execution - dynamic correction".

[0132] (2) Predictive dynamic adjustment module: Combining time series prediction model and game theory framework, it breaks through the limitations of traditional passive response mechanism and realizes the transformation from "post-event remedy" to "pre-event prevention".

[0133] like Figure 4 The diagram shown illustrates the internal operation of an intelligent rule matching and scheduling module.

[0134] 1) Dynamic rule base construction and evolution. Resource information extraction based on GNN (Graph Neural Network) and automatic generation of dynamic rule base based on DQN (Deep Q Network) are used to guide the generation of dynamic rule base by utilizing information such as network topology, network load resource information, task type and requirements, and historical scheduling effects.

[0135] 1.1 State Space: Current resource status, task type, and historical scheduling results;

[0136] 1.2 Resource Information Extraction: Utilizing the high reliability and strong generalization ability of GNN (Graph Neural Network) in graph data structure processing, the current resource status is analyzed and resource information such as network load is extracted, providing accurate decision-making basis for rule updates.

[0137] 1.3 Action Space: Generate new rules or modify existing rules; dynamically calculate reward values ​​based on system metrics after rule execution; and use the network load resources and other information extracted above to guide DQN (Deep Q Network) to optimize rule quality.

[0138] 1.4 When multiple rules conflict, the rule weights are dynamically adjusted based on task priority and real-time load.

[0139] 1.5 Periodically train the DQN (Deep Q-Network) model based on the latest historical scheduling effect data, eliminate inefficient rules, and new rules must be verified through simulation before going online; for the first round of training, since there is no historical scheduling data, only information such as network load resources and task requirements is used to train the DQN model. Subsequent rounds of training use historical scheduling effect data to train and optimize the DQN model.

[0140] Overview of the intelligent rule matching and scheduling module:

[0141] First, the system periodically collects information such as network topology, link load, task type and resource requirements, and historical scheduling effects, and organizes it into graph data with attributes.

[0142] Next, this graph, along with the state vectors of each node and link, is input into a graph neural network (GNN). Through multi-layer message passing and feature aggregation, a high-dimensional embedding vector reflecting the overall network load and the correlation between nodes is extracted.

[0143] Then, the embedding vector is concatenated with the performance metrics of the most recent scheduling and the current task type distribution to form the input state of the DQN, which is then fed into the deep Q network to calculate the value assessment of each possible operation. The system then selects the action with the highest value based on a greedy strategy. This "updated data" may be adding a new scheduling rule for a specific task and link conditions, or it may be adjusting the trigger threshold or priority of an existing rule. This action is then converted into specific rule text or parameter modifications. When new and old rules conflict, the system dynamically allocates the execution weight of the rules based on task priority and real-time load, and determines which rule to execute in a probabilistic manner.

[0144] After the rules are implemented, the system continuously monitors the scheduling effect and feeds back the performance changes of each execution as a reward signal to DQN. The network parameters are periodically optimized through experience replay, while rules with accumulated negative effects are eliminated and implemented again after simulation verification. In the first round of training, since there is no historical scheduling data, the system explores based only on the current load and task requirements to ensure that DQN can generate and update rules more and more accurately based on richer historical experience in subsequent iterations.

[0145] 2) Graph pattern matching based on Neo4j. Enables efficient rule matching for complex resource topologies.

[0146] 2.1 Import the node resource topology into the Neo4j graph database.

[0147] 2.2 For cross-node collaborative tasks, the shortest path algorithm is used to match resource combinations that meet multiple constraints.

[0148] 2.3 Sort the candidate nodes according to rule priority and resource matching degree, and give the optimal solution.

[0149] Graph pattern matching analysis based on Neo4j:

[0150] First, the network's compute nodes, storage nodes, and switching devices, along with their interconnections, bandwidth, latency, and other attributes, are imported in batches into the Neo4j graph database in a unified format, forming a complete resource topology graph. Next, when a cross-node collaborative task arrives, the system constructs query conditions based on the task's resource requirements (such as minimum bandwidth and maximum tolerable latency). Using these constraints as input, Neo4j's shortest path algorithm (e.g., ShortestPath or Dijkstra's algorithm) searches for all candidate paths that satisfy multiple constraints—that is, the sequence of nodes through which resources flow. Then, for these candidate paths, the system calculates the matching degree between each node and link on each path and the task requirements, and scores and ranks all paths based on predefined priority rules. Finally, the path with the highest score is selected as the "resource allocation scheme," representing the optimal request-response path under the current network topology and load conditions. This approach is essentially a sequence of nodes from the task initiation node to the target execution node, ensuring continuous bandwidth, minimal latency, and maximum resource utilization efficiency.

[0151] 3) Dynamically adjust strategy execution. When node overload, task timeout, or new rule triggering is detected, the rescheduling process is initiated immediately.

[0152] like Figure 5 The diagram shown illustrates the internal operation of a predictive dynamic adjustment module.

[0153] 1) Time series forecasting and load trend analysis:

[0154] 1.1) Input: Historical data of node resources (equivalent to historical data on the actual usage of node resources) and task requirements (equivalent to theoretical values ​​of node resource data);

[0155] 1.2) Time series forecasting model: Construct an LSTM model to analyze the load cycle characteristics and long-term trend characteristics, and predict the load for a future period of time. Construct an ARIMA model to analyze the load burst characteristics, and predict the load characteristics for the short term.

[0156] 1.3) Extract periodic features, trend features, and sudden features, and combine them with task requirements (theoretical values ​​of node resource data) to predict the actual usage of node resources in the future.

[0157] 1.4) Output: Future resource requirements.

[0158] 2) Multi-agent game and fair allocation:

[0159] 2.1) Agent modeling: Abstracting computing nodes into agents.

[0160] 2.2) Agent objective: to maximize its own resource utilization and minimize energy consumption.

[0161] 2.3) Revenue Function: Based on Nash equilibrium theory, a revenue function is designed to balance individual and global interests. The revenue function U_i, as shown in the formula below, represents the revenue function of node i, where the weight coefficients (α, β, γ) are dynamically adjusted according to the node's role (e.g., edge node, central cloud node). To maximize the overall network resource utilization and load balancing, and reduce energy consumption, it is necessary to dynamically adjust task allocation to regulate the node's resource utilization, energy consumption, and load. That is, the revenue function U_i needs to be maximized by adjusting task allocation.

[0162] U_i = α * Resource utilization rate_i - β * Energy consumption_i - γ * Global load imbalance

[0163] 3) Dynamic correction and rollback mechanism:

[0164] 3.1) Deploy a lightweight monitoring agent to periodically collect node load data and compare the deviations between the predicted and actual values ​​of the LSTM and ARIMA models.

[0165] 3.2) If the deviation exceeds the threshold, model retraining or policy correction will be triggered.

[0166] 3.3) When the migration strategy causes the system indicators to deteriorate, it will automatically roll back to the previous stable state and record the abnormal scenarios for offline analysis.

[0167] Compared with the prior art, this application has the following technical advantages:

[0168] 1. Based on GNN, accurately extract and analyze information such as the resource status of nodes and the load of links in the network to enhance the reliability and generalization ability of the system. At the same time, based on the system indicators after the new rules are executed, guide the DQN model to optimize the rules and improve the quality of rule generation.

[0169] 2. The LSTM model is used to analyze the long-term trend of network load and the ARIMA model is combined to analyze the short-term trend of network load, thereby obtaining multi-dimensional load information. Then, the load is dynamically allocated based on the Nash load balancing theory to improve the overall load balancing level of the network. At the same time, the time series analysis model can be combined with historical network load data to better cope with sudden load.

[0170] 3. Dynamically allocate CPU / GPU resources to optimize computationally intensive tasks such as AI training and video rendering, reducing task completion time.

[0171] 4. Real-time task allocation in 5G / 6G edge computing (such as autonomous driving perception data processing) reduces end-to-end latency and improves service reliability.

[0172] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0173] Based on the same inventive concept, this application also provides a task scheduling apparatus for implementing the task scheduling method described above. The solution provided by this apparatus is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more task scheduling apparatus embodiments provided below can be found in the limitations of the task scheduling method described above, and will not be repeated here.

[0174] In one exemplary embodiment, such as Figure 6As shown, a task scheduling device is provided, including: an acquisition module 601, a resource allocation module 602, and a task allocation module 603, wherein:

[0175] The acquisition module 601 is used to acquire the task request initiated by the user, the scheduling rules corresponding to the current round of scheduling, and the resource topology map and historical resource data of each scheduling node.

[0176] The resource allocation module 602 is used to allocate resources to each scheduling node through the resource allocation network based on the task request, resource topology map and scheduling rules, to obtain a sequence of target scheduling nodes for each task to execute the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes.

[0177] The task allocation module 603 is used to allocate each task of the task request to each target scheduling node through the task allocation network, based on the historical resource data and task requests of each target scheduling node, so as to realize task scheduling.

[0178] In one embodiment, according to the aforementioned task scheduling device, the acquisition module acquires the user-initiated task request, the scheduling rules corresponding to the current round of scheduling, and the resource topology map and historical resource data of each scheduling node. The task request, resource topology map, and scheduling rules are then transmitted to the resource module. The resource allocation module, through the resource allocation network, allocates resources to each scheduling node based on the task request, resource topology map, and scheduling rules, obtaining a sequence of target scheduling nodes for executing the task request. This sequence includes multiple target scheduling nodes. The task allocation module, through the task allocation network, allocates each task of the task request to the corresponding target scheduling node based on the historical resource data and task request of each target scheduling node, thereby achieving task scheduling. For each task scheduling, resources are allocated to the scheduling nodes executing the scheduled task based on the task request, and tasks are further allocated to the scheduling nodes whose resources have been allocated. By performing resource allocation and task allocation, resource utilization is improved and node overload is avoided.

[0179] In one embodiment, the resource allocation module 602 is further configured to input the task request, resource topology map, and scheduling rules into the resource allocation network; the task request carries task requirements and resource requirements; the resource topology map is queried using the resource requirements to obtain multiple candidate scheduling node sequences for each task to execute the task request from each scheduling node; the candidate scheduling node sequence includes multiple candidate scheduling nodes through which resources flow; the scheduling matching degree information between the task requirements and each candidate scheduling node sequence is obtained based on each candidate scheduling node sequence, the task requirements, and the rule priority information pre-set for the scheduling rules; and the target scheduling node sequence is determined from each candidate scheduling node sequence based on the scheduling matching degree information.

[0180] In one embodiment, the task scheduling device is further configured to, upon receiving an early warning signal, return to the step of allocating resources to each scheduling node through the resource allocation network based on the task request, resource topology map, and scheduling rules to obtain a sequence of target scheduling nodes for executing the task request; the early warning signal includes at least one of the following: node overload of any target scheduling node, timeout of the task request response, and triggering of a new scheduling rule.

[0181] In one embodiment, the task allocation module 603 further includes: an input submodule, a feature extraction submodule, a demand prediction submodule, and a task allocation submodule, wherein:

[0182] The input submodule is used to input the historical resource data and task requirements of each target scheduling node into the task allocation network.

[0183] The feature extraction submodule is used to extract features from the historical resource data of each target scheduling node to obtain the temporal features of each target scheduling node.

[0184] The demand forecasting submodule is used to forecast the resource requirements of each target scheduling node based on various time-series characteristics and task requirements, and obtain the predicted resource requirements of each target scheduling node.

[0185] The task allocation submodule is used to allocate each task request to the corresponding target scheduling node according to the predicted resource requirements of each target scheduling node.

[0186] In one embodiment, the task allocation submodule is further configured to allocate each task of the task request to each target scheduling node to obtain an initial task allocation scheme; based on the predicted resource requests of each target scheduling node, adjust the task ratio of each target scheduling node in the initial task allocation scheme to obtain multiple candidate task allocation schemes; obtain the revenue value corresponding to each candidate task allocation scheme through a pre-designed revenue function; take the candidate task allocation scheme corresponding to the maximum revenue value as the target task allocation scheme, and allocate each task of the task request to each target scheduling node according to the target task allocation scheme.

[0187] In one embodiment, the acquisition module 601 further includes: an acquisition submodule, a feature acquisition submodule, and a rule acquisition submodule, wherein:

[0188] The acquisition submodule is used to acquire network information, task resource requirements, scheduling performance information, node status characteristics and link status characteristics of each scheduling node, as well as the scheduling performance index data of the previous N rounds of scheduling before the current round of scheduling; N is an integer greater than or equal to 1, and the scheduling performance index data includes scheduling completion time, resource utilization rate and scheduling success rate.

[0189] The feature acquisition submodule is used to obtain target state features that characterize the correlation between the load and each scheduling node based on the network information, task resource requirement information, scheduling performance information, node status features, and link status features of each scheduling node.

[0190] The rule acquisition submodule is used to acquire the network through scheduling rules. Based on the target state characteristics, scheduling performance index data, and task type distribution information of each task in the task request, it updates the scheduling rules corresponding to the previous round of scheduling to obtain the scheduling rules corresponding to the current round of scheduling.

[0191] In one embodiment, the rule acquisition submodule is further used to concatenate target state features, scheduling performance index data, and task type distribution information to obtain state information; input the state information into the scheduling rule acquisition network, obtain the value evaluation information of each candidate operation based on the state information, and take the candidate operation with the highest value represented by the value evaluation information as the target operation; update the scheduling rule corresponding to the previous round of scheduling based on the target operation to obtain the scheduling rule corresponding to the current round of scheduling.

[0192] In one embodiment, the rule acquisition submodule is further configured to generate a corresponding target scheduling rule according to the target operation when the target operation characterizes the addition of a new scheduling rule, and add the target scheduling rule to the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling; and to adjust the scheduling rule corresponding to the previous round of scheduling according to the target operation characterizes the adjustment of the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling.

[0193] In one embodiment, the task scheduling device further includes a task allocation adjustment module, which is used to obtain the actual resource requirements of each target scheduling node in the target task allocation scheme; if the deviation between the actual resource requirements of each target scheduling node and the corresponding predicted resource requirements is greater than a preset deviation threshold, the device returns to the step of allocating each task of the task request to each target scheduling node through the task allocation network according to the historical resource data and task requests of each target scheduling node.

[0194] In one embodiment, after allocating each task request to each target scheduling node to achieve task scheduling, the task scheduling device is further configured to obtain the scheduling performance index data of the current round of scheduling and compare the scheduling performance index data of the current round of scheduling with the scheduling performance index data of the previous round of scheduling; if the comparison result indicates a decline in scheduling performance, the system state of the previous round of scheduling is rolled back.

[0195] Each module in the aforementioned task scheduling device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0196] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 7 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operating system and computer programs stored in the non-volatile storage media. The database stores task requests, scheduling rules, resource topology maps of each scheduling node, and historical resource data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communication with external terminals via a network connection. When executed by the processor, the computer program implements a task scheduling method.

[0197] Those skilled in the art will understand that Figure 7 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0198] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the task scheduling method of the above embodiment.

[0199] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the task scheduling method of the above embodiment.

[0200] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the task scheduling method of the above embodiments.

[0201] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0202] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

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

[0204] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A task scheduling method, characterized in that, The method includes: Obtain the user-initiated task request, the scheduling rules corresponding to this round of scheduling, and the resource topology and historical resource data of each scheduling node; Through a resource allocation network, based on the task request, the resource topology map, and the scheduling rules, resources are allocated to each of the scheduling nodes to obtain a sequence of target scheduling nodes for executing the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes. Through the task allocation network, based on the historical resource data of each target scheduling node and the task request, each task of the task request is allocated to each target scheduling node to achieve task scheduling.

2. The method according to claim 1, characterized in that, The step of allocating resources to each scheduling node through a resource allocation network based on the task request, the resource topology map, and the scheduling rules to obtain a sequence of target scheduling nodes for executing the task request includes: The task request, the resource topology map, and the scheduling rules are input into the resource allocation network; the task request carries task requirements and resource requirements. By querying the resource topology map using the resource requirements, a sequence of multiple candidate scheduling nodes for executing each task of the task request is obtained from each of the scheduling nodes; the sequence of candidate scheduling nodes includes multiple candidate scheduling nodes through which resources flow. Based on the candidate scheduling node sequence, the task requirement, and the rule priority information pre-set for the scheduling rule, obtain the scheduling matching degree information between the task requirement and the candidate scheduling node sequence; Based on the scheduling matching information, the target scheduling node sequence is determined from each of the candidate scheduling node sequences.

3. The method according to claim 2, characterized in that, The method further includes: Upon receiving an early warning signal, the process returns to the step of allocating resources to each of the scheduling nodes through the resource allocation network based on the task request, the resource topology map, and the scheduling rules, to obtain a sequence of target scheduling nodes for executing the task request; the early warning signal includes at least one of the following: node overload of any target scheduling node, timeout of the response to the task request, and triggering of a new scheduling rule.

4. The method according to claim 2, characterized in that, The step of allocating tasks from the task request to the target scheduling nodes through the task allocation network, based on the historical resource data of each target scheduling node and the task request, includes: The historical resource data of each target scheduling node and the task requirements are input into the task allocation network; Feature extraction is performed on the historical resource data of each target scheduling node to obtain the temporal features of each target scheduling node; Based on the time-series characteristics and task requirements, resource requirements of each target scheduling node are predicted to obtain the predicted resource requirements of each target scheduling node. According to the predicted resource requirements of each target scheduling node, each task in the task request is assigned to each target scheduling node.

5. The method according to claim 4, characterized in that, The step of allocating each task of the task request to each target scheduling node according to the predicted resource requirements of each target scheduling node includes: Each task in the task request is assigned to one of the target scheduling nodes to obtain an initial task allocation scheme; Based on the predicted resource requests of each target scheduling node, the task ratios of the tasks corresponding to each target scheduling node in the initial task allocation scheme are adjusted to obtain multiple candidate task allocation schemes. The revenue value corresponding to each candidate task allocation scheme is obtained by using a pre-designed revenue function. The candidate task allocation scheme corresponding to the maximum profit value is taken as the target task allocation scheme, and each task of the task request is allocated to the target scheduling node according to the target task allocation scheme.

6. The method according to claim 1, characterized in that, The scheduling rules for this round of scheduling are obtained through the following steps: The system acquires network information, task resource requirement information, scheduling performance information, node status characteristics, and link status characteristics of each scheduling node, as well as scheduling performance index data from the previous N rounds of scheduling before the current round; where N is an integer greater than or equal to 1, and the scheduling performance index data includes scheduling completion time, resource utilization rate, and scheduling success rate. Based on the network information, task resource requirement information, scheduling performance information, node status characteristics, and link status characteristics of each scheduling node, target status characteristics are obtained to characterize the correlation between the load and each scheduling node. The network is obtained through scheduling rules. Based on the target state characteristics, the scheduling performance index data, and the task type distribution information of each task in the task request, the scheduling rules corresponding to the previous round of scheduling are updated to obtain the scheduling rules corresponding to the current round of scheduling.

7. The method according to claim 6, characterized in that, The process of obtaining network information through scheduling rules, updating the scheduling rules corresponding to the previous round of scheduling based on the target state characteristics, the scheduling performance index data, and the task type distribution information of each task in the task request, to obtain the scheduling rules corresponding to the current round of scheduling, includes: By concatenating the target state features, the scheduling performance index data, and the task type distribution information, state information is obtained. The state information is input into the scheduling rule to obtain the network, and the value evaluation information of each candidate operation is obtained according to the state information. The candidate operation with the highest value represented by the value evaluation information is taken as the target operation. Update the scheduling rules corresponding to the previous round of scheduling based on the target operation to obtain the scheduling rules corresponding to the current round of scheduling.

8. The method according to claim 7, characterized in that, The step of updating the scheduling rule corresponding to the previous round of scheduling according to the target operation to obtain the scheduling rule corresponding to the current round of scheduling includes: When the target operation represents a new scheduling rule, a corresponding target scheduling rule is generated according to the target operation, and the target scheduling rule is added to the scheduling rule corresponding to the previous round of scheduling to obtain the scheduling rule corresponding to the current round of scheduling. When the target operation characterizes the adjustment of the scheduling rules, the scheduling rules corresponding to the previous round of scheduling are adjusted according to the target operation to obtain the scheduling rules corresponding to the current round of scheduling.

9. The method according to any one of claims 1-8, characterized in that, The method further includes: Obtain the actual resource requirements of each target scheduling node in the target task allocation scheme; If the deviation between the actual resource demand and the corresponding predicted resource demand of each target scheduling node is greater than a preset deviation threshold, the process returns to the step of allocating each task of the task request to each target scheduling node through the task allocation network, based on the historical resource data of each target scheduling node and the task request.

10. The method according to claim 1, characterized in that, After assigning each task of the task request to the corresponding target scheduling node to achieve task scheduling, the method further includes: Obtain the scheduling performance metrics data for this round of scheduling, and compare the scheduling performance metrics data for this round of scheduling with the scheduling performance metrics data for the previous round of scheduling; If the comparison results indicate a decline in scheduling performance, the system is rolled back to the state of the previous scheduling round.

11. A task scheduling device, characterized in that, The device includes: The acquisition module is used to acquire user-initiated task requests, scheduling rules corresponding to the current round of scheduling, and resource topology diagrams and historical resource data of each scheduling node; The resource allocation module is used to allocate resources to each of the scheduling nodes through a resource allocation network based on the task request, the resource topology map, and the scheduling rules, to obtain a sequence of target scheduling nodes for executing the task request; the sequence of target scheduling nodes includes multiple target scheduling nodes. The task allocation module is used to allocate each task of the task request to each of the target scheduling nodes through the task allocation network, based on the historical resource data of each target scheduling node and the task request, so as to realize task scheduling.

12. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 10.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.

14. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.