Multidimensional resource management methods for drone-assisted edge computing networks
By jointly optimizing the interaction between drones and neighboring base stations, computing services are provided to users in areas with service disruptions. This solves the problem that traditional edge computing systems cannot meet the energy consumption and computing task completion requirements of drone-assisted edge computing networks, thus minimizing system energy consumption and ensuring user service stability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- XIDIAN UNIV
- Filing Date
- 2023-06-15
- Publication Date
- 2026-06-30
AI Technical Summary
Traditional edge computing systems cannot effectively support drone-assisted edge computing networks, especially when the number of users increases, they cannot guarantee that computing tasks will be completed within latency constraints, and the energy consumption of drones cannot meet the long-term service requirements.
By jointly optimizing the relationship between drones and neighboring base stations, computing services are provided to users in areas with service disruptions. The block coordinate descent method is used to iteratively solve the relationship between users and drones, the decision-making process for computation offloading, and the allocation of resources, thereby optimizing the deployment location of drones and reducing system energy consumption.
It improves network stability, meets the service needs of a large number of users, and reduces system energy consumption while meeting the latency constraints of computing tasks, thus providing stable computing services.
Smart Images

Figure CN116669109B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of communication technology, and specifically relates to a multi-dimensional resource management method that can be used for emergency communication and computing services of UAV-assisted edge computing networks under conditions of limited UAV energy consumption. Background Technology
[0002] With the development of 5G mobile communication, emerging applications such as online games and live streaming are constantly appearing, significantly increasing users' demand for computing resources and network infrastructure. Mobile edge computing can effectively alleviate network congestion and improve user experience and overall network performance. Drones have attracted much attention due to their excellent maneuverability, flexible deployment, and high-quality line-of-sight channels. Utilizing the flexible mobility of drones, drones equipped with mobile edge computing servers are expected to provide a more reliable network with lower latency and wider coverage. Conventional edge computing systems typically deploy edge servers on fixed ground infrastructure, but to better support drone-assisted edge computing networks, drones must be deployed more flexibly. Therefore, traditional edge server deployment methods cannot meet the needs of drone-assisted edge computing networks and must be improved. Furthermore, drones have limited battery power, which cannot support long-term hovering and communication computing services. Therefore, compared to traditional edge computing systems, drone-assisted edge computing systems need to be optimized in four dimensions: user-drone association, computation offloading decisions, drone resource allocation, and drone deployment location to reduce energy consumption.
[0003] To ensure service quality for users within the target area and avoid communication interruptions, it is necessary to rationally deploy UAVs based on user location and computing tasks to determine the computation offloading scheme. Zhaohui Yang published "Energy Efficient Resource Allocation in UAV-Enabled Mobile Edge Computing Networks" in IEEE Transactions on Wireless Communications in 2019 [J]. This paper considers a multi-UAV-assisted mobile edge computing network, jointly optimizing user association, power control, computing resource allocation, and location planning to minimize total power consumption. To solve the non-convex problem, this paper proposes a low-complexity algorithm that iteratively optimizes variables. However, since this scheme only considers using multiple UAVs to assist the edge computing network in providing computing services to users, and the actual computing capacity of the edge computing servers carried by UAVs is limited, as the number of users increases, this fixed number of UAVs assisting the edge computing network cannot guarantee that all users' computing tasks can be completed within the latency constraints. Summary of the Invention
[0004] The purpose of this invention is to address the shortcomings of the prior art by proposing a multi-dimensional resource management method for UAV-assisted edge computing networks. This method provides communication and computing services to users in areas with impaired service through the collaboration of UAVs and neighboring base stations. Under the constraints of tolerable latency of computing tasks and the upper limit of UAV computing resources, the method optimizes offloading decisions and deployment schemes based on user location and computing task information to minimize system energy consumption and meet the service needs of a large number of users.
[0005] To achieve the above objectives, the technical solution of the present invention includes the following:
[0006] (1) Initialize parameters:
[0007] (1a) Suppose that N ground users are randomly distributed within a circular fault region Y with radius L, and their set is O = {1, ..., n, ..., N}, and the position of user n is (x n ,y n The computational task that user n needs to complete is A (0, 0). n =(F n D n ,T), where F n D represents the number of CPU revolutions required for the calculation. n This represents the amount of data to be computed, where T is the latency constraint.
[0008] (1b) Let the set of drones be G = {1,…,m,…,M}, where M is the total number of drones, and the coordinates of the m-th drone are (x...). m ,y m H m The depression angle is fixed at θ, and the maximum coverage radius R is H. m tanθ, the maximum number of connected users is U m Its computing resource limit is f m,max Let the coordinates of the neighboring base station be (x0, y0, H0);
[0009] (2) Based on the above initialization parameters, establish the minimum energy consumption problem P:
[0010] P:
[0011]
[0012]
[0013] C3:u mn ≤c mn n∈O, m∈G
[0014]
[0015] C5:c mn d mn ≤R, n∈O, m∈G,
[0016] C6:t n ≤T, n∈O,
[0017] C7:(x m ,y m )∈Y,
[0018] Where C is the association matrix between drones and users, c mn This refers to the element in the m-th row and n-th column of C.
[0019] U is the unloading matrix, u mn This refers to the element in the m-th row and n-th column of U;
[0020] F is the UAV computing resource allocation matrix, f mn Let F be the element in the m-th row and n-th column.
[0021] Z is the position matrix of the UAV;
[0022] The communication energy consumption for user n to send computing tasks to drone m; The computational energy consumption for drone m to complete user n's task. The communication energy consumption of drone m relaying user n's computing tasks to neighboring base stations;
[0023] α represents the weighting coefficient of drone energy consumption compared to user energy consumption, t n Calculate the total time d for user n to complete the task. mn It is the horizontal distance between drone m and user n;
[0024] (3) Determine the four variables C, U, F, and Z for problem P:
[0025] (3a) Solve the initial correlation matrix C between the drone and the user using the kmeans++ algorithm. 0 and the initial position Z of the drone 0 ;
[0026] (3b) According to C 0 and Z 0 Determine the initial unloading strategy matrix U 0 According to U 0 Determine the initial resource allocation plan F 0 ;
[0027] (3c) Let the initial iteration count be k = 1, and the maximum iteration count be k. maxThe values of the four variables C, U, F, and Z are obtained by iteratively solving using the block coordinate descent method.
[0028] (4) Implement a multi-dimensional resource management and control scheme based on the values of C, U, F, and Z:
[0029] (4a) The UAV determines its position according to the deployment matrix Z;
[0030] (4b) Determine the correlation between users and drones based on the correlation matrix C:
[0031] If the element c in the correlation matrix C mn When = 1, user n is associated with drone m, and user n's computation task is transmitted to drone m;
[0032] Otherwise, user n is not associated with drone m;
[0033] (4c) Based on the element values u in the unloading decision matrix U mn Determine the target of the user's computational task:
[0034] If u mn When = 1, then the drone m is assigned according to element f in the resource allocation matrix F. mn Allocate computing resources to users to complete the computing tasks of user n;
[0035] Otherwise, the associated drone will transfer user n's computation task to the neighboring base station, and the neighboring base station will complete the computation task.
[0036] Compared with the prior art, the present invention has the following advantages:
[0037] First, this invention improves network stability and meets the service needs of a large number of users by combining neighboring base stations with stronger computing capabilities with drones to provide communication and computing services to users in areas with damaged services.
[0038] Second, this invention employs a joint optimization method based on block coordinate descent, which transforms the mixed integer nonlinear programming problem, which cannot be solved in polynomial time, into three sub-problems. The association matrix between users and drones, the computation unloading matrix, the resource allocation matrix, and the drone deployment location matrix are solved iteratively to obtain a multi-dimensional resource management scheme for drone-assisted edge computing networks. This can reduce system energy consumption and solve the problem of user service obstruction.
[0039] Simulation results demonstrate that the present invention reduces energy consumption and provides stable service to users while meeting user task latency constraints. Attached Figure Description
[0040] Figure 1 This is a system scenario diagram of the present invention;
[0041] Figure 2 This is a flowchart illustrating the implementation of the present invention;
[0042] Figure 3 This is a comparison chart of the system energy consumption of the present invention and the prior art when the user's tolerable latency is 1-1.5s.
[0043] Figure 4 This is a comparison chart of the task completion rate at different time points when the tolerable latency is 1 second, for the present invention and the prior art. Detailed Implementation
[0044] The embodiments and effects of the present invention will be further described in detail below with reference to the accompanying drawings.
[0045] Reference Figure 1 This example uses a scenario involving two adjacent cellular networks. In one network, a base station fails and cannot provide service to users. A drone equipped with a mobile edge computing server is used as a temporary emergency base station, working in conjunction with a neighboring base station to provide service to users in the affected area. Users forward computing tasks to associated drones, which can perform local computation or relay tasks to neighboring base stations to ensure network stability. Based on information stored in the control center regarding the location of ground users and computing tasks within the service areas of each base station, the number of drones, their deployment locations, and the execution plan for the computing tasks are determined. The entire process is completed in the control center, which then drives the drones to execute the tasks after obtaining the implementation plan.
[0046] Reference Figure 2 The implementation steps of this example include the following:
[0047] Step 1: Initialize parameters.
[0048] against Figure 1 In this use case, initialize the following network parameters:
[0049] (1.1) User-related parameter settings:
[0050] Suppose that N ground users are randomly distributed within a circular fault region Y of radius L, and their set is O = {1, ..., n, ..., N}, where the position of user n is (x n ,y n ,0);
[0051] Suppose that user n needs to complete a computational task A. n =(F n D n ,T), where F n This represents the number of CPU revolutions required for the calculation, measured in cycles; D nThe value represents the amount of data to be computed, in bits; T is the time delay constraint. Without loss of generality, assume that all users must complete their tasks within T, and assume that the ground user equipment does not have the capability to process computing tasks.
[0052] (1.2) Setting parameters related to UAV-assisted network:
[0053] Suppose that M drones equipped with edge computing servers, together with neighboring base stations, provide computing services to users in a faulty area. The set of drones is G = {1,…,m,…,M}, and the coordinates of the m-th drone are (x...m...m). m ,y m H m The depression angle is fixed at θ, and the maximum coverage radius R is H. m tanθ;
[0054] Let U m f is the maximum number of users that drone m can connect to. m,max Let m be the upper limit of computing resources for the drone.
[0055] Let the coordinates of the neighboring base station be (x0, y0, H0).
[0056] Step 2: Establish the minimum energy consumption problem P based on the above initialization parameters.
[0057] (2.1) Based on the position coordinates of user n and drone m, obtain the horizontal distance d between them. mn And the horizontal distance d between the drone m and the neighboring base station mB :
[0058]
[0059]
[0060] (2.2) Based on the horizontal distance d in (2.1) mn And the horizontal distance d between the drone m and the neighboring base station mB A channel model based on free-space path loss is established, namely the channel power gain h from user n to UAV m. mn and the channel power gain h between the drone m and the neighboring base station mB :
[0061]
[0062]
[0063] Where β G2A and β A2A These represent the air-to-ground channel gain and air-to-air channel gain when the reference distance is one meter, respectively.
[0064] (2.3) Based on the channel power gain h from user n to UAV m in (2.2) mn and the channel power gain h between the drone m and the neighboring base station mB Using Shannon's theorem, the transmission rate r from user n to drone m is obtained. mn and the transmission rate r between the drone m and the neighboring base station mB :
[0065]
[0066]
[0067] Where B1 represents the transmission bandwidth between the user and the drone, B2 represents the transmission bandwidth between the drone and the neighboring base station, and P n Let n be the transmit power of user device n. Let m be the transmit power of the UAV, and N0 be the noise power spectral density;
[0068] (2.4) Calculate the communication transmission time when user n sends the computing task to drone m. and communication energy consumption
[0069]
[0070]
[0071] (2.5) Calculate the communication transmission time for UAV m to relay user n's computing task to the neighboring base station. and communication energy consumption
[0072]
[0073]
[0074] (2.6) Calculate the processing time required for drone m to complete user n's task. and calculate energy consumption
[0075]
[0076]
[0077] Among them, f mn ε represents the CPU frequency of the drone m used to calculate user n's task, and ε represents the effective capacitance coefficient of the drone's onboard server chip, reflecting the strength of the device's computing power.
[0078] In this example, but not limited to L = 300 meters, N = 200, Fn =100~200 cycles / bit, D n = [10,800]KB, M = 16, H m =100m, θ=π / 4, R=H m tanθ=100m, β G2A =β A2A =1.42×10 -4 B1 = B2 = 1MHz, ε = 10 -28 , N0 = 10 -20 W / Hz, U m =20, f m,max =2GHz, (x0,y0,H0)=(600,300,100).
[0079] (2.7) Set the following related matrices and variables:
[0080] Let C = [c mn ] M×N For the relationship matrix between drones and users, c mn =1 indicates that user n is associated with drone m, otherwise it is 0;
[0081] Let U = [u mn ] M×N Unload the decision matrix for the user's computation, when c mn =1 and u mn =1 indicates that drone m provides services to user n, c mn =1 and u mn =0 indicates that the associated drone m will transfer the computing task of user n to the neighboring base station, and the neighboring base station will complete the computing task.
[0082] Let F = [f mn ] M×N To compute the resource allocation matrix;
[0083] Let Z = [(x m ,y m )] M×1 This is the position matrix of the UAV;
[0084] Let the total time for the user's computation task to be completed be:
[0085] (2.8) Set constraints:
[0086] Given that a user can only be associated with one drone and all users need to be covered, let the first constraint be:
[0087] A second constraint is set based on the limitation that the number of users connected to each drone cannot exceed the maximum number of connected users.
[0088] Based on the characteristic that drones can only provide services to their associated users, a third constraint is set. mn ≤c mn ;
[0089] A fourth constraint is set based on the limitation that the sum of computing resources allocated by drone m to users within its coverage area does not exceed the maximum value of their computing resources.
[0090] Based on the requirement that the user associated with the drone needs to be within its coverage area, a fifth constraint c is set. mn d mn ≤R;
[0091] Based on the constraint that user n's task completion time does not exceed the maximum tolerable delay, a sixth constraint t is set. n ≤T;
[0092] Based on the constraint that the drone's horizontal position must be within the range of the faulty base station, the seventh constraint (x) is obtained. m ,y m )∈Y;
[0093] (2.9) Combining the above constraints and parameters, the energy consumption minimization problem P can be expressed as follows:
[0094] P:
[0095]
[0096]
[0097] C3:u mn ≤c mn n∈O, m∈G
[0098]
[0099] C5:c mn d mn ≤R, n∈O, m∈G,
[0100] C6:t n ≤T, n∈O,
[0101] C7:(x m ,y m )∈Y,
[0102] Where α represents the weighting coefficient of drone energy consumption compared to user energy consumption.
[0103] Step 3: Determine the four variables C, U, F, and Z for problem P.
[0104] (3.1) Solve the initial correlation matrix C between the drone and the user using the kmeans++ algorithm. 0 and the initial position Z of the drone 0 :
[0105] (3.1.1) Let the initial number of iterations be b = 1, and the maximum number of iterations be b. max =1000;
[0106] (3.1.2) Based on the user location and the number of drones M, the kmeans++ algorithm is used to divide the N users into M classes. The cluster center of each class is the deployment location of the drone, and the user is associated with the cluster center drone of its class.
[0107] (3.1.3) Determine whether the correlation result obtained in step (3.1.2) and the UAV location satisfy the constraints of problem P:
[0108] If satisfied, then we get C. 0 and Z 0 Execute (3.2);
[0109] If the condition is not met, update b = b + 1 and execute (3.1.4);
[0110] (3.1.4) Determine if b < b max Is it true or false?
[0111] If true, return to step (3.1.2);
[0112] Otherwise, initialization fails and the algorithm terminates;
[0113] (3.2) According to C 0 and Z 0 Determine the initial unloading strategy matrix U 0 According to U 0 Determine the initial resource allocation plan F 0 ;
[0114] (3.2.1) According to C 0 and Z 0 The value is used to calculate the communication delay.
[0115] Where, r mn Let n be the transmission rate from user n to drone m;
[0116] (3.2.2) Calculate the maximum time delay of the task. The minimum CPU frequency required for user n to perform calculations at drone m is derived as follows:
[0117] (3.2.3) Associate the user f with the drone m mn,min Sort in ascending order, with drone m executing the first l items and sums not exceeding f. m,max The user's computational tasks, and the drone m and the user's offloading decision u. mn Set to 1, the rest u mn =0, thus obtaining the initial unloading strategy matrix U. 0 =[u mn ] M×N ;
[0118] (3.2.4) According to U 0 element u in mn Calculate F 0 The element in: f mn =u mn f mn,min Finally, the resource allocation matrix F is obtained. 0 =[f mn ] M×N ;
[0119] (3.3) Let the initial iteration count k = 1, and the maximum iteration count be k. max =50, and the values of the four variables C, U, F, and Z are solved iteratively using the block coordinate descent method;
[0120] (3.3.1) Solve for the correlation matrix C between the UAV and the user in the k-th iteration. k :
[0121] Based on the unloading matrix U of the (k-1)th iteration k-1 Resource allocation matrix U k-1 UAV position matrix Z k-1 The problem P is simplified to a problem concerning the incidence matrix C. k 0-1 programming problem P1:
[0122]
[0123] in, C is obtained by solving P1 using the branch and bound method. k That is, the solution is obtained by using library functions for branch and bound methods in simulation software. This example uses, but is not limited to, the intlinprog function in MATLAB.
[0124] (3.3.2) Solve for the unloading matrix U in the k-th iteration. k :
[0125] (3.3.2.1) According to Ck Z k-1 Calculate communication delay Calculate the minimum CPU frequency required for user n to perform calculations at drone m. The problem P is simplified to a problem concerning the unloading matrix U. k 0-1 programming problem P2:
[0126]
[0127] (3.3.2.2) Solve for P2 using the branch and bound method, i.e., using library functions for the branch and bound method in simulation software. In this example, the intlinprog function in MATLAB is used, but not limited to, to obtain the unloading matrix U for the k-th iteration. k ;
[0128] (3.3.3) Solve for the resource allocation matrix F in the k-th iteration. k :
[0129] According to U k element u in mn Find F k The element in: f mn =u mn f mn,min , to obtain F k =[f mn ] M×N ;
[0130] (3.3.4) Solve for the position matrix Z of the UAV in the k-th iteration. k :
[0131] (3.3.4.1) According to C k U k F k The problem P is simplified to a problem concerning the position matrix Z. k Nonlinear programming problem P3:
[0132]
[0133] (3.3.4.2) Decouple P3 into M subproblems, where the m-th subproblem is about the deployment location of the m-th UAV. (P4)
[0134]
[0135] (3.3.4.3) The position (x) of UAV m is obtained by solving P4 using the particle swarm optimization algorithm. m ,y m Finally, the position matrix Z of all UAVs is obtained. k =[(x m ,y m )]M×1 :
[0136] Step 1, Particle Swarm Optimization Initialization:
[0137] First, define the population size of the particle swarm optimization algorithm as NP = 50, initialize the number of iterations as e = 0, and set the maximum number of iterations to e. max =200;
[0138] Secondly, initialize the position vector of particle i according to the following formula. and velocity vector
[0139]
[0140]
[0141] Where i = 1, 2, ..., NP, x min ,x max Let y represent the minimum and maximum x-coordinates of the user associated with drone m, respectively. min ,y max Let v represent the minimum and maximum values of the ordinate of the user associated with drone m, respectively. min ,v max These represent the minimum and maximum values of the particle velocity, respectively -1 and 1;
[0142] Next, calculate the position vector of the i-th particle. fitness value
[0143]
[0144] Finally, initialize the individual's historical best position pbest i And the group's best historical position gbest, that is, the individual best historical position pbest of particle i. i The initial position vector of the particle Select particle j with the lowest fitness value in the population. Let the group's historical best position be gbest
[0145] The second step is to set e = e + 1 and begin the e-th iteration of the particle swarm optimization algorithm:
[0146] First, calculate the current inertia weight w, the individual learning factor η1, and the global learning factor η2:
[0147]
[0148]
[0149]
[0150] Among them, w min and w max These are the minimum inertia weight and the maximum inertia weight, respectively, and are set to 0.4 and 0.9. These are the initial and final values of the individual learning factor η1 and the global learning factor η2, respectively, and these four values are 2.5, 0.5, 1, and 2.25.
[0151] Next, substituting the three current parameters w, η1, and η2 into the following formula, we can calculate the velocity vector of particle i in the e-th iteration. and position vector
[0152]
[0153]
[0154] Next, calculate the position vector of the i-th particle. fitness value
[0155]
[0156] Finally, update the individual's historical best position (pbest). i And the group's best historical position gbest:
[0157] Compare the position vector of each particle i in the e-th iteration. fitness value pbest position in individual history i fitness value fit(pbest) i If the former is smaller, then update the individual's historical best position (pbest). i for:
[0158] Select the particle j with the smallest fitness value in the entire population. And determine the fitness value of particle j. Is the fitness value fit(gbest) less than the population's historical best position gbest? If so, update the population's historical best position gbest to:
[0159] The third step is to determine e. <e max Is it true or false?
[0160] If so, return to step two and continue iterating;
[0161] Otherwise, gbest is the position (x) of drone m.m ,y m );
[0162] (3.3.5) Update k = k + 1, and check if k is greater than k. max :
[0163] If so, then end the coordinate alternation iteration, C k U k F k Z k The values are C, U, F, and Z, which are what we are looking for.
[0164] Otherwise, return to step (3.3.1) to continue solving.
[0165] Step 4: Implement multi-dimensional resource management based on the values of C, U, F, and Z.
[0166] (4.1) The UAV determines its position according to the deployment matrix Z;
[0167] (4.2) Determine the correlation between users and drones based on the correlation matrix C:
[0168] If the element c in the correlation matrix C mn When = 1, user n is associated with drone m, and user n's computation task is transmitted to drone m;
[0169] Otherwise, user n is not associated with drone m;
[0170] (4.3) Based on the element values u in the unloading decision matrix U mn Determine the target of the user's computational task:
[0171] If u mn When = 1, then the drone m is assigned according to element f in the resource allocation matrix F. mn Allocate computing resources to users to complete the computing tasks for user n;
[0172] Otherwise, the associated drone will transfer user n's computation task to the neighboring base station, and the neighboring base station will complete the computation task.
[0173] The technical effects of the present invention will be further explained below with reference to simulation experiments:
[0174] I. Simulation Conditions
[0175] The simulation was conducted using the Matlab 2019 software platform. In a circular area with a radius of 300m, 200 users were randomly distributed within the area.
[0176] Since this invention considers a new scenario, and no existing method can directly solve it, different methods for solving the three parameters of the problem in this scenario, namely the correlation matrix C, the unloading matrix U, and the UAV position Z, are combined. The three simulation comparison methods are shown in the table below:
[0177] Table 1. Three methods used in the simulation.
[0178]
[0179] In the table, RSSI stands for Received Signal Strength Indicator, and PSO stands for Particle Swarm Optimization. RSSI-C indicates that when solving the correlation matrix C, users are associated with UAVs with large RSSI values; prior UAV-U indicates that when solving the unloading matrix U, computational tasks are preferentially unloaded to UAVs for computation; and even-Z indicates that when solving the UAV position Z, UAVs are evenly distributed in the fault area.
[0180] II. Simulation and Content:
[0181] Simulation 1, with tolerable delays of 1-1.5s, simulates the system energy consumption for providing services to users in a specified area using the methods of this invention and the comparison method in Table 1. The results are as follows. Figure 3 As shown.
[0182] from Figure 3 As can be seen, with the increase of tolerable latency, the task completion time acceptable to users increases, computing resources also increase, and there are more possibilities for task completion methods. Therefore, energy consumption decreases as tolerable latency increases. Specifically, the energy consumption of this invention is lower than that of the other comparison algorithms.
[0183] The even-Z algorithm has the highest energy consumption, mainly because the drones in this algorithm are evenly distributed and the deployment location is not optimized according to the user's location and the size of the computing task; the prior UAV-U algorithm is the second highest.
[0184] The energy consumption of RSSI-C is closest to that of this invention. This is because once the drone's location is fixed, the association between the user and the drone can be basically determined due to the influence of the communication radius. Only when a very few users are within the coverage radius of multiple drones at the same time is it necessary to decide which drone to associate with for more energy saving.
[0185] Comparing the energy consumption curves of even-Z and prior UAV-U with those of this invention reveals that optimizing unloading and UAV positioning can significantly reduce energy consumption.
[0186] Simulation 2: When the tolerable latency is 1 second, the task rate of providing services to users in a specified area by the present invention and the comparative method in Table 1 is simulated at different time points. The results are as follows: Figure 4 As shown.
[0187] from Figure 4 It is evident that, at different time points within the tolerable latency, the task completion rate of the present invention is superior to or equal to that of other comparative methods. This is most evident when the tolerable latency is 0.6s, with the present invention having the highest task completion rate, followed by RSSI-C, then prior UAV-U, and even-Z having the lowest task completion rate.
[0188] comprehensive Figure 3 and Figure 4 It can be seen that the present invention can complete the user's task as quickly as possible while ensuring low energy consumption, and provide the user with a good service experience.
Claims
1. A method for multi-dimensional resource management of a UAV-assisted edge computing network, the method comprising: Including the following: (1) Initialize parameters: (1a) Suppose that at a radius of circular fault area Internal random distribution The number of ground users is as follows: ,user The position is ,user The computational task to be completed is as follows: ,in This indicates the number of CPU revolutions required for the calculation. Indicates the amount of data to be calculated. For delay constraints; (1b) Let the set of unmanned aerial vehicles be . , For the total number of drones, the first The coordinates of the drone are The angle of depression is fixed at 100°. Maximum coverage radius for The maximum number of connected users is Its computing resource limit is Let the coordinates of the neighboring base station be... ; (2) Establish the minimum energy consumption problem based on the above initialization parameters. : ; in, A matrix showing the relationship between drones and users. for The first in Line 1 Column elements; For unloading matrix, for The first in Line 1 Column elements; Calculate the resource allocation matrix for the drone. for The first in Line 1 Column elements, This is the position matrix of the UAV; For users Send computing tasks to drones Communication energy consumption; For drones Complete User The computational energy consumption of the task. For drones users The communication energy consumption transferred to neighboring base stations during computing tasks; This represents the weighting factor of drone energy consumption compared to user energy consumption. For users Calculate the total time to complete the task. It is a drone With users The horizontal distance between them; (3) Determine the problem Four variables , , , : (3a) Solve the initial correlation matrix between the UAV and the user using the kmeans++ algorithm. and the initial position of the drone ; (3b) According to and Determine the initial unloading strategy matrix ,according to Determine the initial resource allocation plan ; (3c) Let the number of initial iterations be set. The maximum number of iterations is The block coordinate descent method is used to iteratively solve the problem. Give four variables , , , The value; (4) According to , , , Implement a multi-dimensional resource management and control solution: (4a) The UAVs are deployed according to the matrix Determine your position; (4b) Based on the correlation matrix Determine the association between the user and the drone: If the correlation matrix elements in At that time, the user With drones Associate and link users The computing task is transmitted to the drone. Place; Otherwise, the user With drones No association is established; (4c) Based on the unloading decision matrix element values in Determine the target of the user's computational task: like At that time, it will be carried out by drones. According to the resource allocation matrix elements in Allocate computing resources to users and complete user tasks. The computational task; Otherwise, the user will be transported by the associated drone. The computational task is transferred to the neighboring base station, which then completes the computational task.
2. The method according to claim 1, characterized in that, In step (2), a minimum energy consumption problem is established based on the initialization parameters. The implementation is as follows: (2a) According to the user With drones The position coordinates are used to obtain the horizontal distance between the two. and drones Horizontal distance between neighboring base stations : , ; (2b) Establish a channel model based on free space path loss to obtain user... To drones Channel power gain and drones Channel power gain to neighboring base stations : , , in and These represent the air-to-ground and air-to-air channel gains when the reference distance is one meter, respectively. (2c) Based on the channel power gain in (2b), the user's power gain is obtained using Shannon's theorem. To drones transmission rate and drones Transmission rate to neighboring base stations : , , in This indicates the transmission bandwidth between the user and the drone. This indicates the transmission bandwidth between the drone and its neighboring base station. For users The device's transmission power, For drones The transmission power, The noise power spectral density; (2d) Calculate users Send computing tasks to drones Communication transmission time and communication energy consumption : , ; (2e) Calculating unmanned aerial vehicles users Communication transmission time transferred to neighboring base stations during computation tasks and communication energy consumption : , ; (2c) Calculate the unmanned aerial vehicle Calculate users The time required to process the task and calculate energy consumption : , , in, Indicates drone Distributed to users CPU frequency, This represents the effective capacitance coefficient of the UAV onboard server chip. (2e) Set the following related matrices and variables: set up A matrix showing the relationship between drones and users. Indicates user With drones If associated, then 0; otherwise, set. Unload the decision matrix for the user's computation, when and Indicates drone For users supply Serve, and Indicates associated drones users The computational task is transferred to the neighboring base station, which then completes the computational task. set up To compute the resource allocation matrix; set up This is the position matrix of the UAV; Let the total time for the user's computation task to be completed be: ; (2f) Combining the above parameters, the energy minimization problem can be expressed as: : in, This represents the weighting coefficient of drone energy consumption compared to user energy consumption.
3. The method according to claim 1, characterized in that, In step (3a), the kmeans++ algorithm is used to solve for the initial correlation matrix between the UAV and the user. and the initial position matrix of the drone The implementation is as follows: (3a1) Let the initial number of iterations be... The maximum number of iterations is ; (3a2) Based on user location and number of drones Using the kmeans++ algorithm to Users are divided into Each class has a cluster center that represents the deployment location of the drone, and the user is associated with the drone in the cluster center of their class. (3a3) Determine whether the correlation result obtained in step (3a2) and the UAV location satisfy the problem. The constraints are: if satisfied, then we get and ; If not satisfied, update. , execute (3a4); (3a4) Judgment Is it true or false? If true, return to step (3a2); Otherwise, initialization fails and the algorithm terminates.
4. The method according to claim 1, characterized in that, In step (3b) according to and Determine the initial unloading strategy matrix The implementation is as follows: (3b1) According to and The value is used to calculate the communication delay. : , in, For users To drones The transmission rate; (3b2) Calculate the maximum delay of the task. The user was derived In drones The minimum CPU frequency required for this calculation is ; (3b3) Drones Associated users Sort in ascending order by drone. Before execution The number of items does not exceed The user's computing tasks, and the drone With this uninstallation decisions for individual users Set to 1, the rest The initial unloading strategy matrix is obtained. .
5. The method according to claim 1, characterized in that, In step (3b) according to Determine the initial resource allocation matrix The implementation is as follows: (3b1) According to elements in calculate elements in : , in, For users In drones The minimum CPU frequency required for the calculation; (3b2) According to Finally, the computational resource allocation matrix is obtained. .
6. The method according to claim 1, characterized in that, In step (3c), the four variables are solved iteratively using the block coordinate descent method. , , , The value is implemented as follows: (3c1) Solve for the first... The correlation matrix between the next iteration drone and users : (3c1a) According to the first The unloading matrix of the next iteration Resource allocation matrix UAV position matrix , The problem Simplify to the relationship matrix 0-1 programming problem : , in, ; (3c1b) Using the branch and bound method to... Solving for the results ; (3c2) Solve for the first... The unloading matrix of the next iteration : (3c2a) According to , Calculate communication delay ,calculate , the problem Simplify to the unloading matrix 0-1 programming problem : ; (3c2b) Solve using the branch and bound method get ; (3c3) Solve for the first... Next iteration resource allocation matrix : according to elements in Seeking elements in ; ,get ; (3c4) Solve for the first... The position matrix of the next iteration drone : (3c4a) According to , , , the problem Simplify to a position matrix Nonlinear programming problem : ; (3c4b) will Decoupling The problem consists of several sub-problems, among which the first... The question is about drones. Deployment location issues : , (3c4c) Solved using the particle swarm optimization algorithm Get drone Location Finally, the position matrix of all UAVs was obtained. ; (3c5) Update ,judge Is it greater than : If so, then end the coordinate alternation iteration and obtain the result. , , , The optimal solution; Otherwise, return to step (3c1) to continue solving.
7. The method according to claim 6, characterized in that, Step (3c4c) uses the particle swarm optimization algorithm to solve the problem. Get drone Location The implementation is as follows: Step 1, Particle Swarm Optimization Initialization: First, define the population size for the particle swarm optimization algorithm. Initialize the number of iterations The maximum number of iterations is ; Secondly, initialize the particles according to the following formula. position vector and velocity vector : ; ; in , They represent drones The minimum and maximum values of the x-axis of the associated user. They represent drones The minimum and maximum values of the user's ordinate. These represent the minimum and maximum values of the particle velocity, respectively. Next, calculate the first... Particle position vectors fitness value : ; Finally, initialize the individual's historical best position. and the group's best historical position That is, let the particles The best position in individual history The initial position vector of the particle Select the particle with the lowest fitness value in the population. , This puts the group in its best historical position. for ; The second step is to... , begin the Sub-particle swarm optimization iteration: First, calculate the current inertia weight. Individual learning factor Global learning factor : , , , in, and These are the minimum inertia weight and the maximum inertia weight, respectively. , , , These are individual learning factors and global learning factor The initial and final values; Secondly, the current three parameters , , Substitute into the following formula to calculate the first... Sub-iteration particles velocity vector and position vector : , ; Next, calculate the first... Particle position vectors fitness value : ; Finally, update the individual's historical best position. and the best historical position of the group : Compare each particle No. Next iteration position vector fitness value Best position in individual history fitness value If the former is smaller, then update the individual's historical best position. for: ; Select the particle with the lowest fitness value in the entire population. , And determine the particles fitness value Is it smaller than the population's historical best position? fitness value If so, then the group's best historical position will be determined. Updated to: ; The third step is to determine... Is it true or false? If so, return to step two and continue iterating; otherwise, For drones Location .
8. The method according to claim 6, characterized in that, Step (3c1b) uses the branch and bound method to... Solve and (3c2b) using the branch and bound method. The solutions were obtained using library functions for the branch and bound method in the simulation software.