【同济大学】双速率自动驾驶架构LeAD:端到端+LLM,CARLA实测93%路线完成率,性能SOTA!

近年来,随着端到端的技术快速发展将自动驾驶带到了一个新高度,并且取得了非常亮眼的成绩。由于感知限制和极端长尾场景下训练数据覆盖不足,模型在高密度复杂交通场景下和不规则交通情况下的处理能力不足,导致在开放道路上大规模部署此类系统仍存在一些问题

尽管目前传统的感知-规划-控制范式已经非常成熟,但这类方法限制了算法模型对交通上下文的语义理解能力以及与异构交通参与者进行交互推理的能力。基于此,已经有相关的工作为了增强个体间交互能力通过数学形式和手工制定的规则系统来构建车辆交互。这种规则驱动的框架在计算可扩展性和边缘情况泛化方面面临固有的局限性,比如计算复杂度呈指数级增长在建模以动态不确定性为特征的边缘场景时,存在根本性的数学难题。

最近,大语言模型的出现为场景理解和交互式推理引入了新的范式并在场景理解和认知推理方面展现出卓越的能力然而,在部署LLM时出现了一个根本性的挑战:维持其知识密度和推理保真度本质上会将运行频率限制在极低的水平。这种延迟瓶颈会导致关键决策延迟,从而可能导致严重的碰撞事故。

基于此,本文提出了LeAD一种双速率自动驾驶架构,融合了基于模仿学习的端到端框架和大语言模型技术。在CARLA模拟器中进行的实验评估证明了LeAD对非常规场景的卓越处理能力,在Leaderboard V1基准测试中获得了71分,路线完成率达到 93%。

图1LeAD算法模型的整体架构图

本文的主要贡献如下

 本文提出了一种创新型自动驾驶系统,它利用LLM进行场景认知和类人的逻辑推理,进而实现基于场景理解的规划。

 本文利用双向自然语言编码器-解码器实现感知/决策数据与语言表征之间的转换,从而增强大语言模型的可靠信息理解和逻辑决策能力。

 本文提出了一种双速率系统架构,将实时的E2E框架与具备场景理解和推理能力的LLM增强模块协同集成,并成功完成CARLA仿真环境上的自动驾驶闭环测试。

本文提出的LeAD算法框架如图2所示。该算法包括两个平行的结构,分别是高频的端到端系统,以及低频的LLM系统,二者通过异步耦合机制集成。

图2LeAD算法模型的流程图

整个系统主要通过端到端系统运行,持续生成轨迹点,并反馈到基础安全控制器,以便车辆立即执行操作。

当遇到边缘场景时,车辆首先尝试通过端到端系统决策流进行解析如果场景仍未解析,安全控制器将启动保护性停止。如果当超过预设的等待阈值时,LLM冗余系统将启动;接下来LLM处理当前环境状态和感知数据,以制定高级决策,最后通过慢系统的安全控制器执行车辆操作。

此外,本文考虑到直接执行LLM推理解码的决策可能会引发安全风险因此将安全控制器集成到慢速系统决策流水线中确保了低速下高级LLM决策具有足够的执行自由度。

端到端快速规划系统

整个系统采用ResNet+Transformer架构,如图3所示。输入数据包括前、前左、前右的摄像头数据、激光雷达点云和导航路径点。输出结果包括交通参与者的感知数据、自车的轨迹以及交通标志、路口检测结果等等。

图3端到端系统的神经网络架构图

感知描述

本文为了利用大语言模型实现更加可靠、精准的决策,所设计的编码器可以处理两个不同的输入流。一个是来自E2E系统的感知输出,包括检测到的目标、交通信号和部分道路特征。另一个是从高清地图中提取的车道级定位数据,用于提供自车定位和决策空间约束。

 道路拓扑车辆的运行环境是影响驾驶决策的主要因素。在相同的感知输入下,位于交叉路口和行驶车道内的车辆可能会表现出截然不同的行为策略。本文采用了道路环境、车道配置、交通信号以及停车标志四种场景提示对环境进行表征。

 交通参与者除了车辆的直接环境之外,交通参与者的感知信息是影响驾驶行为的另一个关键因素。本文考虑到大语言模型固有的数值不敏感性直接输入目标尺寸和坐标会导致模型错误决策),因此采用了目标相对于自身车辆的位置关系目标类型分类等离散属性。

推理决策

为了充分利用LLM的场景理解和逻辑推理能力,LeAD将基于CoT的决策过程分为三个连续的阶段。

 感知目标分析阶段该过程首先描述驾驶环境,然后分析每个目标的潜在车道/区域占用情况。随后,利用目标的航向角和近似速度预测其在未来时间窗口内的可能位置。

 决策可行性评估此阶段将系统地分析每个选项的可执行性,并评估其操作后果

 最终决策合成与解码:此组件将LLM生成的自然语言决策转换为可执行命令,随后由安全控制器进行处理。

图4LeAD中的LLM提示流程

本文采用CARLA仿真环境对提出的算法模型的性能进行评估。评估包括7个城镇和26条不同的路线,涵盖各种交通场景和城市类型,包括乡村小路、城市主干道、多车道林荫大道、复杂的信号交叉口和非信号交叉口。

5展示了LeAD与CARLA中四个模型的比较结果。可以看出LeAD实现了最佳的驾驶得分,取得了最佳的性能。

5各个算法模型在CARLA上的表现性能

为了评估集成的基于LLM的冗余决策模块的贡献,本文进行了相关消融实验,结果如图6所示。

6消融实验结果汇总

同时本文也对算法在处理不规则场景的情况进行了可视化分析,如图7所示。通过可视化结果可以看出,LeAD在双车道的双向道路场景中具有很好的表现。

图7样例条件展示

此外,如图8所示,当基线端到端规划器未能解决意外障碍物造成的路径阻塞,导致车辆完全无法行驶时,冗余决策系统会通过多阶段安全触发器启动。自然语言推理系统会在对交通法规和空间限制进行思路链分析后,生成“右变道”命令。

8样例场景描述

本文提出了一种双速率系统自动驾驶架构LeAD,有效的将实时端到端规划与基于LLM的高级推理相结合。在复杂场景下的实验结果证明了LeAD的卓越性能,其表现超越了许多强大的基准模型,最高驾驶得分达到71.96,路线完成率达到93.43%,证明了其强大的规划能力和出色的场景通过性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/91193.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/91193.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

github与git新手教程(快速访问github)

0 序言 作为一个开发者,你必须知道github和git是什么,怎么使用。 github是一个存储代码等资源的远程仓库,一个大型项目往往需要很多人共同协作开发,而大家如何协同开发的进度与分工等要求需要有一个统一开放保存代码的平台。git…

Windows环境下安装Python和PyCharm

可以只安装PyCharm吗?不可以!!! 开发Python应用程序需要同时安装Python和PyCharm。Python是一种编程语言,PyCharm是一个专门为Python开发设计的集成开发环境,提供丰富的功能以简化编码过程。 一、前期准备…

Qt 嵌入式系统资源管理

在嵌入式系统中,资源(CPU、内存、存储、网络等)通常非常有限,因此高效的资源管理对 Qt 应用的稳定性和性能至关重要。本文从内存优化、CPU 调度、存储管理到电源控制,全面解析 Qt 嵌入式系统资源管理的关键技术。 一、…

小杰数据结构(one day)——心若安,便是晴天;心若乱,便是阴天。

1.数据结构计算机存储、组织数据的方式;有特定关系的数据元素集合;研究数据的逻辑结构、物理结构(真实存在)和对应的算法;新结构仍保持原结构类型;选择更高的运行或存储效率的数据结构。逻辑结构——面向问…

力扣面试150(44/150)

7.30 155. 最小栈 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶…

Linux实战:从零搭建基于LNMP+NFS+DNS的WordPress博客系统

前言 在数字化时代,拥有一个个人博客是技术爱好者展示成果、分享经验的重要方式。本文将带您从零开始,在Linux环境下通过两台服务器协作,搭建一个功能完整的WordPress博客系统。我们将整合LNMP架构、NFS文件共享和DNS域名解析服务&#xff0c…

Apache Ignite 的对等类加载(Peer Class Loading, P2P Class Loading)机制

这段内容是关于 Apache Ignite 的“对等类加载”(Peer Class Loading, P2P Class Loading)机制的详细说明。这是 Ignite 为了简化开发而设计的一个非常强大的功能,但同时也存在一些安全和性能上的考量。 下面我将用通俗易懂的语言 结构化解…

预过滤环境光贴图制作教程:第四阶段 - Lambert 无权重预过滤(Stage 3)

在完成高光反射的 GGX 预过滤后,我们还需要处理环境光的漫反射部分。本阶段(Stage 3)将基于 Lambert 分布对环境贴图进行无权重预过滤,生成用于漫反射计算的环境数据。与高光反射的方向性不同,漫反射是光线在粗糙表面的均匀散射,因此需要用更适合均匀分布的 Lambert 模型…

Spring与SpringBoot:从手动挡到自动挡的Java开发进化论

大家好!我是程序员良辰,今天我们来聊聊Java开发界的两位"重量级选手":Spring 和 SpringBoot。它们之间的关系就像手动挡汽车和自动挡汽车——一个给你完全的控制权但操作复杂,一个让你轻松上路但保留了切换手动模式的能…

1.4.Vue 的模板事件

Vue 的模板事件1. 最常见和推荐的做法。将复杂的逻辑封装在 methods 中。<!-- ✅ 正确&#xff1a;调用 methods 中的方法 --> <button click"handleClick">点击我</button>new Vue({methods: {handleClick(event) {// 这里可以写任意语句if (this…

SQLite 子查询详解

SQLite 子查询详解 引言 SQLite 是一种轻量级的数据库&#xff0c;以其简单、易用和跨平台而著称。在数据库查询中&#xff0c;子查询是一个非常重要的概念&#xff0c;它允许我们在查询中使用查询结果。本文将详细讲解 SQLite 中的子查询&#xff0c;包括其定义、用法以及在实…

可以组成网络的服务器 - 华为OD统一考试(JavaScript 题解)

题目描述 在一个机房中,服务器的位置标识在n*m的整数矩阵网格中,1表示单元格上有服务器,0表示没有。如果两台服务器位于同一行或者同一列中紧邻的位置,则认为它们之间可以组成一个局域网,请你统计机房中最大的局域网包含的服务器个数。 输入描述 第一行输入两个正整数,…

redis,MongoDB等未授权访问靶场复现

redis未授权访问在docker中启动vulhub对应的靶场目录&#xff1a;cd /vulhub-master/redis/4-unacc在kali上安装redis程序进行服务连接安装redis apt-get install redis redis链接 redis-cli -h IP -p 端口输入info可以查看信息接下来我们使用redis-rogue-server来获取命令执行…

设计模式:代理模式 Proxy

目录问题解决方案结构代码代理是一种结构型设计模式&#xff0c;让你能够提供对象的替代品或其占位符。代理控制着对于原对象的访问&#xff0c;并允许在将请求提交给对象前后进行一些处理。 问题 为什么要控制对于某个对象的访问呢&#xff1f; 举个例子&#xff1a; 有这样一…

Linux零基础Shell教学全集(可用于日常查询语句,目录清晰,内容详细)(自学尚硅谷B站shell课程后的万字学习笔记,附课程链接)

此文章为学习了 尚硅谷B站课程 后的学习笔记 【尚硅谷】Shell脚本从入门到实战_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1hW41167NW/?spm_id_from333.337.search-card.all.click&vd_source68e0bbe20c8b1102b59ced40f67db628注意&#xff1a;需要先学Linux基础…

GitLab 中的分支和标签的定义及操作

&#xff08;一&#xff09;GitLab 中的分支和标签的定义及操作 1. 分支&#xff08;Branch&#xff09; 定义&#xff1a; 分支是代码仓库中的独立开发路径&#xff0c;允许你在不影响主线&#xff08;通常是 main 或 master 分支&#xff09;的情况下&#xff0c;进行实验、开…

第2章 cmd命令基础:常用基础命令(3)

Hi~ 我是李小咖&#xff0c;主要从事网络安全技术开发和研究。 本文取自《李小咖网安技术库》&#xff0c;欢迎一起交流学习&#x1fae1;&#xff1a;https://imbyter.com 本节介绍的命令有显示系统信息&#xff08;systeminfo&#xff09;、启动指定程序&#xff08;start&am…

RabbitMQ 发送方确认的两大工具 (With Spring Boot)

核心概念解析 发布者确认机制的核心思想是&#xff1a;将消息投递的可靠性从“尽力而为”提升为“契约保证”。生产者不再是“发后不理”&#xff0c;而是与 Broker 建立一个双向的沟通渠道。 在 Spring AMQP 的封装下&#xff0c;这个机制主要由两个回调接口实现&#xff1a; …

KONG API Gateway中的核心概念

在使用Kong API Gateway&#xff08;API网关&#xff09;时&#xff0c;理解其核心概念是掌握其工作原理的基础。这些概念既体现了Kong的设计哲学&#xff0c;也决定了它如何适配复杂的API管理场景&#xff08;如微服务、多团队协作等&#xff09;。本文将系统梳理Kong的核心概…

如何解决pip安装报错ModuleNotFoundError: No module named ‘jupyterlab’问题

【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named ‘jupyterlab’问题 摘要 在开发过程中&#xff0c;我们经常会遇到各种模块安装的问题&#xff0c;尤其是在使用PyCharm时&#xff0c;经常会遇到pip install时的…