本系列博客包括6个专栏,分别为:《自动驾驶技术概览》、《自动驾驶汽车平台技术基础》、《自动驾驶汽车定位技术》、《自动驾驶汽车环境感知》、《自动驾驶汽车决策与控制》、《自动驾驶系统设计及应用》。
此专栏是关于《自动驾驶汽车决策与控制》书籍的笔记.



2.自动驾驶汽车的规划与控制

2.1 概念与意义

  • 自动驾驶汽车作为一个复杂的软硬件结合系统,其安全、可靠地运行需要车载硬件、传感器集成、感知、预测及规划控制等多个模块的协同配合工作;
  • 规划与控制(Planning & Control)在广义上可以划分为:自动驾驶汽车路由寻径(Routing)、行为决策(Behavioral Decision)、运动规划(Motion Planning)及控制(Control)等几个部分;

2.2 路径规划

路由寻径、行为决策、运动规划三部分统称为路径规划,路径规划承接上层感知预测结果,从功能上分为:全局路径规划、局部路径规划;

2.2.1 路由寻径介绍

  • 全局路径规划对应路由寻径部分,作用可以理解为实现自动驾驶汽车软件系统内部的导航功能,即在宏观层面上指导自动驾驶汽车软件系统的规划控制模块按照什么样的道路行驶,从而实现从起点到达终点;
  • 路由寻径根据起点和终点信息,采用路径搜索算法找出一条最优(时间最短、距离最短等)路径;这种规划可以是行驶前离线的一次性进行,也可以在行驶中不断重规划;
  • 作为整体自动驾驶汽车控制规划系统的最上游模块,路由寻径模块的输出严格依赖自动驾驶汽车高精度地图(HD-Map)的绘制;在高精地图定义绘制的路网(Road Graph)的道路划分的基础上,及在一定的最优策略定义下,路由寻径模块需要解决的问题是计算出一个从起点到终点的最佳道路行驶序列;可以把自动驾驶汽车在高精度地图的Road级别寻径问题,抽象成一个在带权有向图上的最短路径搜索问题;
  • 路由寻径(Routing)模块首先基于Road级别的高精地图,在一定范围内所有可能经过的Road上进行分散"撒点",称这些点为Road Point;这些点代表了对自动驾驶汽车可能经过的Road上的位置的抽样;这些点与点之间,由带权有向的边进行连接;Road Point之间连接的权,代表自动驾驶汽车从一个点行驶到另一个点的潜在代价(Cost);在这样的带权有向图的问题抽象下,路由寻径问题常用的方法主要包括:A*算法、Dijkstra算法等;

2.2.2 行为决策介绍

  • 路由寻径模块产生的路径信息,直接被下游的行为决策模块使用;行为层面的决策包括:在道路上的正常跟车、在遇到交通灯和行人时的等待避让,以及在路况和其他汽车的交互通过等;
  • 行为决策和运动规划需要紧密协调配合,在设计实现两个模块时的一个重要基本准则是,行为决策模块的输出逻辑需要和下游的运动规划模块逻辑配合一致;
  • 运动规划模块解决的是具体的自动驾驶汽车动作(Motion)的规划问题;理解为:在一个较小的时空区域内,具体解决自动驾驶汽车从A点到B点如何行驶的问题;
  • 行为决策层面利用了所有重要的环境信息,不仅包括了自动驾驶汽车本身的当前位置、速度、朝向,及所处车道,还利用了自动驾驶汽车一定距离以内所有重要信息的与感知相关的障碍物信息;
  • 行为决策层需要解决的问题是在知晓下述信息的基础上,决定自动驾驶汽车的行驶策略;
    • 所有的路由寻径结果:如自动驾驶汽车为了到达目的地,需要进入什么车道(Target Road);
    • 自动驾驶汽车的当前自身状态:车的位置、速度、朝向,及当前主车所在的车道、按照寻径路由需要进入的下一个车道等;
    • 自动驾驶汽车的历史信息:在上一个行为决策周期,自动驾驶汽车所做出的决策是跟车、停车、转弯,还是换道等其他行为;
    • 自动驾驶汽车周边的障碍物信息:自动驾驶汽车周边一定距离范围内的所有障碍物信息;如:周围汽车所在的车道,邻近的路口有哪些汽车,它们的速度、位置如何,及在一个较短时间内它们的意图和预测的轨迹,周边是否有骑车人或行人,及他们的位置、速度、轨迹等;
    • 自动驾驶汽车周边的交通标识信息;
    • 当地的交通规则:如,道路限速、是否可以红灯右拐等;

2.2.3 运动规划介绍

  • 局部路径规划对应的运动规划模块,以汽车所在局部坐标系为准,将全局期望路径根据汽车定位信息转化到汽车坐标中表示,以此作为局部参考路径,为局部路径规划提供导向信息;
  • 局部期望路径是无人驾驶汽车未来一段时间内的期望行驶路线,因此要求路径的每一点都表示汽车状态的信息;
  • 局部期望路径理解为无人驾驶汽车未来行驶状态的集合,每个路径点的坐标和切向方向就是汽车位置和航向,路径点的曲率半径就是汽车转弯半径;
  • 局部路径规划作用是基于一定的环境地图寻找一条满足汽车运动学、动力学约束和舒适性能指标的无碰撞路径;
  • 运动规划模块问题本质:在一定约束条件下,完成某个区域或范围内时间、空间状态下的路径、速度优化,或称之为汽车在一定时间、空间内的行驶轨迹优化;
  • 行为决策模块需要感知和地图定位的输出作为输入,行为决策和运动规划模块紧密联系,在系统设计时,同样会让感知和地图定位结果接入运动规划模块;
  • 常用的路径规划算法分为:基于采样的路径规划算法及基于地图的路径搜索算法;
    • 基于采样的路径规划算法:概率图(Probabilistic Road Map,PRM)算法、快速探索随机树(Rapidly-exploring Random Tree,RRT)算法;

      • 概率图算法:使用局部规划算法建立随机状态之间的连接关系,从而抽象出概率图,对于确定的起始状态和目标状态,只需要快速地搜索概率图即可获得路径;
      • 快速探索随机树算法:由LaValle和Kuffner提出,最初专用于解决运动学约束的路径规划问题;
    • 基于地图的搜索算法:通常采用单元分解法或道路图法建立环境模型,通过搜索环境信息的环境地图获得最终路径;包括:深度优先搜索(Depth-First Search,OFS)算法、广度优先搜索(Breadth-First Search,BFS)算法、迭代加深搜索(Iterative-Deepening Search,IDS)算法、等代价搜索(Uniform Cost Search,UCS)算法、启发式搜索(Heuristic Search,HS)算法等;
      • OFS、BFS、IDS、UCS算法:使用了回溯技术实施搜索,从起始状态出发沿着树的深度,遍历树的结点,尽可能深地搜索树的分支,直至要么到达目标状态,要么到达一个搜索终点;如果发现了目标状态,则退出搜索并返回解路径;如果到达的是一个搜索终止点,则将回溯到路径上含有未搜索过的结点的临近结点,并沿着这个分支继续搜索下去;此类算法比较适合于解决环境中结点数目较少情况下的路径搜索问题,当结点数目较多时,算法搜索速度慢、效率低;
      • 启发式搜索算法:在决定结点扩展顺序的估价函数中引入启发值,即当前结点状态到目标状态之间的估计消耗,从而引导搜索朝向目标状态的方向,避免了盲目搜索,有助于提高算法的搜索效率;

2.3 自动驾驶汽车控制

  • 规划控制最下层的是自动驾驶控制模块;这是一个直接和自动驾驶汽车低层控制接口CAN-BUS对接的模块,核心任务是:消化上层运动规划模块的输出轨迹点,通过一系列结合车身属性和外界物理因素的动力学计算,转换成对汽车控制的油门、刹车,及方向盘信号,从而尽可能地控制汽车去实际执行这些轨迹点;
  • 路由寻径、行为决策、动作规划和反馈控制四个模块是自动驾驶汽车规划控制软件系统的最主要的功能模块;

学习笔记2--自动驾驶汽车的规划与控制相关推荐

  1. 书评学习笔记《自动驾驶汽车环境感知》

    随笔 我读这本书是希望能对自动驾驶感知有一个框架式的了解. 优点: 专门介绍感知的书很少,这本书填补了这一块空白.做到了对感知有一个全方位的介绍.追求更详细的感觉可以直接看论文. 编排结构合理. 成书 ...

  2. 自动驾驶汽车的规划与控制

    1. 概念与意义 自动驾驶汽车作为一个复杂的软硬件结合系统,其安全,可靠地运行需要车载硬件,传感器集成.感知.预测以及规划控制等多个模块的协同配合工作.感知预测和规划控制的紧密配合非常重要.这里的规划 ...

  3. 学习笔记1--自动驾驶汽车介绍

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  4. 清华大学车辆学院李升波|强化学习,让自动驾驶汽车自我进化,越开越好

    2022年北京智源大会自动驾驶论坛,清华大学车辆与运载学院李升波教授分享了题为<混合型强化学习及其高级别自动驾驶应用>的主题报告.该报告主要探讨了如何将强化学习应用于自动驾驶汽车的问题,目 ...

  5. 学习笔记2--自动驾驶汽车关键技术

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  6. 学习笔记1--自动驾驶汽车概念与分级

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  7. 学习笔记24--自动驾驶汽车硬件平台

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  8. 学习笔记11--自动驾驶汽车整体架构

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  9. 路径规划算法_自动驾驶汽车路径规划算法浅析

    自动驾驶汽车的路径规划算法最早源于机器人的路径规划研究,但是就工况而言却比机器人的路径规划复杂得多,自动驾驶车辆需要考虑车速.道路的附着情况.车辆最小转弯半径.外界天气环境等因素. 本文将为大家介绍四 ...

最新文章

  1. OpenCV学习笔记(3)——Scalar数据类型理解
  2. 10上wsl位置迁移_wsl的安装/升级笔记
  3. GraphPad Prism 9.0.2 for MacOS 2021最新完美版科研绘图统计软件 附安装使用教程
  4. celery异步执行任务在Django中的应用实例
  5. 5,线程池,进程池,协程,IO模型
  6. 用友uclient客户端下载手机_影院6080手机版-影院6080手机客户端下载
  7. js-Date()对象,get/setFullYear(),getDay()编程练习
  8. [Cocoa]深入浅出 Cocoa 之消息
  9. silk lobe资源公众号_微小说全免费阅读公众号阅读网资源推荐
  10. 无需第三方recovery安装xposed,亲测有效
  11. thread ‘<unnamed>‘ panicked at ‘assertion failed: `(left == right)`
  12. STM32F1基于正点原子HAL库IIC驱动SH1106芯片的OLED屏
  13. 计算机科学类专升本复习之“C语言结构体”详解(初稿)
  14. 【转】最优传输理论---(微信公总号:老顾谈几何)顾险峰
  15. 我在绑定微信账号时出现了问题,提示该微信已绑定其他账号
  16. ELSEVIER期刊论文投稿全流程实例讲解
  17. Latex Tips: 如何输入矩阵(illustrated in Jupyter Notebook)
  18. 一次服务器沦陷为肉鸡后的实战排查过程!
  19. 全球及中国3D打印产业投资价值调研及未来竞争趋势研究报告2021-2027年版
  20. Tarena - 关联查询

热门文章

  1. java面试题下载_java面试题大全 打包 下载
  2. Matlab 求纳什效率系数(NSE)
  3. Chang'an(YY's string-模拟)
  4. English语法_ 5大句型
  5. 100道题,代码菜鸟教程里都有,只是记录一些输出和自己的理解(又是等成绩焦虑到要死的一天)
  6. 好用的数据恢复软件DiskGenuis
  7. 在python中常用的输入输出语句分别是_7. 输入输出
  8. 关于安卓开发的发展前景
  9. 基于springboot和mysql的模拟驾校考试系统源码
  10. 竟有人靠抢茅台月入百万,脚本曝光,开源可用!