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

news2025/1/21 21:50:33

一、无人机模型简介:

单个无人机三维路径规划问题及其建模_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.0417311e+01   1.0992468e+01   8.0871352e+01
   1.0811152e+01   1.1890804e+01   8.1671955e+01
   1.1182905e+01   1.2698696e+01   8.2404581e+01
   1.1533953e+01   1.3419832e+01   8.3072000e+01
   1.1865679e+01   1.4057899e+01   8.3676983e+01
   1.2179465e+01   1.4616585e+01   8.4222303e+01
   1.2476695e+01   1.5099577e+01   8.4710729e+01
   1.2758750e+01   1.5510564e+01   8.5145034e+01
   1.3027014e+01   1.5853232e+01   8.5527987e+01
   1.3282869e+01   1.6131270e+01   8.5862361e+01
   1.3527699e+01   1.6348365e+01   8.6150927e+01
   1.3762885e+01   1.6508205e+01   8.6396455e+01
   1.3989810e+01   1.6614477e+01   8.6601717e+01
   1.4209859e+01   1.6670869e+01   8.6769485e+01
   1.4424412e+01   1.6681069e+01   8.6902528e+01
   1.4634852e+01   1.6648764e+01   8.7003619e+01
   1.4842564e+01   1.6577642e+01   8.7075528e+01
   1.5048928e+01   1.6471390e+01   8.7121027e+01
   1.5255329e+01   1.6333697e+01   8.7142887e+01
   1.5463148e+01   1.6168249e+01   8.7143879e+01
   1.5673768e+01   1.5978735e+01   8.7126774e+01
   1.5888573e+01   1.5768842e+01   8.7094344e+01
   1.6108944e+01   1.5542258e+01   8.7049358e+01
   1.6336265e+01   1.5302670e+01   8.6994590e+01
   1.6571919e+01   1.5053766e+01   8.6932809e+01
   1.6817287e+01   1.4799234e+01   8.6866787e+01
   1.7073754e+01   1.4542761e+01   8.6799295e+01
   1.7342700e+01   1.4288035e+01   8.6733105e+01
   1.7625510e+01   1.4038744e+01   8.6670987e+01
   1.7923566e+01   1.3798574e+01   8.6615712e+01
   1.8238251e+01   1.3571215e+01   8.6570052e+01
   1.8570947e+01   1.3360353e+01   8.6536778e+01
   1.8923037e+01   1.3169676e+01   8.6518661e+01
   1.9295905e+01   1.3002872e+01   8.6518473e+01
   1.9690931e+01   1.2863628e+01   8.6538983e+01
   2.0109501e+01   1.2755633e+01   8.6582965e+01
   2.0552995e+01   1.2682572e+01   8.6653187e+01
   2.1022797e+01   1.2648136e+01   8.6752423e+01
   2.1520290e+01   1.2656010e+01   8.6883443e+01
   2.2046856e+01   1.2709882e+01   8.7049018e+01
   2.2603878e+01   1.2813441e+01   8.7251919e+01
   2.3192738e+01   1.2970374e+01   8.7494917e+01
   2.3814821e+01   1.3184368e+01   8.7780785e+01
   2.4471507e+01   1.3459111e+01   8.8112292e+01
   2.5164180e+01   1.3798291e+01   8.8492210e+01
   2.5894223e+01   1.4205596e+01   8.8923310e+01
   2.6663019e+01   1.4684712e+01   8.9408363e+01
   2.7471949e+01   1.5239328e+01   8.9950141e+01
   2.8322398e+01   1.5873132e+01   9.0551414e+01
   2.9215747e+01   1.6589810e+01   9.1214954e+01
   3.0153379e+01   1.7393051e+01   9.1943532e+01
   3.1136677e+01   1.8286542e+01   9.2739919e+01
   3.2167025e+01   1.9273971e+01   9.3606886e+01
   3.3245803e+01   2.0359025e+01   9.4547205e+01
   3.4374396e+01   2.1545392e+01   9.5563646e+01
   3.5554186e+01   2.2836761e+01   9.6658981e+01
   3.6786556e+01   2.4236817e+01   9.7835980e+01
   3.8072888e+01   2.5749250e+01   9.9097416e+01
   3.9414565e+01   2.7377746e+01   1.0044606e+02
   4.0812970e+01   2.9125994e+01   1.0188468e+02
   4.2269486e+01   3.0997680e+01   1.0341605e+02
   4.3785495e+01   3.2996493e+01   1.0504294e+02
   4.5362380e+01   3.5126120e+01   1.0676812e+02
   4.7001524e+01   3.7390250e+01   1.0859437e+02
   4.8704310e+01   3.9792568e+01   1.1052445e+02
   5.0472120e+01   4.2336764e+01   1.1256114e+02
   5.2306336e+01   4.5026524e+01   1.1470720e+02
   5.4208343e+01   4.7865537e+01   1.1696541e+02
   5.6179522e+01   5.0857490e+01   1.1933853e+02
   5.8221256e+01   5.4006070e+01   1.2182935e+02
   6.0334929e+01   5.7314966e+01   1.2444063e+02
   6.2521922e+01   6.0787865e+01   1.2717514e+02
   6.4783618e+01   6.4428454e+01   1.3003566e+02
   6.7121400e+01   6.8240422e+01   1.3302495e+02
   6.9536652e+01   7.2227455e+01   1.3614578e+02
   7.2030754e+01   7.6393242e+01   1.3940093e+02
   7.4605092e+01   8.0741470e+01   1.4279317e+02
   7.7261046e+01   8.5275827e+01   1.4632527e+02
   8.0000000e+01   9.0000000e+01   1.5000000e+02


四、完整MATLAB代码

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

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

相关文章

第二十章 多线程总结

继承Thread 类 Thread 类时 java.lang 包中的一个类,从类中实例化的对象代表线程,程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行,任务是指线程在启动时执行的工作,start() 方法启动线程&…

PTA_2023年软件设计综合实践_10(回溯法与分治限界法)

7-1 桥本分数 将1-9九个数不重复地赋给不同的9个元素 ,实现形如a/bcd/eff/hi 的形式。例:1/265/784/39 1/325/967/84 (注意:1/265/784/39 和5/781/264/39 只能算一种解),共有多少种不同的解。 语言选C #…

YOLOv5算法进阶改进(6)— 更换主干网络之ResNet18

前言:Hello大家好,我是小哥谈。ResNet18是ResNet系列中最简单的一个模型,由18个卷积层和全连接层组成,其中包含了多个残差块。该模型在ImageNet数据集上取得了很好的表现,成为了深度学习领域的经典模型之一。ResNet18的优点是可以解决深度神经网络中梯度消失的问题,使得性…

初识向量数据库

背景 现在的数据分为20%的传统结构化数据,80%的非结构化数据 结构化数据:主要单元是数值与符号,数据类型高度抽象且易于组织。基于数值运算与关系代数,可以轻松地对结构化数据进行分析。 非结构化数据:常见的类型包括…

荒野大镖客提示找不到emp.dll文件的5个修复方法-快速修复dll教程

今天我要和大家分享的是关于荒野大镖客缺失emp.dll的5个修复方法。我们都知道,荒野大镖客是一款非常受欢迎的游戏,但是有些玩家在玩游戏的过程中会遇到一些问题,比如emp.dll文件丢失。那么,emp.dll文件到底有什么作用呢&#xff1…

苹果Vision Pro即将量产

据界面新闻消息,苹果公司将在今年12月正式量产第一代MR(混合现实)产品Vision Pro。苹果公司对Vision Pro寄予了厚望,预计首批备货40万台左右,2024年的销量目标是100万台,第三年达到1000万台。 苹果的供应…

OCR文字识别工具 Cisdem OCRWizard激活最新 for Mac

为了提高内容识别的准确性,Cisdem OCRWizard提供供您选择两种模式:文件或名片。此外,它会自动分析的内容,标志着不同颜色的页面上几个区域根据给定部分的性质:文本(绿色标记),图像&a…

洛谷100题DAY8

36.P1416 攻击火星 此题找出规律即可 #include<bits/stdc.h> using namespace std; int n; int main() {cin >> n;cout << max(0, n - 2);return 0; } 37.P1551 亲戚 并查集模板题目 两个人如果使亲戚就合并建立联系&#xff0c;最后进行查找即可 #incl…

String你知道多少细节(含面试题)

1 字符串初始化 常见的初始化方式有以下3种 public static void main(String[] args) {String s1 "abc";System.out.println(s1);String s2 new String("abc");System.out.println(s2);char[] s3 {a,b,c};System.out.println(s3);} 【注意】 1.Strin…

Airtest进阶使用篇!提高脚本稳定性 + 批量运行脚本!

一、背景 今天彭于晏为大家分享Airtest进阶使用篇&#xff0c;主要包含两块的内容&#xff1a; 提高脚本稳定性批量运行脚本生成测试报告 二、提高脚本稳定性 1、添加全局配置: #全局设置 ST.FIND_TIMEOUT10 #设置隐式等待时长,默认识别图片时间是30秒&#xff0c;可改为…

Redis对象系统

前言 在Redis中有许多数据结构&#xff0c;比如&#xff1a;简单动态字符串(SDS)&#xff0c;双端链表&#xff0c;字典&#xff0c;压缩列表&#xff0c;整数集合等。 Redis并没有直接使用这些数据结构来实现键值对数据库&#xff0c;而是基于这些数据结构创建了一个对象系统。…

LLM面面观之Prefix LM vs Causal LM

1. 背景 关于Prefix LM和Causal LM的区别&#xff0c;本qiang在网上逛了一翻&#xff0c;发现多数客官只给出了结论&#xff0c;但对于懵懵的本qiang&#xff0c;结果仍是懵懵... 因此&#xff0c;消遣了多半天&#xff0c;从原理及出处&#xff0c;交出了Prefix LM和Causal …

SparkRDD及算子-python版

RDD相关知识 RDD介绍 RDD 是Spark的核心抽象&#xff0c;即 弹性分布式数据集&#xff08;residenta distributed dataset&#xff09;。代表一个不可变&#xff0c;可分区&#xff0c;里面元素可并行计算的集合。其具有数据流模型的特点&#xff1a;自动容错&#xff0c;位置…

【SparkSQL】基础入门(重点:SparkSQL和Hive的异同、SparkSQL数据抽象)

【大家好&#xff0c;我是爱干饭的猿&#xff0c;本文重点介绍Spark SQL的定义、特点、发展历史、与hive的区别、数据抽象、SparkSession对象。 后续会继续分享其他重要知识点总结&#xff0c;如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下吧】 上一…

Python三百行代码实现一简约个人博客网站(全网最小巧)

这是全互联网最小巧的博客&#xff0c;没有比这更小的了。虽然小巧&#xff0c;但功能一点儿也不弱&#xff0c;支持文章的分页展示&#xff0c;文章表格&#xff0c;图片和代码语法高亮。文章无限制分类&#xff0c;访问量统计&#xff0c;按时间和按点击量排序&#xff0c;展…

端口隔离度

端口隔离度 隔离度为&#xff08;本振或射频信号&#xff09;泄漏到其他端口的功率与输入功率之比&#xff0c;单位是dB。 比如 RF to LO Isolation 表示 射频输入信号的功率 与 泄漏到LO端口的功率 之比。 而 LO to RF Isolation 则表示 本振输入信号的功率 与 泄漏到RF端口的…

深入Python元编程:了解声明与初始化定制元类

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 简介 在Python中&#xff0c;元编程是指在运行时创建或定制类的编程。元类是Python中最强大的元编程工具之一&#xff0c;允许您控制类的创建过程。元类是类的类&#xff0c;它控制类的实例化&#xff0c;允许您…

Xcode 来自身份不明的开发者且与之前打开的版本不同。你确定要打开它吗?

Xcode新建一个项目&#xff0c;模拟器运行的时候频繁跳出 “x x x”来自身份不明的开发者且与之前打开的版本不同。你确定要打开它吗? 如下图&#xff1a; 这个和在mac上安装应用的情况有点不一样&#xff0c;在mac上安装应用遇到这个问题&#xff0c;只需要在“设置”-->…

深入了解Spring Boot中@Async注解的8大坑点

文章目录 1. 缺少EnableAsync注解2. 异步方法需独立3. 不同的异步方法间无法相互调用4. 返回值为void的异步方法无法捕获异常5. 外部无法直接调用带有Async注解的方法6. Async方法不适用于private方法7. 缺失异步线程池配置8. 异步方法与事务的兼容结语 &#x1f389;深入了解S…

对于 ` HttpServletResponse ` , ` HttpServletRequest `我们真的学透彻了吗

对于 **HttpServletResponse , HttpServletRequest**我们真的学透彻了吗 问题引入 PostMapping("/importTemplate") public void importTemplate(HttpServletResponse response) {ExcelUtil<SysUser> util new ExcelUtil<SysUser>(SysUser.class);uti…