单目标应用:基于无人机三维路径规划的麻雀搜索算法(提供MATLAB代码)

176 篇文章 16 订阅
144 篇文章 80 订阅

一、麻雀搜索算法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.

目标函数由路径长度成本,安全性与可行性成本、飞行高度成本和路径平滑成本共同组成:

(1)路径长度成本

路径长度成本由相邻两个节点之间的欧氏距离和构成,其计算公式如下:
在这里插入图片描述

(2)路径安全性与可行性成本

在这里插入图片描述

路径安全性与可行性成本通过下式计算:

在这里插入图片描述

(3)路径飞行高度成本

在这里插入图片描述

飞行高度成本通过如下公式计算所得:
在这里插入图片描述
在这里插入图片描述

(4)路径平滑成本

在这里插入图片描述

投影向量通过如下公式计算:

在这里插入图片描述

转弯角度的计算公式为:
在这里插入图片描述

爬坡角度的计算公式为:

在这里插入图片描述

平滑成本的计算公式为:
在这里插入图片描述

(5)总成本(目标函数)

在这里插入图片描述

总成本由最优路径成本,安全性与可行性成本、飞行高度成本和路径平滑成本的线性加权所得。其中,b为加权系数。

三、实验结果

在三维无人机路径规划中,无人机的路径由起点,终点以及起始点间的点共同连接而成。因此,自变量为无人机起始点间的各点坐标,目标函数为总成本(公式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次结果:

在这里插入图片描述

在这里插入图片描述

由此可以看出,麻雀搜索算法求解无人机三维路径规划优势明显,能够快速避障,找到合适的飞行路线。

四、参考代码

  • 4
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
粒子群优化算法(PSO)是一种基于群体智能的优化算法,可用于解决无人机三维路径规划问题。通过PSO算法,可以找到无人机三维空间中的最优路径。 在使用PSO算法进行无人机三维路径规划时,首先需要定义问题的目标函数,即路径的优化目标。例如,可以以路径的总长度、时间消耗、能量消耗等作为目标函数。 接下来,需要建立无人机的状态空间模型,包括位置、速度、加速度等状态变量。在PSO算法中,每个无人机都看作是一个粒子,在搜索空间中移动。 PSO算法的核心是不断迭代更新每个粒子的位置和速度,并通过不断交换信息来进行全局搜索。具体而言,每个粒子根据当前的位置和速度,以及本粒子历史最优位置和全局最优位置,在下一次迭代时更新自己的速度和位置。通过这种方式,粒子可以逐渐靠近目标位置,并找到最优的路径。 在使用Matlab实现PSO算法进行无人机三维路径规划时,可以使用Matlab的优化工具箱来快速构建并优化目标函数。同时,需要编写与目标函数和粒子群算法相关的代码进行迭代更新。可以利用Matlab的矩阵运算优势,简化算法的实现过程。 总之,粒子群算法(PSO)是一种常用的无人机三维路径规划算法,通过不断迭代更新粒子的位置和速度,可以找到最优的路径。使用Matlab实现PSO算法时,可以利用Matlab优化工具箱和矩阵运算的特点来简化代码编写过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值