Task scheduling method and device for edge-cloud collaborative computing
By implementing security classification and resource scheduling for edge nodes in edge-cloud collaborative computing, and combining it with a blockchain network, the heterogeneity and security issues of edge nodes are resolved, achieving efficient and secure task scheduling and resource utilization.
Patent Information
- Application Number
- CN202310489216.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-04
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2043-05-04
AI Technical Summary
In edge-cloud collaborative computing, the heterogeneity and distributed structure of edge nodes lead to heterogeneity in cached data, which increases the burden of task scheduling. At the same time, the security of terminal access to the network is difficult to guarantee, and there are risks of data leakage and attack.
By using smart contracts to classify the resource application permissions of edge nodes, and combining them with the blockchain network, a secure node partitioning mechanism is constructed. The task scheduling model is transformed into a mixed integer nonlinear optimization problem, which is then transformed into a convex optimization problem using linearization and binary relaxation methods. The alternating direction multiplier algorithm is used for task scheduling.
This approach achieves improved system security and resource utilization efficiency while ensuring efficient task scheduling, reducing task processing latency and energy consumption, and enhancing cache resource hit rate and data communication security.
Smart Images

Figure CN116633924B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing, and in particular to a task scheduling method and device for end-edge-cloud collaborative computing. Background Art
[0002] The end-edge-cloud collaborative computing system schedules the computing tasks of the terminal to the appropriate location in the three layers of the end-edge-cloud for processing, so as to achieve better and faster task processing results. In order to further reduce the task processing delay and effectively utilize the storage capacity of the edge nodes, a cache system is established in the edge nodes to store dynamic data programs so as to cache the resources or programs required for the computing tasks. When the task similarity is high or the resource requirements are consistent, the repeated resource calls and data transmission consumption are reduced by calling the cache. However, due to the heterogeneity and distributed structure of the edge nodes, the data cached on the edge nodes are also heterogeneous, which brings an additional burden to task scheduling. In addition, since there are many different network methods for terminals to access end-edge-cloud collaborative computing, the security of the accessed terminals is difficult to guarantee. Therefore, it is necessary to provide a new task scheduling method and device for end-edge-cloud collaborative computing. Summary of the Invention
[0003] The purpose of the present invention is to provide a task scheduling method and device for end-edge-cloud collaborative computing, thereby overcoming the above-mentioned problems caused by the limitations and defects of related technologies at least to a certain extent.
[0004] According to one aspect of the present invention, a task scheduling method for device-edge-cloud collaborative computing is provided, comprising the following steps:
[0005] Acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task;
[0006] Determining at least one edge node having resources required for the computing task according to the resource index, and constructing a scheduling model including a terminal, a cloud server, and the at least one edge node;
[0007] The target scheduling position of the computing task is determined by solving the scheduling model, and the computing task is scheduled to the target scheduling position for processing.
[0008] In one embodiment, determining at least one edge node having the resources required by the computing task according to the resource index includes:
[0009] When it is determined according to the resource index that a cache resource exists in the cache of the edge node, treating the edge node as an edge node having the resource required by the computing task;
[0010] And when it is determined according to the resource index that there is no cache resource in the cache of the edge node, the computing resources in the cloud server are applied for scheduling through the blockchain network according to the hierarchical permissions divided by the smart contract.
[0011] In one embodiment, applying for scheduling computing resources in a cloud server through a blockchain network based on hierarchical permissions divided by smart contracts includes:
[0012] Obtaining basic attributes of edge nodes, including computing power, computing resources, storage space, security of edge nodes, and timeliness of events;
[0013] Determining a security score of the edge node according to the weight of the basic attributes;
[0014] The servers are divided into different levels according to the ratings, and the quantity and level of available resources are set.
[0015] In one embodiment, it also includes:
[0016] When the data in the cache of the edge node no longer exists, the edge node dispatches resources from the cloud server through the blockchain according to its own security level;
[0017] The task resources available to the edge node are determined based on its security level, and the task scheduling status is determined based on the amount of available resources.
[0018] In one embodiment, the scheduling decision of the computing task is where a i ,b i ,x ij ∈{0,1},a i Indicates that task i is dispatched to the terminal for calculation, b i Indicates that task i is dispatched to the cloud server for calculation, x ij Indicates that task i is scheduled to edge node j for computation, N represents the number of tasks, and S represents the number of cloud servers.
[0019] In one embodiment, the constraints for constructing the scheduling decision include:
[0020] Determining the transmission delay and energy consumption of the computing task from the terminal to the edge node;
[0021] Determine the transmission delay and energy consumption of the computing task from the edge node to the cloud server;
[0022] And determine the downlink transmission delay and energy consumption of data transmitted from the cloud server to the edge node.
[0023] In one embodiment, requesting resources required for computing the remaining tasks from the cloud server includes:
[0024] Collect basic information about edge nodes where f i e 、 They are the computing power, storage capacity, power consumption and security level of the edge node;
[0025] Determine the security of the edge node; the security of the edge node can be described as a vector {at i ,dt i ,ut i}, at i ,dt i ,ut i ∈[0,1],at i +dt i +ut i =1, indicating safe, uncertain and unsafe respectively. Set se i To safely execute the task number, use i The number of events indicating that the task is not completed or is unsafe, pr i represents the probability that the task will be processed safely, then the security status of the edge node can be expressed as
[0026]
[0027] Determine the timeliness of events at edge nodes; the security of edge nodes changes over time, recent events have a greater impact on the node, while past events have a smaller impact on this local view, so as to make reputation calculation more accurate and reliable. Set the time scale t of recent and past events per In addition, the weight of negative events on the node is higher than that of positive events. Set ι (ι ≥ 0.5) to represent the weight of unsafe events, 1-ι represents the impact of positive events on the node, θ (θ ≥ 0.5) represents the impact of recent events on node attributes, 1-θ is the impact of past events on the system, and set is the number of security incidents in a period of time, is the number of unsafe events in a period of time, then the impact of event timeliness on node security can be expressed as
[0028]
[0029] The security status of the edge node is updated to
[0030]
[0031] The final score of the edge node is determined by combining event timeliness, security and node attributes
[0032]
[0033] In one embodiment, the task scheduling method for device-edge-cloud collaborative computing further includes:
[0034] Convert a discrete binary variable to a continuous variable: i ,x ij ,y ij ,h ij and b i The binary variable is relaxed to a continuous decision variable 0≤h i ≤1,0≤x ij ≤1,0≤y j ≤1,0≤b i ≤1,0≤a i ≤1, the slack variable can be interpreted as the part of the resource data in the relevant computing task data that can be scheduled to the edge node or remote cloud server, or cached in the edge node;
[0035] Convert non-convex constraints into convex conditional constraints and replace existing binary discrete variables by multiplying them;
[0036] The multiplication term contained in the objective function Make substitutions and define auxiliary variables To replace the product term x ij y ij , and new constraints are added to the model to ensure the validity of the original objective function.
[0037] In one embodiment, determining the target scheduling position of the computing task by solving the scheduling model includes:
[0038] The optimization problem is transformed into a convex optimization problem by using a linearly scaled non-convex optimization method;
[0039] The scheduling position of the computing task is determined according to the solution result of the convex optimization problem.
[0040] According to another aspect of the present invention, a task scheduling device for device-edge-cloud collaborative computing is provided, comprising:
[0041] An information acquisition module, configured to acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task;
[0042] a model building module, configured to determine, based on the resource index, at least one edge node having the resources required for the computing task, and to build a scheduling model including a terminal, a cloud server, and the at least one edge node;
[0043] The task processing module is used to determine the target scheduling position of the computing task by solving the scheduling model, and schedule the computing task to the target scheduling position for processing.
[0044] The present invention provides a method and device for scheduling device-edge-cloud collaborative computing tasks, which has the following advantages:
[0045] 1. In response to the various requirements of tasks for computing resources, the caching capacity of edge nodes is fully utilized to store the resources required for the tasks in edge nodes, and the types and quantities of cache resources are expanded. At the same time, in order to improve the resource hit rate of the cache pool, the task index is shared on the blockchain. Devices can use the blockchain to schedule resources and ensure data communication security.
[0046] 2. In order to enhance the security of the entire edge computing task scheduling model, a security-enhanced node partitioning mechanism is established. This mechanism grades the edge nodes' ability to securely process tasks based on factors such as the size of their storage resources, computing power, and the number of times they securely process tasks.
[0047] 3. Taking into account task caching, task scheduling, and security, the problem is formulated as a mixed-integer nonlinear optimization problem, aiming to minimize the weighted sum of task scheduling energy consumption and computational latency. Since the problem is non-convex, linearization and binary relaxation methods can be used to transform it into a more easily soluble convex problem.
[0048] 4. A task scheduling algorithm based on the alternating direction multiplier algorithm is used to make near-optimal scheduling decisions for computing tasks. The constructed model has significant performance advantages, the most obvious of which is the weighted sum of system latency and cost that meets the requirements. This model can not only ensure the security of cached data storage and sharing, but also improve the security of heterogeneous devices. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] Figure 1 This is a flowchart of a task scheduling method for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0050] Figure 2 This is a schematic diagram of an application scenario of a task scheduling method for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0051] Figure 3 This is a schematic diagram of a task scheduling result for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0052] Figure 4 This is a schematic diagram of a task scheduling result for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0053] Figure 5This is a schematic diagram of a task scheduling result for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0054] Figure 6 This is a schematic diagram of a task scheduling result for device-edge-cloud collaborative computing in an embodiment of the present invention;
[0055] Figure 7 This is a structural diagram of a task scheduling device for end-edge-cloud collaborative computing in an embodiment of the present invention. DETAILED DESCRIPTION
[0056] In order to make the objects, features and advantages of the present invention more obvious and easy to understand, the technical solutions in the embodiments and examples of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. However, the exemplary embodiments and examples can be implemented in various forms and should not be understood as being limited to the examples set forth herein; on the contrary, these embodiments and examples are provided so that the present invention will be more comprehensive and complete, and the concepts of the exemplary embodiments and examples are fully conveyed to those skilled in the art. The features, structures or characteristics described in the present invention can be combined in one or more embodiments and examples in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments and examples of the present invention. However, those skilled in the art will appreciate that the technical solutions of the present invention can be practiced while omitting one or more of the specific details, or that other methods, components, devices, steps, etc. can be adopted. In other cases, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present invention.
[0057] In addition, the accompanying drawings are merely schematic illustrations of the present invention and are not necessarily drawn to scale. Identical reference numerals in the figures denote identical or similar parts, and thus repetitive descriptions thereof will be omitted. Although the various steps of the method of the present invention are described in a particular order in the accompanying drawings, this does not require or imply that the steps must be performed in that particular order, or that all illustrated steps must be performed to achieve the desired results. The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all steps. For example, some steps may be decomposed, while others may be combined or partially combined, so the actual order of execution may vary depending on the circumstances. Some of the block diagrams shown in the accompanying drawings represent functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0058] Thanks to the development of technologies such as big data, artificial intelligence, and 5G communications, terminal tasks are handling increasing amounts of data and computational complexity. Due to the limited resources of terminal devices, some complex tasks are often offloaded to the cloud, leveraging the abundant computing resources of cloud servers. However, because cloud servers are deployed remotely from the terminals, the interaction between the terminals and cloud servers is subject to significant round-trip latency, creating the risk of data leakage and attacks during task transmission, posing significant risks to both real-time performance and security.
[0059] To address some of the risks and issues inherent in cloud computing frameworks, edge nodes are deployed at the edge layer, closer to the end user, to meet real-time and security requirements. A complete end-edge-cloud collaborative computing architecture can meet the latency and resource requirements of different types of tasks. With task scheduling, computing tasks in the end user can be dispatched to appropriate locations within the three layers of the end-edge-cloud layer for processing, enabling faster and better task processing. To further reduce task processing latency and effectively utilize the storage capacity of edge nodes, a cache system is established in edge nodes to store dynamic data and programs, caching the resources or programs required for computing tasks. When tasks are highly similar or resource requirements are consistent, the cache is used to reduce repeated resource calls and data transmission consumption.
[0060] While edge-edge cloud collaborative computing and caching technologies offer numerous advantages, the heterogeneity and distributed structure of edge nodes leads to the heterogeneity of cached data on these nodes, placing an additional burden on task scheduling. Furthermore, the diverse network methods for terminal access to edge-edge cloud collaborative computing make it difficult to ensure terminal security. Cached data is also vulnerable to attacks during scheduling, necessitating significant security attention during task scheduling.
[0061] In this context, in order to ensure task scheduling efficiency while improving system security, the present invention uses smart contracts to restrict the resource application permissions of edge nodes, classifies the security of nodes, and provides a task scheduling method for edge-cloud collaborative computing. Figure 1 is a flow chart of a task scheduling method for device-edge-cloud collaborative computing in an embodiment of the present invention; Figure 1 As shown, the task scheduling method for device-edge-cloud collaborative computing includes:
[0062] Step S11: Acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task;
[0063] The edge-cloud collaborative computing system sends the computing tasks of the terminal to the edge node or cloud server for processing. The computing tasks can be image processing, file decoding, etc. For the computing tasks generated by the terminal, it is first necessary to determine which location in the edge-cloud will process them. In one embodiment, a system architecture of edge-cloud collaborative computing that combines blockchain and task caching is as follows: Figure 2 As shown in Figure 1, the entire system framework is divided into a terminal layer, an edge node layer, and a cloud server layer. The number of tasks generated by edge nodes and terminals is set to EN = {1, 2, ..., n} and M = {1, 2, ..., m}, respectively. Terminals are connected to edge nodes via wireless links, while edge nodes are connected to remote cloud servers via wired backhaul links. Multiple adjacent edge nodes can communicate with each other via wired links. In the entire framework, the cloud server is the computing and data storage center of the entire system, and its computing power is set to f c (CPU cycles / s), the computing power of the terminal is f i l (CPU cycles / s). The node grading smart contract divides heterogeneous edge nodes into different levels and sets the attributes of edge nodes as where f i e is the computing power of edge node i, is the unit energy consumption of the edge node, is the level to which the edge nodes are divided, Y i e It is a collection of storage resources in edge nodes. Each terminal has computationally intensive tasks that need to be calculated within a time slot, and these tasks are inseparable.
[0064] For example, the attribute information of the computing task can be expressed as where d i For the calculation task R i Data size (Mbit), c i is the task size or the number of CPUs required to compute the task, To calculate the maximum delay time allowed for the task (tasks that time out will be discarded), l i Representative task R i Security level, ID i (ID i ={id i1 ,id i2 ,...id ij}) represents the resource index corresponding to the calculation task, id ij Represents task R i The required resource number.
[0065] Step S13: determining at least one edge node having the resources required for the computing task according to the resource index, and constructing a scheduling model including the terminal, the cloud server, and the at least one edge node;
[0066] Specifically, the scheduling decision of the computing task is set as where a i ,b i ,x ij ∈{0,1},a i Indicates that task i is dispatched to the terminal for calculation, b i Indicates that task i is dispatched to the cloud server for calculation, x ij Indicates that task i is scheduled to edge node j for computation, N represents the number of tasks, and S represents the number of cloud servers.
[0067] In one embodiment, the constraints for constructing the scheduling strategy include:
[0068] According to the Shannon formula, the uplink frequency between terminal i and edge node j is set to The uplink average signal-to-noise ratio is where p ij is the transmission frequency of terminal i, |r i | -a is the path attenuation coefficient, |h i | is the network interference coefficient between wireless channels, σ 2 is the additive white Gaussian noise coefficient, B0 is the bandwidth between terminal i and edge node j;
[0069] The transmission rate of the computing task scheduled from the terminal to the edge node is
[0070] The transmission delay is
[0071] Energy consumption during transmission in The total power consumption of the uplink transmission equipment.
[0072] In one embodiment, the constraints for constructing the scheduling strategy include:
[0073] The upload rate of the computing task transmitted from the edge node to the cloud server B1 is the transmission bandwidth from the edge node to the cloud server. The computing task is first dispatched by the terminal to the nearest edge node and then transmitted to the cloud server through the wired channel.
[0074] The transmission delay of the computing task from the edge node to the cloud server d ij The transmitted value is the task size;
[0075] The energy consumption during transmission is
[0076] It can be understood that since the data scale after task processing is usually much smaller than the data scale before processing, and the transmission rate of edge nodes and cloud servers is much greater than the transmission rate of terminals, the time and energy consumption of returning task processing results from edge nodes to devices can be ignored.
[0077] In one embodiment, the constraints for constructing the scheduling strategy include: determining the downlink transmission delay and energy consumption of data transmitted from the cloud server to the edge node.
[0078] When determining at least one edge node having the resources required for the computing task based on the resource index, if the cache resources required for computing the task exist in the resource cache pool of the edge node, the edge node can be directly determined to be the edge node having the resources required for computing the task; if there are not enough cache resources in the resource cache pool of the edge node to process the task, it is necessary to apply to the cloud server for the resources required for computing the remaining tasks, and the cloud server will send the cache resources required for computing the remaining tasks to the edge node.
[0079] Specifically, edge nodes divided by the node classification mechanism have different permissions (edge nodes can be given permissions to request computing resources from the server based on their security levels), which results in differences in task caches in edge nodes. i The cache placement decision can be made using a binary indicator variable y ij ∈{0,1} means, y ij =1 represents the resource index id i The resource index ID of the task requirement cached on edge node j i Schedule to edge node j, and set the cache resource corresponding to the index to Y j ={y j1 ,y j2 ...y jn Task caching helps edge nodes save computing power required for calculations. The reduced computing power requirement is set to The fewer cache misses, The smaller it is, The maximum is c i .
[0080] The amount of tasks that need to be calculated by the cloud server τ ij Indicates index Id ij The corresponding data size, is the cache resource pool capacity of edge node j.
[0081] Downlink transmission delay from the cloud server to the edge node for the cache resources required to calculate the remaining tasks
[0082] The computational delay of the edge node to execute the task is determined based on the transmission delay from the terminal to the edge node, the transmission delay from the edge node to the cloud server, and the downlink transmission delay of the cache resources required for computing the remaining tasks to the edge node through the cloud server.
[0083]
[0084] Total latency of edge node computing tasks
[0085]
[0086] Energy consumption of edge node computing tasks
[0087]
[0088] Furthermore, the weighted sum of energy consumption and delay is constructed according to the weight coefficient and normalization factor χ where ω e +ω t =1,ω t is the time consumption weight coefficient, ω e is the energy consumption weight coefficient;
[0089] The target weight value calculated in the edge node can be calculated as
[0090]
[0091] The target weight value of the computing task of the cloud server can be expressed as
[0092]
[0093] In order to reduce the time and energy consumption of all users while satisfying the limited battery capacity, computing power constraints, and cache capacity constraints, the scheduling problem is modeled as the following constrained optimization problem:
[0094]
[0095]
[0096]
[0097] C3:a i +x ij +b i =1
[0098]
[0099]
[0100]
[0101]
[0102] Among them, C1 represents the scheduling decision of the binary variable, C2 is used to ensure the validity of the task cache, C3 represents the scheduling location of the task, C4 indicates that the scheduled task demand does not exceed the computing resources of the edge node, C5 indicates that the cached task results do not exceed the cache capacity of the edge node, C6 indicates that the time for the scheduling decision to be made does not exceed the maximum time of the task, and C7 represents the safety constraint of the task.
[0103] In one embodiment, requesting resources required for computing the remaining tasks from the cloud server may further include:
[0104] Collect basic information about edge nodes
[0105] Determine the security of the edge node; the security of the edge node can be described as a vector {at i ,dt i ,ut i}, at i ,dt i ,ut i ∈[0,1],at i +dt i +ut i =1, indicating safe, uncertain and unsafe respectively. Set se i To safely execute the task number, use i The number of events indicating that the task is not completed or is unsafe, pr i represents the probability that the task will be processed safely, then the security status of the edge node can be expressed as
[0106]
[0107] Determine the timeliness of events at edge nodes; the security of edge nodes changes over time, recent events have a greater impact on the node, while past events have a smaller impact on this local view, so as to make reputation calculation more accurate and reliable. Set the time scale t of recent and past events per In addition, the weight of negative events on the node is higher than that of positive events. Set ι (ι ≥ 0.5) to represent the weight of unsafe events, 1-ι represents the impact of positive events on the node, θ (θ ≥ 0.5) represents the impact of recent events on node attributes, 1-θ is the impact of past events on the system, and set is the number of security incidents in a period of time, is the number of unsafe events in a period of time, then the impact of event timeliness on node security can be expressed as
[0108]
[0109] The security status of the edge node can be updated to
[0110]
[0111] The final score of the edge node is determined by combining event timeliness, security and node attributes;
[0112] Assuming ξ as the weight of security and node attributes, the final score of the edge node can be expressed as
[0113]
[0114] The end-edge-cloud collaborative computing system can schedule tasks to servers of different levels for processing according to task requirements. Edge nodes of different levels can adapt to a variety of scenarios. The higher the level of the edge node, the more secure it is, and the more resources can be used to process tasks.
[0115] Step S15: Determine the target scheduling position of the computing task by solving the scheduling model, and schedule the computing task to the target scheduling position for processing.
[0116] In one embodiment, solving the scheduling model may include converting the scheduling model of the non-convex problem into a convex optimization problem so that the relaxed program can be effectively processed. i The scheduling decision vector is Γ={a i ,x i1 ,x i2 ,...x ij ,b i}, the scheduling decision profile of all tasks is Γ={Γ i ,i∈N}, the optimization problem can be expressed as
[0117]
[0118]
[0119]
[0120] C3:a i +x ij +b i =1
[0121]
[0122]
[0123]
[0124]
[0125] Defining auxiliary variables To replace the product term x ij y ij , and add the following four additional constraints to the model
[0126]
[0127] Apply linearization technology to convert and obtain the linearized formula
[0128]
[0129] Since the variable a i ,x ij ,y ij ,h ij and b i are all binary discrete variables, the formula is still non-convex. In order to deal with this problem, a i ,x ij ,y ij ,h ij and b i The binary variable is relaxed to a continuous decision variable 0≤h i ≤1,0≤x ij ≤1,0≤y j ≤1,0≤b i ≤1,0≤a i ≤1. The slack variable can be interpreted as the part of the relevant computing task data that can be scheduled to the edge node, cloud server, or cached in the edge node. Therefore, the formula can be rewritten as
[0130]
[0131] C3:a i +x ij +b i =1
[0132]
[0133]
[0134]
[0135]
[0136]
[0137] When the number of tasks and terminals increases, it is difficult for traditional linear optimization methods to obtain the optimal solution within a reasonable time. Since the objective function is linear and the constraints are convex functions, the dual decomposition and interior point method can be used to obtain an approximate optimal solution for task scheduling. In order to properly handle the coupling constraints between variables, a local copy of the variable x is introduced. ij ,b i ,h i ,a i Define separately and It can be expressed as and Is the indicator function, the indicator function is defined on the set x ij ,b i ,h i ,a i Function on the element belongs to the subset Θ i Therefore, regarding task R i The set of possible local variables is as follows
[0138]
[0139] From the above analysis, by introducing consensus variables, we can solve it by the alternating direction multiplier method algorithm and convert it into
[0140]
[0141]
[0142]
[0143]
[0144]
[0145]
[0146] The augmented Lagrangian function of this formula is expressed as
[0147]
[0148] where σ ij ,δ i ,η i ,υ ij are the Lagrange multipliers respectively, ρ>0 is the augmented Lagrange parameter, and in order to simplify the form, we set and scale the corresponding Lagrange multipliers The augmented Lagrangian function is expressed as
[0149]
[0150] The dual form of the target problem can be expressed as Where Π={α,β,φ,κ}.
[0151] By applying the ADMM method to solve the above dual problem, the optimization steps include:
[0152] (1) Update local variables in (t+1) iterations by solving the following optimization problem And decompose it into N parallel sub-problems
[0153]
[0154] (2) Optimization of local variables. Given Minimize Γ with respect to global variables t Therefore, the global variable Γ t It can be updated according to the following formula
[0155]
[0156]
[0157]
[0158]
[0159] (3) The Lagrange multiplier is updated as
[0160]
[0161]
[0162]
[0163]
[0164] (4) Algorithm stopping criterion: the original residual of each edge node under feasible conditions must be small
[0165]
[0166]
[0167]
[0168]
[0169] The dual residual under the dual feasible condition is expressed as follows:
[0170] ||x ij t+1 -x ij t ||2≤ξ dual
[0171] ||a i t+1 -a i t ||2≤ξ dual
[0172] ||b i t+1 -b i t ||2≤ξ dual
[0173] ||h i t+1 -h i t ||2≤ξ dual
[0174] Among them, ξ pri >0 and ξ dual >0 denotes the feasible tolerances for the original feasibility condition and the dual feasibility condition, respectively. These tolerances can be chosen using an absolute or relative criterion.
[0175] (5) Binary variable recovery: the binary value can be restored using the following method
[0176]
[0177] By solving the scheduling model, we can obtain The task is scheduled to the edge node Perform calculations.
[0178] In one embodiment, computing a task using the method includes: assuming that each terminal has an independent computing task that can be executed on the terminal, edge node, or cloud server. The data size of the task and the required computing power are between [300, 1200] KB and [0.1×10 9 , 1×10 9] cycles, and the maximum deadline of tasks is randomly distributed between 0.1 and 3 seconds. Considering the heterogeneous computing capabilities of edge nodes, the CPU computing power of each edge node is randomly assigned from the set [3.5, 4.0] GHz. The CPU computing power of the cloud server is set to 9 GHz, the terminal is set to 1 GHz, and the maximum transmit power is 23 dBm. To evaluate the proposed model and algorithm, experiments were conducted on four different scheduling strategies:
[0179] (1) All-local scheduling: This strategy does not involve scheduling. All computing tasks are executed locally.
[0180] (2) Full-edge scheduling: In this strategy, each terminal schedules tasks to edge nodes for execution;
[0181] (3) No-task-cache scheduling (OWTC): In this strategy, all devices perform their computing tasks locally, on edge nodes, or on remote cloud servers, and the corresponding computing data are not cached on edge nodes;
[0182] (4) The scheduling strategy of joint blockchain and task cache (OATCWB) obtained by the proposed method of the present invention: In this strategy, the scheduling decision takes into account the computation, task cache, and task cache with blockchain-assisted security issues. The strategy also considers the overall minimization of the weighted sum of energy consumption and task delay.
[0183] Figure 3 Figures (a) and 3(b) depict the weighted sum of energy consumption and task latency for all users as edge node tiers become more refined. The higher the tier of the edge node, the greater the scheduling costs and additional blockchain costs. Furthermore, since higher-tier nodes can request more resources, gradually approaching the resource availability of cloud servers, task processing time decreases. As shown in the figure, the target value achieves better performance at tiers 4 and 6. Choosing the right node tier can improve overall system performance.
[0184] Figure 4 The convergence of OATCWB is compared with that of OWTC, All-local, and Full-edge. It is easy to see that OATCWB can eventually converge to a near-optimal value. Furthermore, OATCWB uses a global variable consistency optimization method to avoid local optimality, at the expense of spending more time exploring near-optimal solutions. The OATCWB scheduling algorithm introduces task caching and blockchain assistance to select appropriate scheduling locations among heterogeneous edge nodes, terminals, and cloud servers, effectively reducing target task processing latency and energy consumption. Compared to traditional cloud-edge three-layer scheduling, the OATC WB algorithm achieves an 8% performance improvement. Figure 4It also describes the effects of different weights on value objectives that combine energy consumption and time delay through 50 tasks. If the weight value ω t is 0.5, then the target value of the task is less than OWTC, indicating that the energy consumption and delay of the task are dynamically balanced. t When the task weight value ω is 0.9, the task may emphasize delay, increase the processing speed of the task by exchanging more resources, and dispatch most tasks to the edge nodes to reduce task delay processing. However, since a large number of tasks are dispatched to the remote cloud server, it will also cause additional transmission energy consumption, resulting in high task cost. t = 0.2, the target value of the task tends to the other extreme, that is, increasing the time, thereby reducing energy consumption, and the task is mainly run locally. t A more reasonable target value can be obtained when the value is 0.5 or 0.4.
[0185] The relationship between total overhead and time delay and average data size is as follows: Figure 5 As shown in (a) and 5(b), the task size is initially set to 20MB and gradually increased to 500MB. When the amount of data is small, the task upload delay is relatively small, and the task is scheduled to the edge device to obtain the lowest task delay and energy consumption. The optimal values of OATCWB and OWTC are very close to Full-edge. At this time, scheduling the task to the edge can obtain lower delay and cost consumption. As the task size grows, Full-edge will produce higher and higher task transmission delay. Figure 5 As shown in (d), the task loss rate of the Full-edge and OWTC schemes gradually increases, resulting in additional energy consumption. OATCWB has sufficient task cache to reduce the delay of task processing. At the same time, the optimal edge node is obtained according to the ADMM algorithm to process tasks, which greatly reduces the task loss rate. Compared with the All-local, Full-edge and OWTC schemes at the maximum task scale, the total delay of all users of the OATCWB scheme can be reduced by 34.08%, 21.03% and 12.37% respectively. The OATCWB scheme reduces the total energy consumption of users by about 45%, 47.6% and 33% respectively under tasks with different data volumes. As the number of tasks increases, it has a great impact on the upload delay of the task. Therefore, when ω t =0.9, the task weighted cost is relatively large. Therefore, when the task data volume is large, reduce ω t The size of can obtain a better weighted cost.
[0186] Figure 6This paper demonstrates the impact of edge node caching capacity on energy consumption and total latency under different scenarios. It can be observed that greater computing power leads to shorter task latency and lower energy consumption. Tasks can be computed directly on cached data, significantly reducing the processing time required to download tasks from cloud servers. Edge computing task caching can reduce the demand for resources for time-sensitive and computationally intensive tasks. Parallel processing of tasks reduces task latency. The additional storage cost can reduce system costs and time.
[0187] Another embodiment of the present invention provides a task scheduling device for device-edge-cloud collaborative computing. Figure 7 This is a structural diagram of a task scheduling device for edge-cloud collaborative computing in an embodiment of the present invention. Figure 7 As shown, the task scheduling device for device-edge-cloud collaborative computing includes:
[0188] An information acquisition module 70 is configured to acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task;
[0189] A model building module 72 is configured to determine, based on the resource index, at least one edge node having the resources required for the computing task, and to build a scheduling model including the terminal, the cloud server, and the at least one edge node;
[0190] The task processing module 74 is used to determine the target scheduling position of the computing task by solving the scheduling model, and schedule the computing task to the target scheduling position for processing.
[0191] In one embodiment, the present invention further provides a task scheduling system for edge-cloud collaborative computing, comprising: a central server configured to obtain computing tasks, establish a scheduling model based on the computing task information, and solve the scheduling model to determine whether the computing task should be scheduled to an edge node. When the computing task is scheduled to an edge node, the central server searches the edge node's cache for computing resources that match the computing task. If the computing result exists in the edge node's cache, the edge node returns the computing resource. If the computing result does not exist in the edge node's cache, the central server schedules resources from the cloud server via the blockchain network.
[0192] The specific details of each module / unit in the above-mentioned device have been described in detail in the corresponding method part and will not be repeated here. It should be noted that although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to an embodiment of the present invention, the features and functions of two or more modules or units described above can be concretized in one module or unit. On the contrary, the features and functions of a module or unit described above can be further divided into being concretized by multiple modules or units.
[0193] In addition to the above-mentioned methods and devices, an embodiment of the present invention may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to perform the steps of the method according to various embodiments of the present invention described in the above "Exemplary Method" section of this specification.
[0194] The computer program product may be written in any combination of one or more programming languages to implement the operations of embodiments of the present invention, including object-oriented programming languages such as Java, C++, and conventional procedural programming languages such as C or similar programming languages. The program code may be executed entirely on the user's computing device, partially on the user's computing device, as a stand-alone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0195] Another embodiment of the present invention provides an electronic device that can be used to perform all or part of the steps of the method described in this example embodiment. The device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the steps of the method according to various embodiments of the present invention described in the "Exemplary Method" above of this specification.
[0196] Another embodiment of the present invention provides a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, causes the processor to execute the steps of the method according to various embodiments of the present invention described in the "Exemplary Method" above in this specification.
[0197] The computer-readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can, for example, include but is not limited to a system, device or component of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0198] The basic principles of the present invention have been described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, and effects mentioned in the present invention are merely illustrative and non-limiting, and should not be construed as necessarily possessed by each embodiment of the present invention. Furthermore, the specific details disclosed above are provided for illustrative purposes and to facilitate understanding, and are not intended to be limiting. These details do not necessarily limit the present invention to being implemented using these specific details.
[0199] The block diagrams of the devices, apparatuses, equipment, and systems involved in the present invention are intended to be illustrative examples only and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As will be appreciated by those skilled in the art, these devices, apparatuses, equipment, and systems may be connected, arranged, or configured in any manner. Words such as "include," "comprise," "have," and the like are open-ended words, meaning "including but not limited to," and may be used interchangeably therewith. The words "or" and "and" used herein refer to the words "and / or" and may be used interchangeably therewith, unless the context clearly indicates otherwise. The word "such as" used herein refers to the phrase "such as but not limited to," and may be used interchangeably therewith.
[0200] Other embodiments of the present invention will readily occur to those skilled in the art after considering the specification and practicing the invention disclosed herein. The present invention is intended to cover any variations, uses, or adaptations of the present invention that follow from the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.
[0201] It should be understood that the present invention is not limited to the exact construction 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 task scheduling method for device-edge-cloud collaborative computing, characterized in that: The following steps are involved: Acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task; Determining at least one edge node having resources required for the computing task according to the resource index, and constructing a scheduling model including a terminal, a cloud server, and the at least one edge node; Determine the target scheduling position of the computing task by solving the scheduling model, and schedule the computing task to the target scheduling position for processing; The step of determining, according to the resource index, at least one edge node having the resources required for the computing task comprises: When it is determined according to the resource index that there are cache resources in the resource cache pool of the edge node, the edge node is regarded as an edge node having the resources required by the computing task; When it is determined according to the resource index that no cache resources exist in the resource cache pool of the edge node, computing resources in the cloud server are requested to be scheduled through the blockchain network according to the hierarchical permissions divided by the smart contract; wherein requesting the resources required for the computing task from the cloud server includes: Collect basic information about edge nodes where f i e 、 They are the computing power, storage capacity, power consumption and security level of the edge node; Determine the security of the edge node; the security of the edge node can be described as a vector {at i ,dt i ,ut i }, respectively representing safe, uncertain and unsafe, at i ,dt i ,ut i ∈[0,1],at i +dt i +ut i =1, set se i To safely execute the task number, use i is the number of events where the task is not completed or is unsafe, pr i is the probability that the task is processed safely, then the security status of the edge node can be expressed as Determine the impact of event timeliness on node security as where t per is the time scale of recent and past events, ι (ι ≥ 0.5) represents the weight of unsafe events, 1-ι represents the impact of positive events on nodes, θ (θ ≥ 0.5) represents the impact of recent events on node attributes, and 1-θ is the impact of past events on the system. is the number of security incidents in a period of time, is the number of unsafe incidents in a period of time; The security status of the edge node is updated to The final score of the edge node is determined by combining event timeliness, security and node attributes 2. The task scheduling method for edge-cloud collaborative computing according to claim 1 is characterized in that: The hierarchical permissions divided according to the smart contract apply for scheduling computing resources in the cloud server through the blockchain network, including: Obtaining basic attributes of edge nodes, including computing power, computing resources, storage space, security of edge nodes, and timeliness of events; Determining a security score of the edge node according to the weight of the basic attributes; The edge nodes are divided into different levels according to the security scores, and the quantity and level of available resources are set.
3. The task scheduling method for edge-cloud collaborative computing according to claim 2 is characterized in that: Also includes: When there is no cached data in the resource cache pool of the edge node, resources are dispatched from the cloud server through the blockchain according to the security level of the edge node; The task resources obtained by the edge node are determined according to the security level of the edge node, and the task scheduling status is determined according to the amount of available resources.
4. The task scheduling method for edge-cloud collaborative computing according to claim 1 is characterized in that: The scheduling decision for the computing task is where a i ,b i ,x ij ∈{0,1},a i Indicates that task i is dispatched to the terminal for calculation, b i Indicates that task i is dispatched to the cloud server for calculation, x ij Indicates that task i is scheduled to edge node j for computation, N represents the number of tasks, and S represents the number of cloud servers.
5. The task scheduling method for edge-cloud collaborative computing according to claim 4 is characterized in that: The constraints for constructing the scheduling decision include: Determining the transmission delay and energy consumption of the computing task from the terminal to the edge node; Determine the transmission delay and energy consumption of the computing task from the edge node to the cloud server; And determine the downlink transmission delay and energy consumption of data transmitted from the cloud server to the edge node.
6. The task scheduling method for edge-cloud collaborative computing according to claim 1 is characterized in that: Also includes: Convert discrete binary variables into continuous variables, i ,x ij ,y ij ,h ij and b i The binary variable is relaxed to a continuous decision variable 0≤h i ≤1,0≤x ij ≤1,0≤y j ≤1,0≤b i ≤1,0≤a i ≤1; Convert non-convex constraints into convex conditional constraints and replace existing binary discrete variables by multiplying them; And the multiplication term included in the objective function Make substitutions and define auxiliary variables To replace the product term x ij y ij , and new constraints are added to the model to ensure the validity of the original objective function.
7. The task scheduling method for device-edge-cloud collaborative computing according to claim 1 is characterized in that: Determining the target scheduling position of the computing task by solving the scheduling model includes: The optimization problem is transformed into a convex optimization problem by using a linearly scaled non-convex optimization method; The scheduling position of the computing task is determined according to the solution result of the convex optimization problem.
8. A task scheduling device for device-edge-cloud collaborative computing, characterized in that: include: An information acquisition module, configured to acquire attribute information of a computing task, wherein the attribute information includes a resource index of the computing task; a model building module, configured to determine, based on the resource index, at least one edge node having the resources required for the computing task, and to build a scheduling model including a terminal, a cloud server, and the at least one edge node; A task processing module, configured to determine a target scheduling position of the computing task by solving the scheduling model, and schedule the computing task to the target scheduling position for processing; The model building module includes: A submodule for determining, when determining according to the resource index that a cache resource exists in the resource cache pool of the edge node, that the edge node is an edge node having the resource required by the computing task; When it is determined according to the resource index that there is no cache resource in the resource cache pool of the edge node, a submodule for applying for scheduling computing resources in the cloud server through the blockchain network according to the hierarchical authority divided by the smart contract; wherein the submodule for applying for resources required for computing tasks from the cloud server includes: Used to collect basic information of edge nodes Submodule of i e 、 They are the computing power, storage capacity, power consumption and security level of the edge node; A submodule for determining the security of edge nodes; wherein the security of edge nodes can be described as a vector {at i ,dt i ,ut i }, respectively representing safe, uncertain and unsafe, at i ,dt i ,ut i ∈[0,1],at i +dt i +ut i =1, set se i To safely execute the task number, use i is the number of events where the task is not completed or is unsafe, pr i is the probability that the task is processed safely, then the security status of the edge node can be expressed as The effect of event timeliness on node security is determined as follows: submodule of t per is the time scale of recent and past events, ι (ι ≥ 0.5) represents the weight of unsafe events, 1-ι represents the impact of positive events on nodes, θ (θ ≥ 0.5) represents the impact of recent events on node attributes, and 1-θ is the impact of past events on the system. is the number of security incidents in a period of time, is the number of unsafe incidents in a period of time; The security status for edge nodes is updated to submodules of and the final score for edge nodes based on event timeliness, security, and node attributes submodules of .
Citation Information
Patent Citations
Mobile edge computing network resource allocation method based on full duplex relay
CN111988806A
Knowledge-driven network resource arrangement method
CN112799829A
Edge computing task scheduling method and system in industrial internet
CN115237555A