无人机航迹规划(四):七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划(提供MATLAB代码)

news2024/9/30 1:26:13

一、七种算法(DBO、LO、SWO、COA、LSO、KOA、GRO)简介

1、蜣螂优化算法DBO

蜣螂优化算法(Dung beetle optimizer,DBO)由Jiankai Xue和Bo Shen于2022年提出,该算法主要受蜣螂的滚球、跳舞、觅食、偷窃和繁殖行为的启发所得。单目标优化:蜣螂优化算法(Dung beetle optimizer,DBO)_蜣螂算法-CSDN博客

参考文献:Xue, J., Shen, B. Dung beetle optimizer: a new meta-heuristic algorithm for global optimization. J Supercomput (2022). Dung beetle optimizer: a new meta-heuristic algorithm for global optimization | The Journal of Supercomputing

2、狐猴优化算法LO

狐猴优化算法(Lemurs Optimizer,LO)由Ammar Kamal Abasi等人于2022年提出,该算法模拟狐猴的跳跃和跳舞行为,具有结构简单,思路新颖,搜索速度快等优势。单目标应用:基于狐猴优化算法(Lemurs Optimizer,LO)的微电网优化调度MATLAB_狐猴优化算法什么时候提出的-CSDN博客

参考文献:

[1]Abasi AK, Makhadmeh SN, Al-Betar MA, Alomari OA, Awadallah MA, Alyasseri ZAA, Doush IA, Elnagar A, Alkhammash EH, Hadjouni M. Lemurs Optimizer: A New Metaheuristic Algorithm for Global Optimization. Applied Sciences. 2022; 12(19):10057. Applied Sciences | Free Full-Text | Lemurs Optimizer: A New Metaheuristic Algorithm for Global Optimization

3、蜘蛛蜂优化算法SWO

蜘蛛蜂优化算法(Spider wasp optimizer,SWO)由Mohamed Abdel-Basset等人于2023年提出,该算法模型雌性蜘蛛蜂的狩猎、筑巢和交配行为,具有搜索速度快,求解精度高的优势。VRPTW(MATLAB):蜘蛛蜂优化算法SWO求解带时间窗的车辆路径问题VRPTW(提供参考文献及MATLAB代码)_swo蜘蛛峰优化器算法-CSDN博客

参考文献:

[1]Abdel-Basset, M., Mohamed, R., Jameel, M. et al. Spider wasp optimizer: a novel meta-heuristic optimization algorithm. Artif Intell Rev (2023). Spider wasp optimizer: a novel meta-heuristic optimization algorithm | SpringerLink

4、小龙虾优化算法COA

小龙虾优化算法(Crayfsh optimization algorithm,COA)由Jia Heming 等人于2023年提出,该算法模拟小龙虾的避暑、竞争和觅食行为,具有搜索速度快,搜索能力强,能够有效平衡全局搜索和局部搜索的能力。多目标优化算法:基于非支配排序的小龙虾优化算法(NSCOA)MATLAB_小龙虾算法-CSDN博客

参考文献:

[1] Jia, H., Rao, H., Wen, C. et al. Crayfish optimization algorithm. Artif Intell Rev (2023). Crayfish optimization algorithm | SpringerLink

5、光谱优化算法LSO

光谱优化算法(Light Spectrum Optimizer,LSO)由Mohamed Abdel-Basset等人于2022年提出。MD-MTSP:光谱优化算法LSO求解多仓库多旅行商问题MATLAB(可更改数据集,旅行商的数量和起点)-CSDN博客

参考文献:

[1]Abdel-Basset M, Mohamed R, Sallam KM, Chakrabortty RK. Light Spectrum Optimizer: A Novel Physics-Inspired Metaheuristic Optimization Algorithm. Mathematics. 2022; 10(19):3466. Mathematics | Free Full-Text | Light Spectrum Optimizer: A Novel Physics-Inspired Metaheuristic Optimization Algorithm

6、开普勒优化算法KOA

开普勒优化算法(Kepler optimization algorithm,KOA)由Mohamed Abdel-Basset等人于2023年提出。五种最新优化算法(SWO、ZOA、EVO、KOA、GRO)求解23个基准测试函数(含参考文献及MATLAB代码)_目前最新的种群优化算法-CSDN博客

参考文献:

Mohamed Abdel-Basset, Reda Mohamed, Shaimaa A. Abdel Azeem, Mohammed Jameel, Mohamed Abouhawwash, Kepler optimization algorithm: A new metaheuristic algorithm inspired by Kepler’s laws of planetary motion, Knowledge-Based Systems, 2023. DOI: Redirecting

7、淘金优化算法GRO

淘金优化算法(Gold rush optimizer,GRO)由Kamran Zolf于2023年提出,其灵感来自淘金热,模拟淘金者进行黄金勘探行为。VRPTW(MATLAB):淘金优化算法GRO求解带时间窗的车辆路径问题VRPTW(提供参考文献及MATLAB代码)-CSDN博客

参考文献:

K. Zolfi. Gold rush optimizer: A new population-based metaheuristic algorithm. Operations Research and Decisions 2023: 33(1), 113-150. DOI 10.37190/ord230108

二、模型简介

单个无人机三维路径规划问题及其建模_IT猿手的博客-CSDN博客

参考文献:

[1]胡观凯,钟建华,李永正,黎万洪.基于IPSO-GA算法的无人机三维路径规划[J].现代电子技术,2023,46(07):115-120

三、DBO、LO、SWO、COA、LSO、KOA、GRO求解无人机路径规划

(1)部分代码

close all
clear  
clc
、warning off;
%% 三维路径规划模型定义
global startPos goalPos N
N=2;%待优化点的个数(可以修改)
startPos = [10, 10, 80]; %起点(可以修改)
goalPos = [80, 90, 150]; %终点(可以修改)
SearchAgents_no=30; % 种群大小(可以修改)
Function_name='F1'; %F1:随机产生地图 F2:导入固定地图
Max_iteration=100; %最大迭代次数(可以修改)
% Load details of the selected benchmark function
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);
AlgorithmName={'DBO','LO','SWO','COA','LSO','KOA','GRO'};%算法名称
addpath('./AlgorithmCode/')%添加算法路径
bestFit=[];%保存各算法的最优适应度值
for i=1:size(AlgorithmName,2)%遍历每个算法,依次求解当前问题
Algorithm=str2func(AlgorithmName{i});%获取当前算法名称,并将字符转换为函数
[Best_score,Best_pos,Convergence_curve]=Algorithm(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%当前算法求解
%将当前算法求解结果放入data中
data(i).Best_score=Best_score;%保存该算法的Best_score到data
data(i).Best_pos=Best_pos;%保存该算法的Best_pos到data
data(i).Convergence_curve=Convergence_curve;%保存该算法的Convergence_curve到data
bestFit=[bestFit data(i).Best_score];
end

%%  画各算法的直方图
figure 
bar(bestFit)
ylabel('无人机飞行路径长度');
set(gca,'xtick',1:1:size(AlgorithmName,2));
set(gca,'XTickLabel',AlgorithmName)
saveas(gcf,'./Picture/直方图.jpg') %将图片保存到Picture文件夹下面


%%  画收敛曲线
strColor={'r-','g-','b-','k-','m-','c-','y-'};
figure
for i=1:size(data,2)
plot(data(i).Convergence_curve,strColor{i},'linewidth',1.5)%semilogy
hold on
end
xlabel('迭代次数');
ylabel('无人机飞行路径长度');
legend(AlgorithmName,'Location','Best')
saveas(gcf,'./Picture/收敛曲线.jpg') %将图片保存到Picture文件夹下面


%% 显示三维图并保存
path=plotFigure(data,AlgorithmName,strColor);%path是各算法求解的无人机路径
saveas(gcf,'./Picture/路径曲线(三维).jpg') %将图片保存到Picture文件夹下面


%% 显示二维图并保存
view(2)
saveas(gcf,'./Picture/路径曲线(二维).jpg') %将图片保存到Picture文件夹下面

(2)部分结果

四、完整MATLAB代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1403108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【ARM 嵌入式 编译系列 7.3 -- GCC 链接脚本中 DISCARD 与 .ARM.exidx】

请阅读【嵌入式开发学习必备专栏 之 ARM GCC 编译专栏】 文章目录 背景.ARM.exidx方法一:使用链接器脚本方法二:使用链接器选项注意事项背景 在移植 RT-Thread 到 cortex-m33(RA4M2)上的时候,在编译的时候遇到下面问题: Building target: ra4m2.elf arm

Gitee Reward让开源作者不再为爱发电

一、什么是Gitee Reward? Gitee Reward是Gitee为改善开源开发生命周期提出的新策略。开源项目的支持者们可以更轻松地为其喜爱的项目提供资金,贡献者们也可以因为其不懈的开源贡献得到奖励。 二、Gitee Reward上允许哪些类型的项目? 允许任…

DL专栏—笔记目录

前言: 😊😊😊欢迎来到本博客😊😊😊 🌟🌟🌟 本专栏主要是记录工作中、学习中关于AI(Deep Learning)相关知识并分享。 😊😊&#x1f…

广告灯(利用取表方式)

1.  实验任务 利用取表的方法,使端口P1做单一灯的变化:左移2次,右移2次,闪烁2次(延时的时间0.2秒)。 2.  电路原理图 3.  系统板上硬件连线 把“单片机系统”区域中…

机器学习:holdout法(Python)

import pandas as pd import numpy as np from sklearn.preprocessing import LabelEncoder, StandardScaler # 类别标签编码,标准化处理 from sklearn.decomposition import PCA # 主成分分析 import matplotlib.pyplot as plt from sklearn.model_selection impor…

Unity3D学习之数据持久化——XML

文章目录 1. 前言2. XML 基本语法2.1 固定语法(重要)2.2 注释2.3 基本语法2.4 基本规则2.5 xml 属性2.6 验证语法错误2.7 C#对象和XML的手动转换 3. C#读取存储XML3.1 创建xml3.2 C# 读取xml文件3.2.1 通过Resources文件进行读取3.2.2 通过xml文件进行加…

linux docker-compose安装失败解决

1.去github下载到本地 https://github.com/docker/compose/releases/ 2.上传到linux 服务器 mv dokcer-compose-linux-x86_64 /usr/loacal/bin/docker-compose 3.给权限 chmod x /usr/local/bin/docker-compose 4.查看是否安装成功 docker-compose -version 5.卸载 …

基于JAVA和微信小程序的智慧家政系统 开源项目

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 查询家政服务4.2 新增单条服务订单4.3 新增留言反馈4.4 小程序登录4.5 小程序数据展示 五、免责说明 一、摘要 1.1 项目介绍 基于微信小程序JAVAVueSpringBootMySQL的智慧家政系统&#xff0…

Vue.js在养老院管理系统前端开发中的应用与优化

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

如何编写有效的WBS?

1. 项目WBS的定义和概念 项目WBS指的是工作分解结构(Work Breakdown Structure),是项目管理中一种重要的组织和规划工具。WBS通过将整个项目分解为可管理的、便于控制和监督的工作包或阶段,帮助项目团队清晰地理解项目的目标和任务,从而更好地进行项目计划和执行。WBS可以…

19万9的小米SU7已经彻底被否了

文 | AUTO芯球 作者 | 李诞 雷总 您是真不听劝啊 还要准备和米粉“干一架”啊 我和大家一样啊 这下好了 19万9的小米SU7已经彻底被否了 说实话 我心理真不是滋味 毕竟大家都说了, 9.9是雷爹,9万9是雷帝,15w是雷神 19万是雷总&#x…

单链表(C/C++)

本篇将给出单链表的实现,头部插入/删除,尾部插入/删除,元素查找,指定位置前插入数据,指定位置之后插入元素,删除当前元素,删除当前元素之后的元素。 在给出这些操作,先给出单链表的定…

Jupyter Notebook安装以及简单使用教程

Jupyter Notebook安装以及简单使用教程 本文章将,简要的讲解在已经拥有Python环境下如何进行Jupyter Notebook的安装。并且简短的介绍Jupyter Notebook的使用方法。 Jupyter Notebook是什么 Jupyter Notebook是一个基于Web的交互式计算环境,它支持多种…

1.21 day6 IO网络编程

网络聊天室 服务端 #include <myhead.h> #define PORT 8888 #define IP "192.168.122.48" struct MSG {char tyep;char name[20];char buf[128]; }; typedef struct Node {struct sockaddr_in cin;struct Node*next; }*node;int main(int argc, const char *…

【C++进阶07】哈希表and哈希桶

一、哈希概念 顺序结构以及平衡树中 元素关键码与存储位置没有对应关系 因此查找一个元素 必须经过关键码的多次比较 顺序查找时间复杂度为O(N) 平衡树中为树的高度&#xff0c;即O( l o g 2 N log_2 N log2​N) 搜索效率 搜索过程中元素的比较次数 理想的搜索方法&#xff1a…

如何一键生成原创文案?方法大揭密

在当今信息爆炸的时代&#xff0c;优秀的文案变得尤为重要。无论是网站、广告还是社交媒体&#xff0c;都需要吸引用户注意力的高质量、有吸引力的文案。不过&#xff0c;创作出这样的文案并不容易&#xff0c;需要投入大量的时间和精力。那么&#xff0c;有没有一种方法可以一…

Java 面向对象 06 对象内存图(黑马)

之前设计的如下图&#xff1a; 方法区和内存在物理上是一块的&#xff0c;但是有不好的地方&#xff0c;所以变成了这种形式&#xff1a; 一个对象的内存图&#xff1a; 在创建对象时虚拟机至少做了以下七步&#xff1a; 解释&#xff1a; 第一步&#xff1a; 第二步&#x…

视频格式转换软件,无忧转换畅享愉悦

在这个视频无处不在的时代&#xff0c;一款好的视频格式转换工具显得尤为重要。它不仅解决了你的燃眉之急&#xff0c;更让你畅享快速转换和简单操作带来的愉悦体验。现在就加入我们&#xff0c;开启全新的视频转换之旅吧&#xff01; 所需工具&#xff1a; 一个【媒体梦工厂…

【Leetcode】2788. 按分隔符拆分字符串

文章目录 题目思路代码 题目 题目链接 给你一个字符串数组 words 和一个字符 separator &#xff0c;请你按 separator 拆分 words 中的每个字符串。 返回一个由拆分后的新字符串组成的字符串数组&#xff0c;不包括空字符串 。 注意 separator 用于决定拆分发生的位置&#…

一区优化直接写:KOA-CNN-BiLSTM-Attention开普勒优化卷积、长短期记忆网络融合注意力机制的多变量回归预测程序!

适用平台&#xff1a;Matlab 2023版及以上 KOA开普勒优化算法&#xff0c;于2023年5月发表在SCI、中科院1区Top顶级期刊《Knowledge-Based Systems》上。 该算法提出时间很短&#xff0c;目前还没有套用这个算法的文献。 同样的&#xff0c;我们利用该新鲜出炉的算法对我们的…