CN116634452A - Deployment and offloading method of UAV-assisted edge computing network - Google Patents
Deployment and offloading method of UAV-assisted edge computing network Download PDFInfo
- Publication number
- CN116634452A CN116634452A CN202310715209.5A CN202310715209A CN116634452A CN 116634452 A CN116634452 A CN 116634452A CN 202310715209 A CN202310715209 A CN 202310715209A CN 116634452 A CN116634452 A CN 116634452A
- Authority
- CN
- China
- Prior art keywords
- unmanned aerial
- user
- aerial vehicle
- matrix
- fsb
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W16/00—Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
- H04W16/18—Network planning tools
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/09—Management thereof
- H04W28/0917—Management thereof based on the energy state of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/09—Management thereof
- H04W28/0925—Management thereof using policies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/09—Management thereof
- H04W28/0958—Management thereof based on metrics or performance parameters
- H04W28/0967—Quality of Service [QoS] parameters
- H04W28/0975—Quality of Service [QoS] parameters for reducing delays
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
技术领域technical field
本发明属于通信技术领域,特别涉及一种无人机辅助边缘计算网络部署与卸载方法,可用于无人机能耗受限条件下的应急通信和边缘计算服务。The invention belongs to the field of communication technology, and in particular relates to a UAV-assisted edge computing network deployment and unloading method, which can be used for emergency communication and edge computing services under the condition of limited energy consumption of UAVs.
背景技术Background technique
随着通信技术的发展,互联网已经从点对点网络发展到万维网,从移动互联网发展到物联网。随即对数据服务、计算资源以及网络基础设置的需求大幅提升,以满足大量互联设备的需求。为了给用户提供更好的沉浸式服务体验,移动边缘计算MEC在无线接入网的边缘部署云资源。无人机UAV信道质量好、机动性强、部署灵活,将其作为空中基站快速部署在指定位置,是地面通信网络的有效补充和扩展。这两者结合起来不仅能够更进一步地扩大MEC的服务范围,还可以提升服务质量,为网络瘫痪、基站受损、不受覆盖的山区及时提供低时延,高可靠性的通信和计算服务。常规的边缘计算系统通常在地面的固定基础建设上部署边缘服务器,但为了更好地支持无人机辅助的边缘计算网络,必须更加灵活的部署无人机。但由于无人机携带的电量有限,无法支撑长期的悬停和通信计算服务,并且购买一架无人机的经济成本不可忽视,使用的无人机数目越多,总成本也就越大。因此在无人机辅助的边缘计算系统中需要通过合理的部署和任务调度方案来减少部署的UAV个数,节约成本,减小能耗。With the development of communication technology, the Internet has developed from a peer-to-peer network to the World Wide Web, and from a mobile Internet to the Internet of Things. Immediately, the demand for data services, computing resources, and network infrastructure has increased significantly to meet the needs of a large number of interconnected devices. In order to provide users with a better immersive service experience, mobile edge computing MEC deploys cloud resources at the edge of the radio access network. The UAV UAV has good channel quality, strong mobility, and flexible deployment. It can be quickly deployed at a designated location as an air base station, which is an effective supplement and extension of the ground communication network. The combination of the two can not only further expand the service scope of MEC, but also improve the quality of service, and provide low-latency, high-reliability communication and computing services for mountainous areas where the network is paralyzed, the base station is damaged, and there is no coverage. Conventional edge computing systems usually deploy edge servers on a fixed infrastructure on the ground, but in order to better support UAV-assisted edge computing networks, UAVs must be deployed more flexibly. However, due to the limited power carried by drones, they cannot support long-term hovering and communication computing services, and the economic cost of purchasing a drone cannot be ignored. The more drones used, the greater the total cost. Therefore, in the UAV-assisted edge computing system, it is necessary to reduce the number of deployed UAVs, save costs, and reduce energy consumption through reasonable deployment and task scheduling schemes.
为了保障目标区域内用户的服务质量,避免出现通信中断的问题,需要基于用户的位置和计算任务合理部署无人机位置确定计算卸载方案。Zhaohui Yang在2019年于IEEETransactions on Wireless Communications中发表了Energy Efficient ResourceAllocation in UAV-Enabled Mobile Edge Computing Networks[J],考虑多无人机辅助移动边缘计算网络,通过联合优化用户关联、功率控制、计算资源分配和位置规划,从而最大限度地降低总功耗。为了求解非凸问题,其提出了一种复杂度低的算法,通过迭代来求解三个子问题。该方案中,由于仅考虑由固定个数无人机来辅助边缘计算网络为用户提供计算服务,没有考虑无人机携带的边缘计算服务器计算能力有限,故无法满足大量用户需求的问题,同时由于没有根据具体的用户数目合理安排部署无人机UAV的个数,因而成本较大。In order to ensure the service quality of users in the target area and avoid the problem of communication interruption, it is necessary to reasonably deploy the UAV position based on the user's location and computing tasks to determine the computing offloading scheme. Zhaohui Yang published Energy Efficient Resource Allocation in UAV-Enabled Mobile Edge Computing Networks[J] in IEEE Transactions on Wireless Communications in 2019, considering multi-UAV assisted mobile edge computing networks, and jointly optimizing user association, power control, and computing resources allocation and location planning, thereby minimizing overall power consumption. In order to solve non-convex problems, it proposes a low-complexity algorithm to solve three sub-problems through iteration. In this solution, only a fixed number of UAVs are considered to assist the edge computing network to provide computing services for users, and the edge computing server carried by UAVs is not considered to have limited computing power, so it cannot meet the needs of a large number of users. The number of UAVs deployed is not reasonably arranged according to the specific number of users, so the cost is relatively high.
发明内容Contents of the invention
本发明的目的在于针对上述现有技术的不足,提出一种无人机辅助边缘计算网络的部署与卸载方法,以在满足计算任务可容忍时延约束的条件下,满足大量用户的服务需求,减少网络成本,降低系统能耗。The purpose of the present invention is to address the shortcomings of the above-mentioned existing technologies, and propose a method for deploying and unloading UAV-assisted edge computing networks, so as to meet the service needs of a large number of users under the condition of satisfying the tolerable delay constraints of computing tasks, Reduce network costs and reduce system energy consumption.
本发明的技术方案是:根据用户的位置以及计算任务信息,优化部署无人机的个数、位置、用户与UAV的关联、用户计算任务的卸载方案及UAV分配给卸载任务的计算资源。其实现步骤包括如下:The technical solution of the present invention is: according to the user's location and computing task information, optimize the number and location of deployed drones, the association between users and UAVs, the unloading scheme of user computing tasks, and the computing resources allocated to unloading tasks by UAVs. Its implementation steps include the following:
(1)设置用户相关参数和无人机辅助网络相关参数:(1) Set user-related parameters and drone-assisted network-related parameters:
在半径为L的圆形故障区域Y内随机分布了M个地面用户,其集合为O={1,…,m,…,M},用户m的位置为(xm,ym,0);用户m需要完成计算任务Am=(Fm,Dm,T),其中Fm表示计算所需的CPU转数;Dm表示计算数据量;T为时延约束;M ground users are randomly distributed in a circular fault area Y with a radius of L, the set of which is O={1,…,m,…,M}, and the location of user m is (x m ,y m ,0) ; User m needs to complete the calculation task A m = (F m , D m , T), where F m represents the number of CPU revolutions required for calculation; D m represents the amount of calculation data; T is the delay constraint;
设无人机集合为G={1,…,n,…,N},N为待确定的无人机总数,第n个无人机的坐标为(xn,yn,Hn),俯角固定为θ,最大覆盖半径R为Hntanθ,设Un为无人机n能够接入用户数的最大值,fn,max为无人机n的计算资源上限,发射功率为悬停功率为PH,均不可调;设邻居基站的坐标为(x0,y0,H);Let the set of UAVs be G={1,...,n,...,N}, N is the total number of UAVs to be determined, and the coordinates of the nth UAV are (x n , y n , H n ), The depression angle is fixed at θ, the maximum coverage radius R is H n tanθ, U n is the maximum number of users that UAV n can access, f n,max is the upper limit of computing resources of UAV n, and the transmission power is The hovering power is P H , which cannot be adjusted; let the coordinates of the neighbor base station be (x 0 ,y 0 ,H);
(2)根据上述初始化参数建立最小化能耗问题P:(2) Establish the minimization energy consumption problem P according to the above initialization parameters:
s.t.C1: stC1:
C2: C2:
C3:umn≤cmn,m∈O,n∈G,C3: u mn ≤ c mn , m ∈ O, n ∈ G,
C4: C4:
C5:cmndmn≤R,m∈O,n∈G,C5: c mn d mn ≤ R, m ∈ O, n ∈ G,
C6:tm≤T,m∈O,C6: t m ≤ T, m ∈ O,
C7:(xn,yn)∈Y,C7:(x n ,y n )∈Y,
其中,C为无人机与用户的关联矩阵,cmn为C中的第m行第n列元素;Among them, C is the association matrix between the UAV and the user, and c mn is the element in the mth row and nth column of C;
U为卸载矩阵,umn为U中的第m行第n列元素,Z为无人机的位置矩阵;U is the unloading matrix, u mn is the element in row m and column n of U, and Z is the position matrix of the UAV;
F为无人机计算资源分配矩阵,fmn为F中的第m行第n列元素,F is the UAV computing resource allocation matrix, and f mn is the element in row m and column n in F,
为用户m将计算任务发送给无人机n的通信能耗;/>为无人机n完成用户m任务的计算能耗,/>为无人机n将用户m的计算任务中转给邻居基站的通信能耗,/>为无人机n的悬停能耗;α表示与用户能耗相比无人机能耗的权重系数,tm为用户m计算任务完成的总时间,dmn是用户m与无人机n之间的水平距离; Communication energy consumption for user m to send computing tasks to UAV n; /> Computational energy consumption for UAV n to complete user m tasks, /> The communication energy consumption of transferring the computing task of user m to the neighbor base station for UAV n, /> is the hovering energy consumption of UAV n; α represents the weight coefficient of UAV energy consumption compared with user energy consumption, t m is the total time for user m to complete the calculation task, d mn is the distance the horizontal distance between
(3)确定无人机的初始个数N0及无人机的初始位置Z0;根据M0,Z0确定初始关联矩阵C0、关联矩阵是否为可行解fsb_C、初始卸载矩阵U0、卸载矩阵是否是可行解为fsb_U、初始资源分配矩阵F0、最小能耗Emin和完成的最多任务数nummax;(3) Determine the initial number N 0 of the drone and the initial position Z 0 of the drone; according to M 0 and Z 0 determine the initial correlation matrix C 0 , whether the correlation matrix is a feasible solution fsb_C, the initial unloading matrix U 0 , Whether the unloading matrix is a feasible solution is fsb_U, the initial resource allocation matrix F 0 , the minimum energy consumption E min and the maximum number of completed tasks num max ;
(4)使用上下层迭代法求解问题P中的N、Z、C、U、F:(4) Use the upper and lower layer iterative method to solve N, Z, C, U, F in the problem P:
(4a)设置求解次数为NoS,最多迭代求解次数为NoSmax,停止删减无人机个数为flag,当前解的不可行次数为not,初始化NoS=0,flag=0,not=0,NoSmax=1000;(4a) Set the number of solutions to NoS, the maximum number of iterations to solve is NoS max , stop deleting the number of drones as flag, the number of infeasible current solutions is not, initialize NoS=0, flag=0, not=0, NoS max = 1000;
(4b)判断当前解是否是可行解以及无人机个数是否可以继续减少:(4b) Determine whether the current solution is a feasible solution and whether the number of drones can continue to decrease:
如果fsb_C=fsb_U=1且flag=0,则当前解为可行解且无人机个数可以继续减少,执行(4c);否则,跳转到步骤(4f);If fsb_C=fsb_U=1 and flag=0, then the current solution is a feasible solution and the number of drones can continue to decrease, execute (4c); otherwise, jump to step (4f);
(4c)对当前可行解N、Z、C、U、F进行保存,并去掉一个冗余的无人机得到当前的无人机个数N和无人机部署位置Z;(4c) Save the current feasible solution N, Z, C, U, F, and remove a redundant unmanned aerial vehicle to obtain the current number N of unmanned aerial vehicles and the deployment position Z of the unmanned aerial vehicle;
(4d)根据当前的N和Z,更新上述参数C、fsb_C、U、fsb_U、F、Emin、nummax,并令NoS=NoS+1,执行步骤(4g);(4d) update the above-mentioned parameters C, fsb_C, U, fsb_U, F, E min , num max according to current N and Z, and make NoS=NoS+1, execute step (4g);
(4f)利用改进的差分进化算法确定当前无人机个数N下的参数Z、fsb_C、U、fsb_U、F、Emin、nummax;(4f) Utilize the improved differential evolution algorithm to determine the parameters Z, fsb_C, U, fsb_U, F, E min , num max under the current unmanned aerial vehicle number N;
(4g)判断NoS<NoSmax是否成立,如果成立,则返回步骤(4b)继续迭代求解;否则迭代终止,得到最终解无人机数目N'、无人机位置Z'、关联矩阵C'、卸载矩阵U'、计算资源分配矩阵F';(4g) Determine whether NoS<NoS max is true, if true, return to step (4b) to continue iterative solution; otherwise, the iteration is terminated, and the final solution UAV number N', UAV position Z', correlation matrix C', Unloading matrix U', computing resource allocation matrix F';
(5)选择N'个无人机按照部署矩阵Z'进行部署;(5) Select N' unmanned aerial vehicles to deploy according to the deployment matrix Z';
(6)根据关联矩阵C'确定用户与无人机的关联性:若C'中的元素cmn=1,则将用户m与无人机n关联,并将用户m的计算任务传输至无人机n处;否则,用户m与无人机n不关联;(6) Determine the relevance between the user and the UAV according to the association matrix C': if the element c mn =1 in C', associate the user m with the UAV n, and transfer the computing tasks of the user m to the UAV. Human-machine n; otherwise, user m is not associated with drone n;
(7)根据卸载决策矩阵U'中的元素值umn,确定用户计算任务的执行对象:(7) According to the element value u mn in the unloading decision matrix U', determine the execution object of the user computing task:
若umn=1,则由无人机n按照资源分配矩阵F'中的元素fmn给用户分配计算资源,完成用户m的计算任务;If u mn = 1, the drone n allocates computing resources to the user according to the element f mn in the resource allocation matrix F', and completes the computing task of the user m;
否则,由关联无人机n将用户m的计算任务中转给邻居基站,由邻居基站完成计算任务。Otherwise, the associated drone n transfers the computing task of user m to the neighbor base station, and the neighbor base station completes the computing task.
本发明与现有技术相比,具有如下优点:Compared with the prior art, the present invention has the following advantages:
第一,本发明由于将计算能力更强的邻居基站与无人机联合为服务受损地区的用户提供通信和计算服务,提高了网络的稳定性,满足大量用户的服务需求。First, the present invention improves the stability of the network and satisfies the service needs of a large number of users by combining neighbor base stations with stronger computing capabilities and drones to provide communication and computing services for users in service-damaged areas.
第二,本发明基于上下层迭代法的联合优化方法,由于将问题分成两层求解,即上层优化无人机部署问题,其包括无人机的个数以及每个无人机的位置;下层针对上层的部署方案优化任务调度,其包括用户与无人机的关联、计算任务的卸载方案及无人机分配给卸载任务的计算资源,得到网络的部署和卸载方案,因而可降低系统能耗,解决用户服务受阻的问题。Second, the present invention is based on the joint optimization method of the upper and lower iterative method, because the problem is divided into two layers to solve, that is, the upper layer optimizes the UAV deployment problem, which includes the number of UAVs and the position of each UAV; the lower layer Optimize task scheduling for the upper-layer deployment plan, which includes the association between users and UAVs, the offloading scheme of computing tasks, and the computing resources allocated by UAVs to unloading tasks, and obtains the deployment and offloading scheme of the network, thus reducing system energy consumption , to solve the problem of blocked user services.
第三,本发明由于根据用户的位置及计算任务量求解能够完成所有任务所需的最小无人机个数,故可在降低能耗的同时,减小部署过多无人机带来的经济成本,最小化网络成本。Third, since the present invention solves the minimum number of unmanned aerial vehicles required to complete all tasks according to the user's location and calculation tasks, it can reduce energy consumption while reducing the economic cost of deploying too many unmanned aerial vehicles. cost, minimizing network cost.
仿真结果证明,本发明在满足用户任务时延约束的前提下,降低了系统能耗,减少了网络成本,能为用户提供稳定的服务。Simulation results prove that the present invention reduces system energy consumption, reduces network costs, and can provide users with stable services on the premise of satisfying user task time delay constraints.
附图说明Description of drawings
图1为本发明的实现流程图;Fig. 1 is the realization flowchart of the present invention;
图2为本发明的系统场景图;Fig. 2 is a system scene diagram of the present invention;
图3为本发明和对比方法在不同用户数时完成所有任务消耗的系统总能耗和部署的无人机个数对比图;Fig. 3 is a comparison diagram of the total energy consumption of the system and the number of unmanned aerial vehicles deployed when the present invention and the comparison method are completed with different numbers of users;
图4为本发明和对比方法在用户可容忍时延为1s时,在不同时间点完成任务的情况对比图。Fig. 4 is a comparison diagram of tasks completed at different time points when the user's tolerable time delay is 1s in the present invention and the comparison method.
具体实施方式Detailed ways
以下结合附图对本发明的实施例和效果作进一步详细描述。Embodiments and effects of the present invention will be further described in detail below in conjunction with the accompanying drawings.
参照图2,本实例使用的场景为两个相邻蜂窝网,其中一个蜂窝网内基站出现故障无法为用户提供服务,本实例将另一个配备有移动边缘计算服务器的无人机作为临时应急基站,由无人机和邻居基站联合为故障区域用户服务。用户的计算任务转发给关联无人机,无人机可以自己计算,也可以将任务中继给邻居基站,以保证网络的稳定性。根据控制中心保存的各个基站服务区域内地面用户的位置及计算任务等信息,确定无人机的个数、部署位置及计算任务的执行方案,整个过程在控制中心完成,并在得到实施方案后由控制中心驱动无人机执行任务。Referring to Figure 2, the scenario used in this example is two adjacent cellular networks. One of the base stations in the cellular network fails to provide services to users. In this example, another drone equipped with a mobile edge computing server is used as a temporary emergency base station , the UAV and neighbor base stations jointly serve users in the fault area. The user's computing tasks are forwarded to the associated UAV, and the UAV can calculate by itself, or relay the task to the neighbor base station to ensure the stability of the network. According to the location of ground users and calculation tasks in the service area of each base station stored in the control center, determine the number of UAVs, the deployment location and the execution plan of the calculation task. The whole process is completed in the control center, and after the implementation plan is obtained The drone is driven by the control center to perform tasks.
参照图1,本实例的实现步骤包括如下:Referring to Figure 1, the implementation steps of this example include the following:
步骤1,初始化参数。Step 1, initialize parameters.
针对图2的使用场景,初始化如下网络参数:For the usage scenario in Figure 2, initialize the following network parameters:
(1.1)用户相关参数设置:(1.1) User-related parameter settings:
在半径为L的圆形故障区域Y内随机分布了M个地面用户,其集合为O={1,…,m,,M},用户m的位置为(xm,ym,0);用户m需要完成计算任务Am=(Fm,Dm,T),其中Fm表示计算所需的CPU转数;Dm表示计算数据量;T为时延约束;M ground users are randomly distributed in a circular fault area Y with a radius of L, the set of which is O={1,...,m,,M}, and the position of user m is (x m ,y m ,0); User m needs to complete the calculation task A m = (F m , D m , T), where F m represents the number of CPU revolutions required for calculation; D m represents the amount of calculation data; T is the delay constraint;
(1.2)无人机辅助网络相关参数设置:(1.2) Related parameter setting of UAV auxiliary network:
设N个配备有边缘计算服务器的无人机以及邻居基站一起为故障区域用户提供计算服务,无人机集合为G={1,…,n,,N},N为待确定的无人机总数,第n个无人机的坐标为(xn,yn,Hn),俯角固定为θ,最大覆盖半径R为Hntanθ,设Un为无人机n能够接入用户数的最大值,fn,max为无人机n的计算资源上限,发射功率为悬停功率为PH,均不可调;Assume that N drones equipped with edge computing servers and neighbor base stations provide computing services for users in the fault area. The set of drones is G={1,...,n,,N}, and N is the drone to be determined The total number, the coordinates of the nth UAV is (x n , y n , H n ), the depression angle is fixed as θ, the maximum coverage radius R is H n tanθ, let U n be the number of users that UAV n can access The maximum value, f n,max is the upper limit of computing resources of UAV n, and the transmission power is The hovering power is P H , which cannot be adjusted;
设邻居基站的坐标为(x0,y0,H)。Let the coordinates of the neighboring base stations be (x 0 , y 0 , H).
步骤2,根据上述初始化参数建立最小化能耗问题P。Step 2, establish the energy consumption minimization problem P according to the above initialization parameters.
(2.1)根据用户m与无人机n的位置坐标,得到两者之间的水平距离dmn和无人机n与邻居基站之间的水平距离dnB:(2.1) According to the position coordinates of user m and UAV n, the horizontal distance d mn between them and the horizontal distance d nB between UAV n and the neighbor base station are obtained:
(2.2)根据(2.1)中的水平距离dmn和无人机n与邻居基站之间的水平距离dnB,建立基于自由空间路径损耗的信道模型,即用户m到无人机n的信道功率增益hmn及无人机n到邻居基站之间的信道功率增益hnB:(2.2) According to the horizontal distance d mn in (2.1) and the horizontal distance d nB between UAV n and neighboring base stations, establish a channel model based on free space path loss, that is, the channel power from user m to UAV n Gain h mn and channel power gain h nB between UAV n and neighboring base stations:
其中βG2A和βA2A分别表示参考距离为一米时的空地信道增益和空空信道增益;Among them, β G2A and β A2A represent the air-to-ground channel gain and the air-to-air channel gain when the reference distance is one meter, respectively;
(2.3)根据(2.2)中用户m到无人机n的信道功率增益hmn及无人机n到邻居基站之间的信道功率增益hnB,利用香农定理得到用户m到无人机n的传输速率rmn及无人机n到邻居基站之间的传输速率rnB:(2.3) According to the channel power gain h mn from user m to UAV n in (2.2) and the channel power gain h nB between UAV n and neighboring base stations, Shannon’s theorem is used to obtain the channel power gain from user m to UAV n The transmission rate r mn and the transmission rate r nB between the UAV n and the neighbor base station:
其中,B1表示用户与无人机之间的传输带宽,B2表示无人机与邻居基站之间的传输带宽,Pm为用户m设备的发射功率,为无人机n的发射功率,N0为噪声功率谱密度;Among them, B 1 represents the transmission bandwidth between the user and the UAV, B 2 represents the transmission bandwidth between the UAV and the neighbor base station, P m is the transmission power of user m equipment, is the transmitting power of UAV n, N 0 is the noise power spectral density;
(2.4)计算用户m将计算任务发送给无人机n的通信传输时间及通信能耗/> (2.4) Calculate the communication transmission time for user m to send computing tasks to UAV n and communication energy consumption/>
(2.5)计算无人机m将用户n的计算任务中转给邻居基站的通信传输时间及通信能耗/> (2.5) Calculate the communication transmission time for UAV m to transfer the computing task of user n to the neighbor base station and communication energy consumption/>
(2.6)计算无人机n完成用户m的任务所需处理时间及计算能耗/> (2.6) Calculate the processing time required for UAV n to complete the task of user m and computing power consumption/>
其中,fmn表示无人机n分给用户m的CPU频率,ε表示无人机机载服务器芯片的有效电容系数;Among them, f mn represents the CPU frequency assigned by UAV n to user m, and ε represents the effective capacitance coefficient of the UAV airborne server chip;
(2.7)计算无人机n的悬停能耗 (2.7) Calculate the hovering energy consumption of UAV n
(2.8)设置如下相关矩阵和变量:(2.8) Set the following correlation matrix and variables:
设C=[cmn]M×N为无人机与用户的关联矩阵,cmn=1表示用户m与无人机n关联,cmn=0表示不关联;Let C=[c mn ] M×N be the correlation matrix between drones and users, c mn =1 means that user m is associated with drone n, and c mn =0 means not associated;
设U=[umn]M×N为用户的计算卸载决策矩阵,当cmn=1且umn=1表示无人机n为用户m提供服务,cmn=1且umn=0表示关联无人机n将用户m的计算任务中转给邻居基站,由邻居基站完成计算任务;Let U=[u mn ] M×N be the user’s calculation offloading decision matrix, when c mn =1 and u mn =1 means UAV n provides services for user m, c mn =1 and u mn =0 means association UAV n transfers the computing task of user m to the neighbor base station, and the neighbor base station completes the computing task;
设F=[fmn]M×N为计算资源分配矩阵;Let F=[f mn ] M×N be the computing resource allocation matrix;
设Z=[(xn,yn)]N×1为无人机的位置矩阵;Let Z=[(x n ,y n )] N×1 be the position matrix of the UAV;
设用户的计算任务完成总时间为: Suppose the total time for the user's computing task to be completed is:
由(2.4)(2.5)(2.6)(2.7)的结果得到系统总能耗为:According to the results of (2.4)(2.5)(2.6)(2.7), the total energy consumption of the system is:
(2.9)设置约束条件:(2.9) Set constraints:
根据一个用户只能与一个无人机关联且所有用户需要被覆盖的特性,设第一个约束条件: According to the characteristic that a user can only be associated with one drone and all users need to be covered, set the first constraint:
根据每个无人机接入的用户数不能超过最大接入用户数的限制,设置第二个约束条件 According to the number of users connected to each UAV cannot exceed the limit of the maximum number of users connected, set the second constraint
根据无人机只能为其关联的用户提供服务的特性,设置第三个约束条件umn≤cmn;According to the characteristic that the UAV can only provide services to its associated users, set the third constraint u mn ≤ c mn ;
根据无人机m分配给覆盖范围内用户的计算资源之和不超过其计算资源最大值的限制,设置第四个约束 According to the limitation that the sum of the computing resources allocated to users within the coverage area by UAV m does not exceed the maximum value of its computing resources, set the fourth constraint
根据无人机关联的用户需在其覆盖范围内的情况,设置第五个约束cmndmn≤R;According to the fact that the user associated with the UAV needs to be within its coverage area, set the fifth constraint c mn d mn ≤ R;
根据用户n的任务完成时间不超过最大容忍时延的限制,设置第六个约束tm≤T;According to the task completion time of user n does not exceed the limit of the maximum tolerable delay, set the sixth constraint t m ≤ T;
根据无人机的水平位置需在故障基站范围内的限制,得到第七个约束条件(xn,yn)∈Y;According to the limitation that the horizontal position of the UAV needs to be within the scope of the faulty base station, the seventh constraint condition (x n , y n )∈Y is obtained;
(2.10)结合上述约束条件和参数,将能耗最小化问题P表示如下:(2.10) Combining the above constraints and parameters, the energy consumption minimization problem P is expressed as follows:
s.t.C1: stC1:
C2: C2:
C3:umn≤cmn,m∈O,n∈G,C3: u mn ≤ c mn , m ∈ O, n ∈ G,
C4: C4:
C5:cmndmn≤R,m∈O,n∈G,C5: c mn d mn ≤ R, m ∈ O, n ∈ G,
C6:tm≤T,m∈O,C6: t m ≤ T, m ∈ O,
C7:(xn,yn)∈Y,C7:(x n ,y n )∈Y,
其中,α表示与用户能耗相比无人机能耗的权重系数。Among them, α represents the weight coefficient of UAV energy consumption compared with user energy consumption.
本实例中取但不限于L=300米,Fm=100~200cycles/bit,Dm=[10,800]KB,Hn=100m,θ=π/4,R=Hntanθ=100m,βG2A=βA2A=1.42×10-4,B1=B2=1MHz,PH=100W,N0=10-20W/Hz,Un=20,fn,max=2GHz,ε=10-28,(x0,y0,H0)=(600,300,100)。In this example, but not limited to L=300 meters, F m =100~200cycles/bit, D m =[10,800]KB, H n =100m, θ=π/4, R=H n tanθ=100m, β G2A =β A2A =1.42×10 -4 , B 1 =B 2 =1MHz, P H =100W, N 0 =10 -20 W/Hz, U n =20, f n,max =2GHz, ε=10 -28 , (x 0 ,y 0 ,H 0 )=(600,300,100).
步骤3,确定无人机的初始个数N0及无人机的初始位置Z0;Step 3, determine the initial number N 0 of the drone and the initial position Z 0 of the drone;
(3.1)初始化无人机的个数为一个较大值N0=2×(M/Un);(3.1) Initialize the number of drones to a larger value N 0 =2×(M/U n );
(3.2)通过Kmeans++算法确定无人机的初始位置Z0,设置循环次数iter=0:(3.2) Determine the initial position Z 0 of the drone through the Kmeans++ algorithm, and set the number of cycles iter=0:
(3.2.1)借助Kmeans++算法,将无人机的个数N0作为类数,根据用户的位置进行聚类,将聚类中心作为无人机的部署位置;(3.2.1) With the help of the Kmeans++ algorithm, the number N of drones is used as the number of classes, clustering is performed according to the user's position, and the clustering center is used as the deployment position of the drone;
(3.2.2)根据(3.2.1)得到的无人机部署位置确定每个用户m执行任务的候选集Vm:(3.2.2) Determine the candidate set V m for each user m to perform tasks according to the UAV deployment position obtained in (3.2.1):
(3.2.2.1)计算用户m到无人机n之间的距离dmn;(3.2.2.1) Calculate the distance d mn between the user m and the drone n;
(3.2.2.2)判断dmn<R是否成立:若成立,则表示无人机到用户之间的距离小于无人机的覆盖半径,则将无人机n列入用户m的候选集Vm中;(3.2.2.2) Determine whether d mn < R is true: if it is true, it means that the distance between the UAV and the user is less than the coverage radius of the UAV, and the UAV n is included in the candidate set V m of user m middle;
(3.2.3)确定无人机的初始位置Z0:(3.2.3) Determine the initial position Z 0 of the UAV:
(3.2.3.1)判断所有用户的候选集是否为空:若不为空,则将当前的无人机位置作为初始位置Z0;否则,令iter=iter+1,执行步骤(3.2.3.2);(3.2.3.1) Judge whether the candidate set of all users is empty: if not empty, then use the current drone position as the initial position Z 0 ; otherwise, make iter=iter+1, and perform step (3.2.3.2) ;
(3.2.3.2)判断iter>1000是否成立:(3.2.3.2) Judging whether iter>1000 is true:
若成立,则表示经过多次聚类始终没有找到满足约束的无人机初始位置,将最后一次迭代得到的聚类中心作为无人机的初始位置;If it is true, it means that the initial position of the UAV that satisfies the constraints has not been found after multiple clusterings, and the cluster center obtained in the last iteration is used as the initial position of the UAV;
否则,返回至步骤(3.2.1)重新求解无人机的初始位置。Otherwise, return to step (3.2.1) to re-solve the initial position of the UAV.
步骤4,根据N0,Z0确定初始关联矩阵C0、关联矩阵是否为可行解fsb_C。Step 4, according to N 0 and Z 0 , determine whether the initial correlation matrix C 0 and the correlation matrix are feasible solutions fsb_C.
(4.1)采用贪心的关联策略得到关联矩阵C0及该关联是否是可行解fsb_C:(4.1) Use the greedy association strategy to obtain the association matrix C 0 and whether the association is a feasible solution fsb_C:
(4.1.1)计算用户m到无人机n之间的距离dmn,将dmn<R的无人机n列入用户m的候选集Vm中;(4.1.1) Calculate the distance d mn between the user m and the drone n, and include the drone n with d mn <R in the candidate set V m of the user m;
(4.1.2)根据以下准则将所有用户分为两类:(4.1.2) Divide all users into two categories according to the following criteria:
第一类:候选集Vm中只有一个无人机备选,即该用户只在一个无人机的覆盖半径内;The first category: there is only one UAV candidate in the candidate set Vm , that is, the user is only within the coverage radius of one UAV;
第二类:候选集Vm中有多个无人机备选,表示该用户在多个无人机的覆盖范围内;The second category: there are multiple drone candidates in the candidate set V m , indicating that the user is within the coverage of multiple drones;
第一类任务的关联优先级高于第二类任务;The associated priority of the first type of task is higher than that of the second type of task;
(4.1.3)按照如下关联准则进行关联,得到关联矩阵C0以及该解是否是可行解fsb_C:(4.1.3) Perform association according to the following association criteria to obtain the association matrix C 0 and whether the solution is a feasible solution fsb_C:
(4.1.3.1)判断第一类用户候选集中的无人机是否接满:若没有接满,令对应的cmn=1,表示关联;否则,cmn=0,表示不关联;(4.1.3.1) Judging whether the UAVs in the first type of user candidate set are full: if not, make the corresponding c mn =1, which means association; otherwise, c mn =0, which means no association;
(4.1.3.2)根据第二类用户候选集Vm中的元素数,对其进行升序排序,优先给候选集小的用户确定关联情况,对于用户m,根据其候选集Vm中每个候选无人机到用户m的距离,按照升序排序,如果距离相等则按照无人机接入用户数升序排序,将用户优先关联到距离近且接入用户数少的无人机;(4.1.3.2) According to the number of elements in the second type of user candidate set V m , sort them in ascending order, give priority to users with small candidate sets to determine the association situation, for user m, according to each candidate in its candidate set V m The distance from the drone to the user m is sorted in ascending order. If the distance is equal, it is sorted in ascending order according to the number of drone access users, and the user is preferentially associated with the drone with the shortest distance and few access users;
(4.1.3.3)按照上述策略,判断是否存在候选集为空或候选集中可关联的无人机均接满的情况:(4.1.3.3) According to the above strategy, judge whether there is a situation where the candidate set is empty or the connected UAVs in the candidate set are full:
若是,则关联失败,fsb_C=0;If so, the association fails, fsb_C=0;
否则,关联成功,fsb_C=1。Otherwise, the association is successful, and fsb_C=1.
步骤5,根据N0、Z0、C0确定初始卸载矩阵U0、卸载矩阵是否是可行解为fsb_U、初始资源分配矩阵F0、最小能耗Emin和完成的最多任务数nummax。Step 5, according to N 0 , Z 0 , and C 0 , determine the initial offloading matrix U 0 , whether the offloading matrix is a feasible solution fsb_U, the initial resource allocation matrix F 0 , the minimum energy consumption E min and the maximum number of completed tasks num max .
(5.1)由下式推导出每个用户在不同无人机处计算所需的最小资源fmn,min:(5.1) The minimum resource f mn,min required by each user for computing at different UAVs is deduced from the following formula:
(5.2)求解初始化卸载矩阵U0:(5.2) Solve the initialization unloading matrix U 0 :
(5.2.1)根据N0,Z0,C0和fmn,min将问题P化简为关于卸载矩阵U0的0-1规划问题P1:(5.2.1) According to N 0 , Z 0 , C 0 and f mn,min, the problem P is reduced to a 0-1 programming problem P1 about the unloading matrix U 0 :
P1: P1:
s.t.P1:C3,C4,C6s.t.P1:C3,C4,C6
(5.2.2)利用分枝定界法对P1进行求解,得到U0以及表示该卸载矩阵是否是可行解的fsb_U,即用仿真软件中关于分支定界法的库函数进行求解;(5.2.2) Utilize the branch and bound method to solve P1, obtain U 0 and fsb_U representing whether the unloading matrix is a feasible solution, that is, use the library function about the branch and bound method in the simulation software to solve;
(5.3)根据U0中的元素umn计算F0中的元素:fmn=umnfmn,min,最终得到计算资源分配矩阵F0=[fmn]M×N;(5.3) Calculate the elements in F 0 according to the element u mn in U 0 : f mn =u mn f mn,min , and finally obtain the calculation resource allocation matrix F 0 =[f mn ] M×N ;
(5.4)判断初始解是否是可行解,即fsb_C=fsb_U=1是否成立:(5.4) Judging whether the initial solution is a feasible solution, that is, whether fsb_C=fsb_U=1 is established:
若是可行解,则根据N0、Z0、C0、U0、F0计算当前解对应的系统总能耗E0,初始化系统最小能耗Emin=E0,完成最多任务数nummax=M;If it is a feasible solution, calculate the total system energy consumption E 0 corresponding to the current solution according to N 0 , Z 0 , C 0 , U 0 , and F 0 , initialize the minimum system energy consumption E min =E 0 , and complete the maximum number of tasks num max = M;
否则,计算时延约束内完成任务的用户个数num0,初始化系统最小能耗Emin为一个极大的值,完成最多任务数nummax=num0。Otherwise, calculate the number num 0 of users who complete tasks within the delay constraint, initialize the minimum energy consumption E min of the system to a maximum value, and complete the maximum number of tasks num max = num 0 .
步骤6,使用上下层迭代法求解问题P中的N,Z,C,U,F。Step 6, use the upper and lower layer iterative method to solve N, Z, C, U, F in the problem P.
(6.1)设置求解次数为NoS,最多迭代求解次数为NoSmax,停止删减无人机个数为flag,当前解的不可行次数为not,初始化NoS=0,flag=0,not=0,NoSmax=1000,初始化N、Z、C、U、F分别等于N0、Z0、C0、U0、F0;(6.1) Set the number of solutions to NoS, the maximum number of iterations to solve is NoS max , stop deleting the number of drones as flag, the number of infeasible current solutions is not, initialize NoS=0, flag=0, not=0, NoS max = 1000, initialize N, Z, C, U, F to be equal to N 0 , Z 0 , C 0 , U 0 , F 0 respectively;
(6.2)判断当前解是否是可行解以及无人机个数是否可以继续减少:(6.2) Determine whether the current solution is a feasible solution and whether the number of drones can continue to decrease:
如果fsb_C=fsb_U=1且flag=0,则当前解为可行解且无人机个数可以继续减少,执行(6.3);否则,跳转到步骤(6.5);If fsb_C=fsb_U=1 and flag=0, then the current solution is a feasible solution and the number of drones can continue to decrease, perform (6.3); otherwise, jump to step (6.5);
(6.3)对当前可行解N、Z、C、U、F进行保存,并去掉一个冗余的无人机得到当前的无人机个数N和无人机部署位置Z:(6.3) Save the current feasible solutions N, Z, C, U, F, and remove a redundant UAV to obtain the current number N of UAVs and the deployment position Z of UAVs:
(6.3.1)设置Ntemp,Ztemp,Ctemp,Utemp,Ftemp这五个临时值并赋值为0,用于保存可行的N,Z,C,U,F;(6.3.1) Set five temporary values of N temp , Z temp , C temp , U temp , and F temp and assign a value of 0 to save feasible N, Z, C, U, and F;
(6.3.2)令Ntemp,Ztemp,Ctemp,Utemp,Ftemp分别等于N,Z,C,U,F;(6.3.2) Let N temp , Z temp , C temp , U temp , F temp be equal to N, Z, C, U, F respectively;
(6.3.3)计算Z中各个无人机之间的欧式距离dn1-n2,该dn1-n2表示无人机n1与无人机n2之间的距离;(6.3.3) Calculate the Euclidean distance d n1-n2 between each drone in Z, where d n1-n2 represents the distance between the drone n1 and the drone n2;
(6.3.4)根据计算的欧式距离dn1-n2找出各个无人机之间距离最小的两个无人机n1'和n2';(6.3.4) Find out the two drones n1' and n2' with the smallest distance between each drone according to the calculated Euclidean distance d n1-n2 ;
(6.3.5)用无人机n1'与其他无人机之间的距离构成第一集合{dn1'-1,dn1'-2,…,dn1'-n},将无人机n2'与其他无人机之间的距离构成第二集合{dn2'-1,dn2'-3,…,dn2'-n},并对这两个集合内元素按照升序排序;(6.3.5) Use the distance between UAV n1' and other UAVs to form the first set {d n1'-1 ,d n1'-2 ,…,d n1'-n }, and the UAV The distance between n2' and other drones constitutes the second set {d n2'-1 ,d n2'-3 ,…,d n2'-n }, and sort the elements in these two sets in ascending order;
(6.3.6)比较无人机n1'的距离集合中最小的距离值和无人机n2'距离集合中最小的距离值:(6.3.6) Compare the smallest distance value in the distance set of UAV n1' with the smallest distance value in the distance set of UAV n2':
若无人机n1'中的最小距离值小于无人机n2'中的最小的距离值,则删掉无人机n1';If the minimum distance value in drone n1' is smaller than the minimum distance value in drone n2', delete drone n1';
若无人机n1'中的最小距离值大于无人机n2'中的最小的距离值,则删掉无人机n2';If the minimum distance value in drone n1' is greater than the minimum distance value in drone n2', delete drone n2';
若两者相等,则比较两个无人机集合中次小的距离值;If the two are equal, compare the next smallest distance value in the two UAV sets;
以此类推,直到两者不相等,最终得到删减之后的无人机个数和部署位置,即为当前的无人机个数N和部署位置Z;By analogy, until the two are not equal, the number of drones and the deployment position after the deletion are finally obtained, which is the current number N of drones and the deployment position Z;
(6.4)根据当前的N和Z,更新上述参数C、fsb_C、U、fsb_U、F、Emin、nummax:(6.4) Update the above parameters C, fsb_C, U, fsb_U, F, E min , num max according to the current N and Z:
(6.4.1)根据贪心的关联策略确定关联矩阵C以及该关联是否是可行解fsb_C:(6.4.1) Determine the association matrix C and whether the association is a feasible solution fsb_C according to the greedy association strategy:
(6.4.1.1)根据用户m到无人机n之间的距离dmn,构造每个用户m完成任务的候选无人机集合Vm:(6.4.1.1) According to the distance d mn between user m and drone n, construct a set of candidate drones V m for each user m to complete the task:
首先,计算用户m到无人机n之间的距离dmn;First, calculate the distance d mn between user m and drone n;
然后,判断dmn<R是否成立:Then, judge whether d mn < R holds true:
若成立,则表示无人机到用户之间的距离小于无人机的覆盖半径,将无人机n列入用户m的候选集Vm中;If it is established, it means that the distance between the drone and the user is less than the coverage radius of the drone, and the drone n is included in the candidate set V m of the user m;
否则,不将无人机n列入用户m的候选集Vm中;Otherwise, UAV n is not included in the candidate set V m of user m;
(6.4.1.2)根据以下准则将所有用户分为两类:(6.4.1.2) Divide all users into two categories according to the following criteria:
将候选集Vm中只有一个无人机备选的集合作为第一类;Take the set of only one UAV candidate in the candidate set V m as the first category;
将候选集Vm中有多个无人机备选的集合作为第二类;There are multiple unmanned aerial vehicles in the candidate set Vm as the second category;
第一类任务的关联优先级高于第二类任务;The associated priority of the first type of task is higher than that of the second type of task;
(6.4.1.3)按照如下关联准则进行关联,得到关联矩阵C以及该关联矩阵是否是可行解fsb_C:(6.4.1.3) Perform association according to the following association criteria to obtain the association matrix C and whether the association matrix is a feasible solution fsb_C:
首先,判断第一类用户候选集中的无人机是否接满:若没有接满,令对应的cmn=1,表示关联;否则,cmn=0;First, judge whether the UAVs in the first type of user candidate set are fully connected: if not, set the corresponding c mn =1, indicating association; otherwise, c mn =0;
然后,根据第二类用户候选集Vm中的元素数,对其进行升序排序,优先给候选集小的用户确定关联情况,对于用户m,根据其候选集Vm中每个候选无人机到用户m的距离,按照升序排序,如果距离相等则按照无人机接入用户数升序排序,将用户优先关联到距离Then, sort them in ascending order according to the number of elements in the candidate set V m of the second type of users, and give priority to users with smaller candidate sets to determine the association situation. For user m, according to each candidate UAV in its candidate set V m The distance to user m is sorted in ascending order. If the distance is equal, it is sorted in ascending order according to the number of drone access users, and the user is preferentially associated with the distance
近且接入用户数少的无人机;UAVs that are close and have a small number of access users;
(6.4.1.4)按照上述策略,判断是否存在候选集为空或候选集中可关联的无人机均接满的情况:(6.4.1.4) According to the above strategy, judge whether there is a situation where the candidate set is empty or the connected UAVs in the candidate set are full:
若是,则关联失败,fsb_C=0;If so, the association fails, fsb_C=0;
否则,关联成功,fsb_C=1;Otherwise, the association is successful, fsb_C=1;
(6.4.2)由下式推导出每个用户在不同无人机处计算所需的最小资源fmn,min:(6.4.2) The minimum resource f mn,min required by each user for computing at different UAVs is deduced from the following formula:
(6.4.3)求解初始化卸载矩阵U:(6.4.3) Solve the initialization unloading matrix U:
(6.4.3.1)根据N,Z,C和fmn,min将问题P化简为关于卸载矩阵U的0-1规划问题P1:(6.4.3.1) According to N, Z, C and f mn,min, the problem P is reduced to a 0-1 programming problem P1 about the unloading matrix U:
P1: P1:
s.t.P1:C3,C4,C6s.t.P1:C3,C4,C6
(6.4.3.2)利用分枝定界法对P1进行求解,得到U以及表示该决策是否是可行解的fsb_U,即用仿真软件中关于分支定界法的库函数进行求解;(6.4.3.2) Use the branch and bound method to solve P1, obtain U and fsb_U indicating whether the decision is a feasible solution, that is, use the library function of the branch and bound method in the simulation software to solve;
(6.4.4)根据U中的元素umn计算F中的元素:fmn=umnfmn,min,最终得到计算资源分配矩阵F=[fmn]M×N,并令NoS=NoS+1;(6.4.4) Calculate the elements in F according to the elements u mn in U: f mn =u mn f mn,min , finally get the computing resource allocation matrix F=[f mn ] M×N , and set NoS=NoS+ 1;
(6.4.5)判断初始解是否是可行解,即fsb_C=fsb_U=1是否成立:(6.4.5) Judging whether the initial solution is a feasible solution, that is, whether fsb_C=fsb_U=1 is established:
如果成立,则根据N、Z、C、U、F计算当前解对应的系统总能耗E,令Emin=E,完成最多任务数nummax=M;If it is established, then calculate the total energy consumption E of the system corresponding to the current solution according to N, Z, C, U, and F, let E min =E, and complete the maximum number of tasks num max =M;
如果不成立,则求这组解完成的计算任务数num,并判断num>nummax是否成立:If not, find the number of calculation tasks num completed by this group of solutions, and judge whether num>num max is true:
若是,则令nummax=num,返回到步骤(6.2);If so, then make num max =num, return to step (6.2);
否则,不修改nummax,直接返回到步骤(6.2);Otherwise, do not modify num max and directly return to step (6.2);
(6.5)利用改进的差分进化算法确定当前无人机个数N下的参数Z、C、fsb_C、U、fsb_U、F、Emin、nummax:(6.5) Use the improved differential evolution algorithm to determine the parameters Z, C, fsb_C, U, fsb_U, F, E min , num max under the current number of drones N:
(6.5.1)将当前的无人机部署位置Z作为父代种群Q,故种群大小为N,将种群中的第i个个体值对应无人机的部署位置,得到种群中第i个个体qi为:qi=[qix,qiy];(6.5.1) The current drone deployment position Z is used as the parent population Q, so the population size is N, and the i-th individual value in the population corresponds to the deployment position of the drone, and the i-th individual in the population is obtained q i is: q i =[q ix ,q iy ];
(6.5.2)对种群Q进行N次变异和交叉操作得到N个实验向量个体,形成实验向量种群A:(6.5.2) Perform N times of mutation and crossover operations on the population Q to obtain N experimental vector individuals, forming the experimental vector population A:
(6.5.2.1)按照下式进行变异操作,得到变异向量ei:(6.5.2.1) Perform the mutation operation according to the following formula to obtain the mutation vector e i :
其中,λ1,λ2,λ3为Q中随机选出的三个互不相等的个体,g是差分变异因子,取值为0.4。Among them, λ 1 , λ 2 , and λ 3 are three unequal individuals randomly selected from Q, and g is the differential variation factor, with a value of 0.4.
(6.5.2.2)在建立变异向量后,将变异向量ei与Q中的一个随机个体qi交叉,得到一个实验个体向量ai:(6.5.2.2) After the mutation vector is established, cross the mutation vector e i with a random individual q i in Q to obtain an experimental individual vector a i :
其中,实验个体向量ai的第一个维度aix为:Among them, the first dimension a ix of the experimental individual vector a i is:
实验个体向量ai的第二个维度aiy为:The second dimension a iy of the experimental individual vector a i is:
在上式中ratec∈[0,1]是交叉率,Jr是在x和y中随机选择一个维度;In the above formula, rate c ∈ [0,1] is the crossover rate, and J r is a dimension randomly selected in x and y;
(6.5.2.3)由N个实验个体向量ai组成实验向量种群A;(6.5.2.3) The experimental vector population A is composed of N experimental individual vectors a i ;
(6.5.3)依次用A中的个体随机替换Q中的某一个个体,得到新的种群W;(6.5.3) Randomly replace an individual in Q with an individual in A in turn to obtain a new population W;
(6.5.4)根据种群W对应的无人机部署位置ZW和无人机个数N,采用(6.2)中的方法确定对应的关联矩阵CW,卸载矩阵UW,资源分配矩阵FW,fsb_C和fsb_U;(6.5.4) According to the UAV deployment position Z W corresponding to the population W and the number N of UAVs, use the method in (6.2) to determine the corresponding correlation matrix C W , unloading matrix U W , and resource allocation matrix F W , fsb_C and fsb_U;
(6.5.5)根据N、ZW、CW、UW、FW,计算完成任务数numW,令NoS=NoS+1;(6.5.5) According to N, Z W , C W , U W , F W , calculate the number of completed tasks num W , let NoS=NoS+1;
(6.5.6)判断numW>nummax是否成立:若是,则令完成最多用户任务数nummax=numW,并让Z,C,U,F分别等于ZW,CW,UW,FW;否则,不进行操作;(6.5.6) Judging whether num W > num max holds true: if so, set the maximum number of completed user tasks num max = num W , and let Z, C, U, F be equal to Z W , C W , U W , F respectively W ; otherwise, no operation is performed;
(6.5.7)判断numW=M是否成立:(6.5.7) Judging whether num W = M is true:
如果成立,则表示当前解为可行解,再根据N、ZW、CW、UW、FW计算对应的系统能耗EW,执行(6.5.8);If it is established, it means that the current solution is a feasible solution, and then calculate the corresponding system energy consumption E W according to N, Z W , C W , U W , F W , and execute (6.5.8);
如果不成立,表示当前解为不可行解,即numW<M,令not=not+1,执行(6.5.9);If not established, it means that the current solution is an infeasible solution, that is, num W < M, set not=not+1, and execute (6.5.9);
(6.5.8)判断EW>Emin是否成立:(6.5.8) Judging whether E W > E min holds true:
如果成立,则表示当前种群对应部署位置求得的解为可行解,且能耗更低,令Emin=EW,并令五个临时解Ntemp、Ztemp、Ctemp、Utemp、Ftemp分别等于N、ZW、CW、UW、FW,判断此时flag是否为0:若是,则表示可以继续删减无人机个数,令not=0;否则,执行步骤(6.5.9);If it is true, it means that the solution obtained by the corresponding deployment position of the current population is a feasible solution with lower energy consumption. Let E min =E W , and let five temporary solutions N temp , Z temp , C temp , U temp , F temp is respectively equal to N, Z W , C W , U W , F W , judge whether the flag is 0 at this time: if so, it means that the number of unmanned aerial vehicles can continue to be deleted, let not=0; otherwise, execute step (6.5 .9);
如果不成立,不进行操作;If not established, do not operate;
(6.5.9)判断不可行解次数not=100是否成立:(6.5.9) Judging whether the number of infeasible solutions not=100 holds true:
若成立,则表示当前无人机个数经过多次迭代仍然没有找到一组可行解,令flag=1,表示停止删减无人机个数,执行(6.5.10);If it is established, it means that the current number of drones has not found a group of feasible solutions after multiple iterations, so that flag=1 means stop deleting the number of drones, and execute (6.5.10);
若不成立,直接执行(6.5.10);If not established, execute (6.5.10) directly;
(6.5.10)判断Ntemp,Ztemp,Ctemp,Utemp,Ftemp是否有保存的可行解:(6.5.10) Judging whether N temp , Z temp , C temp , U temp , and F temp have a preserved feasible solution:
如果没有,则表示始终没有找到问题的可行解,将最多完成任务数nummax输出,算法结束;If not, it means that no feasible solution to the problem has been found, and the maximum number of completed tasks num max will be output, and the algorithm ends;
否则,令N,Z,C,U,F分别等于Ntemp,Ztemp,Ctemp,Utemp,Ftemp;Otherwise, let N, Z, C, U, F be equal to N temp , Z temp , C temp , U temp , F temp ;
(6.6)判断NoS<NoSmax是否成立:(6.6) Judging whether NoS<NoS max holds true:
如果成立,则返回步骤(6.2)继续迭代求解;If established, return to step (6.2) to continue iterative solution;
否则迭代终止,得到最终解无人机数目N'、无人机位置Z'、关联矩阵C'、卸载矩阵U'、计算资源分配矩阵F'。Otherwise, the iteration is terminated, and the final solution UAV number N', UAV position Z', correlation matrix C', unloading matrix U', and computing resource allocation matrix F' are obtained.
步骤7,根据N'、Z'、C'、U'、F'的值实施部署和计算卸载。Step 7, implementing deployment and computing offloading according to the values of N', Z', C', U', and F'.
(7.1)选择N'个无人机按照部署矩阵Z'进行部署;(7.1) Select N' unmanned aerial vehicles to deploy according to the deployment matrix Z';
(7.2)根据关联矩阵C'确定用户与无人机的关联性:(7.2) Determine the correlation between the user and the UAV according to the correlation matrix C':
若C'中的元素cmn=1,则将用户m与无人机n关联,并将用户m的计算任务传输至无人机n处;If the element c mn =1 in C', associate user m with UAV n, and transmit the computing task of user m to UAV n;
否则,用户m与无人机n不关联;Otherwise, user m is not associated with drone n;
(7.3)根据卸载决策矩阵U'中的元素值umn,确定用户计算任务的执行对象:(7.3) According to the element value u mn in the unloading decision matrix U', determine the execution object of the user computing task:
若umn=1,则由无人机n按照资源分配矩阵F'中的元素fmn给用户分配计算资源,完成用户m的计算任务;If u mn = 1, the drone n allocates computing resources to the user according to the element f mn in the resource allocation matrix F', and completes the computing task of the user m;
否则,由关联无人机n将用户m的计算任务中转给邻居基站,由邻居基站完成计算任务。Otherwise, the associated drone n transfers the computing task of user m to the neighbor base station, and the neighbor base station completes the computing task.
以下结合仿真实验对本发明的技术效果作进一步说明:Below in conjunction with simulation experiment, technical effect of the present invention is further described:
一、仿真条件1. Simulation conditions
仿真采用Matlab2019软件平台进行,用户随机的分布在一个半径为300m的圆形区域中,用户个数设为100~300,用户的计算任务的数据量Dm=[10,800]KB、所需计算资源数Fm=100~200cycles/bit,可容忍时延T=1s;无人机的高度Hn=100m、最大俯角θ=π/4、覆盖半径为R=Hn tanθ=100m、悬停功率PH=100W、接入用户上限Un=20、计算资源上限fn,max=2GHz,参考距离为一米时的空地信道增益βG2A和空空信道增益βA2A均为1.42×10-4,用户与无人机的发射功率邻居基站的坐标为(x0,y0,H0)=(600,300,100)。The simulation is carried out on the Matlab2019 software platform. Users are randomly distributed in a circular area with a radius of 300m. The number of users is set to 100-300 . Number F m =100~200cycles/bit, tolerable delay T=1s; UAV height H n =100m, maximum depression angle θ=π/4, coverage radius R=H n tanθ=100m, hovering power P H =100W, upper limit of access users U n =20, upper limit of computing resources f n,max =2 GHz, when the reference distance is one meter, the air-to-ground channel gain β G2A and the air-to-air channel gain β A2A are both 1.42×10 -4 , Transmission power of user and UAV The coordinates of the neighboring base stations are (x 0 , y 0 , H 0 )=(600, 300, 100).
由于本发明考虑的是一个新的场景,没有现有方法能够直接求解,因此将求解框架均为上下层迭代法,但在求解的卸载矩阵U,无人机位置Z这两个参数时采用其他方法的两种算法作为对比算法,其中,prior UAV算法在求解卸载决策U时,将计算任务优先卸载到无人机处执行,而本发明采用分支定界法;PSO-Z在求解无人机位置Z时采用粒子群优化算法,而本发明采用差分进化法。Because what the present invention considers is a new scenario, there is no existing method that can directly solve it, so the solution framework is the upper and lower layer iterative method, but when solving the unloading matrix U and the two parameters of the UAV position Z, other parameters are used. The two algorithms of the method are used as comparison algorithms, wherein, when the prior UAV algorithm solves the unloading decision U, the calculation task is preferentially offloaded to the unmanned aerial vehicle for execution, while the present invention adopts the branch and bound method; PSO-Z solves the unmanned aerial vehicle Particle swarm optimization algorithm is adopted in position Z, while the present invention adopts differential evolution method.
二、仿真内容与结果:2. Simulation content and results:
仿真1,分别取用户个数为100~300,对本发明和的对比算法分别为指定区域中用户提供服务,得到各自消耗的系统总能耗和部署的无人机个数,结果如图3所示。其中:In simulation 1, the number of users is taken as 100-300 respectively, and the comparison algorithms of the present invention and the comparison algorithm respectively provide services for users in designated areas, and obtain the total energy consumption of the system and the number of deployed UAVs respectively. The results are shown in Figure 3 Show. in:
图3(a)为系统总能耗的对比图,Figure 3(a) is a comparison chart of the total energy consumption of the system,
图3(b)为部署的无人机个数对比图。Figure 3(b) is a comparison of the number of deployed UAVs.
观察图3(a)可以发现,当用户数为100时,prior UAV的总能耗与本发明的总能耗相差不多,但是随着用户数的增加,基于分枝定界法的本发明求得的卸载决策对应的系统总能耗与优先卸载到无人机的prior UAV算法对应的系统总能耗之间的差距越来远大,本发明的节能优点逐渐体现出来。从图3(a)中可以明显看到利用改进PSO求解无人机位置的PSO-Z算法的系统能耗明显大于基于改进差分进化算法的本发明,这主要因为PSO算法在搜索时随机性更大,算法性能不如改进差分进化算法。Observing Figure 3(a), it can be found that when the number of users is 100, the total energy consumption of the prior UAV is almost the same as that of the present invention, but as the number of users increases, the present invention based on the branch and bound method The gap between the total energy consumption of the system corresponding to the obtained unloading decision and the total energy consumption of the system corresponding to the prior UAV algorithm that is preferentially unloaded to the UAV is getting bigger and bigger, and the energy-saving advantages of the present invention are gradually reflected. From Fig. 3 (a), it can be clearly seen that the system energy consumption of the PSO-Z algorithm using the improved PSO to solve the UAV position is obviously greater than that of the present invention based on the improved differential evolution algorithm, which is mainly because the PSO algorithm is more random when searching. Large, the algorithm performance is not as good as the improved differential evolution algorithm.
从图3(b)中可以看出,当用户数为200时,本发明需要部署15个无人机就能完成所有计算任务,而prior UAV则需要部署16个无人机,PSO-Z需要部署18个无人机才能完成所有计算任务,且无论用户的个数多还是少,本发明部署的无人机个数均最少,成本最小。It can be seen from Figure 3(b) that when the number of users is 200, the present invention needs to deploy 15 UAVs to complete all computing tasks, while the prior UAV needs to deploy 16 UAVs, and PSO-Z requires Only by deploying 18 drones can all computing tasks be completed, and regardless of the number of users is large or small, the number of drones deployed by the present invention is the least, and the cost is minimal.
仿真2,当可容忍时延为1s,用户数为300时,在不同时间点对本发明和对比方法prior UAV和PSO-Z为指定区域中用户提供服务的任务率进行仿真,其结果如图4所示。Simulation 2, when the tolerable time delay is 1s and the number of users is 300, the task rate of the present invention and the comparative method prior UAV and PSO-Z providing services to users in the designated area is simulated at different time points, and the results are shown in Figure 4 shown.
从图4中可以看出,在不同时间点本发明的任务完成率始终高于prior UAV算法,在部分时间点本发明与PSO-Z的任务完成率相同。It can be seen from FIG. 4 that the task completion rate of the present invention is always higher than that of the prior UAV algorithm at different time points, and the task completion rate of the present invention is the same as that of PSO-Z at some time points.
图3和图4表明,本发明在减少成本的同时,能尽早完成用户的计算任务,给用户提供一个很好的体验。Fig. 3 and Fig. 4 show that the present invention can complete the user's computing task as soon as possible while reducing the cost, and provide the user with a good experience.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310715209.5A CN116634452B (en) | 2023-06-15 | 2023-06-15 | Deployment and offloading methods for drone-assisted edge computing networks |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310715209.5A CN116634452B (en) | 2023-06-15 | 2023-06-15 | Deployment and offloading methods for drone-assisted edge computing networks |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN116634452A true CN116634452A (en) | 2023-08-22 |
| CN116634452B CN116634452B (en) | 2025-11-25 |
Family
ID=87621284
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202310715209.5A Active CN116634452B (en) | 2023-06-15 | 2023-06-15 | Deployment and offloading methods for drone-assisted edge computing networks |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116634452B (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117295087A (en) * | 2023-09-01 | 2023-12-26 | 重庆邮电大学 | Task unloading method based on service cache in low-altitude unmanned aerial vehicle network |
| CN118612750A (en) * | 2024-06-03 | 2024-09-06 | 西南大学 | A multi-UAV assisted edge computing joint offloading and deployment method |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20210026171A (en) * | 2019-08-29 | 2021-03-10 | 인제대학교 산학협력단 | Multi-access edge computing based Heterogeneous Networks System |
| KR20210063990A (en) * | 2019-11-25 | 2021-06-02 | 경희대학교 산학협력단 | Method of machine learning based unmanned aerial vehicle mobile edge server collabrative task matching and offloading |
| CN113391647A (en) * | 2021-07-20 | 2021-09-14 | 中国人民解放军国防科技大学 | Multi-unmanned aerial vehicle edge computing service deployment and scheduling method and system |
| CN114048689A (en) * | 2022-01-13 | 2022-02-15 | 南京信息工程大学 | Multi-unmanned aerial vehicle aerial charging and task scheduling method based on deep reinforcement learning |
| CN115334591A (en) * | 2022-06-30 | 2022-11-11 | 南京邮电大学 | A multi-terminal multi-UAV hierarchical scheduling assisted edge computing resource allocation method |
| CN115348558A (en) * | 2022-08-10 | 2022-11-15 | 福州大学 | A Convex Optimization-Based Joint Optimization Method for UAV Deployment and Computing Offloading |
| US20220369195A1 (en) * | 2021-05-12 | 2022-11-17 | At&T Intellectual Property I, L.P. | Device and method for evaluating target cells for aerial equipment communicating over a terrestrial network |
-
2023
- 2023-06-15 CN CN202310715209.5A patent/CN116634452B/en active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20210026171A (en) * | 2019-08-29 | 2021-03-10 | 인제대학교 산학협력단 | Multi-access edge computing based Heterogeneous Networks System |
| KR20210063990A (en) * | 2019-11-25 | 2021-06-02 | 경희대학교 산학협력단 | Method of machine learning based unmanned aerial vehicle mobile edge server collabrative task matching and offloading |
| US20220369195A1 (en) * | 2021-05-12 | 2022-11-17 | At&T Intellectual Property I, L.P. | Device and method for evaluating target cells for aerial equipment communicating over a terrestrial network |
| CN113391647A (en) * | 2021-07-20 | 2021-09-14 | 中国人民解放军国防科技大学 | Multi-unmanned aerial vehicle edge computing service deployment and scheduling method and system |
| CN114048689A (en) * | 2022-01-13 | 2022-02-15 | 南京信息工程大学 | Multi-unmanned aerial vehicle aerial charging and task scheduling method based on deep reinforcement learning |
| CN115334591A (en) * | 2022-06-30 | 2022-11-11 | 南京邮电大学 | A multi-terminal multi-UAV hierarchical scheduling assisted edge computing resource allocation method |
| CN115348558A (en) * | 2022-08-10 | 2022-11-15 | 福州大学 | A Convex Optimization-Based Joint Optimization Method for UAV Deployment and Computing Offloading |
Non-Patent Citations (4)
| Title |
|---|
| YEJUN HE ET AL.: ""Fairness-Based 3-D Multi-UAV Trajectory Optimization in Multi-UAV-Assisted MEC System"", 《 IEEE INTERNET OF THINGS JOURNAL》, 31 January 2023 (2023-01-31) * |
| 谢文婷: ""空地协同隐蔽移动边缘计算系统的能耗最小化研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 31 May 2023 (2023-05-31) * |
| 闫伟;申滨;刘笑笑;: "基于自适应遗传算法的MEC任务卸载及资源分配", 电子技术应用, no. 08, 6 August 2020 (2020-08-06) * |
| 陈阳等: ""多无人机协同陆地设施辅助移动边缘计算的系统能耗最小化方法"", 《电子学报》, 3 March 2023 (2023-03-03) * |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117295087A (en) * | 2023-09-01 | 2023-12-26 | 重庆邮电大学 | Task unloading method based on service cache in low-altitude unmanned aerial vehicle network |
| CN117295087B (en) * | 2023-09-01 | 2025-09-26 | 重庆邮电大学 | A task offloading method based on service cache in low-altitude UAV networks |
| CN118612750A (en) * | 2024-06-03 | 2024-09-06 | 西南大学 | A multi-UAV assisted edge computing joint offloading and deployment method |
Also Published As
| Publication number | Publication date |
|---|---|
| CN116634452B (en) | 2025-11-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113645143B (en) | An optimization method and device for an air trunking communication network | |
| CN110602633B (en) | Explosive flow-oriented mobile edge computing unmanned aerial vehicle cluster auxiliary communication method | |
| Zhou et al. | An air-ground integration approach for mobile edge computing in IoT | |
| CN112784362B (en) | A hybrid optimization method and system for drone-assisted edge computing | |
| Chen et al. | VFC-based cooperative UAV computation task offloading for post-disaster rescue | |
| CN111884829B (en) | Approaches to Maximizing the Benefits of Multi-UAV Architectures | |
| CN111342993A (en) | A deployment architecture and control method of SDN-based air-space-ground controller | |
| CN116634452B (en) | Deployment and offloading methods for drone-assisted edge computing networks | |
| CN113163377B (en) | A method and device for deployment and resource allocation of UAV network | |
| CN109213712B (en) | Service providing method and device for machine type communication system and electronic equipment | |
| CN112000481A (en) | A task offloading method to maximize the computing power of D2D-MEC system | |
| CN116634466A (en) | Task offloading and resource allocation method based on unmanned aerial vehicle cooperative multi-access edge computing | |
| CN115150781A (en) | A resource allocation method for UAV-assisted edge computing based on task priority | |
| CN115514405A (en) | LEO edge unloading method for joint calculation and communication resource allocation | |
| Zhang et al. | Joint task scheduling and multi-UAV deployment for aerial computing in emergency communication networks | |
| CN118612797A (en) | Dual-time-scale joint optimization service caching and computation offloading method for UAV-assisted MEC | |
| CN115334591A (en) | A multi-terminal multi-UAV hierarchical scheduling assisted edge computing resource allocation method | |
| CN117519252A (en) | Multi-unmanned aerial vehicle layout and task unloading decision-making method based on multi-objective joint optimization | |
| CN118331302A (en) | A heterogeneous UAV-assisted mobile edge computing scheduling system and method under time window constraints | |
| Zhao et al. | Edge server and service deployment considering profit with improved pso in iov | |
| Gang et al. | Joint task offloading and resource allocation strategy for space-air-ground integrated vehicular networks | |
| CN116781144A (en) | Method, device and storage medium for carrying edge server by unmanned aerial vehicle | |
| CN114520991B (en) | Unmanned aerial vehicle cluster-based edge network self-adaptive deployment method | |
| CN115955711A (en) | A resource allocation method for air-to-ground 6G network with optimal energy efficiency | |
| CN112969157B (en) | Network load balancing method for unmanned aerial vehicle |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant |