A method for task offloading and resource allocation in multi-uav mobile edge computing

By employing a multi-drone collaborative task offloading method, the problem of slow edge computing task processing and high energy consumption caused by the limited resources of a single drone is solved. This achieves more efficient computing power and energy management, and extends the working time of drones and equipment lifespan.

CN119718567BActive Publication Date: 2025-11-04QILU UNIVERSITY OF TECHNOLOGY (SHANDONG ACADEMY OF SCIENCES)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411748670.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-02
Publication Date
2025-11-04
Estimated Expiration
2044-12-02

AI Technical Summary

Technical Problem

The limited resources of a single drone result in slow processing and high energy consumption for edge computing tasks. In particular, when different ground terminal devices have different types of computing tasks, resource competition and conflicts lead to a decline in task performance or failure.

Method used

A multi-UAV collaborative task offloading method is adopted. By dividing the ground terminal equipment into remote and near-end equipment, the near-end equipment is used as a relay for collaboration. The computing tasks are distributed to stationary and flying UAVs for processing. The task offloading and flight trajectory are optimized by time division multiple access technology, and a joint optimization model is constructed to minimize energy consumption.

Benefits of technology

It reduces the flight range of drones, lowers energy consumption, avoids resource competition and conflict, improves computing power and system energy efficiency, and extends equipment lifespan and service quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718567B_ABST
    Figure CN119718567B_ABST
Patent Text Reader

Abstract

The application discloses a task unloading and resource allocation method in multi-unmanned aerial vehicle mobile edge computing, and belongs to the technical field of edge computing, and aims to solve the technical problem that edge computing task processing is slow and energy consumption is large due to different types of computing tasks of different ground terminal devices and limited resources of a single unmanned aerial vehicle. Each remote terminal device relays and unloads its remaining computing task to a flying unmanned aerial vehicle through a near terminal device serving as an auxiliary device, and each near terminal device relays and unloads its remaining computing task to a parked unmanned aerial vehicle through the flying unmanned aerial vehicle. The task allocation quantity, computing frequency and flight trajectory of the flying unmanned aerial vehicle are jointly optimized. The joint optimization problem is decomposed into two sub-problems based on a block coordinate descent method, the flight trajectory of the flying unmanned aerial vehicle is fixed, the task allocation quantity and the computing frequency are iteratively optimized, and the flight trajectory of the flying unmanned aerial vehicle is optimized according to the optimized task allocation quantity and the computing frequency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of edge computing technology, specifically a method for task offloading and resource allocation in multi-UAV mobile edge computing. Background Technology

[0002] Mobile edge computing (MEC) is widely considered a key technology to help resource-constrained terminal devices (TDs) handle their computationally intensive tasks. Drones equipped with computing resources can bring many potential advantages to MEC systems. First, drones are inexpensive and, as mobile edge computing nodes, can be flexibly deployed in the air and dynamically adjusted according to demand. Second, drones can fly to remote, hard-to-reach areas, providing computing and communication services in places with poor infrastructure or no network.

[0003] However, MEC technology supported by UAVs also faces some challenges. When ground terminal equipment is widely distributed, UAVs need to extend their flight paths to reliably communicate with all terminal equipment. This consumes a lot of flight energy, which is not friendly to UAVs with limited battery power and will greatly shorten the UAV's work cycle. To solve the above problems, a method based on collaborative communication between ground terminal equipment has been proposed. That is, remote terminal equipment far away from the UAV offloads computing tasks to the UAV for computing processing with the relay cooperation of near-terminal equipment closer to the UAV. However, the above solution is applicable to a single UAV. The computing resources and processing capabilities of a single UAV are relatively limited. When processing large amounts of data or performing complex tasks, a single UAV is prone to insufficient computing resources, resulting in slow task processing or failure to complete tasks on time. In addition, if different types of tasks to be processed by remote and near-terminal equipment are simultaneously offloaded to the same single UAV, resource competition and conflicts will lead to a decrease in task performance or even task failure.

[0004] The slow processing speed and high energy consumption of edge computing tasks due to the different types of computing tasks performed by different ground terminal devices and the limited resources of individual UAVs are technical problems that need to be solved. Summary of the Invention

[0005] The technical objective of this invention is to address the above-mentioned shortcomings by providing a method for task offloading and resource allocation in multi-UAV mobile edge computing, thereby solving the technical problems of slow edge computing task processing and high energy consumption caused by different ground terminal devices having different types of computing tasks and the limited resources of a single UAV.

[0006] This invention discloses a method for task offloading and resource allocation in multi-UAV mobile edge computing, applied to a mobile edge computing system comprising two UAVs and multiple ground terminal devices. One UAV is a stationary UAV, and the other is a flying UAV. A ground control base provides energy to the stationary UAV via a tethered antenna. The method includes the following steps:

[0007] Assignment strategy: Based on the distance between the ground terminal equipment and the stationary UAV, the multiple ground terminal equipment are divided into remote terminal equipment and near terminal equipment. Each remote terminal equipment is assigned a corresponding near terminal equipment as an auxiliary. Each remote terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the flying UAV through the near terminal equipment that serves as its auxiliary. Each near terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the stationary UAV through the flying UAV.

[0008] Constructing the optimization problem: Constructing a system model and a mathematical model of the joint optimization problem, and jointly optimizing the number of tasks, the computation frequency, and the flight trajectory of the flying drone to minimize energy consumption. The number of tasks allocated includes the number of tasks unloaded by each ground terminal device and the flying drone, and the computation frequency includes the CPU computation frequency of each ground terminal device and each drone when performing task computation.

[0009] Solving the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two subproblems: the resource scheduling subproblem and the UAV trajectory subproblem. For the resource scheduling subproblem, the flight trajectory of the UAV is fixed, and the number of tasks and the calculation frequency are iteratively optimized. For the UAV trajectory subproblem, the UAV trajectory is optimized based on the optimized number of tasks and the calculation frequency.

[0010] Preferably, the system model includes a channel model, an offloading model, a computation model, and a flight energy consumption model for the flying UAV;

[0011] The channel model is used to calculate the channel gain between the remote terminal device and the near terminal device, between the near terminal device and the flying drone, and between the flying drone and the stationary drone.

[0012] The unloading model is used to calculate the number of tasks unloaded and the energy consumption generated when ground terminal equipment and flying drones unload tasks.

[0013] The computational model is used to calculate the number of tasks and energy consumption generated when each ground terminal device and each UAV performs task calculations.

[0014] Preferably, constructing a channel model includes the following steps:

[0015] For the overall computing task distributed to various ground terminal devices, the completion time T of the overall computing task is set to consist of N identical time slots, with the duration interval of each time slot being τ = T / N. Here, τ is chosen to be sufficiently small so that the position of the flying UAV can be assumed to remain approximately constant within each time slot. The horizontal position of a flying drone can be represented as q, which represents a set of N time slots. u [n] = (x u [n],y u [n],H1), where the starting position of the flying drone is represented as H1). The end position of the flight is indicated as make Let V represent the speed of the drone flying in the nth time slot. max This represents the maximum speed of the flying drone, therefore v[n]≤V max ;

[0016] For multiple ground terminal devices Represents a set of near-end terminal devices. This represents the set of remote terminal devices assisted by near-end terminal devices, where M = R;

[0017] The flight altitude of the flying drone is set to H1 meters, the hovering altitude of the stationary drone is set to H2 meters, and the altitude of each ground terminal device is zero. The coordinates of the remote terminal device, the near terminal device, and the stationary drone are constructed based on a three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are represented as follows: The coordinates of the near-end terminal device are represented as u m =(x m ,y m The coordinates of the parked drone are represented as q(0, 0). z =(x z ,y z H2);

[0018] The wireless channels between the near-end terminal device (m) and the flying UAV, as well as between the flying UAV and the stationary UAV, are set to be dominated by line-of-sight links. In the nth time slot, the channel gain between the near-end terminal device (m) and the flying UAV, and between the flying UAV and the stationary UAV, is expressed as:

[0019]

[0020] Among them, h m,u [n] represents the channel gain between the near-end terminal device m and the flying UAV in the nth time slot, and h0 represents the channel gain at the reference distance d = 1 meter.m,u [n] represents the distance between the near-end terminal device m and the flying drone in the nth time slot, h u,z [n] represents the channel gain between the flying drone and the stationary drone in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone in the nth time slot;

[0021] Remote terminal device r m Channel gain between the near-end terminal device m Represented as:

[0022]

[0023] Where g0 represents the channel gain at a reference distance d = 1 meter, and α represents the path loss coefficient. Indicates remote terminal device r m The distance between the device and the near-end terminal device m.

[0024] As a preferred approach, an offloading model is constructed based on time-division multiple access technology, including the following steps:

[0025] For the overall computing task allocated to various ground terminal devices, the completion time T of the overall computing task is set to consist of N identical time slots, with the duration interval of each time slot τ = T / N. Each time slot is divided into M sub-time slots, with the time interval of each sub-time slot being τ1 = τ / M. The time interval of each sub-time slot is used to process the computing task for a near-end terminal device and its corresponding far-end terminal device. Each sub-time slot is divided into four time slices, with the time interval of each time slice being τ0 = τ1 / 4.

[0026] In the first time slice, the remote terminal device r m The remaining computing tasks are offloaded to the near-end terminal device m, which acts as a relay.

[0027] In the second time slice, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the flying drone;

[0028] In the third time slice, the near-end terminal device m offloads its remaining computing tasks to the flying drone;

[0029] In the fourth time slice, the flying drone offloads the computing tasks from the near-end terminal device m to the parked drone;

[0030] In the nth time slot, the remote terminal device r m The number of tasks to offload the remaining computing tasks to the near-end terminal device m Represented as:

[0031]

[0032] in, Indicates the remote terminal device r in the nth time slot m The offloading power, N0 represents the noise power, and B represents the channel bandwidth;

[0033] Remote terminal device r m Energy consumption of offloading the remaining tasks to the near-end terminal device m Represented as:

[0034]

[0035] The near-end terminal device m will receive data from the far-end terminal device r. m The number of computational tasks offloaded to flying drones Represented as:

[0036]

[0037] in, This indicates that in the nth time slot, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the unloading power of the flying drone;

[0038] The near-end terminal device m will receive data from the far-end terminal device r. m The energy consumption of offloading the computational task to the flying drone is

[0039]

[0040] To ensure that the near-end terminal device m can transmit data from the far-end terminal device r in each time slot m All computational tasks must be offloaded to the flying drone, while satisfying the following constraints:

[0041]

[0042] make This represents the number of computational tasks that the near-end terminal device m offloads to the flying drone in the nth time slot, expressed as:

[0043]

[0044] in, This indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the offload power of the flying drone;

[0045] The energy consumption of the near-end terminal device m in the nth time slot to offload its remaining computing tasks to the flying drone. Represented as:

[0046]

[0047] The number of computing tasks that flying drones will offload from near-end terminal device m to stationary drones. Represented as:

[0048]

[0049] in, This represents the offloading power of the drone flying in the nth time slot, which offloads the computing tasks from the near-end terminal device m to the parked drone.

[0050] The energy consumption of the drone flying in the nth time slot to offload the computing tasks from the near-end terminal device m to the parked drone. Represented as:

[0051]

[0052] To ensure that the flying drone can offload all computing tasks from the near-end terminal device m to the parked drone in each time slot, the following constraints must be met:

[0053]

[0054] As a preferred option, the remote terminal device r m Number of tasks calculated locally and energy consumption They are represented as follows:

[0055]

[0056] in, Indicates remote terminal device r m The frequency is calculated in the nth time slot. Indicates remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computational resources required for a one-bit task;

[0057] Number of tasks computed locally by the near-end terminal device m and energy consumption They are represented as follows:

[0058]

[0059] Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m C represents the effective capacitance coefficient of the near-end terminal device m. mThis represents the computational resources required to compute an m-bit task on a near-end terminal device.

[0060] Number of tasks calculated by flying drones and energy consumption They are represented as follows:

[0061]

[0062] Among them, f u [n] represents the calculation frequency of the flying UAV in the nth time slot, κ u Indicates the effective capacitance coefficient of a flying unmanned aerial vehicle;

[0063] Number of tasks calculated by stationary drones and energy consumption They are represented as follows:

[0064]

[0065] Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z Indicates the effective capacitance coefficient of a parked drone;

[0066] In any given time slot, a flying UAV can only process computational tasks received from a remote terminal device via communication transmission, and a stationary UAV can only process computational tasks received from a near-end terminal device via communication transmission. Based on this, the processing delay of the UAV in decoding and computation operations is set to one time slot, which should satisfy the following constraints:

[0067]

[0068] Remote terminal device r m The total number of bits for the number of locally computed tasks and the number of unloaded tasks should equal the data volume of the computed tasks. The total number of bits for the number of tasks computed locally and the number of tasks offloaded by the near-end terminal device m should equal the amount of data for its computed tasks. They are represented as follows:

[0069]

[0070] Preferably, in the nth time slot, the flight energy consumption of the flying drone is... Represented as:

[0071]

[0072] Wherein, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.

[0073] As a preferred option, for the joint optimization problem P1, the number of tasks assigned, L, is expressed as:

[0074]

[0075] The CPU's computing frequency F is expressed as:

[0076]

[0077] The flight trajectory of the flying drone is represented as follows:

[0078] Q = {q} u [n]}.

[0079] Correspondingly, the data model for problem P1 is represented as follows:

[0080]

[0081] st

[0082] C1:

[0083] C2:

[0084] C3:

[0085] C4:

[0086] C5:

[0087] C6:

[0088] C7:

[0089] C8:

[0090] C9:

[0091] C10:

[0092] C11:

[0093] C12:

[0094] C13:

[0095] C14:

[0096] C15:

[0097] C16: in, It is the energy consumption of ground terminal equipment. This refers to the energy consumption of two drones, ω m and ω u These are the weights of the energy consumption of the ground terminal equipment and the two drones, respectively.

[0098] Constraint C1 indicates that the near-end terminal device m is able to transmit data from the far-end terminal device r in each time slot. m All computational tasks are offloaded to the flying drone;

[0099] Constraint C2 indicates that the flying drone can offload all computing tasks from the near-end terminal device m to the parked drone in each time slot;

[0100] Constraint C3 states that in any time slot, the UAV can only process computing tasks that have been received from remote terminal devices via communication transmission;

[0101] Constraint C4 means that a drone parked in any time slot can only process computational tasks that have already been received from near-end terminal devices via communication transmission;

[0102] Constraints C5-C8 indicate that the computational tasks of each near-end terminal device and far-end terminal device can be processed;

[0103] Constraints C9-C14 indicate that any optimization parameter is non-negative;

[0104] Constraints C15-C16 represent the flight trajectory and speed constraints of the flying drone.

[0105] As a preferred approach, solving the optimization problem includes the following steps:

[0106] S100. Set the iteration count variable t = 1, and the maximum iteration count t. max The iteration terminates with thresholds ο1 and ο2, and the trajectory Q of the flying drone is initialized. The joint optimization problem is decomposed into two subproblems by the block coordinate descent method: the resource scheduling subproblem and the flying drone trajectory subproblem. The resource scheduling subproblem is denoted as problem P1.1, which is used to solve the allocation of task quantity and computation frequency. The flying drone trajectory subproblem is denoted as problem P1.2.

[0107] S200. For problem P1.1, the trajectory Q of the fixed-flying UAV remains unchanged. Optimize the calculation frequency F and the number of task assignments L. Set the iteration parameter b = 1 for problem P1.1, and the maximum iteration parameter b... max The mathematical model corresponding to problem P1.1 It is expressed as follows:

[0108]

[0109] stC1-C14;

[0110] in,

[0111] The resource scheduling subproblem is a convex problem, which is solved using the Lagrange method to obtain the optimized computation frequency F and the number of tasks allocated L.

[0112] S300. Based on the optimized computation frequency F and the number of tasks assigned L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as follows:

[0113]

[0114] stC15, C16;

[0115] because The objective function of subproblem P1.2 is nonconvex, therefore a slack variable β[n] is introduced into the objective function of subproblem P1.2, and it is rewritten as:

[0116]

[0117] And there are additional constraints that need to be satisfied:

[0118] ||v[n]|| 2 ≥β[n] 2 , β[n]≥0,

[0119] Both v[n] and β[n] are convex, but due to the constraint ||v[n]|| 2 ≥β[n] 2 It remains non-convex, and the non-convex constraint is resolved using a continuous convex approximation method, since the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side expression is convex with respect to v[n], at a given local point v. t Applying a first-order Taylor expansion to approximate its linear lower bound at [n], the non-convex constraint is transformed into the following:

[0120]

[0121] After the above transformation, problem P1.2 becomes a convex problem, which is solved using the convex optimization tool CVX to obtain the flight trajectory Q of the flying UAV.

[0122] S400: Input the optimized task allocation quantity L, calculation frequency F, and flight trajectory Q obtained from steps S200 and S300 into the objective function of the original joint optimization problem to obtain the energy consumption value E. t ;

[0123] S500, update iteration count t = t + 1;

[0124] S600: Input the trajectory Q of the optimized UAV for the tth time into step S200, and repeat steps S200 to S500 until |E t -E t-1 |≤o2 or iteration count t>t max To obtain the optimal energy consumption value E t .

[0125] As a preferred method, problem P1.1 is solved using the Lagrange method, which includes the following steps:

[0126] L100, define the dual variables γ, ε, and ξ corresponding to the inequality constraints C1-C4, and And for the dual variables γ, ε, ξ, and Initialize, where γ = {γ m,n}, ε={ε m,n}, ξ={ξ m,n}, Where, γ m,n Let ε represent the dual variable corresponding to the inequality constraint C1. m,n Let ξ represent the dual variable corresponding to the inequality constraint C2. m,n This represents the dual variable corresponding to inequality constraint C3. Represents the dual variable corresponding to inequality constraint C4;

[0127] L200 defines and constrains the Lagrange dual variables φ, ρ, χ, and λ corresponding to C5-C8, and solves for the values ​​of φ, ρ, χ, and λ using a binary search method, where φ = {φ m}, ρ={ρ m}, χ={χ m}, λ={λ m}, φ m ρ represents the dual variable corresponding to the equality constraint C5. m χ represents the dual variable corresponding to the equality constraint C6. m Let λ represent the dual variable corresponding to the equality constraint C7. m Represents the dual variable corresponding to the equality constraint C8;

[0128] L300. Transform problem P1.1 into a Lagrange problem. The corresponding mathematical model is as follows:

[0129]

[0130]

[0131] The dual function is expressed as:

[0132]

[0133] stC9-C14;

[0134] L400, the optimization parameters for solving problem P1.2 based on KKT conditions, are allocated to the number of tasks L and the computation frequency F. The calculation formulas include the following:

[0135] First equation:

[0136] Second equation:

[0137] Third equation:

[0138] Fourth equation:

[0139]

[0140] Fifth equation:

[0141]

[0142] Equation 6:

[0143]

[0144] Equation 7:

[0145] Equation 8: Among them, [c] + =max(0,c);

[0146] L500, using the subgradient method, calculate the Lagrangian dual variables γ, ε, and ξ related to constraints C1-C4. The calculation formula is as follows:

[0147] In the (b+1)th iteration, the Lagrange dual variables γ, ε, ξ and Updated to:

[0148]

[0149] in, and Indicates step size, They are γ m,n ε m,n ξ m,n and The subgradient of is expressed as:

[0150]

[0151] L600. Substituting the number of tasks L and the computation frequency F into the objective function of the resource scheduling subproblem, we obtain the energy consumption of the resource scheduling subproblem.

[0152] L600, Update the iterative variable b = b + 1 for the resource scheduling subproblem;

[0153] L700, repeat L100-L600 until the objective function of the resource scheduling subproblem is satisfied. Stop the iteration to obtain the optimal number of tasks L and the computation frequency F.

[0154] As a preferred method, based on the given values ​​of the dual variables γ and ξ, the values ​​of the corresponding dual variables φ and λ of constraints C5 and C8 are obtained through binary search. The solution process is as follows:

[0155] because Based on the first equation and constraint C8, λ is obtained. m Scope in

[0156]

[0157] Based on constraints C5 and C8, the first equation, the fourth equation, and the seventh equation. The value of can be expressed as the following formula:

[0158] Ninth equation:

[0159] Equation 10: Eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth formula, and the eleventh equation is obtained based on the seventh equation and constraint C5.

[0160] Based on the updated values ​​of γ and ξ, φ m Scope It can be represented as:

[0161]

[0162] in, It is γ m,n The minimum value, It is γ m,n The maximum value;

[0163] Then we get φ m Scope When the tenth equation equals the eleventh equation, the value of φ is derived using a binary search method, based on the given γ and ξ, and the solved φ and λ. m Scope When equations 9, 10, and 11 are equal, λ can be derived using a binary search method. m The value;

[0164] Wherein, according to the given dual variables ε and The values ​​of ρ and χ, corresponding to constraints C6 and C7, are obtained through binary search. The solution process is as follows:

[0165] Because f m χ is calculated based on the second equation and constraint C7, where [n]≥0. m Scope in,

[0166] Based on constraints C6 and C7, as well as equations 2, 5, and 8 The value can be represented as:

[0167] Twelfth equation:

[0168] Thirteenth equation:

[0169]

[0170] Fourteenth equation: Equation 12 is derived based on constraint C7, equation 13 is derived based on equation 6, and equation 14 is derived based on equation 8 and constraint C6.

[0171] Based on the updated ε value and Value, ρ m Scope It can be represented as:

[0172]

[0173] in, It is ε m,n The minimum value, It is ε m,n The maximum value, ρ m Scope When equations thirteen and fourteen are equal, the value of ρ is derived using a binary search method, based on the given ε. And the solved ρ, when the twelfth, thirteenth, and fourteenth equations are equal, χ is derived using the binary search method. m The value of .

[0174] The method for task offloading and resource allocation in multi-UAV mobile edge computing of the present invention has the following advantages:

[0175] 1. For multiple ground terminal devices, the ground terminal devices are divided into remote terminal devices and near terminal devices based on the distance between the ground terminal devices and the stationed UAV. Each remote terminal device is assigned a near terminal device as a relay. With the relay cooperation of the near terminal devices, the remote terminal devices offload some of their computing tasks to the flying UAV for processing. The flying UAV does not need to fly close to the remote terminal devices, which shortens the flight range of the flying UAV, reduces flight energy consumption, and extends the working time of the flying UAV.

[0176] 2. An offloading model is constructed based on time division multiple access technology. By dividing time into multiple time slots, multiple ground terminal devices take turns sending data on the same frequency, which effectively utilizes bandwidth, avoids conflicts between different ground terminal devices, and improves communication reliability.

[0177] 3. With the relay cooperation of the near-end terminal device, the remote terminal device offloads its computing tasks to the flying drone for processing. The computing tasks of the near-end terminal device are transmitted to the stationary drone for processing with the relay cooperation of the flying drone. This avoids the situation where if the remote terminal device and the near-end terminal device are processing different types of tasks, and these tasks are simultaneously offloaded to the same drone for processing, the task performance may be degraded due to resource competition and conflicts, or even the task may fail.

[0178] 4. By having one drone handle the computing tasks of the remote terminal device and another drone handle the computing tasks of the near terminal device, compared to a single drone that may have insufficient computing power, resulting in the inability to complete the task in real time or computing delays, this invention makes full use of the computing resources of all ground terminal devices and two drones, which can have higher computing power and alleviate the pressure of insufficient computing power of a single drone.

[0179] 5. By optimizing the number of unloading tasks, computing frequency, and flight trajectory of drones, the energy consumption of all devices is minimized, improving the energy efficiency of the entire edge computing system, extending the service life of the devices, and enhancing service quality. Attached Figure Description

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

[0181] The invention will be further described below with reference to the accompanying drawings.

[0182] Figure 1 This is a block diagram of the edge computing system structure in a multi-UAV mobile edge computing method for task offloading and resource allocation, as described in an embodiment.

[0183] Figure 2 This is a block diagram illustrating the task offloading principle based on time-division multiple access technology in a task offloading and resource allocation method for multi-UAV mobile edge computing, as described in an embodiment.

[0184] Figure 3 This is a flowchart illustrating the process of solving an optimization problem in a task offloading and resource allocation method for multi-UAV mobile edge computing, as described in an embodiment. Detailed Implementation

[0185] The present invention will be further described below with reference to the accompanying drawings and specific embodiments, so that those skilled in the art can better understand and implement the present invention. However, the embodiments are not intended to limit the present invention. In the absence of conflict, the embodiments of the present invention and the technical features in the embodiments can be combined with each other.

[0186] This invention provides a method for task offloading and resource allocation in multi-UAV mobile edge computing, which solves the technical problems of slow edge computing task processing and high energy consumption caused by different ground terminal devices having different types of computing tasks and limited resources of a single UAV.

[0187] Example:

[0188] This invention discloses a method for task offloading and resource allocation in multi-UAV mobile edge computing, comprising three steps: constructing an allocation strategy, constructing an optimization problem, and solving the optimization problem.

[0189] Step S100: Constructing the allocation strategy: Based on the distance between the ground terminal equipment and the stationary UAV, the multiple ground terminal equipment are divided into remote terminal equipment and near-end terminal equipment. Each remote terminal equipment is assigned a corresponding near-end terminal equipment as an assistant. Each remote terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the flying UAV via the relay of its assistant near-end terminal equipment. Each near-end terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the stationary UAV via the relay of its flying UAV. Specifically, as follows... Figure 1 As shown.

[0190] The edge computing system in this embodiment includes two drones and multiple ground terminal devices. The ground control base provides sufficient energy to the parked drones through tethered antennas. Each remote terminal device and each near-end terminal device has its own computing task to be processed.

[0191] Step S200: Construct the optimization problem: Construct the system model and the mathematical model of the joint optimization problem, and jointly optimize the number of tasks assigned, the calculation frequency, and the flight trajectory of the flying drone to minimize energy consumption. The number of tasks assigned includes the number of tasks unloaded by each ground terminal device and the flying drone, and the calculation frequency includes the CPU calculation frequency when each ground terminal device and each drone performs task calculations.

[0192] In this embodiment, the system model includes a channel model, an offloading model, a computational model, and a flight energy consumption model for the flying UAV. The channel model is used to calculate the channel gain between the remote terminal device and the near-terminal device, between the near-terminal device and the flying UAV, and between the flying UAV and the stationary UAV. The offloading model is used to calculate the number of tasks unloaded and the energy consumption generated when each ground terminal device and the flying UAV performs task offloading. The computational model is used to calculate the number of tasks calculated and the energy consumption generated when each ground terminal device and each UAV performs task computation.

[0193] As a specific implementation of building the system model, the calculation steps of the channel model, offloading model and calculation model are given.

[0194] The construction of the channel model includes the following steps:

[0195] (1) For the overall computing task distributed to various ground terminal devices, the completion time T of the overall computing task is set to consist of N identical time slots, and the duration interval of each time slot is τ = T / N, where τ is chosen to be small enough that the position of the flying UAV can be assumed to remain approximately unchanged within each time slot. The horizontal position of a flying drone can be represented as q, which represents a set of N time slots. u [n] = (xu [n],y u [n],H1), where the starting position of the flying drone is represented as H1). The end position of the flight is indicated as make Let V represent the speed of the drone flying in the nth time slot. max This represents the maximum speed of the flying drone, therefore v[n]≤V max ;;

[0196] (2) For multiple ground terminal devices, Represents a set of near-end terminal devices. This represents the set of remote terminal devices assisted by near-end terminal devices, where M = R;

[0197] (3) Set the flight altitude of the flying UAV to H1 meters, the hovering altitude of the stationary UAV to H2 meters, and the altitude of each ground terminal device to zero. Construct the coordinates of the remote terminal device, the near terminal device, and the stationary UAV based on a three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are represented as follows: The coordinates of the near-end terminal device are represented as u m =(x m ,y m The coordinates of the parked drone are represented as q(0, 0). z =(x z ,y z H2);

[0198] (4) The wireless channels between the near-end terminal device and the flying UAV, and between the flying UAV and the stationary UAV, are set to be dominated by line-of-sight links. In the nth time slot, the channel gain between the near-end terminal device m and the flying UAV, and between the flying UAV and the stationary UAV, is expressed as:

[0199]

[0200] Among them, h m,u [n] represents the channel gain between the near-end terminal device m and the flying UAV in the nth time slot, and h0 represents the channel gain at the reference distance d = 1 meter. m,u [n] represents the distance between the near-end terminal device m and the flying drone in the nth time slot, h u,z [n] represents the channel gain between the flying drone and the stationary drone in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone in the nth time slot;

[0201] (5) Remote terminal equipment r m Channel gain between the near-end terminal device m Represented as:

[0202]

[0203] Where g0 represents the channel gain at a reference distance d = 1 meter, and α represents the path loss coefficient. Indicates remote terminal device r m The distance between the device and the near-end terminal device m.

[0204] Among them, such as Figure 2 As shown, this embodiment constructs an offloading model based on time division multiple access technology, including the following steps:

[0205] (1) For the overall computing task allocated to each ground terminal device, the completion time T of the overall computing task is set to consist of N identical time slots, the duration interval of each time slot is τ = T / N, and each time slot is divided into M sub-time slots, the time interval of each sub-time slot is τ1 = τ / M, the time interval of each sub-time slot is used to process the computing task of a near-end terminal device and its corresponding far-end terminal device, and each sub-time slot is divided into four time slices, the time interval of each time slice is τ0 = τ1 / 4;

[0206] In the first time slice, the remote terminal device r m The remaining computing tasks are offloaded to the near-end terminal device m, which acts as a relay.

[0207] In the second time slice, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the flying drone;

[0208] In the third time slice, the near-end terminal device m offloads its remaining computing tasks to the flying drone;

[0209] In the fourth time slice, the flying drone offloads the computing tasks from the near-end terminal device m to the parked drone;

[0210] (2) In the nth time slot, the remote terminal device r m The number of tasks to offload the remaining computing tasks to the near-end terminal device m Represented as:

[0211]

[0212] in, Indicates the remote terminal device r in the nth time slot m The offloading power, N0 represents the noise power, and B represents the channel bandwidth;

[0213] Remote terminal device r m Energy consumption of offloading the remaining tasks to the near-end terminal device m Represented as:

[0214]

[0215] (3) The near-end terminal device m will receive data from the far-end terminal device r m The number of computational tasks offloaded to flying drones Represented as:

[0216]

[0217] in, This indicates that in the nth time slot, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the unloading power of the flying drone;

[0218] The near-end terminal device m will receive data from the far-end terminal device r. m The energy consumption of offloading the computational task to the flying drone is

[0219]

[0220] (4) To ensure that the near-end terminal device m can transmit data from the far-end terminal device r in each time slot m All computational tasks must be offloaded to the flying drone, while satisfying the following constraints:

[0221]

[0222] (5) Order This represents the number of computational tasks that the near-end terminal device m offloads to the flying drone in the nth time slot, expressed as:

[0223]

[0224] in, This indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the offload power of the flying drone;

[0225] (6) The energy consumption of the near-end terminal device m in the nth time slot to offload its remaining computing tasks to the flying UAV. Represented as:

[0226]

[0227] (7) The number of computing tasks that the flying drone will offload from the near-end terminal device m to the stationary drone. Represented as:

[0228]

[0229] in, This represents the offloading power of the drone flying in the nth time slot, which offloads the computing tasks from the near-end terminal device m to the parked drone.

[0230] The energy consumption of the drone flying in the nth time slot to offload the computing tasks from the near-end terminal device m to the parked drone. Represented as:

[0231]

[0232] (8) In order to ensure that the flying UAV can offload all computing tasks from the near-end terminal device m to the parked UAV in each time slot, the following constraints must be met:

[0233]

[0234] In this embodiment, the computing tasks of the remote terminal device are divided into two parts: the remote terminal device performs some of its computing tasks locally, and the remaining computing tasks are offloaded to the flying UAV for processing with the relay cooperation of the near-terminal device; the computing tasks of the near-terminal device are also divided into two parts: the near-terminal device performs some of its computing tasks locally, and the remaining computing tasks are offloaded to the stationary UAV for processing with the relay cooperation of the flying UAV. The computing model involves the number of tasks calculated by each ground terminal device and each UAV, as well as the energy consumption generated.

[0235] The local computing model of the remote terminal device includes the number of tasks computed locally by the remote terminal device and the energy consumption generated. For the remote terminal device r m The number of tasks computed locally and energy consumption They are represented as follows:

[0236]

[0237] in, Indicates remote terminal device r m The frequency is calculated in the nth time slot. Indicates remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computational resources required for a one-bit task.

[0238] The local computing model of a near-terminal device includes the number of locally computed tasks and the energy consumption. For a near-terminal device m, the number of locally computed tasks is... and energy consumption They are represented as follows:

[0239]

[0240] Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m C represents the effective capacitance coefficient of the near-end terminal device m. m This represents the computational resources required to compute an m-bit task on a near-end terminal device.

[0241] The computational model of a flying drone includes the number of computational tasks it performs and the energy consumption it generates. The number of computational tasks performed by the flying drone... and energy consumption They are represented as follows:

[0242]

[0243] Among them, f u [n] represents the calculation frequency of the flying UAV in the nth time slot, κ u This represents the effective capacitance coefficient of a flying drone.

[0244] The computational model for a stationary drone includes the number of computational tasks it performs and the energy consumption it generates. The number of computational tasks performed by the stationary drone... and energy consumption They are represented as follows:

[0245]

[0246] Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z This represents the effective capacitance coefficient of a parked drone.

[0247] In any given time slot, a flying UAV can only process computational tasks received from a remote terminal device via communication transmission, and a stationary UAV can only process computational tasks received from a near-end terminal device via communication transmission. Based on this, the processing delay of the UAV in decoding and computation operations is set to one time slot, which should satisfy the following constraints:

[0248]

[0249] Remote terminal device r m The total number of bits for the number of locally computed tasks and the number of unloaded tasks should equal the data volume of the computed tasks. The total number of bits for the number of tasks computed locally and the number of tasks offloaded by the near-end terminal device m should equal the amount of data for its computed tasks. They are represented as follows:

[0250]

[0251] The flight energy consumption of the flying drone in the nth time slot Represented as:

[0252]

[0253] Wherein, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.

[0254] Since the ground control base can directly provide energy to the parked drones, optimization of the hovering energy consumption of the parked drones is not considered.

[0255] Considering the battery capacity limitations typically faced by ground terminal devices and drones, a major issue for drone-assisted mobile edge computing systems is energy consumption. Therefore, to minimize the energy consumption of all ground terminal devices and drones, this embodiment jointly optimizes the number of tasks allocated, the CPU's computing frequency, and the flight trajectory of the drone to achieve the minimum energy consumption for all ground terminal devices and drones in the edge computing system. The number of tasks allocated, L, is represented as follows:

[0256]

[0257] The calculated frequency F is expressed as:

[0258]

[0259] The flight trajectory Q of the flying drone is represented as:

[0260] Q = {q} u [n]}.

[0261] In this embodiment, the joint optimization problem is identified as problem P1, and its corresponding mathematical model is expressed as follows:

[0262] P1:

[0263] st

[0264] C1:

[0265] C2:

[0266] C3:

[0267] C4:

[0268] C5:

[0269] C6:

[0270] C7:

[0271] C8:

[0272] C9:

[0273] C10:

[0274] C11:

[0275] C12:

[0276] C13:

[0277] C14:

[0278] C15:

[0279] C16: in, It is the energy consumption of ground terminal equipment. This refers to the energy consumption of two drones, ω m and ω u These are the weights of the energy consumption of the ground terminal equipment and the two drones, respectively.

[0280] Constraint C1 indicates that the near-end terminal device m is able to transmit data from the far-end terminal device r in each time slot. m All computational tasks are offloaded to the flying drone;

[0281] Constraint C2 indicates that the flying drone can offload all computing tasks from the near-end terminal device m to the parked drone in each time slot;

[0282] Constraint C3 states that in any time slot, the UAV can only process computing tasks that have been received from remote terminal devices via communication transmission;

[0283] Constraint C4 means that a drone parked in any time slot can only process computational tasks that have already been received from near-end terminal devices via communication transmission;

[0284] Constraints C5-C8 indicate that the computational tasks of each near-end terminal device and far-end terminal device can be processed;

[0285] Constraints C9-C14 indicate that any optimization parameter is non-negative;

[0286] Constraints C15-C16 represent the flight trajectory and speed constraints of the flying drone.

[0287] In this embodiment, the objective function in problem P1 is non-convex, and problem P1 is a non-convex optimization problem.

[0288] Step S300: Solve the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two sub-problems: the resource scheduling sub-problem and the UAV trajectory sub-problem. For the resource scheduling sub-problem, the flight trajectory of the UAV is fixed, and the number of tasks and the calculation frequency are iteratively optimized. For the UAV trajectory sub-problem, the UAV trajectory is optimized based on the optimized number of tasks and the calculation frequency.

[0289] In this embodiment, considering that problem P1 is a non-convex optimization problem, a two-step iterative optimization algorithm is constructed based on the block coordinate descent method. Each iteration includes two steps: First, keeping the flight trajectory of the UAV fixed, the Lagrange multiplier method is used to optimize the number of tasks L and the computation frequency F. Second, based on the optimized number of tasks L and computation frequency F, a successive convex approximation method is used to optimize the flight trajectory of the UAV. Figure 3 As shown, the specific implementation of solving the optimization problem includes the following steps:

[0290] S310. Set the iteration count variable t = 1, and the maximum iteration count t. max The iteration terminates with thresholds ο1 and ο2, and the trajectory Q of the flying drone is initialized. The joint optimization problem is decomposed into two subproblems by the block coordinate descent method: the resource scheduling subproblem and the flying drone trajectory subproblem. The resource scheduling subproblem is denoted as problem P1.1, which is used to solve the allocation of task quantity and computation frequency. The flying drone trajectory subproblem is denoted as problem P1.2.

[0291] S320. For problem P1.1, the trajectory Q of the fixed-flying UAV remains unchanged. Optimize the calculation frequency F and the number of task assignments L. Set the iteration parameter b = 1 for problem P1.1, and the maximum iteration parameter b. max The mathematical model corresponding to problem P1.1 It is expressed as follows:

[0292]

[0293] stC1-C14;

[0294] in,

[0295] The resource scheduling subproblem is a convex problem, which is solved using the Lagrange method to obtain the optimized computation frequency F and the number of tasks allocated L.

[0296] S330. Based on the optimized computation frequency F and the number of tasks assigned L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as follows:

[0297]

[0298] stC15, C16;

[0299] Problem P1.2 is a non-convex problem. After the following transformation, problem P1.2 is transformed into a convex problem. It is then solved using the convex optimization tool CVX to obtain the flight trajectory Q of the flying UAV.

[0300] S340. Input the optimized task allocation quantity L, calculation frequency F, and flight trajectory Q obtained from steps S320 and S330 into the objective function of the original joint optimization problem to obtain the energy consumption value E. t ;

[0301] S350, update iteration count t = t + 1;

[0302] S360. Input the trajectory Q of the t-th optimized UAV into step S320, and repeat steps S320 to S350 until |E t -E t-1 |≤o2 or iteration count t>t max To obtain the optimal energy consumption value E t .

[0303] Solving problem P1.1 using the Lagrange method includes the following steps:

[0304] L100, define the dual variables γ, ε, and ξ corresponding to the inequality constraints C1-C4, and And for the dual variables γ, ε, ξ, and Initialize, where γ = {γ m,n}, ε={ε m,n}, ξ={ξ m,n}, γ m,n Let ε represent the dual variable corresponding to the inequality constraint C1. m,n Let ξ represent the dual variable corresponding to the inequality constraint C2. m,n This represents the dual variable corresponding to inequality constraint C3. Represents the dual variable corresponding to inequality constraint C4;

[0305] L200 defines and constrains the Lagrange dual variables φ, ρ, χ, and λ corresponding to C5-C8, and solves for the values ​​of φ, ρ, χ, and λ using a binary search method, where φ = {φ m}, ρ={ρ m}, χ={χ m}, λ={λ m}, φ m ρ represents the dual variable corresponding to the equality constraint C5. m χ represents the dual variable corresponding to the equality constraint C6. m Let λ represent the dual variable corresponding to the equality constraint C7. m Represents the dual variable corresponding to the equality constraint C8;

[0306] L300. Transform problem P1.1 into a Lagrange problem. The corresponding mathematical model is as follows:

[0307]

[0308] The dual function is expressed as:

[0309]

[0310] stC9-C14;

[0311] L400, the optimization parameters for solving problem P1.2 based on KKT conditions, are allocated to the number of tasks L and the computation frequency F. The calculation formulas include the following:

[0312] First equation:

[0313] Second equation:

[0314] Third equation:

[0315] Fourth equation:

[0316]

[0317] Fifth equation:

[0318]

[0319] Equation 6:

[0320]

[0321] Equation 7:

[0322] Equation 8: Among them, [c] +=max(0,c);

[0323] L500, using the subgradient method, calculate the Lagrangian dual variables γ, ε, and ξ related to constraints C1-C4. The calculation formula is as follows:

[0324] In the (b+1)th iteration, the Lagrange dual variables γ, ε, ξ and Updated to:

[0325]

[0326] in, and Indicates step size, They are γ m,n ε m,n ξ m,n and The subgradient of is expressed as:

[0327]

[0328] L600. Substituting the number of tasks L and the computation frequency F into the objective function of the resource scheduling subproblem, we obtain the energy consumption of the resource scheduling subproblem.

[0329] L600, Update the iterative variable b = b + 1 for the resource scheduling subproblem;

[0330] L700, repeat L100-L600 until the objective function of the resource scheduling subproblem is satisfied. Stop the iteration to obtain the optimal number of tasks L and the computation frequency F.

[0331] For step L200, based on the given values ​​of the dual variables γ and ξ, the values ​​of the corresponding dual variables φ and λ of constraints C5 and C8 are obtained through binary search. The solution process is as follows:

[0332] (1) Due to f rm [n]≥0, λ is obtained based on the first equation and constraint C8. m Scope in

[0333] (2) Based on constraints C5 and C8, the first equation, the fourth equation, and the seventh equation, The value of can be expressed as the following formula:

[0334] Ninth equation:

[0335] Equation 10: Eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth formula, and the eleventh equation is obtained based on the seventh equation and constraint C5.

[0336] (3) Based on the updated values ​​of γ and ξ, φ m Scope It can be represented as:

[0337]

[0338] in, It is γ m,n The minimum value, It is γ m,n The maximum value;

[0339] (4) Then we get φ m Scope When the tenth equation equals the eleventh equation, the value of φ is derived using a binary search method, based on the given γ and ξ, and the solved φ and λ. m Scope When equations 9, 10, and 11 are equal, λ can be derived using a binary search method. m The value of .

[0340] For step L200, based on the given dual variables ε and The values ​​of ρ and χ, corresponding to constraints C6 and C7, are obtained through binary search. The solution process is as follows:

[0341] (1) Due to f m χ is calculated based on the second equation and constraint C7, where [n]≥0. m Scope in,

[0342] (2) Based on constraints C6 and C7, as well as the second, fifth, and eighth equations, The value can be represented as:

[0343] Twelfth equation:

[0344] Thirteenth equation:

[0345] Fourteenth equation: Equation 12 is derived based on constraint C7, equation 13 is derived based on equation 6, and equation 14 is derived based on equation 8 and constraint C6.

[0346] (3) Based on the updated ε value and Value, ρm Scope It can be represented as:

[0347]

[0348] in, It is ε m,n The minimum value, It is ε m,n The maximum value, ρ m Scope When equations thirteen and fourteen are equal, the value of ρ is derived using a binary search method, based on the given ε. And the solved ρ, when the twelfth, thirteenth, and fourteenth equations are equal, χ is derived using the binary search method. m The value of .

[0349] In step S330, because of The objective function of subproblem P1.2 is nonconvex, therefore a slack variable β[n] is introduced into the objective function of problem P1.2, and it is rewritten as:

[0350]

[0351] And there are additional constraints that need to be satisfied:

[0352] ||v[n]|| 2 ≥β[n] 2 ,

[0353] β[n]≥0,

[0354] Obviously, Both v[n] and β[n] are convex, but due to the constraint ||v[n]|| 2 ≥β[n] 2 It remains non-convex, and the above non-convex constraint is resolved using a continuous convex approximation method. Because the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side expression is convex with respect to v[n], and can be expressed at a given local point v. t The first-order Taylor expansion at [n] is applied as an approximation of its linear lower bound. Therefore, the above non-convex constraint can be transformed into:

[0355]

[0356] After the above transformation, subproblem P1.2 is a convex problem, and the trajectory Q of the flying UAV can be solved using the convex optimization tool CVX.

[0357] In this embodiment, each remote terminal device and near terminal device can use its own computing resources to perform partial local computation of the task. The remaining computational tasks of the remote terminal device are offloaded to the flying drone for computation with the relay cooperation of the near terminal device. The remaining computational tasks of the near terminal device are offloaded to the stationary drone for computation with the relay cooperation of the flying drone. When the near terminal drone and the remote terminal drone are computing different types of computational tasks, resource competition and conflict caused by a single drone computing different types of tasks are avoided, and energy consumption caused by a single drone flying to the remote terminal device is also avoided.

[0358] The present invention has been shown and described in detail above with reference to the accompanying drawings and preferred embodiments. However, the present invention is not limited to these disclosed embodiments. Based on the above multiple embodiments, those skilled in the art will know that more embodiments of the present invention can be obtained by combining the means in the different embodiments described above, and these embodiments are also within the protection scope of the present invention.

Claims

1. A method for task offloading and resource allocation in multi-UAV mobile edge computing, characterized in that, A mobile edge computing system comprising two drones and multiple ground terminal devices, wherein one drone is a stationary drone hovering in the air and the other drone is a flying drone in the air, and a ground control base provides power to the stationary drone via a tethered antenna, the method comprising the following steps: Assignment strategy: Based on the distance between the ground terminal equipment and the stationary UAV, the multiple ground terminal equipment are divided into remote terminal equipment and near terminal equipment. Each remote terminal equipment is assigned a corresponding near terminal equipment as an auxiliary. Each remote terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the flying UAV through the near terminal equipment that serves as its auxiliary. Each near terminal equipment performs part of its computing tasks locally and offloads its remaining computing tasks to the stationary UAV through the flying UAV. Optimization Problem Construction: Construct a system model and a mathematical model of the joint optimization problem, and jointly optimize the number of tasks assigned, the computation frequency, and the flight trajectory of the UAV to minimize energy consumption. The number of tasks assigned includes the number of tasks unloaded by each ground terminal device and the UAV. The computation frequency includes the CPU computation frequency of each ground terminal device and each UAV when performing task computation. The system model includes a channel model, an unloading model, a computation model, and a flight energy consumption model of the UAV. Solving the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two sub-problems: the resource scheduling sub-problem and the UAV trajectory sub-problem. For the resource scheduling sub-problem, the flight trajectory of the UAV is fixed, and the number of tasks and the calculation frequency are iteratively optimized. For the UAV trajectory sub-problem, the UAV trajectory is optimized based on the optimized number of tasks and the calculation frequency. Constructing a channel model involves the following steps: For the overall computing task distributed to various ground terminal devices, the completion time T of the overall computing task is set to consist of N identical time slots, with the duration interval of each time slot being τ = T / N. Here, τ is chosen to be sufficiently small so that the position of the flying UAV can be assumed to remain approximately constant within each time slot. The horizontal position of a flying drone can be represented as q, which represents a set of N time slots. u [n] = (x u [n],y u [n],H1), where the starting position of the flying drone is represented as H1). The end position of the flight is indicated as make Let V represent the speed of the drone flying in the nth time slot. max This represents the maximum speed of the flying drone, therefore v[n]≤V max ; For multiple ground terminal devices Represents a set of near-end terminal devices. This represents the set of remote terminal devices assisted by near-end terminal devices, where M = R; The flight altitude of the flying drone is set to H1 meters, the hovering altitude of the stationary drone is set to H2 meters, and the altitude of each ground terminal device is zero. The coordinates of the remote terminal device, the near terminal device, and the stationary drone are constructed based on a three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are represented as follows: The coordinates of the near-end terminal device are represented as u m =(x m ,y m The coordinates of the parked drone are represented as q(0, 0). z =(x z ,y z H2); The wireless channels between the near-end terminal device (m) and the flying UAV, as well as between the flying UAV and the stationary UAV, are set to be dominated by line-of-sight links. In the nth time slot, the channel gain between the near-end terminal device (m) and the flying UAV, and between the flying UAV and the stationary UAV, is expressed as: Among them, h m,u [n] represents the channel gain between the near-end terminal device m and the flying UAV in the nth time slot, and h0 represents the channel gain at the reference distance d = 1 meter. m,u [n] represents the distance between the near-end terminal device m and the flying drone in the nth time slot, h u,z [n] represents the channel gain between the flying drone and the stationary drone in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone in the nth time slot; Remote terminal device r m Channel gain between the near-end terminal device m Represented as: Where g0 represents the channel gain at a reference distance d = 1 meter, and α represents the path loss coefficient. Indicates remote terminal device r m The distance between the device and the near-end terminal device m.

2. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 1, characterized in that, The channel model is used to calculate the channel gain between the remote terminal device and the near terminal device, between the near terminal device and the flying drone, and between the flying drone and the stationary drone. The unloading model is used to calculate the number of tasks unloaded and the energy consumption generated when ground terminal equipment and flying drones unload tasks. The computational model is used to calculate the number of tasks and energy consumption generated when each ground terminal device and each UAV performs task calculations.

3. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 1, characterized in that, The offloading model based on time division multiple access technology includes the following steps: For the overall computing task allocated to various ground terminal devices, the completion time T of the overall computing task is set to consist of N identical time slots, with the duration interval of each time slot τ = T / N. Each time slot is divided into M sub-time slots, with the time interval of each sub-time slot being τ1 = τ / M. The time interval of each sub-time slot is used to process the computing task for a near-end terminal device and its corresponding far-end terminal device. Each sub-time slot is divided into four time slices, with the time interval of each time slice being τ0 = τ1 / 4. In the first time slice, the remote terminal device r m The remaining computing tasks are offloaded to the near-end terminal device m, which acts as a relay. In the second time slice, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the flying drone; In the third time slice, the near-end terminal device m offloads its remaining computing tasks to the flying drone; In the fourth time slice, the flying drone offloads the computing tasks from the near-end terminal device m to the parked drone; In the nth time slot, the remote terminal device r m The number of tasks to offload the remaining computing tasks to the near-end terminal device m Represented as: in, Indicates the remote terminal device r in the nth time slot m The offloading power, N0 represents the noise power, and B represents the channel bandwidth; Remote terminal device r m Energy consumption of offloading the remaining tasks to the near-end terminal device m Represented as: The near-end terminal device m will receive data from the far-end terminal device r. m The number of computational tasks offloaded to flying drones Represented as: in, This indicates that in the nth time slot, the near-end terminal device m will receive data from the far-end terminal device r. m The computational tasks are offloaded to the unloading power of the flying drone; The near-end terminal device m will receive data from the far-end terminal device r. m The energy consumption of offloading the computational task to the flying drone is To ensure that the near-end terminal device m can transmit data from the far-end terminal device r in each time slot m All computational tasks must be offloaded to the flying drone, while satisfying the following constraints: make This represents the number of computational tasks that the near-end terminal device m offloads to the flying drone in the nth time slot, expressed as: in, This indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the offload power of the flying drone; The energy consumption of the near-end terminal device m in the nth time slot to offload its remaining computing tasks to the flying drone. Represented as: The number of computing tasks that flying drones will offload from near-end terminal device m to stationary drones. Represented as: in, This represents the offloading power of the drone flying in the nth time slot, which offloads the computing tasks from the near-end terminal device m to the parked drone. The energy consumption of the drone flying in the nth time slot to offload the computing tasks from the near-end terminal device m to the parked drone. Represented as: To ensure that the flying drone can offload all computing tasks from the near-end terminal device m to the parked drone in each time slot, the following constraints must be met:

4. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 1, characterized in that, Remote terminal device r m Number of tasks calculated locally and energy consumption They are represented as follows: in, Indicates remote terminal device r m The frequency is calculated in the nth time slot. Indicates remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computational resources required for a one-bit task; Number of tasks computed locally by the near-end terminal device m and energy consumption They are represented as follows: Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m C represents the effective capacitance coefficient of the near-end terminal device m. m This represents the computational resources required to compute an m-bit task on a near-end terminal device. Number of tasks calculated by flying drones and energy consumption They are represented as follows: Among them, f u [n] represents the calculation frequency of the flying UAV in the nth time slot, κ u Indicates the effective capacitance coefficient of a flying unmanned aerial vehicle; Number of tasks calculated by stationary drones and energy consumption They are represented as follows: Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z Indicates the effective capacitance coefficient of a parked drone; In any given time slot, a flying UAV can only process computational tasks received from a remote terminal device via communication transmission, and a stationary UAV can only process computational tasks received from a near-end terminal device via communication transmission. Based on this, the processing delay of the UAV in decoding and computation operations is set to one time slot, which should satisfy the following constraints: Remote terminal device r m The total number of bits for the number of locally computed tasks and the number of unloaded tasks should equal the data volume of the computed tasks. The total number of bits for the number of tasks computed locally and the number of tasks offloaded by the near-end terminal device m should equal the amount of data for its computed tasks. They are represented as follows:

5. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 4, characterized in that, The flight energy consumption of the flying drone in the nth time slot Represented as: Here, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.

6. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 5, characterized in that, For the joint optimization problem P1, the number of tasks assigned, L, is expressed as: The CPU's computing frequency F is expressed as: The flight trajectory of the flying drone is represented as follows: Q={q u [n]} Correspondingly, the data model for problem P1 is represented as follows: st C1: C2: C3: C4: C5: C6: C7: C8: C9: C10: C11: C12: C13: C14: C15: C16: in, It is the energy consumption of ground terminal equipment. This refers to the energy consumption of two drones, ω m and ω u These are the weights of the energy consumption of the ground terminal equipment and the two drones, respectively. Constraint C1 indicates that the near-end terminal device m is able to transmit data from the far-end terminal device r in each time slot. m All computational tasks are offloaded to the flying drone; Constraint C2 indicates that the flying drone can offload all computing tasks from the near-end terminal device m to the parked drone in each time slot; Constraint C3 states that in any time slot, the UAV can only process computing tasks that have been received from remote terminal devices via communication transmission; Constraint C4 means that a drone parked in any time slot can only process computational tasks that have already been received from near-end terminal devices via communication transmission; Constraints C5-C8 indicate that the computational tasks of each near-end terminal device and far-end terminal device can be processed; Constraints C9-C14 indicate that any optimization parameter is non-negative; Constraints C15-C16 represent the flight trajectory and speed constraints of the flying drone.

7. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 6, characterized in that, Solving optimization problems involves the following steps: S100. Set the iteration count variable t = 1, and the maximum iteration count t. max The iteration terminates with thresholds ο1 and ο2, and the trajectory Q of the flying drone is initialized. The joint optimization problem is decomposed into two subproblems by the block coordinate descent method: the resource scheduling subproblem and the flying drone trajectory subproblem. The resource scheduling subproblem is denoted as problem P1.1, which is used to solve the allocation of task quantity and computation frequency. The flying drone trajectory subproblem is denoted as problem P1.

2. S200. For problem P1.1, the trajectory Q of the fixed-flying UAV remains unchanged. Optimize the calculation frequency F and the number of task assignments L. Set the iteration parameter b = 1 for problem P1.1, and the maximum iteration parameter b... max The mathematical model corresponding to problem P1.1 It is expressed as follows: stC1-C14; in, The resource scheduling subproblem is a convex problem, which is solved using the Lagrange method to obtain the optimized computation frequency F and the number of tasks allocated L. S300. Based on the optimized computation frequency F and the number of tasks assigned L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as follows: stC15, C16; because The objective function of subproblem P1.2 is nonconvex, therefore a slack variable β[n] is introduced into the objective function of subproblem P1.2, and it is rewritten as: And there are additional constraints that need to be satisfied: ‖v[n]‖ 2 ≥β[n] 2 ,β[n]≥0, Both v[n] and β[n] are convex, but due to the constraint ‖v[n]‖ 2 ≥β[n] 2 It remains non-convex, and the non-convex constraint is solved using a continuous convex approximation method, since the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side expression is convex with respect to v[n], at a given local point v. t Applying a first-order Taylor expansion to approximate its linear lower bound at [n], the non-convex constraint is transformed into the following: After the above transformation, problem P1.2 becomes a convex problem, which is solved using the convex optimization tool CVX to obtain the flight trajectory Q of the flying UAV. S400: Input the optimized task allocation quantity L, calculation frequency F, and flight trajectory Q obtained from steps S200 and S300 into the objective function of the original joint optimization problem to obtain the energy consumption value E. t ; S500, update iteration count t = t + 1; S600: Input the trajectory Q of the optimized UAV for the tth time into step S200, and repeat steps S200 to S500 until |E t -E t-1 |≤o2 or iteration count t>t max To obtain the optimal energy consumption value E t .

8. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 7, characterized in that, Solving problem P1.1 using the Lagrange method involves the following steps: L100, define the dual variables γ, ε, and ξ corresponding to the inequality constraints C1-C4, and And for the dual variables γ, ε, ξ and Initialize, where γ = {γ m,n }, ε={ε m,n }, ξ={ξ m,n }, Where, γ m,n Let ε represent the dual variable corresponding to the inequality constraint C1. m,n Let ξ represent the dual variable corresponding to the inequality constraint C2. m,n This represents the dual variable corresponding to inequality constraint C3. Represents the dual variable corresponding to inequality constraint C4; L200 defines and constrains the Lagrange dual variables φ, ρ, χ, and λ corresponding to C5-C8, and solves for the values ​​of φ, ρ, χ, and λ using a binary search method, where φ = {φ m }, ρ={ρ m }, χ={χ m }, λ={λ m }, φ m ρ represents the dual variable corresponding to the equality constraint C5. m χ represents the dual variable corresponding to the equality constraint C6. m Let λ represent the dual variable corresponding to the equality constraint C7. m Represents the dual variable corresponding to equality constraint C8; L300. Transform problem P1.1 into a Lagrange problem. The corresponding mathematical model is as follows: The dual function is expressed as: stC9-C14; L400, the optimization parameters for solving problem P1.2 based on KKT conditions, are allocated to the number of tasks L and the computation frequency F. The calculation formulas include the following: First equation: Second equation: Third equation: Fourth equation: Fifth equation: Equation 6: Equation 7: Equation 8: Among them, [c] + =max(0,c); L500, using the subgradient method, calculate the Lagrangian dual variables γ, ε, and ξ related to constraints C1-C4. The calculation formula is as follows: In the (b+1)th iteration, the Lagrange dual variables γ, ε, ξ and Updated to: in, and Indicates step size, They are γ m,n ε m,n ξ m,n and The subgradient of is expressed as: L600. Substituting the number of tasks L and the computation frequency F into the objective function of the resource scheduling subproblem, we obtain the energy consumption of the resource scheduling subproblem. L600, Update the iterative variable b = b + 1 for the resource scheduling subproblem; L700, repeat L100-L600 until the objective function of the resource scheduling subproblem is satisfied. Stop the iteration to obtain the optimal number of tasks L and the computation frequency F.

9. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 8, characterized in that, Given the values ​​of the dual variables γ and ξ, the values ​​of the corresponding dual variables φ and λ of constraints C5 and C8 are obtained through binary search. The solution process is as follows: because Based on the first equation and constraint C8, λ is obtained. m Scope in Based on constraints C5 and C8, the first equation, the fourth equation, and the seventh equation. The value of can be expressed by the following formula: Ninth equation: Equation 10: Eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth formula, and the eleventh equation is obtained based on the seventh equation and constraint C5. Based on the updated values ​​of γ and ξ, φ m Scope It can be represented as: in, It is γ m,n The minimum value, It is γ m,n The maximum value; Then we get φ m Scope When the tenth equation equals the eleventh equation, the value of φ is derived using a binary search method, based on the given γ and ξ, and the solved φ and λ. m Scope When equations 9, 10, and 11 are equal, λ can be derived using a binary search method. m The value; Wherein, according to the given dual variables ε and The values ​​of ρ and χ, corresponding to constraints C6 and C7, are obtained through binary search. The solution process is as follows: Because f m χ is calculated based on the second equation and constraint C7, where [n]≥0. m Scope in, Based on constraints C6 and C7, as well as equations 2, 5, and 8 The value can be represented as: Twelfth equation: Thirteenth equation: Fourteenth equation: Equation 12 is derived based on constraint C7, equation 13 is derived based on equation 6, and equation 14 is derived based on equation 8 and constraint C6. Based on the updated ε value and Value, ρ m Scope It can be represented as: in, It is ε m,n The minimum value, It is ε m,n The maximum value, ρ m Scope When equations thirteen and fourteen are equal, the value of ρ is derived using a binary search method, based on the given ε. And the solved ρ, when the twelfth, thirteenth, and fourteenth equations are equal, χ is derived using the binary search method. m The value of .

Citation Information

Patent Citations

  • Unmanned aerial vehicle track, user association and resource allocation joint optimization method

    CN112995913A

  • Design method of high energy efficiency unmanned aerial vehicle (UAV) green data acquisition system

    US20220371730A1