LimSim :多模态大模型在自动驾驶中的新舞台
创始人
2025-07-14 06:41:49
0

本文经自动驾驶之心公众号授权转载,转载请联系出处。

论文名称:LimSim++: A Closed-Loop Platform for Deploying Multimodal LLMs in Autonomous Driving

项目主页:https://pjlab-adg.github.io/limsim_plus/

仿真器简介

随着多模态大语言模型((M)LLM)在人工智能领域掀起研究热潮,其在自动驾驶技术中的应用逐渐成为关注的焦点。这些模型通过强大的广义理解和逻辑推理能力,为构建安全可靠的自动驾驶系统提供了有力支持。虽然已有闭环仿真平台如HighwayEnv、CARLA和NuPlan等,能够验证LLM在自动驾驶中的表现,但用户通常需要自行适配这些平台,这不仅提高了使用门槛,也限制了LLM能力的深入挖掘。

为了克服这一挑战,上海人工智能实验室的智能交通平台组推出了**LimSim++**,这是一款专为(M)LLM设计的自动驾驶闭环仿真平台。LimSim++的推出,旨在为自动驾驶领域的研究者提供一个更加适宜的环境,以全面探索LLM在自动驾驶技术中的潜力。该平台能够提取并处理来自SUMO和CARLA等仿真环境的场景信息,将其转化为LLM所需的多种输入形式,包括图像信息、场景认知和任务描述。此外,LimSim++还具备运动原语转换功能,能根据LLM的决策快速生成合适的行驶轨迹,实现闭环仿真。更重要的是,LimSim++为LLM创造了一个持续学习的环境,通过评估决策结果并提供反馈,帮助LLM不断优化驾驶策略,提高Driver Agent的驾驶性能。

图片

仿真器特点

LimSim++在自动驾驶仿真领域具有显著特点,为(M)LLM驱动的Driver Agent提供了理想的闭环仿真和持续学习环境。

  • LimSim++支持多种驾驶场景的模拟,如十字路口、匝道和环岛等,确保Driver Agent能够在各种复杂路况下接受挑战。这种多样化的场景设置有助于LLM获取更丰富的驾驶经验,提高其在真实环境中的适应能力。
  • LimSim++支持多种模态输入的大语言模型。LimSim++不仅提供基于规则的场景信息生成,同时可以与CARLA联调,能够提供丰富的视觉输入,满足(M)LLM在自动驾驶中的视觉感知需求。
  • LimSim++注重持续学习能力。LimSim++集成了评估、反思和记忆等模块,帮助(M)LLM在仿真过程中不断积累经验,优化决策策略。

创建属于自己的Driver Agent

图片

LimSim++为用户提供了丰富的接口,可以满足Driver Agent的定制需求,提高了LimSim++开发的灵活性,并且降低了使用门槛。

  1. Prompt构建
  • LimSim++支持用户自定义prompt,从而改变输入给(M)LLM的文本信息,包括角色设置、任务要求、场景描述等信息。
  • LimSim++提供了基于json格式的场景描述模板,支持用户零代码进行prompt的修改,无需考虑信息提取的具体实现。
  1. 决策评估模块
  • LimSim++提供了对(M)LLM决策结果进行评估的baseline,用户可以通过改变权重参数来调节评价偏好。
  1. 框架的灵活性
  • LimSim++支持用户为(M)LLM添加自定义的工具库,例如感知工具、数值处理工具等等。

快速上手

  • Step 0:安装SUMO(Version≥v1.15.0,  ubuntu)
sudo add-apt-repository ppa:sumo/stable
sudo apt-get update
sudo apt-get install sumo sumo-tools sumo-doc
  • Step 1:下载LimSim++源码压缩包,解压后切换到正确分支
git clone https://github.com/PJLab-ADG/LimSim.git
git checkout -b LimSim_plus
  • Step 2:安装依赖 (要求装有conda)
cd LimSim
conda env create -f environment.yml
  • Step 3: 运行仿真
  • 单独运行仿真
python ExampleModel.py
  • 使用LLM进行自动驾驶
export OPENAI_API_KEY='your openai key'
python ExampleLLMAgentCloseLoop.py
  • 使用VLM进行自动驾驶
# Terminal 1
cd path-to-carla/
./CarlaUE4.sh

# Termnial 2
cd path-to-carla/
cd PythonAPI/util/
python3 config.py --map Town06

# Termnial 2
export OPENAI_API_KEY='your openai key'
cd path-to-LimSim++/
python ExampleVLMAgentCloseLoop.py

更多内容请查看LimSim++的github:https://github.com/PJLab-ADG/LimSim/tree/LimSim_plus,如有其他疑问请在GitHub的Issues中提出或直接邮件联系我们!

欢迎学术界和工业界小伙伴共同开发LimSim++,共建开源生态!

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...