現實世界中的機器人強化學習

現實世界中的機器人強化學習

原載:Reinforcement Learning for Real-World Robotics

譯者:神奇的戰士

機器人 - 願景

機器人在現代工業中無處不在。與上個世紀大多數科幻作品中的機器人不同,現如今的機器人仍沒有爲人類洗盤子和倒垃圾,在戰場上也沒有出現像施瓦辛格那樣的機器人終結者。但是,在所有的工廠車間內都能發現機器人的身影,機器人正在做人類工人幾十年前做的那種單調而繁重的工作。任何具有重複性和精細的工作,如果可以被精確控制和監控的話,那麼機器就能很好替代人工。目前的前沿的一些研究將以前我們認爲非常難以機器實現且乏味的工作用機器自動化了(如自動駕駛)。

640?wx_fmt=png

我們對機器人的癡迷的原因是顯而易見的;對於許多人來說,一個人類擺脫繁重乏味的體力勞動的未來似乎是非常值得憧憬的。另外,機器特有的精確性和一致性可以減少因爲認爲錯誤而引發的災難,例如車禍和手術時的醫療事故。我們可以在工廠的生產線上看到這場革命的一點前兆:在一些像亞馬遜的大型倉庫中,機器人被用來代替人工運輸板箱。


640?wx_fmt=png

雖然我們在戰場上還沒有殺人的仿人機器人,但我們確實有半自主無人機在世界各地運行,執行軍事偵察和作戰任務。軍隊的研究機構正在做大量的工作減少對人類士兵的傷害,將機器人投入戰鬥,我預計未來的幾十年內我們將看到這樣的進展。

機器人強化學習

爲什麼幾十年前的科幻作品總是認爲在不久的將來智能機器人可以做任何事,但是站在今天的角度我們認爲這是一件遙遠的事情?爲什麼現在工廠車間裏到處都是機器人,但是我們的大街上卻沒有機器人的身影?在特定環境中運作的機器人,必須以某種方式理解自身的行爲,規劃動作和利用某種執行器執行動作,同時使用反饋來確保控制的準確性。

事實證明,上面的每一個部分都是難點,對人類來說再簡單不過的事(如視覺場景下識別物體和某種程度上預測人的意圖)對電腦來說卻充滿了挑戰。近些年來,深度學習使得計算機視覺有了較大的突破,但是要理解普通街道的場景需要大量的相關技術,以現在的水平還遠遠做不到。

事實證明,在工廠裝配線上的機器人與能走在大街上的機器人之間有着天壤之別。在裝配線上,環境中的所有情況都可被精確控制,機器人需要完成的任務也相對具體和單一。儘管有這些優點,但是設計工業機器人的運動規劃和控制算法仍然是一個枯燥且漫長的過程,這需要集成多個領域的專家的成果。這使得研發機器人昂貴和耗時,這進一步突出了我們當前的技術與讓機器人在一般性的環境中執行一系列任務所需能力之間的巨大差距。在特性場景下開發專用機器人的算法都這麼費勁,那麼如何能讓機器人再進入家庭呢?與洗碗機器人和噴漆機器人相比,這些機器人不得不在複雜的城市空間內導航和確保安全條件下與人交流。

640?wx_fmt=png

近些年隨着深度學習和強化的發展,許多研究人員開始研究使用強化學習方法控制機器人。這樣做的動機顯而易見,我們可以讓讓機器人自主學習而不是專門爲機器人開發感知、規劃和控制算法嗎?如果我們能做到的話,那麼就能立馬解決兩個問題:節省花在開發設計機器人算法上的時間、爲當前我們無法解決的難題提供解決方案。

深度強化學習在各種電子遊戲、棋盤類遊戲和相對簡單仿真控制問題上取得了巨大的成功,並走進公衆的視野。在這些任務當中,智體學習的環境和實際運行的環境是相同的,並且我們可以有效地利用仿真讓智體學會解決問題之前進行多次嘗試。衆所周知,深度強化學習算法對數據的利用率很低,在學會玩雅達利遊戲之前必須要經過數百萬次的嘗試。如果我們以同樣的方法在實際環境中訓練機器人,那將花費大量的時間並且對機器人硬件造成極大地磨損。或者,我們可以嘗試在仿真環境中訓練智體然後把訓練好的策略部署在實體機器人上。但是要去模擬錯綜複雜的現實世界是異常困難的,這種預訓練好的策略在實體機器人上常常表現糟糕。

將強化學習應用在機器人上仍然困難重重,在我看來,這些問題可以分爲 4 類:

採樣效率:如果我們希望使用實體機器人訓練策略,那麼我們必須開發出使用很少試驗就可以學習的算法,訓練過程纔是可行的。

仿真到實際:如果我們希望在仿真環境中訓練策略並且部署在機器人上

獎勵規則:當我們在玩《星際爭霸2》時,遊戲的目標清晰明瞭:獲勝或失敗。然而我們如何量化像洗盤子或者疊衣服這樣的行爲的成功度?

安全性:無論是仿真還是部署在真實環境中,我們的機器人策略要是安全的,必須確保機器人自身的完整性和環境中人身和財產的安全。

我將着重強調機器人前兩個問題,簡要描述第三個問題,最後個問題暫且不討論。

採樣效率

通常在低採樣複雜度情況下首選的方法是基於模型的強化學習方法。在基於模型的強化學習中,與基於和環境交互獲得的獎勵來學習一個策略的方法不同,智體會嘗試學習環境的模型並且使用它來規劃和提升策略,因此可以大幅減少所需的與環境交互的次數。然而,這種方法與基於模型方法相比有較低的漸進性能,有時會因爲所學模型中的錯誤而遭受災難性的失敗。

基於模型的強化學習在可以簡單表示的動力學模型上取得了巨大的成功,例如線性模型,但是在更爲複雜的環境中就需要非線性的模型了(如深度神經網絡)。在 2018 年,來着伯克利的學者就這個問題發表了一篇論文[1],在其中他們找到不穩定問題的一個可疑的原因,並提出瞭解決辦法。

在論文中,作者表示在學習和規劃的過程中,策略傾向利用狀態空間區域,在這些區域學習到的策略表現不佳,這使得智體偏離了“航線”,無法在這個區域內使用學習好的策略提前規劃導致了智體策略失效。他們的解決辦法相對簡單:學習環境的多種模型,在規劃過程中,從這些不同的模型中均勻抽取樣本,有效地規範了學習過程。這種方式就更容易將基於模型的強化學習應用到複雜任務中,實現了使用較少的試驗而達到無模型方法那樣的漸進性。

有趣的是,最近的無模型算法在採樣的複雜性上有較大突破,以至於可以短時間內在實體機器人上訓練策略。在 2019 年,來自伯克利和谷歌大腦團隊的學者發表了一篇論文[2],提出稱爲 Soft Actor Critic (SAC) 的異步策略 Actor Critic 算法。論文證明了該算法在幾個傳統的強化學習控制測試結果中具有很好的低樣本複雜度性能,然後讓機器人在 4 個小時的訓練後就學會了走路。



640?wx_fmt=png

在平面上訓練機器人,然後在有障礙物的表面測試機器人,展示了學習的策略的魯棒性。

另一篇很棒的論文[3]以另一種不同的方式看待採樣效率:通過擯棄策略必須從零開始學習的概念,利用現有的不完善的控制算法來提供一個“框架”,在此基礎上訓練策略。通過利用現有的控制算法可以很好地對該問題進行表徵的優點,策略能夠學習有效地調節控制系統而不是像大多數強化學習算法那樣採取隨機動作。文章中使用了這種方法訓練機器人完成了在動力學上極其複雜的裝配任務。

從仿真到現實

在過去的幾年裏,許多論文展示了訓練好的強化學習策略運用在實體機器人平臺上的能力,但是常常侷限於一些特定的任務,通常需要大量的手動調整才能完成。特別是對於使用視覺來感知的機器人來說,要真實地模擬機器人所感知到的所有視覺圖像是異常困難的,這就產生了著名的仿真和現實差異性問題。

在那些仿真裏可以充分描述動力學的問題中,強化學習也可以很好地工作,正如這篇文章[4],使用仿真訓練策略讓四足機器人恢復動作,訓練好的策略在實體機器人上效果也很不錯,擁有 97% 的成功率。然而,不像視覺問題,在這篇論文中的狀態的維度相對較低。

爲了解決視覺輸入的問題,OpenAI 和伯克利團隊在 2017 年的論文中提出了一個非常完美的解決方案:隨機化環境提供的視覺輸入,然後訓練策略對這些隨機的魯棒性,現實世界可能是另一種仿真的隨機變化。

640?wx_fmt=png

這種方法效果不錯,他們能夠在一個真正的機器人抓取系統中使用一個只接受過模擬仿真訓練的目標檢測器。

在 2019 年又發表了後續的另一篇很棒的論文[5]。在這片論文中,作者使用一個類似的隨機仿真來幫助訓練魯棒的策略,但是同時訓練了一個條件生成對抗網絡 (cGAN) 來將隨機圖像轉換回原始模擬仿真的標準形式。在測試時,條件生成對抗網絡將真實圖像轉換爲策略所熟悉的規範圖像形式,這樣可以有效地減小仿真到現實之間的差別。使用這種方法,論文中仿真訓練好的智體應用在實體機器人上有 70% 的成功率。在實體機器人進行一些微調,他們能夠達到 91% 甚至是 99% 的成功率。

640?wx_fmt=png

獎勵規則

假設你希望你的機器人學會把書放在書架上,並且你有一個非常低樣本複雜度的算法。如何設計獎勵函數呢?在 2019 年一篇論文[6]中,來自伯克利的作者做到了。他們沒有指定獎勵函數,而是爲算法提供了幾張目標圖像(排列好的書架),允許訓練過程中詢問(很少幾次)用戶當前狀態是否是目標狀態。通過令獎勵 r = 前面提到的 Soft Actor Critic 算法,作者在實體機器人上訓練了幾個小時的策略。他們爲不同的任務訓練了不同的策略,例如把書放到書架上和把一塊布搭在盒子上。

640?wx_fmt=png

結論

要解決將強化學習應用於現實世界中的機器人問題還有很長的路要走,但是,我們正在取得很多的進展,希望我們在這個激動人心的領域看到進一步的突破。

文獻鏈接

  • [1] https://arxiv.org/pdf/1802.10592.pdf

  • [2] https://arxiv.org/pdf/1812.05905.pdf

  • [3] https://arxiv.org/pdf/1812.03201.pdf

  • [4] https://arxiv.org/pdf/1901.07517.pdf

  • [5] https://arxiv.org/pdf/1812.07252.pdf

  • [6] https://arxiv.org/pdf/1904.07854.pdf


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章