Distributed task scheduling method, device and system, electronic equipment and storage medium

By acquiring and evaluating real-time resource usage and task requests on edge nodes, combining reinforcement learning and distributed consistency algorithms to dynamically allocate tasks, the problem of low task scheduling efficiency in traditional methods is solved, and efficient and intelligent Task scheduling and resource utilization.

CN119473531APending Publication Date: 2025-02-18CHINA TELECOM CORP LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411417403.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-11
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

Traditional task scheduling methods are difficult to efficiently and intelligently schedule tasks in a large number of distributed edge nodes, resulting in low data processing delays and resource utilization.

Method used

By obtaining the real-time resource usage and task requests of each edge node, evaluating and predicting, generating smooth data sequence and time series task requirements, combining Deep Q-Network reinforcement learning algorithm and Paxos distributed consistency algorithm, dynamic adaptive allocation Tasks and load balancing.

Benefits of technology

It realizes efficient and intelligent scheduling of tasks between edge nodes, reduces data processing delays, improves resource utilization, and enhances system flexibility and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119473531A_ABST
    Figure CN119473531A_ABST
Patent Text Reader

Abstract

The invention provides a distributed task scheduling method, device and system, electronic equipment and a storage medium. The distributed task scheduling method comprises the following steps: acquiring the use condition of real-time resources of each edge node collected by a plurality of terminals and task requests of the plurality of terminals; evaluating the use condition of the real-time resource of each edge node to obtain a smooth data sequence of the state of each edge node; predicting a real-time resource use condition and a task request of each edge node to obtain a time sequence task demand of each edge node at a future time point; according to the smooth data sequence and time sequence task requirements of the state of each edge node and the obtained historical task execution efficiency, tasks are distributed to each edge node in a self-adaptive mode; when the task demand of each edge node changes or the edge nodes have resource shortage, the task allocation queues are dynamically adjusted based on the corresponding task priorities and the load conditions of the corresponding edge nodes, load balancing is achieved, and the resource utilization rate is increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of information technology, and in particular to a distributed task scheduling method, device, system, electronic device and computer-readable storage medium. Background Art

[0002] With the rapid development of IT intelligence and Internet of Things technology, the location where data is generated and processed is gradually shifting to the edge of the network to relieve the pressure on central servers and reduce data transmission delays.

[0003] In related technologies, traditional task scheduling methods often find it difficult to cope with the dynamics and uncertainty of edge environments. Therefore, how to efficiently and intelligently schedule tasks in a large number of distributed edge nodes, reduce data processing delays, and achieve efficient resource utilization is a technical problem that has yet to be solved. Summary of the invention

[0004] The present invention provides a distributed task scheduling method, device, system, electronic device and storage medium to at least solve the problem in the related art that tasks cannot be efficiently and intelligently scheduled in a large number of distributed edge nodes, resulting in data processing delays and low resource utilization. The technical solution of the present invention is as follows:

[0005] According to a first aspect of an embodiment of the present invention, a distributed task scheduling method is provided, comprising:

[0006] Obtain the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals;

[0007] Evaluate the usage of the real-time resources of each edge node to obtain a smoothed data sequence of the state of each edge node;

[0008] Predicting the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point;

[0009] According to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency, adaptively assigning tasks to each edge node;

[0010] When the task requirements of each edge node change or the resources of the edge node are tight, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the corresponding edge node to achieve load balancing.

[0011] Optionally, the evaluating the real-time resource usage of each edge node to obtain a smoothed data sequence of the state of each edge node includes:

[0012] The real-time resource usage of each edge node is evaluated using a sliding average preprocessing algorithm to obtain a smoothed data sequence of the state of each edge node.

[0013] Optionally, the use of a sliding average preprocessing algorithm to evaluate the usage of the real-time resources of each edge node to obtain a smoothed data sequence of the state of each edge node includes:

[0014] Selecting the real-time resources of each edge node according to a set smoothing period to obtain a data sequence of multiple data points;

[0015] Determine the average value of the data within the smoothing period;

[0016] The distance of one data point is gradually moved to the right from the starting position of the data sequence as a sliding window, and the average value of the data in each cycle after sliding is calculated in turn to generate a smoothed data sequence of each edge node state.

[0017] Optionally, predicting the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point includes:

[0018] The real-time resource usage of each edge node and the task request are predicted through the differential autoregressive moving average ARIMA model to obtain the time series task requirements of each edge node at future time points.

[0019] Optionally, the method further includes: pre-training a differential autoregressive moving average ARIMA model in the following manner:

[0020] Acquire a training set, the training set comprising: an original time series of resource usage of multiple edge nodes;

[0021] Performing data preprocessing on each edge node in the training set to determine the stationarity of the original time series of the corresponding edge node;

[0022] Determining the order of the ARIMA model based on the stationary original time series;

[0023] Establishing a mathematical expression of the ARIMA model based on the order of the ARIMA model;

[0024] Estimate the parameters of the ARIMA model using the maximum likelihood estimation method;

[0025] When the residual of the ARIMA model satisfies the white noise assumption, it is determined that the ARIMA model is a trained ARIMA model.

[0026] Optionally, adaptively allocating tasks to each edge node according to the smoothed data sequence of each edge node state, time series task requirements, and acquired historical task execution efficiency includes:

[0027] The scheduling algorithm based on Deep Q-Network reinforcement learning inputs the smoothed data sequence of the edge node status, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and assigns tasks to each edge node according to the optimization strategy.

[0028] Optionally, the scheduling algorithm based on Deep Q-Network reinforcement learning inputs the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and assigns tasks to each edge node according to the optimization strategy, including:

[0029] Execute allocation decisions in the environment according to the current strategy, collect experience parameters, and store the experience parameters in an experience replay buffer;

[0030] A batch of samples are randomly extracted from the experience replay buffer, and the weights of the main network are updated based on the extracted samples through the back propagation algorithm, so that the Q value predicted by the main network is closer to the target Q value of the target network, wherein the target Q value is composed of the immediate reward r plus the maximum Q value of the next state calculated from the target network;

[0031] At every set number of steps or when the main network training is stable, the weights of the main network are updated to the target network to maintain the smoothness of the target Q value.

[0032] Optionally, when the task demand of each edge node changes or the resources of the edge node are insufficient, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing, including:

[0033] When the task requirements of each edge node change or a bottleneck occurs in the edge node resources, the global view is updated through the distributed coordination center, and the Paxos distributed consistency algorithm is used to ensure the consistency of decisions. Based on the corresponding task priority and the load of the corresponding edge node, the task allocation queue is dynamically adjusted to achieve load balancing.

[0034] According to a second aspect of an embodiment of the present invention, a distributed task scheduling device is provided, comprising:

[0035] An acquisition module is used to acquire the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals;

[0036] An evaluation module is used to evaluate the usage of the real-time resources of each edge node to obtain a smooth data sequence of the state of each edge node.

[0037] A prediction module, used to predict the real-time resource usage of each edge node and the task request, and obtain the time series task requirements of each edge node at a future time point;

[0038] A strategy allocation module, used to adaptively allocate tasks to each edge node according to the smoothed data sequence of each edge node state, time series task requirements, and the acquired historical task execution efficiency;

[0039] The dynamic adjustment module is used to dynamically adjust the task allocation queue to achieve load balancing based on the corresponding task priority and the load of the edge node when the task demand of each edge node changes or the resources of the edge node are tight.

[0040] Optionally, the evaluation module is specifically used to evaluate the real-time resource usage of each edge node using a sliding average preprocessing algorithm to obtain a smoothed data sequence of the state of each edge node.

[0041] Optionally, the evaluation module includes:

[0042] A selection module, used to select the real-time resources of each edge node according to a set smoothing period to obtain a data sequence of multiple data points;

[0043] A determination module, used to determine the average value of the data within the smoothing period;

[0044] The calculation module is used to gradually move the distance of one data point to the right from the starting position of the data sequence as a sliding window, calculate the average value of the data in each cycle after sliding in turn, and generate a smooth data sequence of each edge node state.

[0045] Optionally, the prediction module is specifically used to predict the real-time resource usage of each edge node and the task request through a differential autoregressive moving average (ARIMA) model to obtain the time series task requirements of each edge node at a future time point.

[0046] Optionally, the device further includes: a training module, used for pre-training a differential autoregressive moving average (ARIMA) model in the following manner.

[0047] Optionally, the training module includes:

[0048] A training set acquisition module is used to acquire a training set, wherein the training set includes: an original time series of resource usage of multiple edge nodes;

[0049] A preprocessing module, used to perform data preprocessing on each edge node in the training set to determine the stationarity of the original time series of the corresponding edge node;

[0050] A model order determination module, used to determine the order of the ARIMA model based on a stationary original time series;

[0051] An establishment module is used to establish a mathematical expression of the ARIMA model based on the order of the ARIMA model;

[0052] A parameter estimation algorithm for estimating parameters in the ARIMA model using a maximum likelihood estimation method;

[0053] The model determination module is used to determine that the ARIMA model is a trained ARIMA model when the residual of the ARIMA model satisfies the white noise assumption.

[0054] Optionally, the strategy allocation module is used for a scheduling algorithm based on Deep Q-Network reinforcement learning, which inputs the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and allocates tasks to each edge node according to the optimization strategy.

[0055] Optionally, the policy allocation module includes:

[0056] A parameter acquisition module, used to execute allocation decisions in the environment according to the current strategy, acquire experience parameters, and store the experience parameters in an experience playback buffer;

[0057] An extraction module, used for randomly extracting a batch of samples from the experience replay buffer;

[0058] A first updating module is used to update the weight of the main network based on the extracted samples through a back propagation algorithm, so that the Q value predicted by the main network is closer to the target Q value of the target network, wherein the target Q value is composed of the immediate reward r plus the maximum Q value of the next state calculated from the target network;

[0059] The second updating module is used to update the weights of the main network to the target network at every set number of steps or when the main network training is stable, so as to maintain the smoothness of the target Q value.

[0060] Optionally, the dynamic adjustment module is specifically used to update the global view through the distributed coordination center when the task demand of each edge node changes or a bottleneck occurs in the edge node resources, adopt the Paxos distributed consistency algorithm to ensure the consistency of decisions, and dynamically adjust the task allocation queue based on the corresponding task priority and the load of the edge node to achieve load balancing.

[0061] According to a third aspect of an embodiment of the present invention, a distributed task scheduling system is provided, including:

[0062] The edge node cluster is used to receive and process task requests from multiple terminals, and obtain the real-time resource usage of each edge node collected by multiple terminals, evaluate the real-time resource usage of each edge node, and obtain a smoothed data sequence of each edge node state; and predict the real-time resource usage of each edge node to obtain the time series task requirements of each edge node at a future time point;

[0063] The data and status synchronization module is used to synchronize the task requests of multiple terminals, the smoothed data sequence of each edge node state after processing by the edge node cluster, and the time series task requirements of each edge node at a future time point to the intelligent scheduling engine and the distributed coordination center, so as to ensure the real-time synchronization of the task status and resource status between each edge node;

[0064] An intelligent scheduling engine, configured to adaptively assign tasks to each edge node based on the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency;

[0065] The distributed coordination center is used to dynamically adjust the task allocation queue to achieve load balancing based on the corresponding task priority and the load of the edge node when the task requirements of each edge node change or the resources of the edge node are tight.

[0066] According to a fourth aspect of an embodiment of the present invention, there is provided an electronic device, including:

[0067] processor;

[0068] a memory for storing instructions executable by the processor;

[0069] The processor is configured to execute the instructions to implement the distributed task scheduling method as described above.

[0070] According to a fifth aspect of an embodiment of the present invention, a computer-readable storage medium is provided. When instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the distributed task scheduling method as described above.

[0071] According to a sixth aspect of an embodiment of the present invention, there is provided a computer program product, comprising a computer program or instructions, which, when executed by a processor of an electronic device, implements the distributed task scheduling method as described above.

[0072] The technical solution provided by the embodiments of the present invention brings at least the following beneficial effects:

[0073] In an embodiment of the present invention, the usage of real-time resources of each edge node collected by multiple terminals and the task requests of multiple terminals are obtained; the usage of real-time resources of each edge node is evaluated to obtain a smooth data sequence of the state of each edge node; the real-time resource usage of each edge node and the task request are predicted to obtain the time series task requirements of each edge node at a future time point; tasks are adaptively assigned to each edge node according to the smooth data sequence of the state of each edge node, the time series task requirements, and the acquired historical task execution efficiency; when the task requirements of each edge node change or the edge node has resource shortages, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing. That is to say, in an embodiment of the present invention, the real-time resources of the edge node are evaluated and predicted, and by integrating distributed computing, machine learning and adaptive strategies, the dynamic optimization allocation of tasks between edge nodes is achieved to achieve optimal resource utilization and efficient execution of tasks.

[0074] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0075] The drawings herein are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present invention, and are used together with the specification to explain the principles of the present invention, and do not constitute an improper limitation of the present invention. In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings required for use in the embodiments or the prior art description will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0076] Figure 1 It is a flow chart of a distributed task scheduling method provided by an embodiment of the present invention.

[0077] Figure 2 It is a block diagram of a distributed task scheduling device provided by an embodiment of the present invention.

[0078] Figure 3 It is a block diagram of an evaluation module provided by an embodiment of the present invention.

[0079] Figure 4 It is a block diagram of a policy allocation module provided by an embodiment of the present invention.

[0080] Figure 5It is a block diagram of a distributed task scheduling system provided by an embodiment of the present invention.

[0081] Figure 6 It is a block diagram of an electronic device provided by an embodiment of the present invention.

[0082] Figure 7 It is a block diagram of a device for distributed task scheduling provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0083] In order to enable ordinary persons in the art to better understand the technical solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings.

[0084] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.

[0085] Figure 1 is a flow chart of a distributed task scheduling method provided by an embodiment of the present invention. Figure 1 As shown, the method comprises the following steps:

[0086] Step 101: Acquire the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals.

[0087] Step 102: Evaluate the usage of the real-time resources of each edge node to obtain a smoothed data sequence of the state of each edge node.

[0088] Step 103: predicting the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point.

[0089] Step 104: adaptively assign tasks to each edge node according to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency.

[0090] Step 105: When the task demand of each edge node changes or the resources of the edge node are scarce, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing.

[0091] The distributed task scheduling method described in the present invention can be applied to terminals, servers, etc., without limitation herein. The terminal implementation device can be an electronic device such as a smart phone, a laptop computer, a tablet computer, a desktop computer, a personal digital assistant (PDA, Personal Digital Assistant) and a wearable device. The server can be an independent server or a server cluster, or a server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, intermediate services, domain name services, security services, content distribution networks, or a big data and artificial intelligence platform, etc., without limitation herein.

[0092] Combine the following Figure 1 , the specific implementation steps of a distributed task scheduling method provided by an embodiment of the present invention are described in detail.

[0093] In step 101, the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals are obtained.

[0094] In this step, a periodic heartbeat collection mechanism can be used to collect the real-time resource usage of each edge node collected by multiple terminals, as well as the task requests received by multiple terminals. The real-time resource usage may include but is not limited to indicators such as CPU utilization, memory utilization, and bandwidth utilization.

[0095] In step 102, the usage of the real-time resources of each edge node is evaluated to obtain a smoothed data sequence of the state of each edge node.

[0096] In this step, the real-time resource usage of each edge node can be evaluated using a sliding average preprocessing algorithm to obtain a smoothed data sequence of each edge node state. Specifically, the method includes: selecting the real-time resources of each edge node according to a set smoothing period to obtain a data sequence of multiple data points; determining the average value of the data within the smoothing period; gradually moving the distance of one data point to the right from the starting position of the data sequence as a sliding window, and sequentially calculating the average value of the data in each period after sliding to generate a smoothed data sequence of each edge node state.

[0097] In other words, node status monitoring and evaluation can be performed by smoothing data fluctuations through the sliding average preprocessing algorithm to monitor and evaluate node indicator status, and through this process, accurate node status information is provided for subsequent decision-making. The process of the sliding average preprocessing algorithm is as follows:

[0098] 1) Determine the smoothing cycle: First, determine a cycle range. The range size determines the degree of smoothing. The larger the cycle, the stronger the smoothing effect, but at the same time more detailed information may be lost. According to the general data monitoring cycle, the cycle time can be 30 minutes, 60 minutes or 80 minutes, etc. The specific cycle time can be determined according to actual needs and is not limited in this embodiment.

[0099] 2) Data initialization: Select and collect real-time resources of each edge node, including but not limited to CPU utilization, memory utilization, bandwidth utilization and other indicators.

[0100] It should be noted that at the beginning of the data sequence, when the period is not completely covered, the average value may not be calculated and special processing is required. For example, a simple average of the first few items can be used.

[0101] 3) Calculate the average value: add up the indicator values ​​of each data point within the period and divide by the size of the period to get the average value of the data within the period.

[0102] 4) Sliding window: The period gradually moves to the right by the distance of one data point from the beginning of the data sequence.

[0103] 5) Repeat calculation: Each time you slide, recalculate the average value including the new position data.

[0104] 6) Generate a smoothed sequence: Through the above process, a new data sequence can be obtained, in which each point is the average value of the original data in its corresponding period. This sequence is the result of smoothing and is called a smoothed data sequence.

[0105] In step 103, the real-time resource usage of each edge node and the task request are predicted to obtain the time series task requirements of each edge node at a future time point.

[0106] This step includes: predicting the real-time resource usage of each edge node and the task request through a differential autoregressive moving average ARIMA model to obtain the time series task requirements of each edge node at a future time point.

[0107] The ARIMA model used in this embodiment is usually a trained ARIMA model.

[0108] Optionally, the method further includes: pre-training a differential autoregressive moving average ARIMA model in the following manner: obtaining a training set, the training set including: an original time series of resource usage of multiple edge nodes; performing data preprocessing on each edge node in the training set to determine the stationarity of the original time series of the corresponding edge node; determining the order of the ARIMA model based on the stationary original time series, the order including: the value of the autoregressive term p, the value of the differential number d, and the value of the moving average term q; establishing a mathematical expression of the ARIMA model based on the order of the ARIMA model; estimating the parameters in the ARIMA model using the maximum likelihood estimation (MLE) method; determining that the ARIMA model is a trained ARIMA model when the ARIMA model residual satisfies the white noise assumption. The specific training process is already a well-known technique for those skilled in the art and will not be repeated here.

[0109] In this step, the original time series data of the task requests received from multiple terminals are first cleaned and missing values ​​are processed. Data smoothing, outlier detection and removal may be required to ensure data quality. The specific processing process is the same as the node status and monitoring and evaluation process in the above step 102. For details, see above.

[0110] Among them, the prediction process includes: firstly performing time series task demand analysis, and then performing analysis through the differential autoregressive moving average ARIMA model. It should be noted that the ARIMA model in this embodiment is a classic statistical method in time series analysis, which is widely used to predict future data points, especially when processing non-stationary time series data such as edge nodes that are affected by environmental changes.

[0111] 1. Data preprocessing:

[0112] That is to check the stationarity. You can use the ADF (Augmented Dickey-Fuller) test to determine whether the time series is stationary. If it is not stationary, you need to perform a difference operation until the series is stationary. If it is stationary, directly execute the following steps.

[0113] 2. Determine the order: Determine the values ​​of p (autoregressive term), d (number of differences), and q (moving average term) in the ARIMA model through autocorrelation diagram (ACF) and partial autocorrelation diagram (PACF) analysis, which specifically includes the following steps:

[0114] 21) Determine the number of differences d

[0115] It is necessary to check whether the original time series of the indicator performance collected by the edge node is stable. Specifically, the ADF method can be used to perform a unit root test.

[0116] 22) Analyze the autocorrelation diagram (ACF) to determine p

[0117] The autocorrelation plot shows the correlation between the series and its lagged values. If the ACF has a tail before gradually decaying to zero, this indicates that the series may have an autoregressive component.

[0118] 23) Analyze the partial autocorrelation diagram (PACF) to determine q

[0119] The partial autocorrelation plot shows the correlation between the sequence and the lagged values ​​after controlling for the influence of other lagged values ​​in the sequence. If the PACF is truncated after a certain order (i.e., it suddenly drops to a level close to zero), it indicates that there may be a moving average term in the sequence, and the order is the truncated position plus 1. If the PACF drops to an insignificant level after the qth order, then q is considered to be the order of the moving average term.

[0120] Based on the above determined order, the following is the creation and forecasting process of the ARIMA model:

[0121] 1) Model establishment:

[0122] According to the determined order (p, d, q), the mathematical expression of the ARIMA model is established.

[0123] 2) Parameter estimation:

[0124] The parameters in the ARIMA model are estimated using methods such as maximum likelihood estimation (MLE).

[0125] 3) Model verification:

[0126] Residual test: Check whether the residuals of the ARIMA model meet the white noise assumption. Specifically, it can be tested through the autocorrelation plot and Q statistic of the residuals.

[0127] 4) Model diagnosis:

[0128] Analyze residual plots to check for heteroskedasticity, autocorrelation, or other violations of model assumptions.

[0129] 3. Model prediction:

[0130] Use the trained model to predict future time points of edge nodes.

[0131] 4. Model evaluation:

[0132] By comparing the predicted values ​​with the actual values, the prediction accuracy of the model is evaluated using indicators such as mean square error (MSE) and root mean square error (RMSE).

[0133] It should be noted that the creation, prediction and evaluation process of the ARIMA model is already a well-known technology for those skilled in the art and will not be described in detail here.

[0134] In step 104, tasks are adaptively assigned to each edge node according to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency.

[0135] In this step, the scheduling algorithm based on Deep Q-Network reinforcement learning inputs the smoothed data sequence of the edge node state, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and assigns tasks to each edge node according to the optimization strategy, specifically including:

[0136] Execute allocation decisions in the environment according to the current strategy, collect experience parameters, and store them in the experience replay buffer; randomly extract a batch of samples from the experience replay buffer, and update the weights of the main network based on the extracted samples through the back propagation algorithm, so that the Q value predicted by the network is closer to the target Q value of the target network, wherein the target Q value is the instant reward r plus the maximum Q value of the next state calculated from the target network; update the weights of the main network to the target network every set number of steps or when the main network training is stable to maintain the smoothness of the target Q value.

[0137] That is to say, in this embodiment, the scheduling algorithm based on Deep Q-Network reinforcement learning takes node status, task demand prediction, and historical task execution efficiency as state input, allocation decision as action, task completion time, resource utilization, etc. as reward signals, and optimizes the task allocation strategy to each node through continuous interactive learning with the environment. The specific operation process is as follows:

[0138] Sampling: Execute actions in the environment according to the current strategy (usually the ε-greedy strategy), collect experience parameters (s, a, r, s'), and store the experience parameters in the experience replay buffer.

[0139] Learning: Randomly extract a batch of samples from the experience replay, and use these samples to update the weights of the main network through the back-propagation algorithm, so that the Q value predicted by the network is closer to the target Q value of the target network. The target Q value consists of the immediate reward r plus the maximum Q value of the next state calculated from the target network (γmaxQ(s',a';θ-)), where γ is the discount factor and θ- represents the weight of the target network.

[0140] Update the target network: Every set number of steps or when the main network training is stable, the weights of the main network are copied to the target network to maintain the smoothness of the target Q value.

[0141] The embodiment of the present invention uses the Deep Q-Network reinforcement learning scheduling algorithm to solve the problem of edge node allocation of adaptive tasks and decision making. The Deep Q-Network reinforcement learning scheduling algorithm is already a well-known technology for those skilled in the art and will not be described in detail here.

[0142] Among them, adaptation refers to the automatic adjustment of processing methods, processing sequence, processing parameters, boundary conditions or constraints according to the data characteristics of the processed data during the processing and analysis process, so that they are adapted to the statistical distribution characteristics and structural characteristics of the processed data to achieve the best processing effect.

[0143] In step 105, when the task demand of each edge node changes or the resources of the edge node are in short supply, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing.

[0144] In this step, when the task requirements of each edge node change or a bottleneck occurs in the edge node resources, the global view is updated through the distributed coordination center, and the Paxos distributed consistency algorithm is used to ensure the consistency of decisions. Based on the corresponding task priority and the load of the edge node, the task allocation queue is dynamically adjusted to achieve load balancing.

[0145] In other words, in this step, distributed collaboration and load balancing are achieved:

[0146] When the task requirements of edge nodes change or bottlenecks occur in edge node resources, the global view is updated through the distributed coordination center, and the Paxos distributed consistency algorithm is used to ensure the consistency of decisions. Here we use the proposal number method to ensure consistency (each proposal has a unique proposal number to distinguish different proposals, and the proposal number is monotonically increasing. Higher proposal numbers have higher priorities, ensuring that newer proposals can overwrite older proposals). At the same time, based on task priority and node load, the task allocation queue is dynamically adjusted to achieve load balancing.

[0147] In an embodiment of the present invention, the usage of real-time resources of each edge node collected by multiple terminals and the task requests of multiple terminals are obtained; the usage of real-time resources of each edge node is evaluated to obtain a smooth data sequence of the state of each edge node; the real-time resource usage of each edge node and the task request are predicted to obtain the time series task requirements of each edge node at a future time point; tasks are adaptively assigned to each edge node according to the smooth data sequence of the state of each edge node, the time series task requirements, and the acquired historical task execution efficiency; when the task requirements of each edge node change or the edge node has resource shortages, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing. That is to say, in an embodiment of the present invention, the real-time resources of the edge node are evaluated and predicted, and by integrating distributed computing, machine learning and adaptive strategies, the dynamic optimization allocation of tasks between edge nodes is achieved, the data processing time is shortened, and the resource utilization rate is improved.

[0148] The embodiment of the present invention proposes a dynamic and adaptive distributed architecture: Traditional edge computing solutions often focus on static resource allocation and fixed task deployment, while the present invention designs a highly dynamic and adaptive distributed architecture that can intelligently adjust data processing strategies based on real-time data flow characteristics, node resource status, and network conditions. This not only improves the flexibility of the system, but also greatly enhances the ability to respond to sudden traffic and resource fluctuations, ensuring the continuity and quality of services.

[0149] The embodiment of the present invention proposes an intelligent routing and load balancing mechanism: it adopts an advanced intelligent routing algorithm, combined with a machine learning model, which can accurately identify the characteristics and processing requirements of data streams, thereby achieving efficient data diversion. Compared with traditional rule-based load balancing, this mechanism is more refined, can more reasonably allocate tasks, avoid resource waste and node overload, and improve the processing efficiency and stability of the entire system.

[0150] The embodiment of the present invention proposes an integrated real-time stream processing and optimization engine: by developing a customized high-performance stream processing engine, combined with state management and real-time optimization strategies, the present invention can efficiently process complex data streams, and continuously learn and adjust during the processing process to adapt to changes in data patterns and requirements. This integrated design not only speeds up data processing, but also ensures the accuracy and consistency of processing results.

[0151] The self-learning and optimization capabilities are proposed in the embodiments of the present invention: through the intelligent optimization and adaptive learning module, the processing logic and resource allocation strategy can be continuously optimized according to historical data and real-time feedback. This feature gives the system the ability to self-evolve, enabling it to continuously optimize performance in a constantly changing environment, reflecting the innovative transformation from passive response to active learning and adaptation.

[0152] In summary, the embodiments of the present invention integrate advanced data processing technologies and intelligent algorithms to construct a comprehensive, efficient and adaptable edge node real-time stream processing system, which solves many challenges faced by existing technologies in processing large-scale and diversified real-time data streams, and significantly improves the technical level and application potential in the field of edge computing.

[0153] The embodiments of the present invention improve resource utilization efficiency: through intelligent prediction and dynamic scheduling, edge node resources are effectively utilized to avoid resource waste and overload. Task processing delay is reduced: tasks are processed nearby, data transmission distance is reduced, and response speed is improved. System flexibility and stability are enhanced: adaptive scheduling strategies can quickly respond to environmental changes and improve system robustness and reliability. User experience is optimized: efficient task processing and low-latency response directly improve end-user satisfaction.

[0154] It should be noted that, for the method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should know that this implementation disclosure is not limited by the order of the actions described, because according to the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the present invention.

[0155] Figure 2 2 is a block diagram of a distributed task scheduling device provided by an embodiment of the present invention. The device includes: an acquisition module 201, an evaluation module 202, a prediction module 203, a strategy allocation module 204 and a dynamic adjustment module 205, wherein:

[0156] An acquisition module 201 is used to acquire the usage of real-time resources of each edge node collected by multiple terminals and task requests of multiple terminals;

[0157] Evaluation module 202, used to evaluate the usage of real-time resources of each edge node, and obtain a smooth data sequence of each edge node state.

[0158] The prediction module 203 is used to predict the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point;

[0159] A strategy allocation module 204 is used to adaptively allocate tasks to each edge node according to the smoothed data sequence of each edge node state, time series task requirements, and the acquired historical task execution efficiency;

[0160] The dynamic adjustment module 205 is used to dynamically adjust the task allocation queue to achieve load balancing based on the corresponding task priority and the load of the edge node when the task demand of each edge node changes or the resources of the edge node are tight.

[0161] Optionally, the evaluation module is specifically used to evaluate the real-time resource usage of each edge node using a sliding average preprocessing algorithm to obtain a smoothed data sequence of the state of each edge node.

[0162] Optionally, the evaluation module 202 includes: a selection module 301, a determination module 302 and a calculation module 303, and its structural block diagram is as follows: Figure 3 As shown,

[0163] A selection module 301 is used to select the real-time resources of each edge node according to a set smoothing period to obtain a data sequence of multiple data points;

[0164] A determination module 302 is used to determine the average value of the data within the smoothing period;

[0165] The calculation module 303 is used to gradually move the distance of one data point to the right from the starting position of the data sequence as a sliding window, calculate the average value of the data in each cycle after sliding, and generate a smooth data sequence of each edge node state.

[0166] Optionally, the prediction module is specifically used to predict the real-time resource usage of each edge node and the task request through a differential autoregressive moving average (ARIMA) model to obtain the time series task requirements of each edge node at a future time point.

[0167] Optionally, the device further includes: a training module, used for pre-training a differential autoregressive moving average (ARIMA) model in the following manner.

[0168] Optionally, the training module includes:

[0169] A training set acquisition module is used to acquire a training set, wherein the training set includes: an original time series of resource usage of multiple edge nodes;

[0170] A preprocessing module, used to perform data preprocessing on each edge node in the training set to determine the stationarity of the original time series of the corresponding edge node;

[0171] A model order determination module, used to determine the order of the ARIMA model based on a stationary original time series;

[0172] An establishment module is used to establish a mathematical expression of the ARIMA model based on the order of the ARIMA model;

[0173] A parameter estimation algorithm for estimating parameters in the ARIMA model using a maximum likelihood estimation method;

[0174] The model determination module is used to determine that the ARIMA model is a trained ARIMA model when the residual of the ARIMA model satisfies the white noise assumption.

[0175] Optionally, the strategy allocation module is used for a scheduling algorithm based on Deep Q-Network reinforcement learning, which inputs the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and allocates tasks to each edge node according to the optimization strategy.

[0176] Optionally, the strategy allocation module 204 includes: a parameter acquisition module 401, an extraction module 402, a first update module 403 and a second update module 404, and its structural block diagram is as follows: Figure 4 As shown,

[0177] The parameter acquisition module 401 is used to execute the allocation decision in the environment according to the current strategy, acquire the experience parameters, and store the experience parameters in the experience playback buffer;

[0178] An extraction module 402, configured to randomly extract a batch of samples from the experience playback buffer;

[0179] A first updating module 403 is used to update the weight of the main network based on the extracted samples through a back propagation algorithm, so that the Q value predicted by the main network is closer to the target Q value of the target network, wherein the target Q value is composed of the immediate reward r plus the maximum Q value of the next state calculated from the target network;

[0180] The second updating module 404 is used to update the weights of the main network to the target network at every set number of steps or when the main network training is stable, so as to maintain the smoothness of the target Q value.

[0181] Optionally, the dynamic adjustment module is specifically used to update the global view through the distributed coordination center when the task demand of each edge node changes or a bottleneck occurs in the edge node resources, adopt the Paxos distributed consistency algorithm to ensure the consistency of decisions, and dynamically adjust the task allocation queue based on the corresponding task priority and the load of the edge node to achieve load balancing.

[0182] Optionally, an embodiment of the present invention further provides an electronic device, including:

[0183] processor;

[0184] a memory for storing instructions executable by the processor;

[0185] The processor is configured to execute the instructions to implement the distributed task scheduling method as described above.

[0186] Optionally, an embodiment of the present invention further provides a computer-readable storage medium, which, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to execute the distributed task scheduling method as described above.

[0187] Optionally, an embodiment of the present invention further provides a computer program product, including a computer program or instructions, which implement the above-mentioned distributed task scheduling method when executed by a processor of an electronic device.

[0188] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0189] See also Figure 5 , is a block diagram of a distributed task scheduling system provided by an embodiment of the present invention, the system includes: an edge node cluster 51, a data and status synchronization module 52, an intelligent scheduling engine 53 and a distributed coordination center 54,, of course, the system may also include: multiple terminals, each terminal can collect the real-time resource usage of each edge node through its own collection device, and receive task requests initiated by multiple systems under each terminal; for the convenience of description, this embodiment takes 6 terminals (i.e., terminal 1 to terminal 6) as an example, wherein,

[0190] Edge node cluster 51: responsible for receiving and processing task requests from multiple terminals. The edge node cluster is composed of multiple edge nodes with computing and storage capabilities.

[0191] Specifically, task requests are received from multiple terminals, and the real-time resource usage of each edge node collected by the multiple terminals is obtained, the real-time resource usage of each edge node is evaluated, and a smoothed data sequence of the state of each edge node is obtained; and the real-time resource usage of each edge node is predicted to obtain the time series task requirements of each edge node at future time points.

[0192] Data and status synchronization module 52: used to synchronize the edge node cluster 51 with the intelligent scheduling engine 53 and the distributed coordination center 53 to receive and process task requests from multiple terminals, as well as the smoothed data sequence of each edge node state after processing by the edge node cluster, and the time series task requirements of each edge node at future time points, to ensure real-time synchronization of task status and resource status between edge nodes.

[0193] Specifically, a data and status synchronization mechanism can be used to ensure real-time update and consistency of information between each edge node.

[0194] Intelligent scheduling engine 53: used to predict edge node load using machine learning models and dynamically adjust task allocation strategies based on adaptive algorithms.

[0195] Specifically, tasks are adaptively assigned to each edge node according to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency.

[0196] Distributed coordination center 54: responsible for global view maintenance, task allocation strategy formulation and inter-node communication coordination. Specifically, when the task requirements of each edge node change or the edge node has resource shortage, it is used to dynamically adjust the task allocation queue based on the corresponding task priority and the load of the edge node to achieve load balancing.

[0197] The specific implementation process of this application example is detailed in the corresponding implementation process in the above embodiment, which will not be repeated here.

[0198] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without creative effort.

[0199] The embodiment of the present invention is a distributed intelligent task scheduling technology in a network edge computing environment. This embodiment aims to achieve efficient resource utilization, reduce data processing delays, and improve the overall response speed of the system by optimizing task allocation and collaboration between edge nodes. It is suitable for various scenarios that require low-latency processing and high bandwidth requirements, such as the Internet of Things, smart cities, and industrial Internet.

[0200] Figure 66 is a block diagram of an electronic device 600 provided in an embodiment of the present invention. For example, the electronic device 600 may be a mobile terminal or a server, and the electronic device is a mobile terminal as an example for explanation in the embodiment of the present invention. For example, the electronic device 600 may be a mobile phone, a computer, a digital broadcast terminal, a message transceiver device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0201] Reference Figure 6 , the electronic device 600 may include one or more of the following components: a processing component 602 , a memory 604 , a power component 606 , a multimedia component 608 , an audio component 610 , an input / output (I / O) interface 612 , a sensor component 614 , and a communication component 616 .

[0202] The processing component 602 generally controls the overall operation of the electronic device 600, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 602 may include one or more processors 620 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 602 may include one or more modules to facilitate the interaction between the processing component 602 and other components. For example, the processing component 602 may include a multimedia module to facilitate the interaction between the multimedia component 608 and the processing component 602.

[0203] The memory 604 is configured to store various types of data to support operations on the device 600. Examples of such data include instructions for any application or method operating on the electronic device 600, contact data, phone book data, messages, pictures, videos, etc. The memory 604 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0204] The power supply component 606 provides power to the various components of the electronic device 600. The power supply component 606 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 600.

[0205] The multimedia component 608 includes a screen that provides an output interface between the electronic device 600 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 608 includes a front camera and / or a rear camera. When the device 600 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0206] The audio component 610 is configured to output and / or input audio signals. For example, the audio component 610 includes a microphone (MIC), and when the electronic device 600 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 604 or sent via the communication component 616. In some embodiments, the audio component 610 also includes a speaker for outputting audio signals.

[0207] I / O interface 612 provides an interface between processing component 602 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0208] The sensor assembly 614 includes one or more sensors for providing various aspects of status assessment for the electronic device 600. For example, the sensor assembly 614 can detect the open / closed state of the device 600, the relative positioning of components, such as the display and keypad of the electronic device 600, and the sensor assembly 614 can also detect the position change of the electronic device 600 or a component of the electronic device 600, the presence or absence of contact between the user and the electronic device 600, the orientation or acceleration / deceleration of the electronic device 600, and the temperature change of the electronic device 600. The sensor assembly 614 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 614 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 614 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0209] The communication component 616 is configured to facilitate wired or wireless communication between the electronic device 600 and other devices. The electronic device 600 can access a wireless network based on a communication standard, such as WiFi, a carrier network (such as 2G, 3G, 4G or 5G), or a combination thereof. In an exemplary embodiment, the communication component 616 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 616 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0210] In an embodiment, the electronic device 600 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to execute the distributed task scheduling method shown above.

[0211] In an embodiment, a computer-readable storage medium is also provided, and when the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device 600 can execute the distributed task scheduling method shown above. For example, the computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0212] In an embodiment, a computer program product is further provided, including a computer program or instructions. When the computer program or instructions are executed by the processor 620 of the electronic device 600, the electronic device 600 executes the above-mentioned distributed task scheduling method.

[0213] Figure 7 700 is a block diagram of a distributed task scheduling apparatus 700 provided in an embodiment of the present invention. For example, the apparatus 700 may be provided as a server. Figure 7 , the apparatus 700 includes a processing component 722, which further includes one or more processors, and a memory resource represented by a memory 732 for storing instructions, such as an application, that can be executed by the processing component 722. The application stored in the memory 732 may include one or more modules, each corresponding to a set of instructions. In addition, the processing component 722 is configured to execute the instructions to perform the above method.

[0214] The device 700 may also include a power supply component 726 configured to perform power management of the device 700, a wired or wireless network interface 750 configured to connect the device 700 to a network, and an input / output (I / O) interface 758. The device 700 may operate based on an operating system stored in the memory 732, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or the like.

[0215] Those skilled in the art will readily appreciate other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses or adaptations of the present invention that follow the general principles of the present invention and include common knowledge or customary techniques in the art that are not disclosed by the present invention. The specification and examples are to be considered exemplary only, and the true scope and spirit of the present invention are indicated by the following claims.

[0216] It should be understood that the present invention is not limited to the exact construction that has been described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present invention is limited only by the appended claims.

Claims

1. A distributed task scheduling method, characterized in that: include: Obtain the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals; Evaluate the usage of the real-time resources of each edge node to obtain a smoothed data sequence of the state of each edge node; Predicting the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point; According to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency, adaptively assigning tasks to each edge node; When the task requirements of each edge node change or the resources of the edge node are tight, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing.

2. The distributed task scheduling method according to claim 1, characterized in that: The real-time resource usage of each edge node is evaluated to obtain a smoothed data sequence of the state of each edge node, including: The real-time resource usage of each edge node is evaluated using a sliding average preprocessing algorithm to obtain a smoothed data sequence of the state of each edge node.

3. The distributed task scheduling method according to claim 2, characterized in that: The use of the sliding average preprocessing algorithm to evaluate the usage of the real-time resources of each edge node to obtain a smoothed data sequence of the state of each edge node includes: Selecting the real-time resources of each edge node according to a set smoothing period to obtain a data sequence of multiple data points; Determine the average value of the data within the smoothing period; The distance of one data point is gradually moved to the right from the starting position of the data sequence as a sliding window, and the average value of the data in each cycle after sliding is calculated in turn to generate a smoothed data sequence of each edge node state.

4. The distributed task scheduling method according to claim 1, characterized in that: The predicting of the real-time resource usage of each edge node and the task request to obtain the time series task requirements of each edge node at a future time point includes: The real-time resource usage of each edge node and the task request are predicted through the differential autoregressive moving average ARIMA model to obtain the time series task requirements of each edge node at future time points.

5. The distributed task scheduling method according to claim 1, characterized in that: According to the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency, adaptively assigning tasks to each edge node includes: The scheduling algorithm based on Deep Q-Network reinforcement learning inputs the smoothed data sequence of the edge node status, the time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and assigns tasks to each edge node according to the optimization strategy.

6. The distributed task scheduling method according to claim 5, characterized in that: The scheduling algorithm based on Deep Q-Network reinforcement learning inputs the smoothed data sequence of node status, time series task requirements, and the acquired historical task execution efficiency into the network for continuous interactive learning, and assigns tasks to each edge node according to the optimization strategy, including: Execute allocation decisions in the environment according to the current strategy, collect experience parameters, and store the experience parameters in an experience replay buffer; A batch of samples are randomly extracted from the experience replay buffer, and the weights of the main network are updated based on the extracted samples through the back propagation algorithm, so that the Q value predicted by the main network is closer to the target Q value of the target network, wherein the target Q value is composed of the immediate reward r plus the maximum Q value of the next state calculated from the target network; At every set number of steps or when the main network training is stable, the weights of the main network are updated to the target network to maintain the smoothness of the target Q value of the target network.

7. The distributed task scheduling method according to claim 1, characterized in that: When the task requirements of each edge node change or the edge node has resource shortage, the task allocation queue is dynamically adjusted based on the corresponding task priority and the load of the edge node to achieve load balancing, including: When the task requirements of each edge node change or a bottleneck occurs in the edge node resources, the global view is updated through the distributed coordination center, and the Paxos distributed consistency algorithm is used to ensure the consistency of decisions. Based on the corresponding task priority and the load of the edge node, the task allocation queue is dynamically adjusted to achieve load balancing.

8. A distributed task scheduling device, characterized in that: include: An acquisition module is used to acquire the real-time resource usage of each edge node collected by multiple terminals and the task requests of multiple terminals; An evaluation module is used to evaluate the usage of the real-time resources of each edge node to obtain a smooth data sequence of the state of each edge node. A prediction module, used to predict the real-time resource usage of each edge node and the task request, and obtain the time series task requirements of each edge node at a future time point; A strategy allocation module, used to adaptively allocate tasks to each edge node according to the smoothed data sequence of each edge node state, time series task requirements, and the acquired historical task execution efficiency; The dynamic adjustment module is used to dynamically adjust the task allocation queue to achieve load balancing based on the corresponding task priority and the load of the edge node when the task demand of each edge node changes or the resources of the edge node are tight.

9. A distributed task scheduling system, characterized in that: include: The edge node cluster is used to receive and process task requests from multiple terminals, and obtain the real-time resource usage of each edge node collected by multiple terminals, evaluate the real-time resource usage of each edge node, and obtain a smoothed data sequence of each edge node state; and predict the real-time resource usage of each edge node to obtain the time series task requirements of each edge node at a future time point; The data and status synchronization module is used to synchronize the task requests of multiple terminals, the smoothed data sequence of each edge node state after processing by the edge node cluster, and the time series task requirements of each edge node at a future time point to the intelligent scheduling engine and the distributed coordination center, so as to ensure the real-time synchronization of the task status and resource status between each edge node; An intelligent scheduling engine, configured to adaptively assign tasks to each edge node based on the smoothed data sequence of each edge node state, the time series task requirements, and the acquired historical task execution efficiency; The distributed coordination center is used to dynamically adjust the task allocation queue to achieve load balancing based on the corresponding task priority and the load of the edge node when the task requirements of each edge node change or the resources of the edge node are tight.

10. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is configured to execute the instructions to implement the distributed task scheduling method according to any one of claims 1 to 7.

11. A computer-readable storage medium, characterized in that: When the instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the distributed task scheduling method as described in any one of claims 1 to 7.

Citation Information

Cited By

  • Multi-terminal cooperation-oriented digital intelligent screen station interaction scene scheduling method and system

    CN119862043A

  • Content delivery network scheduling method, system and equipment

    CN120321201A