A method and system for unloading drone tasks based on edge computing scenarios
By carrying an SDN controller on the drone, the unloading task model is built and optimized, and the problem that the drone edge computing tasks may not be processed and the user's unloading willingness is affected, achieving a more efficient and reliable task unloading process.
Patent Information
- Application Number
- CN202410174286.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-07
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2044-02-07
AI Technical Summary
The UAV edge computing mission does not take into account the risk that the task may not be processed due to the limited energy of the UAV, and the issue of users' subjective uninstallation intention at the risk of download failure.
By carrying an SDN controller on the drone, an unload task model, an unload task decision model, an unload task delay calculation model in different unload scenarios, and an unload task user satisfaction model based on prospect theory are made, and optimization decisions are made to determine the optimal unload decision, cache decision and resource allocation decision.
It effectively solves the risk that drone edge computing tasks may not be processed, and reduces the impact of users due to download failures, and improves users' uninstall willingness and experience.
Smart Images

Figure CN118034809B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of edge computing technology, and in particular to a method and system for unloading unmanned aerial vehicle tasks based on an edge computing scenario. Background Art
[0002] With the rapid development of mobile Internet, the widespread popularity of mobile devices and the emergence of various emerging computing-intensive applications, data traffic is experiencing explosive growth. When running emerging computing-intensive and latency-sensitive applications such as autonomous driving, augmented reality and virtual reality, a large number of computing tasks will be generated. However, mobile devices are limited by the energy of their batteries and the computing power of their CPUs, making it difficult to complete the processing before the task deadline.
[0003] Mobile edge computing (MEC) is a solution proposed to address the above challenges. This technology sinks cloud computing capabilities to the edge of the network close to users, and provides computing services to users by deploying servers at base stations / vehicles / drones close to users to reduce the latency and energy consumption of user processing tasks. The offloading process of edge computing includes three parts: uploading input data, edge server processing computing tasks, and returning computing results. Since the size of the results in actual scenarios is too small compared to the first two, they are often ignored in the modeling process.
[0004] Compared with the traditional edge computing network architecture, the drone-assisted MEC network has the advantages of flexible deployment, strong mobility, and line-of-sight communication. It is more suitable for deployment in scenarios such as emergency rescue, maritime communications, and emergency communications. However, compared with fixed ground base stations, drones have limited energy and cannot provide computing services permanently. When the user's unloading request arrives, the remaining computing power of the drone is not enough to support the completion of the task calculation. In this case, "unloading failure" is very likely to occur. From the user's perspective, there is an uncertain risk of unloading failure in the drone-assisted edge computing network, and their subjective willingness to unload is often affected by the risk of unloading failure. However, existing technologies often ignore this unloading failure scenario and the impact of the risk of unloading failure on the user's subjective willingness to unload. Summary of the invention
[0005] The present invention provides a method and system for unloading UAV tasks based on edge computing scenarios, which are used to solve the technical problems that the UAV edge computing tasks do not take into account the limited energy of the UAV, there is a risk that the task may not be processed, and ignore the user's subjective willingness to uninstall under the risk of download failure.
[0006] In view of this, the first aspect of the present invention provides a method for unloading UAV tasks based on edge computing scenarios, comprising:
[0007] Based on the SDN controller carried by the drone, the mobile user information within the drone coverage area is obtained;
[0008] The SDN controller constructs an offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory according to the mobile user information, wherein the offloading task decision model includes offloading decision, cache decision, and resource allocation decision, and the offloading decision includes drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task;
[0009] The SDN controller constructs an optimization function based on the offloading decision, the cache decision and the resource allocation decision and constraints of the optimization function based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory;
[0010] The SDN controller solves the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sends the optimal caching decision and the optimal resource allocation decision to the drone, and notifies the offloading user of the optimal offloading decision, wherein the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task;
[0011] When the drone receives the task offloading request from the offloading user, it queries whether the drone has the input data of the offloading task corresponding to the task offloading request cached in it. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision, wherein the offloading user is a mobile user who initiates the task offloading request within the coverage area of the drone;
[0012] The drone transmits the calculation result of the offloading task back to the offloading user.
[0013] Optionally, the offloading task model is:
[0014] T i ={d i ,w i ,τ i}
[0015] Among them, T i is the i-th offloading task, d iis the data size of the i-th offloading task, w i is the complexity of the i-th offloading task, τ i The maximum deadline allowed for the i-th offloading task;
[0016] The offloading task decision model is:
[0017] O={o 1 ,o 2 ,…,o i ,…,o n}
[0018] X={x 1 ,x 2 ,…,x i ,…,x n}
[0019] F={f 1 F ,f 2 F ,…,f i F ,…,f n F}
[0020] Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F Allocate computing resources to the UAV for the i-th offloading task;
[0021] The offloading task delay calculation models in different offloading scenarios include an offloading task delay calculation model in a local offloading scenario and an offloading task delay calculation model in an edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is:
[0022]
[0023] Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, f i L computing resources for mobile user devices;
[0024] The calculation model of the offloading task delay in the edge offloading scenario is:
[0025] T i fsucc =(1-xi )T i trans +T i comp
[0026] T i ffail =(1-x i )T i trans +T i L
[0027] T i fsucc is the computational delay when the offloading task is successfully offloaded, T i ffail is the computational delay when the offloading task fails, T i trans is the transmission time of the offload task uploaded to the UAV, T i comp To offload the computing time of the task on the edge server;
[0028] The user satisfaction model of offloading tasks based on prospect theory is:
[0029]
[0030]
[0031]
[0032]
[0033]
[0034] Among them, S i For user satisfaction, is the user prospect value function at uninstallation based on prospect theory, is the user's relative profit function when the task is successfully offloaded, is the relative loss function of the user when task offloading fails, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, ∑ i o i is the number of tasks offloaded to the drone, N max The threshold for uninstall failure.
[0035] Optionally, the optimization function based on the offloading decision, the caching decision and the resource allocation decision is:
[0036]
[0037] The constraints of the optimization function are:
[0038]
[0039]
[0040]
[0041]
[0042]
[0043] in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, f i F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, The maximum coverage of the drone.
[0044] Optionally, the edge server solves the optimization function, including:
[0045] The edge server decouples the optimization function into an objective function of an offloading decision subproblem, an objective function of a caching decision subproblem, and an objective function of a resource allocation decision subproblem based on a block coordinate descent method, and solves them respectively.
[0046] Optionally, the objective function of the offloading decision subproblem is solved by a genetic algorithm, the objective function of the cache decision subproblem is solved by a dynamic programming algorithm, and the objective function of the resource allocation decision subproblem is solved by a CVX solver.
[0047] A second aspect of the present invention provides a UAV task offloading system based on edge computing scenarios, including a UAV, an SDN controller and an edge server;
[0048] The drone is equipped with the SDN controller and the edge server;
[0049] The SDN controller is used for:
[0050] Obtain information about mobile users within the drone’s coverage area;
[0051] An offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory are constructed according to the mobile user information, wherein the offloading task decision model includes offloading decision, cache decision, and resource allocation decision, and the offloading decision includes drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task;
[0052] Based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory, an optimization function based on the offloading decision, the cache decision and the resource allocation decision and constraints of the optimization function are constructed;
[0053] Solving the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sending the optimal caching decision and the optimal resource allocation decision to the drone, and notifying the offloading user of the optimal offloading decision, wherein the optimal offloading decision includes drone offloading and local offloading, and the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task;
[0054] The drone is used for:
[0055] When the drone receives the task offloading request from the offloading user, it queries whether the drone has the input data of the offloading task corresponding to the task offloading request cached in it. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision, wherein the offloading user is a mobile user who initiates the task offloading request within the coverage area of the drone;
[0056] The drone transmits the calculation result of the offloading task back to the offloading user.
[0057] Optionally, the offloading task model is:
[0058] T i ={d i ,w i ,τ i}
[0059] Among them, T i is the i-th offloading task, d i is the data size of the i-th offloading task, w iis the complexity of the i-th offloading task, τ i The maximum deadline allowed for the i-th offloading task;
[0060] The offloading task decision model is:
[0061] O={o 1 ,o 2 ,…,o i ,…,o n}
[0062] X={x 1 ,x 2 ,…,x i ,…,x n}
[0063] F={f 1 F ,f 2 F ,…,f i F ,…,f n F}
[0064] Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F Allocate computing resources to the UAV for the i-th offloading task;
[0065] The offloading task delay calculation models in different offloading scenarios include an offloading task delay calculation model in a local offloading scenario and an offloading task delay calculation model in an edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is:
[0066]
[0067] Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, f i L computing resources for mobile user devices;
[0068] The calculation model of the offloading task delay in the edge offloading scenario is:
[0069] T i fsucc =(1-x i )T itrans +T i comp
[0070] T i ffail =(1-x i )T i trans +T i L
[0071] T i fsucc is the computational delay when the offloading task is successfully offloaded, T i ffail is the computational delay when the offloading task fails, T i trans is the transmission time of the offload task uploaded to the UAV, T i comp To offload the computing time of the task on the edge server;
[0072] The user satisfaction model of offloading tasks based on prospect theory is:
[0073]
[0074]
[0075]
[0076]
[0077]
[0078] Among them, S i For user satisfaction, is the user prospect value function at uninstallation based on prospect theory, is the user's relative profit function when the task is successfully offloaded, is the relative loss function of the user when task offloading fails, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, ∑ i o i is the number of tasks offloaded to the drone, N max The threshold for uninstall failure.
[0079] Optionally, the optimization function based on the offloading decision, the caching decision and the resource allocation decision is:
[0080]
[0081] The constraints of the optimization function are:
[0082]
[0083]
[0084]
[0085]
[0086]
[0087] in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, f i F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, The maximum coverage of the drone.
[0088] Optionally, solving the optimization function includes:
[0089] Based on the block coordinate descent method, the optimization function is decoupled into the objective function of the offloading decision subproblem, the objective function of the caching decision subproblem and the objective function of the resource allocation decision subproblem, and they are solved separately.
[0090] Optionally, the objective function of the offloading decision subproblem is solved by a genetic algorithm, the objective function of the cache decision subproblem is solved by a dynamic programming algorithm, and the objective function of the resource allocation decision subproblem is solved by a CVX solver.
[0091] It can be seen from the above technical solutions that the method for unloading UAV tasks based on edge computing scenarios provided by the present invention has the following advantages:
[0092] The method for unloading unmanned aerial vehicle tasks based on edge computing scenarios provided by the present invention takes into account the problem that the energy of unmanned aerial vehicles is limited and there is a risk of unloading failure, and constructs an unloading task model, an unloading task decision model, an unloading task delay calculation model under different unloading scenarios, and an unloading task user satisfaction model based on prospect theory. The unloading task decision model includes unloading decision, cache decision and resource allocation decision. The unloading decision includes unloading unmanned aerial vehicle unloading when the energy of the unmanned aerial vehicle is sufficient to support the execution of the unloading task and local unloading when the energy of the unmanned aerial vehicle is insufficient to support the execution of the unloading task. Based on the constructed model, an optimization function and constraint conditions are constructed to solve the optimal unloading decision, the optimal cache decision and the optimal resource allocation decision. When the unmanned aerial vehicle receives a task unloading request from an unloading user, it queries whether the input data of the unloading task corresponding to the task unloading request is cached in the unmanned aerial vehicle. If so, there is no need to notify the unloading user to upload the input data of the unloading task, and the unloading task is directly processed according to the optimal resource allocation decision. Otherwise, the unloading user is notified to upload the input data of the unloading task, and the unloading task is processed according to the optimal resource allocation decision. The technical problem that the unmanned aerial vehicle edge computing task does not take into account the risk that the task may not be processed due to the limited energy of the unmanned aerial vehicle, and ignores the subjective unloading intention of the user under the risk of download failure is solved. BRIEF DESCRIPTION OF THE DRAWINGS
[0093] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0094] Figure 1 A flowchart of a method for unloading UAV tasks based on edge computing scenarios provided in the present invention;
[0095] Figure 2 This is a structural schematic diagram of a drone task offloading system based on an edge computing scenario provided in the present invention. DETAILED DESCRIPTION
[0096] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0097] For easier understanding, see Figure 1The present invention provides an embodiment of a method for unloading a UAV task based on an edge computing scenario, comprising:
[0098] Step 101: Based on the SDN controller carried by the drone, obtain the mobile user information within the coverage area of the drone.
[0099] It should be noted that the drone is equipped with edge servers and high-speed cache devices, which can provide computing offload and data cache services for n users within the coverage area. The control layer is separated from the data layer by a software-defined network (SDN) controller for centralized control. The data layer collects the network status of drones and mobile users in real time, including the size and complexity of each mobile user's task, as well as the cache capacity and computing power of the drone. The control layer solves the optimal decision through an algorithm and feeds it back to the drone and the user to implement the system's task offload scheduling and the allocation of the drone's cache space and computing resources.
[0100] Step 102: The SDN controller constructs an offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory according to the mobile user information, wherein the offloading task decision model includes offloading decisions, cache decisions, and resource allocation decisions, and the offloading decisions include drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task.
[0101] It should be noted that the set of mobile users within the coverage of the drone is defined as {1,2,...,n}. Each mobile user has a computationally intensive and delay-sensitive computing task, and the offloading task model is defined as:
[0102] T i ={d i ,w i ,τ i}
[0103] Among them, T i is the i-th offloading task; d i is the data size of the i-th offloading task, which is usually related to the nature of the task; w i is the complexity of the i-th offload task, that is, the computing resources required to process the entire task, that is, the total number of CPU clock cycles; τ i is the maximum deadline allowed for the i-th offloading task. If this time is exceeded, it means that the processing method of the offloading task does not meet the real-time requirements of the task.
[0104] The offloading task decision model is defined as:
[0105] O={o 1 ,o2 ,…,o i ,…,o n}
[0106] X={x 1 ,x 2 ,…,x i ,…,x n}
[0107] F={f 1 F ,f 2 F ,…,f i F ,…,f n F}
[0108] Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F The computing resources allocated to the UAV for the i-th offloading task.
[0109] When o i When it is 1, it means that the UAV has enough energy to complete the unloading task, and the i-th unloading task is unloaded to the UAV. i When it is 0, it means that the drone energy may not be enough to complete the offloading task, and there is a risk of task offloading failure. The i-th offloading task is calculated locally by the user device.
[0110] When x i When x is 1, it means that the drone caches the input data of the i-th offload task. i When it is 0, it means that the input data of the i-th offload task is not cached.
[0111] The offloading task delay calculation model in different offloading scenarios includes the offloading task delay calculation model in the local offloading scenario and the offloading task delay calculation model in the edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is:
[0112]
[0113] Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, fi L Computing resources for mobile user devices.
[0114] For the offloading task latency calculation in edge offloading scenarios:
[0115] Through OFDMA technology, each mobile user is separated with equal bandwidth in the frequency domain to avoid communication interference between user devices. At the same time, the mobility of the user is ignored and the channel gain h of the user relative to the drone is assumed. if is a constant. So we get the upload speed R of mobile user i i for:
[0116]
[0117] Where W is the channel bandwidth, p i is the transmit power of the mobile user equipment, h if is the channel gain, σ 0 is Gaussian white noise in space.
[0118] The transmission time of the unloaded task uploaded to the drone is:
[0119]
[0120] Among them, T i trans is the transmission time of uploading the i-th offloading task to the UAV.
[0121] The computation time of the offload task on the edge server is:
[0122]
[0123] Among them, T i comp Offload the computation time of tasks on edge servers.
[0124] When the offload task input is cached in the edge server, the edge server can directly reuse the cached input data for calculation, and the mobile user does not need to upload data. Therefore, when the user successfully offloads, the task processing delay is:
[0125] T i fsucc =(1-x i )T i trans +T i comp
[0126] Among them, T i fsucc The calculation delay when the offload task is successfully offloaded.
[0127] Due to the limited energy of drones, there is a situation where after the mobile user uploads the data, the remaining power cannot process the corresponding task, and the mobile user has to perform local calculations again. When the user fails to offload, the processing delay of the task is:
[0128] T i ffail =(1-x i )T i trans +T i L
[0129] Among them, T i ffail The calculation delay when the offloading task fails.
[0130] Before making an offloading decision, the mobile user cannot be sure whether the offloading of the task will succeed or fail. With the help of the tragedy of the commons theory, the probability of offloading failure perceived by the user based on the number of offloading decisions that the drone has received is:
[0131]
[0132] Among them, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, Σ i o i is the number of tasks offloaded to the drone, N max The threshold for uninstallation failure. When the number of uninstallations exceeds the threshold, the user considers that the task uninstallation must have failed.
[0133] In this uncertain environment, users face the risk that the performance of task processing will be worse than local processing due to unloading failure. In this risk environment, users' decisions are often affected by their subjective preferences. In this invention, prospect theory is introduced to characterize the impact of user subjective preferences on unloading decisions. Prospect theory is one of the four major research results of behavioral economics. It applies psychological research to the field of economics and provides theoretical guidance for human decision-making under uncertain circumstances. Compared with focusing on changes in value, prospect theory focuses more on people's expectations relative to the reference point x. 0 The perception of profit and loss, the prospect theory value function is:
[0134]
[0135] When x ≥ x 0 At this time, xx 0 Represents the benefit that the decision maker obtains relative to the reference point. <x 0 When x 0-x represents the loss of the decision maker's interest in the reference point. α represents the decision maker's risk sensitivity factor, which is usually a constant between [0,1]. λ describes the degree of aversion to loss. In the real world, most people avoid risks when they are in a profitable state (concave function); when they are in a loss state, they are more willing to choose riskier options (convex function); compared with the joy of gain, people hate the pain of loss more (λ>1).
[0136] By default, successful offloading to the drone provides better performance, while failed offloading provides worse performance than local computing. Therefore, the latency of local computing is used as the reference point, and the performance saved by successful task offloading compared to local computing is considered "profit", while the performance lost by failed offloading compared to local computing is considered loss. Define local computing as the reference point, the user's relative profit and loss functions are:
[0137]
[0138]
[0139] in, is the user's relative profit function when the task is successfully offloaded, The relative loss function of the user when task offloading fails.
[0140] Therefore, the user prospect value function when uninstalling based on prospect theory is:
[0141]
[0142] Among them, p succ =1-p fail .
[0143] Combined with local computing delay T i L and the user prospect value function at uninstallation based on prospect theory User satisfaction is defined as:
[0144]
[0145] Among them, S i For user satisfaction.
[0146] Step 103: The SDN controller constructs an optimization function based on the offloading decision, the caching decision and the resource allocation decision and constraints of the optimization function based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory.
[0147] It should be noted that the optimization function based on the offloading decision, the caching decision and the resource allocation decision is:
[0148]
[0149] The constraints are:
[0150]
[0151]
[0152]
[0153]
[0154]
[0155] in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, f i F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, ||P f -P i || indicates the distance between the drone and the user, The maximum coverage of the drone.
[0156] Step 104: The SDN controller solves the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sends the optimal caching decision and the optimal resource allocation decision to the drone, and notifies the offloading user of the optimal offloading decision, wherein the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task.
[0157] It should be noted that since the objective function is a non-convex function, solving the variable o i and x i is a binary variable, while the computing resource variable are continuous variables, and the variables are coupled with each other, so this problem is a 0-1 mixed integer nonlinear programming problem that is difficult to solve directly. In order to facilitate the solution of this problem, the problem is decoupled into the unloading decision subproblem P based on the idea of block coordinate descent method. 1 , cache decision subproblem P 2 , resource allocation subproblem P 3 , and use different methods to solve the three sub-problems.
[0158] Unloading decision subproblem P 1 :
[0159] Fixed caching decision is The fixed resource allocation decision is Solve the offloading optimization subproblem P 1 Obtain the optimal unloading decision O. Therefore, the unloading decision subproblem P 1 It can be expressed as:
[0160]
[0161]
[0162]
[0163]
[0164] Since this problem is a 0-1 integer nonlinear programming problem, the optimization objective is still a non-convex function, and the intelligent optimization algorithm does not require the objective function to have properties such as continuity, differentiability, and derivability, and is suitable for solving nonlinear and non-smooth problems. Therefore, a genetic algorithm can be used for solving it.
[0165] Cache decision subproblem P 2 :
[0166] Fixed uninstall decision to The fixed resource allocation decision is Solve the cache optimization subproblem P 2 Get the optimal caching decision X.
[0167] Cache optimization subproblem P 2 It can be expressed as:
[0168]
[0169]
[0170]
[0171] This problem can be viewed as a 0-1 knapsack problem; limited cache capacity Considered as the capacity of the backpack, the size d of the input data of task i i is the weight of the object, the user's subjective utility S i is the loading value of the object. So the dynamic programming algorithm commonly used to solve the knapsack problem is used here to solve it.
[0172] Resource allocation subproblem P 3 :
[0173] Fixed uninstall decision to Fixed caching decision is Solve the cache optimization subproblem P 3 Obtain the best resource decision F. Resource allocation subproblem P 3 It is expressed as:
[0174]
[0175]
[0176]
[0177] After fixing the offloading decision and the caching decision, the optimization target S i is a convex function; and the constraint and is a linear constraint, so cache subproblem P 3 Since it is a convex problem, the CVX solver can be directly used to obtain the optimal cache decision F.
[0178] After the optimal offloading decision, the optimal caching decision and the optimal resource allocation decision are obtained, the optimal caching decision and the optimal resource allocation decision are sent to the drone, and the optimal offloading decision is notified to the offloading user. The offloading user is a mobile user who initiates a task offloading request within the coverage area of the drone. The offloading user can decide whether to offload the task to the drone or to local processing based on the optimal offloading decision.
[0179] Step 105: When the drone receives a task offloading request from the offloading user, it queries whether the drone has cached input data of the offloading task corresponding to the task offloading request. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision.
[0180] It should be noted that when the unloading user decides to offload the task to the drone for processing, a task offloading request is sent to the drone. When the drone receives the task offloading request from the unloading user, it queries whether the drone has cached input data of the unloading task corresponding to the task offloading request. If so, the unloading user is notified that there is no need to upload the input data of the unloading task. The drone directly reuses the cached input data for task offloading processing, and directly processes the unloading task according to the optimal resource allocation decision through the edge server. If the input data of the unloading task corresponding to the task offloading request is not cached in the drone, the unloading user is notified to upload the input data of the unloading task, and the edge server carried by the drone processes the unloading task according to the optimal resource allocation decision. In the present invention, compared with ordinary edge computing, cache-assisted unloading is considered, which can reduce the upload delay of input data.
[0181] Step 106: The drone transmits the calculation result of the offloading task back to the offloading user.
[0182] It should be noted that when the edge server carried by the drone completes the offloading task, it will send the calculation results back to the offloading user.
[0183] The method for unloading unmanned aerial vehicle tasks based on edge computing scenarios provided by the present invention takes into account the problem that the energy of unmanned aerial vehicles is limited and there is a risk of unloading failure, and constructs an unloading task model, an unloading task decision model, an unloading task delay calculation model under different unloading scenarios, and an unloading task user satisfaction model based on prospect theory. The unloading task decision model includes unloading decision, cache decision and resource allocation decision. The unloading decision includes unloading unmanned aerial vehicle unloading when the energy of the unmanned aerial vehicle is sufficient to support the execution of the unloading task and local unloading when the energy of the unmanned aerial vehicle is insufficient to support the execution of the unloading task. Based on the constructed model, an optimization function and constraint conditions are constructed to solve the optimal unloading decision, the optimal cache decision and the optimal resource allocation decision. When the unmanned aerial vehicle receives a task unloading request from an unloading user, it queries whether the input data of the unloading task corresponding to the task unloading request is cached in the unmanned aerial vehicle. If so, there is no need to notify the unloading user to upload the input data of the unloading task, and the unloading task is directly processed according to the optimal resource allocation decision. Otherwise, the unloading user is notified to upload the input data of the unloading task, and the unloading task is processed according to the optimal resource allocation decision. The technical problem that the unmanned aerial vehicle edge computing task does not take into account the risk that the task may not be processed due to the limited energy of the unmanned aerial vehicle, and ignores the subjective unloading intention of the user under the risk of download failure is solved.
[0184] For easier understanding, see Figure 2 , the present invention provides an embodiment of a UAV task offloading system based on an edge computing scenario, including a UAV, an SDN controller and an edge server;
[0185] The drone is equipped with the SDN controller and the edge server;
[0186] The SDN controller is used for:
[0187] Obtain information about mobile users within the drone’s coverage area;
[0188] An offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory are constructed according to the mobile user information, wherein the offloading task decision model includes offloading decision, cache decision, and resource allocation decision, and the offloading decision includes drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task;
[0189] Based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory, an optimization function based on the offloading decision, the cache decision and the resource allocation decision and constraints of the optimization function are constructed;
[0190] Solving the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sending the optimal caching decision and the optimal resource allocation decision to the drone, and notifying the offloading user of the optimal offloading decision, wherein the optimal offloading decision includes drone offloading and local offloading, and the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task;
[0191] The drone is used for:
[0192] When the drone receives a task offloading request from an offloading user, it queries whether the drone has cached input data of the offloading task corresponding to the task offloading request. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision, wherein the offloading user is a mobile user who initiates a task offloading request within the coverage area of the drone;
[0193] The drone transmits the calculation result of the offloading task back to the offloading user.
[0194] The offloading task model is:
[0195] T i ={d i ,wi ,τ i}
[0196] Among them, T i is the i-th offloading task, d i is the data size of the i-th offloading task, w i is the complexity of the i-th offloading task, τ i The maximum deadline allowed for the i-th offloading task;
[0197] The offloading task decision model is:
[0198] O={o 1 ,o 2 ,…,o i ,…,o n}
[0199] X={x 1 ,x 2 ,…,x i ,…,x n}
[0200]
[0201] Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F Allocate computing resources to the UAV for the i-th offloading task;
[0202] The offloading task delay calculation models in different offloading scenarios include an offloading task delay calculation model in a local offloading scenario and an offloading task delay calculation model in an edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is:
[0203]
[0204] Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, f i L computing resources for mobile user devices;
[0205] The calculation model of the offloading task delay in the edge offloading scenario is:
[0206] T i fsucc =(1-x i )Ti trans +T i comp
[0207] T i ffail =(1-x i )T i trans +T i L
[0208] T i fsucc is the computational delay when the offloading task is successfully offloaded, T i ffail is the computational delay when the offloading task fails, T i trans is the transmission time of the offload task uploaded to the UAV, T i comp To offload the computing time of the task on the edge server;
[0209] The user satisfaction model of offloading tasks based on prospect theory is:
[0210]
[0211]
[0212]
[0213]
[0214]
[0215] Among them, S i For user satisfaction, is the user prospect value function at uninstallation based on prospect theory, is the user's relative profit function when the task is successfully offloaded, is the relative loss function of the user when task offloading fails, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, ∑ i o i is the number of tasks offloaded to the drone, N max The threshold for uninstall failure.
[0216] The optimization function based on offloading decision, cache decision and resource allocation decision is:
[0217]
[0218] The constraints of the optimization function are:
[0219]
[0220]
[0221]
[0222]
[0223]
[0224] in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, fi F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, The maximum coverage of the drone.
[0225] The solving of the optimization function comprises:
[0226] Based on the block coordinate descent method, the optimization function is decoupled into the objective function of the offloading decision subproblem, the objective function of the caching decision subproblem and the objective function of the resource allocation decision subproblem, and they are solved separately.
[0227] The objective function of the offloading decision subproblem is solved by genetic algorithm, the objective function of the cache decision subproblem is solved by dynamic programming algorithm, and the objective function of the resource allocation decision subproblem is solved by CVX solver.
[0228] The drone task offloading system based on edge computing scenarios provided in the present invention is used to execute the drone task offloading method based on edge computing scenarios provided in the present invention. Its principle and technical effects are the same as those of the drone task offloading method based on edge computing scenarios provided in the present invention, and will not be repeated here.
[0229] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for unloading UAV tasks based on edge computing scenarios, characterized in that: include: Based on the SDN controller carried by the drone, the mobile user information within the drone coverage area is obtained; The SDN controller constructs an offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory according to the mobile user information, wherein the offloading task decision model includes offloading decision, cache decision, and resource allocation decision, and the offloading decision includes drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task; The SDN controller constructs an optimization function based on the offloading decision, the cache decision and the resource allocation decision and constraints of the optimization function based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory; The SDN controller solves the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sends the optimal caching decision and the optimal resource allocation decision to the drone, and notifies the offloading user of the optimal offloading decision, wherein the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task; When the drone receives the task offloading request from the offloading user, it queries whether the drone has the input data of the offloading task corresponding to the task offloading request cached in it. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision, wherein the offloading user is a mobile user who initiates the task offloading request within the coverage area of the drone; The drone transmits the calculation result of the offloading task back to the offloading user; The offloading task model is: T i ={d i ,w i ,τ i } Among them, T i For the i-th offloading task, d i is the data size of the i-th offloading task, w i is the complexity of the i-th offloading task, τ i The maximum deadline allowed for the i-th offloading task; The offloading task decision model is: O={o1,o2,…,o i ,…,the n } X={x1,x2,…,x i ,…,x n } Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F Allocate computing resources to the UAV for the i-th offloading task; The offloading task delay calculation models in different offloading scenarios include an offloading task delay calculation model in a local offloading scenario and an offloading task delay calculation model in an edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is: Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, f i L computing resources for mobile user devices; The calculation model of the offloading task delay in the edge offloading scenario is: T i fsucc =(1-x i )T i trans +T i comp T i ffail =(1-x i )T i trans +T i L T i fsucc is the computational delay when the offloading task is successfully offloaded, T i ffail is the computational delay when the offloading task fails, T i trans is the transmission time of the offload task uploaded to the UAV, T i comp To offload the computing time of the task on the edge server; The user satisfaction model of offloading tasks based on prospect theory is: Among them, S i For user satisfaction, is the user prospect value function at uninstallation based on prospect theory, is the user's relative profit function when the task is successfully offloaded, is the relative loss function of the user when task offloading fails, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, ∑ i oi is the number of tasks unloaded to the UAV, N max The threshold for uninstall failure.
2. The method for unloading UAV tasks based on edge computing scenarios according to claim 1 is characterized in that: The optimization function based on offloading decision, cache decision and resource allocation decision is: The constraints of the optimization function are: in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, f i F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, The maximum coverage of the drone.
3. The method for unloading UAV tasks based on edge computing scenarios according to claim 2 is characterized in that: The edge server solves the optimization function, including: The edge server decouples the optimization function into an objective function of an offloading decision subproblem, an objective function of a caching decision subproblem, and an objective function of a resource allocation decision subproblem based on a block coordinate descent method, and solves them respectively.
4. The method for unloading UAV tasks based on edge computing scenarios according to claim 3 is characterized in that: The objective function of the offloading decision subproblem is solved by genetic algorithm, the objective function of the cache decision subproblem is solved by dynamic programming algorithm, and the objective function of the resource allocation decision subproblem is solved by CVX solver.
5. A drone task offloading system based on edge computing scenario, characterized in that: Includes drones, SDN controllers, and edge servers; The drone is equipped with the SDN controller and the edge server; The SDN controller is used for: Obtain information about mobile users within the drone’s coverage area; An offloading task model, an offloading task decision model, an offloading task delay calculation model under different offloading scenarios, and an offloading task user satisfaction model based on prospect theory are constructed according to the mobile user information, wherein the offloading task decision model includes offloading decision, cache decision, and resource allocation decision, and the offloading decision includes drone offloading when the drone energy is sufficient to support the execution of the offloading task and local offloading when the drone energy is insufficient to support the execution of the offloading task; Based on the offloading task model, the offloading task decision model, the offloading task delay calculation model under different offloading scenarios and the offloading task user satisfaction model based on prospect theory, an optimization function based on the offloading decision, the cache decision and the resource allocation decision and constraints of the optimization function are constructed; Solving the optimization function to obtain an optimal offloading decision, an optimal caching decision, and an optimal resource allocation decision, sending the optimal caching decision and the optimal resource allocation decision to the drone, and notifying the offloading user of the optimal offloading decision, wherein the optimal offloading decision includes drone offloading and local offloading, and the optimal caching decision includes caching the input data of the offloading task and not caching the input data of the offloading task; The drone is used for: When the drone receives the task offloading request from the offloading user, it queries whether the drone has the input data of the offloading task corresponding to the task offloading request cached in it. If so, it notifies the offloading user that there is no need to upload the input data of the offloading task, and the edge server carried by the drone directly processes the offloading task according to the optimal resource allocation decision. Otherwise, it notifies the offloading user to upload the input data of the offloading task, and the edge server processes the offloading task according to the optimal resource allocation decision, wherein the offloading user is a mobile user who initiates the task offloading request within the coverage area of the drone; The drone transmits the calculation result of the offloading task back to the offloading user; The offloading task model is: T i ={d i ,w i ,τ i } Among them, T i For the i-th offloading task, d i is the data size of the i-th offloading task, w i is the complexity of the i-th offloading task, τ i The maximum deadline allowed for the i-th offloading task; The offloading task decision model is: O={o1,o2,…,o i ,…,the n } X={x1,x2,…,x i ,…,x n } F={f1 F ,f2 F ,…,f i F ,…,f n F } Among them, O is the decision vector of the offloading task, o i is the offloading decision of the i-th offloading task, n is the total number of offloading tasks, X is the cache decision of the offloading task, x i is the cache decision of the i-th offload task, F is the resource allocation decision of the offload task, and f i F Allocate computing resources to the UAV for the i-th offloading task; The offloading task delay calculation models in different offloading scenarios include an offloading task delay calculation model in a local offloading scenario and an offloading task delay calculation model in an edge offloading scenario. The offloading task delay calculation model in the local offloading scenario is: Among them, T i L is the computation delay of the i-th offloading task in the local offloading scenario, f i L computing resources for mobile user devices; The calculation model of the offloading task delay in the edge offloading scenario is: T i fsucc =(1-x i )T i trans +T i comp T i ffail =(1-x i )T i trans +T i L T i fsucc is the computational delay when the offloading task is successfully offloaded, T i ffail is the computational delay when the offloading task fails, T i trans is the transmission time of the offload task uploaded to the UAV, T i comp To offload the computing time of the task on the edge server; The user satisfaction model of offloading tasks based on prospect theory is: Among them, S i For user satisfaction, is the user prospect value function at uninstallation based on prospect theory, is the user's relative profit function when the task is successfully offloaded, is the relative loss function of the user when task offloading fails, p fail is the probability of unloading failure perceived by the user based on the number of unloading decisions the drone has received, ∑ i o i is the number of tasks offloaded to the drone, N max The threshold for uninstall failure.
6. The UAV task offloading system based on edge computing scenario according to claim 5 is characterized in that: The optimization function based on offloading decision, cache decision and resource allocation decision is: The constraints of the optimization function are: in, is the maximum storage capacity of the edge server carried by the drone, is the maximum computing capacity of the edge server carried by the drone, f i F The computing resources allocated to the UAV for the i-th offloading task, P f is the position of the UAV, P i To uninstall the user's location, The maximum coverage of the drone.
7. The UAV task offloading system based on edge computing scenario according to claim 6 is characterized in that: The solving of the optimization function comprises: Based on the block coordinate descent method, the optimization function is decoupled into the objective function of the offloading decision subproblem, the objective function of the caching decision subproblem and the objective function of the resource allocation decision subproblem, and they are solved separately.
8. The UAV task offloading system based on edge computing scenario according to claim 7 is characterized in that: The objective function of the offloading decision subproblem is solved by genetic algorithm, the objective function of the cache decision subproblem is solved by dynamic programming algorithm, and the objective function of the resource allocation decision subproblem is solved by CVX solver.
Citation Information
Patent Citations
Task unloading and service caching joint optimization method based on edge collaboration
CN115297013A