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

一、无人机模型简介:

单个无人机三维路径规划问题及其建模_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+011.0417311e+01   1.0992468e+01   8.0871352e+011.0811152e+01   1.1890804e+01   8.1671955e+011.1182905e+01   1.2698696e+01   8.2404581e+011.1533953e+01   1.3419832e+01   8.3072000e+011.1865679e+01   1.4057899e+01   8.3676983e+011.2179465e+01   1.4616585e+01   8.4222303e+011.2476695e+01   1.5099577e+01   8.4710729e+011.2758750e+01   1.5510564e+01   8.5145034e+011.3027014e+01   1.5853232e+01   8.5527987e+011.3282869e+01   1.6131270e+01   8.5862361e+011.3527699e+01   1.6348365e+01   8.6150927e+011.3762885e+01   1.6508205e+01   8.6396455e+011.3989810e+01   1.6614477e+01   8.6601717e+011.4209859e+01   1.6670869e+01   8.6769485e+011.4424412e+01   1.6681069e+01   8.6902528e+011.4634852e+01   1.6648764e+01   8.7003619e+011.4842564e+01   1.6577642e+01   8.7075528e+011.5048928e+01   1.6471390e+01   8.7121027e+011.5255329e+01   1.6333697e+01   8.7142887e+011.5463148e+01   1.6168249e+01   8.7143879e+011.5673768e+01   1.5978735e+01   8.7126774e+011.5888573e+01   1.5768842e+01   8.7094344e+011.6108944e+01   1.5542258e+01   8.7049358e+011.6336265e+01   1.5302670e+01   8.6994590e+011.6571919e+01   1.5053766e+01   8.6932809e+011.6817287e+01   1.4799234e+01   8.6866787e+011.7073754e+01   1.4542761e+01   8.6799295e+011.7342700e+01   1.4288035e+01   8.6733105e+011.7625510e+01   1.4038744e+01   8.6670987e+011.7923566e+01   1.3798574e+01   8.6615712e+011.8238251e+01   1.3571215e+01   8.6570052e+011.8570947e+01   1.3360353e+01   8.6536778e+011.8923037e+01   1.3169676e+01   8.6518661e+011.9295905e+01   1.3002872e+01   8.6518473e+011.9690931e+01   1.2863628e+01   8.6538983e+012.0109501e+01   1.2755633e+01   8.6582965e+012.0552995e+01   1.2682572e+01   8.6653187e+012.1022797e+01   1.2648136e+01   8.6752423e+012.1520290e+01   1.2656010e+01   8.6883443e+012.2046856e+01   1.2709882e+01   8.7049018e+012.2603878e+01   1.2813441e+01   8.7251919e+012.3192738e+01   1.2970374e+01   8.7494917e+012.3814821e+01   1.3184368e+01   8.7780785e+012.4471507e+01   1.3459111e+01   8.8112292e+012.5164180e+01   1.3798291e+01   8.8492210e+012.5894223e+01   1.4205596e+01   8.8923310e+012.6663019e+01   1.4684712e+01   8.9408363e+012.7471949e+01   1.5239328e+01   8.9950141e+012.8322398e+01   1.5873132e+01   9.0551414e+012.9215747e+01   1.6589810e+01   9.1214954e+013.0153379e+01   1.7393051e+01   9.1943532e+013.1136677e+01   1.8286542e+01   9.2739919e+013.2167025e+01   1.9273971e+01   9.3606886e+013.3245803e+01   2.0359025e+01   9.4547205e+013.4374396e+01   2.1545392e+01   9.5563646e+013.5554186e+01   2.2836761e+01   9.6658981e+013.6786556e+01   2.4236817e+01   9.7835980e+013.8072888e+01   2.5749250e+01   9.9097416e+013.9414565e+01   2.7377746e+01   1.0044606e+024.0812970e+01   2.9125994e+01   1.0188468e+024.2269486e+01   3.0997680e+01   1.0341605e+024.3785495e+01   3.2996493e+01   1.0504294e+024.5362380e+01   3.5126120e+01   1.0676812e+024.7001524e+01   3.7390250e+01   1.0859437e+024.8704310e+01   3.9792568e+01   1.1052445e+025.0472120e+01   4.2336764e+01   1.1256114e+025.2306336e+01   4.5026524e+01   1.1470720e+025.4208343e+01   4.7865537e+01   1.1696541e+025.6179522e+01   5.0857490e+01   1.1933853e+025.8221256e+01   5.4006070e+01   1.2182935e+026.0334929e+01   5.7314966e+01   1.2444063e+026.2521922e+01   6.0787865e+01   1.2717514e+026.4783618e+01   6.4428454e+01   1.3003566e+026.7121400e+01   6.8240422e+01   1.3302495e+026.9536652e+01   7.2227455e+01   1.3614578e+027.2030754e+01   7.6393242e+01   1.3940093e+027.4605092e+01   8.0741470e+01   1.4279317e+027.7261046e+01   8.5275827e+01   1.4632527e+028.0000000e+01   9.0000000e+01   1.5000000e+02

四、完整MATLAB代码

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

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

相关文章

联想SR660 V2服务器使用默认用户登录BMC失败

新到了一台服务器,使用默认用户登录BMC失败 登录失败提示:账号或密码错误 解决方案: 1、重置BMC 2、新增用户 开机后在出现 ThinkServer 界面按 F1,进入 BIOS 界面 进入 System Settings-BMC Configuration 菜单相关&#xf…

Windows 10和11的一个专用的设置菜单,让清理空间变得方便快捷

需要在Windows电脑上释放一些磁盘空间吗?Windows 10和Windows 11都提供了一个专用的设置菜单,使过程更容易。从该菜单中,你可以查看设备上使用了多少空间以及内容类型。 Windows中的“存储”设置还允许你快速清除空间,并启用“存储感知”自动删除临时文件和回收站项目。这…

机器学习:领域自适应学习

训练一个分类器是小问题 上难度 训练数据和测试数据不一致,比如训练数据是黑白的,测试时彩色的,结果准确率非常低。 训练数据和测试数据有点差距的时候,能不能效果也能好呢?这就用到了领域自使用domain adptation 用一…

pkpmbs 建设工程质量监督系统 文件上传漏洞复现

0x01 产品简介 pkpmbs 建设工程质量监督系统是湖南建研信息技术股份有限公司一个与工程质量检测管理系统相结合的,B/S架构的检测信息监管系统。 0x02 漏洞概述 pkpmbs 建设工程质量监督系统 FileUpOrDown.aspx、/Platform/System/FileUpload.ashx、接口处存在任意文…

Python之数据可视化

文章目录 一、1、matplotlib简单应用1.1、绘制带有中文标签和图例的图1.2、 绘制散点图1.3、绘制饼状图1.4、多个图形一起显示 一、 1、matplotlib简单应用 matplotlib模块依赖于numpy模块和tkinter模块,可以绘制多种形式的图形,包括线图、直方图、饼状…

【Java SE】带你在String类世界中遨游!!!

🌹🌹🌹我的主页🌹🌹🌹 🌹🌹🌹【Java SE 专栏】🌹🌹🌹 🌹🌹🌹上一篇文章:带你走近Java的…

LeetCode [简单](非递归)二叉树的中序遍历

遍历左孩子,将他们放进栈中,左边走到尽头,出栈,root变为栈顶元素,存值,向右边走一个 再次遍历左孩子,将他们放入栈中,如果没有左孩子了,就出栈,root变为栈顶…

MEFLUT: Unsupervised 1D Lookup Tables for Multi-exposure Image Fusion

Abstract 在本文中,我们介绍了一种高质量多重曝光图像融合(MEF)的新方法。我们表明,曝光的融合权重可以编码到一维查找表(LUT)中,该表将像素强度值作为输入并产生融合权重作为输出。我们为每次…

【RT-DETR改进】SIoU、GIoU、CIoU、DIoU、AlphaIoU等二十余种损失函数

一、本文介绍 这篇文章介绍了RT-DETR的重大改进,特别是在损失函数方面的创新。它不仅包括了多种IoU损失函数的改进和变体,如SIoU、WIoU、GIoU、DIoU、EIOU、CIoU,还融合了“Alpha”思想,创造了一系列新的损失函数。这些组合形式的…

PyQt基础_007_ 按钮类控件QCombox

import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class ComboxDemo(QWidget):def __init__(self, parentNone):super(ComboxDemo, self).__init__(parent)self.setWindowTitle("combox 例子") self.resize(300, 90) …

手机一键“触达”!VR全景助力政务服务大厅数字升级

在我们的日常生活中,去政务服务大厅办事,总是避免不了遭遇“缺一样材料”的烦恼。因此网友总是吐槽,办事服务窗口总是多次要求提供不同证明,“一会儿说要身份证,一会儿又说要护照”,每次带上服务窗口要求的…

基于合成数据的行人检测AI模型训练

在线工具推荐: 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 近年来,自动驾驶汽车因其对社会的广泛影响而越来越受欢迎,因为它们提高…

删除排序链表的重复元素I和II,多种解法和思考

删除排序链表的重复元素I https://leetcode.cn/problems/remove-duplicates-from-sorted-list/description/ 一个循环就可以了,如果当前节点和下一个节点值一样,当前节点不移动让next后移动一个,如果不一样则当前节点后移。 一个循环就可以…

代码混淆的原理和方法详解

代码混淆的原理和方法详解摘要移动App的广泛使用带来了安全隐患,为了保护个人信息和数据安全,开发人员通常会采用代码混淆技术。本文将详细介绍代码混淆的原理和方法,并探讨其在移动应用开发中的重要性。 引言随着移动应用的普及,…

【hacker送书第6期】深入理解Java核心技术

第6期图书推荐 内容简介作者简介精彩书评参与方式 内容简介 《深入理解Java核心技术:写给Java工程师的干货笔记(基础篇)》是《Java工程师成神之路》系列的第一本,主要聚焦于Java开发者必备的Java核心基础知识。全书共23章&#xf…

高级IO—poll,epoll,reactor

高级IO—poll,epoll,reactor 文章目录 高级IO—poll,epoll,reactorpoll函数poll函数接口poll服务器 epollepoll的系统调用epoll_createepoll_ctlepoll_wait epoll的工作原理epoll的工作方式水平触发边缘触发 epoll服务器 reactor poll函数 poll函数是一个用于多路复用的系统调…

STM32之定时器--PWM控制SG90舵机

目录 1、PWM介绍 1.STM32F103C8T6 PWM资源: 2.PWM输出模式 3.PWM周期与频率 4.不同IO口输出PWM相对应连接到定时器的那一路 2、sg90舵机介绍及实战 1.sg90舵机介绍 2.代码实现 1.codeMX配置 2.用到的HAL库函数 1.开始产生PWM信号 返回状态值 2.修改比较…

AST反混淆实战|hcaptcha验证码混淆js还原分析

关注它,不迷路。 本文章中所有内容仅供学习交流,不可用于任何商业用途和非法用途,否则后果自负,如有侵权,请联系作者立即删除! 1.实战地址 https://newassets.hcaptcha.com/c/bc8c0a8/hsw.js 将上面…

Python+requests+Jenkins接口自动化测试实例

在做功能测试的基础上,我平时也会用postman测试接口,不过postman只能测试一个一个接口,不能连贯起来,特别是我们公司的接口很多都是要用到token的,导致我每次测个需要登录的接口都要去获取到token,做了很多…

Excle无法在受保护的视图中打开该文件

Excle无法在受保护的视图中打开该文件 解决方案: