[go: up one dir, main page]

CN116634452A - Deployment and offloading method of UAV-assisted edge computing network - Google Patents

Deployment and offloading method of UAV-assisted edge computing network Download PDF

Info

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
Application number
CN202310715209.5A
Other languages
Chinese (zh)
Other versions
CN116634452B (en
Inventor
赵林靖
王文秀
张岗山
马建鹏
刘勤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202310715209.5A priority Critical patent/CN116634452B/en
Publication of CN116634452A publication Critical patent/CN116634452A/en
Application granted granted Critical
Publication of CN116634452B publication Critical patent/CN116634452B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W16/00Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
    • H04W16/18Network planning tools
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • H04W28/09Management thereof
    • H04W28/0917Management thereof based on the energy state of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • H04W28/09Management thereof
    • H04W28/0925Management thereof using policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • H04W28/09Management thereof
    • H04W28/0958Management thereof based on metrics or performance parameters
    • H04W28/0967Quality of Service [QoS] parameters
    • H04W28/0975Quality of Service [QoS] parameters for reducing delays
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing 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

The invention discloses a deployment and unloading method of an unmanned aerial vehicle auxiliary edge computing network, which mainly solves the problem of high cost caused by the fact that the number of unmanned aerial vehicles is not deployed according to the number of users in the existing unmanned aerial vehicle provided with an edge computing server, and the implementation scheme is as follows: setting relevant parameters of a user and an unmanned aerial vehicle auxiliary network; setting constraint conditions according to network characteristics; establishing a minimum energy consumption problem P according to the initialized network parameters and constraint conditions; determining the number N of unmanned aerial vehicles, an incidence matrix C, an unloading matrix U, a computing resource matrix F and an unmanned aerial vehicle position matrix Z in a problem P by using an upper layer iteration method and a lower layer iteration method; and carrying out network deployment and calculation task unloading according to the five calculated parameters. According to the invention, under the constraint condition that the tolerable time delay of the calculation task and the upper limit of the calculation resources of the unmanned aerial vehicle are met, the unloading decision and the deployment scheme are optimized according to the position of the user and the calculation task information, the task is completed by using the minimum number of unmanned aerial vehicles, and the network cost can be minimized while the total energy consumption of the system is reduced.

Description

无人机辅助边缘计算网络的部署与卸载方法Deployment and offloading method of UAV-assisted edge computing network

技术领域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≤cmnAccording 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, β G2AA2A =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及无人机的初始位置Z0Step 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和完成的最多任务数nummaxStep 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=num0Otherwise, 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之间的距离dmnFirst, 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 :

其中,λ123为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,FtempOtherwise, 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)

1. The deployment and unloading method of the unmanned aerial vehicle auxiliary edge computing network is characterized by comprising the following steps of:
(1) Setting user related parameters and unmanned aerial vehicle auxiliary network related parameters:
m ground users are randomly distributed in a circular fault area Y with radius 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 computing task A m =(F m ,D m T), wherein F m Representing the number of CPU revolutions required for calculation; d (D) m Representing the calculated data amount; t is a time delay constraint;
let the unmanned aerial vehicle set be g= {1, …, N, …, N }, N be the total number of unmanned aerial vehicles to be determined, the coordinates of the nth unmanned aerial vehicle be (x) n ,y n ,H n ) The depression angle is fixed to be theta, and the maximum covering radius R is H n tan θ, set U n For the maximum value of the number of access users of the unmanned aerial vehicle n, f n,max Is the upper limit of the calculation resource of the unmanned aerial vehicle n, and the transmitting power isHover power of P H None of which is adjustable; let the coordinates of the neighbor base stations be (x 0 ,y 0 ,H);
(2) And establishing a minimum energy consumption problem P according to the initialization parameters:
C3:u mn ≤c mn ,m∈O,n∈G,
C5:c mn d mn ≤R,m∈O,n∈G,
C6:t m ≤T,m∈O,
C7:(x n ,y n )∈Y,
wherein C is the incidence matrix of the unmanned aerial vehicle and the user, and C mn An nth column element of an mth row in C;
u is an unloading matrix, U mn Z is a position matrix of the unmanned aerial vehicle, wherein the element is the mth row and the nth column in U;
f is unmanned aerial vehicle computing resource allocation matrix, F mn For the nth column element of row m in F,
the communication energy consumption of the unmanned aerial vehicle n is sent to the calculation task for the user m; />Computing energy consumption for completing user m task for unmanned plane n,/->Communication energy consumption for transferring the calculation task of user m to the neighbor base station for unmanned plane n, < ->The energy consumption for hovering of the unmanned aerial vehicle n; alpha represents a weight coefficient of unmanned energy consumption compared with user energy consumption, t m Calculating for user m the total time for task completion, d mn Is the horizontal distance between user m and drone n;
(3) Determining the initial number N of unmanned aerial vehicles 0 Initial position Z of unmanned aerial vehicle 0 The method comprises the steps of carrying out a first treatment on the surface of the According to M 0 ,Z 0 Determining an initial correlation matrix C 0 Whether the correlation matrix is a feasible solution fsb_C or not, and an initial unloading matrix U 0 Whether the offload matrix is a feasible solution of fsb_U, initial resource allocation matrix F 0 Minimum energy consumption E min And the maximum number of tasks completed num max
(4) Solving N, Z, C, U, F in problem P using upper and lower layer iterative methods:
(4a) Setting the solving frequency as NoS, and setting the maximum iteration solving frequency as NoS max Stopping deleting the number of unmanned aerial vehicles to be flag, performing current solution for non, initializing NoS=0, flag=0, non=0 and NoS max =1000, initialisation N, Z, C, U, F is equal to N respectively 0 、Z 0 、C 0 、U 0 、F 0
(4b) Judging whether the current solution is a feasible solution or not and whether the number of unmanned aerial vehicles can be continuously reduced or not:
if fsb_c=fsb_u=1 and flag=0, then the current solution is a feasible solution and the number of unmanned aerial vehicles can continue to decrease, execution (4C); otherwise, jumping to the step (4 e);
(4c) Storing the current feasible solution N, Z, C, U, F, and removing a redundant unmanned aerial vehicle to obtain the current unmanned aerial vehicle number N and unmanned aerial vehicle deployment position Z;
(4d) Updating the parameters C, fsb _ C, U, fsb _ U, F, E according to the current N and Z min 、num max Let nos=nos+1, and execute step (4 f);
(4e) Determining parameters Z and Cfsb_ C, U, fsb _ U, F, E of current unmanned aerial vehicle number N by using improved differential evolution algorithm min 、num max
(4f) Judging that NoS is less than NoS max If so, returning to the step (4 b) to continue the iterative solution; otherwise, iteration is terminated to obtain the number N ' of the final solution unmanned aerial vehicle, the position Z ' of the unmanned aerial vehicle, the incidence matrix C ', the unloading matrix U ', and the computing resource allocation matrix F ';
(5) N 'unmanned aerial vehicles are selected to be deployed according to a deployment matrix Z';
(6) Determining the relevance of the user and the unmanned aerial vehicle according to the relevance matrix C': if element C in C mn =1, associating user m with unmanned aerial vehicle n, and transmitting the calculation task of user m to unmanned aerial vehicle n; otherwise, user m is not associated with unmanned plane n;
(7) According to the element values U in the unloading decision matrix U mn Determining an execution object of a user computing task:
if u mn =1, then the drone n follows the element F in the resource allocation matrix F mn Distributing computing resources to users to finish computing tasks of the user m;
otherwise, the associated unmanned aerial vehicle n transfers the calculation task of the user m to the neighbor base station, and the neighbor base station completes the calculation task.
2. The method of claim 1, wherein the minimizing energy consumption problem P is established in step (2) according to the initialization parameters, as follows:
(2a) According to the position coordinates of the user m and the unmanned plane n, obtaining a horizontal distance d between the user m and the unmanned plane n mn And horizontal distance d between unmanned plane n and neighbor base station nB
(2b) According to the horizontal distance d in (2 a) mn And horizontal distance d between unmanned plane n and neighbor base station nB Establishing a channel model based on free space path loss, namely channel power gain h from user m to unmanned plane n mn And channel power gain h between unmanned plane n and neighbor base station nB
Wherein beta is G2A And beta A2A The space-to-ground channel gain and the space-to-space channel gain when the reference distance is one meter are respectively represented;
(2c) According to the channel power gain h from user m to drone n in (2 b) mn And channel power gain h between unmanned plane n and neighbor base station nB Obtaining the transmission rate r from the user m to the unmanned plane n by using the shannon theorem mn And the transmission rate r between the unmanned aerial vehicle n and the neighbor base station nB
Wherein B is 1 Representing transmission bandwidth between user and unmanned aerial vehicle, B 2 Representing transmission bandwidth between unmanned aerial vehicle and neighbor base station, P m For the transmit power of the user m device,for the transmitting power of unmanned plane N, N 0 Is the noise power spectral density;
(2d) Calculating communication transmission time for transmitting calculation task to unmanned plane n by user mCommunication energy consumption->
(2e) Communication transmission time for transferring calculation task of user n to neighbor base station by unmanned aerial vehicle mCommunication energy consumption
(2f) Calculating processing time required by unmanned plane n to complete task of user mCalculating energy consumption->
Wherein f mn The CPU frequency of the unmanned aerial vehicle n to the user m is represented, and epsilon represents the effective capacitance coefficient of the unmanned aerial vehicle on-board server chip;
(2g) Calculating hovering energy consumption of unmanned plane n
(2h) The following correlation matrix and variables are set:
let C= [ C ] mn ] M×N The association matrix of the unmanned aerial vehicle and the user, c mn =1 means that user m is associated with drone n, c mn =0 indicates no association;
let U= [ U ] mn ] M×N Unloading the decision matrix for the user's calculation, when c mn =1 and u mn =1 denotes that unmanned plane n serves user m, c mn =1 and u mn =0 means that the associated unmanned plane n transfers the calculation task of the user m to the neighbor base station, and the neighbor base station completes the calculation task;
let F= [ F mn ] M×N Allocating a matrix for computing resources;
let Z= [ (x) n ,y n )] N×1 Is a position matrix of the unmanned plane;
the total time for completing the calculation task of the user is set as follows:
from the results of (2 d) (2 e) (2 f) (2 g), the total system energy consumption was:
(2i) Setting constraint conditions:
according to the characteristic that one user can only be associated with one unmanned aerial vehicle and all users need to be covered, a first constraint condition is set:
according to the limit that the number of users accessed by each unmanned aerial vehicle cannot exceed the maximum number of users accessed, setting a second constraint condition
According to which unmanned aerial vehicle can only be associatedIs provided with a third constraint u mn ≤c mn
Setting a fourth constraint according to the limit that the sum of the computing resources allocated to the users in the coverage area by the unmanned aerial vehicle m does not exceed the maximum value of the computing resources
According to the condition that the user associated with the unmanned aerial vehicle needs to be in the coverage range, setting a fifth constraint c mn d mn ≤R;
Setting a sixth constraint t according to the limit that the task completion time of the user n does not exceed the maximum tolerance time delay m ≤T;
According to the limitation that the horizontal position of the unmanned aerial vehicle needs to be in the range of the fault base station, a seventh constraint condition (x n ,y n )∈Y;
(2j) The energy consumption minimization problem P is expressed as follows, in combination with the constraints and parameters described above:
C3:u mn ≤c mn ,m∈O,n∈G,
C5:c mn d mn ≤R,m∈O,n∈G,
C6:t m ≤T,m∈O,
C7:(x n ,y n )∈Y,
where α represents a weight coefficient of unmanned energy consumption compared to user energy consumption.
3. The method according to claim 1, wherein the number N of unmanned aerial vehicles is determined in step (3) 0 Unmanned plane position Z 0 The implementation is as follows:
(3a) Initializing the number of unmanned aerial vehicles to be a larger value N 0 =2×(M/U n );
(3b) Determining an initial position Z of the unmanned aerial vehicle through Kmeans++ algorithm 0 The number of cycles iter=0 is set:
(3b1) The number N of unmanned aerial vehicles is calculated by means of Kmeans++ algorithm 0 As class number, clustering is carried out according to the position of the user, and a clustering center is used as the deployment position of the unmanned aerial vehicle;
(3b2) Determining a candidate set V of each user m to execute the task according to the unmanned aerial vehicle deployment position obtained in (3 b 1) m
(3 b2 a) calculating the distance d between the user m and the unmanned plane n mn
(3 b2 b) judgment of d mn Whether < R holds: if so, the distance between the unmanned aerial vehicle and the user is smaller than the coverage radius of the unmanned aerial vehicle, and the unmanned aerial vehicle n is listed as a candidate set V of the user m m In (a) and (b);
(3b3) Determining an initial position Z of an unmanned aerial vehicle 0
(3 b3 a) determining whether the candidate set for all users is empty: if not, the current unmanned plane position is taken as an initial position Z 0 The method comprises the steps of carrying out a first treatment on the surface of the Otherwise, let iter=iter+1, execute step (3 b3 b);
(3 b3 b) judging whether the item > 1000 is true:
if so, the fact that the initial position of the unmanned aerial vehicle meeting the constraint is not found all the time through multiple clustering is indicated, and a clustering center obtained in the last iteration is used as the initial position of the unmanned aerial vehicle;
Otherwise, returning to the step (3 b 1) to solve the initial position of the unmanned aerial vehicle again.
4. According to claim 1The method is characterized in that in the step (3), the method is carried out according to N 0 ,Z 0 Determining an association matrix C 0 And whether the association is a viable solution fsb_c, implemented as follows:
(3c) Obtaining an association matrix C by adopting greedy association strategy 0 And whether the association is a feasible solution fsb_c:
(3c1) Calculating the distance d between the user m and the unmanned plane n mn Will d mn Unmanned plane n < R listed in candidate set V for user m m In (a) and (b);
(3c2) All users are classified into two categories according to the following criteria:
first category: candidate set V m Only one unmanned aerial vehicle alternative, namely the user is only in the coverage radius of one unmanned aerial vehicle;
the second category: candidate set V m A plurality of unmanned aerial vehicle alternatives are provided, which indicates that the user is in the coverage range of a plurality of unmanned aerial vehicles;
the associated priority of the first type of task is higher than that of the second type of task;
(3c3) Performing association according to the following association criteria to obtain an association matrix C 0 Whether the solution is a viable solution fsb_c:
(3 c3 a) determining whether the drones in the first class of user candidate set are full: if not full, let the corresponding c mn =1, representing association;
(3 c3 b) according to the second class of user candidate sets V m The element numbers in the list are sequenced in an ascending order, the association condition is determined for the users with small candidate sets preferentially, and for the user m, the association condition is determined according to the candidate set V m According to the distance from each candidate unmanned aerial vehicle to the user m, sorting according to ascending order of the number of access users of the unmanned aerial vehicles if the distances are equal, and preferentially associating the users to unmanned aerial vehicles which are close in distance and less in number of access users;
(3c4) Judging whether the candidate set is empty or whether associable unmanned aerial vehicles in the candidate set are all full according to the strategy:
if yes, the association fails, fsb_c=0;
otherwise, the association is successful, fsb_c=1.
5. The method according to claim 1, wherein in step (3) according to N 0 ,Z 0 Determining an unloading matrix U 0 Whether the offload matrix is a feasible solution fsb_U, resource allocation matrix F 0 The implementation is as follows:
(3d) The minimum resources f required for each user to calculate at different drones are deduced from mn,min
(3e) Solving initialization unloading matrix U 0
(3e1) According to N 0 ,Z 0 ,C 0 And f mn,min Simplifying problem P as related to offload matrix U 0 0-1 programming problem P1:
s.t.P1:C3,C4,C6
(3e2) Solving P1 by using branch delimitation method to obtain U 0 And fsb_U representing whether the offload matrix is a feasible solution, i.e. solving with library functions in simulation software for branch-and-bound methods;
(3f) According to U 0 Element u in (3) mn Calculation F 0 Elements of (a) and (b): f (f) mn =u mn f mn,min Finally, a computing resource allocation matrix F is obtained 0 =[f mn ] M×N
6. The method according to claim 1, wherein in step (3) according to N 0 ,Z 0 Determining minimum energy consumption E min And a maximum number of tasks completed num max The implementation is as follows:
(3g) It is determined whether the initial solution is a feasible solution, i.e., whether fsb_c=fsb_u=1 holds:
if a solution is feasible, according to N 0 、Z 0 、C 0 、U 0 、F 0 Calculating the total system energy consumption E corresponding to the current solution 0 Initializing a minimum energy consumption E of the system min =E 0 Number of tasks at maximum num max =M;
Otherwise, calculating the number num of users completing the task in the time delay constraint 0 Initializing a minimum energy consumption E of the system min The maximum number of tasks num is completed with a maximum value max =num 0
7. The method of claim 1, wherein step (4C) stores the current feasible solutions N, Z, C, U, F and removes a redundant unmanned aerial vehicle to obtain the current N and Z, as follows:
(4c1) Setting N temp ,Z temp ,C temp ,U temp ,F temp The five temporary values are assigned with 0 and are used for storing feasible N, Z, C, U and F;
(4c2) Let N temp ,Z temp ,C temp ,U temp ,F temp Respectively equal to N, Z, C, U and F;
(4c3) Calculating Euclidean distance d between unmanned aerial vehicles in Z n1-n2 D is as follows n1-n2 Representing a distance between unmanned plane n1 and unmanned plane n 2;
(4c4) According to the calculated Euclidean distance d n1-n2 Finding out two unmanned aerial vehicles n1 'and n2' with minimum distances among all unmanned aerial vehicles;
(4c5) Forming a first set { d ] by the distance between the unmanned aerial vehicle n1' and other unmanned aerial vehicles n1'-1 ,d n1'-2 ,…,d n1'-n The distance between the unmanned plane n2' and other unmanned planes forms a second set { d }, and n2'-1 ,d n2'-3 ,…,d n2'-n -and ordering the elements in the two sets in ascending order;
(4c6) Comparing the minimum distance value in the distance set of the unmanned plane n1 'with the minimum distance value in the distance set of the unmanned plane n 2':
if the minimum distance value in the unmanned plane n1' is smaller than the minimum distance value in the unmanned plane n2', deleting the unmanned plane n1';
if the minimum distance value in the unmanned plane n1' is larger than the minimum distance value in the unmanned plane n2', deleting the unmanned plane n2';
if the two are equal, comparing the next-smallest distance value in the two unmanned aerial vehicle sets, and the like until the two unmanned aerial vehicle sets are not equal;
and finally obtaining the number of the unmanned aerial vehicles and the deployment position after deletion, namely the current number N of the unmanned aerial vehicles and the deployment position Z.
8. The method according to claim 1, wherein step (4 d) determines, based on the current number N of drones and the deployment location Z, an association matrix C and whether the association is a feasible solution fsb_c, implemented as follows:
(4d1) Determining an association matrix C and whether the association is a feasible solution fsb_C according to a greedy association strategy:
(4 d1 a) according to the distance d from the user m to the unmanned plane n mn Constructing a candidate unmanned aerial vehicle set V for each user m to complete tasks m
First, the distance d between the user m and the unmanned plane n is calculated mn
Then, judge d mn Whether < R holds:
if so, the distance between the unmanned aerial vehicle and the user is smaller than the coverage radius of the unmanned aerial vehicle, and the unmanned aerial vehicle n is listed in a candidate set V of the user m m In (a) and (b);
otherwise, not listing unmanned plane n in candidate set V of user m m In (a) and (b);
(4 d1 b) classifying all users into two categories according to the following criteria:
will candidate set V m Only one unmanned aerial vehicle alternative set is used as a first class;
will candidate set V m A plurality of unmanned aerial vehicle alternative sets are used as a second class;
the associated priority of the first type of task is higher than that of the second type of task;
(4 d 1C) performing association according to the following association criteria to obtain an association matrix C and whether the association matrix is a feasible solution fsb_C:
firstly, judging whether unmanned aerial vehicles in a first type of user candidate set are full: if not full, let the corresponding c mn =1, representing association; otherwise, c mn =0;
Then, according to the second class of user candidate sets V m The element numbers in the list are sequenced in an ascending order, the association condition is determined for the users with small candidate sets preferentially, and for the user m, the association condition is determined according to the candidate set V m According to the distance from each candidate unmanned aerial vehicle to the user m, sorting according to ascending order of the number of access users of the unmanned aerial vehicles if the distances are equal, and preferentially associating the users to unmanned aerial vehicles which are close in distance and less in number of access users;
(4 d1 d) judging whether the candidate set is empty or the associable unmanned aerial vehicles in the candidate set are all full according to the strategy:
if yes, the association fails, fsb_c=0;
otherwise, the association is successful, fsb_c=1.
9. The method according to claim 1, wherein step (4 d) determines whether the offload matrix U, the offload matrix is a feasible solution fsb_u, the resource allocation matrix F, the minimum energy consumption E according to the current number of unmanned aerial vehicles N and the deployment location Z min And a maximum number of tasks completed num max The implementation is as follows:
(4d2) The minimum resources f required for each user to calculate at different drones are deduced from mn,min
(4d3) Solving an initialization unloading matrix U:
(4 d3 a) is according to N, Z, C and f mn,min Simplifying the problem P into a 0-1 programming problem P1 with respect to the offload matrix U:
s.t.P1:C3,C4,C6
(4 d3 b) solving the P1 by using a branch-and-bound method to obtain U and fsb_U which indicates whether the decision is a feasible solution, namely solving by using a library function related to the branch-and-bound method in simulation software;
(4d4) According to element U in U mn Calculation F 0 Elements of (a) and (b): f (f) mn =u mn f mn,min Finally, a computing resource allocation matrix F= [ F ] is obtained mn ] M×N
(4d5) It is determined whether the initial solution is a feasible solution, i.e., whether fsb_c=fsb_u=1 holds:
if yes, calculating the total system energy consumption E corresponding to the current solution according to N, Z, C, U, F, and letting E min =e, the maximum number of tasks done num max =M;
Otherwise, solving the number of calculation tasks num completed by the solution, and judging that num > num max If true, let num max =num; returning to step (4 b).
10. The method of claim 1, wherein the step (4 e) uses a modified differential evolution algorithm to find Z, C, fsb _ C, U, fsb _ U, F, E for the current number N of drones min 、num max The implementation is as follows:
(4e1) Taking the current unmanned aerial vehicle deployment position Z as a parent population Q, so the population size is N, and the ith individual value in the population corresponds to the unmanned aerial vehicle deployment position, so the ith individual Q in the population i The method comprises the following steps: q i =[q ix ,q iy ];
(4e2) Performing mutation and crossover operation on the population Q for N times to obtain N experimental vector individuals, and forming an experimental vector population A:
(4 e2 a) performing a mutation operation according to the following formula to obtain a mutation vector e i
Wherein lambda is 123 For randomly selected in QThree mutually unequal individuals, g is a differential variation factor, and the value is 0.4.
(4 e2 b) after the mutation vector is established, the mutation vector e i With one random individual Q of Q i Crossing to obtain an experimental individual vector a i
Wherein, the experimental individual vector a i Is a first dimension a of (2) ix The method comprises the following steps:
experimental individual vector a i Is a second dimension a of (2) iy The method comprises the following steps:
in the above formula rate c ∈[0,1]Is the crossing rate, J r Randomly selecting one dimension in x and y;
(4 e2 c) vector a from N experimental individuals i Forming an experimental vector population A;
(4e3) Randomly replacing one individual in the Q with the individuals in the A in sequence to obtain a new population W;
(4e4) Unmanned aerial vehicle deployment position Z corresponding to population W W And the number N of unmanned aerial vehicles, and determining a corresponding incidence matrix C by adopting the method in (4 b) W Unloading matrix U W Resource allocation matrix F W fsb_C and fsb_U;
(4e5) According to N, Z W 、C W 、U W 、F W Calculating the number of completed tasks num W Let nos=nos+1;
(4e6) Judging num W >num max Whether or not it is: if yes, make the number of tasks of the user number num at maximum max =num W And let Z, C, U, F respectivelyEqual to Z W ,C W ,U W ,F W The method comprises the steps of carrying out a first treatment on the surface of the Otherwise, not operating;
(4e7) Judging num W Whether or not M holds:
if so, then the current solution is indicated as a feasible solution, again according to N, Z W 、C W 、U W 、F W Calculating corresponding system energy consumption E W Executing (4 e 8);
if not, it indicates that the current solution is not a feasible solution, i.e., num W Let not=not+1, execute (4 e 9);
(4e8) Judgment E W >E min Whether or not it is:
if yes, the solution obtained by the corresponding deployment position of the current population is a feasible solution, the energy consumption is lower, and E is caused to be min =E W And let five temporary solutions N temp 、Z temp 、C temp 、U temp 、F temp Respectively equal to N, Z W 、C W 、U W 、F W Judging whether the flag is 0 at this time: if yes, the number of unmanned aerial vehicles can be continuously deleted, and the non=0; otherwise, executing the step (4 e 9);
if not, not operating;
(4e9) Judging whether the infeasible solution times not=100 is satisfied: if yes, the fact that the number of the current unmanned aerial vehicles still does not find a group of feasible solutions after multiple iterations is indicated, the flag=1 is indicated to stop deleting the number of the unmanned aerial vehicles, and the method is executed (4 e 10);
(4e10) Judging N temp ,Z temp ,C temp ,U temp ,F temp Whether there are stored feasible solutions:
if not, the feasible solution of the problem is not found all the time, and the maximum number of tasks is num max Outputting, and ending the algorithm;
otherwise, let N, Z, C, U, F respectively equal to N temp ,Z temp ,C temp ,U temp ,F temp
CN202310715209.5A 2023-06-15 2023-06-15 Deployment and offloading methods for drone-assisted edge computing networks Active CN116634452B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (7)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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