0、摘要
提出了一种新颖的时空语义走廊( spatio-temporal semantic corridor , SSC)
开源代码:https://github.com/HKUST-Aerial-Robotics/spatiotemporal_semantic_corridor
Safe Trajectory Generation for Complex Urban Environments Using Spatio-Temporal Semantic Corridor_2019
1、介绍
优化方法和状态晶格方法很难保证采样点间的路径的安全性。故提出一个独特的基于时空语义走廊的结构。提出了一种简历时空走廊的方式从而将运动学约束联系起来。有了这个时空晶格,轨迹生成的问题就变成了一个二次规划的问题。使用贝塞尔曲线的。主要的贡献如下:
1、为复杂城市环境中各种语义元素提供统一表示的SSC结构。
2、基于优化的轨迹生成公式,确保生成的整个轨迹的安全性和可行性。
3、一个完整的、开源的轨迹生成框架及其在多智能体城市仿真平台上的实时实现。通过综合实验和比较,验证了该方法的有效性。
2、相关的工作
2.1 时空方法的自动驾驶运动规划
Ziegler:使用时空多样性采样状态晶格,然后搜索出一条路。
Mcaughton:时空晶格让轨迹符合车道的几何形状以及GPU算法。
Wolf:使用语义分割计算cost,但容易陷入局部最优,而且数值优化时语义元素很难界定其重要性。
2.2 自动驾驶车辆的走廊生成
Zhu:空间凸包; Erlien、空间—+动力学约束。都难以处理动态的障碍。Liu:轨迹周围的具有动力学约束的凸集,加速了轨迹优化。
3、系统梗概
图二:
系统分为感知、预测、决策和运动规划四个部分,本文的运动规划可以与多种决策方法相联系。
需要了解的信息:一个语义地图、一条路径、前向模拟状态、道路信息的参考路线。
4、决策方法
这篇文章主要使用MPDM来进行决策,同时保留更多的可能,认为其他车辆有着相似的决策方式。
5、时空走廊的生成
5.1 语义元素和Frent坐标系的阐释
坐标系使用的是Frent坐标系,这带来了很多好处。
语义元素分为了类西域障碍的元素以及类似于约束的元素。除此之外有些元素带有时间玉树。在进行Corridor划分的时候,我们将交通规则这样的硬约束与诸如变道这样的软约束分开。
5.2 语义走廊的生成
由于前向模拟的状态是离散的,环境复杂性和种子分辨率直接决定了走廊的实用性。生成种子->膨胀生成走廊->在走廊中施加约束->将Cube放宽
STEP1: 种子生成:通过前向模拟状态的方式生成种子,
STEP2:走廊膨胀,遍历所有的种子
STEP3:在走廊里面确定约束
STEP4:通过走廊限制的放松获取到最终的轨迹
STEP2-1:从第二个种子开始遍历所有的种子,并且放弃掉已经被上一个Cube包含的种子。
STEP2-2:使用这个种子与上一个种子作为一个立方体的顶点,生成一个初始化的Cube(上一个种子总是会在一个Cube里面,或者是初始的种子)。
STEP2-3:如果这个初始的Cube不是free的,直接跳出。然后对这个Cube从多个方向进行扩张,直到触碰到了边界或者语义分割的限制。
STEP2-4: 然后解除语义分割区域的限制,进行下一次膨胀。,这样就生成了一条轨迹的参考走廊。
6、具有安全性以及可靠性保障的轨迹生成
本文首先指明了基于多项式曲线的轨迹规划容易出现安全性问题(在采样点之间容易遇到障碍),所以这个保障是贝塞尔曲线。
6-1 贝塞尔曲线的特质
- 贝塞尔曲线的定义
- 凸包性质:生成的曲线一定在贝塞尔曲线的控制点形成的凸包之内,从而保证了可行性。(见图5)
- 速度曲线性质:进行求导之后依然可以使用贝塞尔曲线进行表示
6-2 分段贝塞尔曲线的表示
6-3 施加约束(安全性约束以及运动学约束)
这里主要通过利用贝塞尔曲线导数的性质来计算导数进行速度等约束的施加。
- 目标状态的约束,设定了初始的状态以及末尾的状态。
- 连续性约束:连接点处的3阶导数以内相同。
- 安全性约束(Free-Space Contraints):确保无碰撞
- 运动学约束:限制速度和加速度。形成了sufficient contraints
如此,将问题转化成了一个二次规划问题。
7、实验
7-1 实验平台:
7-2 实验场景 这么几个场景能够50ms一次没什么问题:由于道路建设导致交通拥堵、在城市高速公路上超车、在十字路口无保护的左转
7-3 特质:
混乱环境中的碰撞避免:使用的这种方式可以让车走的更快 - 由于SSC可以连续地模拟解空间,所以会比基本的基线法更好解出相应的解。
高速进入后的精确停车:相较于基线法,这种方法显式地强化了停止边界条件,实现了精确的停止。
8、总结
提出了一个SSC结构,以统一的方式处理语义元素的任意组合。
提出了一种保证输出轨迹安全性和可行性的轨迹优化公式。
预测不确定性和交互不确定性没有得到充分的建模。
我们发现,Bézier曲线对自动驾驶汽车的非线性轨迹优化也很有用。
994、阅读总结
提出了一种能够使用时空走廊来规避周围的动态障碍和静态障碍的方式,使用贝塞尔曲线确保轨迹生成的安全性,使用成熟的二次规划生成轨迹。
文中主要是讨论时空内的空间走廊中的道路的生成问题,也提及了一种合理的搭建方式。
文中的方法中,有几次限制了车辆的解空间,语义分割区域、走廊本身、以及贝塞尔曲线的方式,在文中只提及了一句:“Although Eq. (6) is a sufficient condition, in practice we find it does not result in over-conservative behavior, as shown in Section VII.”在文章第六部分的结尾,但是依然得出的结果应当还是相对比较保守(也没有数学上的证明),不过无可厚非,因为分割可以保证快速性,后两个可以保证安全性。估计也是因为简单地限制了速度和加速度两个动力学约束条件,可能确实有些少了。
995、文章支持。
Source code is released at https://github.com/HKUST-Aerial-Robotics/spatiotemporal_semantic_corridor.
997、阅读时存在的问题
使用走廊+贝塞尔曲线的形式,将解空间大幅缩小,会不会导致出现规划的结果中速度过慢的情况。
998、 Linked Papers
[1] 规划中要考虑的东西
optimization-based [3],[4] and lattice-based [5]—[7] motion planner
[10],[14], [15],一些决策方法。
[18] 基线法
999、词语积累
accommodate v.收纳,容纳
aggregate v.合计
convenient adj. 方便的
decouple v. 解耦
domain n.范围
elaborated adj详尽的。
elastic adj.有弹性的
extensive adj. 巨大的
generalize v.概括
non-trivial adj.很重要的,非平凡的
preserve v. 保持
semantic adj.语义学的
spatio-temporal adj.时空的
topologically adv.拓扑地
unified adj.统一的
vertice n. 顶点
endl;