1.3 让机器学走路
一说到机器人,大家通常都会想到一个像人一样的机器,就算它长得不太像人,也会像科幻大片里的各种机器怪兽或异形那样。其实,大多数机器人长得完全不像人和任何怪兽,更多的工业机器人甚至都不会行走和移动,它们固定在自己的工位上,周而复始地完成着固定的生产任务。
最早的可以自行移动的机器人出现在1968年,它有一个名字叫Shakey,按照发音我们就叫它沙克依吧。这个名字的英文原意是“摇摇晃晃的、不稳定的、不牢靠的、可能出问题的”。用这样一个名字形容世界上第一台可以自行移动的机器人,不但幽默,而且形象,毕竟这个机器人就像孩子开始学走路一样,摇摇晃晃,不稳定,不牢靠,可能出问题。这些都是正常的。
1963年冬天,斯坦福研究院神经网络研究领域的领导者查理·罗森提出了开发一个可以自由行走的机器人的设想。当时,他想把模式识别、神经网络和人工智能编程技术综合起来,打造一台可以自行识别环境、自行“按图索骥”、自行移动的机器。为了更有把握,他特意请来了另一位大名鼎鼎的人工智能之父明斯基作为顾问,还一趟一趟地到美国国防部游说,让他们出钱资助这个项目。折腾了快3年,该项目终于成功立项,并获得了美国国防部的一笔不菲的经费,于1966年春季正式开工。
一个像工具车一样的机器人很快就初具雏形。当时它在移动过程中突然停止时会震动摇晃,开发人员就给它起了这个有趣的名字“沙克依”。沙克依由运动部分、感应部分和控制部分等组成。运动部分由发动机、车轮和机械驱动装置构成,感应部分包括激光测距仪、路障感应器和一台电视摄像机,控制部分则是一台由DEC公司生产的小型计算机PDP-10。以今天的眼光来看,沙克依似乎有些简单,它完全没有人的模样,倒是像一辆无人驾驶的小车,所能做的事情也只是在研究院的楼道和房间里转来转去,把可能挡路的障碍移开,但这在当时是一项史无前例的创新。它所蕴涵的很多技术理念沿用至今。
沙克依
沙克依行走时遇到的第一个困难是它在充满障碍的房间里如何确定自己行走的路径。它要能够发现前进路线上的障碍物,一方面避免碰到障碍物,另一方面绕过障碍物继续向目标前进。在技术上,这是一个路径导航问题。研究人员运用了一种网格标记方法,让沙克依能够标记和记住它四周的环境,然后通过搜索确定绕过每一个障碍物的路径。在人工智能技术中,今天我们把这种通过不断探索得到答案的方法叫作认知学习。
沙克依行走时遇到的第二个困难是它如何规划自己的行动。当沙克依需要在复杂的环境中行走时,它可能要处理的问题就不只是发现障碍物那么简单。比如,让它从一个房间中走出来,通过走廊,进入另一个房间,遇到不能绕过的障碍物时,还要搬开障碍物,清理道路。这就涉及一个包含多个行动内容的规划问题,在人工智能技术中称之为“框架问题”。对于人类来说,这很简单,但对于计算机来说就不一样了。如何简洁清楚地表达这些情况,如何处理、协调每一个动作,如何形成一个包含多种动作的行动方案,计算机需要完成大量的计算和数据存储工作,复杂程度可能超出计算机硬件能力的许可。该项目于1966年开始启动,到1970年才最终找到一个良好的解决方法。在人工智能的发展中,每前进一步背后付出的努力都是十分巨大而鲜为人知的。在这个方法中,沙克依可以在2分钟内完成6个动作的规划任务。这个方法中的一些核心技术至今还出现在人工智能规划方面的应用中。
沙克依行走时遇到的第三个困难是它如何了解它所处的环境,识别出房间、走廊、地面、门、墙壁和大小不同的障碍物。沙克依的“眼睛”是一台电视摄像机,它必须对它“看到的场景”进行图像处理和识别,并结合激光测距仪给出的距离和位置,将其在路线图中标识出来。不同的光线、不同的角度、不同物体的形状,让图像处理和识别远没有听上去那么容易。研究人员为了简化被识别的环境,把房间里的墙壁涂成浅色,又用深色墙角板让地面和墙壁能够在颜色上容易区分开来。他们还把不同形状的障碍物都涂成红色,让障碍物变得“与众不同”,易于识别。即便如此,当时沙克依感知和分析环境、规划行动路线和方案往往需要几个小时的时间。
但不管怎么说,沙克依是世界上第一台全面应用人工智能技术的移动机器人,它能够自主进行感知和环境描述,并通过行动规划来执行指定的任务。关于它的研究成果影响至今。2004年,它光荣地进入了美国机器人名人堂。2006年,美国高科技杂志《连线》把它列为世界上最负盛名的第五个机器人,而排在它前面的有两个是科幻小说中的角色,另外两个则是出现于其后的登上火星的机器人,所以沙克依才是名副其实的机器第一人。今天,它被光荣地收藏在位于硅谷的计算机历史博物馆里,骄傲地向世人展示着它的历史成就。
位于硅谷的计算机历史博物馆