搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
天景科技苑
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
CentOS安装MySQL
2
.NET Framework 开发自定义 Windows 控件_将windows窗体改为自定义控件
3
2023全国特种作业操作证熔化焊接与热切割模拟考试试卷一[安考星]_焊接与热切割作业模拟考试题库下载
4
2024年最新的Stable Diffusion整合包安装(附安装包)_stable diffusion整合包下载
5
虚拟机类加载机制
6
搭建向量数据库【动手学大模型应用开发Task3】_向量数据库搭建
7
pytorch中tensorboard使用_vscode pytorch tensorboard
8
Excel的Index+MATCH组合使用方法_index match多结果查询
9
【陈老板赠书活动 - 28期】- 客户成功体系与实践:让ToB和SaaS企业高效增长
10
CentOS 停止维护,来看看国产操作系统中有哪些顶流!
当前位置:
article
> 正文
轨迹规划论文阅读20220109-A Real-Time Motion Planner with Trajectory Optimization for Autonomous Vehicles_基于共轭梯度的轨迹规划
作者:天景科技苑 | 2024-08-21 09:58:34
赞
踩
基于共轭梯度的轨迹规划
0、摘要
提出了一种基于轨迹优化的高效实时自动驾驶运动规划方法。将轨迹空间离散化->利用cost functions 来找到最佳轨迹。
引[CSDN1]:
规划器首先把规划空间
离散化
,并根据一组代价函数搜索最优轨迹,然后对轨迹的path和speed进行迭代优化。文中提出了一种“post-optimization”的方法,可以弥补离散化难以求出最优解的问题(离散越密,越接近最优解),并可以减少52%的规划时间。
1、介绍
A. 背景
自动驾驶复杂的情况与搜索方法的局限性,启发式搜索难以全部满足。时间维度、运动学约束、Jerk并没有好的方法同时处理。
B. 相关工作
论文1-12
C. 贡献
实现了一种平滑、连续、可行的运动规划器。通过高效的路线和速度离散化。通过后后处理补偿离散的问题。
2、算法框架
使用[3]曲率多项式来找到路径。使用[13]的方法实现一个随即方向的单一优化算法。
A、轨迹生成
A-1 路径生成
使用与[5]类似的方法,但是使用的是四次的曲率多项式->曲率变化率的连续性。
a) 端点采样
路中央的轨迹:横纵坐标,当前方向和曲率。
使用类似Frenet的方式去定义一个空间的点:
相当于将该处中线切圆的半径扩大了些。
b) 路径模型
将成对的采样点于采样端点以及当前车辆姿态连接起来。
三次拟合:
。其中有五个约束项对应x,y的移动,起点到终点的方向,起点的曲率和终点的曲率。梯度下降算法可以解决这个问题(衍生于[3])。
从[5]中,三次曲率多项式适用于处理通常的曲率变化连续的场景。但是在双循环轨迹生成中,往往会出现轨迹的曲率并不是一直连续的[问题1]。加入了四次曲率多项式。仅用于从当前车辆位置启示的那一段路。
c) 速度生成
将速度空间离散化,设置一个三次多项式将他们连接起来。
速度多项式定义为:
,使用了s-弧长来定义。四个未知变量(假设弧长是已知的),分别对应四个约束:初速度,初加速度,终速度,终加速度。其中,初始速度和初始加速度由实际传感器测得。定义了最大最小速度以及离散速度个数N_speed,将速度离散为:
.
d) Cost 函数
包含的变量:静态变量和动态变量
静态希望更短、曲率变化更小、更靠近车道中心且远离障碍物
动态上期望更快、耗能更小、加速度更小、加加速度更小、向心加速度更小并且距离障碍物更远。
距离使用有关距离的计算:
其中,lambda 是带宽 g是距离
C、最优轨迹生成
将以上代价全部加起来,得到的代价函数。将路径和速度分开优化。应该是先选路程,再选速度。然后进入优化模块。
1) 路径优化
取消采样点的中朝向、横向偏移、以及曲率要求的约束[问题2],增加了起始位置朝向偏移以及起始位置的曲率偏移两个变量。重新构建轨迹并且使用Simplex优化。(单纯形算法)
还剩沿道路的的横向距离...
2) 速度优化
这个过程中会改变到达任一节点的动态障碍物的位置,使得梯度算法难以使用。所以使用非衍生的 Simplx算法[问题3]。
D、性能评估
初始轨迹的以及速度的选取占用的时间最长,迭代几次其实消耗的时间并没有那么多。
3、系统实现
找到车辆最近的一个路点,确定一个算法结束的时候最近一个车辆肯定达不到的地方,从那儿开始进行规划。
针对于人工驾驶,总是以当前位置作为初始点开始。
995、阅读总结
该算法先通过离散的点选取了一条参考轨迹,然后使用单纯形方法进行迭代优化。从而在保证了轨迹质量的同时,降低了运算时间。
这个优化过程中似乎没有用到距离障碍物的距离,使得优化过程的安全性降低。
亮点:合理的分配轨迹预生成以及轨迹后优化。
缺点:优化时的单纯形算法对碰撞的影响。
997、阅读时存在的问题
1、但是在双循环轨迹生成中,往往会出现轨迹的曲率并不是一直连续的。
相邻周期的path计算时经过了一次速度优化,丢失了继承性?
[CSDN1] :
可以理解为相邻周期计算出的path没有继承性,转向会有突变。为了解决这个问题可以再引入一个新的约束:即当前车辆姿态点处曲率的一阶导数。那么此时就应当是4次多项式了。
998、 Linked Papers
A. Related Works
[1][2] 一系列测试平台的搭建
[3][4] 曲率多项式来确保速度和加速度->确保曲率变化得当
[5][6] 在[3][4]的基础上实现了将轨迹与道路形状贴合
[7] 时间五次多项式
[8] A Star ARA Star [9] RPT [10] D Star Lite
[11] 使用共轭梯度方法,速度不是最优的
[12] 梯度最优方法,很好的避开了静态障碍物,但是却没有联系时间维度
B、算法框架
[13] 一种随机方向的单一优化方法生成路径和速度
[5] [14] 一种前向的速度生成算法。
[7] [15] 一种反向的速度生成-使用了基于时间的多项式
[16] 一种车辆所在区域的表示方法
[17] Simplex 算法
[18] PMP-partial montion planning
999、词语积累
iterative v. 迭代的,重复的,反复的
resultant adj. 由此引起的
computational complexity n. 计算复杂度
commuter n. 通勤者
commercial adj. 商业的
cruise n. 巡航
constraint n.约束
convature n.曲率
comform v.符合
inverse adj. 相反的
profile n. 轮廓、总则
coincide with v. 吻合
derivative n. 派生物
feasible adj. 可行的
oriented adj. 以...为方向的
simplex adj.单一的
perpendicular adj. 正交的
vertex n. 顶点
discretized adj. 离散的
respectively adv. 分别地
lattice n. 晶格
granulatity n. 间隔尺寸、粒度
scheme n. 计划
参考文章:
CSDN 1:
自动驾驶之轨迹规划7—A Real-Time Motion Planner with Trajectory Optimization for Autonomous Vehicles文献阅读_IHTY_NUI的博客
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/天景科技苑/article/detail/1011264
推荐阅读
article
[
Leetcode
] 759.
Employee
Free
Time
员工
空闲
时间...
该文讲述了如何解决一个算法问题,即给定一组
员工
的工作时间区间,找到所有
员工
都
空闲
的时间段。解决方案包括将区间拆分、排序,...
赞
踩
article
LeetCode
759.
Employee
Free
Time
-
优先级
队列(Priority ...
给定一个二维数组schedule表示员工工作时间,求所有员工公共的空闲时间。这题可以看作是253. Meeting Ro...
赞
踩
article
[
LeetCode
]
Employee
Free
Time
职员
的
空闲时间...
We are given a list schedule of employees, which represents...
赞
踩
article
什么
是
recovery
time
和
removal
time
?_
recovery
removal
...
removal
time
/
recovery
time
类似于DFF的setup
time
/ hold
time
,不同之...
赞
踩
article
论文阅读:
HDR
Flow Real-Time
HDR
Video Reconstruction wi...
文章一开始就直接亮出观点,基于不同曝光的
HDR
视频重建问题目前依然存在很多的挑战,尤其是在相机或者场景物体大幅运动的...
赞
踩
article
FPGA
学习-
setup
time
和
hold
time
...
点击蓝字关注我们关注、星标公众号,精彩内容每日送达来源:网络素材1. 静态时序分析与动态时序分析静态时序分析:STA,主...
赞
踩
article
什么是
寄存器
的
recovery
time
和
removal
time
?...
寄存器
的
recovery
time
和
removal
time
_
removal
time
removal
time
...
赞
踩
article
recovery
time
和
removal
time
时序
图理解_
removal
recovery
t...
在
时序
分析中,和是与异步复位和异步置位信号相关的两个重要参数。它们用于确保复位或置位信号不会干扰
时序
路径的正确工作。_r...
赞
踩
article
恢复
和
去除
时间
(
Recovery
and
Removal
Time
)_
恢复
时间
和
去除
时间
...
恢复
时间
(
Recovery
Time
)是指异步控制信号(如寄存器的异步清除和置位控制信号)在“下个时钟沿”来临之前变无效...
赞
踩
article
静态时序分析之恢复
时间
recovery
time
和
撤销
时间
removal
time
_
recovery
...
1、概念同步电路中,输入数据需要与时钟满足setup
time
和
hold
time
才能进行数据的正常传输,防止亚稳态;类...
赞
踩
article
什么是
recovery
time
和
removal
time
?
_
removal
time
recove...
什么是
recovery
time
和
removal
time
?在同步电路中,输入数据需要与时钟满足setup
time
和h...
赞
踩
article
recovery
/
removal
time
_
dc综合的
recovery
removal
time
...
recovery
time
∶ 撤销复位时,复位信号在下个时钟沿到来之前变无效的最短时间
removal
time
∶ 撤销...
赞
踩
article
复位的
recovery
time
和
removal
time
...
复位的
recovery
time
和
removal
time
_
removal
time
removal
time
...
赞
踩
article
recovery
time
和removal
time
...
在同步电路中,输入数据需要与时钟满足setup
time
和hold
time
才能进行数据的正常传输,防止亚稳态。同样的道...
赞
踩
article
【
Python
】有关时间的模块(
time
、date
time
)_
time
函数
python
...
Python
的
time
模块提供了处理时间的
函数
。_
time
函数
python
time
函数
python
...
赞
踩
article
时间序列数据机器
学习
(ICML 2022)_trans
for
mer-
attentional
copu...
这样做是因为时间序列数据通常来自工业或医疗领域,这些领域的专家通常可以从领域专家那里获得专家特征,而时间序列数据的转换通...
赞
踩
article
大数据
分析
笔记 (7) -
时间
序列
分析
(Time Series Analysis)_station...
大数据
分析
笔记 -
时间
序列
分析
总览Box-Jenkins方法ARIMA (自回归求和移动平均模型)自相关函数 (ACF...
赞
踩
article
python爬虫——
lxml
的使用_
import
requests
from
lxml
import
...
本文介绍了使用Python的
lxml
库进行网页爬取,以爬取豆瓣电影Top250为例,分享了User-Agent获取、XP...
赞
踩
article
理解
计算机
总线
:
real
bus
和simulateed
bus
...
在
计算机
系统和架构中,
总线
是数据传输的基石,连接着处理器、内存和各种外围设备。"
real
bus
" 和 "simulat...
赞
踩
article
prometheus存储_
storage
.
tsdb
.
retention
.
time
...
storage
.
tsdb
.
retention
.
time
=STORAGE.TSDB.RETENTION.TIME=1y 默...
赞
踩
相关标签
leetcode
算法
职场和发展
数组结构
python
优先级队列
数据结构与算法
c/c++
stm32
人工智能
论文阅读
计算摄影
fpga开发
学习
SOC设计
其他
触发器
fpga
asic
IC
硬件工程
经验分享
机器学习