Multi-UAV Disaster Environment Coverage Planning with Limited-Endurance

news2024/11/26 7:49:46

Multi-UAV Disaster Environment Coverage Planning with Limited-Endurance 有限续航时间下的多无人机灾害环境覆盖规划

  • 定义问题
  • 将初始地图转换为热图
  • 产生优化路径

基于 已知的灾区热图,设计一个多无人机全覆盖搜索的路径规划方法。可以在无人机有限能量约束下探索最有价值的区域,提出了一种解决多无人机有限续航问题的路径规划算法,通过卫星或遥感航空图像,根据可能的灾区的重要性对其进行排序,并根据该排序完成路径规划。


无人机由于它的灵活性被广泛用于救援,针对灾区救援任务,需要无人机在更快的时间内完成灾区的搜索任务,并且考虑到无人机续航时间有限的问题,采用单机搜救很难完成受灾区域的全覆盖,所以需要采用多无人机协同搜索,要达到更高的搜索效率,要求无人机降低搜索重复率,因此需要对多机的每一台无人机各自的飞行路径进行优化成为一个热点问题。在就救援任务中最重要的不是全覆盖,而是高效的救援搜索,在发生灾难概率更高的地点进行重点搜索。

覆盖路径规划算法:回溯螺旋算法(BSA)可以完整覆盖环境,将环境单元栅格分为两部分 已覆盖和未覆盖;Zig-Zag;

定义问题

  • 由初始的栅格地图转换为热图,在热图中 热值 越高的位置代表节点效率权重更高,效率权重只与热值有关,考虑无人机的有限续航问题,将各个无人机路径节点的距离相加的值作为各自的边缘权重。采用欧式距离。
    在这里插入图片描述

  • 定义一个单无人机的天真贪婪路径覆盖算法,在热图中快速解决有限续航覆盖路径规划问题。Heu-Greedy 和 SVReC 算法。

将初始地图转换为热图

设计采用热图的方式表示规划区域的地图,计算获取每个栅格的热值表示潜在的灾害,涉及真实灾害发生的概率。

在栅格地图中需要将封闭的救援任务区域分类,在大范围的城市中,往往需要进行成百上千种分类类型,考虑手动标记的困难,将场景标记添加到仅占网格图单元的20%,采用opencv增加标签的准确性。并且需要应道引导无人机在救援任务中的低空飞行。

在这里插入图片描述

产生优化路径

采用了跳跃顶点覆盖(SVeC)和顶点权重分辨率增强(VwRR)方法,将整个算法被称为SVReC。
在这里插入图片描述

  • Naive Greedy 算法 一种基于顶点效率权重的方法。

  • Heu-Greedy 算法 添加启发式权重作为软约束,如果候选点在 close list 中,对候选点的效率权重执行 -10 的操作,但权重陷阱依然存在,变成 动态权重陷阱 ,由于候选顶点的效率权重 r 交替下降,使得路径在覆盖的顶点之间重复跳动,顶点交替地成为路径中的下一个顶点。

  • 跳跃顶点覆盖(SVeC) 采用跳跃顶点覆盖(SVeC)的方法解决权重陷阱的问题,当8个候选顶点都被覆盖,在效率权重 r 达到一定的阈值的候选点中,选取距离最小的节点作为下一个顶点。

  • 顶点权重分辨率增强(VwRR) 解决权重冗余的问题,

权重陷阱 是什么?当当前顶点的8个候选点都在 close list 中时,即候选点都已经被覆盖。

权重干扰 是什么?多无人机协同覆盖相邻的节点时,会发生权重干扰,所有无人机都共享同一个CLOSE集合,其他无人机节点围绕了当前无人机的当前节点。SVeC 可以作为一种协作策略来解决这个问题。

权重稀疏 是什么? 救援区域热图的热值不连续,热值高的地方被一些不重要的区域隔离,产生权重稀疏的问题。SVeC也可以解决这类问题。我们指定无人机的下一个目标节点,其效率权重 r 大于某个阈值rth的最近顶点。这样,在续航能力有限的情况下,可以确保累积的效率权重尽可能好,因为在没有相对重要顶点的区域不需要消耗无人机的能量。

权重冗余 是什么?无人机经常面临八个邻域中具有相同r的几个未覆盖的可达顶点,这些局部解决方案在当前处理步骤中可能是等效和冗余的。采用 VwRR 方法来解决这个问题,下图中表示的4种权重问题中最后一个权重冗余问题,绿色框中的单元的平均热值和相应顶点的平均Eff权重显著高于蓝色和黄色框中的单元格,因此当下一个顶点指定为绿色框中绿色顶点C时,我们在接下来的几个C中有更高的效率权重。

在这里插入图片描述

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

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

相关文章

dirsearch目录扫描工具的使用

文章目录 工具下载及环境准备查看帮助信息进行目录扫描 官方介绍 :An advanced command-line tool designed to brute force directories and files in webservers, AKA web path scanner 一个高级命令行工具,用于暴力破解网络服务器中的目录和文件&…

韦东山-电子量产工具项目:业务系统

代码结构 所有代码都已通过测试跑通,其中代码结构如下: 一、include文件夹 1.1 common.h #ifndef _COMMON_H #define _COMMON_Htypedef struct Region {int iLeftUpX; //区域左上方的坐标int iLeftUpY; //区域左下方的坐标int iWidth; //区域宽…

Apache DolphinScheduler 支持使用 OceanBase 作为元数据库啦!

DolphinScheduler是一个开源的分布式任务调度系统,拥有分布式架构、多任务类型、可视化操作、分布式调度和高可用等特性,适用于大规模分布式任务调度的场景。目前DolphinScheduler支持的元数据库有Mysql、PostgreSQL、H2,如果在业务中需要更好…

【视觉SLAM入门】5.2. 2D-3D PNP 3D-3D ICP BA非线性优化方法 数学方法SVD DLT

"养气之学,戒之躁急" 1. 3D-2D PNP1.1 代数法1.1.1 DLT(直接线性变换法)1.1.2. P3P 1.2 优化法BA (Bundle Adjustment)法 2. 3D-3D ICP2.1 代数法2.1.1 SVD方法 2.2 优化(BA)法2.2.2 非线性优化方法 前置事项: 1. 3D-2D PNP 该问题描述为&am…

使用swoole实现实时消息推送给客户端

一. 测试服务端 //测试服务端public function testServer(){$server new Server(192.168.0.144, 9501, SWOOLE_BASE, SWOOLE_SOCK_TCP);$server->on(request, function ($request, $response) {$response->header(Content-Type, text/plain);$response->end("He…

【操作系统】虚拟内存相关分段分页页面置换算法

虚拟内存是什么? 【进程地址空间虚拟地址空间C/C程序地址空间就是那个4G的空间】 虚拟内存是操作系统内核为了对进程地址空间进行管理,而设计的一个逻辑意义上的内存空间概念。在程序运行过程中,虚拟内存中需要被访问的部分会被映射到物理内…

Mock平台-08开发:项目管理(四)编辑功能和Component抽离

【Mock平台】为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React框架完成搭建一个测试工具平台,希望作为一个实战项目对各位的测试开发学习之路有帮助,大奇一个专注测试技术干货原创与分享的家伙。 本篇重点:…

HCIP生成树STP总结

STP生成树 网桥的4个选举 根网桥: 有且仅有一台,且由BPDU中的桥ID来决定 桥ID 网桥优先级(0-65535公有) 默认32768 MAC地址(只有…

湘潭大学 湘大 XTU OJ 1055 整数分类 题解(非常详细)

链接 整数分类 题目 Description 按照下面方法对整数x进行分类:如果x是一个个位数,则x属于x类;否则将x的各位上的数码累加,得到一个新的x,依次迭代,可以得到x的所属类。比如说24,246&#…

漏洞指北-VulFocus靶场专栏-高级01

漏洞指北-VulFocus靶场专栏-高级01 高级001 🌸骑士cms任意代码执行(CVE-2020-35339)🌸step1:进入页面,登入后台step2 系统——网站配置——网站域名step3 中国蚁剑连接 高级002 🌸Django SQL注入…

安装ps找不到vcruntime140_1.dll怎么回事?有哪些解决方法

安装ps找不到vcruntime140_1.dll怎么回事?这可能是因为您的计算机Visual C Redistributable包损坏,其中包含vcruntime140_1.dll文件。VCRuntime140_1.dll是一个重要的动态链接库文件,它包含了Visual C运行时所需的一些函数和资源。当这个文件…

银行客户关系管理系统springboot财务金融进销存java jsp源代码

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 银行客户关系管理系统springboot 系统有1权限&#x…

周易卦爻解读笔记——未济

第六十四卦未济 火水未济 离上坎下 未济卦由否卦所变,否卦六二与九五换位,象征尚未完成。 天地否 未济卦和既济卦既是错卦又是覆卦,这也是最后一卦,序卦传【物不可穷也,故受之以未济终焉】 未济卦象征尚未完成&…

NSSCTF之Misc篇刷题记录(14)

[SWPUCTF] 2021新生赛之Crypto篇刷题记录① [UUCTF 2022 新生赛]王八快跑[安洵杯 2020]BeCare4[HDCTF 2023]ExtremeMisc NSSCTF平台:https://www.nssctf.cn/ PS:记得所有的flag都改为NSSCTF [UUCTF 2022 新生赛]王八快跑 小游戏 小乌龟跑过线就有 fla…

BDA初级分析——SQL语句应用基础练习题

1、请检查OLYMPIC表中是否存在重复国家? SELECT Team,COUNT(*) AS 重复次数 FROM Olympic GROUP BY Team HAVING COUNT(*) > 1;SELECT COUNT(Team),COUNT(DISTINCT(Team)) FROM Olympic; 2、将OLYMPIC表中Armenia(ARM)的奖牌总数更新为14 UPDATE Olympic SET total_medals …

【C语言】使用C语言,实现九九乘法表(另附Python、Java、JavaScript实现方式)

文章目录 1. C语言实现1.1 思路1.2 代码实现 3.其他语言实现3.1 Python实现3.2 Java实现3.3 JavaScript实现 1. C语言实现 1.1 思路 九九乘法表图示: 思路如下:定义两层for循环即可实现九九乘法表 一共有9层,所以要定义一个变量i&#xff…

记录首次面试2023-08-18

人生第一次面试,大概一个小时左右。没有问我C的,上来一个数据库事务,虽然没有复习,但是还是能够记住一些,主要问的一些事务的隔离级别,以及都有什么作用,我是举例回答的,客户端A和客…

【激光雕刻与DIY Arduino SCARA机器人】

【激光雕刻与DIY Arduino SCARA机器人】 1. 项目概况2. 设计和3D模型3. 安装激光模块4. SCARA机器人激光雕刻机电路图5. 完成装配6. 马林固件,用于使用 SCARA 机器人进行激光雕刻7. 配置 Marlin 固件8. 控制软件 – 主机9. 使用 SCARA 机器人进行激光雕刻10. 生成用于激光雕刻…

PCAP01介绍和STM32模拟SPI驱动

一.芯片介绍 Pcap01是德国acam公司设计的一款革命性的电容测量芯片。该芯片 内部有DSP计算单元,可以直接将电容元件接到Pcap01芯片,然后芯片计算出容值大小,通过SPI总线将电容容值数据传送给CPU,电容测量完全数字化。 二,测量原…

不要着急购买iPhone 15,先看看这5点再做决定吧!

人们对下个月可能推出的iPhone 15感到兴奋,这是有充分理由的——有传言称,新机型正在做出一些重大改变,尤其是在iPhone 15 Pro机型方面。从四款新iPhone都采用USB-C,到iPhone 15 Pro Max采用潜望镜式长焦镜头以实现更好的变焦,听起来有很多功能值得兴奋。 当然,除非你没…