TGK-Planner无人机运动规划算法解读

news2024/11/24 22:53:59

高速移动无人机的在线路径规划一直是学界当前研究的难点,引起了大量机器人行业的研究人员与工程师的关注。然而无人机的计算资源有限,要在短时间内规划出一条安全可执行的路径,这就要求无人机的运动规划算法必须轻型而有效。本文将介绍一种无人机的在线路径规划算法 TGK-Planner,希望能给开发者提供一些解决思路。

TGK-Planner简介

TGK-Planner 为浙江大学 Fast Lab 提出的一种轻型有效的拓扑引导的无人机路径规划算法,用于具有有限机载计算资源的四旋翼无人机在线飞行。该算法结构遵循传统的前后端工作流程,采用新颖的设计来提高寻路和轨迹优化子模块的鲁棒性和效率。

首先在前端部分使用拓扑引导图来粗略的捕捉环境结构,并指导基于采样的动态规划器进行状态采样,给出一条粗略的全局避障路径。然后在后端优化框架中改进轨迹的平滑性和连续性,并且将优化的轨迹曲线往前端的无碰撞轨迹曲线吸引。下面我们将TGK-Planner算法分为前端路径规划以及后端轨迹优化两部分来进行讲解。

前端路径规划

TGK-Planner 的前端轨迹规划部分,是一个改进的Kinodynamic RRT*采样算法,其主要改进的地方在于环境引导采样策略。前端部分的算法步骤如下所示:

1、首先不考虑障碍物,直接规划出一条从起点到终点的路径,如上图红色曲线所示;

2、沿着规划的路径,记录路径曲线进出障碍物的交点,并将每一对交点连接起来,如上图蓝色虚线所示;

3、沿着蓝色虚线的法向方向进行双向延伸射线,射线端点延伸到离开障碍物的栅格为止,如上图橘色虚线所示;

4、将起点、终点以及延伸的射线端点连接起来,最后可以获得一块包裹障碍物的区域,如上图橘色实线所示;

5、在橘色实现区域外围进行 Kinodynamic RRT* 状态采样,通过较少的时间花费可以得到一条粗略的无碰撞轨迹。

通过前端的轨迹规划,我们可以得到一条安全无碰撞的粗略轨迹,该轨迹的位移和速度是连续的,但分段轨迹的连接点上其加速度是不连续的,这会导致姿态抖动,并对无人机控制造成干扰。

后端轨迹优化

优化框架

无人机的轨迹可以用多项式来表达,通过后端的优化框架,可以改进无人机轨迹的平滑性以及无人机加速度的连续性,让无人机更加平稳飞行。后端的轨迹优化可以考虑为一个无约束的优化问题,其代价函数可以表示为:

代价函数考虑了三项目标函数,J_s 表示为光滑项代价函数,J_h 表示为优化轨迹与前端全局轨迹的差异,J_c 为惩罚分段轨迹之间的加速度不连续性。

1、光滑项惩罚:无人机轨迹使用高阶多项式表示,将轨迹的高阶导数作为控制输入,最小化高阶导数能够使得整段轨迹控制能量小,并使无人机的整段轨迹更加光滑。

2、差异性惩罚:由于前端部分规划的全局路径是安全无碰撞的,那么就可以通过惩罚优化后的曲线与前端规划轨迹的差异性,将优化的轨迹曲线吸引到前端规划的曲线位置上,这样就可以保障优化后的曲线也是安全无碰撞的,且实现十分轻型高效,无需太多计算资源。

3、连续性惩罚:由于无人机前端规划分段轨迹的连接点的加速度不连续,通过惩罚分段连接点的两端加速度差异,迫使无人机轨迹连接点的加速度趋于相同,保证无人机的平稳飞行。

本期内容就先分享到这里,若大家对于路径规划还不够了解,可以先阅读上一期阿木分享的文章“常用的路径规划算法浅析”。有一定基础的开发者可以进一步了解TGK-Planner无人机规划算法,相关论文及代码地址如下:

TGK-Planner Paper:https://arxiv.org/abs/2008.03468

Code:https://github.com/ZJU-FAST-Lab/TGK-Planner

Video:https://www.bilibili.com/video/BV1mi4y1c78T

往期推荐

常用的路径规划算法浅析

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

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

相关文章

Java项目:SSM企业OA管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目包含管理员与普通员工两种角色, 管理员角色包含以下功能: 岗位管理,部门管理,工龄奖金管理,员工管理,考勤管理,…

Linux下Jenkins服务器安装与使用

CentOS7环境下安装Jenkins​ JDK安装详细见: JDK安装详细步骤 ​ jenkins安装 Jenkins源添加 **注意: ** 问题1、在添加Jenkins源时会出现以下错误 这是由于没有安装wget软件包的原因 进行wget软件包的安装: yum -y install wget 问题2…

HTML网页设计制作——初音动漫(6页) dreamweaver作业静态HTML网页设计模板

HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 精彩专栏推荐&#x1f4…

市面上跑步耳机哪种好、2023年最适合跑步用的耳机排名

这几年,越来越多人注意到了身体健康的重要性,而随着今年飞盘、露营、刘畊宏女孩的兴起,再到卡塔尔世界杯,不断刺激大众运动、健身的热情,面对全民运动热潮,作为普通人应该如何保持激情,实现身心…

Pr:导出设置之编码设置

视频 VIDEO设置因所选导出格式而异。每种格式都有独特的要求,这些要求决定了哪些设置可用。以导出 H.264 文件格式为例,下面给出有关编码设置 Encoding Settings的选项及说明。性能Performance--硬件加速Hardware Encoding利用系统的可用 GPU 硬件&#…

前后端分离模式下,SpringBoot + CAS 单点登录实现方案

1.CAS服务端构建 1.1.war包部署 cas5.3版本 https://github.com/apereo/cas-overlay-template 构建完成后将war包部署到tomcat即可 1.2.配置文件修改 支持http协议 修改apache-tomcat-8.5.53\webapps\cas\WEB-INF\classes\services目录下的HTTPSandIMAPS-10000001.json&…

PDF文档一键自动生成目录和书签

在工作中经常会遇到编写文档的时候,当我们在word编写完文档后,一般可以自动生成一个目录。为了方便阅读和保护文档不被破坏,一般发送给别人的时候,需要把word文档转换成PDF格式。但是word文档转换为PDF格式后,目录虽然…

【强化学习论文合集】五.2017国际表征学习大会论文(ICLR2017)

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。 本专栏整理了近几年国际顶级会议中,涉及强化学习(Rein…

vscode electron安装环境

1. 安装nodejs Node.js 安装18.12.1LTS版本 安装完成后确认 node –-version 2. 安装electron npm install electron –g 验证是否安装成功 electron –v 没成功!!! 找解决方案 ​​​​​​​ 无法加载文件xxx.ps1,因为在…

信而泰OLT使用介绍-网络测试仪实操

一、OLT产品介绍 1.概述 PON作为FTTX网络发展的核心技术,局端设备OLT尤其重要。 本文档中主要介绍OLT的功能特性、业务配置 2.基本功能特性 2.1大容量和高集成度 ZXA10 C300集光接入、数据交换、路由处理于一体,提高了系统的集成度。 2.2 EPON功能…

ADSP-21489的图形化编程详解(3:音效开发例程-直通三个例程讲清楚)

Fireware 烧写好了之后,SigmaStudio 图形化开发的基本条件就达成了。我们重新来链接一下硬件,进入图形化编程的阶段,这个阶段我尽量多写一些例程,让大家能够尽快熟悉这个软件开发的全过程。 1. 直通(1) 1&…

C++类与对象(三)赋值运算符重载、const成员

目录 1.赋值运算符重载 1.1引入 1.2 运算符重载 1.3赋值运算符重载 1.4 前置和后置重载 2.const成员 3.取地址及const取地址操作符重载 1.赋值运算符重载 1.1引入 赋值运算符重载:用已存在的对象,给另一个已存在的对象赋值 还是使用上节日期类的…

[网络工程师]-应用层协议-电子邮件协议

常见的电子邮件协议有简单邮件传输协议、邮局协议和Internet邮件访问协议。 1、简单邮件传输协议(Simple Mail Transfer Protocol,SMTP) SMTP主要负责将电子邮件从发送方传送到接收方,即对传输的规则做了规定,该协议工…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java医院疫情管理系统4f9a9

毕业设计其实不难,主要毕业的时候任务太紧了,所以大家都非常忙没有时间去做,毕业设计还是早做准备比较好,多花点时间也可以做出来的,建议还是自己动手去做,比如先选一个题,这样就有方向&#xf…

Markdown 图片左右对齐、居中、大小设置

Markdown 图片左右对齐、居中、大小设置 虽然经常使用 Markdown 写博客,但是,我却不太知道 Markdown 图片的位置和大小设置,今天刚好发表博客的时候,发觉图片位置有点丑,Google 查到了方法,所以记录学习一下…

李立宗《计算机视觉40例》PPT课件:第3章

《计算机视觉40例》PPT课件:第3章 《计算机视觉40例》第3章是OpenCV入门,这一章对OpenCV的使用进行了简单的介绍。这章目录如下: 本章集中介绍了OpenCV中一些最通用的知识,这些知识在后面的案例中应用比较广泛,所以集…

木聚糖-聚乙二醇-牛血清白蛋白,BSA-PEG-Xylan,牛血清白蛋白-PEG-木聚糖

木聚糖-聚乙二醇-牛血清白蛋白,BSA-PEG-Xylan,牛血清白蛋白-PEG-木聚糖 中文名称:木聚糖-牛血清白蛋白 英文名称:Xylan-BSA 纯度:95% 别称:牛血清白蛋白修饰木聚糖,BSA-木聚糖 PEG接枝修饰木聚糖 木聚糖-聚乙二醇…

Mysql——》decimal

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 Mysql——》decimal一、作用二、语法三、示例一、…

ADSP-21489的开发详解:VDSP+自己编程写代码开发(8-延时算法)

这个程序,对 48Khz 或 96Khz 采样率的音频,进行了延时处理,并输出。跑程序和上面的例程一样,我们来看一下他音频处理部分的具体程序。(音频输入输出需根据程序换接口) Left_Channel_Out1 Left_Channel_In2…