乾明 發自 凹非寺 量子位 報導 | 公眾號 QbitAI
江湖上,一直流傳著一種疊疊樂的試煉。
規則很簡單,從下方的積木中,抽一根往上搭。
你能往上搭幾層?
對MIT團隊研發的機器人來說,玩這個遊戲基本上不費吹灰之力。
而且,它只需要訓練大約300次就行了,一般的機器人少說也要訓練上萬次。
研究團隊說,這個機器人並不醉心疊疊樂。
接下來要進軍工業界,組裝手機等消費產品等等。
疊疊樂有什麼難的?
從上面的動圖中可以看出,疊疊樂是一個牽一髮而動全身的遊戲。
與西洋棋、圍棋等純粹的認知任務或者遊戲不同,機器人需要掌握物理技能,比如探測、推、拉、放置、對齊積木等等。
這就要求它必須進行交互的感知和操作,這種情況,是很難在計算機上模擬出來的。
機器人必須要在接觸積木塔的同時,來學習如何移動積木。
MIT的研究團隊說,關鍵的挑戰在於,如何利用實際上的嘗試,從相對較少的實驗中去學習。
他們給出的方法是——
聚類學習,視覺觸覺兩開花
簡單來說,就是搜集視覺觸覺數據,然後對數據聚類,建立相應的模型。
為了搜集數據,研究團隊定製了一個行業標準的 ABB IRB 120機械臂。然後在機器人能夠觸及的範圍內搭建了一個積木塔,開始第一段的訓練期。
機械臂的配件有3個,一個是用來操作積木軟齒夾鉗,也可以反饋觸感;一個是用來控制操作積木的力度的力感應腕帶;還有一個外部攝像頭,用來收集視覺圖像。
想讓機器人學會玩疊疊樂,傳統的做法是收集積木、機器人、積木塔之間可能發生的一切。
這顯然會帶來大量的數據,在成千上萬次的嘗試中尋找可行的模式,耗費的計算資源可想而知。
MIT研究團隊的做法是,模仿人類玩這個遊戲的方式。
在訓練期中,機器人會隨機選擇一個積木,以及推動的積木的位置。 然後用較小的力道,試圖將積木推出塔外。
對於每一次嘗試,計算設備都會記錄相關的視覺、觸覺、力度等指標,並標註是否成功。
按照這種方法,機器人只訓練大約300次,就對這些測量結果進行聚類分組。
比如,一組數據可能代表機器人在難以移動的積木上的嘗試,而另一組數據則代表一個比較容易移動的積木上的嘗試。
對於每個數據集群,研究團隊都給機器人開發了一個簡單的模型,根據當前的視覺和觸覺數據來預測移動一個積木的行為。
他們說,讓機器人建立聚類,然後學習每個聚類的模型,而不是學習一個能完全捕捉可能發生的一切的模型,能夠極大地提高了機器人學習遊戲的效率。
結合這些模型,機器人還會實時地「學習」,當機器人小心地推動一個積木塊時,計算機會通過它攝像頭和鉗子接收視覺和觸覺反饋,並將這些反饋結果與機器人先前做出的動作進行比較。
然後考慮這個動作的後果,即是否能夠在特定的結構下,用特定的力度,把特定的積木塊抽出來,放到上面,並確保積木塔不倒。
最後,這項研究的論文,已於近日刊發在了Science Robotics上。
作者為:Nima Fazeli、Miquel Oller、Jiajun Wu、Zheng Wu和Joshua Tenenbaum。
如果你感興趣,請收好傳送門:
See, feel, act: Hierarchical learning for complex manipulation skills with multisensory fusionhttp://robotics.sciencemag.org/content/4/26/eaav3123