前文:

人形机器人 —— Figure 01机器人亮相 | OpenAI多模态能力加持 | 与人类流畅对话交互 | 具身智能的GPT-4时刻


所需的AI技术:

人形机器人的软件层面其实有:

  1. 视觉模块/导航模块;
  2. 语言模块;
  3. 决策模块;

视觉模块,可以有3D点云(计算机视觉)、NeRF(Neural Radiance Fields)、全景分割技术,等等;导航模块,如:SLAM等等,但是由于导航模块可以和视觉模块耦合在一起,,并且导航模块往往可以和决策模块或规划模块耦合在一起,所以导航模块可以不单独列成一个模块。

语言模块,这里是指大模型,但是往往语言模块和视觉模块也有很强的耦合,比如都交给多模态大模型模块处理。人形机器人的直接输入输出并不是语言而是语音,因此我们还需要语音与语言转换模块。

决策模块,根据视觉模块和语言模块提供的信息,也包括从导航系统提供的模块,也包括从多模态模糊提供的信息,得到下一步动作,该动作往往不是对电机的扭矩的直接控制,而是电压等信息,这个动作还需要交给电子控制器转为扭矩控制信息,最终的扭矩信息交给电机进行具体执行。

人形机器人所需实现的功能:

  1. 识别周围环境,并进行准确描述;
  2. 推理决策下一步的行动;
  3. 将模棱两可的请求翻译为符合上下文的请求;
  4. 用语言解释推理的过程;

人形机器人的输入数据在chatGPT3.5出现之前是只有图像数据的,但是在ChatGPT3.5出现后就实现了自然语言的高度拟人化,这样有就有了人形机器人的多模态数据输入了,也就是将图像数据和语音数据一并作为输入了。其实准确的来说语音数据并不是人形机器人直接使用的数据,我们需要将语音数据转换为文字数据,也就是将图像和语音转换为文本输入到OpenAi预训练的多模态大模型中,而多模态大模型输出的数据再和图像数据一并输入到强化学习模型中,获得决策动作。

人形机器人的动作控制和常见的强化学习控制场景中的一样存在action repeation的现象,比如一般的人形机器人的视觉图像的输入(相机拍照)的频率为10hz,强化学习模型的动作输入为200hz,实际的电机控制器的制动频率为1000hz,也就是说机器人接受到一个图像后会输出20个重复的动作,而这20个重复的动作发送给电机控制器后会具体形成1000个重复的制动控制(可以理解为保持某个电压值的频率为1000hz),也可以理解为机器人接收到一个图像数据后会使电机保持1000个时长的相同的制动控制。

大致形式:

10hz采集图像 -> OpenAI大模型 -> 强化学习模型 -> 产生200hz的控制动作(24自由度的动作的电压值) -> 动作执行控制器(动作执行的电机) -> 产生1000hz的执行控制器的动作(电机的扭矩等等)

可以看到,机器人接采集一帧图像后给电机的具体执行东西要保持100倍的图像采集时间,也就是说明电机具体执行时的动作要重复100次。

正如OpenAI的模型其实并不是一个模型一样(OpenAI的大模型由多个大模型组成,具体执行时会根据任务的具体情况选择具体的大模型进行执行),人形机器人的模型也不是只有一个的,而是多个模型联合工作的。

比如,机器人的视觉模块,一般需要使用SLAM算法、3D点云算法、NeRF算法、物体识别算法、人体动作捕捉和识别算法,等等,多个算法组成。照比视觉模块相比语言模块会相对显得少些,一般只用一个或两个大模型就可以解决,但是由于大模型难以在终端上直接运行,因此语言模块往往采用远端调用云资源的方式来进行解决,这也导致了未来的一个研究,那就是边缘计算和云计算的均衡负载问题。

虽然当所有的模型训练好后联合在一起使用时是一个end-to-end的结构,但是这些模型往往在训练时是存在先后顺序和分开训练的问题的,因此一个人形机器人的AI模型往往是多个研究方向的组合,单一方向的研究是难以使其真正工作的,可以说人形机器人的研发工作更偏向于一种系统工程,即使在不考虑硬件(电机、电池、机械控制、传感器,等等)的前提下只考虑软件层面的AI算法就已经包含了多个方向的研究。虽然最终做决策的算法是强化学习算法,但是其上游的视觉算法和语言算法也是十分关键和重要的,可以说如果没有很好的视觉算法和语言算法,单独的强化学习算法只能运行在仿真环境下而无法运行在真实的实体(实体机器人)上的。

而且,在完成了视觉模型和语言模型后这时的强化学习模型也并不能保证仿真环境下的决策算法可以很好的运行在实体机器人上的,这时候还存在一个sim2real的问题,而这个问题是仿真环境下无法解决的,也就是说仿真环境和实体的实际运行情况之间的这个gap是需要单独算法来进行处理的,而这又属于一个独立的研究方向。

可以说人形机器人是多个领域的联合的一个场景,并不是单一领域、单一研究方向就可以解决的,如何完成单个方向的研发很重要,但是最后决定这个机器人最终的performance的还在于将这些单独模块/算法组合在一起的算法,而这个最终的组合也是一个难点,如何可以使多个部件/模型更好的联合在一起工作也是需要不断调整和优化的。

相关资料:

https://www.youtube.com/watch?v=vO1wnHA0tZg

https://www.youtube.com/watch?v=_HjGppyK0Po

人形机器人的AI技术 —— 将一个大问题拆解为若干个小问题的更多相关文章

  1. Linux下的split 命令(将一个大文件根据行数平均分成若干个小文件)

    将一个大文件分成若干个小文件方法 例如将一个BLM.txt文件分成前缀为 BLM_ 的1000个小文件,后缀为系数形式,且后缀为4位数字形式 先利用 wc -l BLM.txt       读出 BL ...

  2. AI:机器人与关键技术--总是被科普

    AI:机器人与关键技术--总是被科普 原文链接:www.csdn.net/article/2014-04-22/2819430 机器人发展建议: 有需求才有生产,有更高的需求才有发展: 第一条:我们的 ...

  3. 四种 AI 技术方案,教你拥有自己的 Avatar 形象

    大火的 Avatar到底是什么 ? 随着元宇宙概念的大火,Avatar 这个词也开始越来越多出现在人们的视野.2009 年,一部由詹姆斯・卡梅隆执导 3D 科幻大片<阿凡达>让很多人认识了 ...

  4. IBM沃森会成为第一个被抛弃的AI技术吗?

    作者|William Vorhies 译者|姚佳灵 编辑|Debra 导读:IBM 的沃森问答机(Question Answering Machine,简称 QAM),因 2011 年参加综艺节目&l ...

  5. 福利:42套AI技术视频免费领取

    <福利:33套AI技术视频免费领取> 视频获取方式:请加机器学习和自然语言(QQ群号:436303759)群后,私信群主获取(备注上自己想要获取是视频名称),仅限本群公众号粉丝成员,多套视 ...

  6. 如今领占主导地位的19种AI技术!

    如今领占主导地位的19种AI技术! http://blog.itpub.net/31542119/viewspace-2212797/ 深度学习的突破将人工智能带进全新阶段. 2006 年-2015 ...

  7. 蚂蚁金服首席数据科学家漆远:AI技术开放,与业界融合共创

    小蚂蚁说: 11月8日,在第五届世界互联网大会-<人工智能:融合发展新机遇>论坛上,蚂蚁金服副总裁.首席数据科学家漆远认为AI具有控制风险.降本增效和提升用户体验三大作用. 11月8日,第 ...

  8. (原创)我对未来的人类的发展,以及AI技术发展的一些思考。

    最近AI非常的火,不仅仅是阿尔法狗的成功,因为它击败了人类最强的大脑,颠覆了人类几千年来的对传统的认识,也让人类意识 到了一个问题:天外有天,人外有AI. 那么AI究竟会对人类的未来造成什么深远的影响 ...

  9. AI技术在智能海报设计中的应用

    背景 在视觉设计领域中,设计师们往往会因为一些简单需求付出相当多的时间,比如修改文案内容,设计简单的海报版式,针对不同机型.展位的多尺寸拓展等.这些工作需要耗费大量的时间.人力成本(5~6张/人日), ...

  10. AI 技术咖们说,进入未来世界首先需要一个“虚拟的我” | 科技生活节倒计时8天

    http://www.tmtpost.com/3367762.html 未来世界是什么样子? 斯皮尔伯格在<头号玩家>中构建了一个充满科技感.富有浓烈浪漫主义色彩的虚拟世界.戴上VR眼镜, ...

随机推荐

  1. LeetCode 690. Employee Importance 员工的重要性(C++/Java)

    题目: You are given a data structure of employee information, which includes the employee's unique id, ...

  2. 流程控制之for循环结构

    1.for循环使用场景 1. 需要反复.重复执行的任务 2. 如创建100个用户,打印一百遍 chaoge666.插入数据库一万条数据等. 2.for语法 for 变量名 in 取值列表 do 每次循 ...

  3. JavaScript防抖与节流笔记

    JavaScript防抖与节流 概念 防抖(debounce)与节流(throttle)是两个相似但有本质区别的两个概念,但两个概念的存在都是为了控制在特定条件下函数最大的执行次数.这在例如将函数执行 ...

  4. NumPy 简单算术:加减乘除及其他运算

    简单算术 你可以直接在 NumPy 数组之间使用算术运算符 + - * /,但本节讨论了一个扩展,其中我们有函数可以接受任何类似数组的对象,如列表.元组等,并根据条件执行算术运算. 条件算术:意味着我 ...

  5. 报错 ERR !npicode ELIFECYCLE dev: wue-cli-service serve

    在系统变量 Path 里面加上:%SystemRoot%\system32,关掉终端,重新启动项目.

  6. 09-CentOS软件包管理

    简介 CentOS7使用rpm和yum来管理软件包. CentOS 8附带YUM包管理器v4.0.4版本,该版本现在使用DNF (Dandified YUM)技术作为后端.DNF是新一代的YUM,新的 ...

  7. 高通平台抓ram dump

    高通平台抓ram dump 原文(有删改):https://blog.csdn.net/m0_37166404/article/details/80821600 背景 高通平台下提供了一个工具,专门用 ...

  8. 【ClickHouse】6:clickhouse集群高可用

    背景介绍: 有四台CentOS7服务器安装了ClickHouse HostName IP 安装程序 程序端口 shard(分片) replica(备份) centf8118.sharding1.db ...

  9. 写给rust初学者的教程(三):闭包、智能指针、并发工具

    这系列RUST教程一共三篇.这是最后一篇,介绍RUST语言的进阶概念.主要有闭包.智能指针.并发工具. 上一篇:写给rust初学者的教程(二):所有权.生存期 closure "闭包&quo ...

  10. ARC108C

    考虑一颗树怎么染色. 每个子节点染成边的颜色,如果与父亲节点相同,就随便染色(这条边的限制已经被父亲节点满足). 那么一定可以染色. 所以把原图跑最小生成树再按上述方法染色即可. 倘若原图不连通,那么 ...