写点什么

快速搞定机器人开发!Facebook 联合 CMU 开源 PyRobot 框架

2019 年 6 月 25 日

快速搞定机器人开发!Facebook联合CMU开源PyRobot框架

2019 年 6 月 20 日,Facebook 宣布开源他们用于机器人研究和基准的 PyRobot 机器人框架。机器人框架是什么?简单地来说,就是用来制造机器人并定义其行为。在没有机器人框架的情况下,人们进行开发和定制机器人会感到无所适从。有了机器人框架,它就能对机器人开发工程中的人工内容进行抽象化处理。今天,我们翻译了 Facebook AI 团队的官方博客,以飨对机器人框架感兴趣的读者。


PyTorch 等框架大大加快了人工智能子领域(如计算机视觉和自然语言处理等)的研究进展。这些工具提供了一个抽象级别,使得开发人员构建最先进的系统、使用共享库和工具以及优化性能变得更容易了。为了在人工智能机器人研究中提供类似的实用性,Facebook 与卡内基梅隆大学的研究人员合作创建了 PyRobot。


AI 前线注:PyRobot 官网 https://www.pyrobot.org/


PyRobot 是一个框架,也是一个生态系统。借由 PyRobot,人工智能研究人员和学生才能够在短短几个小时内就能启动和运行机器人,而无需专门了解硬件或设备驱动程序、控制和规划等细节的知识。PyRobot 将帮助 Facebook AI 推荐我们的长期机器人研究,该研究的宗旨是开发出具体化的人工智能系统,能够通过与物理世界的交互,进行有效的学习。为了帮助人工智能和机器人社区的开发者,我们开源了 PyRobot。


相关研究

PyRobot:用于研究和基准测试的开源机器人框架。


https://arxiv.org/abs/1906.08236


PyRobot 是基于机器人操作系统(Robot Operating System,ROS)的轻量级高级接口。它提供了一组统一的硬件无关中间层 API 来控制不同的机器人。PyRobot 将有关低级控制器和进程间通信的细节进行抽象化,因此机器学习专家和其他人可以简单地专注于构建高级人工智能机器人应用程序。


PyRobot 系统架构概述


PyRobot 系统架构概述


PyRobot 将使研究界更容易地使用机器人数据集、算法实现和模型,并帮助他们设置基准,比较他们的工作,并建立彼此的结果。当与低成本机器人平台(如 LoCoBot)结合使用时,PyRobot 将降低机器人技术的入门门槛,有助于实现机器人研究的大众化。除了开源 PyRobot 外,我们还宣布了一项关于使用 PyRobot 和 LoCoBot 的征询方案,优胜者将会获得 LoCoBot 用于他们的研究。


用于机器学习和机器人研究的简单、共享接口

只是仅仅设置一个机器人并让它挥动手臂,搁在以前就需要几天甚至一个星期的时间来修改本地的机器人软件。机器人社区中的一个常见笑话是:在你的博士论文中,每接触一个机器人就要增加一年的时间。PyRobot 通过跨多个机器人和模拟器提供一个通用 API 来解决这一挑战。使用一个机器人就像编写如下所示的一条命令一样简单:


from pyrobot import Robot; bot = Robot(‘locobot’)
复制代码


此外,PyRobot 框架支持的任何机器人都可以使用相同的高级代码。(首先,这包括 LoCOBot 和 Sawyer,并将增加对其他机器人的支持。)


使用 ROS 直接编程机器人位置通常包括为运动学、控制器和运动规划期设置多个库和数据结构。PyRobot 抽象了这种复杂性,在这个示例中,LoCoBot 被编程为仅用几行 Python 代码来定位它的手臂。


使用 ROS 直接编程机器人位置通常包括为运动学、控制器和运动规划期设置多个库和数据结构。PyRobot 抽象了这种复杂性,在这个示例中,LoCoBot 被编程为仅用几行 Python 代码来定位它的手臂。


对所有机器人而言,PyRobot 提供了通用的功能,如关键位置控制、关节速度控制、关键扭矩控制、笛卡尔路径规划、正向运动学和反向运动学(基于机器人 URDF 文件)、路径规划和视觉 SLAM 等。虽然它抽象了底层软件栈的复杂性,但是用户仍然可以在层次结构的不同级别上灵活地使用组件,比如,绕过规划器来控制低级速度和力矩。PyRobot 可以用来实现各种高级人工智能应用。例如,我们已经试验了目标点导航、像推动和抓取这样的操作任务,以及使用机器人进行数据采集的远程操作。




在这三个视频中,LoCoBot 会拾取各种物体,导航到某个位置,并堆叠一组方块。它是用 PyRobot 编程的。


在这三个视频中,LoCoBot 会拾取各种物体,导航到某个位置,并堆叠一组方块。它是用 PyRobot 编程的。


为了将人工智能和机器算法与机器人技术结合使用,PyRobot 提供了一种简单的方法。例如,可以使用与物理机器人的接口,为抓取等任务收集数据,使用 PyTorch 训练一个深度学习模型,然后使用 PyRobot 在机器人上执行这个算法。在一些正在进行的项目中,PyRobot 已经简化了用于末端执行器控制和目标点导航策略的 sim2real 转移的测试。


用于研究和教育的可扩展工具

硬件成本和专业软件的复杂性限制了机器人研究的规模。不过,PyRobot 的高级 API 与相对廉价的机器人(如 LoCoBot 等)一起使用时,有助于解决这一问题。例如,随着入门门槛的降低,研究人员可以部署几个机器人来收集数据并进行并行学习。通过在不同的硬件上提供通用框架,PyRobot 将引领机器人技术基准的开发(类似于人工智能的其他领域),并对这一进展进行量化。我们计划与机器人研究界的其他人合作,一起努力建立这些基准。


PyRobot 还能够有助于规模化人工智能教育计划,使得为不同背景的学生提供实用的机器人体验变得更加容易。PyRobot 将为人们带来全新的观点和想法,鼓励合作并使研究人员能够更快地迭代机器人应用。其简单的 API 将加快使用 PyRobot 的研究项目的开源和共享代码的过程,并培育一个生态系统,在这个生态系统中,不同的研究人员可以很容易地建立在彼此工作的基础之上,并比较他们的结果。我们期待在 PyRobot 上托管多个数据集、预训练模型和算法实现。


首先,我们提供了几种现有导航、抓取和推送算法的预训练模型的实现。正如我们创造的其他开源人工智能研究工具一样,包括 PyTorch、AI Habitat、TorchVision 和 ELF。我们相信,开发合作是推进这一领域的发展,并广泛提供人工智能优势的重要组成部分。我们将寻找通过 PyRobot 框架共享机器人研究代码和数据集的机会。


拓展 PyRobot 平台,推进人工智能研究

在不久的将来,我们将继续通过与模拟器(如 AI Habitat、Gibson 和 MuJoCo)接口为 PyRobot 添加功能。我们还将与研究界合作,为更多硬件提供支持,如 Universal Robots。除了开源我们自己的研究外,Facebook AI 还计划分享其他最先进的机器人算法的开源实现,并发布机器人数据集。


机器人技术对于人工智能的全面发展非常重要,因为它使研究人员能够探索诸如教会机器学习预测模型,并在现实世界中开发常识性知识等挑战。解决这些问题将会带来更为强大的人工智能,有朝一日,它可用于像智能助理这样的应用。凭借其灵活、开放的设计,PyRobot 将帮助 Facebook AI 研究人员和该领域的其他人加速实现这些目标。


原文链接:


https://ai.facebook.com/blog/open-sourcing-pyrobot-to-accelerate-ai-robotics-research


2019 年 6 月 25 日 08:0014068
用户头像

发布了 308 篇内容, 共 100.7 次阅读, 收获喜欢 1092 次。

关注

评论

发布
暂无评论
发现更多内容

阿里P8级架构师总结整理的这份火爆全网的《Java架构成长笔记:深入内核,拒绝蒙圈》终于免费开放下载了!

Java成神之路

Java 程序员 架构 面试 编程语言

花了两个月肝完美团架构师总结整理的这份《Java面试复习笔记》我成功拿到了阿里P6级offer。

Java成神之路

Java 程序员 架构 面试 编程语言

Go的声明语法为什么是这样

Rayjun

go

用 flomo 管理自己的奇思妙想瀑布流

Guanngxu

美团P4推出的Java程序性能优化手抄本,让你的Java程序更快更稳定

Crud的程序员

Java 程序员 架构 性能调优

面试大揭秘!从技术面被“虐”到征服CTO,全凭这份强到离谱的pdf

Java架构之路

Java 程序员 架构 面试 编程语言

MySQL慢查询(中):正确的处理姿势,你get到了吗?

架构精进之路

MySQL MySQL优化 MySQL架构 28天写作

消失的同事

石君

时代发展 28天写作

架构师训练营 第十二周作业

文江

架构师第 6 课作业及学习总结

小诗

「架构师训练营第 1 期」

惊艳!四份SpringSecurity笔记带你玩转金三银四的面试题集!

996小迁

Java 架构 面试 springsecurity 笔记

同城快递系统架构

Jacky.Chen

链上数据存储,区块链底层技术落地

t13823115967

区块链落地

移动开发属于哪个领域!2021年Android春招面试经历,详细的Android学习指南

欢喜学安卓

android 程序员 面试 移动开发

面向对象设计总结

Iris

面向对象

架构师训练营 1 期:大作业(二)

piercebn

架构师训练营第 1 期

独角兽余额宝(Java现场面试48题):性能调优+索引+Mysql+缓存+HashMap+GC

Java架构之路

Java 程序员 架构 面试 编程语言

芯片破壁者(二十五):从全球贸易网络看芯片博弈

脑极体

网卡分身技术,你 Get 了吗

Linux云计算网络

网络

价值 - 风险管理(二)

石云升

读书笔记 风险管理 28天写作 价值

Alibaba首发的《Java技术成长笔记》简直太牛了,从基础到架构所有的知识点都有,绝对是渴望提升自己的程序员的必备宝典!

Java成神之路

Java 程序员 架构 面试 编程语言

京东T7团队技术4面:线程池+索引+Spring +分布式锁+Mysql+项目等

Java架构之路

Java 程序员 架构 面试 编程语言

学习安卓开发!View的这些基础知识你必须要知道,Android岗

欢喜学安卓

android 程序员 面试 移动开发

MMMDeFi智能合约系统开发方案

薇電13O25249123

区块链 智能合约

智能合约DAPP软件APP开发|智能合约DAPP系统开发

开發I852946OIIO

系统开发

智慧警务,大数据分析决策平台建设方案

t13823115967

智慧警务大数据系统开发

架构师训练营第十二周作业

丁乐洪

京东T8Java架构师呕心沥血总结整理的《15w字的Java面试手册》免费开放分享给大家复习。

Java成神之路

Java 程序员 架构 面试 编程语言

多熟悉一门编程语言看法

superman

精选算法面试-链表(判断环)

李孟

算法 链表 28天写作

OOP: DIP与LSP

Iris

面向对象 架构训练营

演讲经验交流会|ArchSummit 上海站

演讲经验交流会|ArchSummit 上海站

快速搞定机器人开发!Facebook联合CMU开源PyRobot框架-InfoQ