LAMS:LLM 驅動自動模式切換輔助遙操作


2025年2月來自 CMU 和匹茲堡大學的論文“LAMS: LLM-Driven Automatic Mode Switching for Assistive Teleoperation”。
通過低自由度控制器(如操縱桿)遙操作高自由度 (DoF) 機器人操縱器,通常需要在控制模式之間頻繁切換,其中每種模式將控制器運動映射到特定的機器人動作。手動執行這種頻繁切換會使遙操作變得繁瑣且效率低下。另一方面,現有的自動模式切換解決方案(例如基于啟發式或基于學習的方法)通常是針對特定任務的,缺乏通用性。本文介紹 LLM 驅動的自動模式切換 (LAMS),這是一種利用大語言模型 (LLM) 根據任務上下文自動切換控制模式的方法。與現有方法不同,LAMS 不需要事先進行任務演示,并通過集成用戶生成的模式切換示例來逐步改進。
機器人遙操作系統面臨的一個關鍵挑戰,是將控制器的有限自由度 (DoF) 映射到機器人的更高自由度,尤其是對于高自由度機器人操縱器。這一挑戰在輔助應用中尤為突出,運動障礙用戶,依靠低自由度輔助設備(如基于舌頭的操縱桿 [1]、[2]、頭部定位系統 [3]、[4]、眼神注視控制 [5]、[6] 和吸氣和吹氣系統 [7]、[8])來執行日常任務。
簡單的控制器(例如 2-DoF 操縱桿)通常要求用戶在不同的控制模式之間切換,其中每種模式都定義操縱桿的四個運動方向(上、下、左、右)到特定機器人動作(例如平移、旋轉或夾持器控制)的特定映射。當用戶必須頻繁切換模式來完成長期、多階段任務時,這個過程變得繁瑣,導致效率低下和認知壓力。例如,在遙控機械臂將書本放到書架上時(如圖右側兩個子圖所示),用戶必須針對每個子任務在不同模式之間切換:平移和旋轉機器人末端執行器以與書本對齊,閉合夾持器以抓住書本,再次平移和旋轉以將書本與書架對齊,最后放置書本。這些頻繁的模式切換會中斷工作流程,迫使用戶反復回憶并選擇正確的模式,這會增加挫敗感和認知負荷,并降低任務效率 [9]–[11]。

為了解決這個問題,自動模式切換旨在無縫處理這些轉換,讓用戶專注于任務本身而不是控制機制。先前的研究已經探索使用啟發式方法 [12]、[13]、強化學習 [14]、[15] 和優化技術 [9] 在遙控和輔助機器人中自動進行模式切換。然而,其中許多解決方案都是針對特定任務的,需要針對每個任務進行演示或手工設計規則,這限制了它們在新場景中的通用性。
自動模式切換。先前的幾項研究已經探索自動模式切換,以減少與手動模式切換相關的認知負荷和低效率。例如,Herlant [9] 提出一個時間最優模型,該模型使用時間作為成本指標,利用 Dijkstra 算法預測機器人何時應自動更改模式。然而,像 Dijkstra 這樣的算法,計算最佳行駛成本,會產生相對于搜索空間大小的組合計算成本,這使得它們不適用于現實世界應用中的高自由度機械臂等高維系統。最近,Gopinath [12] 提出一種方法,該方法通過將用戶置于控制模式中來執行模式切換,從而最大限度地消除場景中各個目標之間的歧義。然而,這種方法依賴于有效的人類意圖識別,這仍然是一個定義不明確且具有挑戰性的問題。Quere [13] 采用不同的方法,將任務分為多個相位,每個相位都有不同的運動約束和輸入映射。為此,這種方法需要大量的手工設計來定義任務相位、約束和映射,從而限制其在不同任務中的可擴展性和靈活性。此外,Pilarski [14] 和 Kizilkaya [15] 利用強化學習 (RL) 進行自動模式切換。然而,這些方法需要大量訓練才能部署 RL 智體,這限制了它們在現實世界中的適用性。Kizilkaya [15] 還依賴現實世界的數據集進行訓練,這進一步限制了它們對新環境或任務的通用性。除了這些限制之外,大多數現有的自動模式切換方法都是特定于任務的,需要量身定制的演示或手工設計的規則,這限制了它們對新任務的可擴展性和通用性。
學習的潛動作模型。另一項相關研究解決將控制器有限 DoF 映射到機器人更高 DoF 的挑戰,該研究利用學習的潛動作模型 [22]–[26]。這些方法訓練自動編碼器來應對挑戰:在訓練期間,編碼器將高維機器人動作壓縮到與低 DoF 控制器匹配的潛空間中,而解碼器則重建原始的高維動作。在部署期間,用戶的控制輸入被送到解碼器中以生成相應的機器人動作。雖然這些方法為解決遙操作挑戰提供一種模式切換的替代方案,但它們通常依賴于大量訓練數據集和大量專家演示,在某些情況下,還需要用戶注釋過程來確保直觀控制 [22]。這種數據收集成本高昂、難以擴展,并且難以適應新任務和環境。值得注意的是,其中一項工作試圖最大限度地減少對人工演示的需求 [26],但他們的用戶研究表明,“當無人監督的機器人學會意想不到的行為時,用戶會感到困惑”。
大語言模型 (LLM) 在廣泛的應用中表現出色 [16]– [20],它們憑借常識推理能力為這些挑戰提供有希望的解決方案 [21]。
用于機器人規劃和控制的 LLM。最近的研究在利用 LLM 生成機器人規劃和控制信號方面取得巨大成功,例如將高級任務描述分解為中級規劃 [27]–[30]、生成機器人代碼 [31]–[34]、生成末端執行器姿勢序列 [35] 以及選擇運動基元 [36]。LLM 還被集成到與人類交互的機器人系統中。例如,Mahadevan [37] 使用 LLM 生成和修改富有表現力的機器人行為,例如點頭與人類互動。Padmanabha [38] 將 LLM 集成到喂食機器人中。Pandya [39] 為外科醫生引入一個支持 LLM 的界面來控制機器人工具。雖然這些方法代表使用 LLM 進行機器人規劃和控制的重大進展,但探索使用 LLM 促進人類對機器人進行遙控的工作卻很少。
本文利用 LLM 進行自動模式切換,假設 LLM 可以利用其豐富的上下文理解能力在新任務中做出有效的模式切換預測,而無需預先收集演示或手工設計規則。
LAMS 框架如圖所示:

考慮這樣的場景:人類操作員遙操作高自由度機器人手臂,使用低自由度控制器執行操作任務。此任務被建模為一個順序決策過程,由元組 (S , A_u , A_r, T ) 定義,其中 s_t 表示時間步驟 t 的任務狀態,a_u,t (A_u)表示用戶動作,a_r,t (A_r)表示機器人動作,m ? n,而 T: S × A_r → S 是不可觀察的轉換函數。
在實驗中,機器人的動作空間是 7 維(即 n = 7),即 a_r,t = (?x_t, ?y_t, ?z_t, ?roll_t, ?pitch_t, ?yaw, ?gripper_t)。用具有兩個自由度(m = 2)的操縱桿作為人機控制界面,用戶動作 a_u,t 表示操縱桿移動,一個二維向量。
目標是定義一個函數 F(s_t, a_u,t): S × A_u → A_r,將任務狀態和用戶輸入轉換為最適合該任務的機器人動作。由于專注于模式切換,旨在生成一個有效的映射 M,將每個操縱桿移動方向與相應的機器人動作方向對齊,如圖所示。具體來說,在設置中,操縱桿移動方向映射到以下機器人動作方向,具體取決于當前的控制模式:
D_up:{向前移動、向上移動、向上俯仰、打開夾持器},
D_down:{向后移動、向下移動、向下俯仰、關閉夾持器},
D_left:{向左移動、向左偏航、向左滾動},
D_right:{向右移動、向右偏航、向右滾動}。

機器人速度與用戶動作 a_u,t 的大小成正比:a_u,t 的每個元素都通過一個常數標量因子 v_m 縮放,以根據控制模式控制相應機器人動作方向的速度。索引 m ∈ {tr, ro, gr} 指定動作維度是否對應于平移、旋轉或夾持器打開/關閉。
在這項工作中,利用 LLM 來執行函數 F(s_t, a_u,t)。具體來說,將該函數分解為三個階段:F(s_t, a_u,t) = O(LLM(L(s_t)), a_u,t), 其中 L (s_t) 表示將任務狀態落地為語言指令 l_t,然后將其輸入到 LLM 中。L 定義為自然語言集。LLM 的輸出由 O(·, a_u,t) 處理以產生機器人動作 a_r,t。LAMS 開始時沒有特定于任務的演示,這意味著沒有預定義的輸入輸出示例。目標是隨著用戶與系統的交互逐步完善此功能。本工作中使用的所有 LLM 均由 GPT-4o 提供支持。
在每個時間步驟 t,當需要模式切換時,LLM 的輸入是語言指令 l_t = [l_pre, l_rule^t, l_pose^t],其結構由三個主要組件組成。
l_pre 是一個提示前綴,它為 LLM 提供目標和輸出格式等上下文。
l_rule^t 包含指導 LLM 模式切換預測的規則。這些規則源自用戶生成的模式切換示例。l_rule^t 最初為空,隨著用戶與 LAMS 交互而逐漸增大。
最后一個組件 l_pose^t,提供對機器人手臂當前姿勢和任務相關目標的描述。對于機器人手臂,將其姿勢編碼為一個字典,其中包含末端執行器的笛卡爾坐標和歐拉角以及夾持器狀態。對于任務目標,用自然語言語句描述每個目標相對于機器人手臂末端執行器六個維度的相對位置。
當需要模式切換時(在實驗中,這種情況發生在任務開始時或用戶暫停 1.5 秒以發出模式切換信號時),LLM 會被提示從每個動作方向組中預測最可能的動作方向:D_up、D_down、D_left、D_right,從而得到四個預測的動作方向。
一種簡單的模式切換方法是,將操縱桿的四個移動方向直接映射到 LLM 的自然語言響應。但是,在任務的某些階段,用戶可能同樣需要多個動作。如果用戶已經從 D_i 執行一個動作,并期望系統將模式切換到不同的動作映射,則在這種情況下 LLM 的響應可能對用戶來說無效。
為了解決這個問題,利用 LLM 的一個基本機制:LLM 不會直接生成單個響應,而是生成可能的下一個單詞概率分布,表示為 p(w_k |w_<k ),其中 w_k 是響應中第 k 個位置生成的單詞。利用這個概率分布,可以評估 D_i 中每個機器人動作的可能性。正式來說,對于組 D_i 中具有自然語言表示 d_i,j 的每個機器人動作,其中 j 表示 D_i 中動作的索引,計算 p(d_i,j |o_i),其中 o_i 表示 d_i,j 之前的 LLM 響應。
對于每個組,如果在當前模式切換調用之前剛剛執行具有最大 p(d_i,j |o_i) 的機器人動作,即 d_i^? = argmax_d_i,j p(d_i,j |o_i),將檢查第二大可能動作的概率 d?_i? = arg max_d_i,j?= d_i^? p(d_i,j|o_i) 是否超過預定義閾值(經驗上設置為 0.2)。如果是,使用 d?_i?;否則,使用 d?_i。
通過這個過程,得到 d_up、d_down、d_left、d_right,分別對應于操縱桿的四個運動方向。最終的機器人動作 a_r,t 是從 A_x 和 A_y 中選擇的動作組合,取決于 d_up、d_down、d_left、d_right 和用戶的動作 a_u,t。
雖然 LAMS 即使在第一次交互中也能夠對未見過的任務執行有用的自動模式切換,但由于任務知識有限,它可能會遇到錯誤。為了解決這個問題,將 LAMS 設計為在用戶與系統交互時逐步改進。這是通過合并用戶生成的模式切換示例增強提示 l_rule^t 來實現的。
具體來說,在任務執行期間,圖形用戶界面 (GUI) 會持續顯示當前模式 M_t,該模式顯示映射到每個操縱桿運動的四個機器人動作方向。如果用戶對 M_t 不滿意,可以手動切換到另一個模式 M′_t。此手動模式切換可以表示為 M′_t = ?_u^t (M_t),然后將其轉換為自然語言格式 l_?_u^t (M_t)。例如,在實驗中,用戶發起的 l_?_u^t (M_t) 的一個實例是:{“Joystick Up”:“Pitch up”}。這意味著用戶將“Joystick Up”的映射從不太喜歡的動作切換為“Pitch Up”。
為了促進 LAMS 的逐步改進,為每個任務維護一個例子列表 E。每次進行 ?_u^t(M) 時,l_pose^t 和 ?_u^t(M) 都會以自然語言格式形成一個示例 l_e^t,并將其添加到 E。
將這些示例總結為模式切換指導規則,可以為 LAMS 帶來更有效、更穩健的改進,而不是直接將它們合并到 LLM 的輸入中。為了實現這一點,除了例子列表 E,還為每個任務維護一個規則列表 R,該列表從空開始,隨著用戶執行任務而增長。使用 E 和 R,每次將新示例添加到 E 時,所有示例都會被打亂并連同提示前綴 l_pre-rule 一起輸入到一個單獨的 LLM(不同于用于自動模式切換的 LLM),生成指導未來模式切換預測的規則。
這個 LLM 自主地生成可變數量的規則 l_r^t = {l_r,k^t},k = 1,2,...,N,其中 N 是生成規則的數量。例如,在實驗中生成的規則之一是:
- 對于涉及傾倒的任務,例如將瓶子中的內容物倒入碗中,機械臂可能需要“向左滾動”或“向右滾動”才能達到正確的傾倒角度,尤其是在瓶子已經被握住的情況下。
l_r^t 附加到 R。
此規則列表更新過程,發生在每次手動模式切換之后,而不僅僅是在任務結束時。這使得 LAMS 能夠在任務執行過程中動態改進,即使在用戶第一次嘗試時也是如此。這種設計使 LAMS 即使在用戶第一次與系統交互時也能勝過基于靜態 LLM 的方法。
使用規則列表 R,當需要模式切換時,R 中的規則將被打亂以形成 l_rule^t ,它用作 LLM 輸入提示的一部分。在當前的方法中,規則在任務之間重置以確保獨立評估。然而,某些規則在各種操作任務中是可以通用的,例如伸手去抓取目標并對準目標。未來的工作可以探索一套共享的、可適應的規則集,利用用戶在各種任務中的累積互動。
所有實驗均使用 Kinova Gen3 機械臂進行,用戶通過 Xbox 控制器控制機器人。具體來說,控制器上的左操縱桿用于生成用戶動作 a_u,t。操縱桿移動方向和機器人動作方向之間的映射要么由自動模式切換方法(例如 LAMS)確定,要么由用戶在對自動切換不滿意時手動調整。
要在 LAMS 中執行手動模式切換 ?_u^t(M),用戶按下 Xbox 控制器 D-pad 上的一個方向按鈕。此操作會更新相應操縱桿方向的映射,而不會影響其他方向。例如,按下 D-pad 上的“向上”會更改操縱桿向上推的映射,而其他方向的映射保持不變。此手動模式切換過程使用戶能夠糾正自動模式切換方法所造成的錯誤,以確保任務完成,同時還提供幫助 LAMS 隨著時間推移逐步改進的示例。
主要評估指標是用戶手動模式切換的次數,切換次數越少,表示自動模式切換越有效。
在兩個復雜的多階段任務上評估 LAMS:
1) 倒水:打開瓶蓋,然后拿起瓶子,將瓶子里的東西倒進碗里。
2) 存放書籍:拿起放在桌子上書脊朝上的書,然后將其放入書架中。
對于每項任務,為了評估 LAMS 逐步改進的能力,一個完整的實驗包含三個交互,用戶每次使用不同的目標布局完成任務三次。這些交互稱為“試驗 1”、“試驗 2”和“試驗 3”。
如圖所示用戶研究的實驗設置。參與者坐在機械臂后面。在整個研究過程中,用戶可以持續看到顯示當前控制模式的 GUI,其中顯示映射到每個操縱桿運動的四個機器人動作方向。

END

