Task unloading and resource allocation method in multi-unmanned aerial vehicle mobile edge computing
By dividing the far-end and near-end devices in the mobile edge computing system of multiple drones and using the method of collaborating computing tasks with multiple drones, the problem of slow processing of edge computing tasks and large energy consumption caused by limited resources of a single drone is solved, and more efficient computing power and energy management are achieved.
Patent Information
- Application Number
- CN202411748670.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-02
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2044-12-02
AI Technical Summary
In multi-drone mobile edge computing systems, since different ground terminal devices have different types of computing tasks, the resources of a single drone are limited, resulting in slow processing of edge computing tasks and large energy consumption.
Using the method of collaborative work of multiple drones, ground terminal equipment is divided into remote and near-end devices. Each remote device is relayed through its corresponding near-end devices to offload the computing tasks to the flying drone or the stationed drone for processing, and optimizes task offloading and resource allocation through time-division multiple access technology.
Through the collaborative processing of computing tasks by multiple drones, the flight interval and energy consumption of a single drone is reduced, the computing power is improved, the problem of insufficient computing power of a single drone is alleviated, and the energy consumption is minimized.
Smart Images

Figure CN119718567A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of edge computing technology, and in particular to a method for task offloading and resource allocation in multi-UAV mobile edge computing. Background Art
[0002] Mobile Edge Computing (MEC) is widely regarded as a key technology to help resource-limited terminal devices (TDs) handle their computationally intensive tasks. Drones equipped with computing resources can bring many potential advantages to MEC systems. First, drones are low-cost and as mobile edge computing nodes, they can be flexibly deployed in the air and dynamically adjusted according to demand; second, drones can fly to remote and hard-to-reach areas to provide computing and communication services in places with imperfect infrastructure or no network.
[0003] However, the MEC technology supported by UAVs also faces some challenges. When the ground terminal devices are widely distributed, the UAV needs to expand the flight trajectory to communicate reliably with all the terminal devices. In this way, the UAV will consume a lot of flight energy, which is not friendly to the UAV with limited battery energy and will greatly shorten the working cycle of the UAV. In order to solve the above problems, a method based on cooperative communication of ground terminal devices is proposed, that is, the remote terminal device far away from the UAV unloads the computing task to the UAV for computing and processing under the relay cooperation of the near-end terminal device close to the UAV. However, the above scheme is applicable to a single UAV. The computing resources and processing capabilities of a single UAV are relatively limited. When it is necessary to process a large amount of data or perform complex tasks, a single UAV is prone to insufficient computing resources, resulting in slow task processing or failure to complete the task on time. In addition, if different types of tasks to be processed by the remote terminal device and the near-end terminal device are simultaneously unloaded to the same single UAV for processing, resource competition and conflict will lead to a decrease in task performance, or even task failure.
[0004] Because different ground terminal devices have different types of computing tasks and the resources of a single drone are limited, edge computing tasks are slow to process and consume a lot of energy, which is a technical problem that needs to be solved. Summary of the invention
[0005] The technical task of the present invention is to address the above shortcomings and provide a method for task offloading and resource allocation in multi-UAV mobile edge computing to solve 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.
[0006] The present invention discloses a method for task offloading and resource allocation in multi-UAV mobile edge computing, which is applied to a mobile edge computing system including two UAVs and multiple ground terminal devices, wherein one UAV is a stationary UAV parked in the air, and the other UAV is a flying UAV flying in the air, and a ground control base provides energy to the stationary UAV through a tethered antenna. The method comprises the following steps:
[0007] Constructing an allocation strategy: Based on the distance between the ground terminal device and the parked UAV, the multiple ground terminal devices are divided into remote terminal devices and near-end terminal devices, each remote terminal device is assigned a corresponding near-end terminal device as an assistant, each remote terminal device performs local calculations on part of its computing tasks, and relays the remaining computing tasks to the flying UAV through the near-end terminal device as its assistant, and each near-end terminal device performs local calculations on part of its computing tasks, and relays the remaining computing tasks to the parked UAV through the flying UAV;
[0008] Constructing the optimization problem: Constructing the system model and the mathematical model of the joint optimization problem, jointly optimizing the number of task assignments, the calculation frequency, and the flight trajectory of the UAV to minimize energy consumption. The number of task assignments includes the number of tasks unloaded by each ground terminal device and the UAV, and the calculation frequency includes the calculation frequency of the CPU when each ground terminal device and each UAV perform task calculations.
[0009] Solving the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two sub-problems, namely the resource scheduling sub-problem and the flying UAV trajectory sub-problem. For the resource scheduling sub-problem, the flight trajectory of the flying UAV is fixed, and the number of task assignments and the calculation frequency are iteratively optimized. For the flying UAV trajectory sub-problem, the flying UAV trajectory is optimized according to the optimized number of task assignments and the calculation frequency.
[0010] Preferably, the system model includes a channel model, an unloading model, a calculation model, and a flight energy consumption model of the flying UAV;
[0011] The channel model is used to calculate the channel gain between the remote terminal device and the near-end terminal device, between the near-end terminal device and the flying drone, and between the flying drone and the stationed drone;
[0012] 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 drone perform task offloading;
[0013] The calculation model is used to calculate the number of tasks and the energy consumption generated when each ground terminal device and each drone performs task calculations.
[0014] Preferably, constructing the channel model comprises the following steps:
[0015] For the overall computing task assigned to each ground terminal device, 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 selected to be small enough so that the position of the flying drone can be assumed to be roughly unchanged in each time slot. Let Represents a set of N time slots, and the horizontal position of the flying drone can be expressed as q u [n]=(x u [n],y u [n],H1), where the starting position of the flying drone is expressed as The flight end position is represented by make Denotes the speed of the UAV in the nth time slot, let V max represents the maximum speed of the flying drone, so v[n]≤V max ;
[0016] For multiple ground terminal devices, Represents the collection of proximal terminal devices, represents a set of remote terminal devices assisted by the near-end terminal device, where M = R;
[0017] The flying altitude of the flying drone is set to H1 meters, the hovering altitude of the parked drone is set to H2 meters, and the altitude of each ground terminal device is set to zero. The coordinates of the remote terminal device, the near-end terminal device, and the parked drone are constructed based on the three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are expressed as The coordinates of the near-end terminal device are represented by u m =(x m ,y m ,0), the coordinates of the parked drone are represented as q z =(x z ,y z ,H2);
[0018] Assuming that the wireless channel between the proximal terminal device and the flying UAV and the wireless channel between the flying UAV and the parked UAV are dominated by the line-of-sight link, in the nth time slot, the channel gain between the proximal terminal device m and the flying UAV and between the flying UAV and the parked 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 drone in the nth time slot, h0 represents the channel gain at the reference distance d = 1 meter, dm,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 UAV and the stationed UAV in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone at the nth time slot;
[0021] Remote Terminal Equipment m Channel gain between the near-end terminal device m It is expressed as:
[0022]
[0023] Where g0 represents the channel gain at the reference distance d = 1 meter, α represents the path loss coefficient, Represents the remote terminal device r m The distance between the near-end terminal device m.
[0024] Preferably, the offloading model is constructed based on the time division multiple access technology, including the following steps:
[0025] For the overall computing task assigned 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 perform the processing of the computing task on a near-end terminal device and the 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;
[0026] In the first time slice, the remote terminal device r m Offload its remaining computing tasks to the proximal terminal device m acting as a relay;
[0027] In the second time slice, the near-end terminal device m receives the signal from the far-end terminal device r. m offloading computing tasks to flying drones;
[0028] In the third time slice, the proximal terminal device m offloads its remaining computing tasks to the flying drone;
[0029] In the fourth time slice, the flying UAV offloads the computing tasks from the proximal terminal device m to the stationed UAV;
[0030] In the nth time slot, the remote terminal device r m The number of tasks whose remaining computing tasks are offloaded to the proximal terminal device m It is expressed as:
[0031]
[0032] in, Indicates that the remote terminal device r in the nth time slot m The unloading power, N0 represents the noise power, and B represents the channel bandwidth;
[0033] Remote Terminal Equipment m The energy consumption of offloading its remaining tasks to the proximal terminal device m It is expressed as:
[0034]
[0035] The near-end terminal device m will receive the signal from the far-end terminal device r. m The number of tasks that offload computing tasks to flying drones It is expressed as:
[0036]
[0037] in, Indicates that in the nth time slot, the near-end terminal device m will receive the signal from the far-end terminal device r m offloading computing tasks to the flying drone to offload power;
[0038] The near-end terminal device m will receive the signal from the far-end terminal device r. m The energy consumption of offloading the computing task to the flying drone is
[0039]
[0040] In order to ensure that the near-end terminal device m can transmit the signal from the far-end terminal device r in each time slot m All computational tasks are offloaded to the flying drone, and the following constraints must be met:
[0041]
[0042] make It indicates the number of tasks that the near-end terminal device m offloads part of its own computing tasks to the flying drone in the nth time slot, expressed as:
[0043]
[0044] in, It indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the unloading power of the flying drone;
[0045] In the nth time slot, the proximal terminal device m offloads its remaining computing tasks to the energy consumption of the flying drone. It is expressed as:
[0046]
[0047] The number of tasks that the flying drone offloads from the proximal terminal device m to the stationed drone It is expressed as:
[0048]
[0049] in, represents the unloading power of the flying UAV offloading the computing task from the proximal terminal device m to the stationed UAV in the nth time slot;
[0050] The energy consumption of the flying drone in the nth time slot offloading the computing task from the proximal terminal device m to the stationary drone It is expressed as:
[0051]
[0052] In order to ensure that the flying drone can offload all the computing tasks from the proximal terminal device m to the stationed drone in each time slot, the following constraints must be met:
[0053]
[0054] As a preferred embodiment, the remote terminal device r m The number of local computing tasks and energy consumption Respectively expressed as:
[0055]
[0056] in, Represents the remote terminal device r m The calculation frequency at the nth time slot, Represents the remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computing resources required for a one-bit task;
[0057] The number of tasks computed locally by the proximal terminal device m and energy consumption Respectively expressed as:
[0058]
[0059] Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m represents the effective capacitance coefficient of the near-end terminal device m, C mIt represents the computing resources required to calculate the m-bit task of the near-end terminal device;
[0060] The number of tasks calculated by the flying drone and energy consumption Respectively expressed as:
[0061]
[0062] Among them, f u [n] represents the calculation frequency of the flying drone in the nth time slot, κ u Represents the effective capacitance coefficient of the flying drone;
[0063] Number of missions calculated by stationed drones and energy consumption Respectively expressed as:
[0064]
[0065] Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z represents the effective capacitance coefficient of the parked UAV;
[0066] In any time slot, the flying drone can only process the computing tasks of the remote terminal device that has been received through communication transmission, and the stationed drone can only process the computing tasks of the near-end terminal device that has been received through communication transmission. Based on this, the processing delay of the drone in decoding and computing operations is set to one time slot, which should meet the following constraints:
[0067]
[0068] Remote Terminal Equipment m The total number of bits of the locally computed tasks and the offloaded tasks should be equal to the data size of the computed tasks. The total number of bits of the number of tasks calculated locally and the number of tasks offloaded by the near-end terminal device m should be equal to the data volume of its calculation task They are expressed as follows:
[0069]
[0070] As a preference, in the nth time slot, the flight energy consumption of the flying drone is It is expressed as:
[0071]
[0072] Among them, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.
[0073] Preferably, for the joint optimization problem P1, the number of task assignments L is expressed as:
[0074]
[0075] The CPU calculation frequency F is expressed as:
[0076]
[0077] The flight trajectory of a flying drone is expressed as:
[0078] Q = {q u [n]}.
[0079] Correspondingly, the data model of problem P1 is expressed as:
[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, is the energy consumption of the ground terminal equipment, is the energy consumption of the two drones, ω m and ω u are the weights of energy consumption of the ground terminal equipment and the two UAVs,
[0098] Constraint C1 means that the near-end terminal device m can transmit the data from the far-end terminal device r in each time slot. m All computing tasks are offloaded to the flying drone;
[0099] Constraint C2 indicates that the flying UAV can offload all the computing tasks from the proximal terminal device m to the stationed UAV in each time slot;
[0100] Constraint C3 means that in any time slot, the flying drone can only process the computing tasks of the remote terminal device that have been received through communication transmission;
[0101] Constraint C4 means that in any time slot, the stationed UAV can only process the computational tasks of the proximal terminal device that have been received through communication transmission;
[0102] Constraints C5-C8 indicate that the computing tasks of each near-end terminal device and the 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] Preferably, solving the optimization problem includes the following steps:
[0106] S100, set the iteration number variable t=1, the maximum iteration number t max , iterate the termination thresholds ο1 and ο2, initialize the trajectory Q of the UAV, and decompose the joint optimization problem into two sub-problems through the block coordinate descent method, namely the resource scheduling sub-problem and the UAV trajectory sub-problem. Among them, the resource scheduling sub-problem is represented as problem P1.1, which is used to solve the task quantity allocation and calculation frequency allocation, and the UAV trajectory sub-problem is represented as problem P1.2;
[0107] S200, for problem P1.1, the trajectory Q of the fixed flying drone remains unchanged, the calculation frequency F and the number of task assignments L are optimized, and the iteration parameter b of problem P1.1 is set to 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 by the Lagrangian method to obtain the optimized calculation frequency F and the number of task allocations L;
[0112] S300, based on the optimized calculation frequency F and the number of task assignments L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as:
[0113]
[0114] stC15,C16;
[0115] because The objective function of subproblem P1.2 is non-convex, so a slack variable β[n] is introduced into the objective function of subproblem P1.2 and rewritten as:
[0116]
[0117] And there are additional constraints that need to be met:
[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 is still non-convex, and the continuous convex approximation method is used to solve the non-convex constraint. Since the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side of the expression is convex with respect to v[n], and at a given local point v t Applying the first-order Taylor expansion approximation at [n] as its linear lower bound, the non-convex constraint is transformed into the following:
[0120]
[0121] After the above transformation, the problem P1.2 becomes a convex problem, which is solved by the convex optimization tool CVX to obtain the flight trajectory Q of the flying drone;
[0122] S400: Input the optimized task allocation quantity L, calculation frequency F and flight trajectory Q obtained by step S200 and step S300 into the objective function of the original joint optimization problem to obtain the energy consumption value E. t ;
[0123] S500, update the number of iterations t=t+1;
[0124] S600, input the trajectory Q of the t-th optimized flying drone into step S200, and repeat steps S200 to S500 until |E t -E t-1 |≤o2 or number of iterations t>t max , get the optimal energy consumption value E t .
[0125] Preferably, the Lagrangian method is used to solve the problem P1.1, which includes the following steps:
[0126] L100, define the dual variables γ, ε, ξ and corresponding to the inequality constraints C1-C4 And for the dual variables γ, ε, ξ and Initialize, where γ={γ m,n},ε={ε m,n},ξ={ξ m,n}, Among them, γ m,n represents the dual variable corresponding to the inequality constraint C1, ε m,n represents the dual variable corresponding to the inequality constraint C2, ξ m,n represents the dual variable corresponding to the inequality constraint C3, represents the dual variable corresponding to the inequality constraint C4;
[0127] L200, define the Lagrangian dual variables φ, ρ, χ, and λ corresponding to constraints C5-C8, and solve the values of φ, ρ, χ, and λ by 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 represents the dual variable corresponding to the equality constraint C7, λ m represents the dual variable corresponding to the equality constraint C8;
[0128] L300. Convert problem P1.1 into a Lagrangian problem. The corresponding mathematical model is expressed as:
[0129]
[0130]
[0131] The dual function is expressed as:
[0132]
[0133] stC9-C14;
[0134] L400, based on the KKT condition, solve the optimization parameters of problem P1.2, allocate the task allocation quantity L and the calculation frequency F, and the calculation formula includes the following:
[0135] First equation:
[0136] The second equation:
[0137] The third equation:
[0138] The fourth equation:
[0139]
[0140] The fifth equation:
[0141]
[0142] The sixth equation:
[0143]
[0144] The seventh equation:
[0145] The eighth equation: Among them, [c] + =max(0,c);
[0146] L500, calculate the Lagrangian dual variables γ, ε, ξ and associated with constraints C1-C4 by subgradient methods The calculation formula is as follows:
[0147] In the (b+1)th iteration, the Lagrangian dual variables γ, ε, ξ and Updated to:
[0148]
[0149] in, and represents the step length, They are γ m,n , ε m,n , m,n and The subgradient of is expressed as:
[0150]
[0151] L600, bring the number of tasks L and the calculation frequency F into the objective function of the resource scheduling sub-problem, and get the energy consumption of the resource scheduling sub-problem
[0152] L600, update the iteration variable b=b+1 of the resource scheduling subproblem;
[0153] L700, repeat L100-L600 until the objective function of the resource scheduling sub-problem satisfies Stop the iteration and get the optimal task allocation number L and calculation frequency F.
[0154] As a preference, according to the given values of the dual variables γ and ξ, the values of the dual variables φ and λ corresponding to the constraints C5 and C8 are obtained by binary search, and the solution process is as follows:
[0155] because Based on the first equation and constraint C8, we get λ m range, in
[0156]
[0157] According to 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] The ninth equation:
[0159] The tenth equation: The eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth equation, and the eleventh equation is obtained based on the seventh equation and constraint C5;
[0160] According to the updated values of γ and ξ, φ m Range It can be expressed as:
[0161]
[0162] in, Yes m,nThe minimum value of Yes m,n The maximum value of
[0163] Then we get φ m Range When the tenth equation is equal to the eleventh equation, the value of φ is derived by binary search method, based on the given γ and ξ, the solved φ and λ m Range When the ninth, tenth, and eleventh equations are equal, λ is derived by binary search. m The value of
[0164] Among them, according to the given dual variables ε and The values of the dual variables ρ and χ corresponding to the constraints C6 and C7 are obtained through binary search. The solution process is as follows:
[0165] Because f m [n] ≥ 0, calculate χ based on the second equation and constraint C7 m range, in,
[0166] According to constraints C6 and C7 and the second, fifth and eighth equations, The value of can be expressed as:
[0167] The twelfth equation:
[0168] Equation 13:
[0169]
[0170] The fourteenth equation: The twelfth equation is obtained based on constraint C7, the thirteenth equation is obtained based on the sixth equation, and the fourteenth equation is obtained based on the eighth equation and constraint C6;
[0171] According to the updated ε value and Value, ρ m Range It can be expressed as:
[0172]
[0173] in, is ε m,n The minimum value of is ε m,n The maximum value, ρ m Range When the thirteenth and fourteenth equations are equal, the value of ρ is derived by binary search method, and based on the given ε, When the twelfth, thirteenth, and fourteenth equations are equal, χ is derived by binary search. 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 multiple ground terminal devices are divided into remote terminal devices and near-end terminal devices based on the distance between the ground terminal devices and the parked drones. Each remote terminal device is assigned a near-end terminal device as its relay. The remote terminal device unloads part of its computing tasks to the flying drone for processing under the relay cooperation of the near-end terminal device. The flying drone does not need to fly close to the remote terminal device, which shortens the flight range of the flying drone, reduces the flight energy consumption, and prolongs the working time of the flying drone;
[0176] 2. Build an offloading model based on time division multiple access technology. By dividing time into multiple time slots, multiple ground terminal devices can take turns to send data on the same frequency, effectively utilizing bandwidth, avoiding conflicts between different ground terminal devices, and improving communication reliability.
[0177] 3. The remote terminal device offloads its computing tasks to the flying drone under the relay cooperation of the near-end terminal device, and the computing tasks of the near-end terminal device are transmitted to the stationary drone for processing under the relay cooperation of the flying drone. This avoids the situation where if the remote terminal device and the near-end terminal device process different types of tasks and these tasks are offloaded to the same drone for processing at the same time, the task performance may be reduced or even the task fails due to resource competition and conflict;
[0178] 4. One drone processes the computing tasks of the remote terminal device, and another drone processes the computing tasks of the near-end terminal device. Compared with a single drone that only has one computing task, which may have insufficient computing power, resulting in failure to complete the task in real time or computing delay, the present invention makes full use of the computing resources of all ground terminal devices and two drones, can have higher computing power, and alleviate the pressure of insufficient computing power of a single drone;
[0179] 5. By optimizing the number of offloaded tasks, computing frequency, and flight trajectory of UAVs, the energy consumption of all devices is minimized, the energy efficiency of the entire edge computing system is improved, the service life of the equipment is extended, and the service quality is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0180] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, 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 drawings can be obtained based on these drawings without paying creative work.
[0181] The present invention is further described below in conjunction with the accompanying drawings.
[0182] Figure 1 It is a structural block diagram of an edge computing system in a method for task offloading and resource allocation in multi-UAV mobile edge computing in an embodiment;
[0183] Figure 2 It is a block diagram of the principle of task offloading based on time division multiple access technology in a method for task offloading and resource allocation in multi-UAV mobile edge computing according to an embodiment of the present invention;
[0184] Figure 3 This is a flow chart for solving optimization problems in a method for task offloading and resource allocation in multi-UAV mobile edge computing. DETAILED DESCRIPTION
[0185] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments so that those skilled in the art can better understand the present invention and implement it. 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 may be combined with each other.
[0186] An embodiment of the present invention provides a method for task offloading and resource allocation in multi-UAV mobile edge computing, which is used to solve the technical problems of slow edge computing task processing and high energy consumption caused by different types of computing tasks of different ground terminal devices and limited resources of a single UAV.
[0187] Example:
[0188] The present invention discloses a method for task offloading and resource allocation in multi-UAV mobile edge computing, comprising three steps of constructing an allocation strategy, constructing an optimization problem and solving the optimization problem.
[0189] Step S100 constructs an allocation strategy: based on the distance between the ground terminal device and the parked drone, the multiple ground terminal devices are divided into remote terminal devices and near-end terminal devices, each remote terminal device is assigned a corresponding near-end terminal device as an auxiliary, each remote terminal device performs part of its computing tasks locally, and unloads its remaining computing tasks to the flying drone through the near-end terminal device as its auxiliary, and each near-end terminal device performs part of its computing tasks locally, and unloads its remaining computing tasks to the parked drone through the flying drone relay. Specifically, Figure 1 shown.
[0190] The edge computing system of this embodiment includes two drones and multiple ground terminal devices. The ground control base provides sufficient energy to the parked drones through tethered antennas, and each remote terminal device and proximal terminal device has its own computing tasks to process.
[0191] Step S200 constructs an optimization problem: constructs a system model and a mathematical model of the joint optimization problem, and jointly optimizes the number of task assignments, the calculation frequency, and the flight trajectory of the flying drone to minimize energy consumption, wherein the number of task assignments includes the number of tasks unloaded by each ground terminal device and the flying drone, and the calculation frequency includes the calculation frequency of the CPU when each ground terminal device and each drone performs task calculations.
[0192] In this embodiment, the system model includes a channel model, an unloading model, a calculation model, and a flight energy consumption model of a flying drone. The channel model is used to calculate the channel gain between the remote terminal device and the near-end terminal device, between the near-end terminal device and the flying drone, and between the flying drone and the parked drone; the unloading model is used to calculate the number of tasks unloaded and the energy consumption generated when each ground terminal device and the flying drone perform task unloading; the calculation model is used to calculate the number of tasks calculated and the energy consumption generated when each ground terminal device and each drone perform task calculation.
[0193] As a specific implementation of building the system model, the calculation steps of the channel model, the offloading model and the calculation model are given.
[0194] The construction of the channel model includes the following steps:
[0195] (1) For the overall computing task assigned to each ground terminal device, the completion time T of the overall computing task is set to consist of N identical time slots, and the duration of each time slot is τ = T / N, where τ is selected to be small enough so that the position of the flying drone can be assumed to be roughly unchanged in each time slot. Let Represents a set of N time slots, and the horizontal position of the flying drone can be expressed as q u [n]=(xu [n],y u [n],H1), where the starting position of the flying drone is expressed as The flight end position is represented by make Denotes the speed of the UAV in the nth time slot, let V max represents the maximum speed of the flying drone, so v[n]≤V max ;;
[0196] (2) For multiple ground terminal devices, Represents the collection of proximal terminal devices, represents a set of remote terminal devices assisted by the near-end terminal device, where M = R;
[0197] (3) The flying altitude of the flying drone is set to H1 meters, the hovering altitude of the parked drone is set to H2 meters, and the altitude of each ground terminal device is set to zero. The coordinates of the remote terminal device, the near-end terminal device, and the parked drone are constructed based on the three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are expressed as The coordinates of the near-end terminal device are represented by u m =(x m ,y m ,0), the coordinates of the parked drone are represented as q z =(x z ,y z ,H2);
[0198] (4) Assuming that the wireless channel between the proximal terminal device and the flying UAV and the wireless channel between the flying UAV and the stationed UAV are dominated by the line-of-sight link, in the nth time slot, the channel gain between the proximal terminal device m and the flying UAV and between the flying UAV and the stationed 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 drone in the nth time slot, h0 represents the channel gain at the reference distance d = 1 meter, d 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 UAV and the stationed UAV in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone at the nth time slot;
[0201] (5) Remote terminal equipment m Channel gain between the near-end terminal device m It is expressed as:
[0202]
[0203] Where g0 represents the channel gain at the reference distance d = 1 meter, α represents the path loss coefficient, Represents the remote terminal device r m The distance between the near-end terminal device m.
[0204] Among them, Figure 2 As shown, in this embodiment, an offloading model is constructed based on the time division multiple access technology, including the following steps:
[0205] (1) For the overall computing task assigned 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 perform the computing task processing on 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 Offload its remaining computing tasks to the proximal terminal device m acting as a relay;
[0207] In the second time slice, the near-end terminal device m receives the signal from the far-end terminal device r. m offloading computing tasks to flying drones;
[0208] In the third time slice, the proximal terminal device m offloads its remaining computing tasks to the flying drone;
[0209] In the fourth time slice, the flying UAV offloads the computing tasks from the proximal terminal device m to the stationed UAV;
[0210] (2) In the nth time slot, the remote terminal device r m The number of tasks whose remaining computing tasks are offloaded to the proximal terminal device m It is expressed as:
[0211]
[0212] in, Indicates that the remote terminal device r in the nth time slot m The unloading power, N0 represents the noise power, and B represents the channel bandwidth;
[0213] Remote Terminal Equipment m The energy consumption of offloading its remaining tasks to the proximal terminal device m It is expressed as:
[0214]
[0215] (3) The near-end terminal device m receives the data from the far-end terminal device r. m The number of tasks that offload computing tasks to flying drones It is expressed as:
[0216]
[0217] in, Indicates that in the nth time slot, the near-end terminal device m will receive the signal from the far-end terminal device r m offloading computing tasks to the flying drone to offload power;
[0218] The near-end terminal device m will receive the signal from the far-end terminal device r. m The energy consumption of offloading the computing task to the flying drone is
[0219]
[0220] (4) To ensure that the near-end terminal device m can transmit the data from the far-end terminal device r in each time slot m All computational tasks are offloaded to the flying drone, and the following constraints must be met:
[0221]
[0222] (5) Order It indicates the number of tasks that the near-end terminal device m offloads part of its own computing tasks to the flying drone in the nth time slot, expressed as:
[0223]
[0224] in, It indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the unloading power of the flying drone;
[0225] (6) In the nth time slot, the proximal terminal device m offloads its remaining computing tasks to the energy consumption of the flying drone. It is expressed as:
[0226]
[0227] (7) The number of tasks that the flying drone offloads from the proximal terminal device m to the stationed drone It is expressed as:
[0228]
[0229] in, represents the unloading power of the flying UAV offloading the computing task from the proximal terminal device m to the stationed UAV in the nth time slot;
[0230] The energy consumption of the flying drone in the nth time slot offloading the computing task from the proximal terminal device m to the stationary drone It is expressed as:
[0231]
[0232] (8) In order to ensure that the flying UAV can offload all the computing tasks from the proximal terminal device m to the stationed 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 local computing on part of its computing tasks, and the remaining computing tasks of the remote terminal device are unloaded to the flying drone for processing under the relay cooperation of the near terminal device; the computing tasks of the near terminal device are also divided into two parts: part of the computing tasks of the near terminal device are performed locally, and the remaining computing tasks of the near terminal device are unloaded to the stationed drone for processing under the relay cooperation of the flying drone. The computing model involves the number of tasks calculated by each ground terminal device and each drone when calculating the computing tasks and the energy consumption generated.
[0235] The local computing model of the remote terminal device includes the number of tasks and the energy consumption generated by the local computing of the remote terminal device. m , the number of tasks for local computing and energy consumption Respectively expressed as:
[0236]
[0237] in, Represents the remote terminal device r m The calculation frequency at the nth time slot, Represents the remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computing resources required for a one-bit task.
[0238] The local computing model of the proximal terminal device includes the number of tasks computed locally by the proximal terminal device and the energy consumption generated. For the proximal terminal device m, the number of tasks computed locally is and energy consumption Respectively expressed as:
[0239]
[0240] Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m represents the effective capacitance coefficient of the near-end terminal device m, C m Represents the computing resources required to calculate the m-bit task of the near-end terminal device.
[0241] The computational model of a flying drone includes the number of tasks it calculates and the energy consumption it generates. and energy consumption Respectively expressed as:
[0242]
[0243] Among them, f u [n] represents the calculation frequency of the flying drone in the nth time slot, κ u Represents the effective capacitance coefficient of the flying drone.
[0244] The calculation model of the stationed drone includes the number of tasks it calculates and the energy consumption generated. and energy consumption Respectively expressed as:
[0245]
[0246] Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z Represents the effective capacitance coefficient of the parked drone.
[0247] In any time slot, the flying drone can only process the computing tasks of the remote terminal device that has been received through communication transmission, and the stationed drone can only process the computing tasks of the near-end terminal device that has been received through communication transmission. Based on this, the processing delay of the drone in decoding and computing operations is set to one time slot, which should meet the following constraints:
[0248]
[0249] Remote Terminal Equipment m The total number of bits of the locally computed tasks and the offloaded tasks should be equal to the data size of the computed tasks. The total number of bits of the number of tasks calculated locally and the number of tasks offloaded by the near-end terminal device m should be equal to the data volume of its calculation task They are expressed as follows:
[0250]
[0251] In the nth time slot, the flight energy consumption of the flying drone is It is expressed as:
[0252]
[0253] Among them, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.
[0254] Since the ground control base can directly provide energy for the parked UAV, the optimization of the hovering energy consumption of the parked UAV is not considered.
[0255] Considering that ground terminal devices and drones are usually limited by battery capacity, a major problem faced by drone-assisted mobile edge computing systems is energy. Based on this, in order to minimize the energy consumption required by all ground terminal devices and drones, this embodiment jointly optimizes the number of task assignments, the CPU computing frequency, and the flight trajectory of the flying drone to minimize the energy consumption of ground terminal devices and drones in all edge computing systems. Among them, the number of task assignments L is expressed as:
[0256]
[0257] The calculation frequency F is expressed as:
[0258]
[0259] The flight trajectory Q of the flying drone is expressed 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:
[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, is the energy consumption of the ground terminal equipment, is the energy consumption of the two drones, ω m and ω u are the weights of energy consumption of the ground terminal equipment and the two UAVs,
[0280] Constraint C1 means that the near-end terminal device m can transmit the data from the far-end terminal device r in each time slot. m All computing tasks are offloaded to the flying drone;
[0281] Constraint C2 indicates that the flying UAV can offload all the computing tasks from the proximal terminal device m to the stationed UAV in each time slot;
[0282] Constraint C3 means that in any time slot, the flying drone can only process the computing tasks of the remote terminal device that have been received through communication transmission;
[0283] Constraint C4 means that in any time slot, the stationed UAV can only process the computational tasks of the proximal terminal device that have been received through communication transmission;
[0284] Constraints C5-C8 indicate that the computing tasks of each near-end terminal device and the 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 solves the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two sub-problems, namely the resource scheduling sub-problem and the flying UAV trajectory sub-problem. For the resource scheduling sub-problem, the flight trajectory of the flying UAV is fixed, and the task assignment quantity and calculation frequency are iteratively optimized. For the flying UAV trajectory sub-problem, the flying UAV trajectory is optimized according to the optimized task assignment quantity and 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. The operation in each iteration includes two steps: first, the flight trajectory of the fixed flying drone remains unchanged, and the Lagrangian method is used to optimize the number of task assignments L and the calculation frequency F. Second, according to the optimized number of task assignments L and the calculation frequency F, the flight trajectory of the flying drone is optimized using the successive convex approximation method. Figure 3 As shown, as a specific implementation of solving the optimization problem, the following steps are included:
[0290] S310, set the iteration number variable t=1, the maximum iteration number t max , iterate the termination thresholds ο1 and ο2, initialize the trajectory Q of the UAV, and decompose the joint optimization problem into two sub-problems through the block coordinate descent method, namely the resource scheduling sub-problem and the UAV trajectory sub-problem. Among them, the resource scheduling sub-problem is represented as problem P1.1, which is used to solve the task quantity allocation and calculation frequency allocation, and the UAV trajectory sub-problem is represented as problem P1.2;
[0291] S320, for problem P1.1, the trajectory Q of the fixed flying drone remains unchanged, the calculation frequency F and the number of task assignments L are optimized, and the iteration parameter b of problem P1.1 is set to 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 by the Lagrangian method to obtain the optimized calculation frequency F and the number of task allocations L;
[0296] S330, based on the optimized calculation frequency F and the number of task assignments L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as:
[0297]
[0298] stC15,C16;
[0299] Problem P1.2 is a non-convex problem. After the following transformation, the problem P1.2 is converted into a convex problem and solved by the convex optimization tool CVX to obtain the flight trajectory Q of the flying drone.
[0300] S340, inputting the optimized task allocation quantity L, calculation frequency F and flight trajectory Q obtained by step S320 and step S330 into the objective function of the original joint optimization problem to obtain the energy consumption value E t ;
[0301] S350, update the number of iterations t=t+1;
[0302] S360, input the trajectory Q of the t-th optimized flying drone into step S320, and repeat steps S320 to S350 until |E t -E t-1 |≤o2 or number of iterations t>t max , get the optimal energy consumption value E t .
[0303] Among them, solving problem P1.1 by Lagrangian method includes the following steps:
[0304] L100, define the dual variables γ, ε, ξ and corresponding to the inequality constraints C1-C4 And for the dual variables γ, ε, ξ and Initialize, where γ={γ m,n},ε={ε m,n},ξ={ξ m,n}, γ m,n represents the dual variable corresponding to the inequality constraint C1, ε m,n represents the dual variable corresponding to the inequality constraint C2, ξ m,n represents the dual variable corresponding to the inequality constraint C3, represents the dual variable corresponding to the inequality constraint C4;
[0305] L200, define the Lagrangian dual variables φ, ρ, χ, and λ corresponding to constraints C5-C8, and solve the values of φ, ρ, χ, and λ by 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 represents the dual variable corresponding to the equality constraint C7, λ m represents the dual variable corresponding to the equality constraint C8;
[0306] L300. Convert problem P1.1 into a Lagrangian problem. The corresponding mathematical model is expressed as:
[0307]
[0308] The dual function is expressed as:
[0309]
[0310] stC9-C14;
[0311] L400, based on the KKT condition, solve the optimization parameters of problem P1.2, allocate the task allocation quantity L and the calculation frequency F, and the calculation formula includes the following:
[0312] First equation:
[0313] The second equation:
[0314] The third equation:
[0315] The fourth equation:
[0316]
[0317] The fifth equation:
[0318]
[0319] The sixth equation:
[0320]
[0321] The seventh equation:
[0322] The eighth equation: Among them, [c] +=max(0,c);
[0323] L500, calculate the Lagrangian dual variables γ, ε, ξ and associated with constraints C1-C4 by subgradient methods The calculation formula is as follows:
[0324] In the (b+1)th iteration, the Lagrangian dual variables γ, ε, ξ and Updated to:
[0325]
[0326] in, and represents the step length, They are γ m,n , ε m,n , m,n and The subgradient of is expressed as:
[0327]
[0328] L600, bring the number of tasks L and the calculation frequency F into the objective function of the resource scheduling sub-problem, and get the energy consumption of the resource scheduling sub-problem
[0329] L600, update the iteration variable b=b+1 of the resource scheduling subproblem;
[0330] L700, repeat L100-L600 until the objective function of the resource scheduling sub-problem satisfies Stop the iteration and get the optimal task allocation number L and calculation frequency F.
[0331] For step L200, according to the given values of the dual variables γ and ξ, the values of the dual variables φ and λ corresponding to the constraints C5 and C8 are obtained by binary search. The solution process is as follows:
[0332] (1) Due to f rm [n]≥0, based on the first equation and constraint C8, we get λ m range, in
[0333] (2) According to 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] The ninth equation:
[0335] The tenth equation: The eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth equation, and the eleventh equation is obtained based on the seventh equation and constraint C5;
[0336] (3) According to the updated values of γ and ξ, φ m Range It can be expressed as:
[0337]
[0338] in, Yes m,n The minimum value of Yes m,n The maximum value of
[0339] (4) Then we get φ m Range When the tenth equation is equal to the eleventh equation, the value of φ is derived by binary search method, based on the given γ and ξ, the solved φ and λ m Range When the ninth, tenth, and eleventh equations are equal, λ is derived by binary search. m The value of .
[0340] For step L200, according to the given dual variables ε and The values of the dual variables ρ and χ corresponding to the constraints C6 and C7 are obtained through binary search. The solution process is as follows:
[0341] (1) Due to f m [n] ≥ 0, calculate χ based on the second equation and constraint C7 m range, in,
[0342] (2) According to constraints C6 and C7 and the second, fifth and eighth equations, The value of can be expressed as:
[0343] The twelfth equation:
[0344] Equation 13:
[0345] The fourteenth equation: The twelfth equation is obtained based on constraint C7, the thirteenth equation is obtained based on the sixth equation, and the fourteenth equation is obtained based on the eighth equation and constraint C6;
[0346] (3) According to the updated ε value and Value, ρ m Range It can be expressed as:
[0347]
[0348] in, is ε m,n The minimum value of is ε m,n The maximum value, ρ m Range When the thirteenth and fourteenth equations are equal, the value of ρ is derived by binary search method, and based on the given ε, When the twelfth, thirteenth, and fourteenth equations are equal, χ is derived by binary search. m The value of .
[0349] In step S330, due to The objective function of subproblem P1.2 is non-convex, so a slack variable β[n] is introduced into the objective function of problem P1.2, and the rewrite becomes:
[0350]
[0351] And there are additional constraints that need to be met:
[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 is still non-convex, and the continuous convex approximation method is used to solve the above non-convex constraints. Due to the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side of the 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 to approximate 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 convex optimization tool CVX can be used to solve the trajectory Q of the flying drone.
[0357] According to the method of this embodiment, each remote terminal device and proximal terminal device can use its own computing resources to perform partial local computing of the task, and the remaining computing tasks of the remote terminal device are offloaded to the flying drone for computing under the relay cooperation of the proximal terminal device, and the remaining computing tasks of the proximal terminal device are offloaded to the stationed drone for computing under the relay cooperation of the flying drone. When different types of computing tasks are calculated in the proximal terminal drone and the remote terminal drone, resource competition and conflict caused by a single drone calculating different types of tasks is avoided, and energy consumption caused by a single drone flying to the remote terminal device is avoided.
[0358] The present invention has been shown and described in detail above through 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 can know that the means in the above different embodiments can be combined to obtain more embodiments of the present invention, 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 is applied to two drones and multiple ground terminal devices, wherein one drone is a stationary drone parked in the air and the other drone is a flying drone flying in the air, and a ground control base provides energy to the stationary drone through a tethered antenna. The method comprises the following steps: Constructing an allocation strategy: Based on the distance between the ground terminal device and the parked UAV, the multiple ground terminal devices are divided into remote terminal devices and near-end terminal devices, each remote terminal device is assigned a corresponding near-end terminal device as an assistant, each remote terminal device performs local calculations on part of its computing tasks, and relays the remaining computing tasks to the flying UAV through the near-end terminal device as its assistant, and each near-end terminal device performs local calculations on part of its computing tasks, and relays the remaining computing tasks to the parked UAV through the flying UAV; Constructing the optimization problem: Constructing the system model and the mathematical model of the joint optimization problem, jointly optimizing the number of task assignments, the calculation frequency, and the flight trajectory of the UAV to minimize energy consumption. The number of task assignments includes the number of tasks unloaded by each ground terminal device and the UAV, and the calculation frequency includes the calculation frequency of the CPU when each ground terminal device and each UAV perform task calculations. Solving the optimization problem: Based on the block coordinate descent method, the joint optimization problem is decomposed into two sub-problems, namely the resource scheduling sub-problem and the flying UAV trajectory sub-problem. For the resource scheduling sub-problem, the flight trajectory of the flying UAV is fixed, and the number of task assignments and the calculation frequency are iteratively optimized. For the flying UAV trajectory sub-problem, the flying UAV trajectory is optimized according to the optimized number of task assignments and the calculation frequency.
2. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 1 is characterized in that: The system model includes a channel model, an unloading model, a calculation model, and a flight energy consumption model of the flying UAV; The channel model is used to calculate the channel gain between the remote terminal device and the near-end terminal device, between the near-end terminal device and the flying drone, and between the flying drone and the stationed drone; 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 drone perform task offloading; The calculation model is used to calculate the number of tasks and the energy consumption generated when each ground terminal device and each drone performs task calculations.
3. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 2 is characterized in that: Building a channel model includes the following steps: For the overall computing task assigned to each ground terminal device, 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 selected to be small enough so that the position of the flying drone can be assumed to be roughly unchanged in each time slot. Let Represents a set of N time slots, and the horizontal position of the flying drone can be expressed as q u [n]=(x u [n],y u [n],H1), where the starting position of the flying drone is expressed as The flight end position is represented by make Denotes the speed of the UAV in the nth time slot, let V max represents the maximum speed of the flying drone, so v[n]≤V max ; For multiple ground terminal devices, Represents the collection of proximal terminal devices, represents a set of remote terminal devices assisted by the near-end terminal device, where M = R; The flying altitude of the flying drone is set to H1 meters, the hovering altitude of the parked drone is set to H2 meters, and the altitude of each ground terminal device is set to zero. The coordinates of the remote terminal device, the near-end terminal device, and the parked drone are constructed based on the three-dimensional Cartesian coordinate system. The coordinates of the remote terminal device are expressed as The coordinates of the near-end terminal device are represented by u m =(x m ,y m ,0), the coordinates of the parked drone are represented as q z =(x z ,y z ,H2); Assuming that the wireless channel between the proximal terminal device and the flying UAV and the wireless channel between the flying UAV and the parked UAV are dominated by the line-of-sight link, in the nth time slot, the channel gain between the proximal terminal device m and the flying UAV and between the flying UAV and the parked UAV is expressed as: Among them, h m,u [n] represents the channel gain between the near-end terminal device m and the flying drone in the nth time slot, h0 represents the channel gain at the reference distance d = 1 meter, d 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 UAV and the stationed UAV in the nth time slot, d u,z [n] represents the distance between the flying drone and the stationary drone at the nth time slot; Remote Terminal Equipment m Channel gain between the near-end terminal device m It is expressed as: Where g0 represents the channel gain at the reference distance d = 1 meter, α represents the path loss coefficient, Represents the remote terminal device r m The distance between the near-end terminal device m.
4. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 3 is characterized in that: The offloading model is constructed based on the time division multiple access technology, including the following steps: For the overall computing task assigned 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 perform the processing of the computing task on a near-end terminal device and the 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; In the first time slice, the remote terminal device r m Offload its remaining computing tasks to the proximal terminal device m acting as a relay; In the second time slice, the near-end terminal device m receives the signal from the far-end terminal device r. m offloading computing tasks to flying drones; In the third time slice, the proximal terminal device m offloads its remaining computing tasks to the flying drone; In the fourth time slice, the flying UAV offloads the computing tasks from the proximal terminal device m to the stationed UAV; In the nth time slot, the remote terminal device r m The number of tasks whose remaining computing tasks are offloaded to the proximal terminal device m It is expressed as: in, Indicates that the remote terminal device r in the nth time slot m The unloading power, N0 represents the noise power, and B represents the channel bandwidth; Remote Terminal Equipment m The energy consumption of offloading its remaining tasks to the proximal terminal device m It is expressed as: The near-end terminal device m will receive the signal from the far-end terminal device r. m The number of tasks that offload computing tasks to flying drones It is expressed as: in, Indicates that in the nth time slot, the near-end terminal device m will receive the signal from the far-end terminal device r m offloading computing tasks to the flying drone to offload power; The near-end terminal device m will receive the signal from the far-end terminal device r. m The energy consumption of offloading the computing task to the flying drone is In order to ensure that the near-end terminal device m can transmit the signal from the far-end terminal device r in each time slot m All computational tasks are offloaded to the flying drone, and the following constraints must be met: make It indicates the number of tasks that the near-end terminal device m offloads part of its own computing tasks to the flying drone in the nth time slot, expressed as: in, It indicates that in the nth time slot, the near-end terminal device m offloads part of its own computing tasks to the unloading power of the flying drone; In the nth time slot, the proximal terminal device m offloads its remaining computing tasks to the energy consumption of the flying drone. It is expressed as: The number of tasks that the flying drone offloads from the proximal terminal device m to the stationed drone It is expressed as: in, represents the unloading power of the flying UAV offloading the computing task from the proximal terminal device m to the stationed UAV in the nth time slot; The energy consumption of the flying drone in the nth time slot offloading the computing task from the proximal terminal device m to the stationary drone It is expressed as: In order to ensure that the flying drone can offload all the computing tasks from the proximal terminal device m to the stationed drone in each time slot, the following constraints must be met:
5. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 3 is characterized in that: Remote Terminal Equipment m The number of local computing tasks and energy consumption Respectively expressed as: in, Represents the remote terminal device r m The calculation frequency at the nth time slot, Represents the remote terminal device r m The effective capacitance coefficient, Indicates the calculation of the remote terminal device r m The computing resources required for a one-bit task; The number of tasks computed locally by the proximal terminal device m and energy consumption Respectively expressed as: Among them, f m [n] represents the calculation frequency of the near-end terminal device m in the nth time slot, κ m represents the effective capacitance coefficient of the near-end terminal device m, C m It represents the computing resources required to calculate the m-bit task of the near-end terminal device; The number of tasks calculated by the flying drone and energy consumption Respectively expressed as: Among them, f u [n] represents the calculation frequency of the flying drone in the nth time slot, κ u Represents the effective capacitance coefficient of the flying drone; Number of missions calculated by stationed drones and energy consumption Respectively expressed as: Among them, f z [n] represents the calculation frequency of the parked UAV in the nth time slot, κ z represents the effective capacitance coefficient of the parked UAV; In any time slot, the flying drone can only process the computing tasks of the remote terminal device that has been received through communication transmission, and the stationed drone can only process the computing tasks of the near-end terminal device that has been received through communication transmission. Based on this, the processing delay of the drone in decoding and computing operations is set to one time slot, which should meet the following constraints: Remote Terminal Equipment m The total number of bits of the locally computed tasks and the offloaded tasks should be equal to the data size of the computed tasks. The total number of bits of the number of tasks calculated locally and the number of tasks offloaded by the near-end terminal device m should be equal to the data volume of its calculation task They are expressed as follows:
6. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 5, characterized in that: In the nth time slot, the flight energy consumption of the flying drone is It is expressed as: Among them, ∈1 and ∈2 represent parameters related to the hardware configuration of the flying drone.
7. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 6 is characterized in that: For the joint optimization problem P1, the number of task assignments L is expressed as: The CPU calculation frequency F is expressed as: The flight trajectory of a flying drone is expressed as: Q={q u [n]}。 Correspondingly, the data model of problem P1 is expressed as: st in, is the energy consumption of the ground terminal equipment, is the energy consumption of the two drones, ω m and ω u are the weights of energy consumption of the ground terminal equipment and the two UAVs, Constraint C1 means that the near-end terminal device m can transmit the data from the far-end terminal device r in each time slot. m All computing tasks are offloaded to the flying drone; Constraint C2 indicates that the flying UAV can offload all the computing tasks from the proximal terminal device m to the stationed UAV in each time slot; Constraint C3 means that in any time slot, the flying drone can only process the computing tasks of the remote terminal device that have been received through communication transmission; Constraint C4 means that in any time slot, the stationed UAV can only process the computational tasks of the proximal terminal device that have been received through communication transmission; Constraints C5-C8 indicate that the computing tasks of each near-end terminal device and the 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.
8. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 7, characterized in that: Solving the optimization problem includes the following steps: S100, set the iteration number variable t=1, the maximum iteration number t max , iterate the termination thresholds ο1 and ο2, initialize the trajectory Q of the UAV, and decompose the joint optimization problem into two sub-problems through the block coordinate descent method, namely the resource scheduling sub-problem and the UAV trajectory sub-problem. Among them, the resource scheduling sub-problem is represented as problem P1.1, which is used to solve the task quantity allocation and calculation frequency allocation, and the UAV trajectory sub-problem is represented as problem P1.2; S200, for problem P1.1, the trajectory Q of the fixed flying drone remains unchanged, the calculation frequency F and the number of task assignments L are optimized, and the iteration parameter b of problem P1.1 is set to 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 by the Lagrangian method to obtain the optimized calculation frequency F and the number of task allocations L; S300, based on the optimized calculation frequency F and the number of task assignments L, problem P1.2 is optimized. The mathematical model corresponding to problem P1.2 is expressed as: stC15,C16; because The objective function of subproblem P1.2 is non-convex, so a slack variable β[n] is introduced into the objective function of subproblem P1.2, and rewritten as: And there are additional constraints that need to be met: ||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 is still non-convex, and the continuous convex approximation method is used to solve the non-convex constraint. Since the constraint ||v[n]|| 2 ≥β[n] 2 The left-hand side of the expression is convex with respect to v[n], and at a given local point v t Applying the first-order Taylor expansion approximation at [n] as its linear lower bound, the non-convex constraint is transformed into the following: After the above transformation, the problem P1.2 becomes a convex problem, which is solved by the convex optimization tool CVX to obtain the flight trajectory Q of the flying drone; S400: Input the optimized task allocation quantity L, calculation frequency F and flight trajectory Q obtained by step S200 and step S300 into the objective function of the original joint optimization problem to obtain the energy consumption value E. t ; S500, update the number of iterations t=t+1; S600, input the trajectory Q of the t-th optimized flying drone into step S200, and repeat steps S200 to S500 until |E t -E t-1 |≤o2 or number of iterations t>t max , get the optimal energy consumption value E t .
9. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 8, characterized in that: Solving problem P1.1 by Lagrangian method includes the following steps: L100, define the dual variables γ, ε, ξ and corresponding to the inequality constraints C1-C4 And for the dual variables γ, ε, ξ and Initialize, where γ={γ m,n },ε={ε m,n },ξ={ξ m,n }, Among them, γ m,n represents the dual variable corresponding to the inequality constraint C1, ε m,n represents the dual variable corresponding to the inequality constraint C2, ξ m,n represents the dual variable corresponding to the inequality constraint C3, represents the dual variable corresponding to the inequality constraint C4; L200, define the Lagrangian dual variables φ, ρ, χ, and λ corresponding to constraints C5-C8, and solve the values of φ, ρ, χ, and λ by 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 represents the dual variable corresponding to the equality constraint C7, λ m represents the dual variable corresponding to the equality constraint C8; L300. Convert problem P1.1 into a Lagrangian problem. The corresponding mathematical model is expressed as: The dual function is expressed as: stC9-C14; L400, based on the KKT condition, solve the optimization parameters of problem P1.2, allocate the task allocation quantity L and the calculation frequency F, and the calculation formula includes the following: First equation: The second equation: The third equation: The fourth equation: The fifth equation: The sixth equation: The seventh equation: The eighth equation: Among them, [c] + =max(0,c); L500, calculate the Lagrangian dual variables γ, ε, ξ and associated with constraints C1-C4 by subgradient methods The calculation formula is as follows: In the (b+1)th iteration, the Lagrangian dual variables γ, ε, ξ, and Updated to: in, and represents the step length, They are γ m,n , ε m,n , m,n and The subgradient of is expressed as: L600, bring the number of tasks L and the calculation frequency F into the objective function of the resource scheduling sub-problem, and get the energy consumption of the resource scheduling sub-problem L600, update the iteration variable b=b+1 of the resource scheduling subproblem; L700, repeat L100-L600 until the objective function of the resource scheduling sub-problem satisfies Stop the iteration and get the optimal task allocation number L and calculation frequency F.
10. The method for task offloading and resource allocation in multi-UAV mobile edge computing according to claim 9, characterized in that: According to the given values of the dual variables γ and ξ, the values of the dual variables φ and λ corresponding to the constraints C5 and C8 are obtained through binary search. The solution process is as follows: because Based on the first equation and constraint C8, we get λ m range, in According to constraints C5 and C8, the first equation, the fourth equation, and the seventh equation, The value of can be expressed as the following formula: The ninth equation: The tenth equation: The eleventh equation: Among them, the ninth equation is obtained based on constraint C8, the tenth equation is obtained based on the fourth equation, and the eleventh equation is obtained based on the seventh equation and constraint C5; According to the updated values of γ and ξ, φ m Range It can be expressed as: in, Yes m,n The minimum value of Yes m,n The maximum value of Then we get φ m Range When the tenth equation is equal to the eleventh equation, the value of φ is derived by binary search method, based on the given γ and ξ, the solved φ and λ m Range When the ninth, tenth, and eleventh equations are equal, λ is derived by binary search. m The value of Among them, according to the given dual variables ε and The values of the dual variables ρ and χ corresponding to the constraints C6 and C7 are obtained through binary search. The solution process is as follows: Because f m [n] ≥ 0, calculate χ based on the second equation and constraint C7 m range, in, According to constraints C6 and C7 and the second, fifth and eighth equations, The value of can be expressed as: The twelfth equation: Equation 13: The fourteenth equation: The twelfth equation is obtained based on constraint C7, the thirteenth equation is obtained based on the sixth equation, and the fourteenth equation is obtained based on the eighth equation and constraint C6; According to the updated ε value and Value, ρ m Range It can be expressed as: in, is ε m,n The minimum value of is ε m,n The maximum value, ρ m Range When the thirteenth and fourteenth equations are equal, the value of ρ is derived by binary search method, and based on the given ε, When the twelfth, thirteenth, and fourteenth equations are equal, χ is derived by binary search. m The value of .
Citation Information
Patent Citations
Unmanned aerial vehicle track, user association and resource allocation joint optimization method
CN112995913A
Multi-unmanned aerial vehicle cooperative computing method and system
CN117494473A
Design method of high energy efficiency unmanned aerial vehicle (UAV) green data acquisition system
US20220371730A1
Task offloading and resource allocation method in uncertain network environment
US20240103915A1