一、麻雀搜索算法SSA
麻雀搜索算法(sparrow search algorithm,SSA)由Jiankai Xue等人于2020年提出,该算法是根据麻雀觅食并逃避捕食者的行为而提出的群智能优化算法。SSA 主要是受麻雀的觅食行为和反捕食行为的启发而提出的。该算法比较新颖,具有寻优能力强,收敛速度快的优点。麻雀群觅食过程也是发现者-跟随者模型的一种,同时还叠加了侦查预警机制。麻雀中找到食物较好的个体作为发现者,其他个体作为跟随者,同时种群中选取一定比例的个体进行侦查预警,如果发现危险则放弃食物,安全第一。
二、无人机(UAV)三维路径规划
无人机三维路径规划数学模型参考如下文献:
Phung M D , Ha Q P . Safety-enhanced UAV Path Planning with Spherical Vector-based Particle Swarm Optimization[J]. arXiv e-prints, 2021.
目标函数由路径长度成本,安全性与可行性成本、飞行高度成本和路径平滑成本共同组成:
无人机三维路径规划数学模型参考如下链接:
单目标应用:基于蛇群优化算法(SO)的无人机(UAV)三维路径规划 (mianbaoduo.com)
三、实验结果
在三维无人机路径规划中,无人机的路径由起点,终点以及起始点间的点共同连接而成。因此,自变量为无人机起始点间的各点坐标,目标函数为总成本(公式9)。
3.1参数设置
(1)设9个柱状障碍物的位置及半径:
R1=60; % Radius 60 x1 = 350; y1 = 500; z1 = 100; % center R2=70; % Radius 70 x2 = 600; y2 = 200; z2 = 150; % center R3=80; % Radius 80 x3 = 500; y3 = 350; z3 = 150; % center R4=70; % Radius 70 x4 = 350; y4 = 200; z4 = 150; % center R5=70; % Radius 70 x5 = 700; y5 = 550; z5 = 150; % center R6=80; % Radius 80 x6 = 650; y6 = 750; z6 = 150; % center R7=70; % Radius 70 x7 = 800; y7 = 400; z7 = 150; % center R8=50; % Radius 50 x8 = 300; y8 = 350; z8 = 100; % center R9=50; % Radius 50 x9 = 500; y9 = 600; z9 = 100; % center
(2)起始点位置为:
start_location = [200;100;150];
end_location = [800;800;150];
(3)起始点间共15个待求点。
(4)加权系数b=[5 1 10 1]。
(5)麻雀搜索算法的种群大小为50,最大迭代次数为100。
4.2求解结果
独立运行三次,得到三次参考方案如下:(黑色正方形是起点,黑色圆圈是终点,共有9个柱状障碍物,红线为优化得到的无人机路线。)
(1)第一次结果:
(2)第二次结果:
(3)第3次结果:
由此可以看出,麻雀搜索算法求解无人机三维路径规划优势明显,能够快速避障,找到合适的飞行路线。
四、参考代码
文件夹内包含麻雀搜索算法求解无人机三维路径规划的全部代码,点击main.m即可运行,同时提供参考文献及使用说明,可以根据自己的需求更改其中的参数。