基于海市蜃楼算法(Fata Morgana Algorithm ,FATA)的多无人机协同三维路径规划(提供MATLAB代码)

基于海市蜃楼算法(Fata Morgana Algorithm ,FATA)的多无人机协同三维路径规划(提供MATLAB代码)海市蜃楼算法 FataMorganaA FATA 是 2024 年提出一种新型的群体智能优化算法 它的设计灵感来源于自然现象中的海市蜃楼形成过程

大家好,欢迎来到IT知识分享网。

一、海市蜃楼算法

海市蜃楼算法(Fata Morgana Algorithm ,FATA)是2024年提出一种新型的群体智能优化算法,它的设计灵感来源于自然现象中的海市蜃楼形成过程。FATA算法通过模仿光线在不均匀介质中的传播方式,提出了两种核心策略——海市蜃楼光过滤原则(MLF)和光传播策略(LPS)——来优化搜索过程,增强算法的全局搜索能力和局部开发能力。

在这里插入图片描述

1.FATA算法的主要特点:

  1. 基于物理现象的建模
    FATA算法模拟了光线在不同密度介质中的传播和反射过程,将这一自然现象转化为优化策略,以此来指导算法中的种群搜索和个体更新。
  2. 海市蜃楼光过滤原则(MLF)
    MLF策略是FATA算法中用于种群搜索的策略。它结合了定积分原理来评估种群中个体的质量,并通过计算种群适应度函数的积分值来指导种群的更新,以此来筛选出有助于形成“海市蜃楼”(即优化解)的“光线”个体。
    在这里插入图片描述
  3. 光传播策略(LPS)
    LPS策略是FATA算法中用于个体搜索的策略,它包括折射、反射和全内反射三种策略。这些策略共同指导个体在搜索空间中的移动,以探索新的潜在解,并增强算法的局部搜索能力。
    在这里插入图片描述
  4. 平衡全局搜索与局部搜索
    FATA算法通过MLF和LPS策略的有机结合,平衡了全局搜索和局部搜索的能力。这种平衡有助于算法在保持广泛探索的同时,也能深入开发有前景的搜索区域。
  5. 自适应搜索
    算法中的MLF和LPS策略可以根据搜索过程中的实时信息自适应地调整搜索方向和步长,这有助于算法在复杂的搜索空间中灵活应对,并有效避免陷入局部最优解。
  6. 适用于复杂优化问题
    FATA算法不仅适用于连续优化问题,还能够处理多模态、高维和不可微分的复杂优化问题。这使得FATA算法在工程优化、机器学习和其他领域中具有广泛的应用潜力。

2.算法步骤

在这里插入图片描述
在这里插入图片描述

FATA算法的步骤可以概括为:

  1. 初始化:设置算法参数,包括种群大小、维度、最大迭代次数等,并随机初始化种群。
  2. 适应度评估:计算种群中每个个体的适应度。
  3. MLF策略:根据确定积分原理,评估种群的整体质量,并选择形成海市蜃楼的个体。
  4. LPS策略
    • 光折射策略:模拟光在不同密度介质中的折射过程,更新个体位置。
    • 光的全内反射策略:模拟光在介质中的全内反射过程,使种群向相反方向探索。
  5. 更新种群:根据MLF和LPS策略的结果,更新种群中的个体。
  6. 迭代:重复步骤2-5,直到达到最大迭代次数或满足其他停止条件。
  7. 输出最优解:返回找到的最优解或最优解集合。

参考文献:

[1]Ailiang Qi, Dong Zhao, Ali Asghar Heidari, Lei Liu, Yi Chen, Huiling Chen, FATA: An Efficient Optimization Method Based on Geophysics, Neurocomputing – 2024, DOI: https://doi.org/10.1016/j.neucom.2024..

二、无人机(UAV)三维路径规划

单个无人机三维路径规划数学模型参考如下文献:

Phung M D , Ha Q P . Safety-enhanced UAV Path Planning with Spherical Vector-based Particle Swarm Optimization[J]. arXiv e-prints, 2021.

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

2.1路径长度成本

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

2.2路径安全性与可行性成本

在这里插入图片描述

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

在这里插入图片描述

2.3路径飞行高度成本

在这里插入图片描述

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

2.4路径平滑成本

在这里插入图片描述

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

在这里插入图片描述

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

爬坡角度的计算公式为:

在这里插入图片描述

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

2.5总成本(目标函数)

在这里插入图片描述

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

三、实验结果

在三维无人机路径规划中,无人机的路径由起点,终点以及起始点间的点共同连接而成。因此,自变量为无人机起始点间的各点坐标,每个无人机的目标函数为总成本(公式9)。本文研究3个无人机协同路径规划,总的目标函数为3个无人机的总成本之和。

Xmin=[Xmin0,Xmin1,Xmin2]; Xmax=[Xmax0,Xmax1,Xmax2]; dim=dim0+dim1+dim2; fobj=@(x)GetFun(x,fobj0,fobj1,fobj2);%总的目标函数 pop=50; maxgen=1500; [fMin ,bestX,Convergence_curve]=eco(pop,maxgen,Xmin,Xmax,dim,fobj);%Trajectories,fitness_history, population_history % save bestX bestX BestPosition1 = SphericalToCart(bestX(1:dim/3),model);% 第一个无人机得到的路径坐标位置 BestPosition2 = SphericalToCart(bestX(1+dim/3:2*dim/3),model1);% 第二个无人机得到的路径坐标位置 BestPosition3 = SphericalToCart(bestX(1+2*dim/3:end),model2);% 第三个无人机得到的路径坐标位置 gca1=figure(1); gca2=figure(2); gca3=figure(3); PlotSolution(BestPosition1,model,gca1,gca2,gca3);% 画第一个无人机 PlotSolution1(BestPosition2,model1,gca1,gca2,gca3);% 画第二个无人机 PlotSolution2(BestPosition3,model2,gca1,gca2,gca3);% 画第三个无人机 figure plot(Convergence_curve,'LineWidth',2) xlabel('Iteration'); ylabel('Best Cost'); grid on; 

在这里插入图片描述
在这里插入图片描述

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/138858.html

(0)
上一篇 2024-11-24 08:00
下一篇 2024-11-24 08:15

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信