(一)基于高尔夫优化算法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.1195509e+01 1.1522382e+01 8.1134937e+011.2336219e+01 1.2941987e+01 8.2210564e+011.3423955e+01 1.4262310e+01 8.3228946e+011.4460544e+01 1.5486846e+01 8.4192142e+011.5447811e+01 1.6619089e+01 8.5102217e+011.6387583e+01 1.7662536e+01 8.5961231e+011.7281684e+01 1.8620681e+01 8.6771246e+011.8131942e+01 1.9497019e+01 8.7534326e+011.8940182e+01 2.0295045e+01 8.8252532e+011.9708230e+01 2.1018255e+01 8.8927926e+012.0437912e+01 2.1670143e+01 8.9562570e+012.1131053e+01 2.2254205e+01 9.0158527e+012.1789480e+01 2.2773936e+01 9.0717858e+012.2415019e+01 2.3232830e+01 9.1242626e+012.3009496e+01 2.3634383e+01 9.1734893e+012.3574735e+01 2.3982091e+01 9.2196721e+012.4112565e+01 2.4279447e+01 9.2630172e+012.4624809e+01 2.4529948e+01 9.3037307e+012.5113295e+01 2.4737088e+01 9.3420191e+012.5579848e+01 2.4904362e+01 9.3780883e+012.6026294e+01 2.5035266e+01 9.4121447e+012.6454458e+01 2.5133295e+01 9.4443945e+012.6866168e+01 2.5201943e+01 9.4750438e+012.7263249e+01 2.5244706e+01 9.5042989e+012.7647526e+01 2.5265079e+01 9.5323660e+012.8020826e+01 2.5266557e+01 9.5594514e+012.8384974e+01 2.5252635e+01 9.5857611e+012.8741797e+01 2.5226808e+01 9.6115015e+012.9093120e+01 2.5192572e+01 9.6368787e+012.9440769e+01 2.5153420e+01 9.6620990e+012.9786571e+01 2.5112850e+01 9.6873686e+013.0132351e+01 2.5074355e+01 9.7128936e+013.0479935e+01 2.5041430e+01 9.7388803e+013.0831149e+01 2.5017571e+01 9.7655350e+013.1187818e+01 2.5006274e+01 9.7930637e+013.1551770e+01 2.5011032e+01 9.8216728e+013.1924829e+01 2.5035341e+01 9.8515684e+013.2308821e+01 2.5082696e+01 9.8829568e+013.2705574e+01 2.5156593e+01 9.9160441e+013.3116912e+01 2.5260526e+01 9.9510366e+013.3544661e+01 2.5397990e+01 9.9881405e+013.3990647e+01 2.5572481e+01 1.0027562e+023.4456697e+01 2.5787494e+01 1.0069507e+023.4944635e+01 2.6046523e+01 1.0114183e+023.5456289e+01 2.6353064e+01 1.0161794e+023.5993484e+01 2.6710612e+01 1.0212548e+023.6558045e+01 2.7122662e+01 1.0266651e+023.7151799e+01 2.7592710e+01 1.0324308e+023.7776572e+01 2.8124249e+01 1.0385727e+023.8434190e+01 2.8720776e+01 1.0451113e+023.9126478e+01 2.9385785e+01 1.0520672e+023.9855263e+01 3.0122772e+01 1.0594611e+024.0622370e+01 3.0935231e+01 1.0673137e+024.1429625e+01 3.1826658e+01 1.0756454e+024.2278854e+01 3.2800548e+01 1.0844769e+024.3171884e+01 3.3860396e+01 1.0938289e+024.4110539e+01 3.5009697e+01 1.1037220e+024.5096647e+01 3.6251945e+01 1.1141768e+024.6132032e+01 3.7590637e+01 1.1252139e+024.7218521e+01 3.9029268e+01 1.1368540e+024.8357940e+01 4.0571332e+01 1.1491176e+024.9552115e+01 4.2220324e+01 1.1620254e+025.0802871e+01 4.3979740e+01 1.1755980e+025.2112034e+01 4.5853074e+01 1.1898560e+025.3481431e+01 4.7843822e+01 1.2048201e+025.4912887e+01 4.9955480e+01 1.2205109e+025.6408228e+01 5.2191541e+01 1.2369489e+025.7969280e+01 5.4555501e+01 1.2541548e+025.9597869e+01 5.7050855e+01 1.2721493e+026.1295822e+01 5.9681099e+01 1.2909529e+026.3064963e+01 6.2449727e+01 1.3105863e+026.4907119e+01 6.5360235e+01 1.3310701e+026.6824115e+01 6.8416117e+01 1.3524250e+026.8817778e+01 7.1620868e+01 1.3746714e+027.0889934e+01 7.4977985e+01 1.3978301e+027.3042408e+01 7.8490961e+01 1.4219217e+027.5277026e+01 8.2163292e+01 1.4469668e+027.7595615e+01 8.5998474e+01 1.4729860e+028.0000000e+01 9.0000000e+01 1.5000000e+02
四、完整MATLAB代码
相关文章:
(一)基于高尔夫优化算法GOA求解无人机三维路径规划研究(MATLAB)
一、无人机模型简介: 单个无人机三维路径规划问题及其建模_IT猿手的博客-CSDN博客 参考文献: [1]胡观凯,钟建华,李永正,黎万洪.基于IPSO-GA算法的无人机三维路径规划[J].现代电子技术,2023,46(07):115-120 二、高尔夫优化算法GOA简介 高尔夫优化算法…...
ESP32-Web-Server编程-建立第一个网页
ESP32-Web-Server编程-建立第一个网页 HTTP 简述 可能你每天都要刷几个短视频,打开几个网页来娱乐一番。当你打开一个网络上的视频或者图片时,其实际发生了下面的流程: 其中客户端就是你的浏览器啦,服务器就是远程一个存放视频或…...
csgo/steam游戏搬砖项目的五大认知误区
CSGO/steam游戏搬砖项目的5大认知误区 1、卡价越高越难选品?越没利润? 2、明明buff卖价《 steam求购价,为什么还能赚钱? 3、实名资料少就没法批量操作账号? 4、本金少就没法玩? 5、这个项目的风险是不是很大…...
ASCII sorting
描述 输入一个字符串,对其字符进行排序,输出其字符按ASCII码升序排列。 输入 无空格字符串 输出 按ASCII码升序输出其字符。 样例输入 and 样例输出 adn code(c版本) #include<stdio.h> #include<stdlib.h> // qs…...
redis--高可用之持久化
redis高可用相关知识 在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)。 但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服务( 如主…...
『VUE3 の 要点摘录』
✅v-model 用法 v-model 原生方法: v-model computed : 更改名字: 多个 v-model 绑定 处理 v-model 修饰符 ✅TS项目报错 1、TypeScript 错误 “Module ‘…index’ has no default export” // tsconfig.json {...."compilerOpt…...
Buzz库python代码示例
Buzz库来编写一个下载器程序。 php <?php require_once vendor/autoload.php; // 引入Buzz库 use Buzz\Browser; use Buzz\Message\Response; $browser new Browser(); // 设置 $browser->setHttpClient(new HttpClientProxy([ host > , port > , ])…...
Django路由分发
首先明白一点,Django的每一个应用下都可以有自己的templates文件夹,urls.py文件夹,static文件夹,基于这个特点,Django能够很好的做到分组开发(每个人只写自己的app),作为老大&#x…...
【UGUI】中Content Size Fitter)组件-使 UI 元素适应其内容的大小
官方文档:使 UI 元素适应其内容的大小 - Unity 手册 必备组件:Content Size Fitter 通常,在使用矩形变换定位 UI 元素时,应手动指定其位置和大小(可选择性地包括使用父矩形变换进行拉伸的行为)。 但是&a…...
第二十章Java博客
如果一次只完成一件事情,很容易实现。但现实生活中,很多事情都是同时进行的。Java中为了模拟这种状态,引入了线程机制。简单地说,当程序同时完成多件事情时,就是所谓的多线程。多线程应用相当广泛,使用多线…...
实验一 SAS 基本操作和数据表的导入 2023-11-29
一、上机目的 熟悉SAS的集成环境并掌握它的基本操作。理解SAS程序的结构,理解其中的过程,过程选项,语句,语句选项等概念,掌握SAS编程技术。 二、上机内容 主要有SAS操作界面、SAS窗口操作、SAS菜单操作、SAS按钮操作…...
YOLOv5改进之ShuffleNetV2
目录 一、原理 网络结构 二、代码 三、应用到YOLOv5 一、原理...
tcp/ip协议 error=10022 Winsock.reg Winsock2.reg
tcp/ip协议 error10022 这2个注册表选项千万不能删除,否则上不了网。 按下windows键R键,输入regedit,打开注册表,在文件目录里找到如下两个文件夹,删除这两个文件夹。 路径:HKEY_LOCAL_MACHINE\System\C…...
【Redis基础】Redis基本的全局命令
✅作者简介:大家好,我是小杨 📃个人主页:「小杨」的csdn博客 🐳希望大家多多支持🥰一起进步呀! Redis基本的全局命令 1,KEYS命令 语法:KEYS pattern KEYS命令用来查询服…...
Vite 了解
1、vite 与 create-vite 的区别 2、vite 解决的部分问题 3、vite配置文件的细节 3.1、vite语法提示配置 3.2、环境的处理 3.3、环境变量 上图补充 使用 3.4、vite 识别,vue文件的原理 简单概括就是,我们在运行 npm润dev 的时候,vite 会搭起…...
oracle常用通用sql脚本——查询前用户的表空间信息
oracle常用通用sql脚本——查询前用户的表空间信息 一、查询前用户的表空间信息1、 查询当前用户的所有表空间2、 已G为单位3、 已MB为单位 二、以上俩段sql查出结果集存在差异的原因 一、查询前用户的表空间信息 1、 查询当前用户的所有表空间 SELECT * FROM dba_tablespace…...
Python内置类属性`__name__`属性的使用教程
更多Python学习内容:ipengtao.com Python中的__name__是一种内置的特殊属性,通常用于判断模块是作为主程序运行还是作为模块被导入。本文将深入讲解__name__属性的用法,通过丰富的示例代码展示其在不同情景下的应用。 模块作为主程序运行 当一…...
BUUCTF-pwn-ciscn_2019_ne_51
简单查看保护: 32为程序没有canary没有PIE,应该是简单的栈溢出。我们照着这个思路去找溢出点在哪,运行下程序看看什么情况: 程序上来是输入一个密码验证。随便输入下错误直接退出。因此我们需要到IDA中看看怎么回事: 主…...
【限时免费】20天拿下华为OD笔试之【哈希表】2023Q2B-选修课【欧弟算法】全网注释最详细分类最全的华为OD真题题解
文章目录 题目描述与示例题目描述输入输出示例一输入输出说明 示例二输入输出说明 解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 现有两门选修课,每门选修课都有一部分学生选修,每个学生都有…...
Android关于杀掉进程的方案
《风波莫听穿林打叶声》—— 苏轼 〔宋代〕 三月七日,沙湖道中遇雨,雨具先去,同行皆狼狈,余独不觉。已而遂晴,故作此词。 莫听穿林打叶声,何妨吟啸且徐行。 竹杖芒鞋轻胜马,谁怕?一蓑…...
测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...
AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机
这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机,因为在使用过程中发现 Airsim 对外部监控相机的描述模糊,而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置,最后在源码示例中找到了,所以感…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...
