厲害了!這個機器人竟然能教育其他機器人
人工智慧正在飛速地發展,機器不僅可以自己學習,還可以當老師教育別人了。據每日郵報報導,MIT做出一個新的機器人,它可以把自己的本領教給其他的機器人。
這個機器人被稱為“Optimus(擎天柱)”,它可以自動教其他機器人一些簡單的工作,比如說開門,把一個東西丟進桶裡,或者把一個圓柱體從桶裡取出來等等。
△Optimus把熱水瓶進桶裡,這個機器人可以自動把這個任務教給其他機器人
在模擬當中,Optimus可以把這些技能無縫地轉移給另一個名叫“Atlas”的機器人。Atlas是一個六英尺高(1.8米)、400磅重(180公斤)的類人機器人。在接受Optimus的教育之後,它就學會了這些基本技能,就像被人類程式師教過一樣。
為什麼Optimus這麼神奇呢?這得益於它的內核——C-Learn系統。
訓練機器人通常有兩種方法:
第一種,運動設計技術(motion-planning techniques),機器人的所有動作是由程式設計完成的,包括每個運動的時間和位置,比如讓機器人將金屬切割成特定的形狀和尺寸。
第二種,學習示範( learn from demonstration ),資訊的輸入是通過運動捕捉,其方式與在電影和視頻遊戲中繪製CGI字元的移動相同,也就是說,讓機器人看一個任務,然後去複製它。
不過,這兩種方法都有缺陷。
學習示範的機器人,不容易將它們的技能轉移到另一個機器人身上,並保持準確。
而採用運動設計技術,雖然可以做到這一點,但是耗時耗力,必須要專家程式師手動編碼才可以。
因此,這兩種方法,在一些緊急情況中,比如火災、地震、海嘯、福島核危機之類的事件當中,恐怕就不能滿足需求了。
△ Pérez-D'Arpino和她訓練的Optimus機器人
MIT的電腦科學和人工智慧實驗室(CSAIL)的研究人員開發了一種新的系統,可以集兩者的優點融為一體,奮其所長的同時又能避其所短。
這就是上面提到的“C-Learn”,它可以不經程式設計就教會機器人一系列任務,僅僅需要提供一些如何移動的資訊,然後給機器人示範一次任務就OK了。
舉個例子,有一個任務是:要求機器人用雙手抓住託盤,並將其抬起,使託盤與地面平行。雖然只給機器人演示了一次,但是它能夠利用它之前如何平行於物件的知識,來完成這個任務。
機器人也被教了其他一些技能,比如,抓住一個物體並將其放入桶中,以及將卡在氣缸內的圓柱體取出來。
這樣一來,用戶就可以讓機器人自己去教授其他的機器人了,不僅節省時間,而且能節省成本,如果希望多個機器人執行類似操作的話。
MIT的研究人員說,將來這個系統可以用來更快地製造拆彈機器人和救災機器人。
此外,它還降低了訓練機器的門檻。因為系統不需要進行編碼就能教給機器人任務,所以它允許沒有編碼經驗的人“訓練”機器人。
這種方法兼具學習示範的直觀,和運動設計技術的精准,可以讓機器人很快去學會新的任務。這項研究將在新加坡舉行的IEEE國際機器人和自動化大會(5月29日—6月3日)上發表。
當然,這個系統並非沒有缺陷。
例如,下面這種情況機器人可能就無法適應。機器人被教會了抓住一個物體,然後將它提取出來。但是情況需要機器人先提取物體,然後放下它,去完成一個它所學知識的逆向操作,機器人就做不到了。
“這涉及到一些邏輯思維,對於人類來說這是很簡單,但對於電腦來說,這是很有挑戰性的。”該研究的合作者之一、CSAIL的博士生Pérez-D'Arpino解釋道。
雖然存在缺陷,不過這項研究還是擁有光明的前景的。它不僅有趣,還有可能創造更好的成本效益。期待MIT的機器人老師們早日走出實驗室,到世界各地去教書育人。
(文/梁風)