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

一、部分代码

常春藤算法(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代码

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

  • 22
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值