【论文精读】NMP: End-to-end Interpretable Neural Motion Planner

@toc<>

1 背景信息

团队:Uber,多伦大大学

年份:2019

论文链接:https://arxiv.org/abs/2101.06679

2 Motivation

深度学习方案受限于累积误差suffers from the compounding error,而且可解释性差interpretability is difficult to obtain for analyzing the mistakes of the network,而且难以理解复杂的先验知识sophisticated prior knowledge。

传统的模块化自动驾驶的问题是,子任务的优化导致了整体的次优lead to a sub-optimal overall system performance。比如3D检测,对每个障碍物的权重都是一样的,但是对于驾驶员来说,远处的障碍物并不重要,近处的障碍物才重要,影响自己的决策。

3 相关工作

3.1 模仿学习

该方法受限于累积误差,需要大量的数据,而且泛化能力差,比如偏离车道的情况drifting out of lane。

注意:为什么作者会说偏离车道的情况是模仿学习不能泛化的场景呢?我觉得是因为这样的场景太少了,而且没有相应的loss要求自车回到中心线附近。

3.2 强化学习

暂时缺少实际应用,而且没有可解释性的中间表示do not produce interpretable representations。

3.3 基于优化的规划器

传统的规划方法是高度参数化的highly parallizable,需要很多精力去优化。

3 解决方案

3.1 输入与输出

输入:Lidar和HD map

输出:时空space-time cost volume/cost map

规划器planner根据cost volume去采样轨迹,并选择最小代价的来执行。

cost volume能更好地建模不确定性uncentainty多模态naturally capture multi-modality。

注意:HDmap光栅化为了M个channel的tensor,每个channel代表了一个道路元素,如roads,intersections,lanes,lane boundaries等。我认为如果把他们混到不同的channel中,可视化会好看一点(因为RGB三通道才能构成不同的颜色),但是这样可能让conv性能下降。

3.2 backbone

采用了一篇3D检测的论文提出的架构Pixor模型

Bin Yang, Wenjie Luo, and Raquel Urtasun. Pixor: Real- time 3d object detection from point clouds.

3.3 perception head

采用了一篇论文提出的SSD模型,既根据锚点anchor做分类,也同时做轨迹预测。

Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng-Yang Fu, and Alexander C Berg. Ssd: Single shot multibox detector.

3.4 cost volume head

用了多个卷积和反卷积层。最后用一个fileter number是预测帧数T的卷积层。每个filter都会产生一个cost volume_t,对应的是在未来t时刻的cost volume。

注意:cost volume不是一个,而是每个预测时刻都有,这样通过下标即可访问。

问:真值是什么,否则怎么训练?

答:在3.3说了没有监督Note that we do not have supervision for cost volume。

问:那怎么保证效果?

3.5 采样

轨迹点不能直接用x/y,因为在过大的速度或转角下,车辆实际没法达到physical limits in speed, acceleration and steering angle,因此文中用螺旋曲线表示,针对路径,只有可调参数a,针对速度,可调加速度参数。

注意:考虑到车辆的运动学约束是很好的,后来的很多论文都没考虑到该因素,就用MLP生成轨迹点然后做MDE FDE等,那些论文之所以能这样做,是因为他们没有做最重要的一步------闭环仿真,在数据集上的开环测试再好也没有实际意义。

但是螺旋曲线很难表征直线和圆弧。所以文中也同时使用了直线和圆弧。

问:为什么选了无法表征所有轨迹的螺旋曲线?

3.6 损失函数设计

考虑perception和planning 的损失,但是没有考虑cost volume的损失。

3.6.1 perception loss

同时考虑分类损失和回归损失,分类损失用cross-entropy,回归损失用L1损失。

3.6.2 planning loss

这一步承接3.5采样,采样出了N条轨迹,考虑和真值的cost之差,距离之差,以及违法交通规则,作为损失。

然后选出损失最大的那一条,作为最终的loss,整个网络去优化这个损失。

相关推荐
像风一样自由202018 小时前
3.Dockerfile如何构建一个Python算法镜像
开发语言·人工智能·python·大模型
地平线开发者20 小时前
CLIP 的训练机制:从对比学习到图文对齐
深度学习·算法·自动驾驶
猿界零零七21 小时前
Agent 开发面试题--Day002【Agent和Workflow的有什么区别】
人工智能·大模型
大鹏的NLP博客21 小时前
从格赖斯合作原则看大语言模型与提示词工程
人工智能·自然语言处理·大模型·agent
寻道码路21 小时前
AI Agent 工程化开发实战(五):持久化与断点恢复——Checkpointer 与 Store
人工智能·大模型·checkpoint·持久化·ai agent·langgraph·ai工程化
虎鲸不是鱼1 天前
AI 自动化逆向(三十六)先找不加密的部分
人工智能·自动化·大模型·逆向·ai逆向
学IT的周星星1 天前
本地部署与开源模型:不想花钱怎么办
人工智能·开源·大模型·llm·agent
重生之我在番茄自学网安拯救世界1 天前
AI 开发者日报 第1期(本周精选)| 插件市场投毒、智能体搞出“官僚饥荒村”,十年前的 CNN 打赢大模型
人工智能·网络安全·大模型·ai编程·智能体
遇码2 天前
2026-11-01-daw-retry-banner-body
人工智能·ai·rust·数据分析·大模型·agent
猿界零零七2 天前
Agent 开发面试题--day001
人工智能·大模型