无人机集群路径规划:麻雀搜索算法(Sparrow Search Algorithm, SSA)​求解无人机集群路径规划,提供MATLAB代码

server/2024/9/22 17:42:09/

 一、单个无人机路径规划模型介绍

无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化飞行时间和节省能量消耗。

二、无人机集群模型介绍

本文中以5个无人机构成无人机集群,采用优化算法同时规划五个无人机的路径,每个无人机的成本由路径成本、威胁成本、高度成本和转角成本四个部分构成。无人机集群的总成本为5个无人机成本之和。

三、 麻雀搜索算法求解无人机集群路径规划

麻雀搜索算法(Sparrow Search Algorithm, SSA)是于2020年提出的。SSA 主要是受麻雀的觅食行为和反捕食行为的启发而提出的。该算法比较新颖,具有寻优能力强,收敛速度快的优点

[1]薛建凯. 一种新型的群智能优化技术的研究与应用[D].东华大学,2020.

3.1部分代码

close all
clear
clc
dbstop if all error
global model
model = CreateModel(); % 创建模型
F='F1';
[Xmin,Xmax,dim,fobj] = fun_info(F);%获取函数信息
pop=50;%种群大小(可以自己修改)
maxgen=200;%最大迭代次数(可以自己修改)
[fMin,bestX,ConvergenceCurve] = (pop, maxgen,Xmin,Xmax,dim,fobj);%% 计算无人机的相关信息
N=length(bestX)/(3*model.n);%无人机的数量
St=1;
for i=1:N %计算每个无人机的适应度值Et=St+3*model.n-1;Xbest=bestX(St:Et);BestPosition(i,:) = SphericalToCart(Xbest);%% 计算航迹坐标BestFit(i)=MyCost(Xbest,1);%% 计算每个无人机的适应度值UAVfit(i,:)=MyCost(Xbest,2);St=Et+1;
end%% 保存结果
save BestPosition BestPosition %每个无人机的航迹坐标
save BestFit BestFit %每个无人机的总成本
save UAVfit UAVfit % 每个无人机的四个成本
save ConvergenceCurve ConvergenceCurve % 无人机集群的成本随迭代次数的变化

3.2部分结果

四、完整MATLAB代码


http://www.ppmy.cn/server/120383.html

相关文章

vscode 配置rust格式化的正确方法

vscode 配置rust格式化的正确方法: 在settings.json里输入: "[rust]": {"editor.defaultFormatter": "rust-lang.rust-analyzer","editor.formatOnSave": true}

简单了解一下SurfaceView

0 背景 最近好几次面试被问到SurfaceView的特点了,都没回答出来。 SurfaceView和TextureView也是Compose这样的声明式ui唯二实现不了控件;因为他们就不是View,而是Android提供的和Surface相关的显示系统 。 特此简单了解一下。 1 应用场景…

mysql时间日期函数、获取当前日期和时间、日期和时间格式化、提取日期部分、日期和时间的算术操作、其他日期函数、日期和时间的比较、日期字符串转换

获取当前日期和时间 NOW():返回当前的日期和时间。CURDATE():返回当前的日期。CURTIME():返回当前的时间。 SELECT NOW(), CURDATE(), CURTIME(); 日期和时间格式化 DATE_FORMAT(date, format):根据指定的格式字符串格式化日期…

如何将MySQL卸载干净(win11)

相信点进来的你肯定是遇到了这个问题,那就是在安装MySQL的时候操作错误,最后结果不是自己想要的。卸载重新安装又发现安装不了。其实最主要的原因就是没有将MySQL卸载干净,那么如何把MySQL卸载干净?下面本篇文章就来给大家一步步介…

YOLOv8 OBB win10+ visual 2022移植部署

前言 想做一个目标旋转角度检测的工程,但是网上多少python的,或者linux的。在win10 visual 2022移植部署,记录一下。 参考 这篇文章没有C win10 环境下的部署教程,我相对于是对此做了补充。 1、下载工程 https://github.com/sh…

字符函数与字符串函数

目录 一、字符分类函数 二.字符转换函数 三.字符串函数 一、字符分类函数 C语言中有一系列的函数是专门做字符分类的,也就是一个字符是属于什么类型的字符的,这些函数的使用都需要包括一个头文件是 ctype.h isalnum 检查字符是否为字母数字&#xf…

第160天:安全开发-Python-蓝队项目流量攻击分析文件动态监控Webshell检测

案例一:Python-蓝队项目-Scapy 流量分析 通过 pip 来安装 Scapy。在命令行中运行以下命令: pip install scapy 一个简单的python抓取包的demo from scapy.all import * def handlePacket(p):# p 捕获到的数据包p.show() sniff(prnhandlePacket,count0)…

element-ui表格操作大全

一、基础表格展示 数据绑定&#xff1a; 在el-table元素中注入data对象数组&#xff0c;在el-table-column&#xff08;列&#xff09;中使用prop属性来对应对象中的键名&#xff0c;使用label属性定义列名 元素案例内容&#xff1a; <el-table border :data"userL…