(五)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)

2023-12-01 16:52

本文主要是介绍(五)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、无人机模型简介:

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

参考文献:

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

二、Tiki-taka算法(TTA)简介

极致攻守算法(Tiki-Taka Algorithm,TTA)由Mohd Fadzil Faisae Ab. Rashid于2020年提出,该算法受tiki-taka 足球风格的短传、球员定位和保持控球的特点所启发。其旨在控制控球权并利用其战术优势击败对手,TTA算法新颖高效。单目标应用:Tiki-taka算法(TTA)求解太阳能光伏模型MATLAB_IT猿手的博客-CSDN博客

参考文献:

[1]Ab. Rashid, M.F.F. (2021), "Tiki-taka algorithm: a novel metaheuristic inspired by football playing style", Engineering Computations, Vol. 38 No. 1, pp. 313-343. Tiki-taka algorithm: a novel metaheuristic inspired by football playing style | Emerald Insight

[2]Zamli, Kamal Z , Kader, et al. Selective chaotic maps Tiki-Taka algorithm for the S-box generation and optimization. 

三、TTA求解无人机路径规划

(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='F2'; %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]=TTA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%算法优化求解
AlgorithmName='TTA';%算法名字
figure
semilogy(curve,'Color','g','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.0462995e+01   1.0477171e+01   8.0627999e+011.0913211e+01   1.0913530e+01   8.1223090e+011.1351567e+01   1.1311203e+01   8.1786813e+011.1778985e+01   1.1672315e+01   8.2320707e+011.2196385e+01   1.1998990e+01   8.2826314e+011.2604688e+01   1.2293355e+01   8.3305172e+011.3004814e+01   1.2557533e+01   8.3758822e+011.3397683e+01   1.2793650e+01   8.4188804e+011.3784217e+01   1.3003830e+01   8.4596657e+011.4165336e+01   1.3190200e+01   8.4983922e+011.4541961e+01   1.3354883e+01   8.5352138e+011.4915011e+01   1.3500005e+01   8.5702846e+011.5285408e+01   1.3627691e+01   8.6037585e+011.5654072e+01   1.3740065e+01   8.6357896e+011.6021924e+01   1.3839254e+01   8.6665318e+011.6389884e+01   1.3927381e+01   8.6961391e+011.6758873e+01   1.4006571e+01   8.7247655e+011.7129811e+01   1.4078951e+01   8.7525651e+011.7503620e+01   1.4146645e+01   8.7796918e+011.7881219e+01   1.4211777e+01   8.8062996e+011.8263529e+01   1.4276473e+01   8.8325424e+011.8651471e+01   1.4342857e+01   8.8585744e+011.9045965e+01   1.4413056e+01   8.8845495e+011.9447932e+01   1.4489193e+01   8.9106216e+011.9858292e+01   1.4573394e+01   8.9369449e+012.0277966e+01   1.4667784e+01   8.9636732e+012.0707875e+01   1.4774488e+01   8.9909606e+012.1148938e+01   1.4895630e+01   9.0189611e+012.1602078e+01   1.5033337e+01   9.0478286e+012.2068214e+01   1.5189732e+01   9.0777172e+012.2548266e+01   1.5366940e+01   9.1087808e+012.3043156e+01   1.5567088e+01   9.1411735e+012.3553803e+01   1.5792299e+01   9.1750492e+012.4081129e+01   1.6044700e+01   9.2105620e+012.4626055e+01   1.6326414e+01   9.2478658e+012.5189499e+01   1.6639566e+01   9.2871146e+012.5772384e+01   1.6986283e+01   9.3284624e+012.6375630e+01   1.7368688e+01   9.3720633e+012.7000157e+01   1.7788907e+01   9.4180712e+012.7646886e+01   1.8249065e+01   9.4666400e+012.8316737e+01   1.8751287e+01   9.5179239e+012.9010632e+01   1.9297698e+01   9.5720768e+012.9729489e+01   1.9890422e+01   9.6292527e+013.0474231e+01   2.0531585e+01   9.6896056e+013.1245778e+01   2.1223312e+01   9.7532894e+013.2045050e+01   2.1967728e+01   9.8204583e+013.2872968e+01   2.2766958e+01   9.8912661e+013.3730452e+01   2.3623126e+01   9.9658668e+013.4618423e+01   2.4538358e+01   1.0044415e+023.5537802e+01   2.5514779e+01   1.0127063e+023.6489509e+01   2.6554514e+01   1.0213967e+023.7474464e+01   2.7659688e+01   1.0305279e+023.8493589e+01   2.8832425e+01   1.0401155e+023.9547803e+01   3.0074851e+01   1.0501748e+024.0638028e+01   3.1389092e+01   1.0607211e+024.1765184e+01   3.2777270e+01   1.0717699e+024.2930191e+01   3.4241513e+01   1.0833367e+024.4133970e+01   3.5783945e+01   1.0954367e+024.5377442e+01   3.7406690e+01   1.1080854e+024.6661527e+01   3.9111874e+01   1.1212982e+024.7987146e+01   4.0901622e+01   1.1350905e+024.9355219e+01   4.2778059e+01   1.1494777e+025.0766667e+01   4.4743310e+01   1.1644751e+025.2222410e+01   4.6799499e+01   1.1800983e+025.3723370e+01   4.8948752e+01   1.1963625e+025.5270466e+01   5.1193194e+01   1.2132833e+025.6864619e+01   5.3534950e+01   1.2308759e+025.8506750e+01   5.5976145e+01   1.2491558e+026.0197779e+01   5.8518904e+01   1.2681384e+026.1938627e+01   6.1165351e+01   1.2878391e+026.3730214e+01   6.3917612e+01   1.3082732e+026.5573462e+01   6.6777812e+01   1.3294563e+026.7469290e+01   6.9748076e+01   1.3514036e+026.9418619e+01   7.2830529e+01   1.3741307e+027.1422369e+01   7.6027295e+01   1.3976528e+027.3481462e+01   7.9340501e+01   1.4219853e+027.5596818e+01   8.2772270e+01   1.4471438e+027.7769357e+01   8.6324728e+01   1.4731436e+028.0000000e+01   9.0000000e+01   1.5000000e+02

四、完整MATLAB代码

这篇关于(五)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/441936

相关文章

springboot+dubbo实现时间轮算法

《springboot+dubbo实现时间轮算法》时间轮是一种高效利用线程资源进行批量化调度的算法,本文主要介绍了springboot+dubbo实现时间轮算法,文中通过示例代码介绍的非常详细,对大家... 目录前言一、参数说明二、具体实现1、HashedwheelTimer2、createWheel3、n

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

Windows系统下如何查找JDK的安装路径

《Windows系统下如何查找JDK的安装路径》:本文主要介绍Windows系统下如何查找JDK的安装路径,文中介绍了三种方法,分别是通过命令行检查、使用verbose选项查找jre目录、以及查看... 目录一、确认是否安装了JDK二、查找路径三、另外一种方式如果很久之前安装了JDK,或者在别人的电脑上,想

Python中Windows和macOS文件路径格式不一致的解决方法

《Python中Windows和macOS文件路径格式不一致的解决方法》在Python中,Windows和macOS的文件路径字符串格式不一致主要体现在路径分隔符上,这种差异可能导致跨平台代码在处理文... 目录方法 1:使用 os.path 模块方法 2:使用 pathlib 模块(推荐)方法 3:统一使

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

如何通过Golang的container/list实现LRU缓存算法

《如何通过Golang的container/list实现LRU缓存算法》文章介绍了Go语言中container/list包实现的双向链表,并探讨了如何使用链表实现LRU缓存,LRU缓存通过维护一个双向... 目录力扣:146. LRU 缓存主要结构 List 和 Element常用方法1. 初始化链表2.

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为