自动驾驶---视觉语言模型(VLM)引导的模型预测控制器(MPC)

1 背景

        之前大家普遍认为的端到端就是传感器输入,控制输出,这也确实是真正的端到端,但目前车企走的更多的是轨迹生成。

        自动驾驶端到端控制瓶颈主要有以下两点:

  • 可解释性缺失:传统端到端模型(如纯VLM控制器)生成的控制指令缺乏透明决策依据,难以追溯风险原因。

  • 动态适应性不足:单一控制器难以协调高层语义理解(如天气影响)与底层动力学约束,导致跨场景性能波动。

        之前笔者提到过理想,小米,小鹏,蔚来等都通过使用VLM模型丰富智驾的功能,并将其量产到车上,主要利用VLM的识别推理能力

2 VLM-MPC

        本篇博客主要介绍VLM-MPC:自动驾驶中视觉语言基础模型引导的模型预测控制器。

        受到视觉语言模型(VLMs)紧急推理能力及其提高自动驾驶系统理解力的启发,本文引入了一种闭环自动驾驶控制器,称为VLM-PLC,其结合了用于高级决策的VLM和用于低级车辆控制的模型预测控制器(MPC)。

2.1 分层异步架构

        VLM-MPC由异步运行的双层组件构成,解决VLM延迟高与MPC实时性需求的矛盾:

组件功能运行频率输入/输出
上层VLM解析环境语义(天气、光照、交通参与者),生成高层驾驶参数(目标速度、车距)0.2 Hz图像+车辆状态→决策参数(如期望速度)
下层MPC基于VLM参数优化实时控制,满足车辆动力学约束10 Hz参数→控制信号(转向角、油门/刹车)

        VLM-MPC系统在结构上分为两个异步组件:上层VLM和下层MPC。

  • 上层VLM基于前视相机图像、自车状态、交通环境条件和参考内存来生成用于下层控制的驾驶参数。
    • Reference memory(数据集真实轨迹作为参考)
    • Environment description model(驾驶环境描述)
    • Scenario Encoder(场景编码)
    • Prompt Generator(推理)
      • Prediction horizon
      • Speed maintenance weight
      • Control effort weight
      • Headway maintenance weight
      • Desired speed
      • Desired headway

  • 下层MPC通过这些参数实时控制车辆,其考虑了发动机滞后并且向整个系统提供了状态反馈。

2.2 关键技术

  1. 环境编码器:利用CLIP模型从图像提取结构化环境特征(如“雨天”“交叉路口”),增强VLM的上下文感知。

  2. 参考记忆模块:聚合历史驾驶参数(如平均安全车距),通过统计先验减少VLM输出波动,抑制幻觉风险。

  3. 抗幻觉设计:双层校验机制确保决策参数符合物理可行性(如MPC拒绝VLM生成的超速指令)。

2.3 实验结果       

        论文的主要贡献如下:

        1)VLM-MPC自动驾驶控制器:提出了一种闭环自动驾驶控制器,其将VLMs应用于高级车辆控制。上层VLM使用车辆的前视相机图像、文本场景描述和经验记忆作为输入,以生成低级MPC所需的控制参数。低级MPC利用这些参数并且考虑车辆动力学,以实现逼真的车辆行为并且向上层提供状态反馈。这种异步两层结构解决了当前VLM响应速度慢的问题;

        2)VLM对环境的理解:通过比较不同场景条件(例如天气、光照、道路条件)下的行为,本文证明了VLM理解环境并且做出合理决策的能力。这突显了VLM适应各种驾驶环境和条件的能力。

        基于nuScenes数据集的实验验证了所提出的VLM-MPC系统在各种场景(例如夜晚、下雨、十字路口)下的有效性。结果表明,VLM-MPC系统在安全性和驾驶舒适性方面始终优于基线模型。通过比较不同天气条件和场景下的行为,证明了VLM理解环境并且做出合理推理的能力。

        实验结果表明,与基线模型相比,VLM-MPC系统始终具有更优的安全性、驾驶舒适性和稳定性能。与不同FMs的兼容性分析表明,Llama3.1-8B模型可以满足所提出方法的响应时间要求。

3 总结

        目前很多的大模型工作都是在开环环境下进行,甚至仿真环境下的闭环实验都没有做,在笔者看来,这是当前很多科研论文不够严谨的表现。

        基于VLM的MPC需要基于闭环实验甚至实车验证,因为涉及到控制器的动态调参,对于整个系统的稳定性是非常重要的。该方案为科研工作者提供了一个思路。

参考文献:

《VLM-MPC: Vision Language Foundation Model (VLM)-Guided Model Predictive Controller (MPC) for Autonomous Driving》

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

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

相关文章

最优估计准则与方法(5)加权最小二乘估计(WLS)_学习笔记

前言 最优估计理论中研究的最小二乘估计(LS)为线性最小二乘估计(LLS),包括古典最小二乘估计(CLS)[1]、加权最小二乘估计(WLS)和递推最小二乘估计(RLS&#x…

Linux——线程互斥

文章目录一、有关概念原子性错误认知澄清加锁二、锁的相关函数全局锁局部锁初始化销毁加锁解锁三、锁相关如何看待锁一个线程在执行临界区的代码时,可以被切换吗?锁是本身也是临界资源,它如何做到保护自己?(锁的实现&a…

扣子(Coze)宣布开源两大核心项目——Coze Studio(扣子开发平台)和Coze Loop(扣子罗盘),附安装步骤

2025年7月26日,字节跳动旗下AI开发平台“扣子(Coze)”宣布开源两大核心项目——Coze Studio(扣子开发平台)和Coze Loop(扣子罗盘),采用Apache 2.0协议,支持免费商用及本地化部署。 开源内容 Coze Studio:提供可视化AI智能体开发工具,支持零代码/低代码拖拽式工作流编…

InfluxDB Flux 查询协议实战应用(二)

四、实战案例解析4.1 服务器性能监控数据查询在服务器性能监控场景中,InfluxDB 和 Flux 查询协议能够发挥重要作用,帮助运维人员实时了解服务器的运行状态,及时发现性能问题。假设我们的服务器性能监控数据存储在名为server-monitoring的存储…

二层隧道协议(PPP、PPTP、L2TP)

PPP —— 点对点链路上的“链路层会话层”协议,解决拨号认证、IP 分配和多协议封装。PPTP —— 在 IP 网络里开一条“PPP-over-GRE”隧道,把 PPP 封装进公共网络,速度快但已不安全。L2TP —— 在 IP/UDP 里再开一条“PPP-over-UDP”隧道&…

openmv特征点检测

AGAST 角点检测器和 FAST 角点检测器: 两者都是计算机视觉中快速检测图像角点的算法,核心目的是高效找到图像中 "有辨识度的点",但细节略有不同: (1)FAST 角点检测器 • 特点:速度极快…

基于深度学习的CT图像3D重建技术研究

基于深度学习的CT图像3D重建技术研究 摘要 本文详细探讨了使用深度学习技术进行CT(计算机断层扫描)图像3D重建的全过程。我们从CT成像基本原理出发,系统介绍了数据预处理、深度学习模型构建、训练优化以及三维可视化等关键技术环节。研究采用了先进的深度学习架构如3D U-Net…

JVM相关面试八股

什么是双亲委派模型? 如果一个类加载器在接到加载类的请求时,它首先不会自己尝试去加载这个类,而是把这个请求任务委托给父类加载器去完成,依次递归,如果父类加载器可以完成类加载任务,就返回成功&#xff…

Javaweb————HTTP消息体拆分讲解

❤️❤️❤️一.HTTP请求消息结构 (1)请求行 💙 请求方法 💙URL地址 💙协议名 (2)请求头 报文头包含若千个属性格式为“属性名:属性值”, 服务端据此获取客户端的基本信息 (3&…

GitHub的免费账户的存储空间有多少?

GitHub的免费账户在存储空间方面的具体限制如下: 一、普通仓库(非LFS)存储限制 公共仓库 总存储:无明确总容量限制,但建议单个仓库不超过1GB以确保性能。若仓库过大(如超过5GB),可能会收到GitHub的优化提示邮件。 文件大小:单个文件最大100MB,超过100MB的文件会被直…

Java学习|黑马笔记|Day23】网络编程、反射、动态代理

【DAY23】 文章目录【DAY23】一.网络编程1)三要素1.1)IPInetAddress类的使用1.2)端口号1.3)协议2.1)UDP协议发送数据2.2)UDP协议接收数据2.3)UDP的三种通信方式3.1)TCP协议的发送和接…

【Linux】从普通进程到守护进程:系统服务的诞生之路

当你在深夜关闭SSH终端,为何Web服务器仍在默默响应请求?这背后是守护进程的魔法在守护着系统服务的不灭之火。一、守护进程的六大核心特征守护进程(Daemon)是Linux系统的无名英雄,它们舍弃了普通进程的"世俗享受&…

k8s常用基础命令总结

----------------------k8s常用基础命令--------------------------------- 获取 Pod 信息 # 1.获取k8s的命名空间 kubectl get namespaces ​1)获取 Pod 列表及简要信息: kubectl get pods 2)以 YAML 格式获取 Pod 详细信息: kubectl get pod -o yaml 3)​获取特定命名空间中…

Java高级之基于Java Attach与Byte-Buddy实现SQL语句增强

目录 一 Agent 模块 1 HookAgent.java 2 FormatAdvice.java 3 配置文件 二 Attacher 模块 1 AttachMain.java 三 测试模块 1 DruidTest.java 四 验证步骤 五 原理解析 笔者目标写一款数据分析中间件,用来增强当前主流开源项目,前几天写了一票用…

2025第五届生物发酵营养源高峰论坛

一、会议时间会议时间:2025年8月8日二、会议地点上海新国际博览中心–W4馆现场2号会议室三、组织单位主办单位:中国生物发酵产业协会承办单位:浙江工业大学乐斯福集团Procelys 乐斯福发酵营养元参会福利,助力高效交流为提升参会体验,组委会特别推出多项福…

Kubernetes 配置管理

这里写目录标题什么是 ConfigMap创建 ConfigMap基于目录创建 ConfigMap创建 conf 目录,里面放置两个文件基于目录下的所有文件创建 ConfigMap查看当前创建的 ConfigMap基于文件创建 ConfigMap创建测试文件 game-cfg基于单个文件创建 ConfigMap查看当前创建的 Config…

ESP32+MicroPython:用Python玩转物联网开发

什么是ESP32? ESP32作为当下最热门的物联网开发板,常被比作"嵌入式世界的瑞士军刀"。但很多初学者会混淆芯片、模组和开发板的概念,其实它们的关系很简单: 芯片(Soc):核心处理器,如ESP32-D0WD模…

opencv学习(图像金字塔)

1.什么是图像金字塔图像金字塔是一种多尺度图像表示方法,通过对原始图像进行下采样(缩小)和上采样(放大),生成一系列不同分辨率的图像集合,形似 “金字塔”(底部是高分辨率原始图像&…

从 C# 到 Python:项目实战第五天的飞跃

在前面三天的学习中,我们已经掌握了 Python 的基础语法、数据结构以及一些核心库的使用。今天,我们将通过三个实战项目,深入对比 C# 和 Python 在命令行工具开发、Web 应用开发以及数据处理方面的差异,感受 Python 在实际项目中的…

rabbitmq 03

一、mq的作用和使用场景 MQ的基本作用 MQ(Message Queue,消息队列)是一种应用程序对应用程序的通信方法,主要作用包括: 异步处理:解耦生产者和消费者,允许生产者发送消息后立即返回&#xff0…