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

news2024/9/24 5:32:42

一、无人机模型简介:

单个无人机三维路径规划问题及其建模_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.0951749e+01   1.0964931e+01   8.0886341e+01
   1.1866404e+01   1.1859602e+01   8.1735889e+01
   1.2745345e+01   1.2686798e+01   8.2550078e+01
   1.3589950e+01   1.3449305e+01   8.3330341e+01
   1.4401601e+01   1.4149907e+01   8.4078111e+01
   1.5181676e+01   1.4791390e+01   8.4794821e+01
   1.5931554e+01   1.5376539e+01   8.5481904e+01
   1.6652617e+01   1.5908138e+01   8.6140794e+01
   1.7346242e+01   1.6388973e+01   8.6772924e+01
   1.8013811e+01   1.6821828e+01   8.7379727e+01
   1.8656702e+01   1.7209490e+01   8.7962636e+01
   1.9276295e+01   1.7554743e+01   8.8523085e+01
   1.9873969e+01   1.7860371e+01   8.9062506e+01
   2.0451105e+01   1.8129161e+01   8.9582333e+01
   2.1009082e+01   1.8363897e+01   9.0084000e+01
   2.1549279e+01   1.8567364e+01   9.0568939e+01
   2.2073077e+01   1.8742348e+01   9.1038583e+01
   2.2581854e+01   1.8891632e+01   9.1494366e+01
   2.3076991e+01   1.9018004e+01   9.1937721e+01
   2.3559867e+01   1.9124247e+01   9.2370082e+01
   2.4031861e+01   1.9213146e+01   9.2792881e+01
   2.4494353e+01   1.9287488e+01   9.3207551e+01
   2.4948724e+01   1.9350056e+01   9.3615527e+01
   2.5396352e+01   1.9403636e+01   9.4018240e+01
   2.5838617e+01   1.9451013e+01   9.4417125e+01
   2.6276898e+01   1.9494971e+01   9.4813614e+01
   2.6712576e+01   1.9538297e+01   9.5209141e+01
   2.7147030e+01   1.9583775e+01   9.5605139e+01
   2.7581640e+01   1.9634191e+01   9.6003041e+01
   2.8017785e+01   1.9692328e+01   9.6404281e+01
   2.8456844e+01   1.9760973e+01   9.6810291e+01
   2.8900198e+01   1.9842910e+01   9.7222505e+01
   2.9349226e+01   1.9940925e+01   9.7642356e+01
   2.9805307e+01   2.0057802e+01   9.8071277e+01
   3.0269822e+01   2.0196327e+01   9.8510701e+01
   3.0744150e+01   2.0359285e+01   9.8962062e+01
   3.1229670e+01   2.0549461e+01   9.9426794e+01
   3.1727763e+01   2.0769639e+01   9.9906328e+01
   3.2239807e+01   2.1022605e+01   1.0040210e+02
   3.2767182e+01   2.1311145e+01   1.0091554e+02
   3.3311269e+01   2.1638042e+01   1.0144808e+02
   3.3873446e+01   2.2006083e+01   1.0200116e+02
   3.4455093e+01   2.2418051e+01   1.0257621e+02
   3.5057590e+01   2.2876733e+01   1.0317466e+02
   3.5682316e+01   2.3384914e+01   1.0379794e+02
   3.6330652e+01   2.3945378e+01   1.0444750e+02
   3.7003976e+01   2.4560910e+01   1.0512476e+02
   3.7703668e+01   2.5234296e+01   1.0583115e+02
   3.8431109e+01   2.5968321e+01   1.0656811e+02
   3.9187677e+01   2.6765769e+01   1.0733707e+02
   3.9974752e+01   2.7629427e+01   1.0813947e+02
   4.0793714e+01   2.8562078e+01   1.0897673e+02
   4.1645942e+01   2.9566508e+01   1.0985030e+02
   4.2532816e+01   3.0645502e+01   1.1076160e+02
   4.3455716e+01   3.1801845e+01   1.1171207e+02
   4.4416021e+01   3.3038322e+01   1.1270314e+02
   4.5415111e+01   3.4357719e+01   1.1373624e+02
   4.6454365e+01   3.5762820e+01   1.1481281e+02
   4.7535163e+01   3.7256410e+01   1.1593428e+02
   4.8658886e+01   3.8841275e+01   1.1710209e+02
   4.9826911e+01   4.0520199e+01   1.1831766e+02
   5.1040619e+01   4.2295968e+01   1.1958244e+02
   5.2301390e+01   4.4171367e+01   1.2089784e+02
   5.3610603e+01   4.6149180e+01   1.2226532e+02
   5.4969638e+01   4.8232193e+01   1.2368629e+02
   5.6379875e+01   5.0423191e+01   1.2516219e+02
   5.7842692e+01   5.2724959e+01   1.2669447e+02
   5.9359470e+01   5.5140282e+01   1.2828454e+02
   6.0931588e+01   5.7671946e+01   1.2993384e+02
   6.2560426e+01   6.0322734e+01   1.3164381e+02
   6.4247364e+01   6.3095433e+01   1.3341588e+02
   6.5993780e+01   6.5992827e+01   1.3525149e+02
   6.7801056e+01   6.9017701e+01   1.3715205e+02
   6.9670570e+01   7.2172841e+01   1.3911902e+02
   7.1603701e+01   7.5461031e+01   1.4115382e+02
   7.3601831e+01   7.8885057e+01   1.4325788e+02
   7.5666337e+01   8.2447704e+01   1.4543265e+02
   7.7798600e+01   8.6151757e+01   1.4767954e+02
   8.0000000e+01   9.0000000e+01   1.5000000e+02


四、完整MATLAB代码

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

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

相关文章

ps 透明印章制作

ps 透明印章制作 1、打开不透明印章2、抠出红色印章3、新建图层4、填充红色印章到新图层5、导出透明印章 1、打开不透明印章 打开ps软件,菜单栏选择 文件-打开 选择本地不透明印章 打开 2、抠出红色印章 ps菜单栏 选择 选择-色彩范围 点击色彩范围 色彩范围窗口 取…

Unity Canvas、Canvas Scaler、Graphic Raycaster、EventSystem 组件详解

文章目录 0. 参考文章1. Canvas1.1 Screen Space-Overlay —— 屏幕空间覆盖模式1.2 Screen Space-Camera —— 相机模式1.3 World Space —— 世界模式 2. Canvas Scaler:控制UI画布的放大缩放的比例2.1 Constant Pixer Size —— 恒定像素2.2 Scale With Screen S…

CAN总线学习(STM32的CAN寄存器使用)(笔记二)

CAN总线基础基础知识的文章:CAN总线学习(CAN总线基础知识)(笔记一)-CSDN博客 在前面CAN总线基础知识和报文中介绍的是报文内容是比较全面的,STM32在CAN协议的基础上做了一些简单的简化,例如下图…

在线文库系统 转码功能源代码展示 支持文档在线预览查阅功能

1、支持 pdf,doc,docx,ppt,pptx,txt,xlsx,xls,csv,zip,epub,ai,psd 格式的文件 2、文库系统的上传界面&#xff0c;用户可以进行上传自己的文件&#xff0c;然后自定义文档售价&#xff0c;来赚取金额。 3、文库系统的部分代码披露&#xff1a; <template><div clas…

开发中遇到的问题 -- 回调解决应用端和服务端通信问题

前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;神的孩子都在歌唱 这里写目录标题 一. 问题概述二. 代码展示2.1 公共服务端2.2 应用端 一. 问题概述 项目介绍&#xff1a;今天做项目的时候遇到了点…

传教士与野人过河问题

代码模块参考文章&#xff1a;传教士与野人过河问题&#xff08;numpy、pandas&#xff09;_python过河问题_醉蕤的博客-CSDN博客 问题描述 一般的传教士和野人问题&#xff08;Missionaries and Cannibals&#xff09;&#xff1a;有N个传教士和C个野人来到河边准 备渡河。…

键入网址到网页显示,期间发生了什么?(计算机网络)

浏览器首先会对URL进行解析 下面以http://www.server.com/dir1/file1.html为例 当没有路径名时&#xff0c;就代表访问根目录下事先设置的默认文件&#xff0c;也就是 /index.html 或者 /default.html 对URL进行解析之后&#xff0c;浏览器确定了 Web 服务器和文件名&#x…

多多跨境跑出高质量发展“加速度”,解锁拼多多Q3财报背后的王牌

互联网红利渐趋消退&#xff0c;用户拉新难度加大&#xff0c;这些现象也在表明过去电子商务依靠资本、流量快速增长的发展模式已经成为过去式。由高速发展转为高质量发展&#xff0c;在今天每一个经济体与宏观经济发展态势一般&#xff0c;发展的“质量”价值正在被放大开来。…

一个软件测试练手项目——学生信息管理系统测试,卷起来啊

免费分享一个练手项目&#xff0c;学生信息管理系统&#xff0c;获取方式在文末 1.引言 1.1项目目的 软件测试是为了在软件投入生产性运行之前&#xff0c;尽可能多地发现软件的错误。该项目的目的是给学习软件测试的朋友练手用 1.2 项目背景 随着学校的规模不断扩大&…

学习程序员必知必会的基础算法(收藏)

近年来学习python的程序员愈来愈多&#xff0c;有的同学选择了python培训机构&#xff0c;也有的人觉得自己天赋好选择了自学不管大家怎么去学习&#xff0c;在学习python基础的过程中&#xff0c;肯定离不开的就是基础算法&#xff0c;今天就为大家介绍几大学习中的基础算法。…

1000多页!LeetCode刷题手册分享

这本手册确实是一部令人印象深刻的作品。&#xff08;手册链接在文末&#xff01;&#xff01;&#xff01;&#xff09; 首先&#xff0c;内容充实是这本手册的一大亮点。它涵盖了广泛的算法和数据结构主题&#xff0c;包括数组、链表、树、图、排序算法、动态规划等等。每个…

P28 C++ 对象的生存周期(栈的作用域生存周期)

前言 本期的主题是栈作用域中对象的生存期&#xff0c;通俗来讲&#xff0c;就是讨论对象是如何在栈上生存的。 这章内容整体分为两部分。 第一部分是&#xff0c;你必须理解栈上的东西是如何存在的&#xff0c;这样你才能真正写出能正常工作的代码。第二部分是&#xff0c;一…

什么是AI PC:人工智能电脑?

大家好啊&#xff0c;我是董董灿。 今天在一个群聊里&#xff0c;聊到了关于 AI PC (人工智能电脑)的话题。 之前看到过关于 AI PC 的新闻&#xff0c;说的是联想集团董事长兼CEO杨元庆在一次演讲中提到了 AI PC 的概念&#xff0c;并且绘声绘色的描绘了AI PC 的发展前景。 下…

Windows系列:windows server 2003 - 组策略部署软件

通过组策略为域内用户部署&#xff08;deploy&#xff09;软件&#xff0c;可分为指派&#xff08;assign&#xff09;和发布&#xff08;publish&#xff09;。 软件指派给用户&#xff1a;用户在域内登录后&#xff0c;被“通告 advertised”给用户&#xff0c;此时仅安装了部…

链表_相交链表

//给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 // // 图示两个链表在节点 c1 开始相交&#xff1a; // // // // 题目数据 保证 整个链式结构中不存在环。 // // 注意…

提升技能素养,AMCAP做出合适的决策

近年来&#xff0c;智能配置投资与理财逐渐受到关注并走俏。这是一种简单快捷的智慧化理财方式&#xff0c;通过将个人和家族的闲置资金投入到低风险高流动性的产品中。 国际财富管理投资机构AMCAP集团金融分析师表示&#xff1a;智能配置投资与理财之所以持续走俏&#xff0c…

WebUI工作流插件超越ComfyUI

在AI绘画领域&#xff0c;Stable Diffsion是最受欢迎的&#xff0c;因为它是开源软件。 开源有两大优势&#xff0c;一是免费&#xff0c;二是适合折腾。 大量的开发者、爱好者投入无尽的热情&#xff0c;来推动Stable Diffsion的快速发展。 在图形界面方面&#xff0c;WebU…

Python 进阶(十二):随机数(random 模块)

《Python入门核心技术》专栏总目录・点这里 文章目录 1. 导入random库2. 常用随机数函数2.1 生成随机浮点数2.2 生成随机整数2.3 从序列中随机选择2.4 随机打乱序列3. 设置随机数种子4. 应用实例4.1 游戏开发4.2 数据分析4.3 加密与安全4.4 模拟实验5. 总结大家好,我是水滴~~ …

Linux常用命令——mv命令

文章目录 1. 简介2. 命令格式3. 主要参数4. 常见用法及示例4.1 移动文件4.2 重命名文件4.3 交互式移动文件4.4 强制移动文件4.5 移动多个文件4.6 使用通配符移动文件 5. 注意事项6. 结论 1. 简介 mv 命令在Linux系统中用于移动文件或目录&#xff0c;同时也可以用于重命名文件…

Python使用——发送Get请求,模拟http请求 进行SSH连接服务器

前言 本篇博客是python开发的使用案例博客&#xff0c;结合一些具体的案例进行阐述&#xff0c;本篇博客主要内容是使用Python发送Get请求&#xff0c;模拟http请求&#xff0c;后面可以搞个爬虫出来&#xff0c;另外就是如何使用Python进行SSH连接服务器。 其他相关的博客文…