基于无人机的移动边缘计算网络(Matlab代码实现)
创始人
2024-04-22 18:34:03
0

    目录

💥1 概述

📚2 运行结果

🎉3 参考文献

👨‍💻4 Matlab代码


💥1 概述

空中无人机(UAV)长期以来一直被用作移动网络中的网络处理器,但它们现在被用作移动边缘计算(MEC)中的移动服务器。由于它们的灵活性、可移植性、强大的视线通信联系以及低成本、可改变的使用,它们在研究和商业应用中变得更加流行。广泛的民用服务现在可能因其基本特性而得到支持,包括运输和工业监测、农业以及森林火灾和无线服务。本项目研究了基于无人机的移动边缘计算网络,其中无人机(UAV)进行移动终端用户提供的计算。

要运行代码,请执行以下步骤:
对于单次运行,请使用main.m。
本代码是程序的主要入口,它自动绘制和保存图形。
用于批处理运行。使用main_loop.m。
本代码用于循环以获取批处理数据,其中可以将参数设置为一系列值,以检查它们对结果的影响。例如,K_list=[5],M_list=[0.01,0.02]
运行main_lop.m将自动输出记录结果的表格。
所有其他脚本和函数都在这两个脚本中调用。

📚2 运行结果

 

 

🎉3 参考文献

[1]邱铭. 基于微波供能的无人机移动边缘计算网络研究[D].广东工业大学,2020.DOI:10.27029/d.cnki.ggdgu.2020.001588.

👨‍💻4 Matlab代码

主函数部分代码:

%% parameters
global imgnum; %looping times
global N; % divide [0,1]*[0,1] map into N*N grid
global TARGET;
global UAV_info; % UAVs location matrix
global UAVnum;
global UAV_pos; % UAVi's initial position    
global SumTarget;
global needReplan;
global enemysUK;
global enemysUK2plot;
global enemysK;
global enemysSize;
global traceRecord;
global G;

%% initialize target
imgnum=0;
TARGET = round([0.95 0.95]*N);    %target position
%% initialize UAV
UAV_info = UAV_initialize;                   
UAVnum=size(UAV_info,1);
UAV_pos=[];                 
for i=1:UAVnum
    UAV_pos(i,:)=UAV_info(i,1:2);
end
needReplan=ones(1,UAVnum);      %UAVi need to replan when needReplan(i)=1
SumTarget=zeros(1,UAVnum);      %when UAVi's SumTarget(i)=1, don't need further move

%% initialize enemys
enemysUK=enemyGuass;    %Unknown obstacles(includs all UAVs) location matrix
enemysSize=size(enemysUK,1);
enemysUK2plot=enemys();        %used when drawing map

enemysK={}; % no enemy is detected initially
for i=1:UAVnum
    enemysK{i}=[];
end

%% initialize trace record
traceRecord={}; % no record of trace initially
for i=1:UAVnum
    traceRecord{i}=[];
end

%% initialize G Matrix
G={}; 
D=ones(N,N)*N^2;  %initialize D with all elements are N^2 and target 0
D(TARGET(1),TARGET(2))=0;
for i=1:UAVnum
    G{i}=[D];
end

%% parameters
global imgnum; %looping times
global N; % divide [0,1]*[0,1] map into N*N grid
global TARGET;
global UAV_info; % UAVs location matrix
global UAVnum;
global UAV_pos; % UAVi's initial position    
global SumTarget;
global needReplan;
global enemysUK;
global enemysUK2plot;
global enemysK;
global enemysSize;
global traceRecord;
global G;

%% initialize target
imgnum=0;
TARGET = round([0.95 0.95]*N);    %target position
%% initialize UAV
UAV_info = UAV_initialize;                   
UAVnum=size(UAV_info,1);
UAV_pos=[];                 
for i=1:UAVnum
    UAV_pos(i,:)=UAV_info(i,1:2);
end
needReplan=ones(1,UAVnum);      %UAVi need to replan when needReplan(i)=1
SumTarget=zeros(1,UAVnum);      %when UAVi's SumTarget(i)=1, don't need further move

%% initialize enemys
enemysUK=enemyGuass;    %Unknown obstacles(includs all UAVs) location matrix
enemysSize=size(enemysUK,1);
enemysUK2plot=enemys();        %used when drawing map

enemysK={}; % no enemy is detected initially
for i=1:UAVnum
    enemysK{i}=[];
end

%% initialize trace record
traceRecord={}; % no record of trace initially
for i=1:UAVnum
    traceRecord{i}=[];
end

%% initialize G Matrix
G={}; 
D=ones(N,N)*N^2;  %initialize D with all elements are N^2 and target 0
D(TARGET(1),TARGET(2))=0;
for i=1:UAVnum
    G{i}=[D];
end

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...