(一)基于高尔夫优化算法GOA求解无人机三维路径规划研究(MATLAB)

news2025/1/21 9:22:24

一、无人机模型简介:

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

参考文献:

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

二、高尔夫优化算法GOA简介

高尔夫优化算法(Golf Optimization Algorithm,GOA)由Montazeri Z等人于2023年提出,该算法模拟高尔夫运动过程中的球员击打高尔夫所采取的战术策略,能够有效平衡全局搜索和局部搜索的能力。

多目标优化算法:基于非支配排序的高尔夫优化算法(NSGOA)MATLAB-CSDN博客

参考文献:

[1] Montazeri Z, Niknam T, Aghaei J, Malik OP, Dehghani M, Dhiman G. Golf Optimization Algorithm: A New Game-Based Metaheuristic Algorithm and Its Application to Energy Commitment Problem Considering Resilience. Biomimetics. 2023; 8(5):386. Biomimetics | Free Full-Text | Golf Optimization Algorithm: A New Game-Based Metaheuristic Algorithm and Its Application to Energy Commitment Problem Considering Resilience

三、高尔夫优化算法GOA求解无人机路径规划

(1)部分代码

close all
clear  
clc
addpath('./Algorithm/')%添加算法路径
warning off;
%% 三维路径规划模型定义
global startPos goalPos N
N=2;%待优化点的个数(可以修改)
startPos = [10, 10, 80]; %起点(可以修改)
goalPos = [80, 90, 150]; %终点(可以修改)
SearchAgents_no=30; % 种群大小(可以修改)
Function_name='F1'; %F1:随机产生地图 F2:导入固定地图
Max_iteration=50; %最大迭代次数(可以修改)
% Load details of the selected benchmark function
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);
[Best_score,Best_pos,curve]=GOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%算法优化求解
AlgorithmName='GOA';%算法名字
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+01
   1.1195509e+01   1.1522382e+01   8.1134937e+01
   1.2336219e+01   1.2941987e+01   8.2210564e+01
   1.3423955e+01   1.4262310e+01   8.3228946e+01
   1.4460544e+01   1.5486846e+01   8.4192142e+01
   1.5447811e+01   1.6619089e+01   8.5102217e+01
   1.6387583e+01   1.7662536e+01   8.5961231e+01
   1.7281684e+01   1.8620681e+01   8.6771246e+01
   1.8131942e+01   1.9497019e+01   8.7534326e+01
   1.8940182e+01   2.0295045e+01   8.8252532e+01
   1.9708230e+01   2.1018255e+01   8.8927926e+01
   2.0437912e+01   2.1670143e+01   8.9562570e+01
   2.1131053e+01   2.2254205e+01   9.0158527e+01
   2.1789480e+01   2.2773936e+01   9.0717858e+01
   2.2415019e+01   2.3232830e+01   9.1242626e+01
   2.3009496e+01   2.3634383e+01   9.1734893e+01
   2.3574735e+01   2.3982091e+01   9.2196721e+01
   2.4112565e+01   2.4279447e+01   9.2630172e+01
   2.4624809e+01   2.4529948e+01   9.3037307e+01
   2.5113295e+01   2.4737088e+01   9.3420191e+01
   2.5579848e+01   2.4904362e+01   9.3780883e+01
   2.6026294e+01   2.5035266e+01   9.4121447e+01
   2.6454458e+01   2.5133295e+01   9.4443945e+01
   2.6866168e+01   2.5201943e+01   9.4750438e+01
   2.7263249e+01   2.5244706e+01   9.5042989e+01
   2.7647526e+01   2.5265079e+01   9.5323660e+01
   2.8020826e+01   2.5266557e+01   9.5594514e+01
   2.8384974e+01   2.5252635e+01   9.5857611e+01
   2.8741797e+01   2.5226808e+01   9.6115015e+01
   2.9093120e+01   2.5192572e+01   9.6368787e+01
   2.9440769e+01   2.5153420e+01   9.6620990e+01
   2.9786571e+01   2.5112850e+01   9.6873686e+01
   3.0132351e+01   2.5074355e+01   9.7128936e+01
   3.0479935e+01   2.5041430e+01   9.7388803e+01
   3.0831149e+01   2.5017571e+01   9.7655350e+01
   3.1187818e+01   2.5006274e+01   9.7930637e+01
   3.1551770e+01   2.5011032e+01   9.8216728e+01
   3.1924829e+01   2.5035341e+01   9.8515684e+01
   3.2308821e+01   2.5082696e+01   9.8829568e+01
   3.2705574e+01   2.5156593e+01   9.9160441e+01
   3.3116912e+01   2.5260526e+01   9.9510366e+01
   3.3544661e+01   2.5397990e+01   9.9881405e+01
   3.3990647e+01   2.5572481e+01   1.0027562e+02
   3.4456697e+01   2.5787494e+01   1.0069507e+02
   3.4944635e+01   2.6046523e+01   1.0114183e+02
   3.5456289e+01   2.6353064e+01   1.0161794e+02
   3.5993484e+01   2.6710612e+01   1.0212548e+02
   3.6558045e+01   2.7122662e+01   1.0266651e+02
   3.7151799e+01   2.7592710e+01   1.0324308e+02
   3.7776572e+01   2.8124249e+01   1.0385727e+02
   3.8434190e+01   2.8720776e+01   1.0451113e+02
   3.9126478e+01   2.9385785e+01   1.0520672e+02
   3.9855263e+01   3.0122772e+01   1.0594611e+02
   4.0622370e+01   3.0935231e+01   1.0673137e+02
   4.1429625e+01   3.1826658e+01   1.0756454e+02
   4.2278854e+01   3.2800548e+01   1.0844769e+02
   4.3171884e+01   3.3860396e+01   1.0938289e+02
   4.4110539e+01   3.5009697e+01   1.1037220e+02
   4.5096647e+01   3.6251945e+01   1.1141768e+02
   4.6132032e+01   3.7590637e+01   1.1252139e+02
   4.7218521e+01   3.9029268e+01   1.1368540e+02
   4.8357940e+01   4.0571332e+01   1.1491176e+02
   4.9552115e+01   4.2220324e+01   1.1620254e+02
   5.0802871e+01   4.3979740e+01   1.1755980e+02
   5.2112034e+01   4.5853074e+01   1.1898560e+02
   5.3481431e+01   4.7843822e+01   1.2048201e+02
   5.4912887e+01   4.9955480e+01   1.2205109e+02
   5.6408228e+01   5.2191541e+01   1.2369489e+02
   5.7969280e+01   5.4555501e+01   1.2541548e+02
   5.9597869e+01   5.7050855e+01   1.2721493e+02
   6.1295822e+01   5.9681099e+01   1.2909529e+02
   6.3064963e+01   6.2449727e+01   1.3105863e+02
   6.4907119e+01   6.5360235e+01   1.3310701e+02
   6.6824115e+01   6.8416117e+01   1.3524250e+02
   6.8817778e+01   7.1620868e+01   1.3746714e+02
   7.0889934e+01   7.4977985e+01   1.3978301e+02
   7.3042408e+01   7.8490961e+01   1.4219217e+02
   7.5277026e+01   8.2163292e+01   1.4469668e+02
   7.7595615e+01   8.5998474e+01   1.4729860e+02
   8.0000000e+01   9.0000000e+01   1.5000000e+02


四、完整MATLAB代码

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

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

相关文章

8、CobaltStrike使用

文章目录 一、实验拓扑图二、实验步骤 一、实验拓扑图 二、实验步骤 1、登录"Kali"操作机,在终端中进入CS文件夹,然后使用命令chmod x teamserver给teamserver文件赋予执行权限,然后查看当前主机的本地IP地址。 2、启动服务端服务…

关于图像识别,你不得不知的三大要点

图像识别的重要性 图像识别不仅可以加速处理繁琐的任务,而且还可以比人工图像检查更快速或更准确地处理图像。图像识别是应用于诸多领域的关键技术,也是深度学习应用的主要驱动因素,如: 视觉检查:在制造过程中识别零部…

spring security 艰苦学习中

一、初次感知 1.jwt工具类 密钥secret 有点意思。 2.PasswordEncoder 对密码进行加密,在配置类中返回bean. 下面这个关于加密和解密的东西是有误导性的。

231129 刷题日报

本周值班第3天,今天终于收到二面电话,一度以为挂了。。加油卷! 今天尊重下艾宾浩斯遗忘曲线,重复下前几天看的01背包,子集背包,完全背包。 416. 分割等和子集 518. 零钱兑换 II 38min做了一道新题&#…

Aruba无线控制器新增加AP

1、将网线连接上AP的Eth端口,console线也连接上console口 2、在console后台可以看到AP获取到的IP地址 3、确认网络可以联通,通过https访问web界面 AP205默认账号密码:admin AP505账号为admin,密码为设备SN 4、右上角点击"维…

基于单片机智能液位水位监测控制系统

**单片机设计介绍, 基于单片机智能液位水位监测控制系统 文章目录 一 概要特点应用场景工作原理实现方式 系统功能实时监测控制调节报警功能数据记录与分析 总结 二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 ## 系统介绍 基于单片机…

RabbitMQ消息模型之Sample

Hello World Hello World是官网给出的第一个模型,使用的交换机类型是直连direct,也是默认的交换机类型。 在上图的模型中,有以下概念: P:生产者,也就是要发送消息的程序C:消费者:消…

【C++笔记】红黑树的简易实现

【C笔记】红黑树的简易实现 一、什么是红黑树以及红黑树好在哪里1.1、什么是红黑树1.2、红黑树比AVL树好在哪里? 二、红黑树的模拟实现2.1、红黑树的插入2.2、仅变色调整2.3、变色单旋调整2.4、变色双旋调整 一、什么是红黑树以及红黑树好在哪里 1.1、什么是红黑树…

接口自动化测试概述及流程梳理

接下来开始学习接口自动化测试。 因为之前从来没接触过,所以先了解一些基础知识。 1.接口测试的概述 2.接口自动化测试流程。 接口测试概述 接口,又叫API(Application Programming Interface,应用程序编程接口)&a…

并查集带权并查集

定义 : 并查集 : 一种数据结构,用于处理一些不相交集合的合并与查询问题; 例题 : 如 : 有n种元素,分属于不同的n个集合; 有两种操作 : 1.给出两个元素的亲属关系,合并两个集合(x与y是亲戚,亲戚的亲戚…

异常数据检测 | Python实现oneclassSVM模型异常数据检测

支持向量机(SVM)的异常检测 SVM通常应用于监督式学习,但OneClassSVM[8]算法可用于将异常检测这样的无监督式学习,它学习一个用于异常检测的决策函数其主要功能将新数据分类为与训练集相似的正常值或不相似的异常值。 OneClassSVM OneClassSVM的思想来源于这篇论文[9],SVM使用…

MySQL主从同步延迟原因与解决方案

一、MySQL数据库主从同步延迟产生的原因 MySQL的主从复制都是单线程的操作,主库对所有DDL和DML产生的日志写进binlog,由于binlog是顺序写,所以效率很高。 Slave的SQL Thread线程将主库的DDL和DML操作事件在slave中重放。DML和DDL的IO操作…

1990-2021年上市公司排污费和环境保护税数据

1990-2021年上市公司排污费和环境保护税数据 1、时间:1990-2021年 2、指标: 证券代码、会计期间、year、month、行业、应缴排污费/环境保护税、其中:大气污染物、其中:水污染物、其中:固体废物、其中:噪…

python类的多重继承继承和查找顺序

1 python类的多重继承继承和查找顺序 python中,类的多重继承允许子类继承多个基类,子类可以访问多个基类的属性和方法。 1.1 多重继承基础 用法 class MulClass(BaseC1,BaseC2,...BaseCn):pass描述 Mulclass:子类(或者称混合…

【JUC】十六、LockSupport类实现线程等待与唤醒

文章目录 1、LockSupport2、wait和notify存在的问题3、await和signal存在的问题4、park和unpark方法5、LockSupport用法示例6、Permit不会累积7、面试 1、LockSupport 线程等待和唤醒的方式有: 使用Object的wait方法让对象上活动的线程等待,使用notify…

centos7中通过kubeadmin安装k8s集群

k8s部署官方提供了kind、minikube、kubeadmin等多种安装方式。 其中minikube安装在之前的文章中已经介绍过,部署比较简单。下面介绍通过kubeadmin部署k8s集群。 生产中提供了多种高可用方案: k8s官方文档 本文安装的是1.28.0版本。 建议去认真阅读一下…

思维导图软件MindNode 5 mac使用场景

MindNode 5 for Mac是一款思维导图软件产品,为用户在灵感启发、思绪整理、记忆协助、项目规划、授课讲演等诸多场景下提升学习和工作效率。通过导图社区和云文件无缝链接用户设备,方便用户随时随地收集灵感和展示文档。 MindNode 5 for Mac应用场景 助力…

mybatis快速入门(基于Mapper接口编程)

1、准备数据模型,建库建表 CREATE DATABASE mybatis-example;USE mybatis-example;CREATE TABLE t_emp(emp_id INT AUTO_INCREMENT,emp_name CHAR(100),emp_salary DOUBLE(10,5),PRIMARY KEY(emp_id) );INSERT INTO t_emp(emp_name,emp_salary) VALUES("tom&qu…

第20章:多线程

20.1 线程简介 在Java中,并发机制非常重要,程序员可以在程序中执行多个线程,每个线程完成一个功能,并与其他线程并发执行,这种机制被称为多线程。但是,并不是所有编程语言都支持多线程。 线程的特点&#…

GC算法和常见垃圾回收器

一、GC算法 GC Algorithms(常见的垃圾回收算法),找到这个垃圾之后怎么进行清除的算法 。GC常用的算法有三 种如下: 1:Copying(拷贝) 2:Mark-Sweep(标记清除) 3:Mark-Compact(标记压缩) 第一个是Copying(拷…