基于人工蜂群算法的新型概率密度模型的无人机路径规划(Matlab代码实现)

news2024/9/22 7:33:32

目录

1 概述

1.1研究背景

2 运行结果

3 Matlab代码实现

4 结语

5 参考文献


1 概述

文章提出一种基于人工蜂群算法的非确定性双向规划机制搜索算法。首先针对不同场景,采用两种方法进行环境建模;其次,结合非确定性搜索机制引入双向规划方法,对人工蜂群算法中食物的产生方式做出改进,优化下一个节点的产生结果,再提出一种新的方法对已产生路径进行优化;最后研究了多无人机协同路径规划的两种模型:不同的起点起飞,同时到达 同一终点,或按照指定顺序和时间间隔依次到达同一终点,并给出若干实验仿真。仿真结果显示,算法简单快速,能满足无人机执行不同任务的需要,易于工程实现。

1.1研究背景

在当今世界,随着智能化自主化研究的不断深入,无人机作为航空领域的标志性成果之一,得到了更加广泛深入的研究,而关于无人机的可行性路径的规划更是一大研究热门,对路径规划的研究始于20世纪60年代,国内外学者提出了大量的路径规划算法,包括A*算法、Voronoi图算法引、动态规划方法、仿生学算法等。

由于路径规划问题具有高时间复杂度,所以问题的求解时间会随着问题的规模呈指数型增长,尤其在复杂环境或者搜索空间比较大的情况下,上述所有算法的计算成本会急剧增加。由此,本文提出了一种新的基于人工蜂群算法(Artificial Bee Colony,ABC)的非确定性和双向搜索机制结合的规划算法,用于无人机路径规划。

人工蜂群算法由土耳其学者Karaboga于2005年提出, 是通过模拟蜜蜂群体寻找优良蜜源的行为方式解决实际工程优化问题的仿生智能计算方法,由于其在优化方面的高效性能,人工蜂群算法自提出以来得到了众多学者的极大关注,随着研究的不断深入,人工蜂群算法得到不断的改进, 应用的领域也越来越广。

同时,本文综合考虑多无人机群的任务和任务区域的特点,合理构建了多UAV机群执行任务的问题模型,将以上提到的方法应用于多无人机群的路径规划问题的研究中,初步实现多无人机的协同规划的两种模型。

2 运行结果

 

3 Matlab代码实现

global radar1
global radar2
global R
% radar1 = [350 105 305 105 175 245 415 480 40 470];
% baili = size(radar1,2);
% radar2 = [200 0 -150 110 110 110 0 110 100 -50];
% R = [140 70 150 30 25 25 25 90 40 30];


radar1 = [100 200 300 400 150 250 350 150 250 350 0 466 250 250 466 30];
baili = size(radar1,2);
radar2 = [0 0 0 0 50 50 50 -50 -50 -50 40 40 -300 300 -40 -20];
R = [40 40 40 40 40 40 40 40 40 40 20 20 260 277 20 30];
%------给定初始化条件----------------------------------------------
c1=1.4962;             %学习因子1
c2=1.4962;             %学习因子2
w=0.7298;              %惯性权重
runtime =1;
MaxDT=1000;            %最大迭代次数
storeer = zeros(runtime,MaxDT);
Pbest = zeros(MaxDT,1);
D=30;                  %搜索空间维数(未知数个数)
N=40;                  %初始化群体个体数目
ub=ones(1,D).*100; %/*lower bounds of the parameters. */
lb=ones(1,D).*-50;%/*upper bound of the parameters.*/
for r=1:runtime
    
%------初始化种群的个体(可以在这里限定位置和速度的范围)------------
Range = repmat((ub-lb),[N 1]);
Lower = repmat(lb, [N 1]);
Foods = rand(N,D) .* Range + Lower;
x = Foods;
Foods = rand(N,D) .* Range + Lower;
v = Foods;
%------先计算各个粒子的适应度,并初始化Pi和pg----------------------
for i=1:N
    p(i)=fitness(x(i,:));
    y(i,:)=x(i,:);
end


4 结语

本文给出了一种基于改进人工蜂群算法的航路规划方法实现。该方法将规划空间的预处理和人工蜂群算法相结合,通过建立地形安全曲面和量化威胁信息,简化规划空间。在传统人工蜂群算法的基础上,改进了算法中食物产生的方式,将航迹规划分解为各节点的规划,并引入双向规划机制,大大提高了产生航迹的质量。同时应用我们给出的路径规划算法,对多无人机的两种协同模型做出初步实现,仿真结果表明,算法可以快速规划出满足约束条件的三维航路,并能有效实现多无人机的初步协同,具有较强的工程可实现性。.

5 参考文献

[1]夏瑞,赵磊,吴书宇,李军.基于人工蜂群算法的无人机协同路径规划[J].无线互联科技,2018,15(13):13-21.

部分理论来源于网络,如有侵权请联系删除。

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

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

相关文章

数字后端:track的作用与创建

1.track的定义 EDA工具根据LEF(或tech file)中每层金属的pitch大小,在芯片内部自动生成各层金属连续的、规则的绕线轨道(routing track),routing track指的就是绕线的路径。 tech lef示例 tech file示例 DEF中保存的TRACK信息如下…

射频工程师自学HFSS、CST和ADS打开方式

导读:大家好,我是RF小木匠,受仿真秀平台邀请,近日正式入驻了仿真秀App,今天RF小木匠想和大家聊一下电磁仿真软件学习那些事。 一、仿真是射频工程师的必备技能 当我们开始接触电磁波和微波工程的时候,第一件事就是仿真。电磁仿真…

Docker 安装 Python

文章目录使用docker pull python:3.8 命令安装使用python镜像(一)新建py文件(二)运行容器使用docker pull python:3.8 命令安装 查找Docker Hub上的python镜像,输入命令:docker search python 这里我拉取…

【图像去噪】中值+均值+维纳+小波滤波图像去噪【含GUI Matlab源码 753期】

⛄一、图像去噪及滤波简介 1 图像去噪 1.1 图像噪声定义 噪声是干扰图像视觉效果的重要因素,图像去噪是指减少图像中噪声的过程。噪声分类有三种:加性噪声,乘性噪声和量化噪声。我们用f(x,y)表示图像,g(x,y&#xff0…

HDFS的概念及shell操作

HDFS 产出背景及定义 产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系 统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这 就是分布式文件管…

虚拟机共享物理机网路的NAT连接方法

NAT模式指借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。电脑连接wifi,让笔记本虚拟机也能够上网,其配置方法如下: 1、打开VMware Workstation软件,点击编辑虚拟机设置,进入到配置虚拟机参数菜单。…

加密技术和二维码

1、对称加密:单密钥加密。一个密钥可以用来加密也可以用来解密 —- AES 2、非对称加密:有两把密码,公钥(用于加密),私钥(用于解密) 3、摘要算法:把任意长度的输入,根据算法生成一串固定长度的伪随机数 —…

【安全扫描处理问题心得】

安全扫描处理问题心得 在安全扫描中处理了一些问题,现在来总结一下 1.mysql漏洞(CVE-2022-21595 CVE-2022-21617 CVE-2022-21608 CVE-2022-2097 CVE-2022-21592 CVE-2022-21589) 解决过程 我们公司安扫文档中的 解决办法 如下: 目…

JAVA SCRIPT设计模式--创建型设计模式之原型模式(4)

JAVA SCRIPT设计模式是本人根据GOF的设计模式写的博客记录。使用JAVA SCRIPT语言来实现主体功能,所以不可能像C,JAVA等面向对象语言一样严谨,大部分程序都附上了JAVA SCRIPT代码,代码只是实现了设计模式的主体功能,不代…

Sunday 算法详解

Sunday 算法 Sunday算法是Daniel M.Sunday于1990年提出的字符串模式匹配。其核心思想是:在匹配过程中,模式串发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配,从而提高了匹配效率。 一、匹配机制 匹配机制非常容易理…

PyTorch笔记 - 开发技巧与爱因斯坦标示法(einops)

欢迎关注我的CSDN:https://blog.csdn.net/caroline_wendy 本文地址:https://blog.csdn.net/caroline_wendy/article/details/128222398 NLP seq2seq代码编写技巧 数据 tokenization,离散符号,翻译,划分tokentoken2idx,将token变成idxadd SoS&EoS,开头和结尾添加标识…

代码随想录算法训练营第五十七天| LeetCode647. 回文子串、LeetCode516. 最长回文子序列

一、LeetCode647. 回文子串 1:题目描述(647. 回文子串) 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不…

Unity3d C#获取海康/大华摄像头在萤石平台直播视频流功能(含源码)

前言 实现该功能主要是因为之前硬件实施工程是给我的视频流地址总是失效,原因就是视频流地址其实都有一个过期时间(类似于:rtmp://rtmp01open.ys7.com:/v3/openlive/_1_1?expire1669341172&id***&t8cb15956b1ca09770d1496bff3b8ccb…

电子书小程序源码

资源简介 价值8k的的电子书资料文库文集ip打造流量主小程序系统源码 个人即可搭建,附上此系统源码以及详细的‘’一小时的小白手把手教搭建教程‘’ 下面开始系统介绍: 无意中在群里刷到一个文集小程序 点击立即学习里面,是电子书。 点击了…

虹科分享|基于CAN/CAN FD技术的机器狗是什么样的?

机器狗是一种结合了仿生学和人工智能的仿生四足机器人,其外形与四足动物相似,由于其运动摆脱了轮式和履带式的设计,机器狗的机动性更为强大,能够灵活地完成多种复杂的运动,并能够在不同的地理环境中自主行走&#xff0…

oracle 定时任务删除数据

这几天在工作中遇到一个问题就是:要删除表在备份表中已存在的数据(2000多万数据),这个数据是SQL查出来的,例如: select count(1) from JY_SALE_FULLORDER_DTL where LINE_NUM in (select b.LINE_NUMfrom JY…

osgEarth示例分析——osgearth_splat

前言 osgearth_splat示例,展示如何加载图片贴在地球上,且通过分类,贴文理绘制森林、草地等。 执行命令:osgearth_splatd.exe 效果 整个地球的影像,加载的一张贴图。黑白点点,是不同的贴图。当拉进放大后…

云计算与传统计算的区别有哪些?

目前,许多企业依赖传统计算,而一些企业也正在迁移到云计算。原因是两者都有各自的优势点,这就是为什么对企业来说,在两者之间进行选择可能会变得有点困难。 什么是传统计算? 传统计算的概念是不言而喻的。传统上,物理…

[附源码]Python计算机毕业设计Django兴达五金日杂批发商店管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

微服务框架 SpringCloud微服务架构 21 RestClient 操作文档 21.5 批量导入文档

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 SpringCloud微服务架构 文章目录微服务框架SpringCloud微服务架构21 RestClient 操作文档21.5 批量导入文档21.5.1 批量导入文档21 RestClie…