路径规划之RRT算法

系列文章目录

路径规划之Dijkstra算法
路径规划之Best-First Search算法
路径规划之A *算法
路径规划之D *算法
路径规划之PRM算法
路径规划之RRT算法


路径规划之RRT算法

  • 系列文章目录
  • 前言
  • 一、RRT算法
    • 1.起源
    • 2.流程
    • 3. 优缺点
      • 3.1 优点
      • 3.2 缺点
    • 4. 实际效果


前言

PRM方法相比于传统的A *算法,只是多了一步构建PRM地图,本质上还是在图上进行搜索;相比之下,本文所提到的RRT算法是基于采样的基础上构建树,同时在树结构上进行搜索。

一、RRT算法

1.起源

RRT(Rapidly-exploring Random Tree)算法是由Steven M. LaValle于1998年提出的,中文翻译为快速探索随机树。它可以快速扩张以此在图上找到可行的路径。

2.流程

  1. 建立树,根节点为起始点,指定目标点,设置扩展的步长距离distance
  2. 在地图中随机得到一个采样点,记作p_rand
  3. 遍历当前树,找到距离随机点最近的点,记作p_near
  4. 由p_near向随机点p_rand扩展一个步长的距离,扩展后的点记作p_new
  5. 检测此p_new点是否在障碍物上,如果在障碍物上,则从第2步重新开始
  6. 将新产生的点p_new插入到整个树中
  7. 当p_new点距离目标点小于某个范围时,退出搜索,然后将整个路径画出来

在这里插入图片描述

3. 优缺点

3.1 优点

  1. 搜索效率比较高,搜索速度比较快;
  2. 适用于高维空间,不会产生维度灾难的问题;
  3. 只需对状态空间采样点进行碰撞检测,避免了对空间的建模。

3.2 缺点

  1. 规划出的路径质量一般,可能存在棱角、不够光滑;
  2. RRT算法不太适用于存在狭长空间的环境;
  3. 规划出的路径可能不是最优路径;
  4. 不适用于动态环境的路径规划。

4. 实际效果

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

正则表达式(3):入门

正则表达式(3):入门 小结 本博文转载自 从这篇文章开始,我们将介绍怎样在Linux中使用”正则表达式”,如果你想要学习怎样在Linux中使用正则表达式,这些文章就是你所需要的。 在认识”正则表达式”之前&am…

图像处理之把模糊的图片变清晰

1.图片如果是有雾化效果的对图像产生影响的,要先进行图形增强,Retinex是基于深度神经网络了,我在之前图形处理的文章一路从神经网络(概率统计)—>积卷神经网络(对区域进行概率统计,对图片进行切割多个识别对象)–>深度积卷神经网络(RetinexNet也是模拟人脑的处理过程,增加…

挑选分支中某一个提交进行合并

复制提交的哈希(sha-1)值 挑选提交 git cherry-pick 复制过来的哈希值 若有冲突,解决冲突,没有冲突,即合并完成

C语言普里姆(Prim)算法实现计算国家建设高铁运输网最低造价的建设方案

背景: 描述:为促进全球更好互联互通,亚投行拟在一带一路沿线国家建设高铁运输网,请查阅相关资料 画出沿线国家首都或某些代表性城市的连通图,为其设计长度最短或造价最低的高铁建设方案。 要求:抽象出的图…

Linux-进程之间的通信

目录 ​编辑 一.什么是进程之间的通信 二.进程之间的通信所访问的数据 三.进程之间的通信是如何做到的 四.基于内存文件级别的通信方式——管道 1.什么是管道 2.管道的建立过程——匿名管道 a.什么是匿名管道 b.匿名管道特点: c.使用匿名管道的…

Peter算法小课堂—贪心算法

课前思考:贪心是什么?贪心如何“贪”? 课前小视频:什么是贪心算法 - 知乎 (zhihu.com) 贪心 贪心是一种寻找最优解问题的常用方法。 贪心一般将求解过程分拆成若干个步骤,自顶向下,解决问题 太戈编程第…

邮政单号查询,邮政快递物流查询,并进行提前签收分析

批量查询邮政快递单号的物流信息,并将提前签收件分析筛选出来。 所需工具: 一个【快递批量查询高手】软件 邮政快递单号若干 操作步骤: 步骤1:运行【快递批量查询高手】软件,第一次使用的朋友记得先注册&#xff0c…

关于svn如何上传一个完整的项目

注意:请一定要按照该步骤进行操作,请上传新项目时将项目名称进行规范命名 例如原始文件是arrange_v2 将此项目需要注入新的医院 则命名为 arrange_某医院名称_门诊或者医技或者药房_v2 重新命名文件夹名称快捷键 (F12) 一 &…

【Linux】公网远程访问AMH服务器管理面板

目录 1. Linux 安装AMH 面板2. 本地访问AMH 面板3. Linux安装Cpolar4. 配置AMH面板公网地址5. 远程访问AMH面板6. 固定AMH面板公网地址 AMH 是一款基于 Linux 系统的服务器管理面板,它提供了一系列的功能,包括网站管理、FTP 管理、数据库管理、DNS 管理、…

UI自动化测试工具的定义及重要性

UI自动化测试工具在现代软件开发中起着不可或缺的作用。它们能够提高测试效率、减少人为错误、提供全面的测试覆盖,并支持持续集成。通过有效使用UI自动化测试工具,开发团队可以提高软件质量,提供更可靠的应用程序,满足用户的需求…

Jsoup爬取HTTPS页面数据资源,并导入数据库(Java)

一、实现思路 示例页面: 2020年12月中华人民共和国县以上行政区划代码 忽略https请求的SSL证书通过Jsoup获取页面标签遍历行标签,分别获取每个行标签的第二个和第三个列标签将获取到的行政代码和单位名称分别插入sql语句占位符执行sql语句&#xff0c…

掌汇云 | 全场景数据追踪,多维了解用户偏好,提高运营效率

掌汇云拥有黄金“三件套”:掌头条、汇互动、云品牌。群硕借助这些功能套件,面向细分领域如:会展,食品饮料、医药以及工业等,定制综合性信息服务平台,提供资讯、商机、企业人脉、上下游资源、活动等高质量服…

<软考>软件设计师-3程序设计语言基础(总结)

(一) 程序设计语言概述 1 程序设计语言的基本概念 1-1 程序设计语言的目的 程序设计语言是为了书写计算机程序而人为设计的符号语言,用于对计算过程进行描述、组织和推导。 1-2 程序语言分类 低级语言 : 机器语言(计算机硬件只能识别0和1的指令序列)&…

docker网络【重点】

一、网络知识 1、桥接模式:用于链接两个不同网络段的设备,是共享通信的一种方式 2、桥接设备:工作在OSI模型的第二层(数据链路层)。根据MAC地址转发数据帧,类似于交换机,只能转发同一网段&…

使用Inno Setup 打包程序文件 怎么把其中一个文件安装时复制到指定系统文件夹

环境: Inno Setup 6.6 Win10 专业版 问题描述: 使用Inno Setup 打包程序文件 怎么把其中一个文件安装时复制到指定系统文件夹 将文件api-ms-win-shcore-scaling-l1-1-1.dll复制到system32里面 解决方案: 1.由于安全和权限的限制,直接在Inno Setup脚本中复制文件到C:\…

Mysql综合案例练习<1>

MySql综合案例练习<1> 题目一题目二题目三题目四题目五题目六题目七题目八题目九题目十题目十一题目十二题目十三题目十四题目十五题目十六题目十七题目十八题目十九 题目一 创建数据库test01_library 创建表 books&#xff0c;表结构如下&#xff1a; CREATE DATABASE …

Tap虚拟网卡

1 概述 Tap设备通常用于虚拟化场景下&#xff0c;其驱动代码位于drivers/net/tun.c&#xff0c;tap与tun复用大部分代码&#xff0c; 注&#xff1a;drivers/net/tap.c并不是tap设备的代码&#xff0c;而是macvtap和ipvtap&#xff1b; 下文中&#xff0c;我们统一称tap&#…

了解Linux网络配置

本章主要介绍网络配置的方法。 网络基础知识 查看网络信息 图形化界面修改 通过配置文件修改 命令行管理 11.1 网络基础知识 一台主机需要配置必要的网络信息&#xff0c;才可以连接到互联网。需要的配置网络信息包括IP、 子网掩码、网关和 DNS。 11.1.1 IP 地址 在计算机…

0010Java安卓程序设计-ssm基于安卓的掌上校园系统

文章目录 **摘要**目录系统实现5.2管理员功能模块开发环境 编程技术交流、源码分享、模板分享、网课分享 企鹅&#x1f427;裙&#xff1a;776871563 摘要 随着Internet的发展&#xff0c;人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化&#xff0c;…