過去一段時間里,PyTorch 等框架的開源大大加快了 AI 子領域研究的進展,如計算機視覺和自然語言處理等。這些框架為研究人員提供了一定程度的抽象,并使得構建最先進的系統、使用共享庫和工具、以及優化性能的操作變得更加容易。因此,為了在人工智能機器人研究中提供類似的實用性,Facebook 與卡內基梅隆大學的研究人員合作建立并開源了機器人框架——PyRobot。
什么是 PyRobot
PyRobot 是一個機器人框架,作為構建在機器人操作系統(ROS)上的輕量級、高級接口,它提供了一組獨立于硬件的、一致的中級應用程序接口(API),用以控制不同的機器人。正是由于 PyRobot 抽象出了關于低級控制器和進程間通信的詳細信息,所以機器學習(ML)專家和其他研究者可以更專注于構建高級 AI 機器人的應用。
同時,它降低了人工智能研究者的入門門檻。在無需專門了解硬件設備、驅動程序以及控制系統等細節的情況下,僅花費幾個小時,研究者就能輕松設置并運行機器人。而如果將 PyRobot 與 LoCoBot 等低成本機器人平臺配合使用,PyRobot 則可以大大減少機器人的研究成本,這更有助于機器人研究的傳播與推廣。
另一方面,Facebook 也希望將 PyRobot 打造成為一個機器人研究的生態系統。PyRobot 不僅可以使得社區研究者們更易于使用機器人數據集、算法實現和模型;還能夠幫助他們設置基準、共享數據,以及在彼此的工作基礎上更好的實現構建。
PyRobot 目前支持機器人 Sawyer 和 LoCoBot,而更多其他支持機型即將推出,與 MuJoCo 和 Habitat 等模擬器的集成也在進行中。
PyRobot 系統架構概述
機器學習和機器人研究的簡單共享界面
通常設置一個機器人并使其揮動手臂,需要幾天甚至一周時間來調試。因此,在機器人社區有著這樣一個玩笑:如果一個博士在研究過程中添加了一個機器人,那么他完成該博士論文的時間就會增加一年。(由此可見,調試機器人將花費大量時間)
而 PyRobot 則可以通過在多個機器人和模擬器之間,提供通用 API 來改變這一現狀。僅用一行代碼(如下圖所示),就能輕松操作機器人;并且相同的高級代碼,也適用于 PyRobot 所支持的其他機器人。
僅用幾行 Python 代碼來定位 LoCoBot 的臂
除此之外,PyRobot 還具有適用于所有機器人的通用功能,例如關節位置控制、關節速度控制、關節扭矩控制、笛卡爾路徑規劃、正向運動學和反向運動學(基于機器人 URDF 文件)、路徑規劃和基于視覺的 SLAM 等等。雖然它抽象了底層軟件堆棧的復雜性,但用戶仍然可以靈活地使用不同級別的組件,例如跳過規劃器執行低級別的速度和扭矩命令。
PyRobot 也可用于實現各種高級 AI 應用程序。目前,Facebook 已經嘗試了點目標導航,操作任務(比如推動和抓?。约笆褂脵C器人進行數據采集的遠程操作。
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 研究人員和該領域的其他人加快實現這些目標的進程。
參考鏈接
原文地址
https://ai.facebook.com/blog/open-sourcing-pyrobot-to-accelerate-ai-robotics-research/
PyRobot論文地址
https://arxiv.org/abs/1906.08236?fbclid=IwAR0E1aLthcXnTnh0_OZb6VcKDTo7IZwI-F7xkjPh-uIihE7t_Cyit-e6A0s
來源 | 雷鋒網
作者 | 楊鯉萍