无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB

一、无人机飞行路径规划问题及建模

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第1张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第2张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第3张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第4张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第5张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第6张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第7张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第8张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第9张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第10张图片

参考文献:

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

二、蜣螂优化算法DBO

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

单目标优化:蜣螂优化算法(Dung beetle optimizer,DBO)_单目标优化算法_IT猿手的博客-CSDN博客

三、求解结果

地形图可以随机生成,无人机起始点可以自己设定,算法的种群大小和迭代次数可以修改。

部分代码:

close all
clear  
clc
%% 三维路径规划模型定义
global startPos goalPos N
N=2;%待优化点的个数(可以修改)
goalPos = [80, 90, 150]; %起点(可以修改)
startPos = [10, 10, 80]; %终点(可以修改)
SearchAgents_no=30; % 种群大小(可以修改)
Function_name='F1'; %F1:随机产生地图 F2:导入固定地图
Max_iteration=50; %最大迭代次数(可以修改)
% Load details of the selected benchmark function
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);
[Best_score,Best_pos,curve]=DBO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
figure
semilogy(curve,'Color','r')
xlabel('Iteration');
ylabel('Cost');
legend('DBO')
Position=[Best_pos(1:dim/3); Best_pos(1+dim/3:2*(dim/3)); Best_pos(1+(2*dim/3):end)]' %优化点的XYZ坐标(每一行是一个点)
display(['算法得到的最优适应度: ', num2str(Best_score)]);     
plotFigure(Best_pos)%画最优路径

部分结果:

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第11张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第12张图片

无人机三维路径规划:基于蜣螂优化算法DBO的无人机三维路径规划MATLAB_第13张图片

四、参考代码

你可能感兴趣的:(无人机路径规划,MATLAB,IT技术,matlab,无人机,算法)