自动驾驶决策规划算法(开幕式)

写在前面

本人现在研1,准备入门"自动驾驶决策规划"这一方向,学习的内容来自B站up主忠厚老实的老王,故开通一个新的专栏,由此记录我的学习历程与心得,同时也欢迎大家交流学习!

一、自动驾驶级别划分

级别 功能
L0 没有任何自动驾驶功能
L1 有横向和纵向自动驾驶功能,但横纵向无法联合作用
L2 横纵向可以联合作用,但驾驶员必须对驾驶所发生的一切情况负责
L3 横纵向可以联合作用,但对部分场景驾驶员不必负责
L4 大部分道路都可以自动驾驶,大部分场景不需要驾驶员负责
L5 完全自动驾驶

划分依据两条因素:功能责任

从 L0到 L2 主要是功能区分,从 L3 到 L5 主要是责任区分,区别不在于有什么花里胡哨的功能,而是在于责任划分。

不同公司的 L2 亦有差距。若厂家宣称驾驶人负全责,即便这辆车的功能和 L4 的功能一样,但仍然是一辆 L2 的车。从简单的 L2 进化成什么都能做的 L2,最重要的模块就是决策规划算法模块

二、决策规划算法模块三大构成

1、导航规划模块

导航规划算法计算整体上从 A 到 B 的最优路径,和机器人导航、手机导航的算法基本一致,长度在几公里到几百公里不等,该算法是整个规划模块中最成熟的算法。

特点:导航算法给出粗略的、大范围的路径,但路径不考虑如何避障,也不考虑车辆动力学约束,所以规划出来的路径是不规则的折线,导航算法一般只需执行一次,只有遇到大范围的拥堵、施工、偏航情况才会再次执行。

2、行为规划模块

行为规划算法又叫决策算法,决定车辆行驶意图。对于静态障碍物,往左绕还是往右绕?对于动态障碍物是减速避让还是加速超车,决策算法决定了车辆的行驶意图,是整个规划算法中最难做的部分。

特点:给出车辆的行驶意图,指导车辆该避让还是该超车,该左转还是往右转,但++决策并不给具体的运动建议,例如左转多少度或车辆加减速到多少++。由于实际环境瞬息万变,所以决策算法需要有较高的执行频率,一般为10Hz。

决策算法也需要有一定的稳定性,不允许在周围环境比较稳定的情况下,出现**"朝令夕改"**的现象,即决策算法在环境稳定时,不允许出现决策指令的剧烈波动。除非环境发生变化,否则决策算法不允许频繁改变结果,这样会导致控制效果变得非常差。

3、运动规划算法

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

特点:运动规划生成的轨迹是整个决策规划模块最终的输出,具有详细的路径、速度信息,且执行频率与决策频率相同,都是10Hz。

运动规划也要有一定的稳定性,在环境不发生剧烈变动的情况下,运动规划的轨迹要基本一致。

三、课程体系

本系列博客将详细讲解决策算法与运动规划算法,不讲导航算法,因为导航算法相对比较成熟。

章节 内容
序章 决策规划算法概述
第一章 数学基础
第二章 Apollo EM Planner理论篇
第三章 Apollo EM Planner 代码篇
终章 决策规划算法总结
  • 第一章是必要的数学基础。
  • 第二章将详细解读 Apollo EM Planner 理论,到底是怎么解决决策规划问题的。
  • 第三章将具体的实践,写 Apollo EM Planner 程序的仿真。
  • 终章是决策规划算法的总结,具体讲 Apollo EM Planner 的优点和缺点,以及除了 Apollo EM Planner 之外的其他决策规划算法是怎么做的。
相关推荐
哥布林学者10 分钟前
高光谱成像(二)光谱角映射 SAM
机器学习·高光谱成像
中杯可乐多加冰32 分钟前
OpenClaw到底能做什么?有什么用?先装这几个实用的Skills
人工智能
千寻girling37 分钟前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
aircrushin3 小时前
从春晚看分布式实时协同算法与灵巧手工程实现
人工智能·机器人
恋猫de小郭3 小时前
Apple 的 ANE 被挖掘,AI 硬件公开,宣传的 38 TOPS 居然是"数字游戏"?
前端·人工智能·ios
银河系搭车客指南3 小时前
AI Agent 的失忆症:我是怎么给它装上"第二个大脑"的
人工智能
张拭心3 小时前
春节后,有些公司明确要求 AI 经验了
android·前端·人工智能
我的username3 小时前
极致简单的openclaw安装教程
人工智能
小锋java12344 小时前
【技术专题】嵌入模型与Chroma向量数据库 - Chroma 集合操作
人工智能
七月丶4 小时前
别再手动凑 PR 了:这个 AI Skill 会按仓库习惯自动建分支、拆提交、提 PR
人工智能·设计模式·程序员