现在孩子们可以轻松编程一个能识别微笑的复杂机器人

Anki可爱的Cozmo机器人终于可以被我们大家编程了。
LEAH VERWEY

市面上有许多玩具承诺为下一代编码员和工程师提供在快速变化的就业市场中竞争所需的基础。但在众多为孩子设计的编程产品中,Anki假日购物宠儿Cozmo机器人的更新,为年轻的未来编码员提供了一个机会,让他们能够掌控一台能够执行高级任务的复杂机器,例如面部识别。

自去年发布以来,这款几乎可爱到过分的履带式机器人,其设计初衷是与人建立情感上的、类似《机器人总动员》的联系,已经广受欢迎,因此它代表了一个成熟的平台。它也是一台复杂的机器,机器人本身和其配套应用程序之间运行着160万行代码。这款可爱的机器人可以识别个体面孔、表情,并模仿人类情感。它的“个性引擎”利用人工智能,通过做一些事情,比如在多次玩同一个游戏后对其失去兴趣,来模仿人类。

自Cozmo推出以来,大学生和其他人一直通过软件开发工具包对其进行编程。但要做到这一点,他们需要了解通用的编程语言Python。这种情况在周一发生了改变,Anki通过一个基于Scratch的简单可视化系统,向新手代码编写者开放了Cozmo的“大脑”。Scratch是一种在MIT媒体实验室开发的图形编程语言。他们称这项新功能为Code Lab。

用图片编程

通过Code Lab,用户可以通过拖放代表高级概念的积木来创建基本程序。例如,一个孩子可以构建一个简单的程序,该程序以一个告诉Cozmo等待(用沙漏象征)的积木开始,直到它看到有人微笑(用快乐的脸描绘)。序列中的下一个积木可能会告诉机器人启动。当初学者执行程序时,Cozmo在检测到笑容之前不会启动。

目前,这种图形代码以“水平语法”的形式从左到右运行。Code Lab的下一个版本将运行“垂直语法”,从上到下进行,并可以包含更复杂的操作,包括像编码员在专业编程语言中使用的“if-then-else”条件语句等知名命令。

Python等语言是基于文本的,但Anki将Code Lab基于十年前的图形编程语言Scratch。(想象一下象形文字,而不是文字。)其结果是,Anki正在使编程一个复杂的机器人来执行高级任务(如面部和表情识别)变得非常容易。

“我们正试图弄清楚如何让人们,在这种情况下甚至是孩子或完全的初学者,能够接触到真正的机器人工具和功能,”Anki的总裁兼联合创始人Hanns Tappeiner说。“我说‘真正的’,我不是指闪烁的灯光,或者你的机器人直线行驶,而是我们真正谈论的是面部识别、面部跟踪、面部表情识别”等等。

Code Lab
一个简单的程序。Anki

按照孩子意愿行事的机器人

Cozmo加入了市面上其他儿童友好型可编程机器人,例如LEGO Mindstorms EV3。有抱负的编码员可以使用乐高开发的视觉语言对该系统进行编程,该语言也使用图形块来象征诸如动作等功能。八月份,该公司将发布一款名为LEGO Boost的新系统,同样配备了针对5至12岁儿童的视觉编程语言。但这些系统都无法进行面部识别,即使EV3拥有可以响应触摸和颜色等刺激的传感器。

孩子们还可以通过使用谷歌制造的名为Blockly的视觉编程语言,或者Wonder Workshop(这些机器人的母公司)创建的名为Wonder的另一种语言,来编程Dash和Dot机器人。Dash拥有距离传感器和麦克风,可以做到诸如转向说话的人,并能感知周围的其他机器人。

利用技术进行创造

MIT媒体实验室于2007年创建了Scratch,Anki正在使用一个名为Scratch Blocks的开源版本,该版本是谷歌和MIT合作开发的。Scratch的创造者之一、MIT媒体实验室学习研究教授Mitchel Resnick说,使用Scratch的孩子们“正在学习对任何其他类型的编程语言都很重要的核心计算概念”。

Resnick最后表示,技术如何融入玩具很重要。“我认为,我们不仅要利用新技术来提供娱乐或教学,更重要的是提供机会让孩子们设计、创造、实验和探索,”他说。

 

更多优惠、评测和购买指南

 
Rob Verger Avatar

Rob Verger

技术编辑

罗布·沃格尔是《流行科学》杂志的前技术编辑。他擅长报道航空、交通和军事技术。


© .