馬作的盧飛快!上海AI Lab發布首個模仿人類學習范式的自動駕駛決策框架DiLu
本文經自動駕駛之心公眾號授權轉載,轉載請聯系出處。
DiLu(的盧)是首個基于AI Agent范式的知識驅動自動駕駛框架,其結合了常識知識和大語言模型,通過記憶模塊以實現閉環自動駕駛決策制定并擁有持續進化的能力。通過不斷對環境的交互積累經驗,自我反思糾正錯誤的決策,從而實現Life-long Learning。DiLu現已在GitHub上開源,歡迎大家體驗。
論文信息
- 論文題目:DiLu: A Knowledge-Driven Approach to Autonomous Driving with Large Language Models ( ICLR 2024 接收)
- 論文發表單位:上海人工智能實驗室,華東師范大學,香港中文大學
- 論文地址:https://arxiv.org/abs/2309.16292
- 代碼地址:https://github.com/PJLab-ADG/DiLu
研究動機
自動駕駛技術近年來發展迅速,但目前仍然面臨著諸多挑戰。最主要的挑戰之一是數據集偏差和過擬合問題,當前的系統大多基于數據驅動(Data-driven)的深度學習方法,它們在標準化和簡單的駕駛場景下表現良好,但在復雜多變的真實世界環境中卻經常遇到困難。同時,當前的自動駕駛系統在理解復雜的交通環境、預測其他車輛和行人的行為等方面還存在不足。
正如Yann LeCun 所指出的 [1]:為什么一個從未開過車的少年可以在20 小時內學會駕駛,而當今最好的自動駕駛系統則需要數十億的訓練數據和數百萬次在虛擬環境中進行強化學習試驗?
這些問題的根源在于現有系統缺乏對環境深層次理解和適應性,在面對未知或復雜場景時的表現遠遠不及人類駕駛員。人類駕駛員能夠利用其豐富的駕駛經驗和常識性知識,靈活地應對各種駕駛情境。這種能力源自于人類的知識驅動行為,即基于對環境的理解、經驗的積累和邏輯推理來做出決策。這引發了我們的思考,如何將人類的這種知識驅動方式應用于自動駕駛系統,以使其能夠不斷積累經驗,提升其在面對復雜環境時的表現。
知識驅動的自動駕駛范式
基于上述動機,我們提出了知識驅動(Knowledge-driven)的自動駕駛范式。這一范式的靈感正是來源于人類的駕駛行為。當面臨新的駕駛情境時,人類駕駛員依靠積累的經驗和常識做出決策。例如,遇到前車可能掉落貨物的情況時,人類會基于常識保持安全距離。這種基于知識的決策過程與數據驅動方法截然不同,后者依賴大量相似數據來擬合特定場景,但缺乏對環境的深入理解。
在上圖中,我們展示了這一范式的理念。圖中的駕駛智能體(Driver Agent)具有三個關鍵能力:回憶(Recall)、反思(Reflect)和推理(Reason)。這些能力使得智能體不僅能夠從記憶模塊(Memory)中提取過往經驗,進行場景分析和決策;還能通過與環境(Environment)的不斷交互和記憶的更新,實現持續的進化。與傳統的數據驅動方法相比,知識驅動的自動駕駛范式更加注重對環境的理解推理和自我持續學習的能力。
關于知識驅動的自動駕駛更細致的介紹,請參考我們團隊的綜述:Towards Knowledge-driven Autonomous Driving (https://arxiv.org/abs/2312.04316). [2]
DiLu框架介紹
基于上述知識驅動的自動駕駛新范式,我們嘗試并實現了一個全新的自動駕駛框架:DiLu(的盧)。該框架通過整合利用大語言模型(LLM),實現基于常識的決策和持續的駕駛經驗累積。該框架由四個核心模塊組成:環境(Environment)、推理(Reasoning)、反思(Reflection)和記憶(Memory)。下圖詳細展示了DiLu框架的工作流程和各模塊之間的交互方式,包括環境感知、推理決策生成、決策的反思評估,以及記憶的更新和累積。
推理模塊是DiLu框架中的關鍵組成部分,它利用LLM的常識知識和存儲在記憶模塊中的經驗來進行Few-shot決策制定。具體來說,推理模塊首先從環境中獲得場景描述,然后結合記憶模塊中的相似經驗生成決策所需Prompt。接著,這些提示被輸入到LLM中,LLM基于這些信息生成當前幀的駕駛決策,并輸入環境實現決策閉環。下圖展示了推理模塊的工作流程,包括場景描述的生成、記憶模塊的調用、提示的生成以及LLM的決策解碼過程。
反思模塊是DiLu框架中的另一個核心部分,它負責評估并修正推理模塊產生的決策。這一模塊通過分析記錄的決策序列來識別不安全或不準確的決策,并利用LLM的智能對這些錯誤決策進行修正。修正后的決策會被更新回記憶模塊,從而實現系統的持續學習和進化。下圖展示了反思模塊的工作流程,包括決策的評估、關鍵決策幀的采樣、錯誤修正和經驗的更新過程。
實驗結果
DiLu使用Highway-env仿真環境進行閉環實驗測試。Highway-env [3] 是一個基于OpenAI Gym開發的Python環境,專為開發和測試自動駕駛系統的決策算法而設計,提供了一個充滿挑戰的多車交互路況環境。下面這個視頻展示了一次閉環實驗中,DiLu框架如何在復雜的交通情境中作出決策。視頻中,綠色的自車不僅成功地進行了變道以提升車速,還像經驗豐富的司機一樣與前車保持了安全距離,沒有采取任何冒險的駕駛策略。同時,DiLu在每個決策節點不僅能做出準確的駕駛決策,還能展示其完整的推理過程,這一點體現了我們框架優異的可解釋性。
此外,我們還進行了一系列精心設計的量化實驗,來驗證DiLu框架在自動駕駛閉環決策中的表現。我們將DiLu與Highway-env下現有的強化學習方法GRAD [4] 進行了比較。我們發現,DiLu 僅使用記憶模塊中的 40 條經驗就超過了強化學習方法在 600,000 個episodes訓練后的閉環表現。同時,DiLu在泛化能力方面也表現出顯著的優勢,特別是在高密度交通環境下,DiLu展示了其出色的閉環成功率。基于數據驅動的強化學習方法相比,DiLu不僅更加聰明,而且具有更強的泛化能力。此外,我們的實驗也證實了DiLu框架能夠有效利用其記憶模塊中的經驗,不斷地提升決策質量和系統的整體性能。
總結
DiLu是首個基于AI Agent范式的知識驅動自動駕駛框架,可能也是第一個將LLM和自動駕駛決策相結合的工作。具體來說:DiLu結合了常識知識和大語言模型技術,通過記憶模塊以實現駕駛決策制定并擁有持續進化的能力。DiLu可以通過不斷對環境的交互積累經驗,并通過自我反思糾正錯誤的決策,從而實現Life-long Learning。通過大量實驗,我們證明了DiLu框架在經驗積累和泛化能力方面具有顯著優勢,并可以隨著LLM的發展同步提升性能。此外,DiLu還能夠直接從真實世界數據集中獲取經驗,這為其在實際自動駕駛系統中的應用提供了潛力。
原文鏈接:https://mp.weixin.qq.com/s/2sKGP7HfxVQgEMqqez-dNA