首页 > 编程语言 >常春藤算法(Ivy algorithm,LVYA)的复杂城市地形下无人机避障三维航迹规划,可以修改障碍物及起始点(Matlab代码)

常春藤算法(Ivy algorithm,LVYA)的复杂城市地形下无人机避障三维航迹规划,可以修改障碍物及起始点(Matlab代码)

时间:2024-06-04 20:05:18浏览次数:45  
标签:常春藤 避障 algorithm 950 550 50 result 500 1000

一、部分代码

常春藤算法(Ivy algorithm,LVYA)是Mojtaba Ghasemi 等人于2024年提出智能优化算法。该算法模拟了常春藤植物的生长模式,通过协调有序的种群增长以及常春藤植物的扩散和演化来实现。常春藤植物的生长速率是通过微分方程和数据密集型实验过程建模的。该算法利用附近常春藤植物的知识来确定生长方向,并通过选择最近和最重要的邻居进行自我改进。常春藤算法通过保持种群多样性、简单灵活的特点,可以轻松修改和扩展,使研究者和实践者能够探索各种修改和技术以增强其性能和能力。

参考文献:

[1]Mojtaba Ghasemi, Mohsen Zare, Pavel Trojovský, Ravipudi Venkata Rao, Eva Trojovská, Venkatachalam Kandasamy,Optimization based on the smart behavior of plants with its engineering applications: Ivy algorithm,Knowledge-Based Systems,Volume 295,2024.https://doi.org/10.1016/j.knosys.2024.111850.

原文链接:2024最新智能优化算法:常春藤算法(Ivy algorithm,LVYA)求解23个函数,提供MATLAB代码-CSDN博客

close all
clear 
clc
rng('default');
%% 载入数据
data.S=[50,950,12];     %起点位置 横坐标与纵坐标需为50的倍数
data.E=[950,50,1]; %终点点位置 横坐标与纵坐标需为50的倍数
data.Obstacle=xlsread('data1.xls');
data.numObstacles=length(data.Obstacle(:,1));
%% 画图
figure
hold on
plot(curve,'r','LineWidth',2)
xlabel('迭代次数')
ylabel('路径长度')
legend(str);
[~,result]=fobj(Best_pos);
drawPc(result,option,data,str)
result.path(:,1)=result.path(:,1).*data.unit(1);
result.path(:,2)=result.path(:,2).*data.unit(2);
result.path(:,3)=result.path(:,3).*data.unit(3);
%% 显示路径信息
fprintf("路径坐标:\n");
display(result.path)
fprintf("路径长度:%f\n",result.fit);

二、部分结果

路径坐标:

     50     950     12

     50    1000     12

     100    1000     13

     150    1000     12

     200     950     12

     200    1000     11

     250    1000     10

     300    1000     11

     350     950     12

     400    1000     11

     350    1000     10

     300    1000      9

     350     950      8

     400     950      7

     450     950      6

     500    1000      7

     550    1000      7

     550    1000      6

     500     950      6

     450     950      7

     450     900      8

     500     850      8

     500     850      7

     550     800      6

     550     800      5

     550     750      5

     600     750      5

     550     700      6

     500     650      5

     550     600      6

     550     650      6

     550     600      5

     550     650      4

     600     600      3

     550     550      3

     550     500      3

     500     450      4

     500     450      5

     450     400      6

     500     350      6

     550     300      6

     600     300      5

     650     300      5

     700     250      5

     750     200      5

     800     150      4

     850     100      4

     850     50      4

     800     50      4

     800     50      3

     850     100      2

     900     100      3

     950     50      2

     950     100      1

    1000     100      1

    1000     100      2

     950     50      1

路径长度:3003.322320

三、完整MATLAB代码

标签:常春藤,避障,algorithm,950,550,50,result,500,1000
From: https://blog.csdn.net/weixin_46204734/article/details/139452674

相关文章

  • 蛇鹫优化算法(Secretary bird optimization algorithm,SBOA)的复杂城市地形下无人机避障
    一、部分代码蛇鹫优化算法(Secretarybirdoptimizationalgorithm,SBOA)由FuYoufa等人于2024年提出,该算法的灵感来自于蛇鹫在自然环境中的生存行为。参考文献:[1]FuY,LiuD,ChenJ,etal.Secretarybirdoptimizationalgorithm:anewmetaheuristicforsolvinggloba......
  • m基于Qlearning强化学习工具箱的网格地图路径规划和避障matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:   2.算法涉及理论知识概要       Q-Learning是强化学习中的一种重要算法,它属于无模型(model-free)学习方法,能够使智能体在未知环境中学习最优策略,无需环境的具体模型。将Q-Learning应用于路线规划和避障策略中,智能体(如机......
  • 翻译《The Old New Thing》- Consequences of the scheduling algorithm: Low priorit
    Consequencesoftheschedulingalgorithm:Lowprioritythreadscantake100%CPU-TheOldNewThing(microsoft.com)https://devblogs.microsoft.com/oldnewthing/20071220-00/?p=24093 RaymondChen 2007年12月20日调度算法的控制:低优先级线程也可能占用100%的......
  • 【Algorithm算法章】递归&&搜索&&回溯&&算法思路总结概括
    文章目录......
  • Chan's Algorithm
    Chan'sAlgorithm简介以往常见的求凸包的算法复杂度多为\(\Theta(n\logn)\)(如GrahamScan算法、Andrew算法等),其中\(n\)是平面内的点数。当事先已知大多数点位于凸包内部,只有少数点位于边界上时,也有更高效的算法,如JarvisMarch算法,其复杂度为\(\Theta(nh)\),其中\(h\)......
  • 《Object Detection Using ClusteringAlgorithm Adaptive Searching Regions in Aeria
    《ObjectDetectionUsingClusteringAlgorithmAdaptiveSearchingRegionsinAerialImages》论文10问Q1论文试图解决什么问题?小物体分布不均匀,主要问题是分辨率低、信息量小,导致特征表达能力弱;传统方法如放大图像,会增加处理时间和存储大型特征图所需的内存,图像统一均匀裁......
  • m基于Q-Learning强化学习的路线规划和避障策略matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:      2.算法涉及理论知识概要      Q-Learning是强化学习中的一种重要算法,它属于无模型(model-free)学习方法,能够使智能体在未知环境中学习最优策略,无需环境的具体模型。将Q-Learning应用于路线规划和避障策略中,智能......
  • 【强化学习】A grid world 值迭代算法 (value iterator algorithm)
    强化学习——值迭代算法代码是在jupyternotebook环境下编写只需要numpy和matplotlib包。此代码为学习赵世钰老师强化学习课程之后,按照公式写出来的代码,对应第四章第一节valueiteratoralgorithm可以做的实验:调整gama值观察策略的变化调整惩罚值(fa)的大小观察......
  • [Algorithm] Prim's Algorithm
    Prim'salgorithmisapopularmethodusedincomputerscienceforfindingaminimumspanningtreeforaconnected,undirectedgraph.Thismeansitfindsasubsetoftheedgesthatformsatreethatincludeseveryvertex,wherethetotalweightofall......
  • TheAlgorithms/C - 各种基础算法、数据结构的 C 语言实现+armink/SFUD - 一款基于 JED
    1、OpenMV-RT-基于恩智浦i.MXRT系列的开源机器视觉AI模块OpenMV-RT是一款基于恩智浦最近主打的i.MXRT超高性能系列MCU的视觉模块,模块设计者是恩智浦大牛工程师宋岩(对,就是ARMCortex-M3权威指南中文版作者)。模块源代码: https://github.com/RockySong/micropython......