之前在DOTA2團隊戰中戰勝人類玩家的OpenAI Five,現在被用于訓練機器手,取得了前所未有的靈活度。這只機器手完全在虛擬環境中自我學習和訓練,然后成功遷移到現實世界解決實際問題。OpenAI使用6144個CPU和8個GPU來訓練,50小時內收集了大約100年的經驗。
還記得OpenAI那個在DOTA2有限制5v5團戰中戰勝人類玩家的OpenAI Five嗎?
這次,OpenAI的研究人員將同樣的算法和同樣的代碼用在了訓練機器手上,所得到的機器手能以前所未有的靈活度操縱立方體、圓柱體等物體。
Dactyl自主學習的靈巧操作行為
這個系統名為Dactyl,與其他機器人系統不同的地方在于,它完全在模擬環境中進行訓練,并將其虛擬世界中得到的知識轉化為現實,并且適應現實世界的物理學。所有的行為都是自主發現的。
研究人員表示,他們的結果表明,完全可以在純模擬環境中訓練智能體,無需對現實世界進行精確的物理建模(一項極端復雜且浩大的工程),就能讓智能體解決實際的任務。
雖然 Dactyl 機器手跟人手相比仍有一定距離,但這項工作表明,機器學習有可能解鎖機器新的能力——將來,AI完全可以在虛擬世界中自己教自己新的技能,大大加快學習速度,然后轉移至物理世界。
OpenAI還在這次研究中發現了一些令他們感到意外的結果:
首先,觸覺感應對于操縱現實世界物體并不是必要的。Dactyl 機器手操縱只接收五個指尖的位置以及立方體的位置和方向。有限的傳感器可以獲得更好的性能,因為這些傳感器可以在模擬器中有效建模,由很多傳感器組成的傳感器組建模起來非常復雜。
其次,為一個對象開發的隨機化(Randomizations)也能推廣到具有類似屬性的其他對象身上。在玩轉立方體后,OpenAI的研究人員打印了一個八角棱鏡,結果 Dactyl 機器手僅使用他們為立方體設計的隨機化就實現了高的性能。不過,操縱球體還略有難度,可能是因為他們沒有隨機化模擬滾動行為的參數。
此外,對于現實世界的機器人來說,要讓運作性能高,好的系統工程與好的算法同等重要。
減少反應時間并沒有改善性能。傳統觀點認為,減少動作之間的時間應該可以提高性能,因為狀態之間的變化更小,因此更容易預測。但實驗中,研究人員將機器手動作之間的時間減少到 40ms,訓練時間反而變長,而且沒有顯著改善其在現實世界中的性能。他們得出的結論是,這種經驗法則可能適用于線性模型,但可能不太適用于神經網絡模型。
最后,使用真實數據來訓練結果不一定更好。與模擬數據相比,真實數據有很明顯的缺點,比如跟蹤標記的位置信息有延遲和測量誤差。更糟糕的是,實際配置的更改很容易讓實際數據變得無效,而且收集足夠多、足夠有用的數據十分困難。最終 Dactyl 機器手的視覺模型,是在沒有任何實際數據的情況下完成的。
機器手靈活控制物體有四大難點,一直未取得重大突破
Dactyl是一個使用Shadow Dexterous Hand操縱目標的系統。我們將一個木塊或棱鏡這樣的物體放在Dactyl的手掌中,讓Dactyl將其重新定位至不同的方向;比如旋轉木塊,讓其新的一面朝上。網絡僅負責觀察指尖的坐標以及來自三個普通RGB相機的圖像。
雖然第一個擬人化的機器手早在幾十年前就出現了,但如何利用這些手有效地操縱物體,一直是機器人控制領域內的長期挑戰。與運動之類的其他問題不同,人們在利用傳統機器人方法實施靈巧的操作方面的進展一直很緩慢,并且當前的技術在操縱現實世界中的物體上仍然存在局限性。
要對機器手中的物體實施重新定向,需要解決以下問題:
在現實世界中奏效。強化學習在模擬和視頻游戲中取得了許多成功,但在現實世界中取得的成果卻相對有限。我們在真實的機器人身上對Dactyl進行了測試。
高維控制。Shadow Dexterous Hand的自由度為24,而一般的機器人手臂的自由度為7。
噪音和觀察部分目標。 Dactyl是在真實世界中工作,因此必須處理噪聲和延遲的傳感器數據。當指尖的傳感器被其他手指或物體遮擋時,Dactyl必須能夠處理不完整信息。像摩擦和滑動等物理體系中的許多組成部分,是無法直接通過觀察得到的,必須由推理得出。
操縱多個對象。 Dactyl在設計上的高靈活性,足以重新定向多個目標。也就是說,我們的方法不能使用僅適用于特定形狀目標的策略。
無需任何人工輸入:領域隨機化,再現模擬奇跡!
Dactyl完全是在模擬環境中學習如何解決目標重定向任務(object reorientation task)的,無需任何的人工輸入。在此訓練階段之后,學習策略會在沒有任何微調的情況下對真實機器人起一定作用。
在操縱機器人的學習方法方面,通常會面臨一個兩難的選擇。模擬的機器人可以輕松提供充足的數據來訓練復雜的策略,但是大多數操作問題都無法準確地建模,從而無法使這些策略轉移到真實機器人身上。即使是對兩個物體接觸時發生的情況進行建模(這是操作中最基本的問題)也是一個活躍的研究領域,并且目前沒有廣泛統一且接受的解決方案。直接在物理機器人上展開訓練可以讓策略從現實世界物理層面進行學習,但現今的算法需要多年的經驗才能解決類似對象重定向這樣的問題。
而領域隨機化(domain randomization)是在模擬中進行學習的,旨在提供各種經驗而不是將現實進行最大化。這種思路提供了最好的兩種方法:在模擬中學習,可以通過擴展來快速收集更多的經驗;不強調現實主義,可以解決模擬器只能近似模擬的問題。
利用MuJoCo物理引擎構建機器人系統的模擬版本。這個模擬僅僅是真實機器人的粗略近似:
對摩擦、阻尼和滾動阻力等物理屬性進行測量是既麻煩又困難的。隨著機器人的磨損,這些屬性也會隨時間而改變。
MuJoCo是一個剛體模擬器,這意味著它不能模擬手指上或肌腱的拉伸時的可變形橡膠。
機器人只能通過反復接觸來操縱物體。 然而,眾所周知,接觸力難以在模擬中準確地再現。
通過校準其參數來匹配機器人的行為,可以使模擬更加逼真,但在目前的模擬器中,許多這樣的效果是無法精確建模的。
相反,該方法是在模擬環境的分布上對策略進行訓練,其中物理和視覺屬性是隨機選擇的。隨機值是表示物理系統不確定性的一種自然方法,它還可以防止對單個模擬環境的過度擬合。如果策略可以在所有模擬環境中完成任務,則更有可能在現實世界中完成該任務。
6144個CPU和8個GPU,50小時內收集大約100年的經驗
學習控制
通過構建支持遷移的模擬,我們減輕了在現實世界中控制機器人來完成模擬任務的困難,這是一個非常適合強化學習的問題。雖然用一只模擬的手來操縱物體這個任務已經有些困難,但是要在所有隨機物理參數組合中學習進行這樣的操作實際上要更加困難。
為了在不同環境中進行推廣(generalize),策略可以在具有不同動態的環境中執行不同的操作。由于大多數動力學參數不能從單個觀測中推斷出來,所以我們使用LSTM(一種具有記憶的神經網絡)使網絡能夠了解環境的動態。LSTM在模擬中實現的旋轉大約兩倍于不具有記憶的策略的旋轉。
Dactyl使用Rapid學習,這是一個強化學習訓練系統,之前解決了Dota2的OpenAI Five使用的也是它。我們使用了與OpenAI Five不同的模型架構、環境和超參數,但是使用的算法和訓練代碼是完全相同的。Rapid使用6144個CPU內核和8個GPU來訓練我們的策略,在50小時內收集了大約100年的經驗。
為了進行開發和測試,我們使用嵌入式運動跟蹤傳感器來驗證我們的控制策略,以分別了解控制策略和視覺網絡的性能。
學習觀察
Dactyl的設計目的是能夠操縱任意物體,而不僅僅是為了支持跟蹤進行過特殊修改的物體。因此,Dactyl使用常規的RGB相機圖像來估計物體的位置和方向。
我們使用卷積神經網絡訓練一個姿態估計器(pose estimator)。神經網絡從機器手周圍的三個攝像機中獲取視頻流,并輸出目標的預估位置和方向。我們使用多臺攝像機來解決模糊和遮擋問題。我們再次使用Unity游戲開發平臺,僅在模擬中使用域隨機化來訓練這個網絡,該平臺可以模擬比Mujoco更廣泛的視覺現象。
控制網絡(control network)根據對象的姿態重新定位,視覺網絡(vision network)將圖像從攝像機映射到對象的姿態,通過結合這兩個獨立的網絡,Dactyl可以通過觀察來操縱對象。
用于學習估計立方塊的姿勢的訓練示例
所有行為都由機器自主發現,采用與人不同的策略
在部署系統時,我們注意到Dactyl使用了一組多樣的靈巧操作策略來解決任務。這些策略也是人類經常使用的。但是,我們并沒有明確地將這些策略教給系統;所有的行為都是自主發現的。
Dactyl自主學習的靈巧操作行為
Dactyl根據GRASP分類法了解類型。從左上到右下分別是:指尖捏、掌心捏、三指握、四指握、強力抓握、五指精準抓握。
我們觀察到,對于精準抓握,比如指尖捏,Dactyl會使用拇指和小指。人類則傾向于使用拇指和食指或拇指和中指。然而,由于由額外的自由度,機器手的小指更加靈活,這也許可以解釋為什么Dactyl更喜歡用小指。這意味著Dactyl可以調整人類的策略,以更好地適應自身的局限性和能力。
改變實驗方式時的表現
我們測試了Dactyl在掉落物體、超時或成功翻轉目標50次前的成功翻轉次數。 我們在純模擬訓練的結果表明,該策略能夠成功操縱現實世界中的目標。
我們在實驗室中使用Shadow Dexterous Hand、PhaseSpace動作跟蹤相機和Basler RGB相機進行實驗。
對于操作立方體的任務而言,使用隨機化訓練的策略可能比未隨機化訓練的策略實現更多的翻轉次數,具體結果如下表所示。 此外,使用由視覺估計姿態的控制網絡的表現,幾乎與直接從運動跟蹤傳感器中讀取數據的網絡一樣好。
隨機化情況 | 目標跟蹤方式 | 最大成功翻轉次數 | 成功次數中位數 |
全部隨機化 | 視覺跟蹤 | 46 | 11.5 |
全部隨機化 | 運動跟蹤 | 50 | 13 |
未隨機化 | 運動跟蹤 | 6 | 0 |
學習過程
為了讓我們的策略在面向不同的物理動態目標時變得更加強大,OpenAI研究人員將絕大部分的訓練時間花費在這件事上。在沒有隨機化的情況下,要在模擬實驗中學會翻轉立方體需要大約3年時間。在完全隨機化模擬實驗中,實現類似的目標性能則需要大約100年。
-
傳感器
+關注
關注
2561文章
52288瀏覽量
762302 -
智能體
+關注
關注
1文章
235瀏覽量
10915 -
機器手
+關注
關注
0文章
12瀏覽量
2725
原文標題:【2天=100年】OpenAI用打Dota2的算法造了一只會轉方塊的機器手
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
如何獲取 OpenAI API Key?API 獲取與代碼調用示例 (詳解教程)

軟通動力昇騰AI一體機助力中鐵魯班AI升級
從片上系統(SoC)到立方體集成電路(CIC)

新型寬帶UV頻率梳提供前所未有的光譜分辨率

維愛普|圓柱形濾波器在智能家居中的應用與優勢
中國大陸AMOLED DDIC將于2024年迎來前所未有的需求高峰
日本推出革命性的人形機器人
OpenAI今年收支缺口或達50億美元
OpenAI將推出在線搜索工具“SearchGPT”
創意挑戰丨從0自制“自平衡立方體”(分享開源資料)

評論