播客:RL+Control如何將機器人可靠性逼進99.9x%

具身智慧爆火2年之後,在2024年的年尾,我們聊一個理想很豐滿但現實很骨感的問題:具身智慧可靠性!這次論壇,我們邀請了在解決可靠性問題最有機會的兩條路線,RL和model based control的代表性學者,來一起交流如何將機器人可靠性逼進99.9x%大關。
這期文章是直播內容的總結,我也將直播音訊編輯成播客,可以去小宇宙APP搜“ReSpark這檔欄目。ReSpark是我和幾位看機器人方向的投資人夥伴共創的欄目,我們希望能夠在大行業下,從現在開始記錄,記錄那些推進這個領域前進的學者、創業者、投資人在不同階段的成果、故事和心路歷程。
When intelligence reshapes reality, the future sparks now!Welcome to Respark!我們會陸續推出具身智慧領域的商業訪談,歡迎大家訂閱播客。
以下為本文目錄
👇
1. 嘉賓介紹
2. 是掀起浪潮的人,也是浪潮推起的人
3. RL和Control之於Locomotion
  RL和Control本身都不是方法,而是問題
  Sim2Real RL是一種基於模型的方法
  Sim2Real RL優勢一:更強的離線計算能力
  Sim2Real RL優勢二:可以繞開狀態估計問題
  Control的優勢一:具備線上計算能力
  Control的優勢二:具備很多不錯的結構
  RL和Control結合
  RL和Control結合的工作推薦
  RL與Control在實際應用上的表現對比
  RL的優勢
  從RL的角度來看與機器人的結合
4. RL和Control之於Manipulation
  操作問題對機器人為什麼這麼難?
  為什麼要用真實世界資料來解決操作問題?
  操作和移動問題的本質不同
  Manipulation路線之爭
  Control的方法對操作任務的侷限性
  在模擬裡解決操作問題的侷限性
  模仿學習和強化學習結合在解決操作問題機會
5. 如何將通用機器人可靠性逼進99.9x%?
  模仿學習和強化學習結合在解決操作問題機會
  RL對人形機器人控制可靠性的迭代
  行業應用傳統控制和強化學習哪個用得多?
6. How to Make RL Great Again?
1. 嘉賓介紹
羅劍嵐:我目前是伯克利人工智慧研究實驗室(BAIR)的博士後研究員,博士學位同樣在伯克利獲得。曾在谷歌工作兩三年後,我又回到了伯克利。從 2015 或 2016 年起,我專注於機器人學習領域,主要研究機器人操作技術。當時,這一領域尚未被廣泛稱為“具身智慧”。
石冠亞我目前是卡內基梅隆大學(CMU)機器人研究所的助理教授,於 2023 年加入 CMU,算是學術界的新兵。我博士畢業於加州理工學院控制系,師從控制領域的多位大師,如 Richard M. Murray 和 John Doyle。從 2017 年起,我開始研究“控制與學習”(Control+Learning)的結合,至今在強化學習與控制交叉領域已有七八年的研究積累。
博士畢業後,我在華盛頓大學跟隨 Byron Boots 教授做博士後,專注於機器人學習領域。本科階段,我畢業於清華大學。今天的主題讓我非常興奮,這個問題我從本科時期就開始思考,已經接近十年了,很期待與大家討論,或許還會丟擲一些大膽的觀點(笑)。
盧宗青我來自北京大學計算機學院,主要研究方向是強化學習演算法。我自 2017 年回國後一直專注於強化學習的研究,近年來也逐漸涉足機器人領域。此外,我還在跟進大模型的相關研究,尤其是關於視覺標記化(Vision Tokenizer)以及互動學習的相關內容。
朱秋國我來自浙江大學控制學院,擔任副教授,同時也是雲深處科技的創始人。我長期致力於人形機器人和四足機器人的研究,早期以傳統控制理論為主。自 2019 年起,我與國外學者合作,開始涉足強化學習方向,並主要帶領研究生團隊開展相關研究。
2. 是掀起浪潮的人,也是浪潮推起的人
石冠亞:我覺得機器人與其他領域的最大區別在於它是一個系統性工程,由多個模組組成,比如可以類比為大腦、小腦和肌肉。大腦對應高層演算法,小腦負責全身控制,還涉及硬體等多個方面。
讀博時,我的導師 Joel W. Burdick 提到一個“波浪理論”(Wave Theory)。他說,機器人領域每次成為熱點,就會掀起一波浪潮,推動技術進步。雖然可能無法直接通向通用人工智慧(AGI),但總會留下成果,為下一次浪潮奠定基礎。我非常認同這個觀點。
至於為什麼選擇機器人領域,我認為機器人是一個極好的研究平臺,可以承載各種科學探索。比如你可以挑戰極限,開發跑步機器人,也可以從材料科學或演算法的角度出發。這個領域非常多樣化,能夠激發我持續研究的熱情。
在觀點方面,我一直堅持“真實環境中的學習”非常重要,而不僅僅依賴端到端學習或大規模資料。去年一場關於“Data is all you need?”的討論會(大模型能帶來通用機器人嗎?),投票結果是 50:50,這表明對這一話題的看法還很分化。我認為真實資料和結構化的學習框架依然不可或缺,這既是我的看法,也是我堅持的方向。

朱秋國:我從事機器人研究已有 15 年,主要聚焦於人形機器人,同時也在研究四足機器人。最初我們與清華大學合作參加 ROBOCUP 人形機器人比賽。當時的願景是,到 2050 年組建一支人形機器人隊伍,能夠戰勝人類足球隊。這對機器人研究提出了非常長遠的目標。

人形機器人是一個極好的研究平臺,但也充滿挑戰,尤其是控制穩定性方面。我們的目標是讓機器人不僅能走出實驗室,還能適應複雜的真實環境。比如在 2010 年前後,我們實驗室嘗試讓機器人走出實驗室,到操場上走路。這看似簡單的目標,耗費了近十年才實現。這讓我深刻體會到,機器人研究是一個需要長期堅持的方向。
在這過程中,理論和實踐都需要不斷升級。對我來說,熱愛機器人是基礎,而長期的堅守和耐心更是不可或缺。

羅劍嵐:我最初在伯克利研究控制領域時開始接觸機器人學。第一個專案是機器人操作,傳統控制方法中,狀態估計和控制是分離的,但在複雜操作場景下,狀態估計往往非常困難,這限制了傳統方法的應用。

2015 年,我接觸到伯克利團隊的端到端學習方法,尤其是《Guide Policy Search》這篇論文。這種方法直接從感知到控制進行最佳化,不再依賴精確的狀態估計,給了我很大的啟發。儘管操作任務仍然充滿挑戰,但端到端學習方法憑藉其廣泛的適用性,正在成為解決複雜操作問題的重要方向。

盧宗青:我的研究起點與大家略有不同,早期主要聚焦於強化學習演算法,應用範圍多在 MuJoCo 和遊戲領域。隨著大模型的發展,我們嘗試將強化學習與大模型結合,期望開發出通用智慧體(Agent),能夠完成多種複雜任務。然而,我們發現即便有大模型的支援,很多問題仍需要在真實環境中與物理世界互動才能更好地解決。

因此,我們逐漸將目光轉向機器人領域,尤其關注 Locomotion 和 Manipulation 任務。結合真實環境中的資料,我們探索如何利用大模型更好地理解物理世界。比如,在視覺理解方面,目前大模型的能力還很薄弱。我們正在研究如何透過視覺、觸覺等多模態互動,提升大模型對物理世界的理解。
機器人作為與物理世界互動的載體,是未來實現更強通用智慧的關鍵工具。接下來的研究重點,將是如何讓大模型更高效地融入真實環境的資料和場景。
3. RL和Control之於Locomotion
RL和Control本身都不是方法,而是問題
石冠亞:我的第一個觀點,算是個暴論吧。我覺得 RL以及Control本身都算不上是一種方法,而應該是一個問題。我覺得強化學習的定義就是有一個馬爾可夫決策過程(MDP),包含獎勵(Reward)和系統動態特性(Dynamics),目標是最佳化獎勵,找到策略用於控制,這和Control本質上是一回事。其定義就是面對動態系統去設計策略以滿足一些限制,不能因為Richard Belleman提出“SARS”這套表述就說它們不同。
Richard Bellman 提出的“S, A, R, S”是強化學習中馬爾可夫決策過程(MDP)的一種表述方式,其中:S (State):表示系統的狀態,描述了環境或系統在某一時刻的情況。A(Action):表示代理(如機器人)在當前狀態下可採取的動作。R(Reward):表示系統在某一狀態下采取某一動作後獲得的獎勵,通常用來衡量行動的好壞。S'(Next State):表示採取某個動作後,系統轉移到的下一個狀態。這個框架是強化學習的核心,用於描述在不同狀態下,代理透過採取行動獲得獎勵,並根據獎勵調整行為,以達到最佳化某種目標的策略。
因為RL和Control本質是問題,所以他們都有很多演算法,比如Sim2Real RL就是很具體的方法,我可以在像MuJoCoSR遊戲這類做Locomotion的主流模擬器裡,用近端策略最佳化演算法(PPO)訓練策略,再應用到現實世界中,這跟劍嵐做的很多真機+ RL完全不同,我覺得它們的差別比RLControl的差別還大。
我的觀點是,它們是兩個不同的問題,得更具體地去探討。就拿強化學習來說,我們得明確具體討論的是哪種型別的強化學習。比如是模擬到現實的無模型強化學習(Sim2Real Model – Free Reinforcement Learning呢,還是當下很熱門的學習世界模型(Learning word model、也就是基於模型的強化學習(Model-based reinforcement learning),亦或是在真實世界裡開展的無模型強化學習呢?像劍嵐近期就有不少很棒的相關工作。
我覺得這些不同型別的強化學習其實差別挺大的。另外,還有離線強化學習(Offline reinforcement learning),有很多演示資料(Demonstration)的時候,不光能做模仿學習,還可以進行離線強化學習。我覺得它們之間的差別甚至比強化學習(RL)內部不同型別之間的差別還要大,這是我的第一個觀點,第一個暴論。
Sim2Real RL是一種基於模型的方法
說到 Locomotion,目前在這方面最流行的RL方法就是模擬到現實強化學習(Sim2Real RL),就是先在虛擬模擬(Simulated)環境裡,運用近端策略最佳化演算法(PPO)或者其他類似的演算法去訓練出一個策略,之後再把這個策略部署到現實世界當中去。我的第二個暴論就是,我認為 Sim2Real RL是一種基於模型的方法你想想它的操作流程就能明白,首先得有一個你比較信賴的模型,比如模擬器(Simulator),然後在這個模擬器裡訓練出一個策略(Policy),之後再把這個策略部署到現實(Real world)當中。
Sim2Real RL優勢一:比MBC有更強的離線計算能力
不過我覺得它和 MBC在兩個維度上是不一樣的,那它的優勢在哪?在我看來,Sim2Real RL最大的優勢,在於其離線計算能力近乎無窮。也就是說,它可以離線從成百上千乃至上萬條軌跡(Trajectory)當中去學習策略,有充足的時間去進行最佳化,從而找到合適的策略。 像MPC這類大多數基於模型的控制方法,其實它們所有的算力運用都是在線上的。就是說,我得線上去確定機器人下一步往哪兒走,它並沒有離線的算力。
所以我覺得這就是 Sim2Real RLMBC在算力運用方面第一個主要的不同點,也就是算力到底是用在離線階段(Offline)還是線上階段(Online)。離線的定義,就是在機器人開始執行之前進行相關運算;而線上就是機器人一邊執行,一邊去計算相應的內容。
Sim2Real RL優勢二:可以繞開狀態估計問題
然後第二個我覺得 Sim2Real RL相對MBC最大的優勢在於,它在一定程度上繞開了狀態估計(State estimation)的問題。在傳統的控制裡,我們一般遵循分離原則(Separate principle),比如說要用模型預測控制(MPC)去控制一個人形機器人,在這之前,大機率得先搞一個狀態估計器(State estimator),去估計機器人自身的速度、角速度等物理量。
從某種程度上,在傳統控制裡,狀態估計(Estimation)其實和Control一樣,都是要面對的問題。說到底,你得清楚機器人所處的狀態、得知道機器人此時此刻在什麼位置。而強化學習(RL)在一定程度上能繞開這個問題,因為它可以同時學習策略(Policy)和狀態估計器(State estimator)。
拿目前在 Locomotion方面最成功、最流行的邏輯來說,師生網路學習(Teacher Student Learning)。自2020Science Robotics釋出論文Learning quadrupedal locomotion over challenging terrain之後,大概有幾千篇文章都遵循這個邏輯,一直到現在,差不多5年時間把師生網路學習推到了頂峰。
師生網路學習是什麼意思?就是先在模擬環境(Simulator)裡訓練出一個所謂的教師策略(Teacher Policy,這個教師策略知曉一切,比如它知道模擬器裡的所有資訊,像地面的各種情況、機器人的速度等等,這些我們稱之為特權狀態(Privilege state)。 然後,這個教師策略Policy)是沒辦法直接部署到真機上的,因為在現實中,你沒辦法知曉地面情況,也不清楚機器人的絕對速度等資訊。不過在RL裡,利用這個教師策略後,可以將它提煉到一個叫學生策略Student policy)的東西里,這個學生策略的輸入是你所能觀測到資訊的歷史記錄,也就是過去n的相關情況。目前這套方法已經很成熟了。
就是因為有這種師生學習框架,所以繞開了狀態估計(State estimation)這個問題。相當於在實際應用中,你不需要獲取真實的狀態,可以直接利用感知資訊的歷史記錄就可以進行控制了。 我覺得這兩點就是強化學習(RL)最大的優勢。
Control的優勢一:具備線上計算能力
而對於 Control,我認為它也有兩大優勢。第一點是跟RL剛好完全相反。首先,Control具備線上計算能力Sim2Real RL存在的問題是,你在模擬環境裡訓練出一個策略後,一旦應用到線上,這個策略就固定住了。哪怕這個策略效果很差、很不理想,你也沒辦法去即時調整它,除非你再去做真實世界的RL,而且基本上都會受到Sim2Real GAP的影響。如果模擬器質量很差的話,那產生的誤差就會很大。但Control有個很重要的思路,就是可以進行類似MPC那樣的操作,能夠一邊讓機器人執行,一邊進行相應的計算。
Control的優勢二:具備很多不錯的結構
Control的第二個的優勢就是它具備很多很不錯的結構。現在大部分流行的 RL演算法,其實就是近端策略最佳化演算法(PPO),大家都用它,因為它是同策略(Onpolicy)的,大家也不太在意取樣效率。它最終呈現出來的效能表現還算比較好,而且操作起來也相對簡單,不過它本身並沒有什麼特定的結構,這就導致有時候它會收斂到一些我們不想要的狀態,比如一些很奇怪的狀態。但控制就不一樣了,它有很好的結構,能夠藉此提高取樣效率,這就是它的一個優勢所在。
RL和Control結合
我很多研究的核心思路,就是嘗試將 RLControl相結合,例如把Control的安全性融入RL中,或者藉助Control良好的結構使強化學習變得更具穩健性。最後,我和前面三位老師有一個共識,最有效的學習方式最終還是要落實在真實世界當中去開展和驗證。
我對於當前模擬(Simulation)方面的進展並不是特別樂觀,因為我始終覺得,開發出一個非常完美的模擬器本身就是極為困難的一件事。我們不能期望能有達到通用人工智慧(AGI)水平的模擬器出現,然後憑藉它去解決所有問題。所以,一定要以某種方式,在真實世界裡去做學習(Learning)才行,只不過我所採取的角度是將RLControl相結合去做真實世界裡的學習。
RL和Control結合的工作推薦
第一個,我做過很多人形機器人相關的工作,其中有一套邏輯是我個人特別喜歡的,那就是別讓 RL直接進行一對一(n to n)的輸入輸出操作。我覺得當下有不少論文,就是用 RL去輸出比較高層的資訊,打個比方,要是去控制一個人形機器人,為什麼非得讓強化學習(RL)去輸出每個電機的扭矩呢?其實可以讓它輸出一些更高層的資訊,比如可以讓它輸出速度、加速度等資訊。 我覺得這是個挺有意思的方向,我有不少相關論文,大家可以搜一下CAJun就能找到,也可以直接進入我實驗室主頁看看那些影片,影片裡機器狗跳躍等展示的成果,其實都是基於這個邏輯做出來的。
第二個,給大家推薦的一系列工作(Real2Sim2Real),是帶有現實到模擬(Real to Sim的特點。我沒直接做Sim2Real的工作,而是先進行Real to Sim,再做Sim2Real。我個人挺看好這個方向,就是不在固定不變的模擬器裡學習,而是到現實中獲取資料來改進模擬器,之後再基於改進後的模擬器進行學習。 這個方向我覺得也挺不錯的,我們近期在這方面也開展了一些工作。
第三個,就是基於 MPC相關內容(Learning-based Dynamics+MPC)。更有意思一點的做法是,我們先學習一個世界模型(World model),然後再利用MPC去進行控制操作。這方面我們最近有挺多文章的,比如說DIAL-MPC的相關研究挺熱門,很多人都在用,因為它的程式碼相對於傳統MPC簡單好用很多。我們做了很多關於學習動力學(Learn dynamics)的工作,就是在現實環境裡把動力學模型學習出來,之後再運用基於取樣的模型預測控制(Sampling-based MPC)去開展後續的Control。 因為基於取樣的模型預測控制算是一種最靈活的MPC方法了。
RL與Control在實際應用上的表現對比
MPC+WBC方法
朱秋國:早期在機器人上我們大量運用了 MPC +WBC(全身運動控制)這類方法,做了不少相關工作。但從整體效果來看,採用 RL的方法能更好地展現機器人全身運動能力
MPCWBCRL出現之前算是比較主流的方式,因為無論是面向人形機器人還是四足機器人,它們的全身模型很複雜,當要去求解這種高維度的最優問題時,不僅需要大量計算,還得保證線上的即時性才行。
MPC處理簡化模型的長時域最最佳化問題
所以我們運用 MPC時,往往會對模型進行簡化,也就是處理簡化模型的長時域最最佳化問題。在這個過程中,需要進行建模,比如先將其簡化成單剛體模型,複雜一點的話就變成機器人模型。在此基礎上,透過預測來保障機器人狀態軌跡的可預測性,進而確保機器人的穩定性。但做完簡化模型那一步後,大家發現存在問題,因為簡化後的模型很難真實反映機器人全身動力學的特點。
WBC處理複雜模型的短時域最最佳化問題
於是我們的研究進入了第二階段,也就是處理複雜模型的短時域最最佳化問題,就是所謂的全身運動控制(WBC在這個階段,要建立機器人的全身動力學模型,然後計算出當前的最優控制以保證即時性,用全身運動控制(WBC)來彌補模型預測控制(MPC)因簡化模型而產生的問題。這項工作確實開展了挺多,也取得了比較好的效果,不過運動的靈活性還是比較固定。我們透過這種方法做出的效果,很難與波士頓動力Atlas機器人相媲美,Atlas呈現出的效果是最好的。
在很多場景下,我們現在用的機器人演算法還是以傳統的模型預測控制(MPC)加全身運動控制(WBC)這種方式為主,因為這種方式比較穩定、可靠,也容易解釋和分析。不過這種方式也會帶來一些問題。
MPC+WBC的問題
第一個問題,比如對於腿足機器人,它的運動模式是足部離散運動,在它跳躍或者行走、跑步的時候,要怎麼保持它連續跳躍的穩定性?如果採用傳統方法,就會遇到幾個問題,像怎麼保證機器人在規定時間內接觸地面,還有接觸地面後怎麼保證它能快速響應之類的問題。要是還用傳統的最佳化方法框架去處理的話,比如把時間納入到最佳化問題裡,就會發現這個最佳化問題會變得極為複雜,而且現在大部分人運用這套方法時,往往會忽視這個問題。
第二個問題是,關於觸覺感知,怎麼能讓它在模型預測控制(MPC)起作用前就發揮作用呢?很有可能等檢測到相關資訊時,機器人就已經摔倒了。這些是我們在使用傳統模型控制方法過程中會碰到的一些問題與挑戰,有些問題很難解決,甚至根本沒辦法解決。
RL的優勢
那麼 RL還是有它的優勢,前面石老師講過的那些優點我就不贅述了。我覺得RL在控制領域裡有點類似鎮定器,在與環境互動接觸的過程中,靠著這樣一套強化學習的模型,能夠確保機器人穩定可靠。所以現在我們推出的人形機器人、機器狗、輪足機器人,我們實際運用的都是 RL這套方法。在運用過程中,無論是發揮全身動力學的能力,還是實現全身的協調性,都能展現出更高的靈活性。
所以我們目前主要的研究重點還是放在 RL上,但這並不意味著基於模型的方法就沒用了。在浙大這邊的研究中,我們帶的研究生已經開始嘗試在RL技術基礎上,融入一些MPC的思路或設想,去開展一些更具挑戰性的工作。
我覺得從原來單純用 MPC,到後來使用RL,再到現在進行MPCRL相結合,可能就是在這個領域不斷摸索的一個過程。
從RL的角度來看與機器人的結合
盧宗青我先回應一下冠亞剛才提到的問題。首先,無模型強化學習(Model free RL)和Control解決的其實是相同的問題,面臨的數學問題也是一樣的,只不過解法不同罷了。
我一直在從事強化學習相關工作。對於機器人,尤其是人形機器人的解法,我們側重的角度可能和大家不太一樣。從人的角度來看,我們更多基於一種分層的假設框架,在高層可能更多涉及姿態方面的調控,或者說並非傳統意義的控制,而是透過姿態去影響,而在下層,比如低層級策略,去進行具體的控制操作,好比針對人形機器人,就是過控制電機或其他控制量來實現相應姿態。
所以我們更關注與物理世界的互動,而在互動過程中需要融入視覺資訊。畢竟人在控制自身身體時,會融入大量視覺資訊,還有觸覺資訊等各類從外部能感知到的資訊。也就是人形機器人如何與物理世界進行互動。
而且就人形機器人而言,我們可以利用大量與人相關的資料,包含網際網路上能獲取到的影片等資料。那如何依據這些資料讓機器人實現對自身身體的控制?對於下層策略來說,不管是運用近端策略最佳化演算法(PPO)在模擬器裡訓練,還是採用模型預測控制(MPC)的方法,只要能達成上層所給出的目標就行。我覺得這樣的思路或許更容易構建出一套系統,從而更好地解決相關問題。
對於 Locomotion,目前多數情況下,不管是用RL還是MPC的方法去處理,解決的都是同樣的問題。但我覺得其中更關鍵的是,怎樣融入額外的模組,以此來考量物理世界中的相關資訊。另外,就物理世界中的資訊而言,學習動力學(Learning Dynamics)可能是相當困難的事。像其他學者提到的構建世界模型,要想在視覺層面以及觸覺層面真的構建出一個完整的模擬器或者世界模型,我認為難度很大。所以從我的角度來看,在現實世界中去學習或許會更好一些。
4. RL和Control之於Manipulation
操作問題對機器人為什麼這麼難?
羅劍嵐:大家剛才都在聊 Control,我本身也是控制背景出身,雖說現在不寫控制方面的論文了,但也接受過完整的相關訓練。我覺得控制是非常有效的,它的有效性已經體現在我們生活的方方面面了。汽車需要運用控制,我們靠著控制技術把人送上了月球。就好像如今我們做科研也不會再去專門引用牛頓三大定律了,因為它已然是既定存在且確實有效的。
我們具體把控制放到機器人這個範疇裡來看,其實很多方面是存在不少問題的。因為就像冠亞所說,機器人是一個很大的系統,你可以說汽車是一種機器人,飛機也是機器人,腿足機器人同樣是機器人,機械臂做操控也是一種機器人技術。這涉及到的很多問題都不一樣,無論是無模型(Model-free),還是基於模型(Model-based),都需要具體問題具體分析。
總體來講,大家可能主要在做三件事,第一個是導航(Navigation),第二個是移動(Locomotion), 第三就是操作(Manipulation)。我們探討的這些方法論,要是套用到這三個不同的問題、不同的情境當中,那實際上是在說不同的事。
比如剛才冠亞提到的端到端,在這三個問題裡,它的表述其實是不一樣的。比如說針對導航做端到端,我不知道該怎麼做,感覺要是把整個地球都繪製一遍地圖來做,那這肯定不行的。應該是透過視覺基礎模型獲取語義資訊,接著進行地圖構建、同時運用即時定位與地圖構建(SLAM)等技術。
而對於 Locomotion,這是個很有意思的問題,大家剛才一直在說模擬器之類的工作,從本質上講,這其實意味著要對物理規律進行逆向推導。在對物理規律進行取樣時,其實就是在做基於模型的控制,對於這個觀點,我其實挺認同的。 模擬器提供了一個更好的計算工具,但它並不能直接給出一個策略(Policy),得使用最佳化器(Optimizer)才會有相應的策略。
然後再來說說 Manipulation方面,這其實是另一個問題了。在機器人學裡存在一個著名的悖論,叫莫拉維克悖論(Moravec's Paradox)。它所闡述的內容是這樣的:回顧50年的人工智慧發展歷史,我們會發現,對人類而言簡單的事,讓機器去做卻很難;而那些人類做起來難度較大的事,機器人操作起來反倒簡單。比如,我們能夠教會機器下圍棋,像IBM的深藍早在20年前就可以下棋了,後來AlphaGo打敗了李世石。然而,像拿起水杯這類在人類眼中極為簡單的動作,對於機器來說卻異常困難。針對這一現象,有著諸多解釋和爭論。
Moravec's Paradox(莫拉維克悖論)是機器人學家和人工智慧研究者 Hans Moravec 在 1980 年代提出的一個觀察,描述了人工智慧系統在執行任務時的反常現象:對於人類而言簡單的任務,比如感知和運動控制,對機器卻極其困難;而複雜的任務,比如邏輯推理和數學計算,對機器來說卻相對容易。莫拉維克指出,這種悖論源於人類智慧的非對稱性:“低階”技能(如感知和運動控制)基於數百萬年的進化,深深嵌入了生物的感知運動系統中;而“高階”技能(如邏輯和數學)發展時間相對較短。
莫拉維克悖論提醒我們,在設計智慧系統時,不應該低估生物低階技能的複雜性。它揭示了在構建通用人工智慧(AGI)時,真正的難點可能不是讓機器完成邏輯推理,而是讓它們自然地感知和與現實世界互動。
之所以會出現這種情況,是因為人類歷經了數十億年的漫長進化,而數字化以及真正擁有智慧,其實是相對較近幾千年才發生的事。所以,讓機器掌握相應的動作(Movement),要比讓它獲得推理能力(Reasoning)以及內在的推理智慧難得多。不管怎麼說,這實際上就是操作(Manipulation)需要解決的核心問題。我們怎樣才能讓機器人像人類一樣去操控,去與物理世界進行互動,並且能可靠地完成這些事。
在這裡,無論是端到端的方法,還是其他方法,與之前提到的導航(Navigation)或移動(Locomotion)其實存在一些顯著的不同。為什麼這麼說呢?因為在操作任務中,通常會涉及到一些具體的物品和任務情境。比如,當你有一個機器人,它的前方往往會有一個相對固定的工作區域。無論是移動機器人,還是其他型別的機器人,通常需要先透過區域性運動等方式導航(Navigate)到指定的位置。之後,在這個固定空間裡,不論是工廠、家庭,還是其他應用場景,機器人面前的物體尺寸和任務範圍一般是相對確定的。
在這種情況下,使用端到端的方法是有一定成功機率的,因為機器人的工作範圍是有限的。在一個固定的工作區域中,不管是在工廠、家庭,還是其他場景,機器人面前的物體尺寸和任務範圍通常是相對確定的。這種環境特點使得端到端方法能夠在特定任務上表現出一定的效果。然而,這種成功依賴於對特定環境的資料訓練和驗證,確保模型在有限範圍內具備可靠性和魯棒性。
我不太容易陷入關於到底是端到端還是非端到端的爭論中。我可能更關注這個問題究竟要如何才能被解決。至於是不是端到端,我們可以想想這樣一件事,Jeff Hinton在他2018年的圖靈獎演講上,說了這麼一句話。他說最開始的語音系統,如果你想用一個神經網路去替代系統中的一部分,那這個神經網路會慢慢地把其他部分侵蝕掉,然後開始在整個系統裡迴圈運轉、不斷擴張,就如同桿菌那樣,會把系統的其他部分也全都掉,最終整個系統就完全變成由神經網路主導的樣子了。
但是即便如此,我的重點在於,對於 Manipulation而言,實際上是可以學到這樣一個策略的。端到端的優勢在於沒有中間的偏差,並且可以直接針對目標進行最佳化。而且,Manipulation為我們提供了這樣的環境和設定來做這件事,實際上可以使所有情況都適配到。
為什麼要用真實世界資料來解決操作問題?
現在我們再回到這個問題:我們為什麼要使用真實世界的資料呢?我們先拋開那些非常具體的技術問題,先來思考一些基本的問題。今天研討會的主題是如何將機器人的可靠性逼近到 99.9%或者100%。我們可以思考的一個問題是:機器人為什麼達不到100%呢?
既然達不到 100%,這就意味著我們的模型、或者其他什麼東西也好,和實際環境是存在一定差距的。只有縮小這個差距,才有可能達到100%。那麼,在一個存在未知資訊的環境中,要如何縮小這個差距?除了和這個環境進行互動,把未知資訊獲取回來,然後以某種方式進行最佳化之外,沒有別的辦法。這是最通用、最具擴充套件性的方法。
你可以說我們能夠設計一些東西來滿足特定需求,然後構建一些模型,讓它們去適配一兩個特定的任務。就好比如今我們有這類專用模型,它就專門負責做一件事,速度特別快,而且成功率能達到 100%
但要是有 1000個任務、1萬個任務等等情況的話,那不可能每個任務都按這樣的方式去做。尤其是我們現在想要的是通用型、帶機械臂的機器人去執行任務的話,雖然各個任務具體細節或許不一樣,但總體的基本邏輯都是一樣,你得先有一個初始的設想、猜測,然後再與跟環境進行互動,最終把那些缺失的部分補上。
透過某種方式來構建這樣的機制,比如說 RL,確切來講就是強化學習的定義所描述的那樣,具體如何操作,我們有很多種做法,有人說要用基於模型的強化學習(Model-based RL),有人說用無模型的強化學習(Model-free RL)。其實我可能不會特別傾向於其中某一種,它們各有各的長處。
總結一下,先說說為什麼要採用 RL在現實世界裡,要實現高效能的操作並達到高可靠性,對於每一個環境來說,最通用、最具擴充套件性的辦法必然是強化學習。而且它並非是一種被動的資料學習,不是簡單地去收集一些離線資料就可以了。如果想要達到100%的可靠性,那就一定要與環境進行互動,而要實現與環境互動,就必須得運用強化學習,這是比較基本的邏輯。
操作和移動問題的本質不同
 Manipulation領域選擇強化學習而非傳統控制,有著深刻的原因。今天我們討論的一個重要主題是ManipulationLocomotion的對比,這兩者在本質上是完全不同的問題。
對於 Locomotion,主要的挑戰在於機器人本體的不確定性。這種不確定性相對有限,例如機器人可能踩到石子,或者路面出現打滑等情況。從機器人本體的角度來看,這些不確定性的影響是可以量化的。在控制領域,我們有一整套數學工具來應對這些問題,其中之一就是魯棒控制(Robust control)。魯棒控制的核心思想是對不確定性進行定量建模,進而確定最壞情況的界限(Worst-case bound)。只要實際的不確定性在這個界限範圍內,設計出的控制策略就是有效的。
然而,Manipulation的情況則完全不同Manipulation的主要挑戰來自外部世界的不確定性,而不是機器人本體的不確定性。機器人本體是一個經過精心設計的確定性系統,但外部世界的複雜性是無限的(Unbounded complexity。這些不確定性可能來自視覺、物理互動、觸覺感知等多個方面,而對這些因素進行全面、精確的建模幾乎是不可能的。儘管我們可以對其中的某些部分進行建模,取得一些成果,但始終無法完全掌控這些外部複雜性。
這正是 Manipulation問題需要強化學習(RL)的原因所在。RL透過與外界的互動,能夠更好地適應外部環境中的不確定性。從本質上來說,ManipulationLocomotion是兩類截然不同的問題:Locomotion可以透過控制理論中現有的工具(如魯棒控制)較好地解決,而Manipulation則需要透過RL等資料驅動的方式,去應對外部世界的複雜性和不確定性。
Manipulation路線之爭
王建明:目前技術路線不一,我留意到主要有幾個,首先是模仿學習加真機的路線,像以擴散策略(Diffusion policy)或者其他以Aloha為代表的模仿學習路線,能產生一系列比較好用的策略(Policy);其次是羅博士Hil-SERL為代表的RL+真機的路線;第三是RL+模擬來解決操作問題的路線;還有一條是對模擬進行最佳化,比如新增一些可微的元素進去,例如透過可微分模擬的方式來構建虛擬環境的世界模型。
石冠亞:我一直有個比較大膽的暴論,我覺得徹底解決機器人的操作問題其實和解決 AGI沒有區別。打個比方,就拿這個動作來說,像開瓶子、開杯子、開可樂、開門,雖然都用這一表述,但實際的動作完全不一樣。我覺得要是有一個策略(Policy)能解決開啟任何東西這個問題,那它和AGI就沒什麼區別了。
而且,從衡量指標來看,我個人很容易分不清到底是因為任務選得好,所以效果不錯,還是因為方法本身確實有了一些實質性的突破。另外,我特別贊同剛才說的那幾個分類。不談利弊,我可以跟大家講講我對它們的看法。
我覺得第一類屬於大力出奇跡的做法。就是先收集大量的演示資料(Demonstration),然後採用行為克隆的方式。其實現在做離線強化學習的人挺少的,大家普遍都是直接進行行為克隆。剛才提到的擴散策略、ALOHA,還有近期在物理智慧層面的Pi 0,都是遵循這一個邏輯。
第二類 Sim2Real,採用這種方式的人相對少一些,但我覺得還是挺有意思的。其中最有名的應該就是2019OpenAI做的用Sim2Real方式轉魔方的專案。
第三類,有很多微調相關的做法,就是先進行預訓練,然後再做微調之類的操作。
另外第四類,你之前沒提到,我可以補充一下,就是用傳統控制來做驗證的情況其實也是存在的。不過它最大的問題就是不太能泛化。比如說,你要是設計了一個轉筆的策略(policy),可能就只能轉某一種特定的筆,要是筆的質量變為原來的2倍、長度變為原來的2倍,可能就沒辦法轉了。
第五類是基於模型的方法,感覺這類比較小眾。就是先學習一個模型,然後再去做控制。就像劍嵐說的,它的難點在於你不僅要預測狀態、幫助預測目標資料,而且做建模本身就很困難。這類工作雖然小眾,但確實存在。我知道像加州理工學院(Caltech)、麻省理工學院(MIT)有人在做,他們研究諸如粒子動力學(Particle Dynamics)之類的內容,然後基於此開展工作。(這條路徑是Learning-Based Dynamics Model+MPC,我們會在近期推出一個關於這條路線的專訪)
羅劍嵐:我也來談談自己的看法吧。如果我們想要實現 AGI,要對人類智慧進行逆向工程,那所需的計算能力,單是用來處理人類的各種動作行為,幾乎就是無窮無盡的。
Control的方法對操作任務的侷限性
 Control方法用於Manipulation來說,它存在不少問題。在機器人學剛開始形成一門學科、逐漸興起的時候,那時並沒有視覺相關的技術,就如同處在盲人摸象的狀況裡。從理論構建角度看,控制的核心是HJB方程,該方程要求輸入的資料起碼得是可微的,或者說要相對平滑,理想狀態下要比上一時刻更平滑才行。
HJB 方程(Hamilton-Jacobi-Bellman 方程)是動態規劃中的一個核心數學工具,用於描述一個最優控制問題的解。它是由 Richard Bellman 提出的動態規劃原理髮展而來,結合了 Hamilton-Jacobi 方程,因此得名 HJB 方程。
然而,要是遇到高維度並且不平滑的輸入感知資料時,與之相關的那些理論基礎就會出現狀況,HJB就會失去作用,如此一來,控制的基礎也就被動搖了。一旦出現這種情況,不管在何種場景下,控制方法基本上就沒辦法發揮作用、失效了。
而機器人操作(Manipulation)必然是涉及感知這一要素的。如果你要處理感知相關的問題,就目前來看,最好的辦法是透過學習(Learning)的方式。既然操作(Manipulation)是需要感知參與的,那麼操作就必然要藉助學習了。
不過,這並不是說控制(Control)就完全沒有作用了。就拿現在機器人應用中一個比較大的話題來說吧,比如在碼頭場景下,有體型巨大的機器人要完成搬運貨物的任務,可能是四五個機器人一起協作,把貨物從裡面取出來、然後再放上去。在這種情況下,我們應該運用運動規劃(Motion Planning)的方法。並且,我們不但要採用目前最快、最好的線上運動規劃模型,還要利用相關驗證機制,把這些運動規劃都逐一驗證一遍,確保其準確性達到100%才行。要是不這樣做的話,就很容易出現機器人之間相互碰撞,或者機器人誤傷人之類的嚴重情況。
再說回操作。我們說的是那種有機械臂的機器人,它前方有一個工作區域,區域裡有一些物體需要進行操作。看上去策略學習在這種情況下並沒有那種特別複雜、特別難處理的動力學問題,但關鍵在於,如果我們能夠解決其中哪怕僅僅 5%或者10%的問題,那對於我們實現機器人走進千家萬戶的夢想來說,都會是一個很大的進步,機器人也會變得非常有用了。
在模擬裡解決操作問題的侷限性
第二點,來談談模擬的問題。我覺得當前存在一個比較突出的點,就是如果我們採用基於學習的操作方法,涉及到模擬與實際應用這兩方面對比的時候,會出現這樣一種情況:由於機器人目前還沒有被大規模部署,所以就沒辦法獲取到足夠多的實際資料,進而也就難以開發出更好的模型
當大家圍繞操作這個核心進行討論時,有人會說,操作能夠生成大量的資料。但要是採用模擬的話,其難點就在於要把模擬做得準確、完善。
我並不是模擬方面的專家,所以只能從一些比較基本的原理角度出發。這就好比,要去做模擬就相當於要去模擬整個宇宙。可要是我們有真實的資料的話,我們要做的其實就是構造一個機器人的大腦。而宇宙是包含了大腦的,建一個宇宙比建一個大腦要難得多,所以我們應該先去建大腦。
以特斯拉為例。特斯拉一開始在車輛投入使用前,可能還面臨資料不足之類的情況,可一旦它的車跑起來之後,情況就大不一樣了。我昨天還看了些相關資料,特斯拉現在一年生產出來的真實行駛資料能達到 500億里程,這時它面臨的問題根本不是有沒有資料了,而是這些資料多得完全存不下,他們現在都沒有足夠的硬碟去儲存這些來自各個攝像頭等渠道的資料。
我們現在思考相關問題,總是想著模擬器能夠生成海量的資料,可實際上,真實世界裡像特斯拉這樣的公司產生的資料量都已經大到難以處理了,關鍵問題在於:我們要拿這些資料怎麼辦。我們應該是思考怎麼去利用好這些資料,而不是僅僅著眼於模擬器能生成多少資料。
我確實覺得模擬是非常有用的。如果今天要開一家自動駕駛公司,要是有人跟我說不打算構建模擬器,那我肯定得問問這是為什麼,因為沒有模擬器的話,軟體整合之類的工作根本沒辦法開展,整個業務流程也會難以運轉起來。模擬器對於像抓取放置(Pick and Place)這類相對簡單些的、涉及運動學(Kinematic)的操作問題還是挺有幫助的。
不過,操作(Manipulation)問題的核心在於,一方面,我們得先處理好視覺輸入;另一方面,我們還要處理非常複雜的物理相關情況,像物體之間的接觸、流體的影響以及物體的變形等等複雜因素。與其費很大力氣去構造一個像模擬整個宇宙那樣複雜又龐大的模擬,還不如利用真實的資料,用真實資料就不存在任何的 GAP,然後再去深入思考怎樣基於這些真實資料來制定出更好的策略,這就是我比較核心的一個觀點了。
石冠亞:我非常認同劍嵐的這個觀點。哪怕是人也是如此。我們平時疊衣服、疊被子,我們之所以能做到這些,絕對不是因為我們會去求解納維斯托克斯方程。我們端起一杯水的時候,我們也不清楚這杯水具體的動力學原理。人在進行這些操作的時候,往往是憑藉著直覺來更好地利用經驗和感覺的。
說到模擬器,很多時候它其實是有點用力過猛了,做了過度的模擬(Overkill)。我們沒必要去模擬所有的東西,只需要模擬那種憑直覺就能把握的、關鍵的部分就可以了,這其實也和Locomotion相關聯。
那為什麼區域性運動在現有的框架裡是可行的呢?這是因為目前它基本上只處理到了一類模擬相關的問題,就是剛體動力學方面的問題,它其實並沒有過多涉及到像流體、顆粒材料等等更復雜的情況。
羅劍嵐:談到直覺物理學,其實在操控(Manipulation)任務中是個很有意思的話題。換個角度來看,操控通常存在於一個較低維度的流形(Manifold)中,也就是說,我們並不需要真正去解那些複雜的物理方程。例如,許多動態操作場景,比如鞭子的揮動、筋膜的運動等,實際上幾乎無法用傳統方法去求解,因為它們涉及非常複雜的偏微分方程(PDE),而這些問題本身的求解難度極高。
如果嘗試在偏微分方程的外環上進行最佳化,再在線上進行即時計算,這種方法在人類操作中顯然是不現實的。我可以肯定,人類的大腦並不是透過求解偏微分方程來完成這些任務的。相反,人類依賴的是一種直覺物理(Intuitive physics),這種能力是透過與環境的長期互動逐步形成的。比如,當你看到某個物體的位置,伸手去拿,或者在某處翻找,這些動作看似簡單,卻反映了人類對物理世界的直覺理解。
事實上,這種能力的形成遠早於現代科學的發展。幾萬年前,人類已經可以鑽木取火、拉弓射箭,而現代科學和數學體系的建立不過近 300年的事情。當時,我們既沒有偏微分方程,也沒有用抽象的數學工具去理解世界。由此可見,人類大腦在操控和操作中一定不是透過解偏微分方程來實現的,而是透過直覺與環境互動形成了一種與物理世界高效對接的能力。
5. 如何將通用機器人可靠性逼進99.9x%?
模仿學習和強化學習結合在解決操作問題機會
我們再來談談模仿學習和強化學習,我覺得這兩者並非是完全相互排斥的。模仿學習能夠給我們一個很好的起始點,但如果要達到 100%的成功率,那就必須得用強化學習了,也就是要和環境進行互動,把最後的那部分效能提升上去。
而且我們從現在的相關工作中也能看到,強化學習其實原本是需要大量資料的。不過最新的成果顯示,它其實只需要和真實場景互動 12個小時就行了,並且我相信在未來,連這12個小時都不需要,因為很多時候它是在弄清楚一些非常基礎的操作能力,一旦我們有了預訓練,這個時間可能會縮短到20分鐘。
最後我再補充一點。我們為什麼要把某個指標逼近到 99.9%呢?
如今部署在全球的機器人大概有 500萬臺,其中95%都是位置控制型的,它們就跟瞎子一樣,只是簡單地重複編碼好的程式。它們就是固定地從A點移動到B點再到C點,從1961年通用汽車發明了第一條生產線起,一直到現在,我們所做的不過是在原有基礎上進行了一些最佳化,從根本上來說,其實並沒有太大的改變。
要想真正發揮作用,成功率實際上得是百分之百才行99%都太低了。每一次出現故障、失敗都是有成本的。要是在生產線上,成本體現就是整個生產線得停下來,直接反映就是你的資金收益在減少,得有人去彌補這個損失成本。
有人可能會講,你說的是工業機器人需要百分百的成功率,可家庭機器人有個百分之七八十的成功率就夠了。其實我也思考過這個問題,我可以舉個很形象的例子。就在昨天,我去伯克利的體育館打球,那兒有個自動售賣機器人賣水,用的時候就是把信用卡貼上去,它就會把水拿出來遞給你。我過去這一個月裡經常去那兒,可昨天我把卡貼上去後,水本應該從出口出來的,結果卻掉下去了,而且我還沒辦法把水取出來,這就產生了成本,明碼標價就是那瓶水的價格,2.75美元。所以說,這不是沒成本,任何情況都是有成本的。
大家再想象一下,要是星巴克的機器人每 5個小時就把咖啡灑地上一次,又或者家裡的機器人每週都把廚房的杯子、盤子之類的東西往地上摔一次,這些都是損失,畢竟這都是在和物理世界做互動。我倒不是說我們就別去做家用機器人了、只搞工業機器人。我覺得當下是處於一個比較關鍵的階段,在急切需要半約束、受約束的環境裡,這樣的環境能讓我們去研發解決方案,探索新的科學成果。等我們把相關問題弄明白了,或許就能把成果拓展到家用機器人等領域了。而且家用機器人還涉及資料收集以及隱私方面的問題,畢竟誰也不想家裡的機器人在自己睡覺或者做別的事情的時候盯著自己,或是把資料傳回去用於訓練。
所以我覺得,我們現在所處的這個階段真的是首次開始系統、全面地去思考一種比較通用的解決方案,未來咱們不用太擔心資料方面的問題,資料會像飛輪轉起來一樣不斷積累、運轉起來。那一旦到了那個階段,我們該怎麼去思考這 99.9%成功率的問題呢?那肯定得是強化學習和模仿學習相結合才行,這兩者並不是完全相互排斥的關係,關鍵是一定要和環境進行互動,它是動態變化的,而不是靜態的。
RL對人形機器人控制可靠性的迭代
盧宗青:我先聊聊剛才提到的 Manipulation方面的事。今年我們在操控方面做了不少工作,先是在模擬器裡用強化學習進行訓練。我發現只要把問題定義清晰了,強化學習是比較容易解決問題的,當然這裡指的是給手部新增觸覺資訊的情況。
不過在模擬器裡訓練出的強化學習策略,解決不了實際問題。因為我們發現訓練完後,模擬器裡大多是基於點雲的,但是很難泛化。真機採集的點雲和模擬器裡看到的點雲完全不一樣,所以在我看來,Sim2Realgap比較難解決。
但是這項工作有個啟示,給我們傳遞了一個比較重要的資訊:機器人要是具備觸覺資訊,完成 Manipulation任務就會更容易些。我覺得這也是個比較直觀的見解,畢竟盲人也能完成各種各樣的操控任務。
不過我認為,對於 Manipulation來說,就像剛才冠亞講的,這本身就是個大難題。其實對於某個特定的問題,不管是模擬器、Sim2Real,還是真機+RL,都能比較好地解決這個特定問題。最關鍵的是泛化問題,就是我要怎麼得到一個策略,讓它可以完成各種各樣的操控任務呢?在我看來,這是非常難的。而且對於這個問題,目前來看,很難有資料來驅動這樣一個模型的學習,這是比較關鍵的點。
所以對於你剛才問到的人形機器人相關內容,人形機器人有兩條胳膊、兩隻手,我們解決相關問題採取兩步走的方式,因為目前我們沒有從機器人端採集下來的資料,或者說資料量沒那麼多。我們前期會利用人的資料去生成人的姿態,輸入是視覺資訊,輸出就是姿態。我們把這一步稱作預訓練,也就是用網際網路上大量但質量不算高的資料去訓練模型,使其輸出手部的姿態。然後再依據一些真機的資料,比如遙操採集的資料,去做後訓練(Post training),以此來實現泛化性。
我覺得這是在剛才提到的四條技術路線之外,另外一條可行且值得嘗試的技術路線。這條路線主要聚焦在泛化性上,而不只是著眼於如何完成某個 Manipulation任務的思路。
對於機器人可靠性的問題,我個人覺得,要是依靠模仿學習、強化學習這些方法,人形機器人不太可能達到 99%以上的可靠性。就好比人去抓東西,可能抓一萬次也會有一次失誤。畢竟它不像工業機器人處於固定場景中,我希望看到的具身AI的應用,肯定是在開放場景裡的應用。就像劍嵐剛才說的,不同場景下的產品有不一樣的需求,在有些情況下,可能百分之七八十的成功率就夠了。
另外,對於我們這套技術方案而言,RL主要是為了執行上層模組給出的指令,不管是姿態(Pose)也好,普通指令也好,本質上是用於控制電機之類的控制量。所以在我看來,它的完成度並非特別關鍵,反而更上層的高層次策略或者像姿態生成模型這類做法,怎樣達到較高可靠性才更重要。
下層的 RL策略,即便去訓練,也就是那樣一個結果,在最佳情況下,能找到一個最優策略(Optimal policy),可它的上限是由給定的問題本身決定的。至於怎麼去給出這個問題,可能是我們需要進一步思考的地方。
行業應用對可靠性要求極高,傳統控制和強化學習哪個用得多?
朱秋國:關於可靠性這個問題,從學術界角度看,很難將一種方法在實驗中的可靠性(比如達到 99%或者90%)直接套用到產業產品中。我想其他老師也會認同這一點,因為實驗資料和實際應用中的可靠性不太一樣。
就產品可靠性而言,我認為可以分為幾個階段,其中包括我們內部也在討論的機器人本身硬體的可靠性問題,我們經常會提到一個無故障執行時間的概念
無故障執行時間是評判機器人是否穩定可靠的關鍵指標。比如在電力巡檢場景中,客戶要求機器人在三個月內不能出一次問題。
那如何評判機器人的穩定可靠性呢?正如幾位老師所講,主要涉及幾個方面。一是硬體本身的問題,對於機器人而言,連線的部件、關節越多越複雜,出問題的機率就越大。所以要讓複雜的人形或四足機器狗在行業應用中長久保持穩定,就得提高硬體本身的可靠性。而在提高可靠性方面,首要解決的就是系統本身的可靠性問題,像機械結構、電控系統以及底層軟體系統能否長期穩定可靠,這是個很大的挑戰。
到了第二步,我們會更關注軟體演算法層面的問題,比如基於傳統方法和基於模型的方法。從理論上講,只要程式碼沒寫錯,基本不會出什麼問題。但要是結合其他演算法,比如在機器人完成自主導航時,要讓它實現精準定位,情況就不一樣了。
這裡面就存在挑戰,因為演算法本身還要解決環境動態變化,像隨季節改變等環境變化時的適應性問題。所以,第二步可能要著重解決軟體演算法層面對於可靠性的評估問題。由此可見,產業界做可靠性和之前講的情況不太一樣,這是我們目前遇到的主要問題。
另外,關於四足機器人用 RL還是Control的問題,目前更多還是用Control方法來進行實際執行。不過,現在我們已經開始逐漸嘗試,尤其是面對Locomotion能力提升的情況,我們在想辦法把RL方法結合進來,不管是傳統的SLAM方法,還是新型的Position+Navigation這類方法,都在做相應部署。到今年年底,我們會試著在相對固定的環境中,採用RL方法去適應不同地形等應用場景。
但我們面臨的一個關鍵挑戰是,在這種場景下,如果機器人出現翻倒或其他問題,那要如何確保機器人不去破壞原場景,不碰壞周邊的瓶瓶罐罐?我們考慮或許得引入 RL或者一些規則進去,這樣當機器人出現上述狀況時,就能保證它不會產生額外風險,進而確保機器人在場景應用中的安全性。
從應用角度看,四足機器人發展到現在已經沒什麼本質問題了。就運動能力而言,雖說有時會展示一些極限運動能力,像從幾米高的地方跳下來還能保持穩定,但從應用層面來講,其實並不需要這麼酷炫的動作。所以在我看來,當下四足機器人的 Locomotion能力,已經可以滿足很多場景下的運動需求了,這方面是沒問題的。
剛才盧老師說得很對,人形機器人的關節複雜度更高,四足機器人就 12個關節,人形機器人卻有幾十個關節。在應用過程中,如何保證其本身的穩定性是個很大的挑戰。所以人形機器人確實還需要更長時間去發展。我跟很多人聊這個問題時,大家常常迫切希望看到人形機器人能在現實生活中應用起來,但我覺得這得循序漸進,得先看人形機器人適合在哪些場景中應用。
比如現在把人形機器人提供給高校老師當作課題科研平臺,這是沒問題的。讓它站在咖啡機前給大家倒杯咖啡,或許也還行。但要是讓它走進家庭、走向工業真正投入應用,我覺得還有很長的路要走,這會是個不斷持續迭代的過程。不管是硬體層面,還是剛才提到的演算法層面,特別是 Manipulation層面,都得用更長遠的眼光去看待人形機器人的應用問題。
石冠亞:我們做 Humanoid sim2real相關工作大概有一年半了,MPCRL方面的工作也都做了,所以對人形機器人的可靠性挺有感觸的。
我很認同朱老師剛才的觀點,尤其是他對於當下哪些任務能實現、哪些任務可能還得等很多年的判斷。我再補充幾點:第一,SafeRL一樣,是個很寬泛的概念,不能一概而論,Safe有多個維度。最底層的是硬體的可靠性、穩定性,這非常重要。比如Chris Atkeson教授,他是電影《超能陸戰隊》裡大白機器人原型的創作者,他認為除非做成大白那種機器人,否則Safe是不可能實現的,意思就是要實現安全,得讓硬體本身就安全,無論怎麼折騰都不會傷人,這和演算法沒關係,更多是結構、設計上怎麼做到柔順性(Compliance)之類的。
第二,很多人也在討論,Safe本身是一方面,另一方面是Recover,也就是兜底。我覺得現在對很多機器人來說,Recover可能比Safe本身還難。像波士頓動力與現代的合作、Agility Robotics的產品Digit與亞馬遜倉儲的合作,還有Figure與寶馬的合作,我覺得對它們而言,機器人摔倒這事的影響,遠不如摔倒後爬不起來的影響大,它們目前的痛點就在沒有兜底,機器人摔倒後不容易爬起來。而四足機器人現在有相對成熟的方案,本身就很穩定,即便有點趔趄甚至摔倒了,也能很快爬起來,人形機器人之前在兜底這塊就比較困難,這都是不同維度的情況。
另外,談 Safe就跟談毒性不能拋開劑量一樣,拋開泛化性、成本談Safe也不合理,到底要達到百分之多少的安全程度呢?一方面得看任務是不是對安全性要求極高,比如Space X火箭回收的安全要求肯定和其他機器人不一樣。另一方面,泛化性也很重要,我很認同朱老師的判斷,像一些簡單任務,不需要很強的泛化性,比如在戶外走走,只做Locomotion,或者重複性任務,比如不停地給客人端咖啡,以現在的技術是比較有望打造出可靠系統的。
中間那層我稱之為面向企業(ToB)應用,區別於面向消費者(ToC),機器人在企業應用中,像在工廠造車之類的場景,需要一定的泛化性,但又不需要特別強的泛化性。比如寶馬與Figure合作中,機器人只需不斷安裝電池,安裝電池雖有五個步驟,可能存在一些不確定性,但這些不確定性是可以控制住的。 然後車型是有限的,比如裝寶馬的七八個車型,我覺得在短期未來,從安全性角度這是可以去追求的方向。
但要是問什麼時候能把人形機器人放進千家萬戶,讓它完成各種不同任務,像掃地、看孩子、做飯,還要求達到 99.999%的安全程度,我覺得目前技術還達不到,我們還有兩三個問題沒解決,哪怕是人可能也較難做到這點。
要是問我期望的技術路線,我不太相信 One Shot Safe,就是部署了就百分百安全。我覺得在現實世界中得有糾錯機制,剛部署時可能還是會出些問題,這裡我指的是在開放環境裡機器人怎麼實現安全,目前我們還沒找到解決方案。我暢想的解決方案是,一開始可能會有不安全的時候,或許可以加入人工干預環節(Human in the loop),比如讓人幫忙做些標註等,然後它能漸近性地(asymptolically)越來越好,我覺得漸近性安全(asymptotically safe)是目前我們能期望的最好狀態了。
最後,Safe還有另外一層含義,很多做安全性研究的人,是有比較特定的、可以驗證的,類似建立規則那樣的安全概念,這種Safe我們現在是有工具去實現的,比如規定機器人不能撞到物體,這種情況下,像可達性(reachability)等很多控制理論的工具就能拿來用了。
關於人形機器人的 Safe問題,很多時候沒辦法給出一個明確的Safe定義。比如我們之前聊的很多Manipulation的例子,像開門,什麼叫不安全的開門呢?可以列出一萬種不同的故障情況,所以我覺得這很難定義。
總結來說,首先硬體的安全很重要;其次,兜底恢復能力(Feel safe)很重要,有時候在很多場景裡它比安全本身還關鍵;第三,談安全一定要結合場景對泛化性的需求程度。最後,我們課題組做的很多工作,包括很多控制器(Controller)相關工作,其實是針對比較特定的、可驗證的、像建立規則裡涉及的機器人碰撞這類安全問題,而很多操控方面的安全是沒辦法這麼去定義的。
6. How to Make RL Great Again?
石冠亞:我能不能問其他老師幾個問題?機會難得。其實我有個思索已久的問題,我感覺現在 RL演算法本身的更新近乎停滯了。我想討論一下 RL演算法本身還有沒有創新空間?我一直覺得這些RL演算法並不是專門為機器人設計的,它們太通用了。為什麼PPO既可以用於語言模型的人類反饋強化學習(RLHF),又能用於機器人學習呢?這本身不就有點奇怪嗎?包括對於學生而言,我們還要不要去做一些強化學習演算法的基礎研究,去找到一種特別適合機器人領域的RL演算法呢?
盧宗青我先來回答一下。就像冠亞剛才說的,目前在 RL演算法層面的研究確實不多,從PPOSAC之後,沒有特別大的進展。在我看來,RL本質上是一個MDP,我們思考的是用什麼方法來解決這個數學問題,所以它本身就是比較通用的的數學方法表述(Math method formulation)。
從數學角度講,它是在實踐中比較好的解決演算法。比如 PPO在實踐中就是比較好的方法,實際上它是策略梯度加上價值函式這樣一種演員評論家框架。
對於機器人來說,能不能設計出一個好的強化學習方法呢?我覺得可以從機器人學習的特性角度出發來進行設計。我個人認為是可行的。因為機器人的一些約束條件和我們通常研究演算法、做實驗時的約束條件是不同的。如果把這些約束條件考慮到演算法設計中,肯定會產生一些差異。就像劍嵐做的Real world的強化學習,和已有的方法肯定不一樣,它結合了離線(Offline)和線上(Online)的方法來做機器人學習。
總的來說,從強化學習演算法角度,要得到一個特別好的通用演算法是比較難的。但對於機器人學習而言,我們能否更好地定製一個針對機器人學習的強化學習演算法,我覺得還有很多可以探索的空間。
羅劍嵐:我談談自己的理解。 20172018年的時候我就覺得別去搞MuJoCo,因為沒有解決實際問題。我們當時的問題就是為什麼在PPOSAC之後,沒有新的演算法出來?或許得看看PPOSAC是怎麼被髮明出來的。當時它們是為了解決一些根本性問題,像在MuJoCo裡小人跑不起來、Humanoid站不起來這類問題,等這些問題解決了,MuJoCo基準測試(Benchmark)被攻克了,自然就沒新演算法出現了。
所以我更多地在想,要是再有進展,一定要從根本上想清楚我們要解決的核心問題是什麼。要是真有下一輪強化學習基準測試的突破、面臨重大挑戰時,得先想好要解決什麼樣的大問題,別重蹈覆轍。
具體到這個問題上,RL的下一個前沿方向在哪?分開來講,對於LocomotionManipulation,我覺得朱老師總結得很好,Locomotion應該用ControlControl肯定是個解決方案。原因很簡單,不管是Locomotion還是別的情況,都是有模型的,沒模型機器人根本造不出來,既然有模型,那就得用Model-based control,而且確切知道模型是什麼後,要思考如何與RL較好地結合起來。具體來說,得考慮一些特定指標(Specific metrics),要是有模擬器,可能就不太需要考慮樣本效率了,英偉達想賣顯示卡,估計也不會太考慮這個。
那比如要考慮效能(Performance)、安全性(Safety)等方面,思考它們怎樣更好地有機結合,我覺得這是個挺有意思的待解決問題。 據我所知,現在就算是像PPO“Teacher Student”模式,Sim2Real GAP還是存在。要是真用控制的話,在處理物理模擬、進行下一步模擬事件等涉及樣本物理、控制移動、物理移動等情況時,怎麼用好這套機制來做自己想做的事 ?
ManipulationLocomotion相比,現在Zero-shot學習的訓練時間要一到兩個小時,我覺得還能進一步縮短。要是想縮短的話,就得思考怎麼構建一些基於視覺的通用能力,這可能就得回頭想想怎麼構建資料集、怎麼構建任務以及怎麼運用強化學習了。
再往遠一點說,可能五年後會有 100萬臺機器人部署在現實世界,不斷傳回大量資料,而那些資料都是異構的、隱藏的、廣泛的,那我們該怎麼做預訓練呢?因為強化學習的預訓練和行為克隆的預訓練不一樣,這也是為什麼BC+RL看起來沒太大區別,它們的訓練目標不一樣,一個是最大化資料集的對數似然(BC),另一個是最大化價值函式(RL),所以實際上是超越資料集去發現新東西。
我們要怎麼進行預訓練呢?能不能模擬物理情況,搞出更具擴充套件性的強化學習呢?在存在大量異構資料的這種情況下,要如何進行預訓練,並且實現快速應用呢?我說的可是在真正大規模的情形下,這或許會是一個比較關鍵的重點所在。
我覺得在我個人未來五年的研究計劃裡肯定得有這一項內容。但為了做這件事,不可能說在開源演算法開發的時候,真的把每個演算法都放到 1萬臺機器人上去測試,那樣成本太高,對實際情況也會造成不小的影響。
總結一下,為什麼 PPOSAC之後沒什麼新演算法出現,就是因為它們把當時要解決的問題處理得很好了,我們現在需要新問題。我確實覺得,強化學習原則上提供了一種演算法框架,如果它從根本上來說沒問題、是合理可靠的,那不能因為現在有一些困難、存在侷限性,就徹底放棄它,我們應該讓它逐步變得更好,這樣才能朝著更高更好的目標邁進。因為它不光是告訴你怎麼複製、怎麼預測、怎麼從資料裡找特徵,要是想達到很高的最佳化程度,比如99.99%100%,光有資料不行,還得有最佳化,這是很關鍵的,所以未來的解決方案裡肯定得有最佳化這一環節。
訪談中提到的論文:
Guide Policy Research
https://graphics.stanford.edu/projects/gpspaper/gps_full.pdf
DIAL-MPC
https://lecar-lab.github.io/dial-mpc/
CAJun
https://yxyang.github.io/cajun/
羅劍嵐主頁:https://people.eecs.berkeley.edu/~jianlanluo/
石冠亞主頁:https://www.gshi.me/
朱秋國主頁:https://person.zju.edu.cn/0011353/657053.html
盧宗青主頁:https://www.ai.pku.edu.cn/info/1139/2783.htm
原創不易,歡迎“點贊”“打賞”“在看”三連
也歡迎加我微信交流!

BC 


相關文章