轨迹规划分为不同层次:导航规划、行为规划、动作规划。这里一一展开简单来说。

1.导航规划

       A*算法一直是一个经典高效的离散空间路径搜索算法,这里导航规划我们就直接等同于A*算法来讲解。

2.行为规划

依据全局导航路线信息,根据当前交通场景和环境感知的信息,加上自身当前驾驶状态,在交通规则的约束和驾驶经验的指导下规划出合理的驾驶行为。

这是决策层最核心的部分,做出正确的行为规划,是无人驾驶的最高目标!俗称“聪明的大脑”!目前在没有一个“最佳解决方案”,普遍认可和采用的方法是分层有限状态机,最近也有用基于马尔可夫决策的模型。

行为决策层需要解决的问题如下:

a. 所有的路由寻径结果:比如无人车为了达到目的地,需要进入的车道是什么(Target Lane)。

b. 无人车的当前自身状态:车的位置速度朝向,以及当前主车所在的车道。

c. 无人车的历史信息:在上一个行为决策周期,无人车所做出的决策是什么?是跟车,停车,转弯或者是换道?

d. 无人车周边的障碍物信息:无人车周边一定距离范围内的所有障碍物信息。例如周边的车辆所在的车道,邻近的路口有哪些车辆,它们的速度位置如何?以及在一个较短的时间内它们的意图和预测的轨迹。周边是否有自行车或者行人,以及他们的位置速度轨迹等。

e. 无人车周边的交通标识信息:一定范围内的Lane的变化情况。比如路由寻径的结果是在Lane1的纵向位移10m处换道进入对应的相邻Lane2的纵向位移20m处,那么Lane1的合法的纵向位移换道空间是多大?比如从一个直行Lane行驶结束,需要进入下一个左转Lane,两条Lane的交界处是否有红绿灯或者人行道?

f. 当地的交通规则:例如道路限速,是否可以红灯右拐等等。

3.

        轨迹规划是自动驾驶技术中最重要的部分,之前的文章有一些这方面的介绍,但是并不全面和系统:

       初探轨迹规划:主要从  带约束的多项式拟合;贝赛尔曲线;三次样条差值;等角度介绍轨迹规划。
       动态避障规划:主要从 周围车辆预测;轨迹初始化;避障优化轨迹 等角度介绍轨迹规划。

        然而这些文章不够全面和系统,不免产生盲人摸象的感觉,这里结合百度Apollo和pony.ai较为系统和全面的介绍次轨迹规划。

        轨迹规划本质上来说是一个优化问题。谈到优化问题,我们需要知道优化的约束和优化的目标。

        首先看约束,

        第一个约束就是车辆要遵守交规,这是强制性的约束;

        第二个约束是要避免碰撞;

        第三个约束是要使规划的轨迹在控制上可实现,不能出现规划了一个急弯的轨迹,车根本拐不过来的状况。

        而优化的目标总的来说就是要跟人开的像,具体表现就是让人乘坐起来感到舒适。但像人也有不同的优化目标,比如我们可以开的稳一点也可以开的急一点,像老司机一点。

3. 规划

正是因为轨迹规划是非凸的,所以我们需要用决策的模块来解决。什么是决策呢?从数学上来讲,决策就是限定非凸问题的解空间,将问题转化为凸的。我们可以看下图的例子,如果两个人在穿马路的话,我们大体上可以有四种不同的决策,既让两个人,超两个人,让一超一和超一让一。而一旦决策确定,那么其实就可转换为凸的问题,求解就会相对来说比较容易。决策也会使解更加稳定,因为一个单纯的数值优化问题的求解,会很难保证每一帧的解是相对稳定的,不会出现第一帧要让,而第二帧却要冲的问题。但需要注意决策的问题是一个NP-hard 问题。有一些需要决策的场景,比如抢行还是让行,是否要冲黄灯,在哪两辆车之间变道、并线,是否要主动变道,是从左还是右绕行前方障碍物,只有做了决策才能使问题变为凸优化问题,便于求解。

        对于凸问题,有很多比较快速的算法进行计算了。线性规划,二次规划,序列二次规划,都是数值求解优化问题的方式。我们可以看一下二次规划中,如果Q正定,二次规划就是凸的问题,有很快的方式求解它。

下边就是看如何把自动驾驶中的问题转化为优化问题。

动态避障规划

动态避障规划是接上回,导航规划和行为规划之后,动态避障规划是以上方面的具体实现,直接输出的是车辆行驶轨迹,如何合理的输出轨迹是自动驾驶的关键。

本文分为以下三个方面来实现:周围车辆预测,轨迹初始化,避障优化轨迹。

(5条消息) 轨迹规划综述_旅途者0107的博客-CSDN博客_轨迹规划

(49条消息) 自动驾驶(十五)---------再论轨迹规划_一实相印的博客-CSDN博客_分层有限状态机

(49条消息) 自动驾驶(十六)---------动态避障规划_一实相印的博客-CSDN博客_动态避障

(49条消息) 自动驾驶(五十四)---------三顾轨迹规划_一实相印的博客-CSDN博客

(49条消息) 自动驾驶(五十五)---------四解轨迹规划_一实相印的博客-CSDN博客_四阶轨迹规划

(49条消息) 自动驾驶(八十三)---------Apollo之规划模块_一实相印的博客-CSDN博客_apollo 路径规划模块类图

Apollo项目::轨迹规划综述::导航规划、行为规划、动作规划相关推荐

  1. 基于Frenet优化轨迹的⾃动驾驶动作规划⽅法

    来源丨 深蓝AI 点击进入->3D视觉工坊学习交流群 动作规划(Motion Control)在⾃动驾驶汽⻋规划模块的最底层,它负责根据当前配置和⽬标配置⽣成⼀序列的动作,本⽂介绍⼀种基于Fre ...

  2. 仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,导航等)

    本文是由奇虎360公司高磊关于使用百度地图仿摩拜单车APP,原文地址:http://blog.csdn.net/gaolei1201/article/details/60876811 最近共享单车很火 ...

  3. Android百度地图实例详解之仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,导航等)

    Android百度地图实例详解之仿摩拜单车APP(包括附近车辆.规划路径.行驶距离.行驶轨迹记录,导航等) 标签: android百度地图行驶轨迹记录共享单车行驶距离和时间 2017-03-08 20 ...

  4. 百度无人驾驶apollo项目路径规划a*算法分析

    百度无人驾驶apollo项目路径规划a*算法分析 车辆路径规划寻路算法有很多,apollo路径规划模块使用的是启发式搜索算法A*寻路算法 a*算法是一种在路网上中求解最短路径的直接搜索寻路算法,原理是 ...

  5. Apollo项目导航模式下的坐标转换研究

    严正声明:本文系作者davidhopper原创,未经许可,不得转载.  Apollo项目导航模式下,规划模块输出的轨迹点使用FLU车身坐标系(见我的另一篇博客<Apollo项目坐标系研究> ...

  6. 自动驾驶车辆运动规划综述-2015

    0.摘要 智能车辆已经提高了其在受控环境下实现高度.甚至完全自动驾驶的能力.使用车载传感器和通信网络系统(即基础设施和其它车辆)接收场景信息.考虑到可用的信息,不同的运动规划和控制技术已经被实现用于复 ...

  7. 综述:城市道路自动驾驶车辆规划与控制技术

    作者 | 深蓝学院  编辑 | 深蓝AI 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 点击进入→自动驾驶之心[规划控制]技术交流群 后台回复[规划控制综述 ...

  8. 无人驾驶汽车系统入门——基于Frenet优化轨迹的无人车动作规划方法

    作者简介:申泽邦(Adam Shan),兰州大学在读硕士研究生,主攻无人驾驶,深度学习: 动作规划动作在无人车规划模块的最底层,它负责根据当前配置和目标配置生成一序列的动作.本文介绍一种基于Frene ...

  9. 机器人运动学轨迹规划(三)----S型曲线规划算法

    写在前面:机器人运动学轨迹规划(二)里介绍了T型曲线规划算法,本文主要介绍S型速度曲线算法.同T型速度曲线相比,S形曲线更加平滑,避免了T形曲线在速度拐点引起的电机和drive train的冲击,但是 ...

最新文章

  1. ubuntu 修改root密码
  2. SAP中各种分摊分配方法
  3. 03_TortoiseGit冲突和补丁演示,补丁冲突
  4. [蓝桥杯]基础练习 回文数
  5. 【论文解读】VDN( Variational Denoising Network )变分去噪网络
  6. Google检索技巧大全
  7. Python模块configparser:加载配置文件config.ini
  8. C# 打印调试信息到DebugView
  9. SAP MM模块常用表总结
  10. 「美团 CodeM 初赛 Round B」送外卖2
  11. [附源码]Python计算机毕业设计Django企业售后服务管理系统
  12. 低功耗设计及其UPF实现第一节
  13. UnityHub快速下载国际版方法
  14. 风速与风力等级关系 Python
  15. D3D9 创建多屏的全屏程序
  16. 北斗三号频点_支持北斗三号全信号体制
  17. 自己尝试使用JSP实现医院病历管理系统
  18. img标签的alt属性简单介绍
  19. 实现一个函数,可统计任一整数中某个位数出现的次数
  20. Whatsapp CEO也是辍学生

热门文章

  1. vmware tools for linux 安装
  2. 常用移动应用 Packagename 和 URL Scheme
  3. 计算机在英语口语教学中的应用,计算机在英语口语与听力教学中的应用.doc
  4. Ubuntu - 安装字体(Source Code Pro)
  5. 为什么海归金融就业这么难?
  6. 达内C语言学习(day03)
  7. 关于BUCK降压的一些学习笔记3-->最简单的BUCK电路
  8. 开关稳压器详解(二)-Buck降压型开关稳压器基本原理
  9. matlab中的图像膨胀和腐蚀函数
  10. 基于javaweb+mysql的+JPA旅行网站旅游管理系统(前台、后台)