0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析Apollo 2.5限定场景低成本技术方案

ml8z_IV_Technol 来源:未知 作者:胡薇 2018-07-19 09:56 次阅读

百度Apollo自动驾驶线下公开课于6月23日在上海举行,来自Apollo团队的资深架构师-朱帆老师对Apollo 2.5自动驾驶规划控制系统进行了详细介绍。

丨技术难点

规划模块所面临的技术难点有三点。

第一,车辆所处的环境复杂度高。因此传感器检测返回的数据复杂,障碍物个数种类多;路况信息复杂,在高速上一秒钟车辆能跑出30米,情况瞬息万变。

第二,系统对规划模块的要求高。规划模块需要覆盖所有的ADAS场景,对模块计算的实时性和稳定性有着很高的要求。

第三,这是一个全新的未知领域,能够从外界获得的信息有限。虽然有过去长期的积累,但是依然有多重难题需要解决。

丨整体思路

下面来看一下规划模块是如何实现的。

想象一个人在开车,要从A点开到B点;他有多种方式可以完成这一任务,但是不同的方式,成本是不一样的。

那么如何去找一个成本最低的规划曲线呢?开发者面临的是一个三维空间中的优化问题,包括路面的二维平面,也包括时间维度。这是一个N立方难度的问题,Apollo 2.5的解决方法是,把这个N立方级别的问题,分拆成两个N平方级别的问题。也就是在x-y维度上求解,进行路径规划;在路径规划的基础上,以规划出来的路径为s轴,在s-t维度上进行速度规划。

这种降低维度,以退为进的方法,是对规划模块认识上的一个飞跃。通过放弃最优解的追求转而追求较优解,换来系统运算速度、稳定性的极大提高,同时满足无人驾驶系统的整体需求。这一点可以类比机器学习中SGD的思路,放弃对精确梯度方向的寻找,转而寻找近似梯度的方向,从而换来学习速率上的提升。

丨整体架构

规划模块的架构从整体上来说,可以分为两个部分:一部分负责对数据的监听、获取和预处理;另一部分负责管理各个优化模块。数据进入后,对其综合处理为规划模块的内部数据结构,由任务管理器调度合适的优化器进行各个优化任务。综合优化的结果,经过最终的验证后,输出给控制模块。

在设计上,实现了策略的可插拔,使得各个优化器可以灵活配置不同策略,提升迭代效率。

相对于Apollo 2.0,规划模块在延续了其架构上统一、灵活、快捷的优点上,在保持已开发算法持续更新优化的同时,又新增了局部坐标系以及一种新的速度和路径同时优化的Lattice planner。

丨规划器

Apollo的规划模块目前有三种类型的规划器:

Apollo 1.0中开始开放的RTK,也就是循迹Planner;Apollo 1.5中开始开放的EM Planner,也就是基于动态规划Dynamic Programming和二次规划Quadratic Programming的路径规划器与速度规划器;以及Apollo 2.5中开始开放的Lattice Planner,一种路径和速度同时规划的规划器。

丨RTK Planner

RTK Planner是规划预先设置的轨迹,为循即算法使用。

丨EM Planner

EM Planner可以通过动态规划进行路径和速度规划。比如说,路径规划会在范围内进行机动撒点,离散化解空间进行求解。

要想合理的选择采样点,首先应该直观的感受一下车辆和道路。以最常用的林肯MKZ 2016款车款为例,此车宽度2米1,那么假设道路宽度为3.5米,在当前道路行驶的时候就留下了一共1.4米左右的机动范围。

比如说,采样器在垂直于Lane的方向选择5个点,这种选法每两个点间隔0.35米,对于车辆调节来说是合适的;而在沿着道路方向,点的选取不需要特别密集,过于密集的选择白白浪费了计算资源,并且在下一步使用光滑曲线连接点的时候,造成求解的不稳定。所以,往往会根据当前的车速和路况进行选择,比如每隔15-20米选一组点,共选择4-5组。这样选点,结合了车辆与道路的特点,并且所有参数是可以配置的,具有高度的灵活性。

撒点后,通过Cost Function一层一层的进行动态规划,从而对问题进行了有效的简化。然后再通过平滑的曲线连接各层采样点得到最终的路径。其优势是明显的:

灵活性:采样点从左到右覆盖了整个可行区间,避免陷入局部最优

可靠性:其利用Cost Function 避免无解

可拓展:低速到高速全覆盖

EM Planner中的速度规划,也可以采用和路径规划相似的方法。对解空间进行离散化以后,然后通过动态规划进行求解。从图中可以看到,在将与主车轨迹有重叠的障碍物映射到ST图以后,速度规划可以通过加速减速匀速等操作,从ST图中搜索到一条可通行区间并生成速度规划。从最后生成出来的图里面,可以解读出来相对于每一个障碍物的纵向决策。

比如说,需要避让或者跟随一个障碍物,车辆就从障碍物ST图中下方通过如果需要超越一个障碍物,那么在ST中车辆就从其上方通过。

丨Lattice Planner

接下来看一下Apollo 2.5中开放的新算法Lattice Planner。

Lattice Planner和EM Planner在设计上最大的区别在于,Lattice是横向纵向综合求解的,而EM是分开求解的。Lattice Planner源于斯坦福大学参加DARPA无人驾驶大赛的规划算法,Apollo 2.5吸收了其精华,并针对原有算法进行了改进和升级。

和EM planner一样,Lattice Planner也将轨迹规划问题分解成横向和纵向两个1维空间的独立的轨迹规划问题, 降低规划难度。横向仍然是SL问题,也就是Station Lateral,纵向上也还是ST,也就是Station Time问题。

Lattice Planner会根据起点和终点的状态,在位置空间和时间上同时进行撒点。撒点的起始状态和终止状态各有6个参数,包括了3个横向参数,即横向位置、横向位置的导数也就是Heading、Heading的导数;3个纵向参数,即纵向位置、纵向位置的一阶导数也就是速度、纵向位置的二阶导数(也就是加速度)。

起点的参数是车辆当时真实的状态,或者Stitch的状态来进行设计,终止状态则是撒点枚举的各个情况。在确定了终点和起点状态以后,再通过五阶或者四阶的多项式连接起始状态和终止状态,从而得到规划的横向和纵向轨迹。

这个步骤是Lattice算法的精髓所在,它直接决定了算法的效率以及解空间。举个例子来说,在撒点的时候可以的加入车辆物理动力学性能的约束,同时根据障碍物进行可行域的预筛选等,有效的裁剪无效空间,从而达到更优的性能。

在生成所有横向和纵向的一维轨迹以后,将其排列组合起来,合成大量的二维轨迹,然后根据损失函数筛选出最好的合成轨迹。和EM Planner类似,Lattice Planner的损失函数也可以分为,安全相关、体感相关以及目标完成度相关三类。

下面来看一下Lattice Planner在模拟器中的效果。

Lattice Planner在Apollo模拟器Azure中场景通过率达到了100%。

丨Planner 对比

Lattice Planner的优点是很明显的,同时产生轨迹的几何形状与速度分配,直接考虑到车辆的动力学状态,尤其是横向动力学状态,产生更适合高速运动的轨迹,简单可靠,参数少于10个。它利用了撒点算法避免了轨迹陷入局部最优,性能也非常的优秀,生成超过1000轨迹,轨迹的生成加上选择,用时少于100ms,确保了能做到10赫兹的Planning规划。

丨Planner 轨迹后处理

在轨迹生成以后,往往还可以通过一些后处理,对轨迹进行平滑和验证。可以通过几何的算法或者更加高粒度的采样,对于生成轨迹每个点,进行额外的碰撞检查。也可以同时验证规划的轨迹是否符合车辆的物理学动力特性,比如看其是否有超过车辆加减速度上下界限,以及转弯半径界限的时候。

丨回退保障机制

秉着安全第一的原则,Apollo 2.5同时提供冗余机制以保证整个系统的稳定性。车辆在路上行驶的过程中,遇到的情况千差万别,如果真的遇到了无论是人工驾驶还是机器驾驶都无法解决的特殊恶劣情况,如何保证Planning不会崩溃,并且输出一条相对最安全的轨迹,以保证生命和财产的安全,就显得尤其的重要了。

因此,无论是使用DP还是QP的EM planner,还是同时进行速度和路径优化的Lattice Planner,Apollo 2.5针对路径规划和速度规划都加入了后备规划。在正常的逻辑并不能在给定假设情况下计算出一条合理的路径的时候,针对当时的情况,对车辆进行合理的减速最后停车,以确保安全。

丨高效的测试与迭代

如何帮助大家进行能够高效的迭代也是Apollo所关心的一个重要问题。因此,Apollo的Planning有一套推荐的测试迭代流程。即单元测试,单周期的集成测试,模拟器测试,最后再实车测试的流程。让开发者可以在开发迭代的过程中,随时进行回归,保证开发的质量以及效率。

丨坐标系

Apollo 2.5又为大家打开了另外一扇窗--相对坐标系。此前的绝对坐标系是以世界为背景的一种全局定位,世界上每一个点,都会有一个相应的唯一的坐标。它的好处很明显,因为是全局唯一,所以说表达一个物体的真实位置的时候非常的容易,做多时刻位置对齐的时候也会比较的容易。

车身相对坐标系也是一种常见的坐标系,它是以车辆自身位置坐标原点,以车辆的朝向为x,车辆左方为y的坐标系。其优点也是非常明显的,可以去除开发者们对于地图定位的强依赖,反馈的数值也更加的直观方便开发者的理解。

丨相对坐标系

助力于相对坐标系这个新feature,在Apollo 2.5中同时推出了L3的高速方案。也就是基于车道线的感知方案和不基于地图和定位的规划方案。可以理解成为是类似于Tesla Autopilot或者Mobileye的方案,利用相对坐标系下的车道线代替全局坐标系的地图与定位,进行L3级别的自动驾驶功能。

就像John Kennedy说的:“We choose to go to the moon in this decade and do the other things,not because they are easy,but because they are hard.”

这是Apollo的口号,也是一直以来的信念。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动驾驶
    +关注

    关注

    784

    文章

    13787

    浏览量

    166405
  • Apollo
    +关注

    关注

    5

    文章

    342

    浏览量

    18445

原文标题:百度资深架构师:Apollo 2.5自动驾驶规划控制

文章出处:【微信号:IV_Technology,微信公众号:智车科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    华为成功验证5G高精度低成本定位技术

    近日,华为宣布在11月成功完成了5G蜂窝高精度低成本定位的关键技术验证。此次验证基于Sub6G 5G UL-TDOA(上行时差定位)增强测量技术方案,实现了在室分普通
    的头像 发表于 12-13 14:17 285次阅读

    低成本解决方案,RK3506的应用场景分析!

    RK3506 是瑞芯微推出的MPU产品,芯片制程为22nm,定位于轻量级、低成本解决方案。该MPU具有低功耗、外设接口丰富、实时性高的特点,适合用多种工商业场景。本文将基于RK3506的设计特点,为大家分析其应用
    的头像 发表于 12-11 15:26 313次阅读
    <b class='flag-5'>低成本</b>解决<b class='flag-5'>方案</b>,RK3506的应用<b class='flag-5'>场景</b>分析!

    百度Apollo开放平台10.0正式发布

    12月4日,百度正式发布Apollo开放平台的全新升级版本——Apollo开放平台10.0,基于自动驾驶大模型ADFM设计重构算法,助力全球开发者和企业以更低成本、更高性能、更安全的技术
    的头像 发表于 12-04 16:20 328次阅读

    香蕉派开源社区与矽昌通信共推BPI-Wifi5 低成本路由器开源方案

    香蕉派开源社区与矽昌通信共推BPI-Wifi5 低成本路由器[]() 香蕉派 BPI-Wifi5 路由器采用矽昌SF19A2890S2芯片方案设计。它是一款高性能无线路由器,适用于小微企业、家庭
    发表于 11-28 10:37

    使用TPS54308设计简单且低成本的Flybuck解决方案

    电子发烧友网站提供《使用TPS54308设计简单且低成本的Flybuck解决方案.pdf》资料免费下载
    发表于 10-15 11:30 0次下载
    使用TPS54308设计简单且<b class='flag-5'>低成本</b>的Flybuck解决<b class='flag-5'>方案</b>

    具有TPS61085的低成本1W隔离电源解决方案

    电子发烧友网站提供《具有TPS61085的低成本1W隔离电源解决方案.pdf》资料免费下载
    发表于 10-10 11:02 0次下载
    具有TPS61085的<b class='flag-5'>低成本</b>1W隔离电源解决<b class='flag-5'>方案</b>

    基于TPS61094的长寿命、低成本智能电表解决方案

    电子发烧友网站提供《基于TPS61094的长寿命、低成本智能电表解决方案.pdf》资料免费下载
    发表于 09-24 10:47 2次下载
    基于TPS61094的长寿命、<b class='flag-5'>低成本</b>智能电表解决<b class='flag-5'>方案</b>

    MS3010:单通道低压DC电机驱动与低成本的完美结合

    走进这个神奇的方案,探索它是如何实现单通道低压 DC 电机驱动与低成本的完美结合。 MS3010 直流无刷驱动方案的出现,并非偶然。随着市场对于高效、节能、低成本的电机驱动需求不断增长
    的头像 发表于 09-10 17:51 404次阅读

    使用TPS62933F设计简单且低成本的防蝇解决方案

    电子发烧友网站提供《使用TPS62933F设计简单且低成本的防蝇解决方案.pdf》资料免费下载
    发表于 09-10 10:45 0次下载
    使用TPS62933F设计简单且<b class='flag-5'>低成本</b>的防蝇解决<b class='flag-5'>方案</b>

    应用COT与Flybuck技术低成本小功率辅助电源解决方案

    电子发烧友网站提供《应用COT与Flybuck技术低成本小功率辅助电源解决方案.pdf》资料免费下载
    发表于 08-30 11:33 0次下载
    应用COT与Flybuck<b class='flag-5'>技术</b>的<b class='flag-5'>低成本</b>小功率辅助电源解决<b class='flag-5'>方案</b>

    CC2340系统降低成本方案剖析

    电子发烧友网站提供《CC2340系统降低成本方案剖析.pdf》资料免费下载
    发表于 08-27 09:43 0次下载
    CC2340系统降<b class='flag-5'>低成本</b>的<b class='flag-5'>方案</b>剖析

    RISC-V在中国的发展机遇有哪些场景

    : 1. 物联网(IoT) 市场需求:随着物联网技术的快速发展,对低功耗、高性能、低成本的处理器需求日益增长。RISC-V因其指令集精简、易于扩展的特点,非常适合物联网设备的需求。 中国优势:中国是全球物
    发表于 07-29 17:14

    中科蓝讯AB5607E蓝牙5.4 低成本带插卡带U盘音箱方案

    中科蓝讯AB5607E蓝牙5.4 低成本带插卡带U盘音箱方案,我们已有成熟的方案,用户可以免开发(零代码)快速完成带插卡带U盘蓝牙音箱,提供原理图,PCB Layout指导。
    的头像 发表于 06-19 14:25 1009次阅读
    中科蓝讯AB5607E蓝牙5.4 <b class='flag-5'>低成本</b>带插卡带U盘音箱<b class='flag-5'>方案</b>

    光伏户用如何做到低成本获客?

    光伏户用如何做到低成本获客? 随着可再生能源的日益普及和技术的不断进步,光伏系统正逐渐走进千家万户。然而,对于光伏企业来说,如何在激烈的市场竞争中低成本地获取客户,成为了他们面临的一大挑战。本文将
    发表于 02-27 10:33

    企业组网如何兼顾低成本与高性能?

    在数字化浪潮席卷全球的今天,企业的网络需求变得愈加复杂和多样化。面对激烈的市场竞争,企业不得不寻求一种既能降低成本又能保证高性能的网络解决方案。传统组网方式虽然稳定可靠,但昂贵的硬件投入和升级成本
    的头像 发表于 02-26 14:59 389次阅读