Edge computing system drone trajectory and user unloading decision optimization method and device

By constructing a joint objective function and using a multi-agent deep reinforcement learning algorithm to optimize drone trajectories and user offloading decisions, the problems of latency and energy consumption in the edge computing system were solved and performance was improved.

CN119580535BActive Publication Date: 2025-09-09GUANGDONG UNIV OF TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411790360.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-09-09
Estimated Expiration
2044-12-06

Smart Images

  • Figure CN119580535B_ABST
    Figure CN119580535B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and device for optimizing drone trajectories and user offloading decisions in an edge computing system. The method addresses the technical problem of poor overall performance of edge computing systems caused by existing research on optimization technologies for drone trajectories and user offloading decisions in edge computing systems. The method includes processing the acquired user drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone to obtain the user drone task delay and user drone task energy consumption. This is then combined with preset offloading decisions and drone physical quantity data to obtain a drone trajectory Markov decision process model and a user offloading decision Markov decision process model. The model is then solved to generate a target drone trajectory flight strategy and a target user offloading decision strategy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of wireless communication technologies, and in particular to a method and device for optimizing drone trajectories and user offloading decisions in an edge computing system. Background Art

[0002] With the surge in the number of end devices, such as cloud-based mobile sensors, tablets, mobile phones, and wearable devices in the Internet of Things, the massive amounts of data generated by these devices require powerful computing capabilities to support intelligent decision-making. Consequently, over the past decade or so, mobile edge computing has become the fastest-growing trend in the telecommunications sector. Edge computing, a computing model that deploys computing, storage, and network resources closer to the data source, differs from traditional cloud computing, which relies on remote data centers for data processing. Edge computing processes data at the "edge" of the network, significantly reducing latency and alleviating the burden on the core network. This makes it particularly suitable for applications with high real-time requirements.

[0003] Due to the rapid development of drone technology, using drones as edge computing servers offers numerous advantages. First, drones can establish shorter line-of-sight (LoS) links, improving link quality. Second, current research on multi-drone systems focuses primarily on motion control, but there is still significant room for improvement in communication optimization. This proposed system focuses on improving user transmission quality. By rationally planning drone flight trajectories, it ensures that communication between users and drones is within line of sight, effectively increasing communication rates.

[0004] Existing research on drone trajectory and user offloading decision optimization technology for edge computing systems mainly focuses on reducing the computing and communication energy consumption of terminal devices. Among them, in order to save the energy consumption of terminal devices, some studies use drones to install energy transmitters to provide computing energy for terminal devices. However, the above method only considers the single factor of energy consumption and does not consider optimizing latency, resulting in poor overall performance of the edge computing system. Summary of the Invention

[0005] The present invention provides a method and device for optimizing drone trajectories and user offloading decisions in an edge computing system, which is used to solve the technical problem that the overall performance of the edge computing system is poor due to existing research on the optimization technology of drone trajectories and user offloading decisions in edge computing systems.

[0006] The first aspect of the present invention provides a method for optimizing drone trajectories and user offloading decisions in an edge computing system, comprising:

[0007] Obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone;

[0008] Determining a user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data, and determining the user drone task energy consumption based on the user drone task delay and the user drone calculation frequency;

[0009] Determining physical quantity data of the drone based on the motion state data and the obstacle position data;

[0010] Based on the preset offloading decision, the task offloading data is determined, and a joint objective function is constructed using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data;

[0011] Transforming the joint objective function to determine a UAV trajectory Markov decision process model and a user uninstallation decision Markov decision process model;

[0012] A multi-agent deep reinforcement learning algorithm is used to optimize and solve the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model respectively, and generate the target UAV trajectory flight strategy and the target user uninstallation decision strategy.

[0013] Optionally, the user drone calculation frequency includes a user calculation frequency and a drone calculation frequency; the motion state data includes drone coordinate data and drone angle data; the user drone task delay includes a user calculation task delay, a drone transmission task delay, and a drone calculation task delay; and determining the user drone task delay based on the user drone calculation frequency, the user-generated task data, the motion state data, and the user coordinate data includes:

[0014] Determine the user drone transmission rate based on the user coordinate data, drone coordinate data, and drone angle data;

[0015] Determining a UAV transmission task delay based on the user UAV transmission rate and the user-generated task data;

[0016] Determining a user computing task delay based on the user-generated task data and the user computing frequency;

[0017] The drone computing task delay is determined based on the drone transmission task delay, the drone computing frequency, and the user-generated task data.

[0018] Optionally, determining the user-drone transmission rate according to the user coordinate data, the drone coordinate data, and the drone angle data includes:

[0019] Calculate the horizontal distance between the user and the drone using the user coordinate data, the drone coordinate data, and the drone angle data;

[0020] Determining the distance between the user and the drone based on the horizontal distance between the user and the drone and the height of the drone in the drone coordinate data;

[0021] Determining a relative position vector between the user and the drone based on the user coordinate data and the drone coordinate data;

[0022] Determining communication status type data between the drone and the user based on the relative position vector between the user and the drone;

[0023] Determining a communication path loss between the user and the drone based on the distance between the user and the drone;

[0024] The preset Shannon formula is used to determine the user-UAV transmission rate according to the communication path loss between the user and the UAV.

[0025] Optionally, the motion state data further includes the drone flight speed and the drone acceleration; the obstacle position data includes the position data of traversable obstacles and the position data of intraversable obstacles; the drone physical quantity data includes the drone flight energy consumption, the drone repulsive acceleration, the drone flight vector, the comprehensive obstacle repulsive potential energy field, and the repulsive potential energy field between drones; the determining of the drone physical quantity data based on the motion state data and the obstacle position data includes:

[0026] Determine a drone flight vector based on the drone coordinate data, the drone angle data, and the drone acceleration;

[0027] Determine the UAV flight energy consumption based on the UAV flight speed;

[0028] Determining the distance between the drone and the insurmountable obstacle based on the drone coordinate data and the insurmountable obstacle position data;

[0029] Determining a distance gradient between the drone and the insurmountable obstacle based on the distance between the drone and the insurmountable obstacle, the drone coordinate data, and the insurmountable obstacle position data;

[0030] Determining a repulsive potential energy field between the drone and the insurmountable obstacle based on a distance between the drone and the insurmountable obstacle;

[0031] Determining that the drone is subjected to an insurmountable repulsive force based on a repulsive potential energy field between the drone and the insurmountable obstacle and a distance gradient between the drone and the insurmountable obstacle;

[0032] Determining the distance between the drone and the traversable obstacle based on the drone coordinate data and the traversable obstacle position data;

[0033] Determining a distance gradient between the drone and the traversable obstacle based on the distance between the drone and the traversable obstacle, the drone coordinate data, and the traversable obstacle position data;

[0034] determining a repulsive potential energy field between the UAV and the traversable obstacle according to a distance between the UAV and the traversable obstacle;

[0035] Determining that the drone is subjected to a traversable repulsive force based on a repulsive potential energy field between the drone and the traversable obstacle and a distance gradient between the drone and the traversable obstacle;

[0036] Adding the repulsive potential energy field between the UAV and the non-crossable obstacle and the repulsive potential energy field between the UAV and the crossable obstacle to determine a comprehensive obstacle repulsive potential energy field;

[0037] Determining a repulsive potential energy field between the drones based on the drone coordinate data;

[0038] determining the repulsive force between the drones based on the repulsive potential energy field between the drones and the drone coordinate data;

[0039] The repulsive acceleration of the drones is determined according to the repulsive force between the drones, the non-crossable repulsive force on the drones, and the crossable repulsive force on the drones.

[0040] Optionally, constructing a joint objective function using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data includes:

[0041] Determining system latency and system energy consumption based on the task offloading data, the user computing task latency, the drone transmission task latency, the drone computing task latency, and the user drone task energy consumption;

[0042] A joint objective function is constructed using the drone altitude in the drone coordinate data, the user drone calculation frequency, the system delay, the system energy consumption, and the drone physical quantity data.

[0043] Optionally, the joint objective function is specifically:

[0044] ;

[0045] in, is the UAV flight vector at time slot t; is the joint objective function in time slot t; T is time; is the weight of system delay; is the system delay in time slot t; is the weight of system energy consumption; is the system energy consumption in time slot t; Calculate the frequency for the nth user in time slot t; Calculate the maximum user frequency for the nth user in time slot t; Calculate the frequency of the drone for the mth drone in time slot t; Calculate the maximum UAV frequency for the mth UAV in time slot t; is the minimum UAV flight speed; is the flight speed of the mth UAV in time slot t; is the maximum UAV flight speed; is the repulsive acceleration of the mth UAV in time slot t; is the maximum UAV repulsive acceleration of the mth UAV in time slot t; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the coordinate data of the mth UAV at time slot t; is the maximum integrated obstacle repulsive potential energy field; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the coordinate data of the kth UAV at time slot t; is the repulsive potential energy field between the largest UAVs; is the minimum drone height; is the altitude of the mth UAV at time slot t; is the maximum drone altitude; is the indicator function; Offload data for the task of the mth UAV in time slot t; N is the total number of users; M is the total number of UAVs.

[0046] The second aspect of the present invention provides an edge computing system drone trajectory and user unloading decision optimization device, comprising:

[0047] An acquisition module is used to obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone;

[0048] a delay energy consumption module, configured to determine a user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data, and determine the user drone task energy consumption based on the user drone task delay and the user drone calculation frequency;

[0049] A physical quantity module, configured to determine physical quantity data of the drone based on the motion state data and the obstacle position data;

[0050] A construction module is configured to determine task offloading data based on a preset offloading decision, and construct a joint objective function using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data;

[0051] a conversion module, configured to convert the joint objective function to determine a Markov decision process model for the UAV trajectory and a Markov decision process model for the user uninstallation decision;

[0052] The solution module is used to optimize and solve the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model respectively using a multi-agent deep reinforcement learning algorithm to generate a target UAV trajectory flight strategy and a target user uninstallation decision strategy.

[0053] The third aspect of the present invention provides a computer device, including a memory and a processor, wherein a computer program is stored in the memory. When the computer program is executed by the processor, the processor executes the steps of the edge computing system drone trajectory and user unloading decision optimization method as described in any one of the above items.

[0054] The fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed, implements the steps of the edge computing system drone trajectory and user unloading decision optimization method as described in any one of the above items.

[0055] A fifth aspect of the present invention provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions, wherein when the program instructions are executed by a computer, the computer executes the steps of the edge computing system drone trajectory and user unloading decision optimization method as described in any one of the above items.

[0056] It can be seen from the above technical solutions that the present invention has the following advantages:

[0057] The above technical solution of the present invention provides an edge computing system drone trajectory and user offloading decision optimization method, first, obtain the user drone calculation frequency, user generated task data, user coordinate data, drone motion state data, and drone corresponding obstacle position data; then, determine the user drone task delay based on the user drone calculation frequency, user generated task data, motion state data, and user coordinate data, and determine the user drone task energy consumption based on the user drone task delay and user drone calculation frequency; determine the drone physical quantity data based on the motion state data and obstacle position data; determine the task offloading data based on the preset offloading decision, and use the drone height, user drone calculation frequency, task offloading data, user drone task delay, user drone task energy consumption, and drone physical quantity data in the drone coordinate data to construct a joint objective function; transform the joint objective function to determine the drone trajectory Markov decision process model and the user offloading decision Markov decision process model; finally, use multiple The intelligent agent deep reinforcement learning algorithm optimizes and solves the drone trajectory Markov decision process model and the user offloading decision Markov decision process model respectively to generate the target drone trajectory flight strategy and the target user offloading decision strategy; based on the above scheme, the obtained user drone calculation frequency, user generated task data, user coordinate data, drone motion state data, and drone corresponding obstacle position data are processed to obtain the user drone task delay and user drone task energy consumption, and then combined with the preset offloading decision and drone physical quantity data to obtain the drone trajectory Markov decision process model and the user offloading decision Markov decision process model, and the model is solved by the multi-agent deep reinforcement learning algorithm to generate the target drone trajectory flight strategy and the target user offloading decision strategy. This process can optimize the drone trajectory to serve the user with better line of sight, and optimize the user's offloading decision to minimize the target, thereby minimizing the delay and energy consumption of the edge computing system, thereby improving the overall performance of the edge computing system. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. 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 any creative work.

[0059] Figure 1 A flowchart of a method for optimizing drone trajectory and user offloading decisions in an edge computing system provided in Example 1 of the present invention;

[0060] Figure 2A schematic diagram of the network architecture of the system model corresponding to the edge computing system drone trajectory and user offloading decision optimization method provided in Example 1 of the present invention;

[0061] Figure 3 This is a diagram of the algorithm network structure of the multi-agent deep reinforcement learning algorithm provided in Example 1 of the present invention;

[0062] Figure 4 This is a structural block diagram of an edge computing system drone trajectory and user unloading decision optimization device provided in Example 2 of the present invention. DETAILED DESCRIPTION

[0063] An embodiment of the present invention provides a method and device for optimizing drone trajectories and user uninstallation decisions in an edge computing system, which is used to solve the technical problem that the overall performance of the edge computing system is poor due to existing research on drone trajectory and user uninstallation decision optimization technologies in edge computing systems.

[0064] In order to make the purpose, features, and advantages of the present invention more obvious and easy to understand, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described below are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.

[0065] See also Figure 1 , Figure 1 This is a flowchart of the steps of a method for optimizing drone trajectories and user offloading decisions in an edge computing system provided in Example 1 of the present invention.

[0066] The present invention provides an edge computing system drone trajectory and user offloading decision optimization method, comprising:

[0067] Step 101: Obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone.

[0068] Please note that Figure 2The system model proposed in this invention consists of a user group consisting of N users and a UAV (Unmanned Aerial Vehicle) cluster consisting of M drones. The user group generates computing tasks and can choose to process them locally or upload them to a UAV edge server with greater computing power for processing. In complex environments, obstructions such as hills, trees, and buildings may cause users to face the challenges of line-of-sight (LoS) and non-line-of-sight (NLoS) transmission when performing transmission tasks. In the framework design of this invention, the communication between UAVs and users is divided into two types: line-of-sight communication and non-line-of-sight communication.

[0069] Step 102: Determine the user drone mission delay based on the user drone calculation frequency, user generated mission data, motion state data, and user coordinate data, and determine the user drone mission energy consumption based on the user drone mission delay and the user drone calculation frequency.

[0070] The user drone computing frequency includes the user computing frequency and the drone computing frequency.

[0071] The motion status data includes drone coordinate data and drone angle data.

[0072] The user drone mission delay includes the user computing task delay, drone transmission task delay and drone computing task delay.

[0073] The task data generated by the user includes the data size of the task and the CPU cycles required to execute each bit of the task.

[0074] It should be noted that the present invention discretizes the time T into t time slots, and the length of each time slot is , ,For user n, , the task it generates in time slot t can be represented by a tuple ,in, Indicates the data size of the task, It represents the CPU cycles required per bit to perform this task. During the T period, the UAV flies above the ground user and provides MEC services.

[0075] Specifically, the process of determining the user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data can be achieved by executing the following steps S21 to S24:

[0076] Step S21: Determine the user drone transmission rate based on the user coordinate data, drone coordinate data, and drone angle data;

[0077] The user coordinate data includes the user horizontal coordinate and the user vertical coordinate.

[0078] The drone coordinate data includes the drone horizontal coordinate, drone vertical coordinate, and drone altitude.

[0079] The drone angle data includes the angle between the drone's flight vector and the direction of gravity and the flight angle between the current drone's plane and the x-axis.

[0080] Furthermore, step S21 may include the following sub-steps S211 to S216:

[0081] Step S211: Calculate the horizontal distance between the user and the drone using the user coordinate data, the drone coordinate data, and the drone angle data;

[0082] It should be noted that the user's horizontal coordinates (i.e. user coordinate data) can be expressed as , is the user horizontal coordinate of the nth user, is the user's vertical coordinate of the nth user, then the distance between user n and the horizontal position of the UAV can be calculated. That is, the calculation process of the distance between the user and the UAV's horizontal position can be expressed as:

[0083] ;

[0084] in, is the horizontal position distance between the m-th UAV and the n-th user at time slot t, and represents the horizontal position distance between the user and the UAV; is the coordinate data of the mth UAV at time slot t; is the angle between the flight vector of the mth UAV at time slot t and the direction of gravity; is the user coordinate data of the nth user in time slot t; is the horizontal coordinate of the m-th UAV in time slot t; is the user horizontal coordinate of the nth user in time slot t; is the vertical coordinate of the mth UAV in time slot t; is the user ordinate of the nth user in time slot t.

[0085] Step S212: Determine the distance between the user and the drone based on the horizontal distance between the user and the drone and the drone's altitude in the drone coordinate data;

[0086] It should be noted that the process of calculating the distance between UAV m and user n, that is, the distance between the user and the UAV, can be expressed as:

[0087] ;

[0088] in, is the distance between the m-th UAV and the n-th user at time slot t, indicating the distance between the user and the UAV; is the horizontal position distance between the m-th UAV and the n-th user at time slot t, and represents the horizontal position distance between the user and the UAV; is the altitude of the mth UAV at time slot t.

[0089] Step S213: Determine the relative position vector between the user and the drone based on the user coordinate data and the drone coordinate data;

[0090] It should be noted that the relative position vector between user n and UAV m in time slot t, that is, the relative position vector between the user and the UAV can be expressed as:

[0091] ;

[0092] in, is the relative position vector between the m-th UAV and the n-th user at time slot t, which represents the relative position vector between the user and the UAV; is the user coordinate data of the nth user in time slot t; is the horizontal coordinate of the m-th UAV in time slot t; is the user horizontal coordinate of the nth user in time slot t; is the vertical coordinate of the mth UAV in time slot t; is the user ordinate of the nth user in time slot t.

[0093] Step S214: Determine the communication status type data between the drone and the user based on the relative position vector between the user and the drone;

[0094] It should be noted that based on the relative position vector of UAV m and user n, the current communication status type between UAV and user can be calculated in the communication environment, that is, the communication status type data between UAV and user. To represent the current communication status between UAV m and user n. When , it means that the two are in line-of-sight communication state; when When , the two are in non-line-of-sight communication state. Among them, when the connection ray between the relative position of UAV m and user n is blocked by an obstacle, then , otherwise ,Right now:

[0095] ;

[0096] in, is the communication status type between the m-th UAV and the n-th user in the t-th time slot, indicating the communication status type data between the UAV and the user; is the position of the i-th intersection point, , is the horizontal coordinate of the i-th intersection point, is the ordinate of the i-th intersection point, is the vertical coordinate of the i-th intersection point; is the set of intersection points between the relative position vector between user n and drone m and the set of occluders in the environment.

[0097] Step S215: Determine the communication path loss between the user and the drone based on the distance between the user and the drone;

[0098] The communication path loss between the user and the UAV includes the path loss between the UAV and the user under line-of-sight communication and the path loss between the UAV and the user under non-line-of-sight communication.

[0099] It should be noted that the path loss between the UAV and the user in line-of-sight communication, that is, the path loss between the UAV and the user in line-of-sight communication can be expressed as:

[0100] ;

[0101] in, is the path loss between the m-th UAV and the n-th user in line-of-sight communication at time slot t, and represents the path loss between the UAV and the user in line-of-sight communication; is the distance between the mth UAV and the nth user in time slot t, indicating the distance between the user and the UAV; c is the wavelength of the signal; For the additional loss of line-of-sight transmission, additional influencing factors such as atmosphere and humidity are taken into account.

[0102] Furthermore, the path loss between the UAV and the user in non-line-of-sight communication can be expressed as:

[0103] ;

[0104] in, is the path loss between the m-th UAV and the n-th user in non-line-of-sight communication at time slot t, and represents the path loss between the UAV and the user in non-line-of-sight communication; is the distance between the mth UAV and the nth user in time slot t, indicating the distance between the user and the UAV; c is the wavelength of the signal; The additional loss for non-line-of-sight transmission takes into account the impact of obstacles.

[0105] Step S216: Determine the user-drone transmission rate using the preset Shannon formula based on the communication path loss between the user and the drone.

[0106] It should be noted that, first, the weighted path loss is determined based on the probabilities of line-of-sight and non-line-of-sight communication and the weighted path loss in these two cases, that is, based on the path loss between the drone and the user in line-of-sight communication and the path loss between the drone and the user in non-line-of-sight communication. This process can be expressed as:

[0107] ;

[0108] in, is the weighted path loss between the m-th UAV and the n-th user in time slot t; is the path loss between the m-th UAV and the n-th user in non-line-of-sight communication at time slot t; is the distance between the m-th UAV and the n-th user at time slot t; is the path loss between the m-th UAV and the n-th user in line-of-sight communication at time slot t; is the communication state type between the m-th UAV and the n-th user in time slot t.

[0109] Next, the channel gain when user n is within the service range of UAVm is calculated, which can be expressed as:

[0110] ;

[0111] in, is the channel gain between the m-th UAV and the n-th user in time slot t; is the weighted path loss between the m-th UAV and the n-th user in time slot t.

[0112] Furthermore, the signal-to-noise ratio (SNR) under the above conditions can be expressed as:

[0113] ;

[0114] in, is the signal-to-noise ratio (SNR) between the m-th UAV and the n-th user in time slot t; is the channel gain between the m-th UAV and the n-th user in time slot t; is the noise power spectral density; B is the communication bandwidth; is the transmission power of the nth user to the mth UAV in time slot t.

[0115] Finally, the communication between the user and the drone uses OFDMA to avoid interference between users. B is the bandwidth of each subchannel, and P is a fixed transmission power. Therefore, the transmission rate between the drone and the user can be obtained according to the Shannon formula, which is:

[0116] ;

[0117] in, is the transmission rate between the m-th UAV and the n-th user in time slot t, which represents the user UAV transmission rate; B is the communication bandwidth; is the signal-to-noise ratio (SNR) between the m-th UAV and the n-th user in time slot t.

[0118] Step S22: Determine the UAV transmission task delay based on the user UAV transmission rate and the user-generated task data;

[0119] It should be noted that the UAV transmission task delay can be expressed as:

[0120] ;

[0121] in, is the communication delay of the mth UAV in time slot t, which represents the UAV transmission task delay; is the data size of the task generated by the nth user in time slot t; is the length of the time slot; is the transmission rate between the m-th UAV and the n-th user in time slot t.

[0122] Step S23: Determine the user computing task delay based on the user generated task data and the user computing frequency;

[0123] It should be noted that the present invention assumes that each user can perform local computing. For user n, the CPU computing frequency can be expressed as , when uninstalling task variables When , the task is calculated locally by user n, and the latency of user local calculation can be expressed as:

[0124] ;

[0125] in, The user computing task latency for the nth user represents the time consumed by user n's local computing. is the data size of the task generated by the nth user in time slot t; The CPU cycles required per bit for the nth user to perform this task in time slot t; Calculate the frequency for the nth user in time slot t; Offload data for the mth UAV’s mission in time slot t.

[0126] Step S24: Determine the drone computing task delay based on the drone transmission task delay, the drone computing frequency, and the user-generated task data.

[0127] It should be noted that the definition is the computing frequency of UAV m, and the computing delay of the task on UAV m, that is, the computing task delay of the UAV can be expressed as:

[0128] ;

[0129] in, is the delay calculated on the mth UAV in the t-time slot task, which represents the UAV calculation task delay; Calculate the frequency of the drone for the mth drone in time slot t; is the communication delay of the mth UAV in time slot t, which represents the UAV transmission task delay.

[0130] Furthermore, the energy consumption of the user UAV task includes the energy consumption of the user computing task, the energy consumption of the UAV computing task, and the energy consumption of the UAV transmission task. The energy consumption of the UAV transmission task is determined according to the UAV transmission task delay. This process can be expressed as:

[0131] ;

[0132] in, is the energy required for communication of the mth UAV in time slot t, which represents the energy consumption of the UAV transmission task; is the communication delay of the mth UAV in time slot t, which represents the UAV transmission task delay; is the data size of the task generated by the nth user in time slot t; is the length of the time slot; is the transmission rate between the m-th UAV and the n-th user in time slot t.

[0133] Furthermore, the power consumption of user local computing can be expressed as:

[0134] ;

[0135] in, The locally calculated power consumption of the nth user in time slot t; The effective capacitance parameter for the user's processor coefficient is determined by the processor architecture; Calculate the frequency for the nth user at time slot t.

[0136] Furthermore, the energy consumption of user computing tasks (energy consumed by local computing) can be expressed as:

[0137] ;

[0138] in, is the energy consumed by the local computation of the nth user in time slot t, which represents the energy consumption of the user’s computation task; The locally calculated power consumption of the nth user in time slot t; The user computing task latency for the nth user, indicating the time consumed by user n's local computing.

[0139] Furthermore, the computational power consumption of UAV m is:

[0140] ;

[0141] in, is the computational power consumption of the mth UAV in time slot t; The effective capacitance parameter for the drone's processor coefficient is determined by the processor architecture; Calculate the frequency of the drone for the mth drone in time slot t.

[0142] Furthermore, the energy consumption of the UAV computing task can be expressed as:

[0143] ;

[0144] in, is the computing energy consumption of the mth UAV in time slot t, which represents the energy consumption of the UAV computing task; is the computational power consumption of the mth UAV in time slot t; is the delay calculated on the mth UAV in the t-time slot task.

[0145] Step 103: Determine the physical quantity data of the UAV based on the motion state data and the obstacle position data.

[0146] The motion state data also includes the drone’s flight speed and drone’s acceleration.

[0147] The obstacle location data includes the location data of surmountable obstacles and the location data of non-surmountable obstacles.

[0148] The physical quantity data of UAV include UAV flight energy consumption, UAV repulsive acceleration, UAV flight vector, comprehensive obstacle repulsive potential energy field and repulsive potential energy field between UAVs.

[0149] The drone angle data includes the angle between the drone's flight vector and the direction of gravity and the flight angle between the current drone's plane and the x-axis.

[0150] Specifically, step 103 may include the following sub-step S31:

[0151] Step S31: determining the UAV flight vector based on the UAV coordinate data, the UAV angle data, and the UAV acceleration;

[0152] It should be noted that the position of UAV m in time slot t can be expressed as ,in, , They are respectively represented as the horizontal and vertical coordinates of UAV m, Indicates the altitude of UAV m. According to the flight angle between the current plane of UAV m and the x-axis direction , drone coordinate data, drone acceleration and the angle between the drone flight vector and the direction of gravity, calculate the drone flight vector , the process can be expressed as:

[0153] in, is the UAV flight vector at time slot t; is the flight speed of the UAV at time slot t-1; is the angle between the flight vector of the mth UAV and the direction of gravity at time slot t-1; is the flight angle between the plane where the mth UAV is located and the x-axis direction at time slot t-1; is the length of the time slot; is the acceleration of the UAV at time slot t; is the angle between the flight vector of the mth UAV at time slot t and the direction of gravity; is the flight angle between the plane where the m-th UAV is located and the x-axis direction at time slot t.

[0154] It is worth mentioning that the position of UAV m at time slot t+1 can be expressed based on the flight angle between the current plane and the x-axis, the flight vector, and the angle between the flight vector and the gravity direction:

[0155] ;

[0156] in, is the horizontal coordinate of the mth UAV at time slot t+1; is the horizontal coordinate of the m-th UAV in time slot t; is the UAV flight vector at time slot t; is the angle between the flight vector of the mth UAV at time slot t and the direction of gravity; is the flight angle between the plane where the m-th UAV is located and the x-axis direction at time slot t; is the vertical coordinate of the mth UAV at time slot t+1; is the vertical coordinate of the mth UAV in time slot t; is the altitude of the mth UAV at time slot t+1; is the altitude of the mth UAV at time slot t.

[0157] Step S32: determining the UAV flight energy consumption based on the UAV flight speed;

[0158] It should be noted that, assuming the flight speed of the UAV m in the present invention is Moreover, the flight of UAV m is not uniform, and it will be affected by external forces during the flight and have a certain acceleration. , , the flight speed of UAV m needs to be less than its maximum flight speed ,Right now:

[0159] ;

[0160] in, is the minimum UAV flight speed; is the flight speed of the UAV in time slot t; is the maximum flight speed of the drone.

[0161] Furthermore, the flight power of UAV m The calculation formula is:

[0162] ;

[0163] in, is the UAV flight power of the mth UAV in time slot t; is the rotor hover power constant; is the flight speed of the UAV in time slot t; is the terminal speed of the rotor; is the vertical descent speed; is the induced power constant, i.e. the power consumption due to air flow; is the drag coefficient of the UAV; is the air density; is the acceleration due to gravity; A is the windward area of ​​the UAV; is the hovering power; is the induced power; is the air resistance power.

[0164] Furthermore, the flight energy consumption of UAV m for:

[0165] ;

[0166] in, is the UAV flight energy consumption of the mth UAV in time slot t; is the UAV flight power of the mth UAV in time slot t; is the length of the time slot.

[0167] Step S33: determining the distance between the drone and the insurmountable obstacle based on the drone coordinate data and the insurmountable obstacle location data;

[0168] It should be noted that artificial potential energy field is a common path planning algorithm that guides objects to avoid obstacles and move towards targets by simulating the concept of electromagnetic fields in physics. Due to the complex environment in which the system model is located and the presence of dynamic obstacles, the UAV may not only collide with high-rise buildings, but the UAV cluster may also collide with each other when performing tasks. In order to avoid the occurrence of collision incidents, the present invention sets a repulsive field in the artificial potential energy field for obstacles to help the UAV avoid obstacles. The present invention creates a flight corridor for the UAV by defining the potential energy field to limit the trajectory of the UAV to a half-space defined by the potential energy field. By constraining the UAV repulsive potential energy field, the UAV is always flying within a safe area. At the same time, the UAVs in the present invention are equipped with sensors. When an obstacle is within the sensor range of the UAV, the obstacle will be given an artificial potential energy field.

[0169] Furthermore, setting is the distance between UAV m and the obstacle, that is, the distance between the UAV and the insurmountable obstacle, which can be expressed as:

[0170] ;

[0171] in, is the distance between the UAV and the insurmountable obstacle, which represents the distance between UAV m and the insurmountable obstacle at time slot t; is the coordinate data of the mth UAV at time slot t; The position data of the obstacle that cannot be crossed.

[0172] Step S34: determining a distance gradient between the UAV and the insurmountable obstacle based on the distance between the UAV and the insurmountable obstacle, the UAV coordinate data, and the insurmountable obstacle position data;

[0173] It should be noted that for the distance between UAV m and the obstacle Gradient We can get:

[0174] ;

[0175] in, is the gradient of the distance between the UAV and the insurmountable obstacle, which represents the gradient of the distance between UAV m and the insurmountable obstacle at time slot t; is the coordinate data of the mth UAV at time slot t; The location data of the insurmountable obstacle; The distance between the drone and the insurmountable obstacle.

[0176] Step S35: determining a repulsive potential energy field between the UAV and the insurmountable obstacle based on the distance between the UAV and the insurmountable obstacle;

[0177] It should be noted that for an insurmountable obstacle, the repulsive potential energy field function between the UAV m and the obstacle, that is, the repulsive potential energy field between the UAV and the insurmountable obstacle can be expressed as:

[0178] ;

[0179] in, is the repulsive potential energy field between the mth UAV and the insurmountable obstacle at time slot t; The strength of the interaction between the drone and the insurmountable obstacle; The distance between the drone and the insurmountable obstacle; is the coordinate data of the mth UAV at time slot t; The location data of the insurmountable obstacle; is the distance threshold of the drone to the insurmountable obstacle; I is the sequence number of the insurmountable obstacle at this time.

[0180] Step S36: Determine that the drone is subjected to an insurmountable repulsive force based on the repulsive potential energy field between the drone and the insurmountable obstacle and the distance gradient between the drone and the insurmountable obstacle;

[0181] It should be noted that for an insurmountable obstacle, the insurmountable repulsive force on UAV m can be expressed as:

[0182] ;

[0183] in, The insurmountable repulsion force on the mth UAV in time slot t represents the insurmountable repulsion force on UAV m for the insurmountable obstacle; is the repulsive potential energy field between the mth UAV and the insurmountable obstacle at time slot t; is the distance gradient between the UAV and the insurmountable obstacle; The strength of the interaction between the drone and the insurmountable obstacle; The distance between the drone and the insurmountable obstacle; is the coordinate data of the mth UAV at time slot t; The location data of the insurmountable obstacle; is the distance threshold of the drone to the insurmountable obstacle; I is the sequence number of the insurmountable obstacle at this time.

[0184] It is worth mentioning that when the distance between the UAV and the insurmountable obstacle is greater than this threshold When , the repulsive potential energy field between the UAV and the insurmountable obstacle is not calculated, otherwise it is calculated.

[0185] Step S37: determining the distance between the drone and the traversable obstacle based on the drone coordinate data and the traversable obstacle position data;

[0186] It should be noted that based on the above-mentioned calculation principle of the distance between the drone and the insurmountable obstacle, the distance between the drone and the surmountable obstacle can be obtained, and the present invention will not elaborate on it in detail.

[0187] Step S38: determining a distance gradient between the UAV and the traversable obstacle based on the distance between the UAV and the traversable obstacle, the UAV coordinate data, and the traversable obstacle position data;

[0188] It should be noted that based on the above-mentioned calculation principle of the distance gradient between the drone and the non-crossable obstacle, the distance gradient between the drone and the crossable obstacle can be obtained, which will not be elaborated in detail in the present invention.

[0189] Step S39: determining the repulsive potential energy field between the UAV and the traversable obstacle based on the distance between the UAV and the traversable obstacle;

[0190] It should be noted that for the potential energy function of the traversable obstacle, the repulsive potential energy function between the UAV m and the obstacle, that is, the repulsive potential energy field between the UAV and the traversable obstacle can be expressed as:

[0191] ;

[0192] in, is the repulsive potential energy field between the mth UAV and the traversable obstacle in time slot t; The position data of the obstacle that can be crossed; The distance threshold for the drone to cross obstacles; is the distance between the UAV and the traversable obstacle, which represents the distance between the UAV m and the traversable obstacle at time slot t; is the interaction strength between the UAV and the traversable obstacle; J is the sequence number of the traversable obstacle.

[0193] Step S310: Determine that the drone is subjected to a traversable repulsive force based on the repulsive potential energy field between the drone and the traversable obstacle and the distance gradient between the drone and the traversable obstacle;

[0194] It should be noted that for a surmountable obstacle, the repulsive force exerted on the UAV m by the surmountable obstacle (the repulsive force exerted on the UAV m by the surmountable obstacle) can be expressed as:

[0195] ;

[0196] in, is the traversable repulsive force exerted on the mth UAV in time slot t, which represents the traversable repulsive force exerted on UAV m for the traversable obstacle; is the gradient of the distance between the UAV and the traversable obstacle, which represents the gradient of the distance between the UAV m and the traversable obstacle at time slot t; The position data of the obstacle that can be crossed; The distance threshold for the drone to cross obstacles; is the distance between the UAV and the traversable obstacle, which represents the distance between the UAV m and the traversable obstacle at time slot t; is the interaction strength between the UAV and the traversable obstacle; J is the sequence number of the traversable obstacle.

[0197] It is worth mentioning that when the distance between the UAV and the traversable obstacle is greater than this threshold When , the repulsive potential energy field between the UAV and the traversable obstacle is not calculated, otherwise it is calculated.

[0198] Step S311: Add the repulsive potential energy field between the drone and the non-crossable obstacle and the repulsive potential energy field between the drone and the crossable obstacle to determine the comprehensive obstacle repulsive potential energy field;

[0199] It should be noted that the comprehensive repulsive potential energy field of the obstacle (comprehensive obstacle repulsive potential energy field) can be expressed as:

[0200] ;

[0201] in, is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the repulsive potential energy field between the mth UAV and the traversable obstacle in time slot t; is the repulsive potential energy field between the mth UAV and the insurmountable obstacle in time slot t.

[0202] Step S312: determining the repulsive potential energy field between the drones based on the drone coordinate data;

[0203] It should be noted that the repulsive potential energy field function between UAVm and UAVk, that is, the repulsive potential energy field between UAVs, can be expressed as:

[0204] ;

[0205] in, is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the interaction strength between UAV m and UAV k; is the threshold for calculating the repulsive potential energy field between drones; M is the total number of drones; is the coordinate data of the mth UAV at time slot t; is the coordinate data of the kth UAV at time slot t; is the distance between the mth UAV and the kth UAV in time slot t, which represents the distance between UAVs.

[0206] It is worth mentioning that when the distance between UAVs is less than or equal to , it is necessary to calculate the repulsive potential energy between UAVs m, k, otherwise it is not necessary.

[0207] Step S313: determining the repulsive force between the UAVs based on the repulsive potential energy field between the UAVs and the coordinate data of the UAVs;

[0208] It should be noted that the repulsive force between UAV m and UAV k is expressed as:

[0209] ;

[0210] in, is the repulsive force between the mth UAV and the kth UAV in time slot t, which represents the repulsive force between UAVs; is the distance gradient between the mth UAV and the kth UAV, which represents the gradient of the distance between UAVs; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the interaction strength between UAV m and UAV k; is the threshold for calculating the repulsive potential energy field between drones; M is the total number of drones; is the coordinate data of the mth UAV at time slot t; is the coordinate data of the kth UAV at time slot t; is the distance between the mth UAV and the kth UAV in time slot t, which represents the distance between UAVs.

[0211] Step S314: Determine the repulsive acceleration of the drones based on the repulsive force between the drones, the non-crossable repulsive force on the drones, and the crossable repulsive force on the drones.

[0212] It should be noted that the sum of the repulsive forces on obstacles can be expressed as:

[0213] ;

[0214] in, is the sum of the crossable repulsion and non-crossable repulsion of the mth UAV in time slot t; The mth UAV in time slot t is subject to the crossable repulsive force; The mth UAV in time slot t is subject to an insurmountable repulsive force.

[0215] Furthermore, the total repulsive force (comprehensive repulsive force) of the repulsive field on UAV m is expressed as:

[0216] ;

[0217] in, is the comprehensive repulsive force on the mth UAV in time slot t; is the repulsive force between the mth UAV and the kth UAV in time slot t, which represents the repulsive force between UAVs; is the sum of the crossable repulsion and the non-crossable repulsion of the mth UAV in time slot t.

[0218] Furthermore, the repulsive acceleration of UAV m can be expressed as:

[0219] ;

[0220] in, is the repulsive acceleration of the mth UAV in time slot t; is the mass of the mth UAV; is the comprehensive repulsive force on the mth UAV in time slot t.

[0221] Step 104: Based on the preset offloading decision, determine the task offloading data, and use the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data to construct a joint objective function.

[0222] It should be noted that, since the present invention considers that users can offload tasks to UAVs or perform local computing in this model, the user's preset offloading decision is used Indicates that The user chooses to perform local computation on the task in time slot t. The time consumed by local computation can be expressed as Indicates that when It means that the user offloads the task to the UAV, and the UAV number unloaded in time slot t is represented by The value is determined, that is, when the task is offloaded to the UAV, The possible values ​​of , when the user chooses to offload the task to the corresponding UAV for calculation in time slot t. It cannot well represent the user's offloading decision in time slot t. Therefore, the present invention introduces an indicator function to distinguish whether the calculation is performed locally or offloaded to the UAV in the user's time slot, namely:

[0223] ;

[0224] in, Offload data for the mth UAV’s mission in time slot t; is the indicator function.

[0225] Furthermore, the process of constructing a joint objective function using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data can be achieved by executing the following steps S41 to S42:

[0226] Step S41: Determine the system delay and system energy consumption based on the task offloading data, the user computing task delay, the drone transmission task delay, the drone computing task delay, and the user drone task energy consumption;

[0227] It should be noted that the time required to execute the task generated by user n in time slot t can be expressed as:

[0228] ;

[0229] in, The time required for the task generated by the nth user in time slot t to be executed; The user computing task latency for the nth user represents the time consumed by user n's local computing. is the task completion time of the mth UAV, including the UAV transmission task delay and the UAV calculation task delay; Offload data for the mth UAV’s mission in time slot t; is the indicator function.

[0230] Furthermore, the optimization objectives of the present invention are divided into two parts, namely, minimizing the delay of the entire system and minimizing the energy consumption of the system, and finding the optimal solutions to the two problems in a weighted manner; for the delay of the entire system , which can be expressed as:

[0231]

[0232] in, is the system delay in time slot t; is the delay calculated on the mth UAV in the t-time slot task; is the delay calculated on the mth UAV in the t-time slot task, which represents the UAV calculation task delay; The time required for the task generated by the nth user in time slot t to be executed; The user computing task latency for the nth user represents the time consumed by user n's local computing. is the task completion time of the mth UAV, including the UAV transmission task delay and the UAV calculation task delay; Offload data for the mth UAV’s mission in time slot t; is the indicator function.

[0233] Furthermore, for the energy consumed by the entire system, that is, the system energy consumption It can be expressed as:

[0234] ;

[0235] in, is the system energy consumption in time slot t; Offload data for the mth UAV’s mission in time slot t; is the indicator function; is the UAV flight energy consumption of the mth UAV in time slot t; is the energy required for communication of the mth UAV in time slot t; The energy consumed by the local calculation for the nth user in time slot t; is the computing energy consumption of the mth UAV in time slot t.

[0236] It is worth mentioning that the joint objective function in time slot t can be expressed as:

[0237] ;

[0238] in, is the joint objective function at time slot t; is the system delay in time slot t; is the system energy consumption in time slot t; is the weight coefficient of system delay; is the weight coefficient of system energy consumption.

[0239] Step S42: Use the drone altitude, user drone calculation frequency, system delay, system energy consumption and drone physical quantity data in the drone coordinate data to construct a joint objective function.

[0240] It should be noted that the joint objective function can be expressed as:

[0241] ;

[0242] in, is the UAV flight vector at time slot t; is the joint objective function in time slot t; T is time; is the weight of system delay; is the system delay in time slot t; is the weight of system energy consumption; is the system energy consumption in time slot t; Calculate the frequency for the nth user in time slot t; Calculate the maximum user frequency for the nth user in time slot t; Calculate the frequency of the drone for the mth drone in time slot t; Calculate the maximum UAV frequency for the mth UAV in time slot t; is the minimum UAV flight speed; is the flight speed of the mth UAV in time slot t; is the maximum UAV flight speed; is the repulsive acceleration of the mth UAV in time slot t; is the maximum UAV repulsive acceleration of the mth UAV in time slot t; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the coordinate data of the mth UAV at time slot t; is the maximum integrated obstacle repulsive potential energy field; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the coordinate data of the kth UAV at time slot t; is the repulsive potential energy field between the largest UAVs; is the minimum drone height; is the altitude of the mth UAV at time slot t; is the maximum drone altitude; is the indicator function; Offload data for the task of the mth UAV in time slot t; N is the total number of users; M is the total number of UAVs.

[0243] Step 105: transform the joint objective function to determine the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model.

[0244] It should be noted that since the optimization objectives and problems are relatively complex and difficult to solve, and the decision variables are coupled, the present invention first transforms the original problem into two sub-problems (the first sub-problem and the second sub-problem) to optimize and solve them separately, respectively optimizing the UAV trajectory and solving the optimal unloading decision of the user group.

[0245] The first sub-problem involves optimizing the trajectory of the UAV:

[0246] ;

[0247] in, is the UAV flight energy consumption of the UAV in time slot t; is the UAV flight vector at time slot t; is the flight speed of the mth UAV in time slot t; is the maximum UAV flight speed; is the repulsive acceleration of the mth UAV in time slot t; is the maximum UAV repulsive acceleration of the mth UAV in time slot t; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the coordinate data of the mth UAV at time slot t; is the maximum integrated obstacle repulsive potential energy field; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the coordinate data of the kth UAV at time slot t; is the repulsive potential energy field between the largest UAVs; is the minimum drone height; is the altitude of the mth UAV at time slot t; is the maximum drone altitude.

[0248] Furthermore, the second sub-problem is to optimize the user's uninstall decision:

[0249] ;

[0250] in, is the computational latency of the computational task; is the computational energy consumption of the computing task; is the total delay of the system; is the total energy consumption of the system; Calculate the frequency for the nth user in time slot t; Calculate the maximum user frequency for the nth user in time slot t; Calculate the frequency of the drone for the mth drone in time slot t; Calculate the maximum UAV frequency for the mth UAV in time slot t.

[0251] Furthermore, since the computation offloading and trajectory planning problems mentioned above are MINLP problems with coupled decision variables, they are difficult to solve using conventional methods. Therefore, using DRL (Deep-Reinforcement-Learning) to optimize the long-term performance of the system is a better solution.

[0252] See also Figure 3 , for these two optimization sub-problems, the optimization objects, i.e., users and UAVs, are heterogeneous. Therefore, the present invention designs two types of agents, users and UAVs. The state space (State) and action space (Action) of each type of agent are designed according to their own optimization goals to optimize the user's unloading decision and the UAV's flight trajectory. This method not only helps the UAV to avoid obstacles in a three-dimensional complex environment, and through continuous interaction with the environment, enables the UAV to learn a better line-of-sight service path for users, but also helps users make optimal unloading decisions for computing tasks of different data sizes. Taking into account that there is also a cooperative and competitive relationship between agents of the same type, the use of the MADDPG algorithm is more helpful in solving the problem. In addition, the present invention has made corresponding improvements to the MADDPG algorithm for the problem raised in this article to help better solve the problem raised in this article; wherein, Figure 3 This is a structural diagram of the algorithm used in the present invention. The algorithm concept of the present invention follows the idea of ​​multi-agent in MADDPG, and improves this algorithm based on the problems raised by the present invention.

[0253] Furthermore, an MDP model generally consists of four basic elements: state, behavior, state transition probability, and reward. In this invention, since the user and UAV only have knowledge of the environment state and no prior knowledge exists, the state transition probability is unknown. The following is an MDP process model for a heterogeneous intelligent agent (user, UAV).

[0254] For the solution of the first sub-problem, it is converted into a UAV trajectory Markov decision process model, which can be represented by a triple:

[0255] ;

[0256] in, is the state set of all user agents; is the action set of all user agents; is the reward value of user agent n; N is the total number of users.

[0257] Furthermore, based on the first sub-problem, the observation value of user n in time slot t contains the relevant parameters of its task and calculation frequency, that is, the state set of each user agent, which can be expressed as ,in, represents the data size of the task generated by user n in time slot t, It represents the size of the local computing frequency of the user in the t time slot. For the UAV in the environment, represents the transmission rate between user n and UAVm, It represents the frequency calculated for UAV m in the environment in time slot t.

[0258] Furthermore, for each user agent's action, based on the user's current task , the unloading decision at time slot t is the user's current action, i.e. For users The value range is ,in, It represents the user performing local computing. It represents the user offloading the computation to UAVm in time slot t.

[0259] Furthermore, since the user's action is discrete, but the MADDPG algorithm is suitable for solving continuous variables, the present invention chooses to map the continuous action value output by the neural network to a discrete space, specifically:

[0260]

[0261] in, Offloading decisions made for the network.

[0262] Furthermore, for user n, the immediate reward after taking action on the computing task within time slot t can be expressed as follows:

[0263] ;

[0264] in, is the reward value of user agent n at time slot t; Offload data for the mth UAV’s mission in time slot t; is the indicator function; is the delay calculated on the mth UAV in the t-time slot task; is the delay calculated on the mth UAV in the t-time slot task, which represents the UAV calculation task delay; The user computing task latency for the nth user represents the time consumed by user n's local computing. is the penalty corresponding to the first subproblem.

[0265] For user n, the penalty term is calculated by the amount of data remaining in time slot t:

[0266] ;

[0267] Among them, penalty n is the penalty corresponding to the first sub-problem; Offload data for the mth UAV’s mission in time slot t; Calculate the frequency for the nth user in time slot t; is the data size of the task generated by the nth user in time slot t; is the transmission rate between the m-th UAV and the n-th user in time slot t; Calculate the frequency of the drone for the mth drone in time slot t.

[0268] Furthermore, the solution to the second sub-problem is also converted into a Markov decision process model for user uninstallation decisions. The specific representation can be represented by a triple:

[0269] ;

[0270] in, is the state set of all UAV agents; is the action set of all drone agents; is the reward value of drone agent m; M is the total number of drones.

[0271] Furthermore, based on the second sub-problem, for the agent UAVm, its observation value in time slot t includes the UAV position, velocity, potential field value, the number of users with line-of-sight transmission, the position of the nearest obstacle, and the position of the nearest user group, that is, .

[0272] Furthermore, in the present invention, the UAV's motion is determined by the acceleration of the UAV in the time slot t, the flight angle between the horizontal plane where the UAV is located and the x-axis direction, and the acceleration of the UAV in the time slot t. Changes in flight vectors Angle with the direction of gravity The change composition of .

[0273] Furthermore, in order to achieve the goal of UAV finding a better line-of-sight service user position in a complex environment and avoiding obstacles during flight, and to solve the reward sparsity problem that may be encountered when the UAV interacts with a single reward signal (simple collision detection or whether it has reached a done state), the present invention draws on the idea of ​​the artificial potential field algorithm to design the reward function for the UAV reward function, and for the purpose of UAV better line-of-sight service users, the number of users with line-of-sight transmission in the UAV time slot t is used as part of the reward design.

[0274] For UAV m, the immediate reward after completing the computation task within time slot t can be expressed as follows:

[0275] ;

[0276] in, is the reward value of the mth drone in time slot t; is the UAV flight energy consumption of the UAV in time slot t; is the weighted coefficient of the reward for the drone’s line-of-sight service quality at this time; Reward for serving users within the drone’s line of sight in time slot t; is the penalty corresponding to the second sub-problem.

[0277] Furthermore, since this model aims to provide better line-of-sight services to users in the environment through 3D path planning of the UAV, the reward function for the UAV is designed with the following additional information:

[0278] ;

[0279] in, Reward for serving users within the drone’s line of sight in time slot t; is the positive constant of the drone's reward in the xy plane direction; is the positive constant of the drone's reward in the z-axis direction; is the angle between UAV m and the horizontal plane of the nearest user group; is the angle between UAV m and the horizontal plane of the nearest user group and the yaw angle of UAV m When the difference is greater than It means that the drone m is moving away from the nearest user; is the angle between drone m and the nearest user group in the Z-axis direction, is the angle between drone m and the nearest user group along the Z axis and the pitch angle of drone m The smaller the difference, the higher the reward obtained by the UAV, taking into account the impact of the action in the z-axis direction.

[0280] It is worth mentioning that the present invention uses Normalizing the denominator ensures that the rewards in both directions are compared on the same scale. This reward design ensures that the UAV m, regardless of its location in the environment, receives a reward based on the quality of its line-of-sight service to the user, avoiding the problem of sparse rewards.

[0281] Furthermore, for The calculation formula is:

[0282] ;

[0283] in, is the penalty corresponding to the second sub-problem; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the penalty weight for the obstacle potential energy field; is the penalty weight of the potential energy field between UAVs; is the penalty weight for UAV speed exceeding the limit; The penalty weight for UAV exceeding the altitude limit.

[0284] It is worth mentioning that as well as represents the potential energy field value between UAV m and obstacles in the environment and the potential energy field value between UAV m and UAV k (k≠m) at time slot t. That is, the smaller the distance between UAV m and obstacles and other UAVs, the greater the penalty will be given to UAV m, and as well as It indicates whether the potential energy field value between the obstacle and different UAVs exceeds the threshold. ,on the contrary , Same thing.

[0285] Furthermore, the potential field penalty term introduced in the present invention is different from the traditional collision penalty. When there is an obstacle within the sensor range of the UAV, the potential field penalty term will continue to penalize the UAV. The present invention not only solves the problem of sparse rewards, but also can make the UAV's flight strategy for different types of obstacles not only determined by the distance to the obstacle, but also give different tolerance levels for different types of obstacles, so that the UAV can find the optimal flight strategy for passing different types of obstacles, and can avoid collisions that may occur between UAVs during flight.

[0286] In addition, the penalty A binary variable indicating whether the speed exceeds the limit, Indicates that the speed exceeds the speed constraint limit, otherwise ,for Similarly, if the UAV flight altitude limit is exceeded, corresponding penalties will be imposed.

[0287] Step 106: Use a multi-agent deep reinforcement learning algorithm to optimize and solve the drone trajectory Markov decision process model and the user uninstall decision Markov decision process model respectively, and generate a target drone trajectory flight strategy and a target user uninstall decision strategy.

[0288] It should be noted that based on the two Markov decision process models established above, the multi-agent deep reinforcement learning algorithm can be used to solve the optimal solution, thereby obtaining the target drone trajectory flight strategy and the target user unloading decision strategy.

[0289] For a comparison of technical performance, we can refer to existing technologies. Using drones as edge computing servers offers numerous advantages. First, drones can establish shorter line-of-sight (LoS) links, thereby improving link quality. Second, current research on multi-drone systems focuses more on motion control, but there is still significant room for improvement in communication optimization. Our proposed system focuses on improving user transmission quality. By rationally planning drone flight trajectories, we strive to ensure that communication between users and drones is within line of sight, effectively increasing communication speeds.

[0290] However, deploying drones in mobile edge computing (MEC) presents significant challenges due to the complexity of the operating environment, the unpredictable distribution of terminal devices, and the impact of UAV flight energy consumption and service latency. Using UAVs as MEC servers requires efficient and effective path planning to address these challenges. During path planning, drones inevitably encounter obstacles. To avoid collisions while seeking the optimal line-of-sight path, this paper introduces an artificial potential field (APF) to constrain the drone's path planning.

[0291] In recent years, artificial potential fields (APFs) have become an important tool for solving drone trajectory planning problems due to their simple principles and efficient computational performance. Based on the concept of potential fields in the physical world, APFs treat the target location as a source of attraction and obstacles as sources of repulsion. The drone flies within this virtual potential field, moving along the direction of the net force, thereby planning a path that avoids obstacles and approaches the target. This paper uses artificial potential fields as a constraint for drone obstacle avoidance, providing a new solution for a three-dimensional trajectory optimization system for drone-assisted edge computing.

[0292] Furthermore, in edge computing scenarios, user terminal devices generate a large number of computing tasks, some of which may need to be offloaded to drones or other edge devices to reduce latency while improving computing efficiency. When supporting these computing tasks, drones must balance the needs of path planning and computation offloading to achieve optimal quality of service. However, due to the heterogeneous and collaborative nature of edge computing systems, drone trajectory planning and computation offloading decisions are highly coupled. The system must not only balance latency and energy consumption, two key performance indicators, but also consider the system's long-term performance.

[0293] Based on the above foundation, existing technologies only consider energy consumption and do not consider optimizing latency. Latency is also an important consideration for system performance in the field of mobile edge computing. At the same time, existing technologies do not take into account the complex environments encountered by UAVs in real situations and the need to avoid obstacles. In addition, existing technologies all use traditional optimization algorithms and do not use the latest artificial intelligence algorithms for solutions.

[0294] To address these issues, this paper proposes a method for optimizing drone trajectories and user offloading decisions in an edge computing system. This method improves overall system performance by optimizing system latency and energy consumption. Users generate computing tasks in each time slot, and appropriate task offloading decisions are made based on the current state. Simultaneously, the UAV optimizes its three-dimensional trajectory to maintain line-of-sight communication with the user and dynamically adjusts to avoid obstacles in the environment. Through joint optimization of the UAV and the user, the system minimizes latency and energy consumption.

[0295] Specifically, the present invention comprehensively considers latency and energy consumption, introduces a parameter between latency and energy consumption to adjust two different dimensions, so that changes of the same order of magnitude are produced in the optimization process, and are not ignored due to the order of magnitude being too small. A multi-agent deep reinforcement learning algorithm is used to solve the user's unloading decision in the model and the UAV's trajectory optimization problem; at the same time, for the trajectory optimization problem, a potential field model is introduced, combined with deep reinforcement learning, to guide the UAV to learn obstacle avoidance in complex environments and improve the possibility of the UAV providing line-of-sight services to users.

[0296] In summary, the present invention takes into account the latency and energy consumption issues under the joint user offloading problem and UAV trajectory problem, and uses a deep reinforcement learning algorithm to optimize the UAV trajectory to provide better line-of-sight services to users, and optimizes the user's offloading decision to minimize the target; at the same time, for the UAV in the system, the state and reward value of the UAV are designed in the deep reinforcement learning algorithm, so that the UAV trajectory planning is more inclined to find a path with better line-of-sight service to users, and through the design of the reward value, it is guaranteed that the UAV can obtain the corresponding reward through the position relationship in real time, thereby avoiding the UAV from falling into the problem of sparse line-of-sight service rewards; secondly, for the UAV group, in the process of optimizing the trajectory of line-of-sight services for users, an artificial potential field combined with deep reinforcement learning is used for three-dimensional path planning, and the real-time artificial potential field value of the UAV is used as part of the UAV reward. The introduced potential field penalty term is different from the traditional penalty for whether a collision occurs. When there is an obstacle within the sensor range of the UAV, the potential field penalty term will continue to penalize the UAV, which not only solves the problem of sparse rewards, but also makes the UAV's flight strategy for different types of obstacles not only determined by the distance to the obstacle through the differences in surmountable, insurmountable, and potential field calculation parameters between different UAVs. Different tolerance levels are given to different types of obstacles, allowing the UAV to find the optimal flight strategy for passing different types of obstacles, and also avoid possible collisions between UAVs during flight; in addition, for the joint optimization problem in the system, by designing the UAV group and the user group as heterogeneous multi-agents, the users and UAVs are set as heterogeneous agent categories in the same environment, and the original problem is split into two sub-problems. Through the interaction of the two types of heterogeneous agents in the same environment, the multi-agent-based deep reinforcement learning algorithm is used to solve the optimal weighted delay and energy consumption.

[0297] In an embodiment of the present invention, the present invention provides an edge computing system drone trajectory and user offloading decision optimization method, first, obtain the user drone calculation frequency, user generated task data, user coordinate data, drone motion state data, and drone corresponding obstacle position data; then, determine the user drone task delay based on the user drone calculation frequency, user generated task data, motion state data, and user coordinate data, and determine the user drone task energy consumption based on the user drone task delay and user drone calculation frequency; determine the drone physical quantity data based on the motion state data and obstacle position data; determine the task offloading data based on the preset offloading decision, and use the drone height in the drone coordinate data, the user drone calculation frequency, task offloading data, user drone task delay, user drone task energy consumption, and drone physical quantity data to construct a joint objective function; transform the joint objective function to determine the drone trajectory Markov decision process model and the user offloading decision Markov decision process model; finally, use The multi-agent deep reinforcement learning algorithm optimizes and solves the drone trajectory Markov decision process model and the user offloading decision Markov decision process model respectively to generate the target drone trajectory flight strategy and the target user offloading decision strategy; based on the above scheme, the obtained user drone calculation frequency, user generated task data, user coordinate data, drone motion state data, and drone corresponding obstacle position data are processed to obtain the user drone task delay and user drone task energy consumption, and then combined with the preset offloading decision and drone physical quantity data to obtain the drone trajectory Markov decision process model and the user offloading decision Markov decision process model, and the model is solved by the multi-agent deep reinforcement learning algorithm to generate the target drone trajectory flight strategy and the target user offloading decision strategy. This process can optimize the drone trajectory to serve the user with better line of sight, and optimize the user's offloading decision to minimize the target, thereby minimizing the delay and energy consumption of the edge computing system, thereby improving the overall performance of the edge computing system.

[0298] See also Figure 4 , Figure 4 This is a structural block diagram of an edge computing system drone trajectory and user unloading decision optimization device provided in Example 2 of the present invention.

[0299] The present invention provides an edge computing system drone trajectory and user unloading decision optimization device, comprising:

[0300] Acquisition module 401 is used to obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone;

[0301] The delay energy consumption module 402 is used to determine the user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data, and determine the user drone task energy consumption based on the user drone task delay and the user drone calculation frequency;

[0302] The physical quantity module 403 is used to determine the physical quantity data of the drone based on the motion state data and the obstacle position data;

[0303] A construction module 404 is configured to determine task offloading data based on a preset offloading decision, and construct a joint objective function using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data;

[0304] A conversion module 405 is used to convert the joint objective function to determine the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model;

[0305] The solution module 406 is used to optimize and solve the drone trajectory Markov decision process model and the user uninstallation decision Markov decision process model respectively using a multi-agent deep reinforcement learning algorithm to generate a target drone trajectory flight strategy and a target user uninstallation decision strategy.

[0306] Furthermore, the user drone calculation frequency includes the user calculation frequency and the drone calculation frequency; the motion state data includes the drone coordinate data and the drone angle data; the user drone task delay includes the user calculation task delay, the drone transmission task delay, and the drone calculation task delay; the delay energy consumption module 402 includes:

[0307] The first submodule is used to determine the user drone transmission rate based on the user coordinate data, the drone coordinate data, and the drone angle data;

[0308] The second submodule is used to determine the UAV transmission task delay based on the user UAV transmission rate and the user-generated task data;

[0309] The third submodule is used to determine the user computing task delay based on the user-generated task data and the user computing frequency;

[0310] The fourth submodule is used to determine the drone computing task delay based on the drone transmission task delay, the drone computing frequency, and the user-generated task data.

[0311] The first submodule is specifically used for:

[0312] The horizontal distance between the user and the drone is calculated using the user coordinate data, the drone coordinate data, and the drone angle data.

[0313] Determine the distance between the user and the drone based on the horizontal distance between the user and the drone and the drone's altitude in the drone's coordinate data;

[0314] Determine the relative position vector between the user and the drone based on the user coordinate data and the drone coordinate data;

[0315] Determine the communication status type data between the drone and the user based on the relative position vector between the user and the drone;

[0316] Determine the communication path loss between the user and the drone based on the distance between the user and the drone;

[0317] The preset Shannon formula is used to determine the user-UAV transmission rate based on the communication path loss between the user and the UAV.

[0318] The motion state data also includes the drone flight speed and drone acceleration; the obstacle position data includes the position data of traversable obstacles and the position data of intraversable obstacles; the drone physical quantity data includes the drone flight energy consumption, drone repulsive acceleration, drone flight vector, comprehensive obstacle repulsive potential energy field, and repulsive potential energy field between drones; the physical quantity module 403 is specifically used to:

[0319] Determine the UAV flight vector based on the UAV coordinate data, UAV angle data and UAV acceleration;

[0320] Determine the UAV flight energy consumption based on the UAV flight speed;

[0321] Determine the distance between the drone and the insurmountable obstacle based on the drone coordinate data and the insurmountable obstacle location data;

[0322] Determine the distance gradient between the UAV and the insurmountable obstacle based on the distance between the UAV and the insurmountable obstacle, the UAV coordinate data, and the insurmountable obstacle position data;

[0323] Based on the distance between the UAV and the insurmountable obstacle, the repulsive potential energy field between the UAV and the insurmountable obstacle is determined;

[0324] According to the repulsive potential energy field between the UAV and the insurmountable obstacle and the distance gradient between the UAV and the insurmountable obstacle, it is determined that the UAV is subjected to an insurmountable repulsive force;

[0325] Determine the distance between the drone and the traversable obstacle based on the drone coordinate data and the traversable obstacle position data;

[0326] Determine the distance gradient between the UAV and the traversable obstacle based on the distance between the UAV and the traversable obstacle, the coordinate data of the UAV, and the position data of the traversable obstacle;

[0327] Determine the repulsive potential energy field between the UAV and the traversable obstacle based on the distance between the UAV and the traversable obstacle;

[0328] According to the repulsive potential energy field between the UAV and the traversable obstacle and the distance gradient between the UAV and the traversable obstacle, it is determined that the UAV is subjected to the traversable repulsive force;

[0329] The repulsive potential energy field between the UAV and the insurmountable obstacle and the repulsive potential energy field between the UAV and the surmountable obstacle are added together to determine the comprehensive obstacle repulsive potential energy field;

[0330] Determine the repulsive potential energy field between drones based on drone coordinate data;

[0331] Determine the repulsive force between the UAVs based on the repulsive potential energy field between the UAVs and the coordinate data of the UAVs;

[0332] The repulsive acceleration of the drones is determined based on the repulsive force between the drones, the insurmountable repulsive force on the drones, and the surmountable repulsive force on the drones.

[0333] Furthermore, the construction module 404 is specifically configured to:

[0334] Determine the system latency and system energy consumption based on task offloading data, user computing task latency, drone transmission task latency, drone computing task latency, and user drone task energy consumption;

[0335] The joint objective function is constructed using the drone altitude, user drone calculation frequency, system delay, system energy consumption and drone physical quantity data in the drone coordinate data.

[0336] Furthermore, the joint objective function is specifically:

[0337] ;

[0338] in, is the UAV flight vector at time slot t; is the joint objective function in time slot t; T is time; is the weight of system delay; is the system delay in time slot t; is the weight of system energy consumption; is the system energy consumption in time slot t; Calculate the frequency for the nth user in time slot t; Calculate the maximum user frequency for the nth user in time slot t; Calculate the frequency of the drone for the mth drone in time slot t; Calculate the maximum UAV frequency for the mth UAV in time slot t; is the minimum UAV flight speed; is the flight speed of the mth UAV in time slot t; is the maximum UAV flight speed; is the repulsive acceleration of the mth UAV in time slot t; is the maximum UAV repulsive acceleration of the mth UAV in time slot t; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the coordinate data of the mth UAV at time slot t; is the maximum integrated obstacle repulsive potential energy field; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the coordinate data of the kth UAV at time slot t; is the repulsive potential energy field between the largest UAVs; is the minimum drone height; is the altitude of the mth UAV at time slot t; is the maximum drone altitude; is the indicator function; Offload data for the task of the mth UAV in time slot t; N is the total number of users; M is the total number of UAVs.

[0339] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices, modules and sub-modules can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0340] An embodiment of the present invention also provides a computer device, including a memory and a processor, wherein a computer program is stored in the memory; when the computer program is executed by the processor, the processor executes the steps of the edge computing system drone trajectory and user unloading decision optimization method as in any of the above embodiments.

[0341] An embodiment of the present invention also provides a computer-readable storage medium having a computer program / instruction stored thereon. When the computer program / instruction is executed by a processor, the steps of the edge computing system drone trajectory and user unloading decision optimization method as in any of the above embodiments are implemented.

[0342] An embodiment of the present invention also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the edge computing system drone trajectory and user unloading decision optimization method as in any of the above embodiments.

[0343] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0344] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0345] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features thereof can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for optimizing drone trajectory and user offloading decisions in an edge computing system, characterized in that: include: Obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone; Determining a user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data, and determining the user drone task energy consumption based on the user drone task delay and the user drone calculation frequency; Determining physical quantity data of the drone based on the motion state data and the obstacle position data; Based on the preset offloading decision, the task offloading data is determined, and a joint objective function is constructed using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data; Transforming the joint objective function to determine a UAV trajectory Markov decision process model and a user uninstallation decision Markov decision process model; A multi-agent deep reinforcement learning algorithm is used to optimize and solve the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model respectively, and generate the target UAV trajectory flight strategy and the target user uninstallation decision strategy.

2. The edge computing system drone trajectory and user offloading decision optimization method according to claim 1 is characterized in that: The user drone calculation frequency includes user calculation frequency and drone calculation frequency; the motion state data includes drone coordinate data and drone angle data; the user drone task delay includes user calculation task delay, drone transmission task delay and drone calculation task delay; The determining of the user drone task delay according to the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data includes: Determine the user drone transmission rate based on the user coordinate data, drone coordinate data, and drone angle data; Determining a UAV transmission task delay based on the user UAV transmission rate and the user-generated task data; Determining a user computing task delay based on the user-generated task data and the user computing frequency; The drone computing task delay is determined based on the drone transmission task delay, the drone computing frequency, and the user-generated task data.

3. The edge computing system drone trajectory and user offloading decision optimization method according to claim 2 is characterized in that: Determining the user-drone transmission rate according to the user coordinate data, the drone coordinate data, and the drone angle data includes: Calculate the horizontal distance between the user and the drone using the user coordinate data, the drone coordinate data, and the drone angle data; Determining the distance between the user and the drone based on the horizontal distance between the user and the drone and the height of the drone in the drone coordinate data; Determining a relative position vector between the user and the drone based on the user coordinate data and the drone coordinate data; Determining communication status type data between the drone and the user based on the relative position vector between the user and the drone; Determining a communication path loss between the user and the drone based on the distance between the user and the drone; The preset Shannon formula is used to determine the user-UAV transmission rate according to the communication path loss between the user and the UAV.

4. The edge computing system drone trajectory and user offloading decision optimization method according to claim 2 is characterized in that: The motion state data also includes the drone flight speed and the drone acceleration; the obstacle position data includes the position data of traversable obstacles and the position data of intraversable obstacles; the drone physical quantity data includes the drone flight energy consumption, the drone repulsive acceleration, the drone flight vector, the comprehensive obstacle repulsive potential energy field, and the repulsive potential energy field between drones; the determination of the drone physical quantity data based on the motion state data and the obstacle position data includes: Determine a drone flight vector based on the drone coordinate data, the drone angle data, and the drone acceleration; Determine the UAV flight energy consumption based on the UAV flight speed; Determining the distance between the drone and the insurmountable obstacle based on the drone coordinate data and the insurmountable obstacle position data; Determining a distance gradient between the drone and the insurmountable obstacle based on the distance between the drone and the insurmountable obstacle, the drone coordinate data, and the insurmountable obstacle position data; Determining a repulsive potential energy field between the drone and the insurmountable obstacle based on a distance between the drone and the insurmountable obstacle; Determining that the drone is subjected to an insurmountable repulsive force based on a repulsive potential energy field between the drone and the insurmountable obstacle and a distance gradient between the drone and the insurmountable obstacle; Determining the distance between the drone and the traversable obstacle based on the drone coordinate data and the traversable obstacle position data; Determining a distance gradient between the drone and the traversable obstacle based on the distance between the drone and the traversable obstacle, the drone coordinate data, and the traversable obstacle position data; determining a repulsive potential energy field between the UAV and the traversable obstacle according to a distance between the UAV and the traversable obstacle; Determining that the drone is subjected to a traversable repulsive force based on a repulsive potential energy field between the drone and the traversable obstacle and a distance gradient between the drone and the traversable obstacle; Adding the repulsive potential energy field between the UAV and the non-crossable obstacle and the repulsive potential energy field between the UAV and the crossable obstacle to determine a comprehensive obstacle repulsive potential energy field; Determining a repulsive potential energy field between the drones based on the drone coordinate data; determining the repulsive force between the drones based on the repulsive potential energy field between the drones and the drone coordinate data; The repulsive acceleration of the drones is determined according to the repulsive force between the drones, the non-crossable repulsive force on the drones, and the crossable repulsive force on the drones.

5. The edge computing system drone trajectory and user offloading decision optimization method according to claim 2 is characterized in that: The method of constructing a joint objective function by using the drone height in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data includes: Determining system latency and system energy consumption based on the task offloading data, the user computing task latency, the drone transmission task latency, the drone computing task latency, and the user drone task energy consumption; A joint objective function is constructed using the drone altitude in the drone coordinate data, the user drone calculation frequency, the system delay, the system energy consumption, and the drone physical quantity data.

6. The edge computing system drone trajectory and user offloading decision optimization method according to claim 4 is characterized in that: The joint objective function is specifically: ; in, is the UAV flight vector at time slot t; is the joint objective function in time slot t; T is time; is the weight of system delay; is the system delay in time slot t; is the weight of system energy consumption; is the system energy consumption in time slot t; Calculate the frequency for the nth user in time slot t; Calculate the maximum user frequency for the nth user in time slot t; Calculate the frequency of the UAV for the mth UAV in time slot t; Calculate the maximum UAV frequency for the mth UAV in time slot t; is the minimum UAV flight speed; is the flight speed of the mth UAV in time slot t; is the maximum UAV flight speed; is the repulsive acceleration of the mth UAV in time slot t; is the maximum UAV repulsive acceleration of the mth UAV in time slot t; is the comprehensive obstacle repulsive potential energy field of the mth UAV in time slot t; is the coordinate data of the mth UAV at time slot t; is the maximum integrated obstacle repulsive potential energy field; is the repulsive potential energy field between the mth UAV and the kth UAV in time slot t, which represents the repulsive potential energy field between UAVs; is the coordinate data of the kth UAV at time slot t; is the repulsive potential energy field between the largest UAVs; is the minimum drone height; is the altitude of the mth UAV at time slot t; is the maximum drone altitude; is the indicator function; Offload data for the task of the mth UAV in time slot t; N is the total number of users; M is the total number of UAVs.

7. An edge computing system drone trajectory and user unloading decision optimization device, characterized in that: include: An acquisition module is used to obtain the user's drone calculation frequency, user-generated task data, user coordinate data, drone motion state data, and obstacle position data corresponding to the drone; a delay energy consumption module, configured to determine a user drone task delay based on the user drone calculation frequency, the user generated task data, the motion state data, and the user coordinate data, and determine the user drone task energy consumption based on the user drone task delay and the user drone calculation frequency; A physical quantity module, configured to determine physical quantity data of the drone based on the motion state data and the obstacle position data; A construction module is configured to determine task offloading data based on a preset offloading decision, and construct a joint objective function using the drone altitude in the drone coordinate data, the user drone calculation frequency, the task offloading data, the user drone task delay, the user drone task energy consumption, and the drone physical quantity data; a conversion module, configured to convert the joint objective function to determine a Markov decision process model for the UAV trajectory and a Markov decision process model for the user uninstallation decision; The solution module is used to optimize and solve the UAV trajectory Markov decision process model and the user uninstallation decision Markov decision process model respectively using a multi-agent deep reinforcement learning algorithm to generate a target UAV trajectory flight strategy and a target user uninstallation decision strategy.

8. A computer device, characterized in that: It includes a memory and a processor, wherein a computer program is stored in the memory, and when the computer program is executed by the processor, the processor executes the steps of the edge computing system drone trajectory and user unloading decision optimization method as described in any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed, the edge computing system drone trajectory and user unloading decision optimization method as described in any one of claims 1 to 6 is implemented.

10. A computer program product, characterized in that The computer program product includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions, wherein, when the program instructions are executed by a computer, the computer is caused to execute the edge computing system drone trajectory and user unloading decision optimization method as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Unmanned aerial vehicle task calculation flight strategy optimization method and system

    CN119105532A