当前位置: 首页 > article >正文

改进人工势场多无人机三维航迹规划【附代码】

✨ 长期致力于航迹规划、多无人机、目标分配、人工势场算法、三维空间研究工作擅长数据搜集与处理、建模仿真、程序编写、仿真设计。✅ 专业定制毕设、代码✅如需沟通交流点击《获取方式》1多目标任务分配与人工势场基础将多无人机三维航迹规划分解为两个子问题。任务分配阶段以最小化总任务能耗和总任务时长为目标构建一个带权重的分配模型权重系数ω10.6, ω20.4。使用匈牙利算法求解分配矩阵将N架无人机分配给M个目标点NM。能耗估算基于路径长度和平飞高度时长考虑最大速度限制。人工势场算法中引力势场U_att 0.5*k_att*(d^2)斥力势场U_rep 0.5*k_rep*(1/d - 1/d0)^2d0为斥力影响距离。在三维空间中合势场的梯度方向引导无人机移动。针对多无人机协同在势场中增加无人机间斥力U_intra 0.5*k_intra*(1/d_uv - 1/d_safe)^2当d_uvd_safe时启用。在10架无人机对8个目标点的仿真中分配算法得到的最大任务时长差异小于5%各无人机路径无交叉。2APF-RRT融合算法逃离局部极小值为了解决人工势场法易陷入局部极小值的问题提出APF-RRT融合算法。当检测到无人机在势场中的合力小于阈值且连续30步位置变化小于0.1米时判定为陷入局部极值。此时启动RRT*算法从当前位置随机扩展树树节点扩展方向偏向势场下降方向加权系数0.6同时保持朝向目标点的偏置0.4。RRT*扩展10个节点后选择到达目标最短路径的第一个子节点作为临时目标无人机沿该子节点移动随后切换回人工势场。在三维城市环境障碍物为建筑物中测试传统APF的逃逸成功率仅为35%而融合算法的成功率提升至92%。平均规划时间从原来的2.3秒增加到3.1秒但在可接受范围。在障碍物密集区域RRT*的节点扩展次数自适应调整最多30次。3动态引力/斥力函数与编队协同针对目标不可达问题当目标点附近有障碍物时引力和斥力平衡提出动态控制策略当无人机与目标点距离小于1.5米时引力增益k_att线性减小至原来的0.2倍同时斥力系数k_rep减小至0.1倍使无人机能够趋近目标。编队飞行任务中采用虚拟目标点法主机领航者按规划路径飞行僚机跟随主机机身坐标系中的虚拟点。虚拟点的相对位置根据队形三角形、一字型等确定。主机实时广播自身位姿僚机计算虚拟点在全局坐标系中的位置并以此为目标点进行人工势场引导。在Gazebo仿真中三架无人机组成三角形编队以2m/s速度穿越障碍物区域编队间距保持误差小于0.3m。实机验证使用Pixhawk飞控和OptiTrack定位系统无人机成功完成编队避障飞行最大位置误差0.5m。import numpy as np import random from scipy.spatial import KDTree class APF_RRT: def __init__(self, goal, obstacles, k_att0.5, k_rep50, d05.0, step0.2): self.goal np.array(goal) self.obstacles obstacles # list of (center, radius) self.k_att k_att self.k_rep k_rep self.d0 d0 self.step step def attractive_force(self, pos): d self.goal - pos return self.k_att * d def repulsive_force(self, pos): force np.zeros(3) for obs_center, radius in self.obstacles: d_vec pos - np.array(obs_center) d_norm np.linalg.norm(d_vec) if d_norm self.d0: force self.k_rep * (1/d_norm - 1/self.d0) * (1/d_norm**2) * (d_vec / (d_norm1e-6)) return force def total_force(self, pos): return self.attractive_force(pos) self.repulsive_force(pos) def is_trapped(self, pos, history, threshold0.1): if len(history) 30: return False recent history[-30:] if all(np.linalg.norm(p - pos) threshold for p in recent): return True return False def rrt_star_escape(self, start_pos, max_iter30, step_rrt0.5): nodes [start_pos] parents [-1] tree KDTree(nodes) for _ in range(max_iter): # 偏向势场下降方向采样 rand start_pos np.random.randn(3) * 2 # 最近邻 idx tree.query(rand)[1] nearest nodes[idx] direction rand - nearest dist np.linalg.norm(direction) if dist step_rrt: new_node nearest (direction / dist) * step_rrt else: new_node rand # 碰撞检测简化 nodes.append(new_node) parents.append(idx) tree KDTree(nodes) if np.linalg.norm(new_node - self.goal) 1.0: # 重构路径 path [new_node] p len(nodes)-1 while parents[p] ! -1: p parents[p] path.append(nodes[p]) path.reverse() return path[1] if len(path)1 else start_pos return nodes[1] if len(nodes)1 else start_pos def plan(self, start, max_iter1000): pos np.array(start) path [pos.copy()] trap_counter 0 for _ in range(max_iter): force self.total_force(pos) if np.linalg.norm(force) 0.01: if self.is_trapped(pos, path[-30:]): escape_target self.rrt_star_escape(pos) pos escape_target continue pos pos force / (np.linalg.norm(force)1e-6) * self.step # 动态调整弓力系数 if np.linalg.norm(pos - self.goal) 1.5: self.k_att 0.1 self.k_rep 5 path.append(pos.copy()) if np.linalg.norm(pos - self.goal) 0.5: break return path class FormationController: def __init__(self, leader_pos, relative_positions): self.leader_pos leader_pos self.rel_pos np.array(relative_positions) # 僚机相对主机坐标系的偏移 def virtual_target(self, follower_idx): # 主机机身坐标系转换到全局坐标系 (简化假设主机无旋转) return self.leader_pos self.rel_pos[follower_idx] def update_leader(self, new_leader_pos): self.leader_pos new_leader_pos

相关文章:

改进人工势场多无人机三维航迹规划【附代码】

✨ 长期致力于航迹规划、多无人机、目标分配、人工势场算法、三维空间研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)多目标任务分配与人工势场基础&…...

氢燃料电池混合动力能量管理与动力控制【附仿真】

✨ 长期致力于氢燃料电池、能量管理、等效氢耗、变换器、协同控制、永磁同步电机、滑模自抗扰研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)等效氢耗…...

半导体制造中的光学邻近校正(OPC)优化技术与实践

1. 光学邻近校正(OPC)在半导体制造中的关键作用在32nm以下节点的半导体制造中,光学邻近效应已成为制约光刻精度的首要瓶颈。当特征尺寸远小于曝光波长时(例如193nm光刻下的22nm节点),光线衍射会导致图案边缘…...

R3nzSkin英雄联盟皮肤修改器:终极免费皮肤体验完整指南

R3nzSkin英雄联盟皮肤修改器:终极免费皮肤体验完整指南 【免费下载链接】R3nzSkin Skin changer for League of Legends (LOL) 项目地址: https://gitcode.com/gh_mirrors/r3n/R3nzSkin R3nzSkin是一款专为《英雄联盟》玩家设计的开源内存修改工具&#xff0…...

OpenCode 对接实践:从独立进程到共享 Runtime 的架构演进

OpenCode 对接实践:从独立进程到共享 Runtime 的架构演进本文分享 HagiCode 集成 OpenCode AI 助手的完整实践,包括架构演进过程中的关键设计决策、遇到的坑以及最终解决方案。背景OpenCode 是一个开源的 AI 编码助手项目,托管在 GitHub 上。…...

闯入漳州粉色几何秘境,复刻西班牙红墙浪漫

在福建漳州市漳浦县的火山岛自然生态风景区内,有一座以粉红色为主色调、线条利落的几何形建筑群。因其层层叠叠的阶梯、错落的平台与迷宫般的路径结构,与西班牙卡尔佩的“红墙”(La Muralla Roja)景观高度相似,被游客称…...

C# 结合 llama.cpp 实现 PaddleOCR-VL-1.5:本地 OCR 客户端开发全攻略

一、前言在日常工作中,我们经常需要从图片中提取文字信息。虽然市面上有不少 OCR 服务,但它们往往需要联网、存在隐私风险,或者需要付费。2026 年百度发布了开源文档解析模型 PaddleOCR-VL-1.5,该模型不仅支持常规文字识别&#x…...

Gemini总结准确率暴跌?YouTube多语种/口音/技术术语场景全避坑指南,仅限内部测试版参数曝光

更多请点击: https://intelliparadigm.com 第一章:Gemini YouTube内容总结准确率暴跌现象溯源 近期多位开发者与内容分析团队反馈,Gemini API 在处理 YouTube 视频字幕(via transcript 或 transcript_with_timestamps&#xff0…...

C#/.NET/.NET Core技术前沿周刊 | 第 70 期(2026年5.01-5.10)

前言C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿、推荐或…...

别墅装修里的石材,选错是费钱,用错是麻烦

每次去工地,尤其是那些还没完工的别墅,总能看到角落里堆着几块大板。业主或者设计师会指着它们,兴奋地描述这里用爵士白,那里用鱼肚灰。但说实话,很多时候,这些选择在落地前,就已经埋下了后期保…...

HubSpot如何通过联盟计划快速增长?内容驱动型联盟营销的成功案例解析

在 SaaS 获客成本(CAC)不断攀升的今天,HubSpot 的增长奇迹始终是行业研究的焦点。除了教科书级的「集客营销(Inbound Marketing)」,其 HubSpot Affiliate Program(联盟营销计划)更是…...

壹:烧录Linux系统

名词解析:OTG:On-The-Go,含义:OTG 是一种 USB 的扩展功能,允许设备(如手机、开发板)在没有主机(如电脑)的情况下,既可以作为 USB 主机(Host&#…...

智能语音转文字终极指南:如何用AsrTools轻松完成音频转字幕

智能语音转文字终极指南:如何用AsrTools轻松完成音频转字幕 【免费下载链接】AsrTools ✨ AsrTools: Smart Voice-to-Text Tool | Efficient Batch Processing | User-Friendly Interface | No GPU Required | Supports SRT/TXT Output | Turn your audio into accu…...

一文读懂STA(静态时序分析):定义、价值、应用及实操指南

在数字集成电路设计领域,时序性能是决定芯片能否稳定、高效运行的核心因素,而静态时序分析(Static Timing Analysis,简称STA)作为时序验证的核心手段,早已成为芯片设计流程中不可或缺的一环。无论是FPGA还是…...

1394-AM75伺服驱动器

1394-AM75 是艾伦-布拉德LEY(Allen-Bradley)系列的一款伺服驱动器,控制精度高、响应迅速,适用于工业自动化中的精密运动控制。中间 15 条特点:结构紧凑,便于安装于控制柜内。支持宽电压输入范围&#xff0c…...

大模型SFT泛化能力受多因素制约,推理提升或伴随安全性下降

大模型SFT泛化能力研究背景随着大模型后训练(Post - training)技术的发展,强化学习(RL)在提升模型推理能力方面表现备受瞩目。在此背景下,学术界形成了“ SFT记忆,RL泛化(SFT memori…...

ARM设备运行x86_64程序:Box64高效兼容方案深度解析

ARM设备运行x86_64程序:Box64高效兼容方案深度解析 【免费下载链接】box64 Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64, RV64 and LoongArch Linux devices 项目地址: https://gitcode.com/gh_mirrors/bo/box64 你是否曾在AR…...

Atlassian Agent:企业级Atlassian产品激活的终极解决方案

Atlassian Agent:企业级Atlassian产品激活的终极解决方案 【免费下载链接】atlassian-agent Atlassians productions crack. 项目地址: https://gitcode.com/gh_mirrors/at/atlassian-agent Atlassian Agent是一款专为JIRA、Confluence等Atlassian产品设计的…...

从手机拍照到工业质检:聊聊自适应白平衡算法在实际项目里的那些‘坑’

从手机拍照到工业质检:自适应白平衡算法的实战避坑指南 在工业视觉检测线上,一台价值百万的自动化设备突然频繁误判产品颜色——原因竟是车间顶灯老化导致色温偏移,而算法团队引以为傲的"完美反射"白平衡模型完全失效。类似场景每天…...

从社交推荐到金融风控:动态链路预测在工业界的5个落地场景详解

动态链路预测:从理论到商业价值的五大实战场景 社交平台上那些"可能认识的人"推荐,金融交易中突然拦截的欺诈提醒,电商首页精准推送的"猜你喜欢"——这些看似无关的场景背后,都藏着一个关键技术:动…...

如何快速清理电脑中的重复图片:AntiDupl.NET终极指南

如何快速清理电脑中的重复图片:AntiDupl.NET终极指南 【免费下载链接】AntiDupl A program to search similar and defect pictures on the disk 项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl 你是否曾因电脑中堆积如山的重复图片而烦恼&#xff1…...

本地Cookie管理新选择:Get-cookies.txt-LOCALLY完全指南

本地Cookie管理新选择:Get-cookies.txt-LOCALLY完全指南 【免费下载链接】Get-cookies.txt-LOCALLY Get cookies.txt, NEVER send information outside. 项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY 在浏览器日常使用中&#xff0…...

从STM32F103到RP2040:新手如何用Arduino快速上手这块‘网红’双核MCU(附Wokwi在线仿真链接)

从STM32F103到RP2040:用Arduino生态快速征服双核MCU 第一次拿到RP2040开发板时,我习惯性地翻出STM32的工程模板准备移植——直到发现这个拇指大小的板子藏着两个能跑到133MHz的Arm Cortex-M0核心。作为从STM32F103时代走过来的开发者,我们早…...

Poppins几何无衬线字体:跨语言设计的现代主义杰作与技术实现指南

Poppins几何无衬线字体:跨语言设计的现代主义杰作与技术实现指南 【免费下载链接】Poppins Poppins, a Devanagari Latin family for Google Fonts. 项目地址: https://gitcode.com/gh_mirrors/po/Poppins Poppins是一款融合现代主义几何美学与跨语言排版功…...

MediaCreationTool.bat:Windows部署自动化脚本封装架构深度解析

MediaCreationTool.bat:Windows部署自动化脚本封装架构深度解析 【免费下载链接】MediaCreationTool.bat Universal MCT wrapper script for all Windows 10/11 versions from 1507 to 21H2! 项目地址: https://gitcode.com/gh_mirrors/me/MediaCreationTool.bat …...

如何反查竞品最近30天内新增的差评关键词,并优化Listing卖点?

很多亚马逊卖家做竞品分析,只盯价格、BSR、广告位、关键词排名,却很少认真看竞品最近30天新增的差评。其实,最新差评往往比老差评更有价值。老差评更多反映历史问题,可能来自旧批次、旧包装、旧版本;但最近30天新增差评…...

非洲车商采购中国二手车的完整流程:从找车到提车七步走

操作目标:帮助非洲车商、进口商、批发商及其采购代理,系统性地完成中国二手车采购。适用对象:想了解采购中国二手车完整流程的海外B端买家。采购流程SOP第一步:找车源渠道说明适用场景广州出口基地南沙、番禺、白云实地考察线上平…...

ChromaControl:如何用智能技术终结RGB设备控制混乱局面

ChromaControl:如何用智能技术终结RGB设备控制混乱局面 【免费下载链接】ChromaControl 3rd party device lighting support for Razer Synapse. 项目地址: https://gitcode.com/gh_mirrors/ch/ChromaControl 想象一下这样的场景:你的桌面上摆放着…...

航空航天装备行业技术岗结构设计工程师晋升CTO

下面我直接给你:航空航天装备行业「结构设计工程师 → CTO」的完整岗位链 每级年限 薪资(军工院所 vs 商业航天 2026 实价) 关键跃迁点,全部按结构岗真实晋升路线写死,不掺虚的。一、总路线(结构工程师 →…...

简单学习 --> WebSocket

websocketwebsocket 是应用层 协议, 基于传输层Tcp 协议 的协议 ;这个协议可以实现服务器主动给客户端推送信息功能(本身Tcp就可以做到,但是HTTP不行)websocket报文格式websocket 和服务器建立连接的过程首先 客户端 发送 HTTP请求 给服务器 , 请求里 包含了一些特殊header , (…...