德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

2020-07-09 浏览量:413

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

喜欢科幻的小伙伴肯定看过《瓦力》,男主角「瓦力」是一名地球垃圾分装员,每天在已经成为了「垃圾场」的地球兢兢业业的收拾人类留下的「烂摊子」。

瓦力是名副其实的智慧机器人,除了动作灵活之外,还拥有意识和情感。要不然也不会爱上有着鸡蛋外形的 Eve。

但是,毕竟那是发生在 2805 年的事情,那时候人类都已经可以开启宇宙之旅了,设计个智慧机器人只是小 case。

只不过现在是 2019 年,造不出拥有情感的机器人,但是用 AI 模型训练出收拾垃圾的机器人,还是可以的。

一位名叫 Damian Bogunowicz 的慕尼黑工业大学硕士生,和他的小伙伴一起利用电脑视觉、深度强化学习和 Unity 3D 游戏引擎开发了一款自主收集垃圾的机器人。

据 Damian 的博客介绍,他的这个想法最初来自慕尼黑工业大学博士研究会。这群参会的「高端玩家」都很爱喝啤酒,也是慕尼黑啤酒节的常客。但是,看到每年慕尼黑啤酒节狂欢过后一片狼藉,他们陷入了深思……..

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

通常,这些垃圾都是清洁工人收拾,会耗费大量的人力、物力。

Damian 由此想到,是否能开发出一款智慧机器人,全天候、高效率的帮助这些清洁工人,那幺他们的工作效率就会成几何倍数增长。

使用 Unity 3D 游戏引擎模拟机器人,并让游戏场景成为训练环境

说干就干!

他们的第一步是使用 Unity 3D 游戏引擎模拟机器人,此外,还使用 Unity Machine Learning Agents Toolkit(ML-Agents)插件,使游戏场景成为训练智慧体的环境。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

在这个实验中,他们将机器人的目标设置为探索环境并学习正确的策略。然后设定一系列的奖励和惩罚。

主要来说,机器人有两个目标:
1. 接近并收集垃圾,例如麵包屑、塑料袋以及香肠等食物残渣。
2. 不要与桌子和椅子发生碰撞,不要回收木托盘等物品,因为这不属于垃圾。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

在模拟环境中,机器人的形状是正方体,主要有三个动作:
1. 平移运动(向前、向后以及保持静止)
2. 转向运动(左转、右转)
3. 抓取状态。

前两个动作非常简单,抓取状态需要设计。总的来说,每次机器人决定收集一个物体时候需要满足下面两个条件:
1. 物体必须靠近机器人的前部(限制在具有绿色边缘的体积内)
2. 机器人必须决定启用「抓取器」。当抓取状态被启用时,机器人的颜色从白色变为红色。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

机器人透过与环境交互和回馈信号,学习正确的策略

机器人可以透过与环境的交互和回馈的信号来学习正确的策略。对此系统来说,惩罚值在 -1 ~ 0 之间浮动,奖励值在 0 ~ 1 之间浮动。与其他强化学习不同的是,要在训练数据的时候迅速获得最好的策略,次要目标给予较小的奖励值。当学习複杂任务时,从简单任务入手,逐渐增加任务难度。

这些都可以在 Unity ML-Agents 中轻鬆能够实现,具体来说将任务分为两个子目标,在环境中寻找垃圾、判断何时激发抓取状态。

使用 RBG 图像映射与语义分割图训练垃圾归类

机器人最初不太能分清楚要将哪种物品归为垃圾,后来,通过网络将 RBG 图像映射到语义分割图,能够有效获得此信息。用数据透过 Semantic Segmentation Suite 训练 SegNet,易于调试和修改,从而节省算力。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

另外,语义分割讯息不是来自外部神经网络。它是使用 Unity 中的着色器生成的,使用标籤对对象进行分段。这意味着智能体在训练期间可以快速接收有关对象类的可靠,无杂讯的信息。

机器人的认知,决定智能体如何行动。鑒于当前的环境状况和要实现的目标,採用以下两种方法:
1. 近端策略优化,它通过与环境的交互作用在採样数据之间进行交互,并利用随机梯度上升优化目标函数。
2. 让系统观察正确的行为併进行模仿。这可以视为监督学习,研究人员先「玩游戏」一段时间,以便智能体能够学习正确的策略。

另外,利用 Unity ML-Agents 提供的另外两个解决方案:
1. 使用循环神经网络的内存增强代理 ,这可以允许智能体不仅可以对当前的输入进行操作,还可以「记住」最后的输入并在做出决策时将此附加讯息包含在其推理决策中。
2. 利用好奇心,赋予智能体一种好奇心,每当它发现与其当前知识不同的东西时,它会给予机器人内部奖励。这鼓励智能体探索世界时,更加「冒险」。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

到目前为止,智能体已经设法自己弄清楚了这两项任务。但只是为了好玩(或者为了加快训练过程),可以「硬编码」第二个目标 。关于是否启动抓取机制设定一个简单的函数,它考虑了两个因素:我们面前的对象类(由语义分割图定义);物体与机器人的距离(由深度图提供)。

此功能可以通过以下方式进行硬编码:从当前深度图中,仅滤除属于「可收集」类的那些。另外检查像素最大值是否大于某个设定阈值。如果是,可收集物体足够接近智能体,完成收集。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!大规模应用前,需要做哪些优化?

以上模拟在虚拟环境中有较好的效果,但是如果想要大规模的应用到商业,还需一系列的改进。

Damian 也给出了一些自己的想法:
1. 安装一系列用于垃圾回收的硬体,在机械设计上应该考虑到足够的细节,例如安装一个「铲子」,可以无缝地将垃圾推入机器人的「腹部」,又或者在容器满了之后,如何处理垃圾。
2. 将该算法部署在一台能够处理实时语义分割的机器上,语义分割模型的推理时间太慢,一般的笔记本电脑无法进行实时仿真。
3. 用 RealSense 摄影机将信息从仿真平台传递给真实的机器人,这一部分工作是将在物理环境中部署机器人,这意味着透过在现实世界中运行机器人来微调算法,目前,强化学习在机器人技术中的应用还处于实验阶段。

「捡垃圾」机器人的其他妙用

收拾东西这件事情,可不仅仅是「慕尼黑啤酒节」才需要,应用场景还相当多,比如:自己的房间。

其实,在帮你叠衣服,帮你把散落在地上的物品规整起来方面,智慧机器人也已经可以做的很成熟。

在 CEATEC JAPAN 2018 会展上,由丰田汽车有限公司开发的生活支援机器人 HSR(Human Support Robot),展示了全自动整理机器人系统。

其利用深度学习技术开发的画面识别引擎,哪怕数百种物品散乱在房间各处,引擎也能够识别出物品的位置和种类。基于该识别引擎,人们可以规划什幺物体应该怎幺去抓取以及如何整理等等。

该图像识别引擎是通过採用了深度学习框架 Chainer,ChainerMN 以及 ChainerCV 的 CNN(卷积神经网络)来实现的。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

系统能够稳定地抓取各种形状和材质的物体并且放置到规定的地方。例如在整理圆珠笔时,镜头寻找笔筒位置,识别圆珠笔的方向,调整方向,放入笔筒。

德国学生用 AI 打造真实版「瓦力」,我的房间超级需要阿!

系统透过不断地重複人类在无意识中做出的一系列的判断,最终使之成为可能。

通过扩增实境(AR),我们可以看到机器人是如何思考的,例如显示机器人是如何识别房间里的状况,接着会如何行动等讯息。通过 AR 画面,我们能够更加直观地把握机器人的状态,从而发出更确切的指令。

在大会上,这款机器人获得了 CEATEC AWARD 2018 的奖项里的行业/市场部门的二等奖。

可能以后不仅清洁工,连收拾房子的保洁阿姨都不需要了。

更多有趣的机器人

全台首家「机器人餐厅」开幕!机器人煮牛肉麵,3 分钟立马上桌

看!苹果 Daisy 机器人高速拆解旧 iPhone,500 小时掏出黄金 1 公斤

Sweeper 研发自动採收机器人!农夫不用亲自下田,机器人自己把蔬果送上来

相关文章