Facebook 最新開源框架 PyRobot,開闢 AI 機器人研究新紀元

作者 | 發布日期 2019 年 06 月 26 日 17:13 | 分類 AI 人工智慧 , Facebook , 機器人 line share follow us in feedly line share
Facebook 最新開源框架 PyRobot,開闢 AI 機器人研究新紀元


過去一段時間裡,PyTorch 等框架的開源大大加快了 AI 子領域研究的進展,如電腦視覺和自然語言處理等。這些框架為研究人員提供了一定程度的抽象,並使得構建最先進的系統、使用共享庫和工具、以及優化性能的操作變得更加容易。因此,為了在人工智慧機器人研究中提供類似的實用性,Facebook 與卡內基美隆大學的研究人員合作建立並開源了機器人框架──PyRobot

什麼是 PyRobot

PyRobot 是一個機器人框架,做為構建在機器人操作系統(ROS)上的輕量級、高級連接埠,它提供了一組獨立於硬體的、一致的中級應用程式連接埠(API),用以控制不同的機器人。正是由於 PyRobot 抽象出了關於低級控制器和進程間通訊的詳細資訊,所以機器學習(ML)專家和其他研究者可以更專注於構建高級 AI 機器人的應用。

同時,它降低了人工智慧研究者的入門門檻。在無需專門了解硬體裝置、驅動程式以及控制系統等細節的情況下,僅花費幾個小時,研究者就能輕鬆設置並運行機器人。而如果將 PyRobot 與 LoCoBot 等低成本機器人平台配合使用,PyRobot 則可以大大減少機器人的研究成本,這更有助於機器人研究的傳播與推廣。

另一方面,Facebook 也希望將 PyRobot 打造成一個機器人研究的生態系統。PyRobot 不僅可以讓社群研究者們更易於使用機器人數據集、演算法實現和模型,還能夠幫助他們設置基準、共享數據。

PyRobot 目前支援機器人 Sawyer 和 LoCoBot,而更多其他支援機型即將推出,與 MuJoCo 和 Habitat 等模擬器的集成也在進行中。

▲ PyRobot 系統架構概述。(Source:Facebook

機器學習和機器人研究的簡單共享介面

通常設置一個機器人並使其揮動手臂,需要幾天甚至一週時間來調試。因此,在機器人社群有著這樣一個玩笑:如果一個博士在研究過程中添加了一個機器人,那麼他完成該博士論文的時間就會增加一年(由此可見,調試機器人將花費大量時間)。

而 PyRobot 則可以透過在多個機器人和模擬器之間,提供通用 API 來改變這個現狀。僅用一行代碼(如下圖所示),就能輕鬆操作機器人;相同的高級代碼,也適用於 PyRobot 所支援的其他機器人。

▲ 僅用幾行 Python 代碼來定位 LoCoBot 的手臂。(Source:Facebook

除此之外,PyRobot 還具有適用於所有機器人的通用功能,例如關節位置控制、關節速度控制、關節扭矩控制、笛卡爾路徑規劃、正向運動學和反向運動學(基於機器人 URDF 文件)、路徑規劃和基於視覺的 SLAM 等。雖然它抽象了底層軟體堆棧的複雜性,但用戶仍然可以靈活地使用不同等級的組件,例如跳過規劃器執行低等級的速度和扭矩命令。

PyRobot 也可用於實現各種高級 AI 應用程式。目前,Facebook 已經嘗試了點目標導航、操作任務(比如推動和抓取),以及使用機器人進行數據採集的遠程操作。

PyRobot 還為機器人技術中使用人工智慧和機器學習演算法提供了一種簡便方法,它可以使用與物理機器人之間的連接埠來進行任務數據收集,例如抓取任務;也可以使用 PyTorch 訓練深度學習模型,然後控制機器人來執行相應演算法。

而在一些正在進行的計畫中,透過使用 PyRobot 確實能夠簡化用於末端執行器控制和點目標導航的 sim2real 策略轉換測試。

用於研究和教育的可擴展工具

硬體的成本和專業軟體的複雜性限制了機器人研究的規模。而透過 PyRobot 的高級 API 與 LoCoBot 等相對低成本的機器人一起使用時,則可以有效解決這個問題。

透過降低入門門檻,研究人員可以部署多個機器人來收集數據與並行學習;而透過在不同硬體上提供通用框架,PyRobot 將有利於機器人技術基準的發展(類似於 AI 中的其他領域)並量化進度。這也是 Facebook 所希望的:與機器人研究界的其他人一起努力建立這些基準。PyRobot 還可以幫助擴展人工智慧教育計畫,因為它更易於為不同背景的學生提供實用的機器人體驗。

目前,Facebook 提供了幾種現有導航、抓取和推送演算法的預訓練模型的實現。

與 Facebook 創建其他開源人工智慧研究工具(包括 PyTorch、AI Habitat、TorchVision 和 ELF)的工作一樣,他們認為開放式協作是推動 AI 領域發展、並將其更多益處廣泛傳達給用戶的重要部分;同時,他們也將繼續尋找透過 PyRobot 框架共享機器人研究代碼和數據集的機會。

擴展 PyRobot 平台並推進 AI 研究

在不久的將來,Facebook 計劃透過與模擬器(如 AI Habitat、Gibson 和 MuJoCo)的連接埠為 PyRobot 添加新功能。他們也計劃與研究界合作,為更多硬體例如 Universal Robots 等提供支援。除了開源 Facebook 的研究外,Facebook AI 還計劃分享其他最先進的機器人演算法的開源實現並發布機器人數據集。

Facebook 表示,機器人技術對於推進人工智慧整體非常重要,因為它使研究人員能夠探索教學機器等挑戰,以學習預測模型,並在現實世界中發展常識性知識。而解決這些問題將會創造出更強大的 AI,使其有朝一日可用於智慧助理等應用程式。他們希望憑藉 PyRobot 靈活、開放的設計,來幫助 Facebook AI 研究人員和該領域的其他人加快實現這些目標的進程。

(本文由 雷鋒網 授權轉載;首圖來源:shutterstock)

延伸閱讀: