多无人机在线路径规划的新算法
南京航空航天大学自动化学院使用NOKOV度量动作捕捉系统获取多架无人机的精确位置信息,实现多架无人机协同实时路径规划。
研究背景
近年来,无人机越来越多地应用于执行战场侦察、目标识别、跟踪打击等任务。
由多架无人机协同执行任务,通过无人机之间的信息交互实现全局性目标,可以获取超过单架无人机叠加的功能和效率,成为无人机应用的趋势之一。

为了保证多无人机协同运行,需要进行高效的实时路径规划,包括避障和防碰。
多无人机在线路径规划可以让无人机集群适应复杂多变的环境,躲避未知障碍物,提高飞行安全。
多无人机在线路径规划不仅要考虑单机的飞行约束条件和威胁条件,还要考虑无人机的数量、功能、协同方式等因素,本质上是一个大规模约束多目标优化问题。
飞行实验
南京航空航天大学自动化学院吕迅竑团队研究了一种基于改进Hybird A*的多无人机在线路径规划算法。并搭建了仿真系统和实验平台,验证算法的实时性与稳定性。
研究成果发表在2023年第六届国际自主系统大会发表。

实验中无人机搭载深度相机提供深度图用来感知周围环境;板载计算机负责无人机之间的路径信息交互以及运行路径规划算法。NOKOV动作捕捉系统为各个无人机提供精准的位置信息。
实验目标为同时给定三架无人机的目标点,要求各无人机均可在考虑避障和防撞的约束条件下安全抵达目标点。
研究团队将传统速度障碍模型进行改进,提出适用于6自由度无人机的三维速度障碍模型,用以计算无人机在三维空间中的安全飞行速度。

各架无人机利用Hybird A*算法进行分布式路径规划。对已规划的路径进行碰撞风险评估,若存在碰撞风险,则根据三维速度障碍模型计算安全飞行速度,将安全飞行速度作为优化约束条件,基于势场法对路径进行调整,使之同时达到避障与防撞的效果。

实验结果
各架无人机进行在线路径规划,开始飞往目标位置,在飞行的过程中不断检测障碍物,同时检查是否与其他无人机发生碰撞,如果有碰撞风险则进行重规划;最后安全抵达目标点。

三架无人机从起飞至到达目标点,中途遇到多个障碍物,每架无人机均可以调整自己的路径,在避障和防撞约束下到达目标点。
其中UAV1飞行路径8m,平均速度0.8m/s;UAV2飞行路径15m,平均速度1.1m/s;UAV3飞行路径19m,平均速度1.1m/s。
结果表明,利用研究团队提出的算法,多架无人机可以同时进行在线规划,规划的路径满足无人机运动学约束条件,能够规避障碍物,并有效防止无人机之间发生碰撞。
参考文献:
Zhiwei Wang, Chenhui Wan, Xunhong Lv, Cheng Ni, Zehui Mao, Yunrui Li. Multi-UAV online path planning algorithm based on improved Hybrid A*. Published in 2023 6th International Symposium on Autonomous Systems (ISAS), Nanjing, China
原文链接:https://ieeexplore.ieee.org/document/10164537
相关文章:
多无人机在线路径规划的新算法
南京航空航天大学自动化学院使用NOKOV度量动作捕捉系统获取多架无人机的精确位置信息,实现多架无人机协同实时路径规划。 研究背景 近年来,无人机越来越多地应用于执行战场侦察、目标识别、跟踪打击等任务。 由多架无人机协同执行任务,通过…...
什么是运营商精准大数据?又有什么作用?
大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 精准大数据,是一种…...
Adobe Photoshop 2020给证件照换底
1.导入图片 2.用魔法棒点击图片 3.点选择,反选 4.选择,选择并遮住 5.用画笔修饰证件照边缘 6. 7.更换要换的底的颜色 8.新建图层 9.使用快捷键altdelete键填充颜色。 10.移动图层,完成换底。...
传来喜讯,优维又获奖了!!!
优维科技作为国内DevOps领域的行业领先企业,从诞生之日起,就一直致力于为中国企业提供一流的数字化运维服务,不断深耕核心技术,向客户提供专业强大的产品与服务。多年来,不仅获得了大量客户认可,更是屡次获…...
河南开放大学与电大搜题微信公众号:携手共进,助力学习之路
作为河南省内颇具影响力和声誉的高等教育机构之一,河南开放大学一直致力于提供优质的教育资源和灵活的学习方式,以满足广大学习者的需求。而在这个追求知识的时代,学习者们尤其需要一个便捷、高效的工具来辅助学习。电大搜题微信公众号应运而…...
【3D 图像分割】基于 Pytorch 的 VNet 3D 图像分割5(训练篇)
在本系列的开篇,就对整个项目训练所需要的所有模块都进行了一个简要的介绍,尤其是针对训练中需要引入的各个结构,进行一个串联操作。 而在之前的数据构建篇和网络模型篇中,都对其中的每一个组块进行了分别的验证,预先在未开始训练前,检验其中的正确性,避免到训练时候,…...
【开题报告】基于微信小程序的校园订餐平台的设计与实现
1.选题背景 基于微信小程序的校园订餐平台选题背景可以从以下几个方面展开阐述: (1)校园订餐现状:介绍当前大学校园内学生和教职工的就餐情况,包括饭堂就餐、外卖订餐等方式,以及存在的问题,如…...
C++ vector 动态数组的指定元素删除
文本旨在对 C 的容器 vector 进行肤浅的分析。 文章目录 Ⅰ、vector 的指定元素删除代码结果与分析 Ⅱ、vector 在新增元素后再删除指定元素代码结果与分析 Ⅲ、vector 在特定条件下新增元素代码结果与分析 参考文献 Ⅰ、vector 的指定元素删除 代码 #include <iostream&g…...
Python机器学习算法入门教程(第四部分)
接着Python机器学习算法入门教程(第三部分),继续展开描述。 十九、信息熵是什么 通过前两节的学习,我们对于决策树算法有了大体的认识,本节我们将从数学角度解析如何选择合适的“特征做为判别条件”,这里…...
Ubuntu中安装rabbitMQ
一、安装 RabbitMQ ①:更新源 sudo apt-get update②:安装Rrlang语言 由于RabbitMq需要erlang语言的支持,在安装RabbitMq之前需要安装erlang sudo apt-get install erlang-nox③:安装rabbitMQ sudo apt-get install rabbitmq-s…...
Langchain-Chatchat实践详解
简介 本质上是在Langchain基础上封装的一层聊天服务,可以对接底层多种离线LLM和在线的LLM(也可以对接自定义的在线LLM)。提供基于知识库聊天功能相关的一系列API。 下载源码 源码地址: https://github.com/chatchat-space/Lang…...
python求解优化问题的几个例子
目录 1、最优化问题 2、线性规划 3、无约束优化 3.1单变量 3.2多变量 1、最优化问题 使用scipy库中的minimize函数来求解最优化问题。在这个例子中,我们定义了一个目标函数 objective,其形式为x1^2 x2^2;以及一个约束条件 constraint&…...
HP惠普暗影精灵9P OMEN 17.3英寸游戏本17-cm2000(70W98AV)原装出厂Windows11-22H2系统镜像
链接:https://pan.baidu.com/s/1gJ4ZwWW2orlGYoPk37M-cg?pwd4mvv 提取码:4mvv 惠普暗影9Plus笔记本电脑原厂系统自带所有驱动、出厂主题壁纸、 Office办公软件、惠普电脑管家、OMEN Command Center游戏控制中心等预装程序 所需要工具:3…...
❤ Uniapp使用Ucharts(二)(组件类型)
❤ Uniapp使用Ucharts(二)(秋云组件类型) 一、折线图 1、结构 <template><view class"charts-box"><qiun-data-charts type"area":opts"opts":chartData"chartData"/&…...
Linux Vim批量注释和自定义注释
使用 Vim 编辑 Shell 脚本,在进行调试时,需要进行多行的注释,每次都要先切换到输入模式,在行首输入注释符"#"再退回命令模式,非常麻烦。连续行的注释其实可以用替换命令来完成。 换句话说,在指定…...
虚幻C++基础 day3
常见的游戏机制 Actor机关门 创建一个Actor类,添加两个静态网格与一个触发器 UBoxComponentUStaticMeshComponent 头文件: #include “Components/BoxComponent.h”#include “Components/StaticMeshComponent.h” TriggerDoor.h // Fill out your …...
第26期 | GPTSecurity周报
GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大型语言模型(LLM)等安全领域应用的知识。在这里,您可以…...
(动手学习深度学习)第7章 稠密连接网络---DenseNet
目录 DenseNetDenseNet的优点:DenseNet的改进思路总结 DenseNet代码实现 DenseNet DenseNet的优点: 省参数。在 ImageNet 分类数据集上达到同样的准确率,DenseNet 所需的参数量不到 ResNet 的一半。对于工业界而言,小模型可以显著…...
UART编程(寄存器)
1. 串口编程步骤 1.1 看原理图确定引脚 有很多串口,使用哪一个?看原理图确定 1.2 配置引脚为UART功能 至少用到发送、接收引脚:txd、rxd 需要把这些引脚配置为UART功能,并使能UART模块 1.3 设置串口参数 有哪些参数…...
事务码增删查改表数据
常用事务码 SE11 SE14 SE16 SE16N SM30 SE11:查看数据库表/修改表中字段数量_类型/查看表中数据/设置表为可维护或不可维护 SE14:查看数据库表的创建日期创建用户名/查看表中字段/删除表中全部数据(只能全部删) SE16:查看数据库表/对可维护数据库表进行数据维护/SE16通过调试…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
