A Deep Learning-Based KubeEdge Edge Computing Resource Scheduling Method

By using deep learning-based adaptive task allocation and dynamic load balancing algorithms, the task scheduling of the KubeEdge edge computing platform is optimized, solving the problems of load imbalance and resource waste, and achieving efficient resource utilization and task response.

CN120596261BActive Publication Date: 2026-07-17CHINESE PEOPLES LIBERATION ARMY UNIT 91977

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINESE PEOPLES LIBERATION ARMY UNIT 91977
Filing Date
2025-05-28
Publication Date
2026-07-17

AI Technical Summary

Technical Problem

The existing KubeEdge edge computing platform suffers from low efficiency and low resource utilization in load balancing and task scheduling, and cannot adapt to the complexity and dynamic changes of edge networks.

Method used

We employ deep learning-based adaptive task allocation and dynamic load balancing algorithms. We use predictive models to predict task execution performance and optimize scheduling strategies through reinforcement learning. We adjust task allocation and load balancing in real time to improve resource utilization and scheduling efficiency.

Benefits of technology

It achieves efficient task scheduling and resource optimization, improves the effectiveness of KubeEdge edge computing resource scheduling, and ensures system load balancing and task response time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120596261B_ABST
    Figure CN120596261B_ABST
Patent Text Reader

Abstract

This application belongs to the field of computer science and specifically discloses a deep learning-based resource scheduling method for KubeEdge edge computing. The method includes: during KubeEdge edge computing, using an adaptive task allocation algorithm to assign newly received tasks to at least one edge node, and using a dynamic load balancing algorithm to adjust the load on each edge node, migrating at least some tasks from overloaded edge nodes to less resource-intensive edge nodes in real time, thereby rationally scheduling resources across edge nodes during KubeEdge edge computing; in the aforementioned adaptive task allocation algorithm, reinforcement learning is performed on the prediction model based on the load balancing effect between edge nodes, task response time, and task completion time, and the prediction model is adaptively and iteratively updated and optimized. Through this application, task scheduling in KubeEdge edge computing is optimized based on the adaptive task allocation algorithm and the dynamic load balancing algorithm, achieving efficient task scheduling and resource optimization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of computer science, and more specifically, relates to a deep learning-based KubeEdge edge computing resource scheduling method. Background Technology

[0002] Cloud-edge collaborative computing is an important direction for the development of the modern Internet. By distributing some computing tasks to the edge, closer to the device terminal, it reduces network transmission costs and cloud computing pressure, and improves task response speed. This has led to the widespread adoption of edge computing technology in the Internet industry. Kubeedge is a cloud-native open-source edge computing framework developed by Huawei to facilitate collaboration between the cloud, edge, and device. Due to its powerful cloud-edge collaboration capabilities, it is widely used in various fields.

[0003] As a cloud-native edge computing platform, KubeEdge faces several challenges in load balancing and task scheduling. Regarding load balancing, existing technologies haven't optimized for the complexity of edge networks and the instability of edge nodes. In terms of task scheduling, KubeEdge needs to effectively schedule tasks on resource-constrained edge nodes, requiring scheduling algorithms that can adapt to device heterogeneity and real-time requirements. Simultaneously, the scheduling algorithm needs to quickly adapt to dynamic changes in the edge computing environment, such as device additions and removals, and changes in network conditions. In conclusion, existing technologies do not offer better performance for load balancing and task scheduling on KubeEdge and urgently need optimization. Summary of the Invention

[0004] To address the shortcomings of existing technologies, this application aims to provide a deep learning-based KubeEdge edge computing resource scheduling method, which seeks to solve the problem of poor performance of existing KubeEdge edge computing scheduling algorithms.

[0005] To achieve the above objectives, in a first aspect, this application provides a deep learning-based KubeEdge edge computing resource scheduling method, comprising:

[0006] When performing KubeEdge edge computing, an adaptive task allocation algorithm is used to assign newly received tasks to at least one edge node, and a dynamic load balancing algorithm is used to adjust the load of each edge node. At least some tasks in edge nodes with overloaded resources are migrated to edge nodes with lighter resource usage in real time, so as to reasonably schedule the resources of each edge node during KubeEdge edge computing.

[0007] The adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model, then allocates the task to at least one edge node with better execution effect, and finally performs reinforcement learning on the prediction model based on the load balancing effect, task response time and task completion time of each edge node, and adaptively iteratively updates and optimizes the prediction model.

[0008] This application optimizes task scheduling in edge computing through adaptive task allocation algorithm and dynamic load balancing algorithm, achieving efficient task scheduling and resource optimization, and improving the resource scheduling effect of KubeEdge edge computing.

[0009] In one possible implementation, the prediction model includes: a policy network and a value network;

[0010] The policy network is used to decide which edge nodes to assign newly received tasks based on the characteristics of the received tasks; the characteristics include: required resources and task priority; the decision network preferentially selects edge nodes with relatively high processor and memory idle rates and that meet the required resources to assign the tasks;

[0011] The value network is used to evaluate the execution effect of tasks assigned to corresponding edge nodes; the execution effect includes: task response time and task completion time.

[0012] In one possible implementation, the dynamic load balancing algorithm is specifically as follows:

[0013] Determine the resource utilization rate of each edge node. When the resource utilization rate of any edge node exceeds the first threshold, the resource usage of that edge node is overloaded.

[0014] At the edge nodes where resource usage is overloaded, select some low-priority tasks and / or some completed tasks and migrate them to edge nodes with lighter resource usage; lighter resource usage means that the resource utilization rate is lower than a second threshold; the first threshold is greater than the second threshold.

[0015] In one possible implementation, the prediction model is reinforced based on the load balancing effect, task response time, and task completion time among the edge nodes. Specifically:

[0016] The reward function of reinforcement learning for:

[0017]

[0018] in, This represents the weight of the i-th objective. This represents the reward for the i-th objective; This represents the load balancing reward, and its value is the maximum resource utilization rate of all edge nodes. This represents the task response reward, and its value is a normalized value of the task response time. This represents the task completion time reward, and its value is a normalized value of the task completion time.

[0019] In reinforcement learning, the training of the policy network depends on the feedback provided by the reward function, and the cumulative reward is maximized through continuous iterative training.

[0020] Secondly, this application provides a deep learning-based KubeEdge edge computing resource scheduling system, comprising:

[0021] The first scheduling module is used to assign newly received tasks to at least one edge node using an adaptive task allocation algorithm when performing KubeEdge edge computing.

[0022] The second scheduling module is used to adjust the load of each edge node using a dynamic load balancing algorithm, and to migrate at least some tasks from edge nodes with overloaded resources to edge nodes with lighter resource usage in real time, so as to reasonably schedule the resources of each edge node during KubeEdge edge computing. The adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model, and then allocates the tasks to at least one edge node with better execution effect. Finally, the prediction model is reinforced and iteratively updated and optimized based on the load balancing effect, task response time and task completion time among the edge nodes.

[0023] In one possible implementation, the prediction model used by the first scheduling module includes: a policy network and a value network;

[0024] The policy network is used to decide which edge nodes to assign newly received tasks based on the characteristics of the received tasks; the characteristics include: required resources and task priority; the decision network preferentially selects edge nodes with relatively high processor and memory idle rates and that meet the required resources to assign the tasks;

[0025] The value network is used to evaluate the execution effect of tasks assigned to corresponding edge nodes; the execution effect includes: task response time and task completion time.

[0026] In one possible implementation, the second scheduling module performs dynamic load balancing through the following steps: determining the resource utilization of each edge node; when the resource utilization of any edge node exceeds a first threshold, the edge node is considered overloaded; and at the overloaded edge node, selecting some low-priority tasks and / or some completed tasks, and migrating them to edge nodes with lighter resource usage; lighter resource usage means that the resource utilization is below a second threshold; the first threshold is greater than the second threshold.

[0027] In one possible implementation, the reward function of reinforcement learning in the first scheduling module for:

[0028]

[0029] in, This represents the weight of the i-th objective. This represents the reward for the i-th objective; This represents the load balancing reward, and its value is the maximum resource utilization rate of all edge nodes. This represents the task response reward, and its value is a normalized value of the task response time. This represents the task completion time reward, and its value is a normalized value of the task completion time.

[0030] During the reinforcement learning process of the prediction model in the first scheduling module, the training of the policy network depends on the feedback provided by the reward function. Through continuous iterative training, the cumulative reward is maximized.

[0031] Thirdly, this application provides an electronic device, comprising: at least one memory for storing a program; and at least one processor for executing the program stored in the memory, wherein when the program stored in the memory is executed, the processor is configured to execute the method described in the first aspect or any possible implementation thereof.

[0032] Fourthly, this application provides a computer-readable storage medium storing a computer program that, when run on a processor, causes the processor to perform the method described in the first aspect or any possible implementation thereof.

[0033] Fifthly, this application provides a computer program product that, when run on a processor, causes the processor to perform the method described in the first aspect or any possible implementation thereof.

[0034] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.

[0035] Overall, the technical solutions conceived in this application have the following beneficial effects compared with the prior art:

[0036] This application provides a deep learning-based resource scheduling method for KubeEdge edge computing. During KubeEdge edge computing, the provided adaptive task allocation algorithm utilizes historical data and real-time monitoring, predicts task execution performance through a deep learning model, and dynamically adjusts task allocation to improve resource utilization and execution efficiency. The provided dynamic load balancing algorithm monitors node load in real time; when a node is overloaded, some tasks are migrated to less loaded nodes to ensure resource balance. This application optimizes task scheduling in edge computing through adaptive task allocation and dynamic load balancing algorithms, achieving efficient task scheduling and resource optimization, and improving the effectiveness of KubeEdge edge computing resource scheduling. Attached Figure Description

[0037] Figure 1 This is a flowchart of a deep learning-based KubeEdge edge computing resource scheduling method provided in an embodiment of this application;

[0038] Figure 2 This application provides another flowchart of a KubeEdge edge computing resource scheduling method;

[0039] Figure 3 This is a schematic diagram of the adaptive task allocation algorithm provided in the embodiments of this application;

[0040] Figure 4 This is a schematic diagram of the dynamic load balancing algorithm provided in the embodiments of this application;

[0041] Figure 5 This is an architecture diagram of the KubeEdge computing resource scheduling system based on deep learning provided in the embodiments of this application;

[0042] Figure 6 This is an architectural diagram of the electronic device provided in the embodiments of this application. Detailed Implementation

[0043] 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.

[0044] In this article, the term "and / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. The symbol " / " in this article indicates that the related objects are in an "or" relationship; for example, A / B means A or B.

[0045] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0046] The embodiments of this application are described below with reference to the accompanying drawings.

[0047] This application relates to the field of edge computing technology, specifically a deep learning-based KubeEdge edge computing resource scheduling method. This method aims to improve the utilization and scheduling efficiency of edge computing resources. With the rapid development of technologies such as the Internet of Things, artificial intelligence, and big data, edge computing has gradually become a key technology for solving the requirements of low latency and high bandwidth. Edge computing reduces data transmission latency and improves the real-time performance and reliability of applications by processing data closer to the data source.

[0048] However, edge devices typically have limited computing resources and storage capacity. Therefore, how to effectively schedule and manage containerized applications on edge nodes has become an important research topic. KubeEdge is an open-source edge computing platform that leverages the native container orchestration and scheduling capabilities of Kubernetes (K8s) to achieve cloud-edge collaboration, compute decentralization, and management of massive edge devices. However, KubeEdge's native scheduling algorithm is primarily designed for cloud computing environments and performs poorly in resource-constrained and dynamically changing edge environments, easily leading to load imbalance and resource waste. Existing edge computing resource scheduling methods suffer from low scheduling efficiency and low resource utilization, failing to meet the ever-increasing demands of edge computing. Therefore, an intelligent scheduling method is urgently needed to optimize the utilization of edge resources and task response time.

[0049] Figure 1 A flowchart of a deep learning-based KubeEdge edge computing resource scheduling method is provided for embodiments of this application, as shown below. Figure 1 As shown, it includes the following steps:

[0050] Step S101: When performing KubeEdge edge computing, the newly received task is assigned to at least one edge node using an adaptive task allocation algorithm.

[0051] Step S102: Use a dynamic load balancing algorithm to adjust the load of each edge node, and migrate at least some tasks in the edge nodes with overloaded resources to the edge nodes with lighter resource usage in real time, so as to reasonably schedule the resources of each edge node during KubeEdge edge computing.

[0052] The adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model, then allocates the task to at least one edge node with better execution effect, and finally performs reinforcement learning on the prediction model based on the load balancing effect, task response time and task completion time of each edge node, and adaptively iteratively updates and optimizes the prediction model.

[0053] Specifically, it should be noted that the quality of the prediction model also affects the load balancing effect. The reward function for reinforcement learning can be determined based on the load balancing effect, task response time, and task completion time. This allows the training of the policy network in the prediction model to rely on the feedback provided by the reward function. Through continuous iterative training, the policy network can gradually learn how to select the optimal task allocation and scheduling strategy based on the task state to maximize cumulative rewards.

[0054] Figure 2 A flowchart of another KubeEdge edge computing resource scheduling method provided in this application embodiment is shown below. Figure 2 As shown, it includes the following steps:

[0055] Step 1, System Initialization Phase. First, a policy network and a value network are established to represent and evaluate the value of different states and actions. Next, a large amount of historical data is collected and processed, including task types, resource consumption, and node performance. This data is used to train the initial model, enabling it to preliminarily predict the performance of tasks on different nodes. Initial task allocation is then performed.

[0056] Step 2: When a new task arrives in the system, an adaptive task allocation algorithm is used for initial task allocation. Using a trained deep neural network model (i.e., a prediction model), the current cluster state and task characteristics are analyzed, and an optimal edge node is selected to assign the task to that node, ensuring efficient task execution. After task execution begins, the system continuously monitors the resource usage and task execution status of each node. Monitoring data includes CPU utilization, memory utilization, network bandwidth, etc. This data is periodically sent from each edge node to the central control node to ensure real-time understanding of the system's operating status and the load on each node.

[0057] Step 3: Utilize a dynamic load balancing algorithm to assess the load on each node based on real-time monitoring data, by calculating the standard deviation of resource utilization such as CPU, network, and disk.

[0058]

[0059] in, This represents the i-th sample in n sampling periods. The algorithm uses the sample average value to determine whether there is node overload or uneven resource utilization based on the utilization rate of each resource. If an overload is detected in a node, DLB will initiate a load adjustment mechanism to ensure the balance and stability of the system.

[0060] Step 4: When node overload is detected—that is, the utilization rate of any resource, such as CPU, memory, or network, reaches a set threshold or 100%, causing task congestion, etc.—DLB will select some low-priority tasks or tasks that have already completed computation for migration. After task selection, DLB migrates these tasks to nodes with lighter loads, i.e., nodes where the utilization rate of all resources, such as CPU, memory, and network, is below the set threshold or where no user tasks are executing, to ensure data consistency and computational continuity. Simultaneously, the allocation of new tasks is dynamically adjusted to avoid new tasks being concentrated on a few nodes, ensuring system load balancing.

[0061] Step 5, based on task response time Completion Time The policy network and value network are continuously iterated and updated using reinforcement learning algorithms, taking into account the feedback from the reward function. The reward function comprehensively considers load balancing effect, task response time, and completion time. By optimizing these two metrics, the scheduling effect is improved, thereby realizing an adaptive task scheduling strategy and continuously improving the overall performance and efficiency of the system.

[0062] Among them, the reward function M=3 indicates that there are 3 target quantities. This represents the weight of the i-th objective. This represents the reward for the i-th objective. This represents the load balancing reward, which is the maximum resource utilization rate of all edge nodes. ; This represents the task response reward, with the value being the task response time. In the interval The normalized value in the middle; This represents the reward for completing the task, and its value is the task completion time ( In the interval The normalized value in the middle.

[0063] Further, optionally, the execution flow of the adaptive task allocation algorithm proposed in the embodiments of this application is as follows: Figure 3 As shown, the specific implementation is as follows:

[0064] Step 1. Initialize the policy network and the value network; wherein: the policy network (e.g., a deep neural network) is used to make decisions on task allocation; the value network (e.g., a deep neural network) is used to evaluate the effectiveness of task allocation.

[0065] Step 2. A new task t arrives.

[0066] Step 3. Obtain the characteristics of task t, such as resource requirements and priority.

[0067] Step 4. Obtain the current cluster status, such as the resource usage of each node.

[0068] Step 5. Use the policy network to decide which edge nodes the task will be assigned to; the response time and task completion time for each node executing task t.

[0069] Step 6. Use a value network to evaluate the performance of task t on each node; the performance includes task response time and task completion time.

[0070] It is understood that the aforementioned policy network is used to decide which edge nodes to assign newly received tasks based on the characteristics of the received tasks; the aforementioned characteristics include: required resources and task priority; the aforementioned decision network preferentially selects edge nodes with relatively high processor and memory idle rates and that meet the required resources to assign the aforementioned task t; the aforementioned value network is used to evaluate the execution effect of task assignment to the corresponding edge nodes; the execution effect includes: task response time and task completion time.

[0071] Step 7. Select the node n with the best task execution effect as the target execution node of task t; the above-mentioned best task execution effect means the task execution time is the fastest and the task response time is the fastest.

[0072] Step 8. Assign task t to node n.

[0073] Step 9. Execute task t and monitor its execution status and resource consumption.

[0074] Step 10. Collect the execution results and feedback information of task t.

[0075] Step 11. Update the policy network and value network using the collected data.

[0076] Step 12. Return to the optimized task allocation strategy.

[0077] Further, optionally, the execution flow of the dynamic load balancing algorithm proposed in the embodiments of this application is as follows: Figure 4 As shown, the specific implementation is as follows:

[0078] Step 1. Initialization; Determine the load assessment function and task migration strategy; The load assessment function is used to calculate the load status of the nodes; The task migration strategy is used to determine whether a task needs to be migrated.

[0079] Step 2. Collect real-time monitoring data of the cluster, such as node resource utilization and task execution progress.

[0080] Step 3. Use the load assessment function to calculate the load on each node.

[0081] Step 4. If the node's resource usage is found to be overloaded, select the tasks that need to be migrated according to the task migration strategy.

[0082] Step 5. Select a node with a lighter load as the target node for task migration.

[0083] Step 6. Migrate the selected task to the target node.

[0084] Step 7. Update the task cluster status and task assignment.

[0085] Step 8. If a node resource is found to be idle, a new task is assigned to the idle node according to the task priority and resource requirements.

[0086] Step 9. Return the cluster status after load balancing.

[0087] In another specific embodiment, the resource scheduling method provided in this application includes the following steps:

[0088] Step 1: On the KubeEdge edge computing platform, first initialize the policy network and value network to represent and evaluate the value of different states and actions. Collect and process a large amount of historical data, including task types, resource consumption, node performance, etc., and train the initial model using this data, enabling it to initially predict the execution effect of tasks on different nodes. Deploy the trained model to the KubeEdge platform and assign initial tasks when the system starts running.

[0089] Step 2: The system analyzes the current cluster status (resource usage of all edge nodes) through a deep neural network and selects the most suitable node to perform this task.

[0090] For example, select nodes with high CPU and memory idle rates to ensure that analysis tasks can be executed quickly.

[0091] Real-time monitoring: During task execution, the system continuously monitors the CPU utilization, memory usage, and network bandwidth of the nodes. Each node sends resource status information to the central control node every 5 seconds.

[0092] Step 3: Perform load assessment and adjustment, including the following three processes:

[0093] Step 3.1: Load monitoring: Suppose a node suddenly receives multiple high-priority tasks, causing the CPU utilization to soar to over 90%, while memory resources are also nearly exhausted.

[0094] Step 3.2: DLB assesses node load: The system calculates the standard deviation of resource utilization for each node and finds that the resource usage of a node is significantly higher than that of other nodes, marking it as "overloaded".

[0095] Step 3.3: Load Adjustment Mechanism: DLB starts the load adjustment mechanism to prepare for migrating some low-priority tasks.

[0096] Step 4: Perform task migration and reallocation, including the following three processes:

[0097] Step 4.1: Task selection: DLB selects a low-priority task on this node for migration, which has already completed part of the analysis.

[0098] Step 4.2: Target Node Selection: DLB selects another idle node that currently only has lightweight video stream monitoring tasks and has relatively abundant CPU and memory resources.

[0099] Step 4.3: Task Migration: Using container snapshot technology, the system transfers part of the computing state to the target node, and the task continues to execute. Data transmission is ensured to be free of loss or duplication through a consistency protocol.

[0100] Step 5: Optimize and provide feedback on the strategy, including the following two processes:

[0101] Step 5.1: Feedback and Rewards: After task migration and execution are completed, the system evaluates the scheduling effect by calculating task response time and resource utilization. Assume that after task migration, the node's resource utilization drops to 70%, the load distribution across the entire cluster becomes more balanced, and the response time remains within a reasonable range.

[0102] Step 5.2: Reinforcement Learning to Update the Strategy: The system uses this result as a positive reward to update the policy network and value network, thereby improving its decision-making ability for future task allocation and transfer. As more tasks arrive and are completed, the system's scheduling strategy will continue to be optimized.

[0103] Figure 5This is an architecture diagram of the KubeEdge edge computing resource scheduling system based on deep learning provided in the embodiments of this application; as follows: Figure 5 As shown, it includes:

[0104] The first scheduling module 510 is used to assign newly received tasks to at least one edge node using an adaptive task allocation algorithm when performing KubeEdge edge computing.

[0105] The second scheduling module 520 is used to adjust the load of each edge node using a dynamic load balancing algorithm, and to migrate at least some tasks from edge nodes with overloaded resources to edge nodes with lighter resource usage in real time, so as to reasonably schedule the resources of each edge node during KubeEdge edge computing; wherein, the adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model, then allocates the tasks to at least one edge node with better execution effect, and finally performs reinforcement learning on the prediction model based on the load balancing effect, task response time and task completion time of each edge node, and adaptively iteratively updates and optimizes the prediction model.

[0106] It should be understood that the above system is used to execute the methods in the above embodiments. The corresponding program modules in the system are similar in implementation principle and technical effect to those described in the above methods. The working process of the system can be referred to the corresponding process in the above methods, and will not be repeated here.

[0107] Based on the methods in the above embodiments, this application provides an electronic device, such as... Figure 6 As shown, the electronic device may include a processor 610, a communication interface 620, a memory 630, and a communication bus 640, wherein the processor 610, the communication interface 620, and the memory 630 communicate with each other via the communication bus 640. The processor 610 can call logical instructions in the memory 630 to execute the methods in the above embodiments.

[0108] Furthermore, the logical instructions in the aforementioned memory 630 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application.

[0109] Based on the methods in the above embodiments, this application provides a computer-readable storage medium storing a computer program that, when run on a processor, causes the processor to execute the methods in the above embodiments.

[0110] Based on the methods in the above embodiments, this application provides a computer program product that, when run on a processor, causes the processor to execute the methods in the above embodiments.

[0111] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.

[0112] The method steps in this application embodiment can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can reside in an ASIC.

[0113] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).

[0114] It is understood that the various numerical designations used in the embodiments of this application are merely for the convenience of description and are not intended to limit the scope of the embodiments of this application.

[0115] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.

Claims

1. A deep learning-based KubeEdge edge computing resource scheduling method, characterized in that, include: When performing KubeEdge edge computing, an adaptive task allocation algorithm is used to assign newly received tasks to at least one edge node, and a dynamic load balancing algorithm is used to adjust the load of each edge node. At least some tasks in edge nodes with overloaded resources are migrated in real time to edge nodes with resource utilization below a set threshold or with no user tasks being executed, so as to reasonably schedule the resources of each edge node during KubeEdge edge computing. The adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model, then allocates the task to at least one edge node with the best execution effect, and finally performs reinforcement learning on the prediction model based on the load balancing effect, task response time, and task completion time among the edge nodes, and adaptively iteratively updates and optimizes the prediction model; the prediction model includes: a policy network and a value network. The policy network is used to decide which edge nodes to assign newly received tasks based on the characteristics of the received tasks; the characteristics include: required resources and task priority; the policy network preferentially selects idle edge nodes that meet the required resources to assign the tasks; The value network is used to evaluate the execution effect of tasks assigned to corresponding edge nodes; the execution effect includes: task response time and task completion time. The prediction model is reinforced based on the load balancing effect, task response time, and task completion time among the edge nodes. Specifically: The reward function of reinforcement learning for: in, This represents the weight of the i-th objective. This represents the reward for the i-th objective; This represents the load balancing reward, and its value is the maximum resource utilization rate of all edge nodes. This represents the task response reward, and its value is a normalized value of the task response time. This represents the task completion time reward, and its value is a normalized value of the task completion time. In reinforcement learning, the training of the policy network depends on the feedback provided by the reward function. Through continuous iterative training, the cumulative reward is maximized.

2. The method according to claim 1, characterized in that, The dynamic load balancing algorithm is as follows: Determine the resource utilization rate of each edge node. When the resource utilization rate of any edge node exceeds the first threshold, the resource usage of that edge node is overloaded. At the edge nodes where resource usage is overloaded, select some low-priority tasks and / or some completed tasks, and migrate them to edge nodes where resource utilization is below a second threshold; the first threshold is greater than the second threshold.

3. A KubeEdge edge computing resource scheduling system based on deep learning, characterized in that, include: The first scheduling module is used to assign newly received tasks to at least one edge node using an adaptive task allocation algorithm when performing KubeEdge edge computing. The second scheduling module is used to adjust the load of each edge node using a dynamic load balancing algorithm. It migrates at least some tasks from overloaded edge nodes to edge nodes with resource utilization below a set threshold or with no user tasks executing, thus rationally scheduling the resources of each edge node during KubeEdge edge computing. The adaptive task allocation algorithm predicts the execution effect of newly received tasks on different edge nodes based on a pre-trained prediction model. Then, it allocates the tasks to at least one edge node with the best execution effect. Finally, it performs reinforcement learning on the prediction model based on the load balancing effect between edge nodes, task response time, and task completion time, adaptively iteratively updating and optimizing the prediction model. The prediction model used by the first scheduling module includes a policy network and a value network. The policy network is used to decide which edge nodes to assign newly received tasks based on the characteristics of the received tasks; the characteristics include: required resources and task priority; the policy network preferentially selects idle edge nodes that meet the required resources to assign the tasks; The value network is used to evaluate the execution effect of tasks assigned to corresponding edge nodes; the execution effect includes: task response time and task completion time. The reward function for reinforcement learning in the first scheduling module for: in, This represents the weight of the i-th objective. This represents the reward for the i-th objective; This represents the load balancing reward, and its value is the maximum resource utilization rate of all edge nodes. This represents the task response reward, and its value is a normalized value of the task response time. This represents the task completion time reward, and its value is a normalized value of the task completion time. During the reinforcement learning process of the prediction model in the first scheduling module, the training of the policy network depends on the feedback provided by the reward function. Through continuous iterative training, the cumulative reward is maximized.

4. The system according to claim 3, characterized in that, The second scheduling module performs dynamic load balancing through the following steps: determining the resource utilization rate of each edge node; when the resource utilization rate of any edge node exceeds the first threshold, the resource usage of that edge node is overloaded. And at the edge nodes where resource usage is overloaded, select some low-priority tasks and / or some completed tasks, and migrate them to edge nodes where resource utilization is below a second threshold; the first threshold is greater than the second threshold.

5. An electronic device, characterized in that, include: At least one memory for storing computer programs; At least one processor is configured to execute a program stored in the memory, wherein when the program stored in the memory is executed, the processor is configured to perform the method as described in any one of claims 1-2.

6. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is run on the processor, it causes the processor to perform the method as described in any one of claims 1-2.