0
本文作者: 楊鯉萍 | 2019-06-25 16:15 |
雷鋒網(wǎng) AI 科技評論按:過去一段時(shí)間里,PyTorch 等框架的開源大大加快了 AI 子領(lǐng)域研究的進(jìn)展,如計(jì)算機(jī)視覺和自然語言處理等。這些框架為研究人員提供了一定程度的抽象,并使得構(gòu)建最先進(jìn)的系統(tǒng)、使用共享庫和工具、以及優(yōu)化性能的操作變得更加容易。因此,為了在人工智能機(jī)器人研究中提供類似的實(shí)用性,F(xiàn)acebook 與卡內(nèi)基梅隆大學(xué)的研究人員合作建立并開源了機(jī)器人框架——PyRobot。
PyRobot 是一個機(jī)器人框架,作為構(gòu)建在機(jī)器人操作系統(tǒng)(ROS)上的輕量級、高級接口,它提供了一組獨(dú)立于硬件的、一致的中級應(yīng)用程序接口(API),用以控制不同的機(jī)器人。正是由于 PyRobot 抽象出了關(guān)于低級控制器和進(jìn)程間通信的詳細(xì)信息,所以機(jī)器學(xué)習(xí)(ML)專家和其他研究者可以更專注于構(gòu)建高級 AI 機(jī)器人的應(yīng)用。
同時(shí),它降低了人工智能研究者的入門門檻。在無需專門了解硬件設(shè)備、驅(qū)動程序以及控制系統(tǒng)等細(xì)節(jié)的情況下,僅花費(fèi)幾個小時(shí),研究者就能輕松設(shè)置并運(yùn)行機(jī)器人。而如果將 PyRobot 與 LoCoBot 等低成本機(jī)器人平臺配合使用,PyRobot 則可以大大減少機(jī)器人的研究成本,這更有助于機(jī)器人研究的傳播與推廣。
另一方面,F(xiàn)acebook 也希望將 PyRobot 打造成為一個機(jī)器人研究的生態(tài)系統(tǒng)。PyRobot 不僅可以使得社區(qū)研究者們更易于使用機(jī)器人數(shù)據(jù)集、算法實(shí)現(xiàn)和模型;還能夠幫助他們設(shè)置基準(zhǔn)、共享數(shù)據(jù),以及在彼此的工作基礎(chǔ)上更好的實(shí)現(xiàn)構(gòu)建。
PyRobot 目前支持機(jī)器人 Sawyer 和 LoCoBot,而更多其他支持機(jī)型即將推出,與 MuJoCo 和 Habitat 等模擬器的集成也在進(jìn)行中。
PyRobot 系統(tǒng)架構(gòu)概述
通常設(shè)置一個機(jī)器人并使其揮動手臂,需要幾天甚至一周時(shí)間來調(diào)試。因此,在機(jī)器人社區(qū)有著這樣一個玩笑:如果一個博士在研究過程中添加了一個機(jī)器人,那么他完成該博士論文的時(shí)間就會增加一年。(由此可見,調(diào)試機(jī)器人將花費(fèi)大量時(shí)間)
而 PyRobot 則可以通過在多個機(jī)器人和模擬器之間,提供通用 API 來改變這一現(xiàn)狀。僅用一行代碼(如下圖所示),就能輕松操作機(jī)器人;并且相同的高級代碼,也適用于 PyRobot 所支持的其他機(jī)器人。
僅用幾行 Python 代碼來定位 LoCoBot 的臂
除此之外,PyRobot 還具有適用于所有機(jī)器人的通用功能,例如關(guān)節(jié)位置控制、關(guān)節(jié)速度控制、關(guān)節(jié)扭矩控制、笛卡爾路徑規(guī)劃、正向運(yùn)動學(xué)和反向運(yùn)動學(xué)(基于機(jī)器人 URDF 文件)、路徑規(guī)劃和基于視覺的 SLAM 等等。雖然它抽象了底層軟件堆棧的復(fù)雜性,但用戶仍然可以靈活地使用不同級別的組件,例如跳過規(guī)劃器執(zhí)行低級別的速度和扭矩命令。
PyRobot 也可用于實(shí)現(xiàn)各種高級 AI 應(yīng)用程序。目前,F(xiàn)acebook 已經(jīng)嘗試了點(diǎn)目標(biāo)導(dǎo)航,操作任務(wù)(比如推動和抓?。?,以及使用機(jī)器人進(jìn)行數(shù)據(jù)采集的遠(yuǎn)程操作。
PyRobot 還為機(jī)器人技術(shù)中使用人工智能和機(jī)器學(xué)習(xí)算法提供了一種的簡便方法,它可以使用與物理機(jī)器人之間的接口來進(jìn)行任務(wù)數(shù)據(jù)收集,例如抓取任務(wù);也可以使用 PyTorch 訓(xùn)練深度學(xué)習(xí)模型,然后控制機(jī)器人來執(zhí)行相應(yīng)算法。
而在一些正在進(jìn)行的項(xiàng)目中,通過使用 PyRobot 確實(shí)能夠簡化用于末端執(zhí)行器控制和點(diǎn)目標(biāo)導(dǎo)航的 sim2real 策略轉(zhuǎn)換測試。
硬件的成本和專業(yè)軟件的復(fù)雜性限制了機(jī)器人研究的規(guī)模。而通過 PyRobot 的高級 API 與 LoCoBot 等相對低成本的機(jī)器人一起使用時(shí),則可以有效解決這個問題。
通過降低入門門檻,研究人員可以部署多個機(jī)器人來收集數(shù)據(jù)與并行學(xué)習(xí);而通過在不同硬件上提供通用框架,PyRobot 將有利于機(jī)器人技術(shù)基準(zhǔn)的發(fā)展(類似于 AI 中的其他領(lǐng)域)并量化進(jìn)度。這也是 Facebook 所希望的:與機(jī)器人研究界的其他人一起努力建立這些基準(zhǔn)。PyRobot 還可以幫助擴(kuò)展人工智能教育計(jì)劃,因?yàn)樗子跒椴煌尘暗膶W(xué)生提供實(shí)用的機(jī)器人體驗(yàn)。
目前,F(xiàn)acebook 提供了幾種現(xiàn)有導(dǎo)航,抓取和推送算法的預(yù)訓(xùn)練模型的實(shí)現(xiàn)。
與 Facebook 創(chuàng)建其他開源人工智能研究工具(包括 PyTorch,AI Habitat,TorchVision 和 ELF)的工作一樣,他們認(rèn)為開放式協(xié)作是推動 AI 領(lǐng)域發(fā)展并將其更多益處廣泛傳達(dá)給用戶的重要部分;同時(shí),他們也將繼續(xù)尋找通過 PyRobot 框架共享機(jī)器人研究代碼和數(shù)據(jù)集的機(jī)會。
在不久的將來,F(xiàn)acebook 計(jì)劃通過與模擬器(如 AI Habitat,Gibson 和 MuJoCo)的接口為 PyRobot 添加新功能。他們也計(jì)劃與研究界合作,為更多硬件例如 Universal Robots 等,提供支持。除了開源 Facebook 的研究外,F(xiàn)acebook AI 還計(jì)劃分享其他最先進(jìn)的機(jī)器人算法的開源實(shí)現(xiàn)并發(fā)布機(jī)器人數(shù)據(jù)集。
Facebook 表示:機(jī)器人技術(shù)對于推進(jìn)人工智能整體非常重要,因?yàn)樗寡芯咳藛T能夠探索教學(xué)機(jī)器等挑戰(zhàn),以學(xué)習(xí)預(yù)測模型,并在現(xiàn)實(shí)世界中發(fā)展常識性知識。而解決這些問題將會創(chuàng)造出更強(qiáng)大的 AI,使其有朝一日可用于智能助理等應(yīng)用程序。他們希望憑借 PyRobot 靈活、開放的設(shè)計(jì),來幫助 Facebook AI 研究人員和該領(lǐng)域的其他人加快實(shí)現(xiàn)這些目標(biāo)的進(jìn)程。
參考鏈接
原文地址
https://ai.facebook.com/blog/open-sourcing-pyrobot-to-accelerate-ai-robotics-research/
PyRobot論文地址
雷鋒網(wǎng) AI 科技評論 雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。