无人机航迹规划:狐猴优化算法LO求解无人机路径规划MATLAB(可以修改起始点,地图可自动生成)

一、狐猴优化算法

狐猴优化算法(Lemurs Optimizer,LO)由Ammar Kamal Abasi等人于2022年提出,该算法模拟狐猴的跳跃和跳舞行为,具有结构简单,思路新颖,搜索速度快等优势。狐猴优化算法(Lemurs Optimizer,LO)MATLAB_IT猿手的博客-CSDN博客

狐猴头体长约为30-45厘米,尾长为40-50厘米,体重约2千克左右。头小,额低,耳大,两耳都长有很多茸毛,头部两侧也是长毛丛生,吻部长而突出,下门齿呈梳状,使得整个颜面看上去宛如狐狸,所以被称为狐猴。但它的身体却更像猴类,身体背部的毛呈浅灰褐色,腹部为灰白色。额部、耳背和颊部为白色,与黑色的吻部和眼圈构成了鲜明的对比色彩,十分有趣。特别是那条具有11-12个黑白相间圆环的长尾,是其独一无二的特征,极易与其他狐猴区别开来。狐猴的后肢比前肢长,因此攀爬奔跑跳跃能力都非常强,可以在树枝间一跃9米,它的掌心和脚底长着长毛,可以增加起跳和落地时的摩擦力从而不会滑倒,它甚至能够像人一样直立行走,长尾巴起到的平衡作用是不可忽视的。但是由于前肢短软无力,所以环尾狐猴下树的时候头上脚下倒退着地。

参考文献:

[1]Abasi AK, Makhadmeh SN, Al-Betar MA, Alomari OA, Awadallah MA, Alyasseri ZAA, Doush IA, Elnagar A, Alkhammash EH, Hadjouni M. Lemurs Optimizer: A New Metaheuristic Algorithm for Global OptimizationApplied Sciences. 2022; 12(19):10057. Applied Sciences | Free Full-Text | Lemurs Optimizer: A New Metaheuristic Algorithm for Global Optimization

二、无人机模型

单个无人机三维路径规划问题及其建模_IT猿手的博客-CSDN博客

参考文献:

[1]胡观凯,钟建华,李永正,黎万洪.基于IPSO-GA算法的无人机三维路径规划[J].现代电子技术,2023,46(07):115-120

三、LO求解无人机路径规划

(1)部分代码

close all
clear  
clc
warning off;
%% 三维路径规划模型定义
global startPos goalPos N
N=2;%待优化点的个数(可以修改)
startPos = [10, 10, 80]; %起点(可以修改)
goalPos = [80, 90, 150]; %终点(可以修改)
SearchAgents_no=30; % 种群大小(可以修改)
Function_name='F2'; %F1:随机产生地图 F2:导入固定地图
Max_iteration=100; %最大迭代次数(可以修改)
% Load details of the selected benchmark function
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);
[Best_score,Best_pos,curve]=LO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%算法优化求解
AlgorithmName='LO';%算法名字
figure
semilogy(curve,'Color','r','linewidth',3)
xlabel('迭代次数');
ylabel('飞行路径长度');
legend(AlgorithmName)
display(['算法得到的最优适应度: ', num2str(Best_score)]); 
Position=[Best_pos(1:dim/3); Best_pos(1+dim/3:2*(dim/3)); Best_pos(1+(2*dim/3):end)]'; %优化点的XYZ坐标(每一行是一个点)
plotFigure(Best_pos,AlgorithmName)%画最优路径

(2)部分结果

无人机飞行路径:

   1.0000000e+01   1.0000000e+01   8.0000000e+011.1740476e+01   1.2629578e+01   8.4872670e+011.3410134e+01   1.5126455e+01   8.9558985e+011.5010881e+01   1.7494187e+01   9.4062223e+011.6544621e+01   1.9736327e+01   9.8385662e+011.8013260e+01   2.1856432e+01   1.0253258e+021.9418705e+01   2.3858055e+01   1.0650625e+022.0762859e+01   2.5744752e+01   1.1030996e+022.2047630e+01   2.7520078e+01   1.1394699e+022.3274923e+01   2.9187587e+01   1.1742060e+022.4446642e+01   3.0750834e+01   1.2073408e+022.5564695e+01   3.2213374e+01   1.2389071e+022.6630985e+01   3.3578762e+01   1.2689376e+022.7647420e+01   3.4850552e+01   1.2974652e+022.8615904e+01   3.6032300e+01   1.3245226e+022.9538343e+01   3.7127561e+01   1.3501425e+023.0416643e+01   3.8139889e+01   1.3743578e+023.1252708e+01   3.9072839e+01   1.3972013e+023.2048446e+01   3.9929966e+01   1.4187057e+023.2805761e+01   4.0714825e+01   1.4389038e+023.3526559e+01   4.1430970e+01   1.4578284e+023.4212745e+01   4.2081957e+01   1.4755122e+023.4866225e+01   4.2671341e+01   1.4919881e+023.5488906e+01   4.3202676e+01   1.5072888e+023.6082691e+01   4.3679516e+01   1.5214472e+023.6649487e+01   4.4105418e+01   1.5344959e+023.7191199e+01   4.4483935e+01   1.5464677e+023.7709733e+01   4.4818623e+01   1.5573955e+023.8206995e+01   4.5113037e+01   1.5673121e+023.8684890e+01   4.5370731e+01   1.5762501e+023.9145324e+01   4.5595260e+01   1.5842424e+023.9590201e+01   4.5790179e+01   1.5913218e+024.0021429e+01   4.5959043e+01   1.5975210e+024.0440912e+01   4.6105406e+01   1.6028729e+024.0850556e+01   4.6232824e+01   1.6074101e+024.1252266e+01   4.6344852e+01   1.6111656e+024.1647949e+01   4.6445044e+01   1.6141719e+024.2039509e+01   4.6536955e+01   1.6164621e+024.2428852e+01   4.6624140e+01   1.6180687e+024.2817885e+01   4.6710153e+01   1.6190247e+024.3208511e+01   4.6798551e+01   1.6193627e+024.3602638e+01   4.6892887e+01   1.6191156e+024.4002170e+01   4.6996716e+01   1.6183161e+024.4409013e+01   4.7113593e+01   1.6169971e+024.4825073e+01   4.7247074e+01   1.6151912e+024.5252255e+01   4.7400712e+01   1.6129313e+024.5692465e+01   4.7578064e+01   1.6102502e+024.6147609e+01   4.7782682e+01   1.6071806e+024.6619591e+01   4.8018124e+01   1.6037554e+024.7110318e+01   4.8287942e+01   1.6000072e+024.7621696e+01   4.8595693e+01   1.5959689e+024.8155629e+01   4.8944931e+01   1.5916733e+024.8714023e+01   4.9339210e+01   1.5871531e+024.9298784e+01   4.9782087e+01   1.5824411e+024.9911817e+01   5.0277115e+01   1.5775701e+025.0555029e+01   5.0827849e+01   1.5725729e+025.1230324e+01   5.1437844e+01   1.5674823e+025.1939608e+01   5.2110656e+01   1.5623310e+025.2684787e+01   5.2849838e+01   1.5571518e+025.3467766e+01   5.3658947e+01   1.5519774e+025.4290451e+01   5.4541536e+01   1.5468408e+025.5154748e+01   5.5501160e+01   1.5417746e+025.6062562e+01   5.6541375e+01   1.5368117e+025.7015798e+01   5.7665735e+01   1.5319848e+025.8016362e+01   5.8877795e+01   1.5273266e+025.9066160e+01   6.0181110e+01   1.5228701e+026.0167098e+01   6.1579235e+01   1.5186479e+026.1321080e+01   6.3075724e+01   1.5146928e+026.2530013e+01   6.4674133e+01   1.5110376e+026.3795802e+01   6.6378016e+01   1.5077151e+026.5120352e+01   6.8190929e+01   1.5047581e+026.6505570e+01   7.0116425e+01   1.5021994e+026.7953361e+01   7.2158060e+01   1.5000717e+026.9465630e+01   7.4319388e+01   1.4984078e+027.1044282e+01   7.6603966e+01   1.4972404e+027.2691225e+01   7.9015346e+01   1.4966025e+027.4408362e+01   8.1557085e+01   1.4965267e+027.6197600e+01   8.4232737e+01   1.4970458e+027.8060844e+01   8.7045857e+01   1.4981927e+028.0000000e+01   9.0000000e+01   1.5000000e+02

四、完整MATLAB代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/133738.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript 进阶问题列表,巩固自己的知识。

不定时更新 JavaScript 进阶问题列表 从基础到进阶,测试你有多了解 JavaScript,刷新你的知识,或者帮助你的 coding 面试! 💪 🚀 答案❤️ 1. 输出是什么? function sayHi() {console.log(na…

iSlide2024一款基于PPT的插件工具包含38个设计辅助功能

根据使用者情况表明iSlide 是一款拥有30W素材的PPT高效设计软件,可提高90%工作效率,现全球已有超过1400万使用者,智能排版原创高品模板可商用图形,真正摆脱PPT的束缚,把精力用在该用的地方。我们都明白islide插件功能特…

Vue 3 中,watch 和 watchEffect 的区别

结论先行: watch:需要指明要监听的数据,而且在回调函数中可以获取到属性变化的前后值; 适用于需要精确控制监视范围的情况;也就是需要针对特定数据变化执行操作。 watchEffect:不用指明监听哪个属性&…

python单元测试框架(继承、unittest参数化、断言、测试报告)

一、继承 继承能解决什么问题? unittest每个模块都要用到前提条件以及清理,如果有上百个模块,我们要改域名和浏览器,就会工作量很大特别麻烦,这时我们可以用继承的思想只用改一次 我们可以将前提和清理提出来单独放…

新登录接口独立版变现宝升级版知识付费小程序-多领域素材资源知识变现营销系统

源码简介: 资源入口 点击进入 源码亲测无bug,含前后端源码,非线传,修复最新登录接口 梦想贩卖机升级版,变现宝吸取了资源变现类产品的很多优点,摒弃了那些无关紧要的东西,使本产品在运营和变现…

MVC、MVP、MVVM区别

MVC、MVP、MVVM区别 MVC(Model-View-Controller) 。是一种设计模式,通常用于组织与应用程序的数据流。它通常包括三个组件:模型(Model)、视图(View)和控制器(Controller&…

TDengine 上榜 BenchCouncil 全球首个开源贡献榜

近日,Bench Council(国际测试委员会)公布了“世界首个开源贡献榜”,该榜单号称“只以贡献分高下”。值得一提的是,涛思数据、TDengine 上榜 BenchCouncil 发布的开源计算机系统机构榜、成果榜,TDengine 创始…

CDN策略好坏的重要性

CDN加速技术在今天的互联网世界中扮演着至关重要的角色,它可以显著提高网站和应用程序的性能,同时也有助于提供更好的安全性。然而,设定安全策略的好坏对CDN的影响是一个关键的议题,本文将深入探讨这个问题。 CDN(内容…

2、Sentinel基本应用限流规则(2)

2.2.1 是什么 Sentinel 是阿里中间件团队开源的,面向分布式服务架构的轻量级高可用流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户保护服务的稳定性。 2.2.2 基本概念 • 资源 (需要被保护的东西…

宝马——使用人工智能制造和驾驶汽车

德国汽车制造商宝马(BMW)每年在全球制造和销售250万台汽车,其品牌包括宝马、MINI和劳斯莱斯。 宝马汽车以其卓越的性能和对新技术的应用而著名,它是道路上最精致的汽车之一,并且和其竞争对手戴姆勒(Daimler)一样,在将自动驾驶汽车…

Redis中的Zset类型

目录 Zset的相关命令 zadd zrange zcard zcount zrevrange zrangebyscore zpopmax bzpopmax zpopmin和bzpopmin zrank zrevrank zscore zrem zremrangebyrank zremrangebyscore 操作集合间的命令 zinterstore和zunionstore 内部编码 Zset的应用场景 Zset表…

独立键盘接口设计(Keil+Proteus)

前言 软件的操作参考这篇博客。 LED数码管的静态显示与动态显示(KeilProteus)-CSDN博客https://blog.csdn.net/weixin_64066303/article/details/134101256?spm1001.2014.3001.5501实验:用4个独立按键控制8个LED指示灯。 按下k1键&#x…

Mysql进阶-视图篇

介绍 视图(View)是一种虚拟存在的表。视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。 通俗的讲,视图只保存了查询的SQL逻辑,不保存查询结果。…

Si4010 一款带有MCU SoC RF发射机芯片 无线遥控器

Si4010是一款完全集成的SoC RF发射机,带有嵌入式CIP-51 8051 MCU,专为1GHz以下ISM频带设计。该芯片针对电池供电的应用进行了优化,工作电压为1.8至3.6 V,待机电流小于10 nA的超低电流消耗。高功率放大器可提供高达10 dBm的输出功率…

手术训练系统项目

★ 手术训练系统项目 项目描述:手术训练系统,它提供了多项功能,包括账户登录与创建、数据库与账户管理、课程管理、小组管理、成绩统计、证书发布、训练和系统设置。 职责描述: 1、训练功能开发(任务概述、任务指导、评分规则、评…

【数据结构】手撕单链表

目录 前言 1 链表 1.1 链表的概念及结构 1.2 链表的分类 1.2.1 单向或者双向 1.2.2 带头或者不带头 1.2.3 循环或者非循环 1.2.4 无头单向非循环链表 1.2.5 带头双向循环链表 2 链表的实现 2.1 结构 2.2 结点的创建 2.3 尾插 2.4 头插 2.5 尾删 2.6 头删 2.7 …

数据结构与算法之美学习笔记:17 | 跳表:为什么Redis一定要用跳表来实现有序集合?

目录 前言如何理解“跳表”?用跳表查询到底有多快?跳表是不是很浪费内存?高效的动态插入和删除跳表索引动态更新解答开篇内容小结 前言 本节课程思维导图: 二分查找底层依赖的是数组随机访问的特性,所以只能用数组来实…

2.求100-999之间的水仙花数

#include<stdio.h>void fun(void){int i,a,b,c;for(i100;i<1000;i) {ai%10;//个 b(i/10)%10;//十 ci/100;//百 if(ia*a*ab*b*bc*c*c)printf("%d ",i);}}int main(){fun();return 0;}

STM32 GPIO 描述

一、GPIO功能描述 每个GPIO端口有两个32位配置寄存器(GPIOx_CRL&#xff0c;GPIOx_CRH) &#xff0c;两个32位数据寄存器 (GPIOx_IDR和GPIOx_ODR) &#xff0c;一个32位置位/复位寄存器(GPIOx_BSRR)&#xff0c;一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR…

数据可视化:地图

1.基础地图的使用 如何添加颜色表示层级 代码实现 """基础地图的使用 """ from pyecharts.charts import Map from pyecharts.options import VisualMapOpts# 准备地图对象 map Map() # 准备数据 data [("北京市", 9),("上海市…