b站老王 自动驾驶决策规划学习记录(一)

自动驾驶决策规划

学习记录b站老王对自动驾驶规划系列的讲解,有一说一,老王真的强。因为主要学习理论部分,所以老王代码系列不作记录。
参考视频:自动驾驶决策规划算法序章 总纲与大致目录

1 自动驾驶等级详解

自动驾驶总共分成了六个等级:L0 - L5

等级 详述
L0 没有任何自动驾驶功能
L1 有横向和纵向的自动驾驶功能,但是横纵向无法联合作用
L2 横纵向可以联合作用,但是驾驶员必须对一切情况负责
L3 功能和L2基本相同,最大的区别在于责任,对于部分场景,驾驶员不必负责
L4 大部分道路皆可自动驾驶,大部分场景都不需要驾驶员负责
L5 完全自动驾驶

自动驾驶级别两条关键因素:功能、责任
L0 - L2: 主要是功能区分
L3 - L5: 主要是责任区分

L2这个概念很宽泛,自动驾驶的功能只有巡航、车道保持或者车什么都能做,但是只要驾驶员要负全责,这个车就是L2级别的自动驾驶。
决策规划算法就是普通L2到什么都能做的L2的一个重要模块。

在L4中决策规划模块是最重要,也是最复杂、最难做的模块。

2 自动驾驶规划算法

规划算法细致分有三个:

  1. 导航规划算法
    该算法就是从A点到B点规划出一条粗略的路径,该算法比较成熟,像A*,Dijstra,混合A*,不做讲解。
  2. 行为规划算法
    又叫决策算法,决定车辆行驶意图的算法,对于静态障碍物,到底是往左还是往右绕。对于动态障碍物,到底是该减速避让,还是加速超车。决策算法决定了车辆的意图,也是整个规划算法里最难做的部分。

特点:
(1)决策算法会给一个车辆的行驶意图,会指导车辆该避让,该超车,该左转还是该右转,但是决策规划算法不会给具体的运动建议,例如左转多少度,车辆加速到多少。
(2)实际环境瞬息万变,因此决策算法需要较高的执行频率,一般为10Hz。决策算法需要有一定的稳定性,不允许在周围环境出现朝令夕改的现象。前一秒下达左转意图,下一秒就右转了。

  1. 运动规划算法
    根据决策给出的行为意图在相关的时空中搜索出(或优化出)一条具有详细路径速度信息,并且满足各个约束条件的轨迹,将此轨迹发给控制模块去跟踪。此轨迹在几米到几十米不等。

特点:
运动规划生成的轨迹是决策规划模块的最终输出,具有详细的路径速度信息,执行频率与决策相同,为10Hz,同样,运动规划也要求一定的稳定性。

EM Planner是Apollo的经典决策规划算法,擅长处理复杂环境下的决策规划问题。

你可能感兴趣的:(Planning模块,自动驾驶,学习,笔记)