运动规划问答 -路径规划

news2024/10/2 6:30:38

1、Dijstra算法,算法流程

关键
初始化:

算法是基于图搜索的思想,所以需要先构建一个图,图中不包含障碍物,读入起点和终点信息,设置一个以代价作为键值排序的multiMap,起点入队,并设置起点是被标记过的,

进入循环

起点出队,multiMap移除这点,判断当前节点是否是终点,如果为终点则跳出循环,以这点作为邻居节点的当前结点,获取图中当前结点的邻居节点,各自到当前结点的代价距离,然后对所有邻居节点进行遍历,如果是之前已经标记过的,那么判断到起点的代价距离是否比当前大,如果大,则更新,并把邻居节点的前置节点设为当前结点,如果未标记,将该点的前置节点设为当前结点,并加入multiMap,标记上,然后重复这个过程直到multiMap为空,然后反转得到路径

2、RRT算法流程;

keyword: 采样,迭代,树,两点之间是否联通

首先初始化,输入起点,终点,地图信息

设置迭代次数,开始迭代,在地图无障碍区域进行采样,获得采样点,然后寻找与采样树中最近的点,以一定的步长扩展新的节点,判断二者连接是否存在障碍物,无障碍物则扩展新的节点到树中,循环这个过程,直到终点被加入树中,当然这需要满足一定的阈值。反向查询,最后生成路径

初始化整个空间,定义初始点、终点、采样点数、点与点之间的步长t等信息 在空间中随机产生一个点xrand 在已知树的点集合中找到距离这个随机点最近的点xnear 在xnear到xrand的直线方向上从xnear以步长t截取点xnew 判断从xnear到xnew之间是否存在障碍物,若存在则舍弃该点 将new点加入到树集合中 循环2~6,循环结束条件:有一个new点在终点的设定邻域内

(225条消息) RRT与RRT_算法具体步骤与程序详解(python)问题很多de流星的博客-CSDN博客_rrt算法

3、你用过的路径规划算法原理及特点

路径规划五种算法简述及对比
在这里插入图片描述

启发式搜索是利用启发函数来对搜索进行指导,从而实现高效的搜索

A 算法是一种在静态地图中求解最短路径的直接搜索方法。_

4 说一下a*算法的流程

初始化open_set和close_set;

  • 将起点加入open_set中,并设置优先级为0(优先级最高);
  • 如果open_set不为空,则从open_set中选取优先级最高的节点n:
    • 如果节点n为终点,则:
    • 从终点开始逐步追踪parent节点,一直达到起点;
    • 返回找到的结果路径,算法结束;
    • 如果节点n不是终点,则:
    • 将节点n从open_set中删除,并加入close_set中;
    • 遍历节点n所有的邻近节点:
    • 如果邻近节点m在close_set中,则:
    • 跳过,选取下一个邻近节点
    • 如果邻近节点m也不在open_set中,则:
    • 设置节点m的parent为节点n
    • 计算节点m的优先级
    • 将节点m加入open_set中

5、 A*算法中openlist和closelist的作用,节点如何更新?

openlist存放已经获取到的邻居节点,但是还未处理,

closelist 存放的是已经处理过的节点

对于不是openlist的节点,将其加入优先队列中, 已经在的话则需要根据代价判断是否更新;而对于closelist存放的不再处理

6、hybrid A*算法以及优化

在这里插入图片描述
混合A再A算法的基础上考虑了车辆的运动学模型,即满足车辆的最大曲率约束,计算代价时考虑进去。
在这里插入图片描述

与A*区别:

扩展方式
A扩展时是从当前栅格的中心点,扩展到周围八个栅格的中心点,路径是两两中心点的连线
HybridA
扩展一共六个方向,左圆前进、倒车,直线前进、倒车,右圆前进、倒车,通过系统状态方程进行扩展
A到达新的栅格,位置必定是栅格中心,而HybridA到达的位置可以是路径上的任一点。
在这里插入图片描述
连通图结构
混合A* 除了考虑(x,y)维度外,还考虑量车辆姿态 θ
启发函数:
混合A表示从当前节点位姿到终点位姿的,同时满足避障条件及车辆运动学约束条件的最短路径长度,分为non-holonomic without-obstacle和 with obstacles AnalyticExpand(nc)两种类型启发函数,考虑障碍物与否区分
对于无障碍物采用Reeds-Sheep曲线生成,如果路径与障碍物发生重叠,采用动态规划或者A
搜索路径;
接近目标点
混合A靠近目标点直接连接即可,因为采样不一定能刚好到目标点,同时也是为了提升效率
A
则要求搜索的当前节点为目标点

7 、 蚁群算法和常见的搜索算法有什么不同

正反馈,信息素
用蚂蚁的行走路径表示待优化问题的可行解,整个蚂蚁群体的所有路径构成待优化问题的解空间。路径较短的蚂蚁释放的信息素量较多,随着时间的推进,较短的路径上累积的信息素浓度逐渐增高,选择该路径的蚂蚁个数也愈来愈多。最终,整个蚂蚁会在正反馈的作用下集中到最佳的路径上,此时对应的便是待优化问题的最优解。

(1)采用正反馈机制,使得搜索过程不断收敛,最终逼近最优解。

(2)每个个体可以通过释放信息素来改变周围的环境,且每个个体能够感知周围环境的实时变化,个体间通过环境进行间接地通讯。

(3)搜索过程采用分布式计算方式,多个个体同时进行并行计算,大大提高了算法的计算能力和运行效率。

(4)启发式的概率搜索方式不容易陷入局部最优,易于寻找到全局最优解。 [4]

8、 基于图论的规划方法其缺点是什么

不适合于高维问题,需要事先建立图,

9.曼哈顿距离与欧式距离的优缺点,

欧氏距离

D ( x , y ) = ∑ i = 1 n ( x i − y i ) 2 D(x, y)=\sqrt{\sum_{i=1}^{n}\left(x_{i}-y_{i}\right)^{2}} D(x,y)=i=1n(xiyi)2

曼哈顿距离:

D ( x , y ) = ∑ i = 1 k ∣ x i − y i ∣ D(x, y)=\sum_{i=1}^{k}\left|x_{i}-y_{i}\right| D(x,y)=i=1kxiyi

EulideanManhattan
cons对异常数据敏感,往往需要归一化处理
由于计算的各个维度差异同等对待,所以无法对各个维度差异进行区别,不适合处理高维数据
对异常数据敏感,往往需要归一化处理
pros计算速度快,直观计算速度快,可以用于处理高维数据

对于向量之间的差异进行计算过程中,各个维度差异的权值不同

常见距离度量方法优缺点对比!_mob604756ea26ec的技术博客_51CTO博客

(186条消息) 欧式距离和曼哈顿距离的比较_AliceWanderAI的博客-CSDN博客_曼哈顿距离和欧式距离

9说说DP算法的过程

这个可以参考
算法题64. 最小路径和
思想:把多阶段的决策过程转化为一系列单阶段的最优化问题来解决
逆向寻优,正向求值
应用
百度apollo中的em_planner也有用到DP的思想进行局部路径的搜索,再用QP的方式进行轨迹平滑。

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

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

相关文章

搜索技术——遗传算法

如果有兴趣了解更多相关内容,欢迎来我的个人网站看看:瞳孔空间 一:进化与遗传的概念 拉马克(Lamarck)进化论: 一切物种都是其他物种演变和进化而来的,而生物的演变和进化是一个缓慢和连续的过程环境的变化能够引起生…

Qwt开发笔记(一):Qwt简介、下载以及基础demo工程模板

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/128146985 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

设计模式之观察者模式(十四)

目录 1. 背景 1.1 天气预报项目 2. 观察者模式 2.1 观察者模式解决天气预报项目 2.2 观察者模式在JDK中应用 1. 背景 1.1 天气预报项目 天气预报项目需求,具体要求如下: 气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去…

ASEMI整流桥KBL406参数,KBL406规格,KBL406封装

编辑-Z ASEMI整流桥KBL406参数: 型号:KBL406 最大重复峰值反向电压(VRRM):600V 最大RMS电桥输入电压(VRMS):420V 最大直流阻断电压(VDC):600…

完全免费、开源的Flutter架构来了;开发者做好准备了吗?

Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面 一份代码可以同时生成 iOS 和 Android 两个高性能、高保真的应用程序 Flutter 目标就是使开发人员能够交付在不同平台上都感觉自然流畅的高性能应用程序,并且兼容 滚…

萤火虫模糊回归算法(Matlab代码实现)

🍒🍒🍒欢迎关注🌈🌈🌈 📝个人主页:我爱Matlab 👍点赞➕评论➕收藏 养成习惯(一键三连)🌻🌻🌻 🍌希…

FA-Phe-Gly-Gly,64967-39-1

Substrate for a continuous spectrophotometric assay of human angiotensin I-converting enzyme (ACE). Enzymatic cleavage of FAPGG yields FA-Phe-OH and H-Gly-Gly-OH. 连续分光光度法测定人血管紧张素i转换酶(ACE)的底物。酶法裂解FAPGG产生fa - pheo - oh和H-Gly-Gly-…

Kamiya丨Kamiya艾美捷抗-C-Myc,多克隆说明书

Kamiya艾美捷抗-C-Myc,多克隆化学性质: 程序:鸡用C-Myc免疫与KLH缀合的肽。多次之后用弗氏佐剂免疫收集。使用固定在固体上的肽对抗体进行免疫亲和纯化阶段 规范: ELISA:抗体特异性通过针对与BSA缀合的肽的ELISA。A…

在微信小程序里引入Vant Weapp组件库详细步骤

1. 新建一个文件夹。 2. 使用微信开发者工具 选择一个模板(这里以javaScript 基础模板 为例) 选择完模板之后如下: 2. 右键打开终端:按如下步骤执行命令。 ① npm init 解释:执行 npm init 需要在当前文件夹下的DOS窗口执行或者VS code里面…

Springboot策略模式实现文件上传功能(Windows/Linux本地,oss,cos)

1&#xff1a;首先配置pom依赖&#xff1a; <!-- 阿里云oss--><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.8.0</version></dependency><!-- 腾讯云cos-->…

Raspberry Pi 3 Model B+ (树莓派3B+)快速上手

文章目录一、硬件资源二、供电三、引脚说明四、Raspberry Pi OS1. 下载imager2. 选择操作系统3. 选择SD卡4. 烧写完成5. 启动6. 版本信息五、网络测试1. WiFi2. 以太网六、开启串口日志1. 硬件串口连接2. 修改config.txt配置3. 修改cmdline4. 测试一、硬件资源 下面是硬件资源图…

架构-三层架构:三层架构

概述 顾名思义&#xff0c;三层架构分为三层&#xff0c;分别是“数据访问层”、“业务逻辑层”、“表示层”。 数据访问层&#xff1a;数据访问层在作业过程中访问数据系统中的文件&#xff0c; 实现对数据库中数据的读取保存操作。 表示层&#xff1a;主要功能是 显示数据和…

李宁「向上」:不止缺一个FILA

文|螳螂观察 作者|易不二 随着卡塔尔世界杯拉开战幕&#xff0c;今年年初大幅下跌的阿迪和耐克&#xff0c;正在借助世界杯大放异彩。 据统计&#xff0c;在2022年的32强世界杯球衣中&#xff0c;耐克、阿迪、彪马三家品牌共包揽了80%。世界杯球衣是出镜率最高的广告载体&am…

Android基础之Fragment

目录前言一、Fragment简介二、Fragment的基础使用1.创建Fragment2.在Activity中加入Fragment&#xff08;1&#xff09;在Activity的layout.xml布局文件中静态添加&#xff08;2&#xff09;在Activity的.java文件中动态添加三、Fragment的基础实践应用1.应用过程详解2.代码总览…

Java JDK下载与安装教程

文章目录Java JDK 简介下载 JDK安装 JDKJava JDK 简介 JDK是 Java 语言的软件开发工具包&#xff0c;主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心&#xff0c;它包含了JAVA的运行环境&#xff08;JVMJava系统类库&#xff09;和JAVA工具。 万事开…

Flink系列文档-(YY11)-watermark工作机制

1 WaterMark生成工作机制 观察源码 /*** A WatermarkGenerator for situations where records are out of order, but you can place an upper* bound on how far the events are out of order. An out-of-order bound B means that once an event* with timestamp T was encou…

[附源码]Python计算机毕业设计SSM酒店管理系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

alertmanager 基于webhook-adapter插件实现企业微信机器人提醒服务

前言 Alertmanager处理客户端应用程序&#xff08;例如 Prometheus 服务器&#xff09;发送的警报。它负责删除重复数据、分组并将它们路由到正确的接收器集成&#xff0c;例如电子邮件、PagerDuty 或 OpsGenie。它还负责警报的静音和抑制。 前提要求 安装docker&#xff0c;…

分布式搜索引擎 ElasticSearch(ES)

一、初识elasticsearch 1.了解ES 1&#xff09;elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助我们从海量数据中快速找到需要的内容。elasticsearch结合kibana、Logstash、Beats&#xff0c;也就是elast…

基于SSH的周报管理系统

来公司的第一个实习项目&#xff0c;前端使用的是Freemark,刚开始上手比较复杂&#xff0c;慢慢摸索也算是圆满完成了&#xff0c;加油&#xff01;