干垃圾、湿垃圾、有害垃圾,猪不能吃、猪能吃、猪吃了会死……你是不是还在为这些垃圾分别是什么而苦恼呢?
Alphabet X,就是之前孵化了无人车的Google X,终于造出了垃圾分类机器人。
这些机器人可以把垃圾分类、把分错类的垃圾放到正确的地方,还能在办公室里游走捡垃圾。
比如,放错地方的矿泉水瓶,机器人可以捡起来放到正确的地方去:
放错地方的易拉罐,也要让它和别的罐罐在一起:?
他们在Alphabet公司的办公室测试后,发现这台机器人可以显著降低垃圾造成的污染,将本能回收利用却被送去垃圾填埋场的垃圾占比从20%降到不到5%。
怎么做到的
想让机器人学会垃圾分类,需要用到感知、移动和操作,借助计算机视觉技术进行感知以及帮助机器人前行的自动驾驶能力都是业界熟悉的,但如何学会在复杂环境中用“手”拉开柜子、打开抽屉、捡走垃圾则是必须要让机器自行学会的操作。
因此,Alphabet X用到了三个方法来让机器人学会灵活用“手”。
跟人类学习
第一种是跟人类学习,模仿人类的动作和做法。
这里就用到了Play-LMP算法,它在没有特定数据集训练的情况下,让机器人跟人类的演示学习,最终实现平均成功率85.5%。
学出来的成绩,大概是这样的,左边是任务要求,右边是执行过程:
跟其他机器人学习
和其他机器人学习是通过无模型的强化学习,让许多个机器人共享经验。
具体的实现方式是这样的:
让机器人学习借助门把手开门这个技巧,一起学习的每个机器人都装了一份神经网络,并且他们每台机器人都连到了一个中央服务器上。
每个机器人开始对着这个门和门把手琢磨,摸索着考虑怎么开。
这个过程中,每个机器人每一步的行动和结果都被传输到背后的中央服务器上,中央服务器里的神经网络就开始借助这些传输来的经验,迭代改进神经网络。
这样整个过程就好像司令部派了几个士兵出去侦查,再把每个士兵送回来的线索汇总,形成整体的作战思路,再告诉士兵们应该如何如何行动。
所以改进之后,机器人们就都学会了开门这项技能。
在云端学习
机器人要捡垃圾,必须学会灵活的使用自己的“手”来抓东西,要不断的练习,有大量数据来训练模型才可以。
现实世界里,机器人一天只能练习5000次抓取,数据量是远远不够的。
而借助随机到规范适应网络(Randomized-to-Canonical Adaptation Networks,简称RCANs),在云中模拟训练的数据就可以用在模型的实际训练中,这样机器人抓物体的成功率就提升到了70%。
之后,再结合5000次在现实世界抓取的数据,对模型进行微调,成功率就到了91%。
这个过程,相当于在真实世界抓了58万次的结果,一下子省了99%的练习次数。
这样,原来需要花3个月的时间来训练机器人学习抓取,现在只要不到一天就可以了。
开发人员每天观察机器人的垃圾分类工作,并标注正确和错误。AI程序每晚根据标注内容,自动模拟更新数千个模块的数据。第二天,更新的结果会被重新整合到机器人软件中,并再次开启新的学习周期,日复一日地改善性能。
经数月学习,分类机器人的垃圾污染率从20%降至5%。垃圾污染率,即垃圾中混入不正确分类物料的比例。
机器人头部的视觉传感器可扫描环境并识别物体,内部设有多个摄像头,可使头部和双臂独立工作。机器人还会对扫描到的物品进行颜色编码,并识别可能需要移动、清理或丢弃的物品。