1.2 端到端算法优势
category
type
status
slug
date
summary
tags
password
icon
本节将介绍传统方案和端到端方案的差异和优缺点.
1.2.1 传统方案
1.2.1.1 结构
传统的自动驾驶方案由串联部署的独立子模块组成, 主要包括感知, 预测, 决策规划, 控制等组成. 各个子模块相互之间基本完全独立, 分工明确.
感知负责基于传感器数据提取出交通参与者, 红绿灯等场景信息, 预测在感知的基础上预测交通参与者的未来动作, 决策规划综合上游信息输出自车未来轨迹, 控制模块控制车辆油门,刹车和方向盘, 跟踪规划模块输出的轨迹.
1.2.1.2 优缺点
- 优点
传统方案按功能划分各个子模块并相互串联的结构, 具有很强的可解释性. 模块之间独立运作, 对于归属性较强的问题, 比如误检测目标一定是感知模块的问题 ,非常容易调试和提升.
这样的设计也决定了下游会为上游设计规则适当兜底, 保证整个系统的输出有安全底线. 因此传统方案有相对较高的下限.
- 缺点
传统方案中, 每一个模块都依赖前置模块的输出信息, 会放大传递过程中的信息损失. 比如感知模块误识别了一个不存在的障碍物, 下游几乎没有办法判断这个障碍物是否真实存在, 结果就会导致错误的行为.
为了解决这个问题, 感知可以只输出高可信度的结果. 但是过于保守的策略, 会导致真实存在的障碍物被剔除掉, 同样会导致危险. 这种模块化设计导致的误差累计, 在传统方案中很难避免.
另外传统方案的规则设计, 需要尽可能的覆盖所有的场景. 不断的添加规则: 一方面导致庞大的规则库难以维护, 另一方面规则之间也容易相互矛盾.
总有一些Corner-Case规则库很难覆盖到, 导致传统方案在达到瓶颈以后难以继续提升.
另外, 传统方案的模块之间, 存在通信延迟和重复计算, 这些会导致系统效率降低.
1.2.2 端到端方案
1.2.2.1 结构
自动驾驶的端到端方案, 输入输出一般如下:
- 输入:传感器信息(雷达点云, 图像视频等)
- 输出:轨迹或者油门刹车量
目前端到端方案的输出以轨迹为主, 一方面传统控制方案相对稳定成熟, 已经可以很好的实现轨迹跟踪; 另一方面目前直接输出控制量的网络效果不佳.
端到端网络内部可以分成多个子模块网络, 这些子网络之间也是通过神经网络链接. 每个子网络承担与传统模块类似的功能, 这样具有更强的可解释性. 理论上即使是下游的子网络, 比如planning, 也能够获取原始的输入信息, 不会存在传统方案的误差累计问题.
1.2.2.2 优缺点
- 优点
端到端方案可以完美解决模块化设计带来的信息传递损失问题, 它把所有的中间过程完整的囊括在一个神经网络中, 实现了信息无损传递和完整的梯度回传.
这样不仅仅避免了子模块之间的通信时延, 也可以提升整体训练效率. 整个网络, 包括内部的子网络都会在训练中朝着目标不断优化.
对于Corner-Case, 端到端神经网络也不必像传统方案一样不停的添加规则. 神经网络可以自我学习和进化, 不过目前基于模仿学习的端到端方案仍然不好解决Corner-Case等问题. 可以通过引入强化学习处理, 也可以寄希望于传统规划方案兜底.
- 缺点
相对于传统方案, 端到端方案的可解释性仍然较差, 同时神经网络输出的下限很难保证. 恰恰自动驾驶又是一个极其注重安全性的系统, 整体的鲁棒性和安全性必须得到保障.
这也是为什么自动驾驶行业发展了这么多年, 至今决策规划还没有被网络大规模替换. 不过小鹏在CVPR 2023的演讲表示, 在达到足够的训练量之前, 端到端方案的效果还很难与传统方案匹敌. 不过随着持续投入, 端到端会很快突破传统方案的瓶颈, 并达到更高水平.
因此现阶段的端到端方案, 或者说基于网络的规划方案, 仍然需要传统决策规划方案为其兜底.
上一篇
动手学控制理论
下一篇
端到端-理论与实战视频课程
Loading...