一、孔雀优化算法POA
孔雀优化算法 ( Peafowl Optimization Algorithm, POA), 是由 Jingbo Wang 等于2022 年提出的一种群体智能优化算法。 其灵感来源于孔雀的群体行为。
二、无人机模型
无人机三维航迹规划_无人机航迹规划_IT猿手的博客-CSDN博客
参考文献:
[1]吕石磊,范仁杰,李震,陈嘉鸿,谢家兴.基于改进蝙蝠算法和圆柱坐标系的农业无人机航迹规划[J/OL].农业机械学报:1-19
[2]褚宏悦,易军凯.无人机安全路径规划的混沌粒子群优化研究[J/OL].控制工程:1-8
[3]MD Phung, Ha Q P . Safety-enhanced UAV Path Planning with Spherical Vector-based Particle Swarm Optimization: arXiv, 10.1016/j.asoc.2021.107376[P]. 2021.
[4]陈明强,李奇峰,冯树娟等.基于改进粒子群算法的无人机三维航迹规划[J].无线电工程,2023,53(02):394-400.
[5]徐建新,孙纬,马超.基于改进粒子群算法的无人机三维路径规划[J/OL].电光与控制:1-10
三、孔雀优化算法POA求解无人机路径规划
无人机三维路径规划:孔雀优化算法POA提供MATLAB代码 - 知乎 (zhihu.com)
孔雀优化算法POA求解无人机三维路径规划_哔哩哔哩_bilibili
close all
clear
clc
dbstop if all error
warning ('off')
global model
model = CreateModel(); % 创建模型
F='F1';
[Xmin,Xmax,dim,fobj] = fun_info(F);%获取函数信息
pop=100;%种群大小(可以自己修改)
maxgen=50;%最大迭代次数(可以自己修改)
[fMin5,bestX5,ConvergenceCurve5] = POA(pop, maxgen,Xmin,Xmax,dim,fobj);
cost=MyCost(bestX5,2);%'路径成本','威胁成本','高度成本','转角成本'
%% 计算航迹坐标
BestPosition5 = SphericalToCart(bestX5);
%% 保存各算法的目标函数值及收敛曲线
save fMin5 fMin5
save ConvergenceCurve5 ConvergenceCurve5
save cost cost
%% 保存航迹坐标
save BestPosition5 BestPosition5
四、完整MATLAB代码