俄罗斯无人机自主任务规划!UAV-CodeAgents:基于多智能体ReAct和视觉语言推理的可扩展无人机任务规划
- 作者:Oleg Sautenkov 1 ^{1} 1, Yasheerah Yaqoot 1 ^{1} 1, Muhammad Ahsan Mustafa 1 ^{1} 1, Faryal Batool 1 ^{1} 1, Jeffrin Sam 1 ^{1} 1, Artem Lykov 1 ^{1} 1, Chih-Yung Wen 2 ^{2} 2, and Dzmitry Tsetserukou 1 ^{1} 1
- 单位: 1 ^{1} 1斯科尔科沃科学技术研究院数字工程中心智能空间机器人实验室, 2 ^{2} 2香港理工大学航空与航空工程系AiRo实验室
- 论文标题:UAV-CodeAgents: Scalable UAV Mission Planning via Multi-Agent ReAct and Vision-Language Reasoning
- 论文链接:https://arxiv.org/pdf/2505.07236?
主要贡献
- 提出了 UAV-CodeAgents,一个多智能体框架,结合了LLMs和VLMs,用于基于视觉-语言驱动的无人机任务生成。
- 发布了用于评估从航拍图像和文本提示中进行语义定位和协作规划的基准数据集,专注于卫星图像上的像素级定位精度。
- 设计了面向无人机的反应式思考循环(ReAct),使智能体能够在动态任务环境中进行迭代视觉推理、不确定性解决和计划细化。
- 在9000张注释卫星图像上对Qwen2.5VL-7B进行了微调,实现了语义语言实体与卫星图像坐标之间的精确对齐,用于精确航点提取。
研究背景
- 无人机系统在复杂任务中的应用日益广泛,这些任务需要高水平的理解和空间精度,例如大规模环境评估和动态地形中的时间敏感操作。
- 传统的无人机规划方法依赖于预定义的地图、手动工程启发式方法或手动航点配置,限制了其适应性和可扩展性。
- 近年来,多模态人工智能(特别是LLMs和VLMs)的发展为无人机任务规划提供了新的可能性,但现有框架大多在封闭环境或单智能体设置中运行,未能充分利用协作推理或基于空间的规划潜力。
研究方法
系统架构
UAV-CodeAgents是一个模块化和可扩展的框架,由以下核心组件构成:
- 空域管理智能体(AMA):负责解释自然语言命令、分析卫星图像,并生成空间上对齐的任务计划。它结合了LLMs(如GPT-4、Qwen2.5VL)来解析用户输入,并将其分解为结构化任务(如搜索、定位、验证)。
- 无人机智能体(UAV Agent):执行分配的任务,具备轻量级推理能力,允许实时重新评估任务步骤和环境变化。它执行基于计划路线的航点跟随,捕获高分辨率RGB图像,并进行VLM推理以更新任务状态(例如确认火灾、定位目标)。
通信与同步
系统基于 smolagents 框架构建,支持多智能体协调。智能体通过简单的消息传递接口通信,定期报告其状态(位置、图像、语义注释),支持容错和异步操作。
反应式推理循环(ReAct)
ReAct是系统的核心,使智能体能够迭代反思模糊或不完整的输入,重新评估当前假设,并相应地修订其行动。循环包括以下步骤:
- 观察:通过无人机图像或卫星快照捕获当前场景。
- 描述:使用VLM生成高标记长度的场景描述。
- 推理:使用LLM在任务查询的上下文中解释场景描述。
- 决策:识别或更新航点,分配新的无人机角色,或修订任务优先级。
- 行动:将更新后的指令部署到相关的无人机智能体。
像素级定位机制
像素级定位是UAV-CodeAgents的关键组件,它通过微调Qwen-VL-2.5-7B模型,在9000张注释卫星图像上进行监督微调(SFT),以实现精确的语义目标定位。
实验
实验设置
- 实验使用了Qwen系列模型,特别是Qwen2.5-72B模型,用于高级任务规划和智能体间协调。视觉感知任务由Qwen2.5VL-32B模型处理。
- 实验评估了两种不同的采样温度(0.5和0.7),以分析决策制定中的确定性与创造力之间的权衡。
性能指标
检测性能使用以下指标衡量:
Time-to-Detection (TTD) = 1 N ∑ i = 1 N ( t ( i ) detect − t ( i ) query ) \text{Time-to-Detection (TTD)} = \frac{1}{N} \sum_{i=1}^{N} (t(i)_{\text{detect}} - t(i)_{\text{query}}) Time-to-Detection (TTD)=N1i=1∑N(t(i)detect−t(i)query)
其中 $ N = 30 $ 个测试案例,排除假阳性和假阴性案例。
实验结果
- 实验结果表明,较低的温度设置(0.5)更受青睐,因为它能够带来更好的一致性、更快的执行速度和更高的整体性能。
- 温度为0.7的模型不仅成功样本较少(26个对比28个),而且平均任务持续时间更长(105.29秒对比96.96秒)。
- 此外,温度为0.7的设置在某些样本上表现不佳,例如样本6、23、24和29,无法生成连贯的计划或错误解释了图像-语言输入。
结论与未来工作
- 结论:
- UAV-CodeAgents是一个可扩展的、基于视觉-语言引导的多智能体系统,用于自主无人机任务生成。该系统通过Qwen2.5系列的LLMs和VLMs实现去中心化推理、像素级语义定位和通过反应式思考循环的自适应规划。
- 实验结果表明,系统在较低采样温度(0.5)下表现出更高的可靠性和效率,成功处理了30个图像中的28个,成功率为93%,平均完成时间为96.96秒。
- 未来工作:
- 研究人员计划将CodeAgents扩展到无人机群,集成实时遥测技术和传感器支持,以实现在灾难响应和环境监测等现实场景中的强大无人机群协调能力。
相关文章:

俄罗斯无人机自主任务规划!UAV-CodeAgents:基于多智能体ReAct和视觉语言推理的可扩展无人机任务规划
作者:Oleg Sautenkov 1 ^{1} 1, Yasheerah Yaqoot 1 ^{1} 1, Muhammad Ahsan Mustafa 1 ^{1} 1, Faryal Batool 1 ^{1} 1, Jeffrin Sam 1 ^{1} 1, Artem Lykov 1 ^{1} 1, Chih-Yung Wen 2 ^{2} 2, and Dzmitry Tsetserukou 1 ^{1} 1单位: 1 ^{1} 1斯科尔…...

结构性设计模式之Bridge(桥接)
结构性设计模式之Bridge(桥接) 摘要 桥接模式是一种结构性设计模式,其核心思想是将抽象部分与实现部分分离,使二者能够独立变化。本文通过汽车产品生产案例(产品A/B与颜色红/蓝/黄)展示了桥接模式的应用&…...
CSS篇-1
1. CSS 有哪些基本选择器?它们的权重是如何表示的? 这是一个关于 CSS 基础且极其重要的问题,因为它直接关系到我们如何精准地控制页面元素的样式,以及在样式冲突时浏览器如何决定哪个样式生效。理解 CSS 选择器及其权重ÿ…...

Android 16系统源码_无障碍辅助(一)认识无障碍服务
前言 Android 的无障碍辅助功能(Accessibility)是一套专为残障用户或特殊场景设计的核心技术框架,旨在让所有用户都能便捷地操作设备。其功能覆盖视觉、听觉、运动能力和认知障碍支持,同时为开发者提供标准化 API 以实现应用适配…...

分布式数据库备份实践
在分布式备份中可以采取两种方式进行备份,一种是采用手动编写backup.yml文件进行备份,另外一种是吧备份过程交给备份工具自动执行。如果需要个性化进行备份,建议采用手动编写备份文件方式进行备份。 以下是针对两种备份方式的实践:…...

如何发布npm包?
如何发布npm包? 1. 注册账号[npm官网](https://www.npmjs.com/)2. 检查 npm 源是否在官方 npm 仓库,如果不在,进行切换3. 检查4. 打包配置5. 发布6. 使用错误:版本更新命令 1. 注册账号npm官网 2. 检查 npm 源是否在官方 npm 仓库…...
鸿蒙---使用真机模拟器的时候,图片不加载问题
使用真机模拟器的时候,图片不加载问题 解决方案: 1,找到 module.json5 文件,路径 entry -> src -> main -> module.json5 2,在module.json5 文件中,开头的’module’中添加 "requestPermiss…...

实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.6 R语言解题
本文是实验设计与分析(第6版,Montgomery著,傅珏生译) 第5章析因设计引导5.7节思考题5.6 R语言解题。主要涉及方差分析,正态假设检验,残差分析,交互作用图,等值线图。 dataframe <-data.frame…...
.NET 8使用AOT发布ASP.NET Core应用
.NET 8 使用 AOT 发布 ASP.NET Core 应用 一、AOT 编译简介 在 .NET 开发中,编译方式有多种,其中 AOT(Ahead-Of-Time)编译是一种区别于传统 JIT(Just-In-Time)编译的方式。传统的 JIT 编译是在 .NET 应用…...

OpenCV计算机视觉实战(8)——图像滤波详解
OpenCV计算机视觉实战(8)——图像滤波详解 0. 前言1. 线性滤波1.1 均值滤波1.2 高斯滤波1.3 拉普拉斯滤波1.4 Sobel 滤波 2. 非线性滤波3. 自定义卷积核小结系列链接 0. 前言 在本文中,我们将深入探索线性与非线性滤波的算法原理、性能优化及…...
Docker 前端镜像容器部署指南
1. 编写 Dockerfile 文件 # 使用轻量级的 Nginx Alpine 作为基础镜像 FROM nginx:alpine# 设置工作目录 WORKDIR /usr/share/nginx/html# 删除默认的 Nginx 静态文件 RUN rm -rf ./*# 复制本地 dist 目录下的文件到容器中 COPY ./dist /usr/share/nginx/html# 暴露容器端口 EX…...
OpenAI大模型不听人类指令事件的技术分析与安全影响
OpenAI大模型不听人类指令事件的技术分析与安全影响 OpenAI大模型o3确实存在不遵从人类关闭指令的现象,这一行为已被第三方安全机构验证,但其本质是技术缺陷而非AI意识觉醒。帕利塞德研究所的测试显示,在100次实验中o3有7次成功绕过关闭指令…...
图神经网络实战——图的可视化
图神经网络实战——图的可视化 0. 前言1. networkx2. Gephi相关链接0. 前言 图结构可通过图形化方式直观呈现。节点通常用圆形表示,边则用连接线表示。 然而当节点和边数量增加时,绘制清晰的图形表示可能会变得相当困难,这主要源于节点在二维坐标系中的布局问题。对于包含数…...

自动化安全脚本学习
1.目录扫描器 目标:使用python编写一个自动化目录扫描工具,实现简单信息收集,判断目标网站是否存在常见路径。 import requests #用于发HTTP请求 from concurrent.futures import ThreadPoolExecutor #实现多线程扫描# 扫描目标 target h…...
github公开项目爬取
import requestsdef search_github_repositories(keyword, tokenNone, languageNone, max_results1000):"""通过 GitHub API 搜索仓库,支持分页获取所有结果(最多 1000 条):param keyword: 搜索关键词:param token: GitHub To…...
用豆包写单元测试
用豆包写单元测试, 输入 vue 模板内容,输入 参考vue模板内容写一个单元测试要求用jest.mock实现构造完成,修复bug。npm run test:unit – tests/unit/views/xxx/xxx.spec.js看下 % Stmts 语句覆盖率:执行到的代码语句占总语句的比…...

传输层协议TCP(上)
上一篇https://blog.csdn.net/Small_entreprene/article/details/148143494?fromshareblogdetail&sharetypeblogdetail&sharerId148143494&sharereferPC&sharesourceSmall_entreprene&sharefromfrom_link 上文学习了传输层的协议之一UDP,接下来…...

Windows下安装并使用kubectl查看K8S日志
【1】安装kubectl 官网文档:https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-windows/ 下载后得到 kubectl.exe,放到一个目录下,然后配置环境变量。 此时CMD 进入DOS命令窗口 kubectl version【2】配置config文件 其实就是…...
Hive 分区详解:从基础概念到实战应用
一、为什么要分区? 1.将大规模数据按规则(如时间、地域)划分到不同目录,提升数据组织性。 2.通过分区过滤,减少扫描数据量,显著提升查询效率。 3.不同分区可对应不同业务线或权限,增强数据隔…...

Android studio进阶开发(六)--如何用真机通过okhttp连接服务器
我们学过了如何通过okhttp查询网络上已经发布的网页,但我们还需要在做全栈时保证前后端能够交互。 前要课程 okhttp的使用 真机端口连接 安全认证 由于http的安全性较差,在没有安全协议的情况下,使用自己的后端连接会报错,所以…...
如何解决网站服务器的异常问题?
当网站服务器出现异常情况,导致用户无法正常访问网页信息的时候,该如何解决这一问题呢?小编下面就带领大家共同探讨一下这一问题。 企业在面对网站服务器异常时,首先要对服务器硬件设备进行详细的检查,可以使用硬盘检测…...

WeakAuras Lua Script [ICC BOSS 11 - Sindragosa]
WeakAuras Lua Script [ICC BOSS 11 - Sindragosa] 冰冠堡垒Icecrown Citadel 冰龙 辛达苟萨(寒冰信标插件) 左 (绿,黄) 中(蓝,紫) 右(白,橙) lua script&…...
用户界面禁忌——基础原则
文章目录 基本原则1:关注用户及其任务,而不是技术基本原则2:首先考虑功能,然后才是表示基本原则3:与用户对任务的看法保持一致基本原则4:设计要符合常见情况基本原则5:不要分散用户对他们目标的…...

电脑开机后出现bootmgr is conmpressed原因及解决方法
最近有网友问我为什么我电脑开机后出现BOOTMGR is compressed,这个提示意思是:意思是启动管理器被压缩了,即使重启也无法正常进入系统。原因有很多,大部分是引导出现问题,或选错了启动硬盘所导致的,下面我们来详细分析…...

vite配置一个css插件
vite.config.js的plugins执行函数 该例子只是替换一些css,具体内容不重要,主要看形参的运用 // vite-plugin-css.js export default function cssPlugin() {return {name: vite-plugin-css-post, // 插件的名字,Vite 插件必须有名字enforce: post, // 设定插件执…...

React+Taro 微信小程序做一个页面,背景图需贴手机屏幕最上边覆盖展示
话不多说 直接上图 第一步 import { getSystemInfoSync } from tarojs/taro;第二步 render() {const cardBanner getImageUrlByGlobal(member-merge-bg.png);const { safeArea, statusBarHeight } getSystemInfoSync();const NAV_BAR_HEIGHT 44;const navBarHeight NAV…...

Spring框架学习day4--Spring集成Mybatis(IOC)
Spring集成Mybatis1.添加jar包(pom.xml)2.配置sqlSessionFactiory(spring.xml)3.再service类中注入Dao代理接口4.测试类5文件结构 Spring集成Mybatis Spring集成Mybatis其核心是将SqlSessionFactory交由Spring管理,并由 Spring管理…...
太阳系运行模拟程序-html动画
太阳系运行模拟程序-html动画 by AI: <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>交互式太阳系…...

【C++ Qt】容器类(GroupBox、TabWidget)内附思维导图 通俗易懂
每日激励:“不设限和自我肯定的心态:I can do all things。 — Stephen Curry” ✍️绪论: 本章主要介绍了 Qt 中 QGroupBox 与 QTabWidget 控件。QGroupBox 是带标题的分组框,能容纳其他控件,有标题、对齐方式、是否…...

SOC-ESP32S3部分:18-串口
飞书文档https://x509p6c8to.feishu.cn/wiki/NqrMw6X8Si6sSqkyPbxcFRxGnid UART全称是通用异步接收器/发送器,ESP32-S3 芯片有 3 个 UART 控制器。每个 UART 控制器可以独立配置波特率、数据位长度、位顺序、停止位位数、奇偶校验位等参数。 串口文档参考…...